:root{font-family:Avenir Next,Avenir,Segoe UI,system-ui,sans-serif;color:#203b31;background:#f8f4ec;font-synthesis:none;text-rendering:optimizeLegibility;--canvas: #f8f4ec;--surface: #fffdf8;--surface-raised: #ffffff;--text: #203b31;--muted: #557066;--border: #dde3dc;--action: #2f6654;--action-hover: #244f42;--action-ink: #ffffff;--focus: #286f9b;--warning: #8a6d19;--danger: #a0463b;--sage: #d8e6d7;--coral: #f4d1c7;--yellow: #f7e5ad;--blue: #cee2e5;--daily-note-surface: #eef0ef;--daily-note-surface-hover: #e4e7e5;--daily-note-border: #cbd1ce}:root[data-theme=dark]{color:#edf4ef;background:#101c18;--canvas: #101c18;--surface: #172720;--surface-raised: #20372e;--text: #edf4ef;--muted: #b4c5bd;--border: #355046;--action: #8bc1aa;--action-hover: #a5d0bd;--action-ink: #102219;--focus: #78c7f2;--warning: #d9bd65;--danger: #e4a297;--sage: #29483a;--coral: #57372f;--yellow: #4d4328;--blue: #294751;--daily-note-surface: #29322e;--daily-note-surface-hover: #323d38;--daily-note-border: #4b5952}:root[data-theme-preset=coastal]{--action: #365f73;--action-hover: #294a5a;--sage: #d5e7ec;--coral: #ead6d0;--yellow: #eee5ba;--blue: #c9e2ea}:root[data-theme=dark][data-theme-preset=coastal]{--action: #8fbfd0;--action-hover: #aad0dd;--action-ink: #10202a;--sage: #25414a;--coral: #513d3a;--yellow: #49452f;--blue: #284a58}:root[data-theme-preset=lavender]{--action: #655082;--action-hover: #4f3e68;--sage: #e3dcef;--coral: #efd6df;--yellow: #eee2bd;--blue: #d5dfed}:root[data-theme=dark][data-theme-preset=lavender]{--action: #c2a9e4;--action-hover: #d1bbed;--action-ink: #21172e;--sage: #403653;--coral: #573842;--yellow: #4c432e;--blue: #344254}:root[data-theme-preset=sunrise]{--action: #985143;--action-hover: #783e34;--sage: #e9dfcf;--coral: #f3cec1;--yellow: #f4dfae;--blue: #d5e2df}:root[data-theme=dark][data-theme-preset=sunrise]{--action: #efad98;--action-hover: #f5c0ae;--action-ink: #2b1712;--sage: #443f33;--coral: #5d382f;--yellow: #51432a;--blue: #304744}:root[data-theme-preset=blossom]{--action: #8a5268;--action-hover: #6d4052;--sage: #eadde2;--coral: #f1d4dc;--yellow: #eee1bb;--blue: #d7e1e6}:root[data-theme=dark][data-theme-preset=blossom]{--action: #dfa6b8;--action-hover: #edbdca;--action-ink: #291920;--sage: #49363e;--coral: #593744;--yellow: #4d422c;--blue: #34434b}:root[data-theme-preset=honey]{--action: #796020;--action-hover: #604a17;--sage: #e7e1ca;--coral: #edd8ca;--yellow: #f3e3ad;--blue: #d5e2dc}:root[data-theme=dark][data-theme-preset=honey]{--action: #dec27b;--action-hover: #ead496;--action-ink: #251c08;--sage: #454333;--coral: #523d35;--yellow: #52482b;--blue: #304641}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas);color:var(--text)}button,input,select,textarea{font:inherit}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 58%,transparent);opacity:1;font-weight:400}button{color:inherit}button,select,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[tabindex="-1"]:focus{outline:none}h1,h2,h3{scroll-margin-top:24px}.skip-link{position:fixed;z-index:10;top:12px;left:12px;padding:10px 14px;border-radius:8px;background:var(--surface-raised);color:var(--text);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh;display:grid;grid-template-columns:224px minmax(0,1fr);transition:grid-template-columns .18s ease}.app-shell.nav-collapsed{grid-template-columns:76px minmax(0,1fr)}.workspace-tools{position:fixed;z-index:4;top:16px;right:20px}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;display:flex;flex-direction:column;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface) 80%,transparent)}.brand-lockup{display:flex;align-items:center;gap:10px;margin:0 8px 42px;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:22px;font-weight:700}.brand-lockup img{width:34px;height:34px;object-fit:contain}.sidebar-collapse{position:absolute;z-index:2;top:68px;right:-14px;width:28px;height:28px;padding:6px;display:grid;place-items:center;border:1px solid var(--border);border-radius:99px;background:var(--surface-raised);color:var(--muted);cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb,var(--text) 9%,transparent)}.sidebar-collapse:hover{color:var(--text);background:var(--sage)}.sidebar-collapse svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sidebar nav{display:grid;gap:6px}.nav-item{min-height:44px;padding:10px 12px;display:flex;gap:12px;align-items:center;border:0;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;text-align:left;text-decoration:none}.nav-item:hover{background:color-mix(in srgb,var(--sage) 45%,transparent)}.nav-item.active{background:var(--sage);font-weight:700}.nav-icon{width:20px;height:20px;display:grid;place-items:center}.nav-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.nav-collapsed .sidebar{padding-inline:12px}.nav-collapsed .brand-lockup{justify-content:center;margin-inline:0}.nav-collapsed .brand-lockup>span,.nav-collapsed .nav-label,.nav-collapsed .adult-identity,.nav-collapsed .sign-out-label{display:none}.nav-collapsed .nav-item{justify-content:center;padding-inline:10px}.nav-collapsed .signed-in-as{grid-template-columns:38px;justify-content:center;padding-inline:7px}.sidebar-footer{margin-top:auto;display:grid;gap:8px;color:var(--muted);font-size:13px}.signed-in-as{width:100%;margin-bottom:8px;padding:9px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;border:0;border-radius:9px;background:transparent;color:var(--text);cursor:pointer;text-align:left;text-decoration:none}.signed-in-as:hover,.signed-in-as:focus-visible,.signed-in-as.active{background:color-mix(in srgb,var(--sage) 42%,transparent)}.adult-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#253b33;font-size:16px;font-weight:400}.adult-identity{min-width:0;display:grid;gap:2px}.adult-identity strong,.adult-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adult-identity small{color:var(--muted);font-size:12px}.adult-avatar.person-sage,.profile-avatar.person-sage{background:#cfe1d2}.adult-avatar.person-blue,.profile-avatar.person-blue{background:#c9e0e9}.adult-avatar.person-coral,.profile-avatar.person-coral{background:#f1c9be}.adult-avatar.person-gold,.profile-avatar.person-gold{background:#f2df9e}.adult-avatar.person-lilac,.profile-avatar.person-lilac{background:#ded1e8}.adult-avatar.person-mint,.profile-avatar.person-mint{background:#c7e5d4}.adult-avatar.person-teal,.profile-avatar.person-teal{background:#bcdfe0}.adult-avatar.person-rose,.profile-avatar.person-rose{background:#efcbd8}.adult-avatar.person-peach,.profile-avatar.person-peach{background:#f4d0b5}.adult-avatar.person-slate,.profile-avatar.person-slate{background:#ced5df}.theme-control{position:relative}.theme-toggle{width:36px;height:36px;padding:8px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 78%,transparent);color:var(--muted);cursor:pointer;opacity:.82;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .16s ease,color .16s ease,background .16s ease}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--text);background:var(--surface-raised);opacity:1}.theme-toggle svg,.theme-menu svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-menu{position:absolute;top:calc(100% + 8px);right:0;width:156px;padding:6px;display:grid;gap:2px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-raised) 96%,transparent);box-shadow:0 14px 40px color-mix(in srgb,var(--text) 16%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.theme-menu button{min-height:40px;padding:8px 9px;display:grid;grid-template-columns:20px 1fr 18px;align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.theme-menu button:hover,.theme-menu button:focus-visible{background:var(--sage)}.theme-menu button[aria-checked=true]{font-weight:700}.theme-check{color:var(--action);text-align:center}main{width:100%;max-width:1180px;min-width:0;margin:0 auto;padding:52px clamp(24px,5vw,72px) 90px}.page-header{display:flex;align-items:end;justify-content:space-between;gap:24px}.page-header>:first-child{min-width:0;flex:1 1 auto}.page-header-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.eyebrow{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Iowan Old Style,Baskerville,Georgia,serif}h1{max-width:720px;margin-bottom:12px;font-size:clamp(38px,5vw,58px);line-height:1.03;letter-spacing:-.03em}h2{margin-bottom:0;font-size:clamp(24px,3vw,32px);line-height:1.15}.lede{width:100%;max-width:none;margin-bottom:0;color:var(--muted);font-size:17px;line-height:1.6}.primary-action{min-height:44px;flex:0 0 auto;padding:11px 18px;border:0;border-radius:9px;background:var(--action);color:var(--action-ink);font-weight:700;cursor:pointer}.primary-action:hover{background:var(--action-hover)}.danger-action{min-height:42px;padding:9px 15px;border:1px solid color-mix(in srgb,var(--danger) 45%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);font-weight:700;cursor:pointer}.danger-action:disabled{opacity:.55;cursor:not-allowed}.link-action{display:inline-grid;place-items:center;text-decoration:none}.primary-action:disabled,.secondary-action:disabled,.text-action:disabled{opacity:.55;cursor:not-allowed}.primary-action.compact{min-height:40px;padding:8px 14px}.secondary-action{min-height:42px;padding:9px 15px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-weight:700;cursor:pointer}.secondary-action:hover{background:color-mix(in srgb,var(--sage) 38%,var(--surface))}.reassurance{margin:36px 0;padding:14px 16px;display:flex;gap:10px;align-items:center;border:1px solid color-mix(in srgb,var(--action) 28%,var(--border));border-radius:12px;color:var(--muted);background:color-mix(in srgb,var(--sage) 38%,transparent)}.content-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,.8fr);gap:28px;align-items:start}.content-grid.today-learning-only{grid-template-columns:minmax(0,1fr)}.section-heading{margin-bottom:18px;display:flex;align-items:end;justify-content:space-between;gap:12px}.section-actions{display:flex;align-items:center;gap:14px}.enter-student-mode{min-height:38px;padding:8px 13px;border-color:color-mix(in srgb,var(--action) 30%,var(--border));background:color-mix(in srgb,var(--sage) 68%,var(--surface));color:var(--text);font-size:13px;box-shadow:0 2px 8px color-mix(in srgb,var(--action) 8%,transparent)}.enter-student-mode:hover{border-color:color-mix(in srgb,var(--action) 45%,var(--border));background:color-mix(in srgb,var(--sage) 88%,var(--surface))}.text-action{min-height:40px;border:0;background:transparent;color:var(--action);font-weight:700;cursor:pointer}.plan-list{display:grid;gap:12px}.plan-card{min-height:82px;padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--border);border-left:5px solid var(--action);border-radius:12px;background:var(--surface)}.plan-card.sage{border-left-color:#6f987f}.plan-card.blue{border-left-color:#6e9eaa}.plan-card.coral{border-left-color:#c66a56}.plan-card.person-sage{border-left-color:#6f987f}.plan-card.person-blue{border-left-color:#6e9eaa}.plan-card.person-coral{border-left-color:#c66a56}.plan-card.person-gold{border-left-color:#b39232}.plan-card.person-lilac{border-left-color:#8c6aa4}.plan-card.person-mint{border-left-color:#5c9c78}.plan-card.person-teal{border-left-color:#438d90}.plan-card.person-rose{border-left-color:#aa637d}.plan-card.person-peach{border-left-color:#b6764d}.plan-card.person-slate{border-left-color:#6f7d91}.plan-card.completed{opacity:.66}.plan-card.completed h3{text-decoration:line-through}.routine-plan-card{border-left-color:#8c6aa4;background:color-mix(in srgb,#ded1e8 24%,var(--surface))}.routine-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:99px;background:color-mix(in srgb,#ded1e8 70%,var(--surface));color:#6f527f}.routine-mark .planner-item-icon{width:16px;height:16px}.today-plan-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.check-button{width:25px;height:25px;border:2px solid var(--muted);border-radius:7px;background:transparent;cursor:pointer}.check-button[aria-pressed=true],.check-button.read-only:not(:empty){display:grid;place-items:center;border-color:var(--action);background:var(--action);color:var(--action-ink);font-size:13px;font-weight:800}.check-button:disabled{cursor:wait;opacity:.55}.check-button.read-only{cursor:default}.plan-meta{margin-bottom:4px;color:var(--muted);font-size:13px}.plan-card h3{margin-bottom:0;font-size:16px;line-height:1.4}.more-button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:26px;text-decoration:none;cursor:pointer}.more-button:hover{background:var(--sage)}.plan-empty{padding:26px;display:grid;gap:5px;border:1px dashed var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 72%,transparent)}.plan-empty span{color:var(--muted);font-size:14px}.family-card{padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.family-card h2{margin-bottom:24px}.family-event{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:14px 0;border-block:1px solid var(--border)}.family-event time{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.family-event div{display:grid;gap:5px}.family-event span,.quiet-copy{color:var(--muted);font-size:13px;line-height:1.55}.quiet-copy{margin:18px 0 0}.mobile-nav{display:none}.student-gate,.student-workspace{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--sage) 42%,transparent),transparent 46%),var(--canvas)}.student-brand{display:flex;align-items:center;gap:10px;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:21px;font-weight:700}.student-brand img{width:34px;height:34px;object-fit:contain}.student-brand.centered{width:fit-content;margin:0 auto;padding-top:38px}.student-chooser{width:min(620px,calc(100% - 36px));margin:clamp(48px,9vh,90px) auto 40px;padding:clamp(26px,5vw,48px);border:1px solid var(--border);border-radius:24px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 22px 70px color-mix(in srgb,var(--text) 8%,transparent);text-align:center}.student-chooser h1{margin-inline:auto;font-size:clamp(38px,7vw,54px)}.student-chooser .lede{margin-inline:auto}.student-profiles{margin:34px 0 26px;display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.student-profiles button{min-width:118px;padding:16px 14px;display:grid;place-items:center;gap:10px;border:1px solid transparent;border-radius:16px;background:transparent;cursor:pointer}.student-profiles button:hover,.student-profiles button.selected{border-color:color-mix(in srgb,var(--action) 34%,var(--border));background:color-mix(in srgb,var(--sage) 46%,transparent)}.student-avatar{width:70px;height:70px;display:grid;place-items:center;border-radius:50%;color:#203b31;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:34px;font-weight:400}.student-mini-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#203b31;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:18px;font-weight:400}.student-avatar.person-sage,.student-mini-avatar.person-sage{background:#c9ddc8}.student-avatar.person-blue,.student-mini-avatar.person-blue{background:#bdd9de}.student-avatar.person-coral,.student-mini-avatar.person-coral{background:#efc3b8}.student-avatar.person-gold,.student-mini-avatar.person-gold{background:#ecd991}.student-avatar.person-lilac,.student-mini-avatar.person-lilac{background:#d9c8e8}.student-avatar.person-mint,.student-mini-avatar.person-mint{background:#c8e6d1}.student-avatar.person-teal,.student-mini-avatar.person-teal{background:#bcdfe0}.student-avatar.person-rose,.student-mini-avatar.person-rose{background:#efcbd8}.student-avatar.person-peach,.student-mini-avatar.person-peach{background:#f4d0b5}.student-avatar.person-slate,.student-mini-avatar.person-slate{background:#ced5df}.student-pin-form{max-width:360px;margin:26px auto 0;display:grid;gap:10px;text-align:left}.student-pin-form label{color:var(--muted);font-size:13px;font-weight:700}.student-pin-form input{min-height:48px;padding:10px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);color:var(--text);font-size:18px}.student-pin-form input[inputmode=numeric]{text-align:center;font-size:25px;letter-spacing:.2em}.student-adult-link{margin-top:26px;border:0;background:transparent;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.student-empty{margin:30px 0 10px;padding:26px;display:grid;gap:6px;border:1px dashed var(--border);border-radius:14px;color:var(--muted);background:color-mix(in srgb,var(--surface) 70%,transparent)}.student-empty strong{color:var(--text)}.student-header{min-height:78px;padding:18px clamp(20px,5vw,68px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 82%,transparent)}.student-header-actions{display:flex;align-items:center;gap:10px}.student-exit-action{display:inline-flex;align-items:center;gap:7px}.student-exit-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.student-today{width:min(900px,calc(100% - 40px));margin:0 auto;padding:clamp(48px,8vh,80px) 0 70px}.student-today h1{margin-bottom:12px}.student-loading{margin-top:34px;color:var(--muted)}.student-lesson-list{margin-top:36px;display:grid;gap:14px}.student-lesson{min-height:116px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);border-left:6px solid var(--action);border-radius:16px;background:var(--surface)}.student-lesson.person-sage{border-left-color:#6f987f}.student-lesson.person-blue{border-left-color:#6e9eaa}.student-lesson.person-coral{border-left-color:#c66a56}.student-lesson.person-gold{border-left-color:#b39232}.student-lesson.person-lilac{border-left-color:#8c6aa4}.student-lesson.person-mint{border-left-color:#5c9c78}.student-lesson.person-teal{border-left-color:#438d90}.student-lesson.person-rose{border-left-color:#aa637d}.student-lesson.person-peach{border-left-color:#b6764d}.student-lesson.person-slate{border-left-color:#6f7d91}.student-lesson p{margin-bottom:4px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.student-lesson h2{margin-bottom:7px;font-size:23px}.student-lesson div>span{color:var(--muted);font-size:14px}.student-lesson-state{padding:7px 11px;border-radius:99px;background:color-mix(in srgb,var(--sage) 66%,var(--surface));color:var(--text);font-size:12px;font-weight:800}.student-lesson-actions{display:grid;justify-items:end;gap:10px;flex:0 0 auto}.student-supplements{margin-top:34px}.student-supplements>h2{margin-top:3px;font-size:23px}.student-supplement-list{margin-top:14px;display:grid;gap:14px}.student-supplement{min-height:96px}.student-supplement-copy{display:flex;align-items:center;gap:14px}.student-supplement-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:var(--action);background:color-mix(in srgb,var(--sage) 62%,var(--surface))}.student-supplement-icon .planner-item-icon{width:21px;height:21px}.student-supplement h3{margin:0 0 5px;font-size:20px}.student-review-feedback{margin:16px 0 0;padding:11px 13px;display:grid;gap:3px;border-left:3px solid var(--action);background:color-mix(in srgb,var(--sage) 38%,var(--surface));color:var(--muted);font-size:13px;font-style:normal;line-height:1.45}.student-review-feedback strong{color:var(--text);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.review-queue{margin:22px 0 28px;padding:20px;display:grid;gap:14px;border:1px solid color-mix(in srgb,var(--action) 28%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--sage) 22%,var(--surface))}.review-queue .section-heading{align-items:center}.review-queue .section-heading h2{margin:2px 0 0;font-size:21px}.review-count{min-width:28px;height:28px;padding:0 8px;display:grid;place-items:center;border-radius:999px;background:var(--action);color:var(--action-text);font-size:12px;font-weight:800}.review-list{display:grid;gap:9px}.review-card{padding:14px 15px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid var(--border);border-left:4px solid var(--action);border-radius:11px;background:var(--surface)}.review-card.person-sage{border-left-color:#6f987f}.review-card.person-blue{border-left-color:#6e9eaa}.review-card.person-coral{border-left-color:#c66a56}.review-card.person-gold{border-left-color:#b39232}.review-card.person-lilac{border-left-color:#8c6aa4}.review-card.person-mint{border-left-color:#5c9c78}.review-card.person-teal{border-left-color:#438d90}.review-card.person-rose{border-left-color:#aa637d}.review-card.person-peach{border-left-color:#b6764d}.review-card.person-slate{border-left-color:#6f7d91}.review-card h3{margin:3px 0 0;font-size:15px}.review-actions{display:flex;gap:8px}.review-return-form{width:min(420px,42vw);display:grid;gap:7px}.review-return-form label{font-size:12px;font-weight:750}.review-return-form textarea{min-height:70px;resize:vertical}.review-return-form>div{display:flex;justify-content:flex-end;align-items:center;gap:10px}.wide-main{max-width:1280px}.planner-main{min-height:100vh;max-width:none;padding:34px clamp(20px,3vw,42px) 28px;display:flex;flex-direction:column}.household-page{display:grid;gap:32px}.learn-nav{width:fit-content;padding:4px;display:flex;gap:3px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--surface) 78%,transparent)}.learn-nav a{min-height:38px;padding:8px 14px;display:grid;place-items:center;border-radius:8px;color:var(--muted);font-size:14px;font-weight:700;text-decoration:none}.learn-nav a:hover{color:var(--text);background:color-mix(in srgb,var(--sage) 38%,transparent)}.learn-nav a.active{color:var(--text);background:var(--sage)}.household-header h1{margin-bottom:12px}.household-capacity{padding:15px 18px;display:flex;gap:26px;flex-wrap:wrap;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--sage) 32%,var(--surface));color:var(--muted);font-size:14px}.household-capacity strong{color:var(--text);font-variant-numeric:tabular-nums}.household-loading{padding:48px 0;color:var(--muted)}.empty-state{max-width:680px;padding:clamp(32px,6vw,58px);display:grid;justify-items:start;border:1px dashed color-mix(in srgb,var(--action) 42%,var(--border));border-radius:18px;background:color-mix(in srgb,var(--surface) 80%,transparent)}.empty-state h2{margin:12px 0}.empty-state p{max-width:520px;margin-bottom:24px;color:var(--muted);line-height:1.6}.empty-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--sage);font-size:25px}.learner-section{display:grid}.learner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.learner-card{position:relative;min-width:0;padding:22px;display:grid;gap:18px;align-content:start;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.learner-card>.learner-identity{padding-right:30px}.learner-card-edit{position:absolute;top:14px;right:14px;width:32px;height:32px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.learner-card-edit:hover{border-color:var(--border);background:var(--surface-raised);color:var(--action)}.learner-card-edit svg{width:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.learner-card-edit:disabled{cursor:default;opacity:.55}.learner-identity{min-width:0;display:flex;align-items:center;gap:13px}.learner-identity>div{min-width:0;display:grid;gap:3px}.learner-identity strong{overflow:hidden;text-overflow:ellipsis;font-size:17px}.learner-identity div span{color:var(--muted);font-size:13px}.learner-avatar{width:45px;height:45px;flex:0 0 auto;display:grid;place-items:center;border-radius:14px;color:#253b33;font-size:20px;font-weight:400}.learner-avatar.person-sage{background:#cfe1d2}.learner-avatar.person-blue{background:#c9e0e9}.learner-avatar.person-coral{background:#f1c9be}.learner-avatar.person-gold{background:#f2df9e}.learner-avatar.person-lilac{background:#ded1e8}.learner-avatar.person-mint{background:#c7e5d4}.learner-avatar.person-teal{background:#bcdfe0}.learner-avatar.person-rose{background:#efcbd8}.learner-avatar.person-peach{background:#f4d0b5}.learner-avatar.person-slate{background:#ced5df}.learner-details{margin:0;display:grid;gap:10px}.learner-details div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px}.learner-details dt{color:var(--muted);font-size:13px}.learner-details dd{margin:0;font-size:13px;line-height:1.45;text-transform:capitalize}.pin-status{margin:0;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.pin-status span{color:var(--action)}.card-actions,.button-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.card-actions{padding-top:2px;border-top:1px solid var(--border)}.card-actions .text-action{padding-inline:5px}.text-action.danger{color:#a0463b;margin-left:auto}.pin-form{padding:16px;display:grid;gap:14px;border-radius:12px;background:color-mix(in srgb,var(--sage) 28%,transparent)}.learner-form{padding:clamp(22px,4vw,34px);display:grid;gap:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.learner-grid>.learner-form{grid-column:1 / -1}.learner-form-heading{align-items:center}.profile-preview{width:52px;height:52px;font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field select{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font-weight:500}.color-fieldset{min-width:0;margin:0;padding:0;grid-column:1 / -1;border:0}.color-fieldset legend{margin-bottom:9px;font-size:14px;font-weight:700}.color-options{display:flex;gap:9px;flex-wrap:wrap}.color-choice{position:relative;min-width:104px;min-height:46px;padding:7px 11px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;color:var(--muted);background:var(--surface-raised);font-size:13px;font-weight:700;cursor:pointer}.color-choice.selected{border-color:var(--action);color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 22%,transparent)}.color-choice input{position:absolute;opacity:0}.color-choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.color-swatch{width:24px;height:24px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:8px}.color-swatch.person-sage{background:#cfe1d2}.color-swatch.person-blue{background:#c9e0e9}.color-swatch.person-coral{background:#f1c9be}.color-swatch.person-gold{background:#f2df9e}.color-swatch.person-lilac{background:#ded1e8}.color-swatch.person-mint{background:#c7e5d4}.color-swatch.person-teal{background:#bcdfe0}.color-swatch.person-rose{background:#efcbd8}.color-swatch.person-peach{background:#f4d0b5}.color-swatch.person-slate{background:#ced5df}.learning-time-field{grid-column:1 / -1}.range-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;color:var(--muted);font-size:12px;font-weight:500}.range-heading output{color:var(--text);font-size:16px;font-weight:800}.learning-time-field input[type=range]{width:100%;min-height:32px;accent-color:var(--action);cursor:pointer}.permission-fieldset{margin:0;padding:18px;border:1px solid var(--border);border-radius:12px}.permission-fieldset legend{padding:0 7px;font-weight:700}.permission-fieldset>p{margin-bottom:15px;color:var(--muted);font-size:13px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 20px}.check-field{min-height:38px;display:flex;align-items:center;gap:9px;font-size:14px}.check-field input{width:18px;height:18px;accent-color:var(--action)}.archived-section{padding-top:26px;border-top:1px solid var(--border)}.archived-list{display:grid;gap:8px}.archived-row{padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 75%,transparent)}.course-page{display:grid;gap:32px}.course-columns{min-width:0;display:grid;align-items:start;gap:14px;overflow-x:auto;padding-bottom:4px}.learner-course-column{min-width:210px;padding:12px;display:grid;align-content:start;gap:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface-raised) 70%,transparent)}.learner-course-column-heading{min-height:42px;padding:2px 3px 10px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.learner-course-column-heading>div{min-width:0;display:grid;gap:1px}.learner-course-column-heading h2{overflow-wrap:anywhere;font-size:18px}.learner-course-column-heading>div>span{color:var(--muted);font-size:11px}.learner-course-list{display:grid;gap:10px}.course-column-empty{margin:0;padding:22px 10px;color:var(--muted);font-size:12px;text-align:center}.course-card{min-width:0;padding:24px;display:grid;gap:22px;align-content:start;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.learner-course-column .course-card{padding:16px;gap:15px;border-radius:12px}.learner-course-tint{--learner-course-tint-weight: 50%;background:color-mix(in srgb,var(--learner-course-color) var(--learner-course-tint-weight),var(--surface));border-color:color-mix(in srgb,var(--learner-course-color) 45%,var(--border))}.learner-course-tint.person-sage{--learner-course-color: #cfe1d2}.learner-course-tint.person-blue{--learner-course-color: #c9e0e9}.learner-course-tint.person-coral{--learner-course-color: #f1c9be}.learner-course-tint.person-gold{--learner-course-color: #f2df9e}.learner-course-tint.person-lilac{--learner-course-color: #ded1e8}.learner-course-tint.person-mint{--learner-course-color: #c7e5d4}.learner-course-tint.person-teal{--learner-course-color: #bcdfe0}.learner-course-tint.person-rose{--learner-course-color: #efcbd8}.learner-course-tint.person-peach{--learner-course-color: #f4d0b5}.learner-course-tint.person-slate{--learner-course-color: #ced5df}:root[data-theme=dark] .learner-course-tint{--learner-course-tint-weight: 14%;border-color:color-mix(in srgb,var(--learner-course-color) 18%,var(--border))}.course-card-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.course-card-heading>div{min-width:0}.course-card-heading h2,.course-card-heading h3{overflow-wrap:anywhere;font-size:clamp(19px,2vw,24px)}.course-card-edit{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.course-card-edit:hover{border-color:var(--border);background:var(--surface-raised);color:var(--action)}.course-card-edit svg{width:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.course-learners{display:flex;gap:9px 14px;flex-wrap:wrap}.course-learner{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;font-weight:700}.learner-avatar.small{width:32px;height:32px;border-radius:10px;font-size:14px}.course-next-step{margin:0;padding-top:16px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}.course-card-actions{padding-top:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--border)}.course-filter-bar{padding:12px;display:flex;align-items:end;justify-content:space-between;gap:14px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-raised) 72%,var(--surface));box-shadow:inset 0 1px color-mix(in srgb,white 34%,transparent)}.course-filter-controls{width:min(760px,100%);min-width:0;display:grid;grid-template-columns:minmax(140px,.85fr) minmax(140px,.85fr) minmax(210px,1.35fr);align-items:end;gap:9px}.course-filter-control{min-width:0;display:grid;gap:5px}.course-filter-label{padding-left:2px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.course-filter-field{position:relative;min-width:0;display:block}.course-filter-field svg{position:absolute;z-index:1;top:50%;left:11px;width:16px;height:16px;translate:0 -50%;fill:none;stroke:var(--muted);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;transition:stroke .15s ease}.course-filter-field:focus-within svg{stroke:var(--action)}.course-filter-bar select,.course-filter-bar input{width:100%;min-height:42px;padding:8px 32px 8px 36px;border:1px solid var(--border);border-radius:10px;outline:none;color:var(--text);background:var(--surface);font-size:13px;font-weight:650;letter-spacing:0;text-transform:none;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 4%,transparent);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.course-filter-bar input{padding-right:10px}.course-filter-bar select:hover,.course-filter-bar input:hover{border-color:color-mix(in srgb,var(--action) 28%,var(--border))}.course-filter-bar select:focus,.course-filter-bar input:focus{border-color:color-mix(in srgb,var(--action) 70%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--action) 12%,transparent)}.course-filter-result{min-width:68px;min-height:42px;padding:6px 10px;display:grid;place-items:center;align-content:center;gap:0;border:1px solid color-mix(in srgb,var(--action) 18%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--sage) 52%,var(--surface));color:var(--muted);white-space:nowrap}.course-filter-result strong{color:var(--text);font-size:15px;line-height:1}.course-filter-result span{font-size:9px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.course-form{width:min(720px,100%);padding:clamp(24px,4vw,38px);display:grid;gap:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.course-reset{margin-top:8px;padding-top:20px;display:grid;gap:14px;border-top:1px solid var(--border)}.course-reset>div:first-child{min-width:0}.course-reset h2{margin:0 0 5px;font-family:inherit;font-size:14px;font-weight:800;letter-spacing:0}.course-reset p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.course-reset p strong{color:var(--text)}.course-reset>.danger-text-action{justify-self:start;padding:0}.course-reset.confirming{padding:18px;border:1px solid color-mix(in srgb,var(--danger) 34%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--danger) 6%,var(--surface))}.course-reset-confirmation{margin-top:14px}.course-reset-confirmation input{background:var(--surface)}.course-pattern{margin-top:6px;padding:22px;display:grid;gap:18px;border:1px solid color-mix(in srgb,var(--action) 18%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--sage) 20%,var(--surface))}.course-pattern-heading,.course-pattern-preview-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.course-pattern-heading h2,.course-pattern-preview-heading h3{margin:0 0 4px;font-family:inherit;font-size:16px;font-weight:800;letter-spacing:0}.course-pattern-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.course-pattern-current{padding:5px 8px;border-radius:999px;background:var(--sage);color:var(--action);font-size:10px;font-weight:800;white-space:nowrap}.course-pattern-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.course-pattern-options button{min-height:76px;padding:13px;display:grid;align-content:center;gap:4px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);cursor:pointer;text-align:left}.course-pattern-options button:hover{border-color:color-mix(in srgb,var(--action) 48%,var(--border))}.course-pattern-options button.selected{border-color:var(--action);background:color-mix(in srgb,var(--sage) 70%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 12%,transparent)}.course-pattern-options strong{font-size:13px}.course-pattern-options span{color:var(--muted);font-size:11px;line-height:1.4}.course-pattern-date{max-width:320px}.course-pattern-days{margin:0;padding:0;border:0}.course-pattern-days legend{font-size:13px;font-weight:800}.course-pattern-days>p{margin:3px 0 10px;color:var(--muted);font-size:11px}.course-pattern-days>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.course-pattern-days label{position:relative;min-height:48px;padding:7px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--border);border-radius:9px;background:var(--surface);cursor:pointer}.course-pattern-days label.selected{border-color:var(--action);background:var(--sage);color:var(--action)}.course-pattern-days input{position:absolute;opacity:0}.course-pattern-days label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.course-pattern-days strong{font-size:11px}.course-pattern-days span{font-size:10px}.course-pattern-double,.course-pattern-extension{padding:12px;display:flex;align-items:start;gap:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:pointer}.course-pattern-double input,.course-pattern-extension input{margin-top:2px}.course-pattern-double>span,.course-pattern-extension>span{display:grid;gap:2px}.course-pattern-double strong,.course-pattern-extension strong{font-size:12px}.course-pattern-double small,.course-pattern-extension small{color:var(--muted);font-size:11px;line-height:1.4}.course-pattern-sample{padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px dashed color-mix(in srgb,var(--action) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--surface) 84%,transparent)}.course-pattern-sample-week{min-width:0;display:grid;align-content:start;gap:6px}.course-pattern-sample-label{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.course-pattern-sample-week>strong{overflow-wrap:anywhere;font-size:12px}.course-pattern-sample-week ul{margin:0;padding:0;display:grid;gap:5px;list-style:none}.course-pattern-sample-week li{min-width:0;padding:6px 7px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.course-pattern-sample-week li>strong{overflow-wrap:anywhere;font-size:10px}.course-pattern-sample-lessons{display:flex;flex-wrap:wrap;justify-content:end;gap:4px}.course-pattern-sample-lessons small{padding:2px 5px;border-radius:999px;background:color-mix(in srgb,var(--sage) 72%,var(--surface));color:var(--action);font-size:8px;font-weight:750;white-space:nowrap}.course-pattern-sample>small{grid-column:1 / -1;padding-top:8px;border-top:1px solid var(--border);color:var(--muted);font-size:10px}.course-pattern-preview-action{justify-self:start}.course-pattern-preview{padding-top:18px;display:grid;gap:16px;border-top:1px solid var(--border)}.course-pattern-preview-heading .eyebrow{margin-bottom:2px}.course-pattern-preview-heading .text-action{padding:2px 0;font-size:11px}.course-pattern-preview-summary{display:grid;grid-template-columns:.7fr 1fr 1fr;gap:8px}.course-pattern-preview-summary>div{min-width:0;padding:10px;display:grid;gap:2px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.course-pattern-preview-summary strong{overflow-wrap:anywhere;font-size:13px}.course-pattern-preview-summary span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.course-pattern-proposed{display:grid;gap:8px}.course-pattern-proposed>h4{margin:0 0 1px;font-size:11px}.course-pattern-proposed>section{padding:9px 10px;display:grid;grid-template-columns:minmax(92px,.42fr) minmax(0,1fr);align-items:start;gap:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.course-pattern-proposed time{padding-top:2px;color:var(--text);font-size:10px;font-weight:800}.course-pattern-proposed ol{margin:0;padding:0;display:grid;gap:6px;list-style:none}.course-pattern-proposed li{min-width:0;padding-bottom:6px;display:flex;align-items:start;justify-content:space-between;gap:10px;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent)}.course-pattern-proposed li:last-child{padding-bottom:0;border-bottom:0}.course-pattern-proposed li>span{min-width:0;display:grid;gap:1px}.course-pattern-proposed li strong{overflow-wrap:anywhere;font-size:11px}.course-pattern-proposed li small{color:var(--muted);font-size:9px}.course-pattern-proposed li>small{flex:0 0 auto;padding-top:1px;text-align:right}.course-pattern-more{margin:-8px 0 0;color:var(--muted);font-size:10px}.course-pattern-result{display:flex;align-items:center;justify-content:space-between;gap:10px}.course-pattern-result button{padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font-weight:800;text-decoration:underline}.course-order-form{width:min(680px,100%);padding:clamp(24px,4vw,38px);display:grid;gap:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.course-order-learner{margin:0;display:flex;align-items:center;gap:10px}.course-order-learner>span:last-child{display:grid;gap:1px}.course-order-learner small,.course-order-name small{color:var(--muted);font-size:10px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.course-order-list{margin:0;padding:0;display:grid;gap:8px;list-style:none}.course-order-list li{min-height:66px;padding:9px 10px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}.course-order-position{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--sage);color:var(--action);font-size:12px;font-weight:800}.course-order-name{min-width:0;display:grid;gap:2px}.course-order-name strong{overflow-wrap:anywhere;font-size:14px}.course-order-actions{display:flex;gap:5px}.course-order-actions button{width:34px;height:34px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);cursor:pointer;font-size:15px}.course-order-actions button:hover:not(:disabled){border-color:var(--action);color:var(--action)}.course-order-actions button:disabled{opacity:.35;cursor:default}.course-form-heading{margin-bottom:4px;align-items:start}.course-form-heading h1{font-size:clamp(34px,5vw,48px)}@media(max-width:620px){.course-pattern-options,.course-pattern-preview-summary{grid-template-columns:1fr}.course-pattern-proposed>section{grid-template-columns:1fr}.course-pattern-proposed li{flex-direction:column;gap:3px}.course-pattern-proposed li>small{text-align:left}}.course-schedule-page{display:grid;gap:24px}.course-schedule-header{align-items:start}.course-schedule-summary{padding:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.course-schedule-summary>div{min-width:0;display:grid;gap:4px}.course-schedule-summary strong{overflow-wrap:anywhere;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:clamp(22px,3vw,30px);font-weight:500}.course-schedule-summary span{color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.course-schedule-summary>p{grid-column:1 / -1;margin:2px 0 0;padding-top:12px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}.course-schedule-form,.course-schedule-preview{width:min(900px,100%);padding:clamp(22px,4vw,36px);display:grid;gap:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.course-schedule-days{margin:0;padding:0;border:0}.course-schedule-days legend{font-weight:800}.course-schedule-days>p{margin:4px 0 10px;color:var(--muted);font-size:13px}.course-schedule-days>div{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.course-schedule-days label{position:relative;min-height:58px;padding:8px 4px;display:grid;place-items:center;align-content:center;gap:2px;border:1px solid var(--border);border-radius:9px;background:var(--surface-raised);cursor:pointer;text-align:center}.course-schedule-days label.selected{border-color:var(--action);background:var(--sage);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 16%,transparent)}.course-schedule-days input{position:absolute;opacity:0}.course-schedule-days label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.course-schedule-days strong{font-size:12px}.course-schedule-days span{color:var(--muted);font-size:9px}.course-schedule-preview-heading{display:flex;align-items:start;justify-content:space-between;gap:18px}.course-schedule-preview-heading p:last-child{margin:5px 0 0;color:var(--muted);font-size:13px}.course-schedule-preview-list{max-height:540px;padding:6px;display:grid;gap:7px;overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-raised) 66%,transparent)}.course-schedule-preview-list .preview-week-item{min-height:58px;display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1.4fr) minmax(100px,.6fr);align-items:center;gap:12px}.course-schedule-preview-list time{color:var(--muted);font-size:12px;font-weight:700}.optional-label{color:var(--muted);font-size:12px;font-weight:500}.field-label{display:flex;align-items:baseline;gap:5px}.course-enrollment{min-width:0;margin:0;padding:18px;border:1px solid var(--border);border-radius:12px}.course-enrollment legend{padding:0 7px;font-weight:700}.course-enrollment>p{margin-bottom:14px;color:var(--muted);font-size:13px}.course-learner-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.course-learner-options label{position:relative;min-width:0;min-height:54px;padding:9px 11px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;color:var(--muted);background:var(--surface-raised);cursor:pointer}.course-learner-options label.selected{border-color:var(--action);color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 18%,transparent)}.course-learner-options input{position:absolute;opacity:0}.course-learner-options label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.quiet-banner{margin:0;padding:13px 15px;border:1px solid var(--border);border-radius:11px;color:var(--muted);background:color-mix(in srgb,var(--sage) 28%,transparent);font-size:14px}.outline-page,.outline-focused{display:grid;gap:28px}.outline-focused{width:min(920px,100%)}.curriculum-import-page{display:grid;gap:22px;width:min(920px,100%)}.curriculum-import-card,.import-license-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.curriculum-import-card{display:grid;gap:20px;padding:clamp(22px,4vw,36px)}.import-license-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:24px}.import-license-card h2{margin:0 0 5px;font-size:18px}.import-license-card p,.import-privacy-note{margin:0;color:var(--muted);line-height:1.55}.import-lock{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--sage);color:var(--action);font-size:20px}.temporary-pill{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--sage) 54%,transparent);color:var(--muted);font-size:11px;font-weight:700}.import-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.curriculum-file-choice{position:relative;display:flex;align-items:center;gap:14px;min-height:92px;padding:18px;border:1px dashed color-mix(in srgb,var(--action) 42%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--sage) 18%,var(--surface));cursor:pointer}.curriculum-file-choice:hover{border-color:var(--action)}.curriculum-file-choice input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.curriculum-file-choice span:not(.curriculum-file-icon){display:grid;gap:3px}.curriculum-file-choice small,.selected-import-file small{color:var(--muted)}.curriculum-file-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:10px;background:var(--surface);color:var(--action);font-size:20px}.selected-import-file{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--sage) 22%,var(--surface))}.selected-import-file>span{display:grid;gap:2px;min-width:0}.selected-import-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-status{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:11px;background:color-mix(in srgb,var(--sage) 32%,var(--surface))}.import-status.processing{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--action) 18%,var(--border))}.import-status.processing:after{position:absolute;right:0;bottom:0;left:0;height:2px;content:"";background:linear-gradient(90deg,transparent,var(--action),transparent);transform:translate(-100%);animation:import-progress-sweep 2.4s ease-in-out infinite}.import-status.rejected{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}.import-status-mark{display:grid;width:25px;height:25px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--surface);color:var(--action);font-weight:800}.import-progress-dots{display:flex;align-items:center;justify-content:center;gap:2px}.import-progress-dots span{width:3px;height:3px;border-radius:50%;background:currentColor;animation:import-progress-dot 1.2s ease-in-out infinite}.import-progress-dots span:nth-child(2){animation-delay:.16s}.import-progress-dots span:nth-child(3){animation-delay:.32s}.import-status div{display:grid;gap:3px}.import-status p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.ai-processing-consent{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:11px;padding:14px 15px;border:1px solid color-mix(in srgb,var(--action) 24%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--sage) 18%,var(--surface));cursor:pointer}.ai-processing-consent input{width:18px;height:18px;margin-top:2px;accent-color:var(--action)}.ai-processing-consent span{display:grid;gap:4px}.ai-processing-consent small{color:var(--muted);font-size:13px;font-weight:400;line-height:1.5}.ai-processing-consent a{color:var(--action)}.curriculum-import-actions{padding-top:2px;display:flex;align-items:center;justify-content:space-between;gap:24px}.curriculum-import-main-actions{min-width:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.curriculum-import-back{flex:0 0 auto;margin-left:auto;white-space:nowrap}@keyframes import-progress-dot{0%,60%,to{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@keyframes import-progress-sweep{0%{transform:translate(-100%)}55%,to{transform:translate(100%)}}.extraction-review{width:min(1080px,100%)}.extraction-summary{display:flex;flex-wrap:wrap;gap:9px}.extraction-summary span{padding:8px 11px;border-radius:999px;background:color-mix(in srgb,var(--sage) 42%,transparent);color:var(--muted);font-size:12px}.extraction-summary span.needs-attention{background:color-mix(in srgb,var(--coral) 35%,transparent)}.extraction-summary strong{color:var(--text)}.week-lesson-builder{padding:16px;display:grid;gap:14px;border:1px solid color-mix(in srgb,var(--action) 24%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--sage) 22%,var(--surface))}.week-lesson-builder-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.week-lesson-builder-heading h3{margin:0 0 4px;font-family:inherit;font-size:15px}.week-lesson-builder-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.week-lesson-builder-form{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(240px,1fr) auto;align-items:end;gap:10px}.week-lesson-builder-actions{display:flex;align-items:center;gap:8px}.week-lesson-builder-form>.form-notice{grid-column:1 / -1}.extraction-preview-list{display:grid;gap:8px}.extraction-preview-row{--outline-depth: 0;margin-left:calc(var(--outline-depth) * 22px);padding:13px;display:grid;gap:11px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.extraction-preview-row.uncertain{border-color:color-mix(in srgb,#b97b32 45%,var(--border));background:color-mix(in srgb,var(--coral) 13%,var(--surface))}.extraction-row-heading{min-width:0;display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:7px}.extraction-row-copy{min-width:0;display:grid;gap:2px}.extraction-row-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.extraction-row-copy small{color:var(--muted);line-height:1.4}.extraction-structure-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:6px;flex-wrap:wrap}.outline-order-action{width:32px;height:32px;padding:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:var(--muted);cursor:pointer}.outline-order-action:hover:not(:disabled){border-color:var(--action);color:var(--action)}.outline-order-action:disabled{opacity:.38;cursor:default}.extraction-parent-field{min-width:132px;display:grid;gap:3px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.extraction-parent-field select{min-height:32px;padding:5px 26px 5px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:var(--text);font-size:11px;font-weight:650;letter-spacing:0;text-transform:none}.extraction-structure-actions .remove-preview-item{min-height:32px}.confidence-dot{width:7px;height:7px;border-radius:50%;background:var(--action)}.confidence-dot.medium{background:#b97b32}.confidence-dot.low{background:var(--danger)}.extraction-row-fields{display:grid;grid-template-columns:minmax(115px,.7fr) repeat(3,minmax(135px,1fr));align-items:end;gap:9px}.back-action{width:fit-content;min-height:38px;padding:4px 0;border:0;background:transparent;color:var(--action);font-weight:700;cursor:pointer}.outline-header{margin-bottom:2px}.outline-empty{padding:clamp(26px,5vw,46px);display:grid;grid-template-columns:minmax(220px,.75fr) minmax(420px,1.25fr);gap:clamp(28px,5vw,64px);align-items:center;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.outline-empty p:not(.eyebrow){margin:10px 0 0;color:var(--muted);line-height:1.6}.outline-start-options{display:grid;gap:12px}.outline-start-options button{min-height:100px;padding:19px 20px;display:grid;gap:7px;border:1px solid var(--border);border-radius:13px;background:var(--surface-raised);color:var(--text);cursor:pointer;text-align:left}.outline-start-options button:hover{border-color:var(--action);background:color-mix(in srgb,var(--sage) 25%,var(--surface-raised))}.outline-start-options strong{font-size:16px}.outline-start-options span{color:var(--muted);font-size:13px;line-height:1.5}.outline-content{display:grid;gap:18px}.outline-summary{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:13px}.outline-summary span{padding:7px 11px;border-radius:99px;background:color-mix(in srgb,var(--sage) 44%,transparent)}.outline-tree{display:grid;gap:7px}.outline-row{--outline-depth: 0;min-width:0;min-height:65px;margin-left:calc(var(--outline-depth) * 28px);padding:11px 12px;display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:13px;align-items:center;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.outline-row.group{background:color-mix(in srgb,var(--sage) 18%,var(--surface))}.outline-connector{width:4px;height:32px;border-radius:99px;background:var(--blue)}.outline-row.group>.outline-connector{background:var(--action)}.outline-row-copy{min-width:0;display:grid;gap:2px}.outline-row-copy strong,.outline-row-copy>span:last-child{overflow-wrap:anywhere}.outline-row-copy>span:last-child:not(.outline-kind){color:var(--muted);font-size:13px}.outline-kind{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.outline-row-actions{display:flex;align-items:center;gap:5px}.outline-row-actions .text-action{padding-inline:8px}.outline-move-action{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:16px;cursor:pointer}.outline-move-action:hover:not(:disabled){background:var(--sage);color:var(--text)}.outline-move-action:disabled{opacity:.25;cursor:default}.generator-form,.outline-item-form{padding:clamp(24px,4vw,40px);border:1px solid var(--border);border-radius:18px;background:var(--surface)}.generator-form header,.outline-item-form header,.preview-page header{display:grid;gap:2px}.generator-form h1,.outline-item-form h1,.preview-page h1{font-size:clamp(34px,5vw,48px)}.format-options{min-width:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:0}.format-options legend{grid-column:1 / -1;margin-bottom:3px;font-weight:700}.format-options label{position:relative;min-height:85px;padding:14px 15px;display:grid;align-content:center;gap:5px;border:1px solid var(--border);border-radius:11px;color:var(--text);background:var(--surface-raised);cursor:pointer}.format-options label.selected{border-color:var(--action);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 20%,transparent)}.format-options label:last-child{grid-column:1 / -1}.format-options input{position:absolute;opacity:0}.format-options label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.format-options span{color:var(--muted);font-size:12px;line-height:1.4}.outline-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.first-item-fields{min-width:0;margin:0;padding:17px;border:1px solid var(--border);border-radius:12px}.first-item-fields legend{padding:0 7px;font-weight:700}.first-item-fields>p{margin:0 0 14px;color:var(--muted);font-size:13px}.weekday-lesson-option{padding:15px 16px;display:flex;align-items:flex-start;gap:11px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--sage) 20%,var(--surface-raised));cursor:pointer}.weekday-lesson-option input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--action)}.weekday-lesson-option span{display:grid;gap:3px}.weekday-lesson-option small{color:var(--muted);line-height:1.45}.preview-page{width:min(1100px,100%)}.preview-unsaved{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid color-mix(in srgb,var(--action) 35%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--sage) 35%,transparent)}.preview-unsaved span{color:var(--muted);font-size:13px}.preview-list{display:grid;gap:8px}.preview-row{--outline-depth: 0;margin-left:calc(var(--outline-depth) * 22px);padding:13px;display:grid;grid-template-columns:minmax(130px,.8fr) minmax(180px,1.3fr) minmax(145px,.8fr) auto;gap:10px;align-items:end;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.compact-field{gap:4px;font-size:11px}.compact-field input,.compact-field select{min-height:40px;padding:7px 9px;font-size:13px}.remove-preview-item{min-height:40px;padding:8px;border:0;background:transparent;color:#a0463b;font-size:12px;font-weight:700;cursor:pointer}.preview-actions{position:sticky;z-index:2;bottom:16px;padding:13px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:0 10px 32px color-mix(in srgb,var(--text) 10%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.progress-page{width:min(1040px,100%);display:grid;gap:26px}.progress-header{display:flex;align-items:end;justify-content:space-between;gap:24px}.progress-header h1{font-size:clamp(38px,5vw,56px)}.learner-progress-tabs{padding-bottom:3px;display:flex;gap:8px;overflow-x:auto}.learner-progress-tabs button{min-height:48px;padding:7px 13px 7px 8px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--muted);cursor:pointer;white-space:nowrap}.learner-progress-tabs button.selected{border-color:var(--action);color:var(--text);background:color-mix(in srgb,var(--sage) 38%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 14%,transparent)}.progress-summary{padding:clamp(20px,3vw,28px);display:grid;gap:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.progress-summary-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.progress-summary-heading h2{font-size:clamp(25px,3vw,32px)}.progress-summary-heading>strong{color:var(--action);font-size:24px;font-weight:650}.progress-track{height:8px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--border) 75%,transparent)}.progress-track span{height:100%;display:block;border-radius:inherit;background:var(--action);transition:width .2s ease}.progress-counts{display:flex;gap:10px 22px;flex-wrap:wrap;color:var(--muted);font-size:13px}.progress-counts strong{color:var(--text)}.learner-work-list{display:grid;gap:7px}.learner-work-row{min-width:0;min-height:70px;padding:12px 13px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.learner-work-row.completed,.learner-work-row.skipped{background:color-mix(in srgb,var(--surface) 76%,transparent)}.work-state-dot{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--border);border-radius:99px;color:var(--action-ink);font-size:13px}.work-state-dot.in_progress{border-color:color-mix(in srgb,var(--action) 55%,var(--border));background:color-mix(in srgb,var(--sage) 55%,transparent)}.work-state-dot.ready_for_review{border-color:color-mix(in srgb,var(--focus) 50%,var(--border));background:var(--blue)}.work-state-dot.completed{border-color:var(--action);background:var(--action)}.work-state-dot.skipped{border-style:dashed}.learner-work-copy{min-width:0;display:grid;gap:2px}.learner-work-copy strong,.work-breadcrumb{overflow-wrap:anywhere}.work-breadcrumb{font-weight:650}.learner-work-copy strong{font-size:13px;font-weight:500}.learner-work-copy small{color:var(--muted);font-size:11px}.learner-work-row.completed .work-breadcrumb,.learner-work-row.skipped .work-breadcrumb{color:var(--muted)}.work-actions{display:flex;align-items:center;gap:4px}.work-actions .text-action{padding-inline:8px}.work-actions .text-action.quiet{color:var(--muted)}.complete-work-action{width:34px;height:34px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--action) 55%,var(--border));border-radius:99px;background:transparent;color:var(--action);cursor:pointer}.complete-work-action:hover{background:var(--action);color:var(--action-ink)}.complete-work-action:disabled{cursor:wait;opacity:.55}.profile-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.profile-header{grid-column:1 / -1}.profile-card{width:min(680px,100%);padding:clamp(24px,4vw,38px);border:1px solid var(--border);border-radius:18px;background:var(--surface)}.profile-page>.profile-card:first-of-type{grid-row:span 2}.profile-intro{margin-bottom:28px;display:flex;align-items:center;gap:15px}.profile-intro h2{margin-bottom:3px}.profile-intro div>span{color:var(--muted);font-size:14px}.profile-avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:23px;font-weight:700}.profile-card form{display:grid;gap:18px}.profile-readonly{padding:13px 14px;display:grid;gap:3px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface-raised) 62%,transparent)}.profile-readonly span{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.profile-readonly small{color:var(--muted)}.preference-card{display:grid;gap:20px}.preference-heading>p:last-child{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.preference-options,.appearance-options{min-width:0;margin:0;padding:0;border:0}.preference-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.preference-choice{position:relative;min-width:0;min-height:82px;padding:11px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-raised);cursor:pointer}.preference-choice.selected,.appearance-options label.selected{border-color:var(--action);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 20%,transparent)}.preference-choice input,.appearance-options input{position:absolute;opacity:0}.preference-choice:has(input:focus-visible),.appearance-options label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.preference-choice>span:last-child,.appearance-options label>span{min-width:0;display:grid;gap:3px}.preference-choice small,.appearance-options small{color:var(--muted);font-size:11px;line-height:1.35}.theme-preview{width:42px;height:42px;padding:5px;display:grid;grid-template-columns:1fr 1fr;gap:3px;border-radius:10px;background:#fffdf8}.theme-preview i{border-radius:4px;background:#d8e6d7}.theme-preview i:first-child{grid-row:1 / 3;background:#2f6654}.theme-preview i:last-child{background:#cee2e5}.theme-coastal .theme-preview i:first-child{background:#365f73}.theme-coastal .theme-preview i:nth-child(2){background:#d5e7ec}.theme-coastal .theme-preview i:last-child{background:#c9e2ea}.theme-lavender .theme-preview i:first-child{background:#655082}.theme-lavender .theme-preview i:nth-child(2){background:#e3dcef}.theme-lavender .theme-preview i:last-child{background:#d5dfed}.theme-sunrise .theme-preview i:first-child{background:#985143}.theme-sunrise .theme-preview i:nth-child(2){background:#e9dfcf}.theme-sunrise .theme-preview i:last-child{background:#f3cec1}.theme-blossom .theme-preview i:first-child{background:#8a5268}.theme-blossom .theme-preview i:nth-child(2){background:#eadde2}.theme-blossom .theme-preview i:last-child{background:#f1d4dc}.theme-honey .theme-preview i:first-child{background:#796020}.theme-honey .theme-preview i:nth-child(2){background:#e7e1ca}.theme-honey .theme-preview i:last-child{background:#f3e3ad}.appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.appearance-options label{position:relative;min-height:66px;padding:10px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);text-align:center;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workspace-notice{margin-bottom:20px}.week-page{min-width:0;display:grid;gap:20px}.planner-main>.week-page{flex:1}.week-page:not(.generation-mode){min-height:calc(100vh - 62px);grid-template-rows:minmax(0,1fr)}.week-page.generation-mode{padding-top:18px;align-content:start;grid-template-rows:auto auto}.week-header{display:flex;align-items:start;justify-content:space-between;gap:24px}.week-header h1{margin-bottom:4px;font-size:clamp(34px,4vw,46px)}.week-header .eyebrow{margin-bottom:5px}.generation-header{align-items:end}.generation-header h1{font-size:clamp(38px,5vw,58px)}.planner-date-range{margin:0;color:var(--muted);font-size:13px}.planner-view-switcher{padding:3px;display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 82%,transparent)}.planner-view-switcher button{min-height:32px;padding:6px 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:11px;font-weight:800;cursor:pointer}.planner-view-switcher button[aria-pressed=true]{background:color-mix(in srgb,var(--sage) 58%,var(--surface));color:var(--text)}.planner-view-switcher button:disabled{cursor:not-allowed;opacity:.5}.week-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.print-icon-link{width:34px;height:34px;display:grid;place-items:center;border:1px solid transparent;border-radius:9px;color:var(--muted);text-decoration:none}.print-icon-link:hover{border-color:var(--border);background:color-mix(in srgb,var(--sage) 36%,transparent);color:var(--action)}.print-icon-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.print-setup-page,.print-preview-page{width:min(100%,1040px);margin-inline:auto}.print-setup-page{display:grid;gap:28px}.print-setup-card{padding:24px;display:grid;gap:24px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 14px 40px color-mix(in srgb,var(--text) 6%,transparent)}.print-template-picker{min-width:0;display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1.18fr);align-items:start;gap:14px}.print-template-summary{min-width:0;min-height:76px;margin-top:24px;padding:12px 14px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--sage) 30%,var(--surface-raised))}.print-template-summary>div{min-width:0;display:grid;gap:3px}.print-template-summary p{color:var(--muted);font-size:12px;line-height:1.45}.print-template-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:var(--sage);color:var(--action);font-size:20px}.print-template-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.print-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.print-check-options{padding:16px;display:grid;gap:10px;border-radius:11px;background:color-mix(in srgb,var(--sage) 28%,transparent)}.print-check-options label{display:flex;align-items:center;gap:10px;cursor:pointer}.print-check-options input{width:18px;height:18px;accent-color:var(--action)}.print-learner-choices{margin:0;padding:14px;display:grid;gap:10px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--sage) 18%,var(--surface))}.print-learner-choices legend{padding:0 4px;color:var(--text);font-size:13px;font-weight:800}.print-learner-choices>p{color:var(--muted);font-size:12px}.print-learner-choices>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.print-learner-choices label{position:relative;min-width:0;min-height:48px;padding:8px 9px;display:grid;grid-template-columns:30px minmax(0,1fr) 21px;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer}.print-learner-choices label.selected{border-color:var(--action);background:color-mix(in srgb,var(--sage) 48%,var(--surface));color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 16%,transparent)}.print-learner-choices label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.print-learner-choices input{position:absolute;width:1px;height:1px;opacity:0}.print-learner-choices strong{min-width:0;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.print-learner-empty{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--sage) 18%,var(--surface))}.print-learner-empty>div{display:grid;gap:3px}.print-learner-empty strong{font-size:13px}.print-learner-empty p{color:var(--muted);font-size:12px}.print-status-choices{margin:0;padding:14px;display:grid;gap:9px;border:1px solid var(--border);border-radius:11px}.print-status-choices legend{padding:0 4px;font-size:13px;font-weight:800}.print-status-choices>div{display:flex;flex-wrap:wrap;gap:8px}.print-status-choices label{position:relative;cursor:pointer}.print-status-choices input{position:absolute;opacity:0}.print-status-choices span{min-height:34px;padding:7px 11px;display:grid;place-items:center;border:1px solid var(--border);border-radius:99px;background:var(--surface-raised);color:var(--muted);font-size:11px;font-weight:700}.print-status-choices label:has(input:checked) span{border-color:var(--action);background:color-mix(in srgb,var(--sage) 48%,var(--surface));color:var(--text)}.print-status-choices label:has(input:focus-visible) span{outline:3px solid var(--focus);outline-offset:2px}.print-setup-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.print-preview-page{width:100%}.print-preview-toolbar{width:min(100%,1040px);margin:0 auto 22px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.print-preview-toolbar h1{margin-top:2px;font-size:25px}.print-preview-toolbar p:last-child{margin:5px 0 0;color:var(--muted);font-size:13px}.print-preview-toolbar>div:last-child{display:flex;align-items:center;gap:14px}.print-sheet{margin-inline:auto;padding:.45in;color:#1d2d27;background:#fff;border:1px solid #d9ddd9;box-shadow:0 18px 54px #1d2d271f;font-family:Avenir Next,Avenir,Segoe UI,system-ui,sans-serif}.print-sheet.letter.portrait{width:min(100%,8.5in);min-height:11in}.print-sheet.letter.landscape{width:min(100%,11in);min-height:8.5in}.print-sheet.a4.portrait{width:min(100%,210mm);min-height:297mm}.print-sheet.a4.landscape{width:min(100%,297mm);min-height:210mm}.print-sheet-heading{padding-bottom:18px;display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid #263e34}.print-brand{margin:0 0 5px;color:#52675e;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.print-sheet-heading h2{margin:0;color:#1d2d27;font-size:28px}.print-sheet-heading h2+p{margin:5px 0 0;color:#52675e}.print-sheet-heading .print-parent-scope{margin:3px 0 0;color:#52675e;font-size:10px}.print-sheet-meta{display:grid;align-content:end;gap:4px;color:#52675e;font-size:10px;text-align:right}.daily-print-content{margin-top:22px}.print-section-heading{margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.print-section-heading h3,.print-notes h3{margin:0;font-size:16px}.print-section-heading span,.print-week-day>header span{padding:3px 7px;border:1px solid #b9c4bf;border-radius:99px;color:#445950;font-size:9px}.print-checklist{display:grid;gap:7px}.print-item{min-width:0;padding:9px 10px;display:grid;grid-template-columns:19px 18px minmax(0,1fr);align-items:start;gap:7px;break-inside:avoid;border:1px solid #ccd4d0;border-radius:7px}.print-item.compact{padding:6px;grid-template-columns:15px 14px minmax(0,1fr);gap:4px;border-radius:5px}.print-item.no-check{grid-template-columns:18px minmax(0,1fr)}.print-item.compact.no-check{grid-template-columns:14px minmax(0,1fr)}.print-check{width:17px;height:17px;display:grid;place-items:center;border:1.5px solid #576a61;border-radius:4px;font-size:11px}.print-kind{color:#566b61;font-size:14px;text-align:center}.print-item>div{min-width:0;display:grid;gap:2px}.print-item small{overflow-wrap:anywhere;color:#586a62;font-size:8px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.print-item strong{overflow-wrap:anywhere;color:#1d2d27;font-size:12px;line-height:1.25}.print-item>div>span{color:#586a62;font-size:9px;line-height:1.3}.print-item.completed strong{color:#607068;text-decoration:line-through}.print-empty{margin:8px 0;color:#718078;font-size:10px;font-style:italic}.family-week-print{margin-top:18px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #bdc8c2;border-left:1px solid #bdc8c2}.print-week-day{min-width:0;min-height:4.7in;padding:7px;border-right:1px solid #bdc8c2;border-bottom:1px solid #bdc8c2}.print-week-day>header{min-height:43px;display:grid;align-content:start;gap:4px}.print-week-day>header h3{margin:0;font-size:11px}.print-week-day>header span{width:fit-content;overflow-wrap:anywhere}.print-week-day>div{display:grid;gap:5px}.print-week-day .print-item small{font-size:6.5px}.print-week-day .print-item strong{font-size:9px}.print-week-day .print-item>div>span{font-size:7px}.print-week-day .print-check{width:13px;height:13px;font-size:8px}.print-week-day .print-kind{font-size:10px}.month-print{margin-top:16px}.month-print-weekdays,.month-print-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-print-weekdays{border-top:1px solid #9ba9a2;border-left:1px solid #9ba9a2;background:#f2f5f3}.month-print-weekdays strong{padding:5px;border-right:1px solid #9ba9a2;color:#445950;font-size:8px;text-align:center;text-transform:uppercase}.month-print-days{border-top:1px solid #9ba9a2;border-left:1px solid #9ba9a2}.month-print-days article{min-width:0;min-height:0;padding:4px;display:grid;grid-template-rows:auto;align-content:start;gap:2px;border-right:1px solid #9ba9a2;border-bottom:1px solid #9ba9a2}.print-sheet.portrait .month-print-days article{aspect-ratio:1}.print-sheet.landscape .month-print-days article{min-height:.8in}.month-print-days article.outside{background:#f7f8f7;color:#718078}.month-print-days time{font-size:8px;font-weight:800}.month-print-days small{overflow:hidden;color:#52675e;font-size:5.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.month-print-days span{min-width:0;overflow:hidden;color:#26352f;font-size:6.5px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.month-print-days b{color:#52675e;font-size:5.5px}.month-print-key{margin:7px 0 0;color:#52675e;font-size:6.5px;line-height:1.35}.year-print{margin-top:12px;color:#26352f}.year-print-months{display:grid;gap:8px}.print-sheet.landscape .year-print-months{grid-template-columns:repeat(4,minmax(0,1fr))}.print-sheet.portrait .year-print-months{grid-template-columns:repeat(3,minmax(0,1fr))}.year-print-month{min-width:0;padding:5px;display:grid;align-content:start;gap:3px;border:1px solid #aebbb4;border-radius:4px;break-inside:avoid}.year-print-month h3{margin:0;font-family:inherit;font-size:7.5px;line-height:1.2}.year-print-weekdays,.year-print-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.year-print-weekdays span{padding:1px;color:#52675e;font-size:4.5px;font-weight:800;text-align:center}.year-print-days>span{position:relative;min-width:0;aspect-ratio:1;padding:1px;display:grid;grid-template-rows:minmax(0,1fr) 3px;place-items:center;border:.35px solid #d4dbd7;font-size:5px}.year-print-days>span.empty{border-color:transparent}.year-print-days>span.marked{background:#f7f1dc}.year-print-days b{font-weight:600}.year-print-days i{height:2px;display:flex;gap:1px}.year-print-days em,.year-print-key span{width:3px;height:3px;display:inline-block;border-radius:99px;background:#6f987f}.year-print-days em.family,.year-print-key span.family{background:#b39232}.year-print-month>p{margin:1px 0 0;color:#52675e;font-size:4.8px;text-align:right}.year-print-key{margin:7px 0 0;display:flex;align-items:center;justify-content:center;gap:4px;color:#52675e;font-size:6px}.year-print-key span.marked{border:.5px solid #b39232;border-radius:1px;background:#f7f1dc}.parent-plan-print{margin-top:20px;display:grid;gap:18px}.print-parent-day{break-inside:avoid}.print-parent-day-heading{margin-bottom:8px;padding-bottom:6px;display:flex;align-items:end;justify-content:space-between;gap:12px;border-bottom:1px solid #bdc8c2}.print-parent-day-heading>div{display:grid;gap:2px}.print-parent-day-heading h3{margin:0;color:#1d2d27;font-size:15px}.print-parent-day-heading>div>span{color:#586a62;font-size:9px}.print-parent-day-heading .print-holiday{padding:3px 7px;border:1px solid #b9c4bf;border-radius:99px;color:#445950;font-size:9px}.print-daily-note{padding:9px 10px;display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;break-inside:avoid;border:1px solid #ccd4d0;border-radius:7px;background:#f2f5f3}.print-daily-note>span{color:#566b61;text-align:center}.print-daily-note>div{min-width:0;display:grid;gap:3px}.print-daily-note small{color:#586a62;font-size:8px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.print-daily-note p{overflow-wrap:anywhere;color:#1d2d27;font-size:11px;line-height:1.35}.assignment-list-print{margin-top:20px;display:grid;gap:18px}.print-assignment-day{break-inside:avoid}.print-assignment-day>h3{margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid #bdc8c2;color:#1d2d27;font-size:15px}.assignment-list-empty{margin-top:28px;text-align:center}.record-summary-print{margin-top:20px;display:grid;gap:20px}.print-record-learner{break-inside:auto}.print-record-learner>header{margin-bottom:8px;padding-bottom:7px;display:flex;align-items:end;justify-content:space-between;gap:18px;border-bottom:1px solid #bdc8c2;break-after:avoid}.print-record-learner>header h3{margin:0;color:#1d2d27;font-size:15px}.print-record-learner>header p{margin:3px 0 0;color:#586a62;font-size:9px}.print-record-learner>header>strong{color:#1d2d27;font-size:18px}.print-record-learner>header>span{color:#586a62;font-size:9px;font-weight:700}.print-record-learner table{width:100%;border-collapse:collapse;color:#1d2d27;font-size:9px}.print-record-learner th,.print-record-learner td{padding:7px 6px;border:1px solid #ccd4d0;text-align:left;vertical-align:top}.print-record-learner th{background:#f2f5f3;font-size:8px}.print-record-learner thead{display:table-header-group}.print-record-learner tr{break-inside:avoid}.print-record-learner td:not(:first-child),.print-record-learner th:not(:first-child){text-align:center}.print-record-learner td strong,.print-record-learner td small{display:block}.print-record-learner td small{margin-top:2px;color:#586a62;font-size:7px}.print-record-learner td:last-child{overflow-wrap:anywhere}.print-record-note{color:#586a62;font-size:8px;line-height:1.45}.print-notes{margin-top:20px;break-inside:avoid}.print-notes i{height:25px;display:block;border-bottom:1px solid #c6cfca}.print-sheet-footer{margin-top:20px;padding-top:8px;display:flex;justify-content:space-between;border-top:1px solid #cbd3cf;color:#687971;font-size:8px}.week-toolbar-stack{min-width:0;display:grid;align-content:start}.week-toolbar{padding:0 0 12px;display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--border)}.week-toolbar>label,.week-status-control{min-width:138px;display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.week-toolbar select{min-height:38px;padding:7px 30px 7px 9px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface);font-size:13px;font-weight:600;text-transform:none}.week-status-control{min-width:190px}.week-status-control>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.week-status-control a{color:var(--muted);font-size:10px;font-weight:400;letter-spacing:0;text-decoration:none;text-transform:none;white-space:nowrap}.week-status-control a:hover,.week-status-control a:focus-visible{color:var(--action);text-decoration:underline}.plan-board-toolbar{align-items:center}.plan-board-toolbar>p{margin:0;color:var(--muted);font-size:12px}.plan-view-return{align-self:center;font-size:12px}.planner-focus-switcher{padding:3px;display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.planner-focus-switcher button{min-height:30px;padding:5px 9px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:10px;font-weight:800}.planner-focus-switcher button[aria-pressed=true]{background:color-mix(in srgb,var(--sage) 62%,var(--surface));color:var(--text)}.mobile-day-switcher{display:none}.schedule-change-summary{margin:12px 0 0;padding:10px 12px;display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--action) 32%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--sage) 30%,var(--surface));opacity:1;transition:opacity .5s ease}.schedule-change-summary.dismissing{opacity:0}.schedule-change-summary>span{color:var(--action);font-size:17px}.schedule-change-summary p{margin:0;flex:1;color:var(--muted);font-size:13px}.schedule-change-summary p strong{color:var(--text)}.schedule-change-summary .text-action{min-height:32px;padding:4px 8px}.week-movement{display:flex;gap:4px}.week-movement button{min-height:38px;padding:7px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-weight:700}.week-movement button:hover{background:var(--sage);color:var(--text)}.planner-layout{min-width:0;height:100%;display:grid;grid-template-columns:160px minmax(0,1fr);align-items:stretch;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 18px 50px color-mix(in srgb,var(--text) 6%,transparent)}.planner-filter-rail{padding:20px 14px;display:grid;align-content:start;gap:26px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--sage) 17%,var(--surface))}.planner-filter-rail section{min-width:0}.planner-filter-rail h2{margin:0 8px 8px;font-family:inherit;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.planner-filter-list{display:grid;gap:2px}.planner-filter-list button{width:100%;min-height:36px;padding:7px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;font-weight:700;text-align:left}.planner-filter-list button:hover,.planner-filter-list button.active{background:var(--sage);color:var(--text)}.planner-filter-list button>span{min-width:0;display:flex;align-items:center;gap:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-filter-list b{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.planner-compact-filters{display:none}.planner-compact-filter{min-width:0;display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.planner-compact-filter select{width:100%;min-height:40px;padding:7px 30px 7px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-size:12px;font-weight:700;letter-spacing:0;text-transform:none}.planner-primary-actions{display:grid;gap:7px}.planner-routine-action{min-height:42px;padding:10px 11px;display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:9px;background:var(--action);color:var(--action-ink);cursor:pointer;font-size:12px;font-weight:800}.planner-routine-action:hover{background:var(--action-hover)}.planner-add-menu{position:relative}.planner-add-menu>.planner-routine-action{width:100%}.planner-add-options{position:absolute;z-index:8;top:calc(100% + 6px);left:0;width:min(270px,72vw);padding:6px;display:grid;gap:3px;border:1px solid var(--border);border-radius:11px;background:var(--surface-raised);box-shadow:0 14px 34px color-mix(in srgb,var(--text) 15%,transparent)}.planner-add-options button{padding:10px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;border:0;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.planner-add-options button:hover,.planner-add-options button:focus-visible{background:var(--sage)}.planner-add-options button>span{display:grid;gap:3px}.planner-add-options small{color:var(--muted);font-size:11px;line-height:1.35}.planner-item-icon{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.filter-dot{width:9px;height:9px;flex:0 0 auto;display:inline-block;border-radius:99px;background:var(--action)}.filter-dot.person-sage{background:#6f987f}.filter-dot.person-blue{background:#6e9eaa}.filter-dot.person-coral{background:#c66a56}.filter-dot.person-gold{background:#b39232}.filter-dot.person-lilac{background:#8c6aa4}.filter-dot.person-mint{background:#5c9c78}.filter-dot.person-teal{background:#438d90}.filter-dot.person-rose{background:#aa637d}.filter-dot.person-peach{background:#b6764d}.filter-dot.person-slate{background:#6f7d91}.week-board{min-width:0;padding:24px 20px 0;display:grid;grid-template-rows:auto auto minmax(390px,1fr) auto;gap:16px;overflow-x:auto}.week-grid,.preview-week-grid{min-width:0;display:grid;grid-template-columns:repeat(7,minmax(104px,1fr));gap:8px}.planner-layout .week-grid{min-width:780px}.plan-board{min-width:790px;display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:8px;align-items:stretch;overflow-x:auto;padding-bottom:12px}.plan-board-column{--board-accent: var(--muted);min-width:145px;min-height:clamp(390px,calc(100vh - 310px),720px);padding:9px;display:grid;grid-template-rows:auto minmax(0,1fr);align-content:start;gap:9px;border:1px solid var(--border);border-top:3px solid var(--board-accent);border-radius:11px;background:color-mix(in srgb,var(--surface) 94%,transparent);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.plan-board-column.in_progress{--board-accent: #6e9eaa}.plan-board-column.ready_for_review{--board-accent: #8c6aa4}.plan-board-column.completed{--board-accent: #5c9c78}.plan-board-column.skipped{--board-accent: #9b8172}.plan-board-column.drop-target{border-color:var(--action);background:color-mix(in srgb,var(--sage) 34%,var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--action) 18%,transparent)}.plan-board-column>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.plan-board-column>header h2{margin:0;font-family:inherit;font-size:10px;font-weight:850;letter-spacing:.035em;text-transform:uppercase}.plan-board-column>header span{min-width:22px;height:22px;padding:0 6px;display:grid;place-items:center;border-radius:99px;background:color-mix(in srgb,var(--board-accent) 16%,var(--surface));color:var(--muted);font-size:10px;font-weight:800}.plan-board-column-items{display:grid;align-content:start;gap:8px}.plan-board-empty{margin:0;padding:18px 6px;color:var(--muted);font-size:11px;text-align:center}.plan-board-card{min-width:0;padding:11px;display:grid;align-content:start;gap:7px;border:1px solid var(--border);border-left:3px solid #6f987f;border-radius:9px;background:var(--surface-raised);box-shadow:0 5px 16px color-mix(in srgb,var(--text) 5%,transparent)}.plan-board-card[draggable=true]{cursor:grab}.plan-board-card[draggable=true]:active{cursor:grabbing}.plan-board-card.person-blue{border-left-color:#6e9eaa}.plan-board-card.person-coral{border-left-color:#c66a56}.plan-board-card.person-gold{border-left-color:#b39232}.plan-board-card.person-lilac{border-left-color:#8c6aa4}.plan-board-card.person-mint{border-left-color:#5c9c78}.plan-board-card.person-teal{border-left-color:#438d90}.plan-board-card.person-rose{border-left-color:#aa637d}.plan-board-card.person-peach{border-left-color:#b6764d}.plan-board-card.person-slate{border-left-color:#6f7d91}.plan-board-card-kind{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.plan-board-card-kind .planner-item-icon{width:13px;height:13px}.plan-board-card-kind span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-board-card-kind time{font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none;white-space:nowrap}.plan-board-card h3{margin:0;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.4}.plan-board-card-meta{margin:0;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.plan-board-card-meta .filter-dot{width:7px;height:7px}.plan-board-status-select{display:block}.plan-board-status-select select{width:100%;min-height:30px;padding:5px 26px 5px 7px;border:1px solid var(--border);border-radius:7px;background:color-mix(in srgb,var(--sage) 18%,var(--surface));color:var(--text);font-size:10px;font-weight:700}.plan-board-saving{color:var(--action);font-size:10px;font-weight:800}.month-board{min-width:0;padding:24px 20px 18px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px}.month-header h1{margin-bottom:4px}.month-toolbar{min-width:0;display:flex;align-items:end;justify-content:space-between;gap:12px}.month-status-control{min-width:150px;display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.month-status-control select{min-height:38px;padding:7px 30px 7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700;letter-spacing:0;text-transform:none}.month-calendar{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}.month-weekdays,.month-week{min-width:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--sage) 22%,var(--surface))}.month-weekdays>span{min-width:0;padding:8px 5px;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.06em;text-align:center;text-transform:uppercase}.month-weekday-short{display:none}.month-days{min-width:0;display:grid;grid-auto-rows:auto}.month-week{min-height:0;aspect-ratio:7}.month-day{position:relative;min-width:0;min-height:0;padding:7px 6px 6px;display:grid;grid-template-rows:auto auto minmax(0,1fr);align-content:start;gap:4px;border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left}.month-week .month-day:last-child{border-right:0}.month-week:last-child .month-day{border-bottom:0}.month-day:hover,.month-day:focus-visible{z-index:1;background:color-mix(in srgb,var(--sage) 24%,var(--surface))}.month-day.outside{background:color-mix(in srgb,var(--surface) 72%,var(--canvas));color:var(--muted)}.month-day.today{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--action) 68%,transparent)}.month-day-number{width:23px;height:23px;display:grid;place-items:center;border-radius:99px;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}.month-day.today .month-day-number{background:var(--action);color:var(--action-ink)}.month-holiday{min-width:0;overflow:hidden;color:color-mix(in srgb,var(--text) 76%,var(--muted));font-size:8px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.month-day-items{min-width:0;display:grid;align-content:start;gap:3px}.month-item{min-width:0;min-height:20px;padding:3px 5px;display:flex;align-items:center;gap:4px;overflow:hidden;border-radius:5px;background:color-mix(in srgb,var(--sage) 42%,var(--surface));color:var(--text);font-size:8.5px;font-weight:750;line-height:1.2}.month-item>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-item .planner-item-icon{width:11px;height:11px}.month-item.learning{border-left:2px solid #6f987f;background:color-mix(in srgb,#6f987f 15%,var(--surface))}.month-item.learning.person-blue{border-left-color:#6e9eaa;background:color-mix(in srgb,#6e9eaa 15%,var(--surface))}.month-item.learning.person-coral{border-left-color:#c66a56;background:color-mix(in srgb,#c66a56 15%,var(--surface))}.month-item.learning.person-gold{border-left-color:#b39232;background:color-mix(in srgb,#b39232 15%,var(--surface))}.month-item.learning.person-lilac{border-left-color:#8c6aa4;background:color-mix(in srgb,#8c6aa4 15%,var(--surface))}.month-item.learning.person-mint{border-left-color:#5c9c78;background:color-mix(in srgb,#5c9c78 15%,var(--surface))}.month-item.learning.person-teal{border-left-color:#438d90;background:color-mix(in srgb,#438d90 15%,var(--surface))}.month-item.learning.person-rose{border-left-color:#aa637d;background:color-mix(in srgb,#aa637d 15%,var(--surface))}.month-item.learning.person-peach{border-left-color:#b6764d;background:color-mix(in srgb,#b6764d 15%,var(--surface))}.month-item.learning.person-slate{border-left-color:#6f7d91;background:color-mix(in srgb,#6f7d91 15%,var(--surface))}.month-item.learning.completed,.month-item.learning.skipped{opacity:.6;text-decoration:line-through}.month-item.daily_note{background:color-mix(in srgb,#a5aaa8 22%,var(--surface))}.month-more{padding-left:5px;color:var(--muted);font-size:8px;font-weight:800}.month-agenda{display:none}.month-footer{min-width:0;display:flex;align-items:start;justify-content:space-between;gap:18px;color:var(--muted);font-size:10px;line-height:1.45}.month-footer p{margin:0}.month-abbreviation-key{max-width:760px;text-align:right}.month-day-dialog{width:min(620px,100%)}.month-dialog-items{display:grid;gap:7px}.month-dialog-items article{min-width:0;padding:10px 11px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;border:1px solid var(--border);border-radius:9px;background:color-mix(in srgb,var(--sage) 16%,var(--surface))}.month-dialog-items article.learning{--month-learner-color: #6f987f;border-left:3px solid var(--month-learner-color);background:color-mix(in srgb,var(--month-learner-color) 14%,var(--surface))}.month-dialog-items article.learning.person-blue{--month-learner-color: #6e9eaa}.month-dialog-items article.learning.person-coral{--month-learner-color: #c66a56}.month-dialog-items article.learning.person-gold{--month-learner-color: #b39232}.month-dialog-items article.learning.person-lilac{--month-learner-color: #8c6aa4}.month-dialog-items article.learning.person-mint{--month-learner-color: #5c9c78}.month-dialog-items article.learning.person-teal{--month-learner-color: #438d90}.month-dialog-items article.learning.person-rose{--month-learner-color: #aa637d}.month-dialog-items article.learning.person-peach{--month-learner-color: #b6764d}.month-dialog-items article.learning.person-slate{--month-learner-color: #6f7d91}.month-dialog-items article>div{min-width:0;display:grid;gap:2px}.month-dialog-items small{display:flex;align-items:center;gap:5px}.month-dialog-items small,.month-dialog-items span{color:var(--muted);font-size:10px}.month-dialog-items small .filter-dot{width:7px;height:7px}.month-dialog-items strong{overflow-wrap:anywhere;font-size:12px}.year-board{min-width:0;padding:24px 20px 18px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px}.year-header h1{margin-bottom:4px}.year-toolbar{min-width:0;display:flex;align-items:end;gap:12px}.year-toolbar .planner-focus-switcher{margin-left:auto}.year-selection{min-width:190px;display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.year-selection select{min-height:38px;padding:7px 30px 7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700;letter-spacing:0;text-transform:none}.year-calendar{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));align-content:start;gap:12px}.year-month{min-width:0;padding:10px;display:grid;gap:6px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.year-month-title{min-width:0;padding:2px 1px 5px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;color:var(--text);cursor:pointer;font-size:11px;font-weight:850;text-align:left}.year-month-title:hover,.year-month-title:focus-visible{color:var(--action)}.year-month-title span{color:var(--muted);font-size:16px;font-weight:500}.year-month-weekdays,.year-month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.year-month-weekdays span{padding-block:2px 4px;color:var(--muted);font-size:7px;font-weight:850;text-align:center;text-transform:uppercase}.year-day{position:relative;min-width:0;aspect-ratio:1;padding:1px;display:grid;grid-template-rows:minmax(0,1fr) 5px;place-items:center;gap:0;border:0;border-radius:5px;background:transparent;color:var(--text);cursor:pointer;font-size:8px;font-variant-numeric:tabular-nums}.year-day:hover,.year-day:focus-visible{z-index:1;background:color-mix(in srgb,var(--sage) 52%,var(--surface));outline:1px solid color-mix(in srgb,var(--action) 42%,var(--border))}.year-day.empty{visibility:hidden}.year-day.marked{background:color-mix(in srgb,var(--yellow) 28%,var(--surface))}.year-day.today{box-shadow:inset 0 0 0 1.5px var(--action);font-weight:900}.year-day i{min-width:0;height:4px;display:flex;align-items:center;justify-content:center;gap:1px}.year-day i b,.year-key{width:4px;height:4px;display:block;border-radius:99px;background:var(--action)}.year-day i b.family,.year-key.family{background:#b39232}.year-day i b.person-sage{background:#6f987f}.year-day i b.person-blue{background:#6e9eaa}.year-day i b.person-coral{background:#c66a56}.year-day i b.person-gold{background:#b39232}.year-day i b.person-lilac{background:#8c6aa4}.year-day i b.person-mint{background:#5c9c78}.year-day i b.person-teal{background:#438d90}.year-day i b.person-rose{background:#aa637d}.year-day i b.person-peach{background:#b6764d}.year-day i b.person-slate{background:#6f7d91}.year-month>p{margin:1px 0 0;color:var(--muted);font-size:8px;text-align:right}.year-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:9px}.year-footer>div{display:flex;align-items:center;gap:5px}.year-footer>p{margin:0 0 0 auto}.year-key{width:7px;height:7px}.year-key.holiday{border:1px solid color-mix(in srgb,#b39232 70%,var(--border));background:color-mix(in srgb,var(--yellow) 42%,var(--surface))}.week-day{min-width:0;min-height:390px;height:100%;padding:10px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 94%,transparent)}.week-day.today{border-color:color-mix(in srgb,var(--action) 40%,var(--border))}.week-day>header{min-height:42px;display:grid;align-content:start;gap:6px}.week-day-title{display:flex;align-items:center;justify-content:space-between;gap:6px}.week-day h2{width:100%;margin:0;display:flex;align-items:center;justify-content:space-between;gap:6px;font-family:inherit;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.preview-week-grid h2{font-family:inherit;font-size:12px;letter-spacing:.02em}.week-day-number{width:25px;height:25px;display:grid;place-items:center;border-radius:99px;color:var(--text);font-size:10px;letter-spacing:0}.week-day.today .week-day-number{background:var(--action);color:var(--action-ink)}.holiday-pill{width:fit-content;padding:3px 6px;border-radius:99px;background:var(--yellow);font-size:9px;font-weight:800}.week-day-items{display:grid;gap:8px;align-content:start}.week-item.movable{cursor:grab}.week-item.movable:active{cursor:grabbing}.modal-backdrop{position:fixed;z-index:20;inset:0;padding:20px;display:grid;place-items:center;background:color-mix(in srgb,var(--text) 28%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.move-dialog{width:min(560px,100%);max-height:calc(100vh - 40px);overflow-y:auto;padding:28px;display:grid;gap:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface-raised);box-shadow:0 24px 70px color-mix(in srgb,var(--text) 22%,transparent)}.move-dialog h2,.move-dialog p{margin:0}.move-options{display:grid;gap:9px}.move-impact-note{padding:11px 13px;display:grid;gap:3px;border-left:3px solid var(--action);border-radius:7px;background:color-mix(in srgb,var(--sage) 24%,var(--surface))}.move-impact-note.warning{border-left-color:var(--warning);background:color-mix(in srgb,var(--yellow) 30%,var(--surface))}.move-impact-note p{color:var(--muted);font-size:13px;line-height:1.45}.move-options label,.school-year-extension,.move-collision-approval{padding:13px;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:pointer}.move-options label:has(input:checked),.school-year-extension:has(input:checked),.move-collision-approval:has(input:checked){border-color:var(--action);background:color-mix(in srgb,var(--sage) 38%,var(--surface))}.move-options span,.school-year-extension span,.move-collision-approval span{display:grid;gap:3px}.move-options small,.school-year-extension small,.move-collision-approval small{color:var(--muted);line-height:1.45}.routine-dialog{width:min(520px,100%)}.planner-learner-choices{margin:0;padding:13px;display:grid;gap:10px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--sage) 18%,var(--surface))}.planner-learner-choices legend{padding:0 4px;color:var(--text);font-size:12px;font-weight:800}.planner-learner-choices .learner-optional{color:var(--muted);font-size:10px;font-weight:550}.planner-learner-choices>p{color:var(--muted);font-size:12px;line-height:1.45}.planner-learner-choices>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.planner-learner-choices label{position:relative;min-width:0;min-height:50px;padding:8px 9px;display:grid;grid-template-columns:30px minmax(0,1fr) 21px;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.planner-learner-choices label:hover{border-color:color-mix(in srgb,var(--action) 55%,var(--border));background:color-mix(in srgb,var(--sage) 22%,var(--surface))}.planner-learner-choices label.selected{border-color:var(--action);background:color-mix(in srgb,var(--sage) 48%,var(--surface));color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 16%,transparent)}.planner-learner-choices label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.planner-learner-choices input{position:absolute;width:1px;height:1px;opacity:0}.planner-learner-choices strong{min-width:0;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.planner-learner-choices .learner-avatar{flex:0 0 auto;font-weight:500}.learner-choice-check{width:20px;height:20px;display:grid;place-items:center;border-radius:99px;background:#2f7d56;color:#fff;font-size:12px;font-weight:900;opacity:0;transform:scale(.78);transition:opacity .16s ease,transform .16s ease}.planner-learner-choices label.selected .learner-choice-check{opacity:1;transform:scale(1)}.planner-assignment-summary{padding:11px 13px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--sage) 28%,var(--surface))}.planner-assignment-summary .learner-avatar{flex:0 0 auto;font-weight:500}.planner-assignment-summary p{display:grid;gap:2px}.planner-assignment-summary small{color:var(--muted);font-size:11px}.family-activity-item{border-left-color:#8c6aa4;background:color-mix(in srgb,#ded1e8 22%,var(--surface))}.family-activity-item small{color:var(--muted);line-height:1.4}.dialog-kind-heading{display:flex;align-items:center;gap:12px}.dialog-kind-heading>.planner-item-icon{width:30px;height:30px;padding:6px;border-radius:9px;background:color-mix(in srgb,var(--yellow) 58%,var(--surface));color:var(--text)}.dialog-kind-heading h2{margin-top:2px}.routine-weekdays{margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;border:0}.routine-weekdays legend{margin-bottom:7px;color:var(--muted);font-size:12px;font-weight:700}.routine-weekdays label{min-width:0;cursor:pointer}.routine-weekdays input{position:absolute;opacity:0;pointer-events:none}.routine-weekdays span{min-height:38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:800}.routine-weekdays label:has(input:checked) span{border-color:var(--action);background:color-mix(in srgb,var(--sage) 52%,var(--surface));color:var(--text)}.routine-weekdays label:has(input:focus-visible) span{outline:2px solid var(--action);outline-offset:2px}.routine-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.capacity-choice{padding:12px;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer}.capacity-choice input{width:18px;height:18px;margin-top:2px;accent-color:var(--action)}.capacity-choice span{display:grid;gap:3px}.capacity-choice small{color:var(--muted);line-height:1.4}.capacity-slider strong{color:var(--text);font-size:13px}.capacity-slider input[type=range]{width:100%;padding:0;accent-color:var(--action)}.license-page{display:grid;gap:20px}.license-status-card,.license-activation-card,.licensed-feature-list{padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.license-status-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.license-status-card.active{border-color:color-mix(in srgb,var(--action) 38%,var(--border));background:color-mix(in srgb,var(--sage) 24%,var(--surface))}.license-status-card.inactive{background:color-mix(in srgb,var(--yellow) 24%,var(--surface))}.license-status-card h2,.license-activation-card h2,.licensed-feature-list h2{font-size:22px}.license-activation-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:end;gap:24px}.license-activation-card form{display:grid;gap:12px}.licensed-feature-list{display:grid;gap:16px}.licensed-feature-list ul{margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none}.licensed-feature-list li{padding:12px;display:flex;align-items:flex-start;gap:10px;border-radius:10px;background:color-mix(in srgb,var(--sage) 20%,var(--surface))}.licensed-feature-list li>span{color:var(--action);font-weight:900}.licensed-feature-list li div{display:grid;gap:2px}.licensed-feature-list small{color:var(--muted)}.routine-count{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--sage) 28%,var(--surface));color:var(--muted);font-size:13px}.week-item{min-width:0;min-height:104px;padding:12px;display:grid;align-content:start;gap:7px;border:0;border-radius:9px;background:color-mix(in srgb,var(--sage) 68%,var(--surface))}.week-item.learning-item,.week-item.actionable{position:relative;grid-template-columns:minmax(0,1fr);outline:1px solid transparent;outline-offset:1px;transition:outline-color .16s ease,box-shadow .16s ease,transform .16s ease}.week-item.learning-item[tabindex]:focus-visible,.week-item.actionable[tabindex]:focus-visible{outline:2px solid var(--action);outline-offset:2px}.week-item.learning-item.actions-visible,.week-item.actionable.actions-visible{outline-color:color-mix(in srgb,var(--action) 34%,transparent);box-shadow:0 7px 18px color-mix(in srgb,var(--text) 8%,transparent)}.week-item.routine-item{border:1px dashed color-mix(in srgb,#8c6aa4 58%,var(--border));background:color-mix(in srgb,#ded1e8 46%,var(--surface))}.week-item.person-blue{background:color-mix(in srgb,var(--blue) 72%,var(--surface))}.week-item.person-coral{background:color-mix(in srgb,var(--coral) 72%,var(--surface))}.week-item.person-gold{background:color-mix(in srgb,var(--yellow) 72%,var(--surface))}.week-item.person-lilac{background:color-mix(in srgb,#ded1e8 70%,var(--surface))}.week-item.person-mint{background:color-mix(in srgb,#c7e5d4 72%,var(--surface))}.week-item.person-teal{background:color-mix(in srgb,#bcdfe0 72%,var(--surface))}.week-item.person-rose{background:color-mix(in srgb,#efcbd8 72%,var(--surface))}.week-item.person-peach{background:color-mix(in srgb,#f4d0b5 72%,var(--surface))}.week-item.person-slate{background:color-mix(in srgb,#ced5df 72%,var(--surface))}.daily-note-item{width:100%;border:1px solid var(--daily-note-border);background:var(--daily-note-surface);color:var(--text);cursor:pointer;text-align:left}.daily-note-item:hover,.daily-note-item:focus-visible{border-color:color-mix(in srgb,var(--muted) 62%,var(--daily-note-border));background:var(--daily-note-surface-hover)}.daily-note-item .daily-note-copy{display:-webkit-box;overflow:hidden;color:var(--text);font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:4}.daily-note-item small{color:var(--action);font-size:10px;font-weight:800}.preview-week-item.person-blue{border-color:#6e9eaa;background:color-mix(in srgb,var(--blue) 58%,var(--surface))}.preview-week-item.person-coral{border-color:#c66a56;background:color-mix(in srgb,var(--coral) 58%,var(--surface))}.preview-week-item.person-gold{border-color:#b39232;background:color-mix(in srgb,var(--yellow) 58%,var(--surface))}.preview-week-item.person-lilac{border-color:#8c6aa4;background:color-mix(in srgb,var(--sage) 58%,var(--surface))}.week-item p{margin:0;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.week-item-kind{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.week-item.learning-item>.week-item-kind,.week-item.actionable>.week-item-kind{padding-top:8px}.week-item-kind .planner-item-icon{width:13px;height:13px}.week-item h3{margin:0;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.35}.week-item>span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;line-height:1.35}.week-item>span .filter-dot{width:7px;height:7px}.week-item button{justify-self:start;padding:4px 0;border:0;background:transparent;color:var(--action);cursor:pointer;font-size:10px;font-weight:800}.lesson-action-hint{position:absolute;top:4px;right:5px;padding:3px 4px;border:0;border-radius:5px;background:transparent;color:color-mix(in srgb,var(--muted) 72%,transparent);font-size:11px;letter-spacing:1px;line-height:1;cursor:pointer}.lesson-action-hint:hover,.lesson-action-hint:focus-visible{background:color-mix(in srgb,var(--surface) 72%,transparent);color:var(--text)}.lesson-card-actions{width:100%;min-width:0;margin-top:3px;padding-top:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:hidden;border-top:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.week-item .lesson-card-action{width:100%;min-width:0;min-height:27px;padding:5px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:6px;background:color-mix(in srgb,var(--surface) 76%,transparent);color:var(--muted);cursor:pointer;text-decoration:none}.week-item .lesson-card-action:hover{border-color:color-mix(in srgb,var(--action) 28%,var(--border));background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text)}.week-item .lesson-card-action.complete{border-color:color-mix(in srgb,var(--action) 22%,transparent);background:color-mix(in srgb,var(--sage) 40%,var(--surface));color:var(--action)}.week-item .lesson-card-action svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.week-item .lesson-card-action:disabled{cursor:wait;opacity:.55}.routine-item-actions{display:flex;flex-wrap:wrap;gap:4px 10px}.routine-item-actions button:last-child{color:var(--muted)}.supplement-access{width:fit-content;color:var(--action);font-size:12px;font-weight:750;text-decoration:none}.supplement-access:hover{text-decoration:underline}.week-item.completed{opacity:.62}.week-item.completed h3{text-decoration:line-through}.day-empty{margin:0;padding:10px 2px;color:var(--muted);font-size:11px;line-height:1.45}.week-progress{margin:0 -20px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--sage) 24%,var(--surface));color:var(--muted);font-size:11px}.week-progress-message{min-width:0;display:flex;align-items:center;gap:10px}.week-progress-message>span{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:99px;background:var(--action);color:var(--action-ink);font-weight:800}.week-progress-message p{margin:0}.week-progress-message strong{color:var(--text)}.week-progress-meter{min-width:190px;display:grid;grid-template-columns:minmax(120px,1fr) auto;align-items:center;gap:10px}.week-progress-meter i{height:6px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--border) 75%,transparent)}.week-progress-meter i span{height:100%;display:block;border-radius:inherit;background:var(--coral)}.week-progress-meter b{color:var(--text);font-size:11px}.generation-form{width:min(820px,100%)}.generation-courses{margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;border:0}.generation-courses legend{margin-bottom:10px;font-weight:800}.generation-courses label{min-width:0;padding:12px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.generation-courses input{width:18px;height:18px;accent-color:var(--action)}.generation-courses span{min-width:0;display:grid;gap:3px}.generation-courses strong{overflow:hidden;text-overflow:ellipsis}.generation-courses small{color:var(--muted)}.generation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.preview-unsaved{padding:13px 15px;display:flex;gap:11px;align-items:center;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--blue) 35%,transparent)}.preview-unsaved>span{font-size:22px}.preview-unsaved p{margin:2px 0 0;color:var(--muted);font-size:13px}.generation-summary{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:13px}.generation-summary strong{color:var(--text)}.preview-week-grid>section{min-width:0;display:grid;gap:7px;align-content:start}.preview-week-item{min-width:0;padding:9px;display:grid;gap:4px;border-left:3px solid #6f987f;border-radius:8px;background:color-mix(in srgb,var(--sage) 54%,var(--surface))}.preview-week-item strong{overflow-wrap:anywhere;font-size:11px;line-height:1.35}.preview-week-item span{color:var(--muted);font-size:9px;line-height:1.35}.form-notice.warning{border:1px solid color-mix(in srgb,#a37618 36%,var(--border));background:color-mix(in srgb,var(--yellow) 48%,transparent)}.empty-state.compact{padding:26px}.more-page{display:grid;gap:32px}.settings-links{max-width:760px;display:grid;gap:16px}.privacy-page{max-width:900px}.privacy-card{margin-top:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:32px}.privacy-card>div>p:not(.eyebrow){color:var(--muted);line-height:1.6}.privacy-card form{display:grid;align-content:start;gap:14px}.session-card{margin-top:24px;display:grid;gap:18px}.session-card .section-heading p:not(.eyebrow){margin:6px 0 0;color:var(--muted);line-height:1.5}.account-session-list{display:grid}.account-session-list article{min-height:74px;padding:14px 0;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;border-top:1px solid var(--border)}.session-device-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--sage) 55%,var(--surface))}.session-device-icon svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.account-session-list article>div{min-width:0;display:grid;gap:5px}.session-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-session-list p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.all-session-action{padding-top:4px;border-top:1px solid var(--border)}.inline-confirmation{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--danger) 6%,var(--surface))}.inline-confirmation p{margin:0;display:grid;gap:3px}.inline-confirmation p span{color:var(--muted);font-size:12px}.inline-confirmation>div{display:flex;align-items:center;gap:8px}.privacy-choice{padding:12px;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.privacy-choice input{margin-top:3px;accent-color:var(--action)}.privacy-choice span{display:grid;gap:3px}.privacy-choice small{color:var(--muted);line-height:1.4}.privacy-choice.acknowledgement{color:var(--muted);font-size:13px}.danger-zone{margin-top:40px;padding:clamp(26px,4vw,38px);border:1px solid color-mix(in srgb,var(--danger) 48%,var(--border));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--danger) 9%,var(--surface-raised)),var(--surface-raised) 58%);box-shadow:0 16px 42px color-mix(in srgb,var(--danger) 9%,transparent)}.danger-zone-intro{display:flex;align-items:flex-start;gap:14px}.danger-zone-intro>div{min-width:0}.danger-zone-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--danger) 14%,var(--surface));color:var(--danger)}.danger-zone-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.license-warning{border-color:color-mix(in srgb,var(--yellow) 72%,var(--border));background:color-mix(in srgb,var(--yellow) 22%,var(--surface))}.privacy-receipt{max-width:720px;margin:70px auto;padding:clamp(28px,6vw,52px);border:1px solid var(--border);border-radius:18px;background:var(--surface-raised)}.privacy-receipt dl{margin:28px 0;display:grid;gap:12px}.privacy-receipt dl div{padding:12px 0;display:grid;gap:4px;border-top:1px solid var(--border)}.privacy-receipt dt{color:var(--muted);font-size:12px;font-weight:700}.privacy-receipt dd{margin:0;overflow-wrap:anywhere}.settings-link-card{min-height:78px;padding:16px 18px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);text-decoration:none}.settings-link-card:hover{background:color-mix(in srgb,var(--sage) 35%,var(--surface))}.settings-link-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--sage)}.settings-card-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.settings-link-card div{min-width:0;display:grid;gap:4px}.settings-link-card small{color:var(--muted);line-height:1.4}.settings-card-chevron{width:20px;height:20px;fill:none;stroke:var(--muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.records-page{display:grid;gap:26px}.records-home-grid{width:min(820px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.record-destination{position:relative;min-height:148px;padding:22px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);text-decoration:none}.record-destination:hover{border-color:color-mix(in srgb,var(--action) 34%,var(--border));background:color-mix(in srgb,var(--sage) 30%,var(--surface))}.record-destination h2{margin:1px 0 7px;font-size:20px}.record-destination p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.record-destination>span:last-child{align-self:center;color:var(--muted);font-size:28px}.record-license-label{position:absolute;right:20px;bottom:15px;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--yellow) 42%,var(--surface));color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.03em}.record-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--sage)}.record-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.record-filter-bar{padding:13px;display:grid;grid-template-columns:repeat(4,minmax(135px,1fr));gap:10px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,var(--surface))}.record-filter-bar label{min-width:0;display:grid;gap:5px}.record-filter-bar label>span,.attendance-rule-card label>span{padding-left:2px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.record-filter-bar input,.record-filter-bar select,.attendance-rule-card select{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-size:13px}.progress-record-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(370px,100%),1fr));gap:14px}.progress-record-card{padding:19px;display:grid;gap:14px;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.progress-record-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.progress-record-card h2{margin:0;font-size:18px}.progress-record-card header p{margin:3px 0 0;color:var(--muted);font-size:12px}.progress-record-card header>strong{font-size:20px}.record-progress-track{height:7px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border) 74%,transparent)}.record-progress-track span{height:100%;display:block;border-radius:inherit;background:var(--action)}.progress-course-records{display:grid}.progress-course-records>div{padding:11px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.progress-course-records>div>span{min-width:0;display:grid;gap:3px}.progress-course-records strong{overflow:hidden;text-overflow:ellipsis;font-size:13px}.progress-course-records small,.progress-course-records b{color:var(--muted);font-size:11px}.records-method-note{max-width:780px;margin:-8px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.attendance-rule-card{padding:18px 20px;display:grid;grid-template-columns:minmax(280px,1fr) minmax(180px,240px) auto;align-items:end;gap:16px;border:1px solid color-mix(in srgb,var(--action) 20%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--sage) 30%,var(--surface))}.attendance-rule-card h2{margin:0 0 5px;font-size:18px}.attendance-rule-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.attendance-rule-card label{display:grid;gap:5px}.attendance-list{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.attendance-row{min-height:72px;padding:12px 16px;display:grid;grid-template-columns:auto minmax(145px,1.1fr) minmax(135px,.8fr) minmax(116px,auto) auto;align-items:center;gap:13px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.attendance-row:last-child{border-bottom:0}.attendance-person,.attendance-count{display:grid;gap:3px}.attendance-person strong,.attendance-count strong{font-size:13px}.attendance-person span,.attendance-count span{color:var(--muted);font-size:11px}.attendance-status{min-width:104px;padding:7px 10px;display:grid;gap:1px;border-radius:9px;background:color-mix(in srgb,var(--border) 48%,transparent);color:var(--muted);font-size:11px;font-weight:800;text-transform:capitalize}.attendance-status.attended{background:color-mix(in srgb,var(--sage) 72%,var(--surface));color:var(--text)}.attendance-status.absent{background:color-mix(in srgb,var(--coral) 48%,var(--surface));color:var(--text)}.attendance-status.excused{background:color-mix(in srgb,var(--blue) 54%,var(--surface));color:var(--text)}.attendance-status small{color:var(--muted);font-size:9px;font-weight:650;text-transform:none}.attendance-editor{width:min(520px,100%);padding:25px;display:grid;gap:18px;border:1px solid var(--border);border-radius:17px;background:var(--surface-raised);box-shadow:0 20px 60px color-mix(in srgb,var(--text) 22%,transparent)}.attendance-editor h2{margin:3px 0 6px;font-size:21px}.attendance-editor p{margin:0;color:var(--muted);font-size:13px}.attendance-editor .field select,.attendance-editor .field textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-weight:500}.attendance-editor .field textarea{resize:vertical}.optional-label{color:var(--muted);font-size:11px;font-weight:500}.attendance-editor-actions{display:flex;justify-content:flex-end;gap:10px}.gradebook-filter-bar{width:100%;padding:13px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,var(--surface))}.gradebook-filter-bar label{min-width:0;display:grid;gap:5px}.gradebook-filter-bar label>span,.gradebook-method label>span{padding-left:2px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.gradebook-filter-bar select,.gradebook-method select{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-size:13px}.gradebook-scope-note{width:100%;margin:-13px 0 0;color:var(--muted);font-size:11px}.gradebook-course-list{display:grid;gap:18px}.gradebook-course-card{overflow:hidden;border:1px solid var(--border);border-radius:17px;background:var(--surface)}.gradebook-course-heading{padding:20px;display:flex;align-items:end;justify-content:space-between;gap:22px;background:color-mix(in srgb,var(--sage) 27%,var(--surface))}.gradebook-course-heading>div:first-child{min-width:0}.gradebook-course-heading p{margin:0 0 4px;color:var(--muted);font-size:11px;font-weight:750}.gradebook-course-heading h2{margin:0;font-size:21px}.gradebook-method{width:min(500px,58%);display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:end;gap:9px}.gradebook-method label{display:grid;gap:5px}.gradebook-method-help{margin:0;padding:12px 20px;display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--muted);font-size:12px;line-height:1.45}.gradebook-learner{padding:18px 20px 20px;border-bottom:1px solid var(--border)}.gradebook-learner:last-child{border-bottom:0}.gradebook-learner>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.gradebook-learner h3{margin:0;font-size:17px}.gradebook-learner header p{margin:3px 0 0;color:var(--muted);font-size:12px}.gradebook-learner-actions{display:grid;justify-items:end;gap:3px}.gradebook-learner-actions small{color:var(--muted);font-size:11px;font-weight:700}.gradebook-learner-actions span{color:var(--danger);font-size:10px;font-weight:750}.grade-category-results{margin:13px 0 0 49px;display:flex;flex-wrap:wrap;gap:7px}.grade-category-results>span{min-width:125px;padding:8px 10px;display:grid;gap:2px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:9px;background:color-mix(in srgb,var(--surface-raised) 62%,var(--surface))}.grade-category-results strong{font-size:11px}.grade-category-results small{color:var(--muted);font-size:10px}.gradebook-empty{margin:16px 0 0 49px;color:var(--muted);font-size:12px}.gradebook-work-list{margin-top:14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 76%,transparent);border-radius:12px}.gradebook-work-row{min-height:69px;padding:11px 13px;display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,auto) auto;align-items:center;gap:14px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.gradebook-work-row:last-child{border-bottom:0}.gradebook-work-row>div{min-width:0;display:grid;gap:3px}.gradebook-work-row small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.gradebook-work-row strong{font-size:13px}.gradebook-work-row p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.grade-result{justify-self:end;padding:6px 9px;border-radius:8px;background:color-mix(in srgb,var(--sage) 66%,var(--surface));font-size:11px;font-weight:800}.grade-result.empty{background:color-mix(in srgb,var(--border) 46%,transparent);color:var(--muted);font-weight:650}.grade-editor{width:min(560px,100%);padding:25px;display:grid;gap:18px;border:1px solid var(--border);border-radius:17px;background:var(--surface-raised);box-shadow:0 20px 60px color-mix(in srgb,var(--text) 22%,transparent)}.grade-editor h2{margin:3px 0 6px;font-size:21px}.grade-editor>div:first-child>p:last-child{margin:0;color:var(--muted);font-size:12px}.grade-editor .field input,.grade-editor .field select,.grade-editor .field textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-weight:500}.grade-editor .field textarea{resize:vertical}.grade-points-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grade-editor-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px}.grade-setup-editor{width:min(680px,100%)}.grade-category-heading{display:flex;align-items:end;justify-content:space-between;gap:12px}.grade-category-heading>div:first-child{display:grid;gap:2px}.grade-category-heading small{color:var(--muted);font-size:11px}.grade-category-heading>div:last-child{display:flex;align-items:center;gap:8px}.grade-category-editor-list{display:grid;gap:8px}.grade-category-editor-list>div{display:grid;grid-template-columns:minmax(0,1fr) 105px auto auto;align-items:end;gap:8px}.grade-category-editor-list>div>span{padding-bottom:11px;color:var(--muted);font-size:12px}.grade-category-editor-list .danger-text-action{min-height:42px}.category-weight-total{margin:-5px 0 0;display:flex;align-items:center;gap:8px;color:var(--danger);font-size:12px}.category-weight-total.valid{color:var(--muted)}.grade-config-manager{width:min(760px,100%);max-height:calc(100dvh - 40px);overflow-y:auto}.grade-config-list{display:grid;gap:8px}.grade-config-list>div{padding:12px 13px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.grade-config-list>div>div{min-width:0;display:grid;gap:3px}.grade-config-list small,.scale-band-heading small{color:var(--muted);font-size:11px;line-height:1.4}.scale-band-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.scale-band-list,.reporting-period-list{display:grid;gap:9px}.scale-band-list>div{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;align-items:end;gap:9px}.scale-band-list .danger-text-action{min-height:42px}.reporting-period-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reporting-period-list>div{padding:12px;display:grid;grid-template-columns:minmax(150px,1fr) repeat(2,minmax(145px,.8fr));gap:9px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.final-grade-editor{width:min(560px,100%)}.final-grade-choice{padding:13px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;border:1px solid var(--border);border-radius:11px;cursor:pointer}.final-grade-choice:has(input:checked){border-color:color-mix(in srgb,var(--action) 54%,var(--border));background:color-mix(in srgb,var(--sage) 35%,var(--surface))}.final-grade-choice input{margin-top:2px;accent-color:var(--action-strong)}.final-grade-choice span{display:grid;gap:3px}.final-grade-choice strong{font-size:13px}.final-grade-choice small{color:var(--muted);font-size:11px;line-height:1.4}.danger-text-action{border:0;background:transparent;color:var(--danger);font:inherit;font-size:12px;font-weight:750;cursor:pointer}.field-help.error{margin:-8px 0 0;color:var(--danger);font-size:11px}.portfolio-record-list{width:min(780px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portfolio-record-card{min-height:94px;padding:17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);text-decoration:none}.portfolio-record-card:hover{border-color:color-mix(in srgb,var(--action) 34%,var(--border));background:color-mix(in srgb,var(--sage) 30%,var(--surface))}.portfolio-record-card h2{margin:0;font-size:18px}.portfolio-record-card p{margin:4px 0 0;color:var(--muted);font-size:12px}.portfolio-record-card>span:last-child{color:var(--muted);font-size:25px}.transcript-page{max-width:1050px}.transcript-page>.records-method-note,.transcript-course-section>.transcript-guidance{width:100%;max-width:none}.transcript-learner-bar{padding:14px 16px;display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:end;gap:18px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,var(--surface))}.transcript-learner-bar label{display:grid;gap:5px}.transcript-learner-bar label>span,.transcript-course-fields label>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.transcript-learner-bar select,.transcript-course-fields select,.transcript-course-fields input{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-size:13px}.transcript-learner-bar>div{display:grid;justify-items:end;gap:3px;color:var(--muted);font-size:12px}.transcript-learner-bar strong{color:var(--text);font-size:14px}.transcript-identity-card,.transcript-course-section{padding:clamp(20px,3vw,28px);display:grid;gap:20px;border:1px solid var(--border);border-radius:17px;background:var(--surface)}.transcript-identity-card .section-heading,.transcript-course-section .section-heading{margin:0}.transcript-guidance{max-width:780px;margin:-10px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.transcript-form-section{padding-top:18px;border-top:1px solid color-mix(in srgb,var(--border) 76%,transparent)}.transcript-form-section h3{margin:0 0 13px;font-size:15px}.transcript-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.transcript-form-grid .wide{grid-column:1 / -1}.transcript-course-list{display:grid;gap:12px}.transcript-course-card{overflow:hidden;border:1px solid var(--border);border-left:4px solid var(--border);border-radius:14px;background:var(--surface-raised)}.transcript-course-card.included{border-left-color:var(--action)}.transcript-course-card>header{padding:14px 15px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;background:color-mix(in srgb,var(--sage) 20%,var(--surface))}.transcript-course-card header>div{min-width:0}.transcript-course-card h3{margin:2px 0;overflow:hidden;font-size:16px;text-overflow:ellipsis}.transcript-course-card header p,.transcript-course-card header small{margin:0;color:var(--muted);font-size:10px}.formal-gradebook-guidance{display:flex;flex-wrap:wrap;align-items:center;gap:4px 9px}.formal-gradebook-guidance button{padding:0;border:0;background:transparent;color:var(--action-strong);font:inherit;font-size:10px;font-weight:750;cursor:pointer}.formal-gradebook-guidance button:hover{text-decoration:underline}.transcript-include{position:relative;min-width:62px;display:grid;grid-template-columns:24px;justify-items:center;gap:3px;color:var(--muted);cursor:pointer;font-size:10px}.transcript-include input{position:absolute;opacity:0}.transcript-include>span{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:transparent;font-size:13px}.transcript-include:has(input:checked)>span{border-color:var(--action);background:var(--action);color:var(--action-ink)}.transcript-include:has(input:focus-visible)>span{outline:3px solid var(--focus);outline-offset:2px}.transcript-course-fields{padding:13px 15px 15px;display:grid;grid-template-columns:1.15fr .85fr 1.05fr .7fr .7fr;gap:9px}.transcript-course-fields label{min-width:0;display:grid;gap:5px}.transcript-course-fields label span small{letter-spacing:0;text-transform:none}.transcript-readiness{padding:19px 21px;display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid color-mix(in srgb,var(--yellow) 78%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--yellow) 27%,var(--surface))}.transcript-readiness.ready{border-color:color-mix(in srgb,var(--action) 38%,var(--border));background:color-mix(in srgb,var(--sage) 32%,var(--surface))}.transcript-readiness>div{display:flex;align-items:flex-start;gap:13px}.transcript-readiness>div>span{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:99px;background:var(--surface);color:var(--text);font-weight:900}.transcript-readiness h2{margin:0;font-size:17px}.transcript-readiness p,.transcript-readiness ul{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.transcript-readiness ul{padding-left:18px}.formal-record-license{max-width:760px}.report-card-page{max-width:1050px}.report-card-page>.records-method-note{width:100%;max-width:none}.report-card-period-card{padding:clamp(20px,3vw,28px);display:grid;gap:18px;border:1px solid var(--border);border-radius:17px;background:var(--surface)}.report-card-period-card .section-heading{margin:0}.report-card-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.report-card-period-grid .wide{grid-column:1 / -1}.report-card-period-grid select,.report-card-period-grid input,.report-card-period-grid textarea,.transcript-form-grid input{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-size:13px;font-weight:500}.report-card-period-grid textarea{resize:vertical}.report-card-attendance{padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--sage) 27%,var(--surface))}.report-card-attendance h2{margin:2px 0 0;font-size:20px}.report-card-attendance dl{margin:0;display:flex;gap:9px}.report-card-attendance dl div{min-width:88px;padding:9px 12px;display:grid;justify-items:center;gap:2px;border-radius:10px;background:var(--surface)}.report-card-attendance dt{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.report-card-attendance dd{margin:0;font-size:18px;font-weight:800}.report-card-course-list{display:grid;gap:12px}.report-card-course{overflow:hidden;border:1px solid var(--border);border-left:4px solid var(--border);border-radius:14px;background:var(--surface-raised)}.report-card-course.included{border-left-color:var(--action)}.report-card-course>header{padding:14px 15px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;background:color-mix(in srgb,var(--sage) 20%,var(--surface))}.report-card-course header>div{min-width:0}.report-card-course h3{margin:2px 0;overflow:hidden;font-size:16px;text-overflow:ellipsis}.report-card-course header p,.report-card-course header small{margin:0;color:var(--muted);font-size:10px}.report-card-course-fields{padding:13px 15px 15px;display:grid;grid-template-columns:minmax(160px,.7fr) minmax(180px,.8fr) minmax(280px,1.5fr);gap:9px}.report-card-course-fields label{min-width:0;display:grid;gap:5px}.report-card-course-fields label>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.report-card-course-fields label span small{letter-spacing:0;text-transform:none}.report-card-course-fields input,.report-card-course-fields select,.report-card-course-fields textarea{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-size:13px}.report-card-course-fields textarea{resize:vertical}.transcript-print-sheet,.transcript-document{color-scheme:light;background:#fff;color:#1d2d27}.transcript-print-sheet{font-family:Arial,Helvetica,sans-serif}.transcript-document>header{padding-bottom:12px;border-bottom:3px solid #26352f;text-align:center;text-transform:uppercase}.transcript-document>header p{margin:0 0 4px;color:#26352f;font-size:15px;font-weight:800;letter-spacing:.08em}.transcript-document>header h2{margin:0;color:#26352f;font-family:Arial,Helvetica,sans-serif;font-size:22px}.transcript-document-identities{margin-top:13px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #9aa7a0;background:#f2f5f3}.transcript-document-identities>div{min-height:100px;padding:10px 12px}.transcript-document-identities>div+div{border-left:1px solid #9aa7a0}.transcript-document h3{margin:0 0 6px;color:#26352f;font-family:Arial,Helvetica,sans-serif;font-size:9px;letter-spacing:.05em;text-transform:uppercase}.transcript-document-identities p{margin:2px 0;color:#26352f;font-size:9px;line-height:1.35}.transcript-year-groups{margin-top:14px;display:grid;gap:13px}.transcript-year h3{margin-bottom:5px;font-size:11px}.transcript-year table{width:100%;border-collapse:collapse;color:#26352f;font-size:9px}.transcript-year th,.transcript-year td{padding:6px 7px;border:1px solid #aeb8b3;text-align:left}.transcript-year th{background:#f2f5f3;font-size:8px;text-transform:uppercase}.transcript-year th:nth-last-child(-n+2),.transcript-year td:nth-last-child(-n+2){text-align:center}.transcript-year tr{break-inside:avoid}.transcript-document-summary{margin-top:14px;padding:9px 11px;display:flex;justify-content:center;gap:28px;border:1.5px solid #26352f;background:#f2f5f3;color:#26352f;font-size:10px}.transcript-scale,.transcript-certification{margin-top:15px}.transcript-scale p,.transcript-certification p{margin:0;color:#26352f;font-size:8px;line-height:1.45}.transcript-certification>div{margin-top:27px;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:38px;font-size:8px}.transcript-certification span{display:grid;gap:4px}.transcript-certification i{display:block;border-top:1px solid #26352f}.transcript-document>footer{margin-top:19px;padding-top:7px;display:flex;justify-content:space-between;border-top:1px solid #aeb8b3;color:#596a62;font-size:7px}.report-card-results{margin-top:14px}.report-card-results td strong,.report-card-results td small{display:block}.report-card-results td small{margin-top:3px;color:#596a62;font-size:7px;line-height:1.35}.report-card-attendance-print{margin-top:14px}.report-card-attendance-print dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #aeb8b3}.report-card-attendance-print dl div{padding:8px;display:grid;justify-items:center;gap:3px;background:#f2f5f3}.report-card-attendance-print dl div+div{border-left:1px solid #aeb8b3}.report-card-attendance-print dt{font-size:7px;font-weight:700;text-transform:uppercase}.report-card-attendance-print dd{margin:0;font-size:12px;font-weight:800}.family-members-page{display:grid;gap:28px}.adult-member-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.adult-member-card{position:relative;padding:18px 56px 18px 18px;display:flex;align-items:center;gap:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.adult-card-edit{position:absolute;top:12px;right:12px;width:32px;height:32px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.adult-card-edit:hover{border-color:var(--border);background:var(--surface-raised);color:var(--action)}.adult-card-edit svg{width:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.adult-member-card>div{min-width:0;display:grid;gap:3px}.adult-member-card strong{overflow:hidden;text-overflow:ellipsis}.adult-member-card span:not(.adult-avatar){color:var(--muted);font-size:13px}.invitation-card{max-width:760px;padding:clamp(20px,3vw,30px);display:grid;gap:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.invitation-card .section-heading{margin:0;align-items:center}.member-limit{padding:6px 10px;border-radius:999px;background:var(--sage);color:var(--muted);font-size:12px;font-weight:800}.invitation-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}.invitation-form .primary-action{margin-bottom:25px}.pending-invitation{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:11px;background:color-mix(in srgb,var(--sage) 34%,transparent)}.pending-invitation>div{min-width:0;display:grid;gap:4px}.pending-invitation strong{overflow-wrap:anywhere}.pending-invitation span{color:var(--muted);font-size:13px}.calendar-page{display:grid;gap:26px}.calendar-header{margin-bottom:6px}.calendar-section{padding:clamp(20px,3vw,30px);border:1px solid var(--border);border-radius:16px;background:var(--surface)}.calendar-section .section-heading{margin-bottom:15px}.section-copy{max-width:760px;margin:-4px 0 18px;color:var(--muted);font-size:14px;line-height:1.6}.local-date{padding:7px 11px;border-radius:999px;background:var(--sage);color:var(--text);font-size:13px;font-weight:700}.settings-row{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(160px,.7fr) auto;gap:14px;align-items:end}.settings-row .primary-action{margin-bottom:1px}.school-year-form{display:grid;gap:20px}.weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(66px,1fr));gap:8px}.weekday-grid .check-field{padding:8px;justify-content:center;border:1px solid var(--border);border-radius:9px;background:var(--surface-raised)}.school-year-summary{padding:18px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:20px;align-items:center;border-radius:12px;background:color-mix(in srgb,var(--sage) 28%,transparent)}.school-year-summary>div{display:grid;gap:5px}.school-year-summary span:not(.status-pill){color:var(--muted);font-size:13px}.status-pill{padding:6px 10px;border-radius:999px;background:var(--blue);font-size:12px;font-weight:800;text-transform:capitalize}.status-pill.ended{background:var(--border)}.school-year-actions{display:flex;align-items:end;gap:10px}.school-year-actions label{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700}.school-year-actions select{min-height:40px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface)}.school-year-rollover{margin-top:14px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}.school-year-rollover p{margin:4px 0 0;color:var(--muted);font-size:13px}.holiday-toggle{position:relative;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer}.holiday-toggle input{position:absolute;opacity:0}.switch{width:45px;height:25px;flex:0 0 auto;padding:3px;display:flex;justify-content:flex-start;border-radius:999px;background:var(--border);transition:background .15s ease}.switch:after{width:19px;height:19px;border-radius:999px;background:var(--surface-raised);box-shadow:0 1px 3px color-mix(in srgb,var(--text) 25%,transparent);content:"";transition:transform .15s ease}.holiday-toggle input:checked+.switch{background:var(--action)}.holiday-toggle input:checked+.switch:after{transform:translate(20px)}.holiday-toggle input:focus-visible+.switch{outline:3px solid var(--focus);outline-offset:3px}.calendar-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.calendar-columns.holiday-only{grid-template-columns:1fr}.exception-form{margin-bottom:20px;display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:12px;align-items:end}.exception-form .wide-field{grid-column:1 / -1}.exception-form-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px}.exception-reset{width:30px;height:30px;padding:6px;display:grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.exception-reset:hover,.exception-reset:focus-visible{background:color-mix(in srgb,var(--sage) 42%,transparent);color:var(--text)}.exception-reset svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.exception-reset:disabled{opacity:.5;cursor:wait}.date-list{display:grid;gap:8px}.date-row{min-width:0;padding:12px 0;display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid var(--border)}.date-row time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.date-row>div{min-width:0;display:grid;gap:3px}.date-row strong{font-size:14px;line-height:1.35}.date-row div span{color:var(--muted);font-size:12px;text-transform:capitalize}.holiday-list .date-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.holiday-break-row-action{min-width:0;margin:-8px 0;padding:8px 10px 8px 0;display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.holiday-break-row-action:hover,.holiday-break-row-action:focus-visible{background:color-mix(in srgb,var(--sage) 35%,transparent)}.holiday-break-row-action:disabled{opacity:.5;cursor:wait}.holiday-break-row-action.unavailable{cursor:default}.holiday-break-row-action.unavailable:hover{background:transparent}.holiday-date-copy{min-width:0;display:grid;gap:3px}.holiday-date-copy>span{color:var(--muted);font-size:12px;text-transform:capitalize}.holiday-date-copy .holiday-outside-note{color:var(--muted);font-size:11px;font-style:italic;text-transform:none}.holiday-visibility{justify-content:flex-end}.holiday-visibility .switch{width:34px;height:20px;padding:3px}.holiday-visibility .switch:after{width:14px;height:14px}.holiday-visibility input:checked+.switch:after{transform:translate(14px)}.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:16px;color:var(--muted)}.loading-screen img{width:52px;height:52px;object-fit:contain}.maintenance-screen{min-height:100dvh;padding:32px;display:grid;place-content:center;justify-items:center;text-align:center;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--sage) 52%,transparent),transparent 32%),var(--canvas)}.maintenance-screen img{width:62px;height:62px;margin-bottom:24px;object-fit:contain}.maintenance-screen h1{margin:6px 0 14px;font-size:clamp(32px,6vw,54px)}.maintenance-screen>p:not(.eyebrow){max-width:620px;margin:0;color:var(--muted);font-size:clamp(17px,2vw,20px);line-height:1.6}.maintenance-screen small{max-width:520px;margin-top:22px;color:var(--muted)}.identity-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 12% 10%,color-mix(in srgb,var(--sage) 60%,transparent),transparent 30%),var(--canvas)}.identity-brand{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:22px;font-weight:700}.identity-brand>div{display:flex;align-items:center;gap:10px}.identity-brand img{width:36px;height:36px;object-fit:contain}.identity-main{width:min(1050px,calc(100% - 40px));margin:0 auto;padding:44px 0 64px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(44px,8vw,100px);align-items:start}.identity-intro h1{max-width:640px;font-size:clamp(42px,6vw,70px)}.identity-intro>p:not(.eyebrow){max-width:610px;color:var(--muted);font-size:18px;line-height:1.7}.identity-intro ul{margin:30px 0 0;padding:0;display:grid;gap:12px;list-style:none;color:var(--muted)}.identity-intro li{display:flex;gap:10px;align-items:center}.identity-intro li span{width:24px;height:24px;display:grid;place-items:center;border-radius:99px;background:var(--sage);color:var(--text);font-size:13px;font-weight:800}.identity-card{padding:clamp(26px,4vw,40px);border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--surface-raised) 94%,transparent);box-shadow:0 20px 60px color-mix(in srgb,var(--text) 10%,transparent)}.identity-card h2{margin-bottom:24px}.identity-card form{display:grid;gap:17px}.identity-card form .primary-action{width:100%;margin-top:4px}.field{display:grid;gap:7px;color:var(--text);font-size:14px;font-weight:700}.field input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-weight:500}.field input:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-color:transparent}.field small,.form-copy{color:var(--muted);font-weight:500;line-height:1.5}.policy-consent{padding:12px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--sage) 18%,var(--surface))}.policy-consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--action)}.policy-consent label{color:var(--muted);font-size:12px;line-height:1.55}.policy-consent a,.identity-footer a{color:var(--action);text-underline-offset:2px}.identity-card>.text-action{margin:12px 0 0;padding:0}.identity-switch{margin:22px 0 0;color:var(--muted);font-size:14px}.identity-switch button{padding:0;border:0;background:transparent;color:var(--action);font-weight:700;cursor:pointer}.invite-code-accepted{width:fit-content;margin:-10px 0 18px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--action) 12%,var(--surface));color:var(--action);font-size:13px;font-weight:700}.form-notice{margin-top:18px;padding:12px 14px;border-radius:9px;font-size:14px;line-height:1.5}.form-notice.success{border:1px solid color-mix(in srgb,var(--action) 35%,var(--border));background:color-mix(in srgb,var(--sage) 45%,transparent)}.form-notice.error{border:1px solid color-mix(in srgb,#a63d32 40%,var(--border));background:color-mix(in srgb,var(--coral) 50%,transparent)}.identity-footer{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:20px 0 28px;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.identity-footer nav{display:flex;flex-wrap:wrap;gap:14px}.identity-footer span{margin-left:auto}.public-info-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--sage) 52%,transparent),transparent 28%),var(--canvas)}.public-info-header{width:min(1100px,calc(100% - 40px));margin:0 auto;padding:22px 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:30px}.public-info-brand{display:flex;align-items:center;gap:10px;color:var(--text);font-family:Iowan Old Style,Baskerville,Georgia,serif;font-size:21px;font-weight:700;text-decoration:none}.public-info-brand img{width:34px;height:34px;object-fit:contain}.public-info-header nav{justify-self:end;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:18px}.public-info-header nav a{color:var(--muted);font-size:13px;font-weight:650;text-decoration:none}.public-info-header nav a:hover,.public-info-header nav a[aria-current=page]{color:var(--text)}.public-info-main{width:min(840px,calc(100% - 40px));margin:0 auto;padding:58px 0 80px}.public-info-title{margin-bottom:40px}.public-info-title h1{margin:4px 0 14px;font-size:clamp(38px,6vw,62px)}.public-info-title .lede{max-width:760px;margin:0}.public-info-content{display:grid;gap:0}.public-info-content>.policy-meta{margin:0 0 12px;color:var(--muted);font-size:12px}.policy-meta span{margin:0 6px}.public-info-content>section{padding:28px 0;border-top:1px solid var(--border)}.public-info-content h2{margin:0 0 12px;font-size:22px}.public-info-content p,.public-info-content li{color:var(--muted);line-height:1.72}.public-info-content p{margin:10px 0 0}.public-info-content ul{margin:8px 0 0;padding-left:22px}.public-info-content a{color:var(--action);text-underline-offset:2px}.support-session-check p{margin:0}.support-request-section>p{max-width:700px}.support-request-section>p strong{color:var(--text)}.support-request-form{max-width:680px;margin-top:22px;display:grid;gap:17px}.support-request-form .field textarea{width:100%;padding:10px 12px;resize:vertical;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--surface);font:inherit;font-weight:500;line-height:1.5}.support-request-form .primary-action{justify-self:start}.support-request-section .form-notice{max-width:680px}.support-request-section .form-notice span{color:var(--muted)}.public-info-footer{width:min(1100px,calc(100% - 40px));margin:0 auto;padding:22px 0 30px;display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}.public-info-footer a{color:var(--action)}.sign-out{min-height:38px;padding:8px 11px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer}.sign-out-icon{font-size:15px;line-height:1}.nav-collapsed .sign-out{width:40px;justify-self:center;padding-inline:8px}@media(max-width:1050px){.planner-layout{grid-template-columns:1fr}.planner-filter-rail{grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--border)}.planner-add-action{grid-column:1 / -1}.app-shell{display:block}.sidebar{display:none}main{padding-top:34px}.content-grid{grid-template-columns:1fr}.mobile-nav{position:fixed;z-index:5;inset:auto 0 0;min-height:68px;padding:6px max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-nav a{min-height:52px;display:grid;place-items:center;gap:2px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;text-decoration:none}.mobile-nav a.active{color:var(--text);background:var(--sage);font-weight:700}.identity-main{grid-template-columns:1fr;gap:36px}.public-info-header{grid-template-columns:1fr auto;gap:16px}.public-info-header nav{grid-column:1 / -1;grid-row:2;justify-self:start;justify-content:flex-start}.identity-intro{text-align:center}.identity-intro>p:not(.eyebrow),.identity-intro h1{margin-inline:auto}.identity-intro ul{width:fit-content;margin-inline:auto;text-align:left}.learner-grid,.adult-member-grid,.course-grid{grid-template-columns:1fr}.course-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.course-search-control{grid-column:1 / -1}.outline-empty{grid-template-columns:1fr}.preview-row{margin-left:calc(var(--outline-depth) * 12px);grid-template-columns:repeat(2,minmax(0,1fr))}.extraction-preview-row{margin-left:calc(var(--outline-depth) * 12px)}.extraction-row-heading{grid-template-columns:9px minmax(0,1fr)}.extraction-structure-actions{grid-column:2;justify-content:flex-start}.extraction-row-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-row .remove-preview-item{justify-self:start}.week-lesson-builder-form{grid-template-columns:repeat(2,minmax(0,1fr))}.week-lesson-builder-actions{grid-column:1 / -1}.profile-page{grid-template-columns:1fr}.profile-page>.profile-card:first-of-type{grid-row:auto}.settings-row,.calendar-columns{grid-template-columns:1fr}.weekday-grid{grid-template-columns:repeat(4,1fr)}.progress-header{align-items:start;flex-direction:column}.planner-layout .week-grid{min-width:0}.week-grid,.preview-week-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.week-day,.preview-week-grid>section{min-width:min(76vw,290px);scroll-snap-align:start}.week-header{align-items:stretch;flex-direction:column}.plan-view-return{align-self:start}.record-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.gradebook-course-heading{align-items:stretch;flex-direction:column}.gradebook-method{width:100%}.transcript-course-fields,.report-card-course-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card-course-fields .wide{grid-column:1 / -1}.attendance-rule-card{grid-template-columns:minmax(0,1fr) minmax(180px,230px)}.attendance-rule-card .primary-action{grid-column:2}.week-page:not(.generation-mode){min-height:calc(100dvh - 102px)}.planner-layout{overflow:visible}.planner-filter-rail{padding:12px;display:grid;grid-template-columns:auto minmax(0,520px);align-items:end;justify-content:start;gap:10px;overflow:visible}.planner-filter-rail>section{display:none}.planner-compact-filters{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px}.planner-filter-rail.filters-only .planner-compact-filters{grid-column:1 / -1}.planner-primary-actions{min-width:96px}.planner-add-action{grid-column:auto}.week-board{padding:18px 14px 0;grid-template-rows:auto auto auto minmax(360px,1fr) auto;overflow:visible}.month-board,.year-board{padding:18px 14px}.year-calendar{grid-template-columns:repeat(3,minmax(170px,1fr))}.month-days{grid-auto-rows:auto}.mobile-day-switcher{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.mobile-day-switcher button{min-width:0;min-height:52px;padding:5px 2px;display:grid;place-items:center;gap:1px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer}.mobile-day-switcher button span{overflow:hidden;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.mobile-day-switcher button strong{width:25px;height:25px;display:grid;place-items:center;border-radius:99px;color:var(--text);font-size:11px}.mobile-day-switcher button[aria-pressed=true]{border-color:color-mix(in srgb,var(--action) 32%,var(--border));background:color-mix(in srgb,var(--sage) 45%,var(--surface));color:var(--text)}.mobile-day-switcher button.today strong{background:var(--action);color:var(--action-ink)}.week-grid{display:block;overflow:visible;padding:0}.plan-board{min-width:0;display:flex;overflow-x:auto;scroll-snap-type:x proximity}.plan-board-column{min-width:min(78vw,290px);scroll-snap-align:start}.week-day{display:none;width:100%;min-width:0;min-height:360px}.week-day.mobile-selected{display:flex}.week-progress{margin-inline:-14px}}@media(max-width:640px){.privacy-card{grid-template-columns:1fr;gap:22px}.import-choice-grid{grid-template-columns:1fr}.import-license-card{grid-template-columns:auto 1fr}.import-license-card .primary-action{grid-column:1 / -1;justify-self:start}.week-lesson-builder-heading{align-items:stretch;flex-direction:column}.week-lesson-builder-heading .secondary-action{width:100%}.week-lesson-builder-form{grid-template-columns:1fr}.week-lesson-builder-actions{grid-column:auto;align-items:stretch;flex-direction:column}.week-item{min-height:0;padding:14px}.week-item p{font-size:10px}.week-item h3{font-size:14px}.week-item>span,.week-item button{font-size:12px}.month-calendar{display:none}.month-agenda{display:grid;gap:6px}.month-agenda>button{min-width:0;min-height:58px;padding:10px 11px;display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;text-align:left}.month-agenda>button.today{border-color:color-mix(in srgb,var(--action) 55%,var(--border));background:color-mix(in srgb,var(--sage) 28%,var(--surface))}.month-agenda time{font-size:11px;font-weight:800}.month-agenda span{min-width:0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.month-agenda strong{color:var(--muted);font-size:20px;font-weight:400}.month-footer{align-items:stretch;flex-direction:column}.month-abbreviation-key{text-align:left}.month-toolbar{align-items:stretch;flex-wrap:wrap}.month-status-control{flex:1 1 150px}.year-toolbar{align-items:stretch;flex-wrap:wrap}.year-toolbar .planner-focus-switcher{margin-left:0}.year-selection,.year-toolbar .month-status-control{flex:1 1 170px}.year-calendar{grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px}.year-month{padding:8px}.preview-week-grid{display:grid;grid-template-columns:1fr;overflow:visible;padding-bottom:0}.preview-week-grid>section{min-width:0}.modal-backdrop{padding:16px 0 0;place-items:end stretch}.move-dialog{width:100%;max-height:calc(100dvh - 16px);padding:24px 20px max(24px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0}.license-activation-card,.licensed-feature-list ul,.records-home-grid,.portfolio-record-list{grid-template-columns:1fr}.attendance-row{grid-template-columns:auto minmax(0,1fr) auto}.attendance-count{grid-column:2}.attendance-status{grid-column:2;grid-row:2}.attendance-row .text-action{grid-column:3;grid-row:1 / span 2}.attendance-editor,.grade-editor{width:100%;max-height:calc(100dvh - 16px);padding:24px 20px max(24px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0;overflow-y:auto}}@media(max-width:560px){main{padding-inline:18px}.page-header,.page-header-actions{align-items:stretch;flex-direction:column}.page-header-actions>*{width:100%}.primary-action{width:100%}.section-heading{align-items:start}.section-actions{align-items:flex-end;flex-direction:column-reverse;gap:7px}.learner-section-heading{align-items:center}.plan-card{padding:14px 12px}.identity-brand,.identity-footer,.identity-main{width:min(100% - 28px,1050px)}.identity-main{padding-top:20px}.identity-intro h1{font-size:40px}.identity-intro>p:not(.eyebrow),.identity-intro ul{font-size:15px}.identity-card{padding:24px 20px}.identity-footer{align-items:flex-start;flex-wrap:wrap}.identity-footer span{width:100%;margin-left:0}.public-info-header,.public-info-main,.public-info-footer{width:min(100% - 28px,840px)}.public-info-main{padding:38px 0 58px}.public-info-header nav{gap:11px 15px}.public-info-footer{flex-direction:column}.form-grid,.check-grid{grid-template-columns:1fr}.planner-learner-choices>div{grid-template-columns:1fr}.invitation-form{grid-template-columns:1fr}.invitation-form .primary-action{margin-bottom:0}.pending-invitation{align-items:stretch;flex-direction:column}.course-learner-options{grid-template-columns:1fr}.course-card-actions,.preview-actions,.preview-unsaved{align-items:stretch;flex-direction:column}.course-filter-bar{align-items:stretch;flex-direction:column;gap:9px}.course-filter-controls{width:100%}.course-columns{grid-template-columns:1fr!important;overflow:visible}.course-filter-result{min-height:34px;padding:5px 10px;display:flex;align-self:flex-start;gap:5px}.curriculum-import-actions{align-items:flex-start;flex-wrap:wrap}.curriculum-import-main-actions{width:100%}.course-schedule-summary{grid-template-columns:1fr}.course-schedule-summary>p{grid-column:auto}.course-schedule-days>div{grid-template-columns:repeat(4,minmax(0,1fr))}.course-schedule-preview-heading{align-items:stretch;flex-direction:column}.record-filter-bar,.attendance-rule-card,.gradebook-filter-bar,.gradebook-method,.grade-points-fields{grid-template-columns:1fr}.gradebook-course-heading,.gradebook-learner{padding-inline:15px}.gradebook-learner>header{grid-template-columns:auto minmax(0,1fr)}.gradebook-learner-actions{grid-column:2;justify-items:start}.gradebook-method-help{align-items:flex-start;flex-direction:column;gap:3px}.grade-category-results{margin-left:0}.grade-category-heading{align-items:stretch;flex-direction:column}.grade-category-heading>div:last-child{justify-content:space-between}.grade-category-editor-list>div{grid-template-columns:minmax(0,1fr) 90px auto}.grade-category-editor-list .danger-text-action{grid-column:1 / -1;min-height:auto;justify-self:end}.grade-config-list>div{grid-template-columns:minmax(0,1fr) auto}.grade-config-list>div .danger-text-action{grid-column:2}.scale-band-list>div,.reporting-period-controls,.reporting-period-list>div{grid-template-columns:1fr}.scale-band-list .danger-text-action{min-height:auto;justify-self:end}.gradebook-work-row{grid-template-columns:minmax(0,1fr) auto}.grade-result{grid-column:1;justify-self:start}.gradebook-work-row .text-action{grid-column:2;grid-row:1 / span 2}.grade-editor-actions{grid-template-columns:1fr 1fr}.grade-editor-actions>span{display:none}.attendance-rule-card .primary-action{grid-column:auto}.transcript-learner-bar,.transcript-form-grid,.transcript-course-fields,.report-card-period-grid,.report-card-course-fields{grid-template-columns:1fr}.transcript-learner-bar>div{justify-items:start}.transcript-form-grid .wide{grid-column:auto}.transcript-course-card>header{grid-template-columns:auto minmax(0,1fr)}.transcript-course-card>header .secondary-action{grid-column:2;justify-self:start}.report-card-period-grid .wide,.report-card-course-fields .wide{grid-column:auto}.report-card-attendance{grid-template-columns:1fr}.report-card-attendance dl{width:100%}.report-card-attendance dl div{min-width:0;flex:1}.report-card-course>header{grid-template-columns:auto minmax(0,1fr)}.report-card-course>header .secondary-action{grid-column:2;justify-self:start}.transcript-readiness{align-items:stretch;flex-direction:column}.transcript-document-identities{grid-template-columns:1fr}.transcript-document-identities>div+div{border-top:1px solid #9aa7a0;border-left:0}.transcript-document-summary{align-items:center;flex-direction:column;gap:4px}.course-schedule-preview-list .preview-week-item{grid-template-columns:1fr;gap:3px}.format-options,.outline-counts,.preview-row{grid-template-columns:1fr}.format-options label:last-child{grid-column:auto}.outline-row{margin-left:calc(var(--outline-depth) * 12px);grid-template-columns:4px minmax(0,1fr)}.outline-row-actions{grid-column:2;justify-content:flex-start}.household-capacity{gap:8px;flex-direction:column}.card-actions{align-items:stretch;flex-direction:column}.card-actions .text-action.danger{margin-left:0}.archived-row{align-items:stretch;flex-direction:column}.school-year-summary{grid-template-columns:1fr}.school-year-actions,.school-year-rollover{align-items:stretch;flex-direction:column}.exception-form{grid-template-columns:1fr}.exception-form .wide-field{grid-column:auto}.weekday-grid{grid-template-columns:repeat(2,1fr)}.preference-options,.appearance-options{grid-template-columns:1fr}.local-date{align-self:flex-start}.date-row{grid-template-columns:92px minmax(0,1fr)}.date-row .text-action{grid-column:2;justify-self:start}.learner-work-row{grid-template-columns:30px minmax(0,1fr)}.work-actions,.learner-work-row>.text-action{grid-column:2;justify-self:start}.generation-courses,.generation-options{grid-template-columns:1fr}.week-progress,.generation-summary{flex-direction:column}.week-progress{align-items:stretch}.week-progress-meter{width:100%;min-width:0}.planner-filter-rail{grid-template-columns:72px minmax(0,1fr)}.planner-primary-actions{min-width:72px}.planner-compact-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.week-header-actions{align-items:stretch;flex-direction:column-reverse}.month-header .week-header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.month-header .planner-view-switcher{grid-column:1;grid-row:1;justify-content:center}.month-header .print-icon-link{grid-column:2;grid-row:1}.year-header .week-header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.year-header .planner-view-switcher{grid-column:1;grid-row:1;justify-content:center}.year-header .print-icon-link{grid-column:2;grid-row:1}.print-template-picker,.print-form-grid{grid-template-columns:1fr}.print-template-summary{margin-top:0}.print-setup-card{padding:18px}.print-setup-actions,.print-preview-toolbar,.print-preview-toolbar>div:last-child{align-items:stretch;flex-direction:column}.print-preview-toolbar .primary-action{width:100%}.print-sheet{padding:24px 18px}.print-sheet-heading{align-items:flex-start;flex-direction:column}.print-sheet-meta{text-align:left}.family-week-print{grid-template-columns:1fr;border-top:0}.print-sheet.portrait .month-print{min-width:7.2in}.print-sheet.landscape .month-print{min-width:9.7in}.print-week-day{min-height:0;border-top:1px solid #bdc8c2}.student-chooser{padding:28px 20px}.student-profiles{gap:8px}.student-profiles button{min-width:96px}.student-header{padding-inline:18px}.student-lesson{align-items:flex-start;flex-direction:column}.student-lesson-actions{width:100%;justify-items:stretch}.student-lesson-actions .student-lesson-state{width:fit-content}.review-card{grid-template-columns:1fr}.review-actions{justify-content:flex-end}.review-return-form{width:100%}.account-session-list article{grid-template-columns:38px minmax(0,1fr)}.account-session-list article>button{grid-column:2;justify-self:start}.inline-confirmation{align-items:stretch;flex-direction:column}.inline-confirmation>div{justify-content:flex-end}}@media(max-width:360px){.planner-filter-rail{grid-template-columns:42px minmax(0,1fr);gap:8px}.planner-primary-actions{width:42px;min-width:42px}.year-calendar{grid-template-columns:1fr}.planner-routine-action{width:42px;min-width:42px;padding-inline:0}.planner-add-label{display:none}}.portfolio-page{width:min(1120px,100%);margin:0 auto}.portfolio-header{align-items:flex-end}.portfolio-collection,.portfolio-builder-card,.portfolio-builder-preview{margin-top:26px;padding:24px;border:1px solid var(--border);border-radius:22px;background:var(--surface-raised);box-shadow:0 14px 38px color-mix(in srgb,var(--text) 7%,transparent)}.portfolio-collection>.section-heading>span,.portfolio-builder-card .section-heading>span{color:var(--muted);font-size:.78rem}.field-optional{color:var(--muted);font-size:.76rem;font-weight:500}.portfolio-locked-card{margin-top:26px;padding:26px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;border:1px solid var(--border);border-radius:22px;background:var(--surface-raised);box-shadow:0 14px 38px color-mix(in srgb,var(--text) 7%,transparent)}.portfolio-locked-card .portfolio-file-icon{width:46px;height:46px}.portfolio-locked-card h2,.portfolio-locked-card p{margin:0}.portfolio-locked-card h2{margin-top:4px}.portfolio-locked-card p:not(.eyebrow){margin-top:8px;max-width:720px;color:var(--muted)}.portfolio-locked-card .button-row{margin-top:18px}.portfolio-filter-bar{margin-bottom:18px;padding:14px;display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(130px,1fr)) auto;align-items:end;gap:10px;border-radius:15px;background:color-mix(in srgb,var(--sage) 20%,var(--surface))}.portfolio-filter-bar label{display:grid;gap:5px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.portfolio-filter-bar input,.portfolio-filter-bar select{min-width:0}.portfolio-featured-filter{min-height:44px;display:flex!important;grid-auto-flow:column;align-items:center;justify-content:center;padding:0 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-raised);color:var(--muted)!important;letter-spacing:0!important;text-transform:none!important}.portfolio-grid{display:grid;gap:10px}.portfolio-file-card{position:relative;padding:15px 16px 15px 52px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:13px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--sage) 14%,var(--surface))}.portfolio-order-number{position:absolute;left:15px;width:24px;height:24px;display:grid;place-items:center;border-radius:99px;background:var(--surface-raised);color:var(--muted);font-size:.7rem;font-weight:800}.portfolio-file-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--accent);background:var(--accent-soft)}.portfolio-file-icon svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.portfolio-file-copy{min-width:0}.portfolio-file-copy h3,.portfolio-file-copy p{margin:0}.portfolio-file-copy>div{display:flex;align-items:center;gap:7px}.portfolio-file-copy h3{font-size:.95rem}.portfolio-file-copy p{margin-top:3px;color:var(--muted);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-file-copy>span{display:block;margin-top:5px;color:var(--muted);font-size:.72rem}.portfolio-file-copy .portfolio-preparation-status{margin-top:7px;color:var(--muted);font-size:.72rem}.portfolio-file-copy .portfolio-preparation-status.ready{color:var(--success)}.portfolio-file-copy .portfolio-preparation-status.failed{color:var(--danger)}.portfolio-featured-mark{color:#aa7b17;font-size:.78rem}.portfolio-file-actions{display:flex;align-items:center;gap:8px}.portfolio-order-actions{display:flex;gap:6px}.portfolio-entry-dialog,.portfolio-preview-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:26px;border:1px solid var(--border);border-radius:22px;background:var(--surface-raised);box-shadow:0 24px 70px color-mix(in srgb,var(--text) 22%,transparent);overflow-y:auto}.portfolio-entry-dialog>div:first-child>p:last-child{margin:6px 0 20px;color:var(--muted)}.portfolio-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.portfolio-entry-wide{grid-column:1 / -1}.portfolio-entry-grid textarea{resize:vertical}.portfolio-feature-toggle,.portfolio-builder-options label,.portfolio-combine-option{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--sage) 14%,var(--surface));cursor:pointer}.portfolio-feature-toggle input,.portfolio-builder-options input,.portfolio-combine-option input{margin-top:3px}.portfolio-feature-toggle span,.portfolio-builder-options span,.portfolio-combine-option span{display:grid;gap:3px}.portfolio-feature-toggle small,.portfolio-builder-options small,.portfolio-combine-option small{color:var(--muted);font-size:.76rem;font-weight:500}.portfolio-preview-dialog{width:min(1040px,calc(100vw - 32px))}.portfolio-preview-dialog header,.portfolio-preview-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.portfolio-preview-dialog header h2{margin:2px 0 0}.portfolio-preview-dialog footer p{color:var(--muted);font-size:.78rem}.portfolio-preview-frame{height:min(68dvh,760px);margin:18px 0;display:grid;place-items:center;border:1px solid var(--border);border-radius:14px;background:#eef0ef;overflow:hidden}.portfolio-preview-frame iframe,.portfolio-preview-frame img{width:100%;height:100%;border:0;object-fit:contain}.portfolio-builder-layout{margin-top:18px;display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);gap:18px}.portfolio-builder-card{margin-top:0}.portfolio-builder-settings{grid-row:span 2;align-self:start}.portfolio-builder-settings>.field{margin-top:15px}.portfolio-builder-options{margin-top:18px;display:grid;gap:9px}.portfolio-builder-available{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portfolio-builder-choice{min-width:0;min-height:70px;padding:11px;display:grid;grid-template-columns:23px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--sage) 14%,var(--surface));color:var(--text);cursor:pointer;text-align:left}.portfolio-builder-choice.selected{border-color:color-mix(in srgb,var(--action) 48%,var(--border));background:color-mix(in srgb,var(--sage) 42%,var(--surface-raised))}.portfolio-choice-check{width:23px;height:23px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--muted) 55%,transparent);border-radius:7px;color:var(--action);font-weight:900}.portfolio-builder-choice.selected .portfolio-choice-check{border-color:var(--action);background:var(--action);color:var(--action-ink)}.portfolio-builder-choice>span:nth-child(2){min-width:0;display:grid;gap:4px}.portfolio-builder-choice strong,.portfolio-builder-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-builder-choice small{color:var(--muted);font-size:.72rem}.portfolio-builder-order-list{margin:0;padding:0;display:grid;gap:8px;list-style:none}.portfolio-builder-order-list li{padding:10px 11px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--sage) 14%,var(--surface))}.portfolio-builder-order-list li>span{width:28px;height:28px;display:grid;place-items:center;border-radius:99px;background:var(--surface-raised);color:var(--muted);font-size:.72rem;font-weight:800}.portfolio-builder-order-list li>div:nth-child(2){min-width:0;display:grid;gap:2px}.portfolio-builder-order-list small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.portfolio-builder-order-list li>div:last-child{display:flex;gap:5px}.portfolio-builder-download{grid-column:1 / -1;padding:28px 30px;display:grid;grid-template-columns:minmax(300px,.95fr) minmax(360px,1.05fr);align-items:start;gap:22px 28px}.portfolio-builder-download h2,.portfolio-builder-download p{margin:0}.portfolio-builder-download h2{white-space:nowrap}.portfolio-builder-download p:not(.eyebrow){margin-top:5px;color:var(--muted);font-size:.82rem}.portfolio-combine-option.unavailable{cursor:not-allowed;opacity:.66}.document-processing-summary{margin:16px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.document-processing-summary span{padding:12px;display:grid;gap:2px;border:1px solid var(--border);border-radius:12px;color:var(--muted);font-size:.72rem;background:color-mix(in srgb,var(--sage) 10%,var(--surface))}.document-processing-summary strong{color:var(--ink);font-size:1.15rem}.document-job-list{margin-top:16px;display:grid;gap:7px}.document-job-list>div{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:12px}.document-job-list span{min-width:0;display:grid;gap:2px}.document-job-list small{color:var(--muted);overflow-wrap:anywhere}.portfolio-builder-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px}.portfolio-builder-preview iframe{width:100%;height:min(76dvh,900px);border:1px solid var(--border);border-radius:12px;background:#fff}.compact-empty{min-height:210px}@media(max-width:860px){.portfolio-builder-download{grid-template-columns:1fr}.portfolio-builder-actions{grid-column:auto}}@media(max-width:700px){.portfolio-header{align-items:stretch}.portfolio-filter-bar,.portfolio-entry-grid,.portfolio-builder-layout,.portfolio-builder-available,.portfolio-builder-download{grid-template-columns:1fr}.portfolio-entry-wide{grid-column:auto}.portfolio-locked-card{grid-template-columns:1fr}.portfolio-file-card{padding-left:46px;grid-template-columns:38px minmax(0,1fr)}.portfolio-file-actions,.portfolio-order-actions{grid-column:2;flex-wrap:wrap}.portfolio-builder-settings{grid-row:auto}.portfolio-builder-actions{grid-column:auto;align-items:stretch;flex-direction:column}.portfolio-builder-actions>*{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media(forced-colors:active){.nav-item.active,.planner-filter-list button.active,.student-profiles button.selected,.planner-learner-choices label.selected,.print-learner-choices label.selected{outline:2px solid ButtonText;outline-offset:-2px}.status-pill,.week-item,.plan-card,.settings-link-card{border:1px solid CanvasText}.check-button[aria-pressed=true],.learner-choice-check{forced-color-adjust:none}}@media print{:root,:root[data-theme=dark]{color-scheme:light;background:#fff}body{min-width:0;background:#fff;color:#000}.sidebar,.workspace-tools,.skip-link,.print-preview-toolbar{display:none!important}.app-shell,.app-shell.nav-collapsed{min-height:0;display:block}main,.planner-main{padding:0!important;overflow:visible!important}.print-preview-page{width:auto;margin:0}.print-sheet,.print-sheet.letter.portrait,.print-sheet.letter.landscape,.print-sheet.a4.portrait,.print-sheet.a4.landscape{width:auto;min-height:0;max-width:none;margin:0;padding:0;border:0;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-sheet-heading h2,.print-item strong{color:#000}.print-sheet-heading,.print-item,.family-week-print,.print-week-day,.print-check,.print-notes i,.print-sheet-footer{border-color:#777}.print-week-day{break-inside:avoid}}
