@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.sticky{position:sticky}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@font-face{font-family:Onest;src:url(/Onest/Onest-VariableFont_wght.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Unbounded;src:url(/Unbounded/Unbounded-VariableFont_wght.ttf)format("truetype");font-weight:100 900;font-display:swap}:root{--color-primary:#2b2b2b;--color-muted:#74756f;--color-soft:#f4f5ed;--color-soft-strong:#e9ebdf;--color-button:#d1e8b2;--color-button-hover:#c7dea8;--color-blue-soft:#dee4f4;--color-accent:#f9facf;--color-line:#d9dbcf;--color-white:#fff;--shadow-soft:0 24px 70px #2b2b2b14;--radius-lg:30px;--radius-md:20px;--radius-sm:10px}*{box-sizing:border-box}img,svg{max-width:100%}img{height:auto}html{scroll-behavior:smooth;background:var(--color-white);color:var(--color-primary);scroll-padding-top:94px}[id]{scroll-margin-top:16px}body{min-height:100vh;margin:0;font-family:Onest,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}main{width:min(1200px,100% - 32px);margin:0 auto}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd6;align-items:center;gap:24px;width:min(1200px,100% - 32px);min-height:82px;margin:0 auto;padding:16px 0;display:flex;position:sticky;top:0}.brand-link,.footer-brand{align-items:center;gap:10px;font-family:Unbounded,sans-serif;font-weight:600;display:inline-flex}.brand-logo{object-fit:contain;width:42px;height:38px}.brand-name{line-height:1}.main-nav{color:var(--color-muted);align-items:center;gap:24px;margin-left:auto;font-size:15px;display:flex}.main-nav a:hover,.text-link:hover,.footer-bottom a:hover{color:var(--color-primary)}.header-login,.header-profile,.button-primary,.button-secondary{min-height:50px;color:var(--color-primary);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 24px;display:inline-flex}.header-login,.button-primary{background:var(--color-button)}.header-profile{background:var(--color-button);flex:none;width:50px;padding:0}.header-login:hover,.header-profile:hover,.button-primary:hover{background:var(--color-button-hover)}.button-secondary{background:var(--color-blue-soft)}.button-secondary:hover{background:#d1d9ef}.icon-button{background:var(--color-blue-soft);width:42px;height:42px;color:var(--color-primary);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:#d1d9ef}.logout-button{background:var(--color-blue-soft);min-height:48px;color:var(--color-primary);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:800;display:inline-flex}.logout-button:hover{background:#d1d9ef}.logout-button:disabled{cursor:wait;opacity:.72}.dashboard-logout-row{justify-content:flex-end;margin:-36px 0 72px;display:flex}.hero-section{border-radius:var(--radius-lg);background:url(/images/main/line.png) var(--color-soft) left bottom / 100% no-repeat;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);align-items:start;min-height:650px;margin-top:12px;padding:52px 64px;display:grid;position:relative;overflow:hidden}.hero-content{z-index:2;min-width:0;max-width:650px;position:relative}.eyebrow{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px;font-size:14px;font-weight:700}h1,h2,h3{letter-spacing:0;margin:0;font-family:Unbounded,sans-serif;line-height:1.08}h1{max-width:760px;font-size:clamp(34px,4.8vw,58px)}h2{font-size:clamp(28px,3.3vw,42px)}h3{font-size:20px}.hero-lead,.section-heading p,.split-section p,.teacher-card p,.teacher-profile-content p,.auth-card p,.legal-page p{color:var(--color-muted);font-size:17px;line-height:1.58}h1,h2,h3,p,a,span,strong{overflow-wrap:break-word}.hero-lead{max-width:560px;margin:26px 0 0}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.section-bottom-actions{justify-content:center;margin-top:24px;display:flex}.hero-visual{min-height:440px;position:relative}.hero-planets{object-fit:contain;width:min(560px,100%);height:auto;position:absolute;top:28px;right:-28px}.hero-hat{width:220px;height:auto;position:absolute;bottom:20px;left:0;rotate:-20deg}.hero-bag{width:150px;height:auto;position:absolute;bottom:70px;right:10px;rotate:22deg}.section,.page-section{margin:72px 0}.page-section{min-height:54vh}.compact-section{margin:44px 0}.section-heading{min-width:0;max-width:780px;margin-bottom:28px}.section-heading p{margin:18px 0 0}.page-section>.section-heading{margin-bottom:44px}.section-heading.with-link{justify-content:space-between;align-items:end;gap:24px;max-width:none;display:flex}.text-link{color:var(--color-muted);white-space:nowrap;font-weight:700}.feature-grid,.teacher-grid,.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.feature-card,.teacher-card,.review-card,.preview-card,.auth-card,.legal-page,.filter-panel:not(.admin-filter-panel){border-radius:var(--radius-md);background:var(--color-soft);min-width:0}.feature-card{min-height:245px;padding:24px}.feature-card:first-child{background:#edf3e5}.feature-card:nth-child(2){background:#edf0f6}.feature-card:nth-child(3){background:#f5f3e7}.feature-card:nth-child(4){background:#f4ecea}.feature-card svg{box-sizing:content-box;color:var(--color-muted);background:#ffffffa8;border-radius:7px;padding:9px}.feature-card h3,.teacher-card h3{margin-top:18px}.feature-card p{color:var(--color-muted);margin:22px 0 0;line-height:1.52}.daily-practice-promo{border-radius:var(--radius-lg);background:#f7f8f3;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);align-items:center;gap:48px;padding:48px;display:grid}.daily-practice-copy{min-width:0}.daily-practice-copy h2{max-width:720px;font-size:34px;line-height:1.16}.daily-practice-copy h2 span{color:#4f6839;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#e2efcf;border-radius:4px;padding:0 6px 2px}.daily-practice-copy p{max-width:720px;color:var(--color-muted);margin:20px 0 0;font-size:17px;line-height:1.62}.daily-practice-steps{gap:10px;min-width:0;display:grid}.daily-practice-steps>div{--practice-background:#edf3e5;--practice-border:#dce7ce;--practice-accent:#526b3c;border:1px solid var(--practice-border);background:var(--practice-background);border-radius:8px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:3px 12px;min-width:0;padding:14px 16px;display:grid}.daily-practice-steps>div:nth-child(2){--practice-background:#edf0f6;--practice-border:#d9dfeb;--practice-accent:#4e5e7c}.daily-practice-steps>div:nth-child(3){--practice-background:#f5f3e7;--practice-border:#e8e3c9;--practice-accent:#746d45}.daily-practice-step-icon{border:1px solid var(--practice-border);width:38px;height:38px;color:var(--practice-accent);background:#ffffffb8;border-radius:7px;grid-row:1/3;place-items:center;display:grid}.daily-practice-steps>div>span:not(.daily-practice-step-icon){color:var(--practice-accent);font-size:13px;font-weight:750}.daily-practice-steps strong{min-width:0;font-size:16px}.directory-page{margin-top:0;padding-top:48px}.directory-page-heading,.directory-page-heading>div{width:100%;min-width:0;max-width:none}.directory-page-heading h1{width:100%;max-width:none}.directory-page-heading p{max-width:920px}.reviews-page-heading h1{white-space:nowrap;font-size:40px}.reviews-page-heading .button-primary{white-space:nowrap;flex:none;width:fit-content}.split-section{border-radius:var(--radius-lg);background:var(--color-soft);grid-template-columns:minmax(0,1fr) minmax(360px,1fr);align-items:center;gap:36px;padding:48px;display:grid}.split-section>*{min-width:0}.split-section h2{text-wrap:balance;max-width:620px;font-size:clamp(24px,2.25vw,30px);line-height:1.18}.check-list{gap:12px;margin:26px 0 0;padding:0;list-style:none;display:grid}.check-list li{color:var(--color-muted);align-items:flex-start;gap:10px;line-height:1.55;display:flex}.check-list svg{flex:none;margin-top:2px}.dashboard-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.preview-card{border:1px solid #0000;align-content:start;gap:6px;padding:24px;display:grid}.preview-lesson{background:#edf0f6;border-color:#d9dfeb;grid-column:1/-1;justify-content:start;min-height:146px}.preview-homework{background:#edf3e5;border-color:#dce7ce;min-height:184px}.preview-theory{background:#f5f3e7;border-color:#e8e3c9;min-height:184px;padding:20px}.preview-theory strong{overflow-wrap:normal;word-break:normal;font-size:18px}.preview-card span,.preview-card small{color:var(--color-muted)}.preview-card strong{font-size:20px;line-height:1.28}.track-grid,.chip-row{flex-wrap:wrap;gap:10px;display:flex}.track-pill,.chip{background:var(--color-soft);min-height:38px;color:var(--color-primary);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.home-subjects-heading{align-items:center;gap:22px;max-width:none;display:flex}.home-subjects-heading:after{content:"";background:var(--color-line);flex:1;height:1px}.home-subjects-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.home-subject-card{border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:space-between;min-width:0;min-height:142px;padding:18px;display:flex;overflow:hidden}.home-subject-card.math{background:#f3f7ed;border-color:#dce7ce}.home-subject-card.informatics{background:#f2f4f8;border-color:#d9dfeb}.home-subject-card.russian{background:#f8f6ed;border-color:#e8e3c9}.home-subject-card.physics{background:#f7f1ef;border-color:#e5d9d5}.home-subject-card.social{background:#f0f5f2;border-color:#d7e4de}.home-subject-icon{width:42px;height:42px;color:var(--color-primary);border:1px solid #0000;border-radius:7px;place-items:center;display:inline-grid}.home-subject-card.math .home-subject-icon{color:#526b3c;background:#edf3e5;border-color:#dce7ce}.home-subject-card.informatics .home-subject-icon{color:#4e5e7c;background:#edf0f6;border-color:#d9dfeb}.home-subject-card.russian .home-subject-icon{color:#746d45;background:#f5f3e7;border-color:#e8e3c9}.home-subject-card.physics .home-subject-icon{color:#795d55;background:#f4ecea;border-color:#e5d9d5}.home-subject-card.social .home-subject-icon{color:#49685a;background:#e5efea;border-color:#d7e4de}.home-subject-card h3{margin-top:24px;font-size:clamp(17px,1.4vw,20px);line-height:1.2}.home-subject-card.social h3{-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal;font-size:15px}.chip{background:var(--color-blue-soft)}.chip-button{cursor:pointer;border:0}.teacher-card{min-height:100%;color:inherit;flex-direction:column;display:flex;overflow:hidden}.teacher-card:hover{background:var(--color-soft-strong)}.teacher-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.teacher-slider{gap:10px;display:grid}.teacher-slider-controls{justify-content:flex-end;gap:8px;display:flex}.teacher-slider-controls .icon-button{width:38px;height:38px}.teacher-slider-track{scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;gap:18px;display:flex;overflow-x:auto}.teacher-slider-track::-webkit-scrollbar{display:none}.teacher-slider-track .teacher-card{scroll-snap-align:start;flex:0 0 min(360px,33.3333% - 12px)}.teacher-photo-wrap{aspect-ratio:1/.7;background:var(--color-soft-strong);justify-content:center;align-items:center;display:flex;overflow:hidden}.teacher-photo{object-fit:cover;width:100%;height:100%}.teacher-card-body{gap:10px;padding:18px 20px 14px;display:grid}.teacher-card-body .eyebrow{margin:0;font-size:13px;line-height:1.35}.teacher-card h3{margin-top:0}.experience-badge{background:var(--color-blue-soft);width:fit-content;color:var(--color-primary);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;line-height:1.35;display:inline-flex}.teacher-card-footer{justify-content:flex-start;align-items:center;gap:16px;margin-top:auto;padding:0 20px 18px;font-size:15px;font-weight:700;display:flex}.review-card{width:100%;height:270px;color:inherit;text-align:left;cursor:pointer;border:0;flex-direction:column;gap:18px;padding:26px;display:flex;overflow:hidden}.review-card:hover{background:var(--color-soft-strong)}.review-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.rating{color:#2b2b2b;gap:4px;display:flex}.review-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:77.52px;margin:0;font-size:17px;line-height:1.52;display:-webkit-box;overflow:hidden}.review-meta{color:var(--color-muted);justify-content:flex-start;align-items:end;gap:14px;margin-top:auto;font-size:14px;display:flex}.review-meta>div{gap:4px;min-width:0;display:grid}.teacher-hero{border-radius:var(--radius-lg);background:var(--color-soft);grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:center;gap:32px 42px;padding:48px;display:grid}.teacher-profile-photo{aspect-ratio:1;border-radius:var(--radius-md);background:var(--color-soft-strong);justify-content:center;align-items:center;display:flex;overflow:hidden}.teacher-profile-photo img{object-fit:cover;width:100%;height:100%}.teacher-profile-content{gap:18px;min-width:0;display:grid}.teacher-profile-content h1{overflow-wrap:anywhere;word-break:normal}.teacher-profile-description{border-top:1px solid var(--color-line);grid-column:1/-1;padding-top:28px}.teacher-profile-description p{color:var(--color-muted);white-space:pre-line;margin:0;font-size:17px;line-height:1.68}.teacher-title{color:var(--color-muted);font-size:18px;font-weight:700}.price-table{border:1px solid var(--color-line);border-radius:var(--radius-md);min-width:0;overflow:hidden}.price-row{border-top:1px solid var(--color-line);grid-template-columns:minmax(0,1.4fr) minmax(150px,.6fr) minmax(150px,.6fr);display:grid}.price-row:first-child{border-top:0}.price-row span{padding:18px 20px}.price-head{background:var(--color-soft);font-weight:700}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.contact-grid>a,.contact-static{border-radius:var(--radius-sm);background:var(--color-soft);align-items:center;gap:10px;min-height:64px;padding:16px;font-weight:700;display:flex}.contact-grid>a:hover{background:var(--color-button)}.contact-static{min-width:0}.contact-static>span{overflow-wrap:anywhere;min-width:0;margin-right:auto}.filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px;padding:22px;display:grid}.filter-panel label{color:var(--color-muted);gap:12px;font-weight:700;display:grid}.filter-panel label>span{color:var(--color-primary);padding-left:2px}.filter-panel input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-height:48px;color:var(--color-primary);outline:none;padding:0 14px;font-weight:500}.filter-panel input:focus{border-color:var(--color-primary)}.review-modal-backdrop{z-index:50;background:#2b2b2b6b;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.review-toggle{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed}.review-modal-shell:has(.review-toggle:checked) .review-modal-backdrop{display:flex}.review-modal-dismiss{position:absolute;inset:0}.review-modal{z-index:1;border-radius:var(--radius-md);background:var(--color-white);width:min(680px,100%);max-height:min(680px,100vh - 40px);box-shadow:var(--shadow-soft);padding:34px;position:relative;overflow:auto}.modal-close{background:var(--color-soft);width:40px;height:40px;color:var(--color-primary);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:18px;right:18px}.modal-close:hover{background:var(--color-button)}.modal-review-text{margin:24px 0;font-size:20px;line-height:1.6}.review-modal .review-meta{justify-content:start;gap:4px;display:grid}.dashboard-page{gap:32px;margin:38px 0 72px;display:grid}.dashboard-page>*{min-width:0}.dashboard-header{border-radius:var(--radius-lg);background:var(--color-soft);grid-template-columns:minmax(0,.9fr) minmax(380px,.78fr);align-items:end;gap:28px;padding:42px;display:grid}.dashboard-header>*{min-width:0}.dashboard-header h1{max-width:820px;font-size:clamp(32px,4vw,50px)}.dashboard-student-row,.dashboard-directions,.lesson-meta,.material-tags,.dashboard-actions{flex-wrap:wrap;gap:10px;display:flex}.dashboard-student-row{margin-top:24px}.dashboard-student-row span,.dashboard-badge,.status-badge,.material-tags span,.material-direction{background:var(--color-white);width:fit-content;min-height:34px;color:var(--color-primary);border-radius:999px;align-items:center;padding:6px 12px;font-size:14px;font-weight:700;display:inline-flex}.dashboard-directions{justify-content:flex-end}.dashboard-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.summary-card{border-radius:var(--radius-md);background:var(--color-soft);min-height:148px;color:inherit;gap:10px;padding:24px;text-decoration:none;display:grid}.summary-card.accent{background:var(--color-button)}.summary-card span,.dashboard-kicker,.lesson-meta,.material-card p,.material-card small,.teacher-comment span,.submission-box span,.sidebar-panel p{color:var(--color-muted)}.summary-card strong{font-size:22px}a.summary-card{transition:transform .2s,background .2s}a.summary-card:hover{background:#f0f5e9;transform:translateY(-2px)}a.summary-card.accent:hover{background:var(--color-button-hover)}.dashboard-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:28px;display:grid}.dashboard-main,.lesson-list,.material-list,.dashboard-sidebar{gap:18px;display:grid}.dashboard-section+.dashboard-section{margin-top:34px}.lesson-card,.homework-card,.material-card{border-radius:var(--radius-md);background:var(--color-soft);min-width:0}.lesson-card{grid-template-columns:150px minmax(0,1fr);gap:20px;padding:20px;display:grid}.lesson-card.compact{background:0 0;grid-template-columns:1fr;gap:14px;padding:0}.lesson-date{border-radius:var(--radius-sm);background:var(--color-white);align-content:center;gap:6px;padding:16px;display:grid}.lesson-date span,.lesson-date small,.dashboard-kicker{color:var(--color-muted);font-size:13px;font-weight:700}.lesson-date strong{overflow-wrap:anywhere;font-size:26px;line-height:1.15}.editable-schedule-slot{align-content:start}.multi-schedule-lesson-card{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}.teacher-lesson-card.multi-schedule-lesson-card{grid-template-columns:minmax(340px,380px) minmax(0,1fr)}.teacher-lesson-card .lesson-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.schedule-panel{align-content:start;gap:12px}.schedule-panel-label{display:block}.schedule-slot-list,.admin-schedule-list{gap:10px;min-width:0;display:grid}.schedule-slot-summary{border-top:1px solid var(--color-line);gap:3px;min-width:0;padding-top:10px;display:grid}.schedule-slot-summary:first-child{border-top:0;padding-top:0}.schedule-slot-summary>span{color:var(--color-primary);font-size:14px;font-weight:800}.schedule-slot-summary strong{font-size:20px}.schedule-slot-summary strong small{font-size:12px}.schedule-empty-label{font-size:18px!important}.schedule-editor{gap:12px}.schedule-editor-list{gap:12px;display:grid}.schedule-editor-row{border-top:1px solid var(--color-line);grid-template-columns:minmax(0,1fr) 92px 36px;align-items:end;gap:8px;padding-top:12px;display:grid}.schedule-editor-row:first-child{border-top:0;padding-top:0}.schedule-remove-button,.schedule-add-button{border:1px solid var(--color-line);background:var(--color-white);color:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.schedule-remove-button{color:#a33d45;border-radius:50%;width:36px;height:42px}.schedule-add-button{border-radius:999px;gap:7px;width:fit-content;min-height:38px;padding:0 12px;font-size:13px;font-weight:800}.schedule-remove-button:hover,.schedule-add-button:hover{border-color:var(--color-primary);background:var(--color-soft)}.admin-schedule-list strong{border-top:1px solid var(--color-line);padding-top:9px;font-size:16px;line-height:1.35}.admin-schedule-list strong:first-child{border-top:0;padding-top:0}.lesson-datetime-edit-button{background:var(--color-blue-soft);width:fit-content;min-height:34px;color:var(--color-primary);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.lesson-datetime-edit-button:hover{background:#d1d9ef}.next-lesson-time .lesson-datetime-edit-button{color:var(--color-white);background:#ffffff1f;border:1px solid #ffffff38}.next-lesson-time .lesson-datetime-edit-button:hover{background:#ffffff2e}.lesson-datetime-editor{gap:10px;width:100%;display:grid}.lesson-datetime-editor label{gap:6px;min-width:0;display:grid}.lesson-datetime-editor label span{color:var(--color-muted);font-size:12px;font-weight:800}.lesson-datetime-editor input,.lesson-datetime-editor select{border:1px solid var(--color-line);background:var(--color-white);width:100%;min-width:0;min-height:42px;color:var(--color-primary);border-radius:999px;outline:none;padding:0 12px}.lesson-datetime-editor input:focus,.lesson-datetime-editor select:focus{border-color:var(--color-primary)}.next-lesson-time .lesson-datetime-editor label span{color:#ffffffb3}.next-lesson-time .lesson-datetime-editor input,.next-lesson-time .lesson-datetime-editor select{color:var(--color-white);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff1f;border-color:#ffffff47}.next-lesson-time .lesson-datetime-editor input:focus,.next-lesson-time .lesson-datetime-editor select:focus{border-color:#ffffffb8}.lesson-datetime-actions{flex-wrap:wrap;gap:8px;display:flex}.lesson-datetime-actions .button-primary,.lesson-datetime-actions .button-secondary{min-height:38px;padding:0 14px;font-size:13px}.lesson-body,.homework-card,.material-body,.sidebar-panel{gap:16px;min-width:0;display:grid}.lesson-title-row,.dashboard-card-head{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.lesson-title-row>div,.dashboard-card-head>div{min-width:0}.dashboard-badge{background:var(--color-blue-soft);flex:none;gap:6px}.dashboard-actions{margin-top:4px}.homework-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.current-homework-grid{grid-template-columns:minmax(0,640px)}.homework-card{padding:24px}.status-badge{background:var(--color-blue-soft);flex:none}.status-active .status-badge{background:var(--color-button)}.status-checked .status-badge{background:var(--color-accent)}.deadline-row,.task-list li,.submission-box{align-items:flex-start;gap:10px;display:flex}.deadline-row{color:var(--color-muted);font-weight:700}.task-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.task-list svg,.deadline-row svg,.submission-box svg{flex:none;margin-top:2px}.submission-box,.teacher-comment{border-radius:var(--radius-sm);background:var(--color-white);padding:16px}.submission-box div,.teacher-comment{gap:4px;display:grid}.teacher-comment p{margin:0}.material-card{grid-template-columns:64px minmax(0,1fr);gap:18px;padding:22px;display:grid}.material-icon{background:var(--color-blue-soft);border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.material-card p{margin:0}.material-tags span{background:var(--color-white);font-weight:600}.material-direction{background:var(--color-white)}.dashboard-sidebar{position:sticky;top:104px}.sidebar-panel{border-top:1px solid var(--color-line);padding-top:18px}.sidebar-panel:first-child{border-top:0;padding-top:0}.dashboard-nav{gap:8px;display:grid}.dashboard-nav a{border-radius:var(--radius-sm);background:var(--color-soft);padding:12px 14px;font-weight:700}.dashboard-nav a:hover{background:var(--color-button)}.dashboard-header{align-items:stretch}.dashboard-header>div:first-child{align-content:center;gap:18px;display:grid}.dashboard-header p:not(.eyebrow){max-width:720px;color:var(--color-muted);margin:0}.profile-summary-card{border-radius:var(--radius-md);background:var(--color-white);align-content:start;gap:18px;padding:24px;display:grid}.profile-summary-card h2{font-size:24px}.profile-summary-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;min-width:0;display:grid}.profile-summary-identity>div{gap:4px;min-width:0;display:grid}.profile-summary-identity h2{overflow-wrap:anywhere;min-width:0}.student-avatar-frame{--avatar-shape:circle(50% at 50% 50%);--league-accent:#b9ef6f;--league-accent-strong:#80bd32;aspect-ratio:1;clip-path:var(--avatar-shape);background:linear-gradient(145deg, #fff 0 13%, var(--league-accent) 34%, var(--league-accent-strong) 100%);filter:drop-shadow(0 8px 14px #2b2b2b29);flex:none;place-items:center;padding:5px;display:grid;position:relative}.student-avatar-frame.league-pulse{--league-accent:#68dfcb;--league-accent-strong:#159f8b}.student-avatar-frame.league-orbit{--league-accent:#85b3ff;--league-accent-strong:#3f79d8}.student-avatar-frame.league-spectrum{--league-accent:#f2ce62;--league-accent-strong:#b88900}.student-avatar-frame.league-quantum{--league-accent:#d99aff;--league-accent-strong:#9c4bcc}.student-avatar-frame.league-supernova{--league-accent:#ff8b78;--league-accent-strong:#d4523c}.student-avatar-frame.frame-hex{--avatar-shape:polygon(25% 5%, 75% 5%, 98% 50%, 75% 95%, 25% 95%, 2% 50%)}.student-avatar-frame.frame-crystal{--avatar-shape:polygon(50% 0, 92% 21%, 88% 78%, 50% 100%, 12% 78%, 8% 21%)}.student-avatar-frame.frame-nova{--avatar-shape:polygon(50% 0, 61% 11%, 76% 5%, 82% 20%, 97% 25%, 91% 40%, 100% 50%, 91% 60%, 97% 75%, 82% 80%, 76% 95%, 61% 89%, 50% 100%, 39% 89%, 24% 95%, 18% 80%, 3% 75%, 9% 60%, 0 50%, 9% 40%, 3% 25%, 18% 20%, 24% 5%, 39% 11%)}.student-avatar-image{width:100%;height:100%;clip-path:var(--avatar-shape);background:var(--color-white);display:block;position:relative;overflow:hidden}.student-avatar-image img{object-fit:cover}.student-avatar-frame.avatar-small{width:50px;padding:3px}.student-avatar-frame.avatar-medium{width:96px}.student-avatar-frame.avatar-large{width:164px;padding:7px}.direction-tabs{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;min-width:0;display:grid}.direction-tab{background:var(--color-soft);min-height:52px;color:var(--color-primary);overflow-wrap:anywhere;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-width:0;padding:0 20px;font-weight:800;display:inline-flex}.direction-tab:hover,.direction-tab.active{background:var(--color-button)}.profile-summary-list,.homework-preview-meta{gap:10px;display:grid}.profile-summary-list span,.homework-preview-meta span,.detail-meta-row span:not(.status-badge){min-width:0;color:var(--color-muted);overflow-wrap:anywhere;align-items:center;gap:8px;font-weight:700;display:inline-flex}.profile-summary-list svg,.homework-preview-meta svg,.detail-meta-row svg{flex:none}.next-lesson-panel{border-radius:var(--radius-lg);background:var(--color-primary);color:var(--color-white);grid-template-columns:minmax(190px,.36fr) minmax(0,1fr);gap:24px;padding:28px;display:grid}.next-lesson-time{border-radius:var(--radius-md);background:#ffffff1a;align-content:center;gap:10px;padding:24px;display:grid}.next-lesson-time span,.next-lesson-time small,.next-lesson-panel .dashboard-kicker,.next-lesson-panel .lesson-info-grid small{color:#ffffffb3}.next-lesson-time strong{font-size:clamp(36px,5vw,56px);line-height:.98}.next-lesson-time.is-unscheduled strong{overflow-wrap:break-word;max-width:100%;font-size:28px;line-height:1.12}.next-lesson-time strong small,.lesson-date strong small{font-size:.5em}.next-lesson-content{align-content:center;gap:18px;display:grid}.next-lesson-content h2{max-width:780px;color:var(--color-white);font-size:clamp(28px,4vw,44px)}.next-lesson-content .button-primary{background:var(--color-button);width:fit-content;color:var(--color-primary)}.lesson-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lesson-info-grid span{border-radius:var(--radius-sm);background:var(--color-white);gap:4px;min-width:0;padding:12px 14px;display:grid}.lesson-info-grid small{color:var(--color-muted);font-size:13px;font-weight:700}.lesson-info-grid strong{overflow-wrap:anywhere;font-size:15px}.next-lesson-panel .lesson-info-grid span{background:#ffffff1f}.next-lesson-panel .lesson-info-grid strong{color:var(--color-white)}.homework-preview-card,.theory-card{color:inherit;text-decoration:none;transition:transform .2s,background .2s}.homework-preview-card{gap:16px;display:grid}.homework-preview-card:hover,.theory-card:hover{background:#f0f5e9;transform:translateY(-2px)}.homework-preview-card p{min-height:66px;color:var(--color-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.homework-preview-meta{font-size:14px}.card-link-row{border-top:1px solid var(--color-line);color:var(--color-primary);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;font-weight:800;display:inline-flex}.detail-page{gap:24px;margin:38px 0 72px;display:grid}.back-link{width:fit-content;color:var(--color-muted);align-items:center;gap:8px;font-weight:800;display:inline-flex}.back-link:hover{color:var(--color-primary)}.detail-grid,.profile-page-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:28px;min-width:0;max-width:100%;display:grid}.profile-page-layout{grid-template-columns:minmax(0,.9fr) minmax(360px,.6fr)}.student-profile-hero{align-content:start}.student-profile-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px;min-width:0;display:grid}.student-profile-identity>div{min-width:0}.student-profile-identity h1{overflow-wrap:anywhere;min-width:0}.student-profile-identity p:last-child{margin-bottom:0}.student-appearance-panel{border-radius:var(--radius-md);background:var(--color-soft);grid-column:1/-1;gap:24px;min-width:0;padding:28px;display:grid}.student-appearance-heading,.student-appearance-actions,.student-cosmetic-heading{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.student-appearance-heading>div{gap:4px;min-width:0;display:grid}.student-appearance-heading h2,.student-cosmetic-heading h3{margin:0}.student-appearance-heading>div>span,.student-appearance-preview>span,.student-avatar-option small,.student-frame-option small{color:var(--color-muted);font-size:13px;font-weight:750}.appearance-league-chip{background:#b9ef6f;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:850}.appearance-league-chip.league-pulse{background:#68dfcb}.appearance-league-chip.league-orbit{background:#85b3ff}.appearance-league-chip.league-spectrum{background:#f2ce62}.appearance-league-chip.league-quantum{background:#d99aff}.appearance-league-chip.league-supernova{background:#ff8b78}.student-appearance-layout{grid-template-columns:220px minmax(0,1fr);gap:24px;min-width:0;display:grid}.student-appearance-preview{border-radius:var(--radius-sm);background:var(--color-white);text-align:center;align-content:center;justify-items:center;gap:8px;min-width:0;padding:24px 18px;display:grid}.student-appearance-preview>strong{margin-top:6px;font-size:19px}.student-cosmetic-controls,.student-cosmetic-section{gap:18px;min-width:0;display:grid}.student-cosmetic-controls{gap:28px}.student-avatar-options{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;min-width:0;display:grid}.student-avatar-option,.student-frame-option{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);min-width:0;color:var(--color-primary);font:inherit;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.student-avatar-option{text-align:left;gap:5px;padding:9px;display:grid}.student-avatar-option:hover:not(:disabled),.student-frame-option:hover:not(:disabled){border-color:var(--color-primary);transform:translateY(-2px)}.student-avatar-option.selected,.student-frame-option.selected{border-color:var(--color-primary);background:var(--color-button);box-shadow:0 0 0 1px var(--color-primary)}.student-avatar-option.locked,.student-frame-option.locked{cursor:help;border-style:dashed}.student-avatar-option-image{aspect-ratio:1;background:var(--color-soft);border-radius:6px;width:100%;display:block;position:relative;overflow:hidden}.student-avatar-option-image>img{object-fit:cover}.student-avatar-option.locked .student-avatar-option-image>img{filter:grayscale(.8)brightness(.72)}.student-cosmetic-lock,.student-cosmetic-check{z-index:1;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute}.student-cosmetic-lock{color:var(--color-white);background:#2b2b2bd1;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.student-cosmetic-check{background:var(--color-button);color:var(--color-primary);top:7px;right:7px}.student-avatar-option>strong,.student-avatar-option>small{overflow-wrap:anywhere;min-width:0}.student-frame-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-frame-option{text-align:left;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.student-frame-option>span:not(.student-avatar-frame){gap:2px;min-width:0;display:grid}.student-frame-option>svg{color:var(--color-muted)}.student-appearance-actions{border-top:1px solid var(--color-line);justify-content:flex-start;padding-top:20px}.student-cosmetic-modal-backdrop{z-index:120;background:#18181894;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.student-cosmetic-modal{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);gap:12px;width:min(100%,480px);padding:30px;display:grid;position:relative;box-shadow:0 24px 70px #18181833}.student-cosmetic-modal>small{color:var(--color-muted);text-transform:uppercase;font-size:13px;font-weight:800}.student-cosmetic-modal h2{max-width:390px;margin:0;font-size:25px;line-height:1.2}.student-cosmetic-modal p{color:var(--color-muted);margin:0;line-height:1.55}.student-cosmetic-modal-icon{background:var(--color-button);width:50px;height:50px;color:var(--color-primary);border-radius:50%;place-items:center;display:grid}.student-cosmetic-modal-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.student-cosmetic-modal-actions>*{justify-content:center}.league-guide{scroll-margin-top:110px}.detail-main,.detail-side{grid-template-columns:minmax(0,1fr);gap:18px;min-width:0;display:grid}.detail-side{gap:12px;position:sticky;top:104px}.detail-hero,.content-panel,.content-article,.submission-panel,.profile-form{border-radius:var(--radius-md);background:var(--color-soft);min-width:0;max-width:100%;padding:28px}.detail-hero{gap:16px;display:grid}.detail-hero h1{overflow-wrap:anywhere;font-size:clamp(32px,5vw,54px)}.detail-hero p,.content-panel p,.submission-panel p,.profile-form small{color:var(--color-muted)}.detail-meta-row{flex-wrap:wrap;gap:10px;display:flex}.detail-meta-row span:not(.status-badge){background:var(--color-white);border-radius:999px;min-height:34px;padding:6px 12px}.detail-task-list{margin-top:16px}.content-panel,.submission-panel,.profile-form{gap:16px;display:grid}.detail-side .content-panel,.detail-side .submission-panel{gap:12px;padding:20px}.submission-panel h2{font-size:clamp(24px,2.4vw,32px)}.submission-panel p,.detail-side .content-panel p{margin:0;font-size:15px;line-height:1.45}.submission-panel label{gap:6px;font-size:14px}.submission-panel input,.submission-panel textarea{padding:10px 12px;font-size:14px}.submission-panel input[type=file]{font-size:13px}.submission-panel .button-primary{min-height:46px}.content-article{background:var(--color-white);min-width:0;color:var(--color-primary);letter-spacing:0;overflow-wrap:anywhere;font-family:Onest,Arial,sans-serif;font-size:17px;line-height:1.72}.content-article :where(h1,h2,h3,h4,h5,h6){max-width:none;color:var(--color-primary);letter-spacing:0;text-wrap:balance;font-family:inherit;font-weight:800;line-height:1.28}.content-article h1{margin:0 0 18px;font-size:30px}.content-article h2{border-bottom:1px solid var(--color-line);margin:40px 0 14px;padding-bottom:10px;font-size:26px}.content-article h3{margin:30px 0 10px;font-size:21px}.content-article h4{margin:24px 0 8px;font-size:18px}.content-article h5,.content-article h6{margin:22px 0 8px;font-size:16px}.content-article>:first-child{margin-top:0}.content-article>:last-child{margin-bottom:0}.content-article p{color:var(--color-primary);margin:0 0 15px}.content-article ol,.content-article ul{margin:0 0 20px;padding-left:1.5em;list-style-position:outside}.content-article ol{list-style-type:decimal}.content-article ul{list-style-type:disc}.content-article ul ul{list-style-type:circle}.content-article li{padding-left:4px}.content-article li+li{margin-top:8px}.content-article li>p{margin-bottom:0}.content-article li :where(ol,ul){margin:8px 0 0}.content-article blockquote{background:var(--color-soft);border-left:4px solid #8ebf50;border-radius:0 8px 8px 0;margin:22px 0;padding:16px 18px}.content-article blockquote>:last-child{margin-bottom:0}.content-article hr{background:var(--color-line);border:0;height:1px;margin:32px 0}.content-article a{color:#426f16;text-underline-offset:3px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.content-article code:not(pre code){background:var(--color-soft-strong);border-radius:5px;padding:2px 5px;font-family:Cascadia Code,Consolas,monospace;font-size:.9em}.content-article pre{border:1px solid var(--color-line);background:#fbfcf8;border-radius:8px;max-width:100%;margin:20px 0;padding:16px;font-size:14px;line-height:1.55;overflow-x:auto}.content-article pre code{font-family:Cascadia Code,Consolas,monospace}.content-article table{border-collapse:collapse;background:var(--color-white);width:100%;margin:24px 0;font-size:15px;line-height:1.45}.content-article th,.content-article td{border:1px solid var(--color-line);text-align:left;vertical-align:top;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:normal;word-break:normal;padding:11px 13px}.content-article th{background:var(--color-soft-strong);font-weight:800}.content-article th:first-child,.content-article td:first-child{min-width:100px}.content-article .reader-table-scroll{border-radius:var(--radius-sm);width:100%;margin:24px 0;overflow-x:auto}.content-article .reader-table-scroll table{min-width:560px;margin:0}.content-article img{border:1px solid var(--color-line);background:var(--color-white);object-fit:contain;border-radius:8px;max-width:100%;height:auto;max-height:620px;margin:24px auto;display:block}.content-article>p:has(>img:only-child){margin:26px 0}.content-article>p:has(>img:only-child) img{margin:0 auto}.content-article .katex-display{text-align:center;background:#fbfcf8;border:1px solid #e5e7dc;border-radius:8px;max-width:100%;margin:18px 0 20px;padding:13px 16px;overflow:auto hidden}.material-reader{border:1px solid var(--color-line);padding:clamp(30px,4vw,48px)}.submission-panel label,.profile-form label,.compact-student-switcher label{gap:8px;font-weight:800;display:grid}.submission-panel input,.submission-panel textarea,.submission-panel select,.compact-student-switcher select,.profile-form input,.profile-form select{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;color:var(--color-primary);font:inherit;outline:none;padding:13px 14px}.submission-panel textarea{resize:vertical}.submission-panel input:focus,.submission-panel textarea:focus,.submission-panel select:focus,.compact-student-switcher select:focus,.profile-form input:focus,.profile-form select:focus{border-color:var(--color-primary)}.button-primary:disabled{cursor:not-allowed;opacity:.58}.teacher-status-row{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.teacher-status-row span,.teacher-student-meta span,.teacher-file-list span,.teacher-file-list a{background:var(--color-soft);min-width:0;color:var(--color-muted);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;display:inline-flex}.teacher-student-grid,.teacher-material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.teacher-student-card,.teacher-material-card,.teacher-submission-box{border-radius:var(--radius-md);background:var(--color-soft);min-width:0}.teacher-student-card{gap:16px;padding:24px;display:grid}.teacher-student-card p,.teacher-material-card p{color:var(--color-muted);margin:0}.teacher-student-meta{flex-wrap:wrap;gap:8px;display:flex}.teacher-student-meta span,.teacher-file-list span,.teacher-file-list a{background:var(--color-white)}.teacher-material-card{grid-template-columns:64px minmax(0,1fr);gap:18px;padding:22px;display:grid}.student-teacher-list,.notification-list,.teacher-learning-history{gap:14px;display:grid}.student-teacher-card .dashboard-actions{margin-top:2px}.student-teacher-card .button-secondary{min-height:42px;padding:0 16px}.notification-card,.teacher-history-item{border-radius:var(--radius-md);background:var(--color-soft);gap:12px;min-width:0;padding:18px;display:grid}.notification-card.unread{background:#fff4cf}.notification-card p,.teacher-history-item p{color:var(--color-muted);margin:0}.teacher-history-item{grid-template-columns:24px minmax(0,1fr);align-items:start}.teacher-history-item svg{margin-top:2px}.teacher-history-item div{gap:4px;display:grid}.teacher-history-item span{color:var(--color-muted);font-size:13px;font-weight:800}.material-available .material-icon,.status-needs-review .status-badge{background:var(--color-button)}.status-waiting .status-badge{background:var(--color-blue-soft)}.teacher-submission-box{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:18px;display:grid}.teacher-submission-box svg{margin-top:2px}.teacher-file-list{flex-wrap:wrap;gap:10px;display:flex}.teacher-check-panel textarea{resize:vertical}.teacher-recipient-tabs{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.teacher-recipient-tab{border-radius:var(--radius-md);background:var(--color-soft);min-width:0;color:inherit;gap:4px;padding:16px 18px;text-decoration:none;transition:background .2s,transform .2s;display:grid}.teacher-recipient-tab:hover,.teacher-recipient-tab.active{background:var(--color-button);transform:translateY(-1px)}.teacher-recipient-tab span,.teacher-recipient-tab small,.teacher-current-group p,.teacher-current-meta span,.teacher-builder-note p,.teacher-task-option small,.teacher-task-option em,.teacher-material-choice small,.teacher-material-choice em{color:var(--color-muted)}.teacher-recipient-tab span,.teacher-recipient-tab small{font-size:13px;font-weight:800}.teacher-recipient-tab small+small{line-height:1.35}.teacher-recipient-tab strong{overflow-wrap:anywhere}.teacher-current-group{border-radius:var(--radius-lg);background:var(--color-soft);grid-template-columns:minmax(0,1fr) minmax(260px,.58fr);align-items:center;gap:22px;padding:28px;display:grid}.teacher-current-group h2{margin-top:4px;font-size:clamp(28px,4vw,44px)}.teacher-current-group p{max-width:720px;margin:10px 0 0}.teacher-current-meta{gap:10px;display:grid}.teacher-current-meta span{background:var(--color-white);border-radius:999px;padding:10px 14px;font-weight:800}.teacher-action-row{flex-wrap:wrap;gap:12px;display:flex}.editable-lesson-title{flex-wrap:nowrap;align-items:center;gap:12px;display:flex}.editable-lesson-title h2{flex:0 auto;min-width:0;margin:0}.editable-lesson-title .button-secondary{flex:none;min-height:42px;padding:0 16px}.lesson-title-editor{grid-template-columns:minmax(220px,1fr) auto;gap:10px;width:min(100%,720px);display:grid}.lesson-title-editor input{min-width:0;min-height:50px;color:var(--color-white);background:#ffffff1f;border:1px solid #ffffff47;border-radius:999px;outline:none;padding:0 18px}.lesson-title-editor input::placeholder{color:#ffffff94}.lesson-title-editor input:focus{border-color:#ffffffb8}.meeting-link-button{width:fit-content}.meeting-link-ready{flex-wrap:wrap;gap:10px;display:flex}.meeting-edit-button{min-height:50px}.meeting-link-editor{grid-template-columns:minmax(220px,1fr) auto;gap:10px;width:min(100%,620px);display:grid}.meeting-link-editor input{border:1px solid var(--color-line);background:var(--color-white);min-width:0;min-height:50px;color:var(--color-primary);border-radius:999px;outline:none;padding:0 18px}.meeting-link-editor input:focus{border-color:var(--color-primary)}.teacher-contacts-panel{border-radius:var(--radius-lg);background:var(--color-soft);grid-template-columns:minmax(0,1fr) minmax(320px,.56fr);gap:22px;padding:28px;display:grid}.teacher-contacts-panel h2{margin-top:4px;font-size:clamp(28px,4vw,42px)}.teacher-contact-list{gap:12px;margin-top:18px;display:grid}.teacher-contact-card{border-radius:var(--radius-md);background:var(--color-white);gap:12px;padding:18px;display:grid}.teacher-contact-card span,.teacher-contact-card p{color:var(--color-muted)}.teacher-contact-card p{margin:0}.teacher-notes-form{align-content:start;gap:14px;display:grid}.teacher-notes-form label{gap:8px;font-weight:800;display:grid}.teacher-notes-form textarea{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-white);width:100%;min-height:220px;color:var(--color-primary);font:inherit;resize:vertical;outline:none;padding:16px}.teacher-notes-form textarea:focus{border-color:var(--color-primary)}.teacher-save-status{color:var(--color-muted);text-align:center;font-size:14px;font-weight:800}.teacher-builder-page{max-width:none}.teacher-builder-hero h1{max-width:900px}.teacher-builder-grid,.teacher-profile-edit-layout{grid-template-columns:minmax(0,.95fr) minmax(360px,.58fr);align-items:start;gap:28px;min-width:0;display:grid}.teacher-profile-edit-layout{grid-template-columns:320px minmax(0,1fr)}.teacher-homework-form,.teacher-open-material-form,.teacher-open-material-form{width:100%}.teacher-form-panel,.teacher-builder-side{gap:18px;display:grid}.teacher-form-panel label,.teacher-profile-form label{gap:8px;font-weight:800;display:grid}.teacher-profile-form>label{align-content:start;align-self:start}.teacher-form-panel input,.teacher-form-panel select,.teacher-form-panel textarea,.teacher-price-row-editor select,.profile-form textarea{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;color:var(--color-primary);font:inherit;outline:none;padding:13px 14px}.teacher-form-panel input:not([type=file]),.teacher-form-panel select,.profile-form textarea{min-height:50px}.teacher-form-panel input:focus,.teacher-form-panel select:focus,.teacher-form-panel textarea:focus,.profile-form textarea:focus{border-color:var(--color-primary)}.compact-direction-tabs{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:6px 0 8px}.teacher-open-now-card{border-radius:var(--radius-sm);background:var(--color-white);grid-template-columns:24px minmax(0,1fr);gap:12px;padding:16px;display:grid}.teacher-open-now-card svg{margin-top:2px}.teacher-open-now-card div{gap:4px;display:grid}.teacher-open-now-card span{color:var(--color-muted);font-size:14px;font-weight:800}.file-upload-control input[type=file]{display:none}.file-upload-control span{border-radius:var(--radius-sm);background:var(--color-white);min-height:50px;color:var(--color-primary);justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.content-file-list.homework-attachment-list{border-top:0;padding:0}.homework-attachment-list .content-file-row>button:disabled{cursor:default;opacity:.45}.teacher-task-list,.teacher-material-choice-list{gap:12px;display:grid}.teacher-task-option,.teacher-material-choice{border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;grid-template-columns:22px minmax(0,1fr);gap:12px;padding:14px;display:grid}.teacher-material-choice{grid-template-columns:22px 54px minmax(0,1fr);align-items:start}.teacher-task-option input,.teacher-material-choice input{margin-top:4px}.teacher-task-option span,.teacher-material-choice span:last-child{gap:4px;display:grid}.teacher-task-option em,.teacher-material-choice em{font-size:13px;font-style:normal;font-weight:800}.task-picker{gap:12px;display:grid}.task-picker-trigger-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.task-picker-trigger-row span,.task-picker-footer span{color:var(--color-muted);font-size:14px;font-weight:800}.selected-task-list{gap:10px;display:grid}.selected-task-card{border-radius:var(--radius-sm);background:var(--color-white);gap:6px;padding:14px;display:grid}.selected-task-card.placeholder{border:1px dashed var(--color-line);color:var(--color-muted)}.selected-task-card span{font-weight:800}.selected-task-card h3,.selected-task-card p{margin:0}.selected-task-card h3{font-size:18px}.selected-task-card p{color:var(--color-muted)}.html-preview-kicker{color:var(--color-muted);font-size:13px;font-weight:800}.selected-task-card code,.task-picker-body code{background:var(--color-blue-soft);width:fit-content;max-width:100%;color:var(--color-primary);white-space:normal;border-radius:999px;padding:7px 10px;font-family:Onest,Arial,sans-serif;font-size:14px;font-weight:800}.task-picker-backdrop{z-index:60;background:#2b2b2b6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.task-picker-modal{border-radius:var(--radius-md);background:var(--color-white);width:min(900px,100%);max-height:min(760px,100vh - 40px);box-shadow:var(--shadow-soft);grid-template-rows:auto auto minmax(0,1fr) auto;padding:26px;display:grid}.task-picker-head,.task-picker-footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.task-picker-head{padding-right:44px;position:relative}.task-picker-head h2{margin-top:4px;font-size:clamp(26px,3vw,38px)}.task-picker-head .modal-close{top:0;right:0}.task-picker-search{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin-top:18px;display:grid}.task-picker-search label{gap:7px;display:grid}.task-picker-search label>span,.task-picker-search>span{color:var(--color-muted);font-size:13px;font-weight:800}.task-picker-search input{width:100%}.task-picker-search>span{text-align:right;min-width:112px;padding-bottom:13px}.task-picker-list{gap:12px;margin:22px 0;padding-right:6px;display:grid;overflow:auto}.task-picker-option{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-soft);cursor:pointer;grid-template-columns:22px minmax(0,1fr) 24px;gap:12px;padding:16px;display:grid;position:relative}.task-picker-option.selected{border-color:var(--color-button-hover);background:#eff8e3}.teacher-material-choice.selected{background:#eff8e3}.task-picker-option input{margin-top:5px}.task-picker-body{gap:8px;display:grid}.task-picker-body small,.task-picker-body em{color:var(--color-muted)}.task-picker-body em{font-size:13px;font-style:normal;font-weight:800}.task-picker-body .task-picker-history{color:#746d45;background:#f5f3e7;border-radius:5px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:800}.task-picker-check{color:var(--color-primary);align-self:start}.teacher-builder-note{grid-template-columns:24px minmax(0,1fr);align-items:start}.teacher-price-editor{border-radius:var(--radius-md);background:var(--color-soft);gap:12px;padding:20px;display:grid}.teacher-price-editor-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.teacher-price-editor-head h2{margin-top:4px;font-size:clamp(24px,2.4vw,32px)}.teacher-price-row-editor{grid-template-columns:minmax(190px,1fr) minmax(150px,.55fr) minmax(150px,.55fr) 44px;align-items:end;gap:10px;display:grid}.teacher-price-row-editor.price-row-head{color:var(--color-muted);align-items:center;font-size:13px;font-weight:800}.teacher-price-row-editor.price-row-head span{padding:0 2px}.price-remove-button{background:var(--color-white);width:44px;height:44px;color:var(--color-muted);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.price-remove-button:hover{background:var(--color-blue-soft);color:var(--color-primary)}.teacher-builder-note p{margin:0}.teacher-photo-editor{align-content:start;justify-self:start;width:100%;max-width:360px}.teacher-edit-photo{aspect-ratio:1;border-radius:var(--radius-md);background:var(--color-white);justify-content:center;align-items:center;display:flex;overflow:hidden}.teacher-edit-photo img{object-fit:cover;width:100%;height:100%}.teacher-photo-editor input[type=file]{display:none}.teacher-crop-backdrop{z-index:100;background:#1414149e;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.teacher-crop-modal{border-radius:var(--radius-md);background:var(--color-white);gap:22px;width:min(100%,470px);padding:24px;display:grid;box-shadow:0 24px 70px #14141440}.teacher-crop-modal>header,.teacher-crop-modal>footer,.teacher-crop-zoom{align-items:center;display:flex}.teacher-crop-modal>header{justify-content:space-between;gap:16px}.teacher-crop-modal h2{margin:0;font-size:23px}.teacher-crop-viewport{aspect-ratio:1;border-radius:var(--radius-sm);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#ececec;justify-self:center;width:min(360px,72vw);position:relative;overflow:hidden}.teacher-crop-viewport:active{cursor:grabbing}.teacher-crop-viewport>img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute;transform:translate(-50%,-50%)}.teacher-crop-grid{pointer-events:none;background:linear-gradient(90deg,#0000 33.1%,#ffffff73 33.3% 33.6%,#0000 33.8% 66.2%,#ffffff73 66.4% 66.7%,#0000 66.9%),linear-gradient(#0000 33.1%,#ffffff73 33.3% 33.6%,#0000 33.8% 66.2%,#ffffff73 66.4% 66.7%,#0000 66.9%);border:2px solid #ffffffe6;position:absolute;inset:0}.teacher-crop-zoom{gap:12px}.teacher-crop-zoom input{width:100%;accent-color:var(--color-primary)}.teacher-crop-modal>footer{justify-content:flex-end;gap:10px}@media (max-width:480px){.teacher-crop-backdrop{align-items:end;padding:0}.teacher-crop-modal{border-radius:var(--radius-md) var(--radius-md) 0 0;width:100%;padding:20px}.teacher-crop-modal>footer>button{flex:1}}.profile-form{grid-template-columns:repeat(2,minmax(0,1fr))}.review-submit-page{max-width:900px;margin-left:auto;margin-right:auto}.review-submit-form{align-items:start}.material-detail-page{max-width:920px;margin-left:auto;margin-right:auto}.material-hero{grid-template-columns:70px minmax(0,1fr);align-items:start}.material-icon.large{width:62px;height:62px}.theory-article{background:var(--color-white)}.admin-shell{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:28px;margin:38px 0 72px;display:grid}.admin-content{min-width:0}.admin-content .dashboard-page{margin:0}.admin-sidebar{border-radius:var(--radius-lg);background:var(--color-soft);align-content:start;gap:16px;min-width:0;min-height:calc(100vh - 128px);padding:18px;display:grid;position:sticky;top:104px}.admin-sidebar-head{border-radius:var(--radius-md);background:var(--color-white);gap:4px;padding:16px;display:grid}.admin-sidebar-head strong{font-size:22px}.admin-nav{gap:8px;display:grid}.admin-nav a{border-radius:var(--radius-sm);background:var(--color-white);grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;padding:13px;display:grid}.admin-nav a:hover{background:var(--color-button)}.admin-nav span{gap:2px;min-width:0;display:grid}.admin-nav small{color:var(--color-muted);font-weight:700;line-height:1.35}.admin-sidebar-bottom{margin-top:auto}.admin-page{overflow-wrap:anywhere;min-width:0}.admin-detail-hero{background:var(--color-soft)}.admin-profile-card .profile-summary-list span{width:100%}.admin-action-strip,.admin-card-actions{flex-wrap:wrap;gap:10px;min-width:0;display:flex}.admin-card-actions .button-primary,.admin-card-actions .button-secondary,.admin-action-strip .button-primary,.admin-action-strip .button-secondary,.admin-card-actions .teacher-save-status{overflow-wrap:anywhere;max-width:100%}.admin-teacher-permissions{border:1px solid var(--color-line);border-radius:var(--radius-sm);flex-wrap:wrap;flex:1 0 100%;gap:8px 16px;min-width:0;margin:0;padding:12px 14px;display:flex}.admin-teacher-permissions legend{color:var(--color-muted);padding:0 5px;font-size:12px;font-weight:800}.admin-teacher-permissions label{cursor:pointer;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:800;display:inline-flex}.admin-teacher-permissions input{width:18px;height:18px;accent-color:var(--color-primary);margin:0}.danger-button{color:#be123c;border-color:#be123c3d}.danger-button:hover{color:#be123c;background:#fff1f2;border-color:#be123c}.admin-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-grid-two{grid-template-columns:minmax(0,1fr) minmax(320px,.48fr);align-items:start;gap:24px;display:grid}.admin-queue-list,.admin-mini-list,.admin-record-grid,.admin-review-grid,.admin-timeline,.admin-section-grid{gap:14px;display:grid}.admin-queue-list-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-record-grid,.admin-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-queue-card,.admin-mini-card,.admin-record-card,.admin-review-card,.admin-section-card,.admin-side-panel,.admin-permission-panel,.admin-preview-panel,.admin-form-panel{border-radius:var(--radius-md);background:var(--color-soft);overflow-wrap:anywhere;min-width:0;padding:22px}.admin-queue-card,.admin-mini-card,.admin-record-card,.admin-review-card,.admin-section-card,.admin-permission-panel,.admin-preview-panel{gap:14px;display:grid}.admin-queue-card:hover,.admin-section-card:hover{background:var(--color-blue-soft)}.admin-record-main{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.admin-record-main h3,.admin-record-main>div,.admin-section-card strong,.admin-mini-card h3,.admin-queue-card h3,.admin-review-card h3{overflow-wrap:anywhere;min-width:0}.admin-record-meta,.admin-permission-list{flex-wrap:wrap;gap:8px;display:flex}.admin-record-meta.compact-meta{gap:7px}.admin-record-meta span,.admin-permission-list span,.admin-timeline-item small,.admin-mini-card small{background:var(--color-white);width:fit-content;color:var(--color-muted);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:6px;min-width:0;max-width:100%;padding:7px 11px;font-size:13px;font-weight:800;display:inline-flex}.compact-actions{gap:8px}.compact-actions select{border:1px solid var(--color-line);background:var(--color-white);min-width:0;max-width:100%;min-height:42px;color:var(--color-primary);border-radius:999px;padding:0 12px;font-weight:800}.admin-record-card p,.admin-review-card p,.admin-queue-card p,.admin-section-card span,.admin-mini-card p,.admin-permission-panel p,.admin-preview-panel p{color:var(--color-muted);margin:0}.admin-record-card.status-preview,.admin-review-card.status-pending,.admin-mini-card.status-scheduled{background:#fff4cf}.admin-record-card.status-draft,.admin-record-card.status-hidden,.admin-review-card.status-rejected,.admin-mini-card.status-draft{background:#f2f4fa}.admin-record-card.status-published,.admin-record-card.status-active,.admin-review-card.status-published,.admin-mini-card.status-sent{background:#eaf7ee}.admin-filter-panel{border-radius:var(--radius-md);background:var(--color-soft);grid-template-columns:minmax(240px,1fr) minmax(190px,.34fr) minmax(190px,.34fr) auto;margin-bottom:0}.admin-filter-panel>.button-secondary{align-self:end;min-height:48px}.filter-panel select,.admin-search-input input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-height:48px;color:var(--color-primary);outline:none;padding:0 14px;font-weight:500}.filter-panel select:focus,.admin-search-input input:focus{border-color:var(--color-primary)}.admin-search-input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:0 12px;display:grid}.admin-search-input input{border:0;min-height:46px;padding:0}.admin-connect-helper{color:var(--color-muted);margin:-2px 0 0;font-size:14px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-check-field{border:0;gap:10px;min-width:0;padding:0;display:grid}.admin-check-field legend{margin-bottom:8px;font-weight:800}.admin-check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-check-option{border-radius:var(--radius-sm);background:var(--color-white);grid-template-columns:18px minmax(0,1fr);align-items:start;min-width:0;padding:12px;gap:10px!important;font-weight:700!important;display:grid!important}.admin-check-option input{width:18px;margin-top:3px;padding:0;min-height:18px!important}.admin-check-option span{gap:3px;min-width:0;display:grid}.admin-check-option small{color:var(--color-muted);overflow-wrap:anywhere;font-size:12px;font-weight:700}.admin-check-option strong{overflow-wrap:anywhere}.admin-form-panel.compact{background:0 0;padding:0}.admin-permission-panel{background:var(--color-primary);color:var(--color-white);align-content:start}.admin-permission-panel p{color:#ffffffb8}.admin-permission-list span{color:var(--color-white);background:#ffffff1f}.admin-html-preview{border-radius:var(--radius-sm);background:var(--color-white);gap:14px;padding:18px;display:grid;overflow:hidden}.admin-html-preview table{border-collapse:collapse;overflow-wrap:anywhere;width:100%}.admin-html-preview th,.admin-html-preview td{border:1px solid var(--color-line);text-align:left;padding:10px}.admin-rating{color:#e4a315;white-space:nowrap;flex-flow:row;align-items:center;gap:3px;display:inline-flex}.review-meta>.admin-rating{grid-auto-flow:column;display:flex}.review-action-badge{min-height:42px;padding:0 16px}.admin-timeline-item{border-radius:var(--radius-md);background:var(--color-soft);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:12px;width:100%;min-width:0;max-width:100%;padding:18px;display:grid;overflow:hidden}.admin-timeline.compact .admin-timeline-item{background:var(--color-white)}.admin-timeline-item div{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.admin-timeline-item span,.admin-timeline-item h3,.admin-timeline-item p,.admin-timeline-item small{overflow-wrap:anywhere;min-width:0;max-width:100%}.admin-timeline-item span{color:var(--color-muted);font-size:13px;font-weight:800}.admin-timeline-item p{color:var(--color-muted);margin:0}.admin-lesson-card .button-secondary{min-height:42px}.admin-lesson-card .lesson-date strong{font-size:20px}.admin-lesson-card .lesson-info-grid span,.admin-lesson-card .lesson-info-grid strong,.admin-lesson-card .lesson-title-row h3,.admin-lesson-card .status-badge{overflow-wrap:anywhere;min-width:0;max-width:100%}.auth-page{justify-content:center;min-height:70vh;padding:60px 0;display:flex}.auth-card{width:min(100%,520px);padding:38px}.auth-card.wide{width:min(100%,760px)}.auth-form{gap:16px;margin-top:24px;display:grid}.auth-form.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-form label{gap:8px;font-weight:700;display:grid}.auth-form input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);outline:none;width:100%;min-height:50px;padding:0 14px}.auth-form input:focus{border-color:var(--color-primary)}.form-wide,.full-width{width:100%}.form-wide{grid-column:1/-1}.auth-note{margin-top:20px}.auth-demo-link{margin-top:14px}.auth-demo-panel{border-radius:var(--radius-md);background:var(--color-soft);gap:10px;margin-top:18px;padding:14px;display:grid}.auth-demo-panel span{color:var(--color-muted);font-size:13px;font-weight:800}.auth-note a{font-weight:700}.legal-page{max-width:900px;min-height:50vh;margin:54px auto;padding:42px}.legal-page h1{margin-bottom:28px;font-size:clamp(28px,4vw,42px)}.legal-page h2{margin:34px 0 14px;font-size:clamp(22px,2.7vw,28px)}.legal-page ul{color:var(--color-muted);gap:10px;margin:14px 0;padding-left:22px;display:grid}.legal-page li{line-height:1.58}.legal-page a{text-underline-offset:3px;font-weight:700;text-decoration:underline}.empty-state{color:var(--color-muted)}.site-footer{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-soft);width:min(1200px,100% - 32px);margin:80px auto 0;padding:34px}.footer-top,.footer-bottom{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-contact{text-align:right;gap:4px;display:grid}.footer-contact span,.footer-bottom{color:var(--color-muted)}.footer-contact a{font-weight:700}.footer-bottom{border-top:1px solid var(--color-line);margin-top:34px;padding-top:22px;font-size:14px}@media (max-width:1100px){.home-subjects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-page-layout,.teacher-profile-edit-layout{grid-template-columns:minmax(0,1fr)}.teacher-profile-edit-layout>*,.teacher-profile-form{min-width:0}}@media (max-width:1120px){.split-section{grid-template-columns:minmax(0,1fr)}}@media (max-width:980px){.site-header{grid-template-columns:minmax(0,1fr) auto;display:grid}.main-nav{display:none}.header-login,.header-profile{justify-self:end;margin-left:0}.hero-section,.split-section{grid-template-columns:minmax(0,1fr)}.teacher-hero{grid-template-columns:220px minmax(0,1fr)}.hero-section{padding:42px 32px}.hero-visual{min-height:330px}.feature-grid,.teacher-grid,.review-grid,.contact-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-subjects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.daily-practice-promo{grid-template-columns:1fr;gap:30px}.reviews-page-heading h1{font-size:32px}.dashboard-header,.dashboard-layout,.admin-shell,.admin-grid-two,.admin-queue-list-wide,.next-lesson-panel,.detail-grid,.profile-page-layout,.teacher-current-group,.teacher-contacts-panel,.teacher-builder-grid,.teacher-profile-edit-layout,.teacher-student-grid,.teacher-material-grid{grid-template-columns:minmax(0,1fr)}.admin-sidebar{min-height:auto;position:static}.admin-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-summary-grid,.admin-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-slider-track .teacher-card{flex-basis:calc(50% - 9px)}.dashboard-directions{justify-content:flex-start}.dashboard-sidebar,.detail-side{position:static}.teacher-profile-edit-layout{grid-template-columns:minmax(0,1fr)!important}.teacher-profile-edit-layout>*,.teacher-profile-form{min-width:0}.teacher-profile-form>label{align-content:start;align-self:start}.teacher-lesson-card.multi-schedule-lesson-card{grid-template-columns:1fr}.teacher-lesson-card .lesson-info-grid{max-width:none}}@media (max-width:820px){.admin-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter-panel label:first-child{grid-column:1/-1}.admin-filter-panel>.button-secondary{width:100%}.price-table{border:0;border-radius:0;gap:12px;display:grid;overflow:visible}.price-head{display:none}.price-row{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);grid-template-columns:1fr;overflow:hidden}.price-row:first-child{border-top:1px solid var(--color-line)}.price-row span{border-top:1px solid var(--color-line);text-align:right;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 16px;display:flex}.price-row span:first-child{background:var(--color-soft);text-align:left;border-top:0;font-weight:700;display:block}.price-row span:before{content:attr(data-label);color:var(--color-muted);text-align:left;flex:none;font-weight:700}.price-row span:first-child:before{display:none}}@media (max-width:680px){.teacher-hero{grid-template-columns:1fr}.teacher-profile-photo{justify-self:center;width:min(100%,220px)}.teacher-profile-content{text-align:center;justify-items:center}.teacher-profile-description{grid-column:1;padding-top:22px}.directory-page{padding-top:28px}.reviews-page-heading h1{font-size:18px}.daily-practice-promo{gap:22px;padding:24px}.daily-practice-copy h2{font-size:25px}.daily-practice-copy p,body{font-size:15px}h1{font-size:31px}h2{font-size:25px}h3{font-size:18px}.hero-lead,.section-heading p,.split-section p,.teacher-card p,.teacher-profile-content p,.teacher-profile-description p,.auth-card p,.legal-page p,.review-text{font-size:15px}main,.site-header,.site-footer{width:min(1200px,100vw - 20px)}.site-header{justify-content:space-between;gap:12px;min-height:72px}.brand-link{min-width:0}.brand-link .brand-name{display:none}.header-login,.header-profile{flex:none;min-height:44px;margin-left:auto}.header-login{padding:0 18px}.header-profile{width:44px;padding:0}.hero-section{width:100%;min-height:auto;padding:30px 20px}.hero-content{width:100%;max-width:100%}.hero-actions,.button-primary,.button-secondary{width:100%}.hero-visual{min-height:240px}.hero-hat{width:120px;height:auto}.hero-bag{width:78px;height:auto}.section,.page-section{margin:48px 0}.home-subjects-heading{gap:14px;margin-bottom:20px}.home-subjects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-preview{grid-template-columns:1fr}.preview-lesson,.preview-homework,.preview-theory{grid-column:1;min-height:0}.reviews-page-heading .button-primary{width:100%}.home-subject-card{min-height:108px;padding:14px}.home-subject-icon{width:39px;height:39px}.home-subject-icon svg{width:23px;height:23px}.home-subject-card h3{margin-top:20px;font-size:15px}.home-subject-card.social h3{font-size:12px}.section-heading.with-link,.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.feature-grid,.teacher-grid,.review-grid,.contact-grid,.dashboard-summary-grid,.admin-summary-grid,.admin-section-grid,.admin-record-grid,.admin-review-grid,.admin-form-grid,.admin-check-list,.homework-grid,.auth-form.two-columns,.filter-panel:not(.admin-filter-panel),.admin-filter-panel,.admin-nav{grid-template-columns:1fr}.teacher-slider-track .teacher-card{flex-basis:100%}.split-section,.teacher-hero,.dashboard-header,.next-lesson-panel,.profile-summary-card,.detail-hero,.content-panel,.content-article,.submission-panel,.profile-form,.auth-card,.legal-page{padding:24px}.dashboard-page{gap:24px;margin-top:24px}.dashboard-logout-row{margin:-8px 0 48px}.dashboard-logout-row .logout-button,.admin-sidebar-bottom .logout-button{width:100%}.dashboard-header h1{font-size:30px}.next-lesson-time{padding:20px}.next-lesson-time strong{font-size:36px}.next-lesson-content h2,.detail-hero h1,.teacher-current-group h2,.teacher-contacts-panel h2{font-size:30px}.next-lesson-content .button-primary{width:100%}.lesson-info-grid,.profile-form{grid-template-columns:1fr}.profile-summary-list span,.detail-meta-row span:not(.status-badge){width:100%}.student-avatar-frame.avatar-medium{width:82px}.student-avatar-frame.avatar-large{width:120px;padding:5px}.student-profile-identity{gap:18px}.student-appearance-panel{gap:20px;padding:24px}.student-appearance-heading,.student-appearance-actions{flex-direction:column;align-items:flex-start}.student-appearance-layout{grid-template-columns:1fr}.student-appearance-preview{text-align:left;grid-template-columns:auto minmax(0,1fr);justify-items:start}.student-appearance-preview .student-avatar-frame{grid-row:1/3}.student-appearance-preview>strong{align-self:end;margin-top:0}.student-appearance-preview>span{align-self:start}.student-frame-options{grid-template-columns:1fr}.student-appearance-actions .button-primary{width:100%}.lesson-card{grid-template-columns:1fr;gap:14px;padding:16px}.lesson-date{grid-template-columns:1fr auto auto;align-items:center}.lesson-date.editable-schedule-slot,.lesson-date.schedule-panel{grid-template-columns:1fr}.lesson-date strong{font-size:22px}.lesson-title-row,.dashboard-card-head{gap:10px;display:grid}.dashboard-actions,.dashboard-actions .button-primary,.dashboard-actions .button-secondary,.editable-lesson-title,.lesson-datetime-actions,.lesson-datetime-actions .button-primary,.lesson-datetime-actions .button-secondary,.lesson-title-editor,.lesson-title-editor .button-primary,.meeting-link-ready,.meeting-link-button,.meeting-link-editor{width:100%}.editable-lesson-title .button-secondary{width:auto}.lesson-title-editor,.meeting-link-editor{grid-template-columns:1fr}.homework-card,.material-card,.teacher-student-card,.teacher-material-card{padding:18px}.material-card,.teacher-material-card,.material-hero{grid-template-columns:1fr}.teacher-status-row,.teacher-student-meta,.teacher-action-row,.admin-action-strip,.admin-card-actions,.admin-record-main{display:grid}.admin-timeline-item{grid-template-columns:22px minmax(0,1fr)}.admin-timeline-item small{grid-column:2}.teacher-current-group,.teacher-contacts-panel,.teacher-builder-hero{padding:24px}.teacher-material-choice{grid-template-columns:22px minmax(0,1fr)}.teacher-material-choice .material-icon{display:none}.teacher-price-editor-head{flex-direction:column;align-items:stretch}.teacher-price-row-editor,.teacher-price-row-editor.price-row-head{grid-template-columns:1fr}.teacher-price-row-editor.price-row-head{display:none}.price-remove-button{border-radius:var(--radius-sm);width:100%}.task-picker-backdrop{align-items:stretch;padding:10px}.task-picker-modal{max-height:calc(100vh - 20px);padding:20px}.task-picker-head,.task-picker-footer,.task-picker-trigger-row{flex-direction:column;align-items:stretch}.task-picker-search{grid-template-columns:1fr;gap:6px}.task-picker-search>span{text-align:left;min-width:0;padding-bottom:0}.task-picker-option{grid-template-columns:22px minmax(0,1fr)}.task-picker-check{display:none}.content-article{font-size:15px}.teacher-profile-content{gap:18px}.teacher-profile-content h1{font-size:29px;line-height:1.08}.price-row{grid-template-columns:1fr}.price-row span{padding:12px 16px}.footer-contact{text-align:left}}@media (max-width:360px){.reviews-page-heading h1{font-size:15px}}@media (max-width:380px){body{font-size:14px}h1,.dashboard-header h1,.detail-hero h1{font-size:28px}h2,.next-lesson-content h2,.teacher-current-group h2,.teacher-contacts-panel h2{font-size:23px}h3{font-size:17px}.home-subject-card{padding:12px}.home-subject-card h3{white-space:nowrap;font-size:13px}.home-subject-card.social h3{font-size:11px}.hero-lead,.section-heading p,.split-section p,.teacher-card p,.teacher-profile-content p,.auth-card p,.legal-page p,.review-text,.content-article,.button-primary,.button-secondary,.header-login,.header-profile{font-size:14px}.next-lesson-time strong{font-size:32px}.profile-summary-identity,.student-profile-identity{grid-template-columns:1fr}.student-avatar-options{grid-template-columns:repeat(2,minmax(0,1fr))}.student-appearance-preview{grid-template-columns:88px minmax(0,1fr);padding:18px}.student-appearance-preview .student-avatar-frame.avatar-large{width:88px}}@media (max-width:340px){.home-subject-card{padding:10px}.home-subject-card h3{font-size:11px}}.header-account-actions{align-items:center;gap:8px;display:flex}.header-notifications{position:relative}.header-icon-button{border:1px solid var(--color-line);background:var(--color-white);width:50px;height:50px;color:var(--color-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.header-icon-button:hover,.header-icon-button[aria-expanded=true]{background:var(--color-soft);border-color:#a9c98c}.notification-count{border:2px solid var(--color-white);color:#fff;background:#d94b58;border-radius:999px;justify-content:center;align-items:center;min-width:21px;height:21px;padding:0 5px;font-size:11px;font-weight:900;display:inline-flex;position:absolute;top:-4px;right:-4px}.header-notification-menu{z-index:60;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-white);width:min(390px,100vw - 20px);position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 20px 60px #1c243033}.header-notification-head,.header-notification-all{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.header-notification-head{border-bottom:1px solid var(--color-line)}.header-notification-head button{color:var(--color-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.header-notification-list{display:grid}.header-notification-list>a,.header-notification-list>button{border:0;border-bottom:1px solid var(--color-line);background:var(--color-white);width:100%;color:var(--color-primary);text-align:left;cursor:pointer;gap:3px;padding:13px 16px;display:grid}.header-notification-list>.unread{background:#f4f8e9;box-shadow:inset 4px 0 #a9d56e}.header-notification-list span{color:var(--color-muted);font-size:11px;font-weight:700}.header-notification-list strong{font-size:14px}.header-notification-list p{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.header-notification-empty{color:var(--color-muted);text-align:center;margin:0;padding:24px 16px}.header-notification-all{background:var(--color-blue-soft);justify-content:center;font-size:13px;font-weight:900}.notifications-page,.account-security-page{width:min(820px,100%);margin-left:auto;margin-right:auto}.notifications-page-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.notifications-page-head>div{align-items:center;gap:12px;display:flex}.notifications-page-head h1{margin:0;font-size:clamp(34px,5vw,56px)}.notification-page-list .notification-card h2{margin:4px 0 0;font-size:20px}.password-change-form{gap:16px;display:grid}.password-change-heading{align-items:flex-start;gap:12px;display:flex}.password-change-heading h2,.password-change-heading p{margin:0}.password-change-heading p{color:var(--color-muted);margin-top:4px}.password-change-form label{gap:8px;font-weight:800;display:grid}.password-change-form input{border:1px solid var(--color-line);border-radius:var(--radius-sm);width:100%;min-height:50px;font:inherit;padding:0 14px}.dashboard-logout-row,.admin-sidebar-bottom{gap:10px}.admin-sidebar-bottom{display:grid}.student-teacher-card{background:#f7f9f3;border:1px solid #dce2d4;border-left:5px solid #a9d56e;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:22px;padding:22px;overflow:hidden}.student-teacher-photo{aspect-ratio:1;border-radius:var(--radius-md);background:var(--color-blue-soft);width:96px;position:relative;overflow:hidden}.student-teacher-photo img{object-fit:cover}.student-teacher-main{gap:6px;min-width:0;display:grid}.student-teacher-main h3,.student-teacher-main p{margin:0}.student-teacher-main h3{font-size:24px}.student-teacher-main p{color:var(--color-muted)}.student-teacher-contacts{margin-top:6px}.student-teacher-contacts span{background:var(--color-white);overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;padding:8px 10px;display:inline-flex}.student-teacher-actions{gap:8px;min-width:180px;display:grid}.student-teacher-actions .button-secondary{justify-content:space-between}.daily-pool-page{grid-template-columns:minmax(0,1fr)}.daily-pool-editor{gap:18px;display:grid}.daily-pool-toolbar{z-index:8;border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#fffffff5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;display:grid;position:sticky;top:94px}.daily-pool-toolbar label{align-items:center;gap:10px;min-width:0;display:flex}.daily-pool-toolbar input{width:100%;min-height:46px;font:inherit;background:0 0;border:0;outline:none}.daily-pool-toolbar>div{white-space:nowrap;align-items:center;gap:14px;display:flex}.daily-pool-task-list{gap:12px;display:grid}.daily-pool-task{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;grid-template-columns:24px minmax(0,1fr);gap:14px;padding:18px;display:grid}.daily-pool-task.selected{background:#f4f8e9;border-color:#9bc55f;box-shadow:inset 4px 0 #a9d56e}.daily-pool-task.partial{background:#faf8ee;border-color:#d8cfa7;box-shadow:inset 4px 0 #d8c064}.daily-pool-task>input{accent-color:#729d37;width:19px;height:19px;margin-top:2px}.daily-pool-task-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.daily-pool-task-head h3{margin:0;font-size:19px}.daily-pool-task-head span{background:var(--color-blue-soft);color:var(--color-muted);border-radius:999px;flex:none;padding:5px 9px;font-size:12px;font-weight:800}.daily-pool-task p{color:var(--color-muted);margin-top:10px;font-size:14px;line-height:1.5}@media (max-width:760px){.header-icon-button{width:44px;height:44px}.header-account-actions{gap:6px}.student-teacher-card{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:18px}.student-teacher-photo{width:76px}.student-teacher-main h3{font-size:20px}.student-teacher-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.daily-pool-toolbar{grid-template-columns:1fr;top:82px}.daily-pool-toolbar>div{justify-content:space-between}.notifications-page-head{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.header-notification-menu{right:-52px}.header-notification-head button{font-size:0}.student-teacher-card{border-left-width:4px;grid-template-columns:64px minmax(0,1fr);padding:15px}.student-teacher-photo{width:64px}.student-teacher-contacts{grid-column:1/-1}.student-teacher-actions{grid-template-columns:1fr}.daily-pool-toolbar{position:static}.daily-pool-toolbar>div{flex-direction:column;align-items:stretch}.daily-pool-task{padding:14px}.daily-pool-task-head{flex-direction:column}.dashboard-logout-row{flex-direction:column;align-items:stretch}}body:has(.whiteboard-page){overflow:hidden}:is(body:has(.whiteboard-page) .site-footer,body:has(.whiteboard-page)>.site-header){display:none}body>main:has(.whiteboard-page){width:100%;max-width:none}.whiteboard-page{grid-template-rows:auto minmax(0,1fr);gap:6px;width:100%;height:100dvh;min-height:0;margin:0 auto;padding:6px clamp(6px,1vw,14px) 8px;display:grid}.whiteboard-topbar{grid-template-columns:minmax(92px,130px) minmax(0,1fr) minmax(92px,130px);align-items:center;gap:8px;min-height:34px;display:grid}.whiteboard-topbar .back-link{gap:5px;font-size:13px}.whiteboard-title{text-align:center;justify-content:center;align-items:baseline;gap:10px;min-width:0;display:flex}.whiteboard-sync span{color:var(--color-muted);text-transform:uppercase;font-size:10px;font-weight:700}.whiteboard-title h1{color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;margin:0;font-size:clamp(16px,1.5vw,22px);line-height:1.04;overflow:hidden}.whiteboard-title p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;margin:0;font-size:12px;line-height:1.2;overflow:hidden}.whiteboard-sync{text-align:right;justify-self:end;align-items:baseline;gap:6px;min-width:0;display:flex}.whiteboard-sync small{color:var(--color-primary);font-size:12px;font-weight:800}.whiteboard-shell{grid-template-columns:86px minmax(0,1fr);gap:8px;min-height:0;display:grid}.whiteboard-toolbar{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-soft);min-width:0;box-shadow:var(--shadow-soft);scrollbar-width:none;flex-direction:column;align-self:stretch;align-items:center;gap:8px;padding:8px;display:flex;overflow-y:auto}.whiteboard-toolbar::-webkit-scrollbar{display:none}.whiteboard-tool-grid{grid-template-columns:repeat(2,34px);gap:5px;display:grid}.whiteboard-tool,.whiteboard-toolbar-actions button,.whiteboard-image-upload{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:34px;height:34px;color:var(--color-primary);cursor:pointer;justify-content:center;align-items:center;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.whiteboard-tool:hover,.whiteboard-toolbar-actions button:hover,.whiteboard-image-upload:hover{border-color:var(--color-primary);background:var(--color-button)}.whiteboard-toolbar-actions button:disabled{color:#2b2b2b47;cursor:not-allowed;background:#ffffffb3}.whiteboard-toolbar-actions button:disabled:hover{border-color:var(--color-line);background:#ffffffb3}.whiteboard-tool.active{background:var(--color-button);color:var(--color-primary);border-color:#a9c98c;box-shadow:inset 0 0 0 1px #2b2b2b1f}.whiteboard-control-group{border-top:1px solid var(--color-line);justify-content:center;place-items:center;gap:6px;padding-top:8px;display:grid}.whiteboard-color-grid{grid-template-columns:repeat(2,22px);gap:5px;display:grid}.whiteboard-color{border:2px solid var(--color-white);width:22px;height:22px;box-shadow:0 0 0 1px var(--color-line);cursor:pointer;border-radius:50%}.whiteboard-color.active{box-shadow:0 0 0 2px var(--color-primary)}.whiteboard-color-input{cursor:pointer;background:0 0;border:0;border-radius:50%;width:32px;height:32px}.whiteboard-slider{border-top:1px solid var(--color-line);min-width:0;color:var(--color-muted);justify-content:center;place-items:center;gap:6px;padding-top:8px;font-size:11px;font-weight:800;display:grid}.whiteboard-slider input{writing-mode:vertical-lr;width:34px;height:84px;accent-color:var(--color-primary);direction:rtl}.whiteboard-toolbar-actions{border-top:1px solid var(--color-line);grid-template-columns:repeat(2,34px);gap:5px;padding-top:8px;display:grid}.whiteboard-image-upload input{display:none}.whiteboard-stage{border:1px solid var(--color-line);border-radius:var(--radius-md);min-width:0;height:100%;min-height:0;box-shadow:var(--shadow-soft);background-color:#f8fafc;background-image:linear-gradient(90deg,#151f370b 1px,#0000 1px),linear-gradient(#151f370b 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;position:relative;overflow:hidden}.whiteboard-canvas-frame{width:100%;height:100%;position:relative;overflow:hidden}.whiteboard-canvas{touch-action:none;cursor:none;width:100%;height:100%;display:block}.whiteboard-cursor{filter:drop-shadow(0 0 1px #fff)drop-shadow(0 1px 1px #11182759)}.whiteboard-eraser-cursor{z-index:4;pointer-events:none;background:#ffffff2e;border:2px dashed #d94b58;border-radius:50%;width:22px;height:22px;position:absolute;transform:translate(-50%,-50%)}.whiteboard-cursor-hotspot{background:currentColor;border:1px solid #fff;border-radius:50%;width:3px;height:3px;position:absolute;bottom:0;left:0}.whiteboard-modal{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a61;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.whiteboard-text-form{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-white);width:min(440px,100%);box-shadow:var(--shadow-soft);gap:16px;padding:22px;display:grid}.whiteboard-text-form h2{margin:0;font-size:24px}.whiteboard-text-form label{color:var(--color-muted);gap:8px;font-size:14px;font-weight:800;display:grid}.whiteboard-text-form input{border-radius:var(--radius-sm);width:100%;min-height:54px;color:var(--color-primary);font:inherit;background:#f7f9fb;border:2px solid #9aacbd;outline:none;padding:0 15px;font-size:17px}.whiteboard-text-form input:focus{background:var(--color-white);border-color:#536579;box-shadow:0 0 0 4px #53657921}.whiteboard-text-form div{justify-content:flex-end;gap:10px;display:flex}@media (max-width:1100px){body>main:has(.whiteboard-page){width:min(100%,100% - 10px)}.whiteboard-page{height:100dvh}}@media (max-width:640px){.whiteboard-page{gap:5px;height:100dvh;padding:5px 4px 6px}.whiteboard-title h1{font-size:16px}.whiteboard-topbar{text-align:left;grid-template-columns:auto minmax(0,1fr) auto;gap:5px;min-height:30px}.whiteboard-topbar .back-link{gap:3px;font-size:12px}.whiteboard-title{text-align:left;justify-content:flex-start;gap:6px}.whiteboard-title p{display:none}.whiteboard-sync{text-align:right;justify-self:end;gap:0;font-size:11px}.whiteboard-sync span{display:none}.whiteboard-shell{grid-template-columns:76px minmax(0,1fr);gap:6px}.whiteboard-toolbar{border-radius:var(--radius-sm);padding:6px}.whiteboard-tool-grid,.whiteboard-toolbar-actions{grid-template-columns:repeat(2,31px);gap:4px}.whiteboard-color-grid{grid-template-columns:repeat(2,20px);gap:4px}.whiteboard-color{width:20px;height:20px}.whiteboard-color-input{width:28px;height:28px}.whiteboard-slider input{width:31px;height:68px}.whiteboard-tool,.whiteboard-toolbar-actions button,.whiteboard-image-upload{width:31px;height:31px}.whiteboard-stage{border-radius:var(--radius-sm)}}.filter-panel:not(.admin-filter-panel){grid-template-columns:repeat(3,minmax(0,1fr))}.review-teacher-fieldset,.admin-review-teachers{border:0;gap:12px;min-width:0;padding:0;display:grid}.review-teacher-fieldset legend,.admin-review-teachers legend{margin-bottom:8px;font-weight:800}.review-teacher-options,.admin-review-teachers{grid-template-columns:repeat(2,minmax(0,1fr))}.review-teacher-options{gap:10px;max-height:220px;padding-right:4px;display:grid;overflow-y:auto}.review-teacher-options label,.admin-review-teachers label{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.review-teacher-options label.selected,.admin-review-teachers label.selected{border-color:var(--color-button-hover);background:#eff8e3}.review-teacher-options input,.admin-review-teachers input{width:18px;min-height:18px;margin-top:2px}.teacher-material-choice{cursor:default;grid-template-columns:minmax(0,1fr) auto;align-items:center}.teacher-material-choice-main{cursor:pointer;grid-template-columns:22px 54px minmax(0,1fr);align-items:start;gap:12px;min-width:0;display:grid}.teacher-material-choice-main>span:last-child{gap:4px;min-width:0;display:grid}.material-preview-link{border-radius:var(--radius-sm);background:var(--color-soft);align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:14px;font-weight:800;display:inline-flex}.material-preview-link:hover{background:var(--color-button)}.teacher-opened-materials{border-top:1px solid var(--color-line);gap:14px;margin-top:28px;padding-top:26px;display:grid}.teacher-opened-materials .section-heading{margin:0}.teacher-material-card{color:inherit}.homework-attachment-list{margin-top:18px}.teacher-submission-viewer{gap:18px;display:grid}.submission-student-selector{gap:8px;max-width:420px;font-weight:800;display:grid}.submission-student-selector select{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-height:48px;color:var(--color-primary);padding:0 14px}.admin-review-editor{border-radius:var(--radius-sm);background:#ffffffb8;flex:1 0 100%;gap:14px;min-width:0;padding:16px;display:grid}.admin-review-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-review-editor label,.admin-material-editor-form label{gap:8px;min-width:0;font-weight:800;display:grid}.admin-review-editor input,.admin-review-editor select,.admin-review-editor textarea,.admin-material-editor-form input,.admin-material-editor-form select,.admin-material-editor-form textarea{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-width:0;color:var(--color-primary);font:inherit;padding:12px 14px}.admin-review-editor input,.admin-review-editor select,.admin-material-editor-form input,.admin-material-editor-form select{min-height:48px}.admin-material-editor-layout{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:start;gap:24px;display:grid}.admin-dashboard-header{grid-template-columns:minmax(0,1fr)}.admin-material-editor-form{border-radius:var(--radius-md);background:var(--color-soft);padding:24px}.admin-material-source-files{flex-wrap:wrap;gap:10px;min-width:0;display:flex}.admin-material-source-files a{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);align-items:center;gap:8px;max-width:100%;min-height:44px;padding:10px 14px;font-weight:800;display:inline-flex}.admin-material-source-files span{overflow-wrap:anywhere;min-width:0}.admin-public-content-form{border-radius:var(--radius-md);background:var(--color-soft);padding:24px}.admin-task-filter{grid-template-columns:minmax(180px,.75fr) minmax(260px,1.35fr) minmax(180px,.7fr) auto;margin-bottom:0}.admin-task-filter>.button-secondary{align-self:end;min-height:48px}.admin-task-form{border-radius:var(--radius-md);background:var(--color-soft);padding:24px}.admin-task-form.embedded{background:var(--color-white);padding:16px}.admin-task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-task-card{border-radius:var(--radius-md);background:var(--color-soft);overflow-wrap:anywhere;gap:14px;min-width:0;padding:22px;display:grid}.admin-task-card .content-article{background:var(--color-white);padding:16px;overflow-x:auto}.admin-task-list-heading{align-items:end}.admin-task-list-heading>span{color:var(--color-muted);font-size:14px;font-weight:750}.admin-task-pagination,.admin-pagination-pages{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.admin-task-pagination{margin-top:24px}.admin-pagination-arrow,.admin-pagination-page{border:1px solid var(--color-line);background:var(--color-white);min-width:40px;height:40px;color:var(--color-text);border-radius:7px;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:inline-flex}.admin-pagination-arrow:hover,.admin-pagination-page:hover,.admin-pagination-page.active{border-color:var(--color-primary);background:var(--color-button);color:var(--color-primary)}.admin-pagination-arrow.disabled{opacity:.38}.admin-pagination-gap{min-width:22px;color:var(--color-muted);text-align:center}.admin-task-tags{color:var(--color-muted);margin:0;font-size:13px;font-weight:800}.admin-html-editor{resize:vertical;line-height:1.5;font-family:Consolas,Courier New,monospace!important;font-size:14px!important}.admin-material-live-preview{min-width:0;overflow:hidden}.admin-material-live-preview h2{margin-bottom:18px}.notification-read-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;display:inline-flex}.homework-material-fieldset{border:1px solid var(--color-line);border-radius:var(--radius-md);min-width:0;margin:0;padding:18px}.homework-material-fieldset legend{padding:0 8px;font-weight:800}.homework-material-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.homework-material-options label{border-radius:var(--radius-sm);background:var(--color-white);cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.homework-material-options span{overflow-wrap:anywhere;min-width:0;font-weight:750}@media (max-width:900px){.filter-panel:not(.admin-filter-panel),.admin-material-editor-layout,.admin-task-grid{grid-template-columns:1fr}}@media (max-width:620px){.admin-task-list-heading{align-items:start}.admin-task-pagination{grid-template-columns:36px minmax(0,1fr) 36px;gap:5px;display:grid}.admin-pagination-pages{gap:4px}.admin-pagination-arrow,.admin-pagination-page{min-width:36px;height:36px}.homework-material-options,.review-teacher-options,.admin-review-teachers,.admin-review-editor-grid,.teacher-material-choice{grid-template-columns:1fr}.teacher-material-choice-main{grid-template-columns:22px minmax(0,1fr)}.teacher-material-choice-main .material-icon{display:none}.material-preview-link{justify-content:center;width:100%}}.gamification-band{--league-accent:#b9ef6f;--league-accent-strong:#80bd32;--league-tint:#f2f9e9;border-radius:var(--radius-lg);background:var(--color-white);min-width:0;box-shadow:var(--shadow-soft);border:1px solid #2b2b2b14;overflow:hidden}.gamification-band.league-pulse,.league-guide-card.league-pulse{--league-accent:#68dfcb;--league-accent-strong:#159f8b;--league-tint:#e9faf6}.gamification-band.league-orbit,.league-guide-card.league-orbit{--league-accent:#85b3ff;--league-accent-strong:#3f79d8;--league-tint:#edf4ff}.gamification-band.league-spectrum,.league-guide-card.league-spectrum{--league-accent:#f2ce62;--league-accent-strong:#b88900;--league-tint:#fff9e4}.gamification-band.league-quantum,.league-guide-card.league-quantum{--league-accent:#d99aff;--league-accent-strong:#9c4bcc;--league-tint:#f8edff}.gamification-band.league-supernova,.league-guide-card.league-supernova{--league-accent:#ff8b78;--league-accent-strong:#d4523c;--league-tint:#fff0ed}.gamification-hero{background:var(--color-primary);min-width:0;color:var(--color-white);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px 26px;padding:28px 30px;display:grid}.league-emblem{background:var(--league-accent);width:88px;height:88px;color:var(--color-primary);border:1px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.league-emblem svg{opacity:.28}.league-emblem span{font-family:Unbounded,sans-serif;font-size:31px;font-weight:800;position:absolute}.league-copy{min-width:0}.gamification-eyebrow{color:#ffffffad;font-size:13px;font-weight:800}.league-copy h2{color:var(--color-white);margin-top:4px;font-size:34px}.league-copy p{color:#ffffffb8;margin:5px 0 0;font-weight:700}.gamification-stats{grid-template-columns:repeat(3,minmax(108px,1fr));gap:10px;display:grid}.gamification-stats>div{border-radius:var(--radius-sm);background:#ffffff14;border:1px solid #ffffff21;grid-template-columns:auto 1fr;align-items:center;gap:3px 9px;min-width:0;padding:14px 16px;display:grid}.gamification-stats svg{color:var(--league-accent);grid-row:1/3;width:25px;height:25px}.gamification-stats span{color:#ffffff9e;font-size:12px;font-weight:800}.gamification-stats strong{color:var(--color-white);white-space:nowrap;font-size:18px}.gamification-stats small{color:var(--league-accent);white-space:nowrap;grid-column:1/-1;font-size:10px;font-weight:800}.league-progress-block{grid-column:2/-1;min-width:0}.league-progress-label{color:#ffffffb8;justify-content:space-between;gap:18px;margin-bottom:8px;font-size:12px;font-weight:800;display:flex}.league-progress-track{background:#ffffff21;border-radius:999px;height:9px;overflow:hidden}.league-progress-track span{border-radius:inherit;background:var(--league-accent);height:100%;transition:width .35s;display:block}.gamification-content-grid{background:var(--color-white);grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);min-width:0;display:grid}.daily-challenge-section,.league-board{min-width:0;padding:28px 30px}.league-board{border-left:1px solid var(--color-line);background:var(--league-tint)}.daily-challenge-form{gap:18px;display:grid}.daily-challenge-heading,.league-board-heading,.daily-submit-row,.submission-score-row{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.daily-challenge-heading>div,.league-board-heading>div{min-width:0}.daily-challenge-heading h3,.league-board-heading h3{margin-top:3px;font-size:22px}.daily-difficulty,.league-rank-badge{background:var(--league-accent);border-radius:999px;flex:none;padding:7px 11px;font-size:12px;font-weight:850}.daily-task-content{border-radius:var(--radius-sm);background:var(--color-soft);border:0;min-height:auto;padding:18px}.daily-task-content>:first-child{margin-top:0}.daily-task-content>:last-child{margin-bottom:0}.daily-answer-field{gap:8px;font-weight:800;display:grid}.daily-answer-field input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-height:50px;color:var(--color-primary);font:inherit;outline:none;padding:0 14px}.daily-answer-field input:focus{border-color:var(--league-accent-strong)}.daily-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.daily-choice{border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px 14px;display:grid}.daily-choice.selected{border-color:var(--league-accent-strong);background:var(--league-tint)}.daily-choice span{overflow-wrap:anywhere;min-width:0;font-weight:750}.daily-submit-row{flex-wrap:wrap;justify-content:flex-start}.daily-submit-row>span{color:var(--color-muted);font-size:13px;font-weight:750}.daily-challenge-empty,.daily-result{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;min-height:180px;padding:18px 0;display:grid}.daily-challenge-empty>svg{color:var(--league-accent-strong)}.daily-challenge-empty h3,.daily-result h3{font-size:22px}.daily-challenge-empty p,.daily-result p{max-width:650px;color:var(--color-muted);margin:8px 0 0}.daily-result-icon{background:var(--league-accent);border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.daily-result.attempted .daily-result-icon{background:#f2ce62}.daily-correct-answer{font-weight:800}.daily-streak-bonus{color:var(--league-accent-strong);font-weight:800}.league-board-list{gap:7px;margin-top:18px;display:grid}.league-row{border-radius:var(--radius-sm);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:grid}.league-row.current{background:var(--league-accent)}.league-place{background:#2b2b2b14;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:900;display:grid}.league-place.place-1{background:#f2ce62}.league-place.place-2{background:#d6d9df}.league-place.place-3{background:#dca276}.league-row>div{min-width:0;display:grid}.league-row strong,.league-row small{overflow-wrap:anywhere;min-width:0}.league-row small{color:var(--color-muted);font-size:10px}.league-row b{font-size:14px}.league-full-link{border-top:1px solid #2b2b2b1a;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:14px;font-weight:850;display:flex}.gamification-band.detailed .gamification-content-grid{grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr)}.gamification-detail-grid{border-top:1px solid var(--color-line);background:var(--color-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.gamification-detail-grid>section{background:var(--color-white);min-width:0;padding:28px 30px}.season-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.season-metric-grid>div{border-radius:var(--radius-sm);background:var(--color-soft);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 9px;min-width:0;padding:13px;display:grid}.season-metric-grid svg{color:var(--league-accent-strong);grid-row:1/3}.season-metric-grid span{color:var(--color-muted);font-size:11px;font-weight:750}.season-metric-grid strong{font-size:18px}.league-history-list{gap:9px;margin-top:18px;display:grid}.league-history-list>div{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0;display:grid}.league-history-list span{color:var(--color-muted);text-transform:capitalize}.gamification-empty-history{color:var(--color-muted);margin-top:18px}.league-guide{gap:28px;margin-top:42px;display:grid}.league-guide>.section-heading{max-width:860px;margin-bottom:0}.league-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.league-guide-card{--league-accent:#b9ef6f;--league-accent-strong:#80bd32;--league-tint:#f2f9e9;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--league-tint);grid-template-columns:54px minmax(0,1fr);gap:14px;min-width:0;padding:18px;display:grid}.league-guide-swatch{background:var(--league-accent);border-radius:50%;place-items:center;width:54px;height:54px;font-family:Unbounded,sans-serif;font-size:19px;font-weight:800;display:grid}.league-guide-card>div{min-width:0}.league-guide-card small{color:var(--color-muted);font-weight:750}.league-guide-card h3{margin-top:2px}.league-guide-card p,.league-rules-grid p{color:var(--color-muted);margin:8px 0 0;font-size:14px;line-height:1.55}.league-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.league-rules-grid article{border-top:1px solid var(--color-line);grid-template-columns:30px minmax(0,1fr);gap:3px 12px;min-width:0;padding:20px 4px 4px;display:grid}.league-rules-grid svg{color:var(--color-muted);grid-row:1/3}.league-rules-grid p{grid-column:2}.submission-score-row{flex-wrap:wrap;justify-content:flex-start;margin-top:10px}.submission-score-row strong,.homework-score-panel>strong{color:var(--league-accent-strong,#5c931f)}.homework-score-panel>strong{margin-top:8px;font-size:25px;display:block}.admin-task-form label small{color:var(--color-muted);font-size:12px;font-weight:650}@media (max-width:1050px){.league-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gamification-hero{grid-template-columns:auto minmax(0,1fr)}.gamification-stats,.league-progress-block{grid-column:1/-1}.gamification-content-grid,.gamification-band.detailed .gamification-content-grid{grid-template-columns:1fr}.league-board{border-top:1px solid var(--color-line);border-left:0}}@media (max-width:700px){.league-guide-grid,.league-rules-grid{grid-template-columns:1fr}.gamification-hero,.daily-challenge-section,.league-board,.gamification-detail-grid>section{padding:20px}.gamification-hero{grid-template-columns:64px minmax(0,1fr);gap:16px}.league-emblem{width:64px;height:64px}.league-emblem span{font-size:25px}.league-copy h2{font-size:27px}.gamification-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.gamification-stats>div{grid-template-columns:1fr;gap:3px}.gamification-stats svg{display:none}.gamification-stats strong{font-size:14px}.league-progress-label,.daily-submit-row,.daily-challenge-heading{flex-direction:column;align-items:flex-start}.daily-choice-list,.gamification-detail-grid,.season-metric-grid{grid-template-columns:1fr}.daily-submit-row .button-primary{width:100%}.daily-challenge-empty,.daily-result{grid-template-columns:1fr}}@media (max-width:390px){.gamification-hero,.daily-challenge-section,.league-board,.gamification-detail-grid>section{padding:17px}.gamification-stats>div{padding:9px}.league-copy h2,.daily-challenge-heading h3,.league-board-heading h3,.daily-challenge-empty h3,.daily-result h3{font-size:20px}}.markdown-editor-shell{border:1px solid var(--color-line);background:var(--color-white);border-radius:8px;grid-column:1/-1;min-width:0;overflow:hidden}.markdown-editor-heading{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:20px;padding:18px 20px 14px;display:flex}.markdown-editor-heading h3{margin:4px 0 0;font-size:21px}.markdown-editor-heading-actions{align-items:center;gap:8px;display:flex}.markdown-preview-expand{border:1px solid var(--color-line);background:var(--color-soft);width:40px;height:40px;color:var(--color-text);cursor:pointer;border-radius:7px;flex:none;place-items:center;display:inline-grid}.markdown-preview-expand:hover,.markdown-preview-expand:focus-visible{border-color:var(--color-primary);background:var(--color-button);color:var(--color-primary)}.markdown-toolbar{border-bottom:1px solid var(--color-line);background:var(--color-soft);flex-wrap:wrap;align-items:center;gap:6px;min-height:52px;padding:8px 12px;display:flex}.markdown-toolbar button,.content-file-row>button{width:36px;height:36px;color:var(--color-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;place-items:center;display:inline-grid}.markdown-toolbar button:hover,.markdown-toolbar button:focus-visible{border-color:var(--color-line);background:var(--color-white)}.toolbar-symbol{font-family:Georgia,serif;font-size:22px;line-height:1}.markdown-editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:440px;display:grid}.markdown-source,.markdown-preview{min-width:0}.markdown-source{border-right:1px solid var(--color-line)}.markdown-source textarea{resize:vertical;width:100%;min-height:440px;color:var(--color-text);background:#fbfcf8;border:0;border-radius:0;outline:none;padding:20px;font-family:Cascadia Code,Consolas,monospace;font-size:15px;line-height:1.65;display:block}.markdown-source textarea:focus{box-shadow:inset 3px 0 #8ebf50}.markdown-preview{background:var(--color-white);max-height:720px;padding:20px;position:relative;overflow:auto}.markdown-preview-status{color:var(--color-muted);margin-bottom:14px;font-size:13px;font-weight:700;display:inline-block}.markdown-mobile-tabs{border:1px solid var(--color-line);background:var(--color-soft);border-radius:7px;align-items:center;gap:4px;padding:3px;display:none}.markdown-mobile-tabs button{color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:8px 11px;font-weight:800}.markdown-mobile-tabs button.active{background:var(--color-white);color:var(--color-text);box-shadow:0 1px 4px #11181214}.content-file-list{border-top:1px solid var(--color-line);gap:8px;padding:14px;display:grid}.content-file-row{background:var(--color-soft);border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:10px 12px;display:grid}.content-file-row>svg{color:#5c7f32}.content-file-row>div{min-width:0;display:grid}.content-file-row strong,.content-file-row span{overflow-wrap:anywhere}.content-file-row strong{font-size:14px}.content-file-row span{color:var(--color-muted);font-size:12px}.content-file-row>button:hover{color:#a93120;background:#ffe9e5}.markdown-editor-shell>.teacher-save-status{margin:0 14px 14px;display:block}.fullscreen-preview-backdrop{z-index:100;background:#2b2b2b7a;position:fixed;inset:0}.fullscreen-preview-shell{background:var(--color-white);grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;display:grid}.fullscreen-preview-header{border-bottom:1px solid var(--color-line);background:var(--color-soft);justify-content:space-between;align-items:center;gap:24px;min-width:0;padding:16px clamp(18px,4vw,52px);display:flex}.fullscreen-preview-header>div{min-width:0}.fullscreen-preview-header h2{overflow-wrap:anywhere;margin:3px 0 0;font-size:clamp(22px,2.4vw,34px)}.fullscreen-preview-header .modal-close{background:var(--color-white);flex:none;position:static}.fullscreen-preview-body{min-width:0;padding:clamp(20px,4vw,52px);overflow:auto}.fullscreen-preview-article,.fullscreen-task-preview-content,.fullscreen-material-preview-content{width:min(980px,100%);margin:0 auto}.fullscreen-task-preview-content{gap:18px;display:grid}.fullscreen-task-preview-content>.status-badge{justify-self:start}.fullscreen-task-preview-content>.content-article{border:1px solid var(--color-line);border-radius:var(--radius-md);padding:clamp(20px,4vw,42px)}.fullscreen-material-preview-content{gap:22px;display:grid}.fullscreen-material-description{color:var(--color-muted);margin:0;font-size:16px;line-height:1.6}.fullscreen-material-preview-content>.content-article{min-width:0}.reader-attachments{border-top:1px solid var(--color-line);gap:9px;margin-top:28px;padding-top:20px;display:grid}.reader-attachments h2{margin:0 0 4px;font-size:20px}.reader-attachment-link{width:fit-content;max-width:100%;color:var(--color-text);overflow-wrap:anywhere;align-items:center;gap:10px;font-weight:750;display:flex}@media (max-width:800px){.markdown-mobile-tabs{display:flex}.markdown-editor-grid{min-height:390px;display:block}.markdown-source,.markdown-preview{display:none}.markdown-source.active,.markdown-preview.active{display:block}.markdown-source{border-right:0}.markdown-source textarea,.markdown-preview{min-height:390px}}@media (max-width:430px){.markdown-editor-heading{flex-direction:column;align-items:flex-start;padding:15px}.markdown-editor-heading-actions{width:100%}.markdown-mobile-tabs,.markdown-mobile-tabs button{flex:1}.markdown-toolbar{grid-template-columns:repeat(5,34px);gap:4px;padding:7px;display:grid}.markdown-toolbar button{width:34px;height:34px}.markdown-source textarea,.markdown-preview{min-height:360px;padding:15px;font-size:14px}}.admin-material-markdown-form{width:100%}.admin-task-answer{background:var(--color-soft);border-left:3px solid #9dce61;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px;padding:11px 13px;display:flex}.admin-task-answer span,.admin-task-answer small{color:var(--color-muted);font-size:12px;font-weight:750}.admin-task-answer strong{overflow-wrap:anywhere;font-size:15px}.task-answer-line{margin:12px 0 0;font-size:14px}.reader-attachments.compact{margin-top:14px;padding-top:12px}.teacher-dashboard-nav{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-width:0;margin-top:28px;padding:6px;display:grid}.teacher-dashboard-nav-2{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-nav a{border-radius:var(--radius-sm);min-width:0;min-height:48px;color:var(--color-muted);overflow-wrap:anywhere;justify-content:center;align-items:center;gap:9px;padding:8px 14px;font-weight:850;display:inline-flex}.teacher-dashboard-nav a:hover,.teacher-dashboard-nav a.active{background:var(--color-white);color:var(--color-primary)}.teacher-dashboard-nav+.dashboard-page,.teacher-dashboard-nav+.detail-page{margin-top:20px}.teacher-library-page{min-width:0}.teacher-library-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end}.teacher-library-hero h1{font-size:clamp(34px,5vw,56px)}.teacher-library-tabs{border-bottom:1px solid var(--color-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;padding-bottom:12px;display:grid}.variant-library-card>p{color:var(--color-muted);margin:0;line-height:1.55}.variant-library-meta{flex-wrap:wrap;gap:8px;display:flex}.variant-library-meta span{border-radius:var(--radius-sm);background:var(--color-soft);color:var(--color-primary);padding:8px 10px;font-size:13px;font-weight:750}.exam-variant-condition-panel{gap:18px;min-width:0;display:grid}.exam-variant-detail-page,.exam-variant-detail-page>*,.exam-variant-support-grid>*{min-width:0}.exam-variant-detail-page .teacher-library-hero{grid-template-columns:minmax(0,1fr)}.exam-variant-detail-page .teacher-library-hero>*{overflow-wrap:anywhere;min-width:0;max-width:100%}.exam-variant-condition-panel .section-heading,.exam-variant-inline-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.exam-variant-pdf{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-soft);width:100%;min-width:0;max-width:100%;height:min(76vh,920px);min-height:560px;display:block}.exam-variant-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.exam-variant-file-list,.exam-variant-answer-preview{gap:10px;display:grid}.exam-variant-file-list>a,.exam-variant-answer-preview>a{border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-primary);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;font-weight:800;display:grid}.exam-variant-answer-preview img{object-fit:contain;border:1px solid var(--color-line);background:var(--color-white);width:100%;max-height:360px}.exam-variant-homework-block{border-left:5px solid var(--color-button);border-radius:var(--radius-sm);background:var(--color-soft);grid-template-columns:minmax(0,1fr);gap:18px;min-width:0;max-width:100%;padding:22px;display:grid}.exam-variant-homework-head{align-items:flex-start;gap:12px;display:flex}.exam-variant-homework-head>div{min-width:0}.exam-variant-homework-head span{color:var(--color-muted);font-size:13px;font-weight:800}.exam-variant-homework-head h2{overflow-wrap:anywhere;margin-top:3px;font-size:24px}.exam-variant-actions{flex-wrap:wrap;gap:10px;display:flex}.exam-variant-answer-files{border-top:1px solid var(--color-line);flex-wrap:wrap;align-items:center;gap:10px;padding-top:15px;display:flex}.exam-variant-answer-files a{color:var(--color-primary);align-items:center;gap:7px;font-weight:800;display:inline-flex}.admin-exam-variant-form{width:100%}.exam-variant-upload-grid,.exam-variant-editor-file-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.exam-variant-editor-files{border-top:1px solid var(--color-line);align-content:start;gap:10px;min-width:0;padding-top:14px;display:grid}.exam-variant-editor-files h3{font-size:16px}.exam-variant-editor-files .content-file-row{grid-template-columns:auto minmax(0,1fr) auto auto}.exam-variant-editor-files .content-file-row>a,.exam-variant-editor-files .content-file-row>button{border-radius:var(--radius-sm);background:var(--color-white);width:34px;height:34px;color:var(--color-primary);border:0;place-items:center;display:inline-grid}.admin-variant-preview-link{width:fit-content}@media (max-width:900px){.exam-variant-support-grid,.exam-variant-upload-grid,.exam-variant-editor-file-grid{grid-template-columns:1fr}}@media (max-width:680px){.exam-variant-condition-panel .section-heading,.exam-variant-inline-actions{flex-direction:column;align-items:stretch}.exam-variant-pdf{height:68vh;min-height:430px}.exam-variant-homework-block{padding:16px}.exam-variant-actions>a{justify-content:center;width:100%}}.teacher-library-tab{border-radius:var(--radius-sm);background:var(--color-soft);min-width:0;min-height:54px;color:var(--color-primary);overflow-wrap:anywhere;justify-content:center;align-items:center;gap:10px;padding:10px 18px;font-weight:850;display:inline-flex}.teacher-library-tab:hover,.teacher-library-tab.active{background:var(--color-button)}.teacher-library-filter{border-radius:var(--radius-md);background:var(--color-soft);grid-template-columns:minmax(230px,.8fr) minmax(280px,1.2fr) auto auto;align-items:end;gap:12px;min-width:0;padding:20px;display:grid}.teacher-library-filter label{min-width:0;color:var(--color-primary);gap:7px;font-weight:800;display:grid}.teacher-library-filter label>span{font-size:13px}.teacher-library-filter input{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-width:0;min-height:48px;color:var(--color-primary);font:inherit;outline:none;padding:0 14px}.teacher-library-filter input:focus{border-color:var(--color-primary)}.teacher-library-filter .button-secondary{min-height:48px}.teacher-library-reset{white-space:nowrap;align-self:center;padding:12px 4px}.teacher-library-list-heading>div{justify-content:space-between;align-items:baseline;gap:16px;width:100%;display:flex}.teacher-library-list-heading span{color:var(--color-muted);font-size:14px;font-weight:750}.teacher-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;display:grid}.teacher-library-card{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);align-content:start;gap:15px;min-width:0;padding:20px;display:grid;overflow:hidden}.teacher-library-card>header{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.teacher-library-card>header>div{min-width:0}.teacher-library-card h3{overflow-wrap:anywhere;margin-top:4px;font-size:21px}.teacher-library-card header>div>p{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;line-height:1.45;display:-webkit-box;overflow:hidden}.teacher-library-content-preview{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-soft);min-height:130px;max-height:250px;padding:16px;font-size:15px;position:relative;overflow:hidden}.teacher-library-content-preview>:first-child{margin-top:0}.teacher-library-content-preview>:last-child{margin-bottom:0}.teacher-library-content-preview img{max-width:100%;height:auto}.content-article.teacher-library-content-preview :where(h1,h2,h3,h4,h5,h6){border:0;margin:18px 0 8px;padding:0;font-size:17px;line-height:1.35}.content-article.teacher-library-content-preview :where(p,ol,ul){margin-bottom:10px}.content-article.teacher-library-content-preview .katex-display{background:var(--color-white);margin:12px 0;padding:8px 10px}.content-article.teacher-library-content-preview .reader-table-scroll{margin:12px 0}.content-article.teacher-library-content-preview .reader-table-scroll table{min-width:420px}.teacher-library-answer{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);padding:12px 0}.teacher-library-answer summary{width:fit-content;color:var(--color-primary);cursor:pointer;font-weight:850}.teacher-library-answer strong{overflow-wrap:anywhere;margin-top:10px;display:block}.teacher-library-answer-edit{width:fit-content;color:var(--color-primary);align-items:center;gap:7px;margin-top:12px;font-size:14px;font-weight:850;display:inline-flex}.teacher-library-answer-edit:hover{color:var(--color-muted)}.teacher-library-card-footer{justify-content:space-between;align-items:center;gap:14px;min-width:0;margin-top:auto;display:flex}.teacher-library-card-footer>span{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;font-size:13px;font-weight:750}.teacher-library-card-footer .text-link{flex:none;align-items:center;gap:7px;display:inline-flex}.teacher-library-detail-answer{gap:7px;display:grid}.teacher-library-detail-answer strong{overflow-wrap:anywhere;font-size:22px}.teacher-answer-heading{justify-content:space-between;align-items:center;gap:18px;min-width:0;display:flex}.teacher-answer-heading>div{gap:5px;min-width:0;display:grid}.teacher-answer-heading small{color:var(--color-muted);font-size:12px;font-weight:750}.teacher-answer-form{border-top:1px solid var(--color-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px;padding-top:18px;display:grid}.teacher-answer-form label{gap:7px;min-width:0;font-weight:800;display:grid}.teacher-answer-form input,.teacher-answer-form select,.teacher-answer-form textarea{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-white);width:100%;min-width:0;color:var(--color-primary);padding:12px 14px}.teacher-content-access-notice .detail-hero{grid-template-columns:34px minmax(0,1fr);align-items:center}.teacher-content-access-notice .detail-hero p{color:var(--color-muted);grid-column:1/-1;margin:0}@media (max-width:980px){.teacher-library-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-library-filter .button-secondary,.teacher-library-reset{text-align:center;justify-content:center;width:100%}}@media (max-width:760px){.teacher-library-hero,.teacher-library-filter,.teacher-library-grid{grid-template-columns:1fr}.teacher-library-card-footer{flex-direction:column;align-items:flex-start}.teacher-library-card-footer .text-link{justify-content:space-between;width:100%}.teacher-answer-heading{flex-direction:column;align-items:stretch}.teacher-answer-form{grid-template-columns:1fr}}@media (max-width:520px){.teacher-dashboard-nav{gap:4px;margin-top:18px;padding:4px}.teacher-dashboard-nav a{text-align:center;flex-direction:column;align-content:center;gap:4px;min-height:62px;padding:6px 3px;font-size:12px;line-height:1.15}.teacher-library-tabs{grid-template-columns:1fr}.teacher-library-card{padding:16px}.teacher-library-card>header{display:grid}.teacher-library-list-heading>div{flex-direction:column;align-items:flex-start;gap:4px}.teacher-library-content-preview{min-height:110px;max-height:220px;padding:13px;font-size:14px}}@media (max-width:680px){.material-reader{padding:22px}.content-article h1{font-size:25px}.content-article h2{margin-top:32px;padding-bottom:8px;font-size:22px}.content-article h3{margin-top:25px;font-size:19px}.content-article h4{margin-top:21px;font-size:17px}.content-article .katex-display{margin:15px 0 17px;padding:10px 12px}.content-article .reader-table-scroll table{min-width:500px}}@media (max-width:380px){.material-reader{padding:18px}.content-article h2{font-size:20px}.content-article h3{font-size:18px}.content-article .katex-display{padding-left:9px;padding-right:9px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
