@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--color-primary: #ff5e00;--color-primary-hover: #e65400;--color-secondary: #1a1a1a;--color-bg: #ffffff;--color-bg-secondary: #f5f5f5;--color-bg-dark: #1a1a1a;--color-bg-dark-hover: #2a2a2a;--color-text: #1a1a1a;--color-text-secondary: #666666;--color-text-muted: #999999;--color-text-light: #ffffff;--color-text-light-muted: #b0b0b0;--color-border: #e5e5e5;--color-border-dark: #333333;--color-card-orange: #ff6b35;--color-card-red: #e63946;--color-card-blue: #4361ee;--color-card-cream: #f5e6d3;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--header-height: 64px;--border-radius-sm: 8px;--border-radius-md: 16px;--border-radius-lg: 24px;--border-radius-xl: 32px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3}h1{font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.2}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:1.125rem}p{margin:0}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:500;font-family:inherit;border-radius:var(--border-radius-sm);border:1px solid transparent;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn--primary{background-color:var(--color-secondary);color:var(--color-text-light);border-color:var(--color-secondary)}.btn--primary:hover{background-color:#333;border-color:#333}.btn--secondary{background-color:var(--color-bg-secondary);color:var(--color-text)}.btn--secondary:hover{background-color:#e8e8e8}.btn--outline{background-color:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn--outline:hover{border-color:var(--color-text)}.btn--ghost{background-color:transparent;color:var(--color-text);padding:.5rem .75rem}.btn--ghost:hover{color:var(--color-primary)}.btn--large{padding:1rem 1.75rem;font-size:1rem}.btn--small{padding:.5rem 1rem;font-size:.875rem}.page-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding:2rem;max-width:1280px;margin:0 auto;width:100%}.container{max-width:1280px;margin:0 auto;padding:0 2rem}.spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card{background-color:var(--color-bg);border-radius:var(--border-radius-lg);overflow:hidden;transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card--dark{background-color:var(--color-bg-dark);color:var(--color-text-light)}.not-found-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.not-found-page h1{font-size:8rem;font-weight:700;color:var(--color-text);margin-bottom:1rem}.not-found-page p{font-size:1.25rem;color:var(--color-text-secondary);margin-bottom:2rem}::selection{background-color:var(--color-primary);color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.alert{border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:.875rem 1rem;background:var(--color-bg);display:grid;gap:.5rem}.alert__title{font-weight:700}.alert__body{color:var(--color-text-secondary);font-size:.9375rem}.alert__meta{color:var(--color-text-muted);font-size:.8125rem}.alert__actions{display:flex;gap:.5rem;flex-wrap:wrap}.alert--error{border-color:#e6394640;background:#e639460f}.alert--error .alert__title{color:#b4232c}.toast-stack{position:fixed;top:16px;right:16px;display:grid;gap:10px;z-index:1000;width:min(420px,calc(100vw - 32px))}.toast{animation:toast-in .18s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.admin-layout{min-height:100vh;display:grid;grid-template-columns:260px 1fr;background:var(--color-bg-secondary)}.admin-sidebar{background:var(--color-bg);border-right:1px solid var(--color-border);padding:1rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:1rem}.admin-sidebar__brand{display:flex;align-items:center;gap:.75rem;padding:.5rem}.admin-sidebar__logo{width:36px;height:36px;border-radius:10px;background:var(--color-secondary);color:var(--color-text-light);display:grid;place-items:center;font-weight:700}.admin-sidebar__title{display:grid;gap:.125rem}.admin-sidebar__title strong{line-height:1.1}.admin-sidebar__title span{font-size:.8125rem;color:var(--color-text-muted)}.admin-nav{display:grid;gap:.25rem}.admin-nav__item{display:flex;align-items:center;gap:.625rem;padding:.75rem;border-radius:var(--border-radius-sm);color:var(--color-text);border:1px solid transparent;transition:background var(--transition-base),border-color var(--transition-base)}.admin-nav__item:hover{background:var(--color-bg-secondary);border-color:var(--color-border)}.admin-nav__item--active{background:#1a1a1a14;border-color:#1a1a1a1f}.admin-nav__item--disabled{opacity:.55;cursor:not-allowed}.admin-sidebar__spacer{flex:1}.admin-sidebar__logout{width:100%}.admin-content{padding:1.5rem}.admin-page{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);width:100%;max-width:1200px;margin:0 auto}@media (max-width: 900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{height:auto;position:static;border-right:none;border-bottom:1px solid var(--color-border);flex-direction:row;align-items:center}.admin-sidebar__spacer{display:none}.admin-nav{grid-auto-flow:column;grid-auto-columns:max-content;gap:.5rem}.admin-content{padding:1rem}}.course-page__top{display:grid;gap:.75rem;margin-bottom:1.25rem}.course-page__back{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);width:max-content}.course-page__back:hover{color:var(--color-text)}.course-page__title{font-size:1.5rem;font-weight:700}.course-page__description{color:var(--color-text-secondary);line-height:1.5}.course-section{display:grid;gap:.75rem}.course-section__title{font-weight:700}.course-section__title-row{display:flex;align-items:center;justify-content:flex-start;gap:.5rem}.course-section--spaced{margin-top:1rem}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .625rem;border-radius:999px;font-size:.8125rem;font-weight:700;border:1px solid rgba(0,0,0,.1);background:var(--color-bg-secondary);color:var(--color-text-secondary);white-space:nowrap}.status-badge--published{background:#22c55e1f;border-color:#22c55e40;color:#117a37}.status-badge--draft{background:#64748b1f;border-color:#64748b40;color:#334155}.status-badge--archived{background:#f59e0b24;border-color:#f59e0b47;color:#8a4b00}.icon-btn{width:36px;height:36px;border-radius:var(--border-radius-sm);border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;display:grid;place-items:center;transition:background var(--transition-base),border-color var(--transition-base);font-size:1.125rem;line-height:1}.icon-btn:hover{background:var(--color-bg-secondary);border-color:#00000029}.icon-btn[disabled]{opacity:.55;cursor:not-allowed}.caret{display:inline-block;transition:transform var(--transition-base);color:var(--color-text-secondary)}.caret--open{transform:rotate(90deg)}.drag-handle{width:20px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted);opacity:0;cursor:grab;-webkit-user-select:none;user-select:none}.drag-handle--disabled{opacity:.35!important;cursor:not-allowed}.drag-handle--child{margin-left:12px}.structure-topic{display:grid}.structure-row{display:grid;grid-template-columns:20px 36px 1fr auto;gap:.5rem;align-items:center;padding:.375rem .5rem;border-radius:var(--border-radius-sm)}.structure-row[data-drag-over=true]{outline:2px solid rgba(67,97,238,.35);outline-offset:0px}.structure-row:hover{background:#1a1a1a0a}.structure-row:hover .drag-handle{opacity:1}.structure-row--lesson{grid-template-columns:20px 1fr 72px auto;padding-left:28px}.structure-actions--lesson{justify-self:end}.structure-title{display:flex;align-items:center;gap:.5rem;min-width:0}.structure-meta{font-size:.8125rem;color:var(--color-text-muted);white-space:nowrap}.structure-order-badge{justify-self:end;font-size:.8125rem;color:var(--color-text-muted);font-weight:600;white-space:nowrap;opacity:.85}.structure-title-btn{border:none;background:transparent;padding:.25rem;border-radius:var(--border-radius-sm);cursor:text;text-align:left;font:inherit;color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.structure-title-btn:hover{background:#1a1a1a0f}.structure-title-btn--muted{color:var(--color-text-muted)}.structure-inline-input{width:100%;min-width:0;border:1px solid rgba(0,0,0,.14);border-radius:var(--border-radius-sm);padding:.375rem .5rem;font:inherit;background:var(--color-bg)}.structure-inline-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.structure-actions{display:flex;justify-content:flex-end;gap:.5rem}.structure-children{margin-left:52px;padding:0;border-left:2px solid transparent;overflow:hidden;max-height:0;opacity:0;transform:translateY(-2px);transition:max-height .22s ease,opacity .16s ease,transform .22s ease,padding .22s ease,border-color .22s ease}.structure-children--open{padding:.25rem 0 .5rem .75rem;border-left-color:#00000014;max-height:2000px;opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.structure-children{transition:none}}.structure-lessons{display:grid;gap:.125rem}.create-lesson-menu{position:relative;display:inline-flex}.create-lesson-menu__panel{position:absolute;top:42px;right:0;z-index:20;min-width:180px;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-bg);box-shadow:var(--shadow-md)}.create-lesson-menu__item{width:100%;display:flex;align-items:center;gap:.5rem;border:none;background:transparent;padding:.6rem .75rem;border-radius:calc(var(--border-radius-sm) - 2px);font:inherit;cursor:pointer;color:var(--color-text);text-align:left}.create-lesson-menu__item:hover{background:var(--color-bg-secondary)}.create-lesson-menu__icon{width:20px;display:inline-flex;justify-content:center}.lesson-type-icon{width:20px;display:inline-flex;justify-content:center;opacity:.9;flex:0 0 auto}.lesson-icon-wrapper{position:relative;display:inline-flex;align-items:center}.lesson-type-icon--clickable{cursor:pointer;border-radius:var(--border-radius-sm);transition:background var(--transition-base);padding:2px;border:none;background:transparent;outline:none}.lesson-type-icon--clickable:hover{background:#1a1a1a14}.lesson-type-icon--clickable:focus{outline:none;box-shadow:none}.lesson-type-icon--clickable:focus-visible{outline:none;box-shadow:none}.lesson-type-icon--clickable[disabled]{opacity:.6;cursor:not-allowed}.lesson-icon-menu{position:fixed;z-index:100;min-width:200px;padding:.25rem;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-bg);box-shadow:var(--shadow-md);max-height:calc(100vh - 20px);overflow-y:auto}.lesson-icon-menu__item{width:100%;display:flex;align-items:center;gap:.5rem;border:none;background:transparent;padding:.6rem .75rem;border-radius:calc(var(--border-radius-sm) - 2px);font:inherit;cursor:pointer;color:var(--color-text);text-align:left}.lesson-icon-menu__item:hover{background:var(--color-bg-secondary)}.lesson-icon-menu__icon{width:20px;display:inline-flex;justify-content:center}.structure-empty{color:var(--color-text-secondary);padding:.25rem .75rem .75rem}.course-update-card{border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:1rem;background:var(--color-bg);display:grid;gap:.875rem}.course-update-layout{display:grid;grid-template-columns:1fr 320px;gap:1rem;align-items:start}.course-cover{border:1px solid rgba(0,0,0,.08);border-radius:var(--border-radius-md);background:var(--color-bg-secondary);padding:.875rem;display:grid;gap:.75rem}.course-cover__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.course-cover__title{font-weight:700}.course-cover__file-input{display:none}.course-cover__preview{width:100%;aspect-ratio:16 / 9;border-radius:var(--border-radius-md);overflow:hidden;border:1px solid rgba(0,0,0,.12);background:#0000000a}.course-cover__image{width:100%;height:100%;object-fit:cover;display:block}.course-cover__empty{width:100%;aspect-ratio:16 / 9;border-radius:var(--border-radius-md);border:1px dashed rgba(0,0,0,.18);display:grid;place-items:center;color:var(--color-text-secondary);background:#00000005;padding:.75rem;text-align:center}.course-cover__hint{font-size:.8125rem;line-height:1.4;color:var(--color-text-secondary)}.course-form{display:grid;gap:.875rem}.course-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}.course-form__field{display:grid;gap:.375rem}.course-form__label{font-size:.875rem;color:var(--color-text-secondary)}.course-form__input,.course-form__textarea,.course-form__select{width:100%;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);padding:.75rem .875rem;font:inherit;outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base);background:var(--color-bg)}.course-form__textarea{min-height:110px;resize:vertical}.course-form__input:focus,.course-form__textarea:focus,.course-form__select:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.course-form__actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.25rem}.course-form__error{border:1px solid rgba(230,57,70,.25);background:#e639460f;color:#b4232c;border-radius:var(--border-radius-sm);padding:.75rem .875rem;font-size:.9375rem}.topics-table{border:1px solid var(--color-border);border-radius:var(--border-radius-md);overflow:hidden}.topics-table__head,.topics-table__row{display:grid;grid-template-columns:90px 90px 1fr 90px;gap:.75rem;padding:.75rem 1rem}.topics-table__head{background:var(--color-bg-secondary);font-size:.875rem;color:var(--color-text-secondary);font-weight:600}.topics-table__row{border-top:1px solid var(--color-border);background:var(--color-bg);font-size:.9375rem}.topics-table__row--topic{background:#1a1a1a0a;font-weight:600}.topics-table__row--lesson .topics-table__name{padding-left:.75rem;position:relative}.topics-table__row--lesson .topics-table__name:before{content:"↳";position:absolute;left:0;color:var(--color-text-muted)}.topics-table__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-structure-card{border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-bg);padding:1rem;display:grid;gap:.75rem}.course-structure-card__meta{display:grid;gap:.25rem}.course-structure-card__counts{font-size:.9375rem;color:var(--color-text-secondary)}.course-structure-card__counts strong{color:var(--color-text);font-weight:700}.course-structure-card__note{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.topics-accordion{display:grid;gap:.375rem}@media (max-width: 900px){.course-update-layout,.course-form__grid{grid-template-columns:1fr}.topics-table__head,.topics-table__row{grid-template-columns:72px 72px 1fr 72px}.structure-row{grid-template-columns:20px 36px 1fr auto}.structure-meta{display:none}.structure-row--lesson{grid-template-columns:20px 1fr 60px auto}}.courses-list__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.courses-list__title{font-size:1.5rem;font-weight:600}.courses-list__subtitle{color:var(--color-text-secondary);margin-top:.25rem}.courses-list__items{display:grid;gap:.75rem}.courses-controls{border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:1rem;background:var(--color-bg);margin-bottom:1rem;display:grid;gap:.75rem}.courses-controls__row{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr .6fr;gap:.75rem;align-items:end}.courses-controls__field{display:grid;gap:.375rem}.courses-controls__field--small{min-width:120px}.courses-controls__label{font-size:.875rem;color:var(--color-text-secondary)}.courses-controls__input,.courses-controls__select{width:100%;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);padding:.75rem .875rem;font:inherit;outline:none;background:var(--color-bg)}.courses-controls__input:focus,.courses-controls__select:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.courses-controls__actions{display:flex;justify-content:flex-end}.course-row{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:.875rem 1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-bg);cursor:pointer;transition:box-shadow var(--transition-base),transform var(--transition-base),border-color var(--transition-base)}.course-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:#1a1a1a2e}.course-row__main{display:grid;gap:.25rem}.course-row__name{font-weight:600}.course-row__meta{display:flex;flex-wrap:wrap;gap:.5rem .75rem;color:var(--color-text-secondary);font-size:.875rem}.course-row__right{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;white-space:nowrap}.status-badge{font-size:.8125rem;font-weight:600;padding:.375rem .625rem;border-radius:999px;border:1px solid var(--color-border)}.status-badge--DRAFT{background:#9999991f;color:#4d4d4d}.status-badge--PUBLISHED{background:#4bf15350;color:#38423d}.status-badge--ARCHIVED{background:#e639461f;color:#b4232c}.courses-list__state{padding:2rem 0;display:grid;place-items:center;color:var(--color-text-secondary);gap:.75rem}.pagination{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.5rem;padding-top:.75rem;border-top:1px dashed rgba(0,0,0,.08)}.pagination__info{color:var(--color-text-secondary);font-size:.875rem}@media (max-width: 1100px){.courses-controls__row{grid-template-columns:1fr 1fr}}.block-inserter{position:relative;display:flex;justify-content:center;align-items:center;height:24px;margin:.5rem 0;transition:all .2s ease;z-index:10}.block-inserter:not(.block-inserter--visible):not(.block-inserter--open){opacity:.27}.block-inserter--visible{margin-bottom:2rem}.block-inserter:not(.block-inserter--visible):not(.block-inserter--open):hover{opacity:1}.block-inserter:not(.block-inserter--visible):before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background-color:var(--color-primary);opacity:.08;transition:opacity .2s;pointer-events:none}.block-inserter:not(.block-inserter--visible):hover:before{opacity:.2}.block-inserter__trigger{display:flex;align-items:center;justify-content:center;gap:.5rem;width:24px;height:24px;border-radius:50%;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all .2s;z-index:2;font-size:1.2rem;line-height:1;padding:0}.block-inserter--visible .block-inserter__trigger{width:auto;height:40px;border-radius:var(--border-radius-sm);padding:0 1.5rem;background-color:var(--color-primary);color:#fff;border:none}.block-inserter--visible .block-inserter__trigger:hover{background-color:var(--color-primary-hover);transform:translateY(-1px)}.block-inserter:not(.block-inserter--visible) .block-inserter__trigger:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:scale(1.1)}.block-inserter__icon{display:flex;align-items:center;justify-content:center;margin-top:-2px}.block-inserter__label{font-size:.9375rem;font-weight:500}.block-inserter__menu{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);padding:.5rem;display:flex;align-items:center;gap:.5rem;z-index:100;animation:fadeIn .2s ease-out}.block-inserter--visible .block-inserter__menu{top:0;transform:translate(-50%)}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-40%)}to{opacity:1;transform:translate(-50%,-50%)}}.block-inserter--visible .block-inserter__menu{animation:fadeInVisible .2s ease-out}@keyframes fadeInVisible{0%{opacity:0;transform:translate(-50%,10%)}to{opacity:1;transform:translate(-50%)}}.block-inserter__menu-grid{display:flex;gap:.5rem}.block-inserter__menu-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.75rem;min-width:80px;background:transparent;border:1px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s;color:var(--color-text)}.block-inserter__menu-item:hover{background-color:var(--color-bg-secondary);border-color:var(--color-border)}.block-inserter__menu-icon{font-size:1.5rem}.block-inserter__menu-label{font-size:.75rem;font-weight:500}.block-inserter__close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:50%;margin-left:.5rem;align-self:flex-start}.block-inserter__close:hover{background-color:var(--color-bg-secondary);color:var(--color-text)}.divider-block-editor{margin-bottom:1.25rem}.divider-block-editor__content{padding:.85rem 1rem}.divider-block-editor__preview{margin-bottom:1.5rem;padding:1rem;background-color:var(--color-bg-secondary);border-radius:var(--border-radius-sm)}.divider-preview{width:100%;border-top:1px solid var(--color-text)}.divider-preview--three-dots{text-align:center;font-size:1.5rem;letter-spacing:.5rem;line-height:1}.divider-block-editor__controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.divider-block-editor__control-group{display:flex;flex-direction:column;gap:.5rem}.divider-block-editor__label-input{font-size:.875rem;font-weight:500;color:var(--color-text)}.divider-block-editor__select,.divider-block-editor__input{padding:.75rem;font-size:.9375rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-base)}.divider-block-editor__select:focus,.divider-block-editor__input:focus{outline:none;border-color:var(--color-primary)}.divider-block-editor__color-input{width:100%;height:40px;padding:0;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);cursor:pointer}.image-block-editor{margin-bottom:1.25rem}.image-block-editor__content{padding:.85rem 1rem}.image-block-editor__file-input{display:none}.image-block-editor__preview{margin-top:1rem;border-radius:var(--border-radius-sm);overflow:hidden;background-color:var(--color-bg-secondary);padding:.5rem}.image-block-editor__image{width:100%;height:auto;display:block;border-radius:var(--border-radius-sm);max-width:800px;max-height:500px;margin:0 auto;object-fit:contain}.image-block-editor__input-group{margin-top:1rem}.image-block-editor__label-input{display:block;font-size:.875rem;font-weight:500;color:var(--color-text);margin-bottom:.5rem}.image-block-editor__input{width:100%;padding:.75rem;font-size:.9375rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-base)}.image-block-editor__input:focus{outline:none;border-color:var(--color-primary)}.selftest-editor{margin-bottom:1.25rem;padding:.85rem 1rem}.selftest-editor__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.selftest-editor__title{font-weight:600}.selftest-editor__field{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.selftest-editor__field--compact{margin-top:.75rem;margin-bottom:0}.selftest-editor__label{font-size:.875rem;font-weight:500;color:var(--color-text)}.selftest-editor__input,.selftest-editor__textarea,.selftest-editor__select{padding:.75rem;font-size:.9375rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-base)}.selftest-editor__textarea{resize:vertical}.selftest-editor__input:focus,.selftest-editor__textarea:focus,.selftest-editor__select:focus{outline:none;border-color:var(--color-primary)}.selftest-editor__questions{display:flex;flex-direction:column;gap:1rem}.selftest-editor__question{padding:.85rem 1rem;background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);border:1px solid var(--color-border)}.selftest-editor__question-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.selftest-editor__question-title{font-weight:600}.selftest-editor__icon-btn{background:transparent;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);padding:.35rem .5rem;cursor:pointer}.selftest-editor__icon-btn:disabled{cursor:not-allowed;opacity:.5}.selftest-editor__answers{margin-top:.75rem}.selftest-editor__answers-title{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.selftest-editor__answer-row{display:grid;grid-template-columns:2.25rem 1fr auto;gap:.5rem;align-items:center;margin-bottom:.5rem}.selftest-editor__answer-index{font-size:.875rem;color:var(--color-text-secondary);text-align:right}.selftest-editor__answers-actions{margin-top:.5rem}.rt-editor{border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-bg);overflow:hidden}.rt-editor__toolbar{display:flex;flex-wrap:nowrap;gap:.35rem;align-items:center;padding:.5rem .75rem;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.rt-editor__btn{flex:0 0 auto;border:1px solid transparent;background:transparent;border-radius:10px;padding:.35rem .5rem;cursor:pointer;color:var(--color-text);font:inherit;font-size:.9rem;line-height:1;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.rt-editor__btn:hover{background:#0000000f}.rt-editor__btn--active{background:#ff5e001f;border-color:#ff5e0040}.rt-editor__divider{width:1px;height:22px;background:#0000001f;margin:0 .25rem}.rt-editor__select{flex:0 0 auto;border:1px solid rgba(0,0,0,.14);background:#ffffffb3;border-radius:10px;padding:.35rem .6rem;font:inherit;font-size:.9rem;color:var(--color-text)}.rt-editor__toolbar::-webkit-scrollbar{height:8px}.rt-editor__toolbar::-webkit-scrollbar-track{background:transparent}.rt-editor__toolbar::-webkit-scrollbar-thumb{background:#00000024;border-radius:999px}.rt-editor__toolbar::-webkit-scrollbar-thumb:hover{background:#00000038}.rt-editor__select:focus{outline:none;border-color:#ff5e0080;box-shadow:0 0 0 3px #ff5e0026}.rt-editor__content{padding:.85rem 1rem;min-height:200px;font-size:1rem;line-height:1.8}.rt-editor__content:focus{outline:none}.rt-editor__content.ProseMirror{outline:none}.rt-editor__content.ProseMirror p{margin:0 0 1rem}.rt-editor__content.ProseMirror h1,.rt-editor__content.ProseMirror h2,.rt-editor__content.ProseMirror h3{margin:1.25rem 0 .75rem;line-height:1.2}.rt-editor__content.ProseMirror h1{font-size:2rem}.rt-editor__content.ProseMirror h2{font-size:1.5rem}.rt-editor__content.ProseMirror h3{font-size:1.25rem}.rt-editor__content.ProseMirror h4{margin:1.1rem 0 .6rem;line-height:1.2;font-size:1.1rem}.rt-editor__content.ProseMirror ul,.rt-editor__content.ProseMirror ol{margin:0 0 1rem;padding-left:1.5rem}.rt-editor__content.ProseMirror code{background-color:var(--color-bg-secondary);padding:.2rem .35rem;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em}.rt-editor__content.ProseMirror pre{background-color:var(--color-bg-secondary);padding:1rem;border-radius:var(--border-radius-sm);overflow-x:auto;margin:0 0 1rem}.rt-editor__content.ProseMirror pre code{background:transparent;padding:0}.rt-editor__content.ProseMirror blockquote{border-left:4px solid var(--color-primary);padding-left:1rem;margin:0 0 1rem;color:var(--color-text-secondary)}.rt-editor__content.ProseMirror a{color:var(--color-primary)!important;text-decoration:underline;text-decoration-color:#ff5e00f2;text-decoration-thickness:2px;text-underline-offset:3px;border-radius:6px;padding:0 2px;background:#ff5e001f;font-weight:500}.rt-editor__content.ProseMirror a:hover{color:var(--color-primary-hover);background:#ff5e001a}.rt-editor__content.ProseMirror a:visited{color:var(--color-primary)!important}.rt-editor__content.ProseMirror a:focus{outline:none}.rt-editor__content.ProseMirror a:focus-visible{box-shadow:0 0 0 3px #ff5e0038}.rt-editor__content.ProseMirror hr{border:none;border-top:1px solid rgba(0,0,0,.18);margin:1.25rem 0}.rt-editor__content.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-muted);pointer-events:none;height:0}.rt-editor__slash{position:fixed;min-width:280px;max-width:360px;background:var(--color-bg);border:1px solid rgba(0,0,0,.12);border-radius:12px;box-shadow:0 12px 40px #00000024;padding:.35rem;z-index:10000}.rt-editor__slash-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .55rem;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;text-align:left}.rt-editor__slash-item:hover,.rt-editor__slash-item--active{background:#ff5e001a;border-color:#ff5e0033}.rt-editor__slash-title{font-weight:600;color:var(--color-text);font-size:.95rem}.rt-editor__slash-hint{color:var(--color-text-secondary);font-size:.8rem}.text-block-editor{margin-bottom:1.25rem}.font-size-select{padding:.5rem;font-size:.875rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);cursor:pointer;transition:border-color var(--transition-base)}.font-size-select:hover{border-color:var(--color-primary)}.font-size-select:focus{outline:none;border-color:var(--color-primary)}[data-radix-popper-content-wrapper],[data-radix-select-content],[data-radix-popover-content],[data-radix-dialog-content],[data-radix-dropdown-menu-content]{z-index:10000!important}[data-radix-portal],.cm-tooltip,.cm-tooltip-autocomplete,.cm-tooltip.cm-tooltip-autocomplete,.cm-editor .cm-tooltip,select[data-code-block-language],[data-code-block-language-select]{z-index:9999!important}.video-block-editor{margin-bottom:1.25rem}.video-block-editor__content{padding:.85rem 1rem}.video-block-editor__input-group{margin-bottom:1rem}.video-block-editor__label-input{display:block;font-size:.875rem;font-weight:500;color:var(--color-text);margin-bottom:.5rem}.video-block-editor__input{width:100%;padding:.75rem;font-size:.9375rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-base)}.video-block-editor__input:focus{outline:none;border-color:var(--color-primary)}.video-block-editor__preview{margin-top:1rem;border-radius:var(--border-radius-sm);overflow:hidden;background-color:var(--color-bg-secondary);padding:.5rem}.video-block-editor__iframe{width:100%;max-width:800px;aspect-ratio:16 / 9;border:none;border-radius:var(--border-radius-sm);margin:0 auto;display:block}.admin-lesson-page__top{margin-bottom:1.5rem}.admin-lesson-page__back{display:inline-block;color:var(--color-text-secondary);text-decoration:none;margin-bottom:.75rem}.admin-lesson-page__back:hover{color:var(--color-text)}.admin-lesson-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.admin-lesson-page__title{font-size:1.5rem;font-weight:600;color:var(--color-text)}.admin-lesson-page__title-btn{border:none;background:transparent;padding:.25rem;border-radius:var(--border-radius-sm);cursor:text;text-align:left;font:inherit;color:var(--color-text);min-width:0}.admin-lesson-page__title-btn:hover{background:#1a1a1a0f}.admin-lesson-page__title-btn--muted{color:var(--color-text-secondary)}.admin-lesson-page__title-input{width:min(700px,100%);border:1px solid rgba(0,0,0,.14);border-radius:var(--border-radius-sm);padding:.375rem .5rem;font:inherit;background:var(--color-bg)}.admin-lesson-page__title-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.admin-lesson-page__actions{display:flex;gap:.75rem}.admin-lesson-page__meta{margin-top:.5rem;color:var(--color-text-secondary);font-size:.875rem;display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.lesson-type-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-weight:600;white-space:nowrap}.lesson-type-pill--task{background:#4361ee1f;border-color:#4361ee40;color:#2b3fd1}.task-solution{display:grid;gap:.75rem}.task-solution__head{display:grid;gap:.25rem}.task-solution__title{font-weight:700}.task-solution__hint{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.task-solution__card{border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-bg);padding:1rem}.task-solution__row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.task-solution__file{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary)}.task-solution__actions{display:flex;gap:.5rem;flex:0 0 auto}.task-solution__btn{border:1px solid var(--color-border);background:var(--color-bg);border-radius:var(--border-radius-sm);padding:.6rem .9rem;font:inherit;cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base),opacity var(--transition-base)}.task-solution__btn:hover{background:var(--color-bg-secondary);border-color:#00000029}.task-solution__btn:disabled{opacity:.55;cursor:not-allowed}.task-solution__btn--danger{border-color:#e6394640}.admin-task-solution .task-solution__btn{pointer-events:none}.admin-lesson-page__content{max-width:700px;margin:0 auto}.admin-lesson-page__form{padding:1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-bg)}.admin-lesson-page__surface{width:100%;max-width:700px;background:var(--color-bg)}.admin-lesson-page--preview .admin-lesson-page__surface{background:#fff}.admin-lesson-page__field{display:flex;flex-direction:column;gap:.5rem}.admin-lesson-page__label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.admin-lesson-page__input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background-color:var(--color-bg);color:var(--color-text);font-family:inherit}.admin-lesson-page__input:focus{outline:none;border-color:var(--color-primary)}.admin-lesson-page__empty{padding:2rem;margin-top:1rem;text-align:center;background-color:var(--color-bg-secondary);border-radius:var(--border-radius-md);border:2px dashed var(--color-border);color:var(--color-text-secondary)}.admin-lesson-page__blocks{display:flex;flex-direction:column;gap:0}.admin-lesson-page__block-container{position:relative}.admin-lesson-page__block{width:100%}.admin-lesson-page__footer-inserter{margin-top:1.5rem;padding-bottom:2rem;display:flex;justify-content:center}.admin-lesson-page__block-wrapper{position:relative;width:100%}.admin-lesson-page__block-shell{position:relative;border-radius:var(--border-radius-md);display:grid;grid-template-columns:44px 1fr;gap:.75rem;align-items:start}.admin-lesson-page__block-shell-gutter{position:relative;min-height:44px}.admin-lesson-page__block-shell-body{min-width:0}.admin-lesson-page__block-shell-controls{display:flex;flex-direction:column;gap:.25rem;opacity:0;transform:translateY(-2px);transition:opacity var(--transition-base),transform var(--transition-base);z-index:20}.admin-lesson-page__block-shell:hover .admin-lesson-page__block-shell-controls{opacity:1;transform:translateY(0)}.admin-lesson-page__block-shell-controls .btn{background:#ffffffeb;border:1px solid rgba(0,0,0,.1);box-shadow:var(--shadow-sm)}.admin-lesson-page__block-shell-controls .btn:hover{background:#fff}@media (max-width: 1200px){.admin-lesson-page__block-shell{grid-template-columns:1fr;gap:.5rem}.admin-lesson-page__block-shell-controls{flex-direction:row;justify-content:flex-end;margin-bottom:.5rem;opacity:1;transform:none}}.text-block-preview{margin-bottom:2rem}.text-block-preview__content{font-size:1rem;line-height:1.8;color:var(--color-text);overflow-wrap:anywhere;word-break:break-word}.text-block-preview__content h1,.text-block-preview__content h2,.text-block-preview__content h3,.text-block-preview__content h4,.text-block-preview__content h5,.text-block-preview__content h6{margin-top:1.5rem;margin-bottom:.75rem;font-weight:600;line-height:1.3}.text-block-preview__content h1{font-size:2rem}.text-block-preview__content h2{font-size:1.5rem}.text-block-preview__content h3{font-size:1.25rem}.text-block-preview__content p{margin-bottom:1rem}.text-block-preview__content ul,.text-block-preview__content ol{margin-bottom:1rem;padding-left:2rem}.text-block-preview__content li{margin-bottom:.5rem}.text-block-preview__content code{background-color:var(--color-bg-secondary);padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9em}.text-block-preview__content pre{background-color:var(--color-bg-secondary);padding:1rem;border-radius:var(--border-radius-sm);overflow-x:auto;margin-bottom:1rem;overflow-wrap:normal;word-break:normal}.text-block-preview__content pre code{background-color:transparent;padding:0}.text-block-preview__content blockquote{border-left:4px solid var(--color-primary);padding-left:1rem;margin-left:0;margin-bottom:1rem;color:var(--color-text-secondary);font-style:italic}.text-block-preview__content a{color:var(--color-primary);text-decoration:underline}.text-block-preview__content a:hover{color:var(--color-primary-hover)}.text-block-preview__table-wrapper{width:100%;overflow-x:auto;margin:1.5rem 0;border-radius:var(--border-radius-sm);border:1px solid var(--color-border)}.text-block-preview__table-wrapper table{width:100%;min-width:500px;border-collapse:collapse;border:none;margin:0}.text-block-preview__content thead{background-color:var(--color-bg-secondary)}.text-block-preview__content th{padding:.75rem 1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--color-border)}.text-block-preview__content td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.text-block-preview__content tbody tr:last-child td{border-bottom:none}.text-block-preview__content tbody tr:hover{background-color:var(--color-bg-secondary)}.video-block-preview{margin-bottom:2rem;border-radius:var(--border-radius-sm);overflow:hidden;background-color:var(--color-bg-secondary);padding:.5rem}.video-block-preview__iframe{width:100%;max-width:800px;aspect-ratio:16 / 9;border:none;border-radius:var(--border-radius-sm);margin:0 auto;display:block}.video-block-preview--error{padding:2rem;text-align:center;color:var(--color-text-secondary);background-color:var(--color-bg-secondary);border-radius:var(--border-radius-sm)}.image-block-preview{margin-bottom:2rem;border-radius:var(--border-radius-sm);overflow:hidden}.image-block-preview__wrapper{position:relative;cursor:pointer;border-radius:var(--border-radius-sm);overflow:hidden;transition:transform .3s ease;padding:0;border:none;background:transparent;width:100%;display:block;text-align:inherit;box-shadow:none;-webkit-tap-highlight-color:transparent}.image-block-preview__wrapper:focus,.image-block-preview__wrapper:focus-visible{outline:none}.image-block-preview__wrapper:hover{transform:scale(1.02)}.image-block-preview__wrapper:hover .image-block-preview__overlay{display:none;opacity:0}.image-block-preview__image{width:100%;height:auto;display:block;border-radius:var(--border-radius-sm);max-width:800px;max-height:500px;margin:0 auto;object-fit:contain;transition:none}.image-block-preview__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:transparent;display:none;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;opacity:0;transition:opacity .3s ease;border-radius:var(--border-radius-sm)}.image-block-preview__zoom-icon{font-size:2rem;color:#fff}.image-block-preview__zoom-text{font-size:.875rem;color:#fff;font-weight:500}.image-block-preview--empty{padding:2rem;text-align:center;color:var(--color-text-secondary);background-color:var(--color-bg-secondary);border-radius:var(--border-radius-sm)}.image-block-preview__modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem;animation:modalFadeIn .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes modalFadeIn{0%{opacity:0;background-color:#0000}to{opacity:1;background-color:#000000e6}}.image-block-preview__modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;animation:imageZoomIn .4s cubic-bezier(.34,1.56,.64,1) forwards;transform-origin:center center}@keyframes imageZoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.image-block-preview__modal-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:var(--border-radius-sm);box-shadow:0 8px 32px #00000080}.image-block-preview__close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:1.5rem;cursor:pointer;transition:all .2s ease;z-index:10001}.image-block-preview__close:hover{background-color:#fff3;transform:scale(1.1)}.divider-preview{width:100%;border-top:1px solid var(--color-text);margin:1rem 0}.divider-preview--three-dots{text-align:center;font-size:1.5rem;letter-spacing:.5rem;line-height:1;border:none}.selftest-preview{padding:.75rem 0;display:flex;justify-content:center}.selftest-preview__card{width:100%;max-width:760px;padding:28px 28px 24px;background:var(--color-bg);border:1px solid rgba(0,0,0,.14);border-radius:16px;box-shadow:0 12px 24px #0000000f,0 2px 6px #0000000a;transition:background-color .18s ease}.selftest-preview__card--dim{background:#f3f3f3}.selftest-preview__title{font-weight:700;font-size:1.5rem;line-height:1.2;margin-bottom:.5rem}.selftest-preview__description{font-size:1rem;line-height:1.5;color:var(--color-text);margin-bottom:1.25rem;white-space:pre-wrap}.selftest-preview__questions{display:flex;flex-direction:column;gap:20px}.selftest-preview__question{padding:0}.selftest-preview__question-text{font-weight:600;margin-bottom:10px}.selftest-dd{position:relative;display:inline-flex;max-width:100%}.selftest-dd__trigger{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-width:84px;min-height:48px;padding:12px 14px;font-size:1rem;font-family:inherit;border:0;border-radius:10px;background-color:#fff;color:var(--color-text);box-shadow:0 6px 14px #00000014,0 1px 2px #0000000f;cursor:pointer;text-align:left}.selftest-dd__trigger:disabled{cursor:not-allowed;opacity:.75}.selftest-dd__label{white-space:normal;word-break:break-word}.selftest-dd__caret{margin-left:auto;opacity:.75;transition:transform .18s ease}.selftest-dd--open .selftest-dd__caret{transform:rotate(180deg)}.selftest-dd__menu{position:absolute;z-index:50;top:calc(100% + 10px);left:0;min-width:320px;max-width:min(520px,100vw - 40px);background:var(--color-bg);border-radius:16px;border:1px solid rgba(0,0,0,.14);box-shadow:0 16px 32px #0000001f,0 4px 10px #00000014;padding:10px 0}.selftest-dd__item{width:100%;text-align:left;padding:12px 18px;border:0;background:transparent;cursor:pointer;font:inherit}.selftest-dd__item:hover{background:#0000000a}.selftest-dd__item--active{background:#0000000f;font-weight:600}.selftest-preview__result{margin-top:10px;font-size:.9375rem;padding:.6rem .85rem;border-radius:10px;border:1px solid var(--color-border)}.selftest-preview__result--ok{background:#22c55e1f;border-color:#22c55e59}.selftest-preview__result--bad{background:#ef44441f;border-color:#ef444459}.selftest-preview__actions{margin-top:22px}.selftest-preview__btn{height:52px;padding:0 20px;border-radius:12px;border:0;font-weight:600;font-size:1rem;background:var(--color-secondary);color:var(--color-text-light);cursor:pointer;min-width:210px}.selftest-preview__btn--disabled{background:#e5e5e5;color:#9a9a9a;cursor:not-allowed}.selftest-preview__btn--reset{background:#fff;color:var(--color-text);border:1px solid rgba(0,0,0,.14)}.selftest-preview__answer-pill{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:12px 14px;border-radius:10px;border:1px solid rgba(0,0,0,.12);background:#fff}.selftest-preview__pill-icon{width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem}.selftest-preview__pill-text{white-space:normal;word-break:break-word}.selftest-preview__answer-pill--ok{border-color:#10b98173;background:#10b98114}.selftest-preview__answer-pill--ok .selftest-preview__pill-icon{background:#10b98129;color:#059669}.selftest-preview__answer-pill--bad{border-color:#ef444473;background:#ef444414}.selftest-preview__answer-pill--bad .selftest-preview__pill-icon{background:#ef444429;color:#dc2626}.tasks-controls__row{display:grid;grid-template-columns:2fr 1fr 1.5fr .6fr;gap:.75rem;align-items:end}.tasks-list,.tasks-list__items{display:grid;gap:.75rem}.task-row{width:100%;text-align:left;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-bg);padding:.875rem 1rem;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:1rem;transition:box-shadow var(--transition-base),transform var(--transition-base),border-color var(--transition-base)}.task-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:#1a1a1a2e}.task-row__main{display:grid;gap:.25rem;min-width:0}.task-row__title{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.task-row__course{font-weight:700}.task-row__lesson{font-weight:600}.task-row__sep{color:var(--color-text-muted)}.task-row__meta{display:flex;flex-wrap:wrap;gap:.5rem .75rem;color:var(--color-text-secondary);font-size:.875rem;min-width:0}.task-row__feedback{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-row__right{display:flex;align-items:center;justify-content:flex-end;white-space:nowrap}.task-status{font-size:.8125rem;font-weight:700;padding:.375rem .625rem;border-radius:999px;border:1px solid rgba(0,0,0,.1);background:#0000000a;color:#000000b8}.task-status--accepted{border-color:#2ec47d59;background:#2ec47d24;color:#146e46f2}.task-status--pending{border-color:#4361ee59;background:#4361ee24;color:#233cbef2}.task-status--returned{border-color:#ffc1078c;background:#ffc1072e;color:#785600f2}.task-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000007a;display:grid;place-items:center;padding:1.25rem;z-index:1000}.task-modal{width:min(760px,100%);max-height:min(86vh,900px);overflow:auto;border-radius:var(--border-radius-lg);background:var(--color-bg);border:1px solid rgba(0,0,0,.1);box-shadow:var(--shadow-lg);padding:1.25rem}.task-modal__top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.task-modal__title{font-size:1.25rem;font-weight:800}.task-modal__body{display:grid;gap:1rem}.task-modal__grid{display:grid;gap:.75rem}.task-modal__row{display:grid;grid-template-columns:160px 1fr;gap:.75rem;align-items:start}.task-modal__row--full{grid-template-columns:1fr}.task-modal__label{font-size:.875rem;color:var(--color-text-secondary)}.task-modal__value{color:var(--color-text)}.task-modal__value--box{border:1px solid rgba(0,0,0,.08);border-radius:var(--border-radius-md);background:#00000005;padding:.75rem .875rem;white-space:pre-wrap}.task-modal__actions{display:flex;gap:.75rem;flex-wrap:wrap}.task-modal__return{border-top:1px dashed rgba(0,0,0,.08);padding-top:1rem;display:grid;gap:.5rem}.task-modal__textarea{width:100%;resize:vertical;min-height:88px;border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:.75rem .875rem;font:inherit;outline:none}.task-modal__textarea:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.task-modal__return-actions{display:flex;justify-content:flex-end}@media (max-width: 1100px){.tasks-controls__row{grid-template-columns:1fr 1fr}.task-modal__row{grid-template-columns:1fr}}.login-page{min-height:calc(100vh - var(--header-height));display:grid;place-items:center;padding:2rem}.login-card{width:100%;max-width:420px;border:1px solid var(--color-border);border-radius:var(--border-radius-lg);background:var(--color-bg);box-shadow:var(--shadow-md);padding:1.75rem}.login-card__title{font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.login-card__subtitle{color:var(--color-text-secondary);margin-bottom:1.25rem}.login-form{display:grid;gap:.875rem}.login-field{display:grid;gap:.375rem}.login-field__label{font-size:.875rem;color:var(--color-text-secondary)}.login-field__input{width:100%;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);padding:.75rem .875rem;font:inherit;outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.login-field__input:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #1a1a1a1f}.login-error{border:1px solid rgba(230,57,70,.25);background:#e639460f;color:#b4232c;border-radius:var(--border-radius-sm);padding:.75rem .875rem;font-size:.9375rem}.login-actions{display:flex;gap:.75rem;align-items:center;margin-top:.25rem}.login-hint{color:var(--color-text-muted);font-size:.875rem;margin-top:.75rem}.btn[disabled]{opacity:.6;cursor:not-allowed}
