:root{--hud-bg: rgba(7, 16, 29, .8);--hud-border: rgba(154, 192, 231, .3);--text-main: #f5f8ff;--text-dim: #9fb0c8;--accent: #ffb65e;--ok: #4cd08a;--fail: #ff6f6f;--button-bg: rgba(20, 33, 52, .88);--button-bg-hover: rgba(26, 42, 65, .95)}.app-shell{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(140% 120% at 70% -20%,#2b73bc,#10457d 42%,#082546)}.scene-stage{position:absolute;inset:0;overflow:hidden}.scene-world{position:absolute;inset:0;transform-origin:0 0;will-change:transform}.scene-layer{position:absolute;inset:0;pointer-events:none;will-change:transform,opacity}.scene-layer svg{display:block;width:100%;height:100%}.scene-layer--one{z-index:1}.scene-layer--two{z-index:2;transform-origin:0 0}.controls-layer{position:absolute;inset:0;z-index:8;display:grid;place-items:center;pointer-events:none}.go-button{pointer-events:auto;width:min(16vw,160px);min-width:108px;border:1px solid rgba(245,248,255,.5);border-radius:999px;padding:.8rem 2rem;font-size:clamp(1.1rem,2.8vw,1.55rem);font-weight:600;letter-spacing:.03em;color:var(--text-main);background:var(--button-bg);cursor:pointer;transition:transform .12s ease,background-color .12s ease,opacity .12s ease}.go-button:hover:not(:disabled){background:var(--button-bg-hover);transform:translateY(-1px)}.go-button:disabled{cursor:not-allowed;opacity:.48}.status-pill{position:absolute;top:1.2rem;left:50%;transform:translate(-50%);border:1px solid rgba(203,223,246,.45);border-radius:999px;padding:.34rem .8rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-main);background:#0a16279e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.status-pill--animating{border-color:#ffb65ecc;color:var(--accent)}.status-pill--cooldown{border-color:#9fb0c8cc;color:var(--text-dim)}.debug-overlay{position:absolute;z-index:9;top:1rem;right:1rem;width:min(320px,calc(100vw - 2rem));border:1px solid var(--hud-border);border-radius:12px;padding:.9rem 1rem;background:var(--hud-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.debug-header{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem}.debug-header h2{margin:0;font-size:.95rem;letter-spacing:.02em}.debug-header span{color:var(--text-dim);font-size:.75rem}.debug-target{margin:.4rem 0 .7rem;color:var(--text-dim);font-size:.82rem}.debug-grid{margin:0;display:grid;grid-template-columns:1fr auto;row-gap:.3rem;column-gap:.9rem}.debug-grid dt{color:var(--text-dim);font-size:.78rem}.debug-grid dd{margin:0;font-size:.86rem;font-weight:600;color:var(--text-main);text-align:right}.debug-result{margin:.8rem 0 0;font-size:.82rem;font-weight:700}.debug-result.is-pass{color:var(--ok)}.debug-result.is-fail{color:var(--fail)}.error-panel{position:absolute;z-index:12;left:50%;top:12%;transform:translate(-50%);width:min(760px,calc(100vw - 2rem));border:1px solid rgba(255,111,111,.5);border-radius:14px;padding:1rem 1.1rem;background:#360d10e6}.error-panel h1{margin:0;font-size:1rem}.error-panel p{margin:.5rem 0;color:#ffd4d4}.error-panel ul{margin:0;padding-left:1.2rem}@media(max-width:700px){.debug-overlay{top:auto;bottom:.8rem;right:.8rem;width:calc(100vw - 1.6rem)}.status-pill{top:.8rem}.go-button{width:min(44vw,180px)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{font-family:IBM Plex Sans,Segoe UI,sans-serif;background:#051324;color:#f6f9ff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
