:root{--bg:#0a0f0a;--g:#39ff14;--m:#ff2bd6;--dim:#1c3a1c;--t:#b9f5ae}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at top,#0f2410,var(--bg) 60%);color:var(--t);font-family:'JetBrains Mono',monospace;font-size:13px;min-height:100vh}
.scan{pointer-events:none;position:fixed;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.25) 0 1px,transparent 1px 3px);z-index:9}
header{text-align:center;padding:24px 12px 8px}
h1{font-family:'VT323',monospace;font-size:64px;margin:0;color:var(--g);letter-spacing:4px;text-shadow:0 0 12px var(--g);line-height:.9}
h1 span{color:var(--m);text-shadow:0 0 12px var(--m);margin-left:10px}
.sub{font-weight:200;font-style:italic;opacity:.8}
.pill{display:inline-block;border:1px solid var(--g);border-radius:99px;padding:3px 14px;font-weight:800;box-shadow:0 0 10px var(--dim)}
main{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:14px;padding:14px;max-width:1400px;margin:auto}
@media(max-width:1000px){main{grid-template-columns:1fr}}
.panel{border:1px solid var(--dim);border-radius:10px;padding:14px;background:rgba(10,25,10,.6);box-shadow:inset 0 0 30px rgba(57,255,20,.05),0 0 8px rgba(57,255,20,.15);animation:in .6s both}
.panel:nth-child(2){animation-delay:.12s}.panel:nth-child(3){animation-delay:.24s}
@keyframes in{from{opacity:0;transform:translateY(14px)}}
h2{font-family:'VT323';font-size:26px;color:var(--g);margin:0 0 10px;font-weight:400}
h3{font-weight:200;font-size:12px;margin:14px 0 6px}
#thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:10px}
#thumbs div{text-align:center;font-size:8px;opacity:.8}
#thumbs canvas{width:100%;image-rendering:pixelated;border:1px solid var(--dim)}
.row{display:flex;justify-content:space-between;align-items:center;margin:6px 0;gap:8px}
input[type=range]{accent-color:var(--g);width:55%}
select{background:#061006;color:var(--g);border:1px solid var(--dim);font-family:inherit}
button{background:transparent;color:var(--g);border:1px solid var(--g);border-radius:6px;padding:6px 10px;font-family:inherit;cursor:pointer;margin:3px 2px;transition:.15s}
button:hover{background:var(--g);color:#000;box-shadow:0 0 12px var(--g)}
button.go{border-color:var(--m);color:var(--m)}button.go:hover{background:var(--m);color:#000}
canvas{display:block;max-width:100%}
#scatter,#loss{width:100%;border:1px solid var(--dim);border-radius:6px}
.pads{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
#pad{width:320px;max-width:100%;border:1px solid var(--g);border-radius:8px;cursor:crosshair;touch-action:none}
.coords{text-align:center;color:var(--m);font-weight:800;margin-top:4px}
.outs{display:flex;flex-direction:column;gap:10px;align-items:center}
.pix{image-rendering:pixelated;border:1px solid var(--g)}
.big{width:220px;height:220px;box-shadow:0 0 20px rgba(57,255,20,.3)}.small{width:96px;height:96px;border-color:var(--m)}
.lbl{font-size:10px;letter-spacing:2px;opacity:.7}
.err{display:flex;align-items:center;gap:8px;margin:12px 0}
.bar{flex:1;height:8px;border:1px solid var(--dim);border-radius:4px;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--g),var(--m))}
.toggles{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}
.stats{margin-top:6px}.stats b{color:var(--g)}
.quip{font-style:italic;color:var(--m);min-height:36px}
footer{text-align:center;padding:20px;opacity:.7}a{color:var(--g)}