@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";.account-actions-footer{width:100%;margin-top:28px;padding-top:20px;border-top:1px solid var(--border);color:var(--theme-text, #19243c);overflow-wrap:anywhere}.account-actions-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:flex-start;gap:12px}.account-actions-row>div{min-width:0}.account-actions-switch-only{grid-template-columns:minmax(0,220px);justify-content:end}.account-actions-row>button,.account-actions-row>div>button{width:100%;min-height:44px;padding:10px 14px;white-space:normal}.account-deletion-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--theme-surface, #fff);color:var(--theme-text, #19243c);box-shadow:0 24px 80px #00000059;overflow:auto}.account-deletion-dialog::backdrop{background:#000000a6}.account-deletion-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.account-deletion-heading h2{margin:0;font-size:20px}.account-deletion-dialog>label{display:flex;align-items:flex-start;gap:8px;margin:20px 0}.account-deletion-dialog>label>input{flex-shrink:0;margin-top:3px}.account-deletion-dialog>button{width:100%}.account-deletion-dialog p{font-size:14px;line-height:1.6}.account-actions-footer p{font-size:12px}.account-privacy-status{display:grid;justify-items:start;gap:6px;margin-top:18px}.account-privacy-status p{margin:0}.account-settings-footer{display:flex;justify-content:flex-end;width:100%;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.account-settings-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:42px;margin-left:auto;align-self:flex-end;padding:10px 16px;white-space:nowrap}.account-access-page{display:flex;flex-direction:column;align-items:stretch}.public-loading.account-access-page{justify-content:center;max-width:760px;margin:0 auto;padding:24px;background:var(--theme-surface, #fff)}.onboarding-screen.account-access-page>.account-actions-footer{max-width:640px;margin-left:auto;margin-right:auto}.onboarding-screen>.account-settings-footer{max-width:640px;margin-left:auto;margin-right:auto}.main-footer>.account-actions-footer{flex-basis:100%;margin-top:8px}@media (max-width: 520px){.account-actions-row{grid-template-columns:minmax(0,1fr)}.account-deletion-dialog{padding:18px}}.family-page{width:100%;max-width:1280px;margin:0 auto;padding:24px clamp(20px,4vw,48px) 56px;color:var(--theme-text, #19253c)}.family-preferences-editor .onboarding-form{padding:16px}.family-preferences-editor h4{font-size:clamp(20px,3vw,24px)}.family-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 24px;border-bottom:1px solid var(--theme-border, #dae2ef)}.family-identity{display:grid;gap:4px;margin-left:auto}.family-identity span{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem}.family-identity small{color:var(--theme-muted, #566783);overflow-wrap:anywhere}.family-hero{padding:clamp(32px,5vw,64px) 0 32px;max-width:920px}.family-kicker{display:inline-block;color:var(--theme-accent-text, #245ef0);font-size:.75rem;font-weight:750;letter-spacing:.12em}.family-hero h1{margin:12px 0 20px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;letter-spacing:-.045em}.family-hero>p{font-size:1.1rem;max-width:760px;color:var(--theme-muted, #566783);line-height:1.75}.family-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);align-items:start;gap:32px}.family-card,.family-guide{min-width:0;border-radius:22px;padding:clamp(24px,3vw,36px)}.family-card{background:var(--theme-surface, #fff);border:1px solid var(--theme-border, #dbe3ef);box-shadow:0 8px 28px #15254804;display:flex;flex-direction:column;align-items:stretch;gap:20px}.family-card h2,.family-guide h2{font-size:clamp(1.35rem,2.4vw,1.7rem);letter-spacing:-.035em;margin:0}.family-card h3{font-size:1.35rem;margin:0}.family-card p,.family-guide p,.family-child p,.family-account-tools p{margin:0;line-height:1.75;color:var(--theme-muted, #566783)}.family-guide{background:var(--theme-accent-soft, #edf2ff);display:grid;gap:20px}.family-steps{list-style:none;counter-reset:family-step;padding:0;margin:0;display:grid;gap:28px}.family-steps li{counter-increment:family-step;position:relative;padding-left:48px}.family-steps li:before{content:counter(family-step);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--theme-surface, white);color:var(--theme-accent-text, #245ef0);font-weight:700}.family-steps strong{display:block;margin-bottom:6px}.family-steps p{font-size:.93rem}.family-form{display:flex;flex-direction:column;gap:22px;margin:0}.family-form .button,.family-card>.button{align-self:flex-start}.family-field{display:flex;flex-direction:column;gap:10px;font-size:.88rem;font-weight:650}.family-field input,.family-field select{width:100%;min-height:52px;padding:12px 16px}.family-field .family-code-input{font-size:1.3rem;letter-spacing:.15em;font-weight:700}.family-check,.family-page label.family-check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.6;font-weight:500;margin:0;cursor:pointer;padding:4px 0}.family-check input[type=checkbox]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:20px;height:20px;min-width:20px;flex:0 0 20px;margin:3px 0 0;padding:0;accent-color:var(--theme-accent-text, #245ef0)}.family-check small{display:block;margin-top:6px;font-size:.85rem;line-height:1.65;color:var(--theme-muted, #566783);font-weight:400}.family-caption,.family-page p.family-caption{font-size:.85rem;line-height:1.65;color:var(--theme-muted, #566783)}.family-legal{font-size:.85rem;line-height:1.8}.family-notice{background:var(--theme-surface, #f7f9fd);border:1px solid var(--theme-border, #dbe3ef);border-radius:14px;padding:16px 20px}.family-notice summary,.family-account-tools summary,.family-remove summary,.family-age-change summary{cursor:pointer;font-weight:600;line-height:1.6}.family-notice p{font-size:.88rem;margin-top:16px}.family-status{display:flex;align-items:flex-start;gap:12px;border-radius:14px;padding:16px 20px;background:var(--theme-accent-soft, #edf2ff);font-size:.9rem;line-height:1.65}.family-status-good{background:var(--theme-success-soft, #e9f7ef);color:var(--theme-success-text, #1b6943)!important}.family-status svg{flex:0 0 auto;margin-top:3px}.family-card-heading,.family-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.family-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--theme-accent-soft, #edf2ff);color:var(--theme-accent-text, #245ef0)}.family-feature-icon{color:var(--theme-accent-text, #245ef0)}.family-step-label{font-size:.7rem;letter-spacing:.1em;font-weight:700;color:var(--theme-muted, #566783)}.family-actions{display:flex;flex-wrap:wrap;gap:12px}.family-page .button{min-height:46px;white-space:normal;text-align:center}.family-text-link{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;line-height:1.6}.family-scan-controls{display:grid;gap:14px}.family-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.family-scanner{border:1px solid var(--theme-border, #dbe3ef);border-radius:16px;padding:18px;display:grid;gap:16px}.family-scanner video{width:100%;max-height:340px;border-radius:12px;background:#162236;object-fit:cover}.family-scanner p{font-size:.85rem}.family-badge{border-radius:30px;background:var(--theme-accent-soft, #edf2ff);color:var(--theme-accent-text, #245ef0);padding:6px 12px;font-size:.75rem;font-weight:650}.family-badge-good{background:var(--theme-success-soft, #e9f7ef);color:var(--theme-success-text, #1b6943)}.family-consent-summary{display:flex;flex-wrap:wrap;gap:16px 32px;padding:16px 0;border-block:1px solid var(--theme-border, #dbe3ef)}.family-consent-summary span{display:grid;gap:6px;font-size:.82rem;color:var(--theme-muted, #566783)}.family-consent-summary strong{font-size:.95rem;color:var(--theme-text, #19253c)}.family-children{margin-top:32px}.family-section-heading{margin-bottom:24px}.family-section-heading h2{margin:8px 0 0;font-size:1.7rem}.family-children-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.family-children-grid>:only-child{grid-column:1 / -1}.family-remove{border-top:1px solid var(--theme-border, #dbe3ef);padding-top:16px}.family-remove summary{font-size:.85rem;color:var(--theme-muted, #566783)}.family-remove .family-check{margin:16px 0}.family-page-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}.family-account-tools{margin:28px 0;padding:22px 0;border-block:1px solid var(--theme-border, #dbe3ef)}.family-account-tools>p{margin:16px 0;font-size:.9rem}.family-account-tools .button,.family-account-tools label{margin-top:12px}.family-age-change{margin-top:28px}.family-age-change .family-form{max-width:600px;margin-top:20px}.family-child{display:grid;gap:24px}.family-code{display:grid;grid-template-columns:minmax(0,1fr) 200px;align-items:center;gap:24px;padding:24px;border:1px solid var(--theme-border, #dbe3ef);border-radius:16px;background:var(--theme-surface, #f7f9fd)}.family-code strong{display:block;font-size:clamp(1.25rem,3vw,2rem);letter-spacing:.12em;margin-bottom:12px;overflow-wrap:anywhere}.family-code img{width:200px;height:200px;background:#fff;border-radius:12px;max-width:100%}.family-code .family-actions{margin-top:16px}.family-access-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:40px;align-items:center}.family-parent-modal{width:min(1080px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;padding:clamp(20px,4vw,36px);border:1px solid var(--theme-border, #dbe3ef);border-radius:22px;background:var(--theme-surface, #fff);color:var(--theme-text, #19253c);box-shadow:0 24px 80px #00000059}.family-parent-modal::backdrop{background:#000000a6}.family-parent-modal>p{margin:24px 0;line-height:1.75}.family-parent-modal .family-card-heading h2{margin:0}.family-parent-modal .family-card-heading>.button{flex-shrink:0}@media (max-width: 800px){.family-grid,.family-access-heading{grid-template-columns:minmax(0,1fr);gap:24px}.family-topbar{flex-wrap:wrap;gap:16px}.family-identity{order:3;width:100%;margin-left:0}.family-topbar .brand{font-size:1.35rem}.family-hero{padding-top:32px}.family-children-grid{grid-template-columns:minmax(0,1fr)}.family-code{grid-template-columns:minmax(0,1fr);justify-items:start;padding:20px}.family-section-heading,.family-page-footer,.family-parent-modal .family-card-heading{align-items:flex-start;flex-direction:column}}.admin-blocked-page{min-height:100vh;min-height:100dvh;justify-content:center;gap:24px;padding:clamp(20px,5vw,64px);background:#fff1f2;color:#881337;--border: #fda4af}.admin-blocked-page>.account-access-content,.admin-blocked-page>.account-actions-footer{width:100%;max-width:760px;margin-left:auto;margin-right:auto}.admin-blocked-page .admin-blocked-panel{padding:clamp(24px,5vw,48px);border:2px solid #be123c;background:#fff;text-align:center;overflow-wrap:anywhere}.admin-blocked-icon{color:#be123c;margin-bottom:20px}.admin-blocked-panel h1{color:#9f1239}.admin-blocked-panel p,.admin-blocked-page>.account-actions-footer,.admin-blocked-page>.account-actions-footer p{color:#881337}.admin-blocked-panel .loading{justify-content:center;color:#881337}.admin-blocked-page button:focus-visible{outline-color:#be123c}.multi-select{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;font-size:13px;font-weight:600;color:var(--theme-muted, #4d5c75)}.admin-editor .multi-select{font-size:11px}.multi-select-trigger{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:11px 13px;border:1px solid var(--theme-border, #dce3ee);border-radius:10px;background:var(--theme-surface, #fff);color:var(--theme-text, #24324d);text-align:left;font:inherit}.multi-select-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-select-count{padding:2px 7px;border-radius:6px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, #2563eb)}.multi-select-chevron-open{transform:rotate(180deg)}.multi-select-error{color:var(--theme-error-text, #b42318)}.multi-select-trigger[aria-invalid=true]{border-color:var(--theme-error-text, #b42318)}.multi-select-panel{position:absolute;top:100%;left:0;z-index:60;display:flex;flex-direction:column;gap:8px;width:100%;margin-top:6px;padding:10px;border:1px solid var(--theme-border, #dce3ee);border-radius:10px;background:var(--theme-surface, #fff);box-shadow:0 8px 24px #17366a1f;color:var(--theme-text, #24324d)}.multi-select-panel>input{width:100%;min-width:0;font:inherit}.multi-select-options{max-height:min(240px,40dvh);overflow-y:auto;overscroll-behavior:contain}.multi-select .multi-select-option{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:0;padding:9px 6px;border-radius:6px;color:inherit;font:inherit;line-height:1.5;cursor:pointer}.multi-select-option:hover{background:var(--theme-accent-soft, #eff5ff)}.multi-select-option:has(input:disabled){opacity:.6;cursor:not-allowed}.multi-select-option>input[type=checkbox]{margin:2px 0 0;flex-shrink:0}.multi-select-option>span{min-width:0;overflow-wrap:anywhere}.multi-select-empty{margin:4px 6px;font:inherit}.multi-select-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px}.multi-select-footer button{padding:7px 12px;border:1px solid var(--theme-border, #dce3ee);border-radius:7px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, #2563eb);font:inherit}.teacher-lesson-structure{display:grid;gap:12px}.teacher-lesson-step{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.teacher-lesson-step>label{flex:1;min-width:min(240px,100%)}.teacher-lesson-step>button{padding:10px;border:1px solid var(--theme-border, #dce3ee);border-radius:8px;background:var(--theme-surface, #fff)}.teacher-lesson-page{margin-top:20px}.formatted-text-editor{display:grid;gap:8px;min-width:0}.formatted-text-toolbar{display:flex;gap:8px}.formatted-text-toolbar button{min-width:36px;min-height:36px;border:1px solid var(--theme-border, #dce3ee);background:var(--theme-surface, #fff);border-radius:6px}.formatted-text-input{min-height:140px;border:1px solid var(--theme-border, #dce3ee);background:var(--theme-surface, #fff);border-radius:8px;padding:12px;overflow-wrap:anywhere;color:var(--theme-text, #19243c);font-weight:400;white-space:pre-wrap}.formatted-text-input:focus{outline:2px solid var(--theme-accent-text, #2563eb)}.formatted-text-input p{margin:0 0 10px;color:inherit}.formatted-text-input pre{white-space:pre-wrap}.formatted-text-input img{max-width:100%}fieldset:disabled .formatted-text-input{pointer-events:none;opacity:.6}.teacher-lesson-step>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--theme-border, #dce3ee);border-radius:50%;color:var(--theme-accent-text, #2563eb)}.lesson-prose pre,.formatted-text-input pre{overflow-x:auto;padding:12px;border-radius:8px;background:var(--theme-muted-surface, #f1f5fa)}.lesson-page{width:100%;margin:1rem auto}.lesson-page-reading{max-width:56rem}.lesson-page-wide{max-width:100%}.lesson-page-row{display:grid;gap:1.5rem;padding:1rem 0;align-items:start;border-radius:16px}.lesson-columns-full{grid-template-columns:minmax(0,1fr)}.lesson-columns-halves{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-columns-wide-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.lesson-columns-wide-right{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.lesson-columns-thirds{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-page-cell,.lesson-page-block{min-width:0}.lesson-page-block+.lesson-page-block{margin-top:1.2rem}.lesson-rich-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;margin:0 0 1rem}.lesson-row-soft{background:var(--theme-surface, #f5f7fb);padding:1.25rem}.lesson-row-blue{background:var(--theme-accent-soft, #edf4ff);padding:1.25rem}.lesson-row-warm{background:var(--theme-warning-soft, #fff9ed);padding:1.25rem}.lesson-page-row+.lesson-page-row{margin-top:.5rem}.lesson-page figure{margin:0}.lesson-figure img{display:inline-block;max-width:100%;height:auto;border-radius:10px}.lesson-figure figcaption,.lesson-code-figure figcaption{color:var(--theme-muted, #53647d);font-size:.88rem;line-height:1.6;margin-top:.6rem}.lesson-figure figcaption small{display:block}.lesson-callout{padding:1.1rem 1.25rem;border-left:4px solid var(--theme-accent-border, #3b73ca);background:var(--theme-accent-soft, #edf4ff);border-radius:0 12px 12px 0}.lesson-callout-tip{background:var(--theme-surface-soft, #eef9f2);border-color:var(--theme-success-border, #3a8155)}.lesson-callout-warning{background:var(--theme-warning-soft, #fff5e6);border-color:var(--theme-warning-border, #ad6917)}.lesson-callout strong{display:block;margin-bottom:.5rem}.lesson-callout p:last-child{margin-bottom:0}.lesson-page ul,.lesson-page ol{padding-left:1.5rem;line-height:1.8}.lesson-page li+li{margin-top:.4rem}.lesson-table-scroll{max-width:100%;overflow-x:auto}.lesson-table{border-collapse:collapse;width:100%;text-align:left}.lesson-table th,.lesson-table td{border:1px solid var(--theme-border, #dfe6f0);padding:.75rem;vertical-align:top;white-space:pre-wrap}.lesson-table th{background:var(--theme-accent-soft, #edf4ff)}.lesson-table caption{text-align:left;padding:.5rem 0;font-weight:600}.lesson-reveal{background:var(--theme-surface, #f5f7fb);padding:1rem 1.2rem;border-radius:12px}.lesson-reveal summary{cursor:pointer;font-weight:600}.lesson-reveal[open] summary{margin-bottom:1rem}.lesson-divider{border:0;border-top:1px solid var(--theme-border, #dfe6f0);margin:1.5rem 0}.lesson-builder{margin:1rem 0;display:grid;gap:1rem}.lesson-builder-row{border:1px solid var(--theme-border, #dfe6f0);border-radius:12px;padding:1rem}.lesson-builder-columns{display:grid;gap:1rem}.lesson-builder-cell{border:1px dashed var(--theme-accent-border, #bccce2);border-radius:10px;padding:.75rem;min-width:0}.lesson-builder-block{padding:.75rem;margin:.75rem 0;background:var(--theme-surface, #f5f7fb);border:1px solid var(--theme-border, #dfe6f0);border-radius:8px}.lesson-builder-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0}.lesson-builder-toolbar button,.lesson-builder-toolbar select{min-height:36px}.lesson-builder-block label,.lesson-builder-cell>label{display:grid;gap:.4rem;margin:.6rem 0}.lesson-builder-block input:not([type=checkbox]),.lesson-builder-block textarea,.lesson-builder-block select{width:100%;min-width:0}.lesson-builder-preview{border:2px solid var(--theme-border, #dfe6f0);background:var(--theme-surface, #fff);border-radius:16px;padding:1.5rem}.lesson-image-preview{max-width:100%;max-height:180px;object-fit:contain}.lesson-builder-budget{font-size:.85rem;color:var(--theme-muted, #53647d)}@media (max-width: 760px){.lesson-page-row,.lesson-builder-columns{grid-template-columns:minmax(0,1fr)}.lesson-builder-preview{padding:.75rem}}.lesson-editor-fields{border:0;min-width:0}.lesson-code-variants{min-width:0}.lesson-language-buttons,.lesson-code-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lesson-language-buttons{margin:8px 0 12px}.lesson-language-buttons button,.lesson-code-actions button{border:1px solid var(--theme-border, #dce3ef);background:var(--theme-surface, #fff);color:var(--theme-text, #24344b);border-radius:8px;padding:7px 10px;font:inherit;font-size:12px;cursor:pointer}.lesson-language-buttons button[aria-pressed=true]{background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent, #365dc7);border-color:currentColor}.lesson-language-buttons button:focus-visible,.lesson-code-actions button:focus-visible{outline:2px solid var(--theme-accent, #365dc7);outline-offset:2px}.lesson-code-actions{margin-bottom:8px;font-size:12px}.lesson-code-actions button{display:inline-flex;align-items:center;gap:5px}.lesson-code-actions>span{margin-right:auto}.lesson-variant-explanation{white-space:pre-wrap;font-size:13px;line-height:1.65}.lesson-variant-code{min-width:0}.videos-page{display:grid;gap:24px}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:22px}.video-card{display:flex;flex-direction:column;gap:14px;min-width:0}.video-card .button{margin-top:auto}.video-card-symbol{display:flex;justify-content:space-between;align-items:center;min-height:110px;background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #2863d6);border-radius:12px;padding:22px}.video-search{display:grid;gap:8px;max-width:560px}.video-paywall{display:grid;gap:12px;justify-items:start}.video-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.video-screen{grid-column:2;grid-row:1;position:sticky;top:20px;display:grid;gap:16px;min-width:0}.video-screen video,.video-preview{width:100%;background:#101d35;border-radius:12px;max-height:70vh}.video-companion{grid-column:1;grid-row:1;min-width:0;padding:20px}.video-companion .tabs{display:flex;overflow-x:auto;margin-bottom:20px;gap:6px}.video-companion .video-chapters{margin-bottom:20px}.video-desktop-content[hidden]{display:none!important}.video-editor fieldset{min-width:0}.video-sync-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,1fr);gap:24px;align-items:start}.video-sync-moments,.video-sync-player{min-width:0;display:grid;gap:16px}.video-sync-player{position:sticky;top:104px;padding:16px;border:1px solid var(--theme-border, #dce7f9);border-radius:12px}.video-moment-list{display:grid;gap:8px}.video-moment-list button{padding:10px 12px;border:1px solid var(--theme-border, #dce7f9);border-radius:8px;text-align:left;overflow-wrap:anywhere;background:var(--theme-surface, #fff);color:inherit}.video-moment-list button[aria-pressed=true]{background:var(--theme-accent-soft, #edf4ff);border-color:var(--theme-accent-text, #2863d6)}.youtube-player{min-width:0;display:grid;gap:12px}.youtube-player-frame{position:relative;aspect-ratio:16 / 9;min-height:200px}.youtube-player-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;border-radius:12px}.video-companion .tabs button{white-space:nowrap}.video-companion [hidden]{display:none!important}.video-companion .python-lab{min-width:0}.video-chapters{display:flex;flex-wrap:wrap;gap:8px}.video-chapters button{padding:9px 12px;border:1px solid var(--theme-border, #dce7f9);border-radius:8px;background:var(--theme-surface, #fff);text-align:left}.video-course-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;margin-bottom:20px}.video-material{border:1px solid var(--theme-border, #dce7f9);width:100%;height:600px;margin-top:16px}.video-editor{display:grid;gap:20px}.video-editor label{display:grid;gap:8px}.video-editor textarea{min-height:120px;width:100%}.video-cue-editor{padding:16px;border:1px solid var(--theme-border, #dce7f9);border-radius:12px;display:grid;gap:12px}.video-rewards{display:grid;gap:18px}.video-wallet{display:flex;flex-wrap:wrap;gap:24px}.video-wallet>div{flex:1;min-width:180px}.volume-price{padding:16px;border:1px solid var(--theme-border, #dce7f9);border-radius:12px;background:var(--theme-surface, #f6f9ff)}@media (max-width: 1150px){.video-workspace{grid-template-columns:1fr}.video-screen{position:static;grid-column:auto;grid-row:auto}.video-companion{grid-column:auto;grid-row:auto}}@media (max-width: 1200px){.video-sync-workspace{grid-template-columns:minmax(0,1fr)}.video-sync-player{position:static;grid-row:1}}:root{font-family:DM Sans,sans-serif;color:var(--theme-text, #19243c);background:var(--theme-surface, #f6f8fc);font-synthesis:none;font-weight:400;--blue: #2563eb;--blue-deep: #164cc8;--muted: #78849a;--border: #e7ecf3;--radius: 18px;--shadow: 0 5px 18px #17366a04}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--theme-accent-text, var(--blue));text-decoration:none}button{color:inherit}h1,h2,h3,h4{font-family:Manrope,sans-serif;letter-spacing:-.035em;margin:0;line-height:1.3}h1{font-size:31px;font-weight:800}h2{font-size:23px;font-weight:800}h3{font-size:18px;font-weight:750}p{line-height:1.7;color:var(--theme-muted, #748097);margin:10px 0}svg{flex-shrink:0;vertical-align:middle}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--theme-accent-text, #80adff);outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid var(--theme-accent-text, #82afff);outline-offset:1px}input,textarea,select{border:1px solid var(--theme-border, #dce3ee);border-radius:10px;padding:11px 13px;background:var(--theme-surface, #fff);color:var(--theme-text, #24324d);max-width:100%}textarea{resize:vertical;line-height:1.6;width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--blue);width:17px;height:17px;padding:0;flex-shrink:0}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;color:var(--theme-muted, #4d5c75)}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:13px;font-weight:650;color:var(--theme-muted, #4d5c75);margin-bottom:12px}pre{white-space:pre-wrap;overflow-wrap:anywhere}small,.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.5px;color:var(--theme-muted, #8793a9);display:block;margin-bottom:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 19px;border:1px solid transparent;border-radius:10px;background:var(--blue);color:var(--theme-on-accent, white);font-size:13px;font-weight:650;line-height:1.4;transition:background .15s,transform .15s;white-space:normal}.button:hover:not(:disabled){background:var(--blue-deep);transform:translateY(-1px)}.button-secondary{background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));border-color:var(--theme-accent-border, #dce8fd)}.button-secondary:hover:not(:disabled){background:var(--theme-accent-soft, #e0edff)}.button-ghost{background:transparent;color:var(--theme-muted, #62728e)}.button-ghost:hover:not(:disabled){background:var(--theme-accent-soft, #eef3fa)}.button-white{background:var(--theme-surface, #fff);color:var(--theme-accent-text, #2252bc)}.button-white:hover{background:var(--theme-accent-soft, #eff5ff)!important}.button-danger{background:var(--theme-danger-text, #c53838)}.full-width{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:10px}.icon-button{background:none;border:0;padding:7px;color:var(--theme-muted, #8390a5);border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:var(--theme-accent-soft, #f0f4fb);color:var(--theme-accent-text, var(--blue))}.tag{display:inline-flex;align-items:center;align-self:flex-start;padding:5px 9px;background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #3667be);border-radius:6px;font-size:10px;font-weight:750;letter-spacing:.25px;line-height:1.4}.tag.purple,.purple{background:var(--theme-purple-soft, #f2eefe);color:var(--theme-purple-text, #8566d6)}.tag.green,.green{background:var(--theme-success-soft, #e9f8f1);color:var(--theme-success-text, #289a77)}.tag.amber,.amber{background:var(--theme-warning-soft, #fff5e7);color:var(--theme-warning-text, #d69832)}.blue{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #3c76dc)}.panel{background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.panel>h2{margin-bottom:15px}.error-box,.info-banner,.success-box{border:1px solid var(--theme-danger-border, #f3d6d7);background:var(--theme-danger-soft, #fff2f2);color:var(--theme-danger-text, #a83d49);border-radius:12px;padding:15px 18px;display:flex;align-items:center;gap:12px;margin:15px 0;font-size:13px;line-height:1.6}.error-box span{flex:1}.error-box button{background:transparent;border:0;color:inherit;text-decoration:underline;white-space:nowrap}.info-banner{background:var(--theme-accent-soft, #edf4ff);border-color:var(--theme-accent-border, #dbe7fc);color:var(--theme-accent-text, #3665b2)}.info-banner p{color:inherit;margin:0;flex:1}.info-banner a{display:flex;align-items:center;gap:8px;font-weight:600}.success-box{background:var(--theme-success-soft, #eaf8f0);color:var(--theme-success-text, #1f7c57);border-color:var(--theme-success-border, #c8e8d7)}.loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:150px;font-size:14px;color:var(--theme-muted, #7a88a0)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:65px 25px;color:var(--theme-subtle, #8b9bb5);background:var(--theme-surface, white);border:1px dashed var(--theme-border, #d7e1ee);border-radius:18px}.empty h3{margin:16px 0 6px;color:var(--theme-text, #31415d)}.empty p{max-width:490px;margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--theme-surface, white);padding:15px;z-index:20}.skip-link:focus{top:12px}.mobile-only{display:none!important}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:var(--theme-surface, #fff);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:34px 19px 20px;z-index:15;overflow-y:auto;transition:transform .2s ease}.sidebar-brand{padding:0 4px 0 13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-collapse-button,.sidebar-open-button{flex-shrink:0;color:var(--theme-muted, #71809a)}.brand{display:flex;align-items:center;gap:10px;color:var(--theme-text, #253452);font-family:Manrope,sans-serif;font-size:25px;font-weight:800;letter-spacing:-1px;line-height:1.2}.brand-mark{display:block;flex-shrink:0;border-radius:13px;width:42px;height:42px;object-fit:contain;background:var(--blue);box-shadow:0 6px 12px var(--theme-accent-shadow, #2563eb20)}.brand-compact{gap:8px}.brand-compact .brand-mark{width:28px;height:28px;border-radius:8px;box-shadow:none}.brand-blue{color:var(--theme-accent-text, var(--blue))}.brand small{font-family:DM Sans,sans-serif;display:block;font-size:7px;letter-spacing:2.2px;font-weight:700;margin-top:4px;color:var(--theme-subtle, #9ba7ba)}.nav-label{font-size:8px;letter-spacing:1.1px;font-weight:700;color:var(--theme-subtle, #a5afbf);margin:30px 13px 14px}.nav-item{display:flex;align-items:center;gap:12px;color:var(--theme-muted, #7c889d);font-size:12px;font-weight:550;padding:13px;border-radius:9px;margin:3px 0;position:relative}.nav-item.active{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, var(--blue));font-weight:700}.nav-item.active:before{content:"";position:absolute;left:-19px;width:3px;height:23px;border-radius:0 3px 3px 0;background:var(--blue)}.nav-item:hover{background:var(--theme-surface, #f3f6fc);color:var(--theme-accent-text, #3765b3)}.nav-code{margin-left:auto;color:var(--theme-subtle, #8c9bb3);font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:36px}.sidebar-plus{background:linear-gradient(125deg,var(--theme-accent-soft, #f4f8ff),var(--theme-accent-soft, #eef3ff));border:1px solid var(--theme-accent-border, #e8eefb);border-radius:13px;margin:0 5px 18px;padding:18px 15px;color:var(--theme-accent-text, #527dd1)}.sidebar-plus>svg{margin-bottom:12px}.sidebar-plus strong{display:block;font-family:Manrope,sans-serif;color:var(--theme-accent-text, #324b7d);font-size:14px;line-height:1.55;letter-spacing:-.3px}.sidebar-plus p{font-size:10px;margin:7px 0 13px}.sidebar-plus>a{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700}.sidebar-note{font-size:9px;color:var(--theme-subtle, #a9b3c3);line-height:1.7;margin:22px 13px 0}.sidebar-note a{color:var(--theme-subtle, #99a6bc);font-size:8px}.main-shell{margin-left:252px;width:calc(100% - 252px);min-width:0;transition:margin-left .2s ease,width .2s ease}.app-shell.sidebar-collapsed .sidebar{transform:translate(-100%)}.app-shell.sidebar-collapsed .main-shell{margin-left:0;width:100%}.topbar{height:76px;border-bottom:1px solid var(--border);background:var(--theme-surface-glass, #ffffffeb);display:flex;align-items:center;justify-content:space-between;padding:0 39px;gap:15px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.breadcrumb{display:flex;gap:14px;font-size:11px;color:var(--theme-subtle, #97a3b7);align-items:center}.breadcrumb strong{font-weight:550;color:var(--theme-muted, #64728c)}.breadcrumb>span{color:var(--theme-subtle, #c9d0dd)}.school-pill{display:flex;align-items:center;gap:14px;font-size:10px;border:1px solid var(--border);padding:9px 12px;border-radius:7px;color:var(--theme-muted, #6a7790)}.user-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:3px solid var(--theme-surface, white);outline:1px solid var(--theme-accent-text, #dce8fc);background:var(--theme-accent-soft, #dbeafe);color:var(--theme-accent-text, #4b71ad);font-size:13px;font-weight:700;border-radius:50%}.top-login{display:flex;align-items:center;gap:7px;background:none;border:0;color:var(--theme-accent-text, var(--blue));font-size:11px;font-weight:650}.main-content{max-width:1500px;margin:0 auto;padding:36px 39px 35px}.main-content.python-project-main{width:100%;max-width:none;min-height:calc(100vh - 76px);padding:12px 16px 16px}.python-project-shell .main-footer{display:none}.main-footer{max-width:1500px;margin:0 auto;padding:18px 39px 28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;color:var(--theme-subtle, #a0adbf);font-size:9px}.main-footer a{color:var(--theme-subtle, #8495ad)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:29px}.page-heading p{font-size:13px;margin:9px 0 0;max-width:740px}.page-heading .button{flex-shrink:0}.welcome-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 28px}.welcome-heading h1{font-size:26px;letter-spacing:-.8px}.welcome-heading p{font-size:12px;margin:9px 0 0}.welcome-heading .eyebrow{font-size:8px;letter-spacing:1.4px;color:var(--theme-subtle, #9ca8bb)}.greeting-spark{color:var(--theme-warning-text, #ebbb57);margin-left:10px;font-size:26px}.admin-tabs{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;width:100%;padding:10px;margin-bottom:28px;border:1px solid var(--theme-border, var(--border));border-radius:14px;background:var(--theme-accent-soft, #edf1f7)}.admin-tabs>.admin-tab{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 16px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--theme-muted, #64748b);font-size:12px;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;overflow-wrap:anywhere}.admin-tabs>.admin-tab:hover{background:var(--theme-surface, white);color:var(--theme-text, #19243c)}.admin-tabs>.admin-tab.selected{border-color:var(--theme-accent-border, #cdddfb);background:var(--theme-surface, white);color:var(--theme-accent-text, var(--blue));box-shadow:0 2px 5px var(--theme-accent-shadow, #19355b0a)}.admin-tabs>.admin-tab:focus-visible{outline:2px solid var(--theme-accent-text, var(--blue));outline-offset:2px}.admin-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:23px}.admin-lessons{background:var(--theme-surface, white);border:1px solid var(--border);border-radius:14px;padding:14px;height:max-content;position:sticky;top:20px}.admin-lessons>.button{margin-bottom:17px}.admin-lessons>button:not(.button){display:flex;align-items:center;gap:9px;background:none;border:0;text-align:left;width:100%;font-size:11px;line-height:1.6;padding:11px;color:var(--theme-subtle, #8c9db6);border-radius:7px}.admin-lessons>button.selected{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #4d7abd)}.admin-lessons>button>span{font-size:9px}.admin-editor{min-width:0}.admin-editor h2{margin:30px 0 20px;font-size:20px}.admin-editor>label{margin:20px 0}.admin-editor label{font-size:11px}.admin-editor textarea{font-size:12px}.admin-section{background:var(--theme-surface, #f9fbff);border:1px solid var(--border);border-radius:12px;padding:20px;margin:17px 0}.admin-section>label{margin:17px 0}.admin-section .button{font-size:10px}.checkbox-group{display:flex;flex-direction:column;justify-content:center;gap:15px}.checkbox-group label,.option-edit{display:flex;flex-direction:row;gap:12px;align-items:center}.option-edit>input:not([type=checkbox]):not([type=radio]){flex:1;min-width:0}.admin-source-list{display:flex;flex-direction:column;gap:20px}.admin-source-list .tag{margin-bottom:15px}.admin-source-list label{font-size:11px}.admin-source-list>.panel>label{margin-bottom:20px}.metrics-list>div{display:flex;justify-content:space-between;padding:15px;border-bottom:1px solid var(--border);font-size:14px}.metrics-list dt{color:var(--theme-subtle, #8a9eb9)}.metrics-list dd{font-weight:700}.project-editor{margin-top:25px}.project-editor summary{font-size:12px;cursor:pointer;color:var(--theme-accent-text, #688bb9)}.project-editor p{font-size:10px}.project-editor .button{margin-top:15px}.admin-fields{margin:0;padding:0;border:0;min-width:0}.admin-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:18px 0}.admin-feedback-message{min-width:280px;white-space:pre-wrap;overflow-wrap:anywhere}.admin-feedback code{white-space:normal;overflow-wrap:anywhere}.admin-toolbar h2{margin-right:auto}.admin-toolbar label{flex:1;min-width:200px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}.admin-stat{border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--theme-surface, #f9fbff)}.admin-stat span{display:block;font-size:13px}.admin-stat strong{display:block;margin-top:12px;font-size:30px}.admin-overview p,.admin-import p,.admin-users p{font-size:13px;line-height:1.7}.admin-table-scroll{overflow-x:auto;margin:20px 0}.admin-table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}.admin-table caption{text-align:left;margin-bottom:12px;font-weight:600}.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid var(--border);vertical-align:top;min-width:150px}.admin-table td span,.admin-table td small{display:block;margin-top:6px;overflow-wrap:anywhere}.admin-table td small{color:var(--theme-muted, #64748b)}.admin-diagnostic-message,.admin-error-detail{overflow-wrap:anywhere;white-space:pre-wrap}.admin-error-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto}.admin-error-detail summary{cursor:pointer}.admin-import textarea{font-family:ui-monospace,monospace;min-height:320px;line-height:1.6}.admin-import>label,.admin-import details{margin:20px 0}.admin-inline-check{display:flex;align-items:center;gap:10px;flex-direction:row}.admin-inline-check input{width:auto}.admin-import-preview{margin-top:24px;padding:20px;border:1px solid var(--border);border-radius:12px}.admin-import-preview li{margin:10px 0;overflow-wrap:anywhere}.admin-lessons>label{font-size:12px;margin:12px 0}@media (max-width: 900px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.admin-stat-grid{grid-template-columns:1fr}.admin-toolbar{align-items:stretch}.admin-toolbar .button,.admin-toolbar label{width:100%;min-width:0}.metrics-list>div{gap:16px;padding:12px 0}}.schools-page,.school-form{display:flex;flex-direction:column;gap:20px;min-width:0}.class-modal{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:20px;background:transparent;color:inherit;overflow-y:auto}.class-modal::backdrop{background:#0f172a73}.class-modal-content{display:flex;flex-direction:column;gap:20px}.class-modal-content h2{margin:0}.class-modal-content .school-list-row{flex-direction:row;align-items:flex-start}.class-modal-content .icon-button{flex-shrink:0}.schools-page>.panel>h2,.school-card-grid h2{margin-top:12px}.school-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}.school-card-grid .panel{display:flex;flex-direction:column;gap:12px;min-width:0}.school-card-grid .button-row{margin-top:auto}.school-list-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-list-row>span,.school-list-row>div{min-width:0;overflow-wrap:anywhere}.school-list-row>.button{flex-shrink:0}.school-tabs{flex-wrap:wrap;margin:8px 0}.school-tabs button{white-space:normal}.school-form>.button,.schools-page>.button{align-self:flex-start}.school-form fieldset{min-width:0;margin:0}.school-form select[multiple]{min-height:150px}.school-form legend{font-size:16px;white-space:pre-wrap;line-height:1.6}.school-form .admin-inline-check{align-items:flex-start;line-height:1.6}.school-text{white-space:pre-wrap;overflow-wrap:anywhere}.school-answer-option{display:flex;align-items:flex-start;gap:10px;line-height:1.6}.school-answer-option input{width:auto;margin-top:5px}.school-tier{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.schools-page summary{cursor:pointer;font-weight:650;padding:8px 0}@media (max-width: 650px){.school-list-row{align-items:stretch;flex-direction:column}.school-tier{grid-template-columns:1fr}.school-tabs button{flex:1}.school-form>.button{width:100%}}.platform-access{max-width:640px;margin:6vh auto;padding:20px;overflow-wrap:anywhere}.school-dashboard{gap:24px}.school-dashboard-back{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;color:var(--theme-muted, #53647d);font-size:13px;font-weight:600}.school-dashboard-back:hover{color:var(--theme-accent-text, var(--blue))}.school-dashboard-heading{display:flex;align-items:center;gap:20px;padding:28px;background:linear-gradient(110deg,var(--theme-surface, #fff) 55%,var(--theme-accent-soft, #eff5ff))}.school-dashboard-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0;border:1px solid var(--theme-accent-border, #dce8fd);border-radius:18px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue))}.school-dashboard-heading .page-heading{min-width:0;margin:0}.school-dashboard-heading h1{overflow-wrap:anywhere;font-size:clamp(24px,3vw,31px)}.school-dashboard-heading .eyebrow{margin-bottom:7px;color:var(--theme-accent-text, var(--blue))}:is(.school-dashboard,.teacher-portal) .school-tabs{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-width:100%;margin:0;padding:8px;border:1px solid var(--theme-border, var(--border));border-radius:18px;background:var(--theme-surface, #fff);box-shadow:var(--shadow);overflow:visible}:is(.school-dashboard,.teacher-portal) .school-tabs button{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;gap:10px;min-width:0;min-height:48px;padding:12px 16px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--theme-muted, #53647d);font-size:13px;font-weight:650;line-height:1.5;text-align:left;white-space:normal;transition:background-color .16s ease,color .16s ease}:is(.school-dashboard,.teacher-portal) .school-tabs button span{min-width:0;overflow-wrap:anywhere}:is(.school-dashboard,.teacher-portal) .school-tabs button:hover{background:var(--theme-surface-soft, #f1f5fa);color:var(--theme-text, #19243c)}:is(.school-dashboard,.teacher-portal) .school-tabs button.selected{background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));border-color:var(--theme-accent-border, #dce8fd);font-weight:750}:is(.school-dashboard,.teacher-portal) .school-tabs button:focus-visible{outline-offset:2px}.school-dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-dashboard-toolbar h2{font-size:21px}.school-dashboard-toolbar p{margin:6px 0 0;font-size:13px}.school-dashboard-toolbar .button{flex-shrink:0}.school-dashboard-stat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--theme-accent-text, var(--blue))}.school-dashboard .school-card-grid h2{margin:0;overflow-wrap:anywhere}.school-dashboard .school-card-grid p{margin:0 0 8px;font-size:13px}.school-dashboard .school-card-grid .button-row{padding-top:8px}.school-dashboard .empty{padding:48px 24px;background:var(--theme-surface, #fff);border-color:var(--theme-accent-border, #dce8fd)}.school-dashboard .empty>svg{color:var(--theme-accent-text, var(--blue))}@media (max-width: 760px){:is(.school-dashboard,.teacher-portal) .school-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}:is(.school-dashboard,.teacher-portal) .school-tabs button{justify-content:flex-start;padding:12px}}@media (max-width: 520px){.school-dashboard{gap:20px}.school-dashboard-heading{align-items:flex-start;gap:14px;padding:20px}.school-dashboard-icon{width:46px;height:46px;border-radius:14px}.school-dashboard-icon svg{width:23px;height:23px}:is(.school-dashboard,.teacher-portal) .school-tabs button{gap:8px;font-size:12px}.school-dashboard-toolbar{align-items:stretch;flex-direction:column;gap:14px}.school-dashboard .school-card-grid .button-row>.button{width:100%}}@media (prefers-reduced-motion: reduce){:is(.school-dashboard,.teacher-portal) .school-tabs button{transition:none}}.python-lab{border:1px solid var(--theme-border, #dce5f2);border-radius:14px;background:var(--theme-surface, white);overflow:hidden}.python-projects-page,.python-project-page{display:grid;gap:20px;min-width:0}.python-projects-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.python-projects-heading>div,.python-project-detail-heading{display:grid;gap:7px}.python-projects-heading h1,.python-project-detail-heading h1,.python-projects-heading p{margin:0}.python-create-project{display:flex;align-items:flex-end;gap:10px;padding:16px;border:1px solid var(--theme-border, #dce5f2);border-radius:12px;background:var(--theme-surface-soft, #f8faff)}.python-create-project label{flex:1;min-width:180px;font-size:11px}.python-create-project input{margin-top:6px}.python-project-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--theme-border, #dce5f2);border-radius:14px;background:var(--theme-surface, #fff);overflow:hidden}.python-project-open{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px;color:inherit}.python-project-open h2,.python-project-open p{margin:0}.python-project-open h2{font-size:15px;overflow-wrap:anywhere}.python-project-open p,.python-project-open small{color:var(--theme-muted, #6e7890);font-size:11px}.python-project-delete{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:0;border-top:1px solid var(--theme-border, #dce5f2);background:transparent;color:var(--danger, #b42318);cursor:pointer}.python-project-delete:disabled{cursor:wait;opacity:.6}.python-project-terminal-shell{min-width:0;border-radius:16px;box-shadow:0 18px 50px #1e375a1f}.python-project-page{min-height:calc(100vh - 104px);grid-template-rows:auto minmax(0,1fr);gap:10px}.python-project-detail-heading{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;min-width:0}.python-project-detail-heading>a{font-size:11px;white-space:nowrap}.python-project-detail-heading .eyebrow{padding-left:10px;border-left:1px solid var(--theme-border, #dce5f2);font-size:7px}.python-project-detail-heading h1{min-width:0;overflow:hidden;font-size:17px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.python-project-terminal-shell,.python-project-terminal-shell .python-lab{min-height:calc(100vh - 132px)}.python-project-terminal-shell .python-lab{display:flex;flex-direction:column}.python-project-terminal-shell .lab-ide-grid{flex:1;min-height:390px}.code-task{display:flex;align-items:flex-start;gap:13px;background:var(--theme-accent-soft, #f0f6ff);padding:21px;color:var(--theme-accent-text, #4d7bbf);border-bottom:1px solid var(--border)}.code-task strong{font-size:13px}.code-task p{font-size:12px;margin:6px 0 0;color:var(--theme-subtle, #6d88af)}.lab-toolbar{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;gap:12px;background:var(--theme-surface, #fff);border-bottom:1px solid var(--border)}.lab-title{display:flex;align-items:center;gap:8px;font-size:12px}.lab-title .muted{font-size:10px}.python-dot{width:7px;height:7px;background:var(--theme-accent-soft-strong, #5a94df);border-radius:50%}.lab-actions{display:flex;gap:8px;align-items:center}.lab-tool-actions{display:flex;align-items:center;gap:3px;padding-right:8px;border-right:1px solid var(--theme-border, #dce5f2)}.lab-tool-actions button{display:inline-flex;align-items:center;gap:5px;min-height:31px;padding:6px 8px;border:0;border-radius:7px;background:transparent;color:var(--theme-muted, #71809a);font-size:9px}.lab-tool-actions button:hover,.lab-tool-actions button.active{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #4e7aba)}.lab-actions .button{font-size:11px;min-height:35px;padding:8px 13px}.lab-ide-grid{display:flex;min-width:0}.lab-workspace{display:flex;flex:1;min-width:0;min-height:370px}.file-sidebar{width:165px;flex-shrink:0;border-right:1px solid var(--border);padding:14px 8px;background:var(--theme-surface, #fbfcff);display:flex;flex-direction:column}.files-heading{display:flex;justify-content:space-between;align-items:center;padding-left:9px;font-size:8px;letter-spacing:1.5px;color:var(--theme-subtle, #8a9bb2);font-weight:650;margin-bottom:10px}.file-item{display:flex;align-items:center;gap:6px;background:none;border:0;border-radius:6px;padding:9px 8px;font-size:10px;color:var(--theme-muted, #7a8ca7);text-align:left;min-height:33px}.file-item>span{overflow:hidden;text-overflow:ellipsis}.file-item.selected{background:var(--theme-accent-soft, #edf3fe);color:var(--theme-accent-text, #4e7aba)}.file-item .entry-dot{width:4px;height:4px;border-radius:50%;background:var(--theme-success-soft, #77b7a7);margin-left:auto;flex-shrink:0}.file-tools{display:flex;justify-content:space-around;gap:6px;border-top:1px solid var(--border);margin-top:18px;padding-top:13px}.file-tools button{border:0;background:none;color:var(--theme-subtle, #97a7bc);padding:4px}.export-project{border:0;background:none;display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:var(--theme-subtle, #8da1bf);margin-top:auto;padding:24px 0 5px}.editor-pane{min-width:0;flex:1;display:flex;flex-direction:column}.editor-pane .code-editor{flex:1;min-height:0}.python-learning-tools{width:285px;flex:0 0 285px;border-left:1px solid var(--theme-border, #dce5f2);background:var(--theme-surface, #fbfcff);color:var(--theme-muted, #687892);overflow:auto}.python-tools-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding:9px 12px;border-bottom:1px solid var(--theme-border, #dce5f2);background:var(--theme-surface, #fbfcff)}.python-tools-heading>span,.python-tools-heading button,.python-help-panel a,.python-add-template{display:flex;align-items:center;gap:7px}.python-tools-heading>span{color:var(--theme-text, #34445f);font-size:11px;font-weight:700}.python-tools-heading button{padding:4px;border:0;background:transparent;color:var(--theme-muted, #71809a)}.python-library-list,.python-help-panel,.python-ml-panel{display:flex;flex-direction:column;gap:10px;padding:13px;font-size:10px;line-height:1.55}.python-library-list>p,.python-help-panel>p,.python-ml-panel>p,.python-ml-panel ol{margin:0}.python-library-list article{display:grid;gap:5px;padding:10px;border:1px solid var(--theme-border, #dce5f2);border-radius:9px;background:var(--theme-surface, #fff)}.python-library-list article>div{display:flex;align-items:center;justify-content:space-between;gap:6px}.python-library-list code,.python-help-panel pre{overflow:auto;margin:0;padding:7px;border-radius:6px;background:var(--theme-surface-soft, #f1f5fb);font:9px/1.5 Consolas,monospace}.python-library-list small,.python-ml-panel small{color:var(--theme-subtle, #8b99af)}.python-library-detected{display:inline-flex;align-items:center;gap:3px;color:var(--theme-success-text, #438d73);font-size:8px}.python-help-panel details{padding:8px;border:1px solid var(--theme-border, #dce5f2);border-radius:8px;background:var(--theme-surface, #fff)}.python-help-panel summary{cursor:pointer;font-weight:650}.python-help-panel pre{margin-top:8px;white-space:pre-wrap}.python-help-panel a{justify-content:space-between;padding:8px;border-radius:7px;color:var(--theme-accent-text, #4e7aba)}.python-ml-panel ol{padding-left:20px}.python-add-template{justify-content:center;min-height:38px;border:0;border-radius:8px;background:var(--theme-accent-text, #3b73c5);color:#fff;font-size:10px;font-weight:700}.editor-tab{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);height:40px;padding:0 15px;gap:7px}.editor-tab>span{font-size:10px;display:flex;align-items:center;gap:7px;color:var(--theme-subtle, #7e93b2);min-width:0;overflow:hidden;text-overflow:ellipsis}.editor-tab i{width:5px;height:5px;background:var(--theme-warning-soft, #dfbd72);border-radius:50%;flex-shrink:0}.editor-tab label{flex-direction:row;align-items:center;font-size:9px;font-weight:400;color:var(--theme-subtle, #91a1b8)}.editor-tab select{padding:2px 6px;border:0;font-size:9px;color:var(--theme-subtle, #7990b1);background:var(--theme-surface, #f6f9fd);max-width:160px}.file-name-form{display:flex;align-items:end;gap:12px;background:var(--theme-surface, #f7faff);padding:18px;border-top:1px solid var(--border)}.file-name-form label{flex:1;font-size:11px}.file-name-form .button{font-size:10px;min-height:39px}.console-grid{display:grid;grid-template-columns:1fr 1.6fr;border-top:1px solid var(--border)}.stdin-pane{padding:16px;border-right:1px solid var(--border)}.stdin-pane>label{font-size:8px;color:var(--theme-subtle, #8597b3);letter-spacing:1px;display:flex;flex-direction:row;gap:8px;align-items:center}.stdin-pane>label span{font-size:8px;font-weight:400;letter-spacing:0;color:var(--theme-subtle, #a5b2c6)}.stdin-pane textarea{margin-top:10px;border:0;padding:5px;background:var(--theme-surface, #fafcff);font:11px/1.8 Consolas,monospace;min-height:96px;color:var(--theme-accent-text, #5f779e)}.console-pane{background:var(--theme-surface, #fbfdff);min-width:0;padding:16px}.console-heading{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1px;color:var(--theme-subtle, #8499b6);gap:10px}.console-heading>span{display:flex;align-items:center;gap:7px}.run-success{color:var(--theme-success-text, #58a990);letter-spacing:0;font-size:8px}.run-status{color:var(--theme-accent-text, #527caf);letter-spacing:0;font-size:8px}.run-timeout{color:var(--theme-danger-text, #b54755);letter-spacing:0;font-size:8px}.console-pane>pre{color:var(--theme-subtle, #7693b4);font:11px/1.9 Consolas,monospace;min-height:90px;max-height:270px;overflow:auto;white-space:pre-wrap}.console-pane>pre.console-error{color:var(--theme-danger-text, #bc7380)}.console-pane figure{margin:12px 0}.console-pane img{max-width:100%;height:auto}.console-pane figcaption{font-size:10px;color:var(--theme-subtle, #8a9db8)}.lab-status{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 17px;border-top:1px solid var(--border);font-size:9px;color:var(--theme-subtle, #8fa0b7);background:var(--theme-surface, #fff)}.lab-status .button{font-size:9px;min-height:32px;padding:7px 10px}.python-sandbox{display:none}.python-lab>.error-box{margin:12px}.test-results{padding:15px;display:flex;flex-direction:column;gap:8px}.test-results details{font-size:11px;padding:12px;border:1px solid var(--theme-border, #e0ebe6);border-radius:9px;color:var(--theme-success-text, #518f79);background:var(--theme-surface-soft, #f3faf6)}.test-results .failed{color:var(--theme-warning-text, #b58150);background:var(--theme-warning-soft, #fffaf3);border-color:var(--theme-warning-border, #f0e3d5)}.test-results pre{font:11px/1.7 monospace}.code-input{font-family:Consolas,monospace;font-size:12px}@media (min-width: 1550px){.main-content{padding:42px 55px}.hero-card{min-height:345px}.hero-copy{padding:40px}.hero-copy h2{font-size:40px}.hero-copy>p{font-size:13px;max-width:440px}.hero-kicker{font-size:9px}.hero-buttons .button{font-size:12px}.hero-link{font-size:11px}.hero-code-window{max-width:420px}.code-lines{font-size:12px}.hero-success{right:55px;bottom:25px}.course-art{height:150px}.course-body h3{font-size:18px}.course-body>p{font-size:12px}.course-info{font-size:10px}.course-meta>span:last-child{font-size:10px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 300px}.next-card h4{font-size:21px}.next-card>p{font-size:12px}.next-card .button{font-size:12px}.time-meta{font-size:10px}.stat-card p{font-size:11px}.stat-card strong small{font-size:10px}.lab-banner h3{font-size:15px}.lab-banner p,.lab-banner .button{font-size:10px}}@media (max-width: 1250px){.sidebar{width:225px;padding-left:15px;padding-right:15px}.main-shell{margin-left:225px;width:calc(100% - 225px)}.topbar{padding:0 25px}.main-content{padding:28px 25px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 235px;gap:20px}.hero-copy{padding:28px 0 25px 27px}.hero-copy h2{font-size:30px}.hero-buttons{gap:12px}.hero-visual{padding-right:20px}.code-lines{font-size:8px;padding:20px 12px}.hero-success{right:15px;font-size:8px}.stats-grid{gap:10px}.stat-card{padding:17px 12px;gap:9px}.stat-icon{width:34px;height:34px;border-radius:10px}.stat-card strong small{display:block;margin:3px 0 0;font-size:7px}.course-body{padding:16px}.course-body h3{font-size:14px}.course-body>p{font-size:9px}.course-info{gap:10px}.course-info svg{width:12px}.lab-banner{flex-wrap:wrap;gap:12px}.lab-banner .button{margin-left:57px}.next-card{padding:18px}.lesson-layout{grid-template-columns:180px minmax(0,1fr);gap:20px}.lesson-outline{padding:16px}.lesson-check{flex-wrap:wrap}.lesson-check .button{margin-left:47px}.nav-item.active:before{left:-15px}.file-sidebar{width:140px}.lesson-row-end{gap:15px}.progress-columns{grid-template-columns:1.4fr 1fr}.progress-summary>div{gap:13px;padding:20px}.progress-summary span{font-size:10px}}@media (max-width: 1000px){.sidebar{width:205px}.main-shell{margin-left:205px;width:calc(100% - 205px)}.app-shell.sidebar-collapsed .main-shell{margin-left:0;width:100%}.python-learning-tools{width:240px;flex-basis:240px}.lab-tool-actions button span{display:none}.brand{font-size:22px}.brand-mark{width:37px;height:37px}.nav-item{font-size:11px;padding:12px 9px;gap:9px}.nav-item svg{width:18px}.nav-label{font-size:7px;margin-left:8px}.sidebar-plus{margin:0 0 17px;padding:15px 12px}.sidebar-plus>a{font-size:9px}.hero-card{grid-template-columns:1fr .8fr}.hero-copy h2{font-size:27px}.hero-copy>p{font-size:10px}.hero-kicker{font-size:6px;letter-spacing:1px}.hero-buttons .button{font-size:9px}.hero-visual{padding-left:0}.hero-code-window{transform:rotate(-4deg)}.code-lines{font-size:7px;line-height:2.2;padding:15px 10px}.hero-success{padding:8px;font-size:7px;right:10px}.hero-success small{font-size:6px}.floating-python{top:30px;right:12px}.hero-footnote{font-size:7px}.dashboard-columns{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.source-link{grid-column:1/-1;margin:0 3px}.next-card .aside-heading{margin-bottom:18px}.course-body h3{font-size:18px}.course-body>p{font-size:11px;min-height:38px}.course-info{font-size:9px}.course-meta>span:last-child{font-size:9px}.lab-banner{flex-wrap:nowrap}.lab-banner .button{margin-left:auto}.lesson-layout{grid-template-columns:1fr}.lesson-outline{position:static;display:flex;flex-wrap:wrap;gap:8px;padding:15px}.lesson-outline>h3{width:100%;margin:0 0 7px}.lesson-outline>button{width:auto;padding:4px 7px}.lesson-objectives{display:none}.learn-filters{align-items:stretch;flex-direction:column;gap:15px}.search-input input{max-width:none;width:100%}.lesson-row{gap:15px;padding:20px}.lesson-row-end{flex-direction:column;gap:12px;align-items:flex-end;font-size:9px}.lesson-row h3{font-size:14px}.lesson-row p{font-size:10px}.progress-columns{grid-template-columns:1fr}.progress-summary{gap:12px}.progress-summary>div{flex-wrap:wrap;padding:18px;gap:12px}.progress-summary>div>span{width:100%}.account-grid{grid-template-columns:1fr}.account-data{flex-wrap:wrap}.account-data>div{flex-basis:100%}.pricing-grid{gap:18px}.pricing-card{padding:24px}.pricing-card h2{font-size:22px}.pricing-card li{font-size:11px}.admin-layout{grid-template-columns:1fr}.admin-lessons{position:static;max-height:260px;overflow:auto}.page-heading{align-items:flex-start}.page-heading h1{font-size:26px}.sources-grid{grid-template-columns:1fr}}@media (max-width: 760px){.mobile-only{display:inline-flex!important}.sidebar-collapse-button,.sidebar-open-button{display:none!important}.sidebar{transform:translate(-100%);transition:transform .2s;width:260px;padding:28px 20px;box-shadow:12px 0 30px var(--theme-accent-shadow, #28456b1a)}.sidebar.is-open,.app-shell.sidebar-collapsed .sidebar.is-open{transform:translate(0)}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--theme-backdrop, #24355255);z-index:14;border:0}.sidebar-brand{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.brand{font-size:26px}.brand-mark{width:42px;height:42px}.nav-label{font-size:8px}.nav-item{font-size:13px;padding:13px;gap:12px}.nav-item.active:before{left:-20px}.sidebar-plus{padding:19px}.sidebar-plus strong{font-size:16px}.sidebar-plus>a{font-size:11px}.main-shell{margin:0;width:100%}.topbar{height:64px;padding:0 18px}.topbar-left{gap:12px}.breadcrumb{font-size:10px;gap:8px}.breadcrumb>strong{max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{gap:10px}.python-projects-topbar-button span,.school-pill{display:none}.main-content{padding:26px 20px}.main-content.python-project-main{min-height:calc(100vh - 64px);padding:10px}.python-project-page{min-height:calc(100vh - 84px)}.python-project-terminal-shell,.python-project-terminal-shell .python-lab{min-height:calc(100vh - 122px)}.python-projects-heading{align-items:flex-start}.python-project-detail-heading{grid-template-columns:auto minmax(0,1fr)}.python-project-detail-heading .eyebrow{display:none}.python-project-detail-heading h1{text-align:right}.lab-ide-grid{flex-direction:column}.python-learning-tools{width:auto;flex-basis:auto;max-height:300px;border-top:1px solid var(--theme-border, #dce5f2);border-left:0}.main-footer{padding:15px 20px 25px;font-size:8px;gap:18px;line-height:1.8}.welcome-heading h1{font-size:25px;line-height:1.45;max-width:420px}.welcome-heading p{font-size:12px}.hero-card{grid-template-columns:1.1fr 1fr;min-height:290px}.hero-copy{padding:27px 0 25px 25px}.hero-copy h2{font-size:29px}.hero-kicker{font-size:6px}.hero-copy>p{font-size:10px}.code-lines{font-size:8px}.hero-visual{padding-right:17px}.hero-success{right:17px;bottom:25px}.hero-buttons{gap:15px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0 30px}.stat-card{padding:18px;gap:14px}.stat-card p{font-size:10px}.stat-card strong small{display:inline-block;margin-left:7px;font-size:8px}.stat-icon{width:39px;height:39px}.page-heading h1{font-size:27px}.section-heading h2{font-size:21px}.course-art{height:145px}.lab-banner h3{font-size:14px}.lab-banner p{font-size:10px}.lab-banner .button{font-size:9px}.lesson-row-tags{flex-wrap:wrap}.lesson-row{gap:13px;padding:19px 15px}.lesson-row h3{font-size:15px}.lesson-content{padding:25px}.lesson-content h2{font-size:23px}.lesson-prose p{font-size:13px}.lesson-check{padding:22px}.assessment-intro{margin:25px 0;padding:28px}.assessment-intro>h2{font-size:23px}.assessment-player{padding:25px}.question-heading h1{font-size:21px}.question-navigation .button{font-size:11px;padding:10px 13px}.result-score{width:110px;height:110px;font-size:34px}.result-overview{padding:26px;gap:25px}.result-overview h2{font-size:21px}.file-sidebar{width:140px}.lab-workspace{min-height:330px}.code-editor .cm-editor{height:320px!important}.python-project-terminal-shell .code-editor .cm-editor{height:100%!important}.lab-status{font-size:9px}.console-grid{grid-template-columns:1fr 1.4fr}.stdin-pane>label{flex-wrap:wrap;gap:5px}.file-name-form{flex-wrap:wrap}.file-name-form label{flex-basis:100%}.pricing-grid{gap:15px}.pricing-card{padding:25px}.pricing-card h2{font-size:23px}.pricing-card li{font-size:11px}.page-heading{flex-wrap:wrap}.page-heading>.button{font-size:11px}.account-data .button{font-size:10px}.tutor-header h3{font-size:15px}.admin-editor{padding:20px}.admin-section{padding:17px}}@media (max-width: 480px){.python-projects-heading,.python-create-project{flex-direction:column;align-items:stretch}.python-projects-heading .button,.python-create-project .button{width:100%}.lab-toolbar{flex-wrap:wrap}.lab-actions{width:100%;justify-content:space-between}.lab-tool-actions{flex:1}.main-content{padding:22px 16px}.topbar{padding:0 12px}.breadcrumb{font-size:9px}.breadcrumb>strong{max-width:115px}.top-login{font-size:10px}.welcome-heading h1{font-size:25px}.welcome-heading .eyebrow{font-size:7px}.welcome-heading p{font-size:11px}.greeting-spark{display:none}.hero-card{grid-template-columns:1fr;min-height:0}.hero-copy{padding:29px 25px 22px}.hero-copy h2{font-size:34px}.hero-copy>p{font-size:11px;max-width:310px}.hero-kicker{font-size:7px;letter-spacing:1.1px}.hero-buttons .button{font-size:10px;min-height:42px}.hero-link{font-size:9px}.hero-footnote{font-size:8px}.hero-visual{height:205px;padding:0 35px 32px;margin-top:0}.hero-code-window{max-width:300px}.code-lines{font-size:8px;line-height:1.7;padding:13px 16px}.window-top{padding:8px 12px}.code-result{padding:9px 15px}.hero-success{bottom:16px;right:27px;font-size:8px}.hero-success small{font-size:7px}.floating-python{top:0;right:20px;width:36px;height:36px;font-size:15px}.floating-spark{left:20px;bottom:25px;width:35px;height:35px}.orbit-one{top:-90px;left:15%;width:290px;height:290px}.orbit-two{top:-40px;width:230px;height:230px}.stats-grid{gap:10px}.stat-card{padding:15px 11px;gap:9px}.stat-card p{font-size:8px}.stat-card strong{font-size:23px}.stat-card strong small{display:block;margin:4px 0 0;font-size:7px}.stat-icon{width:35px;height:35px}.section-heading h2{font-size:20px}.section-heading .eyebrow{font-size:6px}.section-heading>a{font-size:8px}.course-grid{grid-template-columns:1fr}.course-card{display:grid;grid-template-columns:100px 1fr}.course-art{height:100%;min-height:238px;border-radius:0}.course-icon{width:57px;height:57px;border-radius:16px}.course-icon svg{width:32px}.course-label{display:none}.course-body{padding:17px}.course-meta .tag{font-size:6px}.course-meta>span:last-child{font-size:7px}.course-body h3{font-size:16px}.course-body>p{font-size:10px;min-height:auto}.course-info{font-size:8px;gap:10px}.course-progress{margin-top:14px;padding-top:14px}.course-progress>div:last-child{font-size:8px}.lab-banner{flex-wrap:wrap;padding:18px;gap:13px}.lab-banner-icon{padding:11px}.lab-banner>div{flex:1;min-width:200px}.lab-banner .button{margin-left:0;width:100%;font-size:11px;min-height:39px}.dashboard-aside{grid-template-columns:1fr;gap:16px}.next-card{padding:23px}.next-card h4{font-size:22px}.next-card>p{font-size:12px}.next-card .button{font-size:12px}.source-link{font-size:10px;margin:4px}.source-link small{font-size:9px}.main-footer{flex-direction:column;gap:8px;font-size:8px}.tabs{width:100%;justify-content:space-between}.tabs button{padding:10px 12px;font-size:10px}.filter-pills{gap:7px}.filter-pills>button{font-size:10px;padding:8px 12px}.lesson-row{gap:12px;align-items:flex-start}.lesson-row h3{font-size:14px;line-height:1.55}.lesson-row p{font-size:10px}.lesson-row-end{font-size:8px;gap:18px;margin-top:15px}.lesson-row-end .mastery-label{display:none}.lesson-row-tags .tag{font-size:7px}.free-label{font-size:8px}.page-heading h1{font-size:26px}.page-heading p{font-size:12px}.form-grid{grid-template-columns:1fr}.assessment-intro{padding:28px 23px}.assessment-intro h2{font-size:23px}.assessment-facts{align-items:flex-start;flex-direction:column;gap:14px;max-width:220px;margin:27px auto}.assessment-player{padding:22px 17px}.question-heading h1{font-size:20px}.question-heading{margin:28px 0 20px}.answer-option{font-size:12px;padding:14px;gap:10px}.answer-option>span{font-size:10px}.question-navigation{flex-wrap:wrap;gap:13px}.question-dots{order:3;width:100%;max-width:none;padding:10px}.question-navigation .button{font-size:10px}.result-overview{flex-direction:column;align-items:flex-start;padding:25px}.result-score{width:100px;height:100px;font-size:31px}.result-overview h2{font-size:22px}.feedback-card{padding:20px;gap:11px}.feedback-card h3{font-size:13px}.feedback-card p{font-size:11px}.lesson-content{padding:24px 20px}.lesson-content h2{font-size:22px}.lesson-step-navigation .button{font-size:10px;padding:10px 12px}.lesson-check>div{flex:1;min-width:180px}.lesson-check .button{margin-left:0;width:100%}.lesson-check h2{font-size:18px}.tutor-panel{padding:20px}.tutor-header h3{font-size:14px}.tutor-header>span:first-child{padding:9px}.tutor-header p{font-size:9px}.file-sidebar{width:110px;padding:10px 5px}.file-item{font-size:9px;padding:9px 6px}.file-item svg{width:13px}.files-heading{font-size:7px;padding-left:5px}.file-tools{flex-wrap:wrap;gap:10px}.file-tools button{padding:3px}.export-project{font-size:8px;gap:3px;line-height:1.6}.export-project svg{width:12px}.editor-tab{padding:0 9px}.editor-tab>span{font-size:9px}.editor-tab label{font-size:0;gap:0}.editor-tab select{font-size:8px;max-width:90px}.lab-title .muted{display:none}.lab-toolbar{padding:11px 12px}.lab-actions .button{font-size:10px;padding:7px 10px}.lab-actions .button-ghost span{display:none}.console-grid{grid-template-columns:1fr}.stdin-pane{border-right:0;border-bottom:1px solid var(--border);padding:14px}.stdin-pane textarea{min-height:62px;height:62px}.console-pane{padding:14px}.console-pane>pre{min-height:70px}.lab-status{flex-direction:column;align-items:stretch;font-size:8px;gap:10px}.code-task{padding:17px;gap:10px}.code-task p{font-size:11px}.progress-summary{gap:8px}.progress-summary>div{padding:13px;gap:8px}.progress-summary strong{font-size:25px}.progress-summary svg{width:20px}.progress-summary span{font-size:8px}.progress-columns .panel{padding:21px}.mastery-row{gap:12px}.mastery-row strong{font-size:11px}.mastery-row>div:last-child{min-width:65px}.account-identity h2{font-size:19px}.account-identity{gap:14px}.account-identity p{font-size:10px;overflow-wrap:anywhere}.large-avatar{width:50px;height:50px;font-size:25px;flex-shrink:0}.account-grid .panel{padding:24px}.pricing-grid{grid-template-columns:1fr;margin:25px 0}.pricing-card{padding:30px}.pricing-card h2{font-size:27px}.pricing-card li{font-size:12px}.pricing-security{font-size:10px;align-items:flex-start;line-height:1.7}.pricing-faq h2{font-size:23px}.pricing-faq summary{font-size:12px}.pricing-faq p{font-size:11px}.error-box,.info-banner{flex-wrap:wrap;font-size:11px;padding:14px}.info-banner p{min-width:180px}.info-banner a{margin-left:30px;font-size:11px}.admin-tabs button{font-size:9px;padding:9px}.admin-editor{padding:18px}.admin-section{padding:15px}.metrics-list>div{font-size:12px;gap:12px}.metrics-list dd{margin-left:15px}.sources-grid .panel{padding:22px}.sources-grid h2{font-size:17px}.data-info{padding:24px}.data-info h2{font-size:19px}.data-info p{font-size:12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html[data-appearance]{--blue: var(--theme-accent);--blue-deep: var(--theme-accent-hover);--muted: var(--theme-subtle);--border: var(--theme-border);--theme-danger-solid: #bc2644;--theme-danger-solid-hover: #a01e39;--theme-backdrop: rgb(7 13 23 / 55%);background:var(--theme-canvas);color:var(--theme-text)}html[data-appearance=light]{color-scheme:light;--theme-canvas: #f6f8fc;--theme-surface: #ffffff;--theme-surface-soft: #f1f5fa;--theme-surface-glass: #fffffff0;--theme-text: #19243c;--theme-muted: #53647d;--theme-subtle: #65758c;--theme-border: #dbe3ee;--theme-success-text: #176b4d;--theme-success-soft: #eaf7f0;--theme-success-border: #b9dfcd;--theme-warning-text: #89520b;--theme-warning-soft: #fff5e5;--theme-warning-border: #ead4ad;--theme-danger-text: #b42341;--theme-danger-soft: #fff0f3;--theme-danger-border: #efb8c3;--theme-purple-text: #6941b8;--theme-purple-soft: #f3eefc;--theme-purple-border: #d7c8ef;--theme-syntax-meta: #46534b;--theme-syntax-keyword: #770088;--theme-syntax-atom: #221199;--theme-syntax-number: #116644;--theme-syntax-string: #aa1111;--theme-syntax-escape: #ad3500;--theme-syntax-definition: #174ac4;--theme-syntax-type: #116677;--theme-syntax-comment: #805000;--theme-syntax-invalid: #b42341}html[data-appearance=dark]{color-scheme:dark;--theme-canvas: #0d1523;--theme-surface: #172235;--theme-surface-soft: #1d2b40;--theme-surface-glass: #172235f2;--theme-text: #edf3fc;--theme-muted: #b0bfd3;--theme-subtle: #9caec5;--theme-border: #34445c;--theme-success-text: #87e2b7;--theme-success-soft: #16382e;--theme-success-border: #386952;--theme-warning-text: #f4cc88;--theme-warning-soft: #3b3020;--theme-warning-border: #756041;--theme-danger-text: #ffa4b4;--theme-danger-soft: #3d2530;--theme-danger-border: #784252;--theme-purple-text: #c9b1ff;--theme-purple-soft: #302744;--theme-purple-border: #61517e;--theme-syntax-meta: #bfcdc5;--theme-syntax-keyword: #d8a8ff;--theme-syntax-atom: #b6b2ff;--theme-syntax-number: #8ce2b9;--theme-syntax-string: #f1b78c;--theme-syntax-escape: #f4d283;--theme-syntax-definition: #a8c7ff;--theme-syntax-type: #83dbe5;--theme-syntax-comment: #a6b6ca;--theme-syntax-invalid: #ffa4b4}html[data-appearance] ::selection{background:var(--theme-accent-soft-strong);color:var(--theme-text)}html[data-appearance] ::placeholder{color:var(--theme-subtle);opacity:1}html[data-appearance] .button:not(:where(.button-secondary,.button-ghost,.button-white,.button-danger)){border-color:var(--theme-accent-edge)}html[data-appearance] .button-danger{background:var(--theme-danger-solid);color:#fff}html[data-appearance] .button-danger:hover:not(:disabled){background:var(--theme-danger-solid-hover)}html[data-appearance] .ai-dialog,html[data-appearance] .appearance-dialog{background:var(--theme-surface);color:var(--theme-text)}html[data-appearance] .hero-card,html[data-appearance] .tests-hero,html[data-appearance] .ai-floating-button{background:linear-gradient(125deg,var(--theme-accent-hover),var(--theme-accent));color:var(--theme-on-accent)}html[data-appearance] .hero-close{background:#0000001f;color:var(--theme-on-accent)}html[data-appearance] .hero-close:hover{background:#00000038}html[data-appearance] .ai-floating-button{border-color:var(--theme-accent-edge)}html[data-appearance] .cm-editor{background:var(--theme-surface);color:var(--theme-text)}html[data-appearance] .cm-editor .cm-cursor{border-left-color:var(--theme-text)}html[data-appearance] .cm-editor .cm-activeLineGutter{background:var(--theme-accent-soft);color:var(--theme-accent-text)}html[data-appearance] .cm-editor .cm-selectionBackground,html[data-appearance] .cm-editor.cm-focused .cm-selectionBackground{background:var(--theme-accent-soft-strong)}html[data-appearance] .cm-editor .cm-tooltip{background:var(--theme-surface-soft);color:var(--theme-text);border-color:var(--theme-border)}html[data-appearance] .cm-editor .cm-tooltip-autocomplete ul li[aria-selected]{background:var(--theme-accent-soft-strong);color:var(--theme-text)}html[data-appearance] .cm-editor .cm-matchingBracket{background:var(--theme-success-soft);color:var(--theme-success-text)}html[data-appearance] .cm-editor .cm-nonmatchingBracket{background:var(--theme-danger-soft);color:var(--theme-danger-text)}html[data-appearance] .cm-editor .cm-searchMatch{background:var(--theme-warning-soft);outline-color:var(--theme-warning-border)}html[data-appearance] .cm-editor .cm-panels{background:var(--theme-surface-soft);color:var(--theme-text)}.appearance-trigger{min-width:40px;min-height:40px}.appearance-dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 24px 90px #00000035;overflow-y:auto}.appearance-dialog::backdrop{background:#0c162770;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.appearance-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.appearance-dialog h2{font-size:23px}.appearance-intro{margin-top:16px;font-size:13px}.appearance-settings fieldset{min-width:0;margin:24px 0}.appearance-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.appearance-mode{position:relative;display:flex;align-items:center;padding:18px 8px;gap:10px;border:1px solid var(--border);border-radius:14px;background:var(--theme-surface);color:var(--theme-muted);cursor:pointer;text-align:center;font-size:12px}.appearance-mode input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.appearance-mode.is-selected{background:var(--theme-accent-soft);color:var(--theme-accent-text);border-color:var(--theme-accent-text)}.appearance-mode:focus-within{outline:2px solid var(--theme-accent-text);outline-offset:3px}.appearance-swatches{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 22px}.appearance-swatch{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:2px solid transparent;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.appearance-swatch[aria-pressed=true]{outline:2px solid var(--theme-text);outline-offset:3px}.appearance-custom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.appearance-custom label{min-width:0}.appearance-custom input[type=color]{width:100%;height:46px;padding:4px;cursor:pointer}.appearance-custom input[type=text]{width:100%;min-width:0;font-family:monospace;height:46px}.appearance-error{color:var(--theme-danger-text);font-size:12px}.appearance-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:16px}.appearance-footer small{max-width:300px;font-size:11px;line-height:1.6}.appearance-footer .button{padding:10px 0;font-size:11px}.account-appearance{margin-top:25px}.account-appearance .appearance-settings{max-width:600px}@media (max-width: 520px){.appearance-dialog{padding:20px;width:calc(100vw - 20px)}.appearance-modes{gap:6px}.appearance-mode{font-size:11px;padding:16px 4px}.topbar-right{gap:10px}}@media (prefers-reduced-motion: reduce){html[data-appearance] .button{transition:none}}.legal-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;width:100%;font-size:12px;line-height:1.7}.legal-links a{color:var(--theme-muted, #536783)}.legal-links a:hover,.legal-links a[aria-current=page]{text-decoration:underline;text-underline-offset:3px}.main-footer:has(.legal-links){flex-wrap:wrap}.main-footer .legal-links{justify-content:flex-start;font-size:11px}.public-legal .public-guide{overflow-wrap:anywhere}.public-legal nav ol{list-style:none;padding:0}.public-legal li{margin:10px 0;color:var(--theme-muted, #536783)}.legal-company{display:grid;gap:10px;margin-top:20px;font-style:normal;line-height:1.7;color:var(--theme-muted, #536783)}.portal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}.tutor-panel .ai-usage-notice,.school-form .ai-usage-notice{margin:16px 0;padding:12px 14px;border:1px solid var(--theme-border, #dce5f1);border-radius:12px;background:var(--theme-surface, #f7f9fd);color:var(--theme-accent-text, #425875);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.ai-usage-notice a{text-decoration:underline;text-underline-offset:3px}@media (max-width: 640px){.legal-links{justify-content:flex-start;gap:10px 18px}}.teacher-portal{--teacher-sidebar-width: 264px;min-height:100dvh;padding-right:var(--teacher-sidebar-width);background:var(--theme-canvas, #f6f8fc)}.teacher-portal:not(.school-portal){padding-left:var(--teacher-sidebar-width);padding-right:0}.teacher-portal:not(.school-portal) .teacher-sidebar,.teacher-portal:not(.school-portal) .teacher-menu-dialog{inset:0 auto 0 0;border-left:0;border-right:1px solid var(--theme-border, #e7ecf3)}.teacher-settings,.teacher-rewards,.teacher-billing,.teacher-referral-rewards{display:flex;flex-direction:column;gap:24px;min-width:0}.teacher-referral{padding:18px 0;border-top:1px solid var(--theme-border, #e7ecf3)}.teacher-referral h3{overflow-wrap:anywhere}.teacher-settings .account-actions-footer{padding:0;margin:20px 0 0}.teacher-student-billing-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,1fr);align-items:start;gap:28px}.teacher-billing-students,.teacher-billing-summary{display:flex;flex-direction:column;gap:16px;min-width:0}.teacher-billing-summary{padding:20px;border:1px solid var(--theme-border, #e7ecf3);border-radius:18px;background:var(--theme-canvas, #f6f8fc)}.teacher-billing-students>h3,.teacher-billing-summary>h3,.teacher-billing-students>p,.teacher-billing-summary>p{margin:0}.teacher-billing-student-table{width:100%;border-collapse:collapse;table-layout:fixed}.teacher-billing-student-table th,.teacher-billing-student-table td{padding:14px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid var(--theme-border, #e7ecf3)}.teacher-billing-student-table th:last-child,.teacher-billing-student-table td:last-child{width:35%;text-align:right}.teacher-billing-student-table tbody th{font-weight:400}.teacher-billing-student-table strong,.teacher-billing-student-table span{display:block}.teacher-billing-student-table span{margin-top:4px;color:var(--theme-muted, #53647d);font-size:12px}@media (max-width: 1100px){.teacher-student-billing-layout{grid-template-columns:minmax(0,1fr)}}.teacher-topbar{position:sticky;top:0;z-index:18;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px;padding:16px 36px;border-bottom:1px solid var(--theme-border, #e7ecf3);background:var(--theme-surface-glass, #fffffff0);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.teacher-topbar-context{display:flex;flex-direction:column;gap:5px;min-width:0}.teacher-topbar-context>span{font-size:11px;font-weight:600;color:var(--theme-muted, #53647d)}.teacher-topbar-context>strong{font-family:Manrope,sans-serif;font-size:17px;letter-spacing:-.03em;overflow-wrap:anywhere}.teacher-topbar-actions{display:flex;align-items:center;flex-shrink:0;gap:10px}.teacher-account{display:flex;align-items:center;gap:10px;min-width:0;margin-right:8px}.teacher-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border:1px solid var(--theme-accent-border, #dce8fd);border-radius:13px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));font-size:14px;font-weight:750}.teacher-account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.teacher-logout{min-height:40px;padding:10px 12px;font-size:12px}.teacher-sidebar{position:fixed;inset:0 0 0 auto;z-index:20;display:flex;flex-direction:column;gap:28px;width:var(--teacher-sidebar-width);padding:32px 20px 22px;border-left:1px solid var(--theme-border, #e7ecf3);background:var(--theme-surface, #fff);overflow-y:auto}.teacher-sidebar-brand{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:0 12px}.teacher-sidebar-label{padding:6px 10px;border-radius:7px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));font-size:9px;font-weight:750;letter-spacing:1px}.teacher-navigation{display:flex;flex-direction:column;gap:7px}.teacher-navigation-label{padding:0 14px 7px;color:var(--theme-subtle, #65758c);font-size:9px;font-weight:750;letter-spacing:1.2px}.teacher-navigation a{display:flex;align-items:center;gap:12px;min-height:50px;padding:13px 14px;border:1px solid transparent;border-radius:12px;color:var(--theme-muted, #53647d);font-size:13px;font-weight:600;line-height:1.5;transition:background-color .16s ease,color .16s ease}.teacher-navigation a>span{min-width:0;overflow-wrap:anywhere}.teacher-navigation a:hover{background:var(--theme-surface-soft, #f1f5fa);color:var(--theme-text, #19243c)}.teacher-navigation a[aria-current=page]{border-color:var(--theme-accent-border, #dce8fd);background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));font-weight:750}.teacher-navigation-current{margin-left:auto}.teacher-sidebar-note{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:auto;padding:20px 16px;border:1px solid var(--theme-accent-border, #dce8fd);border-radius:16px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue))}.teacher-sidebar-note strong{font-family:Manrope,sans-serif;font-size:14px;line-height:1.6}.teacher-sidebar-note p{margin:0;color:var(--theme-muted, #53647d);font-size:11px}.teacher-sidebar-footer{padding:0 12px;font-size:10px;color:var(--theme-subtle, #65758c)}.teacher-portal .portal-main{width:100%;max-width:1360px;min-width:0;margin:0 auto;padding:32px 36px}.teacher-portal>.account-settings-footer{max-width:1360px;margin:0 auto;padding:20px 36px 32px}.teacher-portal .portal-footer{width:calc(100% - 72px);max-width:1288px;margin:0 auto 32px;padding:20px 24px}.teacher-trial-banner{display:flex;align-items:flex-start;gap:12px;margin:0 0 24px;padding:16px 18px;border:1px solid var(--theme-accent-border, #dce8fd);border-radius:14px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));font-size:12px;line-height:1.7}.teacher-trial-banner>svg{margin-top:2px}.teacher-home{display:flex;flex-direction:column;gap:28px}.teacher-home>.page-heading{margin:0}.teacher-home-tools{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;gap:20px}.teacher-home-tools>.panel{display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}.teacher-home-tools>.panel:first-child{border-color:var(--theme-accent-border, #dce8fd);background:linear-gradient(130deg,var(--theme-surface, #fff),var(--theme-accent-soft, #eff5ff))}.teacher-home-tools>.panel>h2{margin:0;font-size:21px}.teacher-home-tools>.panel>p{margin:0;font-size:13px}.teacher-home-tools>.panel>label{width:100%}.teacher-home-tools>.panel>.button{margin-top:auto}.teacher-home>.schools-page>.page-heading{margin:0}.teacher-home>.schools-page>.page-heading h1{font-size:23px}.school-home>.schools-page>.page-heading{margin:0;padding:28px;border:1px solid var(--theme-border, #e7ecf3);border-radius:18px;background:linear-gradient(110deg,var(--theme-surface, #fff) 55%,var(--theme-accent-soft, #eff5ff))}.school-home>.schools-page>.page-heading .eyebrow{color:var(--theme-accent-text, var(--blue))}.school-home>.schools-page>.page-heading h1{overflow-wrap:anywhere}.teacher-menu-trigger{display:none;min-width:44px;min-height:44px;border:1px solid var(--theme-border, #e7ecf3);border-radius:12px;background:var(--theme-surface, #fff);color:var(--theme-text, #19243c)}.teacher-menu-dialog{position:fixed;inset:0 0 0 auto;width:min(360px,calc(100% - 24px));max-width:none;height:100dvh;max-height:none;margin:0;padding:22px 20px;border:0;border-left:1px solid var(--theme-border, #e7ecf3);background:var(--theme-surface, #fff);color:var(--theme-text, #19243c);overflow-y:auto;overscroll-behavior:contain}.teacher-menu-dialog[open]{display:flex;flex-direction:column;gap:28px}.teacher-menu-dialog::backdrop{background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.teacher-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.teacher-menu-heading h2{font-size:18px}.teacher-menu-heading .icon-button{min-width:44px;min-height:44px}@media (max-width: 1200px){.teacher-account-name{display:none}.teacher-home-tools{grid-template-columns:minmax(0,1fr)}}@media (max-width: 1024px){.teacher-portal{padding-right:0}.teacher-portal:not(.school-portal){padding-left:0}.teacher-sidebar{display:none}.teacher-menu-trigger{display:inline-flex}.teacher-topbar{padding:16px 24px}.teacher-portal .portal-main{padding:28px 24px}.teacher-portal>.account-settings-footer{padding:18px 24px 28px}.teacher-portal .portal-footer{width:calc(100% - 48px)}}@media (max-width: 600px){.teacher-topbar{min-height:76px;gap:12px;padding:12px 16px}.teacher-topbar-context>strong{font-size:14px}.teacher-topbar-context>span{font-size:10px}.teacher-topbar-actions{gap:5px}.teacher-account{display:none}.teacher-logout{min-width:40px;padding:10px}.teacher-logout>span{display:none}.teacher-portal .portal-main{padding:24px 16px}.teacher-portal>.account-settings-footer{padding:16px 16px 24px}.teacher-portal .portal-footer{width:calc(100% - 32px);padding:18px;margin-bottom:20px}.teacher-home{gap:24px}.teacher-home-tools>.panel{padding:22px}.school-home>.schools-page>.page-heading{padding:22px}.teacher-home-tools>.panel>.button{width:100%}.teacher-trial-banner{padding:14px;margin-bottom:20px}}@media (prefers-reduced-motion: reduce){.teacher-navigation a{transition:none}}.portal-layout{min-height:100vh}.portal-header{display:flex;align-items:center;flex-wrap:wrap;gap:24px;padding:20px 5%;background:var(--theme-surface, white);border-bottom:1px solid var(--theme-border, #e2e8f0)}.portal-header>span{margin-left:auto}.portal-navigation{display:flex;flex-wrap:wrap;gap:24px;padding:18px 5%}.portal-navigation a[aria-current=page]{font-weight:700;text-decoration:underline}.portal-main{max-width:1280px;margin:auto;padding:24px}.portal-login{max-width:520px;margin:10vh auto;padding:24px;display:flex;flex-direction:column;gap:20px}@media (max-width: 650px){.portal-header{gap:14px}.portal-header>span{margin-left:0;overflow-wrap:anywhere}.portal-main{padding:16px}}
