/* Shared across every page: tan surfaces, dark type, lime accents. */
:root{--ink:#21262e;--muted:#485362;--lime:#b0b9c5;--line:#abb5c3;--shadow:0 8px 24px #2d343d12}
body{color:var(--ink)}
.hero,.workspace-hero,.login-intro{box-shadow:0 12px 28px #2d343d20;border:1px solid #8290a4;border-top:4px solid var(--lime)}
.hero h1,.workspace-hero h1,.login-intro h1{color:var(--ink);font-weight:800;text-shadow:0 2px 0 #ffffff35}
.hero h1 em,.workspace-hero h1 em,.login-intro h1 em{color:#21262e;font-style:normal;text-decoration:none}
.hero p,.hero-stats,.workspace-hero p,.workspace-stats,.login-intro p,.login-features,.hero .eyebrow,.workspace-hero .eyebrow,.login-intro .eyebrow{color:#313843}
.hero-stats b{color:var(--ink)}
.hero .eyebrow>span,.workspace-hero .eyebrow>span,.login-intro .eyebrow>span{background:var(--lime);box-shadow:0 0 0 2px #313843}
.brandmark{box-shadow:0 3px 8px #2d343d24,inset 0 0 0 1px #8290a4}.brandmark span{color:var(--ink);text-shadow:2px 2px 0 var(--lime)}
.brand small,.header-label{color:var(--muted)}
.nav{color:#3a4350}.nav.active{background:var(--lime);color:var(--ink);box-shadow:0 3px 8px #2d343d16}.nav:hover{background:#dadfe5;color:var(--ink)}
.lookup,.card,.login-panel{box-shadow:var(--shadow);border-color:var(--line)}.card:hover{border-color:#4e5b6c;box-shadow:0 12px 28px #2d343d20}
.searchbox{background:#fcfcfd;border:2px solid #67768b}.searchbox input::placeholder,.login-panel input::placeholder{color:#546071;opacity:1}
.searchbox:focus-within{outline:3px solid #3c4552;outline-offset:3px}
.search-submit,.primary,.contact-actions a:first-child{background:var(--lime);color:#21262e;border:1px solid #525f72;box-shadow:0 3px 0 #566477,0 5px 12px #2d343d18}
.search-submit:hover,.primary:hover,.contact-actions a:first-child:hover{background:#cad0d8;box-shadow:0 2px 0 #566477,0 7px 16px #2d343d25}
.filters select,.tab-selector button,.secondary,.load-more,.map-small{border-color:#6c7b91;color:#2b323b}
.tab-selector button[aria-pressed=true]{background:#21262e;color:var(--lime);border-color:#21262e;box-shadow:inset 0 -3px 0 var(--lime),0 4px 10px #2d343d20}
.code,.route-slics .directory-slic{color:#282f38;background:#e4e7ec;border-color:#728299}.slic-details:hover,.directory-slic:hover{background:var(--lime);color:#21262e}
.star{color:#444f5f}.star[aria-pressed=true]{background:var(--lime);color:#21262e}
.map-small,.address-map-link small{color:#353e4a;font-weight:700}.address-map-link:hover{background:#e4e7ec}
.type-pill,.note-marker,.contact-role,.contact-extra,dialog p,.login-description,.login-fine{color:#434d5c}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #3c4552;outline-offset:3px}
.filters label,.meta-label,.detail-section h3,.job-facts small,.route-stops small,.detail-meta small{font-weight:700}
.search-hint,.workspace-hint,.source-row,.result-source,.detail-source{font-size:12px}.search-hint,.workspace-hint{line-height:1.7}
footer p,footer .fine{font-size:11px}.topbar{box-shadow:0 2px 12px #2d343d08}
@media(max-width:680px){.workspace-hint,.search-hint{font-size:12px}.workspace-hero h1{line-height:1.2}.hero,.workspace-hero{padding-bottom:32px}}

/* Charcoal, clean white and electric blue. */
:root{--ink:#202c3b;--muted:#526174;--paper:#f3f6fa;--green:#202c3b;--lime:#b9dbff;--line:#c3cedc;--shadow:0 8px 24px #172c4814}
.hero,.workspace-hero,.login-intro{background:#202c3b;border-color:#35485f;border-top-color:#63acff}
.hero h1,.workspace-hero h1,.login-intro h1{color:#fff;text-shadow:0 3px 8px #0003}
.hero h1 em,.workspace-hero h1 em,.login-intro h1 em{color:#b9dbff;text-decoration-color:#63acff}
.hero p,.hero-stats,.workspace-hero p,.workspace-stats,.login-intro p,.login-features,.hero .eyebrow,.workspace-hero .eyebrow,.login-intro .eyebrow{color:#d5deea}.hero-stats b{color:#fff}
.brandmark{background:#202c3b;color:#fff;box-shadow:0 4px 10px #172c482a}.brandmark span{color:#b9dbff;text-shadow:none}
.search-submit,.primary,.contact-actions a:first-child{background:#1964c4;color:#fff;border-color:#174d91;box-shadow:0 3px 0 #123e75,0 6px 14px #1964c42b}
.search-submit:hover,.primary:hover,.contact-actions a:first-child:hover{background:#124d9c;color:#fff}
.nav.active{background:#dcecff;color:#164b8e}.nav:hover{background:#e7f1ff;color:#164b8e}
.code,.route-slics .directory-slic{color:#174d91;background:#eaf3ff;border-color:#8eafd7}
.map-small,.address-map-link small{color:#174d91}.address-map-link:hover{background:#eaf3ff}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.searchbox:focus-within{outline-color:#1964c4}
.tab-selector button[aria-pressed=true]{background:#202c3b;color:#fff;border-color:#202c3b;box-shadow:inset 0 -3px 0 #63acff,0 4px 10px #172c4820}
.back-route{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:12px 18px;margin-bottom:18px;border:1px solid #8eafd7;border-radius:9px;background:#eaf3ff;color:#174d91;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 4px 12px #172c4814}.back-route:hover{background:#d5e8ff}dialog .back-route{position:sticky;top:0;z-index:2}
