:root{--bg:#0b1020;--panel:#121a33;--line:#1f2b52;--cyan:#38e1ff;--pink:#ff4fa3;--lime:#9dff5c;--txt:#d8e2ff;--dim:#6b7aa8}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at 20% 0%,#1a1440 0,transparent 50%),radial-gradient(ellipse at 100% 100%,#0e2a2f 0,transparent 50%),var(--bg);color:var(--txt);font-family:'Martian Mono',monospace;font-size:12px;min-height:100vh;display:flex;flex-direction:column}
header{padding:18px 22px 6px}
h1{font-family:'Unbounded',sans-serif;font-weight:900;font-size:clamp(26px,5vw,48px);margin:0;letter-spacing:-1px;line-height:1}
h1 em{font-weight:300;color:var(--pink);font-style:normal}
header p{margin:6px 0 0;color:var(--dim)}
.brain{display:inline-block;color:var(--lime)}
.brain.pulse{animation:pulse .6s infinite alternate}
@keyframes pulse{to{transform:scale(1.3) rotate(15deg);text-shadow:0 0 18px var(--lime)}}
main{flex:1;display:flex;gap:14px;padding:12px 22px;min-height:0}
.stage{position:relative;flex:1;min-height:420px;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 0 40px #38e1ff14 inset}
#canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}
.badge{position:absolute;top:12px;left:12px;padding:5px 10px;border-radius:999px;background:#000a;border:1px solid var(--line);font-weight:800;letter-spacing:1px}
.counter{position:absolute;top:12px;right:12px;color:var(--dim)}
.toast{position:absolute;bottom:14px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;transition:.3s;background:var(--pink);color:#000;padding:7px 14px;border-radius:10px;font-weight:800}
.toast.show{opacity:1;transform:translateX(-50%)}
aside{width:300px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;animation:rise .5s both}
.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.2s}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}
h2{margin:0;font-family:'Unbounded';font-weight:300;font-size:13px;color:var(--cyan);letter-spacing:1px}
.row{display:flex;gap:8px}
.btn{flex:1;border:0;border-radius:10px;padding:10px;font:800 12px 'Martian Mono';cursor:pointer;transition:transform .1s;text-align:center}
.btn:active{transform:scale(.93,.88)}
.btn.pink{background:var(--pink);color:#000;box-shadow:0 0 18px #ff4fa355}
.btn.pink.on{animation:blink 1s infinite}
@keyframes blink{50%{box-shadow:0 0 30px var(--pink)}}
.btn.lime{background:var(--lime);color:#000;box-shadow:0 0 18px #9dff5c44}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--txt)}
.btn.sm{padding:7px;font-weight:500;font-size:11px}
.btn:disabled{opacity:.4;cursor:not-allowed}
.stats{display:flex;gap:10px;align-items:center}
.stats div{display:flex;flex-direction:column}
.stats b{font-size:18px;color:var(--pink)}
.stats span{color:var(--dim);font-size:10px}
.acts{display:flex;gap:8px;flex-wrap:wrap;color:var(--dim);font-size:10px}
.acts b{color:var(--lime)}
#heat{margin-left:auto;border:1px solid var(--line);border-radius:6px;background:#000}
label{display:flex;flex-direction:column;gap:4px;color:var(--dim)}
label i{font-style:normal;color:var(--txt);float:right}
label{position:relative}
label i{position:absolute;right:0;top:0}
input[type=range]{accent-color:var(--cyan);width:100%}
select{background:#0b1020;color:var(--txt);border:1px solid var(--line);border-radius:8px;padding:6px;font:inherit}
.seg{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.seg button{flex:1;background:none;border:0;color:var(--dim);padding:7px;font:500 11px 'Martian Mono';cursor:pointer}
.seg button.on{background:var(--cyan);color:#000;font-weight:800}
.prog{height:6px;background:#000;border-radius:3px;overflow:hidden}
#progBar{height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--lime));transition:width .2s}
.status{color:var(--lime);min-height:15px}
#loss{width:100%;background:#000;border-radius:8px;border:1px solid var(--line)}
.sim{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.sim span{color:var(--dim)}
.sim b{font-family:'Unbounded';font-weight:900;font-size:22px;color:var(--lime)}
.sim em{font-style:normal;color:var(--pink)}
footer{padding:12px 22px;color:var(--dim);text-align:center}
footer a{color:var(--cyan)}
@media(max-width:800px){main{flex-direction:column}aside{width:100%}.stage{min-height:55vh}}