*{box-sizing:border-box} [hidden]{display:none!important} :root{font-family:Arial,"Noto Sans",sans-serif;color:#e9fbff;background:#040c16;color-scheme:dark;--cyan:#19cee1;--line:#203d50}body{margin:0;height:100dvh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 10%,#123447 0,transparent 65%),#040c16;overflow:hidden}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a.primary{cursor:pointer;border:1px solid var(--line);border-radius:10px;padding:13px 18px;text-align:center;font-weight:800;font-size:15px;line-height:1.3;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #ffe29a;outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled),a.primary:hover{filter:brightness(1.16)}.primary{background:linear-gradient(#28dbea,#0b9dbb);color:#001825!important;box-shadow:inset 0 1px #affaff,0 7px 26px #0cb9d522}.secondary{background:#0d2130;color:#e8faff}.gold{background:linear-gradient(#ffde83,#b77c24);color:#201800;animation:pulse 1.8s infinite}a{color:#83e6ef}.toolbar{height:64px;min-height:64px;display:flex;align-items:center;gap:20px;padding:10px 28px;border-bottom:1px solid #1f3b4a;background:#05101bd9}.brand{font-weight:900;letter-spacing:.15em;text-decoration:none;color:#e5fbff;display:flex;align-items:center;gap:10px}.brand img{object-fit:contain}.toolbar-actions{margin-inline-start:auto;display:flex;align-items:center;gap:10px}.toolbar button,.toolbar select{font-size:12px;background:#0b1d2b;border:1px solid var(--line);border-radius:7px;padding:8px;max-width:175px}.toolbar #mode-label{color:#83aebf;font-size:12px}main{flex:1;min-height:0;padding:24px 30px;display:flex;justify-content:center}.welcome{width:min(1080px,100%);display:grid;grid-template-columns:1fr 1fr;gap:24px;min-height:0}.welcome-art,.scene-window{position:relative;overflow:hidden;border:1px solid #294e61;border-radius:18px;background:#06131e;min-height:0}.welcome-art img{height:100%;width:100%;object-fit:contain}.welcome-brand{position:absolute;top:24px;left:0;right:0;text-align:center;font-size:clamp(22px,3vw,42px);font-weight:950;letter-spacing:.16em;color:#e1fdff;text-shadow:0 2px 12px #000,0 0 25px #05d5f9}.welcome-right{display:flex;flex-direction:column;gap:12px;min-height:0}.scene-window{flex:1;min-height:100px}.scene-window img{width:100%;height:100%;object-fit:cover;object-position:50% 26%;transition:opacity .6s}.scene-window div{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(transparent,#03101cef);letter-spacing:.1em;font-weight:800;font-size:18px}.welcome-copy h1{font-size:clamp(20px,2.4vw,30px);margin:5px 0 8px;line-height:1.1}.welcome-copy p{font-size:15px;color:#9fc0d0;line-height:1.45;margin:0}.start{font-size:24px;min-height:60px;flex-shrink:0;font-weight:950;letter-spacing:.05em}.full-link{text-align:center;font-size:13px}.play-layout{display:flex;gap:28px;width:100%;justify-content:center;min-height:0}.arena{position:relative;aspect-ratio:720/1280;height:100%;max-width:calc(100% - 280px);border:1px solid #295366;border-radius:12px;overflow:hidden;box-shadow:0 16px 65px #0009;background:#061823;direction:ltr}canvas{width:100%;height:100%;display:block;touch-action:none;user-select:none}.hud{position:absolute;top:1.6%;inset-inline:5%;display:flex;justify-content:space-around;pointer-events:none;text-align:center}.hud small{display:block;color:#7ea6b6;font-size:clamp(9px,1vw,12px)}.hud strong{display:block;font-size:clamp(14px,1.5vw,21px);margin-top:4px}.controls{width:250px;display:flex;flex-direction:column;gap:15px;justify-content:center;min-width:200px}.controls h2{font-size:24px;line-height:1.2;margin:5px 0 9px}.eyebrow{color:#67d8e6;font-size:11px;letter-spacing:.15em;margin:0}.control-stack{display:flex;flex-direction:column;gap:9px}.control-guide{border-top:1px solid var(--line);padding-top:14px;color:#8faebe;font-size:12px;line-height:1.4}.control-guide p{margin:7px 0}.reactor-dot{display:block;width:20px;height:20px;background:radial-gradient(white,#40e8ff,#075474);box-shadow:0 0 20px #00baff88;border-radius:50%}.trap-guide{color:#ee9898}.status{font-size:12px;color:#e7ce8c;min-height:16px}.hint{position:absolute;bottom:13%;left:4%;right:4%;text-align:center;color:#bdfaff;font-size:clamp(10px,1.1vw,13px);text-shadow:0 2px 3px #000;pointer-events:none;background:#04101bbd;padding:8px 3px;border-radius:7px}.transmission{position:absolute;top:12%;left:6%;right:6%;padding:12px;background:#03131fe8;border-top:1px solid #65d7e8;border-radius:6px;font-size:clamp(10px,1.1vw,13px);text-align:center;line-height:1.4;pointer-events:none;animation:pulse 3s infinite}.transmission strong{display:block;color:#83e9f3;margin-bottom:5px}#run-state{color:#8fbbcb;font-size:13px}footer{display:flex;justify-content:center;gap:16px;color:#7493a4;font-size:11px;min-height:28px;padding:5px 12px;text-align:center}dialog{background:#071824;color:#dffaff;border:1px solid #2f7788;border-radius:16px;width:min(600px,92vw);max-height:90dvh;padding:22px;box-shadow:0 15px 90px #000c}dialog::backdrop{background:#010711d9}dialog h2{margin:0 0 14px;color:#80e6ef}#level-preview{width:100%;height:min(20vh,155px);object-fit:cover;object-position:50% 23%;border-radius:9px}#level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:14px 0}#level-grid button{min-height:50px;padding:8px}#level-grid button.selected{border-color:#6effff;background:#126274}dialog>button{width:100%;margin-top:8px}@keyframes pulse{50%{filter:brightness(.72)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-height:720px){main{padding:14px 24px}.toolbar{height:52px;min-height:52px}.welcome-copy p{font-size:13px}.welcome-right{gap:9px}.start{min-height:52px;padding:10px}.control-guide{font-size:10px}.controls{gap:9px}.controls h2{font-size:20px}}@media(max-width:700px){main{padding:10px}.toolbar{padding:8px 12px;gap:6px}.toolbar #mode-label{display:none}.brand{font-size:14px;letter-spacing:.07em}.toolbar select{max-width:115px}.toolbar #sound{max-width:90px}.welcome{gap:10px;grid-template-columns:1fr 1fr}.welcome-copy h1{font-size:20px}.welcome-copy p{font-size:12px}.welcome-brand{font-size:18px}.scene-window div{font-size:12px;padding:12px}.play-layout{gap:8px}.controls{width:120px;min-width:110px;gap:8px}.controls h2{font-size:16px}.controls button,.controls a.primary{font-size:11px;padding:10px 5px}.arena{max-width:calc(100% - 118px);height:auto;max-height:100%;align-self:center}.control-guide{display:none}.hud strong{font-size:14px}.transmission{font-size:10px;padding:8px}.hint{font-size:10px;padding:5px}footer{font-size:9px;gap:10px}}
