:root{--bg:#fff;--panel:#fff;--panel-2:#f6f7f9;--border:#e3e6ea;--border-strong:#7f8894;--text:#1a1f26;--muted:#5f6773;--accent:#1565c0;--accent-soft:#e8f0fe;--shadow:0 6px 24px #141e2d24;--radius:12px;--topbar:48px;--brand:#0075c9;--brand-sky:#50c2ec;--delay-ontime-fg:#0f7a42;--delay-ontime-bg:#e4f5ea;--delay-early-fg:var(--accent);--delay-early-bg:var(--accent-soft);--delay-late-fg:#8a5900;--delay-late-bg:#fdf0dd;--delay-late-bad-fg:#c62828;--delay-late-bad-bg:#fce4e4;--live-fg:#0f7a42;--line:var(--border);--good-fg:#1a7a3f;--mid-fg:#9a6b00;--bad-fg:#c02a1b;--ok-fg:#0f7a42;--warn-fg:#8a5900;--ok:var(--ok-fg);--warn:var(--warn-fg);--bad:var(--bad-fg);--stale-fg:#b8571f;--carried-fg:#7a6a3c;--error-fg:#8c2318;--error-hover-bg:#fbe7e3;--pass-fg:#16603a;--caution-fg:#b06000;--advisory-fg:#8a5a08;--noaccess-fg:#b3261e;--cat-added-fg:#1a7f46;--cat-fixed-fg:#8a5a00;--cat-removed-fg:#8a2718;--note-fg:#24405e;--deadhead-a:#b7bfc9;--deadhead-b:#cdd4dc;--deadhead-fg:#1a1f26;--zeroblock-bg:#f3eee2;--zeroblock-fg:#6b5a2b;--zeroblock-sub-fg:#7a6a3c;--zeroblock-rule:#d9c99a}*{box-sizing:border-box}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}html,body{height:100%;color:var(--text);font-family:var(--font-ui);margin:0}button,input,select,textarea{font-family:inherit}#map{inset:var(--topbar) 0 0 0;position:absolute}#sidebar{top:calc(var(--topbar) + 16px);width:var(--sidebar-w);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);max-width:calc(100vw - 32px);box-shadow:var(--shadow);z-index:5;flex-direction:column;display:flex;position:absolute;bottom:16px;left:16px;overflow:hidden}.side-header{padding:16px 18px 10px}.side-header h1{letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:20px;display:flex}.side-header h1:before{content:"";background:url(/mark.png) 50%/contain no-repeat;flex:none;width:11px;height:18px}.tagline{color:var(--muted);margin:2px 0 0;font-size:13px}.feed-window{color:var(--muted);margin:6px 0 0;font-size:11px}.live-status{color:var(--live-fg);align-items:center;gap:6px;margin:6px 0 0;font-size:11px;font-weight:600;display:flex}.live-status.stale{color:var(--muted)}.live-dot{background:#16c060;border-radius:50%;width:8px;height:8px;animation:2s infinite live-pulse;box-shadow:0 0 #16c06099}.live-status.stale .live-dot{background:var(--muted);box-shadow:none;animation:none}@keyframes live-pulse{70%{box-shadow:0 0 0 6px #16c06000}to{box-shadow:0 0 #16c06000}}.mode-toggle{background:var(--panel-2);border-radius:10px;gap:4px;margin:4px 14px 8px;padding:4px;display:flex}.mode-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;padding:8px;font-size:13px;font-weight:600}.mode-btn.active{background:var(--bg);color:var(--text);box-shadow:0 1px 3px #0000001a}.view{flex-direction:column;flex:1;min-height:0;display:flex}.filters{border-bottom:1px solid var(--border);padding:6px 14px 10px}input[type=search]{border:1px solid var(--border-strong);background:var(--panel-2);border-radius:9px;width:100%;padding:9px 12px;font-size:14px}input[type=search]:focus-visible{outline:2px solid var(--accent);border-color:var(--accent)}.count{color:var(--muted);margin:8px 2px 0;font-size:11px}.count.hint{border:0}.operator-filter{margin-top:8px;position:relative}.operator-summary{cursor:pointer;border:1px solid var(--border-strong);background:var(--panel-2);border-radius:9px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;list-style:none;display:flex}.operator-summary::-webkit-details-marker{display:none}.operator-summary-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;flex:none;font-size:11px;font-weight:600}.operator-summary-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.operator-caret{color:var(--muted);flex:none;font-size:11px;transition:transform .15s}.operator-filter[open] .operator-caret{transform:rotate(180deg)}.operator-filter[open] .operator-summary{border-color:var(--accent)}.operator-menu{z-index:7;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:9px;max-height:min(60vh,420px);margin-top:4px;padding:6px;position:absolute;left:0;right:0;overflow-y:auto}.operator-menu-actions{gap:6px;padding:2px 2px 6px;display:flex}.operator-menu-actions button{border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer;border-radius:7px;flex:1;padding:5px;font-size:12px;font-weight:600}.operator-menu-actions button:hover{background:var(--panel-2);color:var(--text)}.operator-options{flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.operator-option{cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:6px 7px;font-size:13px;display:flex}.operator-option:hover{background:var(--panel-2)}.operator-option input{accent-color:var(--accent);cursor:pointer;flex:none}.operator-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.operator-option-count{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.list{flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.row{cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex}.row:hover{background:var(--panel-2)}.row.selected{background:var(--accent-soft)}.row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.route-badge{color:#fff;border-radius:6px;flex:none;justify-content:center;align-items:center;min-width:34px;height:24px;padding:0 7px;font-size:13px;font-weight:700;display:inline-flex}.row-main{min-width:0}.row-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.row-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.variant-tag{color:var(--muted);border:1px solid var(--border);border-radius:5px;margin-left:6px;padding:1px 5px;font-size:10px}.card{z-index:6;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;position:absolute}.card-kicker{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:12px;padding:0 22px 8px 0;font-size:10.5px;font-weight:700}body{--sidebar-w:360px;--left-inset:calc(16px + var(--sidebar-w) + 16px);--rail-w:44px;--dock-w:400px;--right-inset:calc(16px + var(--rail-w) + 8px);--nav-rail-w:0px;--map-min:280px}.panel-rail{z-index:7;top:calc(var(--topbar) + 16px);width:var(--rail-w);flex-direction:column;gap:6px;display:flex;position:absolute;right:16px}.rail-btn{width:var(--rail-w);height:var(--rail-w);cursor:pointer;color:var(--muted);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);font:inherit;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;display:flex;position:relative}.rail-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.rail-btn.active{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.rail-btn.empty{cursor:default;color:#b9c0c8;background:var(--panel);border-color:#eceef1;box-shadow:0 2px 6px #141e2d0f}.rail-glyph{width:18px;height:18px;display:block}.rail-label{letter-spacing:.02em;font-size:10px;font-weight:700;line-height:1}.rail-badge{background:var(--freq-alarm);min-width:16px;height:16px;color:var(--on-band);text-align:center;box-shadow:0 0 0 2px var(--panel);border-radius:8px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-5px;right:-5px}.panel-dock{z-index:6;top:calc(var(--topbar) + 16px);right:calc(16px + var(--rail-w) + 8px);width:var(--dock-w);max-width:calc(100vw - var(--left-inset) - 16px - var(--rail-w) - 8px);pointer-events:none;flex-direction:column;display:flex;position:absolute;bottom:16px}body.overlay-info-open .panel-dock{bottom:calc(16px + var(--overlay-info-h,0px) + 12px)}.dock-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);pointer-events:auto;flex-direction:column;min-height:0;max-height:100%;display:flex}.dock-head{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:4px;padding:10px 8px 10px 14px;display:flex}.dock-title{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);flex:1;margin:0;font-size:10.5px;font-weight:700}.dock-body{min-height:0;padding:12px 18px 16px;overflow-y:auto}.detail-list{grid-template-columns:auto 1fr;gap:6px 12px;margin:14px 0 0;font-size:12.5px;display:grid}.detail-list dt{color:var(--muted);white-space:nowrap}.detail-list dd{text-align:right;word-break:break-word;margin:0;font-weight:600}.card-close,.dv-close,.tt-rd-close,.saved-view-x,.dv-cmp-unpick,.overlay-info-gear{cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;line-height:1;display:inline-flex}.card-close:hover,.dv-close:hover,.tt-rd-close:hover,.dv-cmp-unpick:hover,.overlay-info-gear:hover{background:var(--panel-2);color:var(--text)}.card-close:focus-visible,.dv-close:focus-visible,.tt-rd-close:focus-visible,.saved-view-x:focus-visible,.dv-cmp-unpick:focus-visible,.overlay-info-gear:focus-visible,.banner-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-close{color:var(--muted);font-size:22px;position:absolute;top:6px;right:8px}.dock-head .card-close{font-size:20px;position:static}.card-title{padding-right:20px;font-size:16px;font-weight:700}.card-sub{color:var(--muted);margin-top:2px;font-size:12px}.card-operator{color:var(--accent);margin-top:3px;font-size:12px;font-weight:600}.route-card-head{align-items:center;gap:10px;display:flex}.dirs{flex-direction:column;gap:6px;margin-top:12px;display:flex}.dir{align-items:center;gap:8px;font-size:13px;display:flex}.dir-dot{border-radius:50%;flex:none;width:10px;height:10px}.card-meta{color:var(--muted);margin:12px 0 0;font-size:12px}.seg-group{background:var(--panel-2);border-radius:9px;gap:4px;margin-top:12px;padding:4px;display:flex}.seg-group[hidden]{display:none}.seg-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;padding:6px 8px;font-size:12px;font-weight:600}.seg-btn.active{background:var(--bg);color:var(--text);box-shadow:0 1px 3px #0000001a}.seg-dir{padding-bottom:9px;position:relative}.seg-dir:after{content:"";background:var(--seg-accent);opacity:.55;border-radius:2px;height:3px;position:absolute;bottom:4px;left:8px;right:8px}.seg-dir.active:after{opacity:1}.patterns{flex-direction:column;gap:3px;margin-top:12px;display:flex}.pattern-row{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:baseline;gap:8px;padding:7px 9px;display:flex}.pattern-row:hover{background:var(--panel-2)}.pattern-row.active{background:var(--accent-soft);border-color:var(--accent)}.pattern-label{font-size:13px;font-weight:600}.pattern-sub{color:var(--muted);white-space:nowrap;font-size:11px}.stop-routes{flex-wrap:wrap;gap:5px;margin:12px 0;display:flex}.mini-badge{color:#fff;cursor:pointer;border:0;border-radius:5px;padding:2px 7px;font-family:inherit;font-size:11px;font-weight:700}.stop-routes.filtered .chip-route{opacity:.45}.stop-routes.filtered .chip-route.active{opacity:1}.chip-route.active{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--accent)}.board-controls{border-top:1px solid var(--border);color:var(--muted);padding-top:12px;font-size:12px}.board-controls input[type=date]{border:1px solid var(--border-strong);color:var(--text);border-radius:7px;margin-left:6px;padding:5px 8px;font-size:13px}.departures{flex:1;margin-top:10px;overflow-y:auto}.dep{border-bottom:1px solid var(--border);grid-template-columns:70px 32px 1fr auto;align-items:center;gap:8px;padding:7px 4px;display:grid}.dep-when{flex-direction:column;line-height:1.15;display:flex}.dep-rel{font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.dep-clock{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.dep-clock .plus1{vertical-align:super;font-size:10px}.dep.past{opacity:.62}.dep.past .dep-rel{color:var(--muted);font-weight:600}.dep-badge{color:#fff;text-align:center;border-radius:5px;align-self:center;padding:2px 0;font-size:11px;font-weight:700}.dep-head{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.dep-now{letter-spacing:.06em;color:var(--live-fg);align-items:center;gap:8px;margin:6px 0;padding:2px 0;font-size:10.5px;font-weight:700;display:flex}.dep-now:before,.dep-now:after{content:"";background:var(--live-dot);opacity:.5;border-radius:2px;flex:1;height:2px}.dep-expand{border:1px dashed var(--border);background:var(--panel-2);width:100%;color:var(--accent);cursor:pointer;text-align:center;border-radius:8px;margin:4px 0;padding:7px;font-size:12px;font-weight:600}.dep-expand:hover{background:var(--accent-soft);border-color:var(--accent)}.dep-expand.earlier{margin-bottom:8px}.dep-expand.later{margin-top:8px}.dep-cap-note{border-top:1px dashed var(--border);color:var(--muted);text-align:center;margin-top:10px;padding:8px 10px;font-size:11px;line-height:1.5}.empty{color:var(--muted);text-align:center;padding:16px 4px;font-size:13px}:root{--freq-ok:#2c6f43;--freq-watch:#ad4c14;--freq-alarm:#a3231b;--freq-unknown:#69727e}.dep-mode{border:1px solid var(--border);border-radius:7px;display:inline-flex;overflow:hidden}.dep-mode-btn{background:var(--panel);color:var(--muted);cursor:pointer;border:0;padding:4px 9px;font-size:11.5px;font-weight:600}.dep-mode-btn+.dep-mode-btn{border-left:1px solid var(--border)}.dep-mode-btn.active{background:var(--accent-soft);color:var(--accent)}.dep-gap{align-items:baseline;gap:4px;display:flex}.dep-gap-dev{opacity:.85;font-size:10px;font-weight:600}.dep-gap-first{color:var(--muted);font-size:11px;font-weight:600}.dep-gap.freq-ok{color:var(--freq-ok)}.dep-gap.freq-watch{color:var(--freq-watch)}.dep-gap.freq-alarm{color:var(--freq-alarm)}.dep-gap.freq-unknown{color:var(--muted)}.freq-legend{flex-wrap:wrap;align-items:center;gap:2px 10px;display:flex}.freq-key{color:var(--muted);align-items:center;gap:4px;font-size:10.5px;display:inline-flex}.freq-key i{border-radius:3px;width:10px;height:10px;display:inline-block}.freq-th-summary{color:var(--muted);font-size:10.5px}.freq-settings{border-top:1px solid var(--border);margin-top:9px;padding-top:9px}.freq-settings label{align-items:center;gap:4px;margin-right:6px;font-size:12px;display:inline-flex}.freq-settings-row{align-items:center;gap:4px;margin-bottom:6px;display:flex}.freq-settings-band{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex:0 0 46px;font-size:10.5px;font-weight:700}.freq-settings-op{flex:0 0 52px}.freq-settings input[type=number]{width:52px;padding:3px 5px;font-size:12px}.freq-settings select{padding:3px 4px;font-size:12px}.freq-settings-intro{color:var(--muted);margin:0 0 7px;font-size:11px;line-height:1.45}.freq-settings-note{color:var(--muted);margin:8px 0 6px;font-size:10.5px;line-height:1.5}#freq-panel .dock-body,#stop-panel .dock-body{flex-direction:column;min-height:0;display:flex}.freq-dirs{margin-top:0;margin-bottom:8px}.freq-head{flex-wrap:wrap;align-items:baseline;gap:3px 8px;margin-bottom:6px;display:flex}.freq-head-what{font-size:12.5px;font-weight:700}.freq-head-th{color:var(--muted);font-size:10.5px}.freq-stale{color:var(--freq-watch);font-size:10.5px;font-weight:600}.freq-filters{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:6px;display:flex}.freq-chip{cursor:pointer;border:1px solid var(--border);background:var(--panel);font:inherit;color:var(--muted);border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.freq-chip i{opacity:.45;border-radius:2px;width:8px;height:8px;display:inline-block}.freq-chip.active{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.freq-chip.active i{opacity:1}.freq-search{border:1px solid var(--border-strong);color:var(--text);border-radius:7px;flex:1 0 100%;padding:4px 8px;font-size:11.5px}.freq-cols,.freq-row{grid-template-columns:28px 52px 36px 42px 82px minmax(0,1fr);align-items:center;gap:5px;display:grid}.freq-cols>*,.freq-row>*{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.freq-cols{z-index:1;background:var(--panel);border-bottom:1px solid var(--border);margin:0 -4px;padding:0 4px 4px;position:sticky;top:0}.freq-col{cursor:pointer;font:inherit;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:left;background:0 0;border:0;padding:0;font-size:10px;font-weight:700}.freq-col:hover{color:var(--accent)}.freq-col.sorted{color:var(--text)}.freq-col-at{cursor:default}.freq-list{flex:1;margin:0 -4px;overflow-y:auto}.freq-row{text-align:left;border:0;border-bottom:1px solid var(--border);cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;padding:6px 4px}.freq-row:hover{background:var(--panel-2)}.freq-row.selected{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.freq-badge{color:#fff;text-align:center;border-radius:4px;font-size:10.5px;font-weight:700;line-height:16px;overflow:hidden}.freq-dev{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700}.freq-pct,.freq-sched{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.freq-state{text-transform:uppercase;letter-spacing:.02em;font-size:10px;font-weight:700}.freq-at{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.freq-row.freq-ok .freq-dev,.freq-row.freq-ok .freq-state{color:var(--freq-ok)}.freq-row.freq-watch .freq-dev,.freq-row.freq-watch .freq-state{color:var(--freq-watch)}.freq-row.freq-alarm .freq-dev,.freq-row.freq-alarm .freq-state{color:var(--freq-alarm)}.freq-row.freq-unknown{opacity:.72}.freq-row.freq-unknown .freq-dev{color:var(--muted)}#incidents-panel .dock-body{flex-direction:column;min-height:0;display:flex}.inc-controls{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px;display:flex}.inc-run{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);font:inherit;cursor:pointer;border-radius:7px;padding:4px 10px;font-size:11.5px;font-weight:700}.inc-run:disabled{opacity:.6;cursor:default}.inc-ours{color:var(--muted);align-items:center;gap:4px;font-size:11px;display:inline-flex}.inc-kind{border:1px solid var(--border);border-radius:7px;display:inline-flex;overflow:hidden}.inc-kind-btn{border:0;border-left:1px solid var(--border);background:var(--panel);color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;padding:4px 9px;font-size:11px;font-weight:600}.inc-kind-btn:first-child{border-left:0}.inc-kind-btn:hover:not(:disabled):not(.on){background:var(--panel-2)}.inc-kind-btn.on{background:var(--accent);color:var(--on-accent)}.inc-kind-btn:disabled{opacity:.6;cursor:default}.inc-head{margin-bottom:6px}.inc-head-what{font-size:12.5px;font-weight:700}.inc-head-note{color:var(--muted);font-size:10.5px;line-height:1.5}.inc-list{flex:1;margin:0 -4px;padding:0 4px;overflow-y:auto}.inc-pinned{background:var(--accent-soft);color:var(--text);border-radius:7px;margin:4px 0 8px;padding:6px 8px;font-size:11px;line-height:1.5}.inc-section+.inc-section{margin-top:12px}.inc-section-head{z-index:1;background:var(--panel);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);gap:8px;padding:4px 0;font-size:9.5px;font-weight:700;display:flex;position:sticky;top:0}.inc-section-n{margin-left:auto}.inc-section-note{color:var(--freq-watch);padding:6px 2px 2px;font-size:10.5px;line-height:1.5}.inc-empty{color:var(--muted);padding:8px 2px;font-size:11px;line-height:1.5}.inc-item{border-bottom:1px solid var(--border)}.inc-item.reopened{opacity:.72}.inc-item.pinned{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.inc-item.on-route{box-shadow:inset 3px 0 0 var(--freq-alarm)}.inc-item.on-route.pinned{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--freq-alarm), inset 6px 0 0 var(--accent)}.inc-alarm{color:var(--freq-alarm);white-space:nowrap;margin-right:6px;font-weight:700}.inc-alarm.muted{color:var(--muted);font-weight:600}.inc-route-on{color:var(--freq-alarm);font-weight:700}.inc-row{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:4px 8px;padding:7px 4px;display:grid}.inc-row:hover{background:var(--panel-2)}.inc-band{border-radius:3px;width:10px;height:10px;margin-top:3px}.inc-row-main{flex-direction:column;gap:1px;min-width:0;display:flex}.inc-title{font-size:12.5px;font-weight:700}.inc-place,.inc-meta{color:var(--muted);font-size:10.5px}.inc-title,.inc-place,.inc-meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inc-route-no{letter-spacing:-.01em;font-size:13.5px;font-weight:800}.inc-route-dir{color:var(--muted);margin-left:7px;font-size:10.5px;font-weight:600}.inc-item.route.selected{background:var(--accent-soft)}.inc-delay{color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;font-size:12px;font-weight:700}.inc-delay.none{color:var(--muted);font-weight:500}.inc-row-actions{gap:6px;padding:0 4px 7px 22px;display:flex}.inc-open-route{border:1px solid var(--border);background:var(--panel);color:var(--accent);font:inherit;cursor:pointer;border-radius:6px;padding:2px 8px;font-size:10.5px;font-weight:700}.inc-open-route:hover{border-color:var(--accent);background:var(--accent-soft)}.inc-open-route.disabled{color:var(--muted);cursor:default;border-style:dashed;font-weight:600}.inc-open-route.disabled:hover{background:var(--panel);border-color:var(--border)}.inc-sub{border-radius:7px;grid-template-columns:10px minmax(0,1fr);align-items:start;gap:2px 8px;padding:5px 6px;display:grid}.inc-sub+.inc-sub{margin-top:2px}.inc-sub.pinned{background:var(--accent-soft)}.inc-sub-main{flex-direction:column;gap:1px;min-width:0;display:flex}.inc-sub.on-route .inc-title{color:var(--freq-alarm)}.inc-count{color:var(--accent);white-space:nowrap;font-size:10.5px;font-weight:600}.inc-count.unsure{color:var(--freq-watch)}.inc-detail{padding:0 4px 10px 22px}.inc-caveats{color:var(--freq-watch);margin:0 0 8px;padding-left:16px;font-size:10.5px;line-height:1.5}.inc-routes{flex-direction:column;gap:2px;display:flex}.inc-route{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;flex-wrap:wrap;align-items:baseline;gap:3px 8px;padding:5px 6px;display:flex}.inc-route:hover{background:var(--panel-2)}.inc-route-unplaced{cursor:default}.inc-route-unplaced:hover{background:0 0}.inc-route-name{flex:auto;font-size:12px;font-weight:600}.inc-ours-tag{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:0 5px;font-size:9px;font-weight:700}.inc-agree{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700}.inc-agree-both{color:var(--text);border-color:var(--text)}.inc-agree-declared_only{border-style:dashed}.inc-dist{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10.5px}.inc-op{color:var(--muted);flex-basis:100%;font-size:10px}.inc-declared{margin-top:8px}.inc-declared-head{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:9.5px;font-weight:700}.inc-declared ul{margin:4px 0 0;padding-left:16px;font-size:11px;line-height:1.5}.inc-declared-why{color:var(--muted);margin-left:6px;font-size:10.5px}.inc-cands{color:var(--muted);margin:2px 0 0;padding-left:14px;font-size:10.5px}.toast{background:var(--toast-bg);color:var(--toast-fg);z-index:230;box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:8px;max-width:min(560px,100vw - 32px);padding:10px 16px;font-size:13px;transition:opacity .18s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}@media (prefers-reduced-motion:reduce){.toast{transition:none}}body.overlay-info-open .toast{bottom:calc(16px + var(--overlay-info-h,120px))}.maplibregl-popup{z-index:9;font-family:inherit;max-width:240px!important}.maplibregl-popup-content{border-radius:8px;padding:8px 26px 8px 10px;font-size:12px}.maplibregl-popup-close-button{width:26px;height:26px;color:var(--muted);border-radius:0 8px;justify-content:center;align-items:center;font-size:17px;line-height:1;display:flex}.maplibregl-popup-close-button:hover{background:var(--panel-2);color:var(--text)}.maplibregl-popup-close-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.veh-to{color:var(--muted)}.veh-occ-chip{color:var(--accent);font-weight:700}.veh-delay{font-weight:700}.veh-delay.ontime{color:var(--delay-ontime-fg)}.veh-delay.late{color:var(--delay-late-fg)}.veh-delay.late-bad{color:var(--delay-late-bad-fg)}.veh-delay.early{color:var(--delay-early-fg)}.vehicle-status{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.status-pill{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.status-pill.ontime{background:var(--delay-ontime-bg);color:var(--delay-ontime-fg)}.status-pill.late{background:var(--delay-late-bg);color:var(--delay-late-fg)}.status-pill.late-bad{background:var(--delay-late-bad-bg);color:var(--delay-late-bad-fg)}.status-pill.early{background:var(--delay-early-bg);color:var(--delay-early-fg)}.status-pill.neutral{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}#vehicle-panel.gone{opacity:.6}#vehicle-panel.gone #vehicle-updated{color:var(--danger-fg);font-weight:700}.dep-live-note{color:var(--live-fg);align-items:center;gap:6px;padding:6px 4px 8px;font-size:11px;font-weight:600;display:flex}.dep.live .dep-rel{color:var(--accent)}.dep-delay{white-space:nowrap;vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700}.dep-delay.ontime{background:var(--delay-ontime-bg);color:var(--delay-ontime-fg)}.dep-delay.late{background:var(--delay-late-bg);color:var(--delay-late-fg)}.dep-delay.late-bad{background:var(--delay-late-bad-bg);color:var(--delay-late-bad-fg)}.dep-delay.early{background:var(--delay-early-bg);color:var(--delay-early-fg)}.route-buses{margin-top:10px}.route-buses-head{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:6px;margin-bottom:4px;font-size:10px;font-weight:700;display:flex}.route-buses-n{background:var(--panel-2);color:var(--text);border-radius:999px;padding:0 6px;font-size:10px}.route-bus-list{max-height:190px;margin:0 -4px;overflow-y:auto}.rt-bus{border-bottom:1px solid var(--border);align-items:center;gap:4px;padding:0 4px;display:flex}.rt-bus-main{text-align:left;cursor:pointer;min-width:0;font:inherit;color:inherit;background:0 0;border:0;flex:1;grid-template-columns:8px auto 1fr minmax(0,auto);align-items:center;gap:7px;padding:5px 0;display:grid}.rt-bus:hover{background:var(--panel-2)}.rt-bus-dot{border-radius:50%;width:8px;height:8px}.rt-bus-id{font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.rt-bus-to{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.rt-bus-delay{font-size:11px;font-weight:700}.duty-link{background:var(--panel-2);border:1px solid var(--border);width:18px;height:18px;color:var(--accent);border-radius:5px;justify-content:center;align-items:center;margin-left:3px;font-size:10px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.duty-link:hover{background:var(--accent-soft);border-color:var(--accent)}.rt-bus-duty,.dep-duty,.vehicle-duty{align-items:center;display:inline-flex}.vehicle-duty{align-self:flex-start;margin-left:auto}.vehicle-headway{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.veh-hw-dot{border-radius:2px;flex:none;width:8px;height:8px}.vehicle-tech{margin-top:12px}.vehicle-tech summary{cursor:pointer;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.vehicle-tech .detail-list{margin-top:8px}.veh-age.stale{color:var(--stale-fg);font-weight:700}body{--attrib-band:44px;--tools-bottom:var(--attrib-band);--tools-h:186px;--popover-want:calc(var(--tools-bottom) + var(--tools-h) + 8px);--popover-min-h:220px;--popover-bottom:min(var(--popover-want), calc(100dvh - var(--topbar) - 16px - var(--popover-min-h)))}body:has(#tool-radio:not([hidden])){--tools-h:242px}.map-handbook-link{color:inherit;text-decoration:underline}.map-handbook-link:hover{color:var(--accent)}.map-handbook-link:focus-visible{color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.map-tools{z-index:7;right:16px;bottom:var(--tools-bottom);width:var(--rail-w);flex-direction:column;align-items:stretch;gap:8px;display:flex;position:absolute}.map-tool,.map-tool-group{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;overflow:hidden}.map-tool{cursor:pointer;width:100%;height:40px;color:var(--text);justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:flex}.map-tool:hover{background:var(--panel-2);color:var(--accent)}.map-tool-group{flex-direction:column;display:flex}.map-tool-group .map-tool{box-shadow:none;background:0 0;border:0;border-radius:0}.map-tool-group .map-tool+.map-tool{border-top:1px solid var(--border)}.map-tool-reset{font-size:17px}.map-tool-layers{cursor:pointer;background:var(--panel);border:1px solid var(--border);width:100%;box-shadow:var(--shadow);color:var(--text);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px 2px 3px;display:flex}.map-tool-layers:hover{border-color:var(--accent)}.map-tool-thumb{background:var(--panel-2) center/cover no-repeat;border-radius:5px;width:36px;height:26px;display:block}.map-tool-layers-label{letter-spacing:.02em;font-size:10px;font-weight:700}.map-popover{z-index:8;right:16px;bottom:var(--popover-bottom);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);--popover-max-h:calc(100dvh - var(--topbar) - 16px - var(--popover-bottom));max-width:min(420px,92vw);max-height:var(--popover-max-h);border-radius:12px;flex-direction:column;gap:12px;padding:12px 14px;display:flex;position:absolute;overflow-y:auto}.layers-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:7px;font-size:10.5px;font-weight:700}.layer-tiles{flex-wrap:wrap;gap:8px;display:flex}.layer-tile{cursor:pointer;font:inherit;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;width:66px;padding:0;display:flex}.layer-thumb{border:2px solid var(--border);background:var(--panel-2) center/cover no-repeat;border-radius:8px;width:64px;height:48px;display:block}.layer-tile:hover .layer-thumb{border-color:var(--muted)}.layer-name{font-size:11px;font-weight:600}.layer-tile.active{color:var(--accent)}.layer-tile.active .layer-thumb{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.layer-tile[data-layer=inforce] .layer-thumb{background-position:50% 17px,50% 27px;background-repeat:no-repeat;background-size:44px 3px,44px 3px}.layer-tile[role=switch] .layer-name:after{content:" · off";font-weight:400}.layer-tile[role=switch].active .layer-name:after{content:" · on"}.overlay-info{z-index:7;bottom:16px;left:var(--left-inset);right:var(--right-inset);width:max-content;max-width:min(1180px, max(210px, calc(100vw - var(--left-inset) - var(--right-inset))));background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;max-height:45vh;margin:0 auto;padding:4px 14px;font-size:12.5px;display:flex;position:absolute;overflow-y:auto}.overlay-info-block{flex-wrap:wrap;align-items:center;gap:2px 14px;min-width:0;padding:6px 0;display:flex}.overlay-info-block:not([hidden])~.overlay-info-block:not([hidden]){border-top:1px solid var(--border)}.overlay-info-head{flex:none;align-items:baseline;gap:8px;display:flex}.overlay-info-title{white-space:nowrap;font-weight:700}.overlay-info-gear{color:var(--muted);margin-left:auto;font-size:14px}.overlay-info-gear:hover{color:var(--accent)}.overlay-info-check{cursor:pointer;align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.overlay-info-check input{cursor:pointer;flex:none;margin:0}.overlay-info-check em{color:var(--muted);font-style:normal;font-weight:400}.inc-filters{flex-wrap:wrap;align-items:center;gap:2px 12px;min-width:0;display:flex}.inc-filter-head{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex:none;align-items:center;gap:8px;font-size:10px;display:flex}.inc-filter-head .linkish{text-transform:none;letter-spacing:0;font-size:10.5px}.inc-kind-rows{flex-direction:column;flex:100%;gap:2px;min-width:0;display:flex}.inc-filter-row{flex-wrap:nowrap;flex:100%;align-items:baseline;gap:2px 10px;min-width:0;display:flex}.inc-filter-lead{border-right:1px solid var(--line);flex:none;min-width:92px;padding-right:8px;font-weight:700}span.inc-filter-lead{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-self:center;font-size:10px}.inc-filter-row.is-off .inc-filter-rows{opacity:.45}.overlay-info-check.is-disabled,.overlay-info-check.is-disabled input{cursor:default}.inc-filter-time{border-left:1px solid var(--line);padding-left:12px}.inc-filter-rows{flex-wrap:wrap;flex:0 auto;align-items:center;gap:2px 8px;min-width:0;display:flex}.inc-filter-rows .overlay-info-check{min-width:0;font-weight:500}.inc-filter-rows .overlay-info-check>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inc-filter-rows .overlay-info-check.is-empty>span{opacity:.55}.cong-ramp{border-radius:3px;flex:none;width:108px;height:8px;display:flex;overflow:hidden}.cong-ramp span{flex:1 1 0}.cong-ramp-labels{color:var(--muted);flex:none;align-items:center;gap:6px;font-size:10px;display:flex}.cong-lowconf{color:var(--muted);flex-wrap:wrap;align-items:center;gap:2px 6px;min-width:0;font-size:10.5px;display:flex}.cong-lowconf-swatch{border-radius:2px;flex:none;width:16px;height:6px}.cong-carried-swatch{background-repeat:repeat-x;background-size:6px 6px;flex:none;width:16px;height:6px}.congestion-age{color:var(--muted);margin-left:auto;font-size:10.5px}.congestion-age.stale{color:var(--stale-fg);font-weight:600}.congestion-age.carried{color:var(--carried-fg)}.cong-pop{font-size:12px;line-height:1.45}.cong-pop-stats{color:var(--muted);margin-top:2px}.cong-pop-note{color:var(--stale-fg);margin-top:3px;font-size:11px}.inc-pop{font-size:12px;line-height:1.45}.inc-pop-stats{color:var(--muted);margin-top:2px}.inc-pop-desc{margin-top:5px}.inc-pop-note{color:var(--stale-fg);margin-top:4px;font-size:11px}.clr-pop-kind{color:var(--muted)}.clr-pop-band{margin-top:2px;font-weight:600}.inc-pop-rows{grid-template-columns:auto minmax(0,1fr);gap:2px 8px;margin:6px 0 0;font-size:11.5px;display:grid}.inc-pop-rows dt{color:var(--muted)}.inc-pop-rows dd{overflow-wrap:anywhere;min-width:0;margin:0}@media (width<=1100px){.overlay-info,body.dock-open .overlay-info{width:auto;max-width:none;max-height:35vh;display:block;left:16px;right:16px;overflow-y:auto}.overlay-info-block:not([hidden])~.overlay-info-block:not([hidden]){border-left:0;border-top:1px solid var(--border);margin-top:10px;padding-top:10px;padding-left:0}}@media (width<=720px){body,body.dock-open{--right-inset:16px}body{--left-inset:16px;--sheet-h:55%}.map-tools{align-items:flex-end;width:auto;right:16px}.map-tool,.map-tool-group,.map-tool-layers,.map-tool-radio{width:44px}.panel-rail{flex-direction:row;justify-content:flex-end;width:auto;inset:auto 16px 16px auto}body.dock-open .panel-rail{bottom:calc(var(--sheet-h) + 24px)}body.overlay-info-open .panel-rail{bottom:calc(16px + var(--overlay-info-h,0px) + 8px)}.rail-btn{width:56px}.panel-dock{width:auto;max-width:none;max-height:var(--sheet-h);inset:auto 16px 16px}#sidebar{bottom:calc(16px + var(--sheet-h));height:auto}body{--tools-bottom:76px}body.dock-open{--tools-bottom:calc(var(--sheet-h) + 84px)}.operator-menu{max-height:max(120px, calc(100vh - var(--topbar) - 32px - var(--sheet-h) - 150px))}}.app-tabs{height:var(--topbar);z-index:60;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:inset 0 2px 0 var(--brand), 0 1px 3px #141e2d14;align-items:center;gap:12px;padding:0 12px;display:flex;position:fixed;top:0;left:0;right:0}.app-brand{border-right:1px solid var(--border);flex:none;width:auto;height:20px;padding-right:12px}.app-tab-group{align-items:center;gap:4px;margin-right:auto;display:flex}.app-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 16px;font-size:13px;font-weight:700}.app-tab:hover:not(.active):not(:disabled){background:var(--panel-2);color:var(--text)}.app-tab.active{background:var(--accent);color:var(--on-accent)}.app-tab:disabled{opacity:.45;cursor:not-allowed}.ops-view{inset:var(--topbar) 0 0 0;z-index:50;background:var(--panel-2);color:var(--text);position:fixed;overflow-y:auto}.ops-shell{max-width:1180px;margin:0 auto;padding:24px 24px 48px}.ops-header{margin-bottom:18px}.ops-title h1{letter-spacing:-.02em;margin:0;font-size:24px}.ops-sub{color:var(--muted);margin:3px 0 0;font-size:13px}.ops-nav{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.ops-nav button{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:600}.ops-nav button.active{background:var(--text);color:var(--bg);border-color:var(--text)}.ops-section{animation:.18s ops-fade}@keyframes ops-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1}}.ops-loading,.ops-empty{text-align:center;color:var(--muted);padding:40px}.ops-empty p{margin:0 0 12px}.ops-retry{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:9px;padding:7px 14px;font-size:13px;font-weight:600}.ops-retry:hover{background:var(--accent-soft);border-color:var(--accent)}.ops-count{margin:0 0 10px}td.ops-empty{padding:24px}.ops-note{background:var(--accent-soft);color:var(--note-fg);border-radius:10px;margin:0 0 16px;padding:12px 14px;font-size:13px;line-height:1.5}.ops-mini{color:var(--muted);margin:6px 0 0;font-size:11px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:14px;display:grid}.kpi{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.kpi.accent{background:linear-gradient(180deg, #fff9ec, var(--panel));border-color:#f0b73f}.kpi-value{letter-spacing:-.02em;font-size:26px;font-weight:800}.kpi-label{color:var(--text);margin-top:2px;font-size:12px;font-weight:700}.kpi-hint{color:var(--muted);margin-top:3px;font-size:11px}.ops-cols{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:14px;display:grid}.ops-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.ops-card.wide{grid-column:1/-1}.ops-card h2{margin:0 0 10px;font-size:13px;font-weight:700}.bar-row{align-items:center;gap:8px;margin:5px 0;font-size:12px;display:flex}.bar-key{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 0 96px;overflow:hidden}.bar-track{background:var(--panel-2);border-radius:4px;flex:1;height:8px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:4px;height:100%;display:block}.bar-count{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);flex:0 0 40px}.hist{align-items:flex-end;gap:3px;height:90px;display:flex}.hist-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.hist-bar{background:linear-gradient(#f0803c,#e0562f);border-radius:3px 3px 0 0;width:100%;min-height:2px}.hist-x{color:var(--muted);margin-top:3px;font-size:10px}.ops-table-scroll{overflow-x:auto}.ops-table{border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:100%;font-size:13px;overflow:hidden}.ops-table thead th{text-align:left;background:var(--panel-2);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:10px 12px;font-size:11px;font-weight:700}.ops-table th.num,.ops-table td.num{text-align:right;font-variant-numeric:tabular-nums}.ops-table td{border-top:1px solid var(--border);padding:9px 12px}.ops-table td.strong{font-weight:700}.ops-table td .sub{color:var(--muted);font-size:10px;display:block}.ops-table.clickable tbody tr{cursor:pointer}.ops-table.clickable tbody tr:hover{background:var(--accent-soft)}.ops-table.clickable tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ops-search{border:1px solid var(--border-strong);background:var(--panel);border-radius:9px;width:100%;max-width:340px;margin-bottom:12px;padding:9px 12px;font-size:14px}.tag{background:var(--panel-2);border:1px solid var(--border);border-radius:999px;margin:1px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.rt-badge{color:#fff;border-radius:6px;justify-content:center;align-items:center;min-width:34px;padding:2px 6px;font-size:12px;font-weight:800;display:inline-flex}.rt-badge.sm{min-width:28px;padding:1px 5px;font-size:11px}.frag{text-align:center;border-radius:6px;min-width:30px;padding:2px 7px;font-size:12px;font-weight:800;display:inline-block}.frag-lo{color:#1a7a3f;background:#e6f4ea}.frag-mid{color:#8a5f00;background:#fff2d6}.frag-hi{color:#c02a1b;background:#fde0dd}@media (width<=1000px){.ops-table-scroll>.ops-table{min-width:max-content}.ops-shell{padding:20px 14px 40px}.ops-title h1{font-size:21px}}.ops-filters{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.ops-filter{color:var(--muted);flex-direction:column;gap:3px;font-size:11px;font-weight:600;display:flex}.ops-filter select{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:8px;padding:7px 10px;font-size:13px}.ops-drawer{top:var(--topbar);background:var(--panel);border-left:1px solid var(--border);z-index:55;visibility:hidden;width:min(720px,94vw);padding:0 22px 40px;transition:transform .2s;position:fixed;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-8px 0 30px #141e2d2e}.ops-drawer.open{visibility:visible;transform:none}.ops-scrim{inset:var(--topbar) 0 0 0;z-index:54;opacity:0;visibility:hidden;background:#10161e47;transition:opacity .2s;position:fixed}.ops-scrim.open{opacity:1;visibility:visible}@media (prefers-reduced-motion:reduce){.ops-drawer,.ops-scrim{transition:none}}.drawer-head{z-index:1;background:var(--panel);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:12px;margin-bottom:12px;padding:18px 0 12px;display:grid;position:sticky;top:0}.drawer-close{min-width:32px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;grid-area:1/2/span 2;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.drawer-close:hover{background:var(--panel-2);color:var(--text)}.drawer-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drawer-head .drawer-title{grid-area:1/1}.drawer-head .drawer-sub{grid-area:2/1}.drawer-title{align-items:center;gap:8px;font-size:19px;font-weight:800;display:flex}.drawer-sub{color:var(--muted);margin-top:3px;font-size:12px}.drawer-stats{flex-wrap:wrap;gap:10px;margin:8px 0 16px;display:flex}.drawer-stats div{background:var(--panel-2);text-align:center;border:1px solid #0000;border-radius:10px;flex:1;min-width:90px;padding:10px}.drawer-stats div.warn{background:var(--warn-tile-bg);border-color:var(--warn-tile-line)}.drawer-stats div.warn span:before{content:"⚠ "}.drawer-stats b{font-size:20px;font-weight:800;display:block}.drawer-stats span{color:var(--muted);font-size:10px}.timeline-wrap{margin:6px 0 18px}.timeline{background:var(--panel-2);border-radius:8px;height:46px;position:relative;overflow:hidden}.tl-bar{height:30px;color:var(--on-band);border-radius:4px;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex;position:absolute;top:8px;overflow:hidden}.tl-service{background:var(--accent)}.tl-deadhead{height:14px;color:var(--deadhead-fg);background:repeating-linear-gradient(45deg, var(--deadhead-a), var(--deadhead-a) 4px, var(--deadhead-b) 4px, var(--deadhead-b) 8px);top:16px}.tl-break{color:#4a3400;background:#f0b73f;height:18px;top:14px}.tl-changeover{background:var(--handoff-mark);width:3px!important}.tl-flag{border-top:8px solid #d3271a;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;top:0;transform:translate(-5px)}.timeline-axis{color:var(--muted);justify-content:space-between;align-items:center;margin-top:5px;font-size:10px;display:flex}.tl-legend{align-items:center;gap:6px;display:inline-flex}.tl-legend .sw{border-radius:2px;width:10px;height:10px;margin-left:6px;display:inline-block}.sw-service{background:var(--accent)}.sw-deadhead{background:repeating-linear-gradient(45deg, var(--deadhead-a), var(--deadhead-a) 2px, var(--deadhead-b) 2px, var(--deadhead-b) 4px)}.sw-break{background:#f0b73f}.sw-flag{border-top:8px solid #d3271a;border-left:5px solid #0000;border-right:5px solid #0000;border-radius:0;width:0!important;height:0!important}.prop-box{background:#fff6f5;border:1px solid #f6cfca;border-radius:12px;margin-bottom:16px;padding:12px 14px}.prop-box h4{color:#b3271a;margin:0 0 8px;font-size:13px}.prop-row{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 0;font-size:13px;display:flex}.prop-loc{color:var(--muted)}.prop-gap{color:#c02a1b;font-variant-numeric:tabular-nums;margin-left:auto;font-weight:700}.leg-list h4{margin:4px 0 8px;font-size:13px}.leg{border-radius:8px;align-items:baseline;gap:10px;padding:6px 8px;font-size:13px;display:flex}.leg+.leg{border-top:1px solid var(--border)}.leg-service{background:#fbfcfe}.leg-ico{text-align:center;flex:0 0 18px}.leg-time{font-variant-numeric:tabular-nums;color:var(--muted);flex:0 0 92px;font-size:12px}.leg-body{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.leg-desc{flex:1;min-width:120px}.leg-meta{color:var(--muted);font-size:11px}.leg-tag{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700;display:inline-block}.tt-view{inset:var(--topbar) 0 0 0;z-index:50;background:var(--panel-2);color:var(--text);position:fixed}.tt-shell{height:calc(100vh - var(--topbar));box-sizing:border-box;display:flex}.tt-rail{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;flex:0 0 300px;min-height:0;display:flex}.tt-rail-head{padding:14px 16px 4px}.tt-rail-head h2{letter-spacing:-.01em;margin:0;font-size:18px}.tt-sub{color:var(--muted);margin:3px 0 8px;font-size:12px}.tt-filters{border-bottom:1px solid var(--border);padding:4px 14px 10px}.tt-filters .operator-filter{margin-top:8px}.tt-list{flex:1;margin:0;overflow-y:auto}.tt-main{flex-direction:column;flex:1;min-width:0;display:flex}.tt-main-empty{flex:1;place-items:center;padding:40px;display:grid}.tt-main-empty h1{letter-spacing:-.02em;margin:0 0 8px;font-size:24px}.tt-main-empty p{max-width:520px;color:var(--muted);line-height:1.6}.tt-pane{flex-direction:column;flex:1;min-height:0;display:flex}.tt-pane-head{border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:12px 18px;display:flex}.tt-route-id{align-items:center;gap:12px;min-width:0;display:flex}.tt-route-name{font-size:17px;font-weight:700}.tt-route-meta{color:var(--muted);margin-top:2px;font-size:12px}.tt-head-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tt-toggle{background:var(--panel-2);border:1px solid var(--border);border-radius:9px;padding:3px;display:inline-flex}.tt-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-size:12px;font-weight:700}.tt-toggle button.active{background:var(--bg);color:var(--text);box-shadow:0 1px 3px #0000001f}.tt-toggle button[data-mode=live].active{color:var(--live-fg)}.tt-dir.seg-group{margin:0}.tt-content{flex:1;min-height:0;position:relative}.tt-view-panel{position:absolute;inset:0;overflow:auto}@media (width<=1000px){.tt-rail{flex:0 0 220px}.tt-pane-head{gap:10px;padding:10px 12px}.tt-head-controls{gap:6px}.tt-toggle button{padding:5px 9px;font-size:11.5px}.tt-head-controls .seg-btn{padding:5px 7px;font-size:11.5px}}@media (width<=760px){.tt-shell{flex-direction:column}.tt-rail{border-right:0;border-bottom:1px solid var(--border);flex:none;max-height:40vh}.tt-main{min-height:0}}#tt-view-linear:not([hidden]){flex-direction:column;display:flex;overflow:hidden}.tt-map{flex:55%;min-height:240px;position:relative}.tt-map-btn{z-index:2;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;box-shadow:var(--shadow);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;position:absolute;top:10px;right:10px}.tt-map-btn:hover{background:var(--panel-2)}.tt-strip{background:var(--panel);border-top:1px solid var(--border);flex:none;max-height:46%;padding:8px 16px 14px;overflow-y:auto}.tt-strip-block{padding:4px 0 10px}.tt-strip-title{align-items:center;gap:8px;margin-bottom:2px;font-size:12px;font-weight:700;display:flex}.tt-dir-dot{border-radius:50%;flex:none;width:10px;height:10px}.tt-strip-head{color:var(--muted);font-weight:500}.tt-strip-len{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.tt-strip-svg{width:100%;display:block;overflow:visible}.tt-strip-stoplbl{fill:var(--muted);text-anchor:start;font-size:10px}.tt-bus{transition:transform .18s linear}.tt-footbar{border-top:1px solid var(--border);background:var(--panel);flex:none;padding:10px 18px;font-size:13px}.tt-footbar.live{color:var(--text);align-items:center;gap:8px;display:flex}.tt-foot-hint{color:var(--muted);font-size:12px}.tt-foot-warn{color:#8a5a12;background:#fdf3e3;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.tt-footbar.live.stale .live-dot{background:var(--muted);box-shadow:none;animation:none}.tt-sched-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.tt-sched-row label{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.tt-sched-row input[type=date],.tt-sched-row select{border:1px solid var(--border-strong);background:var(--panel-2);color:var(--text);border-radius:8px;padding:5px 8px;font-size:13px}.tt-play{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:8px;padding:6px 16px;font-size:13px;font-weight:700}.tt-clock{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-left:auto;font-size:18px;font-weight:800}.tt-slider-wrap{margin:12px 0 6px;position:relative}.tt-band{background:var(--accent-soft);pointer-events:none;border-radius:4px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.tt-scrub,.tt-endpoints input[type=range]{width:100%;accent-color:var(--accent);position:relative}.tt-endpoints{gap:20px;display:flex}.tt-endpoints label{color:var(--muted);flex:1;align-items:center;gap:8px;font-size:11px;display:flex}.tt-endpoints input[type=range]{flex:1}.tt-table-note{background:var(--accent-soft);color:var(--note-fg);border-radius:10px;margin:12px 16px;padding:10px 14px;font-size:12px;line-height:1.5}.tt-table-note.tt-note-warn{color:#7a4f10;background:#fdf3e3}.tt-table-note .tt-mini-btn{vertical-align:1px;margin-left:8px}.tt-table-block{padding:0 16px 18px}.tt-table-h{margin:6px 0;font-size:13px}.tt-table-scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.tt-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tt-matrix{border-collapse:collapse;background:var(--panel);font-size:12px}.tt-matrix th,.tt-matrix td{border:1px solid var(--border);white-space:nowrap;padding:5px 8px}.tt-matrix thead th{background:var(--panel-2);z-index:1;font-weight:700;position:sticky;top:0}.tt-stopcol{background:var(--panel-2);text-align:left;text-overflow:ellipsis;z-index:2;max-width:220px;font-weight:600;position:sticky;left:0;overflow:hidden}.tt-matrix thead .tt-stopcol{z-index:3}.tt-runcol{text-align:center;font-variant-numeric:tabular-nums}.tt-run-time{font-weight:700}.tt-cell{text-align:center;font-variant-numeric:tabular-nums;color:var(--text)}.tt-cell-skip{background:repeating-linear-gradient(45deg, transparent, transparent 4px, var(--panel-2) 4px, var(--panel-2) 8px)}.tt-empty-note,.tt-loading{text-align:center;color:var(--muted);padding:30px}.tt-error{color:#8c2318;text-align:left;background:#fdf2f0;border:1px solid #f1c8c1;border-left:4px solid #c02a1b;border-radius:10px;max-width:520px;margin:30px auto;padding:14px 16px;font-size:13px}.tt-error-msg{margin:0 0 10px;font-weight:600}.tt-retry{border:1px solid var(--bad-fg);background:var(--panel);color:var(--error-fg);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700}.tt-retry:hover{background:var(--error-hover-bg)}.tt-string-svg,.tt-hw-svg{background:var(--panel);border:1px solid var(--border);border-radius:10px;width:100%;display:block}.tt-string-svg{width:calc(100% - 32px);margin:0 16px}.tt-axis-lbl{fill:var(--muted);font-size:10px}.tt-hw-block{padding:4px 16px 14px}.tt-hw-legend{color:var(--muted);gap:14px;margin-top:6px;font-size:11px;display:flex}.tt-hw-legend i{vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:4px;display:inline-block}.tt-empty{text-align:center;color:var(--muted);padding:20px}.tt-live-pill{background:var(--delay-ontime-bg);color:var(--live-fg);border-radius:999px;padding:0 6px;font-size:11px;font-weight:700;display:inline-block}.tt-runcol-live{background:var(--runcol-live)!important}.tt-delay-chip{margin-top:2px;font-size:10px;font-weight:700;display:block}.tt-delay-chip.ontime{color:var(--delay-ontime-fg)}.tt-delay-chip.late{color:var(--delay-late-fg)}.tt-delay-chip.late-bad{color:var(--delay-late-bad-fg)}.tt-delay-chip.early{color:var(--delay-early-fg)}.buses-row{flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 14px;display:flex}.buses-label{color:var(--muted);font-size:12px;font-weight:700}.bus-chip{cursor:pointer;border:1px solid var(--border);background:var(--panel-2);color:var(--text);border-radius:8px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.bus-chip:hover{border-color:var(--accent);background:var(--accent-soft)}.bus-chip .sub{color:var(--muted);font-size:10px}.run-tag{border:1px solid var(--border);color:#566;background:#eef1f5;border-radius:5px;margin-right:6px;padding:0 6px;font-size:10px;font-weight:700;display:inline-block}.band-legend{flex-wrap:wrap;gap:6px;margin:4px 0 16px;display:flex}.band-chip{background:var(--panel);color:var(--text);cursor:pointer;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 9px 3px 6px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.band-chip:hover{background:var(--accent-soft)}.band-chip i{border-radius:50%;width:10px;height:10px;display:inline-block}.band-chip .sub{color:var(--muted);font-size:10px;font-weight:500}.shift-link{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:1px 7px;font-size:13px;font-weight:700}.shift-link:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.info-box{background:var(--panel-2);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:12px 14px}.info-box h4{margin:0 0 8px;font-size:13px}.prop-kind{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:800;display:inline-block}.prop-kind.tight{color:#c02a1b;background:#fde0dd}.prop-kind.change{color:#2f52b0;background:#e6ecfb}.prop-gap.ok{color:var(--muted)}.gap-tight{color:var(--bad-fg);font-weight:800}.tl-flag.soft{border-top-color:var(--handoff-mark);opacity:.8}.tt-strip-toolbar{align-items:center;gap:10px;padding:2px 0 6px;display:flex}.tt-strip-hint,.tt-tl-hint{color:var(--muted);font-size:11px}.tt-mini-btn{border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600}.tt-mini-btn:hover:not(:disabled){background:var(--bg)}.tt-mini-btn:disabled{opacity:.45;cursor:default}.tt-strip-toolbar .tt-mini-btn{margin-left:auto}.tt-strip-svg{touch-action:none;cursor:grab}.tt-strip-svg.dragging{cursor:grabbing}.tt-timeline{touch-action:none;-webkit-user-select:none;user-select:none;height:26px;margin:12px 0 4px;position:relative}.tt-tl-track{background:var(--panel-2);border:1px solid var(--border);border-radius:4px;height:6px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.tt-tl-band{background:var(--accent-soft);border:1px solid var(--accent);pointer-events:none;border-radius:4px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.tt-tl-handle{background:var(--panel);border:2px solid var(--accent);cursor:ew-resize;z-index:3;border-radius:5px;width:14px;height:20px;position:absolute;top:50%;transform:translate(-50%,-50%)}.tt-tl-handle:hover{background:var(--accent-soft)}.tt-tl-playhead{pointer-events:none;z-index:2;background:#111;border-radius:2px;width:3px;height:26px;position:absolute;top:50%;transform:translate(-50%,-50%)}.tt-tl-scale{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.tt-tl-scale b{color:var(--text);font-variant-numeric:tabular-nums}.tt-matrix-t thead th{background:var(--panel-2);z-index:1;position:sticky;top:0}.tt-runhdr-corner{background:var(--panel-2);text-align:left;font-weight:700;position:sticky;top:0;left:0;z-index:4!important}.tt-stophdr{max-width:120px}.tt-stophdr-txt{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:118px;display:inline-block;overflow:hidden}.tt-runrow{z-index:2;background:var(--panel-2);text-align:left;font-variant-numeric:tabular-nums;font-weight:700;position:sticky;left:0}.tt-hm-none{color:var(--muted);background:#eef1f4}.tt-hm-green{color:#12653a;background:#d6f0dd}.tt-hm-blue{color:#234a86;background:#dbe8ff}.tt-hm-red{color:#a12626;background:#fbdcdc}.tt-hm-vlate{background-image:repeating-linear-gradient(45deg,#0000 0 3px,#a126264d 3px 5px)}.tt-hm-vearly{text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tt-swatch{border-radius:4px;padding:0 5px}.tt-legend{gap:10px;margin-left:6px;display:inline-flex}.tt-legend span{align-items:center;gap:4px;display:inline-flex}.tt-legend i{border-radius:3px;width:12px;height:12px;display:inline-block}.tt-string-bar{align-items:center;gap:10px;padding:12px 16px 8px;display:flex}.tt-table-note-inline{color:var(--muted);font-size:12px;line-height:1.4}.tt-string-bar .tt-mini-btn{flex:none;margin-left:auto}.tt-string-svg{touch-action:none;cursor:grab;width:calc(100% - 32px);margin:0 16px}.tt-string-svg.dragging{cursor:grabbing}.tt-run-line:hover{stroke-width:2.6px}.tt-run-detail{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:12px;margin:10px 16px 20px;overflow:hidden}.tt-rd-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 14px;display:flex}.tt-rd-title{font-size:15px;font-weight:700}.tt-rd-sub{color:var(--muted);margin-top:2px;font-size:12px}.tt-rd-close{color:var(--muted);margin-left:auto;font-size:20px}.tt-rd-scroll{max-height:260px;overflow-y:auto}.tt-rd-table{border-collapse:collapse;width:100%;font-size:12px}.tt-rd-table th,.tt-rd-table td{border-top:1px solid var(--border);text-align:left;padding:5px 12px}.tt-rd-table thead th{background:var(--panel-2);color:var(--muted);font-size:11px;position:sticky;top:0}.tt-rd-table .num{text-align:right;font-variant-numeric:tabular-nums}.tt-rd-table .tt-seg{color:var(--muted)}.tt-hw-tiles{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;margin:8px 0 12px;display:grid}.tt-hw-tile{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:9px 11px}.tt-hw-tile.warn{background:linear-gradient(180deg, #fff9ec, var(--panel));border-color:#f0b73f}.tt-hw-v{letter-spacing:-.01em;font-size:17px;font-weight:800}.tt-hw-l{color:var(--muted);margin-top:2px;font-size:11px}.tt-hw-cap{color:var(--muted);margin:8px 0 4px;font-size:11px}.tt-freq{margin-top:8px}.tt-freq-svg{background:var(--panel);border:1px solid var(--border);border-radius:10px;width:100%;display:block}#tt-view-table:not([hidden]){flex-direction:column;display:flex;overflow:hidden}#tt-view-table .tt-table-note{flex:none}.tt-table-block{flex-direction:column;flex:auto;min-height:0;display:flex}.tt-table-h{flex:none}.tt-table-scroll{border:1px solid var(--border);scrollbar-color:var(--scroll-thumb) var(--panel-2);border-radius:8px;flex:auto;min-height:0;overflow:scroll}.tt-table-scroll::-webkit-scrollbar{width:14px;height:14px}.tt-table-scroll::-webkit-scrollbar-track{background:var(--panel-2)}.tt-table-scroll::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:3px solid var(--panel-2);border-radius:7px}.tt-table-scroll::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.tt-table-scroll::-webkit-scrollbar-corner{background:var(--panel-2)}.tt-matrix-t{border-collapse:separate;border-spacing:0}.tt-matrix-t th,.tt-matrix-t td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap;text-align:center;padding:0 3px;font-size:10px;line-height:15px}.tt-matrix-t .tt-runrow,.tt-matrix-t .tt-runhdr-corner{padding:0 6px}.tt-matrix-t .tt-run-time{font-weight:700}.tt-matrix-t thead th.tt-stophdr{border-right:1px solid var(--border);border-bottom:1px solid var(--border);vertical-align:bottom;z-index:1;background:var(--panel-2);width:20px;min-width:20px;max-width:20px;height:132px;padding:2px 0 4px;position:sticky;top:0}.tt-matrix-t thead th.tt-stophdr .tt-stophdr-txt{writing-mode:vertical-rl;white-space:nowrap;text-overflow:ellipsis;max-width:none;max-height:124px;color:var(--text);font-size:10px;line-height:20px;display:inline-block;overflow:hidden;transform:rotate(180deg)}.tt-matrix-t thead th.tt-runhdr-corner{z-index:4;background:var(--panel-2);text-align:left;vertical-align:bottom;border-right:1px solid var(--border);position:sticky;top:0;left:0}.tt-matrix-t .tt-runrow{z-index:2;background:var(--panel-2);text-align:left;border-right:1px solid var(--border);position:sticky;left:0}.tt-matrix-t td.tt-hm-none{color:#5a626e;background:#eef1f4}.alloc-bar{z-index:5;background:var(--panel);border-bottom:1px solid var(--border);padding:10px 16px 9px;position:sticky;top:0}.alloc-scope-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.alloc-scope-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.seg-group.alloc-scope{flex:none;margin:0}.alloc-scope .seg-btn{flex:none;padding:5px 11px}.alloc-sub{flex-direction:column;align-items:flex-start;gap:8px;margin-top:9px;display:flex}.alloc-sub[hidden]{display:none}.alloc-sub-note{color:var(--muted);font-size:12px}.alloc-subline{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.alloc-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.alloc-rowbreak{flex-basis:100%;height:0}.alloc-rowlabel{letter-spacing:.04em;text-transform:uppercase;min-width:62px;color:var(--muted);font-size:10px;font-weight:800}.alloc-chip{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:11.5px;font-weight:600;display:inline-flex}.alloc-chip:hover:not(:disabled):not(.active){border-color:var(--accent);color:var(--accent)}.alloc-chip.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.alloc-chip.active:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.alloc-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.alloc-chip:disabled{background:var(--panel-2);color:var(--muted);cursor:default}.alloc-chip-n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:700}.alloc-chip.active .alloc-chip-n{color:var(--on-accent)}.alloc-chip-flag{color:#8a5f00;background:#fff2d6;border-radius:999px;padding:0 5px;font-size:9.5px;font-weight:700}.alloc-tol{color:var(--muted);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.alloc-tol input{border:1px solid var(--border);width:52px;font:inherit;font-variant-numeric:tabular-nums;text-align:right;color:var(--text);border-radius:6px;padding:3px 6px}.alloc-tools{align-items:center;gap:8px;margin-left:auto;display:flex}.alloc-vs{color:var(--muted);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.alloc-vs select{max-width:210px;padding:3px 6px;font-size:11.5px}.alloc-runpick{align-items:center;gap:7px;font-size:12px;display:inline-flex}.alloc-step{font-variant-numeric:tabular-nums}.alloc-runpick-label{color:var(--muted);font-weight:600}.alloc-run-select{border:1px solid var(--border);font:inherit;background:var(--panel);color:var(--text);border-radius:7px;max-width:340px;padding:4px 8px;font-size:12px}.tt-alloc-block{padding:4px 16px 20px}.tt-alloc-scroll{border:1px solid var(--border);max-height:calc(100vh - var(--topbar) - 260px);border-radius:10px;margin-top:8px;overflow:auto}.tt-alloc-table{border-collapse:collapse;background:var(--panel);width:100%;min-width:720px;font-size:12px}.tt-alloc-table th,.tt-alloc-table td{border-bottom:1px solid var(--border);white-space:nowrap;text-align:left;padding:5px 8px}.tt-alloc-table thead th{z-index:1;background:var(--panel-2);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10px;font-weight:700;position:sticky;top:0}.tt-alloc-table th.num,.tt-alloc-table td.num{text-align:right;font-variant-numeric:tabular-nums}.tt-alloc-table .sub{color:var(--muted);margin-left:4px;font-size:10px}.tt-alloc-table tbody tr:hover{background:var(--panel-2)}.tt-alloc-chart{margin-top:10px}.tt-alloc-chart-svg{width:100%;display:block}.tt-alloc-chart-key{color:var(--muted);align-items:center;gap:6px;margin:2px 0 0;font-size:11px;display:flex}.chart-key{border-radius:2px;width:16px;height:3px;display:inline-block}.chart-key-base{background:#98a2b0}.chart-key-scope+*{margin-right:8px}.tt-ladder{min-width:420px}.tt-ladder th,.tt-ladder td{border-bottom:0;padding:3px 8px}.tt-ladder thead th{padding:5px 8px}.tt-ladder thead .lad-head{padding-left:30px}.lad-h{font-weight:400;position:relative;padding-left:30px!important}.lad-h:before{content:"";background:#c3ccd6;width:2px;position:absolute;top:0;bottom:0;left:13px}.lad-stop .lad-h:after{content:"";box-sizing:border-box;background:var(--panel);border:2px solid #6f7b89;border-radius:50%;width:10px;height:10px;margin-top:-5px;position:absolute;top:50%;left:9px}.lad-first .lad-h:before{top:50%}.lad-last .lad-h:before{bottom:50%}.lad-stop .lad-name{font-weight:600}.lad-seg .alloc-flag{vertical-align:1px;margin-right:5px}.lad-stop:hover{background:0 0}.lad-seg>*{background:var(--panel-2)}.lad-seg:hover>*{background:#eef1f4}.lad-alloc{font-weight:600}.tt-ladder .sub{display:inline-block}.lad-zero .lad-alloc,.lad-unmeasured .lad-alloc{color:var(--muted);font-weight:400}.lad-zeroblock{background:var(--zeroblock-bg);color:var(--zeroblock-fg);text-align:center;vertical-align:middle;border-left:3px solid var(--zeroblock-rule);font-size:11.5px}.lad-zeroblock .sub{color:var(--zeroblock-sub-fg)}.alloc-flag-notime{color:#7a5a00;background:#fdf0d5;margin-left:8px}.alloc-flag-notime-hi{color:#99271b;background:#fbe0dc}.lad-delta{white-space:nowrap}.lad-dnum{text-align:right;min-width:46px;display:inline-block}.lad-dbar{vertical-align:middle;width:60px;height:9px;margin-left:8px;display:inline-block;position:relative}.lad-dbar:before{content:"";background:var(--border);width:1px;position:absolute;top:-1px;bottom:-1px;left:50%}.lad-dbar i{border-radius:2px;position:absolute;top:0;bottom:0}.lad-dhead{min-width:120px}.alloc-seg{text-overflow:ellipsis;max-width:340px;overflow:hidden}.alloc-seg b{font-weight:600}.alloc-arrow{color:var(--muted);margin:0 3px}.alloc-band-h{text-align:center!important}.alloc-band{text-align:center;font-variant-numeric:tabular-nums;min-width:34px;color:var(--text)}.alloc-band-na{color:var(--muted);background:var(--panel-2)}.alloc-flag{border-radius:999px;padding:0 6px;font-size:10px;font-weight:700;display:inline-block}.alloc-flag-vary{color:#234a86;background:#dbe8ff}.alloc-flag-flat{color:#8a5f00;background:#fff2d6}.alloc-slow{color:var(--bad-fg);font-weight:800}.alloc-mid{color:var(--mid-fg)}.alloc-fast{color:var(--good-fg)}.ops-cols-2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.heat{flex-direction:column;gap:3px;margin-top:10px;display:flex;overflow-x:auto}.heat-row{grid-template-columns:128px repeat(24,minmax(20px,1fr));align-items:stretch;gap:3px;display:grid}.heat-label{color:var(--muted);align-items:center;font-size:11px;font-weight:600;display:flex}.heat-hr{color:var(--muted);text-align:center;font-size:10px}.heat-cell{font-variant-numeric:tabular-nums;border-radius:4px;justify-content:center;align-items:center;min-height:26px;font-size:10px;font-weight:700;display:flex}.heat-legend{color:var(--muted);align-items:center;gap:6px;margin-top:10px;font-size:11px;display:flex}.heat-ramp{background:linear-gradient(90deg,#fce6e3,#ec533c);border-radius:3px;width:84px;height:10px;display:inline-block}.gap-hist{align-items:flex-end;gap:2px;height:120px;margin:12px 0 2px;display:flex}.gap-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.gap-bar{background:var(--accent);border-radius:2px 2px 0 0;width:100%;min-height:1px}.gap-bar.tight{background:#e0562f}.gap-x{color:var(--muted);margin-top:2px;font-size:10px}.gap-swatch{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin:0 1px;display:inline-block}.gap-swatch.tight{background:#e0562f}.gap-overlap{color:var(--bad-fg)}.duty-flag{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.duty-flag.no-break{color:#c02a1b;background:#fde0dd;border-color:#f6cfca}.duty-flag.compound{background:var(--bad-fg);color:var(--on-band);border-color:var(--bad-fg)}.casc-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:12px 0 14px;display:flex}.casc-form label{color:var(--muted);flex-direction:column;gap:3px;font-size:11px;font-weight:600;display:flex}.casc-form select,.casc-form input{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:8px;padding:7px 10px;font-size:13px}.casc-form select{max-width:340px}.casc-form input[type=number]{width:80px}.casc-go{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:700}.casc-go:hover{filter:brightness(1.06)}.casc-summary{background:var(--panel-2);border-radius:8px;margin-bottom:10px;padding:10px 12px;font-size:13px;line-height:1.5}.casc-reach{color:var(--bad-fg)}.casc-steps{flex-direction:column;display:flex}.casc-step{border-top:1px solid var(--border);align-items:center;gap:10px;padding:7px 4px;display:flex}.casc-step:first-child{border-top:0}.casc-marker{background:var(--border);border-radius:50%;flex:0 0 10px;width:10px;height:10px}.casc-step.source .casc-marker{background:#e0562f;box-shadow:0 0 0 3px #fbe3da}.casc-step.handoff .casc-marker{background:var(--handoff-mark);box-shadow:0 0 0 3px #ece7ff}.casc-when{color:var(--muted);font-variant-numeric:tabular-nums;flex:0 0 54px;font-size:12px}.casc-body{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.casc-loc{font-size:13px}.casc-absorbed{color:var(--muted);font-size:11px}.casc-carry{font-variant-numeric:tabular-nums;flex:none;font-size:13px;font-weight:800}.casc-carry.ok{color:var(--good-fg)}.casc-carry.warn{color:var(--mid-fg)}.casc-carry.bad{color:var(--bad-fg)}.account{border-left:1px solid var(--border);align-items:center;gap:6px;padding-left:12px;display:flex}.account-who{color:var(--text);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:220px;padding:0 4px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.account-role{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700}.account-btn{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.account-btn:hover{color:var(--text);border-color:var(--muted)}.app-tab.locked{color:var(--muted)}.app-tab.locked:after{content:" 🔒";font-size:10px}.app-banners{top:calc(var(--topbar) + 8px);z-index:59;left:var(--left-inset);right:var(--right-inset);width:max-content;max-width:min(760px, max(240px, calc(100vw - var(--left-inset) - var(--right-inset))));pointer-events:none;flex-direction:column;align-items:center;gap:6px;margin:0 auto;display:flex;position:fixed}.app-banners>*{pointer-events:auto}body.ops-mode .app-banners,body.timetable-mode .app-banners,body.diversions-mode .app-banners{left:16px;right:16px}.feed-expiry{color:#6b4a00;max-width:100%;box-shadow:var(--shadow);background:#fff6e0;border:1px solid #f0c67a;border-radius:10px;align-items:flex-start;gap:10px;padding:8px 14px;font-size:12px;line-height:1.45;display:flex}.feed-expiry.expired{color:#8a2718;background:#fde8e4;border-color:#eda898}.feed-expiry.resume{color:#12395f;background:#e7f2ff;border-color:#9fc5f0;flex-wrap:wrap;align-items:center;gap:6px 12px}.resume-what{font-weight:600}.resume-when{opacity:.8}.resume-note{opacity:.85;flex-basis:100%}.resume-actions{gap:8px;margin-left:auto;display:flex}.resume-actions button{color:#12395f;cursor:pointer;background:#fff;border:1px solid #9fc5f0;border-radius:8px;min-height:32px;padding:4px 10px;font-size:12px}.resume-actions button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.resume-actions button:hover{filter:brightness(.97)}.resume-actions button:focus-visible{outline-offset:1px;outline:2px solid}.banner-dismiss{min-width:32px;min-height:32px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;margin-left:auto;font-size:18px;line-height:1;display:inline-flex}.banner-dismiss:hover{background:#6b4a001f}.banner-dismiss:focus-visible{outline-offset:1px;outline:2px solid}.modal-overlay{z-index:200;background:#10161e73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}#login-overlay{z-index:210}body.modal-open{overflow:hidden}.login-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:380px;box-shadow:var(--shadow);padding:22px 24px 18px;position:relative}.login-logo{width:132px;height:auto;margin:0 0 12px;display:block}.login-card .card-title{margin:2px 0 6px;font-size:20px}.login-reason{color:var(--muted);margin:0 0 14px;font-size:12.5px;line-height:1.5}.login-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:4px;margin-bottom:12px;font-size:11px;font-weight:700;display:flex}.login-label input{border:1px solid var(--border-strong);background:var(--panel-2);color:var(--text);text-transform:none;letter-spacing:normal;border-radius:9px;padding:9px 11px;font-size:14px;font-weight:400}.login-label input:focus-visible{outline:2px solid var(--accent);border-color:var(--accent)}.login-error{color:#8a2718;background:#fde8e4;border:1px solid #eda898;border-radius:8px;margin:0 0 10px;padding:8px 10px;font-size:12.5px}.login-error:empty{display:none}.login-submit{border:1px solid var(--accent);background:var(--accent);width:100%;color:var(--on-accent);cursor:pointer;border-radius:9px;padding:10px 16px;font-size:14px;font-weight:700}.login-submit:hover{filter:brightness(1.06)}.login-submit:disabled{opacity:.6;cursor:progress}.login-hint{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.5}.login-hint code{background:var(--panel-2);border-radius:4px;padding:1px 4px}#confirm-overlay{z-index:220}.confirm-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:360px;box-shadow:var(--shadow);padding:20px 22px 16px;position:relative}.confirm-card .card-title{margin:0 0 6px;padding-right:0;font-size:18px}.confirm-text{color:var(--muted);margin:0 0 16px;font-size:12.5px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-btn{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:9px;padding:8px 16px;font-size:13px;font-weight:700}.confirm-btn:hover{background:var(--panel-2)}.confirm-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.confirm-btn.primary:hover{filter:brightness(1.06)}.admin-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:940px;box-shadow:var(--shadow);margin:auto;padding:22px 24px 20px;position:relative}.admin-note{color:var(--muted);margin:4px 0 14px;font-size:12px;line-height:1.55}.admin-note code{background:var(--panel-2);border-radius:4px;padding:1px 4px}.admin-h3{letter-spacing:.02em;margin:20px 0 8px;font-size:13px}.admin-sub{color:var(--muted);font-weight:400}.admin-table{border-collapse:collapse;width:100%;font-size:12.5px}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--border);padding:6px 8px;font-size:10.5px}.admin-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 8px}.admin-table tr.admin-disabled td{color:var(--muted)}.admin-you{color:var(--accent);font-size:10px;font-weight:700}.admin-role,.admin-create select,.admin-create input{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:7px;padding:5px 8px;font-size:12.5px}.admin-actions{flex-wrap:wrap;gap:5px;display:flex}.admin-actions button{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:7px;padding:4px 9px;font-size:11.5px;font-weight:600}.admin-actions button:hover:not(:disabled){color:var(--text);border-color:var(--muted)}.admin-actions button:disabled{opacity:.4;cursor:not-allowed}.admin-actions .admin-danger{color:var(--bad-fg);border-color:#f0c4bd}.admin-create{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.admin-create .login-label{margin-bottom:0}.admin-create input{min-width:190px}.admin-create button{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:8px;padding:6px 14px;font-size:12.5px;font-weight:700}.admin-audit-table code{color:var(--muted);font-size:11.5px}.admin-audit-table tr.admin-denied td{background:#fdf3f1}.feed-expiry.updated{color:#12395f;background:#e7f2ff;border-color:#9fc5f0}.admin-inline-btn{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:7px;margin-left:6px;padding:3px 10px;font-size:11.5px;font-weight:700}.admin-inline-btn:hover{filter:brightness(1.06)}.admin-active-version td{background:#f2f8f3;font-weight:600}.admin-expired{color:var(--bad-fg);font-weight:700}.feed-expiry.release{border-color:var(--brand-sky);color:#0f4f74;background:#eaf6fd}.feed-expiry.release .banner-dismiss:hover{background:#0f4f741f}.app-version{border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;flex:none;padding:4px 10px;font-size:11.5px;font-weight:700}.app-version:hover{color:var(--text);border-color:var(--muted)}.app-version:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#changelog-overlay{z-index:205}.changelog-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:560px;max-height:min(80vh,720px);box-shadow:var(--shadow);flex-direction:column;margin:auto;padding:20px 0 14px;display:flex;position:relative}.changelog-head{padding:0 24px}.changelog-card .card-title{margin:0 0 4px;padding-right:0;font-size:18px}.changelog-sub{color:var(--muted);margin:0 0 12px;font-size:12.5px}.changelog-body{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex:auto;padding:4px 24px 8px;overflow-y:auto}.changelog-body:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.changelog-release+.changelog-release{border-top:1px dashed var(--border);margin-top:18px;padding-top:14px}.changelog-version{color:var(--text);font-variant-numeric:tabular-nums;margin:12px 0 8px;font-size:13px;font-weight:700}.changelog-cat{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:10px 0 4px;font-size:10.5px;font-weight:700}.changelog-cat.cat-added{color:var(--cat-added-fg)}.changelog-cat.cat-changed{color:var(--accent)}.changelog-cat.cat-fixed{color:var(--cat-fixed-fg)}.changelog-cat.cat-removed{color:var(--cat-removed-fg)}.changelog-cat.cat-security{color:#6b3fa0}.changelog-entries{margin:0;padding-left:18px}.changelog-entries li{color:var(--text);margin:0 0 7px;font-size:12.5px;line-height:1.55}.changelog-empty{color:var(--muted);margin:12px 0;font-size:12.5px}.changelog-actions{justify-content:flex-end;gap:8px;padding:12px 24px 0;display:flex}.spine{flex-wrap:wrap;gap:6px;margin:6px 0 2px;display:flex}.spine-link{letter-spacing:.01em;color:var(--accent);background:var(--accent-wash,#2f6fe61a);border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11.5px;font-weight:600;text-decoration:none;display:inline-flex}.spine-link:before{content:"→";opacity:.65;font-weight:400}.spine-link:hover{border-color:currentColor}.spine-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.operator-menu-foot{border-top:1px solid var(--line,#e3e7ec);margin-top:6px;padding-top:6px}.linkish{cursor:pointer;color:var(--accent);font:inherit;text-align:left;background:0 0;border:0;padding:2px 0;font-size:11.5px}.linkish:hover{text-decoration:underline}.linkish:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.saved-views{flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 6px;display:flex}.saved-view{background:var(--chip-bg,#eef2f7);border-radius:999px;align-items:center;gap:2px;padding:1px 3px 1px 9px;font-size:11.5px;display:inline-flex}.saved-view a{color:inherit;text-decoration:none}.saved-view a:hover{text-decoration:underline}.saved-view-x{color:var(--muted);border-radius:999px;font-size:13px}.saved-view-x:hover{color:var(--danger-hover)}.tt-noaccess{color:var(--noaccess-fg);letter-spacing:-.02em;margin-left:4px;font-size:11px;font-weight:700}.row-group{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:6px 10px 2px;font-size:11px;font-weight:700}.fleet-row{border-left:3px solid var(--accent)}.ops-export{justify-content:flex-end;margin:2px 0 -2px;display:flex}.punct-head{padding:8px 12px 4px}.punct-worst{margin:4px 0;font-size:12.5px}.punct-cover{color:var(--muted);margin:2px 0 6px;font-size:11.5px}.punct-table td.num,.punct-table th.num{text-align:right;font-variant-numeric:tabular-nums}.punct-seg{white-space:nowrap}.punct-arrow{color:var(--muted);margin:0 2px}.punct-vs{color:var(--muted);font-size:10.5px}.punct-unstable{opacity:.62}.punct-warn{color:var(--caution-fg);cursor:help;margin-left:3px;font-weight:700}.punct-n{color:var(--muted);font-size:11.5px}.punct-diag{white-space:nowrap;cursor:help;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.diag-retime{color:#8a2718;background:#fde8e4}.diag-traffic{color:#7a4a00;background:#fdf0d8}.diag-stochastic{color:#1a3f7a;background:#e6eefc}.diag-propagation{color:#45505e;background:#eceff3}.diag-ok{color:#1c5c33;background:#e4f5e9}.diag-none{color:#5a616e;background:#f3f4f6}.dv-view{inset:var(--topbar) 0 0 0;z-index:50;background:var(--panel-2);color:var(--text);position:fixed;overflow-y:auto}.dv-shell{max-width:1180px;margin:0 auto;padding:24px 24px 48px}.dv-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.dv-title h1{letter-spacing:-.02em;margin:0;font-size:24px}.dv-sub{color:var(--muted);max-width:60ch;margin:3px 0 0;font-size:13px}.dv-caps{flex-wrap:wrap;gap:6px;display:flex}.dv-cap{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.dv-cap.on{color:#16603a;background:#eef8f2;border-color:#a9d8bd}.dv-cap.off{color:var(--muted);text-decoration:line-through}.dv-body{animation:.18s dv-fade}@keyframes dv-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1}}.dv-loading,.dv-empty{text-align:center;color:var(--muted);padding:40px}.dv-empty p{margin:0 0 10px}.dv-list.dv-stale{opacity:.45;pointer-events:none;transition:opacity .1s}.dv-note{background:var(--accent-soft);color:var(--note-fg);border-radius:10px;margin:0 0 12px;padding:12px 14px;font-size:13px;line-height:1.5}.dv-mini{color:var(--muted);margin:6px 0 0;font-size:11px}.dv-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.dv-chips{flex-wrap:wrap;gap:6px;display:flex}.dv-chip{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:9px;padding:6px 12px;font-size:12.5px;font-weight:600}.dv-chip.active{background:var(--text);color:var(--bg);border-color:var(--text)}.dv-chip-n{opacity:.65;font-weight:700}.dv-search{border:1px solid var(--border-strong);background:var(--panel);min-width:200px;color:var(--text);border-radius:9px;flex:240px;padding:7px 11px;font-size:13px}.dv-actions,.dv-filter-group{align-items:center;gap:8px;display:flex}.dv-filter-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:700}.dv-kind-toggle{white-space:nowrap;color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.dv-toolbar .operator-filter{min-width:190px;margin-top:0}.dv-toolbar .operator-summary{padding:5px 9px;font-size:12.5px}.dv-count{color:var(--muted);margin:0 2px 8px;font-size:11px}.dv-count-cap{border-top:1px dashed var(--border);margin:10px 2px 0;padding-top:8px}.dv-docs a[aria-busy=true]{opacity:.6;cursor:progress}.dv-primary{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:9px;padding:7px 15px;font-size:12.5px;font-weight:700}.dv-secondary{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:9px;padding:6px 13px;font-size:12.5px;font-weight:600}.dv-danger{color:var(--bad-fg);background:var(--panel);cursor:pointer;border-color:#f0c4bd;border-radius:9px;padding:6px 13px;font-size:12.5px;font-weight:600}.dv-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:12px;font-weight:600}.dv-menu{position:relative}.dv-menu>summary{cursor:pointer;border:1px solid var(--border);background:var(--panel);border-radius:9px;padding:6px 13px;font-size:12.5px;font-weight:600;list-style:none}.dv-menu>summary::-webkit-details-marker{display:none}.dv-menu-body{z-index:5;background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:2px;min-width:250px;padding:6px;display:flex;position:absolute;top:110%;right:0;box-shadow:0 8px 24px #0000001f}.dv-menu-body a{color:var(--text);border-radius:7px;padding:6px 9px;font-size:12.5px;text-decoration:none}.dv-menu-body a:hover{background:var(--accent-soft)}.dv-cols{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}@media (width>=1100px){.dv-cols{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}.dv-list,.dv-detail{min-width:0}.dv-detail:empty{display:none}.dv-table{border-collapse:collapse;width:100%;font-size:12.5px}.dv-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--border);padding:6px 8px;font-size:10.5px}.dv-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:7px 8px}.dv-table th.num,.dv-table td.num{text-align:right}.dv-table tbody tr[data-id]{cursor:pointer}.dv-table tbody tr[data-id]:hover{background:var(--accent-soft)}.dv-table tbody tr[data-id]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dv-row-actions{opacity:0;justify-content:flex-end;gap:4px;transition:opacity .12s;display:flex}.dv-table tbody tr[data-id]:hover .dv-row-actions,.dv-table tbody tr[data-id]:focus-within .dv-row-actions{opacity:1}@media (hover:none){.dv-row-actions{opacity:1}}.dv-row-btn{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:7px;padding:2px 8px;font-size:11.5px;font-weight:600;text-decoration:none}.dv-row-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.dv-table tbody tr.sel{background:var(--accent-soft);font-weight:600}.dv-table tr.dv-cancelled td{color:var(--muted);text-decoration:line-through}.dv-table tfoot th{border-top:2px solid var(--border);text-transform:none;color:var(--text);padding:7px 8px;font-size:11.5px}.dv-badge{text-align:center;background:var(--text);min-width:26px;color:var(--bg);border-radius:6px;padding:1px 6px;font-size:11.5px;font-weight:700;display:inline-block}.dv-pending{border-bottom:1px dotted var(--muted);cursor:help;font-style:italic}.dv-status{color:#33455c;background:#eef2f7;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.dv-status.approved,.dv-status.active{color:#16603a;background:#e6f4ec}.dv-status.draft{color:#8a5a08;background:#fdf3e3}.dv-status.retired{color:#5a6472;background:#f1f2f4}.dv-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.dv-detail h2{letter-spacing:-.01em;margin:2px 0 0;font-size:19px}.dv-kicker{color:var(--muted);margin:0;font-size:11px}.dv-close{color:var(--muted);font-size:22px}.dv-desc{margin:6px 0 10px;font-size:13px}.dv-h3{border-bottom:1px solid var(--border);margin:18px 0 6px;padding-bottom:4px;font-size:13px}.dv-sub-inline{color:var(--muted);font-size:11.5px;font-weight:400}.dv-muted{color:var(--muted);font-size:11px}.dv-warn{background:#fdf3e3;border-left:3px solid #d9a441;border-radius:0 8px 8px 0;margin:6px 0;padding:8px 11px;font-size:12.5px}.dv-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:10px 0;display:grid}.dv-stat{background:var(--panel);border:1px solid var(--border);border-radius:11px;padding:10px 13px}.dv-stat .v{letter-spacing:-.02em;font-size:20px;font-weight:800}.dv-stat .l{color:var(--muted);margin-top:2px;font-size:11px}.dv-stat .s{color:var(--muted);margin-top:3px;font-size:10px}.dv-dir,.dv-dir-edit{border:1px solid var(--border);background:var(--panel);border-radius:11px;margin:10px 0;padding:10px 13px}.dv-dir h4,.dv-dir-edit h4{margin:0 0 6px;font-size:13px}.dv-kv{border-collapse:collapse;width:100%;font-size:12.5px}.dv-kv th{text-align:left;width:42%;color:var(--muted);vertical-align:top;padding:3px 0;font-weight:600}.dv-kv td{padding:3px 0}.dv-instructions{white-space:pre-wrap;margin:8px 0 0;font-size:12.5px}.dv-lifecycle{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.dv-docs{flex-wrap:wrap;align-items:center;gap:12px;font-size:12.5px;display:flex}.dv-docs a{color:var(--accent);font-weight:600;text-decoration:none}.dv-docs a:hover{text-decoration:underline}.dv-history{margin:0;padding:0;font-size:12px;list-style:none}.dv-history li{border-bottom:1px solid var(--border)}.dv-when{color:var(--muted);margin-right:6px}.dv-version{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;border-radius:7px;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:6px;display:flex}.dv-version:hover{background:var(--panel)}.dv-version.sel{background:var(--panel);box-shadow:inset 2px 0 0 var(--accent)}.dv-version-when{color:var(--muted)}.dv-version-what{font-weight:600}.dv-version-diff{color:var(--muted);flex-basis:100%;font-style:italic}.dv-version-card{border:1px solid var(--border);background:var(--panel);border-radius:11px;margin:8px 0 4px;padding:10px 14px}.dv-version-card .dv-detail-head{margin-bottom:6px}.dv-version-card h4{margin:2px 0 0;font-size:13px}.dv-plan{padding:0}.dv-plan-grid{box-sizing:border-box;grid-template-columns:minmax(0,360px) minmax(0,1fr) minmax(380px,420px);gap:14px;height:calc(100vh - 56px);padding:12px 16px;display:grid}.dv-plan-steps{min-width:0;padding-right:4px;overflow-y:auto}@media (width<=1400px){.dv-plan-grid{grid-template-columns:minmax(0,360px) minmax(0,1fr)}.dv-plan-steps{grid-column:1/-1;max-height:420px}}.dv-plan-drawer{min-width:0;padding-right:4px;overflow-y:auto}.dv-plan-head{margin-bottom:8px}.dv-plan-head h2{letter-spacing:-.01em;margin:6px 0 2px;font-size:18px}.dv-plan-map-col{flex-direction:column;gap:6px;min-width:0;display:flex}.dv-map.dv-map-full{flex:auto;height:auto;min-height:260px}.dv-map-empty{height:100%;color:var(--muted);text-align:center;justify-content:center;align-items:center;padding:24px;font-size:13px;display:flex}.dv-dir-radios{border:1px solid var(--border);border-radius:9px;margin:0 0 10px;padding:8px 10px}.dv-dir-radios legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:600}.dv-dir-radios .dv-inline{align-items:center;gap:6px;padding:2px 0;font-size:12.5px;display:flex}@media (width<=1099px){.dv-plan-grid{grid-template-columns:minmax(0,1fr);height:auto}.dv-map.dv-map-full{flex:none;height:420px}.dv-plan-steps{grid-column:auto;max-height:none;overflow-y:visible}}.dv-detail-empty{border:1px dashed var(--border);color:var(--muted);text-align:center;border-radius:11px;padding:22px 20px}.dv-empty-lead{color:var(--text);margin:0 0 4px;font-size:14px;font-weight:600}.dv-detail-empty kbd,.dv-map-status kbd{font:600 11px/1 var(--mono,ui-monospace, monospace);border:1px solid var(--border);background:var(--panel);border-bottom-width:2px;border-radius:4px;padding:2px 5px}@media (width<=1099px){.dv-detail:not(:empty){border-top:2px solid var(--accent);margin-top:8px;padding-top:8px}}.dv-compare-bar{border:1px solid var(--accent);background:var(--panel);z-index:6;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;padding:8px 12px;display:flex;position:sticky;top:8px}.dv-compare-bar[hidden]{display:none}.dv-cmp-picks{flex-wrap:wrap;gap:6px;display:flex}.dv-cmp-chip{border:1px solid var(--border);border-left:4px solid var(--c,var(--accent));border-radius:999px;align-items:center;gap:5px;padding:2px 4px 2px 8px;font-size:12px;display:inline-flex}.dv-cmp-unpick{color:var(--muted);font-size:12px}.dv-cmp-unpick:hover{color:var(--text)}.dv-pick-cell{text-align:center;width:30px;box-shadow:inset 4px 0 0 var(--c,transparent)}.dv-pick-cell input{pointer-events:none}.dv-table tr.picked{background:color-mix(in srgb, var(--accent) 8%, transparent)}.dv-cmp-scroll{overflow-x:auto}.dv-cmp-grid{min-width:100%}.dv-cmp-grid th[style]{border-bottom:3px solid var(--c,var(--border));vertical-align:top}.dv-cmp-swatch{background:var(--c,var(--accent));border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.dv-cmp-metric{color:var(--muted);white-space:nowrap;font-weight:600}.dv-cmp-actions{margin-top:4px;display:block}.dv-map.dv-compare-map{height:340px;margin-top:8px}.dv-map-rail{z-index:5;flex-direction:column;gap:6px;max-width:calc(100% - 76px);display:flex;position:absolute;top:8px;left:8px}.dv-rail-row{background:color-mix(in srgb, var(--panel) 90%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:9px;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 6px;display:flex}.dv-rail-row:empty{display:none}.dv-map-rail .dv-map-btn{padding:3px 9px}.dv-map-rail .dv-map-check{font-size:11px}.dv-map{position:relative}.dv-map-status{z-index:5;background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--border);color:var(--muted);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto;border-radius:8px;padding:5px 9px;font-size:11.5px;line-height:1.45;position:absolute;bottom:8px;left:8px;right:8px}.dv-map-status.armed{border-color:var(--accent);color:var(--text)}.dv-map-status:empty{display:none}@media (width>=700px){.dv-map-status{max-width:62%;right:auto}}.dv-map-furniture{z-index:5;pointer-events:auto;flex-direction:column;align-items:flex-end;gap:6px;max-height:calc(100% - 96px);display:flex;position:absolute;bottom:44px;right:8px}@media (width>=700px){.dv-map-furniture{bottom:8px}}.dv-map-fit{cursor:pointer;width:29px;height:29px;color:var(--muted);background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.dv-map-fit:hover{color:var(--text);border-color:var(--text)}.dv-basemap-stack{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;gap:5px;min-height:0;display:flex;overflow-y:auto}.dv-basemap-tile{cursor:pointer;background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:9px;flex-direction:column;align-items:center;gap:2px;padding:3px;display:flex}.dv-basemap-tile.active{border-color:var(--text)}.dv-basemap-thumb{background-color:var(--panel);border:1px solid var(--border);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:6px;width:48px;height:48px;display:block}.dv-basemap-tile.active .dv-basemap-thumb{border-color:var(--text)}.dv-basemap-tile.unprinted .dv-basemap-thumb{border-style:dashed}.dv-basemap-tile.unprinted .dv-basemap-name{opacity:.6;font-style:italic}.dv-basemap-name{color:var(--muted);font-size:9.5px;font-weight:600;line-height:1.1}.dv-basemap-tile.active .dv-basemap-name{color:var(--text)}.dv-map .maplibregl-ctrl-bottom-right{bottom:calc(var(--dv-furniture-h,0px) + 48px)}@media (width>=700px){.dv-map .maplibregl-ctrl-bottom-right{bottom:calc(var(--dv-furniture-h,0px) + 12px)}}.dv-via-list{border:1px solid var(--border);border-radius:9px;margin:6px 0 2px;padding:0;list-style:none;overflow:hidden}.dv-via-row{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:3px 6px;display:flex}.dv-via-row:last-child{border-bottom:0}.dv-via-row.sel{background:var(--panel);box-shadow:inset 2px 0 #8a5a08}.dv-via-pick{cursor:pointer;color:inherit;font:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:8px;min-width:0;padding:2px 0;display:flex}.dv-via-n{width:18px;height:18px;color:var(--on-band);background:#8a5a08;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.dv-via-at{color:var(--muted);font-variant-numeric:tabular-nums;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.dv-via-actions{flex:none;gap:2px;display:flex}.dv-via-actions .dv-map-btn{padding:2px 6px;line-height:1.1}.dv-view-bar{align-items:baseline;gap:8px}.dv-view-list{border:1px solid var(--border);border-radius:9px;margin:6px 0 2px;padding:0;list-style:none;overflow:hidden}.dv-view-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:5px 6px;display:flex}.dv-view-row:last-child{border-bottom:0}.dv-view-row.stale{box-shadow:inset 2px 0 #d9a441}.dv-view-pic{flex:none;align-items:center;width:74px;display:flex}.dv-view-thumb{object-fit:contain;border:1px solid var(--border);background:var(--panel);border-radius:4px;width:74px;height:auto;max-height:74px;display:block}.dv-view-body{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.dv-view-open{cursor:pointer;color:inherit;font:inherit;text-align:left;text-overflow:ellipsis;background:0 0;border:0;min-width:0;padding:0;font-weight:600;overflow:hidden}.dv-view-open:hover{text-decoration:underline}.dv-view-caption{color:var(--muted);font-size:11.5px}.dv-view-stale{color:#33455c;background:#fdf3e3;border-radius:5px;margin:2px 0 0;padding:3px 6px;font-size:11.5px;display:block}.dv-view-framing{color:var(--muted);margin:2px 0 0;font-size:11.5px;display:block}.dv-view-actions{flex:none;gap:2px;display:flex}.dv-view-actions .dv-map-btn{padding:2px 6px;line-height:1.1}.dv-view-form{border:1px solid var(--border);background:var(--panel);border-radius:9px;flex-direction:column;gap:3px;margin:6px 0 2px;padding:7px;display:flex}.dv-view-form input{box-sizing:border-box;width:100%}.dv-anchor-kicker{margin:8px 0 2px}.dv-anchor-list{border:1px solid var(--border);border-radius:9px;margin:0 0 2px;padding:0;list-style:none;overflow:hidden}.dv-anchor-row{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:3px 6px;display:flex}.dv-anchor-row:last-child{border-bottom:0}.dv-anchor-row.sel{background:var(--panel);box-shadow:inset 2px 0 0 var(--text)}.dv-anchor-pick{cursor:pointer;color:inherit;font:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:8px;min-width:0;padding:2px 0;display:flex}.dv-anchor-pick[disabled]{cursor:default}.dv-anchor-dot{width:12px;height:12px;box-shadow:0 0 0 1px var(--border);border:2px solid #fff;border-radius:50%;flex:none}.dv-anchor-leave{background:#16603a}.dv-anchor-rejoin{background:#2f6fe6}.dv-anchor-name{flex:none;width:46px;font-size:11.5px;font-weight:600}.dv-anchor-at{color:var(--muted);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.dv-anchor-actions{flex:none;align-items:center;gap:4px;display:flex}.dv-anchor-actions .dv-map-btn{padding:2px 6px;line-height:1.1}.dv-anchor-warn{color:var(--advisory-fg);white-space:nowrap;font-size:10.5px}.dv-via-bar{gap:12px;margin:8px 0 0}.dv-check-list{margin:8px 0 0;padding:0;list-style:none}.dv-check-row{color:var(--muted);align-items:flex-start;gap:6px;font-size:11.5px;line-height:1.45;display:flex}.dv-check-row.ok{color:var(--text)}.dv-check-mark{flex:none;width:12px;font-weight:700}.dv-check-row.ok .dv-check-mark{color:var(--pass-fg)}.routepicker{position:relative}.routepicker-input{box-sizing:border-box;width:100%}.routepicker.disabled .routepicker-input{opacity:.6;cursor:not-allowed}.routepicker-list{z-index:40;background:var(--panel);border:1px solid var(--border);border-radius:9px;max-height:260px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000040}.routepicker-opt{cursor:pointer;border-radius:6px;padding:6px 8px;font-size:13px}.routepicker-opt.active,.routepicker-opt:hover{background:var(--accent);color:var(--on-accent)}.dv-form{border:1px solid var(--border);background:var(--panel);border-radius:11px;margin:10px 0;padding:12px 14px}.dv-form h4{margin:0 0 6px;font-size:13px}.dv-form label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;font-weight:600;display:inline-flex}.dv-form label.dv-block{margin:8px 0;display:flex}.dv-form label.dv-inline{flex-direction:row;align-items:center;gap:5px;margin-left:10px;font-weight:400;display:inline-flex}.dv-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:8px 0;display:flex}.dv-grow{flex:200px}.dv-form input,.dv-form select,.dv-form textarea{border:1px solid var(--border-strong);background:var(--bg);color:var(--text);border-radius:8px;padding:6px 9px;font-size:12.5px;font-weight:400}.dv-form-actions{align-items:center;gap:8px;margin-top:12px;display:flex}.ed-summary.bad{color:var(--bad-fg);font-weight:600}.dv-preview{margin:10px 0}.dv-working summary{cursor:pointer;color:var(--muted);margin:6px 0;font-size:12px}.dv-map-wrap{margin:8px 0 4px}.dv-map-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;font-size:12px;display:flex}.dv-map-group{align-items:center;gap:4px;display:flex}.dv-map-btn{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:8px;padding:4px 10px;font-size:11.5px;font-weight:600}.dv-map-btn.active{background:var(--text);color:var(--bg);border-color:var(--text)}.dv-map-btn-edit{background:var(--accent);color:var(--bg);border-color:#0000}.dv-map-btn-edit:hover{filter:brightness(1.1)}.dv-map-static{color:var(--muted);padding:4px 0;font-size:11.5px;font-weight:600}.dv-map-check{color:var(--muted);align-items:center;gap:5px;font-size:11.5px;font-weight:600;display:inline-flex}.dv-map-hint{color:var(--muted);margin-left:auto;font-size:11px}.dv-map{border:1px solid var(--border);border-radius:11px;height:380px;overflow:hidden}.dv-map .maplibregl-ctrl-attrib{font-size:10px}.dv-pop{font-size:12.5px;line-height:1.45}.dv-pop-title{margin-bottom:3px;font-weight:700}.dv-pop-note{color:var(--muted);margin:2px 0;font-size:11px}.dv-pop-warn{color:#8a2be2;margin:4px 0 0;font-weight:600}.dv-pop-link{color:var(--accent);margin-top:5px;font-weight:700;text-decoration:none;display:inline-block}.dv-pop-link:hover{text-decoration:underline}.dv-planner{margin-top:10px}.dv-map-label{color:var(--muted);font-size:11.5px;font-weight:700}.dv-all-day td{border-top:2px solid var(--border);font-weight:600}.dv-worse{color:var(--bad-fg);font-weight:700}.dv-better{color:var(--pass-fg);font-weight:700}.dv-instr{border:1px solid var(--border-strong);background:var(--bg);width:100%;color:var(--text);resize:vertical;border-radius:9px;padding:9px 11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5}.dv-instr[readonly]{opacity:.8;background:var(--panel-2)}.dv-planner-hint{margin:6px 0 0}.dv-map-btn[disabled]{opacity:.4;cursor:default}.dv-badge-mini{background:var(--accent-soft);color:var(--accent);border-radius:5px;margin-left:4px;padding:1px 5px;font-size:10px;font-weight:700}.dv-variant{color:var(--muted);white-space:nowrap;background:#f1f2f4;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.dv-variant.applies{color:#c02a1b;background:#fdecea}.dv-variant.partial{color:#8a5a08;background:#fdf3e3}.dv-table tr.dv-muted-row td{color:var(--muted)}.dv-warn-inline{margin:4px 0 0;padding:5px 8px;font-size:11.5px}.dv-step-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.dv-step-row{border:1px solid var(--border);background:var(--panel);border-radius:9px;grid-template-columns:22px 1fr auto;align-items:start;gap:8px;padding:7px 9px;display:grid}.dv-step-n{background:var(--accent-soft);width:20px;height:20px;color:var(--accent);border-radius:999px;place-items:center;font-size:11px;font-weight:700;display:grid}.dv-step-body{gap:4px;min-width:0;display:grid}.dv-step-text,.dv-step-note{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:7px;padding:5px 8px;font-size:12.5px}.dv-step-note{font-size:11.5px;font-style:italic}.dv-step-text-ro{margin:0;font-size:12.5px}.dv-step-note-ro{color:var(--muted);margin:0;font-size:11.5px;font-style:italic}.dv-step-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dv-step-dist{color:var(--muted);white-space:nowrap;font-size:11px}.dv-step-tag{color:#5a6472;background:#f1f2f4;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700}.dv-step-tag.manual{background:var(--accent-soft);color:var(--accent)}.dv-step-tag.edited{color:#8a5a08;background:#fdf3e3}.dv-step-tag.map{color:#16603a;background:#e6f4ec}.dv-step-actions{gap:3px;display:flex}.dv-step-actions .dv-map-btn{padding:2px 6px}.dv-step-text-fallback{margin-top:10px}.dv-step-text-fallback>summary{cursor:pointer;color:var(--muted);font-size:12px}.dv-instructions-steps{margin:6px 0 0;padding-left:18px;font-size:12.5px}.dv-instructions-steps li{margin-bottom:2px}.dv-preview{margin-top:14px}.dv-preview-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:11px;font-weight:700}.dv-preview-unsaved{background:var(--accent-soft);color:var(--accent);letter-spacing:0;text-transform:none;border-radius:999px;margin-left:6px;padding:1px 6px;font-weight:600}.dv-bulletin-preview{border:1px solid var(--border);background:var(--bg);border-radius:11px;max-height:460px;padding:12px 14px;font-size:12.5px;line-height:1.45;overflow:auto}.dv-preview-loading{opacity:.6}.dv-bulletin-preview p{margin:0 0 6px}.dv-bulletin-preview ol.instr,.dv-bulletin-preview ul.instr{margin:4px 0 8px;padding-left:20px}.dv-bulletin-preview ol.instr li,.dv-bulletin-preview ul.instr li{margin:0 0 6px}.dv-bulletin-preview ol.instr li::marker{font-weight:700}.dv-bulletin-preview ol.instr.numbered{padding-left:0;list-style:none}.dv-bulletin-preview ol.instr.numbered>li{gap:7px;padding-left:0;display:flex}.dv-bulletin-preview .instr-n{text-align:right;font-variant-numeric:tabular-nums;flex:0 0 30px;font-weight:700}.dv-bulletin-preview ol.instr.numbered>li.sub{margin-left:24px}.dv-bulletin-preview ol.instr.numbered>li.sub .instr-n{color:var(--muted);font-weight:400}.dv-bulletin-preview ol.instr.numbered>li.sub .instr-text{color:var(--text)}.dv-bulletin-preview .instr-dist{color:var(--muted);white-space:nowrap;font-size:11.5px}.dv-bulletin-preview .instr-note{color:var(--text);font-size:11.5px;font-style:italic;display:block}.dv-bulletin-preview .inset-wrap{margin:5px 0 0;display:block}.dv-bulletin-preview svg.inset{border-radius:4px;width:100%;max-width:252px;height:auto}.dv-bulletin-preview .warn{background:#fdf3e3;border-left:3px solid #d9a441;border-radius:0 8px 8px 0;margin:8px 0;padding:7px 10px}.dv-bulletin-preview .note{color:var(--muted);font-size:11.5px}.dv-bulletin-preview .letterhead{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.dv-match{border:1px solid var(--border);background:var(--panel);border-radius:11px;margin-top:10px;padding:10px 13px}.dv-match .dv-detail-head{align-items:center;margin-bottom:4px}button.dv-pop-link{cursor:pointer;font:inherit;background:0 0;border:none;padding:0;display:block}.dv-incident:not(:empty){border:1px solid var(--border);border-left:3px solid var(--muted);background:var(--panel);border-radius:9px;margin:10px 0;padding:8px 12px}.dv-incident .dv-kicker{margin-bottom:2px}.dv-incident .dv-sub{margin:0 0 2px}.dv-incident>:last-child{margin-bottom:0}@media (width<=1100px){body.overlay-info-open .panel-rail,body.overlay-info-open #sidebar{bottom:calc(24px + var(--overlay-info-h,0px))}body.overlay-info-open{--tools-bottom:calc(8px + var(--attrib-band) + var(--overlay-info-h,0px))}body.overlay-info-open .maplibregl-ctrl-bottom-right{margin-bottom:calc(var(--overlay-info-h,0px) + 8px)}}@media (width<=720px){body.overlay-info-open .panel-dock{bottom:calc(24px + var(--overlay-info-h,0px))}body.overlay-info-open .panel-rail,body.overlay-info-open.dock-open .panel-rail,body.overlay-info-open #sidebar{bottom:calc(24px + var(--overlay-info-h,0px) + var(--sheet-h))}body.overlay-info-open{--tools-bottom:calc(84px + var(--overlay-info-h,0px))}body.overlay-info-open.dock-open{--tools-bottom:calc(84px + var(--overlay-info-h,0px) + var(--sheet-h))}}.map-tool-radio{position:relative}.map-tool-radio .radio-thumb{background:var(--panel-2);justify-content:center;align-items:center;font-size:15px;line-height:1;display:flex}.map-tool-radio .radio-thumb:before{content:"((•))";letter-spacing:-.03em;color:var(--muted);font-size:10px;font-weight:700}.map-tool-radio[aria-expanded=true] .radio-thumb:before,.map-tool-radio.playing .radio-thumb:before{color:var(--accent)}.map-tool-radio:hover{border-color:var(--accent)}.map-tool-radio .rail-badge{top:-6px;right:-6px}.radio-panel{right:calc(32px + var(--rail-w));width:min(360px, calc(100vw - var(--rail-w) - 48px));max-height:min(70vh, 620px, var(--popover-max-h))}.radio-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.radio-stations{flex-wrap:wrap;gap:4px;display:flex}.radio-station-btn{font:inherit;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.radio-station-btn[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.radio-stations.single .radio-station-btn{color:var(--text);cursor:default;background:0 0;border:0;padding:3px 0}.radio-markall{font:inherit;white-space:nowrap;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;border-radius:7px;padding:3px 8px;font-size:10.5px;font-weight:700}.radio-markall:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.radio-markall:disabled{opacity:.45;cursor:default}.radio-info{flex-direction:column;gap:7px;display:flex}.radio-now-title{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:400;overflow:hidden}.radio-stop{font-size:12px}.radio-stop:hover{color:var(--freq-alarm)}.radio-transport{align-items:center;gap:5px;display:flex}.radio-btn{font:inherit;border:1px solid var(--border);background:var(--panel);min-width:30px;height:26px;color:var(--text);cursor:pointer;border-radius:7px;padding:0 6px;font-size:11px;font-weight:700;line-height:1}.radio-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.radio-btn:disabled{opacity:.4;cursor:default}.radio-btn-play{min-width:34px;font-size:12px}.radio-btn-rate{margin-left:auto}.radio-seek-row,.radio-vol-row{align-items:center;gap:7px;display:flex}.radio-range{min-width:0;accent-color:var(--accent);flex:1;height:16px}.radio-time{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;min-width:34px;font-size:10.5px}.radio-vol-icon{opacity:.7;font-size:11px}.radio-status{color:var(--muted);background:var(--panel-2);border-radius:7px;padding:5px 8px;font-size:10.5px}.radio-status.off-air{color:var(--freq-alarm)}.radio-list{flex-direction:column;gap:2px;min-height:0;margin:0 -4px;display:flex;overflow-y:auto}.radio-item{width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:6px 8px;display:flex}.radio-item:hover{background:var(--panel-2)}.radio-item.active{background:var(--panel-2);box-shadow:inset 3px 0 0 var(--accent)}.radio-item.active .radio-item-when{color:var(--accent);font-weight:700}.radio-playing-mark{flex:none;align-items:flex-end;gap:1.5px;height:9px;margin-left:2px;display:inline-flex}.radio-playing-mark i{background:var(--accent);border-radius:1px;width:2px;height:40%}.radio-item.playing .radio-playing-mark i{animation:.9s ease-in-out infinite radio-bars}.radio-item.playing .radio-playing-mark i:nth-child(2){animation-delay:.18s}.radio-item.playing .radio-playing-mark i:nth-child(3){animation-delay:.36s}@keyframes radio-bars{0%,to{height:30%}50%{height:100%}}@media (prefers-reduced-motion:reduce){.radio-item.playing .radio-playing-mark i{height:70%;animation:none}}.radio-dot{background:var(--freq-alarm);border-radius:50%;flex:none;width:7px;height:7px}.radio-item.listened .radio-dot{box-shadow:inset 0 0 0 1px var(--border);background:0 0}.radio-item-main{flex-direction:column;flex:1;min-width:0;display:flex}.radio-item-when{font-size:11.5px;font-weight:700}.radio-item.listened .radio-item-when{color:var(--muted);font-weight:500}.radio-item-age{color:var(--muted);font-size:10px}.radio-item-mark{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;opacity:.55;border-radius:6px;flex:none;padding:2px 6px;font-size:10px;font-weight:700;transition:opacity .12s}.radio-item:hover .radio-item-mark,.radio-item:focus-within .radio-item-mark{opacity:1}.radio-item-mark:hover{color:var(--accent);border-color:var(--accent)}.radio-item.unplayable{opacity:.55;cursor:default}.radio-empty{color:var(--muted);padding:10px 8px;font-size:11px}.radio-more{font:inherit;border:1px dashed var(--border);width:100%;color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;flex:none;padding:6px 8px;font-size:11px;font-weight:700}.radio-more:hover{color:var(--accent);border-color:var(--accent)}.radio-attribution{color:var(--muted);border-top:1px solid var(--border);padding-top:8px;font-size:10px;line-height:1.35}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.dv-step-fixed{text-align:center;width:30px;color:var(--border);cursor:default;-webkit-user-select:none;user-select:none;display:inline-block}.dv-step-row.sub{margin-left:22px}.dv-step-row.sub .dv-step-n{color:var(--muted);font-weight:400}.dv-step-row.sub .dv-step-text{font-style:italic}.dv-marker-panel{border:1px solid var(--border);background:var(--panel);border-radius:11px;margin:10px 0;padding:9px 12px}.dv-marker-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:11px;font-weight:700}.dv-marker-list{margin:6px 0 0;padding:0;list-style:none}.dv-marker-list li{align-items:center;gap:8px;margin-bottom:4px;font-size:12.5px;display:flex}.dv-marker-n{text-align:center;min-width:20px;color:var(--accent);flex:none;font-weight:700}.dv-marker-text{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.dv-note-swatches{gap:4px;margin-left:6px;display:inline-flex}.dv-note-swatch{cursor:pointer;background:var(--sw);border:2px solid var(--panel);width:18px;height:18px;box-shadow:0 0 0 1px var(--border);border-radius:50%}.dv-note-swatch.active{box-shadow:0 0 0 2px var(--text)}.dv-note-finish{margin-left:8px;padding:2px 10px;font-size:11.5px}.dv-step-row.sel{background:var(--panel);box-shadow:inset 2px 0 #1f6feb}.dv-step-text{box-sizing:border-box;resize:vertical;width:100%;max-height:8.5em;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:7px;padding:3px 6px;line-height:1.4;overflow-y:auto}.dv-step-long{color:var(--advisory-fg);margin:2px 0 0;font-size:10.5px}.dv-step-addnote{margin:2px 0 0;padding:0;font-size:11px}.dv-note-bar{z-index:8;pointer-events:none;flex-direction:column;align-items:center;gap:4px;max-width:min(980px,100vw - 32px);display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.dv-note-bar[hidden]{display:none}.dv-note-edit{pointer-events:auto;border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 96%, transparent);border-radius:11px;flex-wrap:wrap;align-items:center;gap:10px 14px;max-width:100%;padding:8px 12px;display:flex;box-shadow:0 4px 18px #0000004d}.dv-note-edit .dv-map-btn{padding:2px 8px}.dv-note-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:700}.dv-note-field{align-items:center;gap:6px;display:inline-flex}.dv-note-lbl{color:var(--muted);font-size:11.5px}.dv-note-deg{text-align:right;font-variant-numeric:tabular-nums;min-width:34px}.dv-note-edit input[type=range]{width:110px}.dv-note-words input{min-width:140px}.dv-note-actions{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.dv-note-hint{pointer-events:auto;text-align:center;background:color-mix(in srgb, var(--panel) 88%, transparent);border-radius:8px;max-width:640px;margin:0;padding:3px 9px}.dv-note-text-layer{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.dv-note-text{white-space:pre;pointer-events:none;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 2px #fff,0 0 2px #fff;margin:0;padding:0;position:absolute}.dv-note-text.is-selected{outline-offset:2px;outline:1px dashed #1111118c}.dv-note-sec{border-left:1px solid var(--border);align-items:center;gap:8px;padding-left:12px;display:inline-flex}.dv-note-sec:first-of-type{border-left:0;padding-left:0}.dv-swatch-btn{background:var(--sw);border:1px solid var(--border);cursor:pointer;border-radius:6px;width:22px;height:22px;padding:0}.dv-swatch-btn[aria-expanded=true]{outline:2px solid var(--focus);outline-offset:1px}.dv-swatch-grid{z-index:9;border:1px solid var(--border);background:var(--panel);border-radius:10px;grid-template-columns:repeat(6,22px);gap:5px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 6px 20px #00000059}.dv-swatch-btn:focus-visible,.dv-note-swatch:focus-visible,.dv-alpha-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dv-swatch-wrap{display:inline-flex;position:relative}.dv-note-tog[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.dv-note-tog.is-b{font-weight:800}.dv-note-tog.is-i{font-family:Georgia,serif;font-style:italic}.dv-note-tog.is-u{text-decoration:underline}.dv-alpha-btn{cursor:pointer;border:1px solid var(--border);background:linear-gradient(var(--wash), var(--wash)), repeating-conic-gradient(var(--panel-2) 0% 25%, var(--panel) 0% 50%) 0 0 / 8px 8px;border-radius:5px;width:24px;height:20px;padding:0}.dv-alpha-btn.active{outline:2px solid var(--text);outline-offset:1px}@media (width<=900px){.dv-note-actions{margin-left:0}.dv-note-hint{display:none}}.dv-tool-btn{cursor:pointer;border:1px solid var(--border);background:var(--panel);width:28px;height:28px;color:var(--muted);border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dv-tool-btn:hover:not([disabled]){color:var(--text);border-color:var(--text)}.dv-tool-btn.active{background:var(--text);border-color:var(--text);color:var(--bg)}.dv-tool-btn[disabled]{opacity:.4;cursor:default}.dv-tool-glyph{width:18px;height:18px;display:block}.dv-tool-colour.active{background:var(--panel);color:var(--text)}.dv-note-widths{gap:3px}.dv-width-btn{cursor:pointer;border:1px solid var(--border);background:var(--panel);width:22px;height:22px;color:var(--muted);border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dv-width-btn.active{background:var(--text);border-color:var(--text);color:var(--bg)}.dv-width-bar{background:currentColor;border-radius:2px;width:13px;display:block}.dv-width-a{font-weight:700;line-height:1}.dv-text-caret{z-index:6;box-sizing:content-box;border:1px solid var(--accent,#1f6feb);background:color-mix(in srgb, var(--panel) 94%, transparent);resize:none;border-radius:5px;margin:0;padding:1px 3px;position:absolute;overflow:hidden;box-shadow:0 1px 6px #00000040}.dv-note-caret-layer{pointer-events:none;z-index:7;position:absolute;inset:0;overflow:visible}.dv-tool-sep{background:var(--border);flex:none;width:1px;height:18px;margin:0 2px}.infra-view{inset:var(--topbar) 0 0 0;z-index:50;background:var(--panel-2);color:var(--text);position:fixed;overflow-y:auto}.infra-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 24px 12px;display:flex}.infra-head-main{max-width:62ch}.infra-title{margin:0 0 4px;font-size:20px}.infra-sub{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.infra-head-stats{flex-wrap:wrap;gap:8px;display:flex}.infra-stat{background:var(--panel);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px}.infra-stat b{color:var(--text);font-size:13px}.infra-stat.warn{border-color:var(--warn);color:var(--warn-fg)}.infra-stat.warn b{color:var(--warn-fg)}.infra-body{align-items:stretch;min-height:calc(100% - 84px);display:flex}.infra-nav{border-right:1px solid var(--border);flex-direction:column;flex:0 0 220px;padding:12px 0;display:flex}.infra-nav-item{text-align:left;width:100%;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:0;border-left:3px solid #0000;padding:9px 16px;display:block}.infra-nav-item:hover:not(:disabled){background:var(--panel)}.infra-nav-item.active{border-left-color:var(--accent);background:var(--panel)}.infra-nav-item:disabled{opacity:.45;cursor:default}.infra-nav-label{font-size:13px;font-weight:600;display:block}.infra-nav-hint{color:var(--muted);margin-top:2px;font-size:11px;display:block}.infra-main{flex:auto;min-width:0;padding:16px 24px 40px}.infra-empty{color:var(--muted);max-width:60ch;font-size:13px;line-height:1.6}.infra-error{color:var(--bad-fg)}.infra-filters{align-items:end;gap:16px;margin-bottom:14px;display:flex}.infra-filter{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.infra-filter select{font:inherit;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 6px}.infra-filter-check{flex-direction:row;align-items:center;gap:6px}.infra-table{border-collapse:collapse;width:100%;font-size:13px}.infra-table th,.infra-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:8px 10px}.infra-table thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:600}.infra-target{font-weight:600;display:block}.infra-dataset{color:var(--muted);font-size:11px;display:block}.infra-change{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.infra-change code{color:var(--muted);font-size:11px}.infra-from{color:var(--muted);text-decoration:line-through}.infra-to{font-weight:600}.infra-arrow{color:var(--muted)}.infra-reason{max-width:40ch;color:var(--muted)}.infra-who{white-space:nowrap}.infra-when{color:var(--muted);font-size:11px}.infra-op{color:var(--muted);font-style:italic}.infra-upstream{border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;display:inline-block}.infra-upstream.ok{color:var(--muted)}.infra-upstream.warn{border-color:var(--warn);color:var(--warn-fg)}.infra-upstream.note{color:var(--text)}.infra-held{color:var(--warn-fg);margin-top:3px;font-size:11px;display:block}.infra-btn{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:6px;padding:5px 10px;text-decoration:none;display:inline-block}.infra-btn:hover{background:var(--panel-2)}.infra-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.infra-note{color:var(--muted);max-width:62ch;margin:6px 0;font-size:12px}.fleet-table th[scope=row]{font-weight:600}.fleet-open{font:inherit;color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.fleet-open:hover{text-decoration:underline}.fleet-row.open{background:var(--panel)}.fleet-noheight{color:var(--muted)}.fleet-height{font-variant-numeric:tabular-nums}.fleet-height.stale{color:var(--warn-fg)}.fleet-basis{color:var(--muted);font-size:11px;display:block}.fleet-stale-pill{border:1px solid var(--warn);color:var(--warn-fg);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:11px}.fleet-warn{color:var(--warn-fg);cursor:help;margin-left:4px;font-weight:700}.fleet-status{font-size:12px}.fleet-status.s-withdrawn,.fleet-status.s-sold{color:var(--muted)}.fleet-detail{border:1px solid var(--border);background:var(--panel);border-radius:8px;margin-top:18px;padding:14px 16px}.fleet-detail-head{justify-content:space-between;align-items:center;display:flex}.fleet-detail-head h2{margin:0;font-size:17px}.fleet-facts{grid-template-columns:140px 1fr;gap:4px 12px;margin:10px 0;font-size:13px;display:grid}.fleet-facts dt{color:var(--muted)}.fleet-facts dd{margin:0}.fleet-rego{margin:4px 0 12px 18px;font-size:13px}.fleet-edit{flex-direction:column;gap:8px;max-width:42ch;margin-top:12px;display:flex}.fleet-edit h3{margin:0;font-size:14px}.fleet-edit label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}.fleet-edit input,.fleet-edit select{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:5px 7px}.fleet-create{border:1px solid var(--border);background:var(--panel);border-radius:8px;margin-bottom:14px;padding:12px}.infra-split{align-items:flex-start;gap:16px;display:flex}.infra-split-list{flex:auto;min-width:0}.infra-split-detail{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex:0 0 360px;max-height:calc(100vh - 140px);padding:12px 14px;position:sticky;top:8px;overflow:auto}@media (width<=1100px){.infra-split{display:block}.infra-split-detail{flex:none;max-height:none;margin-top:12px;position:static}}.infra-detail-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.infra-detail-title{margin:0;font-size:15px}.infra-detail-sub{color:var(--muted);margin:2px 0 0;font-size:12px}.infra-facts{margin:0;font-size:12px}.infra-facts dt{color:var(--muted);margin-top:8px}.infra-facts dd{color:var(--text);margin:2px 0 0}.infra-form{gap:8px;margin:10px 0;display:grid}.infra-form label{color:var(--muted);font-size:12px;display:block}.infra-form input,.infra-form select,.infra-form textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:6px;padding:5px 7px;font-size:13px}.infra-form-row{gap:8px;display:flex}.infra-form-row>*{flex:1 1 0;min-width:0}.infra-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.infra-pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:11px;display:inline-block}.infra-pill.ok{border-color:var(--ok);color:var(--ok-fg)}.infra-pill.warn{border-color:var(--warn);color:var(--warn-fg)}.infra-pill.bad{border-color:var(--bad);color:var(--bad-fg)}.infra-retired{opacity:.55}.infra-retired .infra-name{text-decoration:line-through}.infra-missing{color:var(--muted);text-decoration:line-through}.infra-banner{border:1px solid var(--warn);background:var(--panel);color:var(--text);border-left-width:3px;border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px;line-height:1.5}.infra-chiplist{flex-wrap:wrap;gap:6px;margin:8px 0 0;display:flex}.infra-chip{border:1px solid var(--line);background:var(--panel-2);border-radius:999px;align-items:center;gap:6px;padding:2px 4px 2px 8px;font-size:12px;display:inline-flex}.infra-chip button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:14px;line-height:1}.infra-chip button:hover{color:var(--bad-fg)}.infra-hint{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.infra-count{color:var(--muted);font-size:12px}.busfilter-menu{min-width:260px}.busfilter-row{align-items:center;gap:6px;margin:8px 0;font-size:12px;display:flex}.busfilter-row select,.busfilter-row input{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:3px 6px;font-size:12px}.busfilter-row>span{color:var(--muted);white-space:nowrap}.busfilter-row select{flex:auto;min-width:0}#busfilter-mins{flex:none;width:4.5em}#busfilter-way{flex:none}.busfilter-bands{border:1px solid var(--border);border-radius:6px;margin:8px 0;padding:6px 8px}.busfilter-bands legend{color:var(--muted);padding:0 4px;font-size:11px}.busfilter-check{align-items:center;gap:6px;margin:3px 0;font-size:12px;display:flex}.busfilter-hint{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.5}.busfilter-foot{border-top:1px solid var(--border);margin-top:8px;padding-top:6px}.busfilter-foot button[disabled]{opacity:.5;cursor:default}.infra-skipped{margin:4px 0 6px;padding-left:18px}.infra-skipped li{margin:2px 0}.pack-preview{flex:none;width:100%;max-height:none;position:static}.pack-rows{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;margin:8px 0;padding:8px;overflow-x:auto}.pack-rows pre{white-space:pre;color:var(--text);margin:0;font-size:11px;line-height:1.5}.mapmenu-root{z-index:10;background:var(--panel);min-width:208px;max-width:min(320px,92vw);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:calc(100dvh - 16px);margin:0;padding:6px;font-size:13px;position:fixed;inset:auto;overflow-y:auto}.mapmenu-head{color:var(--muted);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line);margin-bottom:4px;padding:3px 8px 6px;font-size:11.5px}.mapmenu-item{box-sizing:border-box;text-align:left;width:100%;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 8px;text-decoration:none;display:block}.mapmenu-item:hover{background:var(--panel-2)}.mapmenu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.mapmenu-label{display:block}.mapmenu-ext{color:var(--muted)}.mapmenu-detail{color:var(--muted);margin-top:2px;font-size:11.5px;line-height:1.4;display:block}.mapmenu-group{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.mapmenu-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:4px 8px 2px;font-size:10.5px;font-weight:700}.dv-moved{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;margin:10px 0;padding:8px 10px;line-height:1.6}.infra-split-editor{flex:0 0 46%;min-width:380px}@media (width<=1100px){.infra-split-editor{flex:none;min-width:0}}.infra-group{border:1px solid var(--border);background:var(--panel);border-radius:6px;margin:8px 0;padding:6px 10px}.infra-group>summary{cursor:pointer;color:var(--text);padding:2px 0;font-size:12px;font-weight:600;list-style-position:outside}.infra-group>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.infra-group[open]>summary{margin-bottom:6px}.infra-group .infra-group{background:var(--panel-2)}.infra-list,.infra-skipped{margin:4px 0 6px;padding-left:18px}.infra-list li,.infra-skipped li{margin:2px 0}.infra-list .infra-list{padding-left:14px}.infra-form .list{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:6px;max-height:15rem;margin-top:2px;overflow-y:auto}.inc-pop-act{border-top:1px solid var(--border);margin-top:6px;padding-top:6px}.inc-pop-correct{color:var(--accent);padding:2px 0;font-size:12px;text-decoration:none;display:inline-block}.inc-pop-correct:hover{text-decoration:underline}.inc-pop-correct:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.fleet-import{border-left-color:var(--accent)}.fleet-import .infra-detail-head{margin-bottom:6px}.infra-check{align-items:center;gap:6px;margin:8px 0;font-size:13px;display:flex}#fleet-upload-label{cursor:pointer}#fleet-upload-label:focus-within{outline:2px solid var(--accent);outline-offset:2px}.geo-purpose-filters{flex-wrap:wrap;gap:12px;margin:4px 0 2px;display:flex}.settings-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:860px;box-shadow:var(--shadow);flex-direction:column;max-height:calc(100vh - 48px);margin:auto;padding:22px 24px 18px;display:flex;position:relative}.settings-note{color:var(--muted);margin:4px 0 12px;font-size:12px}.settings-search-wrap{margin-bottom:12px;display:block}.settings-search{border:1px solid var(--border-strong);background:var(--panel);border-radius:8px;width:100%;padding:7px 10px;font-size:13px}.settings-body{flex:1;gap:18px;min-height:0;display:flex}.settings-rail{border-right:1px solid var(--border);flex-direction:column;flex:0 0 148px;gap:2px;padding-right:10px;display:flex}.settings-rail-btn{text-align:left;cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:7px 9px;font-size:12.5px;font-weight:600}.settings-rail-btn:hover{background:var(--panel-2);color:var(--text)}.settings-rail-btn.active{background:var(--accent-soft);color:var(--accent)}.settings-rail-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.settings-pane{flex:1;min-width:0;padding-right:4px;overflow-y:auto}.settings-group+.settings-group{margin-top:22px}.settings-h3{letter-spacing:.02em;margin:0 0 4px;font-size:13px}.settings-group-help{color:var(--muted);margin:0 0 12px;font-size:12px}.settings-row{border-top:1px solid var(--border);padding:10px 0}.settings-action{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.settings-group>.settings-row:first-of-type{border-top:0;padding-top:2px}.settings-row-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.settings-label{font-size:13px;font-weight:600}.settings-revert{flex:none;font-size:11px}.settings-help{color:var(--muted);margin:4px 0 0;font-size:11.5px;line-height:1.5}.settings-error{color:var(--delay-late-bad-fg);margin:4px 0 0;font-size:11.5px}.settings-readonly{color:var(--muted);margin:4px 0 0;font-size:12px}.settings-empty{color:var(--muted);font-size:12.5px}.settings-input,.settings-select{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:7px;width:100%;max-width:320px;margin-top:6px;padding:5px 8px;font-size:13px}.settings-number{max-width:110px}.settings-color{cursor:pointer;border:1px solid var(--border-strong);background:var(--panel);border-radius:7px;width:46px;height:28px;margin-top:6px;padding:0}.settings-check{cursor:pointer;align-items:center;gap:7px;margin-top:6px;font-size:13px;display:inline-flex}.settings-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:14px;padding-top:12px;display:flex}.settings-foot-note{color:var(--muted);font-size:11px}.app-settings{flex:none}.app-manual{flex:none;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.app-manual[hidden]{display:none}.app-manual:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.journey-nav{flex:none;gap:2px;display:flex;position:relative}.journey-btn{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:8px;min-width:30px;min-height:30px;padding:0 8px;font-size:12px;font-weight:700}.journey-btn:hover:not(:disabled){color:var(--text);border-color:var(--muted)}.journey-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.journey-btn:disabled{opacity:.4;cursor:default}.journey-recent{min-width:auto}.journey-menu{z-index:1;background:var(--panel);border:1px solid var(--border);min-width:280px;max-width:min(420px,90vw);max-height:60vh;box-shadow:var(--shadow);border-radius:10px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.journey-menu button{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:12px;display:block}.journey-menu button:hover{background:var(--accent-soft)}.journey-menu button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.journey-menu button.current{font-weight:700}.journey-menu button.current:before{content:"• "}.journey-menu .journey-when{color:var(--muted);font-size:11px}.journey-menu hr{border:0;border-top:1px solid var(--border);margin:4px 6px}@media (width<=820px){.app-settings-label,.app-manual-label{display:none}.settings-body{flex-direction:column}.settings-rail{border-right:0;border-bottom:1px solid var(--border);flex-flow:wrap;flex:none;padding:0 0 8px}}.layers-foot{border-top:1px solid var(--border);margin-top:10px;padding-top:9px;font-size:11.5px}.layers-foot .linkish:disabled{color:var(--muted);cursor:default}.pal-group+.pal-group{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.pal-group-h{letter-spacing:.02em;margin:0;font-size:12.5px}.pal-group-help{color:var(--muted);margin:2px 0 0;font-size:11.5px;line-height:1.45}.pal-grid{flex-direction:column;gap:2px;margin-top:6px;display:flex}.pal-preview{border-radius:6px;flex:none;justify-content:center;align-items:center;width:34px;height:24px;display:inline-flex}.pal-preview-bus,.pal-preview-line{background:#e7e9ec}.pal-preview-bus:before{content:"";background:var(--pal-c);width:11px;height:11px;box-shadow:0 0 0 4px color-mix(in srgb, var(--pal-c) 22%, transparent);border:2px solid #fff;border-radius:50%}.pal-preview-line:before{content:"";background:var(--pal-c);border-radius:3px;width:26px;height:5px;box-shadow:0 0 0 1.5px #fff}.pal-preview-text{color:var(--pal-c);font-variant-numeric:tabular-nums;background:var(--panel-2);font-size:11px;font-weight:700}.pal-row{cursor:pointer;flex-wrap:wrap;align-items:center;gap:9px;padding:3px 0;font-size:12.5px;display:flex}.pal-row .settings-color{width:34px;height:24px;margin-top:0}.pal-label{flex:1;min-width:0}.pal-ratio{font-variant-numeric:tabular-nums;color:var(--muted);flex:none;font-size:11px}.pal-ratio.bad{color:var(--delay-late-bad-fg);font-weight:700}.pal-changed{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:1px 5px;font-size:10px;font-weight:700}.pal-problems{margin-bottom:8px}.pal-foot{gap:12px;margin-top:10px;font-size:11.5px;display:flex}.pal-saved{align-items:center;gap:4px;margin-top:6px;font-size:12px;display:flex}.wk-view{--wk-s1:4px;--wk-s2:8px;--wk-s3:12px;--wk-s4:16px;--wk-s5:24px;--wk-s6:32px;--wk-fs-micro:10.5px;--wk-fs-xs:11.5px;--wk-fs-sm:12.5px;--wk-fs-md:13.5px;--wk-fs-lg:19px;--wk-fs-xl:27px;--wk-lh:1.45;--wk-caps:.07em;--wk-r-sm:7px;--wk-r-md:10px;--wk-r-lg:14px;--wk-r-pill:999px;--wk-e0:0 0 0 1px #1018280d;--wk-e1:0 1px 2px #1018280d, 0 1px 3px #1018280f;--wk-e2:0 2px 4px #1018280a, 0 10px 24px #10182814;--wk-t:.11s;--wk-ease:cubic-bezier(.2, .7, .2, 1);--wk-ring:2px solid var(--accent);--wk-ring-off:2px;inset:var(--topbar) 0 0 0;z-index:50;color:var(--text);background:radial-gradient(140% 70% at 50% -20%, color-mix(in srgb, var(--brand-sky) 14%, var(--panel-2)) 0%, color-mix(in srgb, var(--brand) 6%, var(--panel-2)) 40%, var(--panel-2) 76%), var(--panel-2);position:fixed;overflow-y:auto}.wk-shell{max-width:1280px;padding:var(--wk-s5) var(--wk-s5) var(--wk-s6);margin:0 auto}body.works-mode .app-banners{left:16px;right:16px}.wk-header{align-items:flex-start;gap:var(--wk-s3);margin-bottom:var(--wk-s5);flex-direction:column;display:flex}.wk-title{padding-bottom:var(--wk-s2);position:relative}.wk-title h1{font-size:var(--wk-fs-xl);letter-spacing:-.03em;margin:0;font-weight:700;line-height:1.15}.wk-title:after{content:"";border-radius:var(--wk-r-pill);background:linear-gradient(90deg, var(--brand), var(--brand-sky));width:56px;height:3px;position:absolute;bottom:0;left:0}.wk-sub{margin:var(--wk-s1) 0 0;color:var(--muted);font-size:var(--wk-fs-md);max-width:62ch;line-height:var(--wk-lh)}.wk-mini{margin:var(--wk-s1) 0 0;font-size:var(--wk-fs-sm);color:var(--muted);max-width:68ch;line-height:var(--wk-lh)}.wk-muted{color:var(--muted)}.wk-stats{gap:var(--wk-s2);flex-wrap:wrap;display:flex}.wk-stat{background:var(--panel);border-radius:var(--wk-r-md);padding:var(--wk-s2) var(--wk-s3);min-width:96px;box-shadow:var(--wk-e0), var(--wk-e1);border:0;flex-direction:column;align-items:flex-start;gap:1px;display:flex}.wk-stat b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.1}.wk-stat span{font-size:var(--wk-fs-micro);color:var(--muted);text-transform:uppercase;letter-spacing:var(--wk-caps);font-weight:600}.wk-toolbar{gap:var(--wk-s3);margin-bottom:var(--wk-s4);padding:var(--wk-s3) var(--wk-s4);background:var(--panel);border-radius:var(--wk-r-lg);box-shadow:var(--wk-e0), var(--wk-e1);flex-direction:column;display:flex}.wk-toolbar-row{gap:var(--wk-s3);flex-wrap:wrap;align-items:flex-end;display:flex}.wk-toolbar-note{font-size:var(--wk-fs-xs);color:var(--muted);margin:0}.wk-chips{gap:var(--wk-s1);flex-wrap:wrap;display:flex}.wk-chip,.wk-primary,.wk-secondary,.wk-move,.wk-map-base,.wkv-view,.wkv-zoom,.wk-row-btn,.wk-close{cursor:pointer;color:var(--text);background:var(--panel);border:1px solid var(--border);transition:background var(--wk-t) var(--wk-ease), border-color var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease), color var(--wk-t) var(--wk-ease);font-family:inherit}.wk-chip:hover,.wk-secondary:hover,.wk-move:hover,.wk-map-base:hover,.wkv-view:hover,.wkv-zoom:hover,.wk-row-btn:hover,.wk-close:hover{border-color:var(--accent);background:var(--accent-soft)}.wk-chip:focus-visible,.wk-primary:focus-visible,.wk-secondary:focus-visible,.wk-move:focus-visible,.wk-map-base:focus-visible,.wkv-view:focus-visible,.wkv-zoom:focus-visible,.wk-row-btn:focus-visible,.wk-close:focus-visible,.wk-link:focus-visible,.wk-linkish:focus-visible,.wk-linkbtn:focus-visible{outline:var(--wk-ring);outline-offset:var(--wk-ring-off)}.wk-chip{font-size:var(--wk-fs-sm);border-radius:var(--wk-r-pill);padding:5px 12px;font-weight:500}.wk-chip.active,.wkv-view.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.wk-chip-n{font-variant-numeric:tabular-nums;opacity:.72}.wk-chip.active .wk-chip-n{opacity:1}.wk-search,.wk-field input,.wk-field select,.wk-field textarea,.wk-daterange input{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);transition:border-color var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease);font-family:inherit}.wk-search:focus-visible,.wk-field input:focus-visible,.wk-field select:focus-visible,.wk-field textarea:focus-visible,.wk-daterange input:focus-visible{outline:var(--wk-ring);outline-offset:1px;border-color:var(--accent)}.wk-search{min-width:220px;padding:7px var(--wk-s3);font-size:var(--wk-fs-md);border-radius:var(--wk-r-sm);flex:280px}.wk-field{gap:var(--wk-s1);font-size:var(--wk-fs-sm);flex-direction:column;display:flex}.wk-field>span,.wk-daterange legend,.wk-recur legend,.wk-hours legend{color:var(--muted);font-size:var(--wk-fs-micro);text-transform:uppercase;letter-spacing:var(--wk-caps);font-weight:600}.wk-field input,.wk-field select,.wk-field textarea{padding:6px var(--wk-s2);font-size:var(--wk-fs-md);border-radius:var(--wk-r-sm)}.wk-grow{flex:320px}.wk-daterange{gap:var(--wk-s1);border:1px solid var(--border);border-radius:var(--wk-r-sm);padding:var(--wk-s1) var(--wk-s3) 7px;align-items:center;margin:0;display:flex}.wk-daterange legend{padding:0 var(--wk-s1)}.wk-daterange input{font-size:var(--wk-fs-sm);border-radius:6px;padding:5px 7px}.wk-actions{gap:var(--wk-s2);align-items:center;margin-left:auto;display:flex}.wk-primary,.wk-secondary{font-size:var(--wk-fs-md);padding:7px var(--wk-s4);border-radius:var(--wk-r-sm);font-weight:500}.wk-primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:var(--wk-e1);font-weight:600}.wk-primary:hover{box-shadow:var(--wk-e2)}.wk-primary[disabled],.wk-secondary[disabled]{opacity:.5;cursor:not-allowed}.wk-primary[disabled]:hover{box-shadow:var(--wk-e1)}.wk-link{font:inherit;cursor:pointer;color:var(--accent);text-underline-offset:2px;border-radius:var(--wk-r-sm);background:0 0;border:none;padding:0;text-decoration:underline}.wk-cols{gap:var(--wk-s4);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}@media (width<=899px){.wk-cols{grid-template-columns:minmax(0,1fr)}}.wk-list,.wk-detail,.wk-preview{min-width:0}.wk-preview{top:var(--wk-s3);height:calc(100vh - var(--topbar) - 24px);background:var(--panel);border-radius:var(--wk-r-lg);min-height:420px;box-shadow:var(--wk-e0), var(--wk-e1);padding:var(--wk-s3);flex-direction:column;align-self:start;display:flex;position:sticky;overflow:hidden}#wk-preview-body,#wk-preview-foot{flex:0 auto;min-height:0;overflow-y:auto}#wk-preview-foot:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wk-preview-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.wk-preview-head h2{font-size:var(--wk-fs-lg);letter-spacing:-.02em;margin:2px 0 0;font-weight:700}.wk-preview-head h2:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wk-preview-actions{flex:none;align-items:center;gap:8px;display:flex}.wk-preview-facts{margin-bottom:10px}.wk-preview-map{flex-direction:column;flex:auto;min-height:320px;display:flex}.wk-preview-closures{font-size:var(--wk-fs-sm);margin:10px 0 0;padding:0;list-style:none}.wk-preview-closures li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:8px;padding:6px 0;display:flex}.wk-preview-closures .wk-mini{margin:0}.wk-editor{padding:0 var(--wk-s5) var(--wk-s6)}.wk-editor-bar{z-index:30;gap:var(--wk-s3);padding:var(--wk-s3) var(--wk-s5);margin:0 calc(var(--wk-s5) * -1) var(--wk-s2);background:color-mix(in srgb, var(--panel-2) 94%, transparent);-webkit-backdrop-filter:blur(10px)saturate(1.4);backdrop-filter:blur(10px)saturate(1.4);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;display:flex;position:sticky;top:0}.wk-editor-ident{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:13px;overflow:hidden}.wk-editor-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.wk-editor-map{min-width:0;height:calc(100vh - var(--topbar) - 92px);flex-direction:column;min-height:320px;display:flex;position:sticky;top:64px}.wk-editor-map .wk-mapdock{flex:auto;min-height:0}.wk-editor-map .wk-map{flex:auto;height:auto;min-height:320px}@media (width<=899px){.wk-preview{height:auto;min-height:0;display:block;position:static;overflow:visible}#wk-preview-body,#wk-preview-foot{overflow:visible}.wk-editor-cols{grid-template-columns:minmax(0,1fr)}.wk-editor-map{order:-1;height:auto;min-height:0;position:static}.wk-editor-map .wk-map{flex:none;height:320px}}.wk-section{scroll-margin-top:72px}.wk-stale{opacity:.55;transition:opacity var(--wk-t) var(--wk-ease)}.wk-loading,.wk-empty{color:var(--muted);font-size:var(--wk-fs-md)}#wk-list>.wk-loading,#wk-list>.wk-empty{padding:var(--wk-s5) var(--wk-s3);margin:0}#wk-list{background:var(--panel);border-radius:var(--wk-r-lg);box-shadow:var(--wk-e0), var(--wk-e1);padding:var(--wk-s1) var(--wk-s2) var(--wk-s2)}.wk-table{border-collapse:collapse;width:100%;font-size:var(--wk-fs-sm)}.wk-table th{text-align:left;font-size:var(--wk-fs-micro);text-transform:uppercase;letter-spacing:var(--wk-caps);color:var(--muted);border-bottom:1px solid var(--border);padding:var(--wk-s2);font-weight:700}#wk-list .wk-table thead th{z-index:3;background:var(--panel);box-shadow:inset 0 -1px 0 var(--border);position:sticky;top:0}.wk-table td{padding:var(--wk-s2);border-bottom:1px solid var(--border);vertical-align:top}.wk-table tbody tr{cursor:pointer;transition:background var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease)}.wk-table tbody tr:hover{background:var(--accent-soft)}.wk-table tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wk-table tbody tr.sel{background:var(--accent-soft)}.wk-table tbody tr.sel td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.wk-table code{font-size:var(--wk-fs-xs)}.wk-count{font-size:var(--wk-fs-sm);color:var(--muted);margin-top:var(--wk-s2)}.wk-window.current{font-weight:600}.wk-window.past{color:var(--muted)}.wk-status{font-size:var(--wk-fs-xs);padding:2px var(--wk-s2);border-radius:var(--wk-r-pill);border:1px solid var(--border);background:var(--panel);color:var(--text);white-space:nowrap;letter-spacing:.01em;align-items:center;gap:5px;font-weight:600;display:inline-flex}.wk-status:not(.wkv-bar):before{content:"";background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.wk-status.received{color:#3d4a5c;background:#f3f6f9;border-color:#7588a3}.wk-status.assessing{color:#1a3b89;background:#eef3fe;border-color:#6286da}.wk-status.negotiating{color:#844f06;background:#fef5e9;border-color:#b8781e}.wk-status.confirmed{color:#116940;background:#ecfbf4;border-color:#32865f}.wk-status.planned{color:#0e5c71;background:#ebf9fc;border-color:#21758c}.wk-status.issued{color:#602e9e;background:#f5effd;border-color:#9464ce}.wk-status.cancelled,.wk-status.withdrawn{color:#50545e;background:#f4f5f6;border-color:#838995}.wk-status.in_force{color:#a7241b;background:#feedec;border-color:#e15147}.wk-status.completed{color:#485260;background:#f3f4f7;border-color:#7c8a9c}.wk-status.in_force:not(.wkv-bar){box-shadow:0 0 0 3px #e1514724}.wk-detail-empty{border:1px dashed var(--border);border-radius:var(--wk-r-lg);padding:var(--wk-s5);background:var(--panel)}.wk-empty-lead{margin:0;font-weight:600}.wk-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wk-detail-head h2{font-size:var(--wk-fs-lg);letter-spacing:-.02em;margin:2px 0 0;font-weight:700}.wk-kicker{color:var(--muted);margin:0;font-size:12px}.wk-close{border-radius:var(--wk-r-sm);flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;display:inline-flex}.wk-desc{font-size:var(--wk-fs-md);white-space:pre-wrap;margin:var(--wk-s3) 0 0;line-height:var(--wk-lh)}.wk-warn{margin:var(--wk-s3) 0 0;padding:var(--wk-s2) var(--wk-s3);font-size:var(--wk-fs-sm);border-radius:var(--wk-r-md);color:#844f06;box-shadow:inset 3px 0 0 #b8781e, var(--wk-e0);background:#fef5e9;border:0}.wk-archive-head{flex-direction:column;gap:4px;margin:0 0 6px;display:flex}.wk-archive-head h2{font-size:var(--wk-fs-lg);letter-spacing:-.02em;margin:0;font-weight:700}.wk-activity{margin-top:18px;display:block}.wk-archive-bounds{margin-top:var(--wk-s3);padding:var(--wk-s2) var(--wk-s3);border-radius:var(--wk-r-md);border:1px solid var(--border);background:var(--panel-2);gap:var(--wk-s1);flex-direction:column;display:flex}.wk-archive-bounds p{margin:0}.wk-h3{margin:var(--wk-s5) 0 var(--wk-s2);letter-spacing:-.01em;border-bottom:1px solid var(--border);padding-bottom:var(--wk-s1);gap:var(--wk-s2);flex-wrap:wrap;align-items:baseline;font-size:14px;font-weight:700;display:flex}.wk-h3:before{content:"";border-radius:var(--wk-r-pill);background:var(--accent);flex:none;align-self:center;width:3px;height:13px}.wk-form>.wk-h3:first-child,.wk-impact>.wk-h3:first-child,.wk-conflict>.wk-h3:first-child{margin-top:0}.wk-kvs{gap:var(--wk-s2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.wk-kv{font-size:var(--wk-fs-sm);flex-direction:column;display:flex}.wk-kv>span{color:var(--muted);font-size:var(--wk-fs-micro);text-transform:uppercase;letter-spacing:var(--wk-caps);font-weight:600}.wk-facts{flex-direction:column;gap:2px;margin:4px 0 0;display:flex}.wk-fact{gap:var(--wk-s1);font-size:var(--wk-fs-sm);line-height:var(--wk-lh);flex-wrap:wrap;align-items:baseline;display:flex}.wk-fact>dt{color:var(--muted);flex:none}.wk-fact>dt:after{content:":"}.wk-fact>dd{color:var(--text);min-width:0;max-width:68ch;margin:0}.wk-moves{gap:var(--wk-s2);flex-wrap:wrap;display:flex}.wk-move{font-size:var(--wk-fs-sm);border-radius:var(--wk-r-sm);padding:5px 12px;font-weight:500}.wk-move.off{opacity:.45;cursor:not-allowed}.wk-form{margin-top:var(--wk-s3);padding:var(--wk-s3);border-radius:var(--wk-r-md);background:var(--panel);box-shadow:var(--wk-e0), var(--wk-e1);gap:var(--wk-s3);border:0;flex-direction:column;display:flex}.wk-form-grid{gap:var(--wk-s3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.wk-form-actions{gap:var(--wk-s2);display:flex}.wk-closure-form{margin-top:var(--wk-s2);padding:var(--wk-s2) var(--wk-s3);gap:var(--wk-s2)}.wk-closure-form .wk-form-grid{gap:var(--wk-s2)}.wk-check{font-size:var(--wk-fs-sm);align-items:center;gap:5px;display:inline-flex}.wk-days{gap:var(--wk-s3);margin-bottom:var(--wk-s2);flex-wrap:wrap;display:flex}.wk-recur{border:1px solid var(--border);border-radius:var(--wk-r-md);padding:var(--wk-s2) var(--wk-s3);margin:0}.wk-recur legend,.wk-hours legend{padding:0 var(--wk-s1)}.wk-recur[disabled]{opacity:.5}.wk-hours{border:1px solid var(--border);border-radius:var(--wk-r-md);padding:var(--wk-s2) var(--wk-s3);margin:0}.wk-hours[disabled]{opacity:.5}.wk-mode{flex-wrap:wrap;gap:14px;margin-bottom:8px;display:flex}.wk-mode-pane[hidden]{display:none}.wk-block-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr)) auto;align-items:end;gap:8px;margin-bottom:8px;display:grid}.wk-window-preview{font-weight:600}.wk-window-preview.wk-warn-text{color:var(--muted);font-weight:500}.wk-windows,.wk-closures,.wk-log,.wk-history{font-size:var(--wk-fs-sm);margin:0;padding-left:18px}.wk-closures,.wk-log{padding-left:0;list-style:none}.wk-windows li,.wk-closures li,.wk-log li,.wk-history li{border-bottom:1px solid var(--border);padding:6px 0}.wk-closures li{cursor:pointer;padding:var(--wk-s2) var(--wk-s3);border-radius:var(--wk-r-md)}.wk-closures li.sel{background:var(--accent-soft)}.wk-closures li[data-hl-kind]:hover,.wk-closures li[data-hl-kind]:focus-within{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--border-strong)}.wk-closures li:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wk-window-text{font-weight:600}.wk-tag{font-size:var(--wk-fs-micro);border-radius:var(--wk-r-pill);border:1px solid var(--border);background:var(--panel-2);color:var(--muted);margin-left:5px;padding:1px 7px;font-weight:700;display:inline-block}.wk-tag.on{color:#116940;background:#ecfbf4;border-color:#32865f}.wk-row-actions{gap:5px;margin-left:8px;display:inline-flex}.wk-row-btn{font-size:var(--wk-fs-xs);padding:2px var(--wk-s2);border-radius:var(--wk-r-sm)}.wk-log-head{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.wk-log-summary{margin:3px 0 0;font-weight:600}.wk-log-body{padding:var(--wk-s2) var(--wk-s3);font-size:var(--wk-fs-xs);white-space:pre-wrap;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--wk-r-md);max-height:220px;margin:5px 0 0;font-family:inherit;overflow:auto}.wk-hist-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;display:flex}.wk-hist-open{background:var(--accent-soft);border-radius:var(--wk-r-md);padding:var(--wk-s2)}.wk-hist-compare{margin-top:6px}.wk-mapdock{flex-direction:column;gap:6px;min-height:0;display:flex}.wk-map{border:1px solid var(--border);border-radius:var(--wk-r-md);height:320px;overflow:hidden}.wk-preview-map .wk-mapdock{flex:auto;min-height:0}.wk-preview-map .wk-map{flex:auto;height:auto;min-height:320px}.wk-map-bar{z-index:2;flex-direction:column;gap:6px;display:flex;position:relative}.wk-map-bases{flex-wrap:wrap;gap:5px;display:flex}.wk-map-base{font-size:var(--wk-fs-xs);border-radius:var(--wk-r-sm);padding:3px 9px}.wk-map-base.active{background:var(--accent);border-color:var(--accent);color:#fff}.wk-draw-bar{gap:var(--wk-s1);font-size:var(--wk-fs-sm);padding:7px var(--wk-s3);border:1px solid var(--border);border-radius:var(--wk-r-md);background:var(--accent-soft);flex-wrap:wrap;align-items:center;display:flex}.wk-pick-bar .wk-pick-what{white-space:nowrap;flex:1 0 100%;font-weight:600;overflow-x:auto}.wk-pick-bar .wk-pick-did{color:var(--muted);font-size:var(--wk-fs-xs);flex:1 0 100%}#wk-pick-note:empty{display:none}.wk-map-tools{flex-direction:column;gap:6px;display:flex}.wk-map-find{align-items:flex-end;gap:8px;display:flex}.wk-map-find .wk-field{flex:auto}.wk-geo-list,.wk-seed-list{margin:0;padding:0;list-style:none}.wk-geo-list li,.wk-seed-list li{border-bottom:1px solid var(--border)}.wk-geo-hit,.wk-seed-hit{text-align:left;cursor:pointer;width:100%;color:var(--text);font:inherit;font-size:var(--wk-fs-sm);background:0 0;border:0;padding:6px 4px;display:block}.wk-geo-hit:hover,.wk-seed-hit:hover{background:var(--accent-soft)}.wk-geo-hit:focus-visible,.wk-seed-hit:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wk-geo-hit .wk-mini,.wk-seed-hit .wk-mini{margin:1px 0 0;display:block}.wk-geo-results,.wk-seed{max-height:240px;overflow:auto}.wk-group-cards{gap:var(--wk-s3);margin-top:var(--wk-s2);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.wk-group-card{border-radius:var(--wk-r-md);padding:var(--wk-s3);background:var(--panel);font-size:var(--wk-fs-sm);box-shadow:var(--wk-e0), var(--wk-e1);transition:border-color var(--wk-t) var(--wk-ease), background var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease);border:1px solid #0000}.wk-group-card h4{letter-spacing:-.01em;margin:3px 0 0;font-size:14px;font-weight:700}.wk-notice-preview{width:100%;height:620px;margin-top:var(--wk-s3);border:1px solid var(--border);border-radius:var(--wk-r-md);background:#fff}.wk-badge{border-radius:var(--wk-r-sm);background:var(--accent-soft);border-left:3px solid var(--c,var(--accent));font-weight:600;font-size:var(--wk-fs-xs);padding:1px 7px;display:inline-block}.wk-row-out{opacity:.55}.wk-overlap{border-left:2px solid var(--border);margin:6px 0 0;padding:6px 0 0 10px}.wk-overlap-route+.wk-overlap-route{border-top:1px dashed var(--border);margin-top:6px;padding-top:6px}.wk-impact,.wk-conflict{border-radius:var(--wk-r-md);padding:var(--wk-s3);margin-top:var(--wk-s2);background:var(--panel);font-size:var(--wk-fs-sm);box-shadow:var(--wk-e0), var(--wk-e1);border:0}.wk-impact-head,.wk-conflict-head{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.wk-tag.warn{color:var(--delay-late-bad-fg);border-color:var(--delay-late-bad-fg);background:var(--panel-2)}.wk-reasons{color:var(--muted);margin:4px 0 0;padding-left:18px;font-size:12px}.wk-impact-table{border-collapse:collapse;width:100%;margin-top:6px;font-size:12px}.wk-impact-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);padding:4px 6px;font-size:11px;font-weight:600}.wk-impact-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:5px 6px}.wk-impact-table tr.ours td:first-child{font-weight:600}.wk-impact-table .wk-mini{margin:1px 0 0;display:block}.wk-impact-stops{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:8px;display:grid}.wk-trips{margin-top:8px}.wk-hourbars{margin:var(--wk-s1) 0 0;align-items:flex-end;gap:3px;display:flex}.wk-hour{flex-direction:column;align-items:center;gap:2px;display:flex}.wk-hour i{background:var(--accent);border-radius:2px 2px 0 0;width:10px;display:block}.wk-hour em{color:var(--muted);font-size:9.5px;font-style:normal}.wk-import-report{border-radius:var(--wk-r-md);padding:var(--wk-s3);background:var(--panel);font-size:var(--wk-fs-sm);box-shadow:var(--wk-e0), var(--wk-e1);border:0}.wk-import-summary{margin:0 0 6px}.wk-import-list{margin:0;padding-left:18px}.wk-import-failed{color:var(--delay-late-bad-fg)}.wk-import-skipped{color:var(--muted)}.wk-drawn .wk-cols{grid-template-columns:minmax(0,1fr)}.wkv-region{min-width:0}.wkv-toolbar{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.wkv-toggle{gap:6px;display:flex}.wkv-view{font-size:var(--wk-fs-sm);border-radius:var(--wk-r-pill);padding:5px 12px;font-weight:500}.wkv-asat{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.wkv-asat-note{max-width:34ch}.wkv-head{flex-wrap:wrap;align-items:center;gap:12px;min-height:26px;margin:0 0 8px;display:flex}.wkv-zooms{gap:4px;display:flex}.wkv-zoom{font-size:var(--wk-fs-xs);border-radius:var(--wk-r-sm);padding:3px 9px}.wkv-zoom.active{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);font-weight:700}.wkv-head .wk-link{margin-left:auto}.wkv-scroll{border-radius:var(--wk-r-lg);background:var(--panel);max-height:62vh;box-shadow:var(--wk-e0), var(--wk-e1);border:0;overflow:auto}.wkv-plot{position:relative}.wkv-axis{z-index:2;background:var(--panel);border-bottom:1px solid var(--border);position:sticky;top:0}.wkv-rows{position:relative}.wkv-grid{position:absolute;top:0}.wkv-links{z-index:3;pointer-events:none;position:absolute;top:0}.wkv-tick{stroke:var(--border);stroke-width:1px}.wkv-tick.major{stroke:var(--border-strong)}.wkv-tick-label{fill:var(--muted);font-size:10px}.wkv-now{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:4 3}.wkv-now-label{fill:var(--accent);font-size:10px;font-weight:700}.wkv-row{z-index:1;align-items:stretch;display:flex;position:relative}.wkv-row:hover,.wkv-row.sel{background:var(--accent-soft)}.wkv-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wkv-row.wkv-dim .wkv-label,.wkv-card.wkv-dim,.wkv-card.wkv-dim .wkv-card-title{color:var(--muted)}.wkv-row.wkv-dim .wkv-bar{opacity:.6}.wkv-card.wkv-dim .wk-status{background:var(--panel);box-shadow:none}.wkv-label{z-index:2;font-size:var(--wk-fs-xs);white-space:nowrap;background:var(--panel);border-right:1px solid var(--border);flex:none;align-items:center;gap:6px;padding:0 8px;display:flex;position:sticky;left:0;overflow:hidden}.wkv-row:hover .wkv-label,.wkv-row.sel .wkv-label{background:var(--accent-soft)}.wkv-label code{color:var(--muted);font-size:11px}.wkv-label-title{text-overflow:ellipsis;overflow:hidden}.wkv-archive{font-size:var(--wk-fs-micro);color:var(--muted);text-underline-offset:2px;flex:none;margin-left:auto;text-decoration:underline}.wkv-archive:hover,.wkv-archive:focus-visible{color:var(--accent)}.wkv-track{flex:none;height:100%;position:relative}.wkv-group{background:var(--panel-2);border-top:1px solid var(--border);z-index:2;border-radius:0 6px 6px 0;align-items:center;gap:8px;width:max-content;min-width:12ch;padding:0 8px;font-size:11px;display:flex;position:sticky;left:0}.wkv-group-label{font-weight:700}.wkv-bar{border-radius:3px;min-width:2px;height:14px;padding:0;display:block;position:absolute;top:6px}.wkv-nobar{position:absolute;top:5px;left:4px}.wkv-open{color:var(--muted);position:absolute;top:3px;right:2px}.wkv-link{stroke-width:1.5px}.wkv-link-span{stroke-width:3px;opacity:.8}.wkv-link.urgent,.wkv-link-span.urgent{stroke:var(--delay-late-bad-fg)}.wkv-link.calm,.wkv-link-span.calm{stroke:var(--accent)}.wkv-link.unknown,.wkv-link-span.unknown{stroke:var(--muted);stroke-dasharray:3 3;opacity:.85}.wkv-period{background:var(--accent-soft);border:1px solid var(--accent);border-radius:3px;height:12px;display:block;position:absolute;top:7px}.wkv-period.multi{border-color:var(--delay-late-bad-fg);border-width:2px}.wkv-period.planned{box-shadow:inset 0 0 0 2px var(--accent)}.wkv-coarse .wkv-period{background:repeating-linear-gradient(45deg, var(--accent-soft), var(--accent-soft) 4px, var(--panel) 4px, var(--panel) 8px)}.wkv-div{color:var(--text);font-size:10px;position:absolute;top:11px}.wkv-board{grid-auto-columns:minmax(190px,1fr);grid-auto-flow:column;align-items:start;gap:10px;padding-bottom:6px;display:grid;overflow-x:auto}.wkv-col{border:1px solid var(--border);border-radius:var(--wk-r-lg);background:var(--panel-2);padding:var(--wk-s2);min-height:90px;transition:border-color var(--wk-t) var(--wk-ease), background var(--wk-t) var(--wk-ease)}.wkv-col.over{border-color:var(--accent);background:var(--accent-soft)}.wkv-col h3{margin:0 0 var(--wk-s2);font-size:var(--wk-fs-micro);text-transform:uppercase;letter-spacing:var(--wk-caps);color:var(--muted);font-weight:700}.wkv-cards{gap:var(--wk-s2);flex-direction:column;display:flex}.wkv-card{border-radius:var(--wk-r-md);background:var(--panel);padding:var(--wk-s2);cursor:pointer;box-shadow:var(--wk-e0), var(--wk-e1);transition:border-color var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease), transform var(--wk-t) var(--wk-ease);border:1px solid #0000}.wkv-card:hover{box-shadow:var(--wk-e0), var(--wk-e2);transform:translateY(-1px)}.wkv-card:focus-visible{outline:var(--wk-ring);outline-offset:var(--wk-ring-off)}.wkv-card.sel{border-color:var(--accent);box-shadow:var(--wk-e0), var(--wk-e2)}.wkv-card.dragging{opacity:.4}.wkv-card-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.wkv-card-top code{color:var(--muted);font-size:11px}.wkv-card-title{font-size:var(--wk-fs-sm);margin:3px 0 2px;font-weight:600}.wkv-card-window{margin:0}.wkv-card-window.current{color:var(--text);font-weight:600}.wkv-card-window.past{color:var(--muted)}.wk-h4{margin:0 0 6px;font-size:13px}.wk-tmc-dir{margin-top:var(--wk-s3);padding:var(--wk-s3);border:1px solid var(--border);border-radius:var(--wk-r-md);background:var(--panel-2)}.wk-tmc-dir-scroll{overflow-x:auto}.wk-tmc-dir .wk-table tbody tr{cursor:default}.wk-tmc-dir .wk-table tbody tr:hover{background:0 0}.wk-tmc-retired>td{opacity:.6}.wk-tmc-add{margin-top:var(--wk-s2);padding:var(--wk-s3);border:1px dashed var(--border);border-radius:var(--wk-r-md)}.wk-linkish{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:0;margin-top:4px;padding:2px 0;font-size:12px}.wk-linkish:hover{text-decoration:underline}.wk-impact-table th.wk-pick-col{width:34px}.wk-pick{cursor:pointer;align-items:center;display:inline-flex}.wk-pick input{cursor:pointer;margin:0}.wk-pick input:disabled{cursor:default}.wk-pick.chosen{box-shadow:inset 2px 0 0 var(--accent);padding-left:4px}.wk-impact-table tr.wk-left-out td:first-child,.wk-stop-list li.wk-left-out{box-shadow:inset 2px 0 0 var(--border-strong)}.wk-impact-table tbody tr[data-hl-kind]:hover,.wk-impact-table tbody tr[data-hl-kind]:focus-within,.wk-stop-list li[data-hl-kind]:hover,.wk-stop-list li[data-hl-kind]:focus-within{background:var(--accent-soft)}.wk-impact-table tbody tr[data-hl-kind]:hover td:first-child,.wk-impact-table tbody tr[data-hl-kind]:focus-within td:first-child,.wk-stop-list li[data-hl-kind]:hover,.wk-stop-list li[data-hl-kind]:focus-within{box-shadow:inset 3px 0 0 var(--border-strong)}.wk-impact-near{margin-top:8px}.wk-impact-near>summary{cursor:pointer;color:var(--muted);padding:2px 0;font-size:12px}.wk-stop-list{margin:4px 0 0;padding:0;font-size:12px;list-style:none}.wk-stop-list li{border-bottom:1px solid var(--border);align-items:baseline;gap:6px;padding:3px 4px;display:flex}.wk-stop-list li .wk-mini{margin:0}.wk-selection{margin-top:var(--wk-s3);padding:var(--wk-s2) var(--wk-s3);border-radius:var(--wk-r-md);border:1px solid var(--border);background:var(--panel-2);transition:border-color var(--wk-t) var(--wk-ease), box-shadow var(--wk-t) var(--wk-ease)}.wk-selection.dirty{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.wk-selection p{margin:0 0 4px}.wk-selection-btns{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wk-group-members{flex-direction:column;gap:4px;margin:6px 0;padding:0;list-style:none;display:flex}.wk-group-member{align-items:center;gap:var(--wk-s1);padding:var(--wk-s1) var(--wk-s2);border-radius:var(--wk-r-sm);background:var(--panel-2);transition:border-color var(--wk-t) var(--wk-ease), opacity var(--wk-t) var(--wk-ease);border:1px solid #0000;flex-wrap:wrap;display:flex}.wk-group-member[draggable=true]{cursor:grab}.wk-group-member[draggable=true]:active{cursor:grabbing}.wk-group-member.dragging{opacity:.5}.wk-group-member.busy{opacity:.6}.wk-group-member:focus-within{border-color:var(--accent)}.wk-group-why{flex-basis:100%}.wk-group-move select{font-size:var(--wk-fs-xs);max-width:160px}.wk-group-card.over{border-color:var(--accent);background:var(--accent-soft)}.wk-group-card.wk-drop-refused{border-color:var(--delay-late-bad-fg);background:var(--delay-late-bad-bg)}.wk-drop-refusal{margin:var(--wk-s1) 0 0;color:var(--delay-late-bad-fg);font-size:var(--wk-fs-sm);font-weight:600}.wk-group-card.open{border-color:var(--accent);border-width:2px;padding:11px}.wk-group-draft{background:var(--panel-2);border-style:dashed}.wk-linkbtn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}#wk-group-plan:not([hidden]){min-width:0}.wk-editor-map>#wk-group-map:not([hidden]){flex-direction:column;flex:auto;min-height:0;display:flex}.wk-mapdock[hidden]{display:none}#wk-group-map>.wkg-map{flex:auto;min-width:0;height:auto;min-height:320px}.wkg-pane{flex-direction:column;gap:10px;display:flex}.wkg-pane-head{border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:10px;display:flex}.wkg-pane-title{font-size:var(--wk-fs-lg);letter-spacing:-.02em;margin:0;font-weight:700}.wkg-pane-title:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wkg-pane-body{flex-direction:column;gap:10px;display:flex}.wkg-table-wrap{overflow-x:auto}.wkg-stepper{margin:0}.wkg-step-strip{gap:6px;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.wkg-step-chip{flex:none}.wkg-step-chip>button{font:inherit;font-size:var(--wk-fs-xs);color:var(--muted);cursor:pointer;background:var(--panel);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-weight:600;display:flex}.wkg-step-chip>button:hover:not([disabled]){color:var(--text);border-color:var(--accent)}.wkg-step-chip>button[disabled]{cursor:not-allowed}.wkg-step-num{min-width:18px;height:18px;font-size:var(--wk-fs-xs);background:var(--panel-2);color:var(--muted);border-radius:999px;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.wkg-step-chip.is-current>button{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.wkg-step-chip.is-current .wkg-step-num,.wkg-step-chip.is-done .wkg-step-num{background:var(--accent-soft);color:var(--accent)}.wkg-step-chip.is-done>button{color:var(--text)}.wkg-step-chip.is-locked>button{border-style:dashed}.wkg-step{transition:border-color var(--wk-t) var(--wk-ease);border-left:3px solid #0000;flex-direction:column;gap:8px;padding-left:9px;display:flex}.wkg-step.is-current{border-left-color:var(--accent)}.wkg-step-head{flex-direction:column;gap:4px;display:flex}.wkg-step-head:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wkg-step-title{font-size:var(--wk-fs-sm);align-items:center;gap:7px;margin:0;font-weight:700;display:flex}.wkg-step-body{flex-direction:column;gap:10px;display:flex}.wkg-step-head>.dv-link{align-self:flex-start}.wkg-step-head>.dv-link[disabled]{color:var(--muted);cursor:not-allowed}#wk-group-map>.wkg-map.wkg-armed:after{content:"";z-index:3;pointer-events:none;border:3px solid var(--accent);border-radius:inherit;position:absolute;inset:0}.wkg-pane.wkg-armed .wkg-step.is-current{border-left-color:var(--border)}@media (width<=899px){.wk-editor-map.planning{height:420px}}@font-face{font-family:IBM Plex Sans;src:url(/ibm-plex-sans-var.woff2)format("woff2-variations");font-weight:100 700;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--panel-hover:#f6f7f9;--panel-pressed:#e3e6ea;--line:var(--border);--chip-bg:var(--panel-2);--accent-wash:var(--accent-soft);--disabled-fg:#b9c0c8;--scroll-thumb:#9aa4b2;--scroll-thumb-hover:#7f8a99;--badge-ink:#1a1f26;--on-accent:#fff;--on-band:#fff;--focus:var(--accent);--edge-light:none;--brand-rule:var(--brand);--accent-hover:#114f96;--accent-active:#0d417b;--danger-fg:#c62828;--danger-hover:#b3261e;--pill-green-bg:#e4f5ea;--pill-green-fg:#0f7a42;--pill-amber-bg:#fdf0dd;--pill-amber-fg:#8a5900;--pill-red-bg:#fce4e4;--pill-red-fg:#c62828;--pill-blue-bg:#e8f0fe;--pill-blue-fg:#1565c0;--pill-neutral-bg:#f1f2f4;--pill-neutral-fg:#5f6773;--warn-tile-bg:#fde0dd;--warn-tile-line:#b85f50;--handoff-mark:#7b61ff;--mark-soft:#a9b3c0;--toast-bg:#1a1f26;--toast-fg:#fff;--live-dot:#16c060;--mark-strong:#737e8c;--runcol-live:#f3fbf6;--string-mark:#111;--radius-sm:8px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}:root[data-theme=signal]{--font-ui:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-variant-numeric:tabular-nums;--text:#1f2731;--border:#c9d0d9;--border-strong:#69727e;--freq-unknown:#737e8c;--scroll-thumb:#737e8c;--scroll-thumb-hover:#69727e;--disabled-fg:#a9b3c0;--edge-light:inset 0 1px 0 #ffffffe6;--shadow:0 1px 2px #090d121a, 0 8px 24px #090d120f;--accent-hover:#11539e;--danger-hover:#a31f1f;--pill-neutral-bg:#e3e6ea;--pill-neutral-fg:#4c5462;--warn-tile-bg:#fce4e4;--warn-tile-line:var(--danger-fg);--handoff-mark:#5b3fc4;--mark-soft:#a9b3c0;--radius:4px;--radius-sm:3px;--bad-fg:#c62828;--error-fg:#c62828;--noaccess-fg:#c62828;--cat-removed-fg:#c62828;--mid-fg:#8a5900;--stale-fg:#8a5900;--caution-fg:#8a5900;--advisory-fg:#8a5900;--cat-fixed-fg:#8a5900;--good-fg:#0f7a42;--pass-fg:#0f7a42;--cat-added-fg:#0f7a42;--carried-fg:#4c5462;--note-fg:#1565c0;--error-hover-bg:#fce4e4;--live-dot:#0f7a42;--string-mark:var(--mark-strong);--badge-ink:#1a1f26}:root[data-theme=signal][data-color-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#2a323d;--panel:#2a323d;--panel-2:#1f2731;--panel-hover:#1f2731;--panel-pressed:#1a1f26;--accent-soft:#17283f;--text:#f6f7f9;--muted:#949eab;--accent:#6ba5ee;--border:#39434f;--border-strong:#7f8894;--disabled-fg:#4c5462;--scroll-thumb-hover:#7f8894;--delay-ontime-fg:#6fd79b;--delay-ontime-bg:#12301f;--delay-late-fg:#e8b554;--delay-late-bg:#33260c;--delay-late-bad-fg:#f49490;--delay-late-bad-bg:#3a1a1c;--live-fg:#6fd79b;--freq-ok:#63c88c;--freq-watch:#f09a5a;--freq-alarm:#f0837e;--on-accent:#1a1f26;--on-band:#1a1f26;--toast-bg:#4c5462;--toast-fg:#f6f7f9;--live-dot:#6fd79b;--mark-soft:#4c5462;--runcol-live:#0d2016;--warn-tile-bg:#3a1a1c;--edge-light:inset 0 1px 0 #ffffff0f;--shadow:0 1px 2px #00000080, 0 12px 32px #00000059;--brand-rule:var(--brand-sky);--accent-hover:#8fb8f2;--accent-active:#a9c8f6;--danger-fg:#f49490;--danger-hover:#f6afae;--pill-green-bg:#12301f;--pill-green-fg:#6fd79b;--pill-amber-bg:#33260c;--pill-amber-fg:#e8b554;--pill-red-bg:#3a1a1c;--pill-red-fg:#f49490;--pill-blue-bg:#17283f;--pill-blue-fg:#6ba5ee;--pill-neutral-bg:#1a1f26;--pill-neutral-fg:#a9b3c0;--handoff-mark:#b8a6f0;--badge-ink:#1a1f26;--bad-fg:#f49490;--ok-fg:#6fd79b;--warn-fg:#e8b554;--error-fg:#f49490;--noaccess-fg:#f49490;--cat-removed-fg:#f49490;--mid-fg:#e8b554;--stale-fg:#e8b554;--caution-fg:#e8b554;--advisory-fg:#e8b554;--cat-fixed-fg:#e8b554;--good-fg:#6fd79b;--pass-fg:#6fd79b;--cat-added-fg:#6fd79b;--carried-fg:#a9b3c0;--note-fg:#6ba5ee;--error-hover-bg:#4c2325}:root[data-theme=signal] .heat-ramp{background:linear-gradient(90deg,#fce6e3,#ee644f)}:root[data-theme=signal][data-color-mode=dark] .heat-ramp{background:linear-gradient(90deg,#581309,#d12e15)}:root[data-theme=signal] .tt-hm-green{background:var(--pill-green-bg);color:var(--pill-green-fg)}:root[data-theme=signal] .tt-hm-blue{background:var(--pill-blue-bg);color:var(--pill-blue-fg)}:root[data-theme=signal] .tt-hm-red{background:var(--pill-red-bg);color:var(--pill-red-fg)}:root[data-theme=signal] .tt-hm-none{background:var(--pill-neutral-bg)}:root[data-theme=signal] .tt-matrix-t td.tt-hm-none{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .tt-foot-warn,:root[data-theme=signal] .tt-table-note.tt-note-warn{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .run-tag{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .prop-kind.tight{background:var(--pill-red-bg);color:var(--pill-red-fg)}:root[data-theme=signal] .prop-kind.change{background:var(--pill-blue-bg);color:var(--pill-blue-fg)}:root[data-theme=signal] .alloc-chip-flag,:root[data-theme=signal] .alloc-flag-flat{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .alloc-flag-vary{background:var(--pill-blue-bg);color:var(--pill-blue-fg)}:root[data-theme=signal] .alloc-flag-notime{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .alloc-flag-notime-hi{background:var(--pill-red-bg);color:var(--pill-red-fg)}:root[data-theme=signal] .lad-zeroblock{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg);border-left-color:var(--mark-strong)}:root[data-theme=signal] .lad-zeroblock .sub{color:var(--muted)}:root[data-theme=signal] .tt-table-note{color:var(--accent)}:root[data-theme=signal] .tt-error{background:var(--pill-red-bg);color:var(--pill-red-fg);border-color:var(--danger-fg);border-left-color:var(--danger-fg)}:root[data-theme=signal] .tt-retry{color:var(--pill-red-fg);border-color:var(--danger-fg)}:root[data-theme=signal] .tt-retry:hover{background:var(--pill-red-bg)}:root[data-theme=signal] .tt-hw-tile.warn{border-color:var(--pill-amber-fg);background:linear-gradient(180deg, var(--pill-amber-bg), var(--panel))}:root[data-theme=signal] .tt-tl-playhead,:root[data-theme=signal] .chart-key-base{background:var(--mark-strong)}:root[data-theme=signal] .lad-h:before{background:var(--mark-soft)}:root[data-theme=signal] .lad-stop .lad-h:after{border-color:var(--mark-strong)}:root[data-theme=signal] .lad-seg:hover>*{background:var(--panel-hover)}:root[data-theme=signal] body{--nav-rail-w:48px;--sidebar-w:320px;--rail-w:48px;--left-inset:calc(var(--nav-rail-w) + var(--sidebar-w));--right-inset:var(--rail-w)}:root[data-theme=signal] body.nav-collapsed{--sidebar-w:0px}:root[data-theme=signal] .app-tabs{box-shadow:inset 0 2px 0 var(--brand-rule)}:root[data-theme=signal] .app-tab{height:var(--topbar);border-radius:0;padding:0 14px;font-size:12px;font-weight:600}:root[data-theme=signal] .app-tab:hover:not(.active):not(:disabled){color:var(--text);background:0 0}:root[data-theme=signal] .app-tab.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);background:0 0}:root[data-theme=signal] #sidebar{grid-template-columns:var(--nav-rail-w) 1fr;width:calc(var(--nav-rail-w) + var(--sidebar-w));grid-template-rows:minmax(0,1fr) auto;transition:width .14s cubic-bezier(.2,0,0,1);display:grid}:root[data-theme=signal] #nav-rail{border-right:1px solid var(--border);flex-direction:column;grid-area:1/1;min-width:0;display:flex}:root[data-theme=signal] #sidebar-panel{flex-direction:column;grid-area:1/2;min-width:0;display:flex;overflow:hidden}:root[data-theme=signal] .side-header{padding:14px 16px 8px}:root[data-theme=signal] .tagline{font-size:12px}:root[data-theme=signal] .nav-cell{width:var(--nav-rail-w);height:var(--nav-rail-w);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;justify-content:center;align-items:center;padding:0;display:flex}:root[data-theme=signal] .nav-cell:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .nav-cell:active{background:var(--panel-pressed)}:root[data-theme=signal] .nav-cell:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .nav-chevron{color:var(--text);font-size:26px;font-weight:600;line-height:1}:root[data-theme=signal] #nav-rail .mode-toggle{border-top:1px solid var(--border);background:0 0;border-radius:0;flex-direction:column;gap:0;margin:0;padding:0;display:flex}:root[data-theme=signal] #nav-rail .mode-btn{width:var(--nav-rail-w);height:var(--nav-rail-w);letter-spacing:.02em;background:0 0;border-radius:0;flex:none;padding:0;font-size:10px;font-weight:700}:root[data-theme=signal] #nav-rail .mode-btn:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] #nav-rail .mode-btn.active{color:var(--text);background:var(--panel-2);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] #live-status{grid-area:2/1/auto/-1;grid-template-columns:var(--nav-rail-w) 1fr;border-top:1px solid var(--border);align-items:center;gap:0;min-width:0;height:32px;margin:0;display:grid;overflow:hidden}:root[data-theme=signal] #live-status .live-dot{justify-self:center}:root[data-theme=signal] #live-status #live-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:10px;overflow:hidden}:root[data-theme=signal] .live-dot{width:10px;height:10px}:root[data-theme=signal] .live-status.stale .live-dot{border:2px solid var(--muted);background:0 0}:root[data-theme=signal] .rail-label{letter-spacing:0;white-space:nowrap;font-size:9px}:root[data-theme=signal] .rail-btn.active{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}:root[data-theme=signal] .rail-btn.empty{color:var(--disabled-fg);border-color:var(--border);box-shadow:none;background:0 0}:root[data-theme=signal] .rail-badge{color:var(--on-band)}:root[data-theme=signal] .app-banners{top:var(--topbar);left:var(--left-inset);right:var(--right-inset);align-items:stretch;gap:0;width:auto;max-width:none;margin:0}:root[data-theme=signal] body.ops-mode .app-banners,:root[data-theme=signal] body.timetable-mode .app-banners,:root[data-theme=signal] body.diversions-mode .app-banners{left:0;right:0}:root[data-theme=signal] .feed-expiry{max-width:none;box-shadow:none;border-width:0 0 1px;border-radius:0;padding:8px 16px}:root[data-theme=signal] .resume-actions button.primary{color:var(--on-accent)}@media (width>=721px){:root[data-theme=signal] #sidebar{top:var(--topbar);border:0;border-right:1px solid var(--border);max-width:none;box-shadow:var(--edge-light);border-radius:0;position:fixed;bottom:0;left:0;overflow:visible}:root[data-theme=signal] .panel-rail{top:var(--topbar);width:var(--rail-w);background:var(--panel);border-left:1px solid var(--border);box-shadow:var(--edge-light);gap:0;position:fixed;bottom:0;right:0}:root[data-theme=signal] .rail-btn{width:var(--rail-w);height:var(--rail-w);border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0}:root[data-theme=signal] .rail-btn:hover:not(:disabled){background:var(--panel-hover);border-color:var(--border)}:root[data-theme=signal] .dock-card{border:0;border-left:1px solid var(--border);border-bottom:1px solid var(--border);box-shadow:var(--edge-light);border-radius:0}:root[data-theme=signal] .map-tools{z-index:8;right:0}:root[data-theme=signal] .map-tool,:root[data-theme=signal] .map-tool-group,:root[data-theme=signal] .map-tool-layers{box-shadow:none;border-radius:0}:root[data-theme=signal] .panel-dock{top:var(--topbar);right:var(--rail-w);max-width:calc(100vw - var(--left-inset) - var(--rail-w) - var(--map-min));position:fixed;bottom:0}:root[data-theme=signal] body.overlay-info-open .panel-dock{bottom:calc(var(--overlay-info-h,0px) + 1px)}:root[data-theme=signal] #map .maplibregl-ctrl-bottom-right{right:var(--right-inset)}:root[data-theme=signal] #map .maplibregl-ctrl-bottom-left{left:var(--left-inset)}}@media (width>=721px) and (width<=1100px){:root[data-theme=signal] body{--left-inset:var(--nav-rail-w)}:root[data-theme=signal] #sidebar{z-index:8;box-shadow:var(--shadow)}}@media (width<=720px){:root[data-theme=signal] body{--left-inset:16px;--right-inset:16px}:root[data-theme=signal] #sidebar{width:calc(var(--nav-rail-w) + var(--sidebar-w));max-width:calc(100vw - 32px)}}:root[data-theme=signal] .frag-lo{background:var(--pill-green-bg);color:var(--pill-green-fg)}:root[data-theme=signal] .frag-mid{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .frag-hi,:root[data-theme=signal] .diag-retime{background:var(--pill-red-bg);color:var(--pill-red-fg)}:root[data-theme=signal] .diag-traffic{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .diag-stochastic{background:var(--pill-blue-bg);color:var(--pill-blue-fg)}:root[data-theme=signal] .diag-propagation{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .diag-ok{background:var(--pill-green-bg);color:var(--pill-green-fg)}:root[data-theme=signal] .diag-none{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .duty-flag.no-break{background:var(--pill-red-bg);color:var(--pill-red-fg);border-color:var(--pill-red-bg)}:root[data-theme=signal] .duty-flag.compound{background:var(--pill-red-fg);color:var(--on-band);border-color:var(--pill-red-fg)}:root[data-theme=signal] .tl-break{background:var(--pill-amber-fg);color:var(--on-band)}:root[data-theme=signal] .sw-break{background:var(--pill-amber-fg)}:root[data-theme=signal] .tl-flag,:root[data-theme=signal] .sw-flag{border-top-color:var(--pill-red-fg)}:root[data-theme=signal] .tl-deadhead{background:repeating-linear-gradient(45deg, var(--mark-soft), var(--mark-soft) 4px, transparent 4px, transparent 8px)}:root[data-theme=signal] .sw-deadhead{background:repeating-linear-gradient(45deg, var(--mark-soft), var(--mark-soft) 2px, transparent 2px, transparent 4px)}:root[data-theme=signal] .prop-box{background:var(--pill-red-bg);border-color:var(--danger-fg)}:root[data-theme=signal] .prop-box h4{color:var(--danger-fg)}:root[data-theme=signal] .ops-note{color:var(--accent)}:root[data-theme=signal] .kpi.accent{border-color:var(--pill-amber-fg);background:linear-gradient(180deg, var(--pill-amber-bg), var(--panel))}:root[data-theme=signal] .hist-bar,:root[data-theme=signal] .gap-bar.tight,:root[data-theme=signal] .gap-swatch.tight{background:var(--pill-amber-fg)}:root[data-theme=signal] .casc-step.source .casc-marker{background:var(--pill-amber-fg);box-shadow:0 0 0 3px color-mix(in srgb, var(--pill-amber-fg) 28%, transparent)}:root[data-theme=signal] .casc-step.handoff .casc-marker{box-shadow:0 0 0 3px color-mix(in srgb, var(--handoff-mark) 28%, transparent)}:root[data-theme=signal] .leg-service{background:var(--panel)}:root[data-theme=signal] .dv-status{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .dv-status.approved,:root[data-theme=signal] .dv-status.active{background:var(--pill-green-bg);color:var(--pill-green-fg)}:root[data-theme=signal] .dv-status.draft{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .dv-status.retired{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .dv-cap.on{background:var(--pill-green-bg);color:var(--pill-green-fg);border-color:var(--pill-green-bg)}:root[data-theme=signal] .dv-variant{background:var(--pill-neutral-bg)}:root[data-theme=signal] .dv-variant.applies{background:var(--pill-red-bg);color:var(--pill-red-fg)}:root[data-theme=signal] .dv-variant.partial{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .dv-step-tag{background:var(--pill-neutral-bg);color:var(--pill-neutral-fg)}:root[data-theme=signal] .dv-step-tag.edited{background:var(--pill-amber-bg);color:var(--pill-amber-fg)}:root[data-theme=signal] .dv-step-tag.map{background:var(--pill-green-bg);color:var(--pill-green-fg)}:root[data-theme=signal] .dv-via-n{background:var(--pill-amber-fg)}:root[data-theme=signal] .dv-note{color:var(--accent)}:root[data-theme=signal] .dv-danger{color:var(--danger-fg);border-color:var(--pill-red-bg)}:root[data-theme=signal] .rail-btn.active:hover:not(:disabled){color:var(--on-accent);background:var(--accent-hover);border-color:var(--accent-hover)}:root[data-theme=signal] #nav-rail .mode-btn:focus-visible,:root[data-theme=signal] .rail-btn:focus-visible,:root[data-theme=signal] .map-tool:focus-visible,:root[data-theme=signal] .map-tool-layers:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .rail-btn.active:focus-visible{outline-color:var(--on-accent)}@media (width>=721px){:root[data-theme=signal] body.overlay-info-open .panel-dock{bottom:calc(16px + var(--overlay-info-h,0px) + 1px)}:root[data-theme=signal] .map-tools{gap:0}:root[data-theme=signal] .map-tools>*{border-width:1px 0 0 1px}:root[data-theme=signal] .map-tools>:last-child{border-bottom-width:1px}}:root[data-theme=signal] .feed-expiry{background:var(--pill-amber-bg);border-color:var(--pill-amber-fg);color:var(--pill-amber-fg)}:root[data-theme=signal] .feed-expiry.expired{background:var(--pill-red-bg);border-color:var(--pill-red-fg);color:var(--pill-red-fg)}:root[data-theme=signal] .feed-expiry.resume{background:var(--pill-blue-bg);border-color:var(--pill-blue-fg);color:var(--pill-blue-fg)}:root[data-theme=signal] .banner-dismiss:hover{background:color-mix(in srgb, currentColor 16%, transparent);color:inherit}:root[data-theme=signal] .resume-actions button{background:var(--panel);border-color:var(--border-strong);color:var(--text)}:root[data-theme=signal] .login-error{background:var(--pill-red-bg);border-color:var(--pill-red-fg);color:var(--pill-red-fg)}:root[data-theme=signal] #nav-rail .mode-btn,:root[data-theme=signal] .map-tool-layers-label{letter-spacing:0}:root[data-theme=signal][data-color-mode=dark] .app-brand{background:#fff;border-right:0;border-radius:3px;height:28px;margin-right:12px;padding:4px 8px}:root[data-theme=signal][data-color-mode=dark] .login-logo{border-radius:var(--radius);background:#fff;padding:4px 8px}:root[data-theme=signal] .map-popover{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:10px;padding:10px 12px}:root[data-theme=signal] .layer-thumb{border-radius:var(--radius);border:2px solid var(--border);background-color:var(--panel-2)}:root[data-theme=signal] .layer-tile:hover .layer-thumb{border-color:var(--border-strong)}:root[data-theme=signal] .layer-tile.active .layer-thumb{border-color:var(--accent);box-shadow:none}:root[data-theme=signal] .layer-tile:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .maplibregl-popup-content{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}:root[data-theme=signal] .maplibregl-popup-anchor-top .maplibregl-popup-tip,:root[data-theme=signal] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip,:root[data-theme=signal] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-bottom-color:var(--panel)}:root[data-theme=signal] .maplibregl-popup-anchor-bottom .maplibregl-popup-tip,:root[data-theme=signal] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,:root[data-theme=signal] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:var(--panel)}:root[data-theme=signal] .maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--panel)}:root[data-theme=signal] .maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--panel)}:root[data-theme=signal] .maplibregl-popup-close-button{color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .maplibregl-popup-close-button:hover{color:var(--text);background:var(--panel-hover)}@media (width>=721px){:root[data-theme=signal] .map-popover{right:var(--rail-w)}:root[data-theme=signal] .radio-panel{right:var(--rail-w);width:min(360px, calc(100vw - var(--rail-w) - 32px))}}:root[data-theme=signal] .radio-stations{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);gap:0;overflow:hidden}:root[data-theme=signal] .radio-station-btn{border:0;border-left:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:0;padding:4px 10px}:root[data-theme=signal] .radio-station-btn:first-child{border-left:0}:root[data-theme=signal] .radio-station-btn:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .radio-station-btn[aria-checked=true]{color:var(--text);background:var(--panel-2);border-color:var(--border);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .radio-stations.single{color:var(--text);background:0 0;border:0;border-radius:0}:root[data-theme=signal] .radio-stations.single .radio-station-btn{color:var(--text);box-shadow:none;background:0 0;border:0;padding:3px 0}:root[data-theme=signal] .radio-markall,:root[data-theme=signal] .radio-btn,:root[data-theme=signal] .radio-item-mark,:root[data-theme=signal] .radio-more{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);color:var(--text)}:root[data-theme=signal] .radio-more{border-style:dashed}:root[data-theme=signal] .radio-markall:hover:not(:disabled),:root[data-theme=signal] .radio-btn:hover:not(:disabled),:root[data-theme=signal] .radio-item-mark:hover,:root[data-theme=signal] .radio-more:hover{color:var(--text);background:var(--panel-hover);border-color:var(--border-strong)}:root[data-theme=signal] .radio-markall:active:not(:disabled),:root[data-theme=signal] .radio-btn:active:not(:disabled),:root[data-theme=signal] .radio-more:active{background:var(--panel-pressed);color:var(--text)}:root[data-theme=signal] .radio-btn{height:28px}:root[data-theme=signal] .radio-status{border-radius:var(--radius);background:var(--panel-2);color:var(--muted)}:root[data-theme=signal] .radio-list{gap:0;margin:0 -12px}:root[data-theme=signal] .radio-item{border-bottom:1px solid var(--border);color:var(--text);background:0 0;border-radius:0;padding:6px 12px}:root[data-theme=signal] .radio-item:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .radio-item.active{background:var(--accent-soft);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .radio-item:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .radio-playing-mark i{border-radius:0}:root[data-theme=signal] .radio-item.listened .radio-dot{box-shadow:inset 0 0 0 1px var(--border-strong);background:0 0}:root[data-theme=signal] .overlay-info{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px 12px}:root[data-theme=signal] .overlay-info-gear,:root[data-theme=signal] .saved-view-x,:root[data-theme=signal] .card-close{min-width:28px;min-height:28px;color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .overlay-info-gear:hover,:root[data-theme=signal] .card-close:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .overlay-info-gear:focus-visible,:root[data-theme=signal] .saved-view-x:focus-visible,:root[data-theme=signal] .card-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .overlay-info-check input,:root[data-theme=signal] .freq-settings input[type=checkbox]{accent-color:var(--accent)}:root[data-theme=signal] .inc-filter-lead{border-right:1px solid var(--border)}:root[data-theme=signal] .inc-filter-time{border-left:1px solid var(--border)}:root[data-theme=signal] .inc-kind{border-radius:var(--radius);border-color:var(--border)}:root[data-theme=signal] .inc-kind-btn{background:var(--panel);color:var(--muted);border-radius:0}:root[data-theme=signal] .inc-kind-btn:hover:not(:disabled):not(.on){background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .inc-kind-btn.on{background:var(--panel-2);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .cong-ramp,:root[data-theme=signal] .cong-lowconf-swatch,:root[data-theme=signal] .freq-key i{border-radius:var(--radius-sm)}:root[data-theme=signal] .freq-settings input[type=number],:root[data-theme=signal] .freq-settings select{background:var(--panel);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius)}:root[data-theme=signal] .freq-settings input[type=number]:focus-visible,:root[data-theme=signal] .freq-settings select:focus-visible{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .journey-btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);color:var(--text)}:root[data-theme=signal] .journey-btn:hover:not(:disabled){color:var(--text);background:var(--panel-hover);border-color:var(--border-strong)}:root[data-theme=signal] .journey-btn:disabled{color:var(--disabled-fg);background:var(--panel)}:root[data-theme=signal] .journey-menu{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}:root[data-theme=signal] .journey-menu button{color:var(--text);background:0 0;border-radius:0;padding:6px 10px}:root[data-theme=signal] .journey-menu hr{border-top-color:var(--border)}:root[data-theme=signal] .toast{border-radius:var(--radius);border:1px solid var(--border);background:var(--toast-bg);color:var(--toast-fg)}:root[data-theme=signal] #sidebar input[type=search],:root[data-theme=signal] .operator-summary{background:var(--panel);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius)}:root[data-theme=signal] #sidebar .filters{padding:6px 16px 10px}:root[data-theme=signal] .operator-menu{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius)}:root[data-theme=signal] .operator-menu-actions button{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);color:var(--text)}:root[data-theme=signal] .operator-menu-actions button:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .operator-option{color:var(--text);background:0 0;border-radius:0;padding:6px 10px}:root[data-theme=signal] .operator-option:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .operator-option input{accent-color:var(--accent)}:root[data-theme=signal] .operator-menu-foot{border-top-color:var(--border)}:root[data-theme=signal] #sidebar .list{padding:0}:root[data-theme=signal] #sidebar .row{border-bottom:1px solid var(--border);color:var(--text);background:0 0;border-radius:0;padding:8px 16px}:root[data-theme=signal] #sidebar .row:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] #sidebar .row.selected{background:var(--accent-soft);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] #sidebar .fleet-row{box-shadow:inset 2px 0 0 var(--accent);border-left:0}:root[data-theme=signal] #sidebar .row-group{padding:8px 16px 4px}:root[data-theme=signal] .route-badge{border-radius:var(--radius-sm)}:root[data-theme=signal] .variant-tag{border-radius:var(--radius-sm);background:var(--pill-neutral-bg);color:var(--pill-neutral-fg);border:0}:root[data-theme=signal] .saved-view{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text)}:root[data-theme=signal][data-color-mode=dark] .modal-overlay{background:#0009}:root[data-theme=signal] .settings-card,:root[data-theme=signal] .login-card,:root[data-theme=signal] .changelog-card,:root[data-theme=signal] .confirm-card,:root[data-theme=signal] .admin-card{border:1px solid var(--border)}:root[data-theme=signal] .settings-card>.card-close,:root[data-theme=signal] .login-card>.card-close,:root[data-theme=signal] .changelog-card>.card-close,:root[data-theme=signal] .confirm-card>.card-close,:root[data-theme=signal] .admin-card>.card-close{color:var(--muted);background:0 0;border:0;border-radius:0}:root[data-theme=signal] .settings-card>.card-close:hover,:root[data-theme=signal] .login-card>.card-close:hover,:root[data-theme=signal] .changelog-card>.card-close:hover,:root[data-theme=signal] .confirm-card>.card-close:hover,:root[data-theme=signal] .admin-card>.card-close:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .settings-card>.card-close:focus-visible,:root[data-theme=signal] .login-card>.card-close:focus-visible,:root[data-theme=signal] .changelog-card>.card-close:focus-visible,:root[data-theme=signal] .confirm-card>.card-close:focus-visible,:root[data-theme=signal] .admin-card>.card-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .card-kicker{color:var(--muted);letter-spacing:.06em;background:0 0}:root[data-theme=signal] .settings-search{background:var(--panel);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);height:32px;padding:0 10px;font-size:13px}:root[data-theme=signal] .settings-search::placeholder{color:var(--muted)}:root[data-theme=signal] .settings-search:focus-visible{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .settings-rail-btn{min-height:28px;color:var(--muted);background:0 0;border-radius:0;padding:8px 12px}:root[data-theme=signal] .settings-rail-btn:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .settings-rail-btn.active{background:var(--accent-soft);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .settings-rail-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media (width<=820px){:root[data-theme=signal] .settings-rail-btn.active{box-shadow:inset 0 -2px 0 var(--accent)}}:root[data-theme=signal] .settings-input,:root[data-theme=signal] .settings-select{background:var(--panel);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);height:32px;padding:0 8px;font-size:13px}:root[data-theme=signal] .settings-input:focus-visible,:root[data-theme=signal] .settings-select:focus-visible,:root[data-theme=signal] .settings-color:focus-visible{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .settings-input:disabled,:root[data-theme=signal] .settings-select:disabled{background:var(--panel);color:var(--disabled-fg)}:root[data-theme=signal] .settings-check input[type=checkbox]{accent-color:var(--accent)}:root[data-theme=signal] .settings-check input[type=checkbox]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .settings-color{border-radius:var(--radius)}:root[data-theme=signal] .settings-pane,:root[data-theme=signal] .changelog-body{scrollbar-color:var(--scroll-thumb) var(--panel-2)}:root[data-theme=signal] .pal-preview{border-radius:var(--radius)}:root[data-theme=signal] .pal-changed{border-radius:var(--radius-sm);padding:2px 6px}:root[data-theme=signal] .pal-saved .saved-view-x{color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .pal-saved .saved-view-x:hover{background:var(--panel-hover);color:var(--danger-hover)}:root[data-theme=signal] .pal-saved .saved-view-x:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .login-label{letter-spacing:.06em}:root[data-theme=signal] .login-label input{background:var(--panel);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);height:32px;padding:0 10px;font-size:13px}:root[data-theme=signal] .login-label input::placeholder{color:var(--muted)}:root[data-theme=signal] .login-label input:focus-visible{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .login-submit{background:var(--accent);color:var(--on-accent);border-color:var(--accent);border-radius:var(--radius);min-height:32px;padding:8px 16px;font-size:13px}:root[data-theme=signal] .login-submit:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);filter:none}:root[data-theme=signal] .login-submit:disabled{background:var(--panel);color:var(--disabled-fg);border-color:var(--border);opacity:1}:root[data-theme=signal] .login-error{border-radius:var(--radius)}:root[data-theme=signal] .login-hint code,:root[data-theme=signal] .admin-note code{border-radius:var(--radius-sm)}:root[data-theme=signal] .changelog-release+.changelog-release{border-top-style:solid}:root[data-theme=signal] .changelog-cat.cat-added{color:var(--cat-added-fg);background:0 0}:root[data-theme=signal] .changelog-cat.cat-changed{color:var(--accent);background:0 0}:root[data-theme=signal] .changelog-cat.cat-fixed{color:var(--cat-fixed-fg);background:0 0}:root[data-theme=signal] .changelog-cat.cat-removed{color:var(--cat-removed-fg);background:0 0}:root[data-theme=signal] .confirm-btn{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);min-height:32px;padding:0 14px;font-size:12px;font-weight:600}:root[data-theme=signal] .confirm-btn:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong);filter:none}:root[data-theme=signal] .confirm-btn:active{background:var(--panel-pressed);color:var(--text)}:root[data-theme=signal] .confirm-btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:root[data-theme=signal] .confirm-btn.primary:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);filter:none}:root[data-theme=signal] .confirm-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .admin-role,:root[data-theme=signal] .admin-create select,:root[data-theme=signal] .admin-create input{border-radius:var(--radius);min-height:28px}:root[data-theme=signal] .admin-actions button{background:var(--panel);color:var(--text);border-color:var(--border);border-radius:var(--radius);min-height:28px}:root[data-theme=signal] .admin-actions button:hover:not(:disabled){background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .admin-actions button:disabled{background:var(--panel);color:var(--disabled-fg);opacity:1}:root[data-theme=signal] .admin-actions .admin-danger{background:var(--pill-red-bg);color:var(--danger-fg);border-color:var(--pill-red-bg)}:root[data-theme=signal] .admin-actions .admin-danger:hover:not(:disabled){background:var(--pill-red-bg);color:var(--danger-hover);border-color:var(--pill-red-bg)}:root[data-theme=signal] .admin-create button{background:var(--accent);color:var(--on-accent);border-color:var(--accent);border-radius:var(--radius);min-height:28px}:root[data-theme=signal] .admin-create button:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);filter:none}:root[data-theme=signal] .admin-audit-table tr.admin-denied td{background:var(--pill-red-bg);color:var(--text)}:root[data-theme=signal] .admin-active-version td{background:var(--pill-green-bg);color:var(--text)}:root[data-theme=signal] .account-btn{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:28px;padding:0 10px;font-size:12px;font-weight:600}:root[data-theme=signal] .account-btn:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .account-btn:active{background:var(--panel-pressed);color:var(--text)}:root[data-theme=signal] .account-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .account-role{border-radius:var(--radius-sm)}:root[data-theme=signal] .app-version{background:var(--panel-2);color:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:24px;padding:3px 8px}:root[data-theme=signal] .app-version:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .app-version:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .journey-btn{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);min-width:28px;min-height:28px;padding:0 8px}:root[data-theme=signal] .journey-btn:hover:not(:disabled){background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .journey-btn:active:not(:disabled){background:var(--panel-pressed);color:var(--text)}:root[data-theme=signal] .journey-btn:disabled{background:var(--panel);color:var(--disabled-fg);opacity:1}:root[data-theme=signal] .journey-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .journey-menu{border-radius:var(--radius);padding:4px 0}:root[data-theme=signal] .journey-menu button{color:var(--text);background:0 0;border-radius:0;min-height:28px;padding:6px 10px}:root[data-theme=signal] .journey-menu button:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .journey-menu button.current{background:var(--accent-soft);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .journey-menu button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .journey-menu hr{border-top-color:var(--border);margin:4px 0}:root[data-theme=signal] .banner-dismiss{border-radius:0}:root[data-theme=signal] .banner-dismiss:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .resume-actions button{border-radius:var(--radius);padding:0 12px;font-size:12px;font-weight:600}:root[data-theme=signal] .resume-actions button:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong);filter:none}:root[data-theme=signal] .resume-actions button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:root[data-theme=signal] .resume-actions button.primary:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);filter:none}:root[data-theme=signal] .resume-actions button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .admin-inline-btn{background:var(--accent);color:var(--on-accent);border-color:var(--accent);border-radius:var(--radius);min-height:24px}:root[data-theme=signal] .admin-inline-btn:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover);filter:none}:root[data-theme=signal] .admin-inline-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .dock-head{gap:0;min-height:32px;padding:0 0 0 12px}:root[data-theme=signal] .dock-title{color:var(--muted);letter-spacing:.06em;background:0 0;font-size:10.5px}:root[data-theme=signal] .dock-head .card-close{min-width:32px;color:var(--muted);background:0 0;border:0;border-radius:0;align-self:stretch}:root[data-theme=signal] .dock-head .card-close:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .dock-head .card-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .dock-body{padding:10px 12px 14px}:root[data-theme=signal] .card-operator{color:var(--muted);background:0 0}:root[data-theme=signal] #route-card-geometry{border-radius:var(--radius);margin:10px 0 0;padding:8px 10px}:root[data-theme=signal] .dock-card .spine-link{border-radius:var(--radius-sm);color:var(--accent);background:var(--accent-soft);padding:2px 7px}:root[data-theme=signal] .seg-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);gap:0;padding:0;overflow:hidden}:root[data-theme=signal] .seg-btn{border-left:1px solid var(--border);color:var(--muted);background:0 0;border-radius:0;padding:7px 8px}:root[data-theme=signal] .seg-btn:first-child{border-left:0}:root[data-theme=signal] .seg-btn:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .seg-btn.active{color:var(--text);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .seg-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .seg-dir{padding-bottom:9px}:root[data-theme=signal] .seg-dir:after{border-radius:0;height:2px;bottom:0;left:0;right:0}:root[data-theme=signal] .seg-dir.active{box-shadow:none}:root[data-theme=signal] .dep-mode{border-radius:var(--radius);border-color:var(--border)}:root[data-theme=signal] .dep-mode-btn{color:var(--muted);background:var(--panel);padding:6px 10px}:root[data-theme=signal] .dep-mode-btn:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .dep-mode-btn.active{color:var(--text);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .dep-mode-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .patterns{gap:0}:root[data-theme=signal] .pattern-row{border:0;border-bottom:1px solid var(--border);color:var(--text);background:0 0;border-radius:0;padding:8px}:root[data-theme=signal] .pattern-row:last-child{border-bottom:0}:root[data-theme=signal] .pattern-row:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .pattern-row.active{color:var(--text);background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .pattern-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .pattern-row{font-variant-numeric:tabular-nums}:root[data-theme=signal] .rt-bus:hover{color:inherit;background:var(--panel-hover)}:root[data-theme=signal] .rt-bus-main:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .freq-row{padding:7px 4px}:root[data-theme=signal] .freq-row:hover{color:inherit;background:var(--panel-hover)}:root[data-theme=signal] .freq-row.selected{color:inherit;background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .freq-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .inc-item.pinned{color:inherit;background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .inc-item.on-route{box-shadow:inset 2px 0 0 var(--freq-alarm)}:root[data-theme=signal] .inc-item.on-route.pinned{color:inherit;background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--freq-alarm), inset 4px 0 0 var(--accent)}:root[data-theme=signal] .inc-item.route.selected{color:inherit;background:var(--accent-soft)}:root[data-theme=signal] .inc-row:hover{color:inherit;background:var(--panel-hover)}:root[data-theme=signal] .inc-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .inc-pinned{border-radius:var(--radius);color:var(--text);background:var(--accent-soft)}:root[data-theme=signal] .inc-sub{border-radius:0}:root[data-theme=signal] .inc-sub.pinned{color:inherit;background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .inc-route{border-radius:0}:root[data-theme=signal] .inc-route:hover{color:inherit;background:var(--panel-hover)}:root[data-theme=signal] .inc-route-unplaced:hover{color:inherit;background:0 0}:root[data-theme=signal] .status-pill{border-radius:var(--radius-sm);padding:3px 8px}:root[data-theme=signal] .dep-delay{border-radius:var(--radius-sm);padding:1px 5px}:root[data-theme=signal] .route-buses-n{border-radius:var(--radius-sm);color:var(--text);background:var(--panel-2);font-variant-numeric:tabular-nums}:root[data-theme=signal] .dock-card .route-badge,:root[data-theme=signal] .dep-badge,:root[data-theme=signal] .mini-badge,:root[data-theme=signal] .freq-badge{border-radius:var(--radius-sm)}:root[data-theme=signal] .chip-route.active{box-shadow:none;outline:2px solid var(--accent);outline-offset:1px}:root[data-theme=signal] .freq-chip{border-radius:var(--radius-sm);color:var(--muted);background:var(--panel);border-color:var(--border);padding:3px 7px}:root[data-theme=signal] .freq-chip:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .freq-chip.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}:root[data-theme=signal] .freq-chip:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .inc-band,:root[data-theme=signal] .inc-ours-tag,:root[data-theme=signal] .inc-agree{border-radius:var(--radius-sm)}:root[data-theme=signal] .inc-run{border:1px solid var(--border);border-radius:var(--radius);min-height:28px;color:var(--text);background:var(--panel);padding:5px 10px;font-size:12px}:root[data-theme=signal] .inc-run:hover:not(:disabled){color:var(--text);background:var(--panel-hover);border-color:var(--border-strong)}:root[data-theme=signal] .inc-run:active:not(:disabled){color:var(--text);background:var(--panel-pressed)}:root[data-theme=signal] .inc-run:disabled{opacity:1;color:var(--disabled-fg);background:var(--panel);border-color:var(--border)}:root[data-theme=signal] .inc-open-route{border-radius:var(--radius);color:var(--text);background:var(--panel);border-color:var(--border)}:root[data-theme=signal] .inc-open-route:hover{color:var(--text);background:var(--panel-hover);border-color:var(--border-strong)}:root[data-theme=signal] .inc-open-route.disabled{color:var(--disabled-fg);background:var(--panel)}:root[data-theme=signal] .inc-open-route.disabled:hover{color:var(--disabled-fg);background:var(--panel);border-color:var(--border)}:root[data-theme=signal] .dep-expand{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);background:var(--panel);padding:6px 8px}:root[data-theme=signal] .dep-expand:hover{color:var(--text);background:var(--panel-hover);border-color:var(--border-strong)}:root[data-theme=signal] .dep-expand:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .vehicle-tech{border-top:1px solid var(--border);padding-top:10px}:root[data-theme=signal] .vehicle-tech summary{letter-spacing:.06em;color:var(--muted);background:0 0;font-size:10.5px}:root[data-theme=signal] .vehicle-tech summary:hover{color:var(--text);background:0 0}:root[data-theme=signal] .vehicle-tech summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .board-controls input[type=date],:root[data-theme=signal] .freq-search{border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);background:var(--panel);font-variant-numeric:tabular-nums;padding:5px 8px}:root[data-theme=signal] .board-controls input[type=date]:focus-visible,:root[data-theme=signal] .freq-search:focus-visible{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .freq-search::placeholder{color:var(--muted);background:0 0}:root[data-theme=signal] .dep-now:before,:root[data-theme=signal] .dep-now:after{opacity:1;border-radius:0;height:1px}:root[data-theme=signal] .dep-cap-note{border-top:1px solid var(--border)}:root[data-theme=signal] .tt-filters input[type=search]{border-radius:var(--radius);border:1px solid var(--border-strong);color:var(--text);background:var(--panel);padding:7px 10px;font-size:13px}:root[data-theme=signal] .tt-filters input[type=search]::placeholder{color:var(--muted)}:root[data-theme=signal] .tt-filters input[type=search]:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-color:var(--accent)}:root[data-theme=signal] .tt-filters .operator-summary{border-radius:var(--radius);border:1px solid var(--border-strong);color:var(--text);background:var(--panel);padding:6px 10px}:root[data-theme=signal] .tt-filters .operator-summary:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-filters .operator-menu{border-radius:var(--radius);color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-filters .operator-menu-actions button{border-radius:var(--radius);border:1px solid var(--border);color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-filters .operator-menu-actions button:hover{border-color:var(--border-strong);color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-filters .operator-menu-actions button:active{color:var(--text);background:var(--panel-pressed)}:root[data-theme=signal] .tt-filters .operator-option{border-radius:0;padding:6px 8px}:root[data-theme=signal] .tt-filters .operator-option:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-list{padding:0}:root[data-theme=signal] .tt-list .row{border-bottom:1px solid var(--border);border-radius:0;padding:8px 12px}:root[data-theme=signal] .tt-list .row:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-list .row.selected{color:var(--text);background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .tt-list .row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .tt-list .empty,:root[data-theme=signal] .tt-list .tt-empty{border-bottom:1px solid var(--border);color:var(--muted);background:var(--panel);padding:12px}:root[data-theme=signal] .tt-view .route-badge{border-radius:var(--radius-sm)}:root[data-theme=signal] .tt-toggle,:root[data-theme=signal] .tt-dir.seg-group,:root[data-theme=signal] .seg-group.alloc-scope{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);background:var(--panel);gap:0;padding:0;overflow:hidden}:root[data-theme=signal] .tt-toggle button,:root[data-theme=signal] .tt-dir .seg-btn,:root[data-theme=signal] .alloc-scope .seg-btn{border-left:1px solid var(--border);color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .tt-toggle button:first-child,:root[data-theme=signal] .tt-dir .seg-btn:first-child,:root[data-theme=signal] .alloc-scope .seg-btn:first-child{border-left:0}:root[data-theme=signal] .tt-toggle button:hover,:root[data-theme=signal] .tt-dir .seg-btn:hover,:root[data-theme=signal] .alloc-scope .seg-btn:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-toggle button.active,:root[data-theme=signal] .tt-dir .seg-btn.active,:root[data-theme=signal] .alloc-scope .seg-btn.active{color:var(--text);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .tt-toggle button[data-mode=live].active{color:var(--live-fg);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .tt-toggle button:focus-visible,:root[data-theme=signal] .tt-dir .seg-btn:focus-visible,:root[data-theme=signal] .alloc-scope .seg-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] #tt-spine .spine-link{border-radius:var(--radius-sm);color:var(--accent);background:var(--accent-soft)}:root[data-theme=signal] .tt-map-btn{border-radius:var(--radius);border:1px solid var(--border);color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-map-btn:hover{border-color:var(--border-strong);color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-map-btn:active{color:var(--text);background:var(--panel-pressed)}:root[data-theme=signal] .tt-map-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .tt-mini-btn{border-radius:var(--radius);border:1px solid var(--border);color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-mini-btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-mini-btn:active:not(:disabled){color:var(--text);background:var(--panel-pressed)}:root[data-theme=signal] .tt-mini-btn:disabled{opacity:1;border-color:var(--border);color:var(--disabled-fg);background:var(--panel)}:root[data-theme=signal] .tt-mini-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .tt-table-scroll,:root[data-theme=signal] .tt-alloc-scroll,:root[data-theme=signal] .tt-string-svg,:root[data-theme=signal] .tt-hw-svg,:root[data-theme=signal] .tt-freq-svg,:root[data-theme=signal] .tt-hw-tile,:root[data-theme=signal] .tt-table-note,:root[data-theme=signal] .tt-error{border-radius:var(--radius)}:root[data-theme=signal] .tt-table-scroll::-webkit-scrollbar-thumb{border-radius:var(--radius)}:root[data-theme=signal] .tt-table-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .tt-retry{border-radius:var(--radius)}:root[data-theme=signal] .tt-retry:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .tt-live-pill,:root[data-theme=signal] .tt-foot-warn,:root[data-theme=signal] .tt-swatch,:root[data-theme=signal] .tt-legend i,:root[data-theme=signal] .tt-hw-legend i,:root[data-theme=signal] .alloc-chip,:root[data-theme=signal] .alloc-chip-flag,:root[data-theme=signal] .alloc-flag,:root[data-theme=signal] .lad-dbar i,:root[data-theme=signal] .run-tag,:root[data-theme=signal] .prop-kind,:root[data-theme=signal] .punct-diag{border-radius:var(--radius-sm)}:root[data-theme=signal] .prop-box{border-radius:var(--radius)}:root[data-theme=signal] .alloc-tol input,:root[data-theme=signal] .alloc-run-select,:root[data-theme=signal] .alloc-vs select{border-radius:var(--radius);border:1px solid var(--border-strong);color:var(--text);background:var(--panel)}:root[data-theme=signal] .alloc-tol input:focus-visible,:root[data-theme=signal] .alloc-run-select:focus-visible,:root[data-theme=signal] .alloc-vs select:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-color:var(--accent)}:root[data-theme=signal] .tt-alloc-table tbody tr:hover{background:var(--panel-hover)}:root[data-theme=signal] .tt-run-detail{border-radius:var(--radius);box-shadow:var(--edge-light);border:1px solid var(--border);color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-rd-close{color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .tt-rd-close:hover{color:var(--text);background:var(--panel-hover)}:root[data-theme=signal] .tt-rd-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}:root[data-theme=signal] .tt-sched-row input[type=date],:root[data-theme=signal] .tt-sched-row select{border-radius:var(--radius);border:1px solid var(--border-strong);font-variant-numeric:tabular-nums;color:var(--text);background:var(--panel)}:root[data-theme=signal] .tt-sched-row input[type=date]:focus-visible,:root[data-theme=signal] .tt-sched-row select:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-color:var(--accent)}:root[data-theme=signal] .tt-sched-row input[type=checkbox]{accent-color:var(--accent)}:root[data-theme=signal] .tt-play{border-radius:var(--radius);color:var(--on-accent);background:var(--accent)}:root[data-theme=signal] .tt-play:hover:not(:disabled){border-color:var(--accent-hover);color:var(--on-accent);background:var(--accent-hover)}:root[data-theme=signal] .tt-play:active:not(:disabled){border-color:var(--accent-active);color:var(--on-accent);background:var(--accent-active)}:root[data-theme=signal] .tt-play:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-theme=signal] .tt-band,:root[data-theme=signal] .tt-tl-track,:root[data-theme=signal] .tt-tl-band{border-radius:var(--radius-sm)}:root[data-theme=signal] .tt-tl-handle{border-radius:var(--radius)}:root[data-theme=signal] .tt-footbar.live.stale .live-dot{border:2px solid var(--muted);background:0 0}:root[data-theme=signal] .ops-nav button{border-color:var(--border);border-radius:var(--radius);background:var(--panel);min-height:32px;color:var(--muted)}:root[data-theme=signal] .ops-nav button:hover:not(.active){border-color:var(--border-strong);background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .ops-nav button.active{border-color:var(--border);background:var(--panel-2);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .ops-retry,:root[data-theme=signal] .shift-link{border-color:var(--border);border-radius:var(--radius);background:var(--panel);min-height:28px;color:var(--text)}:root[data-theme=signal] .ops-retry:hover,:root[data-theme=signal] .shift-link:hover{border-color:var(--border-strong);background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .duty-link{border-radius:var(--radius);background:var(--panel-2);color:var(--accent)}:root[data-theme=signal] .ops-note{border-radius:var(--radius)}:root[data-theme=signal] .kpi,:root[data-theme=signal] .ops-card,:root[data-theme=signal] .ops-table,:root[data-theme=signal] .tt-run-detail{border-radius:var(--radius);box-shadow:var(--edge-light)}:root[data-theme=signal] .tt-run-detail{box-shadow:var(--edge-light)}:root[data-theme=signal] .kpi-value,:root[data-theme=signal] .ops-table,:root[data-theme=signal] .ops-table th,:root[data-theme=signal] .ops-table td{font-variant-numeric:tabular-nums}:root[data-theme=signal] .hist-bar,:root[data-theme=signal] .gap-bar{border-radius:var(--radius) var(--radius) 0 0}:root[data-theme=signal] .gap-swatch,:root[data-theme=signal] .tl-legend .sw{border-radius:var(--radius)}:root[data-theme=signal] .sw-flag{border-radius:0}:root[data-theme=signal] .ops-search,:root[data-theme=signal] .ops-filter select,:root[data-theme=signal] .alloc-run-select,:root[data-theme=signal] .casc-form select,:root[data-theme=signal] .casc-form input{border-color:var(--border-strong);border-radius:var(--radius);background:var(--panel);min-height:32px;color:var(--text)}:root[data-theme=signal] .ops-search:focus,:root[data-theme=signal] .ops-filter select:focus,:root[data-theme=signal] .alloc-run-select:focus,:root[data-theme=signal] .casc-form select:focus,:root[data-theme=signal] .casc-form input:focus{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .ops-drawer{border-left-color:var(--border);box-shadow:var(--shadow);border-radius:0}:root[data-theme=signal] .drawer-close{min-width:28px;min-height:28px;color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .drawer-close:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .drawer-stats div,:root[data-theme=signal] .timeline,:root[data-theme=signal] .tl-bar{border-radius:var(--radius)}:root[data-theme=signal] .tag,:root[data-theme=signal] .frag,:root[data-theme=signal] .leg-tag,:root[data-theme=signal] .duty-flag,:root[data-theme=signal] .alloc-flag,:root[data-theme=signal] .alloc-chip-flag,:root[data-theme=signal] .rt-badge{border-radius:var(--radius-sm)}:root[data-theme=signal] .heat-cell{border-radius:var(--radius)}:root[data-theme=signal] .casc-go{border-color:var(--accent);border-radius:var(--radius);background:var(--accent);min-height:32px;color:var(--on-accent)}:root[data-theme=signal] .casc-go:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:var(--on-accent)}:root[data-theme=signal] .casc-summary{border-radius:var(--radius)}:root[data-theme=signal] .dv-close{min-width:28px;min-height:28px;color:var(--muted);background:0 0;border-radius:0}:root[data-theme=signal] .dv-close:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .dv-chip,:root[data-theme=signal] .dv-primary,:root[data-theme=signal] .dv-secondary,:root[data-theme=signal] .dv-danger,:root[data-theme=signal] .dv-menu>summary,:root[data-theme=signal] .dv-row-btn,:root[data-theme=signal] .dv-map-btn,:root[data-theme=signal] .dv-tool-btn,:root[data-theme=signal] .dv-width-btn{border-radius:var(--radius);min-height:28px}:root[data-theme=signal] .dv-chip,:root[data-theme=signal] .dv-secondary,:root[data-theme=signal] .dv-menu>summary,:root[data-theme=signal] .dv-row-btn,:root[data-theme=signal] .dv-map-btn,:root[data-theme=signal] .dv-tool-btn,:root[data-theme=signal] .dv-width-btn{border-color:var(--border);background:var(--panel);color:var(--text)}:root[data-theme=signal] .dv-chip:hover:not(.active),:root[data-theme=signal] .dv-secondary:hover,:root[data-theme=signal] .dv-menu>summary:hover,:root[data-theme=signal] .dv-row-btn:hover,:root[data-theme=signal] .dv-map-btn:hover:not(.active),:root[data-theme=signal] .dv-tool-btn:hover:not(.active):not([disabled]),:root[data-theme=signal] .dv-width-btn:hover:not(.active):not([disabled]){border-color:var(--border-strong);background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .dv-chip.active,:root[data-theme=signal] .dv-map-btn.active,:root[data-theme=signal] .dv-tool-btn.active,:root[data-theme=signal] .dv-width-btn.active{border-color:var(--border);background:var(--panel-2);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .dv-primary,:root[data-theme=signal] .dv-map-btn-edit{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}:root[data-theme=signal] .dv-primary:hover,:root[data-theme=signal] .dv-map-btn-edit:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:var(--on-accent)}:root[data-theme=signal] .dv-danger{border-color:var(--pill-red-bg);background:var(--pill-red-bg);color:var(--danger-fg)}:root[data-theme=signal] .dv-danger:hover{border-color:var(--pill-red-bg);background:var(--pill-red-bg);color:var(--danger-hover)}:root[data-theme=signal] .dv-search,:root[data-theme=signal] .dv-form input,:root[data-theme=signal] .dv-form select,:root[data-theme=signal] .dv-form textarea,:root[data-theme=signal] .dv-instr,:root[data-theme=signal] .dv-step-text,:root[data-theme=signal] .dv-step-note{border-color:var(--border-strong);border-radius:var(--radius);background:var(--panel);min-height:32px;color:var(--text)}:root[data-theme=signal] .dv-search:focus,:root[data-theme=signal] .dv-form input:focus,:root[data-theme=signal] .dv-form select:focus,:root[data-theme=signal] .dv-form textarea:focus,:root[data-theme=signal] .dv-instr:focus,:root[data-theme=signal] .dv-step-text:focus,:root[data-theme=signal] .dv-step-note:focus{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:0}:root[data-theme=signal] .dv-menu-body,:root[data-theme=signal] .routepicker-list{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}:root[data-theme=signal] .dv-menu-body a,:root[data-theme=signal] .routepicker-opt{border-radius:0}:root[data-theme=signal] .dv-menu-body a:hover{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .routepicker-opt.active,:root[data-theme=signal] .routepicker-opt:hover{background:var(--accent-soft);color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .dv-table,:root[data-theme=signal] .dv-kv{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);font-variant-numeric:tabular-nums}:root[data-theme=signal] .dv-table th,:root[data-theme=signal] .dv-table td,:root[data-theme=signal] .dv-kv th,:root[data-theme=signal] .dv-kv td,:root[data-theme=signal] .dv-stat .v{font-variant-numeric:tabular-nums}:root[data-theme=signal] .dv-badge{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text)}:root[data-theme=signal] .dv-status,:root[data-theme=signal] .dv-cap,:root[data-theme=signal] .dv-variant,:root[data-theme=signal] .dv-step-tag,:root[data-theme=signal] .dv-badge-mini,:root[data-theme=signal] .dv-preview-unsaved,:root[data-theme=signal] .dv-cmp-chip{border-radius:var(--radius-sm)}:root[data-theme=signal] .dv-warn,:root[data-theme=signal] .dv-bulletin-preview .warn{border-radius:0 var(--radius) var(--radius) 0}:root[data-theme=signal] .dv-stat,:root[data-theme=signal] .dv-dir,:root[data-theme=signal] .dv-dir-edit,:root[data-theme=signal] .dv-version-card,:root[data-theme=signal] .dv-detail-empty,:root[data-theme=signal] .dv-compare-bar,:root[data-theme=signal] .dv-form,:root[data-theme=signal] .dv-map,:root[data-theme=signal] .dv-step-row,:root[data-theme=signal] .dv-bulletin-preview,:root[data-theme=signal] .dv-match,:root[data-theme=signal] .dv-incident:not(:empty),:root[data-theme=signal] .dv-marker-panel{border-radius:var(--radius);box-shadow:var(--edge-light)}:root[data-theme=signal] .dv-dir-radios,:root[data-theme=signal] .dv-via-list,:root[data-theme=signal] .dv-anchor-list{border-radius:var(--radius)}:root[data-theme=signal] .dv-detail-empty kbd,:root[data-theme=signal] .dv-map-status kbd{border-radius:var(--radius-sm)}:root[data-theme=signal] .dv-version{border-radius:0}:root[data-theme=signal] .dv-version.sel,:root[data-theme=signal] .dv-via-row.sel,:root[data-theme=signal] .dv-anchor-row.sel,:root[data-theme=signal] .dv-step-row.sel{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .dv-rail-row,:root[data-theme=signal] .dv-map-status,:root[data-theme=signal] .dv-map-fit,:root[data-theme=signal] .dv-basemap-tile,:root[data-theme=signal] .dv-basemap-thumb{border-radius:var(--radius)}:root[data-theme=signal] .dv-cmp-swatch,:root[data-theme=signal] .dv-width-bar{border-radius:var(--radius-sm)}:root[data-theme=signal] .dv-pick-cell{box-shadow:inset 2px 0 0 var(--c,transparent)}:root[data-theme=signal] .dv-anchor-dot,:root[data-theme=signal] .dv-note-swatch{border-radius:50%}:root[data-theme=signal] .dv-anchor-dot{border-color:var(--panel)}:root[data-theme=signal] .dv-note-swatch.active{outline:2px solid var(--focus);outline-offset:1px;box-shadow:none}:root[data-theme=signal] .dv-step-n{border-radius:var(--radius-sm)}:root[data-theme=signal] .dv-note-edit,:root[data-theme=signal] .dv-swatch-grid,:root[data-theme=signal] .dv-text-caret{border-radius:var(--radius);box-shadow:var(--shadow)}:root[data-theme=signal] .dv-note-hint{border-radius:var(--radius)}@media (width>=721px){:root[data-theme=signal] body.dock-open .app-banners{right:calc(var(--right-inset) + var(--dock-w))}}:root[data-theme=signal] body.timetable-mode .tt-view,:root[data-theme=signal] body.ops-mode .ops-view,:root[data-theme=signal] body.diversions-mode .dv-view{top:calc(var(--topbar) + var(--banners-h,0px))}:root[data-theme=signal] .info-box{border-radius:var(--radius)}:root[data-theme=signal] .tt-play:disabled{border-color:var(--border);background:var(--panel);color:var(--disabled-fg);cursor:default}.color-mode-toggle{flex:none}.keys-card{background:var(--panel);border-radius:var(--radius);width:100%;max-width:580px;max-height:min(80vh,660px);box-shadow:var(--shadow);flex-direction:column;margin:auto;padding:20px 0 14px;display:flex;position:relative}.keys-head{padding:0 24px}.keys-card .card-title{margin:0 0 4px;padding-right:0;font-size:18px}.keys-sub{color:var(--muted);margin:0 0 12px;font-size:12.5px;line-height:1.5}.keys-body{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex:auto;padding:4px 24px 10px;overflow-y:auto}.keys-body:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.keys-table{border-collapse:collapse;width:100%}.keys-table th,.keys-table td{text-align:left;color:var(--text);vertical-align:baseline;padding:8px 0;font-size:12.5px;font-weight:400}.keys-table th{width:52px}.keys-table td+td{padding-left:10px}.keys-table tr+tr th,.keys-table tr+tr td{border-top:1px solid var(--border)}.keys-kbd{text-align:center;min-width:13px;font:600 11px/1.4 var(--mono,ui-monospace, monospace);border:1px solid var(--border);background:var(--panel);color:var(--text);border-bottom-width:2px;border-radius:4px;padding:3px 7px;display:inline-block}.keys-when{color:var(--muted);font-size:11.5px}.keys-group{color:var(--text);letter-spacing:.02em;margin:20px 0 4px;font-size:12.5px;font-weight:700}.keys-group+.keys-sub{margin-bottom:6px}.keys-off th,.keys-off td,.keys-off .keys-kbd{color:var(--muted);background:var(--panel-2)}.keys-note{color:var(--muted);margin:12px 0 0;font-size:11.5px;line-height:1.55}.keys-actions{justify-content:flex-end;gap:8px;padding:12px 24px 0;display:flex}:root[data-theme=signal] .keys-card{border:1px solid var(--border)}:root[data-theme=signal] .keys-body{scrollbar-color:var(--scroll-thumb) var(--panel-2)}:root[data-theme=signal] .keys-kbd{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text);border-bottom-width:1px}:root[data-theme=signal] .keys-off th,:root[data-theme=signal] .keys-off td{color:var(--muted);background:0 0}:root[data-theme=signal] .keys-off .keys-kbd{color:var(--muted);background:var(--panel)}.overlay-info-bar-head{align-items:center;gap:10px;min-width:0;display:flex}.overlay-info-min-btn{margin-left:0}.overlay-info-summary{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}body.overlay-info-min .overlay-info-block{display:none}:root[data-theme=signal] .overlay-info-bar-head{gap:8px}.follow-btn{border:1px solid var(--border);background:var(--panel);color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;padding:4px 11px;font-size:11px;font-weight:700}.follow-btn:hover{color:var(--text);border-color:var(--muted)}.follow-btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.follow-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root[data-theme=signal] .follow-btn{border-radius:var(--radius);background:var(--panel);border:1px solid var(--border);min-height:28px;color:var(--muted);padding:0 10px;font-size:12px;font-weight:600}:root[data-theme=signal] .follow-btn:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .follow-btn:active{background:var(--panel-pressed)}:root[data-theme=signal] .follow-btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}:root[data-theme=signal] .follow-btn:focus-visible{outline:2px solid var(--focus);outline-offset:0}.row-title-live{align-items:baseline;gap:6px;display:flex}.row-title-live>.row-title-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}#route-list .row:has(>.row-main>.row-title-live)>.row-main{flex:1}.route-live{background:var(--panel-2);color:var(--text);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;margin-left:auto;padding:0 6px;font-size:10px;font-weight:700}:root[data-theme=signal] .route-live{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text)}:root[data-theme=signal] .wk-view{--wk-r-sm:var(--radius);--wk-r-md:var(--radius);--wk-r-lg:var(--radius);--wk-r-pill:var(--radius-sm);--wk-e0:0 0 0 1px var(--border);--wk-e1:0 0 transparent;--wk-e2:0 0 transparent;--wk-ring:2px solid var(--focus)}:root[data-theme=signal] .wk-daterange input{border-radius:var(--radius)}:root[data-theme=signal] .wkv-bar,:root[data-theme=signal] .wkv-period{border-radius:var(--radius-sm)}:root[data-theme=signal] .wkv-group{border-radius:0 var(--radius) var(--radius) 0}:root[data-theme=signal] .wk-hour i{border-radius:0}:root[data-theme=signal] .wk-chip:hover,:root[data-theme=signal] .wk-secondary:hover,:root[data-theme=signal] .wk-move:hover,:root[data-theme=signal] .wk-map-base:hover,:root[data-theme=signal] .wkv-view:hover,:root[data-theme=signal] .wkv-zoom:hover,:root[data-theme=signal] .wk-row-btn:hover{background:var(--panel-hover);color:var(--text);border-color:var(--border-strong)}:root[data-theme=signal] .wk-close{background:var(--panel);color:var(--muted);border-color:#0000;border-radius:0}:root[data-theme=signal] .wk-close:hover{background:var(--panel-hover);color:var(--text);border-color:#0000}:root[data-theme=signal] .wk-chip.active,:root[data-theme=signal] .wkv-view.active,:root[data-theme=signal] .wk-map-base.active,:root[data-theme=signal] .wkv-zoom.active{background:var(--panel-2);color:var(--text);border-color:var(--border);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=signal] .wk-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:root[data-theme=signal] .wk-primary:hover{background:var(--accent-hover);color:var(--on-accent);border-color:var(--accent-hover)}:root[data-theme=signal] .wk-primary[disabled]:hover{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:root[data-theme=signal] .wk-table tbody tr:not(.sel):hover,:root[data-theme=signal] .wkv-row:not(.sel):hover,:root[data-theme=signal] .wk-geo-hit:hover,:root[data-theme=signal] .wk-seed-hit:hover,:root[data-theme=signal] .wkv-row:not(.sel):hover .wkv-label,:root[data-theme=signal] .wk-closures li[data-hl-kind]:hover,:root[data-theme=signal] .wk-closures li[data-hl-kind]:focus-within,:root[data-theme=signal] .wk-impact-table tbody tr[data-hl-kind]:hover,:root[data-theme=signal] .wk-impact-table tbody tr[data-hl-kind]:focus-within,:root[data-theme=signal] .wk-stop-list li[data-hl-kind]:hover,:root[data-theme=signal] .wk-stop-list li[data-hl-kind]:focus-within{background:var(--panel-hover);color:var(--text)}:root[data-theme=signal] .wk-table tbody tr.sel td:first-child{box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .wk-closures li[data-hl-kind]:hover,:root[data-theme=signal] .wk-closures li[data-hl-kind]:focus-within,:root[data-theme=signal] .wk-impact-table tbody tr[data-hl-kind]:hover td:first-child,:root[data-theme=signal] .wk-impact-table tbody tr[data-hl-kind]:focus-within td:first-child,:root[data-theme=signal] .wk-stop-list li[data-hl-kind]:hover,:root[data-theme=signal] .wk-stop-list li[data-hl-kind]:focus-within{box-shadow:inset 2px 0 0 var(--border-strong)}:root[data-theme=signal] .wk-selection.dirty{box-shadow:inset 2px 0 0 var(--accent)}:root[data-theme=signal] .wkv-card:not(.sel):hover{background:var(--panel-hover);border-color:var(--border-strong);transform:none}:root[data-theme=signal] .wkv-card.sel:hover{transform:none}:root[data-theme=signal] .wkv-card.sel{background:var(--accent-soft);border-color:var(--accent)}:root[data-theme=signal] #wk-preview-foot:focus-visible,:root[data-theme=signal] .wk-preview-head h2:focus-visible,:root[data-theme=signal] .wk-table tbody tr:focus-visible,:root[data-theme=signal] .wk-closures li:focus-visible,:root[data-theme=signal] .wk-geo-hit:focus-visible,:root[data-theme=signal] .wk-seed-hit:focus-visible,:root[data-theme=signal] .wkv-row:focus-visible,:root[data-theme=signal] .wkg-pane-title:focus-visible{outline-color:var(--focus)}:root[data-theme=signal][data-color-mode=dark] .wk-status.received{color:#abb6c7;background:#2e3846;border-color:#8f9fb4}:root[data-theme=signal][data-color-mode=dark] .wk-status.assessing{color:#9fb5e8;background:#2b384f;border-color:#809de1}:root[data-theme=signal][data-color-mode=dark] .wk-status.negotiating{color:#d4ad76;background:#3b362e;border-color:#c59249}:root[data-theme=signal][data-color-mode=dark] .wk-status.confirmed{color:#82b59d;background:#223839;border-color:#599d7d}:root[data-theme=signal][data-color-mode=dark] .wk-status.planned{color:#78abb9;background:#1f3541;border-color:#4b8fa2}:root[data-theme=signal][data-color-mode=dark] .wk-status.issued{color:#bea0e1;background:#34324d;border-color:#a881d7}:root[data-theme=signal][data-color-mode=dark] .wk-status.cancelled,:root[data-theme=signal][data-color-mode=dark] .wk-status.withdrawn{color:#b3b7be;background:#313943;border-color:#9b9fa9}:root[data-theme=signal][data-color-mode=dark] .wk-status.in_force{color:#ed958f;background:#422f35;border-color:#e7726a}:root[data-theme=signal][data-color-mode=dark] .wk-status.completed{color:#afb8c3;background:#303944;border-color:#95a0af}:root[data-theme=signal] .wk-status.in_force:not(.wkv-bar){box-shadow:none}:root[data-theme=signal][data-color-mode=dark] .wkv-card.wkv-dim .wk-status{background:var(--panel)}:root[data-theme=signal] .wk-warn{background:var(--pill-amber-bg);color:var(--pill-amber-fg);box-shadow:inset 2px 0 0 var(--pill-amber-fg), var(--wk-e0)}:root[data-theme=signal] .wk-tag.on{background:var(--pill-green-bg);color:var(--pill-green-fg);border-color:var(--pill-green-fg)}:root[data-theme=signal][data-color-mode=dark] .wk-view{background:radial-gradient(140% 70% at 50% -20%, color-mix(in srgb, var(--brand-sky) 10%, var(--panel-2)) 0%, color-mix(in srgb, var(--brand) 6%, var(--panel-2)) 40%, var(--panel-2) 76%), var(--panel-2)}.maplibregl-map{-webkit-tap-highlight-color:#0000;font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;position:relative;overflow:hidden}.maplibregl-canvas{position:absolute;top:0;left:0}.maplibregl-map:fullscreen{width:100%;height:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;z-index:2;position:absolute}.maplibregl-ctrl-top-left{top:0;left:0}.maplibregl-ctrl-top-right{top:0;right:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px buttontext}}.maplibregl-ctrl-group button{box-sizing:border-box;cursor:pointer;background-color:#0000;border:0;outline:none;width:29px;height:29px;padding:0;display:block}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;width:100%;height:100%;display:block}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:#0000}.maplibregl-ctrl-group button+button{border-top:1px solid buttontext}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:2s linear infinite maplibregl-spin}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;width:88px;height:23px;margin:0 0 -4px -4px;display:block;overflow:hidden}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:#0000;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{box-sizing:content-box;color:#000;background-color:#fff;border-radius:12px;min-height:20px;margin:10px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{visibility:visible;padding:2px 28px 2px 8px}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{box-sizing:border-box;cursor:pointer;background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;outline:none;width:24px;height:24px;display:none;position:absolute;top:0;right:0}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;right:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;left:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{box-sizing:border-box;color:#333;background-color:#ffffffbf;border:2px solid #333;border-top:#333;padding:0 5px;font-size:10px}.maplibregl-popup{pointer-events:none;will-change:transform;display:flex;position:absolute;top:0;left:0}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{z-index:1;border:10px solid #0000;width:0;height:0}.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;align-self:center}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-top:none;border-bottom-color:#fff;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;align-self:center}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-left:none;align-self:flex-start}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:#fff;border-bottom:none;border-right:none;align-self:flex-end}.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-left:none;border-right-color:#fff;align-self:center}.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#fff;border-right:none;align-self:center}.maplibregl-popup-close-button{cursor:pointer;background-color:#0000;border:0;border-radius:0 3px 0 0;position:absolute;top:0;right:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{pointer-events:auto;background:#fff;border-radius:3px;padding:15px 10px;position:relative;box-shadow:0 1px 2px #0000001a}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{will-change:transform;transition:opacity .2s;position:absolute;top:0;left:0}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;width:15px;height:15px}.maplibregl-user-location-dot:before{content:"";animation:2s infinite maplibregl-user-location-dot-pulse;position:absolute}.maplibregl-user-location-dot:after{box-sizing:border-box;content:"";border:2px solid #fff;border-radius:50%;width:19px;height:19px;position:absolute;top:-2px;left:-2px;box-shadow:0 0 3px #00000059}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;width:1px;height:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{opacity:.5;background:#fff;border:2px dotted #202020;width:0;height:0;position:absolute;top:0;left:0}.maplibregl-cooperative-gesture-screen{color:#fff;opacity:0;pointer-events:none;z-index:99999;background:#0006;justify-content:center;align-items:center;padding:1rem;font-size:1.4em;line-height:1.2;transition:opacity 1s 1s;display:flex;position:absolute;inset:0}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity 50ms}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width<=480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{z-index:99999;width:100%!important;height:100%!important;position:fixed!important;top:0!important;left:0!important}
