@import"https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600&display=swap";html,body{margin:0;height:100%;overflow:hidden;background:#1d2530;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}#app{position:fixed;inset:0}#app canvas{display:block}.lbl{font-family:Inter Tight,system-ui,sans-serif;font-weight:500;font-size:13px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.85),0 0 6px rgba(0,0,0,.45);white-space:nowrap;pointer-events:none;transform:translateY(-50%);transition:opacity .25s}.lbl.place{font-size:15px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.lbl.town{font-size:22px}#ui{position:fixed;z-index:20;top:16px;left:16px;padding:12px 14px;border-radius:10px;background:#141a22b8;backdrop-filter:blur(8px);color:#e8e6df;font:500 13px Inter Tight,system-ui,sans-serif;display:flex;flex-direction:column;gap:10px;min-width:220px}#ui .title{font-size:16px;font-weight:600}#ui .title span{color:#e3a85c}#ui .row{display:flex;gap:8px;align-items:center}#ui input[type=range]{flex:1;accent-color:#e3a85c}#ui button{flex:1;padding:6px 8px;border-radius:6px;cursor:pointer;border:1px solid #4a5563;background:transparent;color:#e8e6df;font:inherit}#ui button.on{background:#e3a85c;color:#1d2530;border-color:#e3a85c}#ui .help{font-size:11px;color:#b8b2a4;line-height:1.4;max-width:220px}#status{font-size:11px;color:#9aa3ad}#ui{min-width:300px}.search{position:relative}#search{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:7px;border:1px solid #4a5563;background:#ffffff0f;color:#f2efe8;font:inherit;outline:none}#search:focus{border-color:#e3a85c;background:#ffffff1a}#search::placeholder{color:#8d949c}#results{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:10;margin:0;padding:4px;list-style:none;border-radius:8px;background:#141a22f5;box-shadow:0 8px 24px #0006;max-height:60vh;overflow:auto}#results li{display:flex;gap:8px;align-items:center;padding:6px 8px;border-radius:6px;cursor:pointer}#results li.sel,#results li:hover{background:#e3a85c2e}#results .ic{width:18px;text-align:center;color:#e3a85c}#results .t{display:flex;flex-direction:column;min-width:0}#results b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#results small{color:#9aa3ad;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbl.pin{font-size:13px;font-weight:600;padding:4px 9px;border-radius:6px;text-shadow:none;background:#e3a85c;color:#1d2530;transform:translateY(-140%);box-shadow:0 2px 8px #0006}#ui button.drive{background:#2f6f4f;border-color:#3f8f66;color:#eaf6ee}#ui button.drive.on{background:#c2452d;border-color:#c2452d;color:#fff}#hud{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;font-family:Inter Tight,system-ui,sans-serif;color:#f2efe8;text-shadow:0 1px 3px rgba(0,0,0,.7)}#hud[hidden]{display:none}#hud .street{font-size:15px;font-weight:600;letter-spacing:.02em;min-height:18px}#hud .dial{display:flex;align-items:baseline;gap:6px;padding:8px 18px;border-radius:12px;background:#141a22b8;backdrop-filter:blur(8px)}#hud .speed{font-size:40px;font-weight:600;font-variant-numeric:tabular-nums;min-width:2.2ch;text-align:right}#hud small{font-size:12px;color:#b8b2a4}#hud .gear{margin-left:10px;font-size:18px;font-weight:600;color:#e3a85c}#hud .keys{font-size:11px;color:#c9c3b6;background:#141a2280;padding:3px 10px;border-radius:6px}#city{width:100%;padding:7px 10px;border-radius:7px;border:1px solid #4a5563;background:#ffffff0f;color:#f2efe8;font:inherit;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#e3a85c 50%),linear-gradient(135deg,#e3a85c 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat}#city:focus{border-color:#e3a85c}#city option{background:#1d2530;color:#f2efe8}#ui .head{display:flex;align-items:center;gap:8px}#ui .head .title{flex:1}#ui #menu{display:none;flex:0 0 auto;width:36px;height:32px;padding:0;font-size:18px;line-height:1}#ui .more{display:contents}#ui .help.touch{display:none}#ui,#pad{touch-action:manipulation}@media(hover:none)and (pointer:coarse){#ui .help.kb,#hud .keys{display:none}#ui .help.touch{display:block}}@media(max-width:600px){#ui{top:max(10px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));min-width:0;padding:10px 12px;gap:8px;max-height:calc(100dvh - 20px);overflow-y:auto;overscroll-behavior:contain}#ui #menu{display:block}#ui .more{display:none}#ui.open .more{display:contents}#ui .help{max-width:none}#ui button{padding:9px 8px}#search,#city{font-size:16px}#results{max-height:50dvh}#results li{padding:9px 8px}#ui.driving{display:none}}#pad{position:fixed;z-index:21;left:0;right:0;bottom:max(14px,env(safe-area-inset-bottom));padding:0 max(14px,env(safe-area-inset-left)) 0 max(14px,env(safe-area-inset-right));display:flex;align-items:flex-end;justify-content:space-between;gap:10px;pointer-events:none;user-select:none;-webkit-user-select:none}#pad[hidden]{display:none}#pad .cluster,#pad .side{display:flex;gap:10px;pointer-events:auto}#pad .side{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));flex-direction:column;gap:8px}#pad .pbtn{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;font:600 22px Inter Tight,system-ui,sans-serif;color:#f2efe8;background:#141a2299;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);touch-action:none;-webkit-touch-callout:none;cursor:pointer}#pad .pbtn.sm{width:44px;height:44px;font-size:16px}#pad .pbtn.gas{background:#2f6f4fbf;border-color:#3f8f66}#pad .pbtn.down{background:#e3a85c;color:#1d2530;border-color:#e3a85c}#hud.touch{bottom:calc(max(14px,env(safe-area-inset-bottom)) + 84px)}@media(max-width:600px){#hud .speed{font-size:30px}#hud .dial{padding:6px 14px}}
