@font-face{font-family:Russo One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/russo-one-cyrillic-400-normal-BXZIn0h3.woff2)format("woff2"),url(/assets/russo-one-cyrillic-400-normal-rRbrNFRA.woff)format("woff")}@font-face{font-family:Russo One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/russo-one-latin-400-normal-BfOuQF9V.woff2)format("woff2"),url(/assets/russo-one-latin-400-normal-CosRecV9.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-cyrillic-400-normal-C5G8_8ug.woff2)format("woff2"),url(/assets/rubik-cyrillic-400-normal-D5R8xuhl.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-cyrillic-500-normal-Didq2w9O.woff2)format("woff2"),url(/assets/rubik-cyrillic-500-normal-BH_pkKR0.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-latin-400-normal-j0pmKyiQ.woff2)format("woff2"),url(/assets/rubik-latin-400-normal-BV1Ho3GG.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-latin-500-normal-1os41rQk.woff2)format("woff2"),url(/assets/rubik-latin-500-normal-LZYVHeqz.woff)format("woff")}:root{--paper:#fbf3e4;--paper-2:#f3e7cf;--ink:#15131a;--fg:#1d1a22;--muted:#6f6678;--line:#15131a;--card:#fffaf0;--orange:#ff6a00;--yellow:#ffd23f;--red:#e5322d;--cyan:#19c6ff;--pink:#ff3d9a;--navy:#0e1230;--navy-2:#171c44;--amber:#ffb000;--green-led:#6cff7a;--red-led:#ff5a4f;--ok:#1f9d55;--bad:#e5322d;--warn:#ff6a00;--shadow:5px 5px 0 var(--ink);--shadow-sm:3px 3px 0 var(--ink);--radius:14px;--font-display:"Russo One", "Arial Black", sans-serif;--font-body:"Rubik", -apple-system, "Segoe UI", sans-serif;--bg:var(--paper)}*{box-sizing:border-box}html,body{color:var(--fg);font:16px/1.6 var(--font-body);margin:0}body{background-color:var(--paper);background-image:radial-gradient(#15131a17 1.1px,#0000 1.2px);background-size:9px 9px}a{color:#0d55c8}h1,h2,h3,.display{font-family:var(--font-display);letter-spacing:.01em;font-weight:400;line-height:1.15}h1{text-transform:uppercase;margin:.3em 0 .5em;font-size:2.1rem}h2{margin:1.3em 0 .5em;font-size:1.45rem}h3{margin:.8em 0 .3em;font-size:1.12rem}p{margin:.7em 0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:2.5px solid var(--ink);background:var(--card);box-shadow:var(--shadow-sm);border-radius:10px;padding:7px 14px;font-weight:500;transition:transform 60ms,box-shadow 60ms}button:hover:not(:disabled){box-shadow:4px 4px 0 var(--ink);transform:translate(-1px,-1px)}button:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}button:disabled{opacity:.45;cursor:default;box-shadow:none}button.primary,a.button.primary{background:var(--orange);color:var(--ink);border-color:var(--ink);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;box-shadow:var(--shadow-sm);border-radius:10px;padding:9px 18px;font-size:.9rem;text-decoration:none;display:inline-block}button.secondary{background:var(--yellow)}button.link{box-shadow:none;color:#0d55c8;background:0 0;border:none;padding:0 4px;font-weight:500;text-decoration:underline}button.link:hover{box-shadow:none;color:var(--orange);transform:none}input,select,textarea{border:2.5px solid var(--ink);background:#fff;border-radius:10px;width:100%;padding:7px 11px;box-shadow:inset 2px 2px #15131a14}input:focus,select:focus,textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #ff6a0040}textarea{resize:vertical}code{background:var(--paper-2);border:1px solid #15131a33;border-radius:5px;padding:1px 6px}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--bad);margin:8px 0;font-weight:500}.loading{color:var(--muted);font-family:var(--font-display);padding:24px}.row{flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0;display:flex}.tag{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--ink);background:var(--yellow);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:6px;margin-bottom:8px;padding:2px 8px;font-size:.7rem;display:inline-block;transform:rotate(-1.5deg)}.topbar{border-bottom:3px solid var(--ink);z-index:5;background:linear-gradient(180deg, var(--navy) 0%, var(--navy-2) 100%);color:#fff;justify-content:space-between;align-items:center;padding:10px 24px;display:flex;position:sticky;top:0}.topbar .brand{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;background:linear-gradient(180deg, var(--yellow) 0%, var(--orange) 55%, var(--red) 100%);color:#0000;filter:drop-shadow(2px 2px 0 var(--ink));-webkit-background-clip:text;background-clip:text;font-size:1.15rem;font-style:italic;text-decoration:none}.topbar nav{align-items:center;gap:18px;display:flex}.topbar nav a{color:var(--cyan);font-weight:600;text-decoration:none}.topbar nav .muted{color:#b9b4d6}.topbar nav button.link{color:var(--yellow)}.page{max-width:920px;margin:0 auto;padding:24px}.login{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);max-width:420px;box-shadow:8px 8px 0 var(--ink);margin:70px auto;padding:28px 30px;position:relative}.login:before{content:"ВЫПУСК 1 · 1985→2026";background:var(--red);color:#fff;font-family:var(--font-display);border:2px solid var(--ink);letter-spacing:.08em;border-radius:6px;padding:3px 10px;font-size:.7rem;position:absolute;top:-14px;right:18px;transform:rotate(3deg)}.login h1{background:linear-gradient(180deg, var(--yellow) 0%, var(--orange) 50%, var(--red) 100%);color:#0000;filter:drop-shadow(3px 3px 0 var(--ink));-webkit-background-clip:text;background-clip:text;margin:0;font-size:2.6rem;font-style:italic}.login form{flex-direction:column;gap:14px;margin:18px 0;display:flex}.login .field{flex-direction:column;gap:4px;display:flex}.login .field>span{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.modules{counter-reset:mod;padding:0;list-style:none}.module{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);margin:20px 0;padding:18px 22px 16px;position:relative}.module:nth-child(2n){transform:rotate(.3deg)}.module:nth-child(odd){transform:rotate(-.3deg)}.module.locked{opacity:.55;filter:grayscale(.6)}.module.passed{border-color:var(--ok)}.module.passed:after{content:"ЗАЧТЕНО";background:var(--green-led);color:var(--ink);font-family:var(--font-display);border:2px solid var(--ink);border-radius:6px;padding:2px 10px;font-size:.7rem;position:absolute;top:-12px;right:16px;transform:rotate(4deg)}.module .mhead{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.module h2{margin:0;font-size:1.35rem}.module h2 a{color:var(--ink);text-decoration:none}.module h2 a:hover{color:var(--orange)}.module .mhead .muted{font-family:var(--font-display);font-size:.8rem}.progress{align-items:center;gap:12px;margin-top:8px;display:flex}.bar{border:2px solid var(--ink);background:#fff;border-radius:8px;flex:1;height:14px;overflow:hidden}.bar div{background:repeating-linear-gradient(90deg, var(--orange) 0 10px, var(--yellow) 10px 20px);height:100%}.module-page{grid-template-columns:250px minmax(0,1fr);gap:28px;padding:24px;display:grid}.module-page.with-console{grid-template-columns:230px minmax(0,1fr) 580px}.steps{background:var(--navy);color:#e8e6f5;border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);background-image:linear-gradient(#ffffff0a 0 1px,#0000 1px 4px);align-self:start;padding:14px 14px 16px;position:sticky;top:72px}.steps a.muted{color:var(--cyan);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;text-decoration:none}.steps h2{color:var(--yellow);text-transform:uppercase;margin:10px 0 12px;font-size:1.05rem}.steps ol{counter-reset:st;margin:0;padding:0;list-style:none}.steps li{counter-increment:st;border-top:1px solid #ffffff17;padding:0}.steps li button.link{color:#cfcbe6;text-align:left;align-items:center;gap:10px;width:100%;padding:7px 4px;font-weight:400;text-decoration:none;display:flex}.steps li button.link:before{content:counter(st, decimal-leading-zero);font-family:var(--font-display);color:var(--red-led);text-shadow:0 0 6px #ff5a4fcc;letter-spacing:.05em;min-width:2ch;font-size:.85rem}.steps li.on button.link{color:#fff}.steps li.on button.link:before{color:var(--green-led);text-shadow:0 0 8px #6cff7ae6}.steps li button.link:hover{color:var(--yellow)}.steps .small{color:var(--amber);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 6px #ffb00099;margin-top:12px;font-size:.72rem}.steps button.secondary{background:var(--cyan);width:100%;margin-top:10px}.content{max-width:800px}.nav{justify-content:space-between;margin:36px 0;display:flex}.console-pane{background:var(--navy);color:#e8e6f5;border:3px solid var(--ink);border-radius:var(--radius);max-height:calc(100vh - 90px);box-shadow:var(--shadow);align-self:start;padding:14px 16px;position:sticky;top:72px;overflow:auto}.console-pane>.row b{font-family:var(--font-display);color:var(--cyan);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}.console-pane button.link{color:var(--yellow)}.md{font-size:1.02rem}.md h1{font-size:1.9rem}.md h2{border-bottom:3px solid var(--ink);padding-bottom:4px;display:inline-block}.md p{margin:.7em 0}.md blockquote{border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);color:var(--fg);background:#fff;border-radius:18px;margin:1.2em 0;padding:14px 20px;position:relative}.md blockquote:after{content:"";border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);background:#fff;width:22px;height:22px;position:absolute;bottom:-14px;left:34px;transform:skew(30deg)rotate(45deg)}.md blockquote p{margin:.4em 0}.md table,table.data{border-collapse:separate;border-spacing:0;border:2.5px solid var(--ink);background:#fff;border-radius:10px;width:100%;margin:12px 0;font-size:.92rem;overflow:hidden}.md th,.md td,table.data th,table.data td{text-align:left;vertical-align:top;border-bottom:1px solid #15131a40;border-right:1px solid #15131a1f;padding:6px 9px}.md th,table.data th{background:var(--yellow);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:400}table.data tr.partial td{color:var(--muted);font-style:italic}.tablewrap{max-height:360px;overflow:auto}.console-pane .md th,.console-pane table.data th{color:var(--ink)}.console-pane table.data{color:var(--fg)}.task{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);margin:26px 0;padding:18px 22px;position:relative}.task.solved{border-color:var(--ok)}.task.solved:before{content:"РЕШЕНО";background:var(--green-led);font-family:var(--font-display);border:2px solid var(--ink);border-radius:6px;padding:2px 10px;font-size:.7rem;position:absolute;top:-13px;right:18px;transform:rotate(3deg)}.task header{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;padding-bottom:8px;display:flex}.task header h3{text-transform:uppercase;margin:0;font-size:1.2rem}.pts{color:var(--muted);white-space:nowrap;font-size:.8rem;font-family:var(--font-display);letter-spacing:.04em}.answer{margin-top:14px}.options{flex-direction:column;gap:8px;margin:10px 0;display:flex}.option{border:2.5px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:10px;padding:9px 12px;display:flex}.option.on{background:var(--yellow);box-shadow:var(--shadow-sm)}.option input{width:auto;margin-top:5px}.label-table td{padding:5px 10px 5px 0}.label-table select{min-width:280px}.feedback{border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;margin:14px 0;padding:12px 16px;position:relative}.feedback.trap{background:#fff1e6}.feedback.wrong{background:#ffe9e8}.feedback.ok{background:#e8ffe9}.feedback.trap .tag{background:var(--red);color:#fff;transform:rotate(-3deg)scale(1.05)}.feedback.trap .tag:before{content:"БАМ! "}.hints{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;font-size:.92rem;display:flex}.hints .muted{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.hint{border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;margin:12px 0 18px 14px;padding:12px 16px;position:relative}.hint:after{content:"";border-left:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);background:#fff;width:18px;height:18px;position:absolute;top:22px;left:-12px;transform:rotate(45deg)}.hint .tag{background:var(--cyan)}.explanation{border:2.5px dashed var(--ink);background:#fff;border-radius:12px;margin-top:14px;padding:14px 18px}.explanation .tag{background:var(--orange)}.why{font-size:.92rem}.peritem{font-size:.9rem}.peritem .ok{color:var(--ok)}.peritem .bad{color:var(--bad)}.selfcheck{margin:10px 0}.field.check,label.check{align-items:center;gap:8px;display:flex}.field.check input,label.check input{width:auto;box-shadow:none}.console .field{flex-direction:column;gap:3px;font-size:.9rem;display:flex}.console .field>span{color:var(--amber);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.console input,.console select{color:#fff;background:#0a0d22;border-color:#3a3f6e;box-shadow:inset 0 0 0 1px #19c6ff26}.console input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.console .loading{color:var(--cyan);padding:8px 0}.grid2{grid-template-columns:1fr 1fr;gap:8px 12px;display:grid}.span2{flex-direction:column;grid-column:1/-1;gap:6px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:#cfcbe6;box-shadow:none;background:#0a0d22;border:2px solid #3a3f6e;border-radius:14px;padding:3px 11px;font-size:.85rem}.chip.on{background:var(--orange);color:var(--ink);border-color:var(--ink)}.console .primary{background:var(--orange)}.console .muted{color:#b9b4d6}.console .error{color:var(--red-led)}.chart{border:2.5px solid var(--ink);background:#fff;border-radius:10px;width:100%;height:auto;margin:12px 0;padding:6px}.chart .grid{stroke:#15131a2e}.chart .tick{fill:#5a5468;font-size:11px;font-family:var(--font-body)}.console .chart{background:#0a0d22}.console .chart .grid{stroke:#ffffff24}.console .chart .tick{fill:#b9b4d6}.admin .tabs{flex-wrap:wrap;gap:8px;margin:12px 0 18px;display:flex}.admin .tabs button.on{background:var(--orange)}.kpis{flex-wrap:wrap;gap:14px;display:flex}.kpi{background:var(--navy);color:#fff;border:3px solid var(--ink);min-width:150px;box-shadow:var(--shadow-sm);border-radius:12px;padding:10px 18px}.kpi b{font-size:1.6rem;font-family:var(--font-display);color:var(--amber);text-shadow:0 0 8px #ffb00099;display:block}.kpi span{color:#b9b4d6;font-size:.85rem}.card{background:var(--card);border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);border-radius:12px;margin:14px 0;padding:14px 18px}.rubric{flex-direction:column;gap:8px;display:flex}@media (width<=1100px){.module-page,.module-page.with-console{grid-template-columns:1fr}.steps,.console-pane{max-height:none;position:static}}@media (width<=640px){.page,.module-page{padding:14px}h1{font-size:1.6rem}.grid2{grid-template-columns:1fr}}.term{cursor:help;border-bottom:2px dotted var(--orange);text-decoration:none;position:relative}.term:hover,.term:focus,.term.open{background:#ffd23f73;border-bottom-style:solid;outline:none}.term .tip{z-index:20;background:var(--navy);color:#eef;border:2.5px solid var(--ink);width:320px;max-width:80vw;box-shadow:var(--shadow-sm);font:400 .86rem/1.45 var(--font-body);text-transform:none;letter-spacing:0;white-space:normal;border-radius:12px;padding:10px 14px;display:none;position:absolute;bottom:calc(100% + 10px);left:0}.term .tip:after{content:"";background:var(--navy);border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);width:16px;height:16px;position:absolute;bottom:-11px;left:18px;transform:rotate(45deg)}.term .tip b{font-family:var(--font-display);color:var(--yellow);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:.78rem;font-weight:400;display:block}.term:hover .tip,.term:focus .tip,.term.open .tip{display:block}.console-pane .term .tip{color:var(--fg);background:#fff}.console-pane .term .tip:after{background:#fff}.console-pane .term .tip b{color:var(--orange)}.md .dialogue{border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);background:#fff repeating-linear-gradient(135deg,#15131a09 0 6px,#0000 6px 14px);border-radius:12px;margin:1.3em 0;padding:16px 20px 12px 22px;position:relative}.md .dialogue:before{content:"Сцена";background:var(--pink);color:#fff;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;border:2px solid var(--ink);border-radius:6px;padding:2px 10px;font-size:.68rem;position:absolute;top:-12px;left:14px;transform:rotate(-2deg)}.md .dialogue p{border-left:3px solid var(--orange);margin:.45em 0;padding-left:10px}.md .dialogue p:not(:last-child){margin-bottom:.6em}.admin .filterbar{border:2.5px solid var(--ink);background:#fff;border-radius:10px;margin-bottom:14px;padding:6px 12px}.admin .filterbar label.check{width:auto}a.btn{text-decoration:none;display:inline-block}.editor{grid-template-columns:300px 1fr;align-items:start;gap:18px;display:grid}.editor-nav{border:2.5px solid var(--ink);background:#fff;border-radius:10px;max-height:calc(100vh - 90px);padding:10px;position:sticky;top:70px;overflow:auto}.editor-nav ul{margin:8px 0 0;padding:0;list-style:none}.editor-nav ul ul{padding-left:12px}.editor-nav li.group>.muted{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;margin-top:8px;font-size:.68rem;display:block}.editor-nav button.link{text-align:left;border-radius:6px;width:100%;padding:4px 6px;display:block}.editor-nav button.link.on{background:var(--yellow)}.editor-nav .dot{background:var(--orange);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.fieldbox.overridden{border-color:var(--orange)}.fieldbox .badge{background:var(--orange);color:#fff;font-size:.75rem;font-family:var(--font-display);border-radius:6px;padding:1px 8px}.fieldbox textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem}.optrow{align-items:flex-start}.optrow code{min-width:90px;padding-top:8px}.split{grid-template-columns:1fr 1fr;gap:12px;display:grid}.preview{border:2.5px solid var(--ink);background:#fff;border-radius:10px;max-height:70vh;padding:8px 14px;overflow:auto}@media (width<=900px){.editor{grid-template-columns:1fr}.editor-nav{max-height:none;position:static}}.feedback-box{margin:18px 0 6px}.feedback-toggle{color:var(--muted);font-size:.9rem}.feedback-box .card{border-color:var(--orange)}footer.support{text-align:center;padding:14px 24px 28px}.signal.done{opacity:.55}pre.small{white-space:pre-wrap;background:#fff;border:1px solid #15131a40;border-radius:8px;max-height:240px;padding:8px;font-size:.8rem;overflow:auto}.card.cert{border-color:var(--orange);background:#fff8e8}.feedback.bad{color:#b3261e}.howto summary{cursor:pointer;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;font-size:.9rem}.howto .md h2{display:none}.howto .md{margin-top:10px}.md img{max-width:100%;height:auto;box-shadow:var(--shadow-sm);border-radius:14px;margin:18px auto;display:block}.md table img{width:56px;height:56px;box-shadow:none;border-radius:50%;margin:0}.md td:has(>img){vertical-align:middle;width:64px}.dialogue p.with-avatar{min-height:42px;padding-left:54px;position:relative}.dialogue img.avatar{width:42px;height:42px;box-shadow:none;border-radius:50%;margin:0;position:absolute;top:-2px;left:0}.mermaid-box{border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;margin:18px 0;padding:12px 16px;overflow-x:auto}.mermaid-box svg{max-width:none;height:auto;margin:0 auto;display:block}.mermaid-box .node rect,.mermaid-box .node polygon,.mermaid-box .node circle{stroke-width:2.5px!important}.mermaid-box .edgeLabel{font-size:13px}.hero{object-fit:cover;object-position:center 40%;border:3px solid var(--ink);width:100%;max-height:300px;box-shadow:var(--shadow-sm);border-radius:16px;margin:0 0 18px;display:block}.login .hero{max-height:220px}
