/* Charcoal surfaces with restrained orange accents. Preserve original brand assets and status colors. */
:root {
  --ink: #202020;
  --muted: #686868;
  --line: #e2e2e2;
  --bg: #f4f4f4;
  --surface: #fff;
  --primary: #272727;
  --accent: #db7a39;
  --primary-dark: #101010;
  --accent-ink: #965126;
  --accent-soft: #faf5f0;
  --teal: #686868;
  --shadow: 0 12px 32px rgb(0 0 0 / 8%);
}
html, body { background: var(--bg); color: var(--ink); }
a { color: #414141; }
a:hover { color: var(--accent-ink); }
.text-link { color: #414141; }
input, select, textarea { accent-color: #454545; }
.sidebar { background: #181818; color: #d4d4d4; }
.sidebar-brand, .sidebar-brand:hover { color: #fff; }
.sidebar-brand small, .security-note { color: #a3a3a3; }
.brand-mark { background: linear-gradient(145deg, #ff9b51, #e65f00); box-shadow: 0 6px 16px #0003; }
.tenant-mini, .security-note strong { color: #e5e5e5; }
.nav-item { color: #bcbcbc; }
.nav-icon, .security-note span { color: #a3a3a3; }
.nav-item.active, .side-nav .nav-item.active { background: #2c2c2c; color: #fff; box-shadow: inset 2px 0 var(--accent); }
.nav-item.active .nav-icon { color: #ddd; }
.nav-badge { color: #ddd; border-color: #555; }
.admin-navigation>.side-nav { background: #181818; }
.sidebar, .admin-navigation>.side-nav { box-shadow: 0 3px 14px #00000014; }
.eyebrow, .tenant-switcher label, .search-placeholder, .logout-button,
.topbar-context, .profile-caption small, .notification-total, .notification-scope,
.notification-item small, .notification-empty, .notification-status, .profile-popup p,
.stat-card span, .stat-card small, .check-row small, .status-text,
.table-scroll-hint, .op-metrics span, .check small { color: #686868; }
.icon-button, .topbar-dropdown, .notification-item { color: #333; }
.avatar, .profile-avatar, .stat-icon, .placeholder-icon, .panel-kicker, .profile-role {
  background: #f0f0f0; color: #555;
}
.stat-card, .panel, .catalog-card { box-shadow: 0 4px 12px #00000005; }
.stat-card-primary { background: linear-gradient(135deg, #202020, #454545); }
.stat-card-primary span, .stat-card-primary small { color: #e5e5e5; }
.stat-card-primary .stat-icon { background: #ffffff14; color: #ddd; }
.topbar-popup { border-color: var(--line); box-shadow: 0 16px 44px #00000020; }
.notification-toggle, .notification-list, .notification-item { border-color: var(--line); }
.topbar-dropdown[open]>summary, .notification-item.unread { background: #f5f5f5; }
.notification-item.unread { border-left-color: var(--accent); }
.notification-item:hover { background: #ededed; color: #171717; }
.notification-read-form button { background: #f0f0f0; color: #555; border-color: #d4d4d4; }
.button-primary { background: var(--primary); color: #fff; }
.button-primary:hover { background: var(--primary-dark); color: #fff; }
.button-secondary { background: #fff; border-color: #ccc; color: #414141; }
.button-secondary:hover { background: #f4f4f4; border-color: #999; }
.stack-form label, .panel summary, details { color: #454545; }
.stack-form input, .stack-form select, .stack-form textarea, .op-filter input,
.op-filter select, .tenant-switcher select { border-color: #bfbfbf; color: #242424; background: #fff; }
.stack-form input:focus { border-color: #a9693e; box-shadow: 0 0 0 3px #db7a3914; }
fieldset, th, td, .op-record, .op-metrics>div, .check-row { border-color: var(--line); }
.op-empty { background: #f6f6f6; color: #686868; }
.op-badge:not(.op-active,.op-published,.op-approved,.op-paid,.op-verified,.op-completed,.op-held,.op-pending,.op-prepared,.op-cancelled,.op-rejected,.op-refunded,.op-reversed) { background: #eee; color: #555; }
.setup-card code { background: #eee; }
.skip-content { color: #242424; }

/* Catalog, route matrix and distance editor. */
.catalog-tabs, .catalog-tabs a, .catalog-card, .cat-subnav, .cat-book-bar,
.cat-table-panel .table-scroll, .cat-photo, .cat-image-grid article,
.cat-distance-form .table-scroll { border-color: var(--line); }
.catalog-tabs a, .cat-subnav a { color: #555; }
.catalog-tabs a[aria-current=page] { background: #fff; color: #202020; border-color: #d2d2d2; box-shadow: inset 0 -2px var(--accent); }
.catalog-card.selected { border-color: #a0a0a0; box-shadow: 0 0 0 2px #00000008; }
.cat-subnav a.selected { color: #262626; background: #ececec; border-color: var(--accent); }
.cat-safe-note { background: #ededed; border-color: #777; color: #454545; }
.catalog-intro p:not(.eyebrow), .catalog-category, .catalog-card p,
.catalog-footnote, .catalog-rate-table small, .cat-workspace-heading p,
.cat-book-bar small, .cat-workspace td small, .cat-workspace th small,
.cat-table-help, .cat-table-toolbar p, .cat-page-size label,
.cat-distance-panel>p, .cat-distance-tools [data-distance-count] { color: #686868; }
.cat-matrix thead th, .catalog-rate-table th, .cat-distance-table thead th {
  background: #eee; color: #333; border-color: #d6d6d6;
}
.cat-matrix th:first-child { background: #fafafa; }
.cat-matrix thead th:first-child { background: #eee; }
.cat-matrix tbody tr:nth-child(even)>* { background: #f7f7f7; }
.cat-matrix tbody tr:hover>* { background: #f0f0f0; }
.cat-price, .cat-matrix a.cat-price { color: #252525; }
.cat-matrix a.cat-price::after { color: #858585; }
.cat-matrix a.cat-price:hover, .cat-matrix a.cat-price:focus-visible {
  color: #242424; background: #fff; border-color: #aaa;
}
.cat-matrix a.cat-price.is-empty { color: #6a6a6a; border-color: #ccc; }
.cat-photo { background: #f7f7f7; }
.cat-photo span { background: #242424de; }
.cat-no-image { color: #666; border-color: #ccc; }
.cat-editor { border-color: #999; }
.cat-quote { background: #f4f4f4; border-color: #ccc; }
.cat-lightbox { color: #242424; }
.cat-lightbox::backdrop { background: #141414d9; }
.cat-lightbox-image { background: #f3f3f3; }
.cat-lightbox button, .cat-mobile-types button, .cat-cell-actions button,
.cat-page-size select, .cat-page-size button {
  background: #f7f7f7; color: #333; border-color: #ccc;
}
.cat-mobile-types button[aria-pressed=true], .cat-cell-actions button[type=submit] {
  background: var(--primary); color: #fff; border-color: var(--primary);
}
.cat-cell-form input, .cat-distance-select select, .cat-distance-form input[type=text] {
  color: #242424; border-color: #bfbfbf;
}
.cat-discount-settings { background: #f7f7f7; border-color: #ddd; }
.cat-discount-settings>summary, .cat-discount summary { color: #333; }
.cat-discount-settings>summary span, .cat-discount-settings>p { color: #666; }
.cat-discount-grid>div { border-color: #ddd; }
.cat-pagination>a { border-color: #d6d6d6; }
.cat-pagination>[aria-current] { background: var(--primary); color: #fff; border-color: var(--primary); }
.cat-pagination>a:hover { background: #f1f1f1; }
.cat-distance-select label, .cat-distance-form>label, .cat-distance-form>label.check { color: #454545; }

/* Account screens share the palette while retaining the existing vehicle artwork. */
.auth-page, .auth-page.theme-platform, .auth-page.theme-peakcarvip, .auth-page.theme-peakcargo {
  --auth-ink: #242424;
  --auth-muted: #686868;
  --auth-accent: #414141;
  --auth-panel: #252525;
  --auth-soft: #c6c6c6;
  background: #fafafa;
}
.auth-page .auth-symbol, .auth-register, .auth-footer { border-color: #dedede; }
.auth-page .stack-form input:not([type=checkbox]), .auth-page .stack-form select {
  background: #fff; color: #242424; border-color: #ccc;
}
.auth-page input::placeholder { color: #767676; }
.auth-page input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 100px #f4f4f4 inset;
  -webkit-text-fill-color: #242424;
  caret-color: #242424;
}
.auth-page .button-primary, .auth-page.theme-peakcarvip .button-primary {
  background: var(--primary); color: #fff;
}
.auth-page .button-primary:hover, .auth-page.theme-peakcarvip .button-primary:hover { background: var(--primary-dark); filter: none; }
.auth-page .stack-form input:focus, .auth-page.theme-peakcarvip .stack-form input:focus {
  border-color: #a9693e; box-shadow: 0 0 0 3px #db7a3914;
}
.theme-peakcargo .auth-identity { color: #fff; }
.theme-peakcargo .auth-identity-top, .theme-peakcargo .auth-identity-bottom>p:last-child { color: #ccc; }
.login-shell { background: #f4f4f4; }
.login-brand { background: linear-gradient(145deg, #181818, #454545); }
.login-brand h1 span, .login-brand>p:not(.eyebrow), .login-feature { color: #ddd; }
.login-feature span:first-child { color: #ddd; border-color: #888; }
.login-note { color: #686868; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, .table-scroll:focus-visible, .cat-workspace :focus-visible,
.account-topbar :focus-visible { outline: 2px solid #a9693e; outline-offset: 3px; }
.sidebar :focus-visible { outline-color: #e5a273; }
