/* Motor Carrier Desk — site tokens. Palette: asphalt + highway-sign orange + reflective yellow, with a cool steel for data. */
:root{
  --bg:#F4F2EE; --surface:#FFFFFF; --ink:#17191C; --muted:#5B6068; --line:#DED9D0; --line-strong:#B7B0A4;
  --accent:#D9641A; --accent-ink:#FFFFFF; --accent-soft:#FBE7DA;
  --cool:#2F6F8F; --cool-soft:#DCEAF1; --ok:#2E7D4F; --ok-soft:#DDF0E4; --warm:#B07A00; --warm-soft:#FBF0CF; --bad:#A83A2E; --bad-soft:#F8E1DD;
  --r:10px; --max:1080px;
  --sans:Inter,"Avenir Next","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  --mono:ui-monospace,Menlo,Consolas,monospace;
  --display:"Barlow Condensed","Avenir Next Condensed","Arial Narrow",var(--sans);
  --glass:#BFD6E3; --hero-art-bg:#E9E3D8; --car:#D9641A;
  --asphalt:#3A3F47; --asphalt-2:#2A2E34; --sign:#1E6B3A; --yellow:#F2C230;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#121417; --surface:#1B1F24; --ink:#ECE9E2; --muted:#A3A8B0; --line:#2C3138; --line-strong:#4A515B;
  --accent:#F08A45; --accent-ink:#1A0F07; --accent-soft:#3A2416;
  --cool:#7FB6D2; --cool-soft:#1A2F3A; --ok:#7CC79A; --ok-soft:#1A3326; --warm:#F0C65A; --warm-soft:#3A2F12; --bad:#F09A8E; --bad-soft:#3E1F1C;
  --glass:#3E5B6B; --hero-art-bg:#232830; --car:#F08A45; --asphalt:#4A5059; --asphalt-2:#363B43; --sign:#2E8A50; --yellow:#E8B82A;
  color-scheme:dark;
}}
.brand-mark{width:18px;height:18px;border-radius:4px;background:linear-gradient(135deg,var(--accent) 0 55%,var(--yellow) 55%)}
/* ---- site-specific art palette ---- */
.art .art-road{fill:var(--asphalt)}.art .art-lane{stroke:var(--yellow);stroke-width:4;stroke-dasharray:28 22;fill:none}
.art .art-post{fill:var(--line-strong)}.art .art-sign{fill:var(--sign);stroke:var(--surface);stroke-width:3}.art .art-sign-text{stroke:var(--surface);stroke-width:4;stroke-linecap:round;fill:none}
.art .art-cab{fill:var(--car,var(--accent));stroke:var(--ink);stroke-width:3}.art .art-stack{fill:var(--line-strong);stroke:var(--ink);stroke-width:2}
.art .art-desk{fill:var(--asphalt-2)}.art .art-desk-edge{fill:var(--asphalt)}
.art .art-paper{fill:var(--surface);stroke:var(--ink);stroke-width:2.5}.art .art-paper-head{fill:var(--accent)}.art .art-rule{fill:var(--line-strong)}.art .art-field{fill:var(--accent-soft);stroke:var(--line-strong);stroke-width:1}.art .art-field-ok{fill:var(--ok-soft);stroke:var(--ok);stroke-width:1.5}
.art .art-stamp-base{fill:var(--ink)}.art .art-stamp-ink{fill:none;stroke:var(--bad);stroke-width:4;stroke-dasharray:6 5}.art .art-stamp-mark{stroke:var(--bad);stroke-width:3;fill:none}
.art .art-card{fill:var(--surface);stroke:var(--ink);stroke-width:2}.art .art-card-top{fill:var(--yellow);stroke:var(--ink);stroke-width:2}
.art .art-cal-head{fill:var(--cool)}.art .art-cal-day{fill:var(--line)}.art .art-cal-today{fill:var(--accent)}
.art .art-platform{fill:var(--cool);stroke:var(--ink);stroke-width:2}.art .art-readout{fill:var(--asphalt-2);stroke:var(--ink);stroke-width:2}.art .art-readout-glass{fill:var(--yellow)}
.art .art-state-a{fill:var(--accent-soft);stroke:var(--ink);stroke-width:2}.art .art-state-b{fill:var(--cool-soft);stroke:var(--ink);stroke-width:2}.art .art-state-c{fill:var(--warm-soft);stroke:var(--ink);stroke-width:2}
.art .art-border{stroke:var(--ink);stroke-width:3;stroke-dasharray:10 8;fill:none}.art .art-route{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round}.art .art-dot-sm{fill:var(--ink);stroke:var(--surface);stroke-width:2}
.art .art-pump{fill:var(--bad);stroke:var(--ink);stroke-width:2}
.art .art-letter{fill:var(--ink)}.art .art-ear{fill:var(--accent-soft);stroke:var(--ink);stroke-width:3}.art .art-arc{fill:none;stroke:var(--cool);stroke-width:3;stroke-linecap:round}
.art .art-cuff{fill:var(--cool);stroke:var(--ink);stroke-width:2}.art .art-strap{fill:var(--asphalt)}.art .art-gauge{fill:var(--surface);stroke:var(--ink);stroke-width:3}.art .art-needle{stroke:var(--bad);stroke-width:3;stroke-linecap:round}
.art .art-lens{fill:var(--asphalt-2)}.art .art-lens-glass{fill:var(--glass);opacity:.75}.art .art-handle{stroke:var(--asphalt-2);stroke-width:14;stroke-linecap:round;fill:none}
/* ---- site layout refinements ---- */
.hero{background:linear-gradient(180deg,var(--surface) 0,var(--bg) 100%);position:relative}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:repeating-linear-gradient(90deg,var(--yellow) 0 36px,transparent 36px 64px);opacity:.9}
.hero-art{background:var(--hero-art-bg)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0 6px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;border-top:4px solid var(--accent)}
.kpi .k{font:600 .74rem var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.kpi .v{font:700 1.5rem/1.1 var(--display);color:var(--ink)}
.kpi .s{font-size:.8rem;color:var(--muted)}
.tool{border-top:5px solid var(--accent);box-shadow:0 8px 30px -22px rgba(0,0,0,.45)}
.tool .result .answer .value{font-family:var(--display);font-size:1.9rem}
.sources{font-size:.84rem;color:var(--muted);border-left:3px solid var(--line-strong);padding:6px 12px;margin:14px 0}
.sources a{color:var(--muted)}
.band{margin:30px -16px;padding:26px 16px;background:var(--asphalt-2);color:#F4F2EE;border-top:6px solid var(--yellow)}
.band h2{color:#fff;margin-top:0}.band a{color:var(--yellow)}.band .cards .card{background:var(--asphalt);border-color:var(--asphalt);color:#F4F2EE}.band .card span{color:#CFC9BE}.band .card:hover{border-color:var(--yellow)}
.steps{counter-reset:s;list-style:none;padding:0;margin:14px 0;display:grid;gap:10px}
.steps li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}
.steps li::before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font:700 1.1rem var(--display)}
.steps b{display:block;font-family:var(--display);font-size:1.1rem}
.state-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:14px 0}
.state-grid a{display:flex;justify-content:space-between;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-decoration:none;color:var(--ink);font-size:.95rem}
.state-grid a:hover{border-color:var(--accent)}.state-grid a small{color:var(--muted);font-variant-numeric:tabular-nums}
.state-grid a.np small{color:var(--warm)}
.badge{display:inline-block;font:600 .74rem var(--display);letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:var(--ok-soft);color:var(--ok)}
.badge.warm{background:var(--warm-soft);color:var(--warm)}.badge.cool{background:var(--cool-soft);color:var(--cool)}
.lookup-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
@media (max-width:600px){.lookup-form{grid-template-columns:1fr}.band{margin:24px -16px}}
.photo-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:14px 0}
.photo-strip .photo img{aspect-ratio:4/3}

.checks{display:grid;gap:6px;margin-top:6px}
.check{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);cursor:pointer}
.check input{width:20px;height:20px;margin:0;accent-color:var(--accent)}
.check:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
