@font-face{font-family:Noto Sans Thai;src:url(/fonts/NotoSansThai-subset.woff2)format("woff2");font-display:swap}@font-face{font-family:Chakra Petch;src:url(/fonts/ChakraPetch-Regular-subset.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Chakra Petch;src:url(/fonts/ChakraPetch-SemiBold-subset.woff2)format("woff2");font-weight:600;font-display:swap}:root{--bg:#f2f2f4;--surface:#fff;--surface-2:#f4f4f6;--surface-glass:#ffffffd1;--ink:#0b0b0d;--ink-2:#55565c;--ink-3:#8a8b91;--hairline:#00000014;--accent:#1f6bff;--accent-ink:#fff;--beta:#b45309;--dev:#be185d;--close:#c2413f;--brand-ink:#634285;--shadow-float:0 2px 6px #00000014, 0 8px 24px #0000001f;--shadow-sheet:0 -1px 0 #0000000a, 0 -8px 32px #00000024;--radius-sheet:28px;--radius-card:18px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--sheet-offset:0px;--track:color-mix(in srgb, var(--ink) 7%, transparent);--raised-bg:#fff;--raised-shadow:0 1px 2px #00000014, 0 2px 6px #00000014;--radius-control:10px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--font-system:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Noto Sans Thai", system-ui, sans-serif;--font-ui:"Chakra Petch", var(--font-system);--font-brand:"Chakra Petch", var(--font-system);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root:lang(th){--font-ui:"Chakra Petch", var(--font-system)}:root[data-theme=dark]{--bg:#000;--surface:#161618;--surface-2:#232326;--surface-glass:#1c1c1ec7;--ink:#f5f5f7;--ink-2:#b4b5bb;--ink-3:#7d7e85;--hairline:#ffffff1a;--accent:#4d8dff;--beta:#f5a524;--dev:#f472b6;--close:#f2787a;--brand-ink:var(--ink);--shadow-float:0 2px 6px #0006, 0 8px 24px #00000080;--shadow-sheet:0 -1px 0 #ffffff0f, 0 -8px 32px #0009;--track:color-mix(in srgb, var(--ink) 9%, transparent);--raised-bg:#3a3a3e;--raised-shadow:0 1px 2px #00000080, 0 2px 6px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{font-family:var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.45}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.map-canvas.map-canvas{position:fixed;inset:0}.fab-stack{top:calc(var(--safe-top) + 12px);z-index:5;touch-action:none;flex-direction:column;gap:10px;display:flex;position:fixed;right:12px}.fab{background:var(--surface-glass);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);width:44px;height:44px;box-shadow:var(--shadow-float);color:var(--ink);border:0;border-radius:50%;place-items:center;transition:transform .12s ease-out;display:grid}.fab:active,.mobile-brand:active,.press:active{transform:scale(.94)}.mobile-brand{top:calc(var(--safe-top) + 12px);z-index:5;max-width:calc(100vw - 76px);height:44px;box-shadow:var(--shadow-float);color:var(--ink);cursor:pointer;touch-action:manipulation;border-radius:999px;align-items:center;padding:0 8px 0 12px;display:flex;position:fixed;left:12px}.mobile-brand img{flex:none;display:block}.mobile-brand[data-folded]{padding-left:8px}.mobile-brand[data-folded] img{transform:rotate(-180deg)}.mobile-brand-text{grid-template-columns:1fr;display:grid;overflow:hidden}.mobile-brand[data-folded] .mobile-brand-text{grid-template-columns:0fr}.mobile-brand-inner{white-space:nowrap;align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.mobile-brand-inner>:first-child{margin-left:8px}.mobile-brand-inner>:last-child{margin-right:3px}.mobile-brand[data-folded] .mobile-brand-inner{opacity:0;transform:translate(-6px)}.mobile-brand img{transition:transform .36s var(--ease-drawer)}.mobile-brand-text{transition:grid-template-columns .36s var(--ease-drawer)}.mobile-brand-inner{transition:opacity .24s ease, transform .36s var(--ease-drawer)}.mobile-brand-name{font-family:var(--font-brand);color:var(--brand-ink);letter-spacing:-.01em;font-size:17px;font-weight:650}.mobile-brand-beta{letter-spacing:.06em;text-transform:uppercase;color:var(--beta);background:color-mix(in srgb, var(--beta) 14%, transparent);border-radius:999px;flex:none;padding:1px 6px;font-size:9px;font-weight:650}@media (max-width:339px){.mobile-brand-beta{background:var(--beta);width:7px;height:7px;padding:0;font-size:0}}@media (max-width:299px){.mobile-brand-text{display:none}}@media (min-width:768px){.mobile-brand{display:none}}@media (prefers-reduced-motion:reduce){.mobile-brand img,.mobile-brand-text,.mobile-brand-inner{transition:none}}.maplibregl-ctrl-bottom-right .maplibregl-ctrl-group:has(.maplibregl-ctrl-geolocate){display:none}.map-controls{right:12px;bottom:calc(min(var(--sheet-offset), calc(100dvh - var(--safe-top) - 142px)) + 12px);z-index:5;touch-action:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed}.map-controls[data-advanced]{bottom:calc(min(var(--sheet-offset), calc(100dvh - var(--safe-top) - 358px)) + 12px)}.map-controls-row{align-items:center;gap:8px;display:flex}#map-controls-advanced{align-items:flex-end}.map-btn{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:transform .1s ease-out;display:grid}.map-btn:active:not(:disabled){transform:scale(.92)}.map-btn:disabled{color:var(--ink-3);cursor:default}.map-btn-text{letter-spacing:-.01em;font-size:15px;font-weight:700}.map-btn[aria-expanded=true],.map-btn[data-state=active],.map-btn[data-state=background],.map-btn[data-state=waiting]{color:var(--accent)}.map-btn[data-state=waiting] svg{animation:1.2s ease-in-out infinite locate-wait}@keyframes locate-wait{50%{opacity:.35}}.compass{color:var(--ink-3);place-items:center;display:grid}.map-zoom{border-radius:22px;display:flex}.map-zoom .map-btn{width:48px}.map-zoom.map-zoom-wide{display:none}@media (min-width:768px){.map-zoom.map-zoom-wide{display:flex}.map-zoom.map-zoom-narrow{display:none}}.map-tilt{flex-direction:column;align-items:center}.map-tilt .map-btn{width:44px;height:48px}.tilt-track{width:44px;height:112px;position:relative}.tilt-slider{appearance:none;cursor:pointer;touch-action:none;background:0 0;width:112px;height:44px;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.tilt-slider::-webkit-slider-runnable-track{background:var(--ink-3);border-radius:2px;height:4px}.tilt-slider::-moz-range-track{background:var(--ink-3);border-radius:2px;height:4px}.tilt-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--surface);width:20px;height:20px;box-shadow:0 0 0 1px var(--hairline), 0 2px 6px #00000040;border:0;border-radius:50%;margin-top:-8px}.tilt-slider::-moz-range-thumb{background:var(--surface);width:20px;height:20px;box-shadow:0 0 0 1px var(--hairline), 0 2px 6px #00000040;border:0;border-radius:50%}.tilt-slider:focus-visible{outline:2px solid var(--accent);outline-offset:-6px;border-radius:22px}@media (prefers-reduced-motion:reduce){.map-btn[data-state=waiting] svg{animation:none}}.maplibregl-ctrl-bottom-right{bottom:min(var(--sheet-offset), calc(100dvh - var(--safe-top) - 142px))!important}.maplibregl-ctrl-bottom-left{top:calc(var(--safe-top) + 64px)!important;bottom:auto!important;left:12px!important}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{margin:0!important}@media (min-width:768px){.maplibregl-ctrl-bottom-left{top:auto!important;bottom:16px!important;left:16px!important}.map-controls,.map-controls[data-advanced]{bottom:16px}}.maplibregl-ctrl.maplibregl-ctrl-attrib{min-height:24px;color:var(--ink-2);border-radius:12px;align-items:center;padding:2px 10px;font-size:11px;display:flex}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 10px 2px 30px}.maplibregl-ctrl-attrib a{color:inherit}:root[data-theme=dark] .maplibregl-ctrl.maplibregl-ctrl-attrib,:root[data-theme=dark] .maplibregl-ctrl.maplibregl-ctrl-attrib a{color:var(--ink)!important}.maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000}:root[data-theme=dark] .maplibregl-ctrl-attrib-button{filter:invert()}.sheet{z-index:10;background:var(--surface);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;box-shadow:var(--shadow-sheet);touch-action:none;will-change:transform;height:calc(100dvh - var(--safe-top) - 86px);transform:translate3d(0, calc(100dvh - var(--safe-top) - 86px - var(--peek-height)), 0);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.sheet-grabber{cursor:grab;background:0 0;border:0;flex:none;place-items:center;width:100%;height:22px;padding:0;display:grid}.sheet-grabber:before{content:"";background:var(--hairline);background:color-mix(in srgb, var(--ink) 22%, transparent);border-radius:3px;width:38px;height:5px}.sheet-head{flex:none;padding:0 24px 10px}.sheet-body{min-height:0;padding:4px 24px calc(var(--safe-bottom) + 24px);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--ink) 14%, transparent) transparent;flex:1;overflow:hidden}.sheet-body:hover{scrollbar-color:color-mix(in srgb, var(--ink) 32%, transparent) transparent}.sheet-body::-webkit-scrollbar{width:6px}.sheet-body::-webkit-scrollbar-track{background:0 0}.sheet-body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ink) 14%, transparent);border-radius:3px}.sheet-body:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ink) 32%, transparent)}.sheet[data-detent=full] .sheet-body{overscroll-behavior:contain;touch-action:pan-y;overflow-y:auto}.sheet[data-detent=full] .sheet-body[data-at-top]{touch-action:pan-down}.brand{display:none}.sheet-collapse{background:var(--surface-2);width:28px;height:28px;color:var(--ink-2);cursor:pointer;border:0;border-radius:50%;place-items:center;display:none;position:absolute;top:12px;right:12px}.sheet-collapse svg{transition:transform .26s var(--ease-drawer);transform:rotate(-90deg)}.sheet-fold{display:contents}@media (prefers-reduced-motion:reduce){.sheet-collapse svg{transition:none}}@media (min-width:768px){.sheet{width:432px;height:auto;max-height:calc(100dvh - 64px);box-shadow:var(--shadow-float);touch-action:auto;transition:opacity .32s var(--ease-out), translate .32s var(--ease-drawer);border-radius:20px;inset:16px auto auto 16px;transform:none!important}@starting-style{.sheet{opacity:0;translate:-16px}}.sheet-grabber{display:none}.sheet-head{padding:14px 20px 8px}.sheet-fold{min-height:0;transition:grid-template-rows .3s var(--ease-drawer);flex:1;grid-template-rows:1fr;display:grid;overflow:hidden}.sheet[data-collapsed=true] .sheet-fold{grid-template-rows:0fr}.sheet-body{transition:opacity .22s var(--ease-out) 60ms, translate .3s var(--ease-drawer), padding-block .3s var(--ease-drawer);padding:2px 20px 14px;overflow-y:auto}.sheet[data-collapsed=true] .sheet-body{opacity:0;transition:opacity .14s var(--ease-out), translate .3s var(--ease-drawer), padding-block .3s var(--ease-drawer);padding-block:0;translate:0 -8px}.brand{align-items:center;gap:8px;margin-bottom:10px;padding-right:36px;display:flex}.sheet-collapse{display:grid}.sheet[data-collapsed=true] .sheet-collapse svg{transform:rotate(90deg)}.maplibregl-ctrl-bottom-right{bottom:0!important}}.brand-mark{place-items:center;width:36px;height:36px;display:grid}.brand-name{font-family:var(--font-brand);color:var(--brand-ink);letter-spacing:-.01em;white-space:nowrap;font-size:26px;font-weight:650}.brand-beta{letter-spacing:.06em;text-transform:uppercase;color:var(--beta);background:color-mix(in srgb, var(--beta) 14%, transparent);border-radius:999px;padding:1px 7px;font-size:10px;font-weight:650}.search{background:var(--surface-2);border-radius:16px;align-items:center;gap:10px;height:52px;padding:0 14px;display:flex;position:relative}.search input{letter-spacing:-.01em;background:0 0;border:0;outline:0;flex:1;min-width:0;height:100%;font-size:18px;font-weight:560}.search input::placeholder{color:var(--ink-3);opacity:1}.search svg{color:var(--ink-2);flex:none}.icon-btn{background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.search .icon-btn{background:color-mix(in srgb, var(--ink) 12%, transparent);width:26px;height:26px}.section{margin-top:22px}.section:first-child{margin-top:6px}.section-title{letter-spacing:.01em;color:var(--ink-3);text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:600}.list{border-radius:var(--radius-card);background:var(--surface-2);margin:0;padding:0;list-style:none;overflow:hidden}.row{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 14px;display:flex;position:relative}.list>li+li .row:before,.list>.row+.row:before,.list>.row+.lang-picker>.row:before,.list>.lang-picker+.row:before,.lang-options>.row:before{content:"";border-top:1px solid var(--hairline);position:absolute;top:0;left:14px;right:0}button.row:active,a.row:active{background:var(--hairline)}.row-main{flex:1;min-width:0}.flag{flex:none;display:block}.lang-picker>.row>svg:first-child{color:var(--ink-2);flex:none}.lang-current{color:var(--ink-2);align-items:center;gap:7px;font-size:15px;display:inline-flex}.lang-chevron{color:var(--ink-3);transition:transform .2s var(--ease-out);display:inline-flex}.lang-picker>.row[aria-expanded=true] .lang-chevron{transform:rotate(90deg)}.lang-options{border:0;min-width:0;margin:0;padding:0}.lang-option{cursor:pointer;padding-left:44px}.lang-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:-2px;border-radius:10px}.lang-option[data-disabled]{cursor:default;color:var(--ink-3)}.lang-option[data-disabled] .flag{opacity:.45}.lang-flag-slot{width:21px;display:inline-flex}.lang-soon{background:color-mix(in srgb, var(--ink) 8%, transparent);color:var(--ink-3);border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:600}.lang-check{color:var(--accent);display:inline-flex}@media (prefers-reduced-motion:reduce){.lang-chevron{transition:none}}.row-title{white-space:nowrap;text-overflow:ellipsis;font-weight:560;overflow:hidden}.row-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.row-value{color:var(--ink-2);text-align:right}.row-leading{background:var(--surface);width:36px;height:36px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;display:grid}.empty{color:var(--ink-3);padding:18px 4px}.chips{scrollbar-width:none;touch-action:pan-x;gap:8px;margin:0 -16px;padding:2px 16px 4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}@media (min-width:768px){.chips{flex-wrap:wrap;overflow:visible}}.chip{border:1px solid var(--hairline);background:var(--surface);white-space:nowrap;border-radius:18px;flex:none;align-items:center;gap:8px;height:36px;padding:0 14px 0 10px;font-size:14px;font-weight:560;transition:opacity .16s,background .16s,transform .12s ease-out;display:inline-flex}.chip[aria-pressed=true]{background:var(--surface-2);border-color:#0000}.chip[aria-pressed=false]{opacity:.45}.chip:active{transform:scale(.95)}.dot{border-radius:50%;flex:none;width:12px;height:12px}.link-btn{color:var(--accent);background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;padding:0;font-size:14px;font-weight:560;display:inline-flex}.section-head{justify-content:space-between;align-items:baseline;display:flex}.year-card{border-radius:var(--radius-card);background:var(--surface-2);padding:16px}.year-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;font-size:34px;font-weight:700;line-height:1.05;display:flex}.year-value small{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;min-width:0;color:var(--ink-3);font-size:15px;font-weight:560;overflow:hidden}.year-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.year-head .year-value{min-width:0}.year-today{flex:none}.range{appearance:none;--pct:100%;background:0 0;width:100%;height:32px;margin:10px 0 0}.range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--pct), color-mix(in srgb, var(--ink) 14%, transparent) var(--pct));border-radius:3px;height:6px}.range::-moz-range-track{background:color-mix(in srgb, var(--ink) 14%, transparent);border-radius:3px;height:6px}.range::-moz-range-progress{background:var(--accent);border-radius:3px;height:6px}.range::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:0;border-radius:50%;width:28px;height:28px;margin-top:-11px;box-shadow:0 0 0 .5px #00000014,0 3px 8px #0000002e}.range::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:28px;height:28px;box-shadow:0 0 0 .5px #00000014,0 3px 8px #0000002e}.range-ends{color:var(--ink-3);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:13px;display:flex}.switch{background:color-mix(in srgb, var(--ink) 16%, transparent);border-radius:16px;flex:none;width:51px;height:31px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .26s cubic-bezier(.3,1.3,.5,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0003}[aria-pressed=true]>.switch{background:var(--accent)}[aria-pressed=true]>.switch:after{transform:translate(20px)}.segmented{background:color-mix(in srgb, var(--ink) 9%, transparent);border-radius:9px;padding:2px;display:inline-flex}.segmented button{background:0 0;border:0;border-radius:7px;min-width:64px;height:30px;font-size:14px;font-weight:560;transition:background .16s}.segmented button[aria-pressed=true]{background:var(--surface);box-shadow:0 1px 4px #00000024}.swatch{width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--hairline);border-radius:50%;position:relative;overflow:hidden}.swatch input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.station-head{align-items:center;gap:12px;display:flex}.station-close{width:40px;height:40px;color:var(--close);background:color-mix(in srgb, var(--close) 14%, transparent);margin-right:4px}.station-close:active{background:color-mix(in srgb, var(--close) 24%, transparent)}.station-title{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:700;line-height:1.1}.station-th{color:var(--ink-2);margin:4px 0 0;font-size:17px}.status{background:color-mix(in srgb, var(--ink) 8%, transparent);height:26px;color:var(--ink-2);border-radius:13px;align-items:center;gap:6px;margin-top:12px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.status[data-status=operational]{color:#1f9d48;background:#34c75929}.status[data-status=trial]{color:#c47400;background:#ff9f0a2e}.status[data-status=under_construction],.status[data-status=approved]{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.status[data-status=suspended],.status[data-status=cancelled]{color:#e0352b;background:#ff3b3026}.line-bar{border-radius:3px;flex:none;align-self:stretch;width:6px}.actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;display:grid}.btn{white-space:nowrap;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;height:50px;padding:0 16px;font-weight:600;text-decoration:none;transition:transform .12s ease-out;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--ink);color:var(--bg)}.btn-secondary{background:var(--surface-2);color:var(--ink)}.footer-links{color:var(--ink-3);flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-top:24px;font-size:13px;display:flex}.footer-links a{color:inherit}.footer-build{text-align:center;color:var(--ink-3);flex-basis:100%;margin-top:-4px;font-size:11px}.footer-build a{font-family:ui-monospace,SF Mono,Consolas,monospace;text-decoration-style:dotted}.visit-counter{color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;flex-basis:100%;justify-content:center;align-items:center;gap:4px;margin-top:8px;display:flex}.visit-counter-since{text-align:center;color:var(--ink-3);flex-basis:100%;margin-top:-6px;font-size:11px}.visit-counter-dev{flex-basis:100%;justify-content:center;display:flex}.visit-counter-dev span{color:var(--dev);background:color-mix(in srgb, var(--dev) 14%, transparent);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500}.fade-in{animation:.26s cubic-bezier(.2,.8,.2,1) fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.fade-in{animation:.16s fade-only}@keyframes fade-only{0%{opacity:0}}.switch:after,.chip,.fab{transition:none}}@media (prefers-reduced-transparency:reduce){.fab,.map-controls-row>.map-btn,.map-zoom,.maplibregl-ctrl.maplibregl-ctrl-attrib{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface)!important}}@media (prefers-contrast:more){:root{--hairline:#00000059}:root[data-theme=dark]{--hairline:#fff6}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (min-width:768px){.search{border-radius:12px;gap:8px;height:40px;padding:0 12px}.search input{font-size:15px}.section{margin-top:16px}.section-title{margin-bottom:8px;font-size:11px}.chips{gap:6px;margin:0}.chip{border-radius:14px;gap:6px;height:28px;padding:0 10px 0 8px;font-size:12.5px}.dot{width:9px;height:9px}.row{min-height:42px;padding:8px 12px;font-size:14px}.year-card{padding:12px}.year-value{font-size:26px}.year-value small{font-size:13px}.range{height:26px;margin-top:6px}.range::-webkit-slider-thumb{width:22px;height:22px;margin-top:-8px}.range::-moz-range-thumb{width:22px;height:22px}.range-ends{font-size:11px}.station-title{font-size:22px}.station-th{font-size:15px}.actions{gap:8px;margin-top:16px}.btn{border-radius:12px;gap:6px;height:40px;padding:0 12px;font-size:14px}}@media (min-width:768px) and (prefers-reduced-motion:reduce){.sheet{transition:opacity .2s}@starting-style{.sheet{translate:none}}.sheet-fold{transition:none}.sheet-body,.sheet[data-collapsed=true] .sheet-body{transition:opacity .16s;translate:none}}:root{--glass-panel:#f6f6f861;--glass-card:#ffffffd1;--glass-raised:#ffffffeb;--glass-edge:#ffffff8c;--glass-blur:blur(24px) saturate(180%);--glass-control:var(--glass-panel);--glass-control-edge:var(--glass-edge)}:root[data-theme=dark]{--glass-panel:#1c1c1f6b;--glass-card:#ffffff12;--glass-raised:#ffffff29;--glass-edge:#ffffff14;--glass-control:#3434386b;--glass-control-edge:#ffffff29}.sheet{background:var(--glass-panel);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);--surface-2:var(--glass-card);--surface:var(--glass-raised);--raised-bg:var(--glass-raised);--track:color-mix(in srgb, var(--ink) 8%, transparent)}.chip{background:var(--glass-card);border-color:#0000}.chip[aria-pressed=true]{background:var(--glass-raised);box-shadow:var(--raised-shadow)}.segmented{border-radius:var(--radius-control);background:var(--track);padding:3px}.segmented button{border-radius:calc(var(--radius-control) - 3px);color:var(--ink-2);transition:background-color .15s,color .15s,box-shadow .15s}.segmented button[aria-pressed=true]{background:var(--raised-bg);color:var(--ink);box-shadow:var(--raised-shadow)}.fab,.mobile-brand,.map-controls-row>.map-btn,.map-zoom,.maplibregl-ctrl.maplibregl-ctrl-attrib{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-control-edge);background:var(--glass-control)!important}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass-panel:#f6f6f8;--glass-card:#fff;--glass-raised:#fff}:root[data-theme=dark]{--glass-panel:#1c1c1f;--glass-card:#26262a;--glass-raised:#3a3a3e;--glass-control:#2c2c30}}@media (prefers-reduced-transparency:reduce){:root{--glass-panel:#f6f6f8;--glass-card:#fff;--glass-raised:#fff}:root[data-theme=dark]{--glass-panel:#1c1c1f;--glass-card:#26262a;--glass-raised:#3a3a3e;--glass-control:#2c2c30}}:root{--accent:#007aff;--glass-highlight:inset 0 1px 0 #ffffffb3}:root[data-theme=dark]{--accent:#0a84ff;--glass-highlight:inset 0 1px 0 #ffffff14}@media (min-width:768px){.sheet{box-shadow:var(--glass-highlight), 0 1px 3px #0000000f, 0 12px 40px #00000029;border-radius:22px}.search,.list,.year-card{border-radius:12px}.sheet-body{padding-top:8px;-webkit-mask-image:linear-gradient(#0000 0,#000 10px);mask-image:linear-gradient(#0000 0,#000 10px)}}.fab,.map-controls-row>.map-btn,.map-zoom{box-shadow:var(--glass-highlight), 0 1px 2px #0000000f, 0 4px 14px #00000024!important}.sheet{transition-property:opacity,translate,background-color,border-color;transition-duration:.32s}.sheet-grabber,.sheet-head,.sheet-body>*,.map-controls,.maplibregl-ctrl-bottom-left{transition:opacity .32s}.fab{transition:transform .12s ease-out,opacity .32s}.mobile-brand{transition:transform .12s ease-out, opacity .32s ease, padding-left .36s var(--ease-drawer)}:root[data-scrubbing] .sheet{-webkit-backdrop-filter:none;backdrop-filter:none;transition-duration:.15s;box-shadow:none!important;background:0 0!important;border-color:#0000!important}:root[data-scrubbing] :is(.sheet-grabber,.sheet-collapse,.sheet-head,.sheet-body>:not(.time-travel),.time-travel .section-title,.map-controls,.fab,.mobile-brand,.maplibregl-ctrl-bottom-left){opacity:0;pointer-events:none;transition-duration:.15s}:root[data-scrubbing] .time-travel .year-card{background:var(--glass-control);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}:root[data-scrubbing] .sheet-body{-webkit-mask-image:none;mask-image:none}@media (prefers-reduced-motion:reduce){.sheet-grabber,.sheet-head,.sheet-body>*,.map-controls,.fab,.maplibregl-ctrl-bottom-left,:root[data-scrubbing] .sheet{transition:none}}.section-title{color:var(--ink-2);letter-spacing:.04em;font-size:12px;font-weight:600}.row-sub,.range-ends,.footer-links{color:var(--ink-2)}.brand-name{letter-spacing:-.02em}.station-title{letter-spacing:-.03em}.chip{letter-spacing:.005em}.btn{border-radius:999px}.segmented{grid-template-columns:1fr 1fr;display:inline-grid;position:relative}.segmented:before{content:"";border-radius:calc(var(--radius-control) - 3px);background:var(--raised-bg);width:calc(50% - 3px);transition:translate .28s var(--ease-drawer);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 3px 8px #0000001f,0 3px 1px #0000000a}.segmented[data-value=dark]:before{translate:100%}.segmented button,.segmented button[aria-pressed=true]{box-shadow:none;background:0 0;position:relative}.segmented button[aria-pressed=true]{font-weight:600}.segmented button:active,.sheet-collapse:active,.btn:active{transform:scale(.97)}.sheet-collapse{transition:transform .1s ease-out}@media (prefers-reduced-motion:reduce){.segmented:before{transition:none}}@media (prefers-contrast:more){:root{--glass-panel:#fafafcf7;--glass-card:#fff;--glass-edge:#00000059}:root[data-theme=dark]{--glass-panel:#18181bf7;--glass-card:#2a2a2e;--glass-edge:#fff6}.section-title,.row-sub{color:var(--ink)}}.line-logo{object-fit:contain;flex:none}.section-hint{color:var(--ink-2);align-items:center;gap:6px;margin:-4px 0 10px;font-size:13px;line-height:1.35;display:flex}.section-hint svg{color:var(--ink-3);flex:none}@media (max-width:767px){.section-hint span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}}.section-head-aside{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;gap:10px;font-size:12px;font-weight:600;display:inline-flex}.line-groups{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.line-group-head{justify-content:space-between;align-items:baseline;margin:0 0 6px;display:flex}.line-group-label{color:var(--ink-2);font-size:12px;font-weight:600}.line-group-toggle{color:var(--ink-3);font-size:12px;font-weight:600}.line-group-toggle:hover,.line-group-toggle:focus-visible{color:var(--accent)}.line-group .chips{scrollbar-width:none;touch-action:pan-x;gap:8px;margin:0 -16px;padding:2px 16px 4px;display:flex;overflow-x:auto}.line-group .chips::-webkit-scrollbar{display:none}.chip-name-full{display:none}@media (min-width:768px){.line-groups{gap:12px}.line-group .chips{touch-action:auto;flex-wrap:wrap;gap:6px;margin:0;padding:0;overflow:visible}}.map-haze{z-index:1;pointer-events:none;opacity:0;background:linear-gradient(to bottom, var(--haze) 0%, var(--haze) 18%, color-mix(in srgb, var(--haze) 60%, transparent) 45%, transparent 100%);height:42vh;position:fixed;top:0;left:0;right:0}
