@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");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{font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#000;font-family:Manrope Variable,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}svg{flex-shrink:0;display:block}.vkuiIcon{flex-shrink:0;display:inline-flex}.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}.board{--background:#000;--foreground:#f5f5f5;--muted:#b7b7b7;--secondary:#c3c3c3;--line:#303030;--outline:#595959;--surface:#0a0a0a;--input:#141414;--warning:#ffd479;--accent-ink:#000;--hero-height:clamp(110px, 18vh, 230px);--hero-gap:clamp(18px, 2.6vh, 32px);--control-size:40px;--control-gap:6px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--foreground);background:var(--background);flex-direction:column;width:100%;height:100dvh;padding:clamp(14px,2vh,28px) clamp(18px,3vw,64px) 0;display:flex;overflow:hidden}.board[data-theme=light]{--background:#fff;--foreground:#171b23;--muted:#535b68;--secondary:#535b68;--line:#d7dbe2;--outline:#939ba8;--surface:#fff;--input:#f2f4f7;--warning:#8a4300;--accent-ink:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.board[data-row-count="5"],.board[data-row-count="6"]{--hero-height:clamp(100px, 15vh, 180px)}.board-header{border-bottom:1px solid var(--line);view-transition-name:board-header;flex:none;justify-content:space-between;align-items:center;gap:24px;padding-bottom:clamp(12px,1.8vh,24px);display:flex}.stop-heading{min-width:0}h1{letter-spacing:-.05em;overflow-wrap:anywhere;margin:0;font-size:clamp(30px,3.8vw,76px);font-weight:650;line-height:1.08}.stop-meta{flex-wrap:wrap;align-items:center;gap:10px 24px;display:flex}.stop-direction{color:var(--muted);align-items:center;gap:10px;margin-top:10px;font-size:clamp(18px,1.6vw,32px);line-height:1.2;display:flex}.stop-direction svg{color:var(--accent)}.weather-summary{color:var(--muted);align-items:center;gap:9px;margin-top:10px;font-size:clamp(16px,1.3vw,26px);line-height:1.2;display:flex}.weather-summary svg,.weather-summary strong{color:var(--accent)}.weather-summary strong{font-size:1.25em;font-weight:600}.weather-summary small{font-size:.7em}.header-right{flex-shrink:0;grid-template-columns:auto auto;align-items:center;column-gap:clamp(20px,3vw,64px);display:grid}.brand{letter-spacing:-.07em;white-space:nowrap;grid-row:1/3;align-items:center;gap:12px;font-size:clamp(24px,2.3vw,44px);font-weight:800;display:flex}.official-mark{flex-shrink:0;width:clamp(40px,3.5vw,70px);height:auto;display:block}.official-mark svg{width:100%;height:auto}.clock{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:flex-end;gap:10px;font-size:clamp(38px,4.6vw,90px);font-weight:550;line-height:1;display:flex}.clock small{color:var(--secondary);font-size:.42em;font-weight:500}.today{color:var(--secondary);text-align:right;white-space:nowrap;grid-column:2;margin-top:8px;font-size:clamp(13px,1.15vw,22px)}.scene-container{flex:1 1 0;min-width:0;min-height:0;overflow:hidden}.scene{width:100%;height:100%;min-height:0;animation:.4s ease-out both scene-in}.departure-layout{flex-direction:column;height:100%;min-height:0;padding:clamp(12px,1.8vh,24px) 0;display:flex}.departure-content{grid-template-rows:auto calc(var(--hero-height) + var(--hero-gap)) auto minmax(0, 1fr);flex:1 1 0;min-width:0;min-height:0;display:grid}.section-heading,.next-heading{justify-content:space-between;align-items:center;gap:15px;min-width:0;display:flex}.eyebrow{letter-spacing:.12em;color:var(--muted);font-size:clamp(12px,1.05vw,21px);font-weight:650}.source-label{color:var(--secondary);white-space:nowrap;align-items:center;gap:8px;font-size:clamp(13px,1.15vw,23px);display:flex}.source-label svg{width:1.2em;height:1.2em}.hero-departure{height:var(--hero-height);grid-template-rows:minmax(0,1fr);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(18px,2.4vw,50px);min-height:0;padding:10px 0 0;display:grid}.route-badge{border:1.5px solid var(--outline);width:clamp(64px,8vw,150px);height:min(82px, calc(var(--row-height,96px) * .74));font-size:min(50px, calc(var(--row-height,96px) * .48));font-variant-numeric:tabular-nums;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;padding:0 clamp(10px,1vw,18px);font-weight:650;line-height:1;display:inline-flex;overflow:hidden}.route-badge-label{white-space:nowrap;transform-origin:50%;flex-shrink:0;align-items:center;display:flex}.route-badge-large{width:calc(var(--hero-height) * 1.05);height:calc(var(--hero-height) - 10px);background:var(--accent);color:var(--accent-ink);border-radius:calc(var(--hero-height) * .27);font-size:min(130px, calc(var(--hero-height) * .68));border:0;padding:0 clamp(16px,1.4vw,28px)}.route-badge-filled{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.hero-destination{flex-direction:column;justify-content:center;min-width:0;height:100%;display:flex}.transport-kind{color:var(--accent);font-size:min(30px, calc(var(--hero-height) * .16));align-items:center;gap:9px;margin-bottom:7px;line-height:1.2;display:flex}.hero-destination h2{font-size:min(4.7vw, calc(var(--hero-height) * .34));letter-spacing:-.035em;overflow-wrap:anywhere;flex-shrink:0;margin:0;font-weight:650;line-height:1.08}.hero-details{font-size:min(27px, calc(var(--hero-height) * .12));color:var(--secondary);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:8px;line-height:1.25;display:flex}.hero-details>span{min-width:0}.schedule-time{border:1px solid var(--outline);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;display:inline-flex}.departure-day{color:var(--muted);white-space:nowrap;font-size:.6em}.countdown{font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:flex-end;align-items:flex-end;min-width:0;display:flex}.countdown-value{font-size:min(68px, calc(var(--row-height,92px) * .64));align-items:flex-end;gap:.22em;font-weight:550;line-height:1;display:inline-flex}.countdown-part{align-items:flex-end;gap:.12em;display:inline-flex}.countdown-part small{color:var(--secondary);align-items:flex-end;font-size:max(18px,.42em);font-weight:500;line-height:1;display:flex}.countdown[data-long=true] .countdown-value{font-size:min(54px, calc(var(--row-height,92px) * .48))}.countdown-large .countdown-value{color:var(--accent);font-size:min(150px, calc(var(--hero-height) * .9))}.countdown-large[data-long=true] .countdown-value{font-size:min(105px, calc(var(--hero-height) * .66))}.countdown-now{font-size:min(40px, calc(var(--row-height,92px) * .4));font-weight:550}.countdown-large .countdown-now{color:var(--accent);font-size:min(72px, calc(var(--hero-height) * .44))}.next-heading{border-top:1px solid var(--line);padding:clamp(10px,1.4vh,18px) 0}.next-heading svg{color:var(--muted)}.page-indicator{color:var(--accent);font-size:15px}.departure-table{grid-template-rows:repeat(var(--rows), minmax(0, 1fr));min-height:0;display:grid;overflow:hidden}.departure-row{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(16px,2.2vw,44px);min-height:0;padding:5px 0;display:grid}.departure-row:last-child{border-bottom:0}.row-destination{flex-direction:column;justify-content:center;min-width:0;height:100%;min-height:0;display:flex}.row-destination h3{font-size:min(54px, 3.5vw, calc(var(--row-height) * .4));letter-spacing:-.025em;overflow-wrap:anywhere;flex-shrink:0;margin:0;font-weight:600;line-height:1.1}.row-destination p{font-size:min(24px, 1.35vw, calc(var(--row-height) * .2));color:var(--secondary);margin:6px 0 0;line-height:1.2}.departure-table[data-rows="5"] .row-destination p,.departure-table[data-rows="6"] .row-destination p{display:none}.row-time{color:var(--secondary);font-size:min(42px, calc(var(--row-height) * .36));font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:7px;display:flex}.row-time-compact{display:none}.transport-notice{color:var(--warning);flex:none;align-items:center;gap:10px;padding-top:10px;font-size:clamp(15px,1.4vw,26px);display:flex}.empty-departures{flex-direction:column;justify-content:center;min-height:0;display:flex}.empty-departures>svg{color:var(--accent)}.empty-departures h2{letter-spacing:-.04em;margin:10px 0;font-size:clamp(24px,3vw,54px);font-weight:550}.empty-departures p,.empty-following{color:var(--secondary);margin:0;font-size:clamp(14px,1.5vw,28px);line-height:1.4}.quiet-placeholder{display:none}.offline-banner{color:var(--warning);flex:none;align-items:center;gap:9px;padding-top:9px;font-size:clamp(13px,1.2vw,22px);display:flex}.offline-banner button{color:inherit;background:0 0;border:0;margin-left:auto;padding:3px;display:flex}.info-screen{scrollbar-width:thin;scrollbar-color:var(--outline) var(--background);flex-direction:column;height:100%;min-height:0;padding:16px 0;display:flex;overflow-y:auto}.info-intro{flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.info-intro h2{letter-spacing:-.045em;margin:0;font-size:clamp(28px,3vw,56px);font-weight:550}.information-tabs{gap:8px;display:none}.information-tabs button{border:1px solid var(--outline);color:var(--secondary);background:0 0;border-radius:10px;padding:8px 12px;font-size:14px}.information-tabs button[aria-current=page]{color:var(--accent-ink);border-color:var(--accent);background:var(--accent)}.info-grid{flex:1 1 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;min-height:0;display:grid}.info-card{border:1px solid var(--line);border-radius:24px;flex-direction:column;min-width:0;min-height:0;padding:clamp(18px,1.7vw,32px);display:flex;overflow:auto;container-type:size}.info-card>*{flex-shrink:0}.info-card h3{letter-spacing:-.03em;margin:0 0 18px;font-size:clamp(23px,2vw,38px);font-weight:600;line-height:1.15}.card-icon{color:var(--accent);margin-bottom:16px}.card-icon svg{width:32px;height:32px}.info-card p{color:var(--secondary);margin:0 0 16px;font-size:clamp(18px,1.75vw,32px);line-height:1.4}.info-caption{color:var(--secondary);align-items:center;gap:9px;margin-top:auto;font-size:clamp(14px,1.3vw,23px);line-height:1.4;display:flex}.route-cloud{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex;overflow:hidden}.route-list{grid-template-columns:repeat(var(--route-columns), minmax(0, 1fr));grid-template-rows:repeat(var(--route-rows), minmax(0, 1fr));flex:1 1 0;gap:8px 24px;min-height:0;display:grid}.route-tile{border-bottom:1px solid var(--line);align-items:center;gap:16px;min-width:0;min-height:0;padding:12px 0;display:flex}.route-list .route-badge{border-radius:16px;width:72px;height:60px;margin:0;padding:0 8px;font-size:35px}.route-card-name{flex-direction:column;flex:1 1 0;justify-content:center;min-width:0;height:100%;display:flex}.route-list .destination-heading{letter-spacing:-.025em;overflow-wrap:anywhere;width:100%;margin:0;font-size:clamp(22px,3cqw,30px);font-weight:550;line-height:1.2}.route-list-pages{color:var(--muted);justify-content:flex-end;padding-top:10px;font-size:16px;display:flex}.weather-info{container-name:weather-card}.weather-body{flex:1 1 0;grid-template-columns:minmax(0,1fr);align-content:center;place-items:center;gap:24px;min-height:0;display:grid}.weather-now{flex-direction:column;align-items:center;min-width:0;display:flex}.weather-current{color:var(--accent);align-items:center;gap:.18em;font-size:clamp(64px,min(22cqw,32cqh),144px);display:flex}.weather-current strong{font-size:1em;font-weight:550;line-height:1}.weather-current svg{width:.8em!important;height:.8em!important}.weather-info .weather-description{text-align:center;margin:12px 0 0;font-size:clamp(22px,3cqw,34px);line-height:1.2}.weather-hours{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;padding-top:20px;display:grid}.weather-hours>div{flex-direction:column;align-items:center;gap:10px;min-width:0;display:flex}.weather-hours time{color:var(--secondary);font-size:clamp(16px,3cqw,22px)}.weather-hours svg{color:var(--accent);width:clamp(40px,min(12cqw,16cqh),64px)!important;height:clamp(40px,min(12cqw,16cqh),64px)!important}.weather-hours strong{font-size:clamp(24px,6cqw,40px);font-weight:550}.weather-attribution{color:var(--muted);flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:5px 12px;padding-top:16px;font-size:12px;display:flex}.weather-attribution a{color:inherit;text-underline-offset:3px}.weather-info .weather-empty{text-align:center;margin-block-start:auto;margin-block-end:auto}@container weather-card (width>=600px){.weather-body[data-forecast=true]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.weather-hours{border:0;padding:0}}@container weather-card (height<=300px){.weather-body{gap:12px}.weather-current{font-size:clamp(44px,min(18cqw,20cqh),84px)}.weather-info .weather-description{margin-top:8px;font-size:20px}.weather-hours{gap:8px;padding-top:12px}.weather-hours>div{grid-template-columns:auto auto;justify-content:center;align-items:center;gap:6px;display:grid}.weather-hours time{text-align:center;grid-column:1/-1}.weather-hours svg{width:40px!important;height:40px!important}.weather-hours strong{font-size:24px}.weather-attribution{padding-top:10px}}@container weather-card (width<=599px) and (height<=380px){.weather-body{gap:16px}.weather-hours{gap:8px;padding-top:14px}.weather-hours>div{grid-template-columns:auto auto;justify-content:center;align-items:center;gap:6px;display:grid}.weather-hours time{text-align:center;grid-column:1/-1}.weather-hours svg{width:40px!important;height:40px!important}.weather-hours strong{font-size:24px}}.qr-info{container-name:qr-card}.qr-content{flex:1 1 0;grid-template-rows:minmax(0,1fr) auto;gap:16px;min-width:0;min-height:0;display:grid}.qr-stage{place-items:center;min-width:0;min-height:0;padding:4px;display:grid;container-type:size}.qr-paper{aspect-ratio:1;border:1px solid var(--outline);background:#fff;border-radius:20px;width:min(100cqw,100cqh,440px);padding:6px;display:block}.passenger-qr{aspect-ratio:1;width:100%;height:100%}.qr-description{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-width:0;display:flex}.qr-info .qr-description p{margin:0;font-size:clamp(18px,3cqw,40px);line-height:1.25}.passenger-link{color:var(--accent);align-items:center;gap:8px;font-size:clamp(18px,2.5cqw,30px);font-weight:550;text-decoration:none;display:inline-flex}.passenger-link span{overflow-wrap:anywhere;min-width:0}@container qr-card (width>=601px){.qr-content{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.qr-description{text-align:left;align-items:flex-start}}@container qr-card (width<=600px) and (height<=300px){.qr-description{gap:6px}.qr-info .qr-description p,.passenger-link{font-size:16px}.passenger-link svg{width:18px;height:18px}}.info-screen[data-compact=true] .info-grid{grid-template-columns:minmax(0,1fr)}.info-screen[data-compact=true] .information-tabs{display:flex}.info-screen[data-compact=true] .info-card:not([data-active=true]),.info-screen[data-compact=true] .card-icon{display:none}.info-status{color:var(--secondary);flex-shrink:0;align-items:center;gap:10px;padding-top:14px;font-size:clamp(14px,1.2vw,22px);line-height:1.3;display:flex}.info-status svg{color:var(--accent)}.info-notices{gap:18px;display:grid}.notice{--notice-color:var(--accent);border:1px solid var(--line);background:var(--background);border-radius:24px;grid-template-columns:48px minmax(0,1fr);gap:20px;padding:clamp(20px,2vw,32px);display:grid;overflow:hidden}.notice[data-kind=cancellation],.notice[data-kind=delay]{--notice-color:var(--warning)}.notice-graphic{color:var(--notice-color);flex-direction:column;align-items:center;padding:2px 0;display:flex}.notice-signal{background:color-mix(in srgb, var(--notice-color) 10%, var(--background));border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.notice-meta{flex-wrap:wrap;align-items:center;gap:9px 18px;margin-bottom:16px;display:flex}.notice-type{color:var(--notice-color);font-size:clamp(14px,1.2vw,22px);font-weight:650}.notice-period{color:var(--secondary);font-size:clamp(13px,1vw,18px)}.notice-routes{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.notice-routes .route-badge{background:var(--notice-color);border-color:var(--notice-color);border-radius:12px;width:auto;min-width:54px;height:42px;padding:0 14px;font-size:26px}.notice h3{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0 0 14px;font-size:clamp(25px,2.6vw,46px);font-weight:600;line-height:1.12}.notice p{color:var(--secondary);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:clamp(18px,1.65vw,30px);line-height:1.45}.persistent-next{border-top:1px solid var(--line);--row-height:72px;flex:none;align-items:center;gap:18px;padding:14px 0;display:flex}.persistent-next .route-badge{border-radius:14px;width:78px;height:50px;padding:0 10px;font-size:31px}.persistent-destination{flex-direction:column;gap:7px;min-width:0;display:flex}.persistent-destination strong{font-size:clamp(21px,2.2vw,40px);font-weight:600;line-height:1.1}.persistent-destination time{color:var(--secondary);align-items:center;gap:8px;font-size:clamp(14px,1.2vw,23px);display:flex}.persistent-next .countdown{margin-left:auto}.persistent-next .countdown-value{font-size:40px}.persistent-next .countdown[data-long=true] .countdown-value{font-size:34px}.ad-screen{height:100%;padding:4vh 0;overflow-y:auto}.ad-screen h2{color:var(--accent);letter-spacing:-.055em;overflow-wrap:anywhere;margin:4vh 0 3vh;font-size:clamp(44px,7vw,135px);font-weight:550;line-height:1.06}.ad-screen p{color:var(--secondary);margin:0;font-size:clamp(22px,2.7vw,50px);line-height:1.4}.ad-signature{color:var(--muted);align-items:center;gap:15px;margin-top:4vh;font-size:22px;display:flex}.board-footer{border-top:1px solid var(--line);view-transition-name:board-footer;flex:none;position:relative}.cycle-progress{width:100%;height:1px;position:absolute;top:-1px}.cycle-progress>span{background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform 1s linear;display:block}.footer-main{align-items:center;min-height:60px;padding:8px 0;display:flex}.scene-navigation{flex-shrink:0;align-items:center;gap:22px;display:flex}.scene-navigation button{color:var(--secondary);white-space:nowrap;background:0 0;border:0;align-items:center;gap:9px;padding:4px 0;font-size:clamp(13px,1.05vw,20px);display:flex}.scene-navigation button.active{color:var(--foreground)}.scene-index{border:1px solid var(--outline);border-radius:50%;place-items:center;width:32px;height:32px;font-size:13px;display:grid}.active .scene-index{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.footer-status{color:var(--muted);text-align:right;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin-left:auto;padding-left:16px;font-size:clamp(12px,.95vw,18px);display:flex}.board-controls{gap:var(--control-gap);width:calc(4 * var(--control-size) + 3 * var(--control-gap));opacity:1;flex-shrink:0;min-width:0;margin-left:14px;transition:width .28s,margin-left .28s,opacity .2s;display:flex;overflow:hidden}.controls-idle,.controls-idle *{cursor:none}.controls-idle .board-controls{opacity:0;pointer-events:none;width:0;margin-left:0}.icon-button{width:var(--control-size,40px);height:var(--control-size,40px);color:var(--secondary);background:0 0;border:1px solid #0000;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{color:var(--foreground);border-color:var(--outline)}.toast{z-index:20;background:var(--surface);max-width:90vw;color:var(--foreground);border:1px solid var(--outline);border-radius:12px;padding:15px 22px;font-size:15px;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}.numeric-text{vertical-align:baseline;height:var(--numeric-height,.8em);letter-spacing:0;line-height:1;display:inline-flex}.numeric-track{white-space:nowrap;align-items:flex-start;height:100%;display:inline-flex;overflow:hidden}.numeric-glyph{text-align:center;flex-shrink:0;width:.62em;height:100%;display:inline-block;position:relative;overflow:hidden}.numeric-symbol{top:var(--numeric-offset,-.13em);line-height:1em;display:block;position:relative}.numeric-current{top:var(--numeric-offset,-.13em);height:1em;line-height:1em;display:block;position:relative}.numeric-old{left:0;top:var(--numeric-offset,-.13em);width:100%;height:1em;line-height:1em;position:absolute}.numeric-glyph[data-rolling=true] .numeric-current{animation:.38s cubic-bezier(.22,.8,.22,1) both digit-up-in}.numeric-glyph[data-rolling=true] .numeric-old{animation:.38s cubic-bezier(.22,.8,.22,1) both digit-up-out}.numeric-glyph[data-direction=down][data-rolling=true] .numeric-current{animation-name:digit-down-in}.numeric-glyph[data-direction=down][data-rolling=true] .numeric-old{animation-name:digit-down-out}.numeric-vanish{width:0;animation:.38s both digit-collapse}@keyframes digit-up-in{0%{transform:translateY(105%)}to{transform:translateY(0)}}@keyframes digit-up-out{0%{transform:translateY(0)}to{transform:translateY(-105%)}}@keyframes digit-down-in{0%{transform:translateY(-105%)}to{transform:translateY(0)}}@keyframes digit-down-out{0%{transform:translateY(0)}to{transform:translateY(105%)}}@keyframes digit-collapse{0%{width:.62em}to{width:0}}@keyframes scene-in{0%{opacity:0}to{opacity:1}}.destination-heading{position:relative;overflow:hidden}.destination-current{display:block}.destination-current[data-changing=true]{animation:.38s cubic-bezier(.22,.8,.22,1) both destination-up-in}.destination-old{animation:.38s cubic-bezier(.22,.8,.22,1) both destination-up-out;display:block;position:absolute;top:0;bottom:auto;left:0;right:0}@keyframes destination-up-in{0%{transform:translateY(105%)}to{transform:translateY(0)}}@keyframes destination-up-out{0%{transform:translateY(0)}to{transform:translateY(-105%)}}.settings-dialog{width:min(640px,100vw - 28px);height:min(660px,100vh - 32px);height:min(660px,100dvh - 32px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);color:var(--foreground);background:var(--surface);border:1px solid var(--outline);border-radius:20px;padding:0;overflow:hidden;box-shadow:0 25px 90px #0006}.settings-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009}.settings-dialog form{flex-direction:column;height:100%;min-height:0;display:flex}.settings-navigation-hint{color:var(--secondary);flex:1;margin:0;font-size:12px;line-height:1.4}.settings-dialog[data-remote-navigation=true] [data-tv-focus]{outline:2px solid var(--accent);outline-offset:4px;border-radius:8px}.settings-dialog[data-remote-editing=true] :focus{outline:3px solid var(--accent);outline-offset:3px;background:color-mix(in srgb, var(--accent) 12%, var(--input))}.settings-heading{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.settings-heading-actions{gap:8px;display:flex}.settings-heading-actions .icon-button{width:44px;height:44px}.settings-heading h2{letter-spacing:-.04em;margin:8px 0 0;font-size:27px;font-weight:600}.settings-heading .eyebrow{font-size:11px}.settings-sections{border-bottom:1px solid var(--line);flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px 28px;display:grid}.settings-sections button{border:1px solid var(--outline);background:var(--input);min-height:46px;color:var(--secondary);border-radius:10px;padding:8px 4px;font-size:14px}.settings-sections button[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.settings-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--outline) var(--surface);flex:1 1 0;min-height:0;padding:0 28px 16px;scroll-padding:14px;overflow-y:auto}.settings-body section{padding:21px 0 0}.settings-body .settings-validation{color:var(--warning);margin:16px 0 0}.settings-body h3{margin:0 0 17px;font-size:18px;font-weight:650}.settings-body h4{margin:20px 0 14px;font-size:14px;font-weight:600}.settings-note{color:var(--secondary);margin-bottom:18px;font-size:13px}.settings-body label{color:var(--secondary);flex-direction:column;gap:9px;margin:17px 0;font-size:14px;display:flex}.settings-body select,.settings-body input:not([type=checkbox]):not([type=radio]),.settings-body textarea{width:100%;color:var(--foreground);background:var(--input);border:1px solid var(--outline);border-radius:8px;padding:12px;font-size:15px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-body .switch-row{color:var(--foreground);flex-direction:row;justify-content:space-between;align-items:center;gap:15px}.switch-row small{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.5;display:block}.switch-row input{-webkit-appearance:none;appearance:none;background:var(--line);border:1px solid var(--outline);cursor:pointer;border-radius:20px;flex-shrink:0;width:40px;height:24px;margin:0;transition:background .18s;position:relative}.switch-row input:after{content:"";background:var(--secondary);border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px}.switch-row input:checked{background:var(--accent);border-color:var(--accent)}.switch-row input:checked:after{background:var(--accent-ink);transform:translate(16px)}.theme-picker{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.settings-body .theme-option{border:1px solid var(--outline);cursor:pointer;border-radius:9px;flex-direction:row;align-items:center;gap:10px;margin:0;padding:12px}.theme-option:has(input:checked){border-color:var(--accent);color:var(--foreground)}.theme-option input{accent-color:var(--accent);width:16px;height:16px;margin:0}.theme-swatch{border-radius:50%;flex-shrink:0;width:22px;height:22px}.tiny-tag{color:var(--accent);border:1px solid var(--outline);letter-spacing:.07em;border-radius:4px;margin-left:7px;padding:3px 5px;font-size:9px}.text-button{color:var(--secondary);background:0 0;border:0;align-items:center;gap:9px;padding:10px 0;font-size:14px;display:inline-flex}.settings-body>.text-button{margin-top:15px}.form-hint{color:var(--muted);font-size:12px;line-height:1.6}.settings-scroll-controls{border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:10px 28px;display:flex}.settings-scroll-button{border:1px solid var(--outline);background:var(--input);min-width:92px;min-height:44px;color:var(--foreground);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 12px;font-size:14px;display:inline-flex}.settings-scroll-button:disabled{opacity:.35;cursor:default}.settings-actions{border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 28px;display:flex}.primary-button{background:var(--accent);color:var(--accent-ink);border:0;border-radius:9px;align-items:center;gap:8px;padding:13px 22px;font-size:15px;font-weight:650;display:inline-flex}@media (max-width:480px),(max-height:540px){.settings-heading{padding:12px 18px}.settings-heading h2{font-size:23px}.settings-sections{gap:6px;padding:10px 18px}.settings-sections button{font-size:12px}.settings-body,.settings-scroll-controls,.settings-actions{padding-inline-start:18px;padding-inline-end:18px}.settings-navigation-hint{font-size:11px}.settings-scroll-button{min-width:78px;padding-inline-start:8px;padding-inline-end:8px}}@media (max-width:1100px){.brand-word{display:none}.header-right{column-gap:18px}.scene-navigation button>span:last-child,.hero-details>span{display:none}.hero-departure{gap:20px}.hero-destination h2{font-size:min(4.5vw, calc(var(--hero-height) * .34))}}@media (max-width:1000px){.departure-row{grid-template-columns:auto minmax(0,1fr) auto;gap:16px}.row-time,.row-destination p{display:none}.row-time-compact{color:var(--secondary);font-size:min(20px, calc(var(--row-height) * .21));flex-shrink:0;align-items:center;gap:6px;margin-top:8px;display:flex}.row-time-compact .departure-day{font-size:.8em}.row-destination h3{font-size:min(36px, 4vw, calc(var(--row-height) * .36))}.countdown[data-long=true] .countdown-value{font-size:min(40px, calc(var(--row-height) * .42))}.countdown-large[data-long=true] .countdown-value{font-size:calc(var(--hero-height) * .62)}}@media (max-height:750px){.info-screen{padding:12px 0}.info-intro{margin-bottom:12px}.info-intro h2{font-size:30px}.info-card{padding:18px}.card-icon{display:none}.info-card h3{margin-bottom:14px;font-size:26px}.info-status{padding-top:12px;font-size:14px}.persistent-next{padding:11px 0}.weather-attribution{font-size:11px}}@media (orientation:portrait),(max-width:700px){.board{padding:16px 20px 0}h1{font-size:clamp(28px,5.7vw,62px)}.stop-direction{font-size:clamp(15px,3vw,28px)}.clock{font-size:clamp(32px,6.2vw,68px)}.today{font-size:clamp(12px,2vw,20px)}.brand-word{display:none}.info-intro{flex-direction:column;align-items:flex-start;gap:10px}.info-grid{grid-template-columns:minmax(0,1fr)}.info-card:not([data-active=true]){display:none}.information-tabs{display:flex}.persistent-next>.eyebrow{display:none}}@media (max-width:700px){.board{--control-size:32px;--control-gap:3px;--hero-height:clamp(100px, 16vh, 150px);--hero-gap:18px;padding:12px 16px 0}.board[data-row-count="5"],.board[data-row-count="6"]{--hero-height:95px}.board-header{gap:12px;padding-bottom:12px}.header-right{column-gap:9px}.official-mark{width:30px}.clock{gap:4px;font-size:clamp(27px,6.8vw,44px)}h1{font-size:clamp(25px,6.5vw,42px)}.today{font-size:10px}.stop-meta{gap:5px 12px}.stop-direction{gap:7px;margin-top:7px;font-size:14px}.weather-summary{gap:6px;margin-top:7px;font-size:13px}.weather-summary svg{width:20px;height:20px}.weather-summary>span{display:none}.source-label{gap:5px;font-size:12px}.eyebrow{font-size:10px}.hero-departure{gap:12px}.transport-kind{gap:5px;margin-bottom:5px;font-size:11px}.transport-kind svg{width:16px;height:16px}.hero-details{margin-top:7px;font-size:12px}.hero-destination h2{font-size:min(6vw, calc(var(--hero-height) * .3))}.route-badge-large{width:calc(var(--hero-height) * .7);font-size:calc(var(--hero-height) * .54);padding:0 10px}.countdown-large .countdown-now{font-size:5vw}.departure-row{gap:10px}.departure-row .route-badge{width:60px;padding:0 8px}.row-destination h3{font-size:min(5.7vw, calc(var(--row-height) * .36))}.row-time-compact{font-size:min(15px, calc(var(--row-height) * .19));margin-top:6px}.countdown .countdown-value{font-size:min(40px, calc(var(--row-height) * .6))}.countdown[data-long=true] .countdown-value{font-size:min(27px, calc(var(--row-height) * .38))}.countdown-part small{font-size:max(14px,.42em)}.countdown-large .countdown-value{font-size:calc(var(--hero-height) * .62)}.countdown-large[data-long=true] .countdown-value{font-size:32px}.scene-navigation{gap:12px}.footer-main{min-height:50px;padding:6px 0}.footer-status{padding-left:10px;font-size:10px}.board-controls{margin-left:8px}.board-controls svg{width:21px;height:21px}.persistent-next{--row-height:54px;gap:10px;padding:10px 0}.persistent-next .route-badge{width:60px;height:42px;font-size:27px}.persistent-destination strong{font-size:17px}.persistent-destination time{font-size:13px}.persistent-next .countdown-value{font-size:29px}.persistent-next .countdown[data-long=true] .countdown-value{font-size:25px}.persistent-next .countdown-now{font-size:19px}.info-intro h2{font-size:28px}.information-tabs{gap:7px}.information-tabs button{padding:7px 10px;font-size:12px}.info-card{padding:18px}.info-card h3{margin-bottom:12px;font-size:24px}.weather-attribution{padding-top:12px}.info-status{padding-top:10px;font-size:12px}.notice{border-radius:20px;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:18px 14px}.notice-signal{border-radius:14px;width:44px;height:44px}.notice-signal svg{width:28px;height:28px}.notice-meta,.notice-routes{margin-bottom:12px}.notice-routes .route-badge{min-width:42px;height:35px;padding:0 10px;font-size:23px}.notice h3{font-size:25px}.notice p{font-size:17px}.transport-notice,.offline-banner{font-size:12px}.settings-heading,.settings-body,.settings-actions{padding-left:20px;padding-right:20px}}@media (max-height:620px) and (min-width:701px){.board{--hero-height:110px;--hero-gap:18px;padding-top:10px}.board[data-row-count="5"],.board[data-row-count="6"]{--hero-height:95px}.board-header{padding-bottom:10px}.clock{font-size:40px}h1{font-size:32px}.official-mark{width:35px}.today{font-size:12px}.info-screen{padding:10px 0}.info-intro h2{font-size:28px}.info-card{padding:16px 20px}.info-card h3{margin-bottom:10px;font-size:25px}.info-screen[data-compact=true][data-cards=true]{position:relative}.info-screen[data-compact=true][data-cards=true] .info-intro{z-index:1;margin:0;position:absolute;top:27px;right:20px}.info-screen[data-compact=true][data-cards=true] .info-intro h2{display:none}.info-screen[data-compact=true][data-cards=true] .info-card>h3{text-align:left;align-items:center;min-height:36px;padding-right:290px;display:flex}.info-status{padding-top:10px;font-size:13px}.persistent-next>.eyebrow{display:none}.persistent-next{padding:10px 0}}@media (max-width:700px) and (max-height:740px){.info-intro h2{font-size:25px}.info-intro{gap:8px}.weather-attribution{padding-top:8px;font-size:10px}.weather-info{padding:16px}}::view-transition{pointer-events:none}::view-transition-old(root){animation-duration:.32s}::view-transition-new(root){animation-duration:.32s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}.numeric-old{visibility:hidden}.numeric-current{transform:none!important}.destination-old{visibility:hidden}.destination-current{transform:none!important}}
