*,*:before,*:after{box-sizing:border-box}:root{--font-ui-display: "VT323", system-ui, -apple-system, "Segoe UI", sans-serif;--font-ui-body: "DotGothic16", system-ui, -apple-system, "Segoe UI", sans-serif;--bg: #0a120e;--bg-elevated: rgba(12, 28, 18, .94);--ui-green: #5ee984;--ui-green-bright: #7ef0a4;--ui-green-dim: rgba(94, 233, 132, .55);--ui-green-glow: rgba(94, 233, 132, .25);--ui-green-border: rgba(94, 233, 132, .45);--text-on-green: #061208;--danger: #ff8f8f;--hud-warn: #d9a23a;--proto-frame-inset-top: max(10px, env(safe-area-inset-top));--proto-frame-inset-right: max(10px, env(safe-area-inset-right));--proto-frame-inset-bottom: max(10px, env(safe-area-inset-bottom));--proto-frame-inset-left: max(10px, env(safe-area-inset-left));--proto-frame-inner-pad: 8px;--mini-map-panel-width: 236px;--mini-map-mount-height: 156px;--hud-stack-bottom: max(5.75rem, calc(env(safe-area-inset-bottom) + 4.75rem) );--compass-px-per-deg: 4.25px;--compass-tape-cycles: 5;--compass-tape-edge-deg: 24}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ui-green);font-family:var(--font-ui-body);letter-spacing:.02em}@media(max-width:768px),(max-height:520px)and (max-width:960px){:root{--mini-map-panel-width: 118px;--mini-map-mount-height: 78px;--hud-stack-bottom: max(4.25rem, calc(env(safe-area-inset-bottom) + 3.25rem) );--compass-px-per-deg: 3.72px;--vertical-tape-offset-vw: 32vw;--vertical-tape-offset-max: 14rem;--compass-tape-height: 27px}.mini-map-panel__title{padding:.28rem .4rem .2rem;font-size:.52rem;letter-spacing:.1em}.mini-map-panel__footer{padding:.22rem .35rem .35rem;gap:.2rem}.mini-map-panel__source{font-size:.48rem}.mini-map-panel__motion{font-size:.44rem}.mini-map-panel__status{font-size:.48rem}.mini-map-panel .mini-map-user-marker{width:22px;height:22px}.mini-map-panel .mini-map-user-marker__svg{width:20px;height:20px}.mini-map-panel .leaflet-control-attribution{font-size:6px;max-width:100px}.speed-hud{gap:.09rem;transform:scale(.5);transform-origin:bottom right}.speed-hud__label{font-size:clamp(.52rem,2.2vw,.68rem);letter-spacing:.14em}.speed-hud__value{font-size:clamp(1.1rem,5.5vw,1.65rem)}.speed-hud__unit{font-size:clamp(.52rem,2.4vw,.72rem)}.altitude-tape-column{left:max(2px,calc(50% - min(var(--vertical-tape-offset-vw),var(--vertical-tape-offset-max))))}.relative-tape-row{left:calc(50% + min(var(--vertical-tape-offset-vw),var(--vertical-tape-offset-max)))}.compass-panel__window,.compass-panel__tape{height:var(--compass-tape-height)}.compass-panel__tape .compass-panel__cardinal{fill:var(--ui-green);font-size:10px;stroke-width:1.8px}.compass-panel__kicker{margin-bottom:.14rem;font-size:.42rem}.compass-panel{width:min(calc(100vw - var(--proto-frame-inset-left) - var(--proto-frame-inset-right) - 7.5rem),42rem);transform:translate(calc(-50% - 2.25rem))}}button,.splash__brand,.live-hud__title,.mini-map-panel__title,.policy summary{font-family:var(--font-ui-display);letter-spacing:.08em}.splash__ar-caution-title,.policy summary,.btn-primary{font-family:var(--font-ui-body);letter-spacing:.05em}.camera{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;background:#000;transform-origin:center center}.camera.active{filter:contrast(1.04) saturate(.9) brightness(.92)}.camera.camera--burst-warp{animation:camera-warp-burst var(--camera-warp-dur, .28s) cubic-bezier(.45,.05,.55,.95)}@keyframes camera-warp-burst{0%,to{transform:perspective(160vmin) rotateX(0) rotateY(0) scale(1);filter:contrast(1.04) saturate(.9) brightness(.92)}22%{transform:perspective(160vmin) rotateX(.42deg) rotateY(-.55deg) scale(1.005) skew(-.22deg,.12deg);filter:contrast(1.07) saturate(.95) brightness(.9)}48%{transform:perspective(160vmin) rotateX(-.35deg) rotateY(.48deg) scale(1.003) skew(.15deg,-.18deg);filter:contrast(1.1) saturate(.88) brightness(.88)}72%{transform:perspective(160vmin) rotateX(.25deg) rotateY(-.3deg) scale(1.006) skew(-.1deg,.08deg);filter:contrast(1.05) saturate(.92) brightness(.91)}}.camera:not(.active){visibility:hidden;pointer-events:none}.boot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,rgba(40,84,54,.22) 0%,transparent 52%),#040a07eb}.boot-overlay[hidden]{display:none}.boot-overlay__panel{width:min(88vw,480px);border:1px solid rgba(94,233,132,.35);border-radius:10px;padding:1rem .95rem 1.1rem;background:#07100bc7;box-shadow:0 0 0 1px #5ee9841f inset,0 0 32px #5ee98429}.boot-overlay__title{margin:0 0 .45rem;font-family:var(--font-ui-display);font-size:1rem;letter-spacing:.12em;color:var(--ui-green-bright)}.boot-overlay__status{margin:0 0 .75rem;color:var(--ui-green-dim);font-size:.82rem}.boot-overlay__steps{list-style:none;margin:0 0 .75rem;padding:.45rem .6rem;border:1px solid rgba(94,233,132,.2);border-radius:8px;background:#08120c8c;display:grid;gap:.32rem}.boot-overlay__steps li{display:flex;justify-content:space-between;align-items:center;column-gap:.8rem;color:var(--ui-green-dim);font-size:.73rem}.boot-overlay__steps li span:first-child{font-family:var(--font-ui-display);letter-spacing:.09em;color:var(--ui-green-bright)}.boot-overlay__steps li span:last-child{font-family:var(--font-ui-display);letter-spacing:.09em}.boot-overlay__bar{height:8px;border-radius:999px;overflow:hidden;border:1px solid rgba(94,233,132,.28);background:#07110be6}.boot-overlay__fill{display:block;height:100%;width:0%;background:linear-gradient(90deg,#42d674,#7ef0a4);box-shadow:0 0 10px #5ee98459;transition:width .24s ease}.bios-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:radial-gradient(ellipse 90% 55% at 50% 20%,#152238,#06090f 58%);color:#c8d4ce;font-family:ui-monospace,SF Mono,Menlo,Monaco,Cascadia Mono,monospace;font-size:clamp(.52rem,2.6vmin,.78rem);line-height:1.45;transition:opacity .26s ease}.bios-overlay[hidden]{display:none}.bios-overlay--out{opacity:0;pointer-events:none}.bios-overlay__crt{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0,transparent 2px,rgba(0,0,0,.14) 2px,rgba(0,0,0,.14) 3px);opacity:.45}.bios-overlay__wrap{position:relative;z-index:1;width:min(96vw,38rem);max-width:100%;box-sizing:border-box}.bios-overlay__title{margin:0 0 .65rem;font-size:clamp(.62rem,2.2vmin,.82rem);font-weight:600;letter-spacing:.06em;color:#e8f0ec;text-shadow:0 0 1px rgba(200,220,210,.5);max-width:100%;overflow-wrap:anywhere;word-break:break-word}.bios-overlay__post{margin:0;color:#aeb9b3;text-shadow:0 0 1px rgba(0,0,0,.85)}.bios-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .35rem;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;width:100%;max-width:100%;margin:0;font-variant-numeric:tabular-nums}.bios-row--blank{min-height:.35rem}.bios-row--full{white-space:pre-wrap;word-break:break-word}.bios-row__stat{flex:0 1 auto;min-width:min(6.5ch,22vw);font-weight:600;text-align:left}.bios-row__stat--ok{color:#7ef0a4}.bios-row__stat--warn{color:#d9a23a}.bios-overlay__cursor{color:#7ef0a4;animation:bios-cursor-blink .85s steps(1,end) infinite}.bios-overlay__hint{margin:1rem 0 0;font-size:clamp(.52rem,2vmin,.62rem);letter-spacing:.04em;color:#b4c3bc8c;max-width:100%;overflow-wrap:anywhere;word-break:break-word}@keyframes bios-cursor-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.bios-overlay__cursor{animation:none;opacity:1}.bios-overlay{transition:none}}.crt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden;transform-origin:center center}.crt-overlay[hidden]{display:none}.crt-overlay__vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse var(--crt-vignette-ellipse-w, 78%) var(--crt-vignette-ellipse-h, 68%) at var(--crt-vignette-center-x, 50%) var(--crt-vignette-center-y, 45%),transparent var(--crt-vignette-inner-stop, 48%),rgba(0,0,0,var(--crt-vignette-edge-opacity, .22)) 100%);box-shadow:inset 0 0 var(--crt-vignette-inset-blur, 100px) rgba(0,0,0,var(--crt-vignette-inset-shadow-opacity, .28))}.crt-overlay__scanlines{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--crt-scanlines-opacity, .1);background:repeating-linear-gradient(to bottom,rgba(0,0,0,var(--crt-scanline-dark, .38)) 0,rgba(0,0,0,var(--crt-scanline-dark, .38)) var(--crt-scanline-line-h, 1px),transparent var(--crt-scanline-line-h, 1px),transparent calc(var(--crt-scanline-line-h, 1px) + var(--crt-scanline-gap, 3px)));mix-blend-mode:multiply}.crt-overlay__noise{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:var(--crt-noise-opacity, .22);mix-blend-mode:overlay;image-rendering:pixelated}.crt-overlay__glitch{position:absolute;top:0;right:0;bottom:0;left:0}.crt-glitch-strip{position:absolute;left:-5%;width:110%;height:clamp(2px,.35vh,6px);pointer-events:none;opacity:0}.crt-glitch-strip--a{top:var(--crt-glitch-a-top, 22%);background:linear-gradient(90deg,transparent,rgba(255,255,255,var(--crt-glitch-a-white, .06)),rgba(0,255,180,var(--crt-glitch-a-green, .03)),transparent);animation:crt-glitch-a var(--crt-glitch-a-dur, 8.5s) steps(1,end) infinite}.crt-glitch-strip--b{top:var(--crt-glitch-b-top, 48%);height:clamp(3px,.5vh,8px);background:linear-gradient(90deg,rgba(255,80,80,var(--crt-glitch-b-red, .04)),rgba(255,255,255,var(--crt-glitch-b-white, .05)),transparent 70%);animation:crt-glitch-b var(--crt-glitch-b-dur, 11s) steps(1,end) infinite}.crt-glitch-strip--c{top:var(--crt-glitch-c-top, 71%);background:linear-gradient(90deg,transparent 20%,rgba(80,120,255,var(--crt-glitch-c-blue, .035)),rgba(255,255,255,var(--crt-glitch-c-white, .045)),transparent 85%);animation:crt-glitch-c var(--crt-glitch-c-dur, 9.8s) steps(1,end) infinite}.crt-overlay__flicker{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,var(--crt-flicker-overlay, .015));animation:crt-flicker var(--crt-flicker-duration, .35s) steps(2,end) infinite;opacity:1;mix-blend-mode:overlay}@keyframes crt-flicker{0%{opacity:var(--crt-flicker-k0, .94)}50%{opacity:var(--crt-flicker-k50, 1)}to{opacity:var(--crt-flicker-k100, .9)}}@keyframes crt-glitch-a{0%,94%,to{opacity:0;transform:translate(0)}95%{opacity:var(--crt-glitch-a-k95, .45);transform:translate(var(--crt-glitch-a-tx95, -2%))}96%{opacity:var(--crt-glitch-a-k96, .28);transform:translate(var(--crt-glitch-a-tx96, 1%))}97%{opacity:0;transform:translate(0)}}@keyframes crt-glitch-b{0%,96%,to{opacity:0;transform:translate(0) skew(0)}97%{opacity:var(--crt-glitch-b-k97, .4);transform:translate(var(--crt-glitch-b-tx97, 2%)) skew(var(--crt-glitch-b-sk97, -.35deg))}98%{opacity:var(--crt-glitch-b-k98, .22);transform:translate(var(--crt-glitch-b-tx98, -1%)) skew(var(--crt-glitch-b-sk98, .25deg))}99%{opacity:0;transform:translate(0)}}@keyframes crt-glitch-c{0%,95%,to{opacity:0;transform:translate(0)}96%{opacity:var(--crt-glitch-c-k96, .42);transform:translate(var(--crt-glitch-c-tx96, -3%))}97%{opacity:var(--crt-glitch-c-k97, .18);transform:translate(var(--crt-glitch-c-tx97, 1.5%))}98%{opacity:0}}@media(prefers-reduced-motion:reduce){.crt-glitch-strip--a,.crt-glitch-strip--b,.crt-glitch-strip--c{animation:none;opacity:0}.crt-overlay__flicker{animation:none;opacity:var(--crt-flicker-reduced-opacity, .96)}.crt-overlay--shake-burst{animation:none!important}.crt-overlay--noise-surge .crt-overlay__noise{opacity:var(--crt-noise-opacity, .22)!important}.crt-overlay__burst-stack,.crt-burst-chroma,.crt-burst-static,.crt-burst-tear{animation:none!important;opacity:0!important}.camera.camera--burst-warp{animation:none!important;transform:none!important;filter:contrast(1.04) saturate(.9) brightness(.92)!important}}.crt-overlay--noise-surge .crt-overlay__noise{opacity:min(.5,calc(var(--crt-noise-opacity, .22) + .18))}.crt-overlay--shake-burst{animation:crt-live-shake-burst var(--crt-live-shake-dur, .28s) steps(3,end)}@keyframes crt-live-shake-burst{0%{transform:translate(0) rotate(0)}22%{transform:translate(-5px,4px) rotate(-.14deg)}45%{transform:translate(6px,-3px) rotate(.12deg)}68%{transform:translate(-4px,-5px) rotate(-.1deg)}88%{transform:translate(3px,3px) rotate(.08deg)}to{transform:translate(0) rotate(0)}}.crt-overlay__burst-stack{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none;opacity:0}.crt-overlay--glitch-burst .crt-overlay__burst-stack{opacity:.58;animation:crt-burst-stack-clip .28s steps(10,end)}.crt-burst-chroma{position:absolute;top:0;right:0;bottom:0;left:0;mix-blend-mode:overlay;opacity:.34}.crt-burst-chroma--l{background:linear-gradient(102deg,rgba(78,58,62,.11) 0%,rgba(48,44,46,.05) 44%,transparent 58%);animation:crt-burst-chroma-wiggle .28s steps(6,end)}.crt-burst-chroma--r{background:linear-gradient(258deg,rgba(52,62,70,.1) 0%,rgba(44,48,54,.045) 46%,transparent 62%);animation:crt-burst-chroma-wiggle .28s steps(6,end) .03s both}@keyframes crt-burst-chroma-wiggle{0%{transform:translate(-2px);filter:hue-rotate(0deg) saturate(.85)}28%{transform:translate(3px);filter:hue-rotate(5deg) saturate(.9)}52%{transform:translate(-4px);filter:hue-rotate(-4deg) saturate(.88)}76%{transform:translate(2px);filter:hue-rotate(3deg) saturate(.92)}to{transform:translate(-2px);filter:hue-rotate(0deg) saturate(.85)}}.crt-burst-static{position:absolute;top:0;right:0;bottom:0;left:0;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.2) 1px,transparent 1px,transparent 2px),repeating-linear-gradient(88deg,rgba(255,255,255,.028),rgba(255,255,255,.028) 1px,transparent 1px,transparent 3px),repeating-linear-gradient(0deg,transparent,transparent 5px,rgba(0,0,0,.045) 5px,rgba(0,0,0,.045) 6px);animation:crt-burst-static-flicker .28s steps(12,end)}@keyframes crt-burst-static-flicker{0%,to{opacity:.07;transform:translate(0)}14%{opacity:.14;transform:translate(-1px,1px)}31%{opacity:.22;transform:translate(2px,-1px)}48%{opacity:.11;transform:translate(-2px,-2px)}63%{opacity:.18;transform:translate(1px,2px)}79%{opacity:.26;transform:translate(-1px,-1px)}93%{opacity:.1;transform:translate(1px)}}.crt-burst-tear{position:absolute;left:-12%;width:124%;height:clamp(3px,.55vh,10px);pointer-events:none;mix-blend-mode:overlay;opacity:.85}.crt-burst-tear--a{top:21%;background:linear-gradient(90deg,transparent 5%,rgba(195,196,200,.09) 35%,rgba(168,166,170,.06) 52%,rgba(195,196,200,.07) 68%,transparent 94%);animation:crt-burst-tear-slide .28s steps(7,end)}.crt-burst-tear--b{top:52%;height:clamp(4px,.65vh,12px);background:linear-gradient(91deg,transparent 18%,rgba(175,176,182,.085) 48%,transparent 82%);animation:crt-burst-tear-slide .28s steps(7,end) .04s both}.crt-burst-tear--c{top:74%;height:clamp(2px,.45vh,8px);background:linear-gradient(89deg,transparent 22%,rgba(185,183,188,.075) 55%,rgba(160,158,164,.055) 72%,transparent 91%);animation:crt-burst-tear-slide .28s steps(7,end) .02s both}@keyframes crt-burst-tear-slide{0%{opacity:0;transform:translate(-6%) skew(-.9deg)}22%{opacity:.55;transform:translate(3%) skew(.7deg)}44%{opacity:.35;transform:translate(-5%) skew(-1.1deg)}66%{opacity:.42;transform:translate(4%) skew(.5deg)}88%{opacity:.2;transform:translate(-3%) skew(-.6deg)}to{opacity:0;transform:translate(2%)}}@keyframes crt-burst-stack-clip{0%{clip-path:inset(0 0 0 0);transform:translate(0)}9%{clip-path:inset(2% 0 93% 0);transform:translate(-1px,1px)}18%{clip-path:inset(11% 0 84% 0);transform:translate(1px,-1px)}27%{clip-path:inset(26% 0 68% 0);transform:translate(-2px)}36%{clip-path:inset(41% 0 52% 0);transform:translate(2px,1px)}45%{clip-path:inset(52% 0 41% 0);transform:translate(-1px,-2px)}54%{clip-path:inset(63% 0 29% 0);transform:translate(1px,2px)}63%{clip-path:inset(71% 0 21% 0);transform:translate(-2px,-1px)}72%{clip-path:inset(79% 0 14% 0);transform:translate(2px)}81%{clip-path:inset(88% 0 6% 0);transform:translate(-1px,1px)}90%{clip-path:inset(96% 0 2% 0);transform:translate(1px,-1px)}to{clip-path:inset(0 0 0 0);transform:translate(0)}}.reticle{position:fixed;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);width:min(22vmin,110px);height:min(22vmin,110px);color:var(--ui-green);pointer-events:none;opacity:.88;filter:drop-shadow(0 0 5px var(--ui-green-glow))}.reticle[hidden]{display:none}.reticle__svg{display:block;width:100%;height:100%}.altitude-tape-column{position:fixed;z-index:4;top:50%;left:max(2px,calc(50% - min(48vw,22.5rem)));transform:translate(-100%,-50%);pointer-events:none}.altitude-tape-column[hidden]{display:none}.relative-tape-row{position:fixed;z-index:4;left:calc(50% + min(48vw,22.5rem));top:50%;transform:translateY(-50%);pointer-events:none}.relative-tape-row[hidden]{display:none}.relative-heading-tape{display:flex;flex-direction:column;align-items:center;gap:.2rem;width:auto;min-width:28px}.relative-heading-tape__label{margin:0;padding:0;font-family:var(--font-ui-body);font-size:.52rem;font-weight:600;letter-spacing:.06em;line-height:1.1;color:var(--hud-warn);text-shadow:0 0 6px rgba(217,162,58,.35);white-space:nowrap}.relative-heading-tape__sublabel{margin:-.05rem 0 0;padding:0;font-family:var(--font-ui-body);font-size:.44rem;font-weight:500;letter-spacing:.04em;line-height:1.15;color:#d9a23ad1;opacity:.92;white-space:nowrap}.relative-heading-tape[hidden]{display:none}.relative-heading-tape__window{position:relative;width:28px;height:min(57vmin,288px);overflow:hidden;background:transparent}.relative-heading-tape__deg{margin:0;padding:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.58rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1.25;white-space:pre-line;text-align:center;color:#f0c96a;text-shadow:0 0 6px rgba(217,162,58,.45)}.relative-heading-tape__pointer{position:absolute;left:-2px;top:50%;z-index:2;width:calc(100% + 4px);height:3px;margin-top:-1.5px;background:linear-gradient(90deg,rgba(240,201,106,.95) 0%,var(--hud-warn) 45%,rgba(217,162,58,.5) 100%);box-shadow:0 0 8px #d9a23a8c;pointer-events:none}.relative-heading-tape__svg{display:block;width:100%;height:720px;color:#d9a23ae0;transform:translateY(0);transition:transform .07s linear;will-change:transform}.altitude-tape{display:flex;flex-direction:column;align-items:center;gap:.3rem;width:auto;min-width:28px}.altitude-tape__label{margin:0;padding:0;font-family:var(--font-ui-body);font-size:.52rem;font-weight:600;letter-spacing:.06em;line-height:1.1;color:var(--ui-green-bright);text-shadow:0 0 6px var(--ui-green-glow);white-space:nowrap}.altitude-tape__window{position:relative;width:28px;height:min(57vmin,288px);overflow:hidden;background:transparent}.altitude-tape__pointer{position:absolute;left:-2px;top:50%;z-index:2;width:calc(100% + 4px);height:3px;margin-top:-1.5px;background:linear-gradient(90deg,var(--hud-warn) 0%,rgba(217,162,58,.55) 40%,rgba(94,233,132,.65) 100%);box-shadow:0 0 8px #d9a23a73;pointer-events:none}.altitude-tape__svg{display:block;width:100%;height:720px;color:var(--ui-green);transform:translateY(0);transition:transform .1s linear;will-change:transform}.altitude-tape__readout{margin:0;padding:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.62rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1;white-space:nowrap;color:var(--ui-green-bright);text-shadow:0 0 6px var(--ui-green-glow)}.face-privacy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.camera.camera--privacy-source{opacity:0}.face-privacy-overlay.camera--burst-warp{animation:camera-warp-burst var(--camera-warp-dur, .28s) cubic-bezier(.45,.05,.55,.95)}@media(prefers-reduced-motion:reduce){.face-privacy-overlay.camera--burst-warp{animation:none!important;transform:none!important;filter:contrast(1.04) saturate(.9) brightness(.92)!important}}.face-privacy-overlay[hidden]{display:none}.bbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;pointer-events:none}.bbox-overlay[hidden]{display:none}.live-hud{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.live-hud[hidden]{display:none}.live-hud__frame{position:absolute;inset:var(--proto-frame-inset-top) var(--proto-frame-inset-right) var(--proto-frame-inset-bottom) var(--proto-frame-inset-left);border:1px solid var(--ui-green-border);border-radius:6px;box-shadow:0 0 0 1px var(--ui-green-glow) inset,0 0 24px var(--ui-green-glow)}.live-hud__title{position:absolute;top:max(1.1rem,calc(env(safe-area-inset-top) + .5rem));left:max(1.1rem,calc(env(safe-area-inset-left) + .75rem));margin:0;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ui-green);text-shadow:0 0 12px var(--ui-green-glow)}.target-feedback{position:absolute;top:max(1.1rem,calc(env(safe-area-inset-top) + .5rem));right:max(1.1rem,calc(env(safe-area-inset-right) + .75rem));margin:0;padding:.15rem .5rem;border:1px solid rgba(94,233,132,.38);border-radius:4px;color:var(--ui-green-bright);font-family:var(--font-ui-display);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;background:#08130c80;text-shadow:0 0 10px var(--ui-green-glow);animation:target-feedback-pulse .9s ease-in-out infinite}.target-feedback[data-level=lock]{border-color:#ff524685;color:#ff9387;text-shadow:0 0 10px rgba(255,72,58,.55)}.target-feedback[hidden]{display:none}@keyframes target-feedback-pulse{0%,to{opacity:.72;transform:translateY(0)}50%{opacity:1;transform:translateY(-1px)}}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1rem;max-height:100dvh;max-height:100svh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:radial-gradient(ellipse 120% 80% at 50% 40%,rgba(30,58,38,.35) 0%,transparent 55%),var(--bg)}.splash.is-hidden{display:none}.splash__seq-layer{position:relative;z-index:2;width:min(92vw,36rem);max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem;margin-bottom:.15rem;padding-inline:.25rem}.splash__seq-scan{position:fixed;left:0;right:0;top:-4%;height:3px;z-index:1;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(94,233,132,.08) 35%,rgba(126,240,164,.42) 50%,rgba(94,233,132,.08) 65%,transparent 100%);box-shadow:0 0 20px #5ee9842e;opacity:0}.splash--seq-run .splash__seq-scan{animation:splash-seq-scanline 1.45s ease-in-out .02s 1 forwards}.splash__seq-banner{display:flex;flex-direction:column;align-items:center;gap:.2rem;margin:0;min-height:2.2rem;max-width:100%;font-family:var(--font-ui-display);text-align:center;opacity:0;transform:translateY(-6px)}.splash--seq-run .splash__seq-banner{animation:splash-seq-banner-in .45s ease-out .04s 1 forwards}.splash__seq-banner-label{font-size:clamp(.62rem,3.6vmin,.95rem);letter-spacing:clamp(.04em,.9vmin,.28em);text-transform:uppercase;color:var(--ui-green-bright);text-shadow:0 0 18px var(--ui-green-glow);max-width:100%;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.splash__seq-banner-sub{font-size:clamp(.55rem,2.8vmin,.65rem);letter-spacing:clamp(.06em,.6vmin,.2em);text-transform:uppercase;color:var(--ui-green-dim);opacity:.88;max-width:100%;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.splash__seq-progress{height:3px;width:100%;border-radius:999px;overflow:hidden;background:#07110be6;border:1px solid rgba(94,233,132,.2);box-shadow:0 0 0 1px #00000040 inset}.splash__seq-progress-fill{display:block;height:100%;width:0;background:linear-gradient(90deg,#35b860,#7ef0a4 55%,#5ee984);box-shadow:0 0 12px #5ee98466;transform-origin:left center}.splash--seq-run .splash__seq-progress-fill{animation:splash-seq-progress 1.35s cubic-bezier(.22,.82,.24,1) .05s 1 forwards}.splash__seq-body{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:100%}.splash--seq-pending .splash__seq-body>*{opacity:0;transform:translateY(14px);filter:blur(3px)}.splash--seq-run .splash__seq-body>*{animation:splash-seq-item-in .52s cubic-bezier(.22,1,.35,1) both}.splash--seq-run .splash__seq-body>*:nth-child(1){animation-delay:.1s}.splash--seq-run .splash__seq-body>*:nth-child(2){animation-delay:.2s}.splash--seq-run .splash__seq-body>*:nth-child(3){animation-delay:.3s}.splash--seq-run .splash__seq-body>*:nth-child(4){animation-delay:.4s}.splash--seq-run .splash__seq-body>*:nth-child(5){animation-delay:.5s}.splash--seq-run .splash__seq-body>*:nth-child(6){animation-delay:.6s}.splash--seq-run .splash__seq-body>*:nth-child(7){animation-delay:.68s}.splash--seq-run .splash__seq-body>*:nth-child(8){animation-delay:.75s}.splash--seq-done .splash__seq-body>*{opacity:1;transform:none;filter:none;animation:none}.splash--seq-done .splash__seq-layer{opacity:.4;transition:opacity .75s ease .35s;pointer-events:none}.splash--seq-done .splash__seq-scan,.splash--seq-done .splash__seq-banner{transform:none;animation:none}.splash--seq-done .splash__seq-progress-fill{width:100%;animation:none}@media(prefers-reduced-motion:reduce){.splash--seq-pending .splash__seq-body>*{opacity:1;transform:none;filter:none}.splash__seq-banner{opacity:1;transform:none}.splash__seq-scan{opacity:0;animation:none!important}.splash__seq-progress-fill{width:100%}.splash--seq-run .splash__seq-body>*,.splash--seq-run .splash__seq-banner{animation:none!important}}@keyframes splash-seq-scanline{0%{opacity:0;transform:translateY(0)}8%{opacity:.85}92%{opacity:.55}to{opacity:0;transform:translateY(108vh)}}@keyframes splash-seq-banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-seq-progress{0%{width:0}to{width:100%}}@keyframes splash-seq-item-in{0%{opacity:0;transform:translateY(16px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.splash__brand{margin:0 0 .25rem;font-size:clamp(.78rem,4vmin,1.05rem);font-weight:600;letter-spacing:clamp(.08em,1.1vmin,.18em);text-transform:uppercase;color:var(--ui-green);text-shadow:0 0 20px var(--ui-green-glow);max-width:100%;text-align:center;padding-inline:.35rem;box-sizing:border-box;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.splash__lead{margin:0;max-width:min(36rem,100%);padding-inline:.5rem;box-sizing:border-box;text-align:center;color:var(--ui-green-dim);font-size:clamp(.72rem,3.2vmin,.86rem);line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.splash__manifest{margin:0;max-width:min(38rem,100%);padding-inline:.5rem;box-sizing:border-box;text-align:center;color:#a0cdb2d1;font-size:clamp(.68rem,3vmin,.78rem);line-height:1.55;letter-spacing:.02em;overflow-wrap:anywhere;word-break:break-word}.splash__checks{margin:0;padding:.7rem .9rem .7rem 1.5rem;width:min(92vw,36rem);max-width:100%;box-sizing:border-box;border-radius:10px;border:1px solid var(--ui-green-border);background:#08140d8c;color:var(--ui-green-dim);font-size:clamp(.68rem,2.8vmin,.75rem);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.splash__ar-caution{width:min(92vw,36rem);max-width:100%;box-sizing:border-box;margin:0;padding:.65rem .85rem .65rem 1rem;border-radius:10px;border:1px solid rgba(217,162,58,.38);background:#1c160873;color:#e6d2aaeb;font-size:clamp(.66rem,2.8vmin,.72rem);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.splash__ar-caution-title{margin:0 0 .45rem;font-size:.78rem;letter-spacing:.06em;color:var(--hud-warn)}.splash__ar-caution-list{margin:0;padding-left:1.15rem}.splash__ar-caution-list li{margin:.25rem 0}.splash__ar-em{color:var(--hud-warn);font-weight:600}.policy{width:min(92vw,36rem);max-width:100%;box-sizing:border-box;border:1px solid rgba(94,233,132,.22);border-radius:10px;background:#08120c80;color:var(--ui-green-dim);font-size:clamp(.66rem,2.8vmin,.72rem);overflow-wrap:anywhere;word-break:break-word}.policy summary{cursor:pointer;padding:.55rem .75rem;color:var(--ui-green)}.policy__text{margin:0;padding:0 .75rem .35rem;line-height:1.45}.policy__links{display:flex;flex-wrap:wrap;gap:.6rem;margin:0;padding:0 .75rem .75rem}.policy__links a{color:var(--ui-green-bright);text-decoration:underline}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--ui-green-border);background:var(--bg-elevated);color:var(--ui-green);padding:.75rem 1.35rem;border-radius:999px;font-size:1rem;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease}.btn:active:not(:disabled){transform:scale(.98)}.btn:hover:not(:disabled){background:#122a1cf5;border-color:var(--ui-green);box-shadow:0 0 18px var(--ui-green-glow)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--ui-green-bright) 0%,var(--ui-green) 100%);border-color:transparent;color:var(--text-on-green);font-weight:600;box-shadow:0 0 20px var(--ui-green-glow)}.btn-primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 0 26px var(--ui-green-glow)}.status{margin:0;max-width:20rem;text-align:center;font-size:.85rem;color:var(--ui-green-dim);line-height:1.45}.status.error{color:var(--danger)}.stop-fab{position:fixed;z-index:5;left:50%;bottom:max(1.25rem,env(safe-area-inset-bottom));transform:translate(-50%);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--ui-green-border);background:#08120ca6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ui-green);padding:.55rem 1.25rem;border-radius:999px;font-size:.88rem;font-weight:500;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;box-shadow:0 0 16px #00000059}.stop-fab:hover{background:#0c2014d1;box-shadow:0 0 18px var(--ui-green-glow)}.stop-fab:focus-visible{outline:2px solid var(--ui-green);outline-offset:3px}.stop-fab[hidden]{display:none}.compass-panel{position:fixed;z-index:4;left:50%;bottom:var(--hud-stack-bottom);width:min(96vw,45rem);transform:translate(-50%);border:none;background:transparent;box-shadow:none;pointer-events:none}.compass-panel[hidden]{display:none}.compass-panel__inner{width:100%}.compass-panel__kicker{margin:0 0 .22rem;padding:0;font-family:var(--font-ui-body);font-size:.48rem;font-weight:600;letter-spacing:.08em;line-height:1.2;text-align:center;color:var(--ui-green-dim);opacity:.92;text-shadow:0 0 5px var(--ui-green-glow)}.compass-panel__window{position:relative;height:42px;overflow:hidden;padding-inline:calc(var(--compass-px-per-deg) * var(--compass-tape-edge-deg, 24));background:#0000001f}.compass-panel__pointer{position:absolute;left:50%;top:-2px;z-index:2;width:3px;height:calc(100% + 4px);margin-left:-1.5px;background:linear-gradient(180deg,var(--hud-warn) 0%,rgba(217,162,58,.55) 55%,rgba(94,233,132,.65) 100%);box-shadow:0 0 8px #d9a23a73;pointer-events:none}.compass-panel__tape{display:block;width:calc(360 * var(--compass-px-per-deg) * var(--compass-tape-cycles, 5));max-width:none;height:42px;color:var(--ui-green);transform:translate(0);transition:transform .07s linear;will-change:transform}.compass-panel__tape .compass-panel__cardinal{fill:var(--ui-green-bright);font-family:var(--font-ui-display, "VT323", ui-monospace, monospace);font-size:15px;font-weight:700;letter-spacing:.06em;paint-order:stroke fill;stroke:#040a08eb;stroke-width:2.75px;text-shadow:0 0 8px var(--ui-green-glow),0 0 1px rgba(0,0,0,.9)}.compass-panel__hint{margin:.35rem 0 0;padding:0;font-size:.52rem;line-height:1.25;letter-spacing:.06em;color:var(--danger);opacity:.9;text-align:center}.compass-panel__hint[hidden]{display:none}.mini-map-panel{position:fixed;z-index:4;left:calc(var(--proto-frame-inset-left) + 1px + var(--proto-frame-inner-pad));bottom:var(--hud-stack-bottom);width:var(--mini-map-panel-width);border-radius:10px;overflow:hidden;border:1px solid var(--ui-green-border);background:linear-gradient(165deg,#102a1cf0,#08160eeb,#06120cf2);box-shadow:0 0 0 1px #5ee9841f inset,0 4px 32px #00000073,0 0 28px var(--ui-green-glow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.mini-map-panel[hidden]{display:none}.mini-map-panel__title{margin:0;padding:.5rem .65rem .35rem;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ui-green);text-shadow:0 0 14px var(--ui-green-glow);background:linear-gradient(90deg,rgba(94,233,132,.12) 0%,transparent 85%);border-bottom:1px solid rgba(94,233,132,.18)}.mini-map-panel__mount{height:var(--mini-map-mount-height);width:100%;border-bottom:1px solid rgba(94,233,132,.15)}.mini-map-panel img.leaflet-tile{filter:brightness(.48) sepia(1) hue-rotate(68deg) saturate(2.05) contrast(1.2)}.mini-map-panel .leaflet-container{background:#060d09!important}.mini-map-panel .mini-map-user-marker-icon{background:transparent!important;border:none!important}.mini-map-panel .mini-map-user-marker{width:30px;height:30px;display:flex;align-items:center;justify-content:center;pointer-events:none}.mini-map-panel .mini-map-user-marker__rotate{transform-origin:50% 50%;will-change:transform;transition:transform .1s ease-out;filter:drop-shadow(0 0 5px rgba(94,233,132,.5))}.mini-map-panel .mini-map-user-marker__svg{display:block}.mini-map-panel__footer{display:flex;align-items:flex-start;justify-content:space-between;gap:.35rem;padding:.35rem .55rem .5rem;background:#060e0aa6}.mini-map-panel__source{flex-shrink:0;font-size:.6rem;font-weight:500;letter-spacing:.04em;color:var(--ui-green-dim)}.mini-map-panel__motion{margin:0;flex-shrink:0;max-width:38%;font-size:.56rem;font-weight:600;letter-spacing:.06em;line-height:1.25;color:var(--ui-green);text-shadow:0 0 10px var(--ui-green-glow);text-align:center}.mini-map-panel__motion[hidden]{display:none}.mini-map-panel__status{margin:0;flex:1;font-size:.58rem;line-height:1.25;color:var(--danger);text-align:right}.mini-map-panel .leaflet-control-attribution{font-size:8px;background:#08160ee0!important;color:var(--ui-green-dim)!important;border-top:1px solid rgba(94,233,132,.15)!important;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-map-panel .leaflet-control-attribution a{color:var(--ui-green)!important;opacity:.85}.speed-hud{position:fixed;z-index:4;right:calc(var(--proto-frame-inset-right) + 1px + var(--proto-frame-inner-pad));bottom:var(--hud-stack-bottom);margin:0;padding:0;line-height:1;pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;gap:.18rem}.speed-hud[hidden]{display:none}.speed-hud__label{font-family:VT323,ui-monospace,monospace;font-size:clamp(.72rem,2.5vw,.88rem);font-weight:400;letter-spacing:.28em;text-transform:uppercase;line-height:1;color:var(--ui-green);opacity:.72;text-shadow:0 0 8px var(--ui-green-glow)}.speed-hud__readout{display:flex;flex-direction:row;align-items:baseline;gap:.28em}.speed-hud__value{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:clamp(2.25rem,9vw,3.25rem);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1;color:var(--ui-green-bright);text-shadow:0 0 12px var(--ui-green-glow),0 0 1px rgba(0,0,0,.75)}.speed-hud__unit{font-family:VT323,ui-monospace,monospace;font-size:clamp(.95rem,3.4vw,1.15rem);font-weight:400;letter-spacing:.06em;line-height:1;color:var(--ui-green);opacity:.88;text-shadow:0 0 6px var(--ui-green-glow)}
