@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/roboto-latin-400-normal-BqEyEoaF.woff2) format("woff2"),url(/assets/roboto-latin-400-normal-DyYNIH4P.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2) format("woff2"),url(/assets/roboto-latin-500-normal-DQZyH_nt.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/roboto-latin-700-normal-BZpUvMxY.woff2) format("woff2"),url(/assets/roboto-latin-700-normal-DLgJJpmK.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/roboto-latin-900-normal-lk0O8k6m.woff2) format("woff2"),url(/assets/roboto-latin-900-normal-F72S18P8.woff) format("woff")}:root{font-family:Roboto,system-ui,sans-serif;color:#204172;background:#edf4f6;font-synthesis:none;--ink: #204172;--muted: #66788f;--accent: #4abdc3;--accent-soft: #dff4f4;--surface: rgba(251, 253, 252, .95);--line: rgba(53, 82, 84, .12)}*{box-sizing:border-box}body{margin:0;min-width:1180px;min-height:720px;overflow:hidden;background:#edf4f6;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid rgba(73,169,225,.72);outline-offset:3px}.kiosk-shell{width:100vw;height:100vh;min-width:1180px;min-height:720px;display:grid;grid-template-rows:74px minmax(0,1fr);background:#edf4f6}.kiosk-header{position:relative;z-index:40;padding:0 28px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:300px 1fr 300px;align-items:center;color:var(--ink);background:#fbfdfcf0;box-shadow:0 8px 28px #2a484914;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.kiosk-header:after{position:absolute;right:0;bottom:0;left:0;height:4px;background:url(/brand/abrint-route-pattern.jpg) center 54% / cover;content:""}.brand-lockup,.brand-lockup>span:last-child,.header-location,.header-status{display:flex;align-items:center}.brand-lockup{gap:12px}.brand-lockup>span:last-child{align-items:flex-start;flex-direction:column;gap:2px}.brand-lockup small{color:#71898b;font-size:10px;font-weight:900;letter-spacing:.12em}.brand-logo{width:180px;height:48px;display:block;object-fit:contain;object-position:left center}.header-location{justify-content:center;gap:9px;color:#536f71;font-size:14px}.header-location svg{color:#4abdc3}.header-status{justify-content:flex-end;gap:7px;color:#637b7d;font-size:11px;font-weight:700}.header-status svg{flex:0 0 auto;color:#4abdc3}.kiosk-workspace{position:relative;min-width:0;min-height:0;overflow:hidden}.map-panel{position:absolute;top:0;right:0;bottom:0;left:0;min-width:0;min-height:0;overflow:hidden;background:#edf4f6}.kiosk-map-canvas{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0}.kiosk-map-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#536f71;font-weight:700}.map-legend{position:absolute;z-index:12;top:22px;left:24px;padding:10px 13px;border:1px solid rgba(255,255,255,.72);border-radius:13px;display:flex;gap:15px;color:#5e7779;background:#fbfdfcd6;box-shadow:0 10px 25px #2a484917;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:9px;font-weight:800}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:10px;height:10px;border-radius:3px}.legend-route{background:#00dfff;box-shadow:0 0 7px #00dfffb8}.legend-stand{background:#aab8b5}.legend-service{background:#f1963e}.map-quick-actions{position:absolute;z-index:14;right:24px;bottom:22px;left:auto;display:flex;align-items:flex-end;justify-content:flex-end;gap:18px;pointer-events:none}.map-action-card{min-width:236px;min-height:64px;padding:9px 15px 9px 9px;border:1px solid rgba(255,255,255,.8);border-radius:18px;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;color:var(--ink);background:#fbfdfceb;box-shadow:0 15px 35px #2a484926;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:left;pointer-events:auto;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.map-action-card:hover{border-color:#4abdc36b;transform:translateY(-2px);box-shadow:0 18px 40px #20417229}.map-action-card--route{max-width:340px}.map-action-card>span:last-child{min-width:0;display:grid;gap:3px}.map-action-card small{color:#718789;font-size:8px;font-weight:900;letter-spacing:.08em}.map-action-card strong{overflow:hidden;color:#24474a;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.map-action-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#204172;background:#dff4f4}.map-action-icon svg{width:20px;height:20px}.map-action-card--route .map-action-icon{color:#2d896c;background:#dff1e8}.kiosk-bottom-nav{position:absolute;z-index:36;bottom:20px;left:50%;width:390px;height:72px;padding:6px;border:1px solid rgba(255,255,255,.82);border-radius:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;background:#fbfdfceb;box-shadow:0 18px 42px #2041722e,0 2px 8px #2a484914;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform:translate(-50%)}.kiosk-bottom-nav button{min-width:0;border:0;border-radius:16px;display:grid;grid-template-columns:22px auto;place-content:center;align-items:center;gap:8px;color:#6b808b;background:transparent;font-size:12px;font-weight:800;transition:color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.kiosk-bottom-nav button:hover{color:var(--ink);background:#dff4f49e}.kiosk-bottom-nav button:active{transform:scale(.98)}.kiosk-bottom-nav button[data-active=true]{color:#204172;background:#dff4f4;box-shadow:inset 0 0 0 1px #4abdc32e}.kiosk-bottom-nav svg{width:19px;height:19px;color:#258b91}.panel-backdrop{position:absolute;z-index:24;top:0;right:0;bottom:0;left:0;border:0;visibility:hidden;opacity:0;background:#edf4f624;transition:opacity .22s ease,visibility 0s linear .22s}.panel-backdrop[data-open=true]{visibility:visible;opacity:1;transition-delay:0s}.search-panel,.schedule-panel,.route-panel{position:absolute;z-index:30;top:0;bottom:0;width:clamp(340px,29vw,420px);min-height:0;padding:28px 25px 22px;visibility:hidden;color:var(--ink);background:#fbfdfcf7;box-shadow:0 24px 60px #223a3c33;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);transition:transform .26s cubic-bezier(.22,.8,.28,1),visibility 0s linear .26s}.search-panel{left:0;border-right:1px solid rgba(255,255,255,.75);transform:translate(-104%)}.schedule-panel,.route-panel{right:0;border-left:1px solid rgba(255,255,255,.75);overflow-y:auto;transform:translate(104%)}.search-panel[data-open=true],.schedule-panel[data-open=true],.route-panel[data-open=true]{visibility:visible;transform:translate(0);transition-delay:0s}.panel-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-heading-row>div{min-width:0}.panel-close{width:40px;height:40px;border:1px solid var(--line);border-radius:13px;display:grid;flex:0 0 auto;place-items:center;color:#557274;background:#eef4f2}.panel-close:hover{color:#21494b;background:#e2eeeb}.panel-close--back{color:#204172;border-color:#4abdc34d;background:#dff4f4}.panel-kicker{margin:0 0 7px;color:#258b91;font-size:9px;font-weight:900;letter-spacing:.12em}.search-panel h1{margin:0;color:var(--ink);font-size:clamp(26px,2vw,32px);line-height:1.05}.schedule-panel h2{margin:0;color:var(--ink);font-size:clamp(28px,2.2vw,36px);line-height:1.05}.kiosk-search{height:52px;margin-top:22px;padding:0 14px;border:1px solid var(--line);border-radius:15px;display:flex;align-items:center;gap:10px;color:#6f8789;background:#fff;box-shadow:0 8px 22px #2a48490f}.kiosk-search:focus-within{border-color:#4abdc3b3;box-shadow:0 0 0 3px #4abdc321}.kiosk-search input{width:100%;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font-size:14px}.destination-filters{margin-top:12px;padding:4px;border-radius:13px;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#edf3f2}.destination-filters button{height:36px;border:0;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:7px;color:#708587;background:transparent;font-size:11px;font-weight:800}.destination-filters button[data-active=true]{color:#204172;background:#fff;box-shadow:0 4px 12px #2a484917}.destination-filters svg{color:#258b91}.result-count{margin:18px 2px 9px;color:#7a9092;font-size:10px;font-weight:700}.destination-list{height:calc(100vh - 314px);min-height:300px;overflow-y:auto;padding-right:5px;scrollbar-color:#9fb4b3 transparent;scrollbar-width:thin}.destination-list button{width:100%;min-height:60px;padding:9px 8px;border:0;border-bottom:1px solid #e5ecea;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;color:#294b4d;background:transparent;text-align:left}.destination-list button:hover{border-radius:12px;background:#edf5f3}.destination-list button[aria-selected=true]{border-bottom-color:transparent;border-radius:13px;color:#204172;background:#dff4f4;box-shadow:inset 0 0 0 1px #4abdc324}.destination-list button>span:last-child{min-width:0;display:grid;gap:3px}.destination-list strong,.destination-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.destination-list strong{font-size:13px}.destination-list small{color:#789092;font-size:10px}.destination-list button[aria-selected=true] small{color:#5b797a}.destination-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#204172;background:#e7f5f5}.destination-list button[aria-selected=true] .destination-icon{color:#204172;background:#ccecee}.schedule-intro{margin:16px 0 18px;color:#6d8385;font-size:12px;line-height:1.5}.schedule-list{display:grid;gap:8px}.schedule-list>button{width:100%;min-height:82px;padding:12px 11px;border:1px solid var(--line);border-radius:15px;display:grid;grid-template-columns:54px minmax(0,1fr) 18px;align-items:center;gap:10px;color:var(--ink);background:#ffffffd1;text-align:left;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.schedule-list>button:hover{border-color:#4abdc36b;background:#fff;box-shadow:0 8px 20px #2a484914;transform:translateY(-1px)}.schedule-list time{align-self:stretch;border-right:1px solid #e1eae8;display:grid;align-items:center;color:#258b91;font-size:17px;font-weight:900}.schedule-copy{min-width:0;display:grid;gap:4px}.schedule-copy small{color:#e17c2a;font-size:8px;font-weight:900;letter-spacing:.1em}.schedule-copy strong{color:#294b4d;font-size:12px;line-height:1.25}.schedule-copy>span{display:flex;align-items:center;gap:5px;color:#758b8d;font-size:10px}.schedule-copy>span svg{flex:0 0 auto;color:#4abdc3}.schedule-list>button>svg{color:#739092}.schedule-note{margin:16px 0 84px;display:flex;align-items:center;justify-content:center;gap:6px;color:#829496;font-size:9px}.map-passive-html{pointer-events:none!important;-webkit-user-select:none;user-select:none}.kiosk-stand-marker{min-width:24px;height:22px;padding:2px 5px;border:1px solid rgba(32,65,114,.16);border-radius:7px;display:inline-flex;align-items:center;justify-content:center;color:#204172;background:#fffffff5;box-shadow:0 4px 11px #20417229;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:center}.kiosk-stand-marker strong{font-size:10px;font-weight:950;line-height:1}.kiosk-stand-marker--branded{min-width:38px;height:26px;padding:2px 4px 2px 2px;gap:2px;border-color:#4abdc34d}.kiosk-stand-marker--branded img{width:21px;height:21px;display:block;object-fit:contain}.kiosk-stand-marker--branded strong{min-width:10px;color:#49676b;font-size:7px;font-weight:900}.kiosk-stand-marker--overview:not(.kiosk-stand-marker--selected){min-width:18px;height:18px;padding:1px 3px;border-radius:6px;box-shadow:0 3px 8px #20417224}.kiosk-stand-marker--overview.kiosk-stand-marker--number strong{font-size:8px}.kiosk-stand-marker--overview.kiosk-stand-marker--branded:not(.kiosk-stand-marker--selected){min-width:27px;height:20px;padding:1px 2px 1px 1px;gap:1px}.kiosk-stand-marker--overview.kiosk-stand-marker--branded:not(.kiosk-stand-marker--selected) img{width:16px;height:16px}.kiosk-stand-marker--overview.kiosk-stand-marker--branded:not(.kiosk-stand-marker--selected) strong{min-width:7px;font-size:5px}.kiosk-stand-marker--medium.kiosk-stand-marker--branded:not(.kiosk-stand-marker--selected){min-width:34px;height:24px}.kiosk-stand-marker--selected.kiosk-stand-marker--number{min-width:26px;height:24px}.kiosk-stand-marker--selected.kiosk-stand-marker--branded{min-width:38px;height:26px;padding:2px 4px 2px 2px;gap:2px}.kiosk-stand-marker--selected.kiosk-stand-marker--branded img{width:21px;height:21px}.kiosk-stand-marker--selected.kiosk-stand-marker--branded strong{min-width:10px;font-size:7px}.kiosk-stand-marker--selected{border-color:#49a9e1;background:#effbff;box-shadow:0 0 0 2px #49a9e133,0 7px 16px #20417238;transform:scale(1.12)}.kiosk-map-label{padding:4px 7px;border:1px solid rgba(45,80,82,.11);border-radius:7px;display:inline-block;color:#294d4f;background:#fbfdfce0;font-size:9px;font-weight:900;white-space:nowrap;box-shadow:0 5px 14px #2243451c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;-webkit-user-select:none;user-select:none}.kiosk-map-label--selected{color:#204172;border-color:#49a9e152;background:#def4faf7}.kiosk-map-label--hover{display:grid;gap:2px;color:#204172;border-color:#f1963e61;background:#fffaf0fa;pointer-events:none}.kiosk-map-label--hover strong{font-size:9px}.kiosk-map-label--hover small{color:#8d6031;font-size:7px;font-weight:700}.route-ready{display:flex;align-items:center;gap:6px;color:#258b91;font-size:9px;font-weight:900;letter-spacing:.08em}.route-panel h2{margin:12px 0 5px;color:var(--ink);font-size:clamp(28px,2.2vw,36px);line-height:1.02}.route-destination-reference{margin:0 0 2px;color:#258b91;font-size:10px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.kiosk-stand-photo{position:relative;margin:14px 0 12px;border-radius:16px;overflow:hidden;background:#e0e9e7}.kiosk-stand-photo img{width:100%;aspect-ratio:16 / 8;display:block;object-fit:cover}.kiosk-stand-photo figcaption{position:absolute;right:7px;bottom:7px;padding:5px 8px;border-radius:8px;color:#fff;background:#204172e6;font-size:8px;font-weight:800}.destination-description{margin:0;color:#6d8385;font-size:12px;line-height:1.5}.route-metrics{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.route-metrics div{padding:14px;border:1px solid var(--line);border-radius:14px;display:grid;gap:5px;background:#ffffffd6}.route-metrics small,.route-instruction small{color:#799092;font-size:8px;font-weight:900;letter-spacing:.08em}.route-metrics strong{color:#31585a;font-size:20px}.route-instruction{margin-top:13px;padding:14px;border-radius:16px;display:grid;grid-template-columns:48px 1fr;align-items:center;gap:12px;color:#204172;background:#dff4f4}.route-instruction>span:last-child{display:grid;gap:4px}.route-instruction small{color:#62807f}.route-instruction strong{font-size:14px}.direction-arrow{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:#204172;background:#c5e9eb;font-size:29px;font-weight:900}.qr-handoff{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:18px;display:grid;grid-template-columns:1fr minmax(86px,34%);align-items:center;gap:13px;background:#ffffffd6}.qr-handoff h3{margin:0 0 5px;color:#31585a;font-size:17px;line-height:1.1}.qr-handoff p:not(.panel-kicker){margin:0;color:#708789;font-size:10px;line-height:1.4}.qr-handoff img{width:100%;max-width:124px;justify-self:end;border-radius:8px}.session-status{margin-top:13px;display:flex;align-items:center;justify-content:center;gap:6px;color:#829496;font-size:9px}@media(max-height:800px){.search-panel,.schedule-panel,.route-panel{padding-top:20px;padding-bottom:18px}.route-metrics{margin-top:15px}.qr-handoff{margin-top:12px;padding:12px}.destination-list{height:calc(100vh - 292px)}.schedule-list>button{min-height:70px;padding-top:9px;padding-bottom:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
