:root{color-scheme:dark;--bg:#09151d;--panel:#112732;--line:#34545e;--ink:#e8f3eb;--muted:#acc2c9;--mint:#a5ebc2;--gold:#f2d18c;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 90% 0,#153e43,transparent 45%),var(--bg);color:var(--ink);line-height:1.6}a{color:var(--mint)}header,footer{max-width:1240px;margin:auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:.9rem;font-weight:750;letter-spacing:.12em}.brand small{display:block;font-size:.55rem;letter-spacing:.2em;color:var(--muted)}nav{display:flex;gap:1.4rem;font-size:.85rem}nav a{text-decoration:none}main{max-width:1200px;padding:0 2rem;margin:auto}h1{font-family:Georgia,serif;font-size:clamp(3rem,6vw,5rem);letter-spacing:-.04em;line-height:1.1;margin:.5rem 0 1rem}h1 em{font-weight:400;color:var(--mint)}h2{font-family:Georgia,serif;font-size:1.5rem;line-height:1.25;margin:.5rem 0 1rem}p{color:var(--muted)}.eyebrow{font-size:.65rem;letter-spacing:.18em;font-weight:750;color:var(--gold)}.intro{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding:3rem 0 2rem}.mode-card{max-width:350px;border:1px solid var(--line);border-radius:12px;background:#132e34;padding:1.2rem}.mode-card label{font-size:.85rem;color:var(--gold);display:block;margin-bottom:.5rem}.mode-card p{font-size:.8rem;margin-bottom:0}select{font:inherit;min-height:44px;border:1px solid #7da398;border-radius:7px;background:#102932;color:var(--ink);padding:.5rem;max-width:100%;width:100%}.hud{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem;padding:1rem 0;border-block:1px solid var(--line);margin-bottom:1.5rem}.hud small{font-size:.6rem;letter-spacing:.12em;color:var(--muted);display:block}.hud strong{font-size:1.2rem;color:var(--mint)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:1.3rem;align-items:start}.arena-column{min-width:0}.arena-frame{border:1px solid #6d9f90;border-radius:15px;overflow:hidden;background:#061118;box-shadow:0 15px 50px #0004}canvas{display:block;width:100%;height:auto;touch-action:none;cursor:crosshair}button{font:inherit;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6rem .9rem;border:1px solid #799d94;border-radius:8px;background:#173b3c;color:var(--mint);font-weight:650;cursor:pointer;gap:.4rem}button:hover{background:#28524a}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,select:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.primary{background:var(--mint);color:#132c24}.primary:hover{background:#cff3dc}.actions{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.actions button{font-size:.8rem}#game-status{font-size:.85rem;min-height:2.8em;color:var(--gold)}.panel{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:1.2rem;margin-bottom:1rem;overflow-wrap:anywhere}.panel p{font-size:.85rem}.small{font-size:.75rem}.controls dl{margin:0}.controls dl>div{display:grid;grid-template-columns:105px 1fr;gap:.5rem;padding:.55rem 0;border-bottom:1px solid #29434e;font-size:.75rem}.controls dd{margin:0;color:var(--muted)}kbd{font:inherit;font-family:ui-monospace,monospace;border:1px solid #708d8d;padding:.1rem .3rem;border-radius:4px;color:var(--gold)}.quiz-answers{display:grid;gap:.6rem;margin:1rem 0}.quiz-answers button{justify-content:start;text-align:left;font-weight:500;color:var(--ink);font-size:.85rem}.quiz-answers button.correct{border-color:var(--mint)}.quiz-answers button.incorrect{border-color:#efa896}.quiz-feedback{border-left:2px solid var(--gold);padding-left:.7rem;margin:1rem 0;color:var(--gold);font-size:.85rem}.quiz-code{font-family:ui-monospace,monospace}.touch-controls{display:flex;align-items:stretch;gap:.8rem}.direction-pad{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.touch-controls button{touch-action:none;user-select:none;-webkit-user-select:none;min-width:44px}.fire-button{min-width:100px;flex:1;background:#345344;color:var(--gold)}.learning-note{border-top:1px solid var(--line);padding:2rem 0;margin-top:2rem;max-width:850px}.learning-note p{font-size:.85rem}footer{border-top:1px solid var(--line);border-bottom:0;font-size:.8rem}[hidden]{display:none!important}@media(max-width:900px){.layout{grid-template-columns:1fr}.layout aside{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.intro{gap:1.5rem}.mode-card{max-width:300px}.hud strong{font-size:1.1rem}}@media(max-width:600px){header,footer{padding:1rem;align-items:start;flex-direction:column}main{padding:0 1rem}.intro{display:block;padding:2rem 0 1rem}.mode-card{max-width:none;margin:1.5rem 0 .5rem}.hud{grid-template-columns:repeat(3,1fr);gap:.8rem}.hud small{font-size:.55rem}.layout aside{display:block}.touch-controls{flex-wrap:wrap}.direction-pad{flex:1}.fire-button{flex-basis:100%;min-height:50px}.actions button{flex-grow:1}.arena-frame{border-radius:10px}nav{gap:1rem}.learning-note{margin-top:1rem}}
.controls summary{cursor:pointer;color:var(--mint);font-weight:650;min-height:32px}.controls[open] summary{margin-bottom:1rem}summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.touch-bar{display:grid;grid-template-columns:1fr 1.25fr 1fr 1fr;gap:.45rem;margin:.75rem 0}.touch-bar button{min-height:56px;flex-direction:column;gap:.05rem;touch-action:none;user-select:none;-webkit-user-select:none}.touch-bar button span{font-size:.65rem;letter-spacing:.08em}.touch-bar button.active{background:var(--mint);color:#132c24;transform:translateY(1px)}.touch-bar .fire-button{min-width:0}.touch-bar kbd{font-size:.75rem}.legacy-touch-controls{display:block;position:static;width:auto;height:auto;overflow:visible;opacity:.01;pointer-events:auto}.legacy-touch-controls [data-hold]:not([data-hold="h"]){display:none!important}@media(max-width:600px){.touch-bar{margin-top:1rem}.touch-bar button{min-height:60px}}
#study-filter{max-width:320px;margin:.5rem 0}#study-progress{font-size:.85rem}.study-card{border:1px solid var(--line);border-radius:9px;margin:.6rem 0;padding:.8rem}.study-card summary{font-weight:600;color:var(--ink)}.study-card p{font-size:.85rem}#target-assist[aria-pressed=true]{background:var(--mint);color:#132c24}

.touch-bar{grid-template-columns:1fr 1fr 1fr;touch-action:none}.touch-bar [data-action="drone"]{grid-column:1 / -1}
