:root{--bg:#030604;--bg2:#06110a;--panel:#04160cb8;--border:#0d3b22;--border-hot:#00ff41;--text:#9dffb0;--text-dim:#4e8a5f;--green:#00ff41;--cyan:#00e5ff;--amber:#ffb000;--red:#ff3860;--mono:"JetBrains Mono", "Fira Code", "SF Mono", ui-monospace, Menlo, Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background:radial-gradient(ellipse at 50% 0%, #00ff410d, transparent 60%), var(--bg);color:var(--text);font:15px/1.65 var(--mono);-webkit-user-select:none;user-select:none;text-shadow:0 0 6px #00ff412e;min-height:100vh}body:before{content:"";z-index:9998;pointer-events:none;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:fixed;inset:0}body:after{content:"";z-index:9997;pointer-events:none;background:radial-gradient(#0000 55%,#0000008c 100%);position:fixed;inset:0}input,textarea{-webkit-user-select:text;user-select:text}.copyok{-webkit-user-select:text;user-select:text;cursor:text;color:var(--cyan);border-bottom:1px dashed var(--cyan);text-shadow:0 0 6px #00e5ff59}.hp{width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}@media print{body>*{display:none!important}body:before,body:after{display:none}body{background:#fff}body:before{content:"Документ не для печати — контролируемая оценка S-Interio";color:#000;padding:60px;display:block;position:static}}header{z-index:100;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020a05eb;align-items:center;gap:18px;padding:10px 22px;display:flex;position:sticky;top:0}.brand{letter-spacing:2px;color:var(--green);font-size:15px;font-weight:700}.brand .dim{color:var(--text-dim);font-weight:400}.sub{color:var(--text-dim);letter-spacing:1px;font-size:11px}.cursor{background:var(--green);vertical-align:text-bottom;width:8px;height:15px;margin-left:4px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}#timer{letter-spacing:2px;color:var(--green);border:1px solid var(--border);text-shadow:0 0 10px #00ff4199;background:#00000080;margin-left:auto;padding:3px 16px;font-size:27px;font-weight:700}#timer.low{color:var(--amber);text-shadow:0 0 10px #ffb00099;border-color:#4d3800}#timer.crit{color:var(--red);text-shadow:0 0 12px #ff3860b3;border-color:#4d0f1e;animation:1s step-end infinite blink}.startBtn{background:var(--green);color:#01110a;font:700 14px var(--mono);letter-spacing:2px;cursor:pointer;border:none;padding:9px 20px;box-shadow:0 0 14px #00ff4180}.startBtn:hover{background:#baffcb}.away{color:var(--amber);letter-spacing:1px;font-size:12px}main{grid-template-columns:250px 1fr;max-width:1300px;margin:0 auto;display:grid}nav{border-right:1px solid var(--border);height:calc(100vh - 59px);padding:22px 10px;position:sticky;top:59px;overflow-y:auto}nav .navhead{color:var(--text-dim);letter-spacing:2px;padding:0 12px 10px;font-size:10px}nav button{width:100%;color:var(--text-dim);text-align:left;font:13px var(--mono);cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;justify-content:space-between;align-items:center;padding:9px 12px;display:flex}nav button:before{content:"  ";white-space:pre}nav button:hover{color:var(--text);background:#00ff410d}nav button.active{color:var(--green);border-left-color:var(--green);background:#00ff4112}nav button.active:before{content:"> "}nav .mins{color:var(--text-dim);font-size:10px}section{min-width:0;padding:30px 42px 90px}h1{letter-spacing:1px;color:var(--green);text-transform:uppercase;margin-bottom:4px;font-size:22px}h1:before{content:"$ ";color:var(--text-dim)}h2{color:var(--cyan);letter-spacing:1px;text-transform:uppercase;margin:26px 0 10px;font-size:16px}h2:before{content:">> ";color:var(--text-dim)}h3{color:var(--green);letter-spacing:.5px;margin:18px 0 8px;font-size:14px}p,li{color:var(--text)}ul,ol{margin:8px 0;padding-left:24px}.lead{color:var(--text-dim);margin-bottom:16px}b{color:#d2ffda}.glitch{display:inline-block;position:relative}.glitch:hover{animation:.3s steps(2,end) infinite glitchy}@keyframes glitchy{0%{text-shadow:-2px 0 var(--red), 2px 0 var(--cyan);transform:translate(0)}50%{text-shadow:2px 0 var(--red), -2px 0 var(--cyan);transform:translate(1px,-1px)}to{text-shadow:-1px 0 var(--cyan), 1px 0 var(--red);transform:translate(-1px,1px)}}.ascii{color:var(--green);text-shadow:0 0 8px #00ff4166;margin:8px 0 18px;font-size:11px;line-height:1.25;overflow-x:auto}.card{background:var(--panel);border:1px solid var(--border);margin:14px 0;padding:16px 20px;box-shadow:inset 0 0 30px #00ff4108}.card-title{color:var(--text-dim);letter-spacing:2px;margin-bottom:10px;font-size:10px}.card-title:before{content:"┌─[ "}.card-title:after{content:" ]"}.q{border-left:2px solid var(--green);background:#00ff410a;margin:14px 0;padding:10px 16px;font-size:15px}.q b{color:var(--green)}.q:before{content:"?> ";color:var(--text-dim)}table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}th,td{border:1px solid var(--border);text-align:left;padding:7px 12px}th{color:var(--green);text-transform:uppercase;letter-spacing:1px;background:#00ff410f;font-size:11px}td code{color:var(--cyan)}code{font-family:var(--mono);color:var(--cyan);background:#00e5ff0f;padding:1px 6px;font-size:13px}pre{border:1px solid var(--border);background:#0000008c;margin:10px 0;padding:13px 16px;font-size:13px;line-height:1.55;overflow-x:auto;box-shadow:inset 0 0 24px #00ff410a}pre code{color:var(--text);background:0 0;padding:0}.flow{max-width:640px;margin:14px 0}.flow .step{border:1px solid var(--border);background:var(--panel);align-items:baseline;gap:12px;padding:9px 15px;font-size:14px;display:flex}.flow .n{color:var(--green);min-width:34px;font-weight:700}.flow .n:before{content:"[";color:var(--text-dim)}.flow .n:after{content:"]";color:var(--text-dim)}.flow .arr{color:var(--text-dim);padding:1px 0 1px 34px;font-size:13px}.lab{grid-template-columns:1fr 1fr;gap:22px;display:grid}.lab label{color:var(--text-dim);letter-spacing:1px;margin:10px 0 3px;font-size:11px;display:block}.lab label:before{content:"--"}.lab input{border:1px solid var(--border);width:100%;color:var(--green);font:13px var(--mono);background:#0009;padding:8px 10px}.lab input:focus{border-color:var(--green);outline:none;box-shadow:0 0 8px #00ff414d}.stage{margin:10px 0}.slabel{color:var(--text-dim);letter-spacing:1px;font-size:11px}.sval{word-break:break-all;border:1px solid var(--border);color:var(--text);background:#0009;margin-top:3px;padding:8px 10px;font-size:12px}.sval.final{border-color:var(--green);color:var(--green);text-shadow:0 0 8px #00ff4180;font-size:13.5px}.sval.mismatch{border-color:var(--red);color:var(--red);text-shadow:0 0 8px #ff386080}.sab{flex-wrap:wrap;gap:8px;margin:14px 0 4px;display:flex}.sab button{border:1px solid var(--border);color:var(--text-dim);font:12px var(--mono);cursor:pointer;letter-spacing:.5px;background:0 0;padding:6px 12px}.sab button:hover{border-color:var(--amber);color:var(--amber)}.sab button.on{border-color:var(--amber);color:var(--amber);background:#ffb00014;box-shadow:0 0 8px #ffb00040}.verdict{margin-top:10px;font-size:13px}.verdict .ok{color:var(--green)}.verdict .fail{color:var(--red)}.verdict .dim{color:var(--text-dim);font-size:11px}.cr{counter-reset:ln}.cr .line{cursor:pointer;padding:0 8px;display:flex}.cr .line:before{counter-increment:ln;content:counter(ln, decimal-leading-zero);color:#1d5c35;text-align:right;-webkit-user-select:none;user-select:none;flex-shrink:0;width:30px;margin-right:14px;font-size:12px}.cr .line:hover{background:#00ff410f}.cr .line.flagged{background:#ffb0001a}.cr .line.flagged:after{content:"⚑ FLAG";color:var(--amber);letter-spacing:1px;margin-left:auto;padding-left:10px;font-size:10px}.cr .line.issue{box-shadow:inset 3px 0 0 var(--red)}.crcount{color:var(--text-dim);letter-spacing:1px;margin-top:6px;font-size:12px}.evalblock{color:#b9c7ff;text-shadow:none;background:#14103080;border:1px dashed #5c7cfa;margin:12px 0;padding:14px 18px;font-size:13.5px}.evalblock:before{content:"[EYES ONLY // EVALUADOR]";letter-spacing:2px;color:#748ffc;margin-bottom:8px;font-size:10px;display:block}.evalblock b{color:#dbe4ff}.evalblock code{color:#91a7ff;background:#5c7cfa1a}.score td:nth-child(2){white-space:nowrap;width:300px}.score input[type=radio]{accent-color:#5c7cfa;margin:0 4px 0 12px;transform:scale(1.15)}.rlabel{color:#7a86b8;font-size:11px}.total{color:var(--green);font-size:20px;font-weight:700}textarea{border:1px solid var(--border);width:100%;color:var(--text);font:13px/1.5 var(--mono);background:#0000008c;min-height:70px;padding:10px}.btn{border:1px solid var(--border);color:var(--text);font:13px var(--mono);cursor:pointer;letter-spacing:1px;background:0 0;padding:7px 14px}.btn:hover{border-color:var(--green);color:var(--green);box-shadow:0 0 8px #00ff4140}.navbtns{justify-content:space-between;max-width:920px;margin-top:36px;display:flex}.copied{color:var(--green);margin-left:8px;font-size:12px}.warnline{color:var(--amber);font-size:13px}.warnline:before{content:"[!] "}.boot{z-index:9999;cursor:pointer;background:#010402;padding:60px;position:fixed;inset:0}.boot pre{box-shadow:none;color:var(--green);background:0 0;border:none;font-size:14px}.boot .dim{color:var(--text-dim)}.boot .skip{color:var(--text-dim);letter-spacing:1px;font-size:11px;position:absolute;bottom:24px;right:28px}.rt td{vertical-align:top}.rt .rtn{width:34px;color:var(--text-dim)}.rts{color:var(--green);font-weight:700}.rtctx{color:var(--amber);font-size:12px;font-weight:400}.rtb{color:var(--text);word-break:break-all;font-size:12px}.rtb b{color:var(--cyan)}.rtexp{color:#b9c7ff;text-shadow:none;margin-top:4px;font-size:12px}.rt .rtopts{width:330px}.rtopts button{border:1px solid var(--border);color:var(--text-dim);font:11px var(--mono);cursor:pointer;background:0 0;margin:2px;padding:4px 8px}.rtopts button:hover{border-color:var(--amber);color:var(--amber)}.rtopts button.on{border-color:var(--amber);color:var(--amber);background:#ffb00014}.rtopts button.want{box-shadow:inset 0 -2px #5c7cfa}.rtopts button.on.good{border-color:var(--green);color:var(--green);background:#00ff411a}.rtopts button.on.bad{border-color:var(--red);color:var(--red);background:#ff38601a}.hdright{align-items:center;gap:18px;margin-left:auto;display:flex}.console .reqline{align-items:center;gap:8px;display:flex}.console .base{color:var(--text-dim);white-space:nowrap;font-size:13px}.console .reqline input{flex:1}.console label,.lab select+label{color:var(--text-dim);letter-spacing:1px;margin:10px 0 3px;font-size:11px;display:block}select,.console input{border:1px solid var(--border);color:var(--green);font:13px var(--mono);background:#0009;padding:8px 10px}.lab select{width:100%}.reqbody{min-height:220px;color:var(--green)}.resp.ok{border-color:var(--green);color:var(--green)}.resp.err{border-color:var(--red);color:var(--red)}.rawreq{white-space:pre-wrap;word-break:break-all;font-size:12px}.btn:disabled{opacity:.5;cursor:wait}textarea.ans{border-left:2px solid var(--border);min-height:90px;margin:-6px 0 14px}textarea.ans:focus{border-color:var(--green);outline:none}.cand{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cand input{border:1px solid var(--border);width:100%;color:var(--green);font:13px var(--mono);background:#0009;padding:8px 10px}.saved{color:var(--text-dim);letter-spacing:1px;font-size:11px}.saved.err{color:var(--red)}.startBtn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.dash{-webkit-user-select:text;user-select:text}.dgrid{grid-template-columns:340px 1fr;max-width:1500px;margin:0 auto;display:grid}.dlist{border-right:1px solid var(--border);height:calc(100vh - 59px);padding:18px 10px;position:sticky;top:59px;overflow-y:auto}.dlist .navhead{color:var(--text-dim);letter-spacing:2px;padding:0 8px 10px;font-size:10px}.dcand{text-align:left;width:100%;color:var(--text);font:12px var(--mono);cursor:pointer;background:0 0;border:1px solid #0000;border-left-width:2px;margin-bottom:6px;padding:10px;display:block}.dcand:hover{background:#00ff410d}.dcand.active{border-left-color:var(--green);background:#00ff4112}.dcname{color:var(--green);justify-content:space-between;gap:8px;font-size:13px;font-weight:700;display:flex}.dcmeta{color:var(--text-dim);margin-top:3px;font-size:11px}.dbar{background:var(--border);height:3px;margin-top:6px}.dbar span{background:var(--green);height:100%;transition:width .4s;display:block}.dstat{letter-spacing:1px;border:1px solid;padding:1px 6px;font-size:10px;font-weight:400}.dstat.encurso{color:var(--cyan)}.dstat.inactivo{color:var(--amber)}.dstat.entregada{color:var(--green)}.dwarn{color:var(--amber)}.dok{color:var(--green)}.dfail{color:var(--red)}.ddim{color:var(--text-dim);font-size:12px}.dchips{flex-wrap:wrap;gap:8px;margin:10px 0 6px;display:flex}.chip{border:1px solid var(--border);color:var(--text);padding:3px 9px;font-size:11px}.chip.good{border-color:var(--green);color:var(--green)}.chip.warn{border-color:var(--amber);color:var(--amber)}.dq{margin:10px 0 14px}.dqh{color:var(--text-dim);margin-bottom:4px;font-size:12px}.dqh b{color:var(--green)}.dans{white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0}details summary{cursor:pointer;color:#748ffc;letter-spacing:1px;margin-top:8px;font-size:12px}.cr .line.fp{box-shadow:inset 3px 0 0 var(--amber)}.dlogin{max-width:420px;margin:80px auto}.dlogin input{border:1px solid var(--border);width:100%;color:var(--green);font:14px var(--mono);background:#0009;margin:6px 0 4px;padding:10px}.livedot{background:var(--green);border-radius:50%;width:8px;height:8px;margin-right:4px;animation:1.4s step-end infinite blink;display:inline-block}header nav.tools{border:none;gap:10px;height:auto;padding:0;display:flex;position:static;overflow:visible}.tools a{color:var(--cyan);letter-spacing:1px;font-size:12px;text-decoration:none}.tools a:hover{color:var(--green);text-shadow:0 0 6px #00ff4180}
