/* BEST route theme: shared BEST palette and mark, compact route navigation. */
:root{--ink:#eaf4f7;--muted:#aac4cd;--line:#416477;--paper:#071a2a;--yellow:#ffb24b}
body,header{background:var(--paper);color:var(--ink)}header{border-color:#294b5e}
a{color:#81d8ff}a:hover{color:#ffb24b}header a{color:#eaf4f7}
.top .brand{display:inline-flex;align-items:center;gap:10px;direction:ltr;text-decoration:none;flex-shrink:0}
.brand .best-brand-mark{display:block;width:40px;height:45px;object-fit:contain}
.brand .best-brand-type{display:flex;flex-direction:column;gap:3px;line-height:1}
.brand .best-brand-name{font-size:23px;font-weight:850;letter-spacing:1.5px;color:#eaf5fa}
.brand .best-brand-city{font-size:12px;font-weight:650;letter-spacing:.45px;color:#c49b60;white-space:nowrap}
.languages a{min-width:40px;border:1px solid transparent}.languages a[aria-current]{background:#ffb24b;color:#071a2a}
.menu>div{background:#0d2b40;box-shadow:0 12px 30px #0006}.menu>div>a:hover{background:#123b50}
.eyebrow{color:#ffb24b}.card{background:#0d2b40;border-color:#416477;border-radius:12px}.card:hover{border-color:#81d8ff}.card h2 a{color:#eaf4f7}.card .eyebrow{color:#ff7b63}.sequence span{color:#ffb24b}
.filters button{background:#123b50;color:#f4f8fb;border-color:#6fa9ba;border-radius:24px}.filters button[aria-pressed=true]{background:#ffb24b;color:#071a2a;border-color:#ffb24b}
aside,.pan-feature,.route-facts,.pan-section,details.pan-help{background:#0d2b40;border-color:#416477}.pan-feature{border-inline-start:3px solid #ffb24b}.pan-feature p{padding-bottom:12px}
.route-actions .primary,.primary{background:#ffb24b;color:#071a2a}.primary:hover{background:#ffc879;color:#071a2a}.route-jump{background:#123b50;color:#f4f8fb;border-color:#81d8ff}
.number{border-color:#6fa9ba;background:#0d2b40;color:#ffb24b}.lead,.intro>p:last-child,.sequence,.stops p{color:#d9e8ef}
.pan-map,.pan-jump{background:#ffb24b;color:#071a2a!important}.pan-controls select{background:#123b50;color:#f4f8fb;border-color:#6fa9ba}.pan-stop input{accent-color:#ffb24b}.pan-stop:target{background:#123b50;outline-color:#ffb24b}.pan-cities a{border-color:#416477}.pan-section[open] summary{border-color:#416477}.facts-hint{color:#aac4cd}
.skip{background:#ffb24b;color:#071a2a}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #ffb24b;outline-offset:3px}
@media(max-width:600px){.brand .best-brand-mark{width:33px;height:37px}.brand .best-brand-name{font-size:20px}.brand .best-brand-city{font-size:11px}.top .brand{gap:8px}.languages a{min-width:36px}.top{padding-bottom:8px}header nav{gap:20px}.card h2{font-size:22px}}
@media(max-width:360px){.languages a{min-width:33px}header nav{gap:12px}}
@media(max-width:600px){.pan-feature p{display:none}}

@media(forced-colors:active){.filters button,.primary,.route-jump,.card{border:1px solid ButtonText}.filters button[aria-pressed=true]{outline:2px solid Highlight}}

/* Separate map and guide targets: do not let the stretched title cover buttons. */
.card h2 a:after{display:none}.card-arrow{display:none}.card{display:flex;flex-direction:column;padding:22px!important}.card .shortcut-map{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px;margin-top:16px;background:#ffb24b;color:#071a2a;border:1px solid #ffb24b;border-radius:10px;font-weight:750;text-align:center;text-decoration:none;line-height:1.4}.card .sequence{flex:1}.card .shortcut-map:hover{background:#ffc879;color:#071a2a}.shortcut-note{font-size:13px;color:var(--muted);margin:8px 0 0}.overview-map{font-weight:700}.card h2 a{text-decoration:underline}.card h2 a:focus-visible,.shortcut-map:focus-visible{outline:3px solid #81d8ff;outline-offset:3px}
@media(forced-colors:active){.shortcut-map{border:2px solid ButtonText}}

/* Prioritize the local routes on narrow screens. */
@media(max-width:600px){main:has(>.cards) .intro h1{font-size:clamp(1.65rem,7vw,2rem);line-height:1.15}main:has(>.cards) .intro{margin-block:12px}main:has(>.cards) .pan-feature{margin-block:10px;padding:10px}main:has(>.cards) .pan-feature a{padding-block:8px;min-height:44px;box-sizing:border-box}main:has(>.cards) .filters{margin-block:12px}.card{padding:16px!important}.card h2{margin-block:8px}.card .shortcut-map{margin-top:8px}}
