.trip-progress-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.trip-delay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.trip-delay strong{font-size:clamp(48px,7vw,88px);line-height:1.1}.trip-delay small{font-size:14px;text-align:center}.trip-delay.early,.trip-measure.early{background:#9e1524;color:#fff}.trip-delay.ontime,.trip-measure.ontime{background:#156338;color:#fff}.trip-delay.late,.trip-measure.late{background:#f5c342;color:#241b00}.trip-measure{padding:4px 9px;border-radius:6px;display:inline-block}.stop-picker{width:min(850px,92vw);max-height:92vh;overflow:auto;border:0;border-radius:12px;padding:20px}.stop-picker::backdrop{background:#0008}.stop-picker [data-results]{display:grid;gap:5px;margin:10px 0}.stop-picker .leaflet-container{background:#eee}.trip-progress-grid h1{font-size:32px}@media(max-width:600px){.trip-progress-grid{grid-template-columns:1fr}.trip-delay strong{font-size:56px}}
.stop-picker{background:#fff;color:#15232d}.stop-picker .input,.stop-picker .select,.stop-picker .btn{background:#f3f6f8;color:#15232d;border:1px solid #b8c5cd}.stop-picker .btn.primary{background:#087983;color:#fff}.stop-picker .muted{color:#53636d}.stop-picker [data-results]{max-height:160px;overflow:auto}.stop-picker label{color:#263b46}

.drive-heading{display:grid;grid-template-columns:1fr minmax(190px,28%);gap:16px;align-items:stretch;margin-bottom:14px}.drive-heading h2{font-size:1.8em;margin:8px 0}.drive-heading .trip-delay{border-radius:12px;padding:12px}.drive-heading .trip-delay strong{font-size:clamp(52px,6vw,82px)}.drive-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.drive-current h1{font-size:clamp(28px,3.4vw,46px);margin:14px 0}.drive-times{display:flex;gap:24px}.drive-times b{font-size:1.5em}.drive-departure{font-size:1.25em;font-weight:bold;min-height:1.5em}.drive-band{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;background:#17313a;padding:12px;border-radius:8px;margin:12px 0}.drive-footer{justify-content:space-between}.drive-upcoming td{padding:14px 8px}.drive-map{height:360px;min-height:240px;z-index:0}.drive-dialog{max-width:min(960px,95vw);max-height:88vh;overflow:auto;background:#14242d;color:white;border:1px solid #527078;border-radius:12px;padding:20px}.drive-dialog::backdrop{background:#000a}.drive-dialog .table{color:inherit}@media(max-width:700px){.drive-grid{grid-template-columns:1fr}.drive-heading{grid-template-columns:1fr 150px}.drive-times{gap:14px}.drive-map{height:300px}}
.nav-night .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.75) saturate(.65)}
.nav-speed{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nav-speed [data-limit]{border:5px solid #c22;border-radius:50%;background:white;color:#15232b;width:58px;height:58px;display:grid;place-items:center;font-size:26px;font-weight:bold}.nav-speed.over-limit [data-limit]{background:#ffe0d9}.nav-night .map-panel{background:#13232c}

/* Combined GPS speed and mapped limit, including high-contrast night treatment. */
.nav-speed{justify-content:center;gap:12px}.nav-speed [data-map-theme]{flex-basis:100%}.speed-dial{position:relative;width:154px;height:154px;margin:16px 28px 8px 4px;border:9px solid #53616d;border-radius:50%;box-sizing:border-box;background:radial-gradient(circle at 40% 25%,#344653,#14212b);box-shadow:0 5px 12px #0004;display:grid;place-items:center;color:#fff}.speed-reading{display:flex;flex-direction:column;align-items:center;line-height:1.05}.speed-reading strong{font-size:52px;font-weight:750;font-variant-numeric:tabular-nums;color:#fff}.speed-reading span{font-size:23px;color:#fff}.nav-speed .speed-dial [data-limit]{position:absolute;right:-32px;top:-22px;box-sizing:border-box;width:74px;height:74px;border:7px solid #d53b3b;outline:3px solid #fff;background:#fff;color:#20252b;font-size:31px;box-shadow:0 3px 7px #0004}.nav-speed.over-limit .speed-reading strong,.nav-speed.over-limit .speed-reading span{color:#ff7777}.nav-speed.over-limit .speed-dial [data-limit]{background:#fff}

.map-panel{position:relative}.map-panel>.nav-speed.on-map{position:absolute;left:12px;bottom:12px;z-index:470;pointer-events:none;display:block}.nav-speed.on-map .speed-dial{width:104px;height:104px;margin:16px 24px 0 0;border-width:7px}.nav-speed.on-map .speed-reading strong{font-size:36px}.nav-speed.on-map .speed-reading span{font-size:17px}.nav-speed.on-map .speed-dial [data-limit]{width:52px;height:52px;border-width:5px;font-size:23px;right:-20px;top:-14px}.compact-screen .map-panel [data-map-status]{left:10px;right:10px;bottom:auto;top:58px;margin:0;pointer-events:none}.map-panel [data-map-status]:empty{display:none}

.trip-delay.unknown{background:#25343f;color:#eef6fb}

/* Always reachable above map attribution, separate from maneuver panel. */
.map-panel>.map-closure-report{position:absolute;right:12px;bottom:30px;z-index:510;display:grid;place-items:center;width:56px;height:56px;min-width:56px;padding:0;border:2px solid #bccbd3;border-radius:50%;background:#f8fafc;color:#172b38;box-shadow:0 2px 8px #0006;cursor:pointer;touch-action:manipulation}.map-closure-report:focus-visible{outline:3px solid #008bcc;outline-offset:3px}.map-closure-report:active{background:#dcebf2}

.map-theme-button{position:relative;display:grid;place-items:center;width:56px;height:56px;min-width:56px;padding:0;border:2px solid #bccbd3;border-radius:50%;background:#f8fafc;color:#172b38;box-shadow:0 2px 8px #0006;cursor:pointer;touch-action:manipulation}.map-panel>.map-theme-button{position:absolute;right:12px;bottom:96px;z-index:510}.map-theme-auto{position:absolute;right:3px;bottom:2px;background:#17455f;color:white;border-radius:50%;width:21px;height:21px;display:grid;place-items:center;font:bold 14px sans-serif}.map-theme-button:focus-visible{outline:3px solid #008bcc;outline-offset:3px}.map-theme-button:active{background:#dcebf2}

/* Night palette for both floating map actions. */
.nav-night .map-panel>.map-closure-report,.nav-night .map-theme-button{background:#253541;border-color:#627785;color:#e6edf2;box-shadow:0 2px 8px #0009}.nav-night .map-theme-auto{background:#b9cfde;color:#172b38}.nav-night .map-theme-button svg path[fill="#334b72"]{fill:#cbd9eb}.nav-night .map-closure-report svg [stroke="#233742"]{stroke:#cad6df}.nav-night .map-closure-report svg rect{fill:#9aaebc}.nav-night .map-closure-report svg [fill="#d52f38"]{fill:#ed6971}.nav-night .map-theme-button:active,.nav-night .map-panel>.map-closure-report:active{background:#3b5060}

.forecast{font-weight:700}.forecast.early{color:#b02030}.forecast.late{color:#805b00}.forecast.ontime{color:#156338}.forecast.unknown{color:inherit}.nav-night .forecast.early,#terminalContent .forecast.early{color:#ff8791}.nav-night .forecast.late,#terminalContent .forecast.late{color:#ffda64}.nav-night .forecast.ontime,#terminalContent .forecast.ontime{color:#8be4ab}
