@import "https://fonts.googleapis.com/css2?family=Literata:wght@500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--ew-bg-deep:#241f49;--ew-bg-panel:#1e1a3d;--ew-bg-panel-alt:#171433;--ew-gold:#d9a441;--ew-gold-dark:#b98726;--ew-coral:#e5484d;--ew-coral-dark:#c53137;--ew-teal:#4c7ef3;--ew-teal-dark:#3a64d8;--ew-violet:#6c5ce7;--ew-violet-dark:#5a48d6;--ew-grass:#22c55e;--ew-grass-dark:#189146;--ew-text:#fafaff;--ew-text-muted:#b8b4d6;--ew-text-on-light:#1f2430;--ew-light-bg:#f7f7fb;--ew-light-panel:#fff;--ew-light-border:#ececf3;--ew-font-display:"Literata", Georgia, serif;--ew-font-body:"Plus Jakarta Sans", system-ui, sans-serif;--ew-radius-sm:8px;--ew-radius-md:12px;--ew-radius-lg:18px;--ew-shadow-soft:0 2px 14px #1f1a4a12;--ew-shadow-glow-gold:0 0 20px #d9a44147;--ew-ease-bounce:cubic-bezier(.16, 1, .3, 1);--ew-duration-fast:.15s;--ew-duration-med:.26s}.ew-font-display{font-family:var(--ew-font-display)}.ew-font-body{font-family:var(--ew-font-body)}.ew-btn{font-family:var(--ew-font-display);border-radius:var(--ew-radius-md);cursor:pointer;transition:transform var(--ew-duration-fast) var(--ew-ease-bounce), box-shadow var(--ew-duration-fast) ease;box-shadow:var(--ew-shadow-soft);border:none;padding:10px 20px;font-weight:600}.ew-btn:hover{transform:translateY(-1px)}.ew-btn:active{transform:translateY(0)}.ew-btn-primary{background:var(--ew-violet);color:#fff}.ew-btn-primary:hover{background:var(--ew-violet-dark)}.ew-btn-gold{background:var(--ew-gold);color:#fff;box-shadow:var(--ew-shadow-glow-gold)}.ew-btn-coral{background:var(--ew-coral);color:#fff}.ew-btn-teal{background:var(--ew-teal);color:#fff}.ew-card-dark{background:var(--ew-bg-panel);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft)}.ew-card-light{background:var(--ew-light-panel);border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);box-shadow:0 1px 8px #1f1a4a0d}:root{font:16px/1.5 var(--ew-font-body,system-ui), "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1f2430;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-bg:var(--ew-bg-deep);--color-card:var(--ew-light-panel);--color-accent:var(--ew-violet);--color-accent-secondary:var(--ew-teal);--color-warning:var(--ew-coral);--color-surface:var(--ew-light-bg);--color-text-primary:var(--ew-text-on-light);--color-text-secondary:#6b7280;background:#f7f7fb}*{box-sizing:border-box}body{margin:0}#root{min-height:100vh}h1,h2,h3,h4{font-weight:700;font-family:var(--ew-font-display);color:#1f2430;margin:0}p{margin:0}button{font:inherit;font-family:var(--ew-font-display);cursor:pointer;font-weight:600}input{font:inherit}.app-shell{background:var(--color-surface);width:100%;min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--ew-light-border);width:264px;color:var(--ew-text-on-light);background:#fff;flex-direction:column;flex-shrink:0;height:100vh;padding:22px 0 16px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo{align-items:center;gap:10px;padding:0 20px 22px;display:flex}.sidebar-logo-icon{background:linear-gradient(135deg, var(--ew-violet) 0%, #8a7cf0 100%);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 4px 10px #6c5ce759}.sidebar-logo-text{font-family:var(--ew-font-display);color:var(--ew-text-on-light);letter-spacing:.01em;font-size:19px;font-weight:700;line-height:1.15}.sidebar-logo-tagline{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11px}.sidebar-nav{flex-direction:column;gap:2px;padding:4px 12px;display:flex}.sidebar-nav-item{border-radius:var(--ew-radius-md);text-align:left;color:#5a6072;font-family:var(--ew-font-body);transition:background var(--ew-duration-fast) ease, color var(--ew-duration-fast) ease;background:0 0;border:none;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.sidebar-nav-item svg{flex-shrink:0}.sidebar-nav-item:hover{color:var(--ew-text-on-light);background:#f4f3fc}.sidebar-nav-item.active{color:var(--ew-violet);background:#efecfd}.sidebar-nav-item-label{flex:1}.sidebar-nav-badge{background:var(--ew-violet);color:#fff;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;line-height:1.5}.sidebar-divider{border:none;border-top:1px solid var(--ew-light-border);margin:14px 20px}.sidebar-section-label{font-family:var(--ew-font-body);text-transform:uppercase;letter-spacing:.07em;color:#9ca0b4;padding:0 20px 8px;font-size:11px;font-weight:700}.sidebar-quick-actions{flex-direction:column;gap:2px;padding:0 12px;display:flex}.sidebar-privacy-card{border-radius:var(--ew-radius-md);color:var(--ew-text-on-light);background:#f4f3fc;margin:16px 16px 0;padding:16px}.sidebar-privacy-card svg{color:var(--ew-violet);margin-bottom:8px}.sidebar-privacy-card p{font-family:var(--ew-font-body);margin-bottom:10px;font-size:12.5px;font-weight:600;line-height:1.5}.sidebar-flex-spacer{flex:1}.sidebar-profile{border-top:1px solid var(--ew-light-border);margin:16px 12px 0;padding-top:14px;position:relative}.sidebar-profile-row{border-radius:var(--ew-radius-md);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:6px 8px;display:flex}.sidebar-profile-row:hover{background:#f4f3fc}.sidebar-profile-avatar{background:var(--ew-violet);color:#fff;width:34px;height:34px;font-family:var(--ew-font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.sidebar-profile-info{flex:1;min-width:0}.sidebar-profile-name{font-family:var(--ew-font-body);color:var(--ew-text-on-light);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.sidebar-profile-role{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11.5px}.sidebar-profile-chevron{color:#9ca0b4;transition:transform var(--ew-duration-fast) ease}.sidebar-profile.open .sidebar-profile-chevron{transform:rotate(180deg)}.sidebar-profile-menu{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-md);z-index:5;background:#fff;flex-direction:column;gap:1px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 4px);left:8px;right:8px;box-shadow:0 8px 24px #1f1a4a24}.sidebar-profile-menu button{border-radius:var(--ew-radius-sm);text-align:left;font-family:var(--ew-font-body);color:var(--ew-text-on-light);background:0 0;border:none;align-items:center;gap:9px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.sidebar-profile-menu button:hover{background:#f4f3fc}.main-content{flex:1;min-width:0;padding:32px 40px;overflow-y:auto}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.pbl-callout{background:#fff7e8;border:1px solid #f5d98a;border-radius:14px;align-items:center;gap:14px;margin-bottom:20px;padding:14px 16px;display:flex}.pbl-callout-icon{flex-shrink:0;font-size:22px}.pbl-callout-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pbl-callout-title{color:#6b4a0f;font-size:14px;font-weight:800}.pbl-callout-text{color:#8a6a24;font-size:12.5px}.pbl-callout-dismiss{color:#b8791a;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 6px;font-size:14px}.pbl-callout-dismiss:hover{color:#6b4a0f}.topbar-greeting h1{font-size:30px;font-weight:700;font-family:var(--ew-font-display);color:var(--color-text-primary);align-items:center;gap:10px;display:flex}.topbar-greeting-wave{transform-origin:70% 70%;animation:2.2s ease-in-out infinite topbar-wave;display:inline-block}@keyframes topbar-wave{0%,60%,to{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}}.topbar-subtitle{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-top:4px;font-size:15px;display:block}.topbar-right{align-items:center;gap:12px;display:flex}.topbar-date-pill{border:1px solid var(--ew-light-border);font-family:var(--ew-font-body);color:var(--ew-text-on-light);box-shadow:var(--ew-shadow-soft);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:13.5px;font-weight:700;display:flex}.topbar-date-pill svg{color:var(--ew-violet)}.topbar-bell{border:1px solid var(--ew-light-border);width:40px;height:40px;color:var(--ew-text-on-light);box-shadow:var(--ew-shadow-soft);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.topbar-bell:hover{color:var(--ew-violet)}.topbar-bell-badge{background:var(--ew-violet);color:#fff;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;font-size:10.5px;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}.quick-stats{flex-wrap:wrap;gap:10px;display:flex}.stat-pill{background:var(--color-card);font-family:var(--ew-font-body);color:var(--color-text-primary);box-shadow:var(--ew-shadow-soft);transition:transform var(--ew-duration-fast) var(--ew-ease-bounce);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;display:flex}.stat-pill:hover{transform:translateY(-1px)}.stat-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.stat-dot-neutral{background:var(--color-accent)}.stat-dot-good{background:var(--color-accent-secondary)}.stat-dot-warning{background:var(--color-warning)}.child-card-row{gap:12px;margin-bottom:24px;padding-bottom:2px;display:flex;overflow-x:auto}.child-card{border:1.5px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft);min-width:190px;transition:border-color var(--ew-duration-fast) ease, transform var(--ew-duration-fast) var(--ew-ease-bounce);background:#fff;flex-shrink:0;align-items:center;gap:10px;padding:12px 18px 12px 12px;display:flex}.child-card:hover{transform:translateY(-2px)}.child-card.active{border-color:var(--ew-violet);background:#faf9ff}.child-card-avatar{width:44px;height:44px;font-family:var(--ew-font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;overflow:hidden}.child-card-info{text-align:left;min-width:0}.child-card-name{font-family:var(--ew-font-display);color:var(--ew-text-on-light);white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:700;overflow:hidden}.child-card-meta{font-family:var(--ew-font-body);color:var(--color-text-secondary);white-space:nowrap;font-size:12px}.child-card-viewall{color:var(--ew-violet);border-style:dashed;justify-content:center;min-width:120px}.child-card-add{border-style:dashed}.child-card-add-icon{background:var(--ew-violet);font-size:20px;font-weight:700}.child-add-billing-note{color:var(--color-text-secondary);margin:4px 0 0;font-size:12.5px}.child-card-viewall svg{color:var(--ew-violet)}.child-card-viewall span{font-family:var(--ew-font-body);color:var(--ew-violet);font-size:13.5px;font-weight:700}.dashboard-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.dashboard-header h2{font-family:var(--ew-font-display)}.grade-badge{color:var(--ew-violet);font-family:var(--ew-font-body);background:#efecfd;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700}.card{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft);background:#fff;margin-bottom:20px;padding:20px 22px}.card h3{margin-bottom:14px;font-size:16px}.loading,.empty{font-family:var(--ew-font-body);color:#8a8f9c;font-size:14px}.section-header{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.section-header h3{font-size:18px}.section-date{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:13px}.focus-list{flex-direction:column;gap:14px;margin-bottom:32px;display:flex}.focus-card{background:var(--color-card);border-radius:var(--ew-radius-lg);border-left:5px solid var(--subject-color,var(--color-accent));box-shadow:var(--ew-shadow-soft);transition:transform var(--ew-duration-med) var(--ew-ease-bounce), box-shadow var(--ew-duration-med) ease;align-items:center;gap:18px;padding:18px 20px;display:flex}.focus-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #6c5ce73d}.focus-card-icon{background:var(--subject-color,var(--color-accent));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex;box-shadow:0 3px 10px #0000001f}.focus-card-body{flex:1;min-width:0}.focus-card-name{font-family:var(--ew-font-display);margin-bottom:2px;font-size:18px;font-weight:700}.focus-card-detail{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:14px}.focus-card-time{font-family:var(--ew-font-body);color:var(--color-text-primary);background:var(--color-surface);white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.subject-math{--subject-color:#4c7ef3}.subject-writing{--subject-color:#f0923b}.subject-reading{--subject-color:#6c5ce7}.subject-bible{--subject-color:#ec6fa6}.subject-science{--subject-color:#22c55e}.subject-history{--subject-color:#14b8a6}.subject-business{--subject-color:#d9a441}.subject-project{--subject-color:#8b5cf6}.subject-default{--subject-color:#8b8fa3}.checklist-rows{flex-direction:column;gap:8px;margin-bottom:32px;display:flex}.checklist-row{background:var(--color-card);border-radius:var(--ew-radius-md);transition:box-shadow var(--ew-duration-fast) ease;align-items:center;gap:14px;padding:12px 16px;display:flex;box-shadow:0 1px 4px #0f1c330d}.checklist-row:hover{box-shadow:var(--ew-shadow-soft)}.checklist-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.checklist-row-subject{font-family:var(--ew-font-display);min-width:140px;color:var(--subject-color,var(--color-text-primary));font-size:14px;font-weight:700}.checklist-row-focus{font-family:var(--ew-font-body);color:var(--color-text-secondary);flex:1;font-size:13px}.btn-pill{background:var(--color-accent);color:#fff;font-family:var(--ew-font-display);white-space:nowrap;box-shadow:var(--ew-shadow-soft);transition:background var(--ew-duration-fast) ease, transform var(--ew-duration-fast) var(--ew-ease-bounce);border:none;border-radius:999px;align-items:center;gap:7px;padding:8px 18px;font-size:13px;font-weight:600;display:inline-flex}.btn-pill:hover{background:var(--ew-violet-dark);transform:translateY(-1px)scale(1.02)}.btn-pill:active{transform:translateY(0)scale(.98)}.btn-pill-small{padding:6px 14px;font-size:12px}.btn-secondary{color:#344261;border-radius:var(--ew-radius-sm);transition:border-color var(--ew-duration-fast) ease;background:#fff;border:1px solid #d8dbe2;padding:8px 14px;font-size:14px}.btn-secondary:hover{border-color:var(--color-accent)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-small{margin-top:8px;padding:4px 10px;font-size:12px}.btn-primary{background:var(--color-accent);color:#fff;border-radius:var(--ew-radius-sm);box-shadow:var(--ew-shadow-soft);transition:background var(--ew-duration-fast) ease, transform var(--ew-duration-fast) var(--ew-ease-bounce);border:none;padding:9px 18px;font-size:14px}.btn-primary:hover{background:var(--ew-violet-dark);transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-backdrop{z-index:100;background:#0f1c338c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{border-radius:var(--ew-radius-lg);background:#fff;flex-direction:column;gap:14px;width:380px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);padding:24px;display:flex;overflow-y:auto;box-shadow:0 10px 30px #00000040}.modal-field{flex-direction:column;gap:6px;display:flex}.modal-field label{font-family:var(--ew-font-body);color:#44485a;font-size:13px;font-weight:600}.modal-field input,.modal-field textarea{font-family:var(--ew-font-body);border-radius:var(--ew-radius-sm);resize:vertical;border:1px solid #d8dbe2;padding:8px 10px;font-size:14px}.status-toggle{gap:8px;display:flex}.status-toggle-btn{border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:#44485a;background:#fff;border:1px solid #d8dbe2;flex:1;padding:8px 0;font-size:13px}.status-toggle-btn.status-toggle-completed.active{color:#1d7a3e;background:#e3f6e9;border-color:#1d7a3e}.status-toggle-btn.status-toggle-partial.active{color:#9a6300;background:#fdf0db;border-color:#9a6300}.status-toggle-btn.status-toggle-skipped.active{color:#b3261e;background:#fbe5e3;border-color:#b3261e}.modal-error{font-family:var(--ew-font-body);color:#b3261e;font-size:13px}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.progress-pill-row{flex-wrap:wrap;gap:12px;margin-bottom:32px;display:flex}.progress-pill{background:var(--color-card);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft);font-family:var(--ew-font-body);transition:transform var(--ew-duration-fast) var(--ew-ease-bounce);align-items:center;gap:10px;padding:12px 18px;font-size:14px;font-weight:600;display:flex}.progress-pill:hover{transform:translateY(-2px)}.progress-pill-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;display:flex}.progress-pill-good .progress-pill-icon{background:var(--color-accent-secondary)}.progress-pill-warning .progress-pill-icon{background:var(--color-warning)}.progress-pill-neutral .progress-pill-icon{background:#9aa5bd}.progress-pill-name{font-family:var(--ew-font-display);color:var(--color-text-primary);font-size:13px;font-weight:700}.progress-pill-pct{color:var(--color-text-secondary);font-size:13px;font-weight:700}.sessions-table{border-collapse:collapse;width:100%;font-family:var(--ew-font-body);font-size:13px}.sessions-table th{font-family:var(--ew-font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:11px}.sessions-table th,.sessions-table td{text-align:left;border-bottom:1px solid #eceef2;padding:8px 10px}.sessions-table .session-status-completed{color:#1d7a3e;font-weight:600}.sessions-table .session-status-partial{color:#9a6300;font-weight:600}.sessions-table .session-status-skipped{color:#b3261e;font-weight:600}.chat-fab{background:var(--color-accent);color:#fff;width:58px;height:58px;box-shadow:var(--ew-shadow-soft), 0 6px 20px #6c5ce773;z-index:90;transition:transform var(--ew-duration-fast) var(--ew-ease-bounce);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex;position:fixed;bottom:28px;right:28px}.chat-fab:hover{transform:scale(1.08)}.chat-drawer-backdrop{z-index:95;opacity:0;pointer-events:none;transition:opacity var(--ew-duration-med) ease;background:#0f1c3359;position:fixed;inset:0}.chat-drawer-backdrop.open{opacity:1;pointer-events:auto}.chat-drawer{width:360px;max-width:calc(100vw - 32px);transition:transform var(--ew-duration-med) ease;z-index:100;background:#fff;flex-direction:column;padding:18px 18px 14px;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 30px #0f1c3333}.chat-drawer.chat-drawer-open{transform:translate(0)}.chat-drawer-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.chat-drawer-header h3{font-size:16px}.chat-drawer-close{color:var(--color-text-secondary);background:0 0;border:none;padding:4px;font-size:22px;line-height:1}.chat-drawer-close:hover{color:var(--color-text-primary)}.chat-messages{flex-direction:column;flex:1;gap:10px;margin-bottom:12px;display:flex;overflow-y:auto}.chat-message{font-family:var(--ew-font-body);border-radius:var(--ew-radius-sm);padding:10px 12px;font-size:14px;line-height:1.4}.chat-message p{white-space:pre-wrap}.chat-message-user{background:#e8edf7;align-self:flex-end}.chat-message-assistant{background:#f3f4f6;align-self:flex-start}.chat-empty{text-align:center;color:#9aa0ab;flex:1;justify-content:center;align-items:center;padding:24px;font-size:13px;display:flex}.agent-calls-label{color:#9aa0ab;margin-top:6px;font-size:11px;display:block}.chat-loading{color:#8a8f9c;font-size:13px}.chat-input-row{gap:8px;display:flex}.chat-input-row input{border-radius:var(--ew-radius-sm);border:1px solid #d8dbe2;flex:1;padding:9px 12px;font-size:14px}.chat-input-row button{background:var(--color-accent);color:#fff;border-radius:var(--ew-radius-sm);border:none;padding:9px 16px;font-size:14px}.chat-input-row button:disabled{opacity:.6;cursor:not-allowed}.eduworld-banner{background:linear-gradient(135deg, var(--ew-bg-panel) 0%, var(--ew-bg-panel-alt) 100%);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft);color:var(--ew-text);border:none;margin-bottom:20px;padding:22px 24px;position:relative;overflow:hidden}.eduworld-banner:after{content:"";background:radial-gradient(circle,#d9a44159 0%,#d9a44100 70%);border-radius:50%;width:140px;height:140px;position:absolute;top:-40px;right:-40px}.eduworld-banner h3{font-family:var(--ew-font-display);color:var(--ew-text);margin-bottom:6px;font-size:17px}.eduworld-banner p{font-family:var(--ew-font-body);color:var(--ew-text-muted);margin-bottom:16px;font-size:13px;line-height:1.5}.eduworld-banner-cta{background:var(--ew-gold);color:#241a05;font-family:var(--ew-font-body);box-shadow:var(--ew-shadow-glow-gold);border:none;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:700;display:inline-flex}.eduworld-summary{border-top:1px solid #ffffff1f;align-items:center;gap:16px;margin-top:18px;padding-top:16px;display:flex;position:relative}.eduworld-avatar-wrap{background:#ffffff14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.eduworld-stats{flex-wrap:wrap;gap:24px;display:flex}.eduworld-stat{flex-direction:column;display:flex}.eduworld-stat-value{font-family:var(--ew-font-display);color:var(--ew-gold);font-size:19px;font-weight:700}.eduworld-stat-label{font-family:var(--ew-font-body);color:var(--ew-text-muted);font-size:12px}.sidebar-manage-pins{color:#fff;background:#ffffff14;border-color:#ffffff40;margin-top:10px}.sidebar-manage-pins:hover{background:#ffffff24;border-color:#fff6}.pin-family-code-label{font-family:var(--ew-font-body);color:#44485a;font-size:14px}.pin-family-code{font-family:var(--ew-font-display);letter-spacing:.08em;color:var(--color-accent);border-radius:var(--ew-radius-sm);background:#2e59471a;padding:2px 8px;font-weight:700}.pin-instructions{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:13px}.pin-row{gap:8px;display:flex}.pin-row input{flex:1}.pin-status-saved{font-family:var(--ew-font-body);color:#1d7a3e;font-size:12px;font-weight:600}.modal-section-heading{border-top:1px solid var(--color-border,#e5e5e5);margin-top:24px;padding-top:16px}.typing-settings-row .pin-row{align-items:center}.typing-toggle{cursor:pointer;background:#c9ccc7;border:none;border-radius:999px;flex-shrink:0;width:42px;height:24px;padding:3px;transition:background .15s}.typing-toggle.is-on{background:#2e5947}.typing-toggle:disabled{opacity:.6;cursor:default}.typing-toggle-knob{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;display:block;box-shadow:0 1px 3px #00000040}.typing-toggle.is-on .typing-toggle-knob{transform:translate(18px)}.typing-toggle-state{font-family:var(--ew-font-body);color:var(--color-text-secondary);min-width:24px;font-size:13px;font-weight:600}.curriculum-section h3{margin-bottom:12px}.curriculum-list{flex-direction:column;gap:10px;display:flex}.curriculum-card{background:var(--color-surface);border-radius:var(--ew-radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.curriculum-card--linked{flex-direction:column;align-items:stretch}.curriculum-placement-actions{flex-wrap:wrap;gap:8px;display:flex}.curriculum-subject{font-family:var(--ew-font-display);color:var(--color-text-primary);font-size:14px;font-weight:700}.curriculum-header{justify-content:space-between;align-items:center;display:flex}.curriculum-lesson-count{font-family:var(--ew-font-body);color:var(--color-accent);font-size:12px;font-weight:600}.curriculum-lesson-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.curriculum-lesson-list li{font-family:var(--ew-font-body);color:var(--color-text-secondary);border-radius:var(--ew-radius-sm);background:#fff;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.curriculum-error{margin-top:6px;font-size:12px}.behaviors-modal-card{width:520px;max-height:85vh;overflow-y:auto}.award-behavior-btn{background:var(--ew-gold);color:var(--ew-text-on-light);box-shadow:var(--ew-shadow-glow-gold)}.award-behavior-btn:hover{background:var(--ew-gold-dark)}.behavior-list{flex-direction:column;gap:8px;margin:14px 0;display:flex}.behavior-row{background:var(--color-surface);border-radius:var(--ew-radius-sm);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.behavior-row-icon{font-size:20px}.behavior-row-body{flex-direction:column;flex:1;min-width:120px;display:flex}.behavior-row-name{font-family:var(--ew-font-display);color:var(--color-text-primary);font-size:14px;font-weight:700}.behavior-row-desc{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:12px}.behavior-row-points{font-family:var(--ew-font-display);border-radius:999px;padding:2px 10px;font-size:14px;font-weight:700}.behavior-row-points.is-positive{color:#1d7a3e;background:#e3f6e9}.behavior-row-points.is-negative{color:#b3261e;background:#fbe5e3}.behavior-form{border-top:1px solid var(--ew-light-border);margin-top:10px;padding-top:14px}.behavior-form h4{margin-bottom:10px;font-size:15px}.behavior-form-row{flex-wrap:wrap;gap:16px;display:flex}.behavior-form-row .modal-field{flex:1;min-width:140px}.icon-picker{flex-wrap:wrap;gap:6px;display:flex}.icon-picker-btn{background:var(--color-surface);border-radius:var(--ew-radius-sm);cursor:pointer;border:2px solid #0000;padding:6px 8px;font-size:18px}.icon-picker-btn.active{border-color:var(--color-accent);background:#2e59471a}.behavior-chip-section{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:14px 0 8px;font-size:13px}.behavior-chip-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;display:grid}.behavior-chip{background:var(--color-surface);border-radius:var(--ew-radius-md);cursor:pointer;transition:transform var(--ew-duration-fast) var(--ew-ease-bounce);border:none;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.behavior-chip:hover{transform:translateY(-2px)scale(1.03)}.behavior-chip:disabled{opacity:.5;cursor:not-allowed}.behavior-chip.is-positive{box-shadow:inset 0 0 0 2px #c8ecd4}.behavior-chip.is-negative{box-shadow:inset 0 0 0 2px #f6cfcb}.behavior-chip-icon{font-size:22px}.behavior-chip-name{font-family:var(--ew-font-body);text-align:center;color:var(--color-text-primary);font-size:12px}.behavior-chip-points{font-family:var(--ew-font-display);font-size:13px;font-weight:700}.subject-chip-row{flex-wrap:wrap;gap:6px;display:flex}.subject-chip{background:var(--color-surface);font-family:var(--ew-font-body);cursor:pointer;border:2px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px}.subject-chip.active{border-color:var(--color-accent);background:#2e59471a;font-weight:600}.character-lesson-card{width:560px;max-height:85vh;overflow-y:auto}.character-section{margin-bottom:18px}.character-section h4{font-family:var(--ew-font-display);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px;font-size:14px}.character-story{color:var(--color-text-primary);white-space:pre-wrap;font-size:15px;line-height:1.6}.character-section ul{margin:0;padding-left:20px}.character-section ul li{margin-bottom:6px;font-size:14px}.character-challenge{border-radius:var(--ew-radius-md);background:#ffd16626;padding:14px 16px}.character-parent-guide{background:var(--color-surface);border-radius:var(--ew-radius-md);padding:14px 16px}.character-watch-for{color:var(--color-text-secondary);margin-top:8px;font-size:13px;font-style:italic}.curriculum-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.curriculum-section-header h3{margin:0}.add-subject-card{width:560px;max-height:85vh;overflow-y:auto}.curriculum-lesson-actions{gap:6px;display:flex}.sidebar-log-out{color:#fff;background:#ffffff14;border-color:#ffffff40;margin-top:10px}.sidebar-log-out:hover{background:#ffffff24;border-color:#fff6}.year-plan-card{width:640px;max-height:85vh;overflow-y:auto}.year-plan-subject{border-bottom:1px solid #e8e8ec;margin-bottom:24px;padding-bottom:16px}.year-plan-subject:last-of-type{border-bottom:none}.year-plan-subject-name{color:var(--ew-violet);margin-bottom:12px;font-size:16px;font-weight:700}.year-plan-unit{background:#f7f7f9;border-radius:10px;margin-bottom:10px;padding:14px 16px}.year-plan-unit-header{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.year-plan-unit-name{font-size:14px;font-weight:700}.year-plan-unit-pacing{color:var(--ew-violet);white-space:nowrap;background:#2e59471a;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.year-plan-unit-description{color:#555;margin:0 0 8px;font-size:13px;line-height:1.5}.year-plan-unit-milestones{margin:0;padding-left:18px}.year-plan-unit-milestones li{color:#444;margin-bottom:3px;font-size:13px}.mastery-needs-practice{color:#8a1f1f;background:#fdeaea}.mastery-developing{color:#8a6d1f;background:#fff6e0}.mastery-strong{color:#1f6d2f;background:#eaf6ea}.mastery-mastered{color:#1f3d8a;background:#e6f0ff}.dashboard-grid{grid-template-columns:1fr 340px;align-items:start;gap:20px;display:grid}.dashboard-grid-full{grid-column:1/-1}.card-title-row{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.schedule-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.schedule-card-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.icon-btn{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);width:36px;height:36px;color:var(--color-text-secondary);background:#fff;flex-shrink:0;justify-content:center;align-items:center;display:flex}.icon-btn:hover{color:var(--ew-violet);border-color:var(--ew-violet)}.schedule-menu-wrap{position:relative}.schedule-menu{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-md);z-index:6;background:#fff;flex-direction:column;gap:1px;min-width:200px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #1f1a4a24}.schedule-menu button{border-radius:var(--ew-radius-sm);text-align:left;font-family:var(--ew-font-body);color:var(--ew-text-on-light);white-space:nowrap;background:0 0;border:none;align-items:center;gap:9px;padding:9px 10px;font-size:13px;font-weight:600;display:flex}.schedule-menu button:hover{background:#f4f3fc}.schedule-item{align-items:center;gap:14px;padding:13px 0;display:flex}.schedule-item-time{width:64px;color:var(--color-text-secondary);flex-shrink:0;font-size:12.5px;font-weight:700}.schedule-item-icon{background:var(--subject-color,var(--ew-violet));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.schedule-item-body{flex:1;min-width:0}.schedule-item-title-row{align-items:center;gap:8px;display:flex}.schedule-item-title{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:14.5px;font-weight:700}.schedule-item-tag{font-family:var(--ew-font-body);background:color-mix(in srgb, var(--subject-color,var(--ew-violet)) 14%, white);color:var(--subject-color,var(--ew-violet));border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700}.schedule-item-desc{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-top:2px;font-size:13px}.schedule-item-status{font-family:var(--ew-font-body);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.schedule-item-status.is-completed{color:var(--ew-grass-dark)}.schedule-item-status.is-partial{color:var(--ew-gold-dark)}.schedule-item-status.is-skipped,.schedule-item-status.is-not-started{color:#9ca0b4}.schedule-item-chevron{color:#c3c6d4;background:0 0;border:none;flex-shrink:0;padding:4px;display:flex}.schedule-item-chevron:hover{color:var(--ew-violet)}.today-divider{border:none;border-top:1px solid var(--ew-light-border);margin:0}.flex-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ew-gold-dark);margin:18px 0 4px;font-size:11px;font-weight:700}.schedule-footer{border-radius:var(--ew-radius-md);background:#f7f7fb;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;padding:16px 18px;display:flex}.schedule-footer-left{align-items:center;gap:12px;display:flex}.schedule-footer-icon{width:38px;height:38px;color:var(--ew-violet);background:#efecfd;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.schedule-footer-title{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:14px;font-weight:700}.schedule-footer-subtitle{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:12.5px}.glance-row{font-family:var(--ew-font-body);color:var(--ew-text-on-light);align-items:center;gap:10px;padding:8px 0;font-size:13.5px;font-weight:600;display:flex}.glance-row svg{flex-shrink:0}.glance-row-good svg{color:var(--ew-grass-dark)}.glance-row-info svg{color:var(--ew-teal)}.glance-row-neutral svg{color:var(--ew-violet)}.glance-row-warning svg{color:var(--ew-coral)}.card-view-all{text-align:center;border:none;border-top:1px solid var(--ew-light-border);width:100%;font-family:var(--ew-font-body);color:var(--ew-violet);background:0 0;margin-top:6px;padding-top:10px;font-size:13px;font-weight:700;display:block}.review-row{border-bottom:1px solid var(--ew-light-border);align-items:flex-start;gap:10px;padding:9px 0;display:flex}.review-row:last-of-type{border-bottom:none}.review-row-avatar{background:var(--ew-violet);color:#fff;width:30px;height:30px;font-family:var(--ew-font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.review-row-body{min-width:0}.review-row-name{font-family:var(--ew-font-body);color:var(--ew-text-on-light);font-size:13.5px;font-weight:700;display:block}.review-row-detail{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-top:1px;font-size:12.5px;display:block}.session-compact-list{flex-direction:column;display:flex}.session-compact-row{border-bottom:1px solid var(--ew-light-border);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:13px;display:flex}.session-compact-row:last-child{border-bottom:none}.session-compact-subject{color:var(--color-text-primary);font-weight:600}.session-compact-status{text-transform:capitalize;font-size:12px;font-weight:600}.session-compact-date{color:var(--color-text-secondary);white-space:nowrap;font-size:12px}.sidebar-child-item{position:relative;padding-left:30px!important}.sidebar-child-ribbon{border-radius:2px;width:3px;position:absolute;top:10px;bottom:10px;left:14px}.sidebar-child-grade,.sidebar-family-label{color:#faf8f38c!important}.fam-today-item{grid-template-columns:68px 4px 26px 1fr!important}.fam-avatar{width:26px;height:26px;font-family:var(--ew-font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.fam-child-tag{color:var(--color-text-secondary);text-transform:none;letter-spacing:0;font-weight:400}.sidebar-family-item{border-left:3px solid var(--ew-gold);color:#fff;cursor:pointer;text-align:left;background:#ffffff14;border-top:none;border-bottom:none;border-right:none;align-items:center;gap:11px;width:100%;padding:12px 24px;font-size:14px;font-weight:700;display:flex}.sidebar-family-item:hover{background:#ffffff1f}.sidebar-family-divider{border:none;border-top:1px solid #ffffff1f;margin:14px 22px}.fam-grid{align-items:start;gap:4px 12px;margin-top:10px;display:grid}.fam-grid-header{font-family:var(--ew-font-display);color:var(--color-text-primary);border-bottom:2px solid var(--ew-light-border);align-items:center;gap:7px;margin-bottom:4px;padding-bottom:10px;font-size:13px;font-weight:700;display:flex}.fam-grid-header-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.fam-grid-time{color:var(--color-text-secondary);white-space:nowrap;padding-top:10px;font-size:12px;font-weight:700}.fam-grid-cell{min-height:18px;padding:3px 0}.fam-grid-block{background:var(--color-surface);border-left:3px solid;border-radius:6px;margin-bottom:6px;padding:8px 10px}.fam-grid-block.is-flex{opacity:.9}.fam-grid-subject{text-transform:uppercase;letter-spacing:.02em;color:var(--ew-violet);font-size:11.5px;font-weight:700}.fam-grid-focus{color:var(--color-text-primary);margin-top:2px;font-size:12.5px;line-height:1.35}.fam-grid-flex-section{margin-top:24px}.fam-grid-block.is-clickable{cursor:pointer;transition:box-shadow .15s,transform .15s}.fam-grid-block.is-clickable:hover{transform:translateY(-1px);box-shadow:0 2px 10px #2e594724}.lesson-resources-card{width:560px;max-height:85vh;overflow-y:auto}.lesson-resources-skills{border-top:1px solid var(--ew-light-border);margin-top:18px;padding-top:16px}.lesson-resources-skills h4{margin-bottom:10px;font-size:14px}.pending-requests-list{flex-direction:column;gap:10px;max-height:400px;margin:16px 0;display:flex;overflow-y:auto}.pending-request-row{background:#f4f3fc;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.pending-request-info{flex-direction:column;gap:2px;display:flex}.pending-request-child{font-size:13px;font-weight:700}.pending-request-focus{color:var(--color-text-secondary);font-size:12.5px}.pending-request-actions{flex-shrink:0;gap:8px;display:flex}.project-approval-detail{width:440px}.project-approval-deliverable{color:var(--color-text-secondary);background:#f4f3fc;border-radius:10px;padding:10px 12px;font-size:13.5px}.project-milestone-list{flex-direction:column;gap:6px;max-height:220px;display:flex;overflow-y:auto}.project-milestone-row{background:#fafafc;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.project-milestone-check{color:var(--ew-light-border);flex-shrink:0;font-size:14px;line-height:1.4}.project-milestone-check.done{color:#1d7a3e}.project-milestone-info{flex-direction:column;gap:2px;display:flex}.project-milestone-title{font-size:13px;font-weight:600}.project-milestone-note{color:var(--color-text-secondary);font-size:12px}.reward-tier-picker{gap:8px;display:flex}.reward-tier-btn{border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:#44485a;background:#fff;border:1px solid #d8dbe2;flex:1;padding:8px 0;font-size:13px;font-weight:600}.reward-tier-btn.active{border-color:var(--ew-gold-dark);color:var(--ew-gold-dark);background:#fbf3e1}.reward-tier-rubric{color:var(--color-text-secondary);margin-top:2px;font-size:12.5px}.project-approval-success{color:#1d7a3e;background:#e3f6e9;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600}.materials-list{flex-direction:column;gap:10px;display:flex}.materials-row{border:1px solid var(--ew-light-border);background:#fafafc;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.materials-row-main{flex-shrink:0;align-items:center;gap:10px;min-width:220px;display:flex}.materials-row-item{font-size:14px;font-weight:700}.materials-necessity{font-family:var(--ew-font-body);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.materials-necessity-required{color:#b3261e;background:#fbe5e3}.materials-necessity-recommended{color:var(--ew-gold-dark);background:#fbf3e1}.materials-necessity-optional{color:#66697a;background:#eef0f5}.materials-row-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.materials-row-qty{color:var(--color-text-primary);font-size:12.5px;font-weight:600}.materials-row-needed-by,.materials-row-substitutes{color:var(--color-text-secondary);font-size:12px}.materials-row-cost{color:var(--ew-gold-dark);flex-shrink:0;font-size:13px;font-weight:700}.project-activity-list{flex-direction:column;gap:8px;display:flex}.project-activity-row{border:1px solid var(--ew-light-border);background:#fafafc;border-radius:10px;overflow:hidden}.project-activity-row-head{cursor:pointer;text-align:left;width:100%;font-family:var(--ew-font-body);background:0 0;border:none;align-items:center;gap:12px;padding:12px 14px;display:flex}.project-activity-chevron{color:var(--color-text-secondary);flex-shrink:0;font-size:12px}.project-activity-row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.project-activity-child{font-size:13px;font-weight:700}.project-activity-title{color:var(--color-text-secondary);font-size:12.5px}.project-activity-status{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:700}.project-activity-status--awaiting_parent{color:var(--ew-violet);background:#f1f0fb}.project-activity-status--active{color:var(--ew-gold-dark);background:#fbf3e1}.project-activity-status--completed{color:#1d7a3e;background:#e3f6e9}.project-activity-status--available{color:#b8791a;background:#fff7e8}.project-activity-detail{flex-direction:column;gap:10px;padding:0 14px 14px;display:flex}.project-activity-progress{color:var(--color-text-primary);margin:0;font-size:12.5px;font-weight:600}.project-activity-reward{color:#1d7a3e;margin:0;font-size:12.5px}.working-level-row{border-bottom:1px solid #eee;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.working-level-subject-name{min-width:110px;font-size:14px;font-weight:700}.working-level-toggle{flex-shrink:0}.working-level-grade-input{border:1px solid #ccc;border-radius:8px;width:140px;padding:8px 10px;font-size:13px}.working-level-notes-input{border:1px solid #ccc;border-radius:8px;flex:1;min-width:140px;padding:8px 10px;font-size:13px}.tour-card{text-align:center;max-width:420px;padding-top:44px;position:relative}.tour-skip{color:#8a8f9c;cursor:pointer;background:0 0;border:none;font-size:13px;text-decoration:underline;position:absolute;top:16px;right:18px}.tour-icon{margin-bottom:12px;font-size:44px}.tour-card h3{margin-bottom:12px;font-family:Literata,Georgia,serif;font-size:20px}.tour-body{color:#44485a;margin-bottom:20px;font-size:14.5px;line-height:1.6}.tour-dots{justify-content:center;gap:6px;margin-bottom:20px;display:flex}.tour-dot{background:#e4e9e4;border-radius:50%;width:7px;height:7px}.tour-dot.active{background:#6c5ce7}.tour-quill-toggle{cursor:pointer;justify-content:center;align-items:center;gap:10px;margin:-6px 0 20px;font-size:14px;font-weight:700;display:flex}.tour-quill-toggle input{accent-color:#6c5ce7;width:16px;height:16px}.tour-quill-error{color:#a23b3b;margin:-8px 0 16px;font-size:13px}.first-time-tip{background:#f3f0fc;border:1px solid #d9cff5;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.first-time-tip-icon{font-size:18px;line-height:1.4}.first-time-tip p{color:#443f5c;flex:1;margin:0;font-size:13.5px;line-height:1.5}.first-time-tip-dismiss{color:#8a8f9c;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1}.fine-tune-toggle{margin:12px 0 20px;font-size:13.5px}.year-plan-unit-book{color:#6b7280;margin:4px 0;font-size:13px}.year-plan-unit-project{background:#fdf6e3;border-left:3px solid #c9a03c;border-radius:4px;margin:8px 0;padding:10px 14px}.year-plan-unit-project-title{margin:0 0 4px;font-size:13.5px;font-weight:700}.year-plan-unit-project-description{color:#44485a;margin:0;font-size:13px;line-height:1.5}.curriculum-show-all{margin-top:10px;font-size:13px}.curriculum-switch-projects{margin-top:14px;font-size:13px}.lr-backdrop{z-index:1000;background:#212b268c;justify-content:center;align-items:center;padding:32px 20px;display:flex;position:fixed;inset:0}.lr-notebook{flex-direction:column;width:100%;max-width:760px;max-height:90vh;display:flex}.lr-tabs{gap:6px;padding-left:24px;display:flex}.lr-tab{color:#6b7280;cursor:pointer;background:#f4f3fc;border:none;border-radius:10px 10px 0 0;padding:10px 22px 12px;font-family:Literata,Georgia,serif;font-size:14px;font-weight:600;transition:background .15s,color .15s;position:relative;top:2px}.lr-tab:hover{background:#dee6dd}.lr-tab.active{color:#6c5ce7;background:#faf8f3;top:0;box-shadow:0 -2px 8px #2e59470f}.lr-page{background:#faf8f3;border-left:4px solid #c9a03c;border-radius:0 12px 12px;padding:36px 40px 44px;position:relative;overflow-y:auto;box-shadow:0 16px 48px #212b2638}.lr-close{color:#8a8f9c;cursor:pointer;background:0 0;border:none;border-radius:50%;width:28px;height:28px;font-size:16px;position:absolute;top:20px;right:24px}.lr-close:hover{color:#6c5ce7;background:#f4f3fc}.lr-title{color:#1f2430;margin:0 0 6px;padding-right:40px;font-family:Literata,Georgia,serif;font-size:26px;font-weight:700}.lr-objective{color:#6b7280;margin:0 0 28px;font-size:14.5px;font-style:italic}.lr-section{margin-bottom:28px}.lr-section-label{text-transform:uppercase;letter-spacing:.06em;color:#c9a03c;margin-bottom:12px;font-size:12px;font-weight:700}.lr-prose{color:#1f2430;font-size:15.5px;line-height:1.75}.lr-prose h2{margin:20px 0 10px;font-family:Literata,Georgia,serif;font-size:20px}.lr-prose table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14px}.lr-prose th,.lr-prose td{text-align:left;border:1px solid #e4e9e4;padding:8px 12px}.lr-worked-example{background:#fff;border:1px solid #e4e9e4;border-radius:10px;margin-top:14px;padding:16px 18px}.lr-worked-label{text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:8px;font-size:11.5px;font-weight:700}.lr-steps{margin:10px 0;padding-left:20px;font-size:14px;line-height:1.7}.lr-item{border-bottom:1px solid #e4e9e4;padding:12px 0}.lr-item:last-child{border-bottom:none}.lr-item-prompt{color:#1f2430;margin:0 0 6px;font-size:15px;line-height:1.6}.lr-item-answer{background:#fdf6e3;border-left:3px solid #c9a03c;border-radius:4px;margin:0;padding:8px 12px;font-size:14px}.lr-item-hint{color:#6b7280;margin:4px 0 0;font-size:13px;font-style:italic}.lr-guide-row{margin:0 0 10px;font-size:14.5px}.lr-guide-body{color:#1f2430;margin:0 0 20px;font-size:14.5px;line-height:1.7}.lr-vocab{color:#6b7280;border-top:1px solid #e4e9e4;padding-top:20px;font-size:14px}@media (width<=700px){.lr-page{padding:28px 22px 36px}}.lr-read-online-btn{color:#2a2010!important;background:#c9a03c!important}.wr-backdrop{z-index:1000;background:#212b2699;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0}.wr-frame{background:#faf8f3;border-radius:14px;grid-template-columns:1fr 320px;width:100%;max-width:980px;max-height:92vh;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 60px #212b2647}.wr-close{color:#6b7280;cursor:pointer;z-index:2;background:#0000000f;border:none;border-radius:50%;width:30px;height:30px;font-size:15px;position:absolute;top:16px;right:16px}.wr-close:hover{background:#0000001f}.wr-main{padding:40px 36px 48px;overflow-y:auto}.wr-title{color:#1f2430;margin:0 0 6px;padding-right:36px;font-family:Literata,Georgia,serif;font-size:25px;font-weight:700}.wr-objective{color:#6b7280;margin:0 0 26px;font-size:14px;font-style:italic}.wr-section{margin-bottom:26px}.wr-section-label{text-transform:uppercase;letter-spacing:.06em;color:#c9a03c;margin-bottom:10px;font-size:11.5px;font-weight:700}.wr-prose{color:#1f2430;font-size:15px;line-height:1.7}.wr-prose h2{margin:16px 0 8px;font-family:Literata,Georgia,serif;font-size:18px}.wr-prose table{border-collapse:collapse;width:100%;margin:14px 0;font-size:13.5px}.wr-prose th,.wr-prose td{text-align:left;border:1px solid #e4e9e4;padding:6px 10px}.wr-worked-example{background:#fff;border:1px solid #e4e9e4;border-radius:10px;margin-top:12px;padding:14px 16px}.wr-worked-label{text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:6px;font-size:11px;font-weight:700}.wr-item{border-bottom:1px solid #e4e9e4;padding:9px 0}.wr-item:last-child{border-bottom:none}.wr-item-prompt{color:#1f2430;margin:0;font-size:14.5px;line-height:1.6}.wr-vocab{color:#6b7280;border-top:1px solid #e4e9e4;padding-top:16px;font-size:13px}.wr-margin{background:#f1eee5;border-left:1px solid #e4e9e4;padding:40px 24px 48px;overflow-y:auto}.wr-margin-heading{text-transform:uppercase;letter-spacing:.05em;color:#6c5ce7;margin:0 0 20px;font-family:Literata,Georgia,serif;font-size:13px;font-weight:700}.wr-margin-block{border-bottom:1px solid #e0dccf;margin-bottom:22px;padding-bottom:20px}.wr-margin-block:last-child{border-bottom:none}.wr-margin-label{text-transform:uppercase;letter-spacing:.05em;color:#8a7a4f;margin:0 0 8px;font-size:11px;font-weight:700}.wr-margin-fact{color:#44544c;margin:0 0 4px;font-size:12.5px}.wr-margin-body{color:#44544c;margin:0;font-size:12.5px;line-height:1.6}.wr-answer-row{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.wr-answer-q{color:#8a8f9c;font-size:11.5px;font-style:italic}.wr-answer-a{color:#6c5ce7;background:#fdf6e3;border-left:2px solid #c9a03c;border-radius:3px;padding:3px 8px;font-size:13px;font-weight:600}.wr-rubric-prompt{color:#8a8f9c;margin:0 0 8px;font-size:11.5px;font-style:italic}.wr-rubric-list{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.wr-rubric-list li{color:#44544c;font-size:12.5px;line-height:1.5}@media (width<=820px){.wr-frame{grid-template-columns:1fr;max-height:88vh}.wr-margin{border-top:1px solid #e4e9e4;border-left:none}}.wr-page-shell{background:#edeae0;justify-content:center;min-height:100vh;padding:40px 24px;display:flex}.wr-frame--page{align-self:flex-start;width:100%;max-width:980px;max-height:none;box-shadow:0 8px 32px #212b2624}.wr-hands-on{background:#fdf6e3;border:1px solid #e5c87a;border-radius:10px;margin-bottom:26px;padding:16px 18px}.wr-hands-on-label{text-transform:uppercase;letter-spacing:.05em;color:#8a6d1f;margin:0 0 8px;font-size:12px;font-weight:700}.wr-hands-on-materials{color:#6b7280;margin-top:8px;font-size:13px}.ss-frame{background:#faf8f3;border-radius:14px;width:100%;max-width:820px;padding:44px 48px;box-shadow:0 8px 32px #212b2624}.ss-header{border-bottom:1px solid #e4e9e4;margin-bottom:32px;padding-bottom:24px}.ss-title{color:#1f2430;margin:0 0 6px;font-family:Literata,Georgia,serif;font-size:30px;font-weight:700}.ss-subtitle{color:#6b7280;margin:0;font-size:14.5px}.ss-jump-nav{z-index:5;background:#faf8f3;border-bottom:1px solid #e4e9e4;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:14px 0;display:flex;position:sticky;top:0}.ss-jump-link{color:#6c5ce7;background:#f4f3fc;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600;text-decoration:none}.ss-jump-link:hover{background:#dce6da}.ss-subject{background:#fff;border:1px solid #e4e9e4;border-left:4px solid #c9a03c;border-radius:12px;margin-bottom:24px;padding:24px 26px;scroll-margin-top:20px}.ss-subject-name{color:#6c5ce7;margin:0 0 16px;font-family:Literata,Georgia,serif;font-size:19px;font-weight:700}.ss-unit-list{flex-direction:column;gap:4px;display:flex}.ss-unit-row{border-bottom:1px solid #e4e9e4;gap:16px;padding:14px 0;display:flex}.ss-unit-row:last-child{border-bottom:none}.ss-unit-index{color:#c9a03c;min-width:22px;font-family:Literata,Georgia,serif;font-size:14px;font-weight:700}.ss-unit-name{color:#1f2430;margin:0 0 4px;font-size:15px;font-weight:700}.ss-unit-desc{color:#6b7280;margin:0 0 8px;font-size:13.5px;line-height:1.5}.ss-unit-meta{flex-wrap:wrap;gap:6px;display:flex}.ss-unit-tag{color:#44544c;background:#f4f3fc;border-radius:999px;padding:3px 10px;font-size:11.5px}.log-session-checklist{background:#f6f8f5;border-radius:10px;margin-bottom:18px;padding:14px 16px}.log-session-project-note{color:var(--color-text-muted,#6b6878);margin:8px 0 0;font-size:.85rem}.log-session-checklist-heading{color:#44544c;margin:0 0 10px;font-size:12.5px;font-weight:700}.log-session-checklist-row{border-bottom:1px solid #e4e9e4;flex-direction:column;gap:4px;padding:8px 0;font-size:13px;display:flex}.log-session-checklist-row:last-child{border-bottom:none}.log-session-checklist-row-top{align-items:center;gap:8px;display:flex}.log-session-checklist-prompt{color:#263238;flex:1}.log-session-submitted-answer{color:#44544c;background:#fff;border-left:2px solid #c9a03c;border-radius:3px;margin:0 0 0 24px;padding:6px 10px;font-size:12.5px;font-style:italic}.log-session-no-answer{color:#b5581f;border-left-color:#b5581f;font-style:normal}.lrn-check-yes{color:#6c5ce7}.lrn-check-no{color:#b5581f}.lrn-checklist-attempts{color:#8a938d;white-space:nowrap;font-size:11px}.children-page-grid{grid-template-columns:1fr 340px}.child-hero{grid-template-columns:1.3fr 1fr 1fr;gap:28px;display:grid}.child-hero-identity{align-items:flex-start;gap:18px;display:flex}.child-hero-avatar{color:#fff;width:92px;height:92px;font-family:var(--ew-font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex;overflow:hidden}.child-hero-name{margin-bottom:6px;font-size:22px}.child-hero-badges{align-items:center;gap:8px;margin-bottom:8px;display:flex}.child-hero-level{font-family:var(--ew-font-body);color:#9ca0b4;font-size:12px}.child-hero-fact{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-bottom:12px;font-size:13px}.child-hero-progress h3,.child-hero-week h3{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:14px;font-family:var(--ew-font-body);margin-bottom:14px;font-weight:700}.progress-donut-row{align-items:center;gap:20px;display:flex}.progress-donut{border-radius:50%;flex-shrink:0;width:108px;height:108px;position:relative}.progress-donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:14px}.progress-donut-label{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.progress-donut-pct{font-family:var(--ew-font-display);color:var(--ew-text-on-light);z-index:1;font-size:22px;font-weight:700}.progress-donut-caption{font-family:var(--ew-font-body);color:var(--color-text-secondary);z-index:1;font-size:10.5px}.progress-donut-legend{flex-direction:column;gap:8px;display:flex}.legend-row{font-family:var(--ew-font-body);color:var(--ew-text-on-light);align-items:center;gap:7px;font-size:12.5px;display:flex}.legend-row b{margin-left:4px}.legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.legend-dot-track{background:var(--ew-grass)}.legend-dot-ahead{background:var(--ew-teal)}.legend-dot-attention{background:var(--ew-coral)}.week-stat-row{align-items:center;gap:10px;padding:7px 0;display:flex}.week-stat-icon{width:32px;height:32px;color:var(--ew-violet);background:#f4f3fc;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.week-stat-value{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:16px;font-weight:700;line-height:1.2}.week-stat-label{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11.5px}.activity-list{flex-direction:column;display:flex}.activity-row{border-bottom:1px solid var(--ew-light-border);align-items:flex-start;gap:12px;padding:11px 0;display:flex}.activity-row:last-child{border-bottom:none}.activity-row-icon{background:var(--subject-color,var(--ew-violet));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.activity-row-text{font-family:var(--ew-font-body);color:var(--ew-text-on-light);flex:1;font-size:13.5px;line-height:1.5}.activity-row-time{font-family:var(--ew-font-body);color:#9ca0b4;white-space:nowrap;flex-shrink:0;font-size:12px}.logbook-composer{align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.logbook-textarea{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:var(--ew-text-on-light);resize:vertical;flex:1;min-height:40px;padding:10px 12px;font-size:13.5px}.logbook-textarea:focus{border-color:var(--ew-violet);outline:none}.logbook-list{flex-direction:column;gap:14px;display:flex}.logbook-entry{border-radius:var(--ew-radius-md);background:#f7f7fb;padding:14px 16px}.logbook-entry-body{font-family:var(--ew-font-display);color:var(--ew-text-on-light);margin-bottom:8px;font-size:14px;font-style:italic;line-height:1.5}.logbook-entry-meta{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:12px}.coming-soon-block{text-align:center;color:#9ca0b4;padding:18px 8px}.coming-soon-block svg{margin-bottom:10px}.coming-soon-block p{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-bottom:6px;font-size:13.5px;font-weight:700}.coming-soon-block span{font-family:var(--ew-font-body);font-size:12px;line-height:1.5;display:block}.pill-wrap{flex-wrap:wrap;gap:8px;display:flex}.strength-pill,.focus-pill{font-family:var(--ew-font-body);border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:700}.strength-pill{color:#189146;background:#e9fbf0}.focus-pill{color:#b98726;background:#fff4e0}.planner-settings-btn,.planner-customize-btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.planner-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.planner-view-toggle{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.view-toggle-btn{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:var(--color-text-secondary);background:#fff;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;display:inline-flex}.view-toggle-btn.active{border-color:var(--ew-violet);color:var(--ew-violet);background:#efecfd}.planner-week-grid{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.planner-day-col{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-md);min-width:0;padding:12px}.planner-day-col.is-today{border-color:var(--ew-violet);background:#faf9ff}.planner-day-header{text-align:center;border-bottom:1px solid var(--ew-light-border);margin-bottom:10px;padding-bottom:8px}.planner-day-name{font-family:var(--ew-font-body);letter-spacing:.04em;color:var(--ew-text-on-light);font-size:11.5px;font-weight:700;display:block}.is-today .planner-day-name{color:var(--ew-violet)}.planner-day-date{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11px;display:block}.planner-day-empty{text-align:center;padding:10px 0;font-size:12px}.planner-item-card{align-items:flex-start;gap:8px;padding:7px 0;display:flex}.planner-item-icon{background:var(--subject-color,var(--ew-violet));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.planner-item-body{flex-direction:column;min-width:0;display:flex}.planner-item-title{font-family:var(--ew-font-body);color:var(--ew-text-on-light);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;overflow:hidden}.planner-item-sub{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11px}.planner-item-child{color:var(--ew-violet);font-weight:700}.planner-more-btn{border:none;border-top:1px solid var(--ew-light-border);width:100%;font-family:var(--ew-font-body);color:var(--ew-violet);background:0 0;justify-content:center;align-items:center;gap:4px;margin-top:6px;padding-top:8px;font-size:11.5px;font-weight:700;display:flex}.planner-day-view{flex-direction:column;display:flex}.planner-day-tabs{gap:6px;margin-bottom:14px;display:flex}.planner-day-tab{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:var(--color-text-secondary);background:#fff;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;font-size:12px;font-weight:700;display:flex}.planner-day-tab.active{border-color:var(--ew-violet);color:var(--ew-violet);background:#efecfd}.planner-day-tab-date{opacity:.75;font-size:10.5px;font-weight:500}.planner-banner{background:linear-gradient(135deg,#f4f3fc 0%,#edeafb 100%);border:none;flex-wrap:wrap;align-items:center;gap:22px;display:flex}.planner-banner-icon{background:var(--ew-violet);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.planner-banner-text{flex:1;min-width:220px}.planner-banner-text h3{margin-bottom:4px;font-size:16px}.planner-banner-text p{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:13px;line-height:1.5}.planner-banner-chips{flex-wrap:wrap;gap:20px;display:flex}.planner-banner-chip{text-align:center;flex-direction:column;align-items:center;gap:4px;min-width:90px;display:flex}.planner-banner-chip svg{color:var(--ew-violet)}.planner-banner-chip span{font-family:var(--ew-font-body);color:var(--ew-text-on-light);font-size:12.5px;font-weight:700}.planner-banner-chip small{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:10.5px}.suggestions-list{flex-direction:column;gap:12px;display:flex}.suggestion-row{border-radius:var(--ew-radius-md);background:#f7f7fb;align-items:flex-start;gap:9px;padding:11px 13px;display:flex}.suggestion-row svg{color:var(--ew-gold-dark);flex-shrink:0;margin-top:1px}.suggestion-row span{font-family:var(--ew-font-body);color:var(--ew-text-on-light);font-size:13px;line-height:1.5}.planner-info-modal{max-width:380px}.planner-info-modal p{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin:10px 0 18px;font-size:13.5px;line-height:1.6}.schedule-tabs{border-bottom:1px solid var(--ew-light-border);gap:4px;margin-bottom:20px;display:flex}.schedule-tab{font-family:var(--ew-font-body);color:var(--color-text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-right:22px;padding:10px 4px;font-size:14px;font-weight:700;display:flex}.schedule-tab.active{color:var(--ew-violet);border-bottom-color:var(--ew-violet)}.schedule-calendar-card{overflow-x:auto}.need-a-change-card{background:#faf9ff;border-color:#e4dffb}.cal-grid{min-width:760px}.cal-header-row,.cal-allday-row,.cal-flex-row{grid-template-columns:56px repeat(7,1fr);display:grid}.cal-day-header{text-align:center;border-bottom:1px solid var(--ew-light-border);padding:6px 4px 10px}.cal-day-header-abbr{font-family:var(--ew-font-body);color:var(--color-text-secondary);letter-spacing:.04em;font-size:11px;font-weight:700;display:block}.cal-day-header-date{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:14px;font-weight:700;display:block}.cal-allday-cell,.cal-flex-cell{border-bottom:1px solid var(--ew-light-border);border-left:1px solid var(--ew-light-border);flex-direction:column;gap:3px;min-height:26px;max-height:92px;padding:4px 5px;display:flex;overflow-y:auto}.cal-allday-chip,.cal-flex-chip{color:#fff;font-family:var(--ew-font-body);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:700;display:inline-block;overflow:hidden}.cal-body{grid-template-columns:56px repeat(7,1fr);display:grid;position:relative}.cal-hour-labels{flex-direction:column;display:flex}.cal-hour-labels .cal-hour-label{font-family:var(--ew-font-body);color:var(--color-text-secondary);text-align:right;border-top:1px solid var(--ew-light-border);padding-top:2px;padding-right:8px;font-size:10.5px}.cal-day-col{border-left:1px solid var(--ew-light-border);position:relative}.cal-hour-line{border-top:1px solid var(--ew-light-border)}.cal-item{box-sizing:border-box;cursor:grab;border-left:3px solid;border-radius:6px;flex-direction:column;gap:1px;margin-left:2px;padding:3px 6px;display:flex;position:absolute;overflow:hidden}.cal-item:active{cursor:grabbing}.cal-item-title{font-family:var(--ew-font-body);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;overflow:hidden}.cal-item-child{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:9.5px}.agenda-range{flex-direction:column;display:flex}.agenda-row{text-align:left;border:none;border-bottom:1px solid var(--ew-light-border);background:0 0;align-items:center;gap:16px;width:100%;padding:10px 4px;display:flex}.agenda-row:hover{background:#f7f7fb}.agenda-row-date{flex-direction:column;flex-shrink:0;align-items:center;width:44px;display:flex}.agenda-row-day{font-family:var(--ew-font-body);color:var(--color-text-secondary);text-transform:uppercase;font-size:10.5px}.agenda-row-num{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:16px;font-weight:700}.agenda-row-items{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.agenda-chip{font-family:var(--ew-font-body);border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:700}.agenda-row-empty{font-family:var(--ew-font-body);color:#9ca0b4;font-size:12.5px}.agenda-row-more{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11px}.activity-agenda{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.activity-agenda-day{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-md);min-height:90px;padding:10px}.activity-agenda-day-label{font-family:var(--ew-font-body);color:var(--ew-text-on-light);margin-bottom:8px;font-size:12px;font-weight:700}.activity-chip{color:#fff;margin-bottom:5px}.color-key-list{flex-direction:column;gap:10px;display:flex}.color-key-row{font-family:var(--ew-font-body);color:var(--ew-text-on-light);align-items:center;gap:10px;font-size:13px;display:flex}.color-key-dot{border-radius:3px;flex-shrink:0;width:11px;height:11px}.upcoming-list{flex-direction:column;gap:12px;display:flex}.upcoming-row{align-items:flex-start;gap:12px;display:flex}.upcoming-date{width:40px;font-family:var(--ew-font-body);color:var(--ew-violet);text-transform:uppercase;flex-shrink:0;font-size:11px;font-weight:700}.upcoming-title{font-family:var(--ew-font-body);color:var(--ew-text-on-light);font-size:13px;font-weight:700}.upcoming-time{font-family:var(--ew-font-body);color:var(--color-text-secondary);font-size:11.5px}.add-event-card{width:460px;max-width:92vw;max-height:88vh;overflow-y:auto}.event-form-field{margin-bottom:14px}.event-form-field label{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-bottom:6px;font-size:12.5px;font-weight:700;display:block}.event-form-field input[type=text],.event-form-field input[type=date],.event-form-field input[type=time],.event-form-field textarea{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);width:100%;font-family:var(--ew-font-body);color:var(--ew-text-on-light);padding:9px 11px;font-size:13.5px}.event-form-field input:focus,.event-form-field textarea:focus{border-color:var(--ew-violet);outline:none}.event-checkbox-label{cursor:pointer;align-items:center;gap:8px;color:var(--ew-text-on-light)!important;font-weight:600!important;display:flex!important}.event-form-row{gap:12px;display:flex}.event-form-row .event-form-field{flex:1}.event-category-picker{flex-wrap:wrap;gap:7px;display:flex}.event-category-chip{border:1.5px solid var(--ew-light-border);font-family:var(--ew-font-body);color:var(--color-text-secondary);background:#fff;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:700}.event-day-picker{gap:6px;display:flex}.event-day-chip{border:1.5px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);color:var(--color-text-secondary);background:#fff;flex:1;padding:8px 0;font-size:12.5px;font-weight:700}.event-day-chip.active{border-color:var(--ew-violet);color:var(--ew-violet);background:#efecfd}.conflict-modal-card{width:440px;max-width:92vw}.conflict-modal-header{color:var(--ew-coral);align-items:center;gap:10px;margin-bottom:10px;display:flex}.conflict-modal-header h3{margin:0}.conflict-modal-desc{font-family:var(--ew-font-body);color:var(--ew-text-on-light);margin-bottom:12px;font-size:13.5px}.conflict-item-list{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.conflict-item-row{border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);background:#fff4f3;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.conflict-item-title{color:var(--ew-text-on-light);font-weight:700}.conflict-item-child{color:var(--ew-violet);font-size:11.5px;font-weight:700}.conflict-item-time{color:var(--color-text-secondary);margin-left:auto;font-size:11.5px}.conflict-alternates{margin-bottom:10px}.conflict-alternates-label{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-bottom:8px;font-size:12px;font-weight:700}.conflict-alt-btn{text-align:center;width:100%;margin-bottom:8px}.adjust-schedule-card{width:480px;max-width:92vw;max-height:88vh;overflow-y:auto}.adjust-schedule-desc{font-family:var(--ew-font-body);color:var(--color-text-secondary);margin-bottom:14px;font-size:13px;line-height:1.5}.rebalance-preview{border-radius:var(--ew-radius-md);background:#f7f7fb;margin:14px 0;padding:14px}.rebalance-preview-label{font-family:var(--ew-font-body);color:var(--ew-grass-dark);align-items:center;gap:7px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.rebalance-change-list{flex-direction:column;gap:8px;display:flex}.rebalance-change-row{font-family:var(--ew-font-body);flex-direction:column;gap:2px;font-size:12.5px;display:flex}.rebalance-change-subject{color:var(--ew-text-on-light);font-weight:700}.rebalance-change-arrow{color:var(--color-text-secondary)}.coming-soon-wrap{justify-content:center;padding:40px 20px;display:flex}.coming-soon-card{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:520px;padding:40px 36px 36px;display:flex}.coming-soon-icon{--coming-soon-accent:var(--ew-violet);width:60px;height:60px;color:var(--coming-soon-accent);background:color-mix(in srgb, var(--coming-soon-accent) 14%, #fff);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.coming-soon-tag{font-family:var(--ew-font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ew-violet);background:color-mix(in srgb, var(--ew-violet) 10%, #fff);border:1px solid color-mix(in srgb, var(--ew-violet) 25%, #fff);border-radius:999px;margin-bottom:14px;padding:4px 12px;font-size:11px;font-weight:700}.coming-soon-card h2{font-family:var(--ew-font-display);color:var(--ew-text-on-light);margin:0 0 10px;font-size:22px}.coming-soon-body{font-family:var(--ew-font-body);color:#5b6072;margin:0 0 16px;font-size:15px;line-height:1.6}.coming-soon-note{font-family:var(--ew-font-body);color:#8a8f9c;border-top:1px solid var(--ew-light-border);margin:0;padding-top:16px;font-size:13.5px;line-height:1.5}.coming-soon-note a{color:var(--ew-violet);font-weight:600}.feedback-fab{z-index:200;background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:700;position:fixed;bottom:24px;right:24px;box-shadow:0 6px 18px #0000002e}.feedback-fab:hover{transform:translateY(-1px)}.feedback-backdrop{z-index:201;background:#14181659;justify-content:flex-end;align-items:flex-end;padding:24px;display:flex;position:fixed;inset:0}.feedback-panel{background:#fff;border-radius:16px;width:320px;max-width:calc(100vw - 32px);padding:20px;box-shadow:0 16px 40px #00000040}.feedback-panel h3{margin:0 0 12px;font-size:16px}.feedback-type-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.feedback-type-btn{border:1.5px solid var(--ew-light-border,#e0e4e8);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.feedback-type-btn.is-selected{border-color:var(--color-accent);background:var(--ew-theme-accent-soft,#efeafd);color:var(--color-accent)}.feedback-textarea{border:1.5px solid var(--ew-light-border,#e0e4e8);resize:vertical;box-sizing:border-box;border-radius:10px;width:100%;padding:10px;font-family:inherit;font-size:13.5px}.feedback-error{color:#c0392b;margin:6px 0 0;font-size:12.5px}.feedback-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.feedback-cancel{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:8px 10px;font-size:13.5px;font-weight:600}.feedback-submit{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 16px;font-size:13.5px;font-weight:700}.feedback-submit:disabled{opacity:.6;cursor:default}.feedback-sent{text-align:center;color:#1f8a56;margin:0;padding:12px 0;font-weight:700}.insight-child-card{margin-bottom:20px}.insight-grade{color:var(--color-text-secondary);margin-left:8px;font-size:13px;font-weight:500}.insight-section{margin-top:18px}.insight-section:first-of-type{margin-top:4px}.insight-subhead{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);margin:0 0 10px;font-size:13px;font-weight:700}.insight-level-grid{flex-direction:column;gap:8px;display:flex}.insight-level-row{background:var(--color-card);border-radius:10px;align-items:center;gap:12px;padding:8px 12px;display:flex}.insight-subject-name{flex-shrink:0;min-width:90px;font-size:13.5px;font-weight:700}.insight-level-sentence{color:var(--color-text-secondary);flex:1;font-size:13.5px}.insight-confidence,.insight-readiness{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:700}.insight-confidence-measured{color:#1f8a56;background:#1f8a5626}.insight-confidence-parent_stated,.insight-confidence-assumed{color:var(--color-text-secondary);background:#9aa5bd40}.insight-readiness-ready{color:#1f8a56;background:#1f8a5626}.insight-readiness-low,.insight-readiness-restocking{color:#9a6b1f;background:#f0ad4e2e}.insight-readiness-course_complete{color:#1f8a56;background:#1f8a5626}.insight-readiness-not_generated{color:var(--color-text-secondary);background:#9aa5bd40}.insight-readiness-setup_failed{color:#b3261e;background:#b3261e1f}.insight-window-toggle{gap:6px;margin-right:8px;display:flex}.kind-mark{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;border-radius:6px;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-block}.kind-mark--small{margin-left:6px;padding:1px 6px;font-size:9.5px}.kind-mark--project{color:#1e7a6b;background:#e3f3ef;border:1px solid #9fd3c8}.kind-mark--lessons{color:#3a64d8;background:#eaf0fd;border:1px solid #aec4f2}.subject-progress{flex-direction:column;gap:6px;margin:8px 0 4px;display:flex}.subject-progress-title{color:var(--color-text-primary);margin:0;font-size:15px;font-weight:700}.subject-progress-text{color:var(--color-text-secondary);margin:0;font-size:12.5px}.subject-progress-text.is-problem{color:#b23a3a}.stage-rail{align-items:center;gap:3px;display:flex}.stage-rail-seg{background:#e4e1e6;border-radius:4px;flex:1;height:7px}.stage-rail-seg.is-done{background:#1e7a6b}.stage-rail-seg.is-now{outline-offset:1px;background:#9fd3c8;outline:2px solid #1e7a6b}.stage-rail-fun{color:#b3691e;flex:none;font-size:10px;line-height:1}.lesson-bar{background:#e4e1e6;border-radius:4px;height:7px;overflow:hidden}.lesson-bar span{background:#3a64d8;height:100%;display:block}.sp-frame{max-width:860px}.sp-header{margin-bottom:20px}.sp-header .ss-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sp-project-title{color:#1e7a6b;margin:4px 0 0;font-weight:700}.sp-pace{color:var(--color-text-secondary);margin:6px 0 0;font-size:13px}.sp-stages,.sp-units{margin:0;padding:0;list-style:none}.sp-stage{grid-template-columns:22px 1fr;gap:12px;padding-bottom:18px;display:grid;position:relative}.sp-stage:before{content:"";background:#e4e1e6;width:2px;position:absolute;top:18px;bottom:0;left:10px}.sp-stage:last-child:before{display:none}.sp-stage-dot{z-index:1;background:#fff;border:2px solid #cfcad4;border-radius:50%;width:16px;height:16px;margin-top:3px;position:relative}.sp-stage--done .sp-stage-dot{background:#1e7a6b;border-color:#1e7a6b}.sp-stage--now .sp-stage-dot{border-color:#1e7a6b;box-shadow:0 0 0 4px #e3f3ef}.sp-stage-body{min-width:0}.sp-stage-name{margin:0;font-weight:700}.sp-stage-meta{color:var(--color-text-secondary);margin:2px 0 0;font-size:12.5px}.sp-skills{color:var(--color-text-secondary);margin:8px 0 0;padding-left:18px;font-size:13px}.sp-skill-code{color:#3a64d8;font-weight:700}.sp-steps{background:#fff;border:1px solid #e4e1e6;border-radius:8px;margin-top:8px}.sp-step{border-bottom:1px solid #f0eef2;justify-content:space-between;gap:10px;padding:8px 12px;font-size:14px;display:flex}.sp-step:last-child{border-bottom:0}.sp-step a{color:inherit}.sp-step-planned{color:var(--color-text-secondary)}.sp-step-status{color:var(--color-text-secondary);flex:none;font-size:12px;font-weight:600}.sp-step-status--done{color:#1e7a6b}.sp-step-status--now,.sp-step-status--in_progress{color:#6c5ce7}.sp-outputs{margin-top:8px}.sp-outputs-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 4px;font-size:12px;font-weight:700}.sp-outputs blockquote{white-space:pre-wrap;background:#f6fbfa;border-left:3px solid #9fd3c8;margin:0 0 6px;padding:8px 12px;font-size:14px}.sp-fun{color:#b3691e;margin:8px 0 0;font-size:12.5px}.sp-replaced{color:var(--color-text-secondary);margin-top:8px;font-size:13px}.sp-unit{margin-bottom:8px}.sp-unit-head{text-align:left;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #e4e1e6;border-radius:8px;justify-content:space-between;gap:12px;padding:10px 12px;font-weight:600;display:flex}.sp-unit.is-current .sp-unit-head{background:#f4f7fe;border-color:#aec4f2}.sp-unit-count{color:var(--color-text-secondary);flex:none;font-size:12.5px;font-weight:500}.project-plan{margin:6px 0 4px}.project-plan-title{color:#1e7a6b;margin:0 0 6px;font-weight:700}.project-plan-stages{margin:0 0 8px;padding-left:22px;font-size:14px}.project-plan-stages li{margin-bottom:3px}.project-plan-stages li.is-now{font-weight:700}.project-plan-link{color:#6c5ce7;font-size:13px;font-weight:600}.po-project-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.po-project-tile{background:#fff;border:1px solid #e4e1e6;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.po-project-tile-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.po-project-tile-subject{font-size:14px;font-weight:700}.po-project-tile .btn-small{align-self:flex-start;margin-top:6px}.po-capstones-title{margin:24px 0 10px;font-size:1.15rem}.po-capstones-title span{color:var(--color-text-secondary);margin-left:8px;font-size:13px;font-weight:500}.curriculum-not-started-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin:18px 0 8px;font-size:13px}.curriculum-card--not-started{box-shadow:none;background:0 0;border:1.5px dashed #cfcad4}.curriculum-open-subject{margin-top:6px}.curriculum-transition{background:#fbf0e1;border:1px solid #e6b87a;border-radius:8px;margin-top:10px;padding:10px 12px;font-size:13.5px}.curriculum-transition p{margin:0 0 8px}.curriculum-transition-actions{flex-wrap:wrap;gap:8px;display:flex}.undo-toast{z-index:2000;color:#fff;background:#242130;border-radius:10px;align-items:center;gap:14px;padding:10px 16px;font-size:14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #1410284d}.undo-toast-btn{color:#c4b8ff;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.curriculum-switch-counts{margin:8px 0 12px;padding-left:20px;font-size:14px}.rr-card{background:#fff;border:1px solid #e4e1e6;border-radius:12px;margin:10px 0;padding:14px 16px}.rr-head{margin:0 0 4px}.rr-prompt{color:var(--color-text-secondary);margin:0 0 8px;font-size:13px}.rr-paper{background:#fbf7f2;border-radius:8px;padding:8px 12px}.rr-answers p{white-space:pre-wrap;margin:4px 0;font-size:14px}.rr-answers p span{color:var(--color-text-secondary);margin-right:6px;font-weight:700}.rr-flag{background:#fbf0e1;border-left:3px solid #e6b87a;padding:6px 10px;font-size:13px}.rr-crit{margin:10px 0}.rr-crit p{margin:0 0 4px;font-size:14px}.rr-choices{gap:6px;display:flex}.rr-choice{font:inherit;cursor:pointer;background:#fff;border:1.5px solid #cfcad4;border-radius:8px;padding:4px 12px;font-weight:600}.rr-choice.is-on{color:#1e7a6b;background:#e3f3ef;border-color:#1e7a6b}.rr-evidence{color:var(--color-text-secondary);font-size:12px;font-style:italic}.kind-mark--library{color:#9a4e1c;background:#fbeee3;border:1px solid #e3b48f}.rl-page{flex-direction:column;gap:4px;display:flex}.rl-stats{flex-wrap:wrap;gap:10px;margin:6px 0;display:flex}.rl-stat{background:#fff;border:1px solid #e4e1e6;border-radius:10px;min-width:110px;padding:8px 14px}.rl-stat b{font-size:22px;display:block}.rl-stat span{color:var(--color-text-secondary);font-size:12px}.rl-note,.rl-sub{color:var(--color-text-secondary);margin:0 0 6px;font-size:13px}.rl-h{margin:18px 0 4px;font-size:15px}.rl-advisory{background:#fbf0e1;border-left:3px solid #e6b87a;border-radius:0 8px 8px 0;margin:8px 0;padding:8px 12px;font-size:13.5px}.rl-advisory p{margin:4px 0}.rl-meter{grid-template-columns:140px 1fr minmax(120px,auto);align-items:center;gap:10px;padding:4px 0;font-size:13.5px;display:grid}.rl-meter-label--strong{font-weight:800}.rl-bar{background:#e4e1e6;border-radius:4px;height:8px;overflow:hidden}.rl-bar i{background:#9a4e1c;height:100%;display:block}.rl-meter-band{color:var(--color-text-secondary);font-size:12px}.rl-skills{border-top:1px solid #efedf2;margin:6px 0;padding-top:6px}.rl-book{margin:2px 0}.rl-book span,.rl-list li span{color:var(--color-text-secondary);margin-left:6px;font-size:13px}.rl-chips{margin:6px 0;font-size:13px}.rl-chip{background:#f0eef2;border-radius:999px;margin-left:6px;padding:2px 10px;font-size:12px;display:inline-block}.rl-days{gap:3px;margin:6px 0;display:flex}.rl-day{background:#e4e1e6;border-radius:3px;width:10px;height:18px}.rl-day.is-on{background:#1e7a6b}.rl-list{margin:0;padding:0;list-style:none}.rl-list li{border-bottom:1px solid #f3f1f6;padding:4px 0;font-size:14px}.rl-link{font:inherit;color:#6c5ce7;cursor:pointer;background:0 0;border:0;margin-left:10px;padding:0;font-size:13px;font-weight:700;text-decoration:underline}.rl-adv-mark{color:#b3691e;font-size:12px}.rl-report{background:#fff;border:1px solid #e4e1e6;border-radius:10px;margin:6px 0;padding:10px 12px}.rl-report-head{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:14px;display:flex}.rl-report-score{color:var(--color-text-secondary);font-size:13px}.rl-add{grid-template-columns:110px 1fr;align-items:center;gap:6px 10px;max-width:520px;margin:6px 0;display:grid}.rl-add button{grid-column:2;justify-self:start}@media (width<=640px){.rl-meter{grid-template-columns:1fr;gap:2px}.rl-add{grid-template-columns:1fr}.rl-add button{grid-column:1}}.rl-bar--early{background:repeating-linear-gradient(45deg,#e4e1e6,#e4e1e6 4px,#efedf2 4px 8px)}.rl-bar--early i{opacity:.8;background:#c9a98c}.review-row-action{font-family:var(--ew-font-body);color:var(--ew-violet);cursor:pointer;background:0 0;border:none;flex-shrink:0;align-self:center;margin-left:auto;padding:4px 0;font-size:13px;font-weight:700}.rl-choices{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0 10px;display:grid}.rl-choice{text-align:left;border:2px solid var(--ew-light-border);font:inherit;color:inherit;cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.rl-choice span{color:#4a4658;font-size:13px;line-height:1.4}.rl-choice.is-on{border-color:var(--ew-violet);background:#efecfc}.rl-phonics{margin:0 0 8px}.rl-phonics-row{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 10px;font-size:14px;display:flex}.rl-ltr{margin:14px 0 6px}.rl-ltr--ask{border:2px solid var(--ew-violet);background:#f6f4fe;border-radius:14px;padding:14px 16px}.rl-ltr--ask .rl-h{margin-top:0}.rl-series summary{cursor:pointer;padding:6px 0;font-size:14px;font-weight:700}.rl-series li.is-hidden strong{opacity:.6;text-decoration:line-through}.rl-series-note{color:#4a4658;margin:2px 0 6px;font-size:13px}.curriculum-ltr-ask{color:var(--ew-violet);margin:6px 0 0;font-size:13px;font-weight:600}.funding-modal{width:min(560px,92vw);max-width:none}.funding-switch{cursor:pointer;align-items:center;gap:10px;font-weight:700;display:flex}.funding-switch input{width:18px;height:18px;accent-color:var(--color-accent)}.funding-switch-small{font-size:.86rem;font-weight:500}.funding-charter-name{margin-top:12px;font-size:.85rem;font-weight:600;display:block}.funding-charter-name input{width:100%;margin-top:6px;display:block}.funding-tracks{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:16px;display:grid}.funding-track{text-align:left;cursor:pointer;border:2px solid var(--color-border,#e5e5e5);color:var(--color-text-primary);font:inherit;background:#fff;border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.funding-track.selected{border-color:var(--color-accent);background:var(--color-surface)}.funding-track:disabled{opacity:.6;cursor:default}.funding-track-name{font-weight:700}.funding-track-line{color:var(--color-text-secondary);font-size:.84rem;line-height:1.4}.funding-rows{flex-direction:column;gap:8px;margin-top:18px;display:flex}.funding-rows h4{margin:0;font-size:.9rem}.funding-row{border:1px solid var(--color-border,#e5e5e5);border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;padding:8px 12px;display:flex}.funding-row-name{flex:90px;min-width:0;font-weight:700}.funding-seg{border:1px solid var(--color-border,#e5e5e5);border-radius:999px;display:flex;overflow:hidden}.funding-seg button{font:inherit;cursor:pointer;color:var(--color-text-secondary);background:#fff;border:0;padding:4px 12px;font-size:.82rem}.funding-seg button.selected{background:var(--color-accent);color:#fff;font-weight:600}.funding-note{background:var(--color-surface);color:var(--color-text-primary);border-radius:10px;margin:14px 0 0;padding:10px 12px;font-size:.88rem;line-height:1.5}.funding-note-warn{color:#7a4a10;background:#fdf1e3}.funding-notices{border-top:1px solid var(--color-border,#e5e5e5);margin-top:18px;padding-top:14px}.funding-notices h4{margin:0 0 8px;font-size:.95rem}.funding-notice{background:#fdf1e3;border-radius:10px;margin-bottom:8px;padding:10px 12px}.funding-notice p{color:#5c3a0e;margin:0;font-size:.86rem;line-height:1.45}.funding-notice-what{font-weight:700}.funding-notice-excerpt{overflow-wrap:anywhere;font-style:italic;margin:4px 0!important}.child-hero-funding{margin-left:8px}.funding-setting{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.funding-setting-name{font-size:.92rem;font-weight:700}.lp{--lp-desk:#f7f6fb;--lp-paper:#fff;--lp-line:#e7e5f0;--lp-ink:#1f2430;--lp-ink-2:#545670;--lp-world:#171433;--lp-world-2:#221d47;--lp-on-world:#fafaff;--lp-on-world-2:#b8b4d6;--lp-gold:#d9a441;--lp-gold-deep:#a9781f;--lp-violet:#6c5ce7;--lp-good:#1e9e57;--lp-bad:#b8bacb;--lp-display:"Fraunces", Georgia, "Times New Roman", serif;--lp-body:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--lp-gutter:clamp(16px, 4vw, 48px);--lp-max:1180px;background:var(--lp-desk);color:var(--lp-ink);font-family:var(--lp-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:17px;line-height:1.6;overflow-x:clip}.lp main>section{scroll-margin-top:72px}.lp *,.lp :before,.lp :after{box-sizing:border-box}.lp img{max-width:100%;display:block}.lp a:focus-visible,.lp button:focus-visible{outline:3px solid var(--lp-violet);outline-offset:3px;border-radius:6px}.lp-nowrap{white-space:nowrap}.lp-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lp-skip{position:absolute;top:8px;left:-999px}.lp-skip:focus{z-index:100;background:var(--lp-paper);border-radius:8px;padding:8px 12px;left:16px}.lp-btn{min-height:52px;font-family:var(--lp-body);letter-spacing:.005em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 26px;font-size:1rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.lp-btn-gold{background:var(--lp-gold);color:#1b1405;box-shadow:inset 0 1px #fff6,0 8px 22px -10px #a9781fcc}.lp-btn-gold:hover{background:#e2b04f;transform:translateY(-1px)}.lp-btn-ghost{color:var(--lp-ink);border:1.5px solid var(--lp-ink);background:0 0}.lp-btn-ghost:hover{background:var(--lp-ink);color:var(--lp-paper)}.lp-btn-small{min-height:42px;padding:0 18px;font-size:.92rem}.lp-btn-wide{width:100%;max-width:420px}.lp-nav{top:env(safe-area-inset-top,0px);z-index:50;padding:14px var(--lp-gutter);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--lp-line);background:#f7f6fbe0;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky}.lp-logo{font-family:var(--lp-display);color:var(--lp-ink);letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.3rem;font-weight:700;text-decoration:none;display:inline-flex}.lp-logo-mark{background:var(--lp-world);width:32px;height:32px;color:var(--lp-gold);font-family:var(--lp-display);border-radius:9px;place-items:center;font-size:1.05rem;font-weight:700;display:grid}.lp-nav-links{gap:28px;display:flex}.lp-nav-links a{color:var(--lp-ink-2);font-size:.95rem;font-weight:600;text-decoration:none}.lp-nav-links a:hover{color:var(--lp-ink)}.lp-nav-actions{align-items:center;gap:18px;display:flex}.lp-login{color:var(--lp-ink);font-size:.95rem;font-weight:600;text-decoration:none}.lp-hero{max-width:var(--lp-max);padding:clamp(28px, 5vw, 64px) var(--lp-gutter) clamp(48px, 7vw, 96px);grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(28px,5vw,72px);margin:0 auto;display:grid}.lp-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--lp-gold-deep);margin:0 0 18px;font-size:.8rem;font-weight:700}.lp-hero h1{font-family:var(--lp-display);letter-spacing:-.025em;font-variation-settings:"opsz" 144;text-wrap:balance;margin:0;font-size:clamp(2.35rem,5.2vw,4.1rem);font-weight:600;line-height:1.04}.lp-hero-em{color:var(--lp-violet);margin-top:.12em;font-style:italic;font-weight:500;display:block}.lp-hero-sub{max-width:34em;color:var(--lp-ink-2);margin:24px 0 0;font-size:clamp(1.05rem,1.5vw,1.22rem);line-height:1.55}.lp-hero-ctas{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.lp-hero-visual{min-width:0;position:relative}.lp-hero-art{aspect-ratio:4/5;border-radius:28px;max-height:600px;margin:0 0 0 auto;overflow:hidden;box-shadow:0 40px 80px -40px #1714338c,0 0 0 1px #1714330f}.lp-hero-art img{object-fit:cover;object-position:50% 38%;width:100%;height:100%}.lp-hero-card{background:var(--lp-paper);width:min(300px,82%);box-shadow:0 24px 48px -20px #17143373, 0 0 0 1px var(--lp-line);border-radius:18px;padding:16px 18px 14px;font-size:.88rem;position:absolute;bottom:36px;left:-36px}.lp-hero-card-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.lp-hero-card-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--lp-ink-2);font-size:.7rem;font-weight:800}.lp-hero-card-tag{color:var(--lp-ink-2);border:1px solid var(--lp-line);border-radius:999px;padding:1px 8px;font-size:.66rem;font-weight:700}.lp-hero-card ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lp-hero-card li{grid-template-columns:10px auto;align-items:baseline;column-gap:10px;font-weight:700;display:grid}.lp-hero-card li em{color:var(--lp-ink-2);grid-column:2;font-style:normal;font-weight:500}.lp-dot{border-radius:3px;width:10px;height:10px;transform:translateY(1px)}.lp-dot-math{background:var(--lp-violet)}.lp-dot-read{background:var(--lp-gold)}.lp-dot-sci{background:var(--lp-good)}.lp-hero-card-foot{border-top:1px dashed var(--lp-line);color:var(--lp-ink-2);margin-top:12px;padding-top:10px;font-size:.82rem}.lp-hero-card-foot strong{color:var(--lp-gold-deep)}.lp-section{max-width:var(--lp-max);padding:clamp(56px, 8vw, 104px) var(--lp-gutter);border-top:1px solid var(--lp-line);margin:0 auto}.lp-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(24px,5vw,80px);display:grid}.lp-q{font-family:var(--lp-display);letter-spacing:-.02em;text-wrap:balance;font-variation-settings:"opsz" 96;margin:0;font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:600;line-height:1.1}.lp-answer{max-width:36em}.lp-answer p{color:var(--lp-ink-2);margin:0 0 16px}.lp-lead{font-size:1.25rem;font-weight:500;line-height:1.5;color:var(--lp-ink)!important}.lp-contrast{gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.lp-contrast li{color:var(--lp-ink-2);padding-left:22px;position:relative}.lp-contrast li:before{content:"";background:var(--lp-gold);width:12px;height:2px;position:absolute;top:.72em;left:0}.lp-contrast li:last-child{color:var(--lp-ink);padding-top:6px}.lp-contrast li:last-child:before{background:var(--lp-violet)}.lp-yes{font-family:var(--lp-display);font-weight:600;line-height:1;color:var(--lp-good)!important;margin-bottom:18px!important;font-size:2.4rem!important}.lp-pull{border-left:3px solid var(--lp-gold);font-family:var(--lp-display);padding-left:18px;font-size:1.3rem;font-style:italic;color:var(--lp-ink)!important;margin-top:24px!important}.lp-h2-center{text-align:center;font-family:var(--lp-display);letter-spacing:-.02em;text-wrap:balance;font-variation-settings:"opsz" 96;margin:0 auto 40px;font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:600;line-height:1.1}.lp-band{background:radial-gradient(1200px 400px at 85% -10%, #6c5ce759, transparent 60%), radial-gradient(900px 380px at 0% 110%, #d9a4412e, transparent 60%), var(--lp-world);color:var(--lp-on-world)}.lp-band-inner{max-width:var(--lp-max);padding:clamp(64px, 9vw, 112px) var(--lp-gutter);margin:0 auto}.lp .lp-eyebrow-on-dark{color:var(--lp-gold)}.lp-on-dark{color:var(--lp-on-world)}.lp-founder-inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(32px,6vw,88px);display:grid}.lp-founder-photo{margin:0}.lp-photo-placeholder{aspect-ratio:4/5;background:linear-gradient(160deg, var(--lp-world-2), #120f29);text-align:center;border:1.5px dashed #b8b4d680;border-radius:28px;place-content:center;gap:10px;display:grid}.lp-photo-placeholder span{font-family:var(--lp-display);color:var(--lp-gold);letter-spacing:.02em;font-size:clamp(3rem,7vw,5rem);font-weight:600}.lp-photo-placeholder small{color:var(--lp-on-world-2);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.lp-founder-copy h2{color:var(--lp-on-world);font-family:var(--lp-display);letter-spacing:-.02em;text-wrap:balance;margin:0 0 22px;font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:600;line-height:1.1}.lp-founder-copy p{color:var(--lp-on-world-2);max-width:34em;margin:0 0 18px;font-size:1.08rem}.lp-founder-line{font-family:var(--lp-display);border-top:1px solid #b8b4d638;padding-top:18px;font-style:italic;line-height:1.4;color:var(--lp-on-world)!important;font-size:clamp(1.25rem,2vw,1.5rem)!important}.lp-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.lp-feature{background:var(--lp-paper);box-shadow:0 0 0 1px var(--lp-line);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.lp-feature-art{aspect-ratio:16/10;background:var(--lp-world);overflow:hidden}.lp-feature-art img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.lp-feature:hover .lp-feature-art img{transform:scale(1.04)}.lp-feature h3{font-family:var(--lp-display);letter-spacing:-.01em;margin:18px 20px 6px;font-size:1.3rem;font-weight:600}.lp-feature p{color:var(--lp-ink-2);margin:0 20px 22px;font-size:.96rem;line-height:1.55}.lp-plan{text-align:center;background:linear-gradient(#ffffff12,#ffffff08);border-radius:28px;max-width:720px;margin:0 auto;padding:clamp(28px,4vw,44px);box-shadow:0 0 0 1px #d9a44173,0 40px 80px -40px #000000b3}.lp-plan-prices{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:clamp(20px,4vw,44px);display:flex}.lp-price{flex-direction:column;align-items:center;display:flex}.lp-price-amount{font-family:var(--lp-display);color:var(--lp-gold);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(3rem,7vw,4.4rem);font-weight:600;line-height:1}.lp-price-label{color:var(--lp-on-world-2);margin-top:8px;font-size:.98rem}.lp-price-divider{background:#b8b4d64d;width:1px}.lp-plan-lock{max-width:32em;color:var(--lp-on-world);text-wrap:balance;margin:28px auto;font-size:1.08rem}.lp-plans{justify-items:center;gap:24px;display:grid}.lp-plans .lp-plan{width:100%}.lp-plan-alt{text-align:center;border:1px solid #b8b4d647;border-radius:20px;justify-items:center;gap:8px;width:100%;max-width:600px;padding:22px clamp(20px,3vw,32px);display:grid}.lp-plan-alt-title{font-family:var(--lp-display);color:var(--lp-on-world);margin:0;font-size:1.25rem;font-weight:600}.lp-plan-alt-prices{color:var(--lp-on-world);margin:0;font-size:1rem}.lp-plan-alt-prices strong{color:var(--lp-gold);font-family:var(--lp-display);font-size:1.2rem;font-weight:600}.lp-plan-alt-lock{color:var(--lp-on-world-2);text-wrap:balance;margin:0 0 6px;font-size:.94rem}.lp-btn-outline{color:var(--lp-on-world);background:0 0;border:1.5px solid #fafaff8c}.lp-btn-outline:hover{border-color:var(--lp-on-world);background:#fafaff14}.lp-footer{padding:28px var(--lp-gutter) calc(28px + env(safe-area-inset-bottom,0px));color:var(--lp-ink-2);background:var(--lp-desk);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;display:flex}.lp-footer a{color:var(--lp-ink-2)}.lp-logo-small{font-size:1.05rem}.lp-logo-small .lp-logo-mark{width:26px;height:26px;font-size:.9rem}@media (prefers-reduced-motion:no-preference){.lp-hero-copy>*{animation:.7s cubic-bezier(.2,.7,.2,1) both lp-rise}.lp-hero-copy>:nth-child(2){animation-delay:60ms}.lp-hero-copy>:nth-child(3){animation-delay:.12s}.lp-hero-copy>:nth-child(4){animation-delay:.18s}.lp-hero-card{animation:.8s cubic-bezier(.2,.7,.2,1) .3s both lp-rise}}@keyframes lp-rise{0%{opacity:.001;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lp *{transition:none!important;animation:none!important}}@media (width<=1020px){.lp-features{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-nav-links{display:none}}@media (width<=860px){.lp-hero{grid-template-columns:minmax(0,1fr)}.lp-hero-visual{width:100%;max-width:520px;margin:0 auto}.lp-hero-art{aspect-ratio:5/4}.lp-hero-card{bottom:-28px;left:12px}.lp-split,.lp-founder-inner{grid-template-columns:minmax(0,1fr)}.lp-founder-photo{max-width:320px}}@media (width<=560px){.lp{font-size:16px}.lp-features{grid-template-columns:minmax(0,1fr)}.lp-nav-actions .lp-login{display:none}.lp-btn-small{padding:0 14px;font-size:.85rem}.lp-hero-ctas .lp-btn{width:100%}.lp-price-divider{display:none}.lp-founder-photo{max-width:220px}}.lp-legacy{--ew-font-display:"Fraunces", Georgia, serif;--lp-desk-bg:#f7f7fb;--lp-desk-surface:#fff;--lp-desk-hairline:#ececf3;--lp-ink:#1f2430;--lp-ink-muted:#5a5a72;--lp-world-deep:#171433;--lp-text-on-dark:#fafaff;--lp-muted-on-dark:#b8b4d6;--lp-gold:#d9a441;--lp-gold-dark:#b98726;--lp-violet:#6c5ce7;--lp-success:#22c55e;--lp-radius-lg:20px;--lp-radius-pill:999px;font-family:var(--ew-font-body,var(--lp-body));font-size:16px;line-height:1.5}.lp-legacy .eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--lp-violet);border-radius:var(--lp-radius-pill);background:#6c5ce71a;margin-bottom:18px;padding:6px 14px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;display:inline-block}.lp-legacy.world-band .eyebrow{color:var(--lp-gold);background:#d9a44124}.lp-legacy .reveal{opacity:1;transform:none}.lp-legacy.landing-section{padding:88px 28px}.lp-legacy .landing-section-inner{max-width:1080px;margin:0 auto}.lp-legacy h2{font-family:var(--ew-font-display);font-optical-sizing:auto;color:var(--lp-ink);text-wrap:balance;margin:0 0 16px;font-size:clamp(1.9rem,4vw,2.75rem);font-weight:600;line-height:1.15}.lp-legacy h2 em{color:var(--lp-violet);font-style:italic}.lp-legacy.desk-band{background:var(--lp-desk-bg)}.lp-legacy.world-band{background:var(--lp-world-deep);color:var(--lp-text-on-dark);padding:56px 28px;position:relative}.lp-legacy.world-band h2{color:var(--lp-text-on-dark)}.lp-legacy.world-band p{color:var(--lp-muted-on-dark)}.lp-legacy .split-body{color:var(--lp-ink-muted);margin:0;font-size:16px;line-height:1.6}.lp-legacy .quill-split{grid-template-columns:5fr 7fr;align-items:center;gap:56px;display:grid;position:relative}.lp-legacy .quill-portrait{filter:drop-shadow(0 30px 40px #00000073);z-index:1;width:100%;max-width:380px;margin:0 auto -32px;display:block;position:relative}.lp-legacy .quill-facts{flex-direction:column;gap:14px;margin-top:20px;display:flex}.lp-legacy .quill-fact{border-left:2px solid var(--lp-gold);align-items:baseline;gap:12px;padding-left:14px;display:flex}.lp-legacy .quill-fact strong{color:var(--lp-text-on-dark);font-size:14.5px}.lp-legacy .quill-fact span{color:var(--lp-muted-on-dark);font-size:14.5px}.lp-legacy .quill-shot-overlap{z-index:2;max-width:280px;margin-top:26px;margin-left:30%;position:relative}.lp-legacy .screenshot-frame{border:1px solid #ffffff24;border-radius:14px;width:100%;display:block;box-shadow:0 18px 44px #0006}.lp-legacy .comparison-sub{max-width:640px;margin-bottom:36px}.lp-legacy .comparison-table-wrap{border-radius:var(--lp-radius-lg);border:1px solid var(--lp-desk-hairline);background:var(--lp-desk-surface);overflow-x:auto}.lp-legacy .comparison-table{border-collapse:collapse;width:100%;min-width:760px}.lp-legacy .comparison-table thead th{text-align:left;font-family:var(--ew-font-body,var(--lp-body));color:var(--lp-ink-muted);border-bottom:1px solid var(--lp-desk-hairline);vertical-align:bottom;padding:20px 16px 14px;font-size:13px;font-weight:700}.lp-legacy .comparison-table thead th:first-child{min-width:280px}.lp-legacy .comparison-table thead th.comparison-brand-col{color:var(--lp-violet)}.lp-legacy .comparison-table td.comparison-brand-col,.lp-legacy .comparison-table th.comparison-brand-col{background:#6c5ce70f}.lp-legacy .comparison-feature-cell{color:var(--lp-ink);max-width:300px;font-weight:500;line-height:1.4}.lp-legacy .comparison-table tbody td{border-bottom:1px solid var(--lp-desk-hairline);vertical-align:middle;padding:16px;font-size:14px}.lp-legacy .comparison-table tbody tr:last-child td{border-bottom:none}.lp-legacy .comparison-mark{border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.lp-legacy .comparison-mark-yes{color:var(--lp-success);background:#22c55e24}.lp-legacy .comparison-mark-partial{color:var(--lp-gold-dark);background:#d9a44129}.lp-legacy .comparison-mark-no{color:#b9b6cc;background:0 0}.lp-legacy .comparison-mark-no:after{content:"–";font-weight:700}.lp-legacy .comparison-table tfoot td{color:var(--lp-ink-muted);padding:18px 16px 22px;font-size:12.5px;line-height:1.5}.lp-legacy .comparison-table tfoot .comparison-mark{vertical-align:middle;width:18px;height:18px;font-size:11px}.lp-legacy .comparison-legend{color:var(--lp-ink-muted);flex-wrap:wrap;gap:20px;margin-top:18px;font-size:13px;display:flex}.lp-legacy .comparison-legend span{align-items:center;gap:8px;display:inline-flex}.lp-legacy .comparison-legend .comparison-mark{width:18px;height:18px;font-size:11px}.lp-legacy .comparison-pricing{background:var(--lp-desk-hairline);border:1px solid var(--lp-desk-hairline);border-radius:var(--lp-radius-lg);grid-template-columns:repeat(5,1fr);gap:1px;margin-top:32px;display:grid;overflow:hidden}.lp-legacy .comparison-price-card{background:var(--lp-desk-surface);flex-direction:column;gap:6px;padding:18px 16px;display:flex}.lp-legacy .comparison-price-card.brand{background:#6c5ce712}.lp-legacy .comparison-price-who{color:var(--lp-ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.lp-legacy .comparison-price-card.brand .comparison-price-who{color:var(--lp-violet)}.lp-legacy .comparison-price-amount{font-family:var(--ew-font-display);color:var(--lp-ink);font-size:19px;font-weight:600}.lp-legacy .comparison-price-note{color:var(--lp-ink-muted);font-size:11.5px;line-height:1.4}@media (width<=860px){.lp-legacy .quill-split{grid-template-columns:1fr}.lp-legacy .quill-portrait{max-width:280px;margin-bottom:0}.lp-legacy .quill-shot-overlap{max-width:100%;margin-top:16px;margin-left:0}}@media (width<=700px){.lp-legacy .comparison-pricing{grid-template-columns:repeat(2,1fr)}.lp-legacy .comparison-table thead th:first-child{min-width:200px}}@media (width<=560px){.lp-legacy.landing-section,.lp-legacy.world-band{padding-left:16px;padding-right:16px}}.onboarding-overlay{z-index:100;background:#0f1c338c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.onboarding-card{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:calc(100vh - 48px);padding:28px 32px;overflow-y:auto;box-shadow:0 10px 30px #00000040}.onboarding-progress{justify-content:space-between;margin-bottom:28px;display:flex}.onboarding-progress-step{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.onboarding-progress-step:not(:last-child):after{content:"";z-index:0;background:#e2e4e9;width:90%;height:2px;position:absolute;top:13px;left:55%}.onboarding-progress-step.done:not(:last-child):after{background:#0f1c33}.onboarding-progress-dot{color:#8a8f9c;z-index:1;background:#f2f3f5;border:1px solid #d8dbe2;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:600;transition:background .2s,border-color .2s,color .2s;display:flex}.onboarding-progress-step.active .onboarding-progress-dot,.onboarding-progress-step.done .onboarding-progress-dot{color:#fff;background:#0f1c33;border-color:#0f1c33}.onboarding-progress-label{color:#8a8f9c;font-size:12px}.onboarding-progress-step.active .onboarding-progress-label{color:#1f2430;font-weight:600}.onboarding-step{flex-direction:column;gap:16px;animation:.2s onboarding-fade-in;display:flex}@keyframes onboarding-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.onboarding-step h2{font-size:19px}.onboarding-field{flex-direction:column;gap:6px;display:flex}.onboarding-field label{color:#44485a;font-size:13px;font-weight:600}.onboarding-field input[type=text],.onboarding-field input[type=email],.onboarding-field select,.onboarding-field textarea{resize:vertical;border:1px solid #d8dbe2;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.onboarding-field input[type=range]{width:100%}.onboarding-scale-labels{color:#8a8f9c;justify-content:space-between;gap:8px;font-size:11px;display:flex}.onboarding-scale-value{color:#1f2430;font-size:14px;font-weight:600}.onboarding-scale-description{color:#5b606e;font-size:14px}.onboarding-child-row{border-bottom:1px solid #eceef2;align-items:flex-end;gap:10px;padding-bottom:12px;display:flex}.onboarding-field-name{flex:2}.onboarding-field-grade{flex:1}.onboarding-remove-child{height:36px}.onboarding-add-child{align-self:flex-start}.onboarding-consent-notice{background:#f6f4ee;border:1px solid #e2ddd0;border-radius:10px;margin-bottom:16px;padding:16px 18px}.onboarding-consent-notice h3{margin:0 0 8px;font-size:15px}.onboarding-consent-notice p{margin:0 0 10px;font-size:13px;line-height:1.5}.onboarding-consent-notice p:last-child{margin-bottom:0}.onboarding-consent-checkbox label{cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;display:flex}.onboarding-consent-checkbox input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin-top:3px}.onboarding-error{color:#b3261e;font-size:13px}.onboarding-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.onboarding-step-generate{text-align:center;align-items:center;padding:24px 0}.onboarding-generate-note{color:#5b606e;font-size:14px}.onboarding-generate-message{color:#8a8f9c;min-height:18px;font-size:13px}.onboarding-spinner{border:3px solid #e2e4e9;border-top-color:#0f1c33;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite onboarding-spin}@keyframes onboarding-spin{to{transform:rotate(360deg)}}.onboarding-step-subtitle{color:var(--color-text-secondary,#6b7280);margin:-8px 0 18px;font-size:14px}.subject-picker-label{color:var(--color-text-secondary,#6b7280);margin:0 0 8px;font-size:13px;font-weight:600}.subject-picker-grid{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.subject-picker-chip.locked{border:2px solid var(--color-accent,#6c47ff);color:var(--color-accent,#6c47ff);cursor:default;background:#6c5ce71a;display:inline-block}.subject-picker-chip{color:#44485a;cursor:pointer;background:#fff;border:2px solid #d8dbe2;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .15s}.subject-picker-chip.active{border-color:var(--color-accent,#6c47ff);color:var(--color-accent,#6c47ff);background:#6c5ce71a}.subject-picker-chip:hover{border-color:var(--color-accent,#6c47ff)}.custom-subject-row{margin-top:8px}.custom-subject-inputs{flex-wrap:wrap;gap:8px;display:flex}.custom-subject-inputs input{border:1px solid #d8dbe2;border-radius:6px;flex:1;min-width:160px;padding:8px 10px;font-size:14px}.custom-subject-inputs select{border:1px solid #d8dbe2;border-radius:6px;padding:8px 10px;font-size:14px}.archetype-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px;display:grid}.archetype-card{text-align:left;cursor:pointer;background:#fff;border:2px solid #d8dbe2;border-radius:12px;padding:14px 16px;transition:all .15s}.archetype-card h4{margin:0 0 6px;font-size:15px}.archetype-card p{color:#6b7280;margin:0;font-size:13px;line-height:1.4}.archetype-card.active{border-color:var(--color-accent,#6c47ff);background:#6c5ce70f}.fine-tune-section{margin-bottom:24px}.fine-tune-section h3{margin-bottom:12px;font-size:16px}.fine-tune-card{background:#f9f9fc;border-radius:10px;margin-bottom:10px;padding:12px 16px}.fine-tune-card-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.fine-tune-subject-name{font-size:14px;font-weight:700}.fine-tune-scale-value{color:var(--color-accent,#6c47ff);font-weight:700}.fine-tune-card input[type=range]{width:100%}.fine-tune-description{color:#6b7280;margin:6px 0 0;font-size:13px}.fine-tune-notes-input{box-sizing:border-box;resize:vertical;border:1px solid #d8dbe2;border-radius:6px;width:100%;min-height:44px;margin-top:10px;padding:8px 10px;font-family:inherit;font-size:13px}.schedule-window-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.schedule-window-row input[type=time]{border:1px solid #d8dbe2;border-radius:6px;padding:8px 10px;font-size:14px}.schedule-days-row{gap:6px;display:flex}.time-per-day-row{flex-wrap:wrap;gap:6px;display:flex}.day-chip{cursor:pointer;background:#fff;border:2px solid #d8dbe2;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.day-chip.active{border-color:var(--color-accent,#6c47ff);color:var(--color-accent,#6c47ff);background:#6c5ce71a}.lunch-minutes-input{border:1px solid #d8dbe2;border-radius:6px;width:70px;padding:8px 10px;font-size:14px}.child-tabs-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.child-tab{cursor:pointer;background:#fff;border:1px solid #d8dbe2;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.child-tab:hover{border-color:#6c5ce7}.child-tab.active{color:#fff;background:#6c5ce7;border-color:#6c5ce7}.child-tab-count{background:#0000001f;border-radius:999px;padding:1px 7px;font-size:12px;font-weight:700}.child-tab.active .child-tab-count{background:#ffffff40}.copy-to-all-btn{margin-top:10px;margin-bottom:4px}.fine-tune-child-group{border-bottom:1px solid #e8e8ec;margin-bottom:24px;padding-bottom:16px}.fine-tune-child-group:last-child{border-bottom:none}.fine-tune-child-name{color:#6c5ce7;margin-bottom:12px;font-size:16px;font-weight:700}.working-level-section{border-top:1px solid #e5e5e5;margin-top:20px;padding-top:16px}.working-level-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.working-level-subject-name{flex-shrink:0;min-width:110px;font-weight:500}.working-level-input{flex:0 0 200px}.working-level-notes-input{flex:1}.onboarding-link-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.login-page{background:var(--ew-light-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--ew-light-panel);border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);box-shadow:var(--ew-shadow-soft);width:100%;max-width:380px;padding:40px}.login-card h2{color:var(--ew-text-on-light);margin-bottom:24px}.login-card form{flex-direction:column;gap:16px;display:flex}.login-card label{color:var(--ew-text-on-light);flex-direction:column;gap:6px;font-size:14px;display:flex}.login-card input{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);font-family:var(--ew-font-body);padding:10px 12px;font-size:15px}.login-card button[type=submit]{width:100%;margin-top:8px}.login-error{color:var(--ew-coral-dark);font-size:14px}.login-mode-toggle{width:100%;font-family:var(--ew-font-body);color:var(--ew-violet);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:16px;padding:0;font-size:14px;text-decoration:underline;display:block}.privacy-page{background:#f6f4ee;justify-content:center;min-height:100vh;padding:40px 16px;display:flex}.privacy-card{background:#fff;border-radius:12px;width:100%;max-width:720px;padding:32px 36px 48px;line-height:1.6;box-shadow:0 1px 3px #00000014}.privacy-back{color:#6b5b3e;margin-bottom:20px;font-size:14px;text-decoration:none;display:inline-block}.privacy-back:hover{text-decoration:underline}.privacy-card h1{margin:0 0 4px}.privacy-updated{color:#7a7266;margin:0 0 20px;font-size:13px}.privacy-draft-notice{background:#fdf3d9;border:1px solid #e8d9a0;border-radius:8px;margin-bottom:28px;padding:12px 16px;font-size:13px}.privacy-card h2{margin:28px 0 10px;font-size:18px}.privacy-card p,.privacy-card li{color:#2f2b22;font-size:14.5px}.privacy-card ul{margin:8px 0 16px;padding-left:22px}.admin-auth-loading{min-height:100vh;font-family:var(--ew-font-body);color:var(--ew-text-muted);background:var(--ew-light-bg);justify-content:center;align-items:center;display:flex}.admin-shell{background:var(--ew-light-bg);min-height:100vh;font-family:var(--ew-font-body);color:var(--ew-text-on-light)}.admin-topbar{background:var(--ew-bg-deep);color:var(--ew-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.admin-topbar-left{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.admin-wordmark{font-family:var(--ew-font-display);letter-spacing:.02em;font-size:1.05rem;font-weight:700}.admin-wordmark-badge{color:var(--ew-gold)}.admin-nav{gap:4px;display:flex}.admin-nav-link{color:var(--ew-text-muted);border-radius:var(--ew-radius-sm);transition:background var(--ew-duration-fast) ease, color var(--ew-duration-fast) ease;padding:6px 12px;font-size:.92rem;font-weight:600;text-decoration:none}.admin-nav-link:hover{color:var(--ew-text);background:#ffffff14}.admin-nav-link.active{color:var(--ew-text);background:var(--ew-violet)}.admin-topbar-email{color:var(--ew-text-muted);font-size:.85rem}.admin-main{max-width:1200px;margin:0 auto;padding:28px 24px 64px}.admin-page-title{font-family:var(--ew-font-display);margin:0 0 4px;font-size:1.6rem;font-weight:700}.admin-page-subtitle{color:var(--ew-text-muted);margin:0 0 24px;font-size:.95rem}.admin-card{background:var(--ew-light-panel);border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);padding:20px;box-shadow:0 1px 8px #1f1a4a0d}.admin-loading,.admin-empty{color:var(--ew-text-muted);padding:24px 4px}.admin-error{color:var(--ew-coral-dark);border-radius:var(--ew-radius-sm);background:#e5484d14;border:1px solid #e5484d40;margin-bottom:16px;padding:10px 14px;font-size:.9rem}.admin-success{color:var(--ew-grass-dark);border-radius:var(--ew-radius-sm);background:#22c55e1a;border:1px solid #22c55e4d;margin-bottom:16px;padding:10px 14px;font-size:.9rem}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ew-text-muted);border-bottom:1px solid var(--ew-light-border);white-space:nowrap;padding:8px 12px;font-size:.75rem}.admin-table td{border-bottom:1px solid var(--ew-light-border);vertical-align:top;padding:12px}.admin-table tr:last-child td{border-bottom:none}.admin-table-row-link{color:var(--ew-text-on-light);font-weight:600;text-decoration:none}.admin-table-row-link:hover{color:var(--ew-violet)}.admin-table-sub{color:var(--ew-text-muted);font-size:.82rem}.admin-pill{border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:600;display:inline-block}.admin-pill-active{color:var(--ew-grass-dark);background:#22c55e1f}.admin-pill-inactive{color:var(--ew-text-muted);background:#b8b4d640}.admin-pill-warn{color:var(--ew-gold-dark);background:#d9a44126}.admin-pill-bad{color:var(--ew-coral-dark);background:#e5484d1f}.admin-back-link{color:var(--ew-violet);margin-bottom:12px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}.admin-detail-grid{grid-template-columns:2fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=860px){.admin-detail-grid{grid-template-columns:1fr}}.admin-section-title{font-family:var(--ew-font-display);margin:0 0 12px;font-size:1.05rem;font-weight:700}.admin-child-card{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-md);margin-bottom:12px;padding:14px 16px}.admin-child-card:last-child{margin-bottom:0}.admin-child-header{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.admin-child-name{font-weight:700}.admin-child-meta{color:var(--ew-text-muted);font-size:.82rem}.admin-track-list{flex-wrap:wrap;gap:6px;display:flex}.admin-track-chip{background:var(--ew-light-bg);border:1px solid var(--ew-light-border);color:var(--ew-text-on-light);border-radius:999px;padding:3px 9px;font-size:.78rem}.admin-track-chip.pace-needs_attention{color:var(--ew-coral-dark);background:#e5484d1a;border-color:#e5484d40}.admin-track-chip.pace-ahead,.admin-track-chip.pace-complete,.admin-track-chip.pace-on_track{color:var(--ew-grass-dark);background:#22c55e1a;border-color:#22c55e40}.admin-actions-list{flex-direction:column;gap:10px;display:flex}.admin-action-row{border-bottom:1px solid var(--ew-light-border);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.admin-action-row:last-child{border-bottom:none}.admin-action-label{font-size:.88rem}.admin-action-hint{color:var(--ew-text-muted);margin-top:2px;font-size:.78rem;display:block}.admin-btn{font-family:var(--ew-font-body);border:1px solid var(--ew-light-border);background:var(--ew-light-panel);color:var(--ew-text-on-light);border-radius:var(--ew-radius-sm);cursor:pointer;white-space:nowrap;padding:7px 14px;font-size:.85rem;font-weight:600}.admin-btn:hover{border-color:var(--ew-violet);color:var(--ew-violet)}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-danger{border-color:var(--ew-coral);color:var(--ew-coral)}.admin-btn-danger:hover{background:var(--ew-coral);color:#fff}.admin-btn-primary{background:var(--ew-violet);border-color:var(--ew-violet);color:#fff;width:100%}.admin-btn-primary:hover{background:var(--ew-violet-dark);border-color:var(--ew-violet-dark);color:#fff}.admin-step-up-wrap{justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:16px;display:flex}.admin-step-up-card{background:var(--ew-light-panel);border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-lg);width:100%;max-width:360px;padding:28px;box-shadow:0 1px 8px #1f1a4a0d}.admin-step-up-title{font-family:var(--ew-font-display);margin:0 0 6px;font-size:1.2rem;font-weight:700}.admin-step-up-subtitle{color:var(--ew-text-muted);margin:0 0 16px;font-size:.88rem}.admin-child-item-row{justify-content:space-between;align-items:center;padding:6px 0;font-size:.85rem;display:flex}.admin-modal-backdrop{z-index:100;background:#17143380;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.admin-modal{background:var(--ew-light-panel);border-radius:var(--ew-radius-lg);width:100%;max-width:440px;padding:24px}.admin-modal-title{font-family:var(--ew-font-display);color:var(--ew-coral-dark);margin:0 0 10px;font-size:1.1rem;font-weight:700}.admin-modal-body{color:var(--ew-text-on-light);margin-bottom:14px;font-size:.9rem;line-height:1.5}.admin-modal-input{box-sizing:border-box;width:100%;font-family:var(--ew-font-body);border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);margin-bottom:14px;padding:9px 12px;font-size:.9rem}.admin-modal-actions{justify-content:flex-end;gap:10px;display:flex}.admin-usage-total{font-family:var(--ew-font-display);font-size:2rem;font-weight:700}.admin-usage-total-label{color:var(--ew-text-muted);font-size:.85rem}.admin-usage-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}@media (width<=720px){.admin-usage-grid{grid-template-columns:1fr}}.admin-usage-bar-row{align-items:center;gap:10px;padding:6px 0;font-size:.85rem;display:flex}.admin-usage-bar-label{text-overflow:ellipsis;white-space:nowrap;flex:0 0 150px;overflow:hidden}.admin-usage-bar-track{background:var(--ew-light-bg);border-radius:999px;flex:1;height:8px;overflow:hidden}.admin-usage-bar-fill{background:var(--ew-violet);border-radius:999px;height:100%}.admin-usage-bar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--ew-text-muted);flex:0 0 70px}.admin-impersonate-banner{background:var(--ew-gold);color:#fff;text-align:center;padding:10px 24px;font-size:.88rem;font-weight:600}.admin-sound-progress{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-sound-bar{background:var(--ew-light-border);border-radius:4px;flex:1;min-width:120px;height:8px;overflow:hidden}.admin-sound-bar>span{background:var(--ew-grass-dark);height:100%;display:block}.admin-sound-list{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;margin:12px 0 24px;display:grid}.admin-sound{border:1px solid var(--ew-light-border);border-radius:var(--ew-radius-sm);background:#fff;flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex}.admin-sound.is-approved{border-color:#22c55e80}.admin-sound.is-locked{opacity:.55}.admin-sound-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.admin-sound-say{font-family:var(--ew-font-display);color:var(--ew-text-on-light);font-size:1.5rem;font-weight:700}.admin-sound-key{color:var(--ew-text-muted);flex:1;font-size:.85rem}.admin-sound-player{width:100%;height:36px}.admin-sound-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-sound-trim{flex-direction:column;gap:8px;display:flex}.admin-sound-wave{border:1px solid var(--ew-light-border);background:#fff;border-radius:6px;width:100%;height:90px}.admin-sound-sliders{grid-template-columns:110px 1fr;align-items:center;gap:4px 10px;font-size:.82rem;display:grid}.admin-sound-sliders input{width:100%}.admin-sound-note{color:#4a4658;margin:0;font-size:.85rem;line-height:1.4}.admin-hold{margin-bottom:16px}.admin-hold-label{text-transform:uppercase;letter-spacing:.06em;opacity:.7;margin:16px 0 6px;font-size:.78rem}.admin-hold-list{margin:0 0 8px;padding-left:20px;line-height:1.5}.admin-hold-flagged li{font-style:italic}.admin-hold-reasoning,.admin-hold-story{white-space:pre-wrap;margin:0 0 10px;line-height:1.55}.admin-hold-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}
