/* Vibe Shell */
:root{--bg:#0b1020;--panel:#101a33;--card:#0f172a;--text:#e5e7eb;--muted:#9ca3af;--accent:#60a5fa;--good:#10b981;--bad:#ef4444}
*{box-sizing:border-box}
body{margin:0;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(1200px 700px at 10% 10%,#16224a 0%,#0b1020 50%,#060814 100%);color:var(--text)}
.top{padding:18px 16px 6px;max-width:1100px;margin:0 auto}
.top h1{margin:0;font-size:22px}
.sub{margin:6px 0 0;color:var(--muted)}
.grid{display:grid;grid-template-columns:1fr 340px;gap:14px;max-width:1100px;margin:0 auto;padding:12px 16px 26px}
.panel,.learn{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.panel{padding:12px}
.learn{padding:12px 12px 16px}
.hud{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:8px 10px;background:rgba(0,0,0,.25);border-radius:12px;border:1px solid rgba(255,255,255,.10)}
.hud .k{color:var(--muted);font-size:12px;margin-right:6px}
.btn{margin-left:auto;background:rgba(96,165,250,.18);border:1px solid rgba(96,165,250,.45);color:var(--text);padding:8px 12px;border-radius:12px;cursor:pointer}
.btn:hover{filter:brightness(1.08)}
.stage{position:relative;height:420px;margin-top:12px;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.20));border:1px solid rgba(255,255,255,.10);overflow:hidden}
.stage:focus{outline:2px solid rgba(96,165,250,.6);outline-offset:2px}
.player,.target{position:absolute;width:26px;height:26px;border-radius:10px;transform:translate(-50%,-50%)}
.player{background:linear-gradient(180deg,rgba(16,185,129,.95),rgba(16,185,129,.55));box-shadow:0 10px 18px rgba(16,185,129,.25)}
.target{background:linear-gradient(180deg,rgba(96,165,250,.95),rgba(96,165,250,.55));box-shadow:0 10px 18px rgba(96,165,250,.25)}
.help{margin-top:12px}
.help details{background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:8px 10px}
.help summary{cursor:pointer;color:var(--muted)}
.helpBody{padding-top:8px}
.learn h2{margin:6px 0 6px;font-size:16px}
.learn h3{margin:14px 0 6px;font-size:14px;color:var(--muted)}
.learn .diff{padding:10px;border-radius:12px;background:rgba(0,0,0,.22);border:1px dashed rgba(255,255,255,.14)}
.learn ul{margin:8px 0 0;padding-left:18px;color:var(--text)}
.sr{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
@media (max-width: 980px){.grid{grid-template-columns:1fr}.btn{margin-left:0}}
