body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #428d73}button{color:inherit}.transit-app{color:var(--ink);flex-direction:column;height:100dvh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.app-header{border-bottom:1px solid var(--line);background:#fff;flex-shrink:0;align-items:center;gap:30px;height:88px;padding:0 32px;display:flex}.brand{color:var(--ink);letter-spacing:-1px;align-items:center;gap:12px;font-size:23px;font-weight:750;text-decoration:none;display:flex}.brand small{letter-spacing:2.3px;color:#768174;margin-top:5px;font-size:8px;font-weight:650;display:block}.connection-status{border:1px solid var(--line);border-radius:20px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:600;display:flex}.connection-status>span,.status-dot{background:#268361;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.connection-status.offline>span{background:#aa7924}.workspace{flex:1;grid-template-rows:88px minmax(0,1fr);grid-template-columns:390px minmax(0,1fr);min-height:0;display:grid}.search-bar{border-right:1px solid var(--line);border-bottom:1px solid var(--line);z-index:3;background:#fff;grid-area:1/1;align-items:center;gap:8px;padding:20px;display:flex}.search-input-wrap{color:#859185;background:#fafbf8;border:1px solid #dce2d8;border-radius:9px;flex:1;align-items:center;gap:9px;min-width:0;height:45px;padding:0 10px;display:flex}.search-input-wrap svg{flex-shrink:0}.search-input-wrap input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;font-size:13px;outline:0!important}.search-input-wrap:focus-within{border-color:var(--green);box-shadow:0 0 0 2px #176b521a}.search-input-wrap input::-webkit-search-cancel-button{display:none}.clear-search{background:0 0;border:0;min-width:24px;padding:0;font-size:22px}.explorer{border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#dce1d8 transparent;background:#fff;grid-area:2/1;padding:26px 24px;scroll-margin-top:90px;overflow-y:auto}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin:24px 0 12px;display:flex}.section-heading h1{letter-spacing:-.7px;margin:0;font-size:23px}.section-heading h2{letter-spacing:.1px;margin:0;font-size:12px;font-weight:700}.section-heading>span{color:#7c877a;font-size:11px}.section-description{color:#7b837a;margin:-2px 0 20px;font-size:12px;line-height:1.65}.station-list{flex-direction:column;display:flex}.station-card{text-align:left;background:0 0;border:0;border-bottom:1px solid #e9ece5;align-items:center;gap:12px;width:100%;min-height:88px;padding:15px 0;display:flex}.station-card:first-child{padding-top:5px}.station-card-content{flex:1;min-width:0}.station-card-title{letter-spacing:-.3px;font-size:15px;font-weight:650;display:block}.station-card-meta{color:#828a80;margin:4px 0 8px;font-size:10px;display:block}.badges{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.route-badge{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-family:Arial,sans-serif;font-size:11px;font-weight:750;line-height:1;display:inline-flex}.route-badge.path-badge{border-radius:4px;width:auto;min-width:31px;padding:0 4px;font-size:8px}.card-arrow{color:#77866d;border:1px solid #e5e9df;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.text-button{color:var(--green);text-align:left;background:0 0;border:0;min-height:36px;padding:9px 0;font-size:11px}.text-button:hover{text-decoration:underline}.empty-state{padding:30px 5px;font-size:14px;line-height:1.7}.empty-state p{color:var(--muted)}.map-section{background:#fafbf7;flex-direction:column;grid-area:1/2/3;min-width:0;min-height:0;padding:0 24px 12px;display:flex}.map-canvas{background:#e5edef;border:1px solid #d5dfd7;border-radius:14px;flex:1;min-height:220px;position:relative;overflow:hidden}.map-canvas>svg{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.map-canvas.dragging>svg{cursor:grabbing}.panel-eyebrow{letter-spacing:1.5px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:9px;display:flex}.panel-eyebrow button{letter-spacing:0}.place-heading{align-items:center;gap:10px;margin:10px 0 12px;display:flex}.place-heading h1{letter-spacing:-1px;flex:1;margin:0;font-size:28px;line-height:1.1}.icon-button{color:#738269;background:#fff;border:1px solid #dce3d8;border-radius:8px;place-items:center;min-width:44px;height:44px;font-size:26px;display:grid}.connection-note{color:#7e8679;margin:18px 0;font-size:11px;line-height:1.7}.feed-status{color:#497360;align-items:center;gap:7px;margin:17px 0 6px;font-size:10px;display:flex}.feed-status .text-button{margin-left:auto}.feed-status.is-stale .status-dot{background:#b89244}.stale-note,.location-message,.offline-message{color:#877342;background:#fffbef;border:1px solid #eee0bb;border-radius:8px;padding:12px;font-size:12px;line-height:1.65}.segmented{background:#f0f3eb;border-radius:8px;gap:3px;margin:10px 0 18px;padding:4px;display:flex}.segmented button{white-space:nowrap;background:0 0;border:0;border-radius:5px;flex:1;min-height:38px;padding:7px 3px;font-size:10px}.segmented button[aria-pressed=true]{color:#285c44;background:#fff;font-weight:700;box-shadow:0 1px 3px #233e3414}.platform{margin:20px 0}.platform h2{border-bottom:2px solid #355342;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:8px 0;font-size:12px;display:flex}.platform h2>span:not(.route-badge){color:#86917f;font-size:10px;font-weight:500}.departure-row{border-bottom:1px solid #e9ece5;align-items:center;gap:9px;padding:13px 0;display:flex}.departure-row .route-badge{width:24px;height:24px;font-size:14px}.departure-destination{flex:1;min-width:0}.departure-destination strong{font-size:12px;font-weight:650;line-height:1.4;display:block}.departure-destination small{color:#869080;margin-top:3px;font-size:9px;line-height:1.5;display:block}.departure-times{text-align:right;white-space:nowrap}.departure-times>strong{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:18px}.departure-times>small{color:#839078;margin-top:5px;font-size:9px;display:block}.empty-departures{color:#85917c;font-size:11px;line-height:1.6}.path-line{border-radius:50%;flex-shrink:0;width:12px;height:12px}.path-platform h2{border-color:#1559a6;justify-content:flex-start}.back-to-stations{margin-top:-8px}@media (width>=1450px){.workspace{grid-template-columns:420px minmax(0,1fr)}.explorer{padding:30px}.search-bar{padding:20px 25px}.map-section{padding-left:32px;padding-right:32px}}@media (width<=1050px){.workspace{grid-template-columns:355px minmax(0,1fr)}.map-section{padding-left:16px;padding-right:16px}.search-bar{padding:16px 14px}.explorer{padding:22px 20px}}@media (width<=760px){.transit-app{height:auto;min-height:100dvh}.app-header{gap:12px;height:69px;padding:0 17px}.brand{gap:10px;font-size:21px}.brand small{letter-spacing:1.8px;margin-top:4px;font-size:7px}.connection-status{gap:6px;margin-left:auto;padding:7px 9px;font-size:9px}.workspace{flex-direction:column;display:flex}.search-bar{border-right:0;order:0;gap:8px;padding:12px 15px;position:sticky;top:0}.search-input-wrap{height:46px}.search-input-wrap input{letter-spacing:-.3px;font-size:16px}.search-input-wrap input::placeholder{font-size:13px}.map-section{order:1;padding:0 12px 8px}.map-canvas{border-radius:11px;flex:none;height:36dvh;min-height:270px;max-height:390px}.explorer{border-right:0;border-top:1px solid var(--line);order:2;padding:22px 22px 36px;scroll-margin-top:70px;overflow:visible}.section-heading{margin-top:21px}.station-card{min-height:92px;padding:16px 0}.station-card-title{font-size:16px}.station-card-meta{font-size:11px}.route-badge{width:20px;height:20px;font-size:12px}.station-card .badges{gap:4px}.card-arrow{width:32px;height:32px}.text-button{min-height:44px;font-size:12px}.is-searching .map-section{display:none}.is-searching .explorer{border-top:0}.place-heading h1{font-size:30px}.connection-note{font-size:12px}.feed-status{font-size:11px}.segmented button{min-height:42px;font-size:11px}.platform h2{padding:9px 0;font-size:13px}.departure-destination strong{font-size:14px}.departure-destination small{font-size:10px}.departure-row{padding:15px 0}.departure-times>strong{font-size:21px}.departure-times>small{font-size:10px}.empty-departures{font-size:12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.boards-link{color:var(--ink);white-space:nowrap;padding:12px 0;font-size:12px;font-weight:600;text-decoration:none}.boards-link:hover{text-decoration:underline}@media (width<=760px){.boards-link{margin-left:auto;font-size:11px}.connection-status{margin-left:0}.app-header{gap:14px}}.departure-line-filters{flex-wrap:wrap;gap:3px;margin:12px 0;display:flex}.route-filter-button{background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;min-width:36px;min-height:42px;padding:5px;font-size:11px;display:grid}.route-filter-button .route-badge{width:22px;height:22px;font-size:13px}.route-filter-button .path-badge{width:auto;font-size:8px}.transit-app .app-header{gap:16px;height:48px;padding:0 22px}.transit-app .brand{letter-spacing:-.5px;font-size:18px}.transit-app .boards-link{margin-left:auto}.transit-app .workspace{grid-template-rows:72px minmax(0,1fr)}.transit-app .search-bar{padding:12px 18px}.transit-app .explorer{padding-top:6px}.transit-app .map-section{background:#f6f8f3;padding:0 20px 6px}.diagram-toolbar{flex-shrink:0;align-items:center;gap:8px;height:48px;display:flex}.diagram-home{color:#59705e;background:0 0;border:0;min-height:36px;margin-left:auto;font-size:11px}.schematic-canvas{background:#e6edf0;border-color:#dae3df;border-radius:12px;justify-content:center;align-items:center;min-height:260px;display:flex;overflow:hidden}.schematic-canvas>svg{touch-action:auto;cursor:default;-webkit-user-select:none;user-select:none;width:100%;max-width:640px;height:100%;position:static}.diagram-land{fill:#fcfbf5;stroke:none}.diagram-line{pointer-events:none}.diagram-stop{cursor:pointer;outline:none}.diagram-station-label{letter-spacing:-.25px;fill:#252b29;paint-order:stroke;stroke:#fcfbf5;stroke-width:3.5px;stroke-linejoin:round;font-size:11.5px;font-weight:650}.diagram-stop:hover .diagram-station-dot,.diagram-stop:focus-visible .diagram-station-dot{stroke:#16765d;stroke-width:4px}.diagram-stop:focus-visible text{fill:#16765d}.diagram-area-link{cursor:pointer;outline:none}.diagram-area-link rect{fill:#0000;stroke:none}.diagram-area-link text{fill:#bbb;font-size:10px;font-weight:600}.diagram-area-link:hover text,.diagram-area-link:focus-visible text{fill:#fff;text-decoration:underline}.diagram-line-picker{scrollbar-width:none;flex-shrink:0;gap:2px;padding:4px 0 0;display:flex;overflow-x:auto}.diagram-line-picker button{background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;min-width:32px;height:36px;padding:4px;display:grid}.diagram-line-picker .route-badge{width:21px;height:21px;font-size:13px}.diagram-line-picker .path-badge{width:34px;font-size:8px}.diagram-caption{color:#7b8879;flex-shrink:0;justify-content:space-between;padding:1px 2px 3px;font-size:9px;display:flex}.diagram-caption a{color:inherit;margin-left:auto;text-decoration:none}@media (width<=760px){.transit-app .app-header{height:44px;padding:0 16px}.transit-app .brand{font-size:18px}.transit-app .search-bar{min-height:62px;padding:8px 12px}.transit-app .map-section{height:calc(100svh - 106px);min-height:560px;max-height:850px;padding:0 8px 5px}.transit-app .map-canvas.schematic-canvas{border-radius:9px;flex:1;height:auto;min-height:0;max-height:none}.diagram-toolbar{height:44px;padding:0 3px}.diagram-home{white-space:nowrap;padding:0;font-size:10px}.diagram-line-picker{gap:3px;padding-top:3px}.diagram-line-picker button{min-width:33px;height:37px}.diagram-caption{padding-top:2px;font-size:8px}.transit-app .explorer{padding-top:8px;scroll-margin-top:62px}.transit-app.is-searching .map-section{display:none}.transit-app .connection-status{margin-left:0;font-size:10px}.transit-app .search-input-wrap{height:44px}.transit-app .search-input-wrap input::placeholder{font-size:15px}}.diagram-continuation-label{fill:#566458;font-size:10px;font-weight:700}.connection-note summary{cursor:pointer;color:#657760;min-height:32px;line-height:32px;display:list-item}.connection-note[open] summary{margin-bottom:5px}.connection-note{margin:6px 0}.diagram-station-label{font-size:12px}:root{--ink:#fff;--muted:#a3a3a3;--green:#fff;--line:#303030;--paper:#000}body{background:#000}.transit-app{background:#000;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.transit-app .app-header,.transit-app .search-bar,.transit-app .explorer{background:#000}.app-header nav{align-items:center;gap:18px;margin-left:auto;display:flex}.app-header .boards-link{color:#ccc}.app-header .commute-link{color:#fff}.search-input-wrap{color:#eee;background:#161616;border-color:#333}.search-input-wrap input{color:#fff}.search-input-wrap:focus-within{box-shadow:none;border-color:#888}.transit-app .map-section{background:#080b0e}.schematic-canvas{background:#0a121b;border-color:#27323b}.diagram-land{fill:#18222b}.diagram-park{fill:#243930}.diagram-home{color:#ccc}.diagram-station-label{fill:#fff;stroke:#18222b;stroke-width:4px}.diagram-station-label.muted{fill:#66747f}.diagram-continuation-label{fill:#bbc6cc}.diagram-line-picker button[aria-pressed=true]{background:#2e3c46;border-color:#738999}.diagram-caption{color:#9aa8b2}.station-card{color:#fff;border-color:#292929;text-decoration:none}.station-card:hover .station-card-title{color:#fff}.station-card:hover{background:#131313}.station-card-meta,.section-heading>span,.departure-destination small{color:#aaa}.card-arrow{color:#bbb;border-color:#444}.station-card:hover .card-arrow{background:#292929}.text-button{color:#ddd}.icon-button{color:#fff;background:#161616;border-color:#444}.icon-button.is-saved{color:#ffdc73;background:#292415}.segmented{background:#161616}.segmented button{color:#ccc}.segmented button[aria-pressed=true]{color:#000;box-shadow:none;background:#fff}.route-filter-button[aria-pressed=true]{background:#303030;border-color:#888}.route-filter-button:hover{background:#252525}.feed-status{color:#bdbdbd}.feed-status.is-stale{color:#ff9d90}.stale-note,.location-message,.offline-message{color:#ffbaac;background:#281919;border-color:#663c34}.connection-note,.connection-note summary{color:#aaa}.transit-app.station-page{height:auto;min-height:100dvh}.station-main{width:100%;max-width:1440px;margin:0 auto;padding:6px 20px 28px}.map-return{align-items:center;min-height:40px;text-decoration:none;display:inline-flex}.place-heading{margin:3px 0 8px}.place-heading h1{letter-spacing:-.5px;font-size:28px}.station-boards{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:start;gap:24px;display:grid}.station-boards>section{max-width:660px}.departure-controls{justify-content:space-between;align-items:center;gap:24px;display:flex}.departure-controls .segmented{min-width:330px;margin:0}.departure-line-filters{margin:4px 0}.station-page .feed-status{margin:0 0 12px}.station-page .connection-note{margin-bottom:12px}@media (width<=760px){.app-header nav{gap:12px}.app-header .boards-link{font-size:11px}.station-main{padding:4px 14px 24px}.departure-controls{display:block}.departure-controls .segmented{min-width:0;margin:8px 0}.station-boards{grid-template-columns:1fr;gap:24px}.place-heading h1{font-size:25px}.station-page .feed-status{margin:0 0 14px}}.street-axis-map .diagram-land{fill:#121d26}.street-axis{pointer-events:none}.street-axis .street-grid{stroke:#9ab2c1;stroke-width:.75px;opacity:.2;stroke-dasharray:2 5}.street-axis-spine,.street-axis-tick{stroke:#9ab2c1;stroke-width:.85px;opacity:.65}.street-axis text{fill:#9eaebc;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.street-axis .street-axis-name{font-size:8.5px}.street-axis-map .diagram-line{stroke-width:3.5px}.street-axis-map .diagram-station-dot{stroke-width:1.5px}.street-axis-map .diagram-stop:hover .diagram-station-dot,.street-axis-map .diagram-stop:focus-visible .diagram-station-dot{fill:#fff;stroke:#fff;stroke-width:4px}.search-bar .search-input-wrap{width:100%}@media (width<=760px){.diagram-toolbar{gap:4px}.diagram-home{font-size:10px}.transit-app .search-bar{padding:8px 12px}}.street-axis-map .diagram-land{fill:#182833;stroke:#344752;stroke-width:1px}.diagram-station-dot{transform-box:fill-box;transform-origin:50%;pointer-events:none;transition:transform .1s}.diagram-stop.group-highlighted .diagram-station-dot{fill:#fff;stroke:#fff;stroke-width:2px;transform:scale(1.65)}@media (prefers-reduced-motion:reduce){.diagram-station-dot{transition:none}}
