@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-cyrillic-wght-normal-mKek_fSS.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;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-latin-wght-normal-BS5oQT7X.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}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.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}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.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{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ailab-background:#f3f6fb;--ailab-surface:#fff;--ailab-surface-muted:#ecf1f8;--ailab-text:#18233d;--ailab-text-muted:#4d5a75;--ailab-primary:#2547c4;--ailab-primary-hover:#1b379e;--ailab-primary-soft:#e4eafc;--ailab-on-primary:#fff;--ailab-accent:#d8433a;--ailab-accent-soft:#fbe6e3;--ailab-highlight:#ffe867;--ailab-on-highlight:#2a2306;--ailab-success:#1a7a4c;--ailab-success-soft:#e0f3e8;--ailab-achievement:#8a5a00;--ailab-warning-soft:#fdf1d4;--ailab-danger:#b42318;--ailab-danger-soft:#fdeceb;--ailab-info-soft:#e4eefb;--ailab-border:#d3dceb;--ailab-border-strong:#a6b3cc;--ailab-focus:#0b63ce;--ailab-header:#142350;--ailab-on-header:#fff;--ailab-grid-line:#2547c417;--ailab-grid-size:1.25rem;--ailab-margin-rule:#d8433a8c;--ailab-pixel-on:#18233d;--ailab-pixel-off:#fff;--ailab-font-body:"Golos Text", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--ailab-font-display:"Unbounded", "Golos Text", system-ui, "Segoe UI", sans-serif;--ailab-font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--ailab-radius-sm:.375rem;--ailab-radius:.625rem;--ailab-radius-lg:1rem;--ailab-shadow-sm:0 1px 2px #18233d12;--ailab-shadow:0 1px 2px #18233d0f, 0 10px 28px -12px #18233d2e;--ailab-space-1:.25rem;--ailab-space-2:.5rem;--ailab-space-3:.75rem;--ailab-space-4:1rem;--ailab-space-5:1.5rem;--ailab-space-6:2rem;--ailab-space-7:3rem;--ailab-touch-target:2.75rem;--ailab-content-max:76rem;--ailab-reading-max:48rem;--ailab-lesson-max:62rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ailab-background:#13201c;--ailab-surface:#1a2a25;--ailab-surface-muted:#22352f;--ailab-text:#eaf0ea;--ailab-text-muted:#a9bcb3;--ailab-primary:#9cc0ff;--ailab-primary-hover:#bed6ff;--ailab-primary-soft:#23364a;--ailab-on-primary:#0f1a2c;--ailab-accent:#ff9c8a;--ailab-accent-soft:#3c2622;--ailab-highlight:#f2df6b;--ailab-on-highlight:#1d1a05;--ailab-success:#7fdba8;--ailab-success-soft:#193a2b;--ailab-achievement:#f0c25a;--ailab-warning-soft:#3a3116;--ailab-danger:#ff8a80;--ailab-danger-soft:#3d1f1d;--ailab-info-soft:#1d3040;--ailab-border:#30473f;--ailab-border-strong:#4d6a5f;--ailab-focus:#9cc0ff;--ailab-header:#0d1714;--ailab-on-header:#eaf0ea;--ailab-grid-line:#eaf0ea0d;--ailab-margin-rule:#ff9c8a66;--ailab-pixel-on:#eaf0ea;--ailab-pixel-off:#13201c;--ailab-shadow-sm:none;--ailab-shadow:0 10px 28px -12px #0000008c}}*,:before,:after{box-sizing:border-box}html{color:var(--ailab-text);background:var(--ailab-background);font-family:var(--ailab-font-body);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:100%;line-height:1.55}body{background-color:var(--ailab-background);background-image:linear-gradient(var(--ailab-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--ailab-grid-line) 1px, transparent 1px);background-size:var(--ailab-grid-size) var(--ailab-grid-size);min-width:min(20rem,100%);margin:0}h1,h2,h3,h4{letter-spacing:-.01em;text-wrap:balance;line-height:1.25}h1{margin:0 0 var(--ailab-space-4);font-family:var(--ailab-font-display);letter-spacing:-.02em;font-size:clamp(1.5rem,4vw,2.25rem);font-weight:650}h2{margin:var(--ailab-space-6) 0 var(--ailab-space-3);font-family:var(--ailab-font-display);letter-spacing:-.015em;font-size:clamp(1.125rem,2.6vw,1.375rem);font-weight:600}h3{margin:var(--ailab-space-5) 0 var(--ailab-space-2);font-size:1.125rem;font-weight:700}h4{margin:var(--ailab-space-4) 0 var(--ailab-space-2);font-size:1rem;font-weight:700}p{margin:0 0 var(--ailab-space-3)}ul,ol{margin:0 0 var(--ailab-space-4);padding-inline-start:1.5rem}li+li{margin-block-start:var(--ailab-space-1)}a{color:var(--ailab-primary);text-underline-offset:.2em;text-decoration-thickness:.08em}a:hover{color:var(--ailab-primary-hover);text-decoration-thickness:.14em}hr{border:0;border-block-start:1px solid var(--ailab-border);margin-block:var(--ailab-space-5)}code,kbd{font-family:var(--ailab-font-mono);font-size:.92em}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:.1875rem solid var(--ailab-focus);outline-offset:.1875rem}.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}input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden]),select,textarea{width:100%;min-width:0;max-width:100%;min-height:var(--ailab-touch-target);border:1px solid var(--ailab-border-strong);border-radius:var(--ailab-radius-sm);color:var(--ailab-text);background:var(--ailab-surface);box-shadow:var(--ailab-shadow-sm);padding:.625rem .75rem;transition:border-color .12s,box-shadow .12s}textarea{resize:vertical;min-height:7.5rem;line-height:1.5}input:not([type=checkbox],[type=radio]):hover,select:hover,textarea:hover{border-color:var(--ailab-primary)}input:not([type=checkbox],[type=radio]):focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--ailab-primary);box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--ailab-focus) 35%, transparent);outline:none}input:disabled,select:disabled,textarea:disabled,textarea[readonly]{background:var(--ailab-surface-muted);cursor:not-allowed}input[type=checkbox],input[type=radio]{width:1.25rem;height:1.25rem;accent-color:var(--ailab-primary);flex-shrink:0;margin:0}label{font-weight:600}fieldset{gap:var(--ailab-space-2);min-width:0;margin:0 0 var(--ailab-space-4);padding:var(--ailab-space-4);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius);background:var(--ailab-surface);display:grid}legend{padding-inline:var(--ailab-space-2);font-size:1.0625rem;font-weight:700}fieldset>label{gap:.375rem;min-width:0;display:grid}fieldset>label:has(>input[type=radio],>input[type=checkbox]){align-items:center;gap:var(--ailab-space-3);min-height:var(--ailab-touch-target);padding:var(--ailab-space-2) var(--ailab-space-3);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-sm);cursor:pointer;font-weight:500;transition:border-color .12s,background .12s;display:flex}fieldset>label:has(>input[type=radio],>input[type=checkbox]):hover{border-color:var(--ailab-primary)}fieldset>label:has(input:checked){border-color:var(--ailab-primary);background:var(--ailab-primary-soft)}button:not(.ui-button){justify-content:center;align-items:center;gap:var(--ailab-space-2);min-width:var(--ailab-touch-target);min-height:var(--ailab-touch-target);border:1px solid var(--ailab-border-strong);border-radius:var(--ailab-radius-sm);color:var(--ailab-primary);background:var(--ailab-surface);cursor:pointer;padding:.5rem 1rem;font-weight:650;display:inline-flex}button:not(.ui-button):hover:not(:disabled){border-color:var(--ailab-primary);background:var(--ailab-primary-soft)}button:not(.ui-button)[type=submit]{color:var(--ailab-on-primary);background:var(--ailab-primary);border-color:var(--ailab-primary)}button:not(.ui-button)[type=submit]:hover:not(:disabled){background:var(--ailab-primary-hover)}button:disabled{cursor:not-allowed;opacity:.55}table{width:100%;margin-block:0 var(--ailab-space-4);border-collapse:collapse;background:var(--ailab-surface)}caption{padding:var(--ailab-space-3) var(--ailab-space-4);text-align:start;font-weight:700}th,td{padding:var(--ailab-space-3) var(--ailab-space-4);text-align:start;vertical-align:top;border-block-start:1px solid var(--ailab-border)}th{background:var(--ailab-surface-muted);font-size:.9375rem;font-weight:700}tbody tr:hover{background:color-mix(in srgb, var(--ailab-primary-soft) 45%, transparent)}figure{margin:0 0 var(--ailab-space-4)}figure img{border-radius:var(--ailab-radius);border:1px solid var(--ailab-border);display:block}figcaption{margin-block:var(--ailab-space-2);color:var(--ailab-text-muted);font-size:.9375rem;font-weight:600}aside[data-tone]{margin:0 0 var(--ailab-space-4);padding:var(--ailab-space-4);border-inline-start:.25rem solid var(--ailab-primary);border-radius:var(--ailab-radius-sm);background:var(--ailab-info-soft)}aside[data-tone]>p:last-child{margin-block-end:0}aside[data-tone=success]{border-color:var(--ailab-success);background:var(--ailab-success-soft)}aside[data-tone=warning]{border-color:var(--ailab-achievement);background:var(--ailab-warning-soft)}aside[data-tone=danger]{border-color:var(--ailab-danger);background:var(--ailab-danger-soft)}[role=alert]:not(.ui-field__error,.ui-status):not(:empty){padding:var(--ailab-space-3) var(--ailab-space-4);border-radius:var(--ailab-radius-sm);color:var(--ailab-danger);background:var(--ailab-danger-soft);font-weight:600}p[role=note]{padding:var(--ailab-space-3) var(--ailab-space-4);border-radius:var(--ailab-radius-sm);background:var(--ailab-warning-soft)}.ui-button{justify-content:center;align-items:center;gap:var(--ailab-space-2);min-width:var(--ailab-touch-target);min-height:var(--ailab-touch-target);border-radius:var(--ailab-radius-sm);text-align:center;cursor:pointer;border:1px solid #0000;padding:.5rem 1.125rem;font-weight:700;transition:background .12s,border-color .12s,transform 80ms;display:inline-flex}.ui-button:active:not(:disabled){transform:translateY(1px)}.ui-button--primary{color:var(--ailab-on-primary);background:var(--ailab-primary)}.ui-button--primary:hover:not(:disabled){background:var(--ailab-primary-hover)}.ui-button--secondary{color:var(--ailab-primary);background:var(--ailab-surface);border-color:var(--ailab-border-strong)}.ui-button--secondary:hover:not(:disabled){border-color:var(--ailab-primary);background:var(--ailab-primary-soft)}.ui-button--secondary[aria-current]{color:var(--ailab-on-primary);background:var(--ailab-primary);border-color:var(--ailab-primary)}.ui-button--danger{color:#fff;background:var(--ailab-danger)}.ui-button--danger:hover:not(:disabled){filter:brightness(.92)}.ui-button:disabled{cursor:not-allowed;opacity:.55}.ui-field{gap:.375rem;display:grid}.ui-field__label{font-weight:700}.ui-field__hint{color:var(--ailab-text-muted);font-size:.9375rem}.ui-field__error{color:var(--ailab-danger);font-weight:700}.ui-status{margin-block:var(--ailab-space-3);padding:var(--ailab-space-3) var(--ailab-space-4);border-inline-start:.25rem solid var(--ailab-primary);border-radius:var(--ailab-radius-sm);background:var(--ailab-info-soft)}.ui-status--success{border-color:var(--ailab-success);background:var(--ailab-success-soft)}.ui-status--warning{border-color:var(--ailab-achievement);background:var(--ailab-warning-soft)}.ui-status--danger{border-color:var(--ailab-danger);background:var(--ailab-danger-soft)}.ui-card{margin-block:0 var(--ailab-space-5);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);box-shadow:var(--ailab-shadow);padding:clamp(1.125rem,3vw,1.75rem)}.ui-card>h2{margin-block-start:0}.ui-card>div>:last-child{margin-block-end:0}.ui-dialog-backdrop{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0c1999;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.ui-dialog{border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);width:min(100%,38rem);max-height:calc(100vh - 2rem);padding:1.5rem;overflow:auto;box-shadow:0 24px 64px #00000040}.ui-dialog__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.ui-dialog__header h2{margin-block-start:0}.ui-page{width:min(100%, var(--ailab-reading-max));min-width:0;margin-inline:auto}.ui-page--wide{width:min(100%, var(--ailab-content-max))}.ui-page--narrow{width:min(100%,38rem)}.ui-page__header{margin-block-end:var(--ailab-space-5)}.ui-page__header h1{margin-block-end:0}.ui-eyebrow{margin:0 0 var(--ailab-space-1);color:var(--ailab-primary);font-family:var(--ailab-font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem;font-weight:800}.ui-muted{color:var(--ailab-text-muted)}.ui-small{font-size:.9375rem}.ui-stack{gap:var(--ailab-space-4);display:grid}.ui-stack--sm{gap:var(--ailab-space-2)}.ui-stack--lg{gap:var(--ailab-space-6)}.ui-row{align-items:center;gap:var(--ailab-space-3);flex-wrap:wrap;display:flex}.ui-list-plain{gap:var(--ailab-space-3);margin:0;padding:0;list-style:none;display:grid}.ui-list-plain>li+li{margin:0}.ui-section{margin-block-start:var(--ailab-space-6)}.ui-error{color:var(--ailab-danger);font-weight:600}.ui-badge{background:var(--ailab-surface-muted);color:var(--ailab-text-muted);border-radius:999px;align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.auth-page{width:min(100%,30rem);margin:clamp(.5rem,4vw,2.5rem) auto}.auth-page h1{font-size:clamp(1.75rem,5vw,2.125rem)}.auth-page label{gap:.375rem;display:grid}.auth-page form{gap:var(--ailab-space-4);display:grid}.auth-page button:not(.ui-button){min-height:var(--ailab-touch-target);border:1px solid var(--ailab-border-strong);border-radius:var(--ailab-radius-sm);color:var(--ailab-primary);background:var(--ailab-surface);cursor:pointer;padding:.5rem 1rem;font-weight:700}.auth-page button:not(.ui-button)[type=submit]{width:100%;color:var(--ailab-on-primary);background:var(--ailab-primary);border-color:var(--ailab-primary)}.auth-page button:not(.ui-button)[type=submit]:hover:not(:disabled){background:var(--ailab-primary-hover)}.auth-page .auth-page__device{align-items:center;gap:var(--ailab-space-3);min-height:var(--ailab-touch-target);font-weight:500;display:flex}.lesson-stages{margin-block-end:var(--ailab-space-5)}.lesson-stages>ol{gap:var(--ailab-space-2);counter-reset:stage;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.lesson-stages>ol>li{counter-increment:stage;margin:0}.lesson-stage{align-items:center;gap:var(--ailab-space-2);border:1px solid var(--ailab-border);background:var(--ailab-surface);min-height:2.25rem;color:var(--ailab-text-muted);border-radius:999px;padding:.25rem .875rem .25rem .375rem;font-size:.9375rem;font-weight:600;display:inline-flex}.lesson-stage:before{content:counter(stage);background:var(--ailab-surface-muted);border-radius:50%;place-items:center;width:1.625rem;height:1.625rem;font-size:.8125rem;font-weight:800;display:inline-grid}[aria-current=step]>.lesson-stage{border-color:var(--ailab-primary);color:var(--ailab-text);background:var(--ailab-primary-soft)}[aria-current=step]>.lesson-stage:before{background:var(--ailab-primary);color:var(--ailab-on-primary)}.lesson-stage--past{color:var(--ailab-success)}.lesson-stage--past:before{content:"✓";background:var(--ailab-success-soft);color:var(--ailab-success)}.lesson-stage__status{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lesson-stages--self-paced>ol{grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));display:grid}.lesson-stages--self-paced .ui-button{text-align:start;justify-content:flex-start;width:100%}.save-status{align-items:center;gap:var(--ailab-space-2);margin:var(--ailab-space-2) 0 0;color:var(--ailab-text-muted);font-size:.875rem;font-weight:600;display:inline-flex}.course-page{max-width:var(--ailab-content-max);margin-inline:auto}.course-page__heading{margin-bottom:var(--ailab-space-6)}.course-page__heading h1{margin:.25rem 0;font-size:clamp(2rem,5vw,3rem);line-height:1.15}.course-eyebrow{color:var(--ailab-primary);letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem;font-weight:800}.course-summary{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-block:1.5rem;display:flex}.course-summary h2{margin:0}.course-modules{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:1.25rem;display:grid}.course-module{border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);min-width:0;box-shadow:var(--ailab-shadow);overflow:hidden}.course-module>header{border-bottom:1px solid var(--ailab-border);background:linear-gradient(135deg, var(--ailab-primary-soft), transparent 70%);padding:1.25rem 1.5rem}.course-module h3{margin:.375rem 0 0;font-size:1.25rem}.course-lessons{margin:0;padding:0;list-style:none}.course-lessons li{overflow-wrap:anywhere;align-items:baseline;gap:1rem;margin:0;padding:.875rem 1.5rem;display:flex}.course-lessons li+li{border-top:1px solid var(--ailab-border)}.course-lessons a{font-weight:700}.course-lessons small{color:var(--ailab-text-muted);margin-top:.25rem;font-size:.875rem;display:block}.course-lesson-number{background:var(--ailab-surface-muted);min-width:1.75rem;height:1.75rem;color:var(--ailab-text-muted);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:.8125rem;font-weight:800;display:inline-grid}.course-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.ui-skip-link{z-index:40;border-radius:var(--ailab-radius-sm);color:var(--ailab-on-primary);background:var(--ailab-primary);padding:.75rem 1rem;position:fixed;inset-block-start:.5rem;inset-inline-start:.5rem;translate:0 -200%}.ui-skip-link:focus{translate:0}.ui-app-shell{flex-direction:column;min-height:100vh;display:flex}.ui-app-header{color:var(--ailab-on-header);background:var(--ailab-header)}.ui-app-header__inner,.ui-app-main,.ui-app-footer,.ui-app-nav>ul{width:min(100% - 2rem, var(--ailab-content-max));margin-inline:auto}.ui-app-header__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding-block:.875rem;display:flex}.ui-app-brand{align-items:center;gap:var(--ailab-space-3);display:inline-flex}.ui-app-logo{color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,#6c72ff,#19b5b0);border-radius:.625rem;place-items:center;width:2.25rem;height:2.25rem;font-size:.875rem;font-weight:900;display:inline-grid}.ui-app-title{font-size:clamp(1.0625rem,2.5vw,1.25rem);font-weight:800}.ui-app-subtitle{opacity:.75;font-size:.9375rem;font-weight:600}.ui-app-nav{z-index:10;border-block-end:1px solid var(--ailab-border);background:color-mix(in srgb, var(--ailab-surface) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(8px);backdrop-filter:saturate(1.4)blur(8px);position:sticky;top:0}.ui-app-nav>ul{scrollbar-width:thin;gap:.25rem;margin-block:0;padding:.375rem 0;list-style:none;display:flex;overflow-x:auto}.ui-app-nav li+li{margin:0}.ui-app-nav a,.ui-app-nav__disabled{min-height:var(--ailab-touch-target);border-radius:var(--ailab-radius-sm);white-space:nowrap;align-items:center;gap:.375rem;padding:.5rem .875rem;display:inline-flex}.ui-app-nav a{color:var(--ailab-text);font-weight:650;text-decoration:none}.ui-app-nav a:hover{background:var(--ailab-surface-muted)}.ui-app-nav a[aria-current=page]{color:var(--ailab-primary);background:var(--ailab-primary-soft)}.ui-app-nav__disabled{color:var(--ailab-text-muted)}.ui-app-nav__badge{background:var(--ailab-surface-muted);border-radius:999px;padding:.0625rem .4375rem;font-size:.6875rem;font-weight:700}.ui-app-main{flex:1;padding-block:clamp(1.25rem,4vw,2.5rem)}.ui-app-footer{border-block-start:1px solid var(--ailab-border);color:var(--ailab-text-muted);padding-block:1.25rem;font-size:.875rem}@media (width<=48rem){.ui-dialog{padding:1rem}.ui-app-subtitle{display:none}.ui-card{border-radius:var(--ailab-radius)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.ui-app-header,.ui-app-nav,.ui-app-footer,.ui-skip-link{display:none}.ui-card{box-shadow:none}}.ui-m-0{margin:0}.ui-mt-0{margin-block-start:0}.ui-mt{margin-block-start:var(--ailab-space-4)}.ui-mb{margin-block-end:var(--ailab-space-6)}.ui-my{margin-block:var(--ailab-space-5)}.ui-my-sm{margin-block:var(--ailab-space-2)}.ui-block{display:block}.ui-break{overflow-wrap:anywhere}.ui-prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.ui-scroll-x{max-width:100%;overflow-x:auto}.ui-row--end{padding:var(--ailab-space-3);justify-content:flex-end}.ui-grid{gap:var(--ailab-space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));display:grid}.ui-table{width:100%}.ui-tile{padding:var(--ailab-space-4);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius);background:var(--ailab-surface)}.ui-tile>h2:first-child,.ui-tile>h3:first-child{margin-block-start:0}main>section:not([class]),main>form:not([class]){margin-block:0 var(--ailab-space-5);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);box-shadow:var(--ailab-shadow-sm);padding:clamp(1rem,3vw,1.5rem)}main>section:not([class])>h2:first-child,main>form:not([class])>h2:first-child{margin-block-start:0}main>section:not([class])>:last-child,main>form:not([class])>:last-child{margin-block-end:0}main>form:not([class]){gap:var(--ailab-space-3);display:grid}main>form:not([class])>:is(button,.ui-button){justify-self:start}:is(button,.ui-button)+:is(button,.ui-button){margin-inline-start:var(--ailab-space-2)}.ui-row>:is(button,.ui-button),.ui-stack>:is(button,.ui-button){margin:0}:root{--ailab-gradient-brand:linear-gradient(135deg, #142350 0%, #2547c4 100%);--ailab-gradient-soft:linear-gradient(135deg, var(--ailab-primary-soft), var(--ailab-surface) 80%);--ailab-ink-shadow:0 12px 30px -10px #14235073}.ui-icon{vertical-align:middle;flex-shrink:0}.ui-app-header{background-color:var(--ailab-header);background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:var(--ailab-grid-size) var(--ailab-grid-size);border-block-end:3px solid var(--ailab-accent)}.ui-app-header .ui-app-title,.ui-app-brand strong{font-family:var(--ailab-font-display);letter-spacing:-.01em;font-weight:600}.ui-app-logo{background:var(--ailab-gradient-brand);border-radius:.75rem;width:2.5rem;height:2.5rem;box-shadow:inset 0 0 0 2px #ffffff40}.ui-app-nav a{gap:.5rem}.ui-app-nav a .ui-icon{opacity:.75}.ui-app-nav a[aria-current=page] .ui-icon{opacity:1}.ui-app-footer{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;display:flex}a.ui-button{text-decoration:none}a.ui-button--primary:hover{color:var(--ailab-on-primary)}.ui-button--primary{box-shadow:0 4px 14px color-mix(in srgb, var(--ailab-primary) 30%, transparent)}.course-module,.ui-card,.today-current{transition:transform .16s,box-shadow .16s}.course-module:hover{transform:translateY(-2px);box-shadow:0 2px 4px #161b2e0f,0 16px 36px #161b2e1a}.ui-progress{background:var(--ailab-surface-muted);border-radius:999px;height:.625rem;overflow:hidden}.ui-progress>span{width:var(--value,0%);border-radius:inherit;background:var(--ailab-gradient-brand);min-width:.625rem;height:100%;transition:width .4s;display:block}.ui-progress--light{background:#ffffff40}.ui-progress--light>span{background:#fff}.course-hero,.today-hero{justify-content:space-between;align-items:center;gap:var(--ailab-space-5);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-gradient-soft);padding:clamp(1.25rem,4vw,2rem);display:flex}.course-hero h1,.today-hero h1{margin-block-end:var(--ailab-space-2)}.course-hero p:last-child,.today-hero p:last-child{margin-block-end:0}.course-hero__art,.today-hero__art{color:#fff;background:var(--ailab-gradient-brand);width:5.5rem;height:5.5rem;box-shadow:var(--ailab-ink-shadow);border-radius:1.5rem;flex-shrink:0;place-items:center;display:grid;transform:rotate(-6deg)}.today-hero{margin-block-end:var(--ailab-space-5)}.today-current{margin-block:0 var(--ailab-space-5);border-radius:var(--ailab-radius-lg);color:#fff;background:var(--ailab-gradient-brand);box-shadow:var(--ailab-ink-shadow);padding:clamp(1.25rem,4vw,2rem);position:relative;overflow:hidden}.today-current:after{content:"";pointer-events:none;background:#ffffff1a;border-radius:50%;width:14rem;height:14rem;position:absolute;inset:auto -3rem -4rem auto}.today-current h2{margin:var(--ailab-space-3) 0 var(--ailab-space-1);color:#fff;font-size:clamp(1.375rem,4vw,1.875rem)}.today-current p{color:#ffffffe6}.today-current .ui-progress{max-width:24rem;margin-block:var(--ailab-space-2) var(--ailab-space-4)}.today-current__badge{letter-spacing:.03em;text-transform:uppercase;background:#ffffff2e;border-radius:999px;align-items:center;gap:.375rem;padding:.25rem .75rem;font-size:.8125rem;font-weight:800;display:inline-flex}.today-current__stage{margin-block-end:0;font-weight:700}.today-current .today-current__action{z-index:1;color:#1b379e;background:#fff;min-height:3rem;padding-inline:1.5rem;font-size:1.0625rem;position:relative;box-shadow:0 6px 18px #0000002e}.today-current .today-current__action:hover:not(:disabled){color:#2a2306;background:#ffe867}.today-reviews__list{gap:var(--ailab-space-3);margin:0;padding:0;list-style:none;display:grid}.today-reviews__list li+li{margin:0}.today-reviews__list .ui-button{text-align:start;justify-content:flex-start;width:100%}.today-reviews__list .ui-icon{color:var(--ailab-success)}.course-progress{gap:var(--ailab-space-2);margin-block:0 var(--ailab-space-5);padding:var(--ailab-space-4) var(--ailab-space-5);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius);background:var(--ailab-surface);display:grid}.course-progress__stats{gap:var(--ailab-space-5);color:var(--ailab-text-muted);flex-wrap:wrap;display:flex}.course-progress__stats strong{color:var(--ailab-text);font-size:1.25rem}.course-module{--module-hue:226}.course-module>header{align-items:center;gap:var(--ailab-space-3);background:linear-gradient(135deg, hsl(var(--module-hue) 85% 96%), transparent 75%);display:flex}.course-module__icon{color:#fff;background:linear-gradient(135deg, hsl(var(--module-hue) 70% 55%), hsl(calc(var(--module-hue) + 40) 70% 45%));width:2.75rem;height:2.75rem;box-shadow:0 6px 16px hsl(var(--module-hue) 70% 50% / 30%);border-radius:.875rem;flex-shrink:0;place-items:center;display:grid}.course-module .course-eyebrow{color:hsl(var(--module-hue) 60% 38%)}.course-lesson{transition:background .12s;position:relative;align-items:center!important}.course-lesson:has(.course-lesson__link):hover{background:hsl(var(--module-hue) 80% 97%)}.course-lesson__body{flex:1;min-width:0}.course-lesson__link{color:var(--ailab-text);text-decoration:none}.course-lesson__link:after{content:"";position:absolute;inset:0}.course-lesson__link:focus-visible{outline:none}.course-lesson:has(.course-lesson__link:focus-visible){outline:.1875rem solid var(--ailab-focus);outline-offset:-.1875rem}.course-lesson__go{color:hsl(var(--module-hue) 60% 45%)}.course-lesson--open .course-lesson-number{color:hsl(var(--module-hue) 60% 35%);background:hsl(var(--module-hue) 85% 93%)}.course-lesson--open small{color:hsl(var(--module-hue) 55% 38%);font-weight:600}.course-lesson--review .course-lesson-number{color:var(--ailab-success);background:var(--ailab-success-soft)}.course-lesson--locked{opacity:.7}.auth-page{padding-block-start:0;overflow:hidden}.auth-page:before{content:"";height:7rem;margin:0 calc(-1 * clamp(1.125rem, 3vw, 1.75rem)) var(--ailab-space-5);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 80' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='38' y='22' width='44' height='34' rx='8'/%3E%3Cpath d='M60 12v10M50 36h.01M70 36h.01M52 46h16M46 66h28'/%3E%3Ccircle cx='60' cy='10' r='3'/%3E%3C/svg%3E") center / auto 70% no-repeat, radial-gradient(circle at 15% 30%, #ffffff40 0 .25rem, transparent .3rem), radial-gradient(circle at 85% 70%, #ffffff40 0 .375rem, transparent .425rem), var(--ailab-gradient-brand);display:block}@media (prefers-color-scheme:dark){.course-module>header{background:linear-gradient(135deg, hsl(var(--module-hue) 40% 18%), transparent 75%)}.course-module .course-eyebrow{color:hsl(var(--module-hue) 80% 75%)}.course-lesson:has(.course-lesson__link):hover{background:hsl(var(--module-hue) 30% 16%)}.course-lesson--open .course-lesson-number{color:hsl(var(--module-hue) 80% 85%);background:hsl(var(--module-hue) 35% 24%)}.course-lesson--open small,.course-lesson__go{color:hsl(var(--module-hue) 75% 75%)}.course-module:hover{box-shadow:0 16px 36px #0006}}@keyframes ailab-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ui-card,.course-module,.today-current,.course-hero,.today-hero{animation:.32s both ailab-rise}.course-modules>.course-module:nth-child(2){animation-delay:40ms}.course-modules>.course-module:nth-child(3){animation-delay:80ms}.course-modules>.course-module:nth-child(4){animation-delay:.12s}.course-modules>.course-module:nth-child(n+5){animation-delay:.16s}@media (width<=36rem){.course-hero__art,.today-hero__art{border-radius:1rem;width:3.5rem;height:3.5rem}.course-hero__art .ui-icon,.today-hero__art .ui-icon{width:28px;height:28px}}.lesson-hero{padding:var(--ailab-space-5);border-radius:var(--ailab-radius-lg);background:var(--ailab-gradient-soft);margin-block-end:var(--ailab-space-4);animation:.32s both ailab-rise}.lesson-hero .ui-progress{max-width:28rem;margin-block-start:var(--ailab-space-3)}.lesson-stage-list__number{width:1.75rem;height:1.75rem;background:var(--ailab-surface-muted);border-radius:50%;flex:none;place-items:center;margin-inline-end:var(--ailab-space-2);font-size:.8125rem;font-weight:800;display:inline-grid}.lesson-stages--self-paced [aria-current=step] .lesson-stage-list__number{color:inherit;background:#ffffff38}.lesson-stage-view{gap:var(--ailab-space-4);min-width:0;display:grid}.lesson-stage-view__header{align-items:center;gap:var(--ailab-space-3);display:flex}.lesson-stage-view__header h2{margin:0}.lesson-stage-view__number{background:var(--ailab-gradient-brand);color:#fff;border-radius:.875rem;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-size:1.25rem;font-weight:800;display:inline-grid}.lesson-stage-view__nav{justify-content:space-between;gap:var(--ailab-space-3);flex-wrap:wrap;display:flex}.lesson-block{min-width:0;padding:var(--ailab-space-5);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);box-shadow:var(--ailab-shadow);animation:.32s both ailab-rise}.lesson-block>:first-child{margin-block-start:0}.lesson-block>:last-child{margin-block-end:0}.lesson-stage-view>.lesson-block:nth-of-type(2){animation-delay:40ms}.lesson-stage-view>.lesson-block:nth-of-type(3){animation-delay:80ms}.lesson-stage-view>.lesson-block:nth-of-type(n+4){animation-delay:.12s}.lesson-block--callout{box-shadow:none;background:0 0;border:0;padding:0}.lesson-block--callout>aside{padding:var(--ailab-space-5);border-radius:var(--ailab-radius-lg);margin:0}.lesson-block--text h3{margin:0;font-size:1.25rem}.lesson-block table{border-collapse:collapse;width:100%}.lesson-block caption{text-align:start;padding-block-end:var(--ailab-space-3);font-weight:700}.lesson-block th{background:var(--ailab-surface-muted)}.lesson-block tbody tr:nth-child(2n){background:color-mix(in srgb, var(--ailab-surface-muted) 45%, transparent)}.lesson-block ol,.lesson-block ul{padding-inline-start:1.25rem}.lesson-block li+li{margin-block-start:var(--ailab-space-2)}.lesson-block--pair_work section>h3{margin-block-start:0}.lesson-diagram{gap:var(--ailab-space-3);margin:0;display:grid}.lesson-diagram figcaption{font-weight:700}.lesson-diagram__chain{align-items:center;gap:var(--ailab-space-1);padding:var(--ailab-space-3);border-radius:var(--ailab-radius);background:var(--ailab-surface-muted);flex-wrap:wrap;margin:0;list-style:none;display:flex}.lesson-diagram__chain>li+li{margin:0}.lesson-diagram__step{align-items:center;gap:var(--ailab-space-1);display:flex}.lesson-diagram__node{border:1px solid var(--ailab-border-strong);border-radius:var(--ailab-radius);background:var(--ailab-surface);padding:.4375rem .625rem;font-weight:700}.lesson-diagram__chain .lesson-diagram__step:last-child .lesson-diagram__node{background:var(--ailab-gradient-brand);color:#fff;border-color:#0000}.lesson-diagram__arrow{padding-inline:var(--ailab-space-1);color:var(--ailab-text-muted);flex-direction:column;align-items:center;font-size:1.25rem;line-height:1;display:inline-flex}.lesson-diagram__label{text-align:center;max-width:5.5rem;font-size:.75rem;line-height:1.2}.lesson-block .lesson-diagram__chain{padding-inline-start:var(--ailab-space-3)}@media (width<=36rem){.lesson-hero,.lesson-block{padding:var(--ailab-space-4)}.lesson-diagram__chain,.lesson-diagram__step{flex-direction:column;align-items:stretch}.lesson-diagram__arrow{margin-block:var(--ailab-space-1)}.lesson-diagram__arrow>[aria-hidden=true]{transform:rotate(90deg)}.lesson-stage-view__nav .ui-button{flex:auto}}html{scroll-behavior:smooth}.lesson-toc__title{margin:0 0 var(--ailab-space-2);font-weight:800}.lesson-toc{gap:var(--ailab-space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));margin:0;padding:0;list-style:none;display:grid}.lesson-toc li+li{margin:0}.lesson-toc a{align-items:center;gap:var(--ailab-space-2);min-height:var(--ailab-touch-target);padding:var(--ailab-space-2) var(--ailab-space-3);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-sm);color:var(--ailab-text);background:var(--ailab-surface);font-weight:650;text-decoration:none;display:flex}.lesson-toc a:hover{border-color:var(--ailab-primary);background:var(--ailab-primary-soft)}.lesson-flow{gap:var(--ailab-space-6);display:grid}.lesson-flow>.lesson-stage-view{border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-lg);background:var(--ailab-surface);box-shadow:var(--ailab-shadow-sm);padding:clamp(1rem,3vw,1.75rem);scroll-margin-top:4.5rem}.lesson-tree,.lesson-tree__children{margin:0;padding:0;list-style:none}.lesson-tree__children{border-inline-start:2px solid var(--ailab-border-strong);margin-inline-start:1.25rem;padding-inline-start:1rem}.lesson-tree__item{margin:0;padding-block:.375rem;position:relative}.lesson-tree__children>.lesson-tree__item:before{content:"";inset-inline-start:-1rem;border-top:2px solid var(--ailab-border-strong);width:.875rem;position:absolute;top:1.15rem}.lesson-tree__item li+li{margin:0}.lesson-tree__edge{background:var(--ailab-surface-muted);color:var(--ailab-text-muted);border-radius:999px;margin-inline-end:.5rem;padding:.125rem .5rem;font-size:.8125rem;font-weight:800;display:inline-block}.lesson-tree__node{border-radius:var(--ailab-radius-sm);color:#fff;background:var(--ailab-gradient-brand);padding:.375rem .75rem;font-weight:700;display:inline-block}.lesson-tree__node--leaf{color:var(--ailab-success);background:var(--ailab-success-soft);border:1px solid color-mix(in srgb, var(--ailab-success) 40%, transparent)}.lesson-media{gap:var(--ailab-space-2);margin:0;display:grid}.lesson-media figcaption{color:var(--ailab-text);font-weight:700}.lesson-media audio{width:100%}.lesson-media video{border-radius:var(--ailab-radius);background:#000;width:100%;max-height:28rem}.lesson-media__transcript summary{cursor:pointer;color:var(--ailab-primary);font-weight:650}.lesson-media__transcript p{margin:var(--ailab-space-2) 0 0;color:var(--ailab-text-muted)}.lesson-page--self-paced{width:min(100%, var(--ailab-content-max));gap:var(--ailab-space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.lesson-page--self-paced>*{min-width:0;margin-block:0}@media (width>=64rem){.lesson-page--self-paced{column-gap:var(--ailab-space-6);row-gap:var(--ailab-space-5);grid-template-columns:16rem minmax(0,1fr)}.lesson-page--self-paced>*{grid-column:2}.lesson-page--self-paced>.lesson-hero{grid-column:1/-1}.lesson-page--self-paced>.lesson-stages{top:calc(env(safe-area-inset-top,0px) + 1rem);grid-area:2/1/span 4;max-height:calc(100vh - 2rem);position:sticky;overflow-y:auto}.lesson-page--self-paced .lesson-toc{grid-template-columns:1fr;gap:.125rem}.lesson-page--self-paced .lesson-toc a{background:0 0;border-color:#0000;min-height:2.5rem;font-size:.9375rem}.lesson-page--self-paced .lesson-toc a:hover{border-color:var(--ailab-border);background:var(--ailab-surface)}}.lesson-page .lesson-hero{border-radius:var(--ailab-radius-lg);color:#fff;background-color:#142350;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px),linear-gradient(135deg,#142350,#2547c4);background-size:var(--ailab-grid-size) var(--ailab-grid-size), var(--ailab-grid-size) var(--ailab-grid-size), auto;box-shadow:var(--ailab-ink-shadow);border:0;padding:clamp(1.25rem,4vw,2.25rem);position:relative;overflow:hidden}.lesson-page .lesson-hero h1{color:#fff;max-width:30ch;font-size:clamp(1.5rem,4.2vw,2.5rem);line-height:1.15}.lesson-page .lesson-hero .ui-eyebrow{color:#2a2306;font-family:var(--ailab-font-mono);letter-spacing:.04em;background:#ffe867;margin-block-end:var(--ailab-space-3);padding:.125rem .5rem;display:inline-block}.lesson-page .lesson-hero .ui-muted{color:#ffffffd1}.lesson-toc__title{font-family:var(--ailab-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ailab-text-muted);font-size:.75rem;font-weight:600}.lesson-stage-list__number{border-radius:var(--ailab-radius-sm);font-family:var(--ailab-font-mono);font-variant-numeric:tabular-nums}.lesson-flow{gap:var(--ailab-space-6)}.lesson-flow>.lesson-stage-view{--margin:clamp(1rem, 4.5vw, 3.75rem);gap:var(--ailab-space-5);padding:clamp(1.25rem, 3vw, 2rem) clamp(1rem, 3vw, 2rem) clamp(1.5rem, 3vw, 2.25rem) var(--margin);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius-sm);background-color:var(--ailab-surface);background-image:linear-gradient(var(--ailab-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--ailab-grid-line) 1px, transparent 1px);background-size:var(--ailab-grid-size) var(--ailab-grid-size);box-shadow:var(--ailab-shadow);position:relative}.lesson-flow>.lesson-stage-view:before{content:"";background:var(--ailab-margin-rule);pointer-events:none;width:2px;position:absolute;inset-block:0;inset-inline-start:calc(var(--margin) - .75rem)}.lesson-stage-view__header{align-items:baseline;gap:var(--ailab-space-4)}.lesson-stage-view__header h2{font-size:clamp(1.25rem,3vw,1.625rem)}.lesson-page .lesson-stage-view__number{width:auto;height:auto;color:var(--ailab-on-highlight);background:var(--ailab-highlight);box-shadow:none;font-family:var(--ailab-font-display);font-variant-numeric:tabular-nums;border-radius:.25rem .5rem .375rem .625rem;padding:.125rem .5rem .0625rem;font-size:1.125rem;font-weight:700;transform:rotate(-2deg)}.lesson-flow .lesson-block{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;animation:none}.lesson-flow .lesson-block--text p{max-width:68ch;font-size:1.0625rem;line-height:1.65}.lesson-flow .lesson-block--table,.lesson-flow .lesson-block--diagram{overflow-x:auto}.lesson-flow .lesson-block table{border:1px solid var(--ailab-border);background:var(--ailab-surface);font-variant-numeric:tabular-nums}.lesson-flow .lesson-block caption{font-family:var(--ailab-font-display);font-size:1rem;font-weight:600}.lesson-flow .lesson-block--task{border:1.5px solid var(--ailab-border-strong);border-radius:var(--ailab-radius);background:var(--ailab-surface);box-shadow:var(--ailab-shadow-sm);padding:clamp(1rem,2.5vw,1.5rem);padding-block-start:clamp(1.5rem,3vw,1.875rem);position:relative}.lesson-flow .lesson-block--task:before{content:"Задание";border-radius:var(--ailab-radius-sm);color:var(--ailab-on-primary);background:var(--ailab-primary);font-family:var(--ailab-font-mono);letter-spacing:.06em;text-transform:uppercase;padding:.125rem .5rem;font-size:.75rem;font-weight:600;position:absolute;inset-block-start:-.75rem;inset-inline-start:1rem}.lesson-flow .lesson-block--pixel_grid:before{content:"Лаборатория · пиксели"}.lesson-flow .lesson-block--decision_tree:before{content:"Лаборатория · дерево"}.lesson-flow .lesson-block--exit_ticket:before{content:"Выходной билет";background:var(--ailab-accent);color:var(--ailab-on-primary)}.lesson-flow .lesson-block--task fieldset{border:0;margin:0;padding:0}.lesson-flow .lesson-block--task legend{margin-block-end:var(--ailab-space-3);padding:0;font-size:1.0625rem}.lesson-flow .lesson-block--callout>aside{padding:var(--ailab-space-4) var(--ailab-space-5);border-radius:var(--ailab-radius-sm);border-width:0}.lesson-flow .lesson-block--callout>aside h3,.lesson-flow .lesson-block--callout>aside strong:first-child{font-family:var(--ailab-font-display);font-weight:600}.save-status{margin:var(--ailab-space-3) 0 0;color:var(--ailab-text-muted);font-family:var(--ailab-font-mono);align-items:center;gap:.375rem;font-size:.8125rem;display:inline-flex}.save-status:before{content:"";background:var(--ailab-border-strong);border-radius:50%;width:.5rem;height:.5rem}.save-status[data-state=saved]{color:var(--ailab-success)}.save-status[data-state=saved]:before{background:var(--ailab-success)}.save-status[data-state=saving]:before{background:var(--ailab-primary);animation:.9s ease-in-out infinite lab-pulse}.save-status[data-state=offline],.save-status[data-state=sync_required]{color:var(--ailab-danger)}.save-status[data-state=offline]:before,.save-status[data-state=sync_required]:before{background:var(--ailab-danger)}@keyframes lab-pulse{50%{opacity:.3}}.lesson-interactive{gap:var(--ailab-space-4);min-width:0;display:grid}.lesson-interactive__prompt{max-width:68ch;margin:0;font-size:1.0625rem;font-weight:600}.pixel-lab{gap:var(--ailab-space-4);min-width:0;display:grid;container-type:inline-size}.pixel-lab__tools{align-items:center;gap:var(--ailab-space-2);flex-wrap:wrap;display:flex}.pixel-lab__tools>button{margin:0}.pixel-lab__tools-label{color:var(--ailab-text-muted);font-family:var(--ailab-font-mono);font-size:.8125rem}.pixel-lab__tools-spacer{flex:1}.pixel-lab .pixel-lab__swatch{min-height:2.5rem;font-family:var(--ailab-font-mono);align-items:center;gap:.375rem;padding:.25rem .75rem .25rem .375rem;font-weight:700;display:inline-flex}.pixel-lab .pixel-lab__swatch[aria-pressed=true]{border-color:var(--ailab-primary);background:var(--ailab-primary-soft);box-shadow:inset 0 0 0 1px var(--ailab-primary)}.pixel-lab__swatch-chip{border:1px solid var(--ailab-border-strong);border-radius:.25rem;width:1.5rem;height:1.5rem}.pixel-lab__body{gap:var(--ailab-space-5);grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:start;display:grid}.pixel-lab__board{min-width:0;overflow-x:auto}.pixel-lab__grid{--cell:clamp(1.25rem, calc((100cqi - 18rem) / var(--pixel-columns)), 2.5rem);border:2px solid var(--ailab-text);background:var(--ailab-text);touch-action:none;-webkit-user-select:none;user-select:none;gap:1px;width:max-content;display:grid}.pixel-lab__row{grid-template-columns:repeat(var(--pixel-columns), var(--cell));gap:1px;display:grid}.pixel-lab .pixel-lab__cell{width:var(--cell);height:var(--cell);background:var(--ailab-pixel-off);cursor:crosshair;border:0;border-radius:0;min-width:0;min-height:0;margin:0;padding:0;transition:background-color 60ms linear}.pixel-lab .pixel-lab__cell:hover:not([aria-disabled]){background:color-mix(in srgb, var(--ailab-primary) 22%, var(--ailab-pixel-off));border:0}.pixel-lab .pixel-lab__cell:focus-visible{outline:3px solid var(--ailab-focus);outline-offset:-3px;z-index:1;position:relative}.pixel-lab .pixel-lab__cell[aria-disabled]{cursor:default}.pixel-lab__cell[data-shade="1"][data-max="1"],.pixel-lab__swatch[data-shade="1"][data-max="1"] .pixel-lab__swatch-chip,.pixel-preview__cell[data-shade="1"][data-max="1"],.pixel-lab .pixel-lab__cell[data-shade="3"],.pixel-lab__swatch[data-shade="3"] .pixel-lab__swatch-chip,.pixel-preview__cell[data-shade="3"]{background:var(--ailab-pixel-on)}.pixel-lab .pixel-lab__cell[data-shade="1"][data-max="3"],.pixel-lab__swatch[data-shade="1"][data-max="3"] .pixel-lab__swatch-chip,.pixel-preview__cell[data-shade="1"][data-max="3"]{background:color-mix(in srgb, var(--ailab-pixel-on) 30%, var(--ailab-pixel-off))}.pixel-lab .pixel-lab__cell[data-shade="2"],.pixel-lab__swatch[data-shade="2"] .pixel-lab__swatch-chip,.pixel-preview__cell[data-shade="2"]{background:color-mix(in srgb, var(--ailab-pixel-on) 62%, var(--ailab-pixel-off))}.pixel-lab__swatch[data-shade="0"] .pixel-lab__swatch-chip{background:var(--ailab-pixel-off)}.pixel-lab .pixel-lab__cell--changed{box-shadow:inset 0 0 0 3px var(--ailab-accent)}.pixel-lab__codes{min-width:0}.pixel-lab__codes-title{margin:0 0 var(--ailab-space-2);color:var(--ailab-text-muted);font-family:var(--ailab-font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.pixel-lab__code-list{font-family:var(--ailab-font-mono);font-variant-numeric:tabular-nums;gap:2px;margin:0;padding:0;font-size:.875rem;list-style:none;display:grid}.pixel-lab__code-list li{align-items:center;gap:var(--ailab-space-2);border-radius:.25rem;margin:0;padding:.125rem .375rem;display:flex}.pixel-lab__code-list code{font-family:inherit;font-size:inherit;letter-spacing:.06em}.pixel-lab__row-number{width:1.5rem;color:var(--ailab-text-muted);text-align:end}.pixel-lab__target{color:var(--ailab-text-muted)}.pixel-lab__target:after{content:" →";letter-spacing:0}.pixel-lab__code-list li.is-match{background:var(--ailab-success-soft)}.pixel-lab__code-list li.is-match .pixel-lab__mark{color:var(--ailab-success);font-weight:800}.pixel-lab__mark{width:1rem;color:var(--ailab-text-muted)}.pixel-lab__status{padding:var(--ailab-space-3) var(--ailab-space-4);border-radius:var(--ailab-radius-sm);background:var(--ailab-surface-muted);font-size:.9375rem}.pixel-lab__status strong{font-variant-numeric:tabular-nums}@container (width<=40rem){.pixel-lab__body{grid-template-columns:minmax(0,1fr)}.pixel-lab__grid{--cell:clamp(1.25rem, calc((100cqi - .5rem) / var(--pixel-columns)), 2.5rem)}.pixel-lab__code-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr))}}.pixel-preview{grid-template-columns:repeat(var(--pixel-columns), .875rem);background:var(--ailab-border-strong);gap:1px;padding:1px;display:inline-grid}.pixel-preview__cell{background:var(--ailab-pixel-off);width:.875rem;height:.875rem}.pixel-preview__codes{font-family:var(--ailab-font-mono);letter-spacing:.12em;font-size:.8125rem}.tree-lab{gap:var(--ailab-space-4);min-width:0;display:grid;container-type:inline-size}.tree-lab__objects{gap:var(--ailab-space-2);flex-wrap:wrap;display:flex}.tree-lab__chip{border:1px solid var(--ailab-border-strong);background:var(--ailab-surface);border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.875rem;font-weight:650;display:inline-flex}.tree-lab__chip.is-placed{border-color:var(--ailab-success);color:var(--ailab-success);background:var(--ailab-success-soft)}.tree-lab__chip--test{border-style:dashed}.tree-lab__canvas{padding:var(--ailab-space-4) var(--ailab-space-2);border:1px dashed var(--ailab-border-strong);border-radius:var(--ailab-radius);background:color-mix(in srgb, var(--ailab-surface-muted) 50%, transparent);overflow-x:auto}.tree-lab__root,.tree-lab__children{justify-content:center;margin:0;padding:0;list-style:none;display:flex}.tree-lab__root{width:max-content;min-width:100%}.tree-lab__slot{flex-direction:column;align-items:center;margin:0;padding:0 .375rem;display:flex}.tree-lab__slot+.tree-lab__slot{margin:0}.tree-lab__children{gap:0;padding-block-start:1.25rem;position:relative}.tree-lab__children:before{content:"";border-inline-start:2px solid var(--ailab-border-strong);height:.625rem;position:absolute;inset-block-start:0;inset-inline-start:50%}.tree-lab__children>.tree-lab__slot{padding-block-start:.625rem;position:relative}.tree-lab__children>.tree-lab__slot:before{content:"";border-block-start:2px solid var(--ailab-border-strong);height:1.25rem;position:absolute;inset-block-start:-.625rem}.tree-lab__children>.tree-lab__slot[data-edge=да]:before{border-inline-start:2px solid var(--ailab-border-strong);border-start-start-radius:.5rem;inset-inline:50% 0}.tree-lab__children>.tree-lab__slot[data-edge=нет]:before{border-inline-end:2px solid var(--ailab-border-strong);border-start-end-radius:.5rem;inset-inline:0 50%}.tree-lab__edge{z-index:1;font-family:var(--ailab-font-mono);border-radius:999px;margin-block-end:.375rem;padding:0 .5rem;font-size:.75rem;font-weight:700;position:relative}.tree-lab__edge--yes{color:var(--ailab-success);background:var(--ailab-success-soft)}.tree-lab__edge--no{color:var(--ailab-danger);background:var(--ailab-danger-soft)}.tree-lab__question{border:2px solid var(--ailab-primary);border-radius:var(--ailab-radius);background:var(--ailab-surface);width:13rem;box-shadow:var(--ailab-shadow-sm);gap:.375rem;padding:.5rem;display:grid}.tree-lab__question select{min-height:2.5rem;padding-block:.25rem;font-weight:700}.tree-lab__question-text{text-align:center;font-weight:700}.tree-lab__question--useless{border-color:var(--ailab-achievement)}.tree-lab__split{height:1.375rem;font-family:var(--ailab-font-mono);border-radius:.25rem;font-size:.75rem;font-weight:700;display:flex;overflow:hidden}.tree-lab__split>span{flex-basis:0;place-items:center;min-width:1.5rem;display:grid}.tree-lab__split-yes{color:var(--ailab-success);background:var(--ailab-success-soft)}.tree-lab__split-no{color:var(--ailab-danger);background:var(--ailab-danger-soft)}.tree-lab__leaf{border:2px solid var(--ailab-border-strong);border-radius:1.25rem 1.25rem var(--ailab-radius) var(--ailab-radius);background:var(--ailab-surface);text-align:center;justify-items:center;gap:.375rem;width:11rem;padding:.5rem .625rem;display:grid}.tree-lab__leaf-title{font-weight:750}.tree-lab__leaf-items{color:var(--ailab-text-muted);font-size:.8125rem}.tree-lab__leaf--alone{border-color:var(--ailab-success);background:var(--ailab-success-soft)}.tree-lab__leaf--alone .tree-lab__leaf-title{color:var(--ailab-success)}.tree-lab__leaf--mixed{border-color:var(--ailab-achievement);background:var(--ailab-warning-soft);border-style:dashed}.tree-lab__leaf--empty{color:var(--ailab-text-muted);border-style:dotted}.tree-lab__ask{gap:.25rem;width:100%;font-size:.8125rem;display:grid}.tree-lab__ask select{min-height:2.25rem;padding-block:.125rem}.tree-lab__note{color:var(--ailab-achievement);font-size:.75rem;font-weight:650;line-height:1.3}.tree-lab__status{gap:var(--ailab-space-2) var(--ailab-space-5);padding:var(--ailab-space-3) var(--ailab-space-4);border-radius:var(--ailab-radius-sm);background:var(--ailab-surface-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.tree-lab__status.is-done{color:var(--ailab-success);background:var(--ailab-success-soft)}.tree-lab__tests-title{margin:0 0 var(--ailab-space-2);font-weight:700}.tree-lab__tests ul{gap:var(--ailab-space-2);margin:0;padding:0;list-style:none;display:grid}.tree-lab__tests li{align-items:center;gap:var(--ailab-space-2);flex-wrap:wrap;margin:0;display:flex}@container (width<=44rem){.tree-lab__canvas{padding:var(--ailab-space-3)}.tree-lab__root{width:auto;min-width:0;display:block}.tree-lab__slot{align-items:flex-start;padding:.25rem 0}.tree-lab__children{border-inline-start:2px solid var(--ailab-border-strong);flex-direction:column;align-items:stretch;margin-inline-start:.75rem;padding:.25rem 0 0 .875rem}.tree-lab__children:before{display:none}.tree-lab__children>.tree-lab__slot{padding-block-start:.25rem}.tree-lab__children>.tree-lab__slot[data-edge]:before{border:0;border-block-start:2px solid var(--ailab-border-strong);border-radius:0;width:.625rem;height:0;inset-block-start:1rem;inset-inline:-.875rem auto}.tree-lab__edge{margin-block-end:.25rem}.tree-lab__question,.tree-lab__leaf{width:min(100%,17rem)}.tree-lab__leaf{text-align:start;border-radius:var(--ailab-radius);justify-items:start}}.lesson-chart{gap:var(--ailab-space-3);min-width:0;margin:0;display:grid}.lesson-chart figcaption{gap:.25rem;margin:0;display:grid}.lesson-chart__title{color:var(--ailab-text);font-family:var(--ailab-font-display);font-size:1rem;font-weight:600}.lesson-chart__summary{color:var(--ailab-text-muted);font-weight:400}.lesson-chart__frame{padding:var(--ailab-space-2);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius);background:var(--ailab-surface);overflow-x:auto}.lesson-chart svg{width:100%;min-width:30rem;height:auto;display:block;overflow:visible}.lesson-chart__grid{stroke:var(--ailab-border);stroke-width:1px}.lesson-chart__axis{stroke:var(--ailab-border-strong);stroke-width:1.5px}.lesson-chart__tick{fill:var(--ailab-text-muted);font-family:var(--ailab-font-mono);font-size:11px}.lesson-chart__label{fill:var(--ailab-text-muted);font-size:12px;font-weight:600}.lesson-chart__value{fill:var(--ailab-text);font-family:var(--ailab-font-mono);font-size:11px;font-weight:700}.lesson-chart{--series-0:var(--ailab-primary);--series-1:var(--ailab-accent);--series-2:var(--ailab-success);--series-3:var(--ailab-achievement)}.lesson-chart [data-series="0"]{--series:var(--series-0)}.lesson-chart [data-series="1"]{--series:var(--series-1)}.lesson-chart [data-series="2"]{--series:var(--series-2)}.lesson-chart [data-series="3"]{--series:var(--series-3)}.lesson-chart__line{fill:none;stroke:var(--series);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.lesson-chart__dot{fill:var(--ailab-surface);stroke:var(--series);stroke-width:2px}.lesson-chart__bar{fill:var(--series)}.lesson-chart__legend{gap:var(--ailab-space-2) var(--ailab-space-4);flex-wrap:wrap;margin:0;padding:0;font-size:.875rem;font-weight:600;list-style:none;display:flex}.lesson-chart__legend li{align-items:center;gap:.375rem;margin:0;display:inline-flex}.lesson-chart__swatch{background:var(--series);border-radius:.1875rem;width:.875rem;height:.875rem}.lesson-chart__data summary{cursor:pointer;color:var(--ailab-primary);font-size:.875rem;font-weight:650}.lesson-chart__table{max-height:16rem;margin-block-start:var(--ailab-space-2);overflow:auto}.lesson-chart__table table{font-family:var(--ailab-font-mono);font-size:.8125rem}.lesson-chart__table th,.lesson-chart__table td{padding:.25rem .75rem}.lesson-materials{gap:var(--ailab-space-3);display:grid}.lesson-materials__title{font-family:var(--ailab-font-display);margin:0;font-size:1.0625rem;font-weight:600}.lesson-materials__list{gap:var(--ailab-space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));margin:0;padding:0;list-style:none;display:grid}.lesson-materials__list li{margin:0}.lesson-materials__file{gap:.25rem var(--ailab-space-3);height:100%;padding:var(--ailab-space-3) var(--ailab-space-4);border:1px solid var(--ailab-border);border-radius:var(--ailab-radius);color:var(--ailab-text);background:var(--ailab-surface);grid-template-columns:auto minmax(0,1fr);text-decoration:none;transition:border-color .12s,transform .12s;display:grid}.lesson-materials__file:hover{color:var(--ailab-text);border-color:var(--ailab-primary);transform:translateY(-1px)}.lesson-materials__badge{width:2.75rem;height:3.25rem;color:var(--ailab-on-primary);background:var(--ailab-accent);font-family:var(--ailab-font-mono);letter-spacing:.04em;border-radius:.25rem .75rem .25rem .25rem;grid-row:span 2;place-items:center;font-size:.6875rem;font-weight:800;display:grid}.lesson-materials__file[data-type=xlsx] .lesson-materials__badge{background:var(--ailab-success)}.lesson-materials__file[data-type=docx] .lesson-materials__badge,.lesson-materials__file[data-type=pptx] .lesson-materials__badge{background:var(--ailab-primary)}.lesson-materials__text{gap:.125rem;min-width:0;display:grid}.lesson-materials__text span{color:var(--ailab-text-muted);font-size:.875rem;line-height:1.4}.lesson-materials__meta{color:var(--ailab-primary);font-family:var(--ailab-font-mono);grid-column:2;font-size:.75rem;font-weight:600}@media (prefers-reduced-motion:reduce){.save-status[data-state=saving]:before{animation:none}.lesson-materials__file{transition:none}}
