.ach-badge[data-v-13428d07]{--ach-size: 52px;width:var(--ach-size);height:var(--ach-size);border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--ach-color) 18%,var(--surface));border:2px solid color-mix(in srgb,var(--ach-color) 55%,transparent);box-shadow:0 2px 8px color-mix(in srgb,var(--ach-color) 22%,transparent);flex-shrink:0;transition:transform .15s ease,filter .15s ease;overflow:hidden}.ach-badge--has-image[data-v-13428d07]{--ach-size: 64px;background:transparent;border:none;box-shadow:none;border-radius:12px}.ach-badge--btn[data-v-13428d07]{padding:0;cursor:pointer;font:inherit}.ach-badge--btn[data-v-13428d07]:hover{transform:translateY(-2px)}.ach-badge--btn[data-v-13428d07]:focus-visible{outline:2px solid var(--brand, #68a363);outline-offset:2px}.ach-badge--interactive[data-v-13428d07]:hover{transform:translateY(-2px)}.ach-badge--locked[data-v-13428d07]{filter:grayscale(1);opacity:.55;box-shadow:none}.ach-badge__icon[data-v-13428d07]{font-size:22px;line-height:1}.ach-badge__img[data-v-13428d07]{width:100%;height:100%;object-fit:contain;border-radius:12px}.ach-badge--has-image.ach-badge--locked[data-v-13428d07]{opacity:.55;filter:grayscale(1)}.achievement-earned-overlay[data-v-a537139c]{z-index:400}.achievement-earned-modal[data-v-a537139c]{width:min(420px,100%);text-align:center;padding:28px 24px 24px}.achievement-earned-modal__kicker[data-v-a537139c]{margin:0 0 16px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand)}.achievement-earned-modal__badge[data-v-a537139c]{display:flex;justify-content:center;margin-bottom:14px}.achievement-earned-modal__badge[data-v-a537139c] .ach-badge{--ach-size: 88px}.achievement-earned-modal__badge[data-v-a537139c] .ach-badge--has-image{--ach-size: 104px}.achievement-earned-modal__title[data-v-a537139c]{margin:0 0 8px;font-size:22px;font-weight:700}.achievement-earned-modal__text[data-v-a537139c]{margin:0 0 22px;font-size:15px;line-height:1.5;color:var(--text-muted)}.achievement-earned-modal__close[data-v-a537139c]{width:100%;max-width:220px}.bug-report-fab[data-v-c3fa3ae7]{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:10020}@media(max-width:768px){.bug-report-fab--elevated-compose[data-v-c3fa3ae7]{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}.BugButton[data-v-c3fa3ae7]{width:40px;height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background-color:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.BugButton svg[data-v-c3fa3ae7]{width:44%}.BugButton[data-v-c3fa3ae7]:hover{background-color:#3d2947;overflow:visible}.bugsvg path[data-v-c3fa3ae7]{transition:all .2s}.BugButton:hover .bugsvg path[data-v-c3fa3ae7]{stroke:#fff}.BugButton[data-v-c3fa3ae7]:active{transform:scale(.98)}.tooltip[data-v-c3fa3ae7]{--tooltip-color: rgb(41, 41, 41);position:absolute;top:-40px;background-color:var(--tooltip-color);color:#fff;border-radius:5px;font-size:12px;padding:8px 12px;font-weight:600;box-shadow:0 10px 10px #0000001b;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .5s;min-width:100px;pointer-events:none;white-space:nowrap}.tooltip[data-v-c3fa3ae7]:before{position:absolute;width:10px;height:10px;transform:rotate(45deg);content:"";background-color:var(--tooltip-color);bottom:-10%}.BugButton:hover .tooltip[data-v-c3fa3ae7]{opacity:1}.bug-report-modal-root[data-v-c3fa3ae7]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10200}.bug-report-modal__backdrop[data-v-c3fa3ae7]{z-index:0}.bug-report-modal__dialog[data-v-c3fa3ae7]{max-width:min(480px,calc(100vw - 32px));width:100%;max-height:min(90vh,640px);overflow:hidden;display:flex;flex-direction:column;outline:none}.bug-report-modal__title[data-v-c3fa3ae7]{margin:0;font-size:1.1rem;font-weight:700;color:var(--adminlte-modal-head-text, #444)}.bug-report-modal__hint[data-v-c3fa3ae7]{margin:0 0 16px;font-size:.9rem;line-height:1.45;color:var(--text-muted, #64748b)}.bug-report-form[data-v-c3fa3ae7]{display:flex;flex-direction:column;gap:14px}.bug-report-field[data-v-c3fa3ae7]{display:flex;flex-direction:column;gap:6px}.bug-report-field__label[data-v-c3fa3ae7]{font-size:.85rem;font-weight:600;color:var(--text, #334155)}.bug-report-input[data-v-c3fa3ae7],.bug-report-textarea[data-v-c3fa3ae7]{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:8px;border:1px solid var(--border, #cbd5e1);background:var(--surface, #fff);color:var(--text, #0f172a);font:inherit}.bug-report-input--select[data-v-c3fa3ae7],[data-v-c3fa3ae7] .bug-report-input--select{cursor:pointer}.bug-report-textarea[data-v-c3fa3ae7]{resize:vertical;min-height:120px}.bug-report-error[data-v-c3fa3ae7]{margin:0;font-size:.875rem;color:#b91c1c}.bug-report-success[data-v-c3fa3ae7]{margin:0;font-size:.875rem;color:#15803d}.bug-report-actions[data-v-c3fa3ae7]{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.bug-report-btn[data-v-c3fa3ae7]{padding:10px 18px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;border:none}.bug-report-btn[data-v-c3fa3ae7]:disabled{opacity:.6;cursor:not-allowed}.bug-report-btn--ghost[data-v-c3fa3ae7]{background:transparent;color:var(--text-muted, #64748b)}.bug-report-btn--primary[data-v-c3fa3ae7]{background:var(--brand, #5b2d6e);color:var(--on-brand, #fff)}.bug-report-btn--primary[data-v-c3fa3ae7]:hover:not(:disabled){filter:brightness(1.06)}.social-channel-icon[data-v-2b9fe788]{display:block;flex-shrink:0}.social-channel-icon--max[data-v-2b9fe788]{object-fit:contain;border-radius:6px}.site-footer[data-v-37c705de]{display:flex;justify-content:center;padding:1rem 1rem calc(.75rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color, #e2e8f0);background:var(--bg)}.site-footer__inner[data-v-37c705de]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.85rem 1rem}.site-footer__brand[data-v-37c705de]{font-size:.9375rem;font-weight:600;color:var(--text-muted, #64748b);text-decoration:none}.site-footer__brand[data-v-37c705de]:hover{color:var(--brand, #68a363)}.site-footer__social[data-v-37c705de]{display:flex;align-items:center;gap:.65rem}.site-footer__icon[data-v-37c705de]{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;color:var(--text-muted, #64748b);background:var(--surface-muted, #f1f5f9);text-decoration:none;transition:color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}.site-footer__icon--max[data-v-37c705de]{padding:0;background:transparent}.site-footer__icon--telegram[data-v-37c705de]{color:#229ed9}.site-footer__icon--instagram[data-v-37c705de]{color:#e4405f}.site-footer__icon[data-v-37c705de]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.site-footer__icon--max[data-v-37c705de]:hover{background:transparent;filter:brightness(1.05)}.site-footer__icon--telegram[data-v-37c705de]:hover{color:#1c93cc;background:#229ed91f}.site-footer__icon--instagram[data-v-37c705de]:hover{color:#c13584;background:#e4405f1f}.faculty-avatar[data-v-6162fffb]{position:relative;display:inline-flex;flex-shrink:0;line-height:0}.faculty-avatar--sm[data-v-6162fffb]{width:var(--header-action-size, 40px);height:var(--header-action-size, 40px)}.faculty-avatar--md[data-v-6162fffb]{width:88px;height:88px}.faculty-avatar--hero[data-v-6162fffb]{width:clamp(120px,18vw,176px);height:clamp(120px,18vw,176px)}.faculty-avatar__hole-fill[data-v-6162fffb]{position:absolute;z-index:0;pointer-events:none}.faculty-avatar__photo-wrap[data-v-6162fffb]{position:absolute;z-index:1}.faculty-avatar--framed .faculty-avatar__photo-wrap[data-v-6162fffb]{overflow:hidden}.faculty-avatar--framed .faculty-avatar__photo[data-v-6162fffb]{position:relative;z-index:1;object-position:center center}.faculty-avatar__edge-blend[data-v-6162fffb]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:50%;pointer-events:none}.faculty-avatar--sm:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb],.faculty-avatar--md:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb],.faculty-avatar--hero:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb]{top:0;right:0;bottom:0;left:0;border-radius:50%;overflow:hidden}.faculty-avatar__photo[data-v-6162fffb],.faculty-avatar__placeholder[data-v-6162fffb]{width:100%;height:100%;object-fit:cover;display:block}.faculty-avatar__placeholder[data-v-6162fffb]{display:grid;place-items:center;background:var(--brand);color:var(--on-brand, #fff);font-weight:700}.faculty-avatar--sm .faculty-avatar__placeholder[data-v-6162fffb]{font-size:16px}.faculty-avatar--md .faculty-avatar__placeholder[data-v-6162fffb]{font-size:32px}.faculty-avatar--hero .faculty-avatar__placeholder[data-v-6162fffb]{font-size:clamp(2.25rem,6vw,3.25rem);background:var(--bg-muted, #f3f4f6);color:var(--text-muted, #64748b)}.faculty-avatar--sm:not(.faculty-avatar--framed) .faculty-avatar__placeholder[data-v-6162fffb],.faculty-avatar--md:not(.faculty-avatar--framed) .faculty-avatar__placeholder[data-v-6162fffb]{background:var(--brand);color:var(--on-brand, #fff)}.faculty-avatar--hero:not(.faculty-avatar--framed) .faculty-avatar__placeholder[data-v-6162fffb]{background:var(--bg-muted, #f3f4f6);color:var(--text-muted, #64748b)}.faculty-avatar--sm:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb],.faculty-avatar--md:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb],.faculty-avatar--hero:not(.faculty-avatar--framed) .faculty-avatar__photo-wrap[data-v-6162fffb]{border:5px solid var(--border, #e5e7eb);box-shadow:0 10px 28px #0f172a1a}.faculty-avatar__frame[data-v-6162fffb]{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.language-selector[data-v-b28140e6]{position:relative;display:inline-flex;flex-shrink:0}.language-selector__trigger[data-v-b28140e6]{display:inline-flex;align-items:center;gap:.35rem;height:var(--header-action-size, 40px);min-width:var(--header-action-size, 40px);padding:0 .55rem;border:1px solid var(--border-light, #e0e0e0);border-radius:8px;background:var(--surface, #fff);color:var(--header-link, inherit);font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:border-color .15s,background-color .15s}.language-selector__trigger[data-v-b28140e6]:hover{border-color:var(--brand, #68a363)}.language-selector__trigger[data-v-b28140e6]:focus-visible{outline:2px solid var(--brand, #68a363);outline-offset:2px}.language-selector__flag[data-v-b28140e6]{font-size:1rem;line-height:1}.language-selector__code[data-v-b28140e6]{font-size:11px;font-weight:700}.language-selector__chevron[data-v-b28140e6]{font-size:10px;opacity:.65;margin-left:-.1rem}.language-selector__menu[data-v-b28140e6]{position:absolute;top:calc(100% + 6px);right:0;z-index:120;min-width:11rem;margin:0;padding:6px;list-style:none;border:1px solid var(--border-light, #e0e0e0);border-radius:10px;background:var(--surface, #fff);box-shadow:0 8px 24px #0000001f}.language-selector__option[data-v-b28140e6]{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .55rem;border:none;border-radius:6px;background:transparent;color:inherit;font-size:13px;text-align:left;cursor:pointer}.language-selector__option[data-v-b28140e6]:hover,.language-selector__option[data-v-b28140e6]:focus-visible{background:color-mix(in srgb,var(--brand, #68a363) 12%,transparent);outline:none}.language-selector__option--active[data-v-b28140e6]{background:color-mix(in srgb,var(--brand, #68a363) 18%,transparent);font-weight:600}.language-selector__label[data-v-b28140e6]{flex:1}@media(max-width:480px){.language-selector__trigger[data-v-b28140e6]{min-width:36px;padding:0 .4rem}.language-selector__code[data-v-b28140e6],.language-selector__chevron[data-v-b28140e6]{display:none}}.theme-toggle__input[data-v-00c6b369]{display:none}.theme-toggle[data-v-00c6b369]{width:56px;height:56px;display:grid;border-radius:50%;position:relative;place-items:center;cursor:pointer;transition:transform .2s ease;line-height:1;overflow:hidden;flex-shrink:0}.theme-toggle__icon[data-v-00c6b369]{grid-column:1 / 1;grid-row:1 / 1;width:100%;height:100%;display:grid;place-items:center;z-index:2;transform-origin:center center;transition:transform .5s ease,opacity .3s ease;opacity:0;pointer-events:none}.theme-toggle__icon--moon[data-v-00c6b369]{color:#fff;background-color:transparent}.theme-toggle__icon--sun[data-v-00c6b369]{color:#fbbf24;background-color:transparent}.theme-toggle__icon--moon[data-v-00c6b369],.theme-toggle__icon--sun[data-v-00c6b369]{transform:rotate(0) scale(0);opacity:0}.theme-toggle__input:not(:checked)+.theme-toggle .theme-toggle__icon--sun[data-v-00c6b369]{transform:rotate(360deg) scale(1);opacity:1}.theme-toggle__input:not(:checked)+.theme-toggle .theme-toggle__icon--moon[data-v-00c6b369]{transform:rotate(0) scale(0);opacity:0}.theme-toggle__input:checked+.theme-toggle .theme-toggle__icon--moon[data-v-00c6b369]{transform:rotate(360deg) scale(1);opacity:1}.theme-toggle__input:checked+.theme-toggle .theme-toggle__icon--sun[data-v-00c6b369]{transform:rotate(0) scale(0);opacity:0}.theme-toggle__input:active+.theme-toggle[data-v-00c6b369]{transform:scale(.94)}.theme-toggle__input:focus-visible+.theme-toggle[data-v-00c6b369]{outline:2px solid var(--brand, #68a363);outline-offset:3px}.theme-toggle__icon svg[data-v-00c6b369]{fill:currentColor!important}.app-color-picker[data-v-99597f1d]{margin:0 0 12px;padding:0;border:none;min-width:0}.app-color-picker legend[data-v-99597f1d]{font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text)}.app-color-picker__hint[data-v-99597f1d]{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted)}.app-color-picker__presets[data-v-99597f1d]{display:grid;grid-template-columns:repeat(auto-fill,minmax(2rem,1fr));gap:8px;margin-bottom:14px;max-width:100%}.app-color-picker__swatch[data-v-99597f1d]{width:100%;aspect-ratio:1;min-width:2rem;max-width:2.5rem;border-radius:8px;border:2px solid color-mix(in srgb,var(--text) 12%,transparent);cursor:pointer;padding:0;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.app-color-picker__swatch[data-v-99597f1d]:hover:not(:disabled){transform:scale(1.06)}.app-color-picker__swatch--active[data-v-99597f1d]{border-color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--text) 18%,transparent)}.app-color-picker__custom[data-v-99597f1d]{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px}.app-color-picker__native[data-v-99597f1d]{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;min-width:0}.app-color-picker__native-input[data-v-99597f1d]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.app-color-picker__native-face[data-v-99597f1d]{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);color:color-mix(in srgb,var(--text) 75%,#fff);flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff1f}.app-color-picker__native-label[data-v-99597f1d]{font-size:.88rem;color:var(--text-secondary);white-space:nowrap}.app-color-picker__native:hover .app-color-picker__native-face[data-v-99597f1d]{border-color:color-mix(in srgb,var(--brand, #68a363) 45%,var(--border))}.app-color-picker__hex[data-v-99597f1d]{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.app-color-picker__hex[data-v-99597f1d]:focus-visible{outline:none;border-color:color-mix(in srgb,var(--brand, #68a363) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand, #68a363) 18%,transparent)}.app-color-picker__error[data-v-99597f1d]{margin:6px 0 0;font-size:12px;color:#b91c1c}.app-datetime[data-v-47d02c91]{position:relative;width:100%}.app-datetime__trigger[data-v-47d02c91]{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.app-datetime__trigger[data-v-47d02c91]:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand, #68a363) 35%,var(--border))}.app-datetime--open .app-datetime__trigger[data-v-47d02c91],.app-datetime__trigger[data-v-47d02c91]:focus-visible{outline:none;border-color:color-mix(in srgb,var(--brand, #68a363) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand, #68a363) 18%,transparent)}.app-datetime--disabled .app-datetime__trigger[data-v-47d02c91]{opacity:.6;cursor:not-allowed}.app-datetime__value[data-v-47d02c91]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-datetime__value--placeholder[data-v-47d02c91]{color:var(--text-muted)}.app-datetime__icon[data-v-47d02c91]{flex-shrink:0;color:var(--text-muted);display:flex}.app-datetime__panel[data-v-47d02c91]{display:flex;flex-direction:column;overflow:hidden;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-modal, 0 16px 40px rgba(15, 23, 42, .16))}.app-datetime__scroll[data-v-47d02c91]{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:4px}.app-datetime__footer[data-v-47d02c91]{flex-shrink:0;border-top:1px solid var(--border);padding-top:12px;margin-top:8px;background:var(--surface)}.app-datetime__cal-head[data-v-47d02c91]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.app-datetime__month[data-v-47d02c91]{font-size:.92rem;font-weight:700;color:var(--text);text-transform:capitalize}.app-datetime__nav[data-v-47d02c91]{width:28px;height:28px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:1rem;line-height:1;cursor:pointer}.app-datetime__nav[data-v-47d02c91]:hover{border-color:color-mix(in srgb,var(--brand, #68a363) 40%,var(--border))}.app-datetime__weekdays[data-v-47d02c91]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:4px;text-align:center;font-size:.72rem;font-weight:700;color:var(--text-muted)}.app-datetime__grid[data-v-47d02c91]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.app-datetime__day[data-v-47d02c91]{aspect-ratio:1;min-height:28px;border:1px solid var(--border-light, var(--border));border-radius:8px;background:var(--bg);color:var(--text);font-size:.82rem;font-weight:600;cursor:pointer}.app-datetime__day[data-v-47d02c91]:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand, #68a363) 40%,var(--border))}.app-datetime__day--pad[data-v-47d02c91]{opacity:.35;pointer-events:none}.app-datetime__day--today[data-v-47d02c91]{border-color:color-mix(in srgb,var(--brand, #68a363) 50%,var(--border))}.app-datetime__day--selected[data-v-47d02c91]{background:color-mix(in srgb,var(--brand, #68a363) 14%,var(--surface));border-color:var(--brand, #68a363);color:var(--text)}.app-datetime__time[data-v-47d02c91]{display:grid;gap:8px}.app-datetime__time-label[data-v-47d02c91]{font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.app-datetime__time-row[data-v-47d02c91]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.app-datetime__time-sep[data-v-47d02c91]{font-weight:700;color:var(--text-muted)}.app-datetime__time-select[data-v-47d02c91] .app-select__trigger{padding:7px 8px}.app-datetime__actions[data-v-47d02c91]{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.app-select[data-v-82550386]{position:relative;width:100%;min-width:0;max-width:100%}.app-select__trigger[data-v-82550386]{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.app-select__trigger[data-v-82550386]:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand, #68a363) 35%,var(--border))}.app-select--open .app-select__trigger[data-v-82550386],.app-select__trigger[data-v-82550386]:focus-visible{outline:none;border-color:color-mix(in srgb,var(--brand, #68a363) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand, #68a363) 18%,transparent)}.app-select--disabled .app-select__trigger[data-v-82550386]{opacity:.6;cursor:not-allowed}.app-select__value[data-v-82550386]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-select__value--placeholder[data-v-82550386]{color:var(--text-muted)}.app-select__chevron[data-v-82550386]{flex-shrink:0;font-size:.85rem;color:var(--text-muted);transition:transform .15s ease}.app-select--open .app-select__chevron[data-v-82550386]{transform:rotate(180deg)}.app-select__menu[data-v-82550386]{overflow-y:auto;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-modal, 0 16px 40px rgba(15, 23, 42, .16))}.app-select__option[data-v-82550386]{display:block;width:100%;padding:9px 10px;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.92rem;text-align:left;white-space:nowrap;cursor:pointer}.app-select__option[data-v-82550386]:hover:not(:disabled),.app-select__option--active[data-v-82550386]{background:color-mix(in srgb,var(--brand, #68a363) 12%,var(--surface))}.app-select__option[data-v-82550386]:disabled{opacity:.45;cursor:not-allowed}@font-face{font-family:"Press Start 2P";src:url(/fonts/PressStart2P-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Neucha;src:url(/fonts/Neucha-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Hachi Maru Pop;src:url(/fonts/HachiMaruPop-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-family: "Press Start 2P", cursive;--font-mono: "Press Start 2P", cursive;--font-size-base: 12px;--font-size-sm: 10px;--font-size-lg: 14px;--font-size-xl: 16px;--font-size-title: 20px;--line-height-base: 1.7;--font-weight-base: 400}html{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);font-weight:var(--font-weight-base)}body,button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,.page-title{font-family:inherit;font-weight:inherit;line-height:1.5}.page-title{font-size:var(--font-size-title)}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}h3{font-size:var(--font-size-base)}h4{font-size:var(--font-size-sm)}code,pre,kbd,samp{font-family:var(--font-mono)}:root{color-scheme:light;--brand: #68a363;--brand-hover: #5a9156;--brand-light: #edf5ec;--text: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--bg: #f1f5f9;--bg-muted: #f3f4f6;--surface: #ffffff;--surface-muted: #f8fafc;--border: #e2e8f0;--border-light: #f1f5f9;--danger: #dc2626;--success: #16a34a;--warning: #f59e0b;--radius: 12px;--header-h: 64px;--header-action-size: 40px;--header-action-icon: 22px;--page-max: 1100px;--page-max-narrow: 920px;--page-max-wide: 1200px;--page-pad-x: 20px;--page-pad-bottom: 48px;--page-section-gap: 24px;--overlay-scrim: rgba(15, 23, 42, .5);--panel-shadow: -12px 0 40px rgba(15, 23, 42, .1);--panel-head-border: rgba(226, 232, 240, .9);--calc-display-bg: #f8fafc;--calc-display-fg: #0f172a;--calc-readout-bg: #f8fafc;--calc-readout-fg: #0f172a;--code-panel-bg: #f8fafc;--code-panel-fg: #0f172a;--editor-bg: #ffffff;--editor-fg: #0f172a;--fab-shadow: rgba(104, 163, 99, .4);--on-brand: #ffffff;--header-bar-bg: rgba(15, 23, 42, .97);--header-border-bottom: rgba(255, 255, 255, .08);--header-link: #94a3b8;--header-link-hover-fg: #e2e8f0;--header-link-hover-bg: rgba(255, 255, 255, .06);--header-text-strong: #ffffff;--header-link-active-bg: rgba(255, 255, 255, .1);--header-chevron: #64748b;--shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .12);--shadow-card-hover: 0 4px 24px rgba(0, 0, 0, .1);--shadow-modal: 0 20px 50px rgba(15, 23, 42, .2);--modal-scrim: rgba(15, 23, 42, .5);--danger-btn-border: #fca5a5;--danger-btn-bg: #ffffff;--danger-btn-hover-bg: #fef2f2;--focus-ring: 0 0 0 3px rgba(104, 163, 99, .18);--template-selected-ring: 0 0 0 2px rgba(104, 163, 99, .18);--panel-muted: #f8fafc;--panel-muted-2: #f1f5f9;--control-muted-bg: #e2e8f0;--task-preview-fg: #334155;--result-banner-border: #c8e0c6;--md-block-bg: #f6f8fa;--md-block-border: #d0d7de;--table-border-emphasis: #94a3b8;--article-body: #1e293b;--article-h3: #1e293b;--article-h4: #334155;--article-th: #334155;--article-code-inline: #c7254e;--article-pre-bg: #f6f8fa;--article-pre-fg: #0f172a;--article-pre-border: #d0d7de;--article-blockquote-text: #3d6b3a;--article-link-decoration: #9dcc98;--table-stripe: rgb(248 250 252 / 55%);--table-stripe-solid: #fafbfd;--admin-table-head-bg: #f8fafc;--code-editor-admin-bg: #1e293b;--code-editor-admin-fg: #e2e8f0;--auth-warning-bg: #fffbeb;--auth-warning-border: #fde68a;--auth-warning-text: #92400e;--auth-google-hover: #f8faff;--auth-yandex-hover: #fff8f6;--auth-vk-hover: #f6faff;--accent-difficult: #ef4444;--scale-body-divider: rgba(15, 23, 42, .08);--scale-notes-bg: rgb(241 245 249 / 80%);--scale-table-head: linear-gradient(180deg, #f8fafc, #f1f5f9);--scale-table-row-even: rgb(248 250 252 / 85%);--scale-table-row-hover: rgb(237 245 236 / 70%);--scale-total-row-bg: rgb(212 232 210 / 45%);--scale-total-row-border: #b8d4b5;--scale-insufficient-bg: rgb(254 226 226 / 58%);--scale-insufficient-hover: rgb(252 165 165 / 42%);--toast-bg: #0f172a;--toast-fg: #f8fafc;--shadow-training-hover: 0 4px 20px rgba(0, 0, 0, .08);--hint-success-bg: #f0fdf4;--hint-success-border: #bbf7d0;--problem-modal-shadow: 0 12px 40px rgba(15, 23, 42, .25);--exam-status-ok-bg: #ecfdf5;--exam-status-ok-border: #bbf7d0;--exam-status-bad-bg: #fef2f2;--exam-status-bad-border: #fecaca;--exam-status-warn-bg: #fefce8;--exam-status-warn-border: #fde047;--exam-meta-gradient: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);--exam-stat-teal: #0f766e;--exam-stat-blue: #5a9156;--exam-stat-purple: #7c3aed;--activity-l0: #e2e8f0;--activity-l1: #d4e8d2;--activity-l2: #9dcc98;--activity-l3: #68a363;--activity-l4: #4f8f4b;--admin-shell-sidebar-bg: #222d32;--admin-shell-sidebar-brand: #4a7f47;--admin-shell-sidebar-text: #b8c7ce;--admin-shell-sidebar-text-muted: #647a85;--admin-shell-search-bg: #374850;--admin-shell-search-placeholder: rgba(255, 255, 255, .45);--admin-shell-nav-hover-bg: rgba(0, 0, 0, .15);--admin-shell-nav-active-bg: #1e282c;--admin-shell-nav-active-border: #68a363;--admin-shell-topbar-bg: #5a9156;--admin-shell-topbar-text: #fff;--admin-shell-topbar-hamburger-hover: rgba(0, 0, 0, .08);--admin-shell-hamburger-line: #fff;--admin-shell-main-bg: #ecf0f5;--admin-shell-page-text: #333;--admin-shell-breadcrumb-muted: #6c757d;--admin-shell-breadcrumb-link: #68a363;--admin-shell-footer-bg: #fff;--admin-shell-footer-text: #888;--admin-shell-footer-border: #d2d6de;--admin-shell-site-link-border: rgba(255, 255, 255, .35);--adminlte-card-bg: #fff;--adminlte-card-border: #d2d6de;--adminlte-card-shadow: 0 1px 1px rgba(0, 0, 0, .05);--adminlte-card-head-border: #f4f4f4;--adminlte-card-head-text: #444;--adminlte-table-border: #f4f4f4;--adminlte-thead-bg: #354458;--adminlte-thead-fg: #fff;--adminlte-row-even: #f9f9f9;--adminlte-row-hover: #edf5ec;--adminlte-modal-bg: #fff;--adminlte-modal-border: #d2d6de;--adminlte-modal-head-border: #f4f4f4;--adminlte-modal-head-text: #444;--adminlte-modal-close: #999;--adminlte-modal-close-hover: #333;--adminlte-modal-scrim: rgba(0, 0, 0, .45);--admin-dashboard-kpi-bg: #fff;--admin-dashboard-kpi-border: #e8ecf1;--admin-dashboard-chart-axis: #94a3b8;--admin-dashboard-chart-bar: #68a363;--admin-dashboard-chart-bar-2: #00a65a;--admin-dashboard-chart-bar-3: #f39c12;--admin-dashboard-chart-bar-4: #605ca8}:root[data-theme=dark]{color-scheme:dark;--brand: #86c781;--brand-hover: #9dd498;--brand-light: rgba(104, 163, 99, .2);--text: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--bg: #0f172a;--bg-muted: #0f172a;--surface: #1e293b;--surface-muted: #0f172a;--border: #334155;--border-light: #263346;--overlay-scrim: rgba(0, 0, 0, .55);--panel-shadow: -16px 0 48px rgba(0, 0, 0, .5);--panel-head-border: rgba(51, 65, 85, .95);--calc-display-bg: #020617;--calc-display-fg: #f1f5f9;--calc-readout-bg: #0f172a;--calc-readout-fg: #e2e8f0;--code-panel-bg: #020617;--code-panel-fg: #e2e8f0;--editor-bg: #0f172a;--editor-fg: #e2e8f0;--fab-shadow: rgba(104, 163, 99, .55);--on-brand: #ffffff;--header-bar-bg: rgba(2, 6, 23, .94);--header-border-bottom: rgba(148, 163, 184, .14);--header-link: #94a3b8;--header-link-hover-fg: #f8fafc;--header-link-hover-bg: rgba(255, 255, 255, .07);--header-text-strong: #f8fafc;--header-link-active-bg: rgba(255, 255, 255, .12);--header-chevron: #64748b;--shadow-dropdown: 0 16px 40px rgba(0, 0, 0, .5);--shadow-card-hover: 0 8px 28px rgba(0, 0, 0, .35);--shadow-modal: 0 24px 60px rgba(0, 0, 0, .55);--modal-scrim: rgba(0, 0, 0, .65);--danger-btn-border: #b91c1c;--danger-btn-bg: #1e293b;--danger-btn-hover-bg: rgba(239, 68, 68, .14);--focus-ring: 0 0 0 3px rgba(134, 199, 129, .28);--template-selected-ring: 0 0 0 2px rgba(134, 199, 129, .35);--panel-muted: #0f172a;--panel-muted-2: #1e293b;--control-muted-bg: #334155;--task-preview-fg: #cbd5e1;--result-banner-border: rgba(104, 163, 99, .45);--md-block-bg: #0c1222;--md-block-border: #334155;--table-border-emphasis: #64748b;--article-body: #e2e8f0;--article-h3: #f1f5f9;--article-h4: #e2e8f0;--article-th: #e2e8f0;--article-code-inline: #fda4af;--article-pre-bg: #0c1222;--article-pre-fg: #e2e8f0;--article-pre-border: #334155;--article-blockquote-text: #b8d4b5;--article-link-decoration: rgba(157, 204, 152, .55);--table-stripe: rgba(255, 255, 255, .04);--table-stripe-solid: rgba(255, 255, 255, .06);--admin-table-head-bg: #0f172a;--code-editor-admin-bg: #0c1222;--code-editor-admin-fg: #e2e8f0;--auth-warning-bg: rgba(245, 158, 11, .12);--auth-warning-border: rgba(251, 191, 36, .35);--auth-warning-text: #fcd34d;--auth-google-hover: rgba(66, 133, 244, .14);--auth-yandex-hover: rgba(252, 63, 29, .14);--auth-vk-hover: rgba(0, 119, 255, .14);--scale-body-divider: rgba(255, 255, 255, .1);--scale-notes-bg: rgba(30, 41, 59, .92);--scale-table-head: linear-gradient(180deg, #1e293b, #0f172a);--scale-table-row-even: rgba(255, 255, 255, .04);--scale-table-row-hover: rgba(104, 163, 99, .12);--scale-total-row-bg: rgba(99, 102, 241, .2);--scale-total-row-border: #6366f1;--scale-insufficient-bg: rgba(239, 68, 68, .18);--scale-insufficient-hover: rgba(239, 68, 68, .28);--toast-bg: #e2e8f0;--toast-fg: #0f172a;--shadow-training-hover: 0 8px 28px rgba(0, 0, 0, .35);--hint-success-bg: rgba(34, 197, 94, .12);--hint-success-border: rgba(34, 197, 94, .35);--problem-modal-shadow: 0 20px 50px rgba(0, 0, 0, .55);--exam-status-ok-bg: rgba(34, 197, 94, .12);--exam-status-ok-border: rgba(34, 197, 94, .35);--exam-status-bad-bg: rgba(239, 68, 68, .12);--exam-status-bad-border: rgba(248, 113, 113, .4);--exam-status-warn-bg: rgba(234, 179, 8, .12);--exam-status-warn-border: rgba(250, 204, 21, .35);--exam-meta-gradient: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--exam-stat-teal: #5eead4;--exam-stat-blue: #b8d4b5;--exam-stat-purple: #c4b5fd;--activity-l0: #334155;--activity-l1: #3d5c3a;--activity-l2: #4f8f4b;--activity-l3: #68a363;--activity-l4: #9dd498;--admin-shell-sidebar-bg: #0c1218;--admin-shell-sidebar-brand: #3d6b3a;--admin-shell-sidebar-text: #cbd5e1;--admin-shell-sidebar-text-muted: #64748b;--admin-shell-search-bg: #1e293b;--admin-shell-search-placeholder: rgba(148, 163, 184, .55);--admin-shell-nav-hover-bg: rgba(255, 255, 255, .06);--admin-shell-nav-active-bg: #111827;--admin-shell-nav-active-border: #86c781;--admin-shell-topbar-bg: #3d6b3a;--admin-shell-topbar-text: #f1f5f9;--admin-shell-topbar-hamburger-hover: rgba(255, 255, 255, .08);--admin-shell-hamburger-line: #e2e8f0;--admin-shell-main-bg: #0f172a;--admin-shell-page-text: #e2e8f0;--admin-shell-breadcrumb-muted: #94a3b8;--admin-shell-breadcrumb-link: #9dd498;--admin-shell-footer-bg: #1e293b;--admin-shell-footer-text: #94a3b8;--admin-shell-footer-border: #334155;--admin-shell-site-link-border: rgba(148, 163, 184, .45);--adminlte-card-bg: #1e293b;--adminlte-card-border: #334155;--adminlte-card-shadow: 0 4px 14px rgba(0, 0, 0, .35);--adminlte-card-head-border: #334155;--adminlte-card-head-text: #f1f5f9;--adminlte-table-border: #334155;--adminlte-thead-bg: #0f172a;--adminlte-thead-fg: #e2e8f0;--adminlte-row-even: rgba(255, 255, 255, .04);--adminlte-row-hover: rgba(104, 163, 99, .12);--adminlte-modal-bg: #1e293b;--adminlte-modal-border: #334155;--adminlte-modal-head-border: #334155;--adminlte-modal-head-text: #f1f5f9;--adminlte-modal-close: #94a3b8;--adminlte-modal-close-hover: #e2e8f0;--adminlte-modal-scrim: rgba(0, 0, 0, .65);--admin-dashboard-kpi-bg: #1e293b;--admin-dashboard-kpi-border: #334155;--admin-dashboard-chart-axis: #64748b;--admin-dashboard-chart-bar: #86c781;--admin-dashboard-chart-bar-2: #34d399;--admin-dashboard-chart-bar-3: #fbbf24;--admin-dashboard-chart-bar-4: #a78bfa}*{box-sizing:border-box;margin:0}html{overflow-x:clip}body{margin:0;background:var(--bg);color:var(--text)}body.trainer-exam-body-lock{overflow:hidden}a{text-decoration:none;color:inherit}.top-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;min-height:var(--header-h);width:100%;max-width:100vw;overflow:visible;padding-top:env(safe-area-inset-top,0px);background:var(--header-bar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--header-border-bottom);color:var(--header-link)}.header-inner{max-width:var(--page-max);margin:0 auto;flex:1;width:100%;min-width:0;min-height:var(--header-h);display:flex;align-items:center;padding:0 var(--page-pad-x);gap:8px;box-sizing:border-box}.header-brand{display:flex;align-items:center;gap:10px;margin-right:16px;flex-shrink:0}.brand-logo{display:block;height:40px;width:40px;max-width:40px;object-fit:contain;object-position:center}.brand-text{font-size:var(--font-size-lg);letter-spacing:.02em;color:var(--header-text-strong)}.header-nav{display:flex;align-items:center;gap:4px;flex:1 1 0;min-width:0;position:relative;z-index:5}.header-link{display:inline-flex;align-items:center;color:var(--header-link);font-size:var(--font-size-sm);padding:10px 12px;border-radius:8px;transition:all .15s;white-space:nowrap;line-height:1.5}.header-link:hover{color:var(--header-link-hover-fg);background:var(--header-link-hover-bg)}.router-link-active.header-link,.router-link-exact-active.header-link{color:var(--header-text-strong);background:var(--header-link-active-bg)}.header-link--accent{color:#fbbf24}.header-link--accent:hover{color:#fcd34d;background:#fbbf2414}.router-link-active.header-link--accent{color:#fbbf24;background:#fbbf241f}.header-nav-dropdown{position:relative;display:flex;align-items:center;flex-shrink:0;z-index:6}.header-link--dropdown{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;color:var(--header-link)}.header-link--dropdown:hover{color:var(--header-link-hover-fg);background:var(--header-link-hover-bg)}.header-link--dropdown.is-open,.header-link--active.header-link--dropdown{color:var(--header-text-strong);background:var(--header-link-active-bg)}.nav-dropdown{position:absolute;top:100%;left:0;margin-top:6px;min-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-dropdown);padding:6px 0;z-index:200}.nav-dropdown__item{display:block;padding:10px 16px;font-size:var(--font-size-sm);font-weight:inherit;color:var(--text);transition:background .12s}.nav-dropdown__item:hover{background:var(--bg);color:var(--text)}.router-link-active.nav-dropdown__item{background:var(--brand-light);color:var(--brand)}.header-right{display:flex;align-items:center;gap:8px;margin-left:auto;position:relative;flex:0 0 auto;flex-shrink:0;padding-right:2px}.header-right .theme-toggle{width:var(--header-action-size);height:var(--header-action-size)}.header-right .theme-toggle__icon svg{width:var(--header-action-icon)!important;height:var(--header-action-icon)!important}.header-right__action{display:inline-flex;align-items:center;justify-content:center;width:var(--header-action-size);height:var(--header-action-size);flex-shrink:0}.header-right__action--lang{width:auto;min-width:var(--header-action-size);padding:0 2px}.mobile-nav-drawer__lang{margin-top:16px;padding:0 16px 8px}.mobile-nav-drawer__lang .language-select__control{width:100%;max-width:none}@media(min-width:1241px){.header-inner{display:grid;grid-template-columns:1fr auto 1fr;column-gap:12px;max-width:var(--page-max-wide);overflow:visible}.header-brand{grid-column:1;justify-self:start;margin-right:0}.header-nav{grid-column:2;flex:unset;min-width:0;max-width:100%;overflow:visible;justify-self:center;justify-content:center;flex-wrap:wrap;row-gap:2px;column-gap:2px}.header-link{padding:6px 8px;font-size:12px}.header-right{grid-column:3;margin-left:0;justify-self:end;gap:4px;z-index:1;--header-action-size: 36px;--header-action-icon: 20px}}.header-login-btn{background:var(--brand);color:var(--on-brand);padding:8px 20px;border-radius:8px;font-size:14px;font-weight:600;transition:background .15s;white-space:nowrap}.header-login-btn:hover{background:var(--brand-hover)}.header-mail-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--header-action-size);height:var(--header-action-size);border-radius:50%;color:var(--header-link-hover-fg);text-decoration:none;transition:background .15s,color .15s;flex-shrink:0;box-sizing:border-box}.header-mail-btn:hover{background:var(--header-link-hover-bg);color:var(--header-text-strong)}.header-mail-btn__icon{display:block;width:var(--header-action-icon);height:var(--header-action-icon);flex-shrink:0}.header-mail-badge{position:absolute;top:-2px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e53935;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;border:2px solid var(--header-bar-bg);pointer-events:none;box-sizing:border-box}.notifications-bell{position:relative;flex-shrink:0}.notifications-bell__btn{border:none;background:transparent;cursor:pointer;padding:0}.notifications-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 24px));max-height:min(420px,calc(100vh - var(--header-h) - 24px));overflow:hidden;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #0000002e;z-index:1200}.notifications-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}.notifications-panel__title{margin:0;font-size:15px;font-weight:700;color:var(--text)}.notifications-panel__mark-all{border:none;background:none;color:var(--brand);font-size:13px;font-weight:600;cursor:pointer;padding:4px 0}.notifications-panel__mark-all:hover{text-decoration:underline}.notifications-panel__empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:14px}.notifications-panel__list{list-style:none;margin:0;padding:6px 0;overflow-y:auto}.notifications-panel__item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;text-align:left;text-decoration:none;color:inherit;cursor:pointer;transition:background .12s}.notifications-panel__item:hover{background:var(--bg)}.notifications-panel__item--unread{background:color-mix(in srgb,var(--brand-light) 55%,transparent)}.notifications-panel__item--unread:hover{background:color-mix(in srgb,var(--brand-light) 75%,transparent)}.notifications-panel__icon{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.notifications-panel__content{min-width:0;display:flex;flex-direction:column;gap:2px}.notifications-panel__item-title{font-size:14px;font-weight:600;color:var(--text);line-height:1.35}.notifications-panel__item-body{font-size:13px;color:var(--text-muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notifications-panel__item-time{font-size:12px;color:var(--text-muted);margin-top:2px}.header-user{display:inline-flex;align-items:center;justify-content:center;width:var(--header-action-size);height:var(--header-action-size);cursor:pointer;padding:0;border-radius:50%;transition:background .15s;text-decoration:none;flex-shrink:0;box-sizing:border-box}.header-user:hover{background:var(--header-link-hover-bg)}.header-parent-label{margin:0;font-size:14px;font-weight:700;color:var(--text-muted);white-space:nowrap}.header-user__parent-letter{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:var(--surface-muted);color:var(--text);font-size:14px;font-weight:700}.top-header--parent .header-inner{gap:12px}.app-shell--parent .main-content{max-width:960px;margin:0 auto}.header-avatar-wrap{position:relative;display:inline-flex}.header-avatar-badge{position:absolute;top:-2px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e53935;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;border:2px solid var(--header-bar-bg);pointer-events:none;box-sizing:border-box}.header-avatar{width:var(--header-action-size);height:var(--header-action-size);border-radius:50%;background:var(--brand);color:var(--on-brand);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;overflow:hidden;box-sizing:border-box}.header-avatar__img{width:100%;height:100%;object-fit:cover}.header-user-name{color:var(--header-link-hover-fg);font-size:13px;font-weight:500;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-chevron{color:var(--header-chevron);font-size:10px}.user-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-dropdown);min-width:180px;overflow:hidden;z-index:200}.dropdown-role{padding:12px 16px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light)}.dropdown-item{display:block;width:100%;padding:10px 16px;border:none;background:none;cursor:pointer;font-size:14px;text-align:left;color:var(--text);transition:background .12s;text-decoration:none;font-family:inherit;box-sizing:border-box}.dropdown-item:hover{background:var(--bg)}.header-menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;margin-right:4px;padding:0;border:none;border-radius:10px;background:var(--header-link-hover-bg);cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.header-menu-toggle:hover{background:var(--header-link-active-bg)}.header-menu-toggle__bar{display:block;width:20px;height:2px;margin:0 auto;border-radius:1px;background:var(--header-text-strong)}.mobile-nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:var(--overlay-scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-nav-drawer{position:fixed;top:0;left:0;bottom:0;z-index:130;width:min(100vw - 48px,320px);max-width:100%;background:var(--surface);color:var(--text);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);animation:mobile-nav-in .2s ease-out}@keyframes mobile-nav-in{0%{transform:translate(-100%);opacity:.85}to{transform:translate(0);opacity:1}}.mobile-nav-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-nav-drawer__title{font-size:var(--font-size-title);color:var(--text)}.mobile-nav-drawer__close{width:44px;height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:24px;line-height:1;cursor:pointer;color:var(--text-secondary)}.mobile-nav-drawer__body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 0 calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:2px}.mobile-nav-section{padding:14px 16px 6px;font-size:var(--font-size-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.mobile-nav-link{display:block;padding:12px 16px;font-size:var(--font-size-base);color:var(--text);border-radius:0;transition:background .12s}.mobile-nav-link:hover,.mobile-nav-link.router-link-active,.mobile-nav-link.router-link-exact-active{background:var(--brand-light);color:var(--brand)}:root[data-theme=dark] .mobile-nav-link:hover,:root[data-theme=dark] .mobile-nav-link.router-link-active,:root[data-theme=dark] .mobile-nav-link.router-link-exact-active{background:var(--header-link-active-bg);color:var(--header-link-hover-fg)}:root[data-theme=dark] .mobile-nav-link.router-link-active,:root[data-theme=dark] .mobile-nav-link.router-link-exact-active{color:var(--brand)}.mobile-nav-link--sub{padding-left:24px;font-size:var(--font-size-sm);color:var(--text-secondary)}.mobile-nav-link--accent{color:var(--warning);font-weight:600}.mobile-nav-link--accent.router-link-active{color:var(--warning);background:#f59e0b1f}body.kege-trainer-page .top-header,body.kege-trainer-page .site-footer,body.kege-trainer-page .exam-tools-root,body.kege-trainer-page .bug-report-fab{display:none}body.kege-trainer-page .main-content{max-width:none;margin:0;padding:0;min-height:100vh;min-height:100dvh}body.kege-trainer-page .kege-trainer{margin:0!important;width:100%!important}.app-shell:not(.app-shell--admin){display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-shell:not(.app-shell--admin) .main-content{flex:1 0 auto;min-height:0}.app-shell:not(.app-shell--admin) .site-footer{flex-shrink:0}.main-content{max-width:none;margin:0;padding:24px var(--page-pad-x) var(--page-pad-bottom);box-sizing:border-box}.page,.home-page,.teacher-page,.messages-page,.catalog-page,.courses-page,.about-exam-page{width:100%;max-width:var(--page-max);margin:0 auto;min-width:0;box-sizing:border-box}.page--narrow,.account-shell{max-width:var(--page-max-narrow)}.page--wide,.schedule-page{max-width:var(--page-max-wide)}.page__header{margin-bottom:20px}.page__lead{margin:0;color:var(--text-muted);font-size:var(--font-size-base);line-height:var(--line-height-base)}.page__section{margin-bottom:var(--page-section-gap, 24px)}.page__section:last-child{margin-bottom:0}.main-content.main-content--textbook{max-width:none;margin:0;padding:0;width:100%}.main-content.main-content--textbook .tb-handbook{margin-left:0;margin-right:0;max-width:none;width:100%;min-height:calc(100vh - var(--header-h))}.main-content.main-content--admin{max-width:none;margin:0;padding:0;width:100%;min-height:100vh}.main-content.main-content--schedule{display:flex;flex-direction:column;flex:1 1 auto;max-width:none;margin:0;padding:20px var(--page-pad-x) 16px;width:100%;min-height:0;overflow:hidden;box-sizing:border-box}.main-content.main-content--schedule>*{flex:1;min-height:0;width:100%}.main-content.main-content--messages{display:flex;flex-direction:column;flex:1 1 auto;max-width:none;margin:0;padding:16px var(--page-pad-x) 16px;width:100%;min-height:0;overflow:hidden;box-sizing:border-box}.main-content.main-content--messages>*{flex:1;min-height:0;width:100%}@media(max-width:768px){.main-content.main-content--messages{padding:0}.main-content.main-content--messages>.messages-page{max-width:none}}.main-content.main-content--variants{display:flex;flex-direction:column;flex:1 1 auto;max-width:none;margin:0;padding:12px var(--page-pad-x) 12px;width:100%;min-height:0;overflow:hidden;box-sizing:border-box}.main-content.main-content--variants>*{flex:1;min-height:0;width:100%}.app-shell--admin{min-height:100vh}.page-title{margin:0 0 16px}.section-title{margin:0 0 8px;font-size:var(--font-size-lg);font-weight:inherit}.section-subtitle{margin:0 0 16px;color:var(--text-muted);font-size:var(--font-size-base);line-height:var(--line-height-base)}.loading-text,.empty-text{color:var(--text-muted);padding:20px 0}.card{padding:20px;border-radius:16px;background:var(--surface);border:1px solid var(--border)}.page-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.pagination-row{display:flex;align-items:center;gap:8px;margin-top:16px}.primary-btn,.secondary-btn{border:1px solid transparent;border-radius:10px;padding:9px 14px;font-size:var(--font-size-sm);line-height:1.3;cursor:pointer;text-decoration:none;display:inline-block;text-align:center;transition:all .15s}.primary-btn{background:var(--brand);color:var(--on-brand)}.primary-btn:hover{background:var(--brand-hover)}.secondary-btn{background:var(--surface);color:var(--text);border-color:var(--border)}.secondary-btn:hover{background:var(--bg)}.danger-btn{border:1px solid var(--danger-btn-border);border-radius:10px;padding:9px 14px;font-weight:600;cursor:pointer;background:var(--danger-btn-bg);color:var(--danger);font-size:14px;transition:all .15s}.danger-btn:hover{background:var(--danger-btn-hover-bg)}.btn-sm{padding:5px 10px;font-size:12px}.primary-btn:disabled,.secondary-btn:disabled{opacity:.45;cursor:not-allowed}.error-text{color:var(--danger);font-weight:600}select,input,textarea{border:1px solid var(--border);border-radius:10px;padding:9px 12px;background:var(--surface);color:var(--text);font-size:14px;width:100%;transition:border-color .15s}select:focus,input:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus-ring)}textarea{min-height:72px;resize:vertical}.filters{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.filters label,.variant-controls label{display:grid;gap:6px;font-size:13px;color:var(--text-secondary)}.catalog-grid{display:grid;grid-template-columns:280px 1fr;gap:14px}.topics-panel{border:1px solid var(--border);border-radius:14px;background:var(--panel-muted);padding:12px;max-height:calc(100vh - 180px);overflow-y:auto}.clear-btn{border:none;border-radius:8px;padding:8px 10px;background:var(--control-muted-bg);color:var(--text);margin-bottom:8px;cursor:pointer}.tasks-list{display:grid;gap:10px}.task-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:14px}.task-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.task-top h3{margin:0;font-size:17px}.task-preview{color:var(--task-preview-fg);margin:10px 0 12px}.difficulty{border-radius:999px;padding:5px 8px;color:var(--on-brand);text-transform:uppercase;font-size:11px;letter-spacing:.06em}.difficulty[data-level=basic]{background:var(--success)}.difficulty[data-level=medium]{background:var(--warning)}.difficulty[data-level=advanced]{background:var(--accent-difficult)}.variant-controls{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:16px}.answer-field{margin-top:10px;display:grid;gap:6px}.result-banner{margin:12px 0;border:1px solid var(--result-banner-border);background:var(--brand-light);border-radius:12px;padding:10px 12px}.task-html img,.task-card img{max-width:100%;pointer-events:none;cursor:default;-webkit-user-select:none;user-select:none}.task-md-table-img-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,42%);gap:16px;align-items:start;margin:.65em 0;max-width:100%}.task-md-table-img-row .md-table-wrap{margin:0;max-width:100%}.task-md-table-img-row p{margin:0}.task-md-table-img-row img{display:block;max-width:100%;height:auto}@media(max-width:720px){.task-md-table-img-row{grid-template-columns:1fr}}.task-html{line-height:1.55;overflow-x:auto;max-width:100%}.task-html :where(h1,h2,h3,h4,h5,h6){margin:.85em 0 .4em;font-weight:700;line-height:1.25;color:var(--text, #0f172a)}.task-html h1{font-size:1.35em}.task-html h2{font-size:1.2em}.task-html h3{font-size:1.1em}.task-html p{margin:.5em 0}.task-html :where(ul,ol){margin:.5em 0;padding-left:1.35em}.task-html li{margin:.2em 0}.task-html li>:where(ul,ol){margin:.25em 0}.task-html blockquote{margin:.65em 0;padding:.45em 0 .45em 1em;border-left:4px solid var(--brand, #68a363);background:var(--bg, #f1f5f9);color:var(--text-secondary, #475569);border-radius:0 8px 8px 0}.task-html blockquote>:first-child{margin-top:0}.task-html blockquote>:last-child{margin-bottom:0}.task-html hr{border:none;border-top:1px solid var(--border, #e2e8f0);margin:1em 0}.md-table-wrap{display:block;width:fit-content;max-width:100%;margin:.65em 0;overflow-x:auto;-webkit-overflow-scrolling:touch}.task-html table,.prob-html table,.prob-reveal table,.article-content table{border-collapse:collapse;width:auto;max-width:none;margin:0;font-size:.875em;table-layout:auto}.task-html table th,.task-html table td{border:1px solid var(--border, #cbd5e1);padding:4px 8px;vertical-align:middle}.task-html table th{background:var(--bg, #f8fafc);font-weight:600}.task-html table tr:nth-child(2n) td{background:var(--table-stripe)}.task-html .task-md-pre{margin:.65em 0;padding:12px 14px;border-radius:10px;overflow-x:auto;background:var(--md-block-bg);border:1px solid var(--md-block-border);color:var(--text)}.task-html .task-md-pre code.hljs{display:block;font-family:var(--font-mono);font-size:13px;line-height:1.5;background:transparent!important;padding:0}.task-html :not(pre)>code{font-family:var(--font-mono);font-size:.9em;padding:.15em .4em;border-radius:6px;background:var(--bg, #f1f5f9);border:1px solid var(--border-light, #e2e8f0)}.task-html sup{font-size:.72em;line-height:0;vertical-align:super;position:relative;top:-.4em}.task-html sub{font-size:.72em;line-height:0;vertical-align:sub;position:relative;bottom:-.15em}.task-html input[type=checkbox]{margin-right:.35em;vertical-align:middle;pointer-events:none}.task-html .katex,.article-content .katex,.prob-html .katex{color:inherit;font-size:1.08em;vertical-align:middle}.task-html .katex-display,.article-content .katex-display{margin:.65em 0}.task-html .task-md-center .katex,.article-content .task-md-center .katex{display:inline-block;margin:0 auto}.task-html div.task-md-center,.article-content div.task-md-center,.prob-html div.task-md-center{display:flex;flex-direction:column;align-items:center;text-align:center;margin:.65em auto;max-width:100%}.task-md-center .md-table-wrap,.article-content div.task-md-center .md-table-wrap,.prob-html div.task-md-center .md-table-wrap{width:max-content;max-width:100%;margin-left:auto;margin-right:auto}.task-md-center table,.article-content div.task-md-center table,.prob-html div.task-md-center table{width:max-content;max-width:100%}.task-md-fold__body .md-table-wrap,.article-content .task-md-fold__body .md-table-wrap,.prob-html .task-md-fold__body .md-table-wrap{width:max-content;max-width:100%;margin-left:auto;margin-right:auto}.task-html p.task-md-center,.article-content p.task-md-center,.prob-html p.task-md-center{text-align:center;margin:.5em auto}.task-open-file{box-sizing:border-box;background-color:var(--surface);min-width:140px;max-width:min(100%,320px);height:45px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--border);border-radius:10px;font-size:15px;line-height:1.2;color:var(--text);text-decoration:none;cursor:pointer;transition:box-shadow .3s,border-color .2s}.task-open-file:hover{box-shadow:var(--shadow-training-hover);border-color:color-mix(in srgb,var(--text) 18%,var(--border))}.task-open-file .file-wrapper{width:15px;height:auto;flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;position:relative;color:var(--text)}.task-open-file .file-icon{width:100%;display:block}.task-open-file .file-front{position:absolute;width:100%;height:70%;border:2px solid var(--text);border-bottom:1px solid var(--text);transform:skew(-40deg);transform-origin:bottom right;background-color:var(--surface);transition:height .5s,transform .5s;bottom:0;pointer-events:none}.task-open-file:hover .file-front{height:50%;transform-origin:bottom right;transform:skew(-55deg)}.task-open-file__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-weight:500}.task-md-columns,.article-content .task-md-columns{display:grid;gap:1rem 1.25rem;align-items:stretch;margin:.65em 0;width:100%;box-sizing:border-box}.task-md-column,.article-content .task-md-column{display:flex;flex-direction:column;justify-content:center;align-items:stretch;align-self:stretch;min-width:0;width:100%;height:100%;box-sizing:border-box}.task-md-column>:first-child,.article-content .task-md-column>:first-child{margin-top:0}.task-md-column>:last-child,.article-content .task-md-column>:last-child{margin-bottom:0}.task-md-column>:where(p,ul,ol,blockquote,pre,table,.md-table-wrap,.task-md-pre){width:100%;max-width:100%;box-sizing:border-box}.task-md-column .md-table-wrap,.article-content .task-md-column .md-table-wrap{width:max-content;max-width:100%;margin:.35em auto}.task-md-column table,.article-content .task-md-column table{width:max-content;max-width:100%}.task-md-column img,.article-content .task-md-column img{display:block;max-width:100%;width:auto;height:auto;max-height:min(440px,72vh);object-fit:contain;margin-inline:auto}.task-md-column>p:has(>img:only-child),.article-content .task-md-column>p:has(>img:only-child){display:flex;flex:1 1 auto;align-items:center;justify-content:center;margin:0;min-height:0}.task-md-column>p:has(>img:only-child) img,.article-content .task-md-column>p:has(>img:only-child) img{margin:0}.task-md-columns--2,.article-content .task-md-columns--2{gap:1rem 1.5rem}@media(max-width:720px){.task-md-columns,.article-content .task-md-columns{grid-template-columns:1fr!important}.task-md-column,.article-content .task-md-column{justify-content:flex-start;height:auto}.task-md-column>p:has(>img:only-child),.article-content .task-md-column>p:has(>img:only-child){flex:0 0 auto}}.task-md-fold,.article-content .task-md-fold{margin:.65em 0;border:1px solid var(--border, #e2e8f0);border-radius:10px;background:var(--surface-muted, #f8fafc);overflow:hidden}.task-md-fold__summary,.article-content .task-md-fold__summary{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;font-size:.875rem;font-weight:600;color:var(--text-secondary, #475569);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.task-md-fold__summary::-webkit-details-marker{display:none}.task-md-fold__summary:before{content:"▸";flex-shrink:0;font-size:.75rem;color:var(--text-muted, #64748b);transition:transform .15s ease}.task-md-fold[open]>.task-md-fold__summary:before{transform:rotate(90deg)}.task-md-fold__summary:hover{color:var(--brand, #68a363);background:color-mix(in srgb,var(--brand, #68a363) 6%,var(--surface-muted, #f8fafc))}.task-md-fold__body,.article-content .task-md-fold__body{padding:0 .85rem .75rem;border-top:1px solid var(--border-light, #f1f5f9)}.task-md-fold__body>:first-child,.article-content .task-md-fold__body>:first-child{margin-top:.65em}.task-md-fold__body .task-md-pre,.article-content .task-md-fold__body .task-md-pre{margin-bottom:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-scrim);display:grid;place-items:center;z-index:300;padding:20px}.modal-overlay--prob{place-items:start center;padding:24px 16px 32px;overflow-y:auto;align-content:start}.prob-html table th,.prob-html table td,.prob-reveal table th,.prob-reveal table td{border:1px solid var(--table-border-emphasis);padding:4px 8px;text-align:center}.modal-card{width:min(980px,100%);max-height:85vh;overflow:auto;background:var(--surface);border-radius:16px;border:1px solid var(--border);padding:24px;position:relative}.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-muted);line-height:1}.modal-close:hover{color:var(--text)}.news-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.news-card{border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden;cursor:pointer;transition:box-shadow .2s,transform .15s}.news-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.news-card__image{width:100%;height:180px;object-fit:cover}.news-card__body{padding:16px}.news-card__date{font-size:12px;color:var(--text-muted);display:block;margin-bottom:6px}.news-card__title{margin:0 0 8px;font-size:18px;font-weight:600}.news-card__preview{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.5}.news-html{margin-top:16px;line-height:1.7}.news-html img{max-width:100%;border-radius:8px}.textbook-sections{display:grid;gap:16px}.textbook-section{padding:0}.textbook-section__name{margin:0;padding:18px 20px;font-size:20px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.textbook-section__name:hover{background:var(--panel-muted)}.textbook-toggle{font-size:14px;color:var(--text-muted);width:18px}.textbook-groups{padding:0 20px 20px}.textbook-group{margin-bottom:16px}.textbook-group__name{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-secondary)}.textbook-articles-list{list-style:none;padding:0;margin:0;display:grid;gap:4px}.textbook-article-link{color:var(--brand);padding:6px 10px;border-radius:8px;display:block;font-size:14px;transition:.15s}.textbook-article-link:hover{background:var(--brand-light);color:var(--brand-hover)}.textbook-breadcrumb{font-size:13px;color:var(--text-muted);margin-bottom:12px}.textbook-breadcrumb a{color:var(--brand)}.article-content{line-height:var(--line-height-base);font-size:var(--font-size-base);color:var(--article-body);word-wrap:break-word;overflow-wrap:break-word}.article-content img{max-width:100%;height:auto;border-radius:10px;margin:16px 0;display:block}.article-content .tb-figure{margin:20px 0;text-align:center}.article-content .tb-figure img{margin-left:auto;margin-right:auto}.article-content .tb-figure figcaption{margin-top:8px;font-size:14px;color:var(--text-muted)}.article-content .md-figure{margin:16px 0;max-width:100%}.article-content .md-figure img{display:block;max-width:100%;height:auto;border-radius:10px}.article-content .md-figure--left{float:left;margin:0 18px 14px 0}.article-content .md-figure--right{float:right;margin:0 0 14px 18px}.article-content .md-figure--center{margin-left:auto;margin-right:auto;text-align:center}.article-content .md-figure--full{width:100%!important}.article-content .md-figure--overlay{position:absolute;margin:0;float:none}.article-content{position:relative}.article-content .md-figure figcaption{margin-top:8px;font-size:13px;color:var(--text-muted)}.article-content .tb-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.article-content .tb-table th,.article-content .tb-table td{border:1px solid var(--border);padding:8px 10px;text-align:left}.article-content .tb-table th{background:var(--panel-muted)}.article-content .wd-image{margin:20px 0}.article-content .wd-image.text-center{text-align:center}.article-content .wd-image img{margin-left:auto;margin-right:auto}.article-content h2{margin:32px 0 16px;font-size:var(--font-size-xl);color:var(--text);border-bottom:2px solid var(--border);padding-bottom:8px}.article-content h3{margin:24px 0 12px;color:var(--article-h3)}.article-content h4{margin:20px 0 10px;font-size:var(--font-size-sm);color:var(--article-h4)}.article-content p{margin:0 0 14px}.article-content ul,.article-content ol{padding-left:24px;margin:12px 0}.article-content li{margin-bottom:6px}.article-content strong,.article-content b{font-weight:700;color:var(--text)}.article-content pre{background:var(--article-pre-bg);color:var(--article-pre-fg);border:1px solid var(--article-pre-border);padding:18px 20px;border-radius:12px;overflow-x:auto;font-size:14px;font-family:var(--font-mono);line-height:1.6;margin:16px 0}.article-content code{background:var(--md-block-bg);border:1px solid var(--md-block-border);padding:2px 7px;border-radius:5px;font-size:.9em;font-family:var(--font-mono);color:var(--article-code-inline)}.article-content pre code{display:block;background:none;border:none;padding:0;border-radius:0;color:inherit;font-size:inherit}.article-content .md-table-wrap{margin:16px 0;border-radius:10px;border:1px solid var(--border);overflow:hidden}.article-content table{border:none;border-radius:0;overflow:visible}.article-content th{background:var(--bg);font-weight:600;color:var(--article-th);text-align:left;padding:6px 10px;border:1px solid var(--border)}.article-content td{padding:6px 10px;border:1px solid var(--border);vertical-align:top}.article-content tr:nth-child(2n) td{background:var(--table-stripe-solid)}.article-content blockquote{margin:16px 0;padding:14px 20px;border-left:4px solid var(--brand);background:var(--brand-light);border-radius:0 10px 10px 0;color:var(--article-blockquote-text);font-style:italic}.article-content a{color:var(--brand);text-decoration:underline;text-decoration-color:var(--article-link-decoration);transition:color .15s}.article-content a:hover{color:var(--brand-hover)}.article-content iframe{max-width:100%;border-radius:10px;margin:16px 0}.article-content .wpb-content-wrapper{width:100%}.article-content .vc_row{margin:0}.article-content .wpb_wrapper{width:100%}.article-content .wd-text-block{margin-bottom:8px}.article-content .title-wrapper{margin:20px 0 12px}.article-content .title-wrapper h2,.article-content .title-wrapper h3{color:var(--text)}.article-source{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-muted)}.article-source a{color:var(--brand)}.admin-page{max-width:1200px}.admin-shell__content .admin-page{max-width:none;width:100%;color:var(--admin-shell-page-text)}.adminlte-page-title{margin:0 0 18px;font-size:clamp(1.25rem,2.5vw,1.65rem);font-weight:400;line-height:1.3;color:var(--admin-shell-page-text)}.admin-shell__content .empty-text,.admin-shell__content .loading-text,.admin-shell__content .muted{color:var(--admin-shell-breadcrumb-muted)}.admin-page--lte .adminlte-card__head .primary-btn,.admin-page--lte .adminlte-card__head .secondary-btn{flex-shrink:0;white-space:nowrap}.admin-table-scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.admin-table-scroll>.admin-table{min-width:560px}.admin-table-scroll>.admin-table.admin-table--courses{min-width:980px}.admin-table.admin-table--lte tbody tr.row-selected td{background:color-mix(in srgb,var(--brand, #68a363) 10%,var(--adminlte-row-even, #f9f9f9))}.admin-table.admin-table--lte td code{font-size:12px;word-break:break-all}.admin-topic-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10200;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay-scrim, rgba(15, 23, 42, .5));overflow-y:auto}.admin-topic-modal{width:100%;max-width:min(640px,calc(100vw - 48px));max-height:min(92vh,920px);overflow-y:auto;padding:24px 28px;border-radius:var(--radius, 12px);background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-modal, 0 16px 40px rgba(15, 23, 42, .16))}.admin-topic-modal--wide{max-width:min(1080px,calc(100vw - 32px))}.admin-topic-modal__title{margin:0 0 18px;font-size:20px;font-weight:700;line-height:1.3}.admin-topic-modal__body{display:grid;gap:14px}.admin-topic-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:640px){.admin-topic-modal__grid{grid-template-columns:1fr}}.admin-topic-modal__body label,.admin-topic-modal__field{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.admin-topic-modal__control,.admin-topic-modal__body input,.admin-topic-modal__body textarea,.admin-topic-modal__field input,.admin-topic-modal__field textarea,.admin-shell__content .admin-topic-modal :deep(.app-select__trigger){width:100%;box-sizing:border-box;padding:10px 12px;font-size:15px;line-height:1.4;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}.admin-topic-modal__checkbox{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text)}.admin-topic-modal__field textarea,.admin-topic-modal__body textarea,.admin-topic-modal textarea.admin-topic-modal__control{min-height:120px;resize:vertical}.admin-topic-modal__error{margin:0;color:var(--danger);font-size:13px}.admin-topic-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border-light)}.admin-shell__content input:not([type=checkbox]):not([type=radio]),.admin-shell__content select,.admin-shell__content textarea,.admin-shell__content .app-select__trigger,.admin-shell__content .app-datetime__trigger{max-width:100%;box-sizing:border-box}.admin-shell__content .adminlte-card__head{row-gap:8px}.admin-shell__content .adminlte-card__head>span:first-child{min-width:0;flex:1 1 auto}.admin-page--full{max-width:none;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));box-sizing:border-box}.admin-page--full .admin-form.card{max-width:none;width:100%}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.admin-card{cursor:pointer;transition:box-shadow .2s,transform .15s;text-decoration:none;color:var(--text)}.admin-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.admin-card h2{margin:0 0 8px;font-size:20px}.admin-card p{margin:0;color:var(--text-secondary);font-size:14px}.admin-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border-radius:12px;overflow:hidden;border:1px solid var(--border)}.admin-table th{background:var(--admin-table-head-bg);padding:10px 12px;text-align:left;font-weight:600;color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.admin-table td{padding:10px 12px;border-top:1px solid var(--border-light)}.admin-table tr:hover td{background:var(--table-stripe-solid)}.admin-actions{display:flex;gap:6px}.adminlte-card{background:var(--adminlte-card-bg);border:1px solid var(--adminlte-card-border);border-radius:3px;margin-bottom:20px;box-shadow:var(--adminlte-card-shadow)}.adminlte-card__head{padding:12px 16px;border-bottom:1px solid var(--adminlte-card-head-border);font-size:16px;font-weight:600;color:var(--adminlte-card-head-text);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.adminlte-card__body{padding:12px 16px 16px}.admin-table.admin-table--lte{border-radius:0;border:1px solid var(--adminlte-table-border);font-size:13px}.admin-table.admin-table--lte thead th{background:var(--adminlte-thead-bg);color:var(--adminlte-thead-fg);text-transform:none;letter-spacing:normal;font-size:13px;font-weight:600;padding:10px 12px;border:none}.admin-table.admin-table--lte tbody tr:nth-child(2n) td{background:var(--adminlte-row-even)}.admin-table.admin-table--lte tbody tr:hover td{background:var(--adminlte-row-hover)}.adminlte-th-sort{display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;border:none;background:none;font:inherit;font-weight:600;color:inherit;cursor:pointer;text-align:left}.adminlte-th-sort:hover{text-decoration:underline}.adminlte-op{display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;padding:0;border:none;border-radius:3px;cursor:pointer;font-size:14px;line-height:1;color:#fff}.adminlte-op--orange{background:#f39c12}.adminlte-op--orange:hover{background:#e08e0b}.adminlte-op--green{background:#00a65a}.adminlte-op--green:hover{background:#008f4d}.adminlte-op--red{background:#dd4b39}.adminlte-op--red:hover{background:#c23321}.admin-page--lte .adminlte-op{width:42px;height:40px;min-width:42px;min-height:40px;font-size:18px;line-height:1}.admin-page--lte .admin-actions{gap:10px;padding:4px 2px}.admin-page--lte .admin-actions-col{min-width:152px}.adminlte-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:flex-start;justify-content:center;padding:24px 12px;overflow-y:auto;background:var(--adminlte-modal-scrim)}.adminlte-modal{width:100%;max-width:560px;margin:auto 0;background:var(--adminlte-modal-bg);border-radius:4px;border:1px solid var(--adminlte-modal-border);box-shadow:var(--shadow-modal)}.adminlte-modal--xl{max-width:min(1320px,calc(100vw - 24px));width:100%}.adminlte-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--adminlte-modal-head-border);font-weight:600;font-size:16px;color:var(--adminlte-modal-head-text)}.adminlte-modal__close{border:none;background:none;font-size:24px;line-height:1;cursor:pointer;color:var(--adminlte-modal-close);padding:4px 8px}.adminlte-modal__close:hover{color:var(--adminlte-modal-close-hover)}.adminlte-modal__body{padding:12px 16px 20px;max-height:min(78vh,900px);overflow-y:auto}.adminlte-modal__body--flush{padding:0;max-height:min(85vh,960px)}.admin-modal-form-title{margin:0 0 14px;font-size:18px;font-weight:700;color:var(--text)}.admin-page--modal-embed,.admin-page--modal-embed .admin-form,.adminlte-modal__body--flush .admin-page--modal-embed .admin-form.card{max-width:none;width:100%;box-sizing:border-box}.adminlte-modal__body--flush .admin-page--modal-embed{padding:12px 16px 20px}.admin-page--modal-embed .admin-form--embed.card{border:none;box-shadow:none;padding:0;background:transparent}.admin-label-with-hint{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.field-optional-hint{font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.field-required-hint{color:var(--danger, #c0392b);font-weight:600}.admin-dashboard__kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}.admin-dashboard__kpi{padding:14px 16px;border-radius:8px;border:1px solid var(--admin-dashboard-kpi-border);background:var(--admin-dashboard-kpi-bg)}.admin-dashboard__kpi-value{font-size:1.65rem;font-weight:800;line-height:1.15;color:var(--text)}.admin-dashboard__kpi-label{margin-top:6px;font-size:12px;font-weight:600;color:var(--text-secondary)}.admin-dashboard__grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:20px}.admin-dashboard__rings{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;justify-content:space-around}.admin-dashboard__ring-caption{margin-top:10px;font-size:12px;color:var(--text-secondary);text-align:center;max-width:140px}.admin-dashboard__bars-block{margin-top:18px}.admin-dashboard__bars-title{font-size:13px;font-weight:700;color:var(--text-secondary);margin-bottom:8px}.admin-dashboard__role-bars{display:flex;flex-direction:column;gap:10px}.admin-dashboard__role-row{display:grid;grid-template-columns:100px 1fr 36px;align-items:center;gap:10px;font-size:13px}.admin-dashboard__role-track{height:10px;border-radius:5px;background:var(--border-light);overflow:hidden}.admin-dashboard__role-fill{height:100%;border-radius:5px;min-width:2px;transition:width .35s ease}.admin-dashboard__note{margin-top:12px;font-size:12px;color:var(--text-muted);line-height:1.45}.admin-form{max-width:760px}.admin-form label{display:grid;gap:6px;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--text-secondary)}.admin-form .admin-md-field{margin-bottom:18px}.admin-form .admin-field-block{display:grid;gap:6px;margin-bottom:14px}.admin-field-block-title{font-size:13px;font-weight:600;color:var(--text-secondary)}.checkbox-label{display:flex!important;align-items:center;gap:8px;flex-direction:row}.checkbox-label input[type=checkbox]{width:auto}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:14px;margin-bottom:14px}.form-row>label{min-width:0;max-width:100%;margin-bottom:0;overflow:hidden}.form-row .app-select{min-width:0;max-width:100%}.form-row--topic-ege{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.form-row--topic-ege>label:nth-child(1){grid-column:1;grid-row:1}.form-row--topic-ege>label:nth-child(2){grid-column:1 / -1;grid-row:2}.form-row--topic-ege>label:nth-child(3){grid-column:2;grid-row:1}.form-row--topic-ege .topic-ege-checkbox{grid-column:1 / -1;grid-row:3}@media(max-width:560px){.form-row--topic-ege{grid-template-columns:minmax(0,1fr)}.form-row--topic-ege>label:nth-child(1),.form-row--topic-ege>label:nth-child(3){grid-column:1}.form-row--topic-ege>label:nth-child(1){grid-row:1}.form-row--topic-ege>label:nth-child(2){grid-row:2}.form-row--topic-ege>label:nth-child(3){grid-row:3}.form-row--topic-ege .topic-ege-checkbox{grid-row:4}}.form-actions{display:flex;gap:10px;margin-top:20px}.field-group{border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.field-group legend{font-size:13px;font-weight:700;color:var(--text-secondary);padding:0 6px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:8px}.template-card{border:2px solid var(--border);border-radius:10px;padding:10px;cursor:pointer;transition:all .15s;text-align:center}.template-card:hover{border-color:var(--text-muted)}.template-card--selected{border-color:var(--brand);background:var(--brand-light);box-shadow:var(--template-selected-ring)}.template-preview{min-height:44px;margin-bottom:6px}.template-label{font-size:11px;font-weight:600;color:var(--text-secondary)}.upload-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.upload-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg);border-radius:8px;border:1px solid var(--border)}.upload-thumb{width:40px;height:40px;object-fit:cover;border-radius:6px}.upload-name{font-size:12px;color:var(--text-secondary);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-icon{font-size:18px}.upload-drop{display:flex;align-items:center;justify-content:center;padding:20px;border:2px dashed var(--border);border-radius:var(--radius);cursor:pointer;transition:all .15s;color:var(--text-muted);font-size:13px;font-weight:500}.upload-drop:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-light)}.news-cover-preview-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:10px}.news-cover-preview{max-height:200px;max-width:min(100%,420px);border-radius:var(--radius);border:1px solid var(--border);object-fit:contain;background:var(--bg)}.answer-type-selector{display:flex;gap:16px;margin-bottom:12px}.answer-type-option{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;cursor:pointer;color:var(--text-secondary)}.answer-type-option input[type=radio]{width:auto}.answer-inputs{display:grid;gap:8px}.answer-double{grid-template-columns:1fr 1fr}.answer-table{width:100%;border-collapse:collapse;font-size:13px}.answer-table th,.answer-table td{padding:4px}.answer-table input{font-size:13px;padding:6px 8px}.table-header-input{font-weight:600;background:var(--bg)!important}.solution-blocks{display:grid;gap:12px;margin-bottom:10px}.solution-block{border:1px solid var(--border);border-radius:10px;overflow:hidden}.solution-block-header{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg);border-bottom:1px solid var(--border)}.solution-block-type{width:100px;font-size:12px;padding:4px 8px}.solution-block-lang{width:80px;font-size:12px;padding:4px 8px}.solution-block textarea{border:none;border-radius:0;resize:vertical}.solution-block .admin-md-field.solution-block-md{margin-bottom:0;padding:10px 12px}.solution-block .admin-md-field.solution-block-md .admin-md-textarea,.solution-block .admin-md-field.solution-block-md .admin-md-preview-box{min-height:160px}.code-textarea{font-family:var(--font-mono);font-size:13px;background:var(--code-editor-admin-bg);color:var(--code-editor-admin-fg);line-height:1.5}.code-textarea:focus{box-shadow:none}.solution-add-btns{display:flex;gap:8px}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.admin-section-header h2{margin:0;font-size:20px;font-weight:700}.admin-inline-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.admin-inline-form label{display:grid;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary)}.admin-inline-form input,.admin-inline-form select,.admin-inline-form .app-select__trigger{width:180px}.app-shell:not(.app-shell--admin) .main-content:has(>.auth-page){display:flex;flex-direction:column}.auth-page{display:flex;flex:1;align-items:center;justify-content:center;min-height:0;max-width:var(--page-max);margin:0 auto;padding:0;width:100%}.auth-card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:40px 36px;text-align:center}.auth-title{margin:0 0 8px;color:var(--text)}.auth-subtitle{margin:0 0 28px;color:var(--text-muted);font-size:14px;line-height:1.5}.auth-hint{margin:0 0 20px;color:var(--text-muted);font-size:13px;line-height:1.5}.auth-providers{display:flex;flex-direction:column;gap:12px}.auth-provider-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 18px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;color:var(--text-secondary)}.auth-provider-btn:hover:not(:disabled){border-color:var(--text-muted);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.auth-provider-btn:disabled{opacity:.45;cursor:not-allowed}.auth-provider-btn--google:hover:not(:disabled){border-color:#4285f4;background:var(--auth-google-hover)}.auth-provider-btn--yandex:hover:not(:disabled){border-color:#fc3f1d;background:var(--auth-yandex-hover)}.auth-provider-btn--vk:hover:not(:disabled){border-color:#07f;background:var(--auth-vk-hover)}.auth-provider-btn svg{flex-shrink:0}.auth-warning{margin-top:8px;padding:12px 16px;background:var(--auth-warning-bg);border:1px solid var(--auth-warning-border);border-radius:10px;font-size:13px;color:var(--auth-warning-text);line-height:1.5}.auth-logged-in{display:flex;flex-direction:column;gap:12px;align-items:center}.auth-user-info{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--bg);border-radius:14px;width:100%}.auth-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand);color:var(--on-brand);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;flex-shrink:0}.auth-user-name{font-weight:600;font-size:16px;color:var(--text)}.auth-user-email{font-size:13px;color:var(--text-muted)}.auth-action-btn{width:100%}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary);text-align:left}.auth-switch{font-size:14px;color:var(--text-secondary);text-align:center}.auth-switch a{color:var(--brand);font-weight:600;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.variant-builder-wrap{min-height:0;height:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;box-sizing:border-box;overflow:hidden}.constructor-page{width:100%;max-width:none;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.constructor-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;flex-shrink:0}.constructor-header .page-title{margin:0;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.2}.constructor-controls{display:flex;flex-direction:column;gap:6px;margin-bottom:6px;padding:6px 10px;flex-shrink:0}.constructor-controls__main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,.9fr) minmax(140px,1.6fr) auto;align-items:center;gap:6px 8px}.constructor-controls__filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px}.constructor-controls__tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px}.constructor-controls__teacher{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding-top:6px;border-top:1px solid var(--border-light)}.constructor-controls__checks{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;flex:1 1 auto;min-width:0}.constructor-controls__row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.constructor-controls__row--teacher{padding-top:6px;border-top:1px solid var(--border-light)}.constructor-controls__field{display:inline-flex;align-items:center;gap:5px;min-width:0;font-size:11px;font-weight:600;color:var(--text-secondary)}.constructor-controls__field--stacked{display:grid;gap:3px;align-items:stretch;width:100%;min-width:0}.constructor-controls__field>span{white-space:nowrap;flex-shrink:0}.constructor-controls__field--stacked>span{white-space:normal}.constructor-controls__field .app-select{min-width:0;flex:1 1 auto;width:auto}.constructor-controls__field .app-select__trigger{min-height:28px;padding:2px 8px;font-size:12px;width:100%}.constructor-controls__field--task-ids{min-width:0}.constructor-controls__field--task-ids input,.constructor-controls__field--name input{flex:1;min-width:0;width:auto;min-height:28px;padding:2px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:12px}.constructor-controls__field--name{flex:1 1 180px;min-width:min(100%,180px);max-width:280px}.constructor-controls__check{display:inline-flex;align-items:center;gap:4px;margin:0;font-size:11px;font-weight:500;color:var(--text-secondary);white-space:nowrap;line-height:1.2}.constructor-controls__check input{margin:0;flex-shrink:0}.constructor-controls__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px;flex-shrink:0}.constructor-controls__actions .constructor-submit-btn{white-space:nowrap}.constructor-saved{flex-shrink:0;margin-bottom:8px;min-width:0}.constructor-saved__title{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.constructor-saved__scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.constructor-saved-card{flex:0 0 auto;width:min(240px,72vw);padding:10px 12px;text-decoration:none;color:var(--text);transition:box-shadow .15s,border-color .15s}.constructor-saved-card:hover{box-shadow:var(--shadow-training-hover, 0 4px 14px rgba(0, 0, 0, .08))}.constructor-saved-card--highlight{border-color:var(--brand);background:var(--brand-light)}.constructor-saved-card__title{display:block;font-size:13px;font-weight:600;line-height:1.3;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.constructor-saved-card__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;font-size:11px;color:var(--text-muted)}.constructor-main{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:6px}.constructor-form-placeholder{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center}.constructor-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 12px;margin-bottom:8px;padding:8px 12px;flex-shrink:0}.constructor-toolbar__filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;flex:1;min-width:0}.constructor-toolbar__field{display:grid;gap:4px;min-width:min(100%,160px);font-size:12px;font-weight:600;color:var(--text-secondary)}.constructor-toolbar__field--task-ids{flex:1 1 220px;min-width:min(100%,220px);max-width:360px}.constructor-toolbar__field--task-ids input{min-height:34px;padding:6px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:13px}.constructor-toolbar__field select,.constructor-toolbar__field .app-select__trigger{min-height:34px}.constructor-toolbar__actions{display:flex;flex-wrap:wrap;gap:10px}.constructor-submit-btn{white-space:nowrap;padding:10px 22px;font-size:15px;border-radius:12px;flex-shrink:0}.constructor-form{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden;flex:1 1 0;min-height:0;display:flex;flex-direction:column}.constructor-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;flex:1 1 0;min-height:0;overflow-y:auto}.constructor-row--full{grid-column:1 / -1}.constructor-row{display:grid;grid-template-columns:minmax(0,1fr) 2.75rem minmax(7.5rem,max-content);align-items:center;padding:0 10px;min-height:36px;min-width:0;border-bottom:1px solid var(--border-light);transition:background .12s}.constructor-row:last-child{border-bottom:none}.constructor-row--header{background:var(--panel-muted);font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;min-height:30px}.constructor-row--header .constructor-col-available,.constructor-row--header .constructor-col-counter--header{text-align:center;white-space:nowrap;justify-self:stretch}.constructor-row--header .constructor-col-counter--header{display:block}.constructor-hdr-label--short{display:none}.constructor-col-name{font-size:13px;color:var(--text);cursor:pointer;padding:4px 2px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.constructor-col-name:hover{color:var(--brand)}.constructor-row--active{background:var(--brand-light)}.constructor-row:hover:not(.constructor-row--header){background:var(--panel-muted)}.constructor-col-available{text-align:center;font-size:12px;color:var(--text-muted)}.counter-btn{width:26px;height:26px;border-radius:7px;border:1px solid var(--border);background:var(--surface);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .15s;line-height:1}.counter-btn:hover:not(:disabled){background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.counter-btn:disabled{opacity:.3;cursor:not-allowed}.counter-value{width:28px;text-align:center;font-weight:700;font-size:14px;color:var(--text)}.constructor-col-counter{display:flex;align-items:center;justify-content:center;gap:3px}.constructor-footer{display:flex;justify-content:flex-end;margin-top:6px;flex-shrink:0;padding-top:0}.constructor-created{margin-top:6px;flex-shrink:0;max-height:min(28vh,220px);overflow-y:auto}@media(min-width:1200px){.constructor-form__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.constructor-form__grid .constructor-row:nth-child(odd){border-right:1px solid var(--border-light)}@media(min-width:1200px){.constructor-form__grid .constructor-row{border-right:1px solid var(--border-light)}.constructor-form__grid .constructor-row:nth-child(3n){border-right:none}}@media(max-width:1100px){.constructor-controls__main{grid-template-columns:repeat(3,minmax(0,1fr))}.constructor-controls__field--task-ids{grid-column:1 / -1}.constructor-controls__actions{grid-column:1 / -1;justify-content:flex-start}}@media(max-width:900px){.constructor-controls__main{grid-template-columns:1fr 1fr}.constructor-controls__field--task-ids,.constructor-controls__actions{grid-column:1 / -1}.constructor-controls__filters{grid-template-columns:1fr}.constructor-controls__teacher{flex-direction:column;align-items:stretch}}@media(max-width:720px){.constructor-form__grid{grid-template-columns:1fr}.constructor-form__grid .constructor-row{border-right:none}}.training-section{margin-bottom:28px}.training-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.training-card{text-decoration:none;color:var(--text);padding:18px;transition:box-shadow .2s,transform .15s}.training-card:hover{box-shadow:var(--shadow-training-hover);transform:translateY(-2px)}.training-card__title{margin:0 0 10px;font-size:16px;font-weight:600}.training-card__meta{display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted)}.news-section{margin-bottom:20px}.exam-view{max-width:var(--page-max);margin:0 auto}.exam-header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.exam-header h2{margin:0}.result-correct{color:var(--success);font-weight:600}.result-wrong{color:var(--danger);font-weight:600}.share-code{background:var(--bg);padding:3px 8px;border-radius:6px;font-size:12px;margin-right:6px}.copy-toast{position:fixed;bottom:24px;right:24px;background:var(--toast-bg);color:var(--toast-fg);padding:10px 20px;border-radius:10px;font-size:14px;z-index:400;animation:fadeInOut 2s ease}@keyframes fadeInOut{0%{opacity:0;transform:translateY(10px)}15%{opacity:1;transform:translateY(0)}85%{opacity:1}to{opacity:0}}.news-section--page{max-width:var(--page-max);margin:28px auto 0;padding:0;box-sizing:border-box}.news-section--full-bleed{width:100vw;max-width:100vw;margin-top:8px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-bottom:8px;box-sizing:border-box}.news-section--full-bleed>.section-title--center{padding:0 24px;box-sizing:border-box}.news-section--full-bleed .loading-text--center,.news-section--full-bleed .empty-text--center{padding-left:24px;padding-right:24px}.section-title--center,.loading-text--center,.empty-text--center{text-align:center;width:100%}.news-section--full{margin-top:8px}.news-feed{display:flex;flex-direction:column;gap:24px}.news-article-full{width:100%;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card-hover)}.news-article-full:last-child{border-bottom:1px solid var(--border)}.news-article-full__cover{display:flex;align-items:center;justify-content:center;padding:16px 24px;background:var(--panel-muted);border-bottom:1px solid var(--border-light)}.news-article-full__image{display:block;width:auto;max-width:100%;max-height:480px;height:auto;margin:0 auto;object-fit:contain}.news-article-full__body{padding:20px 24px 28px;box-sizing:border-box}.news-article-full__title{margin:8px 0 16px;font-size:22px;font-weight:700}.news-html--article{line-height:1.75;font-size:16px;color:var(--text)}.news-html--article img{max-width:100%;border-radius:10px;margin:12px 0}.task-layout--default .task-html--card,.task-layout--text-left-img-right .task-html--card{display:block}.task-layout--text-left-img-right .task-html--card>p:has(>img:only-child):last-of-type{float:right;clear:right;max-width:38%;margin:0 0 .5em 16px}.task-layout--text-left-img-right .task-html--card>p:has(>img:only-child):last-of-type img{max-width:100%;height:auto}.task-html--card:has(.task-md-columns),.task-html--card:has(.task-md-table-img-row),.task-html.exam-task-description:has(.task-md-columns),.task-html.exam-task-description:has(.task-md-table-img-row),.task-html.exam-task-question:has(.task-md-columns),.task-html.exam-task-question:has(.task-md-table-img-row){display:block!important;column-count:auto!important;grid-template-columns:unset!important;flex-direction:column!important;flex-wrap:nowrap!important}.task-html--card:has(.task-md-columns) .task-md-columns,.task-html.exam-task-description:has(.task-md-columns) .task-md-columns,.task-html.exam-task-question:has(.task-md-columns) .task-md-columns{width:100%;max-width:100%}.task-layout--img-top .task-html--card{display:flex;flex-direction:column;gap:12px}.task-layout--img-top .task-html--card img:first-of-type{order:-1;max-width:100%;border-radius:8px}.task-card-hero{max-width:100%;width:100%;height:auto;border-radius:8px;object-fit:contain;background:var(--panel-muted-2)}.task-card-hero--top{margin:0 0 12px}.task-card-media-row{display:grid;gap:16px;align-items:start;margin:10px 0 12px}.task-card-media-row--img-right{grid-template-columns:minmax(0,1fr) minmax(140px,38%)}.task-card-media-row--img-left{grid-template-columns:minmax(140px,38%) minmax(0,1fr)}.task-layout--two-columns .task-html--card{column-count:2;column-gap:20px}.task-layout--code-block .task-html--card pre,.task-layout--code-block .task-html--card code{font-family:var(--font-mono);font-size:13px}.task-layout--table-task .task-html--card .md-table-wrap{margin:.5em 0}.task-layout--table-task .task-html--card .task-md-center .md-table-wrap,.task-layout--table-task .task-html--card .task-md-fold__body .md-table-wrap{margin:.5em auto}.hint-row{margin:10px 0;border:1px solid var(--border);border-radius:10px;padding:0 14px;background:var(--panel-muted)}.hint-row summary{cursor:pointer;padding:10px 0;font-weight:600;font-size:13px;color:var(--text-secondary);list-style-position:outside}.hint-body{padding-bottom:14px;font-size:14px;line-height:1.55}.answer-field--compact{margin-top:12px;display:grid;gap:6px;max-width:320px}.exam-answer-input{width:100%;max-width:280px;padding:6px 12px;font-size:14px}.exam-answer-textarea{min-height:36px;max-height:120px;resize:vertical;line-height:1.35}.task-solution-block{margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.task-solution-block h4{margin:0 0 10px;font-size:15px}.solution-rendered .solution-text-block{margin:10px 0;line-height:1.65;color:var(--text)}.solution-rendered .solution-code-pre{margin:12px 0;padding:14px 16px;border-radius:10px;overflow-x:auto;font-size:13px;line-height:1.5}.solution-rendered .solution-code-pre code{font-family:var(--font-mono)}.task-modal.task-layout--two-columns .task-html{column-count:2;column-gap:20px}.field-group-hint{font-size:13px;color:var(--text-muted);margin:0 0 14px;line-height:1.5}.solution-block-lang-select,.solution-block-lang-select.app-select__trigger{width:170px;font-size:12px;padding:4px 8px}.difficulty[data-level=grave]{background:#7c3aed}.difficulty[data-level=mfti]{background:#be123c}.task-question{margin:8px 0 10px;font-size:15px;line-height:1.5}@media(max-width:1240px){.header-menu-toggle{display:flex}.header-nav{display:none}.header-inner{position:relative}.header-brand{position:absolute;left:50%;transform:translate(-50%);margin-right:0;min-width:0;z-index:1}.header-right{gap:6px;flex-shrink:0}}@media(max-width:900px){.main-content.main-content--schedule,.main-content.main-content--variants{max-height:none;overflow:visible}.catalog-grid{display:block;gap:0}.catalog-grid .topics-panel{position:fixed;left:0;top:calc(var(--header-h) + env(safe-area-inset-top,0px));bottom:0;width:min(100vw - 40px,320px);max-height:none!important;z-index:90;margin:0;transform:translate(-108%);transition:transform .22s ease-out;box-shadow:var(--shadow-dropdown);border-radius:0 14px 14px 0;-webkit-overflow-scrolling:touch}.catalog-grid .topics-panel.topics-panel--drawer-open{transform:translate(0)}.constructor-row{padding:0 12px;min-width:20rem}.constructor-row--header{letter-spacing:.02em}.page-title-row{flex-direction:column;align-items:stretch}.page-title{font-size:clamp(1.25rem,4vw,1.75rem)}.task-layout--text-left-img-right .task-html--card>p:has(>img:only-child):last-of-type{float:none;max-width:100%;margin:.5em 0}.task-card-media-row--img-right,.task-card-media-row--img-left{grid-template-columns:1fr}.task-layout--two-columns .task-html--card,.task-modal.task-layout--two-columns .task-html{column-count:1}}@media(max-width:640px){.main-content{padding:16px max(12px,env(safe-area-inset-left)) 48px max(12px,env(safe-area-inset-right))}.main-content.main-content--messages{padding:0}.page,.home-page,.teacher-page,.messages-page,.catalog-page,.courses-page,.about-exam-page{overflow-x:clip}.modal-card,.user-profile-modal{width:min(calc(100vw - 24px),100%);max-width:calc(100vw - 24px)}.md-table-wrap,pre,code{max-width:100%;overflow-x:auto}img,video,iframe{max-width:100%;height:auto}.header-inner{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));gap:4px}.header-menu-toggle{width:40px;height:40px;margin-right:2px}.brand-logo{height:32px;width:32px;max-width:32px}.header-right{gap:4px;--header-action-size: 36px;--header-action-icon: 20px}.header-avatar{font-size:14px}.header-mail-badge{top:-3px;right:-3px;min-width:16px;height:16px;font-size:10px;line-height:16px;padding:0 4px}.header-user-name{display:none}.brand-text{font-size:17px}.news-feed{grid-template-columns:1fr}.filters{flex-direction:column;align-items:stretch}.filters label{width:100%}.filters select,.filters .app-select__trigger,.filters input{width:100%;max-width:none}.constructor-row{padding:0 10px;min-height:52px;min-width:17rem;grid-template-columns:minmax(6rem,1fr) minmax(3.5rem,max-content) minmax(7.5rem,max-content)}.constructor-row--header{font-size:11px;letter-spacing:.01em}.constructor-hdr-label--full{display:none}.constructor-hdr-label--short{display:inline}.constructor-submit-btn{white-space:normal;text-align:center;width:100%;max-width:100%}.pagination-row{flex-wrap:wrap;justify-content:center}.primary-btn,.secondary-btn{min-height:44px;padding-left:16px;padding-right:16px}}@media(max-width:400px){.brand-text{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.courses-page__status,.courses-page__error,.course-shell__status,.course-shell__error,.course-lesson__status,.course-lesson__error{color:var(--text-muted);padding:16px 0}.courses-page__error,.course-shell__error,.course-lesson__error{color:var(--danger)}.courses-table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.courses-table{width:100%;border-collapse:collapse;font-size:14px}.courses-table thead th{padding:12px 16px;text-align:left;font-weight:600;font-size:13px;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.courses-table tbody td{padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--border)}.courses-table tbody tr:last-child td{border-bottom:none}.courses-table__row{cursor:pointer;transition:background .12s}.courses-table__row:hover,.courses-table__row:focus-visible{background:var(--surface-muted, rgba(0, 0, 0, .03));outline:none}.courses-table__col--price,.courses-table__col--rating{width:1%;white-space:nowrap}.courses-table__col--progress{width:140px;min-width:120px}.courses-table__progress{display:flex;flex-direction:column;gap:6px}.courses-table__progress-bar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.courses-table__progress-fill{display:block;height:100%;border-radius:inherit;background:var(--brand)}.courses-table__progress-label{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-muted)}.courses-page__nav{margin-top:8px;font-size:14px}.courses-page__nav a{color:var(--brand);text-decoration:none}.courses-page__nav a:hover{text-decoration:underline}.courses-table__col--author{width:14%;min-width:120px}.courses-table__title{min-width:200px}.courses-table__title-inner{display:flex;align-items:center;gap:12px;font-weight:600}.courses-table__accent{width:4px;height:1.25em;border-radius:2px;flex-shrink:0}.courses-table__link{color:inherit;text-decoration:none;line-height:1.35}.courses-table__link:hover{color:var(--brand)}.courses-table__desc{color:var(--text-muted);line-height:1.45;max-width:480px}.courses-table__price{font-weight:700;color:var(--brand);white-space:nowrap}.courses-table__rating{font-variant-numeric:tabular-nums;white-space:nowrap}.courses-table__author{color:var(--text-muted)}.courses-table__badge{flex-shrink:0;padding:2px 8px;border-radius:999px;background:var(--brand-light);color:var(--brand);font-size:10px;font-weight:600}.course-shell{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start;min-height:calc(100vh - var(--header-h) - 48px)}.course-shell--sidebar-collapsed{grid-template-columns:56px minmax(0,1fr)}.course-shell__mobile-open{display:none}.course-shell__sidebar{position:sticky;top:calc(var(--header-h) + 16px);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:14px;max-height:calc(100vh - var(--header-h) - 32px);overflow:auto}.course-shell--sidebar-collapsed .course-shell__course-desc,.course-shell--sidebar-collapsed .course-shell__price,.course-shell--sidebar-collapsed .course-shell__nav,.course-shell--sidebar-collapsed .course-shell__course-title{display:none}.course-shell__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.course-shell__back{font-size:13px;font-weight:600;color:var(--brand);text-decoration:none}.course-shell__collapse{border:none;background:var(--bg);border-radius:8px;width:32px;height:32px;cursor:pointer}.course-shell__course-title{font-weight:700;font-size:16px;margin-bottom:8px}.course-shell__course-desc{margin:0 0 10px;font-size:13px;color:var(--text-muted);line-height:1.4}.course-shell__price{font-weight:700;color:var(--brand);margin-bottom:14px}.course-shell__nav ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.course-shell__link--locked{color:var(--text-muted);cursor:default}.course-shell__stats{display:grid;gap:12px;margin-bottom:16px;padding:12px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.course-shell__stat-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:12px;color:var(--text-secondary)}.course-shell__stat-head strong{color:var(--text);font-size:12px}.course-shell__stat-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border) 80%,transparent);overflow:hidden}.course-shell__stat-fill{display:block;height:100%;border-radius:inherit;background:var(--brand);transition:width .25s ease}.course-shell__stat-fill--tasks{background:#059669}.course-shell__nav-section{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.course-shell__chapter+.course-shell__chapter{margin-top:12px}.course-shell__nav-chapter{margin:0 0 4px;padding:4px 10px 0;font-size:12px;font-weight:700;color:var(--text-muted);line-height:1.35}.article-content .course-tip{margin:0 0 16px;padding:12px 14px;border-radius:10px;border-left:4px solid var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--surface));font-size:.92rem;line-height:1.5}.article-content .sql-example-table{width:100%;margin:12px 0;border-collapse:collapse;font-size:.88rem}.article-content .sql-example-table th,.article-content .sql-example-table td{border:1px solid var(--border);padding:6px 10px;text-align:left}.article-content .sql-example-table th{background:color-mix(in srgb,var(--brand) 10%,var(--surface));font-weight:700}.course-block-article__hero{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:10px;margin:0 0 16px}.course-block-article__html img{max-width:100%;height:auto;border-radius:8px}.course-shell__link{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--text);font-size:14px;line-height:1.35}.course-shell__check{width:16px;flex-shrink:0;color:#059669;font-size:12px;font-weight:700;line-height:1.4}.course-shell__link-num{flex-shrink:0;color:var(--text-muted);font-size:13px;font-weight:600}.course-shell__link-title{min-width:0}.course-shell__link--done .course-shell__link-title{color:color-mix(in srgb,var(--text) 78%,#059669)}.course-shell__link:hover{background:var(--bg)}.course-shell__link--active{background:var(--brand-light);color:var(--brand);font-weight:600}.course-shell__paywall{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:32px 28px;max-width:560px}.course-shell__paywall-title{margin:0 0 10px}.course-shell__paywall-text{margin:0 0 20px;color:var(--text-muted);line-height:1.5}.course-shell__paywall-actions{display:flex;flex-wrap:wrap;gap:10px}.course-shell__paywall-actions .secondary-btn{text-decoration:none;display:inline-flex;align-items:center}.course-lesson__head{margin-bottom:20px}.course-lesson__course{margin:0 0 6px;font-size:13px;color:var(--text-muted)}.course-lesson__title{margin:0 0 8px}.course-lesson__desc{margin:0;color:var(--text-muted);line-height:1.5}.course-lesson__blocks{display:grid;gap:20px}.course-block-code__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.course-block-code__title{margin:0;font-size:16px}.course-block-code__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.course-block-code__lang-label{display:flex;align-items:center;gap:6px;font-size:13px}.course-block-code__lang-select{border:1px solid var(--border);border-radius:8px;padding:6px 8px;background:var(--surface);color:var(--text)}.course-block-code__hint{margin:0 0 10px;font-size:13px;color:var(--text-muted)}.course-block-code__editor{width:100%;box-sizing:border-box;border:1px solid var(--article-pre-border);border-radius:10px;padding:12px;font-family:var(--font-mono);font-size:13px;line-height:1.45;background:var(--article-pre-bg);color:var(--article-pre-fg);resize:vertical;min-height:180px}.course-block-code__output{margin:12px 0 0;padding:12px;border-radius:10px;border:1px solid var(--article-pre-border);background:var(--article-pre-bg);color:var(--article-pre-fg);font-family:var(--font-mono);font-size:13px;white-space:pre-wrap;overflow:auto}.course-block-video__caption{margin:0 0 12px;font-size:16px}.course-block-video__frame-wrap{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;background:#000}.course-block-video__frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.course-block-video__desc,.course-block-video__missing,.course-block-task__missing,.course-block-test__missing{margin:0;color:var(--text-muted)}.course-block-test__title{margin:0 0 8px}.course-block-test__lead{margin:0 0 16px;color:var(--text-muted)}.course-block-test__tasks{display:grid;gap:20px}.course-block-test__item-head{font-size:13px;font-weight:700;color:var(--text-muted);margin-bottom:8px;display:flex;align-items:center;gap:8px}.course-block-test__item--solved{outline:2px solid color-mix(in srgb,var(--brand) 28%,transparent);border-radius:12px;padding:4px}.course-block-test__solved{color:#059669;font-size:14px}@media(max-width:900px){.course-shell{grid-template-columns:1fr}.course-shell__mobile-open{display:inline-flex;margin-bottom:12px}.course-shell__sidebar{position:fixed;left:0;top:calc(var(--header-h) + env(safe-area-inset-top,0px));bottom:0;width:min(100vw - 32px,360px);z-index:120;transform:translate(-108%);transition:transform .2s ease;max-height:none}.course-shell__sidebar--open{transform:translate(0)}.course-shell__scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);z-index:110}.course-shell__collapse{display:none}}.course-quiz{padding:20px 22px}.course-quiz--modal{padding:0;border:none;background:transparent;box-shadow:none}.course-quiz-modal{width:min(640px,100%)}.course-quiz-modal__footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.course-quiz-modal__hint{margin:0 0 12px;color:var(--text-muted);font-size:.92rem}.course-quiz-modal__hint--warn{color:var(--danger)}.course-quiz-modal__actions{display:flex;flex-wrap:wrap;gap:10px}.course-quiz__title{margin:0 0 8px;font-size:1.1rem}.course-quiz__lead{margin:0 0 16px;font-size:.9rem;color:var(--text-muted)}.course-quiz__question{margin-bottom:18px}.course-quiz__q-text{margin:0 0 10px;font-weight:600}.course-quiz__options{display:grid;gap:8px}.course-quiz__option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;cursor:pointer;background:var(--surface)}.course-quiz__option input[type=radio]{flex:0 0 auto;width:16px;height:16px;margin:2px 0 0}.course-quiz__option-text{flex:1 1 auto;line-height:1.45}.course-quiz__actions{margin-top:8px}.course-quiz__score{margin:0;font-weight:600}.course-quiz__score--ok{color:var(--brand)}.course-code-task{padding:20px 22px}.course-code-task--passed{border-color:color-mix(in srgb,var(--brand) 35%,var(--border))}.course-code-task__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.course-code-task__title{margin:0;font-size:1.05rem}.course-code-task__badge{font-size:.78rem;font-weight:700;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);padding:4px 10px;border-radius:999px}.course-code-task__statement{margin-bottom:14px}.course-code-task__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.course-code-task__results{display:grid;gap:8px;margin-top:14px}.course-code-task__result{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:.88rem}.course-code-task__result--ok{background:color-mix(in srgb,var(--brand) 10%,transparent)}.course-code-task__result--fail{background:color-mix(in srgb,var(--danger) 10%,transparent)}.course-code-task__diff code{font-family:var(--font-mono);font-size:.85em}.course-code-task__message{margin:12px 0 0;font-size:.92rem}.course-code-task__message--ok{color:var(--brand);font-weight:600}
