@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/golos-text-cyrillic-ext-wght-normal.3bf69esvr9_f7.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/golos-text-cyrillic-wght-normal.3hv5e6a_c0lmc.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/golos-text-latin-ext-wght-normal.2wq8zvhyuy_u8.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(../media/golos-text-latin-wght-normal.0hbkaj79v86la.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#fbfcfe;--grid:#e3ebf7;--surface:#fff;--ink:#1f3f9a;--ink-soft:#e8eefb;--ink-text:#fff;--margin:#d6403a;--text:#1b2333;--muted:#5c6678;--line:#d3dbe8;--ok:#1d7a46;--ok-bg:#e5f4ea;--danger:#b42318;--danger-bg:#fdeceb;--warn-bg:#fff4dc;--radius-sm:6px;--radius:10px;--cell:24px;--font:"Golos Text Variable", "Golos Text", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#1d2723;--grid:#26322d;--surface:#24302b;--ink:#9cc0ff;--ink-soft:#2d3f52;--ink-text:#0f1714;--margin:#ff8a7a;--text:#eef2ee;--muted:#a8b5ad;--line:#3a4943;--ok:#8fdcab;--ok-bg:#1f3a2a;--danger:#ffb4a8;--danger-bg:#43231f;--warn-bg:#3d3520;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--text);font:17px/1.55 var(--font);font-feature-settings:"tnum" 1;background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:var(--cell) var(--cell);min-height:100vh;margin:0}a{color:var(--ink);text-underline-offset:3px}:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:4px}main{max-width:1120px;margin:0 auto;padding:24px 16px 96px}h1{letter-spacing:-.015em;margin:0 0 12px;font-size:2rem;font-weight:700;line-height:1.15}h2{margin:32px 0 12px;font-size:1.25rem;font-weight:650;line-height:1.3}h3{margin:0;font-size:1.05rem;font-weight:600}p{max-width:70ch;margin:0 0 12px}.muted{color:var(--muted);font-size:.94rem}@media (max-width:600px){body{font-size:16px}h1{font-size:1.6rem}}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;gap:16px;padding:10px 16px;display:flex;position:sticky;top:0}.topbar nav{flex-wrap:wrap;align-items:center;gap:16px;font-size:.95rem;display:flex}.brand{letter-spacing:.02em;color:var(--text);align-items:center;gap:8px;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex}.brand:before{content:"";background:linear-gradient(var(--margin), var(--margin)) 5px 0 / 2px 100% no-repeat, var(--ink);border-radius:4px;width:18px;height:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:460px;margin:24px auto;padding:24px}.card.wide{max-width:none}form.stack{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:.95rem;font-weight:600}.field input,.field select,.field textarea,.inline input,.inline select,.filters input,.filters select{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--text);min-height:44px;padding:10px 12px;font-size:1rem}.field input[aria-invalid=true]{border-color:var(--danger)}.field .error,.error{color:var(--danger);font-size:.9rem}.field .hint{color:var(--muted);font-size:.86rem}.checkbox{align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.checkbox input{width:18px;height:18px;margin-top:5px}.roles{border:0;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;display:grid}.roles legend{margin-bottom:6px;font-size:.95rem;font-weight:600}.roles label{border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center;cursor:pointer;padding:12px;position:relative}.roles input{opacity:0;position:absolute}.roles label:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--ink-soft)}.roles label:has(input:focus-visible){outline:3px solid var(--ink)}button,.button{font:inherit;border-radius:var(--radius-sm);cursor:pointer;background:var(--ink);min-height:44px;color:var(--ink-text);text-align:center;border:0;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}button:disabled{opacity:.6;cursor:progress}button.secondary,.button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--line)}button.danger{background:var(--danger);color:#fff}button.small,.button.small{min-height:36px;padding:6px 12px;font-size:.9rem}button.link{color:var(--ink);background:0 0;min-height:0;padding:0;font-weight:400}.notice{border-radius:var(--radius-sm);padding:12px 14px;font-size:.95rem}.notice.error{background:var(--danger-bg);color:var(--danger)}.notice.ok{background:var(--ok-bg);color:var(--ok)}.notice.warn{background:var(--warn-bg)}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.filters input[type=search]{flex:220px}.inline{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.93rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 8px}th{color:var(--muted);white-space:nowrap;font-weight:600}.badge{border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.8rem;display:inline-block}.badge.active,.badge.own,.badge.licensed{background:var(--ok-bg);color:var(--ok);border-color:#0000}.badge.blocked,.badge.suspended,.badge.copy{background:var(--danger-bg);color:var(--danger);border-color:#0000}.badge.pending,.badge.check{background:var(--warn-bg);border-color:#0000}details summary{cursor:pointer;color:var(--ink)}.actions{flex-direction:column;gap:8px;min-width:220px;display:flex}.pager{align-items:center;gap:12px;margin-top:16px;display:flex}@media (max-width:560px){.roles{grid-template-columns:1fr}.card{padding:18px}}.catalog{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.course-tile{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;padding:20px 20px 18px 36px;text-decoration:none;display:flex;position:relative}.course-tile:before{content:"";background:var(--margin);opacity:.55;width:2px;position:absolute;top:0;bottom:0;left:20px}.course-tile:hover{border-color:var(--ink)}.course-tile .grade{color:var(--ink);letter-spacing:-.03em;font-size:2.6rem;font-weight:800;line-height:1}.course-tile .grade small{color:var(--muted);letter-spacing:0;margin-left:4px;font-size:1rem;font-weight:600}.ruler{--n:10;margin:8px 0 4px;position:relative}.ruler-track{grid-template-columns:repeat(var(--n), 1fr);border-bottom:2px solid var(--text);align-items:end;height:26px;display:grid}.ruler-tick{border-left:2px solid var(--line);height:10px;position:relative}.ruler-tick:nth-child(5n+1){height:18px}.ruler-tick.done{border-left-color:var(--ink)}.ruler-tick.done:after{content:"";background:var(--ink);opacity:.85;height:6px;position:absolute;bottom:0;left:-2px;right:0}.ruler-tick.current{border-left-color:var(--margin);height:26px}.ruler-legend{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:.85rem;display:flex}.ruler-legend strong{color:var(--text)}.course-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;margin-bottom:8px;display:grid}.course-head .continue{align-self:center}@media (max-width:720px){.course-head{grid-template-columns:1fr}}.chapter{margin-top:28px}.chapter>h2{align-items:baseline;gap:12px;margin:0 0 10px;display:flex}.chapter>h2 .num{color:var(--margin);min-width:1.6em;font-weight:800}.lesson-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:0;list-style:none}.lesson-list li+li{border-top:1px solid var(--line)}.lesson-row{color:inherit;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:14px 16px;text-decoration:none;display:grid}a.lesson-row:hover{background:var(--ink-soft)}.lesson-row .meta{color:var(--muted);white-space:nowrap;font-size:.88rem}.mark{border:2px solid var(--line);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.mark.done{background:var(--ink);border-color:var(--ink)}.mark.done:after{content:"";border:2px solid var(--ink-text);border-top:0;border-right:0;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.mark.started{border-color:var(--ink)}.mark.started:after{content:"";background:var(--ink);border-radius:50%;width:8px;height:8px}.locked{color:var(--muted)}.crumbs{color:var(--muted);flex-wrap:wrap;gap:6px;margin-bottom:8px;font-size:.9rem;display:flex}.crumbs a{color:var(--muted)}.lesson{grid-template-columns:64px minmax(0,1fr);gap:0;display:grid}.lesson-margin{border-right:2px solid var(--margin);flex-direction:column;align-items:center;gap:6px;padding-top:4px;display:flex}.task-num{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:50%;min-height:0;padding:0;font-size:1rem;font-weight:700}.task-num:hover{color:var(--text);border-color:var(--line)}.task-num[aria-current=step]{color:var(--margin);border-color:var(--margin);background:var(--surface)}.task-num.seen{color:var(--ink)}.lesson-body{min-width:0;padding-left:24px}.lesson-goal{max-width:62ch;font-size:1.05rem}.task-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin:20px 0 10px;display:flex}.task-head h2{margin:0}.ggb-frame{border:1px solid var(--line);border-radius:var(--radius);background:#fff;width:100%;position:relative;overflow:hidden}.ggb-scale{width:100%}.ggb-loading{color:#5c6678;place-items:center;font-size:.95rem;display:grid;position:absolute;inset:0}.task-nav{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:16px;display:flex}.finish{border:1px dashed var(--ink);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding:20px;display:flex}.lesson-pager{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px;font-size:.95rem;display:flex}@media (max-width:720px){.lesson{grid-template-columns:1fr}.lesson-margin{border-right:0;border-bottom:2px solid var(--margin);flex-direction:row;justify-content:flex-start;margin-bottom:8px;padding:0 0 8px;overflow-x:auto}.task-num{flex:0 0 40px}.lesson-body{padding-left:0}}@media (prefers-reduced-motion:no-preference){.ruler-tick.done:after{animation:.6s ease-out both fill;animation-delay:calc(var(--i,0) * 25ms)}@keyframes fill{0%{transform-origin:0;transform:scaleX(0)}to{transform:scaleX(1)}}}[hidden]{display:none!important}@media (max-width:600px){.topbar{padding:8px 12px}.topbar nav{flex-wrap:nowrap;gap:10px;font-size:.9rem}.topbar nav .button.small{padding-inline:10px}.topbar nav .muted{display:none}.lesson-row{grid-template-columns:28px minmax(0,1fr);grid-template-areas:"mark title"".meta";row-gap:2px}.lesson-row .mark{grid-area:mark}.lesson-row>span:nth-child(2){grid-area:title}.lesson-row .meta{grid-area:meta}.task-nav{flex-wrap:nowrap}.task-nav button{flex:1 1 0;padding-inline:10px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.class-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:16px;margin-top:16px;display:grid}@media (max-width:820px){.class-grid{grid-template-columns:minmax(0,1fr)}}.class-code{letter-spacing:.08em;color:var(--ink);font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;margin:4px 0 8px;font-size:2.4rem;font-weight:800}.code-inline{letter-spacing:.06em;color:var(--text)}.course-tile .grade:not(:has(small)){font-size:1.7rem}.journal-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}table.journal{font-size:.92rem}table.journal th,table.journal td{border-bottom:1px solid var(--line)}table.journal .sticky{background:var(--surface);z-index:1;min-width:180px;color:var(--text);white-space:normal;font-weight:600;position:sticky;left:0}table.journal .j-head{white-space:normal;vertical-align:bottom;min-width:120px;max-width:160px}table.journal .j-head>span,table.journal .j-head>a{display:block}table.journal .j-title{color:var(--text);margin-bottom:4px;font-weight:600;line-height:1.25}.j-cell{text-align:center;font-size:1.05rem;font-weight:800}td.j-cell.done{color:var(--ok);background:var(--ok-bg)}td.j-cell.late{color:var(--ok);background:var(--warn-bg)}td.j-cell.started{color:var(--ink)}td.j-cell.overdue{color:var(--danger);background:var(--danger-bg)}.j-total{text-align:center;white-space:nowrap;font-weight:600}.j-legend{flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;padding:10px 12px;display:flex}.j-legend .j-cell{border-radius:4px;place-items:center;width:24px;height:24px;display:inline-grid}.j-legend .done{color:var(--ok);background:var(--ok-bg)}.j-legend .late{color:var(--ok);background:var(--warn-bg)}.j-legend .started{color:var(--ink)}.j-legend .overdue{color:var(--danger);background:var(--danger-bg)}.m-good{color:var(--ok);background:var(--ok-bg)}.m-mid{color:#8a5a00;background:var(--warn-bg)}.m-bad{color:var(--danger);background:var(--danger-bg)}table.journal tfoot th,table.journal tfoot td{border-bottom:none;border-top:2px solid var(--line)}.class-tools{flex-wrap:wrap;gap:8px;margin:12px 0 0;display:flex}.who-list{columns:2 220px;margin:6px 0 0;padding-left:1.2em}.who-list li{break-inside:avoid;margin:2px 0}.due{white-space:nowrap;font-size:.86rem}.due.overdue{color:var(--danger);font-weight:600}.due.soon{color:var(--margin);font-weight:600}.hero{max-width:760px;padding:40px 0 8px}.hero h1{letter-spacing:-.025em;margin-bottom:16px;font-size:clamp(2rem,5vw,3.2rem);line-height:1.08}.hero-lead{color:var(--muted);max-width:58ch;margin-bottom:24px;font-size:1.15rem}.hero-ruler{margin-top:48px}.hero-ruler h2{color:var(--muted);margin:0 0 12px;font-size:1rem;font-weight:600}.program{border-bottom:3px solid var(--text);margin:0;padding:0;list-style:none;display:flex}.program li{border-left:2px solid var(--text);flex-direction:column;flex-basis:0;justify-content:flex-end;gap:6px;min-width:118px;min-height:108px;padding:10px 10px 14px;display:flex;position:relative}.program li:last-child{border-right:2px solid var(--text)}.program li:nth-child(odd){background-color:var(--ink-soft)}.program-name{overflow-wrap:break-word;font-size:.92rem;font-weight:600;line-height:1.25}.program-count{color:var(--ink);font-size:1.6rem;font-weight:800;line-height:1}@media (max-width:720px){.program{border-bottom:0;border-left:3px solid var(--text);flex-direction:column}.program li{border-left:0;border-top:2px solid var(--text);flex-direction:row;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:0;padding:10px 12px;flex:none!important}.program li:last-child{border-right:0;border-bottom:2px solid var(--text)}}.roles-explain{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 40px;margin-top:48px;display:grid}.roles-explain>div{border-left:2px solid var(--margin);padding-left:16px}.roles-explain h2{margin:0 0 8px}@media (max-width:820px){.roles-explain{grid-template-columns:minmax(0,1fr)}}.editor-list{counter-reset:none}.editor-row{grid-template-columns:32px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.editor-row+.editor-row{border-top:1px solid var(--line)}.editor-num{color:var(--margin);text-align:center;font-weight:800}.editor-main{flex-direction:column;gap:4px;min-width:0;display:flex}.editor-main input{font:inherit;border-radius:var(--radius-sm);color:var(--text);background:0 0;border:1px solid #0000;min-height:36px;padding:6px 8px}.editor-main input:hover,.editor-main input:focus{border-color:var(--line);background:var(--paper)}.editor-tools{flex-wrap:nowrap}.field textarea{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--text);resize:vertical;padding:10px 12px}@media (max-width:640px){.editor-row{grid-template-columns:24px minmax(0,1fr)}.editor-row .badge,.editor-row .editor-tools{grid-column:2;justify-self:start}}.editor-main>.muted{padding-left:9px}.theory{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ink);border-radius:var(--radius);max-width:760px;margin:16px 0 8px;padding:16px 20px}.theory .theory-h{margin:4px 0 8px;font-size:1.05rem}.theory p,.theory li{max-width:68ch}.theory ul,.theory ol{margin:0 0 12px;padding-left:22px}.theory-rule{border:2px solid var(--margin);border-radius:var(--radius-sm);padding:10px 14px;font-weight:500}.theory>:last-child{margin-bottom:0}.editor-main textarea{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);width:100%;color:var(--text);padding:8px 10px;font-size:.95rem}.codes-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 16px;margin:0;padding-left:2.2em;display:grid}.codes-grid code{letter-spacing:.06em;font-size:1rem;font-weight:700}.stage{margin-top:28px;scroll-margin-top:16px}.stage h2{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.stage h2 .muted{font-size:1rem;font-weight:500}.lang-switch button{border:1px solid var(--line,#cfd8e3);border-radius:6px;padding:2px 8px;font-weight:700;text-decoration:none}@media (max-width:400px){.brand-name{display:none}}@media (max-width:520px){.topbar .hide-narrow{display:none}}.task-kind{flex-wrap:wrap;align-items:center;gap:6px 12px;margin:4px 0 10px;font-size:.9rem;display:flex}.task-num.solved{background:var(--ok-bg);color:var(--ok);border-color:var(--ok);position:relative}.task-num.solved:after{content:"✓";font-size:.75rem;font-weight:800;position:absolute;top:-6px;right:-4px}.task-feedback{min-height:1.6em;margin:8px 0 0;font-weight:600;transition:opacity .2s}.task-feedback:empty{opacity:0}.task-feedback.ok{color:var(--ok)}.task-feedback.ok:before{content:"✓ "}.task-feedback.wrong{color:var(--danger)}.task-feedback.score{color:var(--ink)}@media (prefers-reduced-motion:no-preference){.task-feedback.ok{animation:.35s ease-out pop}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}}.j-score{color:var(--muted);margin-top:2px;font-size:.72rem;font-weight:700;line-height:1;display:block}.parent-code{letter-spacing:.18em;font-variant-numeric:tabular-nums;margin:6px 0;font-size:2rem;font-weight:800}.child-card h3{margin:18px 0 8px;font-size:1.05rem}.week-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0;display:grid}.week-stats>div{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px}.week-stats strong{color:var(--ink);font-size:1.6rem;line-height:1.1;display:block}.week-stats span{color:var(--muted);font-size:.85rem}.week-stats .warn strong{color:var(--danger)}.bar{background:var(--line);border-radius:3px;max-width:320px;height:6px;margin-top:6px;display:block;overflow:hidden}.bar>span{background:var(--ink);border-radius:3px;height:100%;display:block}@media (max-width:520px){.week-stats{grid-template-columns:1fr}}.motivation{gap:12px;margin:8px 0 20px;display:grid}.streak{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}.streak strong{color:var(--muted);text-align:center;min-width:1.4em;font-size:2.2rem;line-height:1}.streak.today strong{color:var(--margin)}.streak span{font-weight:700}.streak small{color:var(--muted);font-size:.86rem;font-weight:400;display:block}.badges{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.badge-stamp{border:1px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;font-size:.9rem;font-weight:600;display:inline-flex}.badge-stamp small{color:var(--muted);font-size:.78rem;font-weight:400;display:block}.badge-stamp .stamp{border:2px solid var(--ink);min-width:30px;height:30px;color:var(--ink);border-radius:999px;place-items:center;padding:0 4px;font-size:.8rem;font-weight:800;display:inline-grid;transform:rotate(-8deg)}.badge-stamp.next{color:var(--muted);border-style:dashed}.badge-stamp.next .stamp{border-color:var(--line);color:var(--muted);transform:none}.leaderboard h3{margin:8px 0 6px;font-size:1rem}.leaderboard ol{gap:4px;max-width:460px;margin:0;padding:0;list-style:none;display:grid}.leaderboard li{background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;padding:6px 10px;display:grid}.leaderboard li.me{border-color:var(--ink);font-weight:700}.leaderboard .place{color:var(--ink);font-weight:800}.leaderboard.teacher{margin:24px 0}.mock-timer{z-index:5;border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 14px;margin-bottom:10px;padding:8px 12px;display:flex;position:sticky;top:58px}.mock-timer strong{font-variant-numeric:tabular-nums;color:var(--ink);font-size:1.4rem}.mock-timer.urgent strong{color:var(--danger)}.mock-timer button{margin-left:auto}.mock-review{gap:4px;margin:0;padding:0;list-style:none;display:grid}.mock-review li{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;padding:6px 10px;display:grid}.mock-review li.ok>span:first-child{color:var(--ok);font-weight:800}.legal .theory{box-shadow:none;background:0 0;border:none;padding:0}.legal .theory .theory-h{margin-top:22px}.buy{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.center{text-align:center}.certificate{text-align:center;background:var(--surface);border:2px solid var(--ink);outline:6px double var(--ink-soft);outline-offset:-14px;border-radius:var(--radius);max-width:900px;margin:16px auto 0;padding:48px 40px}.certificate h1{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:8px 0 16px;font-size:2.6rem}.cert-brand{letter-spacing:.2em;color:var(--margin);margin:0;font-weight:800}.cert-lead{color:var(--muted);margin:4px 0}.cert-name{border-bottom:1px solid var(--line);margin:8px 0 12px;padding:0 24px 6px;font-size:2rem;font-weight:700;display:inline-block}.cert-course{color:var(--ink);margin:6px 0 14px;font-size:1.4rem;font-weight:600}.cert-code{overflow-wrap:anywhere;margin-top:28px;font-size:.9rem}.cert-facts{grid-template-columns:max-content 1fr;gap:6px 16px;margin:16px 0 0;display:grid}.cert-facts dt{color:var(--muted)}.cert-facts dd{margin:0;font-weight:600}@media (max-width:600px){.certificate{padding:32px 18px}.certificate h1{font-size:1.8rem}.cert-name{padding:0 8px 6px;font-size:1.5rem}}@media print{@page{size:A4 landscape;margin:12mm}.topbar,.no-print{display:none!important}body{background:#fff}main{max-width:none;padding:0}.certificate{box-shadow:none;margin:0 auto}}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.plans{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:20px 0;display:grid}.plan{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:20px;display:flex}.plan.accent{border:2px solid var(--ink)}.plan h2{margin:0 0 4px;font-size:1.25rem}.plan .price{color:var(--ink);margin:6px 0 2px;font-size:1.6rem;font-weight:800}.plan ul{flex:1;margin:12px 0;padding-left:1.2em}.plan li{margin:4px 0}.plan .button{align-self:flex-start}.request-form .inline{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;width:100%;display:grid}
