.screen-root,.screen-code,.screen-boot,.screen-picker,.screen-portrait,.screen-modal{--screen-unit: min(1vw, 1.777vh);font-family:var(--font-body, Inter, system-ui, sans-serif)}html,body,#root{background:var(--color-surface)}.screen-root{position:fixed;inset:0;overflow:hidden;background:var(--color-surface);color:var(--color-on-surface);font-family:var(--font-body, Inter, system-ui, sans-serif);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}[data-theme=daylight] .screen-root,[data-theme=daylight] .screen-code,[data-theme=daylight] .screen-boot,[data-theme=daylight] .screen-picker,[data-theme=daylight] .screen-portrait,[data-theme=daylight] .screen-modal,[data-theme=latte] .screen-root,[data-theme=latte] .screen-code,[data-theme=latte] .screen-boot,[data-theme=latte] .screen-picker,[data-theme=latte] .screen-portrait,[data-theme=latte] .screen-modal,[data-theme=rosegold] .screen-root,[data-theme=rosegold] .screen-code,[data-theme=rosegold] .screen-boot,[data-theme=rosegold] .screen-picker,[data-theme=rosegold] .screen-portrait,[data-theme=rosegold] .screen-modal{--color-on-surface: var(--color-primary)}.screen-frame{height:100%;display:flex;flex-direction:column;padding:calc(var(--screen-unit) * 2.2) calc(var(--screen-unit) * 2.4) calc(var(--screen-unit) * 1.8);gap:calc(var(--screen-unit) * .9);transition:transform 2s ease}.screen-header{flex:0 0 auto;height:calc(var(--screen-unit) * 7.2);display:flex;align-items:center;justify-content:space-between;gap:calc(var(--screen-unit) * 1.2);padding:0 calc(var(--screen-unit) * 1.1);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75)}.screen-location-switch{position:absolute;top:calc(var(--screen-unit) * .9);right:calc(var(--screen-unit) * .9);z-index:6;display:flex;flex-direction:column;overflow:hidden;min-width:calc(var(--screen-unit) * 7.5);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);box-shadow:0 calc(var(--screen-unit) * .2) calc(var(--screen-unit) * .6) #0f172a24}.screen-location-option{width:100%;display:flex;align-items:center;justify-content:center;padding:calc(var(--screen-unit) * .42) calc(var(--screen-unit) * .8);border:0;border-radius:0;background:transparent;color:var(--color-on-surface);font-family:inherit;font-size:calc(var(--screen-unit) * 1.05);font-weight:500;letter-spacing:.01em;cursor:pointer;transition:background .15s ease,color .15s ease}.screen-location-option+.screen-location-option{border-top:1px solid var(--color-outline-variant)}.screen-location-option:hover{background:var(--color-surface-container-lowest, var(--color-surface))}.screen-location-option.is-active{background:var(--color-primary);color:var(--color-on-primary)}.screen-location-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screen-identity{display:flex;align-items:center;gap:calc(var(--screen-unit) * 1.1);min-width:0}.screen-logo{max-height:calc(var(--screen-unit) * 4.7);max-width:28vw;object-fit:contain;border-radius:0;flex:0 0 auto}.screen-logo-fallback{width:calc(var(--screen-unit) * 4.4);height:calc(var(--screen-unit) * 4.4);display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-on-primary);font-weight:900;font-size:calc(var(--screen-unit) * 1.7);letter-spacing:.03em}.screen-identity-text{min-width:0}.screen-partner{display:flex;align-items:center;gap:calc(var(--screen-unit) * .55);flex:0 0 auto}.screen-partner-x{font-size:calc(var(--screen-unit) * .9);font-weight:700;line-height:1;color:var(--color-secondary)}.screen-partner-logo{display:block;height:auto;width:auto;max-height:calc(var(--screen-unit) * 1.25);max-width:14vw;object-fit:contain;flex:0 0 auto}.screen-partner-logo-onlight,[data-theme=daylight] .screen-partner-logo-ondark,[data-theme=latte] .screen-partner-logo-ondark,[data-theme=rosegold] .screen-partner-logo-ondark{display:none}[data-theme=daylight] .screen-partner-logo-onlight,[data-theme=latte] .screen-partner-logo-onlight,[data-theme=rosegold] .screen-partner-logo-onlight{display:block}.screen-customer{font-size:calc(var(--screen-unit) * 1.55);font-weight:900;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-location{margin-top:calc(var(--screen-unit) * .25);font-size:calc(var(--screen-unit) * 1);font-weight:600;color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-support-badge{flex:0 0 auto;padding:calc(var(--screen-unit) * .22) calc(var(--screen-unit) * .6);border:1px solid var(--color-amber);border-radius:999px;color:var(--color-amber);font-size:calc(var(--screen-unit) * .72);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.screen-demo-badge{flex:0 0 auto;padding:calc(var(--screen-unit) * .22) calc(var(--screen-unit) * .6);border:1px solid var(--color-primary);border-radius:999px;color:var(--color-primary);font-size:calc(var(--screen-unit) * .72);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.screen-clock-block{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:calc(var(--screen-unit) * 1.5);text-align:right}.screen-date-block{flex:0 0 auto;text-align:right}.screen-day{font-size:calc(var(--screen-unit) * 1.7);font-weight:900;line-height:1.05}.screen-date{margin-top:calc(var(--screen-unit) * .22);font-size:calc(var(--screen-unit) * 1.35);font-weight:700;color:var(--color-secondary)}.screen-time-block{flex:0 0 auto;text-align:right}.screen-clock-live{font-size:calc(var(--screen-unit) * 4);font-weight:900;line-height:.92;letter-spacing:.015em}.screen-clock-footer{margin-top:calc(var(--screen-unit) * .15);display:flex;align-items:center;justify-content:flex-end;gap:calc(var(--screen-unit) * .35)}.screen-freshness{margin-top:0;font-size:calc(var(--screen-unit) * .76);font-weight:600;color:var(--color-secondary);opacity:.85}.screen-freshness.is-stale{color:var(--color-amber);opacity:1}.screen-body{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:calc(var(--screen-unit) * 1)}.screen-stops{min-height:0;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .4)}.screen-stop{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:calc(var(--screen-unit) * .5) calc(var(--screen-unit) * .85) calc(var(--screen-unit) * .35);padding-left:calc(var(--screen-unit) * 1.6);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75)}.screen-stop-stale{border-color:var(--color-amber)}.screen-stop-head{position:relative;z-index:0;flex:0 0 auto;min-height:calc(var(--screen-unit) * 1.95);display:flex;align-items:baseline;justify-content:space-between;gap:calc(var(--screen-unit) * .8)}.screen-stop-head:before{content:"";position:absolute;z-index:0;top:calc(var(--screen-unit) * -.5);right:calc(var(--screen-unit) * -.85);bottom:0;left:calc(var(--screen-unit) * -1.6);background:var(--color-surface-container-lowest, var(--color-surface));border-bottom:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75) calc(var(--screen-unit) * .75) 0 0;pointer-events:none}.screen-stop-head>*{position:relative;z-index:1}.screen-stop-title{min-width:0;display:flex;align-items:baseline;gap:calc(var(--screen-unit) * .38);overflow:hidden;flex:0 1 auto}.screen-stop-name{font-size:calc(var(--screen-unit) * 1.5);font-weight:900;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-stop-distance{flex:0 0 auto;font-size:calc(var(--screen-unit) * 1.02);font-weight:700;color:var(--color-secondary)}.screen-stop-direction{flex:0 1 auto;max-width:68%;padding-right:calc(var(--screen-unit) * .4);font-size:calc(var(--screen-unit) * .88);font-weight:700;color:var(--color-secondary);text-align:right;white-space:nowrap;overflow:visible}.screen-rows{flex:1 1 0;min-height:0;display:flex;flex-direction:column;padding-top:calc(var(--screen-unit) * .7);animation:screen-rows-in .32s ease-out}.screen-row{flex:1 1 0;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:calc(var(--screen-unit) * .62)}.screen-row+.screen-row{border-top:1px solid var(--color-outline-variant)}.screen-badge{display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--screen-unit) * 2.2);height:calc(var(--screen-unit) * 1.45);padding:0 calc(var(--screen-unit) * .45);border-radius:calc(var(--screen-unit) * .36);background:var(--color-bus);color:var(--color-on-primary);font-size:calc(var(--screen-unit) * 1.02);font-weight:900;line-height:1}.screen-badge-tram{background:var(--color-tram)}.screen-badge-trolley{background:var(--color-trolley)}.screen-badge-train{background:var(--color-train)}.screen-badge-regional{background:var(--color-regional)}.screen-destination{min-width:0;font-size:calc(var(--screen-unit) * 1.32);font-weight:650;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-delay{min-width:calc(var(--screen-unit) * 1.6);text-align:right;font-size:calc(var(--screen-unit) * .85);font-weight:600;color:transparent;white-space:nowrap}.screen-delay.is-late{color:var(--color-amber);opacity:.85}.screen-time{display:flex;flex-direction:row;align-items:baseline;justify-content:flex-end;gap:calc(var(--screen-unit) * .34);width:calc(var(--screen-unit) * 7.2);line-height:1;white-space:nowrap}.screen-countdown{font-size:calc(var(--screen-unit) * 1.5);font-weight:900;white-space:nowrap}.screen-min-label{color:var(--color-secondary);font-size:.62em;font-weight:700}.screen-min-label.is-live{color:#10b981;animation:screen-live-pulse 2s ease-in-out infinite}@keyframes screen-live-pulse{0%,to{opacity:1}50%{opacity:.45}}.screen-time.is-future .screen-countdown{color:var(--color-primary);font-size:calc(var(--screen-unit) * 1.24)}.screen-clock{font-size:calc(var(--screen-unit) * .84);font-weight:700;color:var(--color-secondary)}.screen-row-placeholder{display:flex;align-items:center}.screen-row-waiting{font-size:calc(var(--screen-unit) * 1);font-weight:600;color:var(--color-secondary);opacity:.7}.screen-empty-state{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:calc(var(--screen-unit) * 2);border:1px dashed var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75);font-size:calc(var(--screen-unit) * 1.1);font-weight:700;color:var(--color-secondary);text-align:center}.screen-map-column{min-width:0;min-height:0;height:100%;display:flex}.screen-map-stage{position:relative;flex:1 1 auto;min-width:0;min-height:0;height:100%}.screen-map-ad{position:absolute;inset:0;z-index:5;overflow:hidden;border-radius:calc(var(--screen-unit) * .75);background:var(--color-surface);opacity:0;transition:opacity .6s ease;pointer-events:none}.screen-map-ad.is-visible{opacity:1}.screen-map-ad img{display:block;width:100%;height:100%;object-fit:cover}.screen-map{position:relative;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75)}.screen-map>.screen-map-canvas{position:absolute;inset:0;width:100%;height:100%}.maplibregl-marker.screen-vehicle-icon{width:calc(var(--screen-unit) * 2.6);height:calc(var(--screen-unit) * 2.6);transition:transform 19s linear,opacity .2s;pointer-events:none;will-change:transform}.maplibregl-marker.screen-here-marker{width:0;height:0;pointer-events:none}.screen-here-dot{position:absolute;left:0;top:0;width:calc(var(--screen-unit) * .95);height:calc(var(--screen-unit) * .95);box-sizing:border-box;transform:translate(-50%,-50%);border:calc(var(--screen-unit) * .12) solid var(--color-surface);border-radius:50%;background:var(--color-primary)}.screen-here-pulse{position:absolute;left:0;top:0;width:calc(var(--screen-unit) * 2.2);height:calc(var(--screen-unit) * 2.2);border-radius:50%;background:var(--color-primary);opacity:.18;transform:translate(-50%,-50%);animation:screen-here-pulse 2.4s ease-out infinite;will-change:transform,opacity}.screen-here-label{position:absolute;left:0;bottom:calc(var(--screen-unit) * .85);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;white-space:nowrap}.screen-here-text{padding:calc(var(--screen-unit) * .25) calc(var(--screen-unit) * .5);border-radius:calc(var(--screen-unit) * .35);background:var(--color-primary);color:var(--color-on-primary);font-size:calc(var(--screen-unit) * .78);font-weight:900;line-height:1;letter-spacing:.06em;text-transform:uppercase}.screen-here-arrow{width:0;height:0;border-left:calc(var(--screen-unit) * .32) solid transparent;border-right:calc(var(--screen-unit) * .32) solid transparent;border-top:calc(var(--screen-unit) * .42) solid var(--color-primary)}@keyframes screen-here-pulse{0%{transform:translate(-50%,-50%) scale(.65);opacity:.28}70%,to{transform:translate(-50%,-50%) scale(1.25);opacity:0}}.screen-map-loading{display:flex;align-items:center;justify-content:center;font-size:calc(var(--screen-unit) * 1);font-weight:700;color:var(--color-secondary)}.screen-map-legend{position:absolute;left:calc(var(--screen-unit) * .7);right:calc(var(--screen-unit) * .7);bottom:calc(var(--screen-unit) * .7);padding:calc(var(--screen-unit) * .55) calc(var(--screen-unit) * .7);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5)}.screen-map-legend-title{font-size:calc(var(--screen-unit) * .72);font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--color-secondary);margin-bottom:calc(var(--screen-unit) * .3)}.screen-map-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:calc(var(--screen-unit) * .45);padding:calc(var(--screen-unit) * .16) 0}.screen-map-legend-index{width:calc(var(--screen-unit) * 1.35);height:calc(var(--screen-unit) * 1.35);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-on-primary);font-size:calc(var(--screen-unit) * .72);font-weight:900;align-self:center}.screen-map-legend-name{min-width:0;font-size:calc(var(--screen-unit) * 1);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-map-legend-meta{font-size:calc(var(--screen-unit) * .84);font-weight:600;color:var(--color-secondary);white-space:nowrap}.screen-map-live{position:absolute;top:calc(var(--screen-unit) * .35);left:calc(var(--screen-unit) * .45);display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .3);padding:calc(var(--screen-unit) * .22) calc(var(--screen-unit) * .5);border:1px solid var(--color-outline-variant);border-radius:999px;background:var(--color-surface);color:var(--color-secondary);font-size:calc(var(--screen-unit) * .7);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.screen-map-live-dot{width:calc(var(--screen-unit) * .5);height:calc(var(--screen-unit) * .5);border-radius:999px;background:var(--color-regional);box-shadow:0 0 0 calc(var(--screen-unit) * .12) var(--color-regional)}.screen-map-live-dot.is-idle{background:var(--color-secondary);box-shadow:none;opacity:.6}.screen-map-fallback{position:relative;flex:1 1 auto;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75);overflow:hidden}.screen-map-fallback svg{flex:1 1 auto;width:100%;height:100%}.screen-map-fallback-note{flex:0 0 auto;padding:calc(var(--screen-unit) * .35);font-size:calc(var(--screen-unit) * .72);font-weight:700;color:var(--color-secondary);text-align:center}.screen-settings-link{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--screen-unit) * 1.8);height:calc(var(--screen-unit) * 1.8);box-sizing:border-box;margin-top:0;padding:calc(var(--screen-unit) * .3);border:none;border-radius:999px;background:transparent;color:var(--color-secondary);opacity:.3;cursor:pointer;transition:opacity .16s ease,background .16s ease}.screen-settings-link svg{width:100%;height:100%;display:block}.screen-settings-link:hover,.screen-settings-link:focus-visible{opacity:1;background:var(--color-surface);color:var(--color-on-surface);outline:none;box-shadow:0 0 0 1px var(--color-outline-variant)}.screen-code,.screen-boot{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--color-surface);color:var(--color-on-surface);padding:4vh 4vw}.screen-boot{flex-direction:column;gap:2vh;font-size:1.4rem;font-weight:700;color:var(--color-secondary)}.screen-boot img{width:min(30vw,320px);max-height:16vh;object-fit:contain}.screen-code-card{width:min(78vw,58rem);padding:calc(var(--screen-unit) * 2.4) calc(var(--screen-unit) * 2.8);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * 1.1);background:var(--color-surface);text-align:center}.screen-code-logo{display:block;margin:0 auto calc(var(--screen-unit) * 1.4);width:min(28vw,28rem);max-height:10vh;object-fit:contain}.screen-code-card h1{margin:0;font-size:calc(var(--screen-unit) * 2.25);line-height:1.08;font-weight:900}.screen-code-card form{margin-top:calc(var(--screen-unit) * 1.2);text-align:left}.screen-code-card label{display:block;margin-bottom:calc(var(--screen-unit) * .35);font-size:calc(var(--screen-unit) * .9);font-weight:800;color:var(--color-secondary)}.screen-code-card input{width:100%;padding:calc(var(--screen-unit) * .75) calc(var(--screen-unit) * .95);border:2px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);background:var(--color-surface);color:var(--color-on-surface);font:inherit;font-size:calc(var(--screen-unit) * 1.85);font-weight:800;letter-spacing:.06em;text-align:center}.screen-code-card input:focus{outline:none;border-color:var(--color-primary)}.screen-code-card button,.screen-code-retry,.screen-code-signout{width:100%;margin-top:calc(var(--screen-unit) * .85);padding:calc(var(--screen-unit) * .7);border:none;border-radius:calc(var(--screen-unit) * .5);background:var(--color-primary);color:var(--color-on-primary);font:inherit;font-size:calc(var(--screen-unit) * 1.15);font-weight:900;cursor:pointer}.screen-code-card button:disabled{opacity:.5;cursor:default}.screen-code-signout{margin-top:calc(var(--screen-unit) * .5);background:transparent;color:var(--color-secondary);border:1px solid var(--color-outline-variant)}.screen-code-error{margin-top:calc(var(--screen-unit) * .55);padding:calc(var(--screen-unit) * .45) calc(var(--screen-unit) * .6);border-radius:calc(var(--screen-unit) * .35);background:var(--color-error);color:var(--color-on-error);font-size:calc(var(--screen-unit) * .9);font-weight:800;text-align:center}.screen-picker{position:fixed;inset:0;overflow-y:auto;padding:4vh 5vw;background:var(--color-surface);color:var(--color-on-surface);-ms-overflow-style:none;scrollbar-width:none}.screen-picker::-webkit-scrollbar{display:none}.screen-picker-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:3vh}.screen-picker-logo{height:7vh;max-width:25vw;object-fit:contain;vertical-align:middle}.screen-picker-head .screen-support-badge{margin-left:1rem;font-size:.8rem}.screen-picker h1{margin:0;font-size:clamp(2rem,4.2vh,4.5rem);font-weight:900}.screen-picker>p{margin:.6rem 0 2rem;font-size:clamp(1rem,2vh,1.5rem);color:var(--color-secondary)}.screen-picker-surface{display:inline-flex;gap:.5rem;margin:0 0 1.5rem}.screen-picker-surface button{padding:.7em 1.1em;border:1px solid var(--color-outline-variant);border-radius:.6em;background:transparent;color:var(--color-secondary);font:inherit;font-weight:800;cursor:pointer}.screen-picker-surface button.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-picker-signout{padding:.7em 1.2em;border:1px solid var(--color-outline-variant);border-radius:.6em;background:transparent;color:var(--color-secondary);font:inherit;font-weight:800;cursor:pointer}.screen-picker-error{margin-bottom:1.2rem;padding:.8em 1em;border-radius:.5em;background:var(--color-error);color:var(--color-on-error);font-weight:800}.screen-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(27rem,100%),1fr));gap:1rem}.screen-picker-item{display:flex;flex-direction:column;align-items:flex-start;gap:.35em;padding:1.2em 1.4em;border:1px solid var(--color-outline-variant);border-radius:.9em;background:var(--color-surface);color:var(--color-on-surface);font:inherit;text-align:left;cursor:pointer}.screen-picker-item:hover,.screen-picker-item:focus-visible{border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:2px}.screen-picker-item:disabled{opacity:.6;cursor:default}.screen-picker-name{font-size:clamp(1.2rem,2.5vh,2rem);font-weight:900}.screen-picker-location{font-size:clamp(.9rem,1.7vh,1.25rem);color:var(--color-secondary)}.screen-picker-meta{display:flex;flex-wrap:wrap;gap:.7em;font-size:clamp(.75rem,1.4vh,1rem);font-weight:700;color:var(--color-secondary)}.screen-picker-inactive{color:var(--color-amber)}.screen-picker-empty{padding:2rem;border:1px dashed var(--color-outline-variant);border-radius:.8rem;color:var(--color-secondary);font-weight:700}.screen-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:3vh 4vw;background-color:#0000008c!important}.screen-settings{width:min(88vw,66rem);max-height:90vh;overflow-y:auto;padding:calc(var(--screen-unit) * 1.3) calc(var(--screen-unit) * 1.5);background:var(--color-surface);color:var(--color-on-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .9);-ms-overflow-style:none;scrollbar-width:none}.screen-settings::-webkit-scrollbar{display:none}.screen-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.screen-settings-head h2{margin:0;font-size:calc(var(--screen-unit) * 1.5);font-weight:650}.screen-settings-head p{margin:.25em 0 0;color:var(--color-secondary);font-size:calc(var(--screen-unit) * .85);font-weight:600}.screen-settings-close{width:calc(var(--screen-unit) * 2.2);height:calc(var(--screen-unit) * 2.2);border:1px solid var(--color-outline-variant);border-radius:999px;background:transparent;color:var(--color-on-surface);font:inherit;font-size:calc(var(--screen-unit) * 1.5);line-height:1;cursor:pointer}.screen-settings-section{margin-top:calc(var(--screen-unit) * 1.1)}.screen-settings-section h3{margin:0;font-size:calc(var(--screen-unit) * .9);font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--color-secondary)}.screen-settings-hint{margin:.4em 0 .9em;font-size:calc(var(--screen-unit) * .8);font-weight:600;color:var(--color-secondary)}.screen-language-options{display:flex;flex-wrap:wrap;gap:calc(var(--screen-unit) * .55);margin-top:calc(var(--screen-unit) * .5)}.screen-language-option{min-width:calc(var(--screen-unit) * 7);padding:calc(var(--screen-unit) * .55) calc(var(--screen-unit) * 1);border:2px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);background:transparent;color:var(--color-on-surface);font:inherit;font-size:calc(var(--screen-unit) * .9);font-weight:600;cursor:pointer}.screen-language-option.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-language-option:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.screen-switch-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.2em;margin-top:calc(var(--screen-unit) * .5);padding:calc(var(--screen-unit) * .8) calc(var(--screen-unit) * .95);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .6);background:var(--color-surface-container-lowest, var(--color-surface));color:var(--color-on-surface);font:inherit;text-align:left;cursor:pointer}.screen-switch-row:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.screen-switch-text{min-width:0;display:flex;flex-direction:column;gap:.25em}.screen-switch-label{font-size:calc(var(--screen-unit) * 1);font-weight:650;line-height:1.15}.screen-switch-hint{font-size:calc(var(--screen-unit) * .8);font-weight:600;line-height:1.35;color:var(--color-secondary)}.screen-switch-track{position:relative;width:calc(var(--screen-unit) * 3.4);height:calc(var(--screen-unit) * 1.9);flex:0 0 auto;border-radius:999px;background:var(--color-outline-variant);transition:background .2s ease}.screen-switch-row[aria-checked=true] .screen-switch-track{background:var(--color-primary)}.screen-switch-thumb{position:absolute;top:calc(var(--screen-unit) * .2);left:calc(var(--screen-unit) * .2);width:calc(var(--screen-unit) * 1.5);height:calc(var(--screen-unit) * 1.5);border-radius:50%;background:var(--color-surface);transition:transform .2s ease}.screen-switch-row[aria-checked=true] .screen-switch-thumb{transform:translate(calc(var(--screen-unit) * 1.5))}.screen-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:calc(var(--screen-unit) * .65)}.screen-theme{position:relative;display:flex;flex-direction:column;align-items:center;gap:calc(var(--screen-unit) * .4);padding:calc(var(--screen-unit) * .6);border:2px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .65);background:transparent;color:var(--color-on-surface);font:inherit;cursor:pointer}.screen-theme.is-selected{border-color:var(--color-primary)}.screen-theme:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.screen-theme-orb{width:calc(var(--screen-unit) * 3.2);height:calc(var(--screen-unit) * 1.8);border-radius:999px}.screen-theme-name{font-size:calc(var(--screen-unit) * .82);font-weight:600}.screen-theme-check{position:absolute;top:calc(var(--screen-unit) * .35);right:calc(var(--screen-unit) * .35);width:calc(var(--screen-unit) * 1.1);height:calc(var(--screen-unit) * 1.1);border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-on-primary);font-size:calc(var(--screen-unit) * .7);font-weight:800}.screen-settings-error{margin-top:calc(var(--screen-unit) * .7);padding:calc(var(--screen-unit) * .45) calc(var(--screen-unit) * .6);border-radius:calc(var(--screen-unit) * .35);background:var(--color-error);color:var(--color-on-error);font-size:calc(var(--screen-unit) * .82);font-weight:650}.screen-settings-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:calc(var(--screen-unit) * .7);margin-top:calc(var(--screen-unit) * 1.2)}.screen-settings-left,.screen-settings-right{display:flex;gap:calc(var(--screen-unit) * .55);flex-wrap:wrap}.screen-settings-button{padding:calc(var(--screen-unit) * .5) calc(var(--screen-unit) * .9);border-radius:calc(var(--screen-unit) * .45);font:inherit;font-size:calc(var(--screen-unit) * .85);font-weight:600;cursor:pointer}.screen-settings-button.ghost{border:1px solid var(--color-outline-variant);background:transparent;color:var(--color-secondary)}.screen-settings-left .screen-settings-button.ghost:first-child{color:var(--color-error);border-color:var(--color-error)}.screen-settings-button.primary{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-settings-button:disabled{opacity:.5;cursor:default}.screen-settings-button:focus-visible,.screen-settings-close:focus-visible,.screen-picker-signout:focus-visible,.screen-code-card button:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.screen-portrait{display:none}.screen-customer,.screen-day,.screen-stop-name,.screen-countdown,.screen-badge,.screen-clock-live,.screen-here-text,.screen-map-legend-index{font-weight:650}.screen-date,.screen-stop-distance,.screen-stop-direction,.screen-min-label,.screen-map-legend-title,.screen-map-legend-name,.screen-map-live,.screen-support-badge,.screen-demo-badge,.screen-map-loading,.screen-empty-state{font-weight:600}.screen-clock{font-weight:500}@media(orientation:portrait){[data-theme] #root>.screen-portrait{background-color:var(--color-surface)}.screen-portrait{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:8vw;background:var(--color-surface);color:var(--color-on-surface);text-align:center}.screen-portrait-logo{display:block;width:min(60vw,22rem);max-height:14vh;object-fit:contain;margin:0 auto 2rem}.screen-portrait-logo.is-onlight,[data-theme=daylight] .screen-portrait-logo.is-ondark,[data-theme=latte] .screen-portrait-logo.is-ondark,[data-theme=rosegold] .screen-portrait-logo.is-ondark{display:none}[data-theme=daylight] .screen-portrait-logo.is-onlight,[data-theme=latte] .screen-portrait-logo.is-onlight,[data-theme=rosegold] .screen-portrait-logo.is-onlight{display:block}.screen-portrait h1{margin:0 0 .6rem;font-size:clamp(1.5rem,4.5vh,3rem);font-weight:900}.screen-portrait p{margin:0;font-size:clamp(1rem,2.2vh,1.4rem);color:var(--color-secondary)}}@keyframes screen-rows-in{0%{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.screen-frame{transition:none}.screen-rows{animation:none}.screen-here-pulse{animation:none;opacity:.2}}.screen-root.is-map-hidden .screen-body{grid-template-columns:minmax(0,1fr)}.screen-root.is-map-hidden .screen-map-column{display:none}.screen-root.is-map-hidden .screen-stops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:calc(var(--screen-unit) * .7)}.screen-root.is-map-hidden .screen-stop-head{min-height:calc(var(--screen-unit) * 2.7);gap:calc(var(--screen-unit) * .9)}.screen-root.is-map-hidden .screen-stop-name{font-size:calc(var(--screen-unit) * 2)}.screen-root.is-map-hidden .screen-stop-distance{font-size:calc(var(--screen-unit) * 1.3)}.screen-root.is-map-hidden .screen-stop-direction{font-size:calc(var(--screen-unit) * 1)}.screen-root.is-map-hidden .screen-rows{padding-top:calc(var(--screen-unit) * .7)}.screen-root.is-map-hidden .screen-row{gap:calc(var(--screen-unit) * .8)}.screen-root.is-map-hidden .screen-badge{min-width:calc(var(--screen-unit) * 2.8);height:calc(var(--screen-unit) * 1.95);padding:0 calc(var(--screen-unit) * .55);border-radius:calc(var(--screen-unit) * .4);font-size:calc(var(--screen-unit) * 1.35)}.screen-root.is-map-hidden .screen-destination{font-size:calc(var(--screen-unit) * 1.8)}.screen-root.is-map-hidden .screen-time{font-size:calc(var(--screen-unit) * 2.15);width:calc(var(--screen-unit) * 9.2)}.screen-root.is-map-hidden .screen-min-label{font-size:calc(var(--screen-unit) * 1.05)}.screen-root.is-map-hidden .screen-clock{font-size:calc(var(--screen-unit) * 1.65)}.screen-root.is-map-hidden .screen-delay{font-size:calc(var(--screen-unit) * 1)}.screen-root header,.screen-picker header,.screen-modal header{-webkit-clip-path:none!important;clip-path:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:transparent!important;border:0!important;box-shadow:none!important;will-change:auto!important}.screen-root .screen-header{background:var(--color-surface)!important;border:1px solid var(--color-outline-variant)!important;border-radius:calc(var(--screen-unit) * .75)!important}.screen-body{position:relative}[data-screen-focusable]{outline:none}[data-screen-focusable]:focus{outline:calc(var(--screen-unit) * .22) solid var(--color-primary);outline-offset:calc(var(--screen-unit) * .18)}.screen-header{position:relative;z-index:40}.screen-planner{position:relative;flex:0 1 30vw;min-width:0;max-width:32vw;font-family:var(--font-body, Inter, system-ui, sans-serif)}.screen-planner-bar{display:flex;align-items:center;gap:calc(var(--screen-unit) * .35);width:100%;height:calc(var(--screen-unit) * 3.1);padding:0 calc(var(--screen-unit) * .45) 0 calc(var(--screen-unit) * .9);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);background:var(--color-surface-container-lowest, var(--color-surface));color:var(--color-on-surface)}.screen-planner-bar-main{flex:1 1 auto;min-width:0;height:100%;display:flex;align-items:center;gap:calc(var(--screen-unit) * .55);padding:0;border:0;background:transparent;color:inherit;font-family:inherit;font-size:calc(var(--screen-unit) * 1);font-weight:600;text-align:left;cursor:pointer}.screen-planner.is-open .screen-planner-bar{border-color:var(--color-primary)}.screen-planner-bar-main:focus{outline:none}.screen-planner-bar:focus-within{border-color:var(--color-primary);outline:calc(var(--screen-unit) * .16) solid var(--color-primary);outline-offset:calc(var(--screen-unit) * .06)}.screen-planner-icon{flex:0 0 auto;width:calc(var(--screen-unit) * 1.25);height:calc(var(--screen-unit) * 1.25);color:var(--color-primary)}.screen-planner-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-planner-text.is-placeholder{color:var(--color-secondary);opacity:.8}.screen-planner-dropdown{position:absolute;top:calc(100% + calc(var(--screen-unit) * .7));left:50%;transform:translate(-50%);z-index:60;width:min(56vw,1060px);display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .55);padding:calc(var(--screen-unit) * .85) calc(var(--screen-unit) * 1) calc(var(--screen-unit) * .75);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75);box-shadow:0 calc(var(--screen-unit) * .8) calc(var(--screen-unit) * 2.4) #0006}.screen-planner-close{flex:0 0 auto;width:calc(var(--screen-unit) * 2.3);height:calc(var(--screen-unit) * 2.3);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .42);background:transparent;color:var(--color-on-surface);cursor:pointer}.screen-planner-close svg{width:calc(var(--screen-unit) * 1.1);height:calc(var(--screen-unit) * 1.1)}.screen-planner-dropdown .screen-trip-results{flex:0 1 auto;min-height:0;max-height:34vh;overflow-y:auto;scrollbar-width:none}.screen-planner-dropdown .screen-trip-results::-webkit-scrollbar{display:none}.screen-planner-dropdown .screen-trip-result{padding:calc(var(--screen-unit) * .34) calc(var(--screen-unit) * .6)}.screen-planner-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--screen-unit) * .35);padding:calc(var(--screen-unit) * .5) calc(var(--screen-unit) * .8);text-align:center}.screen-planner-empty-title{font-size:calc(var(--screen-unit) * 1);font-weight:650;color:var(--color-on-surface)}.screen-planner-empty-origin{font-size:calc(var(--screen-unit) * .86);font-weight:600;color:var(--color-secondary)}.screen-trip-results{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .3)}.screen-trip-section{padding:calc(var(--screen-unit) * .18) calc(var(--screen-unit) * .2) 0;font-size:calc(var(--screen-unit) * .66);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-secondary)}.screen-trip-result{display:flex;align-items:center;gap:calc(var(--screen-unit) * .6);padding:calc(var(--screen-unit) * .42) calc(var(--screen-unit) * .65);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface);color:var(--color-on-surface);font-family:inherit;text-align:left;cursor:pointer}.screen-trip-result-icon{flex:0 0 auto;display:inline-flex;color:var(--color-primary)}.screen-trip-result-icon svg{width:calc(var(--screen-unit) * 1.2);height:calc(var(--screen-unit) * 1.2)}.screen-trip-result-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.screen-trip-result-name{font-size:calc(var(--screen-unit) * 1.2);font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-trip-result-detail{font-size:calc(var(--screen-unit) * .86);font-weight:600;color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-trip-result-arrow{flex:0 0 auto;width:calc(var(--screen-unit) * 1.1);height:calc(var(--screen-unit) * 1.1);color:var(--color-secondary)}.screen-trip-result-meta{flex:0 0 auto;font-size:calc(var(--screen-unit) * .84);font-weight:600;color:var(--color-secondary);white-space:nowrap}.screen-trip-empty,.screen-trip-busy{padding:calc(var(--screen-unit) * .6) calc(var(--screen-unit) * .75);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface-container-high);font-size:calc(var(--screen-unit) * .95);font-weight:600;color:var(--color-secondary)}.screen-trip-busy{color:var(--color-on-surface);font-weight:650}.screen-trip-error{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--screen-unit) * .6);padding:calc(var(--screen-unit) * .5) calc(var(--screen-unit) * .7);border:1px solid var(--color-error);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface-container-high);font-size:calc(var(--screen-unit) * .95);font-weight:600}.screen-trip-error-retry{flex:0 0 auto;padding:calc(var(--screen-unit) * .3) calc(var(--screen-unit) * .6);border:1px solid var(--color-primary);border-radius:calc(var(--screen-unit) * .4);background:var(--color-primary);color:var(--color-on-primary);font-family:inherit;font-size:calc(var(--screen-unit) * .85);font-weight:650;cursor:pointer}.screen-trip-hint{padding-top:calc(var(--screen-unit) * .25);font-size:calc(var(--screen-unit) * .78);font-weight:600;color:var(--color-secondary)}.screen-keyboard{width:100%;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .45)}.screen-keyboard-row{display:flex;gap:calc(var(--screen-unit) * .42);justify-content:center}.screen-key{flex:1 1 0;min-width:0;height:calc(var(--screen-unit) * 3.05);display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--screen-unit) * .25);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .45);background:var(--color-surface-container-lowest, var(--color-surface));color:var(--color-on-surface);font-family:inherit;font-size:calc(var(--screen-unit) * 1.25);font-weight:650;cursor:pointer}.screen-key svg{width:calc(var(--screen-unit) * 1.25);height:calc(var(--screen-unit) * 1.25)}.screen-keyboard-actions .screen-key{flex:0 0 auto;padding:0 calc(var(--screen-unit) * .9)}.screen-keyboard-actions .screen-key-space{flex:1 1 auto}.screen-key-submit{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);padding:0 calc(var(--screen-unit) * 1.2)}.screen-key-submit span{font-size:calc(var(--screen-unit) * .95)}.screen-planner-time{display:flex;align-items:center;flex-wrap:wrap;gap:calc(var(--screen-unit) * .4)}.screen-planner-time-label{margin-right:calc(var(--screen-unit) * .2);font-size:calc(var(--screen-unit) * .68);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--color-secondary)}.screen-planner-time-chip{display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .3);padding:calc(var(--screen-unit) * .28) calc(var(--screen-unit) * .55);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .42);background:var(--color-surface-container-lowest, var(--color-surface));color:var(--color-on-surface);font-family:inherit;font-size:calc(var(--screen-unit) * .82);font-weight:600;cursor:pointer}.screen-planner-time-chip.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-planner-time-clock{font-size:calc(var(--screen-unit) * .76);font-weight:650;opacity:.85}.screen-planner-time-editor{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:calc(var(--screen-unit) * .55);padding:calc(var(--screen-unit) * .85) calc(var(--screen-unit) * .7);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);background:var(--color-surface-container-lowest, var(--color-surface))}.screen-planner-time-field{display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .3)}.screen-planner-time-field-label{margin-right:calc(var(--screen-unit) * .15);font-size:calc(var(--screen-unit) * .66);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--color-secondary)}.screen-planner-time-step{width:calc(var(--screen-unit) * 2.3);height:calc(var(--screen-unit) * 2.3);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .42);background:var(--color-surface);color:var(--color-on-surface);font-family:inherit;font-size:calc(var(--screen-unit) * 1.25);font-weight:650;cursor:pointer}.screen-planner-time-value{min-width:calc(var(--screen-unit) * 2.3);text-align:center;font-size:calc(var(--screen-unit) * 1.7);font-weight:650;font-variant-numeric:tabular-nums}.screen-planner-time-colon{font-size:calc(var(--screen-unit) * 1.7);font-weight:650;color:var(--color-secondary)}.screen-planner-time-editor-actions{display:flex;gap:calc(var(--screen-unit) * .4);margin-left:calc(var(--screen-unit) * .4)}.screen-planner-time-apply,.screen-planner-time-cancel{padding:calc(var(--screen-unit) * .42) calc(var(--screen-unit) * .8);border-radius:calc(var(--screen-unit) * .42);font-family:inherit;font-size:calc(var(--screen-unit) * .85);font-weight:600;cursor:pointer}.screen-planner-time-apply{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-planner-time-cancel{border:1px solid var(--color-outline-variant);background:transparent;color:var(--color-on-surface)}.screen-planner-more{display:flex;align-items:center;justify-content:center;gap:calc(var(--screen-unit) * .3);font-size:calc(var(--screen-unit) * .78);font-weight:600;color:var(--color-secondary)}.screen-planner-more-arrow{font-size:calc(var(--screen-unit) * .82);color:var(--color-primary)}.screen-journey{min-height:0;height:100%;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .55);padding:calc(var(--screen-unit) * .8) calc(var(--screen-unit) * .9);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .75);background:var(--color-surface);overflow:hidden}.screen-journey-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:calc(var(--screen-unit) * .7)}.screen-journey-back{grid-row:1 / span 2;display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .15);padding:calc(var(--screen-unit) * .32) calc(var(--screen-unit) * .55);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface);color:var(--color-primary);font-family:inherit;font-size:calc(var(--screen-unit) * .82);font-weight:800;cursor:pointer}.screen-journey-back svg{width:calc(var(--screen-unit) * 1.1);height:calc(var(--screen-unit) * 1.1)}.screen-journey-title{margin:0;min-width:0;font-size:calc(var(--screen-unit) * 1.65);font-weight:900;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-journey-meta{font-size:calc(var(--screen-unit) * .8);font-weight:700;color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-journey-summary{padding:calc(var(--screen-unit) * .55) calc(var(--screen-unit) * .75);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .55);background:var(--color-surface-container-lowest, var(--color-surface))}.screen-journey-summary-times{display:flex;align-items:baseline;gap:calc(var(--screen-unit) * .4);font-size:calc(var(--screen-unit) * 1.2);font-weight:900}.screen-journey-summary-sep{color:var(--color-secondary)}.screen-journey-summary-facts{margin-top:calc(var(--screen-unit) * .2);display:flex;flex-wrap:wrap;gap:calc(var(--screen-unit) * .25) calc(var(--screen-unit) * .8);font-size:calc(var(--screen-unit) * .88);font-weight:700;color:var(--color-secondary)}.screen-journey-fact.is-duration{color:var(--color-on-surface);font-weight:900}.screen-journey-options{display:flex;gap:calc(var(--screen-unit) * .45)}.screen-journey-option{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .08);padding:calc(var(--screen-unit) * .38) calc(var(--screen-unit) * .55);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface);color:var(--color-on-surface);font-family:inherit;text-align:left;cursor:pointer}.screen-journey-option.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.screen-journey-option-label{font-size:calc(var(--screen-unit) * .66);font-weight:900;letter-spacing:.1em;text-transform:uppercase;opacity:.85}.screen-journey-option-time{font-size:calc(var(--screen-unit) * .92);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-journey-legs{flex:1 1 auto;min-height:0;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:calc(var(--screen-unit) * .38);overflow:hidden}.screen-journey-leg{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:calc(var(--screen-unit) * .55);padding:calc(var(--screen-unit) * .42) calc(var(--screen-unit) * .55);border:1px solid var(--color-outline-variant);border-left:calc(var(--screen-unit) * .22) solid var(--color-primary);border-radius:calc(var(--screen-unit) * .5);background:var(--color-surface)}.screen-journey-leg.is-walk{border-left-color:var(--color-secondary)}.screen-journey-leg.is-tram{border-left-color:var(--color-tram)}.screen-journey-leg.is-rail{border-left-color:var(--color-train)}.screen-journey-leg.is-ferry{border-left-color:var(--color-regional)}.screen-journey-leg.is-arrive{border-left-color:var(--color-primary);background:var(--color-surface-container-lowest, var(--color-surface))}.screen-journey-leg-time{font-size:calc(var(--screen-unit) * .98);font-weight:900;white-space:nowrap}.screen-journey-leg-mode{display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .2);color:var(--color-primary);font-size:calc(var(--screen-unit) * .98);font-weight:900;white-space:nowrap}.screen-journey-leg-mode svg{width:calc(var(--screen-unit) * 1.2);height:calc(var(--screen-unit) * 1.2)}.screen-journey-leg-mode.is-walk{color:var(--color-secondary)}.screen-journey-leg-text{display:flex;flex-direction:column;min-width:0}.screen-journey-leg-title{font-size:calc(var(--screen-unit) * 1.02);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-journey-leg-detail{font-size:calc(var(--screen-unit) * .8);font-weight:600;color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-journey-leg-end{font-size:calc(var(--screen-unit) * .8);font-weight:700;color:var(--color-secondary);white-space:nowrap}.screen-journey-actions{display:flex;gap:calc(var(--screen-unit) * .5)}.screen-journey-action{display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .3);padding:calc(var(--screen-unit) * .42) calc(var(--screen-unit) * .8);border:1px solid var(--color-primary);border-radius:calc(var(--screen-unit) * .5);background:var(--color-primary);color:var(--color-on-primary);font-family:inherit;font-size:calc(var(--screen-unit) * .9);font-weight:800;cursor:pointer}.screen-journey-action svg{width:calc(var(--screen-unit) * 1.15);height:calc(var(--screen-unit) * 1.15)}.screen-map-journey{position:absolute;left:calc(var(--screen-unit) * .7);right:calc(var(--screen-unit) * .7);bottom:calc(var(--screen-unit) * .7);padding:calc(var(--screen-unit) * .55) calc(var(--screen-unit) * .7);background:var(--color-surface);border:1px solid var(--color-outline-variant);border-radius:calc(var(--screen-unit) * .5)}.screen-map-journey-title{font-size:calc(var(--screen-unit) * .72);font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--color-secondary);margin-bottom:calc(var(--screen-unit) * .22)}.screen-map-journey-row{display:flex;align-items:baseline;justify-content:space-between;gap:calc(var(--screen-unit) * .6)}.screen-map-journey-dest{min-width:0;font-size:calc(var(--screen-unit) * 1.1);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-map-journey-meta{flex:0 0 auto;font-size:calc(var(--screen-unit) * .92);font-weight:800;color:var(--color-primary);white-space:nowrap}.screen-map-journey-legend{margin-top:calc(var(--screen-unit) * .28);display:flex;gap:calc(var(--screen-unit) * .75)}.screen-map-journey-key{display:inline-flex;align-items:center;gap:calc(var(--screen-unit) * .25);font-size:calc(var(--screen-unit) * .76);font-weight:700;color:var(--color-secondary)}.screen-map-journey-key:before{content:"";display:inline-block;width:calc(var(--screen-unit) * .7);height:calc(var(--screen-unit) * .7);border-radius:999px}.screen-map-journey-key.is-walk:before{background:var(--color-secondary)}.screen-map-journey-key.is-transit:before{background:var(--color-primary)}.screen-journey-pin{display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none}.screen-journey-pin-dot{width:calc(var(--screen-unit) * 1.25);height:calc(var(--screen-unit) * 1.25);border-radius:50%;background:var(--color-primary);border:calc(var(--screen-unit) * .16) solid var(--color-surface);box-shadow:0 2px 8px #00000040}.screen-journey-pin.is-end .screen-journey-pin-dot{background:#dc143c}.screen-journey-pin-chip{padding:calc(var(--screen-unit) * .12) calc(var(--screen-unit) * .42);border-radius:calc(var(--screen-unit) * .32);color:#fff;font-size:calc(var(--screen-unit) * .9);font-weight:900;box-shadow:0 2px 6px #0003}.screen-journey-pin-label{max-width:calc(var(--screen-unit) * 14);padding:calc(var(--screen-unit) * .08) calc(var(--screen-unit) * .36);border-radius:calc(var(--screen-unit) * .3);background:var(--color-surface);color:var(--color-on-surface);font-size:calc(var(--screen-unit) * .74);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 4px #00000026}
