@charset "UTF-8";:where(html){line-height:1.15;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}:where(h1){font-size:2em;-webkit-margin-after:.67em;margin-block-end:.67em;-webkit-margin-before:.67em;margin-block-start:.67em}:where(dl,ol,ul) :where(dl,ol,ul){-webkit-margin-after:0;margin-block-end:0;-webkit-margin-before:0;margin-block-start:0}:where(hr){-webkit-box-sizing:content-box;box-sizing:content-box;color:inherit;height:0}:where(abbr[title]){text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(b,strong){font-weight:bolder}:where(code,kbd,pre,samp){font-family:monospace,monospace;font-size:1em}:where(small){font-size:80%}:where(table){border-color:currentColor;text-indent:0}:where(button,input,select){margin:0}:where(button){text-transform:none}:where(button,input:is([type=button i],[type=reset i],[type=submit i])){-webkit-appearance:button}:where(progress){vertical-align:baseline}:where(select){text-transform:none}:where(textarea){margin:0}:where(input[type=search i]){-webkit-appearance:textfield;outline-offset:-2px}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focus-inner{border-style:none;padding:0}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focusring{outline:1px dotted ButtonText}:where(:-moz-ui-invalid){box-shadow:none}:where(dialog){background-color:#fff;border:solid;color:#000;height:-moz-fit-content;height:-webkit-fit-content;height:fit-content;left:0;margin:auto;padding:1em;position:absolute;right:0;width:-moz-fit-content;width:-webkit-fit-content;width:fit-content}:where(dialog:not([open])){display:none}:where(summary){display:list-item}@font-face{font-family:IBM Plex Sans;src:url(/assets/fonts/ibmPlexSans/IBMPlexSans-latin-ext.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:block;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;src:url(/assets/fonts/ibmPlexSans/IBMPlexSans-latin.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:block;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@-webkit-keyframes fadeInAnimation{0%{opacity:0;-webkit-transform:scale(0);transform:scale(0)}50%{opacity:.5;-webkit-transform:scale(.5);transform:scale(.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes fadeInAnimation{0%{opacity:0;-webkit-transform:scale(0);transform:scale(0)}50%{opacity:.5;-webkit-transform:scale(.5);transform:scale(.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes moveUpAndDownAnimation{0%{-webkit-transform:perspective(100px) translateZ(0);transform:perspective(100px) translateZ(0)}50%{-webkit-transform:perspective(100px) translateZ(-8px);transform:perspective(100px) translateZ(-8px)}to{-webkit-transform:perspective(100px) translateZ(0);transform:perspective(100px) translateZ(0)}}@keyframes moveUpAndDownAnimation{0%{-webkit-transform:perspective(100px) translateZ(0);transform:perspective(100px) translateZ(0)}50%{-webkit-transform:perspective(100px) translateZ(-8px);transform:perspective(100px) translateZ(-8px)}to{-webkit-transform:perspective(100px) translateZ(0);transform:perspective(100px) translateZ(0)}}@-webkit-keyframes moveLinkStripeAnimation{0%{opacity:0;left:0%}50%{opacity:1}to{opacity:0;left:100%}}@keyframes moveLinkStripeAnimation{0%{opacity:0;left:0%}50%{opacity:1}to{opacity:0;left:100%}}@-webkit-keyframes blinkAnimation{0%{opacity:0}50%{opacity:1}to{opacity:0}}@keyframes blinkAnimation{0%{opacity:0}50%{opacity:1}to{opacity:0}}@-webkit-keyframes blurAnimation{0%{-webkit-filter:blur(0px);filter:blur(0px)}50%{-webkit-filter:blur(4px);filter:blur(4px)}to{-webkit-filter:blur(0px);filter:blur(0px)}}@keyframes blurAnimation{0%{-webkit-filter:blur(0px);filter:blur(0px)}50%{-webkit-filter:blur(4px);filter:blur(4px)}to{-webkit-filter:blur(0px);filter:blur(0px)}}.isActive{visibility:visible}.board{position:fixed;bottom:24px;right:24px;width:320px;padding:24px;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);border-radius:8px;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;color:#1a1a1a;z-index:12;opacity:0;visibility:hidden;overflow:hidden}@media(max-width:1024px){.board{left:0;right:0;width:100%;max-width:320px;margin:0 auto;bottom:12px;max-height:calc(100dvh - 80px);overflow-y:auto;overflow:auto;scrollbar-width:thin;scrollbar-color:#999999 transparent}.board::-webkit-scrollbar{display:block;width:4px}.board::-webkit-scrollbar-track{background:transparent}.board::-webkit-scrollbar-thumb{background:#999;border-radius:2px}}@media(max-width:1024px)and (hover:hover)and (pointer:fine){.board::-webkit-scrollbar-thumb:hover{background:#666}}@media(max-width:480px){.board{left:12px;right:12px;bottom:12px;width:auto;max-width:none;margin:0}}.board-details{margin:0;padding-top:8px}.board-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;padding:4px 0}.board-field+.board-field{border-top:1px solid rgba(0,0,0,.06)}.board-field:last-child{padding-bottom:0}.board-field dt{font-size:1.2rem;color:#999;text-transform:uppercase;letter-spacing:.5px}.board-field dd{margin:0;font-size:1.4rem;font-weight:400}.board-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px}.board-close{background:none;border:none;color:#999;font-size:2.8rem;cursor:pointer;min-width:44px;min-height:44px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:-12px;line-height:1;-ms-flex-negative:0;flex-shrink:0;-webkit-transition:color .2s;transition:color .2s}@media(hover:hover)and (pointer:fine){.board-close:hover{color:#1a1a1a}}.board-notice{display:none;font-size:1.2rem;color:#999}.board-notice.visible{display:block}.board-notice.has-badge{padding-top:8px}.board-notice.board-notice-warning{color:#c28a00}html{font-size:62.5%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;scroll-behavior:smooth;overscroll-behavior-y:contain;-ms-touch-action:manipulation;touch-action:manipulation}body{font-family:IBM Plex Sans,sans-serif;font-size:1.6rem;color:#1a1a1a;background-color:#f8f8f8;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;font-synthesis:none}h1,h2,h3,h4,h5,h6{margin:0}h2{margin:0;font-size:2rem;font-weight:600}p{margin:0;font-size:1.6rem}ul,nav{margin:0;padding:0;list-style:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,button{font-size:1.4rem;font-weight:500;padding:0;margin:0;border:none;background-color:transparent;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer}*,*:before,*:after{-webkit-box-sizing:border-box;box-sizing:border-box}a{text-decoration:none;margin:0}a,a:active,a:hover,a:visited{outline:0}#app{position:fixed;top:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;overflow:hidden;-ms-touch-action:none;touch-action:none;-ms-scroll-chaining:none;overscroll-behavior:none;background-color:#f8f8f8;pointer-events:none}#webglCanvas{position:fixed;top:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;overflow:hidden;-ms-touch-action:none;touch-action:none;-ms-scroll-chaining:none;overscroll-behavior:none}.page{position:relative;width:100%;height:100%;inset:0;padding:0 24px;opacity:0;pointer-events:none;visibility:hidden;-ms-overflow-style:none;scrollbar-width:none}.page::-webkit-scrollbar{display:none}@media(max-width:1024px){.page{padding:0 12px}}.page-content{overflow:auto;width:100%;height:100%;pointer-events:none;-ms-overflow-style:none;scrollbar-width:none}.page-content::-webkit-scrollbar{display:none}.page-section{min-height:100vh;padding-left:.6rem;padding-right:.6rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.page-section--flow{min-height:auto;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding-top:4rem;padding-bottom:4rem}#loader{position:fixed;inset:0;overflow:hidden;background-color:#f8f8f8;pointer-events:none;z-index:100;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#loader-content{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;will-change:transform}#loader-network{width:auto;fill:none;stroke:#e0e0e0;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;-webkit-backface-visibility:hidden}#loader-percent{position:absolute;top:100%;margin-top:12px;font-size:1.6rem;font-weight:300;color:#999;letter-spacing:.05em;visibility:hidden}#noSupport{position:absolute;width:100%;height:100%;inset:0;opacity:0;pointer-events:none;visibility:hidden;overflow:hidden;background-color:#000;z-index:1}#noSupport-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);position:absolute;left:0;right:0;margin:0 auto}#stop-board-title{font-size:1.6rem;font-weight:300;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px}@media(max-width:1024px){#stop-board-title{font-size:1.4rem}}#stop-board-title .stop-board-underground{font-weight:700;font-size:1.2rem;min-width:22px;height:22px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;background-color:#1d5ba0;color:#fff;-ms-flex-negative:0;flex-shrink:0}#stop-board-lines{display:-webkit-box;display:-ms-flexbox;display:flex;gap:4px;-ms-flex-wrap:wrap;flex-wrap:wrap}#stop-board-lines span{font-weight:700;font-size:1.2rem;width:22px;height:22px;display:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff}#stop-board-lines span.visible{display:-webkit-box;display:-ms-flexbox;display:flex}#stop-board-lines-field{display:none;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}#stop-board-lines-field.visible{display:-webkit-box;display:-ms-flexbox;display:flex}#stop-board-list-title{font-size:1.2rem;font-weight:400;color:#999;text-transform:uppercase;letter-spacing:.5px;margin:24px 0 0;padding-bottom:4px}#stop-board-list{list-style:none;margin:0;padding:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#999999 transparent}#stop-board-list::-webkit-scrollbar{display:block;width:4px}#stop-board-list::-webkit-scrollbar-track{background:transparent}#stop-board-list::-webkit-scrollbar-thumb{background:#999;border-radius:2px}@media(hover:hover)and (pointer:fine){#stop-board-list::-webkit-scrollbar-thumb:hover{background:#666}}#stop-board-list{max-height:128px;margin-right:-16px;padding-right:16px}@media(max-height:480px)and (orientation:landscape){#stop-board-list{max-height:82px}}#stop-board-list li{display:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px;padding:8px 0}#stop-board-list li:last-child{padding-bottom:0}#stop-board-list li.visible{display:-webkit-box;display:-ms-flexbox;display:flex}#stop-board-list li.visible~li.visible{border-top:1px solid rgba(0,0,0,.06)}#stop-board-list .sb-line{font-weight:700;font-size:1.2rem;width:28px;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff;-ms-flex-negative:0;flex-shrink:0}#stop-board-list .sb-direction{-webkit-box-flex:1;-ms-flex:1;flex:1;font-size:1.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#stop-board-list .sb-info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-ms-flex-negative:0;flex-shrink:0;min-width:36px;gap:2px}#stop-board-list .sb-platform{font-size:1.2rem;line-height:1;color:#999}#stop-board-list .sb-platform:empty{display:none}#stop-board-list .sb-cancelled{opacity:.5}#stop-board-list .sb-cancelled .sb-direction{color:#999}#stop-board-list .sb-cancelled .sb-time{color:#c33}#stop-board-list .sb-time{font-size:1.4rem;font-weight:400;white-space:nowrap;line-height:1}#train-board-header div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}#train-board-line{font-weight:700;font-size:1.2rem;width:28px;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff;-ms-flex-negative:0;flex-shrink:0}#train-board-headsign{font-size:1.4rem;font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#line-board{max-height:480px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media(max-width:1024px){#line-board{max-height:none}}#line-board-header div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}#line-board-badge{font-weight:700;font-size:1.2rem;width:28px;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff;-ms-flex-negative:0;flex-shrink:0}#line-board-name{font-size:1.4rem;font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#line-board-stops-title{font-size:1.2rem;font-weight:400;color:#999;text-transform:uppercase;letter-spacing:.5px;margin:24px 0 0;padding-bottom:4px}#line-board-stops{list-style:none;margin:0;padding:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#999999 transparent}#line-board-stops::-webkit-scrollbar{display:block;width:4px}#line-board-stops::-webkit-scrollbar-track{background:transparent}#line-board-stops::-webkit-scrollbar-thumb{background:#999;border-radius:2px}@media(hover:hover)and (pointer:fine){#line-board-stops::-webkit-scrollbar-thumb:hover{background:#666}}#line-board-stops{max-height:130px;margin-right:-16px;padding-right:16px}@media(max-height:480px)and (orientation:landscape){#line-board-stops{max-height:54px}}#line-board-stops{-webkit-box-flex:1;-ms-flex:1;flex:1;min-height:0}#line-board-stops li{display:none;font-size:1.4rem;position:relative;padding:8px 0 8px 14px}#line-board-stops li.visible{display:block}#line-board-stops li.visible~li.visible{border-top:1px solid rgba(0,0,0,.06)}#line-board-stops li.visible:not(:has(~li.visible)){padding-bottom:0}#line-board-stops li:before{content:"";position:absolute;left:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background-color:#fff;border:2px solid #c8c4bc}#api-debug{visibility:hidden;position:fixed;top:64px;left:24px;min-width:220px;background-color:#0a0a0ab8;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#e0e0e0;font-family:IBM Plex Sans,sans-serif;z-index:20;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#api-debug.collapsed #api-debug-body{display:none}#api-debug-header{padding:8px 12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#ffffff4d;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;pointer-events:auto}#api-debug-header:before{content:"▸ "}#api-debug:not(.collapsed) #api-debug-header:before{content:"▾ "}#api-debug.collapsed #api-debug-header{border-bottom:none}#api-debug-body{padding:8px 12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:2px}.api-debug-row{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;line-height:1.5}.api-debug-label{-ms-flex-negative:0;flex-shrink:0;width:72px;color:#ffffff59}.api-debug-row span:not(.api-debug-label){font-family:SF Mono,Cascadia Code,Consolas,monospace;letter-spacing:-.2px}#api-debug-speed{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}#api-debug-speed input[type=range]{width:80px;accent-color:#ffdd00}.api-debug-separator{height:1px;background:#ffffff0d;margin:4px 0}#api-debug-table{font-family:SF Mono,Cascadia Code,Consolas,monospace;letter-spacing:-.2px}.api-debug-table-header,.api-debug-table-row{display:grid;grid-template-columns:28px 1fr 1fr;gap:4px;line-height:1.5}.api-debug-table-header{color:#fff3;margin-bottom:1px}.api-debug-mismatch:after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#e74c3c;margin-left:5px;vertical-align:middle}#search-bar{position:fixed;bottom:24px;left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%);width:100%;max-width:320px;z-index:12;opacity:0;visibility:hidden}@media(max-width:1024px){#search-bar{inset:12px 66px auto;width:auto;-webkit-transform:none;transform:none;max-width:none}}#search-bar-input-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;padding:12px 14px;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);border-radius:8px;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;-webkit-transition:-webkit-box-shadow .2s ease-out;transition:-webkit-box-shadow .2s ease-out;transition:box-shadow .2s ease-out;transition:box-shadow .2s ease-out,-webkit-box-shadow .2s ease-out}@media(hover:hover)and (pointer:fine){#search-bar-input-wrap:hover{-webkit-box-shadow:rgba(0,0,0,.1) 0px 8px 24px,rgba(0,0,0,.06) 0px 2px 8px;box-shadow:#0000001a 0 8px 24px,#0000000f 0 2px 8px}#search-bar-input-wrap:hover #search-bar-icon{color:#ffd500}}#search-bar-icon{width:16px;height:16px;-ms-flex-negative:0;flex-shrink:0;color:#999;-webkit-transition:color .2s;transition:color .2s}#search-bar-input-wrap:focus-within #search-bar-icon{color:#ffd500}#search-bar-input{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0;border:none;background:none;outline:none;text-overflow:ellipsis;font-size:1.4rem;line-height:20px;color:#1a1a1a;font-family:inherit}#search-bar-input::-webkit-input-placeholder{color:#999}#search-bar-input::-moz-placeholder{color:#999}#search-bar-input:-ms-input-placeholder{color:#999}#search-bar-input::-ms-input-placeholder{color:#999}#search-bar-input::placeholder{color:#999}@media(max-width:1024px){#search-bar-input{font-size:1.6rem}}#search-bar-clear{background:none;border:none;color:#999;font-size:2rem;cursor:pointer;padding:0;line-height:1}#search-bar-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:8px;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);border-radius:8px;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;overflow:hidden}@media(max-width:1024px){#search-bar-dropdown{bottom:auto;top:100%;margin-bottom:0;margin-top:8px;max-height:50dvh;overflow-y:auto}}#search-bar-stops,#search-bar-lines{list-style:none;margin:0;padding:0}#search-bar-stops li,#search-bar-lines li{-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;padding:8px 12px;font-size:1.4rem;color:#1a1a1a;cursor:pointer}#search-bar-stops li:not([hidden]),#search-bar-lines li:not([hidden]){display:-webkit-box;display:-ms-flexbox;display:flex}@media(hover:hover)and (pointer:fine){#search-bar-stops li:hover,#search-bar-lines li:hover{background-color:#ffd50026}}#search-bar-stops li.active,#search-bar-lines li.active{background-color:#ffd50026}#search-bar-divider{border:none;border-top:1px solid rgba(0,0,0,.06);margin:0}.search-bar-stop-icon,.search-bar-underground-icon{width:22px;height:22px;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.search-bar-stop-icon:after{content:"";width:12px;height:12px;border-radius:50%;background-color:#fff;border:2px solid #c8c4bc}.search-bar-underground-icon{font-weight:700;font-size:1.2rem;border-radius:4px;background-color:#1d5ba0;color:#fff}.search-bar-underground-icon:after{content:"U"}.search-bar-badge{font-weight:700;font-size:1.2rem;width:22px;height:22px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff;-ms-flex-negative:0;flex-shrink:0}#speed-control{position:fixed;bottom:78px;left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%);z-index:11;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);border-radius:8px;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;overflow:hidden;opacity:0;visibility:hidden}@media(max-width:1024px){#speed-control{bottom:12px;width:100%;max-width:320px}}@media(max-width:480px){#speed-control{left:12px;right:12px;width:auto;-webkit-transform:none;transform:none;max-width:none}}#speed-segments{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:3px;-webkit-box-flex:1;-ms-flex:1;flex:1}#speed-indicator{position:absolute;top:3px;bottom:3px;background-color:#0000000f;border-radius:5px;-webkit-transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);pointer-events:none}.speed-btn{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:6px;padding:10px 14px;border:none;background:none;font-family:inherit;font-size:1.3rem;font-weight:500;line-height:20px;color:#999;cursor:pointer;border-radius:5px;-webkit-transition:color .2s;transition:color .2s;white-space:nowrap;z-index:1;-webkit-box-flex:1;-ms-flex:1;flex:1}@media(hover:hover)and (pointer:fine){.speed-btn:not(.active):hover{color:#ffd500}}.speed-btn.active{color:#1a1a1a}#speed-live-dot{width:6px;height:6px;border-radius:50%;background-color:#4a9b5a;-webkit-animation:speedLivePulse 2s ease-in-out infinite;animation:speedLivePulse 2s ease-in-out infinite}#speed-live-dot.inactive{background-color:#999;-webkit-animation-name:none;animation-name:none}#speed-clock{padding:8px 12px;font-size:1.2rem;font-weight:500;color:#999;white-space:nowrap;border-left:1px solid rgba(0,0,0,.06)}#speed-stale-section{display:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:4px 8px 4px 12px;border-left:1px solid rgba(0,0,0,.06)}#speed-stale-section.visible{display:-webkit-box;display:-ms-flexbox;display:flex}#speed-stale-badge{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;padding:2px 7px;font-size:1rem;font-weight:500;border-radius:3px;white-space:nowrap;letter-spacing:.03em;line-height:1.8}#speed-stale-badge.stale{background-color:#e6a8171f;color:#c28a00}#speed-stale-badge.error{background-color:#cc33331a;color:#c33}@-webkit-keyframes speedLivePulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes speedLivePulse{0%,to{opacity:1}50%{opacity:.4}}#about-trigger{position:fixed;top:24px;right:24px;z-index:11;width:44px;height:44px;padding:0;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);border-radius:50%;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;border:none;font-family:inherit;font-size:1.4rem;font-weight:500;line-height:1;color:#999;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:color .2s ease-out,-webkit-box-shadow .2s ease-out;transition:color .2s ease-out,-webkit-box-shadow .2s ease-out;transition:color .2s ease-out,box-shadow .2s ease-out;transition:color .2s ease-out,box-shadow .2s ease-out,-webkit-box-shadow .2s ease-out;opacity:0;visibility:hidden}@media(hover:hover)and (pointer:fine){#about-trigger:hover{color:#ffd500;-webkit-box-shadow:rgba(0,0,0,.1) 0px 8px 24px,rgba(0,0,0,.06) 0px 2px 8px;box-shadow:#0000001a 0 8px 24px,#0000000f 0 2px 8px}}@media(max-width:1024px){#about-trigger{top:12px;right:12px}}#about-overlay{position:fixed;inset:0;z-index:50;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background-color:#f8f8f8b3;backdrop-filter:blur(4px) saturate(1.4);overflow-y:auto;overflow:auto;scrollbar-width:thin;scrollbar-color:#999999 transparent}#about-overlay::-webkit-scrollbar{display:block;width:4px}#about-overlay::-webkit-scrollbar-track{background:transparent}#about-overlay::-webkit-scrollbar-thumb{background:#999;border-radius:2px}@media(hover:hover)and (pointer:fine){#about-overlay::-webkit-scrollbar-thumb:hover{background:#666}}#about-overlay{opacity:0;visibility:hidden}#about-close{position:fixed;top:24px;right:24px;background:none;border:none;color:#999;font-size:2.8rem;cursor:pointer;padding:4px;line-height:1;z-index:1;-webkit-transition:color .2s;transition:color .2s}@media(hover:hover)and (pointer:fine){#about-close:hover{color:#1a1a1a}}@media(max-width:1024px){#about-close{top:12px;right:12px}}#about-content{width:100%;max-width:640px;margin:auto;padding:64px 24px;text-align:center;pointer-events:none}#about-content h2{font-size:3.6rem;font-weight:300;color:#999;letter-spacing:-.02em;margin:0 0 40px}@media(max-width:1024px){#about-content h2{font-size:2.4rem;margin-bottom:24px}}#about-content h3{font-size:1.4rem;font-weight:500;color:#999;text-transform:uppercase;letter-spacing:.5px;margin:24px 0 8px}@media(max-width:1024px){#about-content h3{font-size:1.2rem}}#about-content p{font-size:1.6rem;line-height:1.7;color:#666;margin:0;text-align:left}@media(max-width:1024px){#about-content p{font-size:1.4rem}}#about-content p+p{margin-top:8px}#about-content a{color:#666;text-decoration:underline;text-decoration-color:#00000026;text-underline-offset:3px;-webkit-transition:color .2s,text-decoration-color .2s;transition:color .2s,text-decoration-color .2s;pointer-events:auto}@media(hover:hover)and (pointer:fine){#about-content a:hover{color:#ffd500;text-decoration-color:#ffd500}}#about-footer{margin-top:24px;text-align:center}#about-footer a{font-size:1.4rem}#compass{position:fixed;top:24px;left:24px;width:44px;height:44px;border-radius:50%;background-color:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#c8c4bc;cursor:pointer;z-index:11;opacity:0;visibility:hidden;-webkit-transition:color .2s ease-out,-webkit-box-shadow .2s ease-out;transition:color .2s ease-out,-webkit-box-shadow .2s ease-out;transition:color .2s ease-out,box-shadow .2s ease-out;transition:color .2s ease-out,box-shadow .2s ease-out,-webkit-box-shadow .2s ease-out}@media(hover:hover)and (pointer:fine){#compass:hover{color:#ffd500;-webkit-box-shadow:rgba(0,0,0,.1) 0px 8px 24px,rgba(0,0,0,.06) 0px 2px 8px;box-shadow:#0000001a 0 8px 24px,#0000000f 0 2px 8px}#compass:hover .compass-label{color:#ffd500}}@media(max-width:1024px){#compass{top:12px;left:12px}}#compass-needle{will-change:transform}.compass-label{position:absolute;font-family:inherit;font-size:.6rem;font-weight:600;line-height:1;color:#c8c4bc;-webkit-transition:color .2s ease-out;transition:color .2s ease-out}.compass-n{top:3px;left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%);color:#999}.compass-e{right:3px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.compass-s{bottom:3px;left:50%;-webkit-transform:translateX(-50%);transform:translate(-50%)}.compass-w{left:3px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}#label{position:absolute;left:0;top:0;pointer-events:none;z-index:100;visibility:hidden;opacity:0;background:#ffffffb3;backdrop-filter:blur(4px) saturate(1.4);padding:4px 8px;border-radius:4px;-webkit-box-shadow:rgba(0,0,0,.05) 0px 6px 20px,rgba(0,0,0,.03) 0px 2px 6px;box-shadow:#0000000d 0 6px 20px,#00000008 0 2px 6px;font-size:1.6rem;font-weight:300;color:#666;white-space:nowrap;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}#label .label-badge{font-weight:700;font-size:1.2rem;min-width:22px;height:22px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:4px;color:#fff;padding:0 4px}#label .label-badge--underground{background-color:#1d5ba0}#label .label-badge--stop{background:none;font-size:0;min-width:auto;height:auto;padding:0}#label .label-badge--stop:after{content:"";width:12px;height:12px;border-radius:50%;background-color:#fff;border:2px solid #c8c4bc}
