:root{color:#25473e;font-synthesis:none;--ink:#25473e;--cream:#f9f8ee;background:#b7dedc;font-family:Segoe UI,Arial,sans-serif;font-weight:450}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}button:disabled{cursor:default}button,kbd{-webkit-user-select:none;user-select:none}button svg{width:21px;height:21px}#app{width:100%;height:100svh;min-height:350px;position:relative;overflow:hidden}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block}.vignette{pointer-events:none;background:linear-gradient(#0000 75%,#dce8d633);position:absolute;inset:0}.topbar{pointer-events:none;justify-content:space-between;align-items:center;gap:15px;display:flex;position:absolute;top:32px;left:38px;right:38px}.brand{align-items:center;gap:12px;display:flex}.brand-mark{width:43px;height:43px}.wordmark{letter-spacing:-1.4px;font-family:Manrope,sans-serif;font-size:29px;font-weight:800;line-height:1.05;display:block}.icon-button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8ee5e;border:1px solid #f9f8ee75;border-radius:50%;place-items:center;width:39px;height:39px;transition:background .2s,transform .2s;display:grid}.icon-button:hover{background:#f9f8eebb;transform:translateY(-1px)}.sound-on,.play-icon,#sound[aria-pressed=true] .sound-off,#pause[aria-pressed=true] .pause-icon{display:none}#sound[aria-pressed=true] .sound-on,#pause[aria-pressed=true] .play-icon{display:block}.welcome{pointer-events:none;max-width:420px;transition:opacity .9s,transform 1.1s;position:absolute;top:47%;left:5.3%;transform:translateY(-20%)}.welcome.hidden{opacity:0;visibility:hidden;transition:opacity .9s,transform 1.1s,visibility 0s .9s;transform:translateY(-10%)}.eyebrow{letter-spacing:2.2px;align-items:center;gap:9px;font-size:9px;font-weight:700;display:flex}h1{letter-spacing:-2.6px;margin:19px 0 17px;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,4.5vw,68px);font-weight:400;line-height:1.08}p{letter-spacing:.15px;font-size:12px;line-height:1.8}.welcome p{margin:0 0 24px}.start-button{pointer-events:auto;background:var(--ink);color:var(--cream);border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:28px;min-width:155px;padding:14px 20px;font-size:12px;font-weight:550;transition:background .2s,transform .2s;display:flex;box-shadow:0 4px 16px #284b3820}.start-button:hover{background:#35604c;transform:translateY(-2px)}.start-button span{font-size:19px;font-weight:400;line-height:16px}.bottom-bar{pointer-events:none;justify-content:space-between;align-items:flex-end;gap:24px;display:flex;position:absolute;bottom:30px;left:38px;right:38px}.location{align-items:center;gap:11px;min-width:200px;padding-bottom:3px;display:flex}.location svg{width:28px;height:34px}.location-title{letter-spacing:2.1px;font-size:9px;font-weight:700;display:block}.location-sub{opacity:.75;letter-spacing:.2px;margin-top:6px;font-size:10px;display:block}.controls{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;background:#f9f8ee72;border:1px solid #ffffff45;border-radius:8px;align-items:center;gap:19px;margin-bottom:3px;padding:10px 16px;font-size:10px;display:flex}.controls>span,.controls button{white-space:nowrap;align-items:center;gap:4px;display:flex}.controls button{background:0 0;border:0;padding:0;font-size:10px}.control-label{margin-left:5px}kbd{border:1px solid #25473e36;border-bottom-width:2px;border-radius:4px;place-items:center;width:19px;height:21px;font-family:inherit;font-size:9px;font-weight:550;display:inline-grid}.pause-overlay{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:3;background:#d5e6d54f;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pause-overlay[hidden],.error[hidden]{display:none}.pause-overlay h2,.error h2{letter-spacing:-1.5px;margin:20px 0 0;font-family:Georgia,serif;font-size:48px;font-weight:400}.topbar:has(#pause[aria-pressed=true]){z-index:4}#toast{letter-spacing:.3px;opacity:0;pointer-events:none;background:#f9f8eed9;border-radius:30px;padding:11px 19px;font-size:11px;transition:opacity .25s,transform .25s;position:absolute;top:100px;left:50%;transform:translate(-50%,-8px)}#toast.show{opacity:1;transform:translate(-50%)}.error{z-index:10;text-align:center;background:#d5e7d9;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}.error p{max-width:380px}.error button{border:1px solid var(--ink);background:0 0;border-radius:5px;padding:10px 20px}.touch-controls{pointer-events:none;justify-content:space-between;display:none;position:absolute;bottom:104px;left:24px;right:24px}.touch-controls>div{gap:10px;display:flex}.touch-controls button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;touch-action:none;background:#f9f8ee8c;border:1px solid #ffffff80;border-radius:50%;width:52px;height:52px;font-size:23px}@media (pointer:coarse){.touch-controls{display:flex}.controls>span:first-child{display:none}.controls{gap:14px}}@media (width<=760px){.topbar{top:23px;left:22px;right:22px}.wordmark{font-size:25px}.brand-mark{width:36px;height:36px}.icon-button{width:35px;height:35px}.welcome{max-width:270px;top:43%;left:7%}h1{letter-spacing:-2px;font-size:47px}.welcome p{max-width:230px;font-size:11px}.eyebrow{letter-spacing:1.7px;font-size:8px}.bottom-bar{gap:10px;bottom:23px;left:22px;right:22px}.location{min-width:0}.location-title{letter-spacing:1.4px;font-size:8px}.location-sub{font-size:8px}.location svg{width:23px}.controls{gap:11px;padding:7px 10px;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}.control-label{font-size:9px}.location-sub{max-width:145px}#toast{white-space:nowrap;font-size:10px;top:84px}.pause-overlay h2{font-size:39px}}@media (height<=560px){.welcome{top:35%;transform:none}.welcome h1{margin:12px 0;font-size:37px}.welcome p{margin-bottom:13px}.bottom-bar{bottom:18px}.topbar{top:18px}.touch-controls{bottom:85px}.controls{position:static;bottom:0;transform:none}.welcome .eyebrow{font-size:7px}.start-button{padding:10px 16px}}.vignette{background:linear-gradient(#0000 83%,#dce8d647)}@media (width<=760px){.welcome{max-width:calc(100% - 54px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.chooser{color:var(--ink);background:#f6f5eaf5;border:1px solid #fff9;border-radius:18px;width:min(930px,100% - 32px);max-height:calc(100svh - 36px);padding:25px 29px 17px;overflow-y:auto;box-shadow:0 24px 100px #183f3633}.chooser::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#28473935}.chooser-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.chooser-heading .icon-button{background:0 0;border-color:#25473e25;width:31px;height:31px}.chooser-options{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.chooser-card{text-align:left;background:#fff8;border:1px solid #25473e28;border-radius:11px;padding:0;transition:border-color .2s,transform .2s;display:block;overflow:hidden}.chooser-card:hover{border-color:var(--ink);transform:translateY(-3px)}.chooser-card[aria-current=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.chooser-art{width:100%;height:auto;display:block}.chooser-card-copy{padding:15px 15px 12px;display:block}.chooser-card-title{justify-content:space-between;align-items:center;gap:8px;font-size:15px;font-weight:650;display:flex}.chooser-card-title>span{font-size:18px;font-weight:400}.chooser-current{visibility:hidden;letter-spacing:1.8px;margin-top:14px;font-size:7px;font-weight:700;display:block}.chooser-card[aria-current=true] .chooser-current{visibility:visible}body[data-journey=city] .vignette{background:linear-gradient(#0000 82%,#5f6d7a4d)}@media (width<=600px){.chooser{padding:18px}.chooser-options{grid-template-columns:1fr;gap:10px}.chooser-card{grid-template-columns:110px 1fr;align-items:stretch;display:grid}.chooser-art{object-fit:cover;height:100%;min-height:100px}.chooser-card-copy{padding:12px 10px}.chooser-card-title{font-size:12px}.chooser-current{letter-spacing:1.3px;font-size:6px}.chooser-heading .eyebrow{font-size:7px}#toast{top:128px}}@media (height<=560px){.chooser{padding:13px 20px}.chooser-art{object-fit:cover;max-height:100px}}:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}#app{width:auto;height:auto;min-height:0;position:fixed;inset:0}.touch-utility-icon,.controller-hint{display:none}button{touch-action:manipulation}.controller-hint{margin-top:14px;font-size:12px;line-height:1.7}[data-control-help]{padding-right:38px;position:relative}.dismiss-control-help,.touch-controls .dismiss-control-help{-webkit-backdrop-filter:none;backdrop-filter:none;width:44px;min-width:44px;height:44px;color:inherit;pointer-events:auto;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;font-size:20px;line-height:1;display:grid;position:absolute;top:-9px;right:-4px}.controls>[data-control-help]{padding-right:0}.controls .dismiss-control-help{min-width:44px;padding:0;font-size:20px;position:static}body[data-control-help-dismissed=true] [data-control-help],body[data-driving-help-expired=true] :is(.controls,#stick-help){display:none!important}@media (pointer:fine){body[data-control-help-dismissed=true] .controls{display:none!important}}body[data-controller=true] .touch-controls{display:none}body[data-controller=true] .controller-hint{display:block}.icon-button,.chooser-heading .icon-button{flex-shrink:0;width:44px;height:44px}.start-button{min-height:44px}.controls{padding:3px 10px}.controls button{min-height:44px;padding:0 5px}.controls .control-label{font-size:12px}.chooser-current{letter-spacing:1.3px;font-size:11px}.start-button,.pause-overlay p{font-size:14px}@media (width>=761px){.welcome{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overscroll-behavior:contain;pointer-events:auto;background:#f9f8eedb;border:1px solid #ffffff70;border-radius:16px;max-width:450px;max-height:calc(100% - 200px);padding:28px;top:50%;overflow-y:auto;transform:translateY(-45%)}.welcome.hidden{pointer-events:none;transform:translateY(-40%)}.welcome h1{font-size:clamp(42px,4vw,60px)}.welcome p{font-size:14px}.location-title{font-size:10px}.location-sub{font-size:12px}}@media (width>=761px) and (height<=560px){.welcome{max-height:calc(100% - 168px);padding:18px;top:76px;transform:none}.welcome h1{font-size:34px}}@media (width>=761px) and (width<=1100px){.bottom-bar{gap:14px}.controls{gap:12px}}@media (any-pointer:coarse){.icon-button,.chooser-heading .icon-button{flex-shrink:0;width:44px;height:44px}.start-button{min-height:44px}.controls>span,.controls kbd{display:none}.controls{gap:4px;padding:3px}.controls button{justify-content:center;gap:6px;min-width:64px;min-height:44px;padding:0 9px}.controls .control-label{text-transform:capitalize;margin:0;font-size:12px}.touch-utility-icon{width:18px;height:18px;display:block}.topbar{top:calc(20px + var(--safe-top));left:calc(24px + var(--safe-left));right:calc(24px + var(--safe-right))}.bottom-bar{bottom:calc(112px + var(--safe-bottom));left:calc(24px + var(--safe-left));right:calc(24px + var(--safe-right))}.touch-controls{bottom:calc(24px + var(--safe-bottom));left:calc(24px + var(--safe-left));right:calc(24px + var(--safe-right));-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;display:flex}}@media (width<=760px){.topbar{top:calc(16px + var(--safe-top));left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right));gap:8px}.brand{gap:9px}.wordmark{font-size:25px}.icon-button,.chooser-heading .icon-button{width:44px;height:44px}.welcome{left:calc(16px + var(--safe-left));top:max(calc(132px + var(--safe-top)), 25%);bottom:calc(186px + var(--safe-bottom));width:360px;max-width:calc(100% - 32px - var(--safe-left) - var(--safe-right));height:fit-content;max-height:calc(100% - 318px - var(--safe-top) - var(--safe-bottom));overscroll-behavior:contain;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8eedb;border:1px solid #ffffff70;border-radius:16px;padding:22px;overflow-y:auto;transform:none}.welcome.hidden{pointer-events:none;transform:translateY(8px)}.welcome h1{letter-spacing:-1.8px;margin:16px 0;font-size:clamp(34px,10vw,44px)}.welcome p{max-width:none;margin-bottom:20px;font-size:13px;line-height:1.7}.welcome .start-button{width:100%;min-height:48px;font-size:14px}.welcome .eyebrow{font-size:8px}.bottom-bar{left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right));bottom:calc(20px + var(--safe-bottom))}.location{gap:8px}.location-title{letter-spacing:1px;font-size:9px}.location-sub{max-width:150px;font-size:10px;line-height:1.5}#toast{top:calc(126px + var(--safe-top));max-width:calc(100% - 32px - var(--safe-left) - var(--safe-right));white-space:normal;text-align:center;z-index:2;width:max-content;padding:10px 16px;font-size:12px;line-height:1.5}.pause-overlay{padding:calc(76px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(24px + var(--safe-left));overflow-y:auto}.pause-overlay p{font-size:14px}.pause-overlay .start-button{min-height:48px;font-size:14px}.chooser{width:calc(100% - 24px - var(--safe-left) - var(--safe-right));max-height:calc(100% - 24px - var(--safe-top) - var(--safe-bottom));overscroll-behavior:contain;padding:16px}.chooser-options{grid-template-columns:1fr;gap:12px}.chooser-card{grid-template-columns:92px 1fr;display:grid}.chooser-art{object-fit:cover;height:100%;min-height:112px}.chooser-card-copy{padding:14px 12px}.chooser-card-title{font-size:14px}.chooser-current{letter-spacing:1px;margin-top:10px;font-size:11px}}@media (width<=760px) and (any-pointer:coarse){.bottom-bar{bottom:calc(104px + var(--safe-bottom))}.controls{top:calc(72px + var(--safe-top));left:calc(16px + var(--safe-left));margin:0;position:fixed;bottom:auto;transform:none}.touch-controls{left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right));bottom:calc(20px + var(--safe-bottom))}}#touch-stick{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;touch-action:none;background:#f9f8eebf;border:1px solid #ffffffb0;border-radius:50%;flex:none;width:120px;height:120px;display:block;position:relative;box-shadow:0 3px 16px #183f3618}.stick-guide{pointer-events:none;border:1px dashed #25473e55;border-radius:50%;position:absolute;inset:15px}.stick-thumb{background:var(--cream);width:48px;height:48px;transform:translate(var(--stick-x,0px), var(--stick-y,0px));pointer-events:none;border:1px solid #25473e30;border-radius:50%;position:absolute;top:calc(50% - 24px);left:calc(50% - 24px);box-shadow:0 3px 10px #183f3626}#touch-stick.active .stick-thumb{background:var(--ink);border-color:var(--cream)}#stick-help{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8eebf;border-radius:10px;align-self:center;font-size:12px}.stick-help-line{font-size:11px}@media (any-pointer:coarse){.bottom-bar{bottom:calc(160px + var(--safe-bottom))}}@media (width<=760px) and (any-pointer:coarse){.welcome{max-height:calc(100% - 360px - var(--safe-top) - var(--safe-bottom))}}@media (height<=560px) and (any-pointer:coarse) and (orientation:landscape){#touch-stick{width:104px;height:104px}.bottom-bar{bottom:calc(132px + var(--safe-bottom))}.welcome{max-height:calc(100% - 190px - var(--safe-top) - var(--safe-bottom))}.topbar{top:calc(10px + var(--safe-top));left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right))}.welcome{top:calc(66px + var(--safe-top));bottom:auto;left:calc(16px + var(--safe-left));width:340px;max-width:48%;max-height:calc(100% - 190px - var(--safe-top) - var(--safe-bottom));pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8eedb;border-radius:14px;padding:16px;overflow-y:auto;transform:none}.welcome h1{margin:10px 0;font-size:32px}.welcome p{margin-bottom:12px;font-size:12px}.welcome .start-button{min-height:44px}.bottom-bar{bottom:calc(132px + var(--safe-bottom));left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right))}.controls{top:auto;bottom:calc(18px + var(--safe-bottom));margin:0;position:fixed;left:50%;transform:translate(-50%)}.touch-controls{bottom:calc(14px + var(--safe-bottom));left:calc(16px + var(--safe-left));right:calc(16px + var(--safe-right))}#toast{top:calc(64px + var(--safe-top))}.pause-overlay{padding:calc(64px + var(--safe-top)) 24px calc(16px + var(--safe-bottom));justify-content:flex-start}.pause-overlay h2{margin-top:10px;font-size:32px}.pause-overlay p{margin:8px 0 14px}.chooser{max-height:calc(100% - 20px - var(--safe-top) - var(--safe-bottom))}.chooser-options{grid-template-columns:repeat(3,1fr)}.chooser-card{display:block}.chooser-art{height:70px;min-height:0}.chooser-card-copy{padding:10px}.chooser-card-title{font-size:13px}}.graphics-panel{text-align:left;width:340px;max-width:100%;margin:4px 0 18px}.graphics-panel h3{letter-spacing:2.1px;text-transform:uppercase;opacity:.72;margin:0 0 10px;font-size:9px;font-weight:700}.graphics-levels{flex-wrap:wrap;gap:6px;display:flex}.graphics-levels button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);white-space:nowrap;background:#f9f8ee6b;border:1px solid #25473e2e;border-radius:8px;flex:auto;min-height:38px;padding:0 12px;font-size:12px;font-weight:550;transition:background .2s,border-color .2s}.graphics-levels button:hover{background:#f9f8eecc}.graphics-levels button[aria-checked=true]{background:var(--ink);border-color:var(--ink);color:var(--cream)}.pixel-density-control{margin-top:12px}.pixel-density-control label{justify-content:space-between;gap:12px;font-size:12px;font-weight:550;display:flex}.pixel-density-control output{opacity:.75;font-weight:400}.graphics-slider{width:100%;height:32px;accent-color:var(--ink);cursor:pointer;margin:0;display:block}.graphics-slider:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:4px}.panel-toggle{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8ee6b;border:1px solid #25473e2e;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:38px;margin-top:6px;padding:0 12px;font-size:12px;font-weight:550;transition:background .2s;display:flex}.panel-toggle:hover{background:#f9f8eecc}.panel-toggle:disabled{opacity:.5}.panel-switch{border:1px solid #25473e40;border-radius:9px;flex-shrink:0;width:32px;height:18px;transition:background .2s;position:relative}.panel-switch:after{content:"";background:var(--ink);border-radius:50%;width:12px;height:12px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.panel-toggle[aria-pressed=true] .panel-switch{background:var(--ink);border-color:var(--ink)}.panel-toggle[aria-pressed=true] .panel-switch:after{background:var(--cream);transform:translate(14px)}.graphics-status{opacity:.7;margin:10px 0 0;font-size:11px;line-height:1.6}@media (width<=760px){.graphics-panel{width:100%;margin-bottom:14px}.graphics-levels button{flex:28%;padding:0 8px}}@media (height<=560px) and (any-pointer:coarse) and (orientation:landscape){.graphics-panel{margin:2px 0 10px}.graphics-panel h3{margin-bottom:6px}.graphics-status{margin-top:6px}}.vr-entry[hidden],#welcome.hidden :is(.vr-entry,.update-entry){display:none!important}.vr-entry,.update-entry{pointer-events:auto;justify-content:center}#enter-vr-pause{width:340px;max-width:100%;margin:0 0 14px}#vr-error{top:var(--header-clear);right:var(--ui-right);background:var(--cream);max-width:min(360px,85vw);color:var(--ink);z-index:5;border-radius:6px;padding:12px;position:absolute}:root{--edge:clamp(6px, 1.25vw, 16px);--ui-top:max(var(--edge), calc(var(--safe-top) + 6px));--ui-left:max(var(--edge), calc(var(--safe-left) + 6px));--ui-right:max(var(--edge), calc(var(--safe-right) + 6px));--ui-bottom:max(var(--edge), calc(var(--safe-bottom) + 6px));--header-clear:calc(var(--ui-top) + 60px);--stick-size:145.2px}.topbar{top:var(--ui-top);left:var(--ui-left);right:var(--ui-right);gap:12px}body[data-controller=true] #app :is(.controls,#pause){display:none!important}.chooser>.controller-hint{margin:0 0 12px}.chooser-card:focus{outline-offset:3px;outline:3px solid #568d78}body[data-controller=true] .pause-overlay button:focus{outline:2px solid var(--ink);outline-offset:3px}.brand{min-width:0}#app:has(#pause-overlay:not([hidden])) .brand{visibility:hidden}#app:has(.welcome.hidden,#pause-overlay:not([hidden]),dialog[open]) .vignette{display:none}#app:has(.welcome:not(.hidden)) :is(.bottom-bar,.touch-controls,#pause){visibility:hidden;pointer-events:none}#app:has(#pause-overlay:not([hidden])) :is(.bottom-bar,.touch-controls,.welcome){visibility:hidden;pointer-events:none}#app:has(.chooser[open]) :is(.topbar,.bottom-bar,.touch-controls,.welcome,#pause-overlay,#toast){visibility:hidden;pointer-events:none}#app:has(.welcome:not(.hidden)) #pause{display:none}#app:has(#pause-overlay:not([hidden])) .drive-actions{display:none}.welcome{--panel-top:max(var(--header-clear), calc(50% - 220px));top:var(--panel-top);bottom:auto;left:var(--ui-left);width:420px;max-width:calc(100% - var(--ui-left) - var(--ui-right));max-height:calc(100% - var(--panel-top) - var(--ui-bottom));scrollbar-width:thin;padding:clamp(18px,3vw,28px);transform:none}.welcome.hidden{transform:translateY(8px)}.welcome h1{margin:16px 0;font-size:clamp(34px,4.2vw,58px)}.welcome p{margin:0 0 20px;font-size:14px;line-height:1.7}.welcome .start-button{min-height:48px}.bottom-bar{left:var(--ui-left);right:var(--ui-right);bottom:var(--ui-bottom);gap:16px}.location-title{line-height:1.5}.location-sub{overflow-wrap:anywhere;line-height:1.5}.controls{flex-shrink:0;gap:12px;margin:0;position:static;transform:none}.controls button{min-width:44px}.touch-controls{left:var(--ui-left);right:var(--ui-right);bottom:var(--ui-bottom);opacity:1;align-items:center;gap:16px;transition:opacity .15s}.touch-controls.autodrive-hidden{opacity:0;transition:opacity 1.5s}#touch-stick{width:var(--stick-size);height:var(--stick-size);opacity:.65;z-index:2;pointer-events:none;display:none;position:fixed;translate:-50% -50%}#touch-stick.active{display:block}.stick-thumb{width:52.8px;height:52.8px;top:calc(50% - 26.4px);left:calc(50% - 26.4px)}.pause-overlay{padding:var(--header-clear) var(--ui-right) var(--ui-bottom) var(--ui-left);overscroll-behavior:contain;justify-content:flex-start;overflow-y:auto}.pause-overlay>*{flex-shrink:0;max-width:100%}.pause-overlay>h2{font-size:clamp(32px,5vw,48px)}.pause-overlay p{margin:12px 0 20px}.pause-overlay .controller-hint{max-width:330px}#toast{top:var(--header-clear);max-width:calc(100% - var(--ui-left) - var(--ui-right));white-space:normal;text-align:center;width:max-content;line-height:1.5}#app:has(.welcome:not(.hidden)) #toast{display:none}.chooser{width:min(930px, calc(100% - var(--ui-left) - var(--ui-right)));max-height:calc(100% - var(--ui-top) - var(--ui-bottom));overscroll-behavior:contain;scrollbar-width:thin;padding:20px}.chooser-heading{z-index:1;background:#f6f5ea;padding:4px 0;position:sticky;top:-20px}:is(.chooser,#taxi-fleet-dialog){scroll-padding-block:80px 16px}body[data-journey=city] .chooser-heading{background:#eef1f4}.chooser-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.chooser-card{min-width:0}@media (any-pointer:coarse){.bottom-bar{bottom:calc(var(--ui-bottom) + var(--stick-size) + 16px)}body[data-controller=true] .bottom-bar{bottom:var(--ui-bottom)}.controls{gap:4px}.controls button{min-width:64px}}@media (width<=1100px){.touch-utility-icon{width:18px;height:18px;display:block}.controls button{gap:6px;min-width:64px;padding:0 9px}.controls .control-label{text-transform:capitalize;margin:0}}@media (width<=760px){:root{--header-clear:calc(var(--ui-top) + 116px)}.controls{top:calc(var(--ui-top) + 56px);left:var(--ui-left);gap:4px;padding:3px;position:fixed;bottom:auto;transform:none}.welcome{width:360px}.welcome h1{font-size:clamp(32px,9vw,44px)}.chooser{padding:16px}.chooser-heading{top:-16px}.chooser-options{grid-template-columns:1fr}.chooser-card{grid-template-columns:88px minmax(0,1fr)}}@media (height<=560px) and (orientation:landscape){:root{--edge:6px;--header-clear:calc(var(--ui-top) + 60px);--stick-size:125.84px}#stick-help,#welcome>.controller-hint{display:none}.brand-mark{width:32px;height:32px}.wordmark{font-size:23px}.welcome{--panel-top:var(--header-clear);width:380px;padding:16px}.welcome h1{margin:10px 0;font-size:32px}.welcome .eyebrow{display:none}.welcome p{margin-bottom:12px;font-size:13px;line-height:1.5}.bottom-bar,body[data-controller=true] .bottom-bar{bottom:var(--ui-bottom);justify-content:flex-start}.controls{top:auto;bottom:var(--ui-bottom);position:fixed;left:50%;transform:translate(-50%)}.pause-overlay h2{margin-top:8px;font-size:32px}.pause-overlay p{margin:8px 0 12px}.chooser-options{grid-template-columns:repeat(3,minmax(0,1fr))}.chooser-card{display:block}.chooser-art{display:none}}@media (width<=600px) and (height<=560px){.welcome .eyebrow{display:none}.welcome h1{margin:8px 0 12px;font-size:30px}.welcome p{margin-bottom:12px;font-size:12px;line-height:1.5}.welcome{padding:16px}}@media (width<=600px) and (orientation:landscape){.brand-mark{display:none}.wordmark{font-size:21px}.topbar{gap:8px}}.bottom-bar{justify-content:flex-start}.location{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8ee5e;border:1px solid #ffffff50;border-radius:10px;align-items:center;gap:11px;max-width:100%;padding:10px 12px;display:flex}.location-copy{flex-direction:column;gap:3px;display:flex}.location-title{letter-spacing:.9px;font-size:10px}.location-sub{margin-top:0;font-size:11px}@media (width>=761px){.controls{left:50%;bottom:var(--ui-bottom);position:fixed;top:auto;transform:translate(-50%)}}.bottom-bar,body[data-controller=true] .bottom-bar{bottom:var(--ui-bottom)}.touch-controls{flex-direction:row-reverse}#stick-help{right:0;bottom:calc(var(--stick-size) + 12px);position:absolute}@media (width<=600px) and (orientation:landscape){.controls button{justify-content:center;min-width:44px;padding:0}.controls .control-label{display:none}}@media (width<=360px){.controls button{justify-content:center;min-width:44px;padding:0}.controls .control-label{display:none}}.dismiss-control-help,.touch-controls .dismiss-control-help,.controls .dismiss-control-help{background:0 0;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;font-size:17px;position:absolute;top:0;right:0;transform:none}.dismiss-control-help>span{place-items:center;width:22px;height:22px;line-height:1;display:grid;position:absolute;top:3px;right:3px}.dismiss-control-help:hover{background:0 0}.dismiss-control-help:hover>span{background:#25473e15;border-radius:50%}.controls>[data-control-help]{position:static}@media (width>=1101px) and (pointer:fine){body:not([data-control-help-dismissed=true]) .controls{padding-right:36px}}@media (any-pointer:coarse){.dismiss-control-help,.touch-controls .dismiss-control-help{width:44px;min-width:44px;height:44px;min-height:44px}}:root[data-headset=true] .dismiss-control-help{width:44px;min-width:44px;height:44px;min-height:44px}:root{--header-clear:calc(var(--ui-top) + 76px)}.drive-actions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;background:#f9f8ee5e;border:1px solid #f9f8ee75;border-radius:12px;flex-shrink:0;align-items:center;gap:2px;padding:1px 3px;display:flex;position:relative}.drive-actions button{-webkit-backdrop-filter:none;backdrop-filter:none;white-space:nowrap;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:0 9px;font-size:12px;font-weight:600;display:flex;position:static}.drive-actions button:hover{background:#25473e12}.drive-actions,.city-guide-header,#taxi-buttons{touch-action:none}.drive-actions svg{flex-shrink:0;width:18px;height:18px;display:block}.drive-actions kbd{display:none}.drive-actions .control-label{text-transform:capitalize;margin:0}#app:has(.welcome:not(.hidden),#pause-overlay:not([hidden])) .drive-actions :is(#view,#reset){display:none}#app:has(#pause-overlay:not([hidden])) .brand{display:none}#app:has(.welcome.hidden,#pause-overlay:not([hidden])) .topbar{justify-content:flex-end}body[data-controller=true] .drive-actions{display:none}@media (any-pointer:coarse),(width<=1100px){.controls{display:none}}@media (any-pointer:coarse),(width<=760px){:root{--edge:18px}}@media (width<=360px){.drive-actions button{gap:5px;padding-inline:7px}}@media (height<=560px) and (orientation:landscape){.welcome{padding:12px}.welcome h1{margin:0 0 8px;font-size:26px}.welcome p{margin-bottom:8px}}#fps-counter{top:var(--header-clear);left:var(--ui-left);z-index:6;color:#edffe9;font-variant-numeric:tabular-nums;pointer-events:none;background:#102019d9;border-radius:4px;padding:6px 9px;font:12px/1.4 monospace;position:absolute}@media (width>=761px) and (width<=960px){.chooser-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.pause-overlay .location{top:var(--ui-top);left:var(--ui-left);width:max-content;max-width:calc(100% - var(--ui-left) - var(--ui-right));position:absolute}.pause-overlay .location-title{font-size:10px}.pause-overlay .location-sub{font-size:12px}@media (width<=760px),(height<=560px){.pause-overlay .location{margin:clamp(0px,50svh - 310px,180px) 0 14px;display:flex;position:static}}#toast{z-index:4}.drive-actions #pause .play-icon,.drive-actions #pause[aria-pressed=true] .pause-icon{display:none}.drive-actions #pause[aria-pressed=true] .play-icon{display:block}@media (width<=760px){.drive-actions :is(#view,#reset,#pause) .control-label{display:none}}#stick-help{align-items:center;gap:8px;width:max-content;max-width:min(290px,72vw);padding:8px 8px 8px 13px;line-height:1.45;display:flex}.stick-help-copy{text-align:left;min-width:0}#stick-help .stick-help-line{opacity:.8;margin-top:1px;display:inline-block}#stick-help .dismiss-control-help{background:#25473e14;border-radius:50%;flex:none;width:26px;min-width:26px;height:26px;min-height:26px;font-size:14px;line-height:1;position:relative;inset:auto}#stick-help .dismiss-control-help:after{content:"";position:absolute;inset:-9px}#stick-help .dismiss-control-help>span{width:auto;height:auto;position:static}#stick-help .dismiss-control-help:hover{background:#25473e29}#stick-help .dismiss-control-help:hover>span{background:0 0}#car-dialog .chooser-heading{padding:6px 0 16px}.garage-title{letter-spacing:2.1px;text-transform:uppercase;margin:0;font-size:15px;font-weight:700}.pause-panel{text-align:left;width:340px;max-width:100%;margin:4px 0 14px}.pause-panel h3{letter-spacing:2.1px;text-transform:uppercase;opacity:.72;margin:0 0 10px;font-size:9px;font-weight:700}.panel-button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9f8ee6b;border:1px solid #25473e2e;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;font-size:12px;font-weight:550;transition:background .2s;display:flex}.panel-button:hover{background:#f9f8eecc}.panel-button svg{flex-shrink:0;width:18px;height:18px}.panel-button-value{opacity:.7;margin-left:auto;font-weight:500}.panel-toggle{justify-content:flex-start}.panel-toggle .panel-switch{margin-left:auto}.panel-button-label{min-width:0}@media (height<=560px){.pause-panel{margin:2px 0 8px}.pause-panel h3{margin-bottom:6px}}.paint-shop{background:#fff7;border:1px solid #25473e24;border-radius:12px;margin:2px 0 20px;padding:13px 16px 14px}.paint-shop-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.paint-shop h3{letter-spacing:2.1px;text-transform:uppercase;opacity:.72;margin:0;font-size:9px;font-weight:700}.paint-current{letter-spacing:.2px;opacity:.68;text-align:right;font-size:11px}.paint-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.paint-swatches{flex-wrap:wrap;gap:8px;display:flex}.paint-swatch{background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid;position:relative}.paint-swatch:after{content:"";border-radius:50%;position:absolute;inset:-5px}.paint-chip{background:var(--swatch,#d96143);border-radius:50%;width:26px;height:26px;transition:transform .18s;box-shadow:inset 0 0 0 1px #0000002e}.paint-swatch:hover .paint-chip{transform:scale(1.14)}.paint-swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--ink)}.paint-swatch[aria-checked=true] .paint-chip{transform:scale(.82)}.paint-default .paint-chip{box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 28%, transparent);background:linear-gradient(135deg,#0000 45%,currentColor 45% 55%,#0000 55%)}.paint-custom{cursor:pointer;border:1px dashed #25473e45;border-radius:17px;align-items:center;gap:8px;height:34px;padding:0 13px 0 4px;display:inline-flex;position:relative}.paint-custom input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.paint-custom-chip{background:conic-gradient(#d96143,#e0b44a,#78977b,#6fa9c2,#2f4a6d,#6b4a6b,#d96143);border-radius:50%;width:26px;height:26px;box-shadow:inset 0 0 0 1px #0000002e}.paint-custom-label{letter-spacing:.2px;font-size:11px;font-weight:550}.paint-custom[data-active=true]{border-style:solid;border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.paint-custom[data-active=true] .paint-custom-chip{background:var(--swatch)}.paint-custom:hover .paint-custom-chip{transform:scale(1.1)}.paint-note{opacity:.62;margin:11px 0 0;font-size:11px;line-height:1.6}.paint-note b{opacity:.85;font-weight:650}.garage-subheading{letter-spacing:2.1px;text-transform:uppercase;opacity:.72;margin:0 0 10px;font-size:9px;font-weight:700}body[data-journey=city] .paint-shop{background:#fff6}.car-card{--car-paint:#d96143}.car-card .chooser-card-copy{padding:12px 14px 11px}.car-card .chooser-card-title{letter-spacing:-.1px;font-size:13px;font-weight:600}.car-card-plain{grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;padding:15px 16px;display:flex}.car-card-plain .chooser-card-title{font-size:13px;font-weight:600;display:block}.car-card-plain .chooser-current{margin-top:0}.car-meters{max-width:232px;margin-top:10px;display:block}.car-meter{letter-spacing:.2px;opacity:.62;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:10px;margin-top:5px;font-size:11px;display:grid}.car-meter-track{background:#25473e2b;border-radius:2px;height:3px;overflow:hidden}.car-meter-track>span{background:var(--ink);border-radius:2px;height:100%;display:block}@media (width<=600px){#car-dialog .chooser-heading{padding-bottom:12px}.paint-shop{margin-bottom:14px;padding:11px 12px 12px}.paint-shop-heading{flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:10px}.paint-current{text-align:left}.paint-swatches{gap:6px}.car-card-plain{padding:13px 14px;display:flex}.car-card .chooser-card-title{font-size:12px}.car-card{grid-template-columns:130px 1fr}.car-meter{grid-template-columns:72px minmax(0,1fr);gap:8px;margin-top:4px;font-size:11px}.car-meters{max-width:190px;margin-top:8px}}@media (width>=1200px) and (height>=700px){#car-dialog{width:min(1180px, calc(100% - var(--ui-left) - var(--ui-right)))}#car-dialog .car-options{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--menu-ink:#fffdf3;--action:#254f44;--action-hover:#326454;--ui-line:color-mix(in srgb, var(--ink) 18%, transparent)}body{--action:#263f4b;--action-hover:#3d5f6b;--ink:#253e49;--cream:#f4f4ec}.topbar{justify-content:space-between}#welcome{top:max(calc(var(--ui-top) + 62px), 13%);right:var(--ui-right);bottom:max(calc(var(--ui-bottom) + 20px), 21%);left:var(--ui-left);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;width:auto;max-width:none;height:auto;max-height:none;color:var(--menu-ink);text-align:center;text-shadow:0 2px 18px #163e3560;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:space-between;align-items:center;padding:0;transition:opacity .45s,visibility;display:flex;overflow:visible;transform:none}#welcome.hidden{opacity:0;visibility:hidden;transition:opacity .45s,visibility 0s .45s;transform:none}#welcome .menu-brand{text-shadow:0 2px 4px #10272060,0 6px 24px #1027204d;flex-direction:column;gap:0;display:flex}#welcome .menu-brand,#welcome .menu-actions{isolation:isolate;position:relative}#welcome .menu-brand:before,#welcome .menu-actions:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#10272060 0%,#10272034 38%,#10272000 72%);width:min(640px,100vw);position:absolute;top:-64px;bottom:-64px;left:50%;transform:translate(-50%)}#welcome .menu-actions:before{width:min(560px,100vw);top:-56px;bottom:-48px}#welcome .brand-mark{filter:drop-shadow(0 2px 3px #10272060)drop-shadow(0 6px 16px #10272030);width:clamp(68px,8.5svh,96px);height:auto;display:block}#welcome .wordmark{letter-spacing:-.055em;margin:3px 0 18px;font-family:Arial Rounded MT Bold,Trebuchet MS,Segoe UI,sans-serif;font-size:clamp(48px,6.2vw,80px);font-weight:750;line-height:1}#welcome .eyebrow{letter-spacing:.34em;justify-content:center;gap:15px;font-size:clamp(11px,1vw,13px);font-weight:650;line-height:1.5;display:flex}#welcome .eyebrow:before,#welcome .eyebrow:after{content:"";opacity:.8;background:currentColor;flex-shrink:0;width:23px;height:1px}.menu-actions{flex-direction:column;align-items:center;max-width:100%;margin-top:32px;display:flex}.start-button{min-height:48px;color:var(--menu-ink);background:linear-gradient(180deg, #ffffff0c, transparent 70%), var(--action);text-shadow:none;border:1px solid #ffffff35;border-radius:999px;justify-content:center;gap:12px;padding:12px 26px;font-size:14px;font-weight:600;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:inset 0 1px #ffffff1c,0 6px 18px #132e3429}body .start-button:hover{background:var(--action-hover);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff1c,0 8px 24px #132e3438}.start-button:active{transform:translateY(1px)}.start-button span{font:inherit;line-height:1.2}.start-button .wheel-icon{flex-shrink:0;width:25px;height:25px}#welcome .start-button{letter-spacing:-.6px;width:clamp(248px,27vw,340px);max-width:100%;min-height:82px;color:var(--action);background:linear-gradient(#fffef9,#eeeadd);border-color:#fffdf3;gap:20px;padding:18px 30px;font-size:clamp(24px,2.3vw,29px);font-weight:650;box-shadow:0 0 0 5px #1027201c,0 8px 24px #10272030,inset 0 1px #fff}#welcome .start-button:hover{background:#fffef9;box-shadow:0 0 0 5px #fffdf326,0 12px 32px #10272040,inset 0 1px #fff}#welcome .start-button:focus-visible{outline:3px solid var(--menu-ink);outline-offset:8px}#welcome .wheel-icon{width:43px;height:43px}#welcome .start-button.menu-secondary{letter-spacing:-.3px;gap:9px;width:clamp(148px,15vw,190px);min-height:44px;margin-top:12px;padding:9px 16px;font-size:clamp(14px,1.25vw,15px);font-weight:600;position:static}#welcome .menu-secondary svg{width:21px;height:21px}#welcome .menu-secondary .control-label{text-transform:none;margin:0}#app:has(#welcome:not(.hidden)) .drive-actions{display:none}#app:has(#welcome:not(.hidden)) .vignette{background:linear-gradient(#0000 55%,#173b381a)}button svg:not(.chooser-art){stroke-linecap:round;stroke-linejoin:round}.drive-actions{border-radius:999px;padding:3px}.drive-actions button{border-radius:999px}.drive-actions svg{width:20px;height:20px}.drive-actions .control-label{font-size:inherit}.drive-actions svg [stroke-width="1.5"],.panel-button svg [stroke-width="1.5"],.icon-button svg [stroke-width="1.5"]{stroke-width:1.8px}.chooser{border-radius:24px;box-shadow:0 24px 80px #183f3638}.pause-overlay h2{letter-spacing:-1.4px;font-family:Trebuchet MS,Segoe UI,sans-serif;font-weight:600}.chooser-card{border-radius:16px}.chooser-card[aria-current=true]{box-shadow:0 0 0 1px var(--ink), 0 4px 14px #183f3610}.chooser-card-title>svg{opacity:.65;flex-shrink:0;width:18px;height:18px}.chooser-current{letter-spacing:1.5px}.chooser-heading .icon-button{border-color:var(--ui-line);background:color-mix(in srgb, var(--ink) 5%, transparent)}.pause-overlay>.start-button{min-width:220px;margin-bottom:24px}.pause-overlay>h2{margin-top:clamp(8px,50svh - 380px,96px)}.pause-panel,.graphics-panel,#enter-vr-pause{width:360px}.panel-button,.panel-toggle,.graphics-levels button{border-color:var(--ui-line);border-radius:12px;min-height:44px}.graphics-levels button{padding-inline:10px}.pause-panel h3,.graphics-panel h3,.paint-shop h3,.garage-subheading{letter-spacing:1.6px;font-size:11px}.location,.paint-shop{border-radius:16px}.controls{border-radius:999px}.dismiss-control-help svg{width:18px;height:18px}#stick-help .dismiss-control-help svg{width:14px;height:14px}@media (width<=760px){#welcome{top:max(calc(var(--ui-top) + 66px), 15%);bottom:max(calc(var(--ui-bottom) + 28px), 23%)}#welcome .wordmark{margin-bottom:15px;font-size:clamp(46px,10.8vw,64px)}#welcome .start-button{min-height:76px}#welcome .eyebrow{letter-spacing:.28em;gap:12px;font-size:11px}}@media (width<=760px),(height<=560px){.pause-overlay .location{margin:0 0 18px}.pause-overlay>h2{margin-top:0}}@media (height<=560px){#welcome{top:calc(var(--ui-top) + 54px);bottom:calc(var(--ui-bottom) + 12px)}#welcome .brand-mark{width:56px}#welcome .wordmark{margin:2px 0 12px;font-size:44px}#welcome .eyebrow{font-size:11px}#welcome .start-button{width:242px;min-height:60px;padding:12px 26px;font-size:22px}#welcome .wheel-icon{width:32px;height:32px}#welcome .start-button.menu-secondary{width:146px;margin-top:9px;padding:6px 14px;font-size:13px}#welcome .menu-secondary svg{width:18px;height:18px}.menu-actions{margin-top:22px}.pause-overlay>.start-button{margin-bottom:18px}}@media (height<=380px) and (orientation:landscape){#welcome{top:calc(var(--ui-top) + 56px);bottom:calc(var(--ui-bottom) + 8px)}#welcome .brand-mark{width:48px}#welcome .wordmark{font-size:40px}#welcome .eyebrow{gap:8px;font-size:11px}#welcome .eyebrow:before,#welcome .eyebrow:after{width:14px}.menu-actions{margin-top:12px}#welcome .start-button{min-height:54px;font-size:20px}#welcome .start-button.menu-secondary{margin-top:7px;padding-block:6px;font-size:13px}}@media (orientation:landscape) and (height<=400px){#welcome{top:var(--ui-top);bottom:var(--ui-bottom);flex-direction:row;justify-content:center;align-items:center;gap:clamp(24px,8vw,96px)}.menu-actions{margin-top:0}}#welcome>.controller-hint{text-align:center;border-radius:8px;width:fit-content;max-width:100%;margin:18px auto 0;padding:6px 38px 6px 12px;position:relative}.audio-mixer-toggle{text-align:left;min-height:58px;margin-top:6px}.audio-mixer-toggle small{opacity:.65;margin-top:3px;font-size:11px;font-weight:400;line-height:1.4;display:block}.audio-mixer-toggle .audio-chevron{opacity:.7;width:18px;height:18px;margin-left:auto;transition:transform .18s}.audio-mixer-toggle[aria-expanded=true]{border-radius:12px 12px 0 0}.audio-mixer-toggle[aria-expanded=true] .audio-chevron{transform:rotate(180deg)}.audio-mixer{border:1px solid var(--ui-line);background:color-mix(in srgb, var(--cream) 88%, transparent);text-align:left;border-radius:0 0 12px 12px;margin-top:-1px;padding:16px}.audio-mixer[hidden]{display:none}.audio-presets{background:color-mix(in srgb, var(--ink) 5%, transparent);border-radius:10px;gap:4px;padding:3px;display:flex}.audio-presets button{background:0 0;border:1px solid #0000;border-radius:7px;flex:1;min-height:38px;padding:7px 4px;font-size:11px;font-weight:550}.audio-presets button:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}.audio-presets button[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.audio-mixer .audio-description{opacity:.65;margin:9px 0 12px;font-size:11px;line-height:1.5}.audio-mixer .audio-description:last-child{margin-bottom:0}.audio-channel{grid-template-columns:1fr auto;align-items:center;margin-top:10px;font-size:12px;display:grid}.audio-channel:first-child{border-bottom:1px solid var(--ui-line);margin-top:18px;margin-bottom:14px;padding-bottom:10px}.audio-channel:first-child label{font-weight:600}.audio-channel output{text-align:right;font-variant-numeric:tabular-nums;opacity:.7;min-width:4ch;font-size:11px}.audio-channel input{--audio-track:color-mix(in srgb, var(--ink) 15%, transparent);appearance:none;cursor:pointer;background:0 0;border-radius:5px;grid-column:1/-1;width:100%;min-width:0;height:36px;margin:0}.audio-channel input::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ink) var(--audio-level), var(--audio-track) var(--audio-level));border-radius:2px;height:4px}.audio-channel input::-moz-range-track{background:var(--audio-track);border-radius:2px;height:4px}.audio-channel input::-moz-range-progress{background:var(--ink);border-radius:2px;height:4px}.audio-channel input::-webkit-slider-thumb{appearance:none;border:2px solid var(--cream);background:var(--ink);width:16px;height:16px;box-shadow:0 0 0 1px var(--ui-line);border-radius:50%;margin-top:-6px}.audio-channel input::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--cream);background:var(--ink);width:16px;height:16px;box-shadow:0 0 0 1px var(--ui-line);border-radius:50%}.audio-mixer :is(button,input):focus-visible{outline:2px solid var(--ink);outline-offset:3px}.audio-mixer #audio-night{margin-top:16px;font-size:11px}@media (prefers-reduced-motion:reduce){.audio-mixer-toggle .audio-chevron{transition:none}}@media (forced-colors:active){.audio-channel input{appearance:auto;accent-color:auto}}.pause-overlay{padding:0 max(16px, var(--ui-right)) max(24px, var(--ui-bottom)) max(16px, var(--ui-left));scrollbar-width:thin}.pause-content{width:380px;max-width:100%;margin:0 auto}.pause-header{z-index:1;padding:max(16px, var(--ui-top)) 0 12px;box-shadow:0 0 0 100vmax #101e28, 0 1px 0 100vmax var(--city-line);clip-path:inset(0 -100vmax -1px);background:#101e28;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 16px;margin-bottom:20px;display:grid;position:sticky;top:0}.pause-header h2{grid-area:1/1}.pause-header .start-button{grid-area:1/2/span 2}.pause-overlay .pause-header .location{-webkit-backdrop-filter:none;backdrop-filter:none;width:auto;min-width:0;max-width:100%;text-shadow:none;background:0 0;border:0;border-radius:0;grid-area:2/1;justify-self:start;margin:0;padding:0;position:static}.pause-header .location-copy{flex-flow:wrap;align-items:baseline;gap:0 10px}.pause-header .location>svg{display:none}.pause-header .location-title{font-size:12px;font-weight:650}.pause-header .location-sub{opacity:1;max-width:none;font-size:14px;font-weight:500}.pause-header :is(h2,.location-copy),.pause-settings h3{text-shadow:0 1px 3px var(--cream)}.pause-header h2{margin:0;font-size:32px;line-height:1.15}.pause-header .start-button{gap:12px;min-width:0;min-height:48px;margin:0;padding:12px 16px}.pause-header .start-button span{white-space:nowrap;font-size:14px}.pause-header .wheel-icon{width:24px;height:24px}.pause-settings{gap:22px;min-width:0;display:grid}.pause-settings :is(.pause-panel,.graphics-panel,#enter-vr-pause){width:100%;min-width:0;margin:0}.pause-settings h3{letter-spacing:1.5px;opacity:1;margin:0 0 10px;font-size:12px}.pause-settings :is(.panel-button,.panel-toggle){font-size:13px}.pause-settings .panel-button-label{text-align:left}.pause-settings .panel-toggle:first-of-type{margin-top:0}.pause-settings .controller-hint{text-align:center;justify-self:center;margin:0}.pause-settings .pwa-install{width:100%;margin:0}.pause-settings :is(.audio-channel input,.graphics-slider){height:44px}.pause-settings :is(.audio-presets button,.graphics-levels button){min-height:44px}.graphics-toggle{text-align:left;min-height:58px;margin-top:6px}.graphics-toggle small{opacity:.65;margin-top:3px;font-size:11px;font-weight:400;line-height:1.4;display:block}.graphics-toggle .settings-chevron{opacity:.7;width:18px;height:18px;margin-left:auto;transition:transform .18s}.graphics-toggle[aria-expanded=true]{border-radius:12px 12px 0 0}.graphics-toggle[aria-expanded=true] .settings-chevron{transform:rotate(180deg)}.graphics-settings{border:1px solid var(--ui-line);background:color-mix(in srgb, var(--cream) 88%, transparent);border-radius:0 0 12px 12px;margin-top:-1px;padding:16px}.graphics-settings[hidden]{display:none}.graphics-settings .graphics-levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.graphics-settings .graphics-levels button{padding-inline:4px}.graphics-settings .pixel-density-control label{flex-wrap:wrap;gap:4px 12px}.graphics-settings .graphics-status{margin:10px 0 0}.graphics-toggle:focus-visible,body[data-controller=true] .pause-settings input:focus{outline:2px solid var(--ink);outline-offset:3px}body:not([data-mode=free]) .pause-panel :is(#autodrive,#traffic){display:none}.pause-column{display:contents}@media (width>=560px){.pause-header{grid-template-columns:auto minmax(0,1fr) auto;column-gap:20px}.pause-overlay .pause-header .location{grid-area:1/2}.pause-header .start-button{grid-area:1/3}}@media (width>=640px),(width>=560px) and (orientation:landscape){.pause-content{width:720px}.pause-settings{grid-template-rows:auto 1fr;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:24px}.pause-column{align-content:start;gap:22px;min-width:0;display:grid}.pause-column:first-child{grid-area:1/1}.pause-column:nth-child(2){grid-area:1/2/span 2}.pause-column:nth-child(3){grid-area:2/1}body:not([data-mode=free]) .pause-column:first-child{grid-area:1/1/span 2}body:not([data-mode=free]) .pause-column:nth-child(2){grid-area:1/2}body:not([data-mode=free]) .pause-column:nth-child(3){grid-area:2/2}.pause-settings>:not(.pause-column){grid-column:1/-1}}@media (width>=1000px){.pause-content{width:1100px}.pause-settings{grid-template-rows:auto;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}.pause-column:nth-child(n),body:not([data-mode=free]) .pause-column:nth-child(n){grid-area:1}}@media (width<=420px){.pause-header .location-title{display:none}}@media (height<=560px){.pause-header{padding:max(10px, var(--ui-top)) 0 8px;margin-bottom:14px}.pause-header h2{font-size:28px}.pause-header .start-button{min-height:44px;padding-block:8px}.pause-settings,.pause-column{gap:16px}}@media (prefers-reduced-motion:reduce){.graphics-toggle .settings-chevron{transition:none}}#goals-panel[hidden],#scores-panel[hidden]{display:none}.shift-goals{margin:0;padding:0;list-style:none;display:grid}.shift-goals li{border-bottom:1px solid var(--ui-line);align-items:center;gap:10px;padding:8px 0;font-size:12px;display:flex}.shift-goals .goal-check{border:1px dashed var(--ui-line);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.shift-goals li[data-done=true] .goal-check{color:#172229;background:#7ce787;border-style:solid}.shift-goals .goal-copy{gap:2px;min-width:0;display:grid}.shift-goals strong{font-weight:600}.shift-goals li[data-done=true] strong{opacity:.8;text-decoration:line-through}.shift-goals small{opacity:.72;font-size:11px}#goals-summary{margin:10px 0 0}#goals-summary:empty{display:none}.pause-settings .notebook-panel{order:1}.pause-settings>.controller-hint{order:2}.city-hud{color:#f5f4e9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-variant-numeric:tabular-nums;background:#20323dde;border:1px solid #ffffff26;border-radius:18px;align-items:center;gap:13px;max-width:360px;margin-right:auto;padding:10px 16px 10px 10px;display:flex;box-shadow:0 6px 24px #13252c1a}.city-heading{color:#f3d899;letter-spacing:.5px;border:1px solid #f3d89966;border-radius:50%;place-items:center;min-width:36px;height:36px;font-size:13px;font-weight:650;display:grid}.city-hud-copy{gap:4px;display:grid}#city-location{letter-spacing:1.7px;text-transform:uppercase;font-size:9px;font-weight:650}#weather-label{color:#e5eceab3;letter-spacing:.15px;font-size:11px}:is(#app:has(#welcome:not(.hidden)) .city-hud,#app:has(#pause-overlay:not([hidden])) .city-hud){visibility:hidden}#welcome .menu-tagline{letter-spacing:.3px;color:#fffdf3;max-width:none;margin:20px 0 0;font-size:15px;font-weight:500}#welcome .wordmark{letter-spacing:-.065em}.weather-setting{border:1px solid var(--ui-line);background:color-mix(in srgb, var(--cream) 88%, transparent);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:9px 12px;font-size:13px;display:flex}.weather-setting select{max-width:58%;min-height:36px;font:inherit;color:var(--ink);border:1px solid var(--ui-line);background:var(--cream);cursor:pointer;border-radius:7px;padding:6px 26px 6px 9px}.weather-setting select:focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media (any-pointer:coarse){.weather-setting select{min-height:44px}}:root[data-headset=true] .weather-setting select{min-height:44px}.weather-note{opacity:.8;margin:7px 2px 0;font-size:11px;line-height:1.5}@media (width<=760px){.city-hud{border-radius:15px;gap:8px;padding:7px 11px 7px 7px}.city-heading{min-width:30px;height:30px;font-size:11px}#city-location{letter-spacing:1px;font-size:8px}#weather-label{font-size:10px}#welcome .menu-tagline{margin-top:16px;font-size:14px}}@media (width<=390px){.city-hud{gap:6px;padding-right:8px}#city-location{text-overflow:ellipsis;white-space:nowrap;max-width:92px;overflow:hidden}}@media (height<=560px){#welcome .menu-tagline{margin-top:10px;font-size:13px}}.city-guide{right:var(--ui-right);bottom:var(--ui-bottom);color:#f6efd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-variant-numeric:tabular-nums;background:#20353ef0;border:1px solid #eceddb30;border-radius:16px;width:232px;padding:11px;position:absolute;box-shadow:0 8px 32px #15282d24}.city-guide-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.city-guide-header>span{letter-spacing:1.1px;color:#c0d0c8;font-size:8px}.city-guide-header b{color:#f1cc8e;letter-spacing:0;margin-left:5px;font-weight:600}.city-guide button{color:inherit;background:0 0;border:0}.city-guide button:focus-visible{outline-color:#f1cc8e}.city-guide-actions{align-items:center;gap:2px;display:flex}:is(.city-guide-header>span,.city-guide-actions button){white-space:nowrap}#city-map{cursor:pointer;border:1px solid #b6c7b918;border-radius:7px;width:100%;height:auto;display:block}#city-map[hidden]{display:none}#app:has(#welcome:not(.hidden),#pause-overlay:not([hidden]),dialog[open]) .city-guide{visibility:hidden;pointer-events:none}#city-notebook-progress{margin:0 0 12px;font-size:12px;line-height:1.6}.notebook-panel{border:1px solid var(--ui-line);background:color-mix(in srgb, var(--cream) 90%, transparent);border-radius:12px;padding:14px}#city-notebook{overscroll-behavior:contain;scrollbar-width:thin;max-height:360px;padding:2px 8px 2px 2px;overflow-y:auto}.notebook-place:hover{background:color-mix(in srgb, var(--place-color) 18%, transparent)}.notebook-place{text-align:left;border:0;border-bottom:1px solid var(--ui-line);background:0 0;align-items:center;gap:10px;width:100%;padding:9px 0;display:flex}.notebook-place>span:nth-child(2){flex:1}.notebook-place strong{font-size:12px;font-weight:600;display:block}.notebook-place small{opacity:.72;margin-top:3px;font-size:11px;display:block}.notebook-stamp{border:1px dashed #7c8d8370;border-radius:50%;place-items:center;width:34px;height:34px;font:12px Georgia,serif;display:grid}.notebook-place[data-found=true] .notebook-stamp{background:var(--place-color);border-style:solid}.notebook-check{color:#597c66;font-size:16px}@media (width<=760px){.city-guide{width:166px;top:calc(var(--ui-top) + 64px);border-radius:12px;padding:8px;bottom:auto}.city-guide-header{gap:2px;margin-bottom:5px}.city-guide-header>span{letter-spacing:.7px;font-size:7px}.city-guide-header b{margin-left:3px}:is(#city-map-toggle,#city-map-open){min-height:28px;padding:4px 0 4px 4px;font-size:8px}}@media (height<=560px) and (orientation:landscape){.city-guide{top:auto;bottom:var(--ui-bottom);width:168px}#city-map{object-fit:cover;max-height:84px}}body[data-mode=free] .city-hud,body[data-mode=free] .city-hud-copy{flex:1}body[data-mode=free] #app #city-location{white-space:normal;overflow-wrap:anywhere;max-width:none}@media (any-pointer:coarse),(width<=760px),(height<=560px){body[data-mode=free] .city-guide{--map-bottom:var(--ui-bottom);top:auto;bottom:var(--map-bottom);left:var(--ui-left);right:auto}body[data-mode=free] .city-guide[data-expanded=true]{--map-bottom:var(--ui-bottom);width:min(var(--free-map-width,260px), calc(100% - var(--ui-left) - var(--ui-right) - var(--stick-size) - 16px));display:block}body[data-mode=free] .city-guide[data-expanded=true] #city-map{width:100%}body[data-mode=free]:not([data-controller=true]) .city-guide{--map-bottom:calc(var(--ui-bottom) + 82px)}}@media (height<=560px){body[data-mode=free] .city-guide{--free-map-width:min(220px, calc(100svh - var(--ui-top) - var(--ui-bottom) - 84px))}body[data-mode=free]:not([data-controller=true]) .city-guide{--free-map-width:min(220px, calc(100svh - var(--ui-top) - var(--ui-bottom) - 166px))}}@media (width<=360px){body[data-mode=free] .city-guide-header>span{display:none}}.world-map-dialog{width:min(1180px, calc(100% - var(--ui-left) - var(--ui-right)))}.world-map-dialog .chooser-heading{padding-bottom:12px}.world-map-body{gap:4px;min-width:0;display:grid}.world-map-frame{justify-content:center;min-width:0;display:flex}#world-map{cursor:crosshair;touch-action:none;background:#20383e;border-radius:12px;max-width:100%;height:auto;display:block}.world-map-status{text-align:center;min-height:1.4em;color:var(--city-gold);margin:10px 0 6px;font-size:13px;font-weight:650}.world-map-legend{color:var(--city-text);flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:0 0 8px;padding:0;font-size:12px;list-style:none;display:flex}.world-map-legend li{align-items:center;gap:7px;display:flex}.world-map-legend small{color:var(--city-muted);font-size:11px}.world-map-swatch{background:var(--district-color);border-radius:4px;width:14px;height:14px;box-shadow:inset 0 0 0 1px #0003}.world-map-marker{background:#17262f;border-radius:50%;width:14px;height:14px;box-shadow:inset 0 0 0 2px #5fd0c0}.world-map-note{text-align:center;color:var(--city-muted);margin:0 0 8px;font-size:11px;line-height:1.5}.world-map-dialog .controller-hint{text-align:center}@media (width>=900px) and (height>=480px),(orientation:landscape) and (width>=560px){.world-map-body{grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:22px}.world-map-status{text-align:left;margin-top:0}.world-map-legend{flex-direction:column;align-items:stretch;gap:9px;font-size:13px}.world-map-legend small{margin-left:auto}.world-map-note{text-align:left;margin-top:14px}}@media (orientation:landscape) and (height<=480px){.world-map-dialog .chooser-heading{padding-bottom:4px}.world-map-legend{gap:5px;font-size:12px}.world-map-note{display:none}}[hidden]#taxi-hud,[hidden]#taxi-nav,[hidden]#taxi-task,[hidden]#taxi-results,[hidden]#demolition-results,[hidden]#taxi-buttons,[hidden]#taxi-dash,.taxi-stop-track[hidden],.taxi-timer-track[hidden],#taxi-timer[hidden]{display:none}.taxi-hud,.taxi-task,.taxi-dash{font-variant-numeric:tabular-nums;pointer-events:none}.taxi-hud{top:var(--ui-top);left:var(--ui-left);color:#fff;gap:2px;height:58px;display:flex;position:absolute}.taxi-clock-box{background:var(--city-accent);color:#172229;border-radius:12px 0 0 12px;flex-direction:column;justify-content:center;align-items:center;min-width:72px;padding:5px 12px;display:flex}.taxi-clock-box>span{letter-spacing:.7px;font-size:11px;font-weight:800}#taxi-clock{letter-spacing:-1px;font-size:30px;font-weight:850;line-height:1}.taxi-clock-box:has([data-urgent=true]){background:#ffb5a6}#taxi-clock[data-urgent=true]{color:#721e15}.taxi-score{background:#17262ff5;border-radius:0 12px 12px 0;align-content:center;gap:2px;padding:6px 12px;display:grid}#taxi-cash{font-size:24px;font-weight:800;line-height:1.1}#taxi-fares{color:#d9e4e8;font-size:12px}.taxi-task{top:var(--ui-top);width:410px;max-width:calc(100% - var(--ui-left) - var(--ui-right));color:#fff8e7;background:#17262ff5;border:1px solid #ffffff40;border-radius:14px;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #07111926}.taxi-task:has(.taxi-nav[hidden]){grid-template-columns:minmax(0,1fr)}.taxi-nav{align-content:center;justify-items:center;gap:6px;display:grid}#taxi-arrow{width:38px;height:38px;display:block}#taxi-nav-distance{white-space:nowrap;font-size:12px;font-weight:750}.taxi-task-copy{gap:5px;min-width:0;display:grid}.taxi-task-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:3px 10px;font-size:12px;line-height:1.3;display:flex}#taxi-stage{color:var(--city-accent);font-weight:800}#taxi-fare-status{color:#d9e4e8;white-space:nowrap}#taxi-task-title{overflow-wrap:anywhere;font-size:18px;font-weight:750;line-height:1.2}#taxi-task-detail{color:#d9e4e8;font-size:14px;line-height:1.35}#taxi-task-detail:empty{display:none}#taxi-party{color:#c3f4bb;font-size:13px;line-height:1.3}#taxi-next-stop{color:#d9e4e8;overflow-wrap:anywhere;font-size:12px;line-height:1.3}#taxi-party:empty,#taxi-next-stop:empty{display:none}#taxi-next-stop[data-mood]:not([data-mood=""]):not(:empty){color:#fff8e7;font-weight:700}.taxi-task:not([data-arriving=true]) .taxi-task-copy:has(#toast.show) #taxi-task-detail{display:none}body:not([data-mode=free]) .taxi-task #toast{width:auto;max-width:100%;color:var(--city-accent-soft);letter-spacing:0;text-align:left;background:0 0;border-radius:0;margin:0;padding:0;font-size:14px;line-height:1.35;display:none;position:static;transform:none}body:not([data-mode=free]) .taxi-task #toast.show{display:block}body:not([data-mode=free]) .taxi-task[data-arriving=true] #toast{display:none}.taxi-task[data-arriving=true] .taxi-task-copy #taxi-task-detail{display:block}.taxi-task[data-arriving=true]{border-color:#b9edb1}.taxi-task[data-arriving=true] #taxi-task-detail{color:#c3f4bb}#city-map-toggle:focus-visible,#city-map-open:focus-visible,#taxi-buttons button:focus-visible{outline-offset:3px;outline:3px solid #fff8e7}.taxi-stop-track{background:#ffffff30;border-radius:2px;height:4px;position:absolute;bottom:0;left:12px;right:12px;overflow:hidden}#taxi-stop-progress{background:#b9edb1;width:0;height:100%;display:block}[data-rating=speedy],[data-band=long],[data-tone=speedy]{--rating-color:#7ce787}[data-rating=normal],[data-band=medium],[data-tone=normal]{--rating-color:#ffd238}[data-band=short]{--rating-color:#ffa44a}[data-rating=slow],[data-band=hop],[data-tone=slow]{--rating-color:#ff8a7a}#taxi-timer{color:#172229;background:var(--rating-color);white-space:nowrap;border-radius:999px;margin-left:auto;padding:1px 8px;font-weight:800}.taxi-task[data-urgent=true] #taxi-timer{animation:.45s ease-in-out infinite alternate taxi-timer-pulse}@keyframes taxi-timer-pulse{to{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.taxi-task[data-urgent=true] #taxi-timer{outline:2px solid #fff8e7;animation:none}}.taxi-timer-track{background:#ffffff26;border-radius:0 0 3px 3px;height:4px;position:absolute;top:0;left:14px;right:14px;overflow:hidden}.taxi-timer-track:before,.taxi-timer-track:after{content:"";z-index:1;background:#17262f;width:2px;position:absolute;top:0;bottom:0}.taxi-timer-track:before{left:25%}.taxi-timer-track:after{left:50%}#taxi-timer-fill{background:var(--rating-color);height:100%;display:block}#taxi-party[data-band]:not([data-band=""]){color:var(--rating-color);font-weight:700}#taxi-party[data-band]:not([data-band=""]):before{content:"●";margin-right:5px}body:not([data-mode=free]) .taxi-task #toast:is([data-tone=speedy],[data-tone=normal],[data-tone=slow]){color:var(--rating-color);font-weight:700}.taxi-dash{bottom:var(--ui-bottom);color:#e6edef;background:#17262ff5;border-radius:10px;justify-items:center;gap:4px;padding:7px 10px;font-size:12px;display:grid;position:absolute;left:50%;transform:translate(-50%)}#taxi-speed{color:#fff8e7;font-size:23px;font-weight:750}#taxi-combo{color:#c3f4bb;white-space:nowrap;font-size:12px}#taxi-combo:empty,.taxi-controller-charge{display:none}body[data-controller=true] .taxi-controller-charge{text-align:center;gap:4px;width:64px;display:grid}body[data-controller=true] .taxi-dash{bottom:var(--ui-bottom);left:50%;transform:translate(-50%)}#taxi-controller-boost{appearance:none;width:100%;height:4px;color:var(--city-accent);background:#ffffff30;border:0;border-radius:4px;overflow:hidden}#taxi-controller-boost::-webkit-progress-bar{background:#ffffff30}#taxi-controller-boost::-webkit-progress-value{background:var(--city-accent)}#taxi-controller-boost::-moz-progress-bar{background:var(--city-accent)}#taxi-buttons{left:var(--ui-left);bottom:var(--ui-bottom);align-items:stretch;gap:10px;display:flex;position:absolute}#taxi-buttons button{color:#172229;background:var(--city-accent);touch-action:none;border:1px solid #ffffff50;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:80px;min-width:80px;height:100%;min-height:76px;padding:9px 7px 12px;font-size:15px;font-weight:800;display:flex}#taxi-buttons>button{color:#fff8e7;background:#17262ff5}#taxi-buttons small{font-size:11px;font-weight:600}#taxi-buttons kbd{width:auto;height:auto;padding:2px 4px;font-size:11px;line-height:1.2}#taxi-buttons>button kbd{border-color:#ffffff60}.taxi-boost-control{position:relative}#taxi-boost{pointer-events:none;background:#17222940;border-radius:4px;height:4px;position:absolute;bottom:6px;left:8px;right:8px;overflow:hidden}#taxi-boost-fill{background:#172229;height:100%;display:block}#taxi-buttons[data-boosting=true] [data-drive-button=boost]{background:var(--city-accent-soft);box-shadow:inset 0 0 0 2px #fff8e7}#taxi-buttons[data-drifting=true] [data-drive-button=handbrake]{background:#405760;box-shadow:inset 0 0 0 2px #fff8e7}body[data-flying=true] #taxi-buttons span{font-size:13px}body:not([data-mode=free]) :is(.city-hud,.notebook-panel,.controls){display:none}body:not([data-mode=free]) .topbar{justify-content:flex-end}body:not([data-mode=free]) #city-stamps,body[data-controller=true] #taxi-buttons>:not(#use-car),#use-car .pad-hint,body[data-controller=true] #use-car .key-hint{display:none}body[data-controller=true] #use-car .pad-hint{display:inline-block}#use-car small:empty{display:none}body:not([data-mode=free]) #toast{top:calc(var(--ui-top) + 120px)}#app:has(#welcome:not(.hidden),#pause-overlay:not([hidden]),dialog[open],#taxi-results:not([hidden]),#demolition-results:not([hidden])) :is(.taxi-hud,.taxi-task,.taxi-dash,#taxi-buttons){visibility:hidden;pointer-events:none}#app:has(#taxi-results:not([hidden]),#demolition-results:not([hidden])) :is(.topbar,.bottom-bar,.touch-controls,.city-guide,#toast){visibility:hidden;pointer-events:none}.city-guide{--map-bottom:var(--ui-bottom);bottom:var(--map-bottom);background:#17262ff5;border-radius:12px;width:232px;padding:8px}body:not([data-mode=free]) .city-guide[data-expanded=true]{max-height:calc(100% - var(--taxi-task-bottom,190px) - 12px - var(--map-bottom));overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}.city-guide[data-expanded=true] .city-guide-header{z-index:1;background:#17262f;position:sticky;top:0}.city-guide-header{margin-bottom:4px}.city-guide-header>span{letter-spacing:.5px;font-size:12px}:is(#city-map-toggle,#city-map-open){color:#fff8e7;border-radius:8px;min-width:0;min-height:44px;padding:8px;font-size:13px;font-weight:650}#city-map-open{align-items:center;gap:6px;display:inline-flex}#city-map-toggle{place-items:center;min-width:44px;padding:0;display:grid}.city-guide-actions svg{flex-shrink:0;width:18px;height:18px}#city-map-toggle[aria-expanded=false] svg{transform:rotate(180deg)}body[data-controller=true] #city-map-open svg{display:none}@media (width>=761px) and (height>=561px){body[data-controller=true] .city-guide[data-expanded=true]{width:256px}}@media (width<=600px) and (height<=560px) and (orientation:landscape){#city-map-open svg{display:none}}#city-map-open{color:#f1cc8e}:is(#city-map-toggle,#city-map-open):hover{background:#ffffff18}.city-guide[data-expanded=false]{width:auto;padding:0}.city-guide[data-expanded=false] .city-guide-header{margin:0}.city-guide[data-expanded=false] .city-guide-header>span{display:none}#city-map{object-fit:contain;max-height:none}#taxi-offer{color:#d9e4e8;margin:8px 2px 2px;font-size:13px;line-height:1.4}#city-location{letter-spacing:.3px;font-size:12px}#weather-label{color:#d9e4e8;font-size:12px}@media (any-pointer:coarse){:root{--stick-size:120px}#taxi-buttons kbd{display:none}#taxi-buttons button{width:72px;min-width:72px;min-height:72px}body:not([data-mode=free]) #stick-help{bottom:calc(var(--stick-size) + 8px);color:#e6edef;background:#17262ff5;border-radius:9px;padding:6px 36px 6px 9px;font-size:12px;line-height:1.5;display:block}body:not([data-mode=free]) .stick-help-line{font-size:12px}body:not([data-mode=free]) #stick-help .dismiss-control-help{width:44px;min-width:44px;height:44px;min-height:44px;position:absolute;top:0;right:-3px}body:not([data-mode=free]) #stick-help .dismiss-control-help:after{display:none}.taxi-dash{left:var(--ui-left);bottom:calc(var(--ui-bottom) + 82px);grid-auto-flow:column;align-items:baseline;gap:8px;transform:none}.city-guide{--map-bottom:calc(var(--ui-bottom) + var(--stick-size) + 68px);top:auto;bottom:var(--map-bottom)}}@media (any-pointer:coarse) and (width<=400px){body:not([data-mode=free]) #stick-help{bottom:196px}}@media (width<=1100px){.taxi-task{top:calc(var(--ui-top) + 66px)}body:not([data-mode=free]) #toast{top:calc(var(--ui-top) + 194px)}}@media (width<=760px){.taxi-hud{height:50px}.taxi-clock-box{min-width:60px;padding:4px 8px}#taxi-clock{font-size:26px}.taxi-score{padding:4px 9px}#taxi-cash{font-size:21px}.taxi-task{top:calc(var(--ui-top) + 60px);width:auto;left:var(--ui-left);right:var(--ui-right);grid-template-columns:44px minmax(0,1fr);gap:9px;max-width:none;padding:11px;transform:none}#taxi-task-title{font-size:17px}#taxi-arrow{width:34px;height:34px}.taxi-task-heading{gap:3px 6px}.city-guide,body:not([data-mode=free]) .city-guide{--map-bottom:calc(var(--ui-bottom) + 140px);top:auto;bottom:var(--map-bottom);left:var(--ui-left);width:min(260px, calc(100% - var(--ui-left) - var(--ui-right)));right:auto}.city-guide[data-expanded=false],body:not([data-mode=free]) .city-guide[data-expanded=false]{width:auto}#app:has(.city-guide[data-expanded=true]) #stick-help{visibility:hidden}#city-location{white-space:nowrap;text-overflow:ellipsis;max-width:125px;overflow:hidden}body:not([data-mode=free]) #toast{top:calc(var(--ui-top) + 202px);color:#fff8e7;background:#17262ff5;padding:8px 12px;font-size:14px}}@media (width<=360px){#taxi-buttons button{width:64px;min-width:64px}#taxi-buttons{gap:8px}.taxi-task{gap:7px;padding:9px}.taxi-dash{left:var(--ui-left);bottom:calc(var(--ui-bottom) + 82px);transform:none}#taxi-speed{font-size:20px}.city-guide[data-expanded=true],body:not([data-mode=free]) .city-guide[data-expanded=true]{--map-bottom:calc(var(--ui-bottom) + 132px);width:208px}.city-guide[data-expanded=true] #city-map{width:160px;margin-inline:auto}}@media (height<=560px) and (orientation:landscape){.taxi-task{top:var(--ui-top);left:calc(var(--ui-left) + 148px);right:calc(var(--ui-right) + 148px);grid-template-columns:40px minmax(0,1fr);gap:8px;width:auto;max-width:none;padding:9px;transform:none}.taxi-hud{height:50px}.taxi-clock-box{min-width:56px;padding:4px 8px}#taxi-clock{font-size:26px}.taxi-score{padding:4px 8px}#taxi-cash{font-size:21px}#taxi-task-title{font-size:16px}#taxi-arrow{width:30px;height:30px}#taxi-task-detail{font-size:13px}.taxi-task-heading{font-size:12px}.city-guide,body:not([data-mode=free]) .city-guide{--map-bottom:calc(var(--ui-bottom) + 86px);left:var(--ui-left);top:auto;right:auto;bottom:var(--map-bottom);z-index:2;width:220px;display:block}.city-guide[data-expanded=false],body:not([data-mode=free]) .city-guide[data-expanded=false]{width:auto}.city-guide[data-expanded=true],body:not([data-mode=free]) .city-guide[data-expanded=true]{grid-template-columns:140px minmax(0,1fr);gap:4px 12px;width:360px;display:grid}.city-guide[data-expanded=true] .city-guide-header{grid-column:2;margin:0}.city-guide[data-expanded=true] .city-guide-header>span{display:none}.city-guide[data-expanded=true] #city-map{grid-area:1/1/span 2;align-self:center}.city-guide[data-expanded=true] #taxi-offer{grid-column:2;margin:0}body:not([data-mode=free]) #toast{top:auto;bottom:calc(var(--ui-bottom) + 64px);max-width:300px;font-size:13px}body:not([data-mode=free]) #stick-help{display:none}#taxi-buttons button{min-height:64px}.taxi-dash{left:50%;bottom:var(--ui-bottom);transform:translate(-50%)}#app:has(.welcome.hidden):has(#pause-overlay[hidden]) .drive-actions button{width:44px;min-width:44px;padding:0}#app:has(.welcome.hidden):has(#pause-overlay[hidden]) .drive-actions .control-label{display:none}}@media (width<=600px) and (height<=560px) and (orientation:landscape){.city-guide[data-expanded=true],body:not([data-mode=free]) .city-guide[data-expanded=true]{width:140px;max-height:calc(100% - var(--ui-top) - 60px - var(--map-bottom));grid-template-columns:minmax(0,1fr);gap:4px;padding:4px}.city-guide[data-expanded=true] .city-guide-header{grid-area:1/1}.city-guide[data-expanded=true] #city-map{grid-area:2/1}.city-guide[data-expanded=true] #taxi-offer{grid-column:1}}.taxi-results{z-index:7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f9f5e5;background:#101c28d9;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;display:grid;position:absolute;inset:0}.taxi-result-card{width:360px;max-width:calc(100% - var(--ui-left) - var(--ui-right));border:1px solid color-mix(in srgb, var(--city-accent) 40%, transparent);text-align:center;font-variant-numeric:tabular-nums;background:#17262f;border-radius:16px;padding:26px 26px 22px}.taxi-result-card h2{letter-spacing:2px;color:var(--city-accent);justify-content:center;align-items:baseline;gap:10px;margin:0 0 8px;font-size:13px;display:flex}#taxi-result-shift,#demolition-result-time{color:#9fb0b6;letter-spacing:0;font-size:12px;font-weight:600}#taxi-result-shift[data-new=true]{color:var(--city-accent)}#taxi-result-shift[data-new=true]:after{content:" ★"}#taxi-result-cash,#demolition-result-score{letter-spacing:-3px;font-size:64px;font-weight:900;line-height:1;display:block}.taxi-license{text-align:left;justify-content:center;align-items:center;gap:12px;margin:16px 0 18px;display:flex}.taxi-license-badge{background:var(--city-accent);color:#172229;border-radius:12px;flex:none;place-items:center;width:48px;height:48px;font-size:28px;font-weight:900;line-height:1;display:grid}.taxi-license[data-license=none] .taxi-license-badge{color:#d9e4e8;background:#ffffff1f}.taxi-license:is([data-license=s],[data-license=legend]) .taxi-license-badge{background:linear-gradient(135deg, var(--city-accent-soft), var(--city-accent) 45%, #ff9c33);box-shadow:0 0 18px color-mix(in srgb, var(--city-accent) 40%, transparent)}.taxi-license-copy{gap:3px;min-width:0;display:grid}#taxi-license-name,#demolition-rank-name{font-size:17px;font-weight:800}#taxi-license-next,#demolition-rank-next{color:#c3d0d5;font-size:12px}#taxi-license-next:empty,#demolition-rank-next:empty{display:none}.taxi-result-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.taxi-result-stats li{background:#ffffff0a;border-radius:10px;gap:2px;padding:10px 4px 9px;display:grid}.taxi-result-stats strong{letter-spacing:-.5px;font-size:22px;font-weight:800;line-height:1.1}.taxi-result-stats span{letter-spacing:1px;text-transform:uppercase;color:#9fb0b6;font-size:11px}.taxi-result-stats li[data-new=true]{background:color-mix(in srgb, var(--city-accent) 9%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--city-accent) 40%, transparent)}.taxi-result-stats li[data-new=true] strong{color:var(--city-accent)}.taxi-result-stats li[data-new=true] span:after{content:" ★";color:var(--city-accent)}.taxi-result-heading{letter-spacing:1px;text-transform:uppercase;color:#9fb0b6;justify-content:space-between;gap:10px;font-size:11px;display:flex}.taxi-result-heading span:last-child{color:#f9f5e5}.taxi-result-goals{text-align:left;margin:16px 0 0}.taxi-result-goals:empty{display:none}.taxi-result-goals ul{margin:6px 0 0;padding:0;list-style:none;display:grid}.taxi-result-goals li{color:#d9e4e8;border-top:1px solid #ffffff14;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:flex}.taxi-result-goals li>span:first-child{color:#9fb0b6;text-align:center;flex:none;width:18px}.taxi-result-goals li>span:nth-child(2){flex:1;min-width:0}.taxi-result-goals li>span:nth-child(3){color:#9fb0b6;font-size:12px}.taxi-result-goals li[data-done=true]{color:#f9f5e5}.taxi-result-goals li[data-done=true]>span:first-child{color:#7ce787}.taxi-result-career{text-align:left;margin:16px 0 0}.taxi-result-career[hidden]{display:none}.taxi-result-career[data-promoted=true] #taxi-career-rank{color:var(--city-accent)}#taxi-career-progress{width:100%;height:5px;accent-color:var(--city-accent);margin:7px 0 0;display:block}#taxi-career-livery{color:var(--city-accent);margin-top:6px;font-size:12px;display:block}#taxi-career-livery:empty{display:none}.taxi-result-footer{color:#9fb0b6;justify-content:space-between;gap:10px;margin:16px 0 0;font-size:12px;display:flex}.taxi-result-card button{background:var(--city-accent);color:#172229;border:0;border-radius:8px;width:100%;margin-top:18px;padding:14px;font-weight:800;display:block}.taxi-result-card button+button{color:#e9eee3;background:#ffffff14;margin-top:8px}body:not([data-mode=free]) .taxi-task #toast[data-tone=goal]{color:#c3f4bb;font-weight:700}.taxi-result-more{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px;display:grid}.taxi-result-more>:not(#taxi-fleet-results,#taxi-free,#demolition-taxi,#demolition-free){grid-column:1/-1}.taxi-result-card :is(#taxi-fleet-results,#taxi-free,#demolition-taxi,#demolition-free){padding-inline:8px}@media (height<=700px){.taxi-result-card{padding:18px 20px 16px}#taxi-result-cash,#demolition-result-score{letter-spacing:-2px;font-size:48px}.taxi-license{margin:10px 0 12px}.taxi-license-badge{width:40px;height:40px;font-size:24px}.taxi-result-stats li{padding:6px 4px 5px}.taxi-result-stats strong{font-size:18px}.taxi-result-goals li{padding-block:5px}.taxi-result-more{margin-top:12px}.taxi-result-more>*{margin-top:10px}.taxi-result-more>:first-child{margin-top:0}.taxi-result-card button{margin-top:12px;padding-block:11px}}@media (orientation:landscape) and (height<=560px){.taxi-result-card{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:0 28px;width:760px;display:grid}.taxi-result-more{margin-top:0}}@media (orientation:landscape) and (height<=400px){.taxi-result-goals li{padding-block:3px}.taxi-result-more>*{margin-top:6px}.taxi-result-card button{min-height:44px;margin-top:8px;padding-block:9px}}#taxi-fleet-dialog{width:min(960px, calc(100% - var(--ui-left) - var(--ui-right)));box-sizing:border-box;color:#f5f1de;background:#17262f;border:1px solid #64716d;border-radius:18px;max-height:calc(100% - 32px);padding:26px;overflow-y:auto}#taxi-fleet-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a141bd9}#taxi-fleet-dialog .chooser-heading{z-index:1;background:#17262f;justify-content:space-between;align-items:center;display:flex}#taxi-fleet-dialog h2{letter-spacing:-.7px;margin:4px 0;font-size:26px}#taxi-fleet-dialog .eyebrow{color:#ffd238;font-size:11px}#taxi-fleet-dialog .icon-button{color:#f5f1de;font-size:28px}.fleet-summary{justify-content:space-between;align-items:center;gap:24px;padding:18px 0 22px;display:flex}.fleet-summary p{color:#bfcac8;max-width:460px;margin:0;font-size:13px;line-height:1.6}.fleet-wallet{text-align:right;white-space:nowrap}.fleet-wallet span{color:#bfcac8;letter-spacing:1px;text-transform:uppercase;font-size:11px;display:block}#fleet-balance{color:#ffd238;font-variant-numeric:tabular-nums;font-size:30px}.taxi-fleet-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.taxi-fleet-card{background:#20333d;border:1px solid #52636a;border-radius:12px;flex-direction:column;padding:16px;display:flex}.taxi-fleet-card[data-selected=true]{border-color:#ffd238;box-shadow:inset 0 3px #ffd238}.fleet-card-top{color:#c7d1cd;justify-content:space-between;align-items:center;gap:8px;min-height:24px;font-size:11px;display:flex}.fleet-card-top span:last-child{color:#ffd238;font-weight:800}.taxi-fleet-card .car-art{background:radial-gradient(#ffffff0c,#0000 70%);width:100%;height:116px;margin:4px 0 8px}.taxi-fleet-card h3{letter-spacing:-.5px;margin:0;font-size:22px}.fleet-description{color:#c7d1cd;min-height:58px;margin:8px 0 16px;font-size:12px;line-height:1.6}.fleet-stats{gap:10px;margin:0 0 20px;display:grid}.fleet-stats div{grid-template-columns:1fr auto;gap:5px;font-size:11px;display:grid}.fleet-stats dt{color:#c7d1cd}.fleet-stats dd{font-variant-numeric:tabular-nums;margin:0}.fleet-stats span{background:#ffffff16;border-radius:2px;grid-column:1/-1;height:4px;overflow:hidden}.fleet-stats i{background:#ffd238;height:100%;display:block}.fleet-progress{color:#c7d1cd;margin:auto 0 8px;font-size:11px}.taxi-fleet-card progress{accent-color:#a4e887;width:100%;height:5px;margin:0 0 10px}.taxi-fleet-card button{color:#17262f;background:#ffd238;border:1px solid #ffd238;border-radius:6px;width:100%;min-height:44px;margin-top:6px;padding:10px 8px;font-size:12px;font-weight:800}.taxi-fleet-card button[aria-pressed=true]{color:#ffd238;background:#ffd23814}.taxi-fleet-card button:disabled{color:#aab8b8;cursor:default;background:#ffffff09;border-color:#69797b}#taxi-fleet-dialog button:focus-visible{outline-offset:3px;outline:3px solid #fff}.fleet-footer{color:#c7d1cd;margin:18px 0 0;font-size:12px;line-height:1.6}.fleet-livery-shop{background:#20333d;border:1px solid #52636a;border-radius:12px;margin:18px 0 0;padding:16px}.fleet-livery-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin:0 0 10px;display:flex}.fleet-livery-heading h3{letter-spacing:1.5px;text-transform:uppercase;color:#ffd238;margin:0;font-size:12px}#fleet-livery-name{color:#c7d1cd;font-size:12px}.fleet-liveries{gap:10px}.fleet-livery{min-width:44px;min-height:44px}.fleet-livery .paint-chip{width:30px;height:30px;box-shadow:inset 0 0 0 1px #0005,0 0 0 1px #fff2}.fleet-livery[aria-checked=true]{box-shadow:0 0 0 2px #ffd238}.fleet-livery[data-locked=true]{cursor:default}.fleet-livery[data-locked=true] .paint-chip{opacity:.3;outline-offset:2px;outline:1px dashed #fff5;box-shadow:inset 0 0 0 1px #fff4}.fleet-career{color:#c7d1cd;margin:12px 0 0;font-size:12px;line-height:1.6}#fleet-feedback{color:#a4e887;min-height:18px;margin:8px 0 0;font-size:12px}#fleet-save{color:#ffd238;font-size:12px}#taxi-result-bank{color:#ffd238;line-height:1.6}.taxi-result-card{max-height:calc(100% - var(--ui-top) - var(--ui-bottom));box-sizing:border-box;overflow-y:auto}.taxi-result-card button{min-height:44px}@media (height<=600px) and (orientation:portrait){.taxi-result-card{padding:14px 16px 12px}#taxi-result-cash{font-size:40px}.taxi-license{margin:6px 0 8px}.taxi-result-stats li{padding:4px 4px 3px}.taxi-result-stats strong{font-size:16px}.taxi-result-goals{margin-top:8px}.taxi-result-goals li{padding-block:3px}.taxi-result-more>*{margin-top:8px}.taxi-result-card button{margin-top:8px;padding-block:10px}}@media (orientation:landscape) and (height<=400px){.taxi-result-card{padding-block:12px 10px}}#pause-fleet[hidden],#change-car[hidden]{display:none}@media (width<=680px){#taxi-fleet-dialog{padding:18px}#taxi-fleet-dialog h2{font-size:22px}.fleet-summary{align-items:flex-start;gap:12px}.fleet-summary p{font-size:12px}#fleet-balance{font-size:25px}.taxi-fleet-cards{grid-template-columns:1fr}.taxi-fleet-card .car-art{height:105px}.fleet-description{min-height:0}}#app #welcome #demolition:not(.menu-secondary){color:#17262f;background:#ff9433;border-color:#ff9433;margin-top:14px}#app #welcome #demolition:not(.menu-secondary):hover{background:#ffb46e;border-color:#ffb46e}#welcome #demolition:not(.menu-secondary) .demolition-icon{flex-shrink:0;width:43px;height:43px}#app #welcome #demolition.menu-secondary .demolition-icon{color:#ff9433}@media (height<=560px){#app #welcome #demolition:not(.menu-secondary){margin-top:10px}#welcome #demolition:not(.menu-secondary) .demolition-icon{width:32px;height:32px}}@media (height<=380px) and (orientation:landscape){#app #welcome #demolition:not(.menu-secondary){margin-top:8px}}body[data-mode=demolition] .taxi-clock-box:not(:has([data-urgent=true])){background:repeating-linear-gradient(-45deg, var(--city-accent) 0 9px, #ffa24d 9px 18px)}body[data-mode=demolition] .taxi-hud[data-overtime=true] #taxi-clock{display:none}body[data-mode=demolition] .taxi-hud[data-overtime=true] .taxi-clock-box>span{text-align:center;max-width:4.2em;line-height:1.25}[data-rating=chain],[data-band=damage]{--rating-color:var(--city-accent)}.taxi-task[data-stage=demolition] .taxi-timer-track:before,.taxi-task[data-stage=demolition] .taxi-timer-track:after{display:none}#app .taxi-task[data-stage=demolition] #taxi-fare-status{color:var(--city-accent-soft);font-size:13px;font-weight:800}#taxi-party[data-band=damage]:not([data-band=""]){font-size:15px;font-weight:800}#taxi-party[data-band=damage]:not([data-band=""]):before{content:none}body[data-mode=demolition] .taxi-task #toast[data-tone=chain]{color:var(--city-accent);letter-spacing:.3px;font-weight:800}body[data-mode=demolition] .taxi-task #toast[data-tone=banked]{color:var(--city-accent-soft);font-weight:700}body[data-mode=demolition] .taxi-task #toast[data-tone=bonus]{color:#8ff0b0;font-weight:700}body[data-mode=demolition] .taxi-task #toast[data-tone=slow]{color:#ff8a7a;font-weight:700}#app #demolition-results .taxi-result-card{background:repeating-linear-gradient(-45deg, var(--city-accent) 0 10px, var(--city-recessed) 10px 20px) top / 100% 7px no-repeat, var(--city-panel)}.taxi-result-stats li[data-bad=true] strong{color:#ff8a7a}.demolition-result-scores{text-align:left;margin:16px 0 0}.demolition-score-list{font-variant-numeric:tabular-nums;margin:6px 0 0;padding:0;list-style:none;display:grid}.demolition-score-list li{color:var(--city-muted);border-top:1px solid #ffffff14;grid-template-columns:18px minmax(0,1fr) 24px 48px;align-items:center;gap:10px;padding:6px 0;font-size:13px;display:grid}.demolition-score-list li>span:first-child{color:#9fb0b6;text-align:center}.demolition-score-list strong{color:var(--city-text);text-align:left;font-weight:700}.demolition-score-list small{text-align:right;font-size:11px}.demolition-score-rank{width:24px;height:24px;color:var(--city-text);background:#ffffff14;border-radius:6px;place-items:center;font-size:12px;font-weight:800;display:grid}.demolition-score-list li[data-current=true] strong{color:var(--city-accent)}.demolition-score-list li[data-current=true] .demolition-score-rank{background:var(--city-accent);color:var(--city-on-accent)}.demolition-score-list .demolition-score-empty{font-size:12px;display:block}#scores-panel .demolition-score-list li:first-child{border-top:0}@media (height<=700px){.demolition-score-list li{padding-block:4px}}@media (height<=600px){:is(.demolition-result-scores li:nth-child(n+4):not([data-current=true]),.demolition-result-scores .demolition-score-list:has(li:nth-child(n+4)[data-current=true]) li:nth-child(3)){display:none}}@media (orientation:landscape) and (height<=400px){.demolition-score-list li{padding-block:2px}}:root{--city-panel:#263b45;--city-glass:#263b45f2;--city-raised:#304954;--city-hover:#3b5662;--city-recessed:#1b2d36;--city-text:#f5f4e9;--city-muted:#c4d3d8;--city-line:#afc9d13d;--city-accent:#ffd238;--city-accent-hover:#ffe177;--city-accent-soft:#fff1ad;--city-gold:#f3d899;--city-on-accent:#17262f;--city-radius:16px;--city-control-radius:10px;--city-shadow:0 6px 24px #101e282b;--city-font:"Segoe UI", Arial, sans-serif}body[data-mode=demolition]{--city-accent:#ff9433;--city-accent-hover:#ffb46e;--city-accent-soft:#ffd6ad}body[data-mode=free]{--city-accent:#5fd0c0;--city-accent-hover:#8fe0d4;--city-accent-soft:#c4f1ea}body,body[data-journey]{--ink:var(--city-text);--cream:var(--city-panel);--ui-line:var(--city-line);--action:var(--city-raised);--action-hover:var(--city-hover);--menu-ink:var(--city-text);color:var(--city-text);background:var(--city-recessed);font-family:var(--city-font);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#app :is(button,input,select):focus-visible,#app .chooser-card:focus,body[data-controller=true] #app :is(button,input,select):focus{outline:3px solid var(--city-gold);outline-offset:3px}#app kbd{border-color:var(--city-line);color:inherit;background:#ffffff09}#app :is(.city-hud,.drive-actions,.city-guide,.taxi-task,.taxi-dash,.controls,.location),#app #stick-help{color:var(--city-text);background:var(--city-glass);border-color:var(--city-line);box-shadow:var(--city-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}:root:is([data-graphics=smooth],[data-graphics=basic]) #app :is(.city-hud,.drive-actions,.city-guide,.taxi-task,.taxi-dash,.controls,#stick-help,.location){-webkit-backdrop-filter:none;backdrop-filter:none}#app :is(.city-hud,.drive-actions,.city-guide,.taxi-task,.controls){border-radius:var(--city-radius)}#app .drive-actions{padding:3px}#app :is(.city-hud,.drive-actions){min-height:58px}#app .city-hud,#app .city-hud-copy{min-width:0}#app :is(#city-location,#weather-label){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#app .drive-actions button{color:var(--city-text);border-radius:var(--city-control-radius);font-weight:650}#app .drive-actions button:hover{background:var(--city-hover)}#app .city-heading{color:var(--city-gold);border-color:#f3d89966}#app :is(#weather-label,#taxi-task-detail,#taxi-fares,#taxi-fare-status,#taxi-offer){color:var(--city-muted)}#app .taxi-score{background:var(--city-glass);color:var(--city-text)}#app #taxi-stage{color:var(--city-accent)}#app .taxi-task[data-arriving=true] #taxi-task-detail{color:#c3f4bb}#app .city-guide-header{background:var(--city-panel)}#app .city-guide[data-expanded=false] .city-guide-header{background:0 0}#app #city-map-toggle{color:var(--city-text);border-radius:var(--city-control-radius)}#app #city-map-open{color:var(--city-gold);border-radius:var(--city-control-radius)}#app :is(#city-map-toggle,#city-map-open):hover{background:var(--city-hover)}body[data-controller=true] #app #city-map-open:before{content:"VIEW";border:1px solid var(--city-line);letter-spacing:.5px;vertical-align:1px;border-radius:4px;margin-right:6px;padding:1px 5px;font-size:9px}#app #taxi-buttons button{border-radius:var(--city-control-radius);border-color:var(--city-line)}#app #taxi-buttons>button{color:var(--city-text);background:var(--city-glass)}#app #taxi-buttons[data-drifting=true] [data-drive-button=handbrake]{background:var(--city-hover)}#app #touch-stick{opacity:1;box-shadow:var(--city-shadow);background:#263b45b8;border-color:#afc9d170}#app .stick-guide{border-color:#c4d3d84d}#app .stick-thumb{background:var(--city-muted);border-color:#f5f4e970;box-shadow:0 3px 10px #101e2859}#app #touch-stick.active .stick-thumb{background:var(--city-accent);border-color:var(--city-accent-hover)}#app #stick-help{border:1px solid var(--city-line);border-radius:var(--city-control-radius)}#app #welcome>.controller-hint{border:1px solid var(--city-line);background:var(--city-glass);color:var(--city-text)}#app #stick-help .stick-help-line{opacity:1;color:var(--city-muted)}#app #stick-help .dismiss-control-help{color:var(--city-muted);background:0 0}#app #stick-help .dismiss-control-help:hover{color:var(--city-text);background:var(--city-hover)}#app .pause-overlay,#app .taxi-results{color:var(--city-text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#101e28df}#app :is(.pause-header h2,.garage-title,#taxi-fleet-heading,.error h2){font-family:var(--city-font);letter-spacing:-.6px;color:var(--city-text);text-shadow:none;font-weight:750}#app :is(.pause-header .location-copy,.pause-settings h3){text-shadow:none}#app .pause-header .location{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0}#app :is(.pause-settings h3,.paint-shop h3,.garage-subheading){color:var(--city-gold);opacity:1;font-weight:750}#app :is(.chooser,#taxi-fleet-dialog,.taxi-result-card){color:var(--city-text);background:var(--city-panel);border:1px solid var(--city-line);border-radius:var(--city-radius);box-shadow:0 18px 60px #07131d70}#app :is(.chooser,#taxi-fleet-dialog)::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#101e28d9}#app :is(.chooser-heading,#taxi-fleet-dialog .chooser-heading){background:var(--city-panel)}#app :is(.icon-button,.chooser-heading .icon-button,#taxi-fleet-dialog .icon-button){color:var(--city-text);background:var(--city-raised);border:1px solid var(--city-line);border-radius:var(--city-control-radius);box-shadow:none}#app .icon-button:hover{background:var(--city-hover);transform:none}#app :is(.panel-button,.panel-toggle,.weather-setting,.graphics-levels button,.pwa-install-button){color:var(--city-text);border:1px solid var(--city-line);background:var(--city-raised);border-radius:var(--city-control-radius);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}#app :is(.panel-button,.panel-toggle,.graphics-levels button,.pwa-install-button):hover{background:var(--city-hover)}#app .panel-button:disabled{background:var(--city-recessed);color:var(--city-muted);opacity:.65}#app .pause-panel>:is(.panel-button,.weather-setting)+:is(.panel-button,.weather-setting){margin-top:6px}#app :is(.panel-button-value,.graphics-toggle small,.audio-mixer-toggle small,.graphics-status,.weather-note,.audio-description,.audio-channel output,.pixel-density-control output,.paint-current,.paint-note,.car-meter,.controller-hint),#app #pause-overlay .pwa-install-help{color:var(--city-muted);opacity:1}#app :is(.graphics-settings,.audio-mixer,.paint-shop,.notebook-panel){color:var(--city-text);border-color:var(--city-line);background:var(--city-recessed)}#app :is(.graphics-toggle,.audio-mixer-toggle)[aria-expanded=true]{border-radius:var(--city-control-radius) var(--city-control-radius) 0 0}#app :is(.graphics-settings,.audio-mixer){border-radius:0 0 var(--city-control-radius) var(--city-control-radius)}#app .weather-setting select{color:var(--city-text);border-color:var(--city-line);background:var(--city-recessed);border-radius:7px}#app .panel-switch{background:var(--city-recessed);border-color:#afc9d180}#app .panel-switch:after{background:var(--city-muted)}#app .panel-toggle[aria-pressed=true] .panel-switch{background:var(--city-accent);border-color:var(--city-accent)}#app .panel-toggle[aria-pressed=true] .panel-switch:after{background:var(--city-on-accent)}#app :is(.graphics-levels button[aria-checked=true],.audio-presets button[aria-pressed=true]){color:var(--city-on-accent);background:var(--city-accent);border-color:var(--city-accent);font-weight:750}#app .audio-presets{background:var(--city-panel)}#app .audio-presets button{color:var(--city-muted)}#app .audio-presets button:hover{background:var(--city-hover)}#app .audio-presets button[aria-pressed=true]:hover{color:var(--city-on-accent);background:var(--city-accent-hover)}#app :is(.graphics-slider,progress){accent-color:var(--city-accent)}#app .audio-channel input{--control-level:var(--audio-level,0%)}#app :is(.audio-channel input,.graphics-slider){--control-track:#afc9d138;appearance:none;cursor:pointer;background:0 0}#app :is(.audio-channel input,.graphics-slider)::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--city-accent) var(--control-level), var(--control-track) var(--control-level));border-radius:2px;height:4px}#app :is(.audio-channel input,.graphics-slider)::-webkit-slider-thumb{appearance:none;border:2px solid var(--city-recessed);background:var(--city-accent);width:16px;height:16px;box-shadow:0 0 0 1px var(--city-line);border-radius:50%;margin-top:-6px}#app :is(.audio-channel input,.graphics-slider)::-moz-range-track{background:var(--control-track);border-radius:2px;height:4px}#app :is(.audio-channel input,.graphics-slider)::-moz-range-progress{background:var(--city-accent);border-radius:2px;height:4px}#app :is(.audio-channel input,.graphics-slider)::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--city-recessed);background:var(--city-accent);border-radius:50%;width:16px;height:16px}#app :is(.start-button,.taxi-result-card button),#app #welcome .start-button{color:var(--city-on-accent);background:var(--city-accent);border:1px solid var(--city-accent);border-radius:var(--city-control-radius);box-shadow:var(--city-shadow);text-shadow:none;font-weight:750}#app :is(.start-button,.taxi-result-card button):hover,#app #welcome .start-button:hover{color:var(--city-on-accent);background:var(--city-accent-hover);border-color:var(--city-accent-hover);transform:none}#app #welcome .start-button.menu-secondary,#app .taxi-result-card button+button{color:var(--city-text);background:var(--city-panel);border-color:var(--city-line);box-shadow:var(--city-shadow)}#app #welcome .start-button.menu-secondary:hover,#app .taxi-result-card button+button:hover{background:var(--city-hover)}#app :is(.chooser-card,.taxi-fleet-card){color:var(--city-text);background:var(--city-raised);border-color:var(--city-line);border-radius:12px}#app .chooser-card:hover{background:var(--city-hover);border-color:var(--city-gold);transform:none}#app .chooser-card[aria-current=true]{border-color:var(--city-accent);box-shadow:inset 0 3px var(--city-accent)}#app .chooser-current{color:var(--city-accent)}#app .paint-custom{border-color:var(--city-line);border-radius:var(--city-control-radius)}#app .paint-custom[data-active=true],#app .paint-swatch[aria-checked=true]{border-color:var(--city-accent);box-shadow:0 0 0 2px var(--city-accent)}#app .car-meter-track{background:#afc9d138}#app .car-meter-track>span{background:var(--city-gold)}#app .taxi-fleet-card[data-selected=true]{border-color:var(--city-accent);box-shadow:inset 0 3px var(--city-accent)}#app .taxi-fleet-card button{border-radius:var(--city-control-radius)}#app .notebook-stamp{color:var(--city-text);border-color:var(--city-line)}#app .notebook-place[data-found=true] .notebook-stamp{color:var(--city-on-accent)}#app .notebook-check{color:var(--city-gold)}#app>#toast,#app #vr-error{background:var(--city-panel);color:var(--city-text);border:1px solid var(--city-line);border-radius:var(--city-control-radius);box-shadow:var(--city-shadow)}#app .taxi-task #toast{box-shadow:none;border:0}#app :is(.error,.loading){background:var(--city-panel);color:var(--city-text)}#app .error button{background:var(--city-accent);color:var(--city-on-accent);border-color:var(--city-accent);border-radius:var(--city-control-radius)}@media (width>=1600px) and (height>=1000px){:root{--ui-scale:1.15}#app :is(.topbar,.taxi-hud,.taxi-task,.taxi-dash,.city-guide,.controls,.pause-content,.taxi-result-card,.chooser),#app :is(#taxi-buttons,#toast,#fps-counter,#vr-error,#taxi-fleet-dialog){zoom:var(--ui-scale)}#app :is(.chooser,.taxi-result-card),#app #taxi-fleet-dialog{max-height:calc((100svh - var(--ui-top) - var(--ui-bottom)) / var(--ui-scale))}}@media (width>=2200px) and (height>=1300px){:root{--ui-scale:1.35}}@media (width>=3000px) and (height>=1800px){:root{--ui-scale:1.7}}@media (forced-colors:active){#app :is(.audio-channel input,.graphics-slider){appearance:auto;accent-color:auto}}
