
:root{--bg:#07101d;--panel:#0e1b2d;--panel2:#13243b;--line:#28415f;--text:#eef6ff;--muted:#9fb3ca;--accent:#60a5fa;--good:#45d49d;--bad:#ff7373;--warn:#ffd166}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#142846 0,#08121f 35%,#050b13 100%);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh}
a{color:#8ac3ff}.shell{max-width:1250px;margin:auto;padding:22px}.top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.brand h1{font-size:clamp(28px,4vw,46px);margin:0}.muted{color:var(--muted)}.small{font-size:12px}.pill{padding:5px 10px;border-radius:999px;background:#183252;border:1px solid #2f5279;font-size:12px}.nav{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.nav button,.btn{border:0;border-radius:10px;padding:10px 13px;font-weight:750;cursor:pointer;background:#18304d;color:#eaf4ff}.nav button.active,.btn.primary{background:var(--accent);color:#06101b}.btn.ghost{border:1px solid var(--line);background:transparent}.btn.danger{background:#4b2227;color:#ffd9dc}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.card{background:linear-gradient(180deg,rgba(18,35,58,.97),rgba(11,23,39,.97));border:1px solid var(--line);border-radius:16px;padding:17px;box-shadow:0 14px 35px #0005}.span3{grid-column:span 3}.span4{grid-column:span 4}.span6{grid-column:span 6}.span8{grid-column:span 8}.span12{grid-column:span 12}
.stat{font-size:29px;font-weight:850}.bar{height:9px;border-radius:999px;background:#07101c;overflow:hidden}.bar>i{height:100%;display:block;background:var(--good)}h2,h3{margin-top:0}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.space{justify-content:space-between}.hide{display:none!important}
.qbox{max-width:900px;margin:auto}.qtext{font-size:23px;font-weight:750;margin:18px 0}.choice{display:block;width:100%;text-align:left;background:#142842;border:1px solid #315475;color:white;padding:13px;margin:9px 0;border-radius:10px;cursor:pointer}.choice:hover{border-color:#7dc0ff}.choice.correct{background:#123a31;border-color:var(--good)}.choice.wrong{background:#442126;border-color:var(--bad)}.choice:disabled{cursor:default;opacity:.95}.feedback{padding:14px;border-radius:10px;background:#081727;border-left:4px solid var(--accent);margin:14px 0}.good{color:var(--good)}.bad{color:var(--bad)}.warn{color:var(--warn)}
input,select,textarea{background:#071524;color:#fff;border:1px solid #315475;border-radius:9px;padding:11px;font:inherit}input[type=text]{width:100%}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px;border-bottom:1px solid var(--line)}code{background:#06111e;padding:2px 5px;border-radius:5px;color:#bfe1ff}
.terminal{background:#03070b;border:1px solid #23384b;border-radius:12px;overflow:hidden}.termbar{padding:8px 11px;background:#0b1721;color:#9fc2da}.screen{min-height:250px;padding:14px;font:14px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:#baf5d4;white-space:pre-wrap}.termline{display:flex;align-items:center;padding:0 14px 14px;font:14px ui-monospace,SFMono-Regular,Consolas,monospace}.prompt{color:#7ee7a8;margin-right:7px}.termline input{border:0;border-bottom:1px solid #1e4755;border-radius:0;background:transparent;padding:7px 2px}
.objrow{margin:11px 0}.tag{font-size:11px;padding:3px 7px;background:#1a314c;border-radius:999px}.timer{font-size:24px;font-weight:850;font-variant-numeric:tabular-nums}
.labstep{padding:13px;margin:10px 0;border:1px solid var(--line);border-radius:12px}.labstep.done{border-color:var(--good)}
@media(max-width:850px){.span3,.span4,.span6,.span8{grid-column:span 12}.top{flex-direction:column}.shell{padding:14px}.qtext{font-size:20px}}
