.app{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bl-bg:#0b0d10;--bl-card:#14181d;--bl-text:#e8ecf1;--bl-muted:#8a94a3;--bl-green:#3ddc84;--bl-amber:#ffb020;--bl-red:#ff5d5d;--bl-brown:#62361b;--bl-purple:#522398;--bl-line:#292e35;--bl-go-bg:#2a2113;--bl-font:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bl-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;background:var(--bl-bg);width:100%;max-width:390px;min-height:100dvh;color:var(--bl-text);font-family:var(--bl-font);margin:auto;position:relative}.app,.app *{box-sizing:border-box}.app button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.app button:disabled{cursor:default}.app button:focus-visible,.app a:focus-visible{outline:2px solid var(--bl-amber);outline-offset:3px}.app svg{width:18px;height:18px;display:block}.app .mono{font-family:var(--bl-mono);font-variant-numeric:tabular-nums}.app .brand-mark{background:var(--bl-brown);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-weight:750;display:inline-grid}.app .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app .app-shell{flex-direction:column;height:100%;padding:22px 16px 12px;display:flex;overflow-y:auto}.app .app-header{flex-shrink:0}.app .app-topbar{justify-content:space-between;align-items:center;min-height:30px;display:flex}.app .app-brand{letter-spacing:-.4px;align-items:center;gap:8px;font-size:15px;font-weight:650;display:flex}.app .app-brand .brand-mark{width:25px;height:25px;font-size:14px}.app .current-clock{color:var(--bl-muted);font-size:12px}.app .journey{padding:22px 0 18px}.app .profile-switch{min-height:44px;color:var(--bl-text);letter-spacing:-.7px;background:0 0;border:0;align-items:center;gap:12px;padding:0;font-size:25px;font-weight:620;display:flex}.app .profile-switch svg{color:var(--bl-muted);width:18px}.app .station-line{color:var(--bl-muted);align-items:center;gap:6px;margin-top:3px;font-size:12px;display:flex}.app .station-line svg{width:13px;height:13px}.app .board-topline{border-top:1px solid var(--bl-line);letter-spacing:1.5px;justify-content:space-between;align-items:center;padding:12px 0;font-size:10px;display:flex}.app .freshness{letter-spacing:0;color:var(--bl-muted);align-items:center;gap:5px;font-size:10px;display:flex}.app .status-dot{background:var(--bl-green);border-radius:50%;width:5px;height:5px;display:inline-block}.app .freshness.problem{color:var(--bl-amber)}.app .freshness.problem .status-dot{background:var(--bl-amber)}.app .board{flex-direction:column;gap:9px;display:flex}.app .board.stale{opacity:.4}.app .train-row{background:var(--bl-card);border:1px solid #222830;border-left:2px solid #3ddc8466;border-radius:12px;padding:14px 11px 10px 13px}.app .row-main{grid-template-columns:87px minmax(0,1fr) 44px;align-items:center;column-gap:8px;display:grid}.app .count-label{letter-spacing:1.1px;color:var(--bl-muted);margin-bottom:5px;font-size:9px;font-weight:600;display:block}.app .count-value{letter-spacing:-2.3px;font-size:37px;font-weight:650;line-height:1.05;display:block}.app .window-label{color:var(--bl-muted);margin-bottom:5px;font-size:10px}.app .window-time{letter-spacing:-.5px;white-space:nowrap;font-size:15px}.app .arrival{color:var(--bl-muted);white-space:nowrap;margin-top:7px;font-size:11px}.app .arrival .mono{color:#bdc4ce}.app .bell{color:#b0b9c6;background:#20252c;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.app .bell:disabled{color:#747e8a;background:#1d2229}.app .row-footer{border-top:1px solid #ffffff09;justify-content:space-between;align-items:center;gap:5px;min-height:27px;margin-top:12px;padding-top:9px;display:flex}.app .route-gap{white-space:nowrap;align-items:center;gap:9px;display:flex}.app .route-chip{background:var(--bl-brown);color:#fff;border-radius:4px;place-items:center;min-width:31px;height:19px;padding:0 6px;font-size:10px;font-weight:650;display:inline-grid}.app .route-chip.purple{background:var(--bl-purple)}.app .gap{color:var(--bl-muted);font-size:10px}.app .gap .mono{color:#bac3ce}.app .row-flags{align-items:center;gap:5px;display:flex}.app .flag{letter-spacing:.5px;color:var(--bl-muted);background:#ffffff0a;border-radius:4px;padding:3px 5px;font-size:8px;font-weight:650}.app .flag.delayed{color:var(--bl-red);background:#ff5d5d17}.app .flag.jumpy{color:#dfab67;background:#ffb02012}.app .train-row.is-go{background:var(--bl-go-bg);border-color:#77521c;border-left-color:var(--bl-amber)}.app .is-go .count-label,.app .is-go .count-value{color:var(--bl-amber)}.app .is-go .count-value{letter-spacing:-1px;animation:1.2s ease-in-out infinite go-pulse}.app .is-go .bell{color:var(--bl-amber);background:#3a2c15}.app .is-go .bell:disabled{color:#747e8a;background:#1d2229}.app .walk-limit{color:var(--bl-muted);margin:4px 0 8px;font-size:.6875rem}.app .train-row.is-scheduled{opacity:.5;border-left-color:var(--bl-muted)}.app .train-row.is-scheduled.is-go{background:var(--bl-card);border-color:#3e444d}.app .is-scheduled.is-go .count-label,.app .is-scheduled.is-go .count-value{color:var(--bl-text);animation:none}.app .board-help{color:var(--bl-muted);text-align:center;margin:13px 0 0;font-size:10px}.app .bottom-area{margin-top:auto;padding-top:15px}.app .icon-button{width:44px;height:44px;color:var(--bl-muted);background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;display:grid}.app .footer{border-top:1px solid var(--bl-line);padding-top:9px}.app .footer-controls{justify-content:space-between;align-items:center;gap:5px;display:flex}.app .walk-controls{align-items:center;gap:3px;display:flex}.app .walk-label{color:var(--bl-muted);align-items:center;gap:6px;margin-right:4px;font-size:11px;display:flex}.app .walk-label svg{width:15px;height:15px}.app .walk-label .mono{color:var(--bl-text);margin-left:2px;font-size:13px}.app .stepper{width:44px;height:44px;color:var(--bl-text);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.app .stepper svg{width:15px;height:15px}.app .stepper:disabled{opacity:.35}.app .trips-button{color:#c0c8d3;background:0 0;border:0;align-items:center;gap:7px;min-height:44px;padding:0 1px 0 10px;font-size:12px;display:flex}.app .trips-button svg{width:14px;height:14px}.app .buffer-note{color:var(--bl-muted);justify-content:space-between;padding:3px 0 1px;font-size:10px;display:flex}.app .buffer-note .buffer-value{color:#aab3c0}.app .banner{color:#f4c46f;background:#292214;border-radius:8px;align-items:flex-start;gap:9px;margin:0 0 10px;padding:10px 11px;font-size:11px;line-height:1.5;display:flex}.app .banner>svg{flex-shrink:0;width:16px;height:16px;margin-top:2px}.app .banner .banner-copy{flex:1}.app .banner strong{font-weight:600;display:block}.app .banner button{color:inherit;background:0 0;border:0;min-width:44px;min-height:44px;margin:-5px -2px -5px 0;padding:0 3px;font-size:11px;text-decoration:underline}.app .empty-state{text-align:center;padding:72px 14px}.app .empty-state>svg{width:35px;height:35px;color:var(--bl-muted);margin:0 auto 20px}.app .empty-state h2{letter-spacing:-.5px;font-size:18px;font-weight:550}.app .empty-state p{color:var(--bl-muted);font-size:12px;line-height:1.7}.app .secondary-button,.app .primary-button{border-radius:8px;min-height:44px;padding:11px 15px;font-size:12px;font-weight:550}.app .secondary-button{color:var(--bl-text);background:#20262e;border:1px solid #353d48}.app .primary-button{background:var(--bl-amber);color:#201506;border:1px solid #0000}.app .full-width{width:100%}.app .skeleton{background:var(--bl-card);border:1px solid #242a31;border-radius:12px;height:122px;padding:19px}.app .skeleton-line{background:#252b33;border-radius:3px;width:60%;height:12px;margin:8px 0}.app .skeleton-line.large{width:82%;height:30px}.app .sheet-backdrop{z-index:10;background:#000b;align-items:flex-end;display:flex;position:absolute;inset:0}.app .sheet{background:#171b21;border:1px solid #333a44;border-bottom:0;border-radius:22px 22px 0 0;width:100%;max-height:calc(100% - 35px);padding:9px 20px 26px;overflow-y:auto;box-shadow:0 -12px 44px #0005}.app .sheet-handle{background:#414852;border-radius:3px;width:30px;height:4px;margin:0 auto 9px}.app .sheet-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.app .sheet h2{letter-spacing:-.7px;margin:12px 0;font-size:23px;font-weight:600}.app .sheet p{color:#a7b1bf;margin:8px 0 17px;font-size:12px;line-height:1.7}.app .sheet .sheet-kicker{color:var(--bl-amber);letter-spacing:1.1px;text-transform:uppercase;font-size:10px}.app .sheet-journey{color:var(--bl-muted);margin:0 0 20px;font-size:12px}.app .app-shell{height:auto;min-height:100dvh;padding-top:max(22px, env(safe-area-inset-top));padding-bottom:max(12px, env(safe-area-inset-bottom));overflow:visible}.app .profile-switch{font-size:1.5625rem}.app .station-line{flex-wrap:wrap}.app .board-topline{align-items:flex-start;gap:8px}.app .freshness{text-align:right;line-height:1.5;display:block}.app .route-age{display:block}.app .window-time{white-space:normal;overflow-wrap:anywhere;font-size:.9375rem}.app .count-value{font-size:2.3125rem}.app .arrival{white-space:normal;font-size:.6875rem}.app .row-footer,.app .row-flags,.app .route-gap{flex-wrap:wrap}.app .is-go .count-value{animation:none}.app .train-row.is-scheduled,.app .board.stale{opacity:1}.app .train-row.is-degraded{border-left-color:var(--bl-muted)}.app .row-reason{color:var(--bl-muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:.625rem;line-height:1.4}.app .board-help{font-size:.6875rem;line-height:1.5;display:block}.app .poll-note{color:var(--bl-muted);text-align:center;margin:8px 0;font-size:.625rem}.app .poll-note a{color:inherit;align-items:center;min-height:44px;display:inline-flex}.app .empty-state{padding:44px 10px}.app .empty-state h2{font-size:1.125rem}.app .empty-state p,.app .sheet p{font-size:.8125rem}.app .banner{font-size:.6875rem}.app .sheet-backdrop{max-width:390px;margin:auto;position:fixed}.app .sheet{max-height:calc(100dvh - 35px);padding-bottom:max(26px, env(safe-area-inset-bottom))}.app .sheet h2{font-size:1.4375rem}.app .buffer-note{flex-wrap:wrap;gap:4px}@media (height<=750px){.app .app-shell{padding-top:max(10px, env(safe-area-inset-top))}.app .journey{padding:9px 0 11px}.app .profile-switch{font-size:1.4375rem}.app .board-topline{padding:9px 0}.app .board{gap:6px}.app .train-row{padding:9px 10px 7px 11px}.app .count-value{font-size:2.0625rem}.app .row-footer{min-height:23px;margin-top:7px;padding-top:5px}.app .arrival{margin-top:5px}.app .bottom-area{padding-top:9px}.app .footer{padding-top:4px}}@media (width<=360px){.app .app-shell{padding-left:12px;padding-right:12px}.app .row-main{grid-template-columns:72px minmax(0,1fr) 44px;column-gap:5px}.app .count-value{font-size:2rem}.app .window-time{font-size:.8125rem}.app .route-gap{gap:6px}.app .walk-label{gap:4px;font-size:.625rem}}@media (prefers-reduced-motion:reduce){.app *{transition:none!important;animation:none!important}}@media (width<=19rem){.app .row-main{grid-template-columns:minmax(0,1fr) 44px;row-gap:10px}.app .countdown{grid-area:1/1}.app .timing{grid-area:2/1/auto/-1}.app .bell{grid-area:1/2}.app .footer-controls,.app .walk-controls{flex-wrap:wrap}.app .count-value{overflow-wrap:anywhere}}.public-source{border-color:#ffb020;line-height:1.5}.public-source a{color:var(--text,#e8ecf1);min-height:44px;padding-top:10px;text-decoration:underline;display:inline-block}.train-row[data-state=approximate] .count-value{letter-spacing:-1px;font-size:24px}.flag.approximate{color:#ffb020}
