html,body,#root{color:#f6f1e8;background:#000;width:100%;height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}*{box-sizing:border-box}button,a{font:inherit}button{color:inherit}canvas{display:block;width:100%!important;height:100%!important}.space-app{cursor:none;isolation:isolate;background:#000;width:100%;height:100%;position:relative;overflow:hidden}.scene-mount{touch-action:none;position:absolute;inset:0}.scene-mount:active,.space-app button,.space-app a{cursor:none}.darkness,.vignette{pointer-events:none;position:absolute;inset:0}.darkness{z-index:30;background:#000;animation:5.4s forwards darkness-ignition}.boot-title{z-index:31;color:#f7f2d6eb;letter-spacing:0;text-transform:lowercase;white-space:nowrap;pointer-events:none;border-right:1px solid #f7f2d6e0;width:18ch;font-family:Courier New,ui-monospace,monospace;font-size:clamp(1.05rem,2.2vw,1.8rem);animation:1.9s steps(18,end) .68s both boot-type,1.1s steps(18,end) 3.38s forwards boot-delete,.72s step-end 7 boot-caret,.36s 4.72s forwards boot-fade;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.vignette{z-index:2;background:radial-gradient(circle,#0000 0 42%,#0000007a 75%,#000000e6 100%),linear-gradient(#00000061,#0000 28%,#00000080)}.hud-brand,.sections-button,.scope-button,.controls-hud,.signal-readout,.reticle,.scope-overlay{transition:opacity .42s,transform .42s}.hud-brand{z-index:6;color:#f7f2d6d6;pointer-events:none;align-items:baseline;gap:12px;font-size:.98rem;display:flex;position:absolute;top:28px;left:32px}.hud-brand strong{color:#ffb862c7;font-weight:500}.sections-button,.scope-button{z-index:8;color:#e7fcffd1;cursor:pointer;background:#00000070;border:1px solid #7bdff257;border-radius:6px;min-width:104px;height:48px;font-size:1rem;position:absolute;top:24px;box-shadow:0 0 24px #7bdff214}.sections-button{color:#ffe7c0d1;border-color:#ffb8624d;right:150px}.scope-button{right:32px}.sections-button:hover,.sections-button[aria-expanded=true]{color:#fff8ec;background:#271808b8;border-color:#ffb862bd}.scope-button:hover,.scope-button[aria-pressed=true]{color:#f6feff;background:#0c2124b8;border-color:#7bdff2d1}.controls-hud{z-index:7;opacity:0;pointer-events:none;flex-wrap:wrap;gap:16px;max-width:min(720px,100vw - 64px);display:flex;position:absolute;bottom:30px;left:32px;transform:translateY(8px)}.controls-hud span{color:#f6f1e89e;text-shadow:0 0 12px #000c;white-space:nowrap;font-family:Courier New,ui-monospace,monospace;font-size:.86rem;line-height:1.35}.reticle{z-index:1000;opacity:1;pointer-events:none;will-change:transform;width:0;height:0;transition:opacity .42s;position:absolute;top:0;left:0;transform:translate(50vw,50vh)translate(-4px,-4px)}.reticle-dot{background:#fffffff5;border-radius:50%;width:8px;height:8px;display:block;box-shadow:0 0 10px #ffffff52}.reticle-prompt{color:#fffffff0;opacity:0;text-shadow:0 0 12px #000000d9;text-transform:lowercase;white-space:nowrap;font-family:Courier New,ui-monospace,monospace;font-size:.82rem;transition:opacity .18s,transform .18s;position:absolute;top:50%;left:18px;transform:translateY(-50%)translate(-4px)}.reticle.is-reading-sign .reticle-prompt{opacity:1;transform:translateY(-50%)translate(0)}.scope-overlay{z-index:5;pointer-events:none;opacity:0;position:absolute;inset:0}.is-scoping .scope-overlay{opacity:1}.scope-ring{aspect-ratio:1;background:radial-gradient(circle,#0000 0 56%,#7bdff214 57%,#0000 59%),radial-gradient(circle,#0000 0 70%,#00000070 100%);border:1px solid #7bdff29e;border-radius:50%;width:min(520px,78vmin);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 36px #7bdff229,0 0 70px #7bdff21f}.scope-crosshair{width:88px;height:88px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.scope-lock-circle{aspect-ratio:1;width:min(420px,62vmin);transform:translate(-50%, -50%) scale(var(--scope-lock-scale,1));opacity:var(--scope-lock-opacity,.24);border:1px solid #f2f59fcc;border-radius:50%;transition:opacity .12s linear,transform .12s linear,border-color .12s linear;position:absolute;top:50%;left:50%;box-shadow:0 0 20px #f2f59f38,inset 0 0 24px #f2f59f14}.scope-crosshair:before,.scope-crosshair:after{content:"";background:#7bdff2b8;position:absolute}.scope-crosshair:before{width:88px;height:1px;top:43px;left:0}.scope-crosshair:after{width:1px;height:88px;top:0;left:43px}.signal-readout{z-index:7;color:#f6f1e894;pointer-events:none;white-space:nowrap;background:#00000075;border:1px solid #f6f1e81f;border-radius:6px;align-items:center;gap:14px;padding:11px 15px;font-family:Courier New,ui-monospace,monospace;font-size:.94rem;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.signal-readout strong{color:var(--signal-color);font-weight:500}.space-app:not(.is-lit) .hud-brand,.space-app:not(.is-lit) .sections-button,.space-app:not(.is-lit) .scope-button,.space-app:not(.is-lit) .controls-hud,.space-app:not(.is-lit) .signal-readout{opacity:0;transform:translateY(8px)}.space-app:not(.is-lit) .reticle{opacity:0}.space-app:not(.is-lit) .signal-readout{transform:translate(-50%)translateY(8px)}.space-app.is-lit .controls-hud.is-visible{opacity:1;transform:translateY(0)}.sign-help-panel{z-index:20;color:#f7f2d6e0;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#050506d6;border:1px solid #f7f2d629;border-radius:8px;width:min(340px,100vw - 64px);padding:18px 18px 16px;transition:opacity .22s,transform .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(10px - 50%));box-shadow:0 18px 60px #00000070}.sign-help-panel.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.sign-help-panel h2{color:#ffb862d6;margin:0 0 12px;font-size:1rem;font-weight:520}.sign-help-panel p{color:#f7f2d6bd;margin:0 0 9px;font-size:.9rem;line-height:1.45}.sign-help-panel p:last-child{margin-bottom:0}.sign-help-close{color:#f7f2d6b8;cursor:pointer;background:0 0;border:1px solid #f7f2d629;border-radius:4px;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:10px;right:10px}.sign-help-close:hover{color:#fff8ec;border-color:#ffb8628c}.section-sidebar{z-index:10;color:#f7f2e8;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#040405d6;border:1px solid #f7f2d61f;border-radius:8px;width:min(430px,100vw - 64px);max-height:calc(100vh - 154px);padding:20px;transition:opacity .24s,transform .24s;position:absolute;top:92px;left:32px;overflow:hidden;transform:translate(-18px);box-shadow:0 20px 70px #0000006b}.section-sidebar.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.section-sidebar-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.section-sidebar-header span{color:#ffb862b3;margin-bottom:6px;font-family:Courier New,ui-monospace,monospace;font-size:.82rem;display:block}.section-sidebar-header strong{color:#f7f2d6eb;font-size:1.18rem;font-weight:520;display:block}.section-sidebar-header button{color:#f6f1e894;cursor:pointer;background:#00000042;border:1px solid #f6f1e824;border-radius:6px;flex:none;width:38px;height:38px}.section-sidebar-header button:hover{color:#fff;border-color:#ffb86294}.section-list{gap:10px;max-height:calc(100vh - 242px);padding-right:4px;display:grid;overflow-y:auto}.section-list button{border:1px solid color-mix(in srgb, var(--accent), transparent 82%);background:color-mix(in srgb, var(--accent), transparent 96%);color:#f7f2d6b8;text-align:left;cursor:pointer;border-radius:7px;gap:7px;width:100%;min-height:112px;padding:15px;display:grid}.section-list button:hover,.section-list button.is-active{border-color:color-mix(in srgb, var(--accent), transparent 38%);background:color-mix(in srgb, var(--accent), transparent 90%);color:#fff}.section-list span{color:var(--accent);font-family:Courier New,ui-monospace,monospace;font-size:.82rem}.section-list strong{color:#ffffffeb;font-size:1.12rem;font-weight:560}.section-list small{color:#f6f1e88a;font-size:.9rem;line-height:1.45}.discovery-panel{z-index:12;border-left:1px solid color-mix(in srgb, var(--accent), transparent 46%);color:#f7f2e8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#040405e0;width:min(520px,100vw);height:100%;padding:88px 42px 42px;animation:.28s cubic-bezier(.16,1,.3,1) panel-enter;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-24px 0 80px #00000085}.panel-close{color:#f6f1e89e;cursor:pointer;background:#00000047;border:1px solid #f6f1e829;border-radius:6px;width:42px;height:42px;position:absolute;top:28px;right:28px}.panel-close:hover{border-color:color-mix(in srgb, var(--accent), white 20%);color:#fff}.panel-signal{color:var(--accent);margin:0 0 14px;font-family:Courier New,ui-monospace,monospace;font-size:.9rem}.discovery-panel h1{color:#fff;margin:0 0 10px;font-size:2.45rem;font-weight:620;line-height:1.05}.panel-subtitle{color:#f6f1e894;margin:0 0 34px;font-size:1.05rem;line-height:1.5}.panel-body{gap:14px;margin-bottom:28px;display:grid}.panel-body p{color:#f6f1e8b8;margin:0;font-size:1.02rem;line-height:1.78}.tag-list{flex-wrap:wrap;gap:8px;display:flex}.tag-list span,.tag-list a{border:1px solid color-mix(in srgb, var(--accent), transparent 68%);background:color-mix(in srgb, var(--accent), transparent 92%);min-height:30px;color:color-mix(in srgb, var(--accent), white 28%);border-radius:6px;align-items:center;padding:7px 12px;font-size:.92rem;text-decoration:none;display:inline-flex}.tag-list a:hover{border-color:color-mix(in srgb, var(--accent), white 12%);color:#fff}@keyframes darkness-ignition{0%,24%{opacity:1}68%{opacity:.24}to{opacity:0}}@keyframes boot-type{0%{width:0}to{width:18ch}}@keyframes boot-delete{0%{width:18ch}to{width:0}}@keyframes boot-caret{50%{border-color:#0000}}@keyframes boot-fade{to{opacity:0;visibility:hidden}}@keyframes panel-enter{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@media (width<=680px){.hud-brand{font-size:.82rem;top:18px;left:18px}.scope-button{min-width:84px;height:42px;font-size:.9rem;top:14px;right:14px}.sections-button{min-width:110px;height:40px;font-size:.86rem;top:64px;right:14px}.controls-hud{gap:10px;max-width:none;bottom:16px;left:14px;right:14px}.controls-hud span{font-size:.68rem}.signal-readout{text-overflow:ellipsis;max-width:calc(100vw - 28px);padding:9px 12px;font-size:.8rem;bottom:92px;overflow:hidden}.sign-help-panel{width:calc(100vw - 28px);padding:16px}.sign-help-panel p{font-size:.82rem}.section-sidebar{width:calc(100vw - 24px);max-height:calc(100vh - 268px);padding:16px;top:116px;left:12px}.section-list{max-height:calc(100vh - 378px)}.section-list button{min-height:104px;padding:13px}.section-list strong{font-size:1rem}.section-list small{font-size:.82rem}.discovery-panel{border:1px solid color-mix(in srgb, var(--accent), transparent 50%);border-radius:8px;width:calc(100vw - 24px);height:auto;padding:72px 24px 28px;top:12px;bottom:12px;right:12px}.discovery-panel h1{font-size:1.95rem}}
