.audit-view .hud,.audit-view #toast,.audit-view #touch-controls,.audit-view .photo-credits-button{display:none!important}.debug-metrics:not([hidden]){background:var(--glass-strong);width:max-content;color:var(--text-2);font:11px/1.5 var(--font-sans);pointer-events:none;border-radius:6px;margin-top:5px;padding:3px 7px;display:block}:root{--glass:#1213169e;--glass-strong:#101114e0;--glass-border:#ffffff17;--glass-highlight:#ffffff14;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.045 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--hover:#ffffff14;--divider:#ffffff1a;--text:#f6f5f2;--text-2:#f6f5f2ad;--text-3:#f6f5f270;--taxi:#ffc21a;--taxi-ink:#17140a;--sign-green:#0b6a46;--highway:#c08a3e;--ok:#5ee08f;--warn:#ffc857;--bad:#ff7a6b;--edge:20px;--bar-h:50px;--hud-top:max(var(--edge), env(safe-area-inset-top,0px));--hud-left:max(var(--edge), env(safe-area-inset-left,0px));--hud-right:max(var(--edge), env(safe-area-inset-right,0px));--hud-bottom:max(var(--edge), env(safe-area-inset-bottom,0px));--dock-bottom:calc(var(--hud-bottom) + 14px);--dock-clear:calc(var(--dock-bottom) + 64px);--joystick-size:110px;--r-panel:16px;--r-ctl:10px;--shadow:0 18px 40px -18px #000000b3, 0 2px 8px #0003;--ease-out:cubic-bezier(.22, 1, .36, 1);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--font-sign:"Overpass", "Inter", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}html,body{width:100%;height:100%;color:var(--text);font-family:var(--font-sans);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;background-color:#0a0b0d;font-size:14px;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0}:focus-visible{outline-offset:2px;outline:2px solid #ffffffd9}.icon-sprite{width:0;height:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.icon-sm{width:14px;height:14px}kbd{min-width:19px;height:19px;font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-2);background:#ffffff14;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0 5px;font-size:10.5px;font-weight:650;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff12,inset 0 -1px #0000004d}#viewport{z-index:1;cursor:grab;width:100vw;height:100vh;position:fixed;inset:0}#viewport:active{cursor:grabbing}body:before,body:after{content:"";z-index:5;pointer-events:none;transition:opacity .35s;position:fixed;left:0;right:0}body:before{background:linear-gradient(#00000029,#0000);height:96px;top:0}body:after{background:linear-gradient(#0000,#00000047);height:150px;bottom:0}.panel{background:var(--grain), var(--glass);-webkit-backdrop-filter:blur(22px)saturate(170%);backdrop-filter:blur(22px)saturate(170%);border:1px solid var(--glass-border);border-radius:var(--r-panel);box-shadow:inset 0 1px 0 var(--glass-highlight), var(--shadow)}body[data-quality=performance] :is(.panel,.popover,#help,dialog.photo-credits){background:var(--glass-strong);-webkit-backdrop-filter:none;backdrop-filter:none}#loading{z-index:100;background:radial-gradient(120% 90% at 50% 38%,#1b1e24 0%,#0c0d10 55%,#060607 100%);place-items:center;transition:opacity .6s,visibility .6s;display:grid;position:fixed;inset:0}#loading.hidden{opacity:0;visibility:hidden;pointer-events:none}.loader{text-align:center;animation:rise-in .8s var(--ease-out) both;flex-direction:column;align-items:center;display:flex}.calgary-mark.loader-mark{width:56px;height:56px;margin-bottom:22px}.loader-title{letter-spacing:-.03em;font-size:34px;font-weight:650;line-height:1.1}.loader-track{background:#ffffff1a;border-radius:3px;width:240px;height:3px;margin:26px 0 14px;position:relative;overflow:hidden}.loader-fill{border-radius:inherit;background:var(--taxi);transform-origin:0;transition:transform .3s;position:absolute;inset:0;transform:scaleX(0)}.loader-track.is-indeterminate .loader-fill{will-change:transform;width:35%;transition:none;animation:1.5s cubic-bezier(.45,0,.25,1) infinite loader-sweep;transform:translate(-100%)}#load-status{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12.5px}@keyframes loader-sweep{0%{transform:translate(-100%)}to{transform:translate(290%)}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hud{z-index:10;pointer-events:none;position:fixed}.hud-header{top:var(--hud-top);left:var(--hud-left);right:var(--hud-right);justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.hud-heading{min-width:0}.brand{min-height:var(--bar-h);text-shadow:0 1px 8px #000b,0 1px 2px #000b;align-items:center;gap:8px;display:flex}.brand h1{letter-spacing:-.015em;font-size:15px;font-weight:700}.hud-status{left:var(--hud-left);right:var(--hud-right);bottom:var(--dock-bottom);justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.hud-location{flex-direction:column;align-items:flex-start;gap:7px;min-width:0;max-width:min(246px,50% - 220px);display:flex}.hud-bottom-center{left:50%;bottom:var(--dock-bottom);transform:translate(-50%)}.hud :is(button,a){pointer-events:auto}body.hud-minimized:before,body.hud-minimized:after{opacity:0}body.hud-minimized :is(.hud-heading,.hud-status,.hud-bottom-center,#touch-controls,.landmark-labels){visibility:hidden}body.hud-minimized .toolbar>:not(#btn-toggle-hud){display:none}.calgary-mark{flex:none;width:30px;height:30px;display:block}.toolbar{min-height:var(--bar-h);border-radius:13px;flex:none;align-items:center;gap:2px;padding:3px;display:flex}.tool-btn{white-space:nowrap;min-height:42px;color:var(--text);border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.tool-btn.icon-only{width:42px;padding:0}.time-btn.pop-item{justify-content:flex-start;gap:10px}.icon-show,body.hud-minimized .icon-hide{display:none}body.hud-minimized .icon-show{display:block}.tool-btn:active,.time-btn:active,.icon-btn:active,.mode-btn:active,.pop-item:active{transform:scale(.97)}.popover{--popover-width:284px;width:min(var(--popover-width), calc(100% - var(--hud-left) - var(--hud-right)));max-height:calc(100dvh - var(--hud-top) - var(--hud-bottom) - var(--bar-h));overscroll-behavior:contain;scrollbar-width:thin;color:var(--text);background:var(--grain), var(--glass-strong);-webkit-backdrop-filter:blur(26px)saturate(170%);backdrop-filter:blur(26px)saturate(170%);border:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-highlight), 0 28px 60px -22px #000c, 0 4px 14px #0000004d;transform-origin:100% 0;transition:opacity .18s ease, transform .26s var(--ease-out), overlay .26s allow-discrete, display .26s allow-discrete;border-radius:14px;margin:0;padding:6px;position:fixed;inset:auto;overflow-y:auto}.popover[data-side=above]{transform-origin:100% 100%}.popover:not(:popover-open){opacity:0;transform:translateY(-4px)scale(.98)}.popover[data-side=above]:not(:popover-open){transform:translateY(4px)scale(.98)}@starting-style{.popover:popover-open{opacity:0;transform:translateY(-4px)scale(.98)}.popover[data-side=above]:popover-open{transform:translateY(4px)scale(.98)}}.pop-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);padding:9px 10px 6px;font-size:10.5px;font-weight:650}.pop-title:not(:first-child){border-top:1px solid var(--divider);margin-top:5px;padding-top:12px}.pop-item{text-align:left;width:100%;color:var(--text);border-radius:9px;justify-content:space-between;align-items:center;gap:16px;padding:8px 10px;font-size:13px;font-weight:550;transition:background-color .15s;display:flex}.pop-item:hover{background:var(--hover)}.pop-item.active,.pop-item.active:hover{background:var(--text);color:#121314}.pop-item.active kbd{color:#0000008c;box-shadow:none;background:#00000014}.tp-btn{flex-direction:column;align-items:flex-start;gap:1px}.pop-sub{color:var(--text-3);font-size:11.5px;font-weight:500}.location{pointer-events:none;flex-direction:column;align-items:flex-start;gap:7px;display:flex}.location-place{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:#ffffffeb;text-shadow:0 1px 2px #000000b3,0 0 14px #0006;max-width:320px;animation:rise-in .4s var(--ease-out) both;font-size:11px;font-weight:700;overflow:hidden}.location-signs{animation:rise-in .4s var(--ease-out) both;align-items:center;gap:6px;display:flex}.location-near{letter-spacing:.06em;text-transform:uppercase;color:#ffffffd9;text-shadow:0 1px 2px #000000b3;font-size:11px;font-weight:650}.street-sign{text-overflow:ellipsis;white-space:nowrap;max-width:210px;font-family:var(--font-sign);letter-spacing:.01em;color:#fff;background:linear-gradient(180deg, #ffffff1a, #fff0 55%), var(--sign-green);outline-offset:-4px;border-radius:6px;outline:1.5px solid #ffffffeb;padding:9px 13px 7px;font-size:15px;font-weight:700;line-height:1.05;overflow:hidden;box-shadow:0 1px #00000059,0 10px 22px -10px #000000bf}.radar{-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer;background:#0a1118;border-radius:18px;width:200px;height:128px;position:relative;overflow:hidden}.radar:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff0f,inset 0 0 30px #0000008c}#minimap{width:100%;height:100%;display:block}.radar-north{color:#fff;pointer-events:none;background:#0a0c0fb8;border-radius:50%;place-items:center;width:17px;height:17px;font-size:9px;font-weight:800;line-height:1;display:grid;position:absolute;top:7px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff24}.radar-key{z-index:1;color:#ffffffd9;background:#0a0c0f99;transition:background-color .2s,color .2s;position:absolute;top:9px;right:9px}.radar:hover .radar-key{color:var(--taxi-ink);background:var(--taxi);box-shadow:none}.mode-switch{border-radius:14px;flex:none;gap:2px;padding:4px;display:flex}.mode-btn{white-space:nowrap;min-height:44px;color:var(--text-2);border-radius:9px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:13px;font-weight:650;display:inline-flex}.mode-btn.active{color:var(--taxi-ink);background:var(--taxi)}.mode-btn .icon{width:19px;height:19px}.mode-btn.active kbd{color:var(--taxi-ink);box-shadow:none;background:#17140a1a}.camera-menu{color:var(--text);background:var(--hover);margin-inline-start:4px}.camera-menu[aria-expanded=true]{color:var(--taxi)}.gauge{border-radius:11px;align-self:flex-end;justify-items:end;gap:3px;padding:8px 12px;display:grid}body:is([data-mode=walk],[data-mode=orbit]) .gauge{display:none}.gauge-speed{align-items:baseline;gap:5px;display:flex}#speed-value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:650;line-height:1}.gauge-unit,.gauge-altitude{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}body:not([data-mode=fly]) .gauge-altitude{display:none}.icon-btn{border-radius:var(--r-ctl);width:44px;height:44px;color:var(--text-2);flex:none;place-items:center;display:inline-grid}.camera-tools{border-top:1px solid var(--divider);color:var(--text-2);align-items:center;gap:4px;margin-top:4px;padding:4px 0 0 10px;display:flex}.camera-tools>span{margin-inline-end:auto}.switch-mark{background:var(--divider);border-radius:10px;align-items:center;width:28px;height:16px;padding:2px;display:grid}.switch-mark:after{content:"";background:var(--text-2);border-radius:50%;width:12px;height:12px}#tour-btn[aria-pressed=true] .switch-mark{background:var(--taxi)}#tour-btn[aria-pressed=true] .switch-mark:after{background:var(--taxi-ink);justify-self:end}.fullmap-modal{z-index:90;background:#0a1118;transition:opacity .25s,visibility .25s;position:fixed;inset:0}.fullmap-modal.hidden{opacity:0;visibility:hidden;pointer-events:none}.fullmap-canvas-wrap{cursor:crosshair;position:absolute;inset:0;overflow:hidden}.fullmap-canvas-wrap.is-panning{cursor:grabbing}.fullmap-header{top:var(--hud-top);left:var(--hud-left);right:var(--hud-right);pointer-events:none;align-items:stretch;gap:10px;display:flex;position:absolute}.fullmap-header>*{pointer-events:auto}.fullmap-modal:not(.hidden) .fullmap-header,.fullmap-modal:not(.hidden) .map-controls,.fullmap-modal:not(.hidden) .fullmap-footer{animation:rise-in .45s var(--ease-out) both}.fullmap-title{align-items:center;gap:12px;min-width:0;padding:9px 20px 9px 11px;display:flex}.fullmap-title h2{letter-spacing:-.01em;white-space:nowrap;font-size:14.5px;font-weight:650;line-height:1.2}.fullmap-subtitle{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.4;overflow:hidden}.fullmap-search-wrap{min-width:180px;color:var(--text-3);cursor:text;flex:0 440px;align-items:center;gap:10px;padding:0 16px;transition:background-color .2s,border-color .2s,color .2s;display:flex}.fullmap-search-wrap:focus-within{color:var(--text-2);background:var(--grain), var(--glass-strong);border-color:#ffffff3d}.fullmap-search{min-width:0;height:100%;color:var(--text);font:inherit;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;flex:1;font-size:13.5px}.fullmap-close{border-radius:var(--r-panel);height:auto;margin-left:auto;padding:0 14px 0 12px}.fullmap-close:hover{background:var(--grain), var(--glass-strong)}.map-controls{top:50%;right:var(--edge);flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;translate:0 -50%}.map-compass{border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.map-compass svg{width:44px;height:44px}.map-compass text{font:800 7.5px var(--font-sans);fill:#fff}.map-zoom{border-radius:14px;flex-direction:column;gap:2px;padding:4px;display:flex}.fullmap-footer{left:50%;bottom:var(--edge);max-width:min(560px, calc(100% - 2 * var(--edge) - 2 * 200px));display:flex;position:absolute;translate:-50%}.fullmap-status{min-width:0;color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;padding:10px 16px;font-size:12.5px;font-weight:500;overflow:hidden}.fullmap-legend{right:var(--edge);bottom:var(--edge);color:var(--text-2);white-space:nowrap;align-items:center;gap:14px;padding:10px 16px;font-size:12px;font-weight:500;display:flex;position:absolute}.fullmap-modal:not(.hidden) .fullmap-legend{animation:rise-in .45s var(--ease-out) both}.legend-item{align-items:center;gap:7px;display:inline-flex}.legend-swatch{flex:none;display:inline-block}.player-swatch{clip-path:polygon(50% 0,100% 100%,50% 78%,0 100%);background:#fff;width:10px;height:11px}.landmark-swatch{background:#fff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 2px #0b0f14,0 0 0 3px #ffffff59}.gps-swatch,.bridge-swatch{border-radius:2px;width:16px;height:4px}.gps-swatch{background:var(--taxi)}.bridge-swatch{background:var(--highway)}.legend-counts{border-left:1px solid var(--divider);color:var(--text-3);padding-left:14px}@media (width<=1800px){.legend-counts{display:none}}@media (width<=1360px){.fullmap-legend{display:none}}#touch-controls{z-index:12;left:var(--hud-left);right:var(--hud-right);bottom:var(--dock-clear);pointer-events:none;-webkit-touch-callout:none;justify-content:space-between;align-items:flex-end;gap:8px;display:flex;position:fixed}body.touch-enabled .hud-status{bottom:calc(var(--dock-clear) + var(--joystick-size) + 8px)}body.touch-enabled .radar,body.touch-enabled kbd{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[hidden]{display:none!important}#viewport,#viewport canvas{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#loading.done{opacity:0;visibility:hidden;pointer-events:none}.settings-panel{--popover-width:306px}.setting-row{color:var(--text-2);justify-content:space-between;align-items:center;gap:20px;padding:10px;font-size:12px;display:flex}.setting-row select{max-width:145px;color:var(--text);border:1px solid var(--glass-border);font:inherit;background:#ffffff0d;border-radius:7px;padding:7px 9px}.setting-row select option{color:#f6f5f2;background:#20232a}.setting-row input{accent-color:var(--taxi)}.setting-row input[type=range]{width:120px}.credits{z-index:9;left:var(--hud-left);right:var(--hud-right);bottom:max(4px, env(safe-area-inset-bottom,0px));color:#ecedf1bd;font-size:10px;line-height:16px}.credits a,.credits button{color:inherit;font-size:inherit;text-decoration:none}.credits a:hover,.credits button:hover{color:var(--text);text-decoration:underline}#toast{z-index:95;bottom:var(--dock-clear);border:1px solid var(--glass-border);background:var(--glass-strong);max-width:calc(100vw - 32px);color:var(--text);opacity:0;pointer-events:none;border-radius:12px;padding:11px 18px;font-size:12px;transition:opacity .2s;position:fixed;left:50%;translate:-50%}#toast.show{opacity:1}.landmark-labels{z-index:6;pointer-events:none;display:none;position:fixed;inset:0}.landmarks-visible .landmark-labels{display:block}.landmark-labels button{border:1px solid var(--glass-border);color:var(--text);background:var(--glass);pointer-events:auto;border-radius:8px;padding:6px 9px;font-size:10px;position:absolute;top:0;left:0;translate:-50% -100%}#atlas{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text);border:0;margin:0;padding:0}#atlas:not([open]){display:none}#atlas[open]{display:block}#atlas-canvas{touch-action:none;width:100%;height:100%;display:block}.fullmap-search{height:58px;color:var(--text);font:inherit;-webkit-user-select:text;user-select:text;font-size:13px}.fullmap-search::placeholder{color:var(--text-3)}.fullmap-results{z-index:3;top:calc(var(--hud-top) + 66px);left:calc(var(--edge) + 252px);width:min(440px,100vw - 40px);max-height:min(420px, calc(100dvh - var(--hud-top) - var(--hud-bottom) - 105px));overscroll-behavior:contain;background:var(--glass-strong);padding:6px;position:absolute;overflow-y:auto}#map-results button{text-align:left;width:100%;color:var(--text);border-radius:9px;flex-direction:column;gap:3px;padding:10px 12px;font-size:13px;display:flex}#map-results button:hover{background:var(--hover)}#map-results small{color:var(--text-3);font-size:11px}#map-results p{color:var(--text-2);padding:12px;font-size:12px}.route-guidance{max-width:100%;color:var(--taxi);background:var(--glass-strong);align-items:center;padding:2px 4px 2px 10px;display:flex}.route-summary{min-width:0;color:inherit;text-align:left;align-items:center;gap:8px;font-size:11px;display:flex}.route-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-guidance .icon-btn{width:44px;height:44px;margin-left:4px}.map-destination{left:50%;bottom:calc(max(var(--edge), env(safe-area-inset-bottom)) + 58px);background:var(--glass-strong);width:min(340px,100vw - 96px);box-shadow:var(--shadow);padding:10px;position:absolute;translate:-50%}.destination-heading{align-items:center;gap:10px;margin:0 0 7px 3px;display:flex}.destination-heading strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.destination-heading .icon-btn{width:28px;height:28px}.destination-actions{gap:7px;display:flex}.destination-actions button{min-height:40px;color:var(--text);background:var(--hover);border-radius:9px;flex:1;font-size:12px;font-weight:600}.destination-actions .route-action{background:var(--taxi);color:var(--taxi-ink)}.destination-actions button:disabled{opacity:.6;cursor:wait}.fullmap-footer{max-width:calc(100vw - 2 * var(--edge));align-items:center;gap:7px}#map-clear-route{flex:none;width:38px;height:38px}#help,dialog.photo-credits{width:min(640px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--text);background:var(--glass-strong);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);box-shadow:var(--shadow);border-radius:18px;margin:auto;padding:24px;overflow-y:auto}#help::backdrop,dialog.photo-credits::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#03070bcc}.dialog-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.dialog-head h2,dialog.photo-credits h2{letter-spacing:-.02em;font-size:18px;font-weight:600}.help-content{color:var(--text-2);font-size:12px;line-height:1.65}.help-content dl{grid-template-columns:130px 1fr;gap:8px 20px;margin-bottom:22px;display:grid}.help-content dt{color:var(--text);font-size:11px}.help-content dd{margin:0}.help-content p+p{margin-top:15px}.help-content a,dialog.photo-credits a{color:var(--text);text-underline-offset:3px}.help-content .stats{border-top:1px solid var(--divider);font-variant-numeric:tabular-nums;padding-top:18px}dialog.photo-credits{z-index:100}dialog.photo-credits p,dialog.photo-credits li{color:var(--text-2);font:12px/1.65 var(--font-sans)}dialog.photo-credits ol{margin-top:18px;padding-left:20px}dialog.photo-credits li{margin:14px 0}dialog.photo-credits .close{width:36px;height:36px;color:var(--text);border-radius:9px;position:absolute;top:14px;right:14px}.photo-credit-current{color:var(--text);background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:8px}#joystick{width:var(--joystick-size);height:var(--joystick-size);pointer-events:auto;touch-action:none;background:#15171b57;border:1px solid #ffffff40;border-radius:50%;position:relative;box-shadow:inset 0 0 0 9px #ffffff0a}#joystick-knob{pointer-events:none;background:#f6f5f2d9;border:1px solid #ffffff73;border-radius:50%;width:40px;height:40px;margin:-20px;position:absolute;top:50%;left:50%;box-shadow:0 3px 12px #0005}.alt-buttons{pointer-events:auto;gap:8px;padding-bottom:13px;display:flex}.alt-buttons button{background:var(--glass-strong);width:54px;height:54px;color:var(--text);touch-action:none;border:1px solid #ffffff38;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px;display:flex}.alt-buttons button:active{color:var(--taxi-ink);background:var(--taxi)}.up-icon{rotate:-90deg}.down-icon{rotate:90deg}@media (hover:hover) and (pointer:fine){:is(.tool-btn,.mode-btn:not(.active),.icon-btn):hover{color:var(--text);background-color:var(--hover)}}@media (width<=900px),(pointer:coarse){:root{--edge:12px}.toolbar{gap:1px}.toolbar .tool-btn{width:44px;min-height:44px;padding:0}.toolbar .tool-label,.mode-switch kbd,.radar{display:none}.hud-status{bottom:var(--dock-clear)}.hud-location{max-width:min(235px,70%)}.location-signs{flex-wrap:wrap}.mode-btn{flex-direction:column;flex:1 1 0;gap:3px;min-width:49px;min-height:49px;padding:0 3px;font-size:11px}.mode-switch{width:min(310px, calc(100vw - var(--hud-left) - var(--hud-right)))}.gauge{padding:6px 8px}#speed-value{font-size:20px}.credits{text-align:center}.pop-item{min-height:44px}.fullmap-header{gap:7px}.fullmap-title{padding:7px}.fullmap-title>div,.fullmap-close .tool-label,.fullmap-close kbd{display:none}.fullmap-search-wrap{flex:auto;min-width:0;padding:0 10px}.fullmap-search{height:50px}.fullmap-close{flex:0 0 48px;min-height:48px;padding:0}.fullmap-results{left:var(--hud-left);width:min(440px, calc(100% - var(--hud-left) - var(--hud-right) - 55px))}.fullmap-footer{left:var(--hud-left);bottom:var(--hud-bottom);max-width:calc(100% - var(--hud-left) - var(--hud-right) - 62px);translate:none}.map-controls{top:auto;right:var(--hud-right);bottom:var(--hud-bottom);gap:6px;translate:none}.street-sign{max-width:min(210px,63vw);padding:7px 11px;font-size:12px}.landmarks-visible .landmark-labels{display:none}.help-content dl{grid-template-columns:minmax(76px,auto) minmax(0,1fr);gap:8px 12px}}@media (width<=360px){:root{--dock-bottom:calc(var(--hud-bottom) + 23px)}.brand h1{clip-path:inset(50%);position:absolute}}@media (height<=500px){:root{--joystick-size:86px}.radar{display:none}}@media (height<=410px){body.touch-enabled .hud-status{top:calc(var(--hud-top) + var(--bar-h) + 22px);bottom:auto}}@media (pointer:coarse){.fullmap-search,.setting-row select{font-size:16px}}.photo-credits{color:#303c36;box-sizing:border-box;background:#efeee5;border:1px solid #cbcaba;border-radius:3px;width:min(690px,100vw - 32px);max-height:calc(100dvh - 40px);padding:30px;overflow:auto}.photo-credits h2{margin:0 32px 18px 0;font-size:23px;font-weight:500}.photo-credits p,.photo-credits li{letter-spacing:normal;font:13px/1.6 sans-serif}.photo-credits ol{padding-left:20px}.photo-credits li{margin:14px 0}.photo-credits a{color:#465c4d;text-decoration:underline}.photo-credits .close{position:absolute;top:18px;right:20px}
