: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 ease-in-out infinite critPulse,10s linear infinite critShake}@keyframes critPulse{0%,to{box-shadow:0 0 6px #ff386059}50%{color:#ffd7de;box-shadow:0 0 24px #ff3860e6}}@keyframes critShake{0%,96%,to{transform:none}97%{transform:translate(-2px,1px)}98%{transform:translate(2px,-1px)}99%{transform:translate(-1px)}}.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{z-index:1;grid-template-columns:250px 1fr;max-width:1300px;margin:0 auto;display:grid;position:relative}main.glitching section{animation:.2s steps(4,end) secGlitch}@keyframes secGlitch{0%{opacity:.55;clip-path:inset(8% 0 55%);text-shadow:-3px 0 var(--red), 3px 0 var(--cyan);transform:translate(-4px)}25%{clip-path:inset(45% 0 8%);text-shadow:3px 0 var(--red), -3px 0 var(--cyan);transform:translate(4px)}50%{clip-path:inset(15% 0 30%);transform:translate(-2px)}75%{clip-path:none;opacity:.85;transform:translate(2px)}to{transform:none}}.matrix{z-index:0;pointer-events:none;position:fixed;inset:0}.sweep{z-index:9996;pointer-events:none;background:linear-gradient(#0000,#00ff410a,#0000);height:120px;animation:9s linear infinite sweep;position:fixed;left:0;right:0}@keyframes sweep{0%{top:-18%}to{top:112%}}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;animation:.55s ease-out crtOn;position:fixed;inset:0}@keyframes crtOn{0%{filter:brightness(6);transform:scaleY(.004)scaleX(.6)}40%{filter:brightness(9);transform:scaleY(.004)scaleX(1)}70%{filter:brightness(2.4);transform:scaleY(1)scaleX(1)}to{filter:none;transform:none}}.boot pre{box-shadow:none;color:var(--green);z-index:1;background:0 0;border:none;font-size:14px;position:relative}.boot .dim{color:var(--text-dim)}.boot .skip{color:var(--text-dim);letter-spacing:1px;z-index:1;font-size:11px;position:absolute;bottom:24px;right:28px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.sweep,.matrix{display:none}}
