html,body{background:#bfe3ff;height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.labels{pointer-events:none;inset:0;overflow:hidden;position:fixed!important}.label{pointer-events:auto;cursor:pointer;white-space:nowrap;color:#1f2a33;opacity:0;pointer-events:none;background:#ffffffe6;border-radius:4px;padding:2px 6px;font-size:12px;line-height:1.2;transition:opacity .15s;box-shadow:0 1px 3px #00000040}.label.on{opacity:1;pointer-events:auto}@starting-style{.label.on{opacity:0}}.label-landmark{font-size:13px;font-weight:600}.label-stop{background:#fffc;padding:1px 4px;font-size:10px}#hud{pointer-events:none;position:fixed;inset:0}.hud-panel{pointer-events:auto;color:#1f2a33;background:#ffffffc7;border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;display:flex;position:absolute;top:10px;left:12px;box-shadow:0 1px 4px #00000026}.hud-head,.hud-time{align-items:center;gap:8px;display:flex}.hud-title{margin-right:auto;font-size:18px;font-weight:600}.hud-time input{width:170px;margin:0}.hud-time output{font-variant-numeric:tabular-nums;min-width:3em;font-size:14px}.hud-btn{font:inherit;color:#1f2a33;cursor:pointer;background:#fff;border:1px solid #1f2a334d;border-radius:10px;padding:2px 8px;font-size:12px}.hud-icon{padding:2px 6px;font-size:15px;line-height:1}.hud-btn:disabled{opacity:.45;cursor:default}.hud-attribution{color:#1f2a33;pointer-events:auto;background:#fff9;border-radius:4px;max-width:calc(100% - 16px);padding:2px 6px;font-size:11px;position:absolute;bottom:6px;right:8px}.hud-live{color:#14532d;background:#ffffffbf;border-radius:10px;padding:3px 8px;font-size:12px;position:absolute;top:16px;right:16px}.hud-live.stale{color:#7f1d1d}.hud-info{color:#1f2a33;background:#ffffffd9;border-radius:6px;padding:4px 10px;font-size:13px;position:absolute;bottom:28px;left:16px}.progress{pointer-events:none;height:3px;transition:opacity .4s .3s;position:fixed;top:0;left:0;right:0}.progress>div{height:100%;width:calc(var(--p,0) * 100%);background:#2563eb;transition:width .2s}.progress.done{opacity:0}.toast{color:#fff;white-space:nowrap;background:#1f2a33e0;border-radius:8px;padding:6px 14px;font-size:13px;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.about{z-index:10;background:#0f171e59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.about-card{box-sizing:border-box;color:#1f2a33;background:#fff;border-radius:12px;width:min(520px,100% - 32px);max-height:calc(100% - 32px);padding:18px 22px;font-size:14px;line-height:1.45;position:relative;overflow-y:auto;box-shadow:0 8px 30px #00000040}.about-card:focus{outline:none}.about-card h2{margin:0 0 8px;font-size:20px}.about-card h3{text-transform:uppercase;letter-spacing:.04em;color:#52606d;margin:14px 0 6px;font-size:14px}.about-card p{margin:0}.about-card a{color:#1d4ed8}.about-close{color:#1f2a33;cursor:pointer;background:0 0;border:0;border-radius:18px;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:8px;right:8px}.about-close:hover{background:#eef2f6}.about-list{margin:0;padding-left:18px}.legend-group{align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.legend-title{min-width:70px;font-weight:600}.legend-lines{flex-wrap:wrap;gap:4px 12px;display:flex}.legend-line{font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:inline-flex}.legend-line i{border-radius:50%;width:10px;height:10px}.about-note{color:#52606d;font-size:12px;margin-top:6px!important}@media (width<=560px){.hud-btn{min-width:36px;min-height:36px}.about{align-items:stretch}.about-card{border-radius:0;width:100%;max-height:none;padding:16px 16px 24px}.hud-panel{left:8px;right:8px}.hud-time input{flex:1;width:auto}.hud-live{inset:auto auto 48px 8px}.hud-info{bottom:76px;left:8px}}.debug-stats{position:fixed!important;top:auto!important;bottom:30px!important;left:8px!important}.debug-info{color:#fff;pointer-events:none;background:#0009;border-radius:4px;padding:2px 6px;font:11px/1.3 ui-monospace,monospace;position:fixed;bottom:84px;left:8px}[hidden]{display:none!important}.lil-gui.autoPlace{top:48px!important}.label-vehicle{pointer-events:none;white-space:nowrap;box-sizing:border-box;color:#fff;text-shadow:0 0 2px #00000073;border:1px solid #ffffffb3;border-radius:8px;height:16px;padding:1px 5px;font-size:11px;font-weight:600;line-height:14px;box-shadow:0 1px 2px #00000059}
