.fpv-btn[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);background:color-mix(in oklab, var(--color-panel) 70%, transparent);font-family:var(--font-mono);color:var(--color-muted);border-radius:.5rem;padding:.3rem .8rem;font-size:.8rem;transition:border-color .15s,color .15s}.fpv-btn[data-astro-cid-srqdwmjl]:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, var(--color-edge));color:var(--color-ink)}.fpv-btn[data-astro-cid-srqdwmjl]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.fpv-btn[data-astro-cid-srqdwmjl][aria-pressed=true],.fpv-btn[data-astro-cid-srqdwmjl].is-on{border-color:color-mix(in oklab, var(--color-accent) 45%, transparent);background:color-mix(in oklab, var(--color-accent) 12%, transparent);color:var(--color-accent)}.fpv-kbd[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);color:var(--color-muted);border-radius:.3rem;padding:.05rem .35rem;display:inline-block}.fpv-btn-sm[data-astro-cid-srqdwmjl]{padding:.2rem .6rem;font-size:.72rem}.fpv-summary[data-astro-cid-srqdwmjl]{cursor:pointer;border:1px solid var(--color-edge);background:color-mix(in oklab, var(--color-panel) 70%, transparent);width:fit-content;font-family:var(--font-mono);color:var(--color-muted);border-radius:.5rem;align-items:center;padding:.3rem .8rem;font-size:.8rem;transition:border-color .15s,color .15s;display:inline-flex}.fpv-summary[data-astro-cid-srqdwmjl]::-webkit-details-marker{display:none}.fpv-summary[data-astro-cid-srqdwmjl]:before{content:"▸";color:var(--color-faint);margin-right:.45rem}.fpv-config[data-astro-cid-srqdwmjl][open] .fpv-summary[data-astro-cid-srqdwmjl]:before{content:"▾"}.fpv-summary[data-astro-cid-srqdwmjl]:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, var(--color-edge));color:var(--color-ink)}.fpv-summary[data-astro-cid-srqdwmjl]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.fpv-cfg-grid[data-astro-cid-srqdwmjl]{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:start;gap:.75rem 1.25rem;display:grid}.fpv-fieldset[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);border-radius:.5rem;min-width:0;padding:.5rem .75rem .65rem}.fpv-legend-label[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-faint);padding:0 .35rem;font-size:.68rem}.fpv-field[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);color:var(--color-muted);flex-direction:column;gap:.3rem;min-width:0;font-size:.78rem;display:flex}.fpv-check[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);color:var(--color-muted);cursor:pointer;align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex}.fpv-check[data-astro-cid-srqdwmjl] input[data-astro-cid-srqdwmjl]{accent-color:var(--color-accent)}.fpv-select[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);background:color-mix(in oklab, var(--color-panel) 70%, transparent);font-family:var(--font-mono);color:var(--color-ink);border-radius:.4rem;padding:.25rem .45rem;font-size:.78rem}.fpv-select[data-astro-cid-srqdwmjl]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.fpv-range[data-astro-cid-srqdwmjl]{width:100%;accent-color:var(--color-accent)}.fpv-map-grid[data-astro-cid-srqdwmjl]{gap:.4rem;display:grid}.fpv-map-row[data-astro-cid-srqdwmjl]{grid-template-columns:4.5rem 1fr auto;align-items:center;gap:.5rem;display:grid}.fpv-map-name[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);color:var(--color-muted);font-size:.78rem}.fpv-rate-grid[data-astro-cid-srqdwmjl]{grid-template-columns:3.5rem repeat(3,minmax(4rem,1fr));align-items:center;gap:.35rem .5rem;display:grid}.fpv-rate-col-label[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);color:var(--color-faint);text-align:center;font-size:.68rem}.fpv-num[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);background:color-mix(in oklab, var(--color-panel) 70%, transparent);width:100%;min-width:0;font-family:var(--font-mono);color:var(--color-ink);text-align:center;border-radius:.4rem;padding:.25rem .35rem;font-size:.78rem}.fpv-num[data-astro-cid-srqdwmjl]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}[data-astro-cid-srqdwmjl][data-fpv-mapping-group].is-disabled,[data-astro-cid-srqdwmjl][data-fpv-mode-field].is-disabled{opacity:.45}.fpv-select[data-astro-cid-srqdwmjl]:disabled,.fpv-btn[data-astro-cid-srqdwmjl]:disabled{cursor:not-allowed;opacity:.6}.fpv-btn[data-astro-cid-srqdwmjl][aria-pressed=true]{border-color:color-mix(in oklab, var(--color-accent) 45%, transparent);background:color-mix(in oklab, var(--color-accent) 12%, transparent);color:var(--color-accent)}.fpv-stick[data-astro-cid-srqdwmjl]{border:1px solid color-mix(in oklab, var(--color-accent) 20%, transparent);background:color-mix(in oklab, var(--color-bg) 14%, transparent);touch-action:none;border-radius:9999px;width:6.5rem;height:6.5rem;position:absolute;bottom:1rem}.fpv-knob[data-astro-cid-srqdwmjl]{background:color-mix(in oklab, var(--color-accent) 42%, transparent);border-radius:9999px;width:1.25rem;height:1.25rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 3px #00000038}.fpv-touch-controls[data-astro-cid-srqdwmjl]{display:none}.fpv-touch-ctrl[data-astro-cid-srqdwmjl]{border:1px solid color-mix(in oklab, var(--color-accent) 24%, transparent);background:color-mix(in oklab, var(--color-bg) 32%, transparent);min-width:3.5rem;color:color-mix(in oklab, var(--color-fg) 85%, transparent);letter-spacing:.04em;text-transform:uppercase;text-align:center;backdrop-filter:blur(2px);border-radius:.5rem;padding:.45rem .7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.fpv-touch-ctrl-arm[data-astro-cid-srqdwmjl].is-armed{border-color:color-mix(in oklab, var(--color-accent) 60%, transparent);background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-accent)}[data-astro-cid-srqdwmjl][data-fpv-stage]{background:#000;border-color:#0000;container-type:inline-size}[data-astro-cid-srqdwmjl][data-fpv-canvas]{background:#000}@font-face{font-family:VT323 OSD;src:url(/fpv/fonts/vt323-osd.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}[data-astro-cid-srqdwmjl][data-fpv-root]{--fpv-osd-ink:#e9f2ec;--fpv-osd-dim:#e9f2ec8c;--fpv-osd-warn:#ff4d42;--fpv-osd-accent:var(--color-accent);--hud-scale:1;--hud-opacity:1}.fpv-osd[data-astro-cid-srqdwmjl]{--osd:calc(2.3cqw * var(--hud-scale,1));opacity:var(--hud-opacity,1);z-index:1;pointer-events:none;font-family:"VT323 OSD", var(--font-mono);font-size:max(11px, var(--osd));color:var(--fpv-osd-ink);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;line-height:1;position:absolute;inset:0;overflow:hidden}.fpv-osd[data-astro-cid-srqdwmjl] [data-astro-cid-srqdwmjl]{text-shadow:0 1px 2px #000000b3}.fpv-osd[data-astro-cid-srqdwmjl]:before{content:"";pointer-events:none;background:repeating-linear-gradient(#0000000d 0,#0000 1.5px,#0000000d 3px);position:absolute;inset:0}.fpv-osd-source[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .75));color:var(--fpv-osd-dim);position:absolute;top:4.5cqw;left:6cqw}.fpv-osd-gate[data-astro-cid-srqdwmjl]{position:absolute;top:4.5cqw;left:50%;transform:translate(-50%)}.fpv-osd-accent[data-astro-cid-srqdwmjl]{color:var(--fpv-osd-accent)}.fpv-osd-timer[data-astro-cid-srqdwmjl]{position:absolute;top:4.5cqw;right:6cqw}.fpv-osd-best[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .75));color:var(--fpv-osd-dim);position:absolute;top:8.4cqw;right:6cqw}.fpv-osd-speed[data-astro-cid-srqdwmjl],.fpv-osd-alt[data-astro-cid-srqdwmjl]{position:absolute;top:50%;transform:translateY(-50%)}.fpv-osd-speed[data-astro-cid-srqdwmjl]{left:6cqw}.fpv-osd-alt[data-astro-cid-srqdwmjl]{right:6cqw}.fpv-osd-digits[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * 1.1))}.fpv-osd-unit[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .6));color:var(--fpv-osd-dim);margin-left:.3em}.fpv-crosshair[data-astro-cid-srqdwmjl]{width:0;height:0;position:absolute;top:50%;left:50%}.fpv-crosshair-tick[data-astro-cid-srqdwmjl]{background:var(--fpv-osd-ink);width:1.7cqw;height:2px;position:absolute;top:0;transform:translateY(-50%)}.fpv-crosshair-tick-l[data-astro-cid-srqdwmjl]{left:-3.4cqw}.fpv-crosshair-tick-r[data-astro-cid-srqdwmjl]{left:1.7cqw}.fpv-crosshair-dot[data-astro-cid-srqdwmjl]{border:1.5px solid var(--fpv-osd-ink);border-radius:50%;width:.9cqw;height:.9cqw;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.fpv-ahi[data-astro-cid-srqdwmjl]{width:34cqw;height:22.5cqw;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.fpv-ahi-line[data-astro-cid-srqdwmjl]{will-change:transform;width:26cqw;height:0;position:absolute;top:50%;left:50%}.fpv-ahi-center[data-astro-cid-srqdwmjl]{background:linear-gradient(to right, transparent, var(--fpv-osd-dim) 18%, transparent 42% 58%, var(--fpv-osd-dim) 82%, transparent);width:100%;height:2px;position:absolute;top:0;left:0;transform:translateY(-50%)}.fpv-ahi-rung[data-astro-cid-srqdwmjl]{background:var(--fpv-osd-dim);width:10cqw;height:1.5px;position:absolute;left:50%;transform:translate(-50%)}.fpv-ahi-rung-up[data-astro-cid-srqdwmjl]{top:-4cqw}.fpv-ahi-rung-dn[data-astro-cid-srqdwmjl]{top:4cqw}.fpv-osd-throttle[data-astro-cid-srqdwmjl]{align-items:flex-end;gap:.6cqw;display:flex;position:absolute;bottom:4.5cqw;left:6cqw}.fpv-osd-throttle-label[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .7));color:var(--fpv-osd-dim)}.fpv-osd-throttle-bar[data-astro-cid-srqdwmjl]{border:1px solid var(--fpv-osd-dim);width:1.6cqw;min-width:6px;height:12cqw;position:relative}.fpv-osd-throttle-fill[data-astro-cid-srqdwmjl]{background:var(--fpv-osd-accent);position:absolute;inset:auto 0 0}.fpv-osd-armed[data-astro-cid-srqdwmjl]{position:absolute;bottom:4.5cqw;left:50%;transform:translate(-50%)}.fpv-osd-armed[data-astro-cid-srqdwmjl].is-armed{color:var(--fpv-osd-accent)}.fpv-osd-flight-mode[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .75));color:var(--fpv-osd-dim);position:absolute;bottom:8.4cqw;left:50%;transform:translate(-50%)}.fpv-osd-seed[data-astro-cid-srqdwmjl]{font-size:max(11px, calc(var(--osd) * .6));color:var(--fpv-osd-dim);position:absolute;bottom:4.5cqw;right:6cqw}.fpv-lens-mask[data-astro-cid-srqdwmjl]{z-index:2;pointer-events:none;border-radius:3.5cqw;position:absolute;inset:1.2cqw 1.6cqw;box-shadow:0 0 .6cqw 200cqw #000,inset 0 0 .6cqw .5cqw #000,inset 0 0 4cqw .8cqw #000,inset 0 0 0 3px #000}[data-astro-cid-srqdwmjl][data-fpv-touch]{z-index:3}.fpv-rotate-hint[data-astro-cid-srqdwmjl]{z-index:5;display:none}.fpv-rotate-hint-text[data-astro-cid-srqdwmjl]{border:1px solid color-mix(in oklab, var(--color-accent) 40%, transparent);background:color-mix(in oklab, var(--color-bg) 70%, transparent);font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;color:var(--color-accent);text-align:center;backdrop-filter:blur(4px);border-radius:.5rem;align-items:center;padding:.35rem .75rem;font-size:.72rem;display:inline-flex}@media (orientation:portrait) and (pointer:coarse){.fpv-rotate-hint[data-astro-cid-srqdwmjl]{display:flex}}[data-astro-cid-srqdwmjl][data-fpv-best].is-new-best{color:var(--color-accent);text-shadow:0 0 8px color-mix(in oklab, var(--color-accent) 55%, transparent);transition:color .2s,text-shadow .2s}@media (prefers-reduced-motion:reduce){[data-astro-cid-srqdwmjl][data-fpv-best].is-new-best{text-shadow:none;transition:color .2s}}.fpv-seed-btn[data-astro-cid-srqdwmjl].is-copied{border-color:color-mix(in oklab, var(--color-accent) 45%, transparent);background:color-mix(in oklab, var(--color-accent) 12%, transparent);color:var(--color-accent)}.fpv-seed-btn[data-astro-cid-srqdwmjl].is-copied:after{content:" copied"}.fpv-onboarding[data-astro-cid-srqdwmjl]{background:color-mix(in oklab, var(--color-bg) 55%, transparent)}.fpv-onboarding-card[data-astro-cid-srqdwmjl]{border:1px solid var(--color-edge);background:color-mix(in oklab, var(--color-panel) 92%, transparent);text-align:center;border-radius:.75rem;width:100%;max-width:22rem;padding:1rem 1.1rem 1.1rem;animation:.22s both fpv-onboard-in;box-shadow:0 8px 30px #00000059}@keyframes fpv-onboard-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.fpv-onboarding-card[data-astro-cid-srqdwmjl]{animation:none}}.fpv-onboarding-close[data-astro-cid-srqdwmjl]{float:right;border:1px solid var(--color-edge);width:1.5rem;height:1.5rem;color:var(--color-faint);background:0 0;border-radius:9999px;justify-content:center;align-items:center;margin:-.2rem -.3rem .5rem .5rem;font-size:.95rem;line-height:1;display:flex}.fpv-onboarding-close[data-astro-cid-srqdwmjl]:hover{color:var(--color-ink);border-color:color-mix(in oklab, var(--color-accent) 40%, var(--color-edge))}.fpv-onboarding-close[data-astro-cid-srqdwmjl]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.fpv-onboarding-choice[data-astro-cid-srqdwmjl]{text-align:center;white-space:normal;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem .6rem;display:flex}.fpv-onboarding-choice-hint[data-astro-cid-srqdwmjl]{font-family:var(--font-mono);color:var(--color-faint);font-size:.68rem;font-weight:400}html.fpv-theater header,html.fpv-theater footer,html.fpv-theater [data-fpv-intro]{display:none}html.fpv-theater [data-fpv-main]{max-width:none;padding:1rem 1rem 2rem}html.fpv-theater [data-fpv-stage]{width:min(96vw,177.778vh - 16rem);margin-inline:auto}:-webkit-any([data-fpv-fs-wrap]:fullscreen,[data-fpv-fs-wrap]:-webkit-full-screen){background:#000;place-items:center;width:100%;height:100%;display:grid}:is([data-fpv-fs-wrap]:fullscreen,[data-fpv-fs-wrap]:fullscreen){background:#000;place-items:center;width:100%;height:100%;display:grid}:-webkit-any([data-fpv-fs-wrap]:fullscreen [data-fpv-stage],[data-fpv-fs-wrap]:-webkit-full-screen [data-fpv-stage]){width:min(100vw,177.778vh)!important;max-width:none!important;height:min(100vh,56.25vw)!important;margin:0!important}:is([data-fpv-fs-wrap]:fullscreen [data-fpv-stage],[data-fpv-fs-wrap]:fullscreen [data-fpv-stage]){width:min(100vw,177.778vh)!important;max-width:none!important;height:min(100vh,56.25vw)!important;margin:0!important}@media (orientation:landscape) and (pointer:coarse){[data-fpv-fs-wrap]{z-index:70;background:#000;place-items:center;width:100vw;height:100dvh;display:grid;position:fixed;inset:0}[data-fpv-fs-wrap] [data-fpv-stage]{width:100vw!important;max-width:none!important;height:100dvh!important;margin:0!important}[data-fpv-fs-wrap] [data-fpv-stage] [data-fpv-canvas]{aspect-ratio:auto!important;height:100%!important}[data-fpv-fs-wrap] [data-fpv-touch-controls]{z-index:4;top:calc(3.25rem + env(safe-area-inset-top));left:calc(.75rem + env(safe-area-inset-left));pointer-events:auto;flex-direction:column;gap:.5rem;display:flex;position:absolute}[data-fpv-fs-wrap] [data-fpv-touch] .fpv-stick{width:clamp(6.5rem,20vw,11rem);height:clamp(6.5rem,20vw,11rem)}[data-fpv-fs-wrap] [data-fpv-touch] .fpv-stick[data-fpv-stick=left]{left:calc(1rem + env(safe-area-inset-left));bottom:calc(1rem + env(safe-area-inset-bottom))}[data-fpv-fs-wrap] [data-fpv-touch] .fpv-stick[data-fpv-stick=right]{right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:no-preference){[data-fpv-stage]{transition:width .26s,height .26s}}@media (prefers-reduced-motion:reduce){[data-fpv-stage]{transition:none}}
