:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#c84f00;--color-primary-strong:#9e3d00;--color-primary-soft:#fff0e3;--color-success:#0b8f4d;--color-success-strong:#07663a;--color-success-soft:#e4f7ed;--color-info:#173b66;--color-info-strong:#0d2b4f;--color-info-soft:#eaf1f8;--color-warning:#b66a0b;--color-warning-soft:#fff1d8;--color-danger:#b42338;--color-danger-soft:#fde8eb;--color-coin:#a87500;--color-coin-soft:#fff3bf;--color-background:#fffaf1;--color-surface:#fff;--color-text:#112a46;--color-text-muted:#5f6b76;--color-border:#eee1d1;--radius-card:1.4rem;--shadow-card:0 .8rem 2.25rem #603a1114;--shadow-shell:0 1.5rem 4rem #603a111a;--theme-accent:var(--color-success);--theme-accent-strong:var(--color-success-strong);--theme-accent-soft:var(--color-success-soft);--ink:var(--color-text);--muted:var(--color-text-muted);--paper:var(--color-surface);--line:var(--color-border);--green:var(--color-success);--green-dark:var(--color-success-strong);--green-soft:var(--color-success-soft);--amber:var(--color-primary);--amber-soft:var(--color-primary-soft);--purple-soft:#ece8fb;--shadow:var(--shadow-shell);background:var(--color-background);color:var(--color-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 4%, #e868181f, transparent 24rem), radial-gradient(circle at 92% 7%, #0b8f4d17, transparent 27rem), var(--color-background);min-height:100vh;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.skip-link{z-index:20;background:var(--ink);color:#fff;border-radius:.75rem;padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.dashboard-shell,.mission-shell{min-height:100vh;padding:clamp(1rem,4vw,3rem)}[data-theme=afro-dance-hall]{--theme-accent:#9a296f;--theme-accent-strong:#67164a;--theme-accent-soft:#fae0f0}[data-theme=football]{--theme-accent:#177245;--theme-accent-strong:#0a4b2d;--theme-accent-soft:#dff5e8}[data-theme=creativity-workshop]{--theme-accent:#5965b3;--theme-accent-strong:#374184;--theme-accent-soft:#e8eafd}.app-shell{background:radial-gradient(circle at 96% 2%, #0b8f4d1a, transparent 25rem), radial-gradient(circle at 10% 96%, #e8681814, transparent 30rem), linear-gradient(145deg, #fff 0%, var(--color-background) 48%, #fffdf7 100%), var(--color-background);grid-template-columns:15.75rem minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{border-right:1px solid var(--color-border);height:100vh;color:var(--color-info-strong);background:#fffffff0;flex-direction:column;padding:1.65rem 1rem 1.2rem;display:flex;position:sticky;top:0;box-shadow:.5rem 0 2.5rem #603a110a}.app-brand{gap:.42rem;padding:.25rem .65rem 1.25rem;text-decoration:none;display:grid}.app-brand-name{letter-spacing:-.035em;font-size:1.18rem;font-weight:900;line-height:1}.app-brand-name span:first-child{color:var(--color-primary)}.app-brand-name span:nth-child(2){color:var(--color-info-strong)}.app-brand-name span:last-child{color:var(--color-success)}.app-brand-tagline{color:var(--color-text-muted);font-size:.7rem;font-weight:650;line-height:1.35}.app-sidebar-context{border-top:1px solid var(--color-border);color:var(--color-success-strong);letter-spacing:.1em;text-transform:uppercase;margin:0 .65rem 1rem;padding-top:1rem;font-size:.68rem;font-weight:850}.app-nav-list{gap:.42rem;margin:0;padding:0;list-style:none;display:grid}.app-nav-link{min-height:3rem;color:var(--color-info-strong);border-radius:.85rem;align-items:center;gap:.75rem;padding:.7rem .8rem;font-size:.92rem;font-weight:700;text-decoration:none;display:flex;position:relative}.app-nav-link:hover{background:var(--color-primary-soft);color:var(--color-primary-strong)}.app-nav-link[aria-current=page]{background:var(--color-primary);color:#fff;box-shadow:0 .55rem 1.4rem #c84f0033}.app-nav-link-disabled{cursor:default;opacity:.48}.app-nav-link small{letter-spacing:.04em;text-transform:uppercase;margin-left:auto;font-size:.62rem;font-weight:800}.app-sidebar-signature{border:1px solid var(--color-border);border-radius:999px;grid-template-columns:repeat(3,1fr);width:4.5rem;height:.32rem;margin:auto .65rem 0;display:grid;overflow:hidden}.app-sidebar-signature span:first-child{background:var(--color-primary)}.app-sidebar-signature span:nth-child(2){background:#fff}.app-sidebar-signature span:last-child{background:var(--color-success)}.app-workspace{min-width:0}.app-header{z-index:10;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;gap:1rem;min-height:5.8rem;padding:1rem clamp(1.1rem,4vw,3rem);display:flex;position:sticky;top:0}.app-header-identity{align-items:center;gap:.85rem;display:flex}.app-header-identity>div{gap:.12rem;display:grid}.app-context-icon{background:var(--color-primary-soft);width:2.65rem;height:2.65rem;color:var(--color-primary);border-radius:.9rem;flex:none;place-items:center;display:grid}.app-context-label{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800;line-height:1.2}.app-context-name{color:var(--color-info-strong);font-size:1.05rem}.app-context-detail{color:var(--color-text-muted);font-size:.8rem}.app-header-actions{align-items:center;gap:.75rem;display:flex}.app-sign-out{min-height:2.6rem;color:inherit;cursor:pointer;font:inherit;background:#fff;border:1px solid #edeff3;border-radius:.9rem;align-items:center;gap:.4rem;padding:0 .8rem;font-weight:800;display:inline-flex}@media (max-width:767px){.app-sign-out .child-sign-out-label{display:none}}.app-avatar{background:var(--theme-accent-soft);width:2.8rem;height:2.8rem;color:var(--theme-accent-strong);box-shadow:0 0 0 2px var(--theme-accent-soft);border:2px solid #fff;border-radius:50%;place-items:center;font-size:.95rem;font-weight:900;display:grid}.app-content{background:linear-gradient(115deg,#ffffff9e,#0000 38%),radial-gradient(circle at 95% 8%,#0b8f4d12,#0000 18rem);min-width:0}.app-shell .dashboard-shell,.app-shell .mission-shell{min-height:auto;padding:clamp(1rem,4vw,2.5rem)}.app-mobile-navigation{display:none}.dashboard-panel,.mission-panel{width:min(100%,72rem);margin:0 auto}.mission-panel{border:1px solid var(--line);max-width:52rem;box-shadow:var(--shadow);background:#fffffff5;border-radius:1.75rem;padding:clamp(1.25rem,5vw,3.5rem)}.brand-header{align-items:center;gap:.8rem;margin-bottom:clamp(1.5rem,4vw,3rem);display:flex}.brand-header div:last-child{gap:.15rem;display:grid}.brand-header span{color:var(--muted);font-size:.82rem}.brand-mark{background:var(--green);color:#fff;border-radius:.9rem .9rem .9rem .2rem;place-items:center;width:2.75rem;height:2.75rem;font-size:1.4rem;font-weight:900;display:grid}.welcome-card{background:linear-gradient(135deg, var(--theme-accent-strong), var(--theme-accent));color:#fff;box-shadow:var(--shadow);border-radius:2rem;justify-content:space-between;align-items:center;gap:2rem;padding:clamp(1.5rem,5vw,3.5rem);display:flex;overflow:hidden}.welcome-card .eyebrow,.welcome-card .lead{color:#ffffffc7}.welcome-card h1{color:#fff}.profile-orbit{background:#ffffff1f;border:1px solid #ffffff4d;border-radius:50%;flex:none;place-items:center;width:clamp(5rem,18vw,9rem);height:clamp(5rem,18vw,9rem);font-size:clamp(2.4rem,8vw,4.5rem);display:grid}.eyebrow{color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:800}h1{color:var(--color-info-strong);letter-spacing:-.045em;margin:0;font-size:clamp(2.25rem,7vw,4.4rem);line-height:1.02}h2{letter-spacing:-.025em;color:var(--color-info-strong);margin:clamp(2rem,5vw,3.5rem) 0 1.25rem;font-size:clamp(1.45rem,4vw,2rem)}h3{color:var(--color-info-strong);margin:.25rem 0 .5rem;font-size:1.35rem}p{line-height:1.65}.lead{max-width:45rem;color:var(--muted);margin:1rem 0 0;font-size:clamp(1rem,2.5vw,1.2rem)}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.availability-note{color:var(--muted);margin-top:.75rem;font-size:.9rem;font-weight:700;display:inline-block}.dashboard-card,.mission-card,.exercise-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);box-shadow:var(--shadow-card)}.dashboard-card h2,.dashboard-card h3,.mission-card h2,.mission-card h3{color:var(--color-info-strong)}.dashboard-card{padding:1.5rem}.dashboard-card>p:not(.eyebrow){min-height:3.25rem;color:var(--muted)}.capture-panel{border:1px solid var(--line);background:var(--paper);border-radius:1rem;margin-top:2rem;padding:1.25rem}.capture-panel summary{cursor:pointer;font-weight:800}.capture-panel textarea,.capture-panel select,.dashboard-card select{border:1px solid var(--line);background:#fff;border-radius:.75rem;width:100%;margin:.75rem 0;padding:.8rem}.document-classification{border:1px solid var(--line);border-radius:.75rem;margin:.75rem 0;padding:.75rem 1rem}.document-classification legend{font-weight:800}.document-classification>label{margin:.4rem 0;display:block}.school-actions{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.school-actions button{border:1px solid var(--line);background:var(--paper);border-radius:999px;min-height:2.75rem;padding:.65rem .85rem}.school-actions button.primary-action{background:var(--color-primary);color:#fff;border:0}.school-actions button.primary-action:hover:not(:disabled){background:var(--color-primary-strong)}.school-section-nav{flex-wrap:wrap;gap:.6rem;margin:1.5rem 0 2rem;display:flex}.school-section-nav a{border:1px solid var(--line);background:var(--paper);color:var(--green);border-radius:999px;padding:.65rem .85rem;font-size:.9rem;font-weight:800}.school-section-nav a:hover,.school-section-nav a:focus-visible{border-color:var(--green);background:var(--green-soft)}.school-priority-stack,.school-secondary-stack{gap:1.5rem;display:grid}.school-secondary-stack{margin-top:2.5rem}.school-content-section{scroll-margin-top:1rem}.school-content-section>h2{margin-bottom:.35rem}.school-priority-section{border:1px solid #176b5238;border-left:.4rem solid var(--green);background:var(--green-soft);border-radius:1.25rem;padding:1.5rem}.school-priority-label{color:var(--green);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .35rem;font-size:.82rem;font-weight:900}.school-section-intro{color:var(--muted);margin:0 0 1rem}.school-review-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.8rem;display:grid}.school-summary-card{border:1px solid var(--line);background:var(--paper);border-radius:1rem;padding:1rem}.school-summary-card h3,.school-assignment-list h3{margin:.25rem 0 .5rem}.school-summary-card p:not(.eyebrow){color:var(--muted)}.school-summary-card a{color:var(--green);margin-top:.5rem;font-weight:800;display:inline-block}.school-control-card{border-color:#da8f2273}.school-document-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.school-pdf-viewer{border:1px solid var(--border-color,#d7d7d7);background:#fff;border-radius:.75rem;width:100%;min-height:70vh}.school-image-viewer{object-fit:contain;border:1px solid var(--border-color,#d7d7d7);background:#fff;border-radius:.75rem;width:100%;max-height:70vh}.school-document-list li{border:1px solid var(--line);background:var(--paper);border-radius:.9rem;gap:.2rem;padding:.9rem 1rem;display:grid}.school-document-list span{color:var(--muted);font-size:.9rem}.school-assignment-list{gap:1rem;display:grid}.school-assignment-list h2{margin:.25rem 0 .5rem}.card-featured{background:linear-gradient(145deg, white 72%, var(--color-primary-soft));border-color:#c84f003d}.card-icon{background:var(--color-primary-soft);width:3rem;height:3rem;color:var(--color-primary-strong);border-radius:1rem;place-items:center;margin-bottom:1.25rem;font-size:1.4rem;display:grid}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:2rem;font-size:.9rem;display:flex}.breadcrumb a:hover{color:var(--green)}.mission-meta{flex-wrap:wrap;gap:.65rem;margin-top:1.75rem;display:flex}.mission-meta span,.step-badge,.skill-chip{background:var(--green-soft);color:var(--green-dark);border-radius:999px}.mission-meta span,.step-badge{padding:.55rem .8rem;font-size:.86rem;font-weight:700}.step-badge{margin-bottom:1.25rem;display:inline-flex}.step-list{grid-template-columns:repeat(2,1fr);gap:.75rem;padding:0;list-style:none;display:grid}.step-list li{border:1px solid var(--line);border-radius:1rem;align-items:center;gap:.85rem;padding:.9rem;display:flex}.step-list li>span:last-child{gap:.15rem;display:grid}.step-list small{color:var(--muted)}.step-number{background:var(--purple-soft);border-radius:.75rem;place-items:center;width:2.25rem;height:2.25rem;font-weight:800;display:grid}.mission-card{grid-template-columns:auto 1fr;gap:1.25rem;padding:clamp(1.25rem,4vw,2rem);display:grid}.mission-card h2{margin:0 0 .6rem}.mission-card p:not(.eyebrow){color:var(--muted)}.subject-icon{background:var(--green-soft);width:4rem;height:4rem;color:var(--green);border-radius:1.25rem;place-items:center;font-size:2rem;display:grid}.primary-action,.secondary-action{cursor:pointer;border:0;border-radius:.9rem;justify-content:center;align-items:center;min-height:3rem;padding:.75rem 1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.primary-action{background:var(--color-primary);color:#fff}.primary-action:hover:not(:disabled){background:var(--color-primary-strong)}.primary-action:disabled{cursor:not-allowed;opacity:.5}.secondary-action{background:var(--amber-soft);color:#754700;margin-top:.5rem}.action-link{margin-top:1rem}.skill-chip{border-radius:1rem;gap:.2rem;margin:1.5rem 0;padding:.9rem 1rem;display:grid}.skill-chip span{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.exercise-card{padding:clamp(1.25rem,4vw,2rem)}.exercise-card fieldset{border:0;padding:0}.exercise-card legend{margin-bottom:1.25rem;font-size:clamp(1.2rem,3vw,1.55rem);font-weight:800;line-height:1.35}.choice-list{gap:.75rem;margin-bottom:1.25rem;display:grid}.choice{border:2px solid var(--line);cursor:pointer;border-radius:1rem;align-items:center;gap:.8rem;min-height:3.5rem;padding:.85rem 1rem;display:flex}.choice-selected{border-color:var(--green);background:var(--green-soft)}.choice input{width:1.2rem;height:1.2rem;accent-color:var(--green)}.feedback{border-radius:1rem;margin-top:1.25rem;padding:1rem 1.1rem}.feedback strong,.feedback p{margin:0;display:block}.feedback-success{background:var(--green-soft);color:var(--green-dark)}.feedback-guidance{background:var(--amber-soft);color:#684206}.form-error{color:#8f2929;font-weight:700}.source-note{color:var(--muted);margin:1.25rem 0 0;font-size:.8rem}.history-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.history-list li{border:1px solid var(--line);background:var(--paper);border-radius:.8rem;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;padding:.75rem .9rem;display:flex}.history-list span{color:var(--muted)}.parent-summary-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;margin:1.5rem 0;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:2rem;display:flex}.page-header-action{flex:none}.ui-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);padding:1.5rem}.ui-card h2,.ui-card h3{color:var(--color-info-strong)}.entity-card{align-content:start;gap:.65rem;display:grid}.entity-card h3,.entity-card p{margin:0}.entity-card p{color:var(--color-text-muted)}.entity-card-icon{background:var(--theme-accent-soft);width:2.8rem;height:2.8rem;color:var(--theme-accent-strong);border-radius:.9rem;place-items:center;display:grid}.progress-block{gap:.5rem;display:grid}.progress-label{justify-content:space-between;gap:1rem;font-size:.88rem;display:flex}.progress-track{background:var(--color-border);border-radius:999px;height:.65rem;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--color-success);height:100%;display:block}.status-badge,.coin-badge{border-radius:999px;align-items:center;gap:.4rem;min-height:2rem;padding:.35rem .65rem;font-size:.78rem;font-weight:800;display:inline-flex}.status-badge-info{background:var(--color-info-soft);color:var(--color-info-strong)}.status-badge-success{background:var(--color-success-soft);color:var(--color-success-strong)}.status-badge-warning{background:var(--color-warning-soft);color:var(--color-warning)}.status-badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.coin-badge{background:var(--color-coin-soft);color:#6f5100}.action-button{background:var(--color-primary);color:#fff;border-radius:.9rem;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.action-button:hover{background:var(--color-primary-strong)}.tab-navigation{background:var(--color-surface);border-radius:1rem;gap:.35rem;max-width:100%;padding:.25rem;display:flex;overflow-x:auto}.tab-navigation a{color:var(--color-text-muted);border-radius:.75rem;flex:none;padding:.65rem .85rem;font-size:.9rem;font-weight:750;text-decoration:none}.tab-navigation a[aria-current=page]{background:var(--color-info-soft);color:var(--color-info-strong)}.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius-card);color:var(--color-text-muted);text-align:center;justify-items:center;padding:clamp(2rem,6vw,4rem);display:grid}.empty-state h3{color:var(--color-text);margin-top:.8rem}.empty-state p{max-width:34rem;margin-top:0}@media (max-width:960px){.app-shell{display:block}.app-sidebar{display:none}.app-mobile-navigation{z-index:20;border-bottom:1px solid var(--color-border);background:#fffffff7;display:block;position:sticky;top:0;box-shadow:0 .35rem 1.25rem #603a110f}.app-mobile-navigation summary{min-height:3.5rem;color:var(--color-info-strong);cursor:pointer;align-items:center;gap:.7rem;padding:.8rem 1rem;font-weight:850;list-style:none;display:flex}.app-mobile-brand{gap:.05rem;display:grid}.app-mobile-brand strong{color:var(--color-info-strong);letter-spacing:.02em;font-size:.8rem}.app-mobile-brand strong span:first-child{color:var(--color-primary)}.app-mobile-brand strong span:last-child{color:var(--color-success)}.app-mobile-brand small{color:var(--color-text-muted);font-size:.68rem}.app-mobile-navigation summary::-webkit-details-marker{display:none}.app-mobile-navigation nav{max-height:min(70vh,30rem);padding:0 .75rem .9rem;overflow-y:auto}.app-mobile-navigation .app-nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.app-mobile-navigation .app-nav-link{color:var(--color-text)}.app-mobile-navigation .app-nav-link:hover,.app-mobile-navigation .app-nav-link[aria-current=page]{background:var(--color-primary);color:#fff;box-shadow:none}.app-header{position:static}}@media (max-width:760px){.dashboard-grid,.step-list{grid-template-columns:1fr}.dashboard-card>p:not(.eyebrow){min-height:auto}.page-header{flex-direction:column;align-items:stretch}}@media (max-width:480px){.dashboard-shell,.mission-shell{padding:.75rem}.mission-panel{border-radius:1.25rem;padding:1.2rem}.welcome-card{border-radius:1.4rem;align-items:flex-start}.profile-orbit{width:3.5rem;height:3.5rem;font-size:1.8rem}.brand-header span{display:none}.app-header{min-height:4.6rem;padding:.7rem .85rem}.app-context-detail,.app-context-label{display:none}.app-mobile-navigation .app-nav-list{grid-template-columns:1fr}.app-mobile-navigation .app-nav-link{min-height:2.7rem}.mission-card{grid-template-columns:1fr}.school-priority-section{border-left-width:.3rem;padding:1rem}.school-section-nav a{text-align:center;flex:8rem}.primary-action,.secondary-action{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.child-home,.learning-shell{width:min(100%,78rem);margin:0 auto;padding:clamp(1rem,3vw,2.5rem)}.child-hero,.subject-hero{min-height:11rem;box-shadow:var(--shadow);background:radial-gradient(circle at 86% 25%,#ffffffd1,#0000 8rem),linear-gradient(120deg,#e8f8ef 0%,#f9fffb 46%,#fff1df 100%);border:1px solid #cfe5d8;border-radius:1.5rem;justify-content:space-between;align-items:center;gap:2rem;padding:clamp(1.5rem,4vw,3rem);display:flex;position:relative;overflow:hidden}.child-hero:after,.subject-hero:after{content:"";border:1.3rem solid #0b8f4d21;border-radius:50%;width:16rem;height:10rem;position:absolute;bottom:-4rem;right:-2rem;transform:rotate(-12deg)}.child-hero h1,.subject-hero h1{color:var(--color-info-strong);letter-spacing:-.045em;margin:.2rem 0 .45rem;font-size:clamp(2.2rem,6vw,4rem)}.child-hero .lead,.subject-hero p{margin:0}.child-theme-visual{z-index:1;justify-items:center;min-width:10rem;display:grid}.child-theme-visual span{filter:drop-shadow(0 .8rem 1rem #0b4a2d29);font-size:clamp(4.5rem,9vw,7rem)}.child-theme-visual small{color:var(--color-success-strong);font-weight:800}.home-section{margin-top:1.6rem}.home-section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.home-section-heading h2{margin:0}.home-section-heading a{color:var(--color-info);font-weight:750;text-decoration:none}.home-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;display:grid}.home-subject-card{border:1px solid var(--color-border);background:linear-gradient(145deg, white, var(--color-primary-soft));min-height:10rem;box-shadow:var(--shadow-soft);color:var(--color-info-strong);border-radius:1.2rem;align-content:space-between;padding:1.15rem;text-decoration:none;display:grid}.home-subject-card:nth-child(2n){background:linear-gradient(145deg, white, var(--color-success-soft))}.home-subject-card span{font-size:2.2rem}.home-subject-card strong{font-size:1.05rem}.home-subject-card small{color:var(--color-text-muted)}.home-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.2rem;display:grid}.home-summary-card{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#fff;border-radius:1.25rem;padding:1.4rem}.home-summary-card h2,.home-summary-card h3{margin-top:0}.real-metrics{grid-template-columns:repeat(3,1fr);gap:.7rem;display:grid}.real-metrics span{background:var(--color-success-soft);text-align:center;border-radius:1rem;padding:1rem;display:grid}.real-metrics strong{color:var(--color-success-strong);font-size:1.7rem}.subject-hero{justify-content:flex-start;min-height:10rem;margin-top:1rem}.subject-hero-icon,.course-document-icon{z-index:1;color:#fff;background:linear-gradient(145deg,#52d68d,#08a557);border-radius:1.25rem;flex:none;place-items:center;width:5rem;height:5rem;font-size:2.5rem;display:grid;box-shadow:0 .8rem 1.8rem #0b8f4d2e}.subject-hero-motif{color:#173b661a;font-size:7rem;position:absolute;right:4rem}.learning-shell[data-subject] .subject-hero-icon{background:var(--subject-accent);box-shadow:0 .8rem 1.8rem var(--subject-watermark)}.learning-shell[data-subject] .subject-hero-motif{color:var(--subject-watermark);font-weight:900}.learning-shell[data-subject] .chapter-card{background:linear-gradient(135deg, var(--subject-soft), white);position:relative;overflow:hidden}.learning-shell[data-subject] .chapter-number{background:var(--subject-accent)}.chapter-card-motif{color:var(--subject-watermark,#173b661a);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:2rem;font-weight:900;line-height:1;position:absolute;top:.6rem;right:1rem}.learning-tabs{border:1px solid var(--color-border);background:#fff;border-radius:1rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:.8rem 0 1.2rem;display:grid;overflow:hidden}.learning-tabs a{border-right:1px solid var(--color-border);min-height:4.4rem;color:var(--color-info);text-align:center;justify-content:center;align-items:center;gap:.65rem;padding:.9rem;font-size:1.02rem;font-weight:800;text-decoration:none;display:flex}.learning-tabs a:last-child{border-right:0}.learning-tabs a[aria-current=page]{border-top:.25rem solid var(--color-primary);color:var(--color-primary-strong);background:#fff8f1}.learning-section,.chapter-detail,.class-course-detail{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#fffffff5;border-radius:1.35rem;padding:clamp(1.2rem,3vw,2rem)}.learning-section-heading h2{margin:.15rem 0;font-size:clamp(1.55rem,3vw,2.15rem)}.learning-section-heading p:last-child{color:var(--color-text-muted);margin-top:.3rem}.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.4rem;display:grid}.chapter-card,.class-course-card{min-height:8.5rem;color:var(--color-info-strong);background:linear-gradient(135deg,#f1f7ff,#fff);border:1px solid #dbe8f5;border-radius:1.15rem;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.2rem;text-decoration:none;display:grid}.chapter-card:nth-child(3n+1){background:linear-gradient(135deg, var(--color-success-soft), white)}.chapter-card:nth-child(3n){background:linear-gradient(135deg, var(--color-primary-soft), white)}.chapter-number{background:var(--color-success);color:#fff;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;font-size:1.4rem;font-weight:900;display:grid}.chapter-card span:nth-child(2),.class-course-card span:nth-child(2){gap:.22rem;display:grid}.chapter-card small,.class-course-card small{color:var(--color-primary-strong);text-transform:uppercase;font-weight:800}.chapter-card strong,.class-course-card strong{font-size:1.05rem}.chapter-card em,.class-course-card em{color:var(--color-text-muted);font-size:.85rem;font-style:normal}.learning-empty{border:1px dashed var(--color-border);min-height:15rem;color:var(--color-text-muted);text-align:center;border-radius:1.2rem;align-content:center;justify-items:center;margin-top:1rem;padding:2rem;display:grid}.learning-empty h2,.learning-empty h3{margin-bottom:0}.class-course-list{gap:.8rem;margin-top:1.4rem;display:grid}.class-course-card{min-height:6rem}.class-course-card .course-document-icon{border-radius:1rem;width:3.6rem;height:3.6rem;font-size:1rem}.back-link{color:var(--color-info);margin:1rem 0;font-weight:750;text-decoration:none;display:inline-block}.chapter-detail,.class-course-detail{max-width:68rem;margin:0 auto}.chapter-detail-header,.class-course-detail-header{border-bottom:1px solid var(--color-border);align-items:center;gap:1.2rem;padding-bottom:1.5rem;display:flex}.chapter-detail-header h1,.class-course-detail-header h1{margin:.2rem 0;font-size:clamp(1.8rem,4vw,2.8rem)}.lesson-block{border:1px solid var(--color-border);background:#fff;border-radius:1.1rem;padding:1.4rem}.lesson-block h2{margin-top:0}.lesson-intro,.lesson-key-points,.lesson-warnings{gap:1rem;margin-top:1.2rem;display:flex}.lesson-intro{background:#eef7ff}.lesson-key-points{background:var(--color-success-soft)}.lesson-warnings{background:#fff6e6}.lesson-columns{grid-template-columns:1.25fr .75fr;gap:1rem;margin-top:1rem;display:grid}.vocabulary-list{flex-wrap:wrap;gap:.55rem;display:flex}.vocabulary-list span{background:var(--color-primary-soft);color:var(--color-primary-strong);border-radius:999px;padding:.5rem .75rem;font-weight:750}.lesson-source{color:var(--color-text-muted);font-size:.85rem}.learning-actions{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.learning-actions-heading h2{margin:.15rem 0 1rem}.learning-actions .school-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;display:grid}.learning-actions .school-actions button{background:var(--color-info);color:#fff;min-height:4.2rem;font:inherit;cursor:pointer;border:0;border-radius:1rem;padding:.8rem;font-weight:800}.learning-actions .school-actions button:nth-of-type(2){background:var(--color-success)}.learning-actions .school-actions button:nth-of-type(3),.learning-actions .school-actions button:nth-of-type(4){background:var(--color-primary)}.learning-actions .school-actions button:disabled{cursor:wait;opacity:.65}.learning-actions .mixed-document-choice{grid-template-columns:repeat(2,minmax(0,1fr));max-width:36rem}.learning-actions .mixed-document-choice button:nth-of-type(2){background:var(--color-info)}.mixed-document-switch{margin-top:.8rem}.learning-support{background:linear-gradient(145deg,#f7fbff,#fff);border:1px solid #cfe1f5;border-radius:1.2rem;margin-top:1rem;padding:clamp(1.2rem,3vw,2rem)}.learning-support:not(.learning-support-structured) h3{color:var(--color-info-strong);margin-bottom:.35rem}.learning-support-structured{background:0 0;border:0;padding:0}.support-link-button{border:1px solid var(--color-primary);color:var(--color-primary-strong);cursor:pointer;background:#fff;border-radius:999px;margin-top:.6rem;margin-right:.5rem;padding:.45rem .8rem;font-weight:750}.support-link-button:disabled{border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.learning-support .katex{font-size:1.05em}.learning-support .katex-display,.learning-support p,.learning-support li{overflow-wrap:anywhere}.original-document{margin-top:1.4rem}.original-document-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.course-detail-viewer{min-height:40rem}.school-import-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-card);gap:1rem;padding:1.1rem;display:grid}.school-import-heading{gap:.35rem;display:grid}.school-import-heading h3,.school-import-heading p{margin:0}.school-import-heading p{color:var(--color-text-muted)}.school-file-pages{border-radius:1.2rem;gap:.75rem;min-width:0;display:grid;position:relative}.school-file-pages>p{margin:0}.school-file-pages [role=alert]{color:var(--color-danger);font-weight:600}.school-file-pages-empty{background:#fff0e38c;border:2px dashed #c84f008c;padding:1.5rem 1rem;transition:background-color .15s,border-color .15s}.school-file-pages-dragging{outline:3px dashed var(--color-primary);outline-offset:4px;background:var(--color-primary-soft)}.school-file-drop-overlay{border-radius:inherit;color:var(--color-primary-strong);pointer-events:none;background:#fff0e3eb;place-items:center;margin:0;font-size:1.15rem;font-weight:800;display:grid;position:absolute;inset:0}.school-file-empty{text-align:center;justify-items:center;gap:.6rem;display:grid}.school-file-empty p{margin:0}.school-file-empty-art{width:7.5rem;height:6rem}.school-file-empty-title{font-size:1.25rem;font-weight:800}.school-file-empty-help,.school-file-formats,.school-file-summary,.school-file-drop-hint{color:var(--color-text-muted)}.school-file-formats{font-size:.85rem;font-weight:600}.school-file-when-touch{display:none}@media (hover:none),(pointer:coarse){.school-file-when-pointer{display:none}.school-file-when-touch{display:inline}}.school-file-empty-actions,.school-file-add-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.school-file-add-photo,.school-file-add-files{border:1px solid var(--color-border);background:var(--color-surface);min-height:2.75rem;color:var(--color-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.65rem 1rem;font-weight:700;display:inline-flex}.school-file-add-photo{background:var(--color-primary-soft);color:var(--color-primary-strong);border-color:#f3c9a6}.school-file-add-photo svg,.school-file-add-files svg{width:1.15rem;height:1.15rem}.school-file-add-photo:hover:not(:disabled),.school-file-add-files:hover:not(:disabled){border-color:var(--color-primary)}.school-file-pages button:disabled{cursor:not-allowed;opacity:.5}.school-file-page-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.school-file-page{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1.1rem;gap:.75rem;min-width:0;padding:.6rem;display:flex;box-shadow:0 .5rem 1.5rem #603a1112}.school-file-page-error{border-color:var(--color-danger);background:var(--color-danger-soft)}.school-file-thumb{background:#f6efe4;border-radius:.75rem;flex:0 0 4.5rem;place-items:center;width:4.5rem;height:5.75rem;display:grid;position:relative;overflow:hidden}.school-file-thumb-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.school-file-thumb-icon{color:var(--color-info);justify-items:center;gap:.2rem;font-size:.75rem;font-weight:800;display:grid}.school-file-thumb-icon svg{width:1.75rem;height:1.75rem}.school-file-thumb-other{color:var(--color-danger)}.school-file-page-number{background:var(--color-text);color:#fff;text-align:center;border-radius:999px;min-width:1.5rem;padding:.1rem .4rem;font-size:.8rem;font-weight:800;position:absolute;top:.35rem;left:.35rem}.school-file-page-body{flex:auto;align-content:space-between;gap:.5rem;min-width:0;display:grid}.school-file-page-label{gap:.15rem;min-width:0;display:grid}.school-file-page-label span{overflow-wrap:anywhere;color:var(--color-text-muted);font-size:.9rem}.school-file-page-label [role=alert]{color:var(--color-danger)}.school-file-page-actions{flex-wrap:wrap;gap:.4rem;display:flex}.school-file-page-actions button{border:1px solid var(--color-border);background:var(--color-surface);min-width:2.75rem;min-height:2.75rem;color:var(--color-text);cursor:pointer;border-radius:.75rem;place-items:center;padding:0;display:inline-grid}.school-file-page-actions button:hover:not(:disabled){border-color:var(--color-info)}.school-file-page-actions svg{width:1.15rem;height:1.15rem}.school-file-page-actions .school-file-remove{color:var(--color-danger)}.school-file-page-actions .school-file-remove:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger-soft)}.school-file-arrow-row{display:none}.school-file-add-card{background:#fff0e373;border:2px dashed #c84f008c;border-radius:1.1rem;justify-items:center;gap:.6rem;padding:1rem .75rem;display:grid}.school-file-add-plus{background:var(--color-primary);color:#fff;border-radius:999px;place-items:center;width:2.75rem;height:2.75rem;display:grid}.school-file-drop-hint{font-size:.85rem}@media (min-width:640px){.school-import-panel{padding:1.5rem}.school-file-pages-empty{padding:2rem 1.5rem}.school-file-page-list{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr))}.school-file-page{flex-direction:column}.school-file-thumb{flex-basis:auto;width:100%;height:9rem}.school-file-arrow-row{display:block}.school-file-arrow-column{display:none}.school-file-add-card{align-content:center;min-height:14rem}.school-file-add-actions{flex-direction:column;align-items:stretch}.school-file-add-actions button{white-space:nowrap;padding-inline:.75rem;font-size:.9rem}}.school-import-progress{background:var(--color-info-soft);border:1px solid #173b6640;border-radius:1.1rem;gap:.6rem;padding:1rem;display:grid}.school-import-progress p{margin:0}.school-import-steps{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.school-import-step{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .7rem .3rem .35rem;font-size:.85rem;font-weight:600;display:inline-flex}.school-import-step-dot{background:var(--color-border);width:1.4rem;height:1.4rem;color:var(--color-text);border-radius:999px;place-items:center;font-size:.75rem;font-weight:800;display:inline-grid}.school-import-step-dot svg{width:.9rem;height:.9rem}.school-import-step-current{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-text);font-weight:800}.school-import-step-current .school-import-step-dot{background:var(--color-primary);color:#fff}.school-import-step-done{background:var(--color-success-soft);color:var(--color-success-strong);border-color:#0b8f4d59}.school-import-step-done .school-import-step-dot{background:var(--color-success);color:#fff}.school-import-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.school-import-progress-message{color:var(--color-info);font-weight:800}.school-import-progress-help{color:var(--color-text-muted);font-size:.85rem}.school-import-bar{background:var(--color-surface);border-radius:999px;height:.6rem;position:relative;overflow:hidden}.school-import-bar span{border-radius:inherit;background:var(--color-primary);width:35%;animation:1.4s ease-in-out infinite school-import-sweep;position:absolute;top:0;bottom:0;left:0}@keyframes school-import-sweep{0%{transform:translate(-100%)}to{transform:translate(290%)}}.school-import-cta-row{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.25rem;display:flex}.school-import-cta-row .primary-action.school-import-cta,.school-import-cta{border-radius:.9rem;align-items:center;gap:.5rem;min-height:3.25rem;padding:.85rem 1.4rem;font-size:1.05rem;font-weight:800;display:inline-flex;box-shadow:0 .6rem 1.4rem #c84f0040}.school-import-cta svg{width:1.2rem;height:1.2rem}.school-import-cta:disabled{box-shadow:none}.school-import-spinner{animation:.9s linear infinite school-import-spin}@keyframes school-import-spin{to{transform:rotate(360deg)}}@media (max-width:639px){.school-import-cta-row>button{flex:100%;justify-content:center}}@media (prefers-reduced-motion:reduce){.school-import-bar span{opacity:.45;width:100%;animation:none}.school-import-spinner{animation:none}}.school-course-title{gap:.35rem;font-weight:600;display:grid}.school-course-title input{width:100%;min-height:2.75rem;font-size:1rem}.original-document-file-name{overflow-wrap:anywhere;color:var(--color-text-muted)}.original-document-page-nav{align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.original-document-page-nav ol{flex:1;gap:.4rem;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.original-document-page-nav button{white-space:nowrap;min-width:2.75rem;min-height:2.75rem}.original-document-page-nav button[aria-current=page]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-strong);font-weight:700}.docx-document-state{text-align:center;background:#f4f8fc;border-radius:1rem;place-items:center;min-height:14rem;padding:2rem;display:grid}@media (max-width:840px){.home-subject-grid,.chapter-grid,.home-lower-grid,.lesson-columns,.learning-actions .school-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.child-hero,.subject-hero,.chapter-detail-header,.class-course-detail-header{flex-direction:column;align-items:flex-start}.subject-hero-motif{display:none}.child-hero{flex-direction:row;align-items:center}.child-theme-visual{min-width:4rem}.child-theme-visual span{font-size:3.5rem}.child-theme-visual small{display:none}.chapter-grid,.home-lower-grid,.lesson-columns,.learning-actions .school-actions,.learning-tabs{grid-template-columns:1fr}.learning-tabs a{border-right:0;border-bottom:1px solid var(--color-border);min-height:3.5rem}.learning-tabs a[aria-current=page]{border-top:0;border-left:.25rem solid var(--color-primary)}.chapter-card,.class-course-card{grid-template-columns:auto 1fr}.chapter-card>svg,.class-course-card>svg{display:none}.original-document-heading{flex-direction:column;align-items:stretch}.course-detail-viewer{min-height:28rem}}@media (max-width:480px){.home-subject-grid{grid-template-columns:1fr}}@media (max-width:767px){.katex{vertical-align:middle;max-width:100%;padding-inline-end:.2em;display:inline-block;overflow:auto hidden}}.pending-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pending-spinner{vertical-align:-.15em;border:.15em solid;border-right-color:#0000;border-radius:50%;flex:none;width:1em;height:1em;animation:.7s linear infinite pending-spin;display:inline-block}.pending-button>.pending-spinner{margin-right:.45em}.pending-button[aria-busy=true]{cursor:progress}.pending-link[aria-busy=true]{pointer-events:none}.pending-link__indicator{display:none}.pending-link__indicator[data-pending]{align-items:center;margin-left:.5em;animation:.16s ease-out .1s both pending-appear;display:inline-flex}.pending-link--overlay{position:relative}.pending-link--overlay .pending-link__indicator[data-pending]{background:color-mix(in srgb, currentColor 14%, transparent);border-radius:999px;height:.22rem;margin:0;display:block;position:absolute;bottom:.45rem;left:.9rem;right:.9rem;overflow:hidden}.pending-link__bar{border-radius:inherit;background:currentColor;width:40%;animation:.9s ease-in-out infinite pending-slide;position:absolute;top:0;bottom:0;left:0}@keyframes pending-spin{to{transform:rotate(360deg)}}@keyframes pending-appear{0%{opacity:0}to{opacity:1}}@keyframes pending-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.pending-spinner{border-style:dotted;border-right-color:currentColor;animation:none}.pending-link__indicator[data-pending]{animation:none}.pending-link__bar{opacity:.55;width:100%;animation:none}}
