@font-face{font-family:PT Serif;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pt-serif-cyrillic-700-normal-DvVvs_4R.woff2)format("woff2"),url(/assets/pt-serif-cyrillic-700-normal-BeN6CUoB.woff)format("woff")}@font-face{font-family:PT Serif;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pt-serif-latin-700-normal-Bsuo9jes.woff2)format("woff2"),url(/assets/pt-serif-latin-700-normal-BnJLcJ8K.woff)format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pt-sans-cyrillic-400-normal-BgFH0IXl.woff2)format("woff2"),url(/assets/pt-sans-cyrillic-400-normal-DR9of8nb.woff)format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pt-sans-latin-400-normal-Cwy9XeGQ.woff2)format("woff2"),url(/assets/pt-sans-latin-400-normal-v0jdzXSm.woff)format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pt-sans-cyrillic-700-normal-TNhnPAH_.woff2)format("woff2"),url(/assets/pt-sans-cyrillic-700-normal-DzVkanQm.woff)format("woff")}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pt-sans-latin-700-normal-DmHhLLdt.woff2)format("woff2"),url(/assets/pt-sans-latin-700-normal-CyjbL83V.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff")}:root{--bg:#fff;--mist:#eef3f8;--surface:#fff;--ink:#10233f;--muted:#566377;--line:#d6dfea;--band:#0d2a52;--on-band:#dce6f2;--foot:#10233f;--on-foot:#b9c6d8;--blue:#1560a8;--link:#1560a8;--btn-fg:#fff;--green:#1e9a5a;--yel:#ffc425;--teal:#12857f;--navy:#0d2a52;--graphite:#3a4656;--orbit:#c3d0df;--chip:#e5eef8;--soon:#e1f3e8;--soon-fg:#13703f;--on-yel:#10233f;--blue-hover:color-mix(in srgb, var(--blue) 86%, var(--ink));--blue-active:color-mix(in srgb, var(--blue) 74%, var(--ink));--danger:#b42318;--danger-soft:#fdecea;--danger-hover:color-mix(in srgb, var(--danger) 86%, var(--ink));--on-danger:#fff;--mark-plate:#fff;--r-btn:4px;--r-card:6px;--r-icon:8px;--r-node:10px;--r-pill:999px;--gutter:40px;--header-h:7.75rem;--font-serif:"PT Serif", Georgia, serif;--font-sans:"PT Sans", Arial, sans-serif;--font-mono:"JetBrains Mono", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:100%;line-height:1.55}:root[data-mode=dark]{--bg:#0a1628;--mist:#0e213c;--surface:#11284a;--ink:#e6edf6;--muted:#9aabc2;--line:#24446f;--band:#06101f;--on-band:#c9d6e7;--foot:#06101f;--on-foot:#93a5bd;--blue:#4a95e0;--link:#7db6ee;--btn-fg:#04162a;--green:#33c27a;--yel:#ffc425;--teal:#2eb8ae;--navy:#a9c2e2;--graphite:#c5cfdb;--orbit:#24446f;--chip:#17345c;--soon:#143a28;--soon-fg:#5fd89a;--blue-hover:color-mix(in srgb, var(--blue) 86%, var(--ink));--blue-active:color-mix(in srgb, var(--blue) 72%, var(--ink));--danger:#ff8a80;--danger-soft:#3a1a1a;--on-danger:#04162a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overflow-x:clip}body{background:var(--bg);color:var(--ink);margin:0;transition:background-color .25s,color .25s}#app{flex-direction:column;min-height:100dvh;display:flex}img{max-width:100%}.container{width:100%;max-width:calc(1200px + 2 * var(--gutter));padding-inline:max(var(--gutter), env(safe-area-inset-left)) max(var(--gutter), env(safe-area-inset-right));margin:0 auto}@media (width<=699px){:root{--gutter:16px}}main.container{flex:1;padding-block:2.5rem 3.75rem}main:focus{outline:none}.narrow{max-width:28rem}.band{background:var(--mist);border-bottom:1px solid var(--line);margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%)}main.container>.band:first-child{margin-top:-2.5rem}.skip-link{z-index:100;background:var(--blue);color:var(--btn-fg);border-radius:var(--r-btn);padding:.6rem 1rem;font-weight:700;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}h1,h2,h3{font-family:var(--font-serif);color:var(--ink);text-wrap:balance;font-weight:700}h1{margin:0 0 1rem;font-size:clamp(1.75rem,1.2rem + 1.9vw,2.75rem);line-height:1.15}h2{margin:0 0 .75rem;font-size:clamp(1.5rem,1.3rem + .7vw,2rem);line-height:1.2}h3{margin:0 0 .5rem;font-size:1.25rem;line-height:1.25}h4{margin:0 0 .5rem;font-size:1rem;font-weight:700}p{max-width:65ch}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}.md{max-width:65ch}.label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--green);margin:0 0 .75rem;font-size:.8125rem;font-weight:700;line-height:1.3}.next-event-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--green);font-size:.75rem;font-weight:700}.muted{color:var(--muted)}.success{color:var(--soon-fg)}.center{text-align:center}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.5rem;height:1.5rem}.crc-mark{background:var(--mark-plate);border-radius:var(--r-icon);flex:none;place-items:center;display:inline-grid}.crc-mark img{display:block}.app-header{z-index:20;background:var(--bg);border-bottom:3px solid var(--blue);transition:background-color .25s;position:sticky;top:0}.header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools""nav nav";align-items:center;column-gap:1.5rem;padding-top:.875rem;display:grid}.brand{min-width:0;color:var(--ink);grid-area:brand;justify-self:start;align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand-text{flex-direction:column;gap:.15rem;min-width:0;line-height:1.15;display:inline-flex}.brand-name{font-family:var(--font-serif);color:var(--ink);font-size:1.1875rem;font-weight:700}.brand-text small{color:var(--muted);font-size:.78125rem}.service-nav{scrollbar-width:none;grid-area:nav;align-items:stretch;gap:1.75rem;min-width:0;margin:.5625rem -5px 0;padding:5px;display:flex;overflow-x:auto}.service-nav::-webkit-scrollbar{display:none}.service-nav a{white-space:nowrap;min-height:2.75rem;color:var(--ink);border-top:2px solid #0000;border-bottom:2px solid #0000;align-items:center;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.service-nav a:hover,.service-nav a.router-link-active{border-bottom-color:var(--green)}.header-tools{grid-area:tools;align-items:center;gap:.75rem;display:flex}.site-link{white-space:nowrap;color:var(--link);font-weight:700;text-decoration:none}.site-link:hover{text-decoration:underline}.header-login{white-space:nowrap;align-items:center;min-height:2.75rem;font-weight:700;display:inline-flex}.theme-toggle,.icon-button{min-height:2.75rem;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-pill);background:0 0;gap:.45rem;padding:.35rem .9rem;font-size:.875rem;font-weight:700}.icon-button{width:2.75rem;padding:0}.theme-toggle:hover:not(:disabled),.icon-button:hover:not(:disabled),.theme-toggle:active:not(:disabled),.icon-button:active:not(:disabled){background:var(--mist);border-color:var(--line);color:var(--ink)}.theme-toggle .icon,.icon-button .icon{width:1.25rem;height:1.25rem}.profile-link{align-items:center;min-height:2.75rem;display:inline-flex}.profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:14rem;overflow:hidden}.user-menu{position:relative}.user-menu>summary{cursor:pointer;border-radius:var(--r-btn);gap:.5rem;padding:0 .25rem;font-weight:700;list-style:none}.user-menu>summary::-webkit-details-marker{display:none}.user-menu>summary:after{content:"▾";color:var(--muted);font-size:.75em}.user-menu>summary:hover{color:var(--link)}@media (width<=899px){.brand-text small{display:none}}@media (width<=699px){.site-link{font-size:.875rem}}@media (width<=519px){.header-inner{column-gap:.75rem}.theme-toggle{width:2.75rem;padding:0}.theme-toggle-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand-name{font-size:1rem}.profile-name{max-width:5.5rem}.brand,.header-tools{gap:.5rem}.site-link{display:none}}@media (width<=399px){.crc-mark{width:40px!important;height:40px!important}.crc-mark img{width:34px;height:34px}}.spacer{flex:1}.subnav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;display:flex}.subnav a{min-height:2.75rem;color:var(--ink);border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;font-weight:700;text-decoration:none;display:inline-flex}.subnav a:hover,.subnav a.router-link-active{border-bottom-color:var(--green)}.banner{background:var(--danger);color:var(--on-danger);text-align:center;padding:.5rem 1rem}.banner .link-button{color:inherit}.app-footer{background:var(--foot);color:var(--on-foot);margin-top:auto;padding-block:3.25rem 1.5rem;transition:background-color .25s}.footer-grid{grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:2rem;display:grid}.footer-brand{align-content:start;gap:.75rem;display:grid}.footer-name{font-family:var(--font-serif);color:var(--on-foot);margin:0;font-size:1.1875rem;font-weight:700}.footer-about{margin:0;font-size:.875rem}.footer-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--on-foot);margin:0 0 .75rem;font-size:.8125rem;font-weight:700}.footer-col ul{gap:.5rem;margin:0;padding:0;font-size:.9375rem;list-style:none;display:grid}.app-footer a{color:var(--on-foot);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--on-foot) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--on-foot) 40%, transparent)}.app-footer a:hover{text-decoration-color:currentColor}.footer-bottom{border-top:1px solid color-mix(in srgb, var(--on-foot) 25%, transparent);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:2.5rem;padding-top:1.25rem;font-size:.8125rem;display:flex}@media (width<=899px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=559px){.footer-grid{grid-template-columns:1fr}}form{gap:1rem;display:grid}.field{gap:.3rem;display:grid}label{font-weight:700}input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:var(--r-btn);background:var(--surface);min-height:2.75rem;color:var(--ink);width:100%;padding:.5rem .75rem;transition:border-color .15s,background-color .25s,color .25s}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--blue)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--blue)}input[type=file]{border-style:dashed}fieldset{border:1px solid var(--line);border-radius:var(--r-card);gap:.5rem;padding:.75rem 1rem;display:grid}legend{padding:0 .25rem;font-weight:700}.checkbox{align-items:center;gap:.5rem;font-weight:400;display:flex}.checkbox input{width:auto}.hint{color:var(--muted);font-size:.875rem}.field-error,.error-message{color:var(--danger)}.error-message{margin:0}.filters{grid-template-columns:2fr 1fr 1fr;align-items:end;margin-bottom:1.25rem}.filters label{gap:.3rem;display:grid}@media (width<=640px){.filters{grid-template-columns:1fr}}button,a.button{font:inherit;border-radius:var(--r-btn);border:1px solid var(--blue);background:var(--blue);min-height:2.75rem;color:var(--btn-fg);cursor:pointer;justify-content:center;justify-self:start;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled),a.button:hover{background:var(--blue-hover);border-color:var(--blue-hover)}button:active:not(:disabled),a.button:active{background:var(--blue-active);border-color:var(--blue-active)}button:disabled{opacity:.45;cursor:not-allowed}button[aria-busy=true]{cursor:progress}button.secondary,a.button.secondary{color:var(--link);border-color:var(--link);background:0 0}button.secondary:hover:not(:disabled),a.button.secondary:hover{background:var(--chip)}button.danger{background:var(--danger);border-color:var(--danger);color:var(--on-danger)}button.danger:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}button.icon{min-height:2.25rem;color:var(--ink);border-color:var(--line);background:0 0;padding:.2rem .75rem;font-weight:400}button.icon:hover:not(:disabled){background:var(--mist);border-color:var(--line)}.link-button{color:var(--link);background:0 0;border:none;border-radius:0;min-height:0;padding:0;font-weight:700;text-decoration:underline}.link-button:hover:not(:disabled),.link-button:active:not(:disabled){background:0 0;border:none;text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}:focus:not(:focus-visible){outline:none}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:1.5rem;padding:1.5rem}.panel>*+*{margin-top:.75rem}.panel>h2:first-child,.panel>h3:first-child{margin-top:0}.props{grid-template-columns:max-content 1fr;gap:.35rem 1.25rem;display:grid}.props dt{color:var(--muted)}.props dd{margin:0}.table-scroll{overflow-x:auto}table{border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.6rem .75rem}tr:last-child>td{border-bottom:none}th{background:var(--mist);color:var(--muted);font-size:.875rem;font-weight:700}td{font-variant-numeric:tabular-nums}table[aria-busy=true]{opacity:.6}.pagination{align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lead{color:var(--muted);max-width:58ch;font-size:1.125rem;line-height:1.55}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;display:flex}.badge{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);margin-left:.5rem;padding:0 .6rem;font-size:.8125rem;line-height:1.6;display:inline-block}.chip{border-radius:var(--r-pill);background:var(--chip);color:var(--link);padding:.15rem .65rem;font-size:.75rem;font-weight:700;display:inline-block}.notice{background:var(--mist);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:var(--r-card);gap:.5rem;margin-bottom:1rem;padding:.85rem 1.1rem;display:grid}.search{max-width:520px;margin-bottom:1.25rem}.mono,pre.code,code{font-family:var(--font-mono);font-size:.8125rem}.mono,time{font-variant-numeric:tabular-nums}progress{width:100%;max-width:320px;accent-color:var(--blue)}.cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);flex-direction:column;gap:.5rem;padding:1.5rem;transition:border-color .15s,background-color .25s;display:flex}.card:hover{border-color:var(--muted)}.card :is(h2,h3){font-family:var(--font-serif);margin:0;font-size:1.25rem;font-weight:700;line-height:1.25}.card :is(h2,h3) a{color:var(--ink);text-decoration:none}.card :is(h2,h3) a:hover{color:var(--link);text-decoration:underline}.card p{margin:.25rem 0}.outline-section h3{margin-bottom:.25rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.learn-layout{grid-template-columns:280px 1fr;align-items:start;gap:2rem;display:grid}.learn-outline{gap:.5rem;display:grid;position:sticky;top:1rem}.learn-outline h3{margin:.75rem 0 .25rem;font-size:.95rem}.learn-outline ol{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.learn-outline li{gap:.25rem;display:flex}.learn-outline li.current a{font-weight:700}.check{width:1.2em;color:var(--soon-fg);flex:none}.learn-content{min-width:0}.lesson-nav{border-top:1px solid var(--line);gap:.5rem;margin-top:2rem;padding-top:1rem;display:flex}@media (width<=800px){.learn-layout{grid-template-columns:1fr}.learn-outline{position:static}}.lesson{gap:1rem;max-width:72ch;display:grid}.md :where(h1,h2,h3){margin:1rem 0 .5rem}.md img{max-width:100%}.video{margin:0}.video iframe,.video video{aspect-ratio:16/9;background:var(--band);border-radius:var(--r-card);border:0;width:100%}.video figcaption{color:var(--muted);font-size:.9rem}pre.code{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-card);margin:0;padding:.75rem 1rem;overflow-x:auto}.studio-section{border-top:1px solid var(--line);gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:grid}.studio-section h3{margin:0}.studio-items{gap:.25rem;margin:0;padding-left:1.25rem;display:grid}form.inline{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}form.inline input{flex:1;width:auto;min-width:200px}.problems{color:var(--danger);margin:0}.editor-bar{top:var(--header-h);background:var(--bg);border-bottom:1px solid var(--line);z-index:1;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem 0;display:flex;position:sticky}.save-status.saved{color:var(--soon-fg)}.save-status.error,.save-status.invalid,.save-status.conflict{color:var(--danger)}.title-input{font-size:1.25rem}.block-editor{border:1px solid var(--line);border-radius:var(--r-card);gap:.5rem;margin:.75rem 0;padding:.75rem;display:grid}.add-blocks{margin:1rem 0}.offers{gap:.5rem;max-width:640px;margin:1rem 0;display:grid}.offer{border:1px solid var(--line);border-radius:var(--r-card);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.price,.amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:500}.amount{margin:.5rem 0 1.5rem;font-size:2rem}.banner-test{background:var(--yel);color:var(--on-yel);border-radius:var(--r-card);margin-bottom:1rem;padding:.5rem .75rem;font-weight:700}.order-status{font-size:1.25rem}tr.muted td{color:var(--muted)}.heading-row{align-items:baseline;gap:.75rem}.heading-row h1{margin-bottom:.5rem}.status-pill{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--mist);color:var(--ink);padding:.15rem .65rem;font-size:.75rem;font-weight:700;display:inline-block}.status-registration{background:var(--chip);border-color:var(--chip);color:var(--link)}.status-running{background:var(--soon);border-color:var(--soon);color:var(--soon-fg)}.status-cancelled{color:var(--muted);text-decoration:line-through}.champion{font-size:1.1rem}.tabs{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-btn);gap:0;margin-top:1.5rem;padding:0;display:inline-flex;overflow:hidden}.tab{color:var(--ink);background:0 0;border:none;border-radius:0;min-height:2.5rem;padding:.35rem 1rem;font-weight:700}.tab+.tab{border-left:1px solid var(--line)}.tab:hover:not(:disabled){background:var(--mist);border-color:var(--line)}.tab[aria-pressed=true],.tab[aria-pressed=true]:hover:not(:disabled){background:var(--blue);color:var(--btn-fg)}.auto-width{width:auto}.seed-input{width:5rem}.invite-link{flex:1;width:auto;min-width:240px}.team-box{border:1px dashed var(--line);border-radius:var(--r-card);padding:.75rem 1rem}.team-box h3{margin:0 0 .5rem}.team-box ul{margin:0 0 .5rem;padding-left:1.25rem}.participants{gap:.35rem;display:grid}.participants li.mine,.standings tr.mine td{font-weight:700}.match{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);min-width:200px;display:grid}.match.ready{border-color:var(--blue)}.match.selected{outline:2px solid var(--blue);outline-offset:1px}.match.cancelled{opacity:.55}.match-slot{justify-content:space-between;gap:.75rem;padding:.3rem .6rem;display:flex}.match-slot+.match-slot{border-top:1px solid var(--line)}.match-slot.winner{font-weight:700}.match-slot.mine{background:var(--mist)}.match-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.match-score{font-variant-numeric:tabular-nums}.match-note{margin:0;padding:0 .6rem .3rem;font-size:.8rem}.match-action{margin:.25rem .5rem .5rem;font-size:.85rem}.bracket-section+.bracket-section{margin-top:1.5rem}.bracket{gap:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.bracket-round{flex-direction:column;min-width:210px;display:flex}.bracket-round h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .5rem;font-size:.75rem;font-weight:700}.bracket-matches{flex-direction:column;flex:1;justify-content:space-around;gap:.75rem;display:flex}.round-block{margin-bottom:1.25rem}.round-block h3{margin:0 0 .5rem}.round-matches{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem;display:grid}.result-form{max-width:520px}.result-form h3{margin:0}.score-inputs{align-items:end;gap:.75rem;display:flex}.score-inputs label{gap:.25rem;font-weight:400;display:grid}.score-inputs input{width:6rem}.title-input{margin:.5rem 0;font-size:1.4rem;font-weight:700}.points-input{width:6rem}.question-editor{border:1px solid var(--line);border-radius:var(--r-card);gap:.5rem;margin:1rem 0;padding:.75rem 1rem;display:grid}.question-editor legend{padding:0 .25rem;font-weight:700}.question-editor .row{align-items:center}.option-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.option-list input:not([type=radio]):not([type=checkbox]){flex:1;width:auto}.quiz-question{border:1px solid var(--line);border-radius:var(--r-card);margin:0 0 1rem;padding:.75rem 1rem}.quiz-question legend{padding:0 .25rem;font-weight:700}.quiz-question .md :first-child,.quiz-result h2{margin-top:0}.quiz-review{gap:.75rem;padding-left:1.25rem;display:grid}.quiz-review li{border-left:3px solid var(--line);padding-left:.75rem}.quiz-review li.right{border-left-color:var(--soon-fg)}.quiz-review li.wrong{border-left-color:var(--danger)}.quiz-review .explanation{color:var(--muted)}.task-list{gap:.4rem;padding-left:0;list-style:none;display:grid}.task-form{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.contest-task.solved{border-color:var(--soon-fg)}.contest-task h3{margin-top:0}.contest-answer{gap:.5rem;max-width:520px;display:grid}.success-badge{border-color:var(--soon-fg);color:var(--soon-fg)}.task-col,.task-cell{text-align:center;min-width:3rem}.task-cell.solved{color:var(--soon-fg);font-weight:700}.task-cell.tried{color:var(--danger)}.task-cell small{color:var(--muted);font-weight:400;display:block}.verify-banner{background:var(--mist);color:var(--ink);border-bottom:1px solid var(--line)}.verify-banner .link-button{color:var(--link)}.avatar{object-fit:cover;border-radius:50%;flex:none}.avatar-sm{vertical-align:middle;width:1.6rem;height:1.6rem;margin-right:.35rem}.avatar-lg{width:5rem;height:5rem}.avatar-empty{background:var(--mist);border:1px solid var(--line);text-transform:uppercase;justify-content:center;align-items:center;font-size:2rem;display:inline-flex}.avatar-row{align-items:center;gap:1rem}.user-menu-list{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);min-width:15rem;margin:0;padding:.4rem;list-style:none;position:absolute;top:calc(100% + .5rem);right:0}.user-menu-list li>a,.user-menu-list li>.link-button{text-align:left;border-radius:var(--r-btn);width:100%;min-height:2.75rem;color:var(--ink);align-items:center;padding:.5rem .75rem;font-weight:700;text-decoration:none;display:flex}.user-menu-list li>a:hover,.user-menu-list li>.link-button:hover:not(:disabled){background:var(--mist);color:var(--link);text-decoration:none}.cover-preview,.course-cover{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-card);width:100%;max-width:640px;margin-bottom:.75rem;display:block}.card-cover{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-card) var(--r-card) 0 0;width:calc(100% + 3rem);max-width:none;margin:-1.5rem -1.5rem .75rem;display:block}.image-preview{border-radius:var(--r-card);max-width:100%;max-height:240px;display:block}.image-picker{flex-direction:column;gap:.25rem;display:inline-flex}.lesson-image{margin:1rem 0}.lesson-image img{border-radius:var(--r-card);max-width:100%;height:auto;display:block}.lesson-image figcaption{color:var(--muted);margin-top:.35rem;font-size:.9rem}.attempt{border-left:3px solid var(--line);margin:.75rem 0}.attempt.accepted{border-left-color:var(--soon-fg)}.attempt.returned{border-left-color:var(--danger)}.attempt h3,.attempt h4{margin:0 0 .25rem}.answer{background:var(--mist);border-radius:var(--r-card);padding:.5rem .75rem}.review-comment{border:1px dashed var(--line);border-radius:var(--r-card);margin-top:.5rem;padding:.5rem .75rem}.review-layout{grid-template-columns:minmax(240px,1fr) 2fr;align-items:start;gap:1rem;display:grid}@media (width<=800px){.review-layout{grid-template-columns:1fr}}.review-list{gap:.35rem;padding:0;list-style:none;display:grid}.review-item{text-align:left;width:100%;color:inherit;border:1px solid var(--line);background:0 0;font-weight:400}.review-item:hover:not(:disabled){background:var(--mist);border-color:var(--line)}.review-item[aria-pressed=true],.review-item[aria-pressed=true]:hover:not(:disabled){border-color:var(--blue);outline:1px solid var(--blue);background:var(--surface)}.grade-form{border-top:1px solid var(--line);gap:.5rem;margin-top:1rem;padding-top:1rem;display:grid}.audit td{vertical-align:top}.audit-details>td{background:var(--mist)}.audit-diff{width:auto;font-size:.9rem}.audit-diff td{word-break:break-word;max-width:420px}.moderation-notice{border-color:var(--danger)}.number-fields{gap:.5rem;display:grid}.number-field{border:1px dashed var(--line);border-radius:var(--r-card);gap:.4rem;padding:.5rem .75rem;display:grid}.number-field legend{padding:0 .25rem;font-weight:700}.bands{gap:.3rem;margin:0;padding-left:1.25rem;display:grid}.bands .row{align-items:center;gap:.35rem}.number-answer{align-items:center;gap:.5rem;margin:.25rem 0;display:flex}.number-answer input{max-width:14rem}.field-review{margin:.25rem 0;padding-left:1.25rem}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:2.5rem;margin-bottom:3.75rem;padding-block:3.25rem;display:grid}.hero h1{max-width:20ch;margin:0 0 1rem}.hero-lead{color:var(--muted);max-width:58ch;margin:0 0 1.75rem;font-size:1.125rem;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:.75rem;display:flex}.next-event{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--yel);border-radius:var(--r-card);flex-direction:column;justify-content:center;gap:.75rem;padding:1.5rem;display:flex}.next-event-label{margin:0}.next-event h2{margin:0;font-size:1.25rem;line-height:1.25}.next-event h2 a{color:var(--ink);text-decoration:none}.next-event h2 a:hover{color:var(--link);text-decoration:underline}.next-event-date{color:var(--muted);margin:0}.next-event-date time{font-family:var(--font-mono);color:var(--ink);font-size:.875rem}.next-event .button{margin-top:.25rem}.countdown{grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.25rem 0;display:grid}.countdown-cell{background:var(--mist);border-radius:var(--r-card);justify-items:center;padding:.6rem .25rem .5rem;display:grid}.countdown-num{font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(1.4rem,1rem + 1.4vw,2rem);font-weight:500;line-height:1.1}.countdown-unit{color:var(--muted);font-size:.8125rem}.catalog-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.catalog-head h2{margin:0}.catalog-head .search{flex:0 360px;margin:0}.course-card{border-top:3px solid var(--blue)}.course-card.is-free{border-top-color:var(--green)}.course-summary{-webkit-line-clamp:3;line-clamp:3;color:var(--muted);-webkit-box-orient:vertical;font-size:.9375rem;display:-webkit-box;overflow:hidden}.course-author{font-size:.875rem;margin-top:auto!important}.course-chips{align-items:center;gap:.25rem;display:flex;margin:.35rem 0 0!important}.course-chips .badge{margin-left:.25rem}.chip.free{background:var(--soon);color:var(--soon-fg)}.cover-placeholder{aspect-ratio:16/9;background:var(--mist);width:calc(100% + 3rem);color:var(--muted);border-bottom:1px solid var(--line);font-family:var(--font-serif);border-radius:var(--r-card) var(--r-card) 0 0;place-items:center;margin:-1.5rem -1.5rem .75rem;font-size:4rem;font-weight:700;line-height:1;display:grid}.course-card .card-cover{border-radius:var(--r-card) var(--r-card) 0 0}.course-head{grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:center;gap:2.5rem;margin-bottom:2.5rem;display:grid}.course-head .course-cover{aspect-ratio:16/10;object-fit:cover;border-radius:var(--r-card);border:1px solid var(--line);width:100%;max-width:none;margin:0}.course-byline{margin:.5rem 0}.course-facts{flex-wrap:wrap;gap:.4rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.course-facts li{background:var(--chip);color:var(--link);border-radius:var(--r-pill);padding:.15rem .75rem;font-size:.8125rem;font-weight:700}@media (width<=899px){.hero,.course-head{grid-template-columns:1fr}.course-head .course-cover{order:-1}}.hl-text{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);max-height:70vh;padding:1.25rem 1.5rem;overflow-y:auto}.hl-p{border-radius:var(--r-btn);border-left:4px solid #0000;max-width:none;margin:0 0 .35rem;padding:.35rem .6rem;line-height:1.6}.hl-p .b{font-weight:700}.hl-p .i{font-style:italic}.hl-p .u{text-decoration:underline}.hl-select .hl-p{cursor:pointer}.hl-select .hl-p:hover{background:var(--mist)}.hl-p.selected{background:var(--chip);border-left-color:var(--blue)}.hl-p.hit{background:var(--soon);border-left-color:var(--soon-fg)}.hl-p.missed{border-left-color:var(--soon-fg);outline:1px dashed var(--soon-fg);outline-offset:-1px;background:0 0;border-left-style:dashed}.hl-p.extra{background:var(--danger-soft);border-left-color:var(--danger)}.hl-legend{color:var(--muted);flex-wrap:wrap;gap:.5rem 1rem;font-size:.9rem;display:flex}.hl-key:before{content:"";vertical-align:-.1rem;border-left:3px solid;border-radius:2px;width:.9rem;height:.9rem;margin-right:.35rem;display:inline-block}.hl-key.hit:before{background:var(--soon);border-color:var(--soon-fg)}.hl-key.missed:before{border-color:var(--soon-fg);border-left-style:dashed}.hl-key.extra:before{background:var(--danger-soft);border-color:var(--danger)}.paste-zone{border:2px dashed var(--line);border-radius:var(--r-card);min-height:8rem;color:var(--muted);background:var(--surface);padding:1rem}.paste-zone:focus{border-color:var(--blue)}.settings-row{align-items:end;gap:1rem}.settings-row>label{gap:.25rem;display:grid}.bell-wrap,.bell{position:relative}.bell-count{border-radius:var(--r-pill);background:var(--danger);min-width:1.25rem;height:1.25rem;color:var(--on-danger);font-family:var(--font-mono);text-align:center;border:2px solid var(--bg);padding:0 .3rem;font-size:.6875rem;font-weight:500;line-height:1.25rem;position:absolute;top:-.3rem;right:-.35rem}.notifications{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);width:min(26rem,100vw - 2rem);max-height:min(32rem,75vh);padding:.75rem;position:absolute;top:calc(100% + .6rem);right:0;overflow-y:auto}.notifications-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.notifications-head .tabs{margin:0}.notifications-empty{margin:0;padding:1rem .5rem}.notifications-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.notification{text-align:left;width:100%;color:var(--ink);border-radius:var(--r-card);background:0 0;border:none;justify-items:start;gap:.15rem;min-height:0;padding:.6rem .75rem;font-weight:400;display:grid}.notification:hover:not(:disabled){background:var(--mist)}.notification.unread{background:var(--mist);box-shadow:none;border-left:3px solid var(--blue)}.notification.unread .notification-title{font-weight:700}.notification-body{color:var(--muted);font-size:.9rem}.notification-time{color:var(--muted);font-family:var(--font-mono);font-size:.75rem}.notifications .more{width:100%;margin-top:.5rem}@media (width<=640px){.notifications{left:1rem;right:1rem;top:calc(var(--header-h) + .5rem);width:auto;position:fixed}}.hl-select .hl-p.readonly{cursor:default}.hl-p.readonly{color:var(--muted)}.hl-edit .hl-p.readonly{cursor:pointer;border-left:4px dotted var(--line)}.exam-stage h3{margin:1rem 0 .35rem}.exam-task-list{gap:.35rem;margin:0;padding-left:1.25rem;display:grid}.exam-task-actions{margin-left:.5rem;display:inline-flex}.exam-answer{white-space:pre-wrap}.exam-review h3{margin-top:0}.settings-row .grow{flex:16rem}.hl-marking{border:none;gap:1rem;padding:0}.exam-bar{top:calc(var(--header-h) + .5rem);z-index:5;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex;position:sticky}.exam-task h3{margin-top:0}.exam-statement{border-bottom:1px solid var(--line);max-height:60vh;margin-bottom:.75rem;padding-right:.5rem;overflow-y:auto}.question-text{font-weight:700}.number-answer>span:first-child{flex:0 0 min(45%,22rem)}.exam-stages{flex-wrap:wrap;gap:.4rem;margin:.5rem 0 1rem;scroll-margin-top:9rem;display:flex}.exam-stage-tab{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-btn);text-align:left;justify-items:start;gap:.1rem;min-height:2.75rem;padding:.5rem .8rem;font-weight:700;display:grid}.exam-stage-tab:hover:not(:disabled){background:var(--mist);border-color:var(--line)}.exam-stage-tab small{color:var(--muted);font-weight:400}.exam-stage-tab[aria-current=step],.exam-stage-tab[aria-current=step]:hover:not(:disabled){background:var(--blue);border-color:var(--blue);color:var(--btn-fg)}.exam-stage-tab[aria-current=step] small{color:inherit;opacity:.85}.exam-pager{margin-top:1rem}
