:root{color-scheme:light;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;--ink: #172033;--muted: #667085;--soft: #98a2b3;--line: #e5e7eb;--panel: #f6f8fb;--surface: #ffffff;--blue: #1d4ed8;--blue-50: #eff6ff;--teal: #0f9f95;--teal-50: #e8fbf8;--violet: #7c3aed;--violet-50: #f3ecff;--amber: #d97706;--amber-50: #fff7ed;--rose: #e11d48;--green: #059669;--shadow: 0 12px 36px rgba(16, 24, 40, .08);--radius: 8px;--radius-sm: 6px;--focus-ring: #2563eb;--focus-ring-outer: rgba(37, 99, 235, .18);--control-height: 44px;--control-height-compact: 34px;--motion-fast: .16s;--motion-medium: .22s;--z-skip-link: 2000}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:var(--panel);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.58}img{display:block;max-width:100%}.app-main-anchor{min-height:100vh}.app-main-anchor:focus{outline:none}.skip-link{position:fixed;top:12px;left:12px;z-index:var(--z-skip-link);border:1px solid rgba(37,99,235,.24);border-radius:var(--radius);background:var(--surface);color:var(--blue);box-shadow:0 14px 34px #0f172a29;font-size:13px;font-weight:900;padding:10px 12px;transform:translateY(-150%);transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.skip-link:focus,.skip-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;transform:translateY(0)}:where(a,button,input,select,textarea,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;box-shadow:0 0 0 5px var(--focus-ring-outer)}.login-shell{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);min-height:100vh;background:#101828}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:36px;color:#fff;overflow:hidden}.brand-line{display:flex;align-items:center;gap:10px;font-weight:700}.brand-mark,.brand-mini{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,#1d4ed8,#0f9f95);color:#fff;font-weight:800}.brand-logo{width:42px;height:42px;border:1px solid rgba(255,255,255,.34);border-radius:10px;object-fit:cover}.brand-mini-button{min-width:38px;border:0;padding:0}.login-art{width:min(100%,126vh);margin:clamp(18px,2.7vh,30px) auto;border-radius:24px;box-shadow:0 30px 80px #00000057}.login-art-neutral{display:grid;place-items:center;min-height:260px;color:#dbeafe;background:linear-gradient(135deg,#0ea5e947,#14b8a638),#0f172ae0}.login-art-image{position:relative;aspect-ratio:16 / 9;border:1px solid rgba(249,195,112,.22);background:#040609;isolation:isolate;overflow:hidden;box-shadow:0 34px 90px #0000007a,inset 0 0 80px #0000007a}.login-light-experience{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% -20%,rgba(129,103,74,.22),transparent 42%),#040609}.login-light-experience:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;border-radius:inherit;background:radial-gradient(ellipse at center,transparent 47%,rgba(0,0,0,.42) 100%);pointer-events:none}.login-light-webgl-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:block;width:100%;height:100%;overflow:hidden;outline:none;cursor:grab;touch-action:none}.login-light-webgl-canvas.is-pulling-light{cursor:grabbing}.login-light-webgl-canvas.is-adjusting-beam{cursor:ew-resize}.login-light-webgl-canvas[data-html-in-canvas-host],.login-light-webgl-canvas[data-html-in-canvas-host] *{pointer-events:none!important}.login-light-source{position:relative;width:100%;height:100%;overflow:hidden;border-radius:24px;background:#07090d;pointer-events:none;-webkit-user-select:none;user-select:none}.login-light-source>img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.login-light-source:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#07090d14,#0406092b),radial-gradient(ellipse at center,transparent 52%,rgba(2,3,5,.28) 100%);pointer-events:none}.login-light-loading-preview{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;background:#040609;opacity:1;visibility:visible;transition:opacity .44s ease,visibility .44s ease}.login-light-loading-preview img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.24) saturate(.62) contrast(1.12);-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.login-light-experience.is-ready .login-light-loading-preview{opacity:0;visibility:hidden;pointer-events:none}.login-light-experience.has-error .login-light-loading-preview{opacity:1;visibility:visible}.login-light-status,.login-light-error,.login-light-gesture-hint{position:absolute;z-index:5;margin:0;border:1px solid rgba(255,225,184,.16);border-radius:999px;color:#fff4e1c2;background:#06080b9e;box-shadow:0 8px 24px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11px;letter-spacing:.04em;line-height:1;pointer-events:none}.login-light-status{top:16px;right:16px;padding:9px 12px;transition:opacity .22s ease,visibility .22s ease}.login-light-status.is-hidden{opacity:0;visibility:hidden}.login-light-error{left:50%;bottom:18px;max-width:calc(100% - 36px);padding:10px 14px;color:#ffe8c9;transform:translate(-50%)}.login-light-gesture-hint{right:16px;bottom:16px;padding:9px 12px;opacity:0;transform:translateY(6px);transition:opacity .36s ease .7s,transform .36s ease .7s}.login-light-experience.is-ready .login-light-gesture-hint{opacity:1;transform:translateY(0)}@media(hover:none),(pointer:coarse){.login-light-webgl-canvas{cursor:default}.login-light-gesture-hint{display:none}}@media(max-width:720px){.login-light-gesture-hint{display:none}}@media(prefers-reduced-motion:reduce){.login-light-loading-preview,.login-light-gesture-hint{transition:none}}.login-caption{max-width:620px}.login-caption span,.eyebrow{color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-caption strong{display:block;margin-top:8px;font-size:58px;line-height:1.03;overflow-wrap:anywhere;text-wrap:balance}.login-caption p{max-width:560px;margin:18px 0 0;color:#ffffffc2;font-size:17px;line-height:1.75}.login-panel{display:flex;flex-direction:column;justify-content:center;gap:32px;padding:48px;background:var(--surface)}.login-panel h1,.app-header h1,.classroom-topbar h1{margin:4px 0;font-size:24px;line-height:1.2}.muted,.login-panel p,.app-header p,.classroom-topbar p{margin:0;color:var(--muted)}.login-form{display:grid;gap:16px}.login-form label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.login-form input,.login-form select,.chat-input textarea,.note-card textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);outline:none;background:#fff;color:var(--ink)}.login-form input,.login-form select{height:46px;padding:0 14px}.login-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:38px}.login-form input:focus,.login-form select:focus,.chat-input textarea:focus,.note-card textarea:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.form-error{color:var(--rose)!important;font-size:13px;font-weight:700}.access-shell{display:grid;place-items:center;min-height:100vh;background:var(--panel);padding:24px}.access-card{display:grid;gap:14px;width:min(520px,100%);border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:32px;box-shadow:var(--shadow)}.access-card h1{margin:0;font-size:26px;line-height:1.2}.access-card p{margin:0;color:var(--muted);line-height:1.7}.primary-btn,.secondary-btn,.ghost-btn,.icon-btn,.primary-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-height);border:1px solid transparent;border-radius:var(--radius);padding:0 14px;font-weight:800;line-height:1;transition:transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease,border-color var(--motion-fast) ease}.primary-btn{background:var(--blue);color:#fff;box-shadow:0 10px 24px #1d4ed833}.primary-btn:hover,.primary-icon-btn:hover{transform:translateY(-1px)}.primary-btn:active:not(:disabled),.secondary-btn:active:not(:disabled),.ghost-btn:active:not(:disabled),.icon-btn:active:not(:disabled),.primary-icon-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.secondary-btn{border-color:var(--line);background:#fff;color:var(--ink)}.compact-btn{min-height:var(--control-height-compact);padding:0 10px;border-radius:8px;font-size:12px}.ghost-btn,.icon-btn{border-color:var(--line);background:#fff;color:var(--ink)}.icon-btn{width:var(--control-height);min-width:var(--control-height);padding:0}.primary-icon-btn{width:42px;min-width:42px;background:var(--violet);color:#fff}.full{width:100%}.page-shell,.classroom-shell{min-height:100vh;background:var(--panel)}.app-header,.classroom-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;border-bottom:1px solid var(--line);background:#ffffffeb;padding:0 24px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-left,.header-actions,.button-row,.course-meta,.strip-top,.section-heading,.challenge-top,.mini-stats{display:flex;align-items:center}.header-left{min-width:0;gap:12px}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.role-badge{display:inline-flex;align-items:center;gap:7px;min-height:34px;border:1px solid rgba(15,159,149,.22);border-radius:var(--radius);background:var(--teal-50);color:#0f766e;padding:0 10px;font-size:12px;font-weight:800;white-space:nowrap}.brand-mini{width:var(--control-height);height:var(--control-height);flex:0 0 auto;font-size:13px}.dashboard-grid,.prep-layout{display:grid;gap:22px;width:min(1480px,calc(100% - 48px));margin:24px auto}.dashboard-grid{grid-template-columns:minmax(0,1fr) 320px}.teacher-home-command{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:18px}.teacher-home-command .section-heading{padding-bottom:2px}.teacher-primary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.teacher-primary-action-card{position:relative;display:grid;grid-template-rows:auto minmax(92px,1fr) auto;gap:10px;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff;padding:14px;overflow:hidden;box-shadow:0 8px 18px #0f172a09}.teacher-primary-action-card.action-live{border-color:#2563eb33;background:linear-gradient(180deg,#2563eb0e,#fff0 42%),#fff}.teacher-primary-action-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#2563eb33}.teacher-primary-action-card:nth-child(2):before{background:#0f9f9547}.teacher-primary-action-card:nth-child(3):before{background:#7c3aed38}.teacher-action-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(37,99,235,.14);border-radius:10px;background:var(--surface);color:var(--blue);box-shadow:0 8px 18px #2563eb14}.teacher-primary-action-card span{color:var(--blue);font-size:12px;font-weight:900}.teacher-primary-action-card strong{display:-webkit-box;overflow:hidden;margin-top:8px;color:var(--ink);font-size:17px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teacher-primary-action-card p{display:-webkit-box;overflow:hidden;margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.teacher-primary-action-card .button-row{align-self:end;gap:8px}.teacher-primary-action-card .primary-btn,.teacher-primary-action-card .secondary-btn{min-height:38px;padding-inline:13px}.compact-metric-grid .metric-card{padding:12px 14px;box-shadow:none}.compact-metric-grid .metric-card strong{font-size:24px}.prep-layout{grid-template-columns:minmax(0,1fr)}.dashboard-main,.prep-main{display:grid;gap:20px}.dashboard-side,.prep-side,.panel-stack{display:grid;align-content:start;gap:16px}.prep-side{grid-template-columns:repeat(3,minmax(0,1fr))}.section-heading{justify-content:space-between;gap:16px}.section-heading>div{min-width:0}.section-heading h2,.section-heading h3{margin:2px 0 0}.section-heading.compact{align-items:center}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card,.side-block,.course-focus,.prep-strip article,.upload-panel,.prep-kanban article,.table-section,.memory-card,.context-card,.knowledge-breakdown,.story-card,.challenge-card,.progress-card,.quiz-card,.task-card,.kg-card,.archive-sync-card,.note-card,.record-timeline,.stats-grid article{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.metric-card{display:grid;gap:8px;padding:18px}.metric-card span,.metric-card em,.strip-top span,.prep-kanban p,.course-focus p,.timeline-item p,.side-block p,.knowledge-breakdown p,.story-card p,.challenge-card p,.progress-card p,.quiz-meta,.task-card p,.record-timeline p,.note-card textarea,.lead{color:var(--muted)}.metric-card strong{font-size:28px}.metric-card em{font-style:normal;font-size:12px;font-weight:800}.tone-blue{border-top:3px solid var(--blue)}.tone-amber{border-top:3px solid var(--amber)}.tone-violet{border-top:3px solid var(--violet)}.tone-teal{border-top:3px solid var(--teal)}.course-focus{display:grid;grid-template-columns:320px minmax(0,1fr);overflow:hidden}.course-cover{min-height:260px;background:#101828}.course-cover-neutral{display:grid;place-content:center;gap:10px;color:#e0f2fe;background:linear-gradient(135deg,#0891b257,#7c3aed2e),#101828;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.course-cover img{width:100%;height:100%;object-fit:cover}.course-focus-body{display:grid;align-content:center;gap:14px;padding:28px}.course-focus h2{margin:0;font-size:31px;line-height:1.15}.course-focus p{max-width:720px;margin:0;line-height:1.8}.course-meta{flex-wrap:wrap;gap:12px}.course-meta span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.map-pin-dot{width:9px;height:9px;border-radius:99px;background:var(--amber);box-shadow:0 0 0 4px var(--amber-50)}.button-row{flex-wrap:wrap;gap:10px}.prep-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.prep-strip article{padding:16px}.strip-top{justify-content:space-between;gap:10px}.strip-top span,.status-pill{border-radius:999px;padding:4px 8px;background:var(--panel);font-size:11px;font-weight:900}.progress-track{height:7px;overflow:hidden;border-radius:99px;background:#e8edf5}.progress-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--teal))}.progress-track.large{height:10px}.side-block{padding:18px}.side-block h3,.knowledge-breakdown h3,.story-card h3,.quiz-card h3,.task-card h3,.note-card h3,.record-timeline h3{margin:0}.timeline-list,.outline-list{display:grid;gap:12px}.archive-sync-card{display:grid;gap:8px;padding:14px}.archive-sync-card div{display:flex;justify-content:space-between;gap:12px;align-items:center}.archive-sync-card strong{font-size:14px}.archive-sync-card span{color:var(--muted);font-size:12px;font-weight:900}.archive-sync-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.archive-sync-card.saved{border-color:#20a18338;background:#f4fbf8}.archive-sync-card.error{border-color:#ef444447;background:#fff5f5}.archive-sync-card.error span{color:#b91c1c}.timeline-item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px}.timeline-item>span{color:var(--blue);font-size:12px;font-weight:900}.timeline-item strong{display:block;font-size:14px}.signal-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0}.signal-row:first-of-type{margin-top:8px}.signal-row span{color:var(--muted)}.upload-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;border-style:dashed;padding:24px}.upload-panel p{margin:5px 0 0;color:var(--muted)}.status-pill.good,.status-pill.lit{background:#ecfdf3;color:var(--green)}.status-pill.gray{color:var(--muted)}.status-pill.understood{background:var(--blue-50);color:var(--blue)}.status-pill.mastered{background:var(--amber-50);color:var(--amber)}.prep-kanban{display:grid;gap:12px}.prep-kanban article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:18px}.step-number{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:var(--blue-50);color:var(--blue);font-weight:900}.table-section{padding:18px}.matrix-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.matrix-table article{border:1px solid var(--line);border-radius:var(--radius);padding:14px}.matrix-table span,.matrix-table em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.matrix-table strong{display:block;margin-top:6px}.matrix-table p{min-height:68px;color:var(--muted);line-height:1.65}.prompt-card{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;border-top:1px solid var(--line);padding:14px 0}.prompt-card span{justify-self:start;border-radius:999px;background:var(--violet-50);color:var(--violet);padding:3px 8px;font-size:12px;font-weight:900}.prompt-card p{margin:0;color:var(--ink);font-size:14px;line-height:1.55}.prompt-card p,.prompt-card em,.prompt-card small{min-width:0;overflow-wrap:break-word;word-break:normal}.prompt-card em,.prompt-card small{display:block;margin-top:0;color:var(--muted);font-size:12px;line-height:1.45}.prompt-card small{color:#64748b}.review-point-card{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#ffffffc7}.review-point-card strong{font-size:13px;color:var(--ink)}.side-block.warn>div,.review-point-card strong,.review-point-card p,.review-point-card em{min-width:0}.review-point-card strong,.review-point-card p,.review-point-card em{overflow-wrap:break-word;word-break:normal}.review-point-card p,.review-point-card em{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.side-block.warn{display:flex;align-items:flex-start;gap:12px;border-color:#d9770659;background:var(--amber-50)}.classroom-shell{height:100vh;overflow:hidden}.classroom-topbar{position:static;min-height:66px}.classroom-error-banner{position:fixed;top:76px;left:50%;z-index:35;display:flex;align-items:flex-start;gap:9px;width:min(760px,calc(100vw - 32px));transform:translate(-50%);border:1px solid rgba(185,28,28,.22);border-radius:var(--radius);background:#fef2f2fa;color:#991b1b;box-shadow:0 18px 45px #7f1d1d29;padding:12px 14px;font-size:13px;font-weight:800;line-height:1.45}.live-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#ecfdf3;color:var(--green);padding:8px 10px;font-size:12px;font-weight:900}.broadcast-live-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eef2ff;color:#3730a3;padding:8px 10px;font-size:12px;font-weight:900}.broadcast-stepper{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:3px}.broadcast-stepper span{min-width:42px;text-align:center;color:var(--muted);font-size:12px;font-weight:900}.broadcast-transition-banner{position:fixed;top:84px;left:50%;z-index:30;display:flex;align-items:center;gap:12px;width:min(460px,calc(100vw - 32px));transform:translate(-50%);border:1px solid rgba(29,78,216,.2);border-radius:var(--radius);background:#fffffff5;box-shadow:0 18px 48px #0f172a2e;padding:14px 16px;animation:broadcastNoticeIn .26s ease-out}.broadcast-transition-banner.started{color:var(--blue)}.broadcast-transition-banner.ended{color:var(--green)}.broadcast-transition-banner strong{display:block;color:var(--ink)}.broadcast-transition-banner p{margin:3px 0 0;color:var(--muted);font-size:13px}@keyframes broadcastNoticeIn{0%{opacity:0;transform:translate(-50%,-10px) scale(.98)}to{opacity:1;transform:translate(-50%) scale(1)}}.classroom-body{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr) minmax(330px,380px);height:calc(100vh - 66px);min-height:0}.classroom-body.resizable-classroom{grid-template-columns:minmax(220px,260px) minmax(360px,1fr) var(--right-panel-width)}.outline-panel,.content-panel,.right-panel{min-height:0;overflow:hidden;border-right:1px solid var(--line);background:#fff}.outline-panel{display:flex;flex-direction:column;gap:18px;padding:18px}.outline-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius);padding:10px;color:var(--muted);font-size:13px;font-weight:800}.outline-list{overflow-y:auto}.outline-item{border:1px solid transparent;border-radius:var(--radius);padding:12px}.outline-item.active{border-color:#1d4ed833;background:var(--blue-50)}.outline-item.done{background:#f8fafc}.outline-item.locked{opacity:.58}.outline-item>div{display:flex;align-items:center;gap:8px;font-size:14px}.outline-item ul{margin:8px 0 0 23px;padding:0;color:var(--muted);font-size:12px;line-height:1.9}.guide-card{display:flex;gap:10px;margin-top:auto;border-radius:var(--radius);background:#101828;color:#fff;padding:14px}.guide-card p{margin:4px 0 0;color:#ffffffb8;font-size:12px}.content-panel{overflow-y:auto;background:var(--panel)}.lesson-article{width:min(840px,calc(100% - 48px));margin:34px auto 80px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,4vw,42px);box-shadow:var(--shadow)}.lesson-article h2{max-width:760px;margin:8px 0 16px;font-size:42px;line-height:1.12;overflow-wrap:anywhere;text-wrap:balance}.lead{max-width:720px;font-size:17px;line-height:1.9}.media-frame{margin:28px 0 34px}.media-frame img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius)}.media-frame video{width:100%;aspect-ratio:16 / 9;border-radius:var(--radius);background:#0f172a}.embedded-media{margin:18px 0 4px}.embedded-media img{object-fit:contain;background:#f8fafc}.media-frame figcaption{margin-top:10px;color:var(--muted);font-size:13px}.source-page-frame{border:1px solid rgba(15,23,42,.08);border-radius:var(--radius);background:#f8fafc;padding:12px;overflow:hidden}.source-page-frame img{display:block;width:100%;height:auto;max-height:72vh;aspect-ratio:auto;object-fit:contain;border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:#fff}.source-page-toolbar,.section-embedded-media-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:800}.source-page-toolbar span,.section-embedded-media-header span{color:var(--blue);letter-spacing:0}.source-page-toolbar strong,.section-embedded-media-header strong{color:var(--ink);font-size:12px}.section-embedded-media{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.content-block{margin-top:26px;border-top:1px solid var(--line);padding-top:24px}.content-block>span{display:inline-block;color:var(--teal);font-size:12px;font-weight:900}.content-block h3{margin:8px 0 10px;font-size:25px}.content-block p{color:#374151;line-height:1.9}.content-body-formatted{display:grid;gap:12px}.content-body-heading{margin:12px 0 0;font-size:16px;line-height:1.45;color:var(--ink)}.content-body-list{display:grid;gap:8px;margin:2px 0 0;padding-left:18px;color:#374151;line-height:1.75}.soft-note.compact{margin-top:8px;font-size:12px}blockquote{margin:18px 0 0;border-left:4px solid var(--violet);background:var(--violet-50);padding:14px 16px;color:#4c1d95;font-weight:800}.right-panel{position:relative;display:flex;flex-direction:column;border-right:0}.resizable-right-panel{box-shadow:-12px 0 30px #0f172a0a}.resizable-right-panel.collapsed{align-items:stretch;background:#f8fafc}.panel-resize-handle{position:absolute;top:0;bottom:0;left:-5px;z-index:4;width:10px;border:0;border-left:1px solid transparent;border-right:1px solid transparent;background:transparent;cursor:col-resize}.panel-resize-handle:hover,.panel-resize-handle:focus-visible{border-left-color:#1d4ed85c;background:#1d4ed814}.right-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;border-bottom:1px solid var(--line);background:#fff;padding:8px 12px}.right-panel-toolbar strong{font-size:13px}.right-panel-toolbar>div{display:inline-flex;gap:6px}.right-panel-toolbar .icon-btn{width:32px;min-height:32px}.resizable-right-panel.panel-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;width:100vw;height:100vh;height:100dvh;min-height:0;overflow:hidden;border:0;background:#fff;box-shadow:none}.resizable-right-panel.panel-fullscreen .panel-resize-handle{display:none}.resizable-right-panel.panel-fullscreen .right-panel-toolbar{display:flex;flex:0 0 auto}.resizable-right-panel.panel-fullscreen .tab-content{min-height:0}.resizable-right-panel.panel-fullscreen .panel-fullscreen-button{color:var(--blue);background:var(--blue-50)}.panel-rail-button{display:grid;place-items:center;gap:10px;height:100%;border:0;background:#f8fafc;color:var(--blue);font-weight:900}.panel-rail-button span{writing-mode:vertical-rl;letter-spacing:0}.tab-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fff;gap:6px;padding:10px 12px 0}.tab-strip button{height:36px;border:1px solid transparent;border-radius:8px 8px 0 0;background:#f8fafc;color:var(--muted);font-size:12px;font-weight:900}.tab-strip button.active{border-color:#1d4ed829;border-bottom-color:#fff;background:#fff;color:var(--blue)}.panel-focus-bar{display:grid;gap:10px;border-bottom:1px solid var(--line);background:#fff;padding:10px 14px 12px}.panel-focus-main{display:grid;gap:3px}.panel-focus-main span{color:var(--blue);font-size:11px;font-weight:900}.panel-focus-main strong{color:var(--ink);font-size:14px;line-height:1.35}.panel-focus-main p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.panel-focus-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.panel-focus-stats span{display:grid;gap:1px;min-width:0;border:1px solid rgba(148,163,184,.2);border-radius:8px;background:#f8fafc;padding:7px 8px;color:var(--muted);font-size:11px;font-weight:800;line-height:1.25}.panel-focus-stats strong{overflow:hidden;color:var(--ink);font-size:14px;line-height:1.1;text-overflow:ellipsis}.panel-context-card{display:grid;gap:7px;border-bottom:1px solid var(--line);background:#fbfcfe;padding:10px 14px}.panel-context-head{display:grid;gap:3px}.panel-context-head span{color:var(--muted);font-size:11px;font-weight:900}.panel-context-head strong{min-width:0;overflow:hidden;color:var(--ink);font-size:14px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.panel-context-head p{display:none;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.panel-context-meta,.panel-context-knowledge{display:flex;flex-wrap:wrap;gap:6px}.panel-context-pill,.panel-context-knowledge em{border-radius:999px;padding:4px 7px;font-size:11px;font-style:normal;font-weight:900;line-height:1.2}.panel-context-pill.tone-good,.panel-context-knowledge em{background:#ecfdf3;color:#065f46}.panel-context-pill.tone-attention{background:var(--amber-50);color:#92400e}.panel-context-pill.tone-muted{background:var(--panel);color:var(--muted)}.tab-content{min-height:0;flex:1;overflow-y:auto;padding:16px;background:var(--panel)}.memory-card,.context-card,.knowledge-breakdown,.story-card,.challenge-card,.progress-card,.quiz-card,.task-card,.kg-card,.mastery-card,.knowledge-next-step-card,.knowledge-focus-card,.note-card,.record-timeline{padding:16px}.memory-card{background:#101828;color:#fff}.memory-card>div:first-child,.story-card,.task-card{display:flex;align-items:flex-start;gap:10px}.memory-card p{color:#ffffffc2;line-height:1.7}.mini-stats{justify-content:space-between;gap:8px}.mini-stats span{border-radius:999px;background:#ffffff1a;padding:6px 8px;font-size:12px;font-weight:800}.knowledge-breakdown{display:grid;gap:12px}.knowledge-breakdown article{border-left:3px solid var(--blue);background:#f8fafc;border-radius:6px;padding:12px}.knowledge-breakdown article:nth-child(3){border-left-color:var(--teal)}.knowledge-breakdown article:nth-child(4){border-left-color:var(--violet)}.knowledge-breakdown article:nth-child(5){border-left-color:var(--amber)}.knowledge-breakdown article span{color:var(--soft);font-size:11px;font-weight:800}.story-card{background:var(--teal-50)}.interaction-panel{display:grid;grid-template-rows:auto minmax(260px,1fr) auto;gap:14px;min-height:100%}.knowledge-focus-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #c4b5fd;border-radius:var(--radius);background:#f5f3ff}.knowledge-focus-card>div{display:grid;gap:4px}.knowledge-focus-card strong{color:#5b21b6;font-size:13px}.knowledge-focus-card span{color:var(--muted);font-size:11px;line-height:1.45}.knowledge-focus-card select{max-width:150px;border:1px solid #a78bfa;border-radius:10px;padding:8px 10px;background:#fff;color:#4c1d95;font-weight:800}.challenge-card{background:var(--violet-50)}.challenge-top{justify-content:space-between}.challenge-top span,.quiz-meta span{color:var(--violet);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.challenge-top strong{color:var(--violet)}.chat-window{display:flex;flex-direction:column;gap:12px;overflow-y:auto}.chat-bubble{max-width:92%;border-radius:var(--radius);padding:12px;line-height:1.7;box-shadow:0 4px 14px #1018280f}.chat-bubble span{display:block;margin-bottom:4px;font-size:11px;font-weight:900;text-transform:uppercase}.chat-bubble p{margin:0}.chat-bubble.ai{align-self:flex-start;background:#fff}.chat-bubble.ai span{color:var(--violet)}.chat-bubble.student{align-self:flex-end;background:var(--blue);color:#fff}.chat-bubble.student span,.chat-bubble.student em{color:#ffffffc7}.chat-bubble em{display:block;margin-top:8px;font-size:12px;font-style:normal;font-weight:800}.chat-bubble.async-turn{border:1px solid rgba(37,99,235,.14);background:linear-gradient(135deg,#2563eb14,#7c3aed14)}.chat-bubble.async-turn strong{display:block;color:var(--ink);font-size:13px;margin:6px 0 3px}.chat-bubble.async-turn.slow{border-color:#d9770638;background:#f59e0b14}.chat-bubble.async-turn.fallback-ready{border-color:#7c3aed38;background:#7c3aed17}.chat-guidance-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.chat-guidance-tags span{max-width:100%;border:1px solid rgba(124,58,237,.16);border-radius:999px;background:#7c3aed14;color:var(--violet);font-size:11px;font-weight:850;line-height:1.35;overflow-wrap:anywhere;padding:5px 8px;text-transform:none}.chat-input{display:flex;align-items:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:12px}.chat-input textarea{min-height:82px;resize:vertical;padding:12px}.progress-card>div:first-child{display:flex;justify-content:space-between;align-items:baseline}.progress-card strong{color:var(--violet);font-size:30px}.quiz-card{display:grid;gap:14px}.quiz-meta{display:flex;justify-content:space-between}.option-list{display:grid;gap:10px}.option-list button{display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px;text-align:left;color:var(--ink);line-height:1.5}.option-list button span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--panel);color:var(--muted);font-size:12px;font-weight:900}.option-list button.selected{border-color:var(--violet);background:var(--violet-50)}.option-list button.selected span{background:var(--violet);color:#fff}.answer-feedback{display:flex;gap:10px;border-radius:var(--radius);padding:12px;line-height:1.6}.answer-feedback p{margin:0}.answer-feedback.good{background:#ecfdf3;color:#065f46}.answer-feedback.bad{background:#fff1f2;color:#9f1239}.task-card{background:var(--amber-50)}.kg-visual{position:relative;height:230px;margin-top:14px;border-radius:var(--radius);background:linear-gradient(90deg,rgba(148,163,184,.16) 1px,transparent 1px),linear-gradient(rgba(148,163,184,.16) 1px,transparent 1px),#f8fafc;background-size:32px 32px;overflow:hidden}.kg-visual.knowledge-nebula{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));align-content:center;align-items:center;justify-items:center;gap:12px 8px;height:auto;min-height:300px;padding:28px 18px;background:radial-gradient(circle at 26% 30%,rgba(56,189,248,.16),transparent 26%),radial-gradient(circle at 73% 62%,rgba(168,85,247,.12),transparent 28%),radial-gradient(circle at 48% 78%,rgba(245,158,11,.1),transparent 24%),#0f172a;overflow:hidden}.kg-visual.knowledge-nebula:before,.kg-visual.knowledge-nebula:after{top:0;right:0;bottom:0;left:0;border:0;border-radius:0;background-image:radial-gradient(circle,rgba(255,255,255,.68) 1px,transparent 1.5px);background-size:31px 31px;opacity:.38}.kg-visual.knowledge-nebula:after{background-position:14px 11px;background-size:47px 47px;opacity:.22}.knowledge-nebula .kg-node{position:relative;z-index:1;left:auto;top:auto;width:82px;max-width:100%;height:82px;min-height:0;padding:10px;transform:none;border-radius:999px;border-color:#94a3b880;background:#0f172abd;color:#cbd5e1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.knowledge-nebula .kg-node strong{display:block;font-size:12px;line-height:1.35;overflow-wrap:break-word}.knowledge-nebula .kg-node span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.knowledge-nebula .kg-node:nth-child(3n+1){transform:translateY(-5px)}.knowledge-nebula .kg-node:nth-child(4n+2){transform:translateY(7px)}.knowledge-nebula .kg-node.understood{border-color:#38bdf8;background:#0369a161;color:#e0f2fe;box-shadow:0 0 22px #38bdf838}.knowledge-nebula .kg-node.mastered{border-color:#f59e0b;background:#b4530957;color:#fef3c7;box-shadow:0 0 24px #f59e0b33}.knowledge-nebula .kg-node.lit{border-color:#fde68a;background:#92400e75;color:#fff7ed;box-shadow:0 0 0 6px #f59e0b1a,0 0 28px #fbbf2452}.support-knowledge-strip{display:grid;gap:8px;margin-top:14px}.support-knowledge-strip>span{color:var(--muted);font-size:11px;font-weight:800}.support-knowledge-strip>div{display:flex;flex-wrap:wrap;gap:6px}.support-knowledge-strip em{border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:#f8fafc;color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.knowledge-next-step-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.knowledge-gap-list{display:grid;gap:9px}.knowledge-gap-list article{display:grid;gap:9px;border:1px solid #e2e8f0;border-radius:12px;padding:11px;background:#f8fafc}.knowledge-gap-list article>div:first-child{display:grid;gap:3px}.knowledge-gap-list strong{color:var(--ink);font-size:13px}.knowledge-gap-list span{color:var(--muted);font-size:11px;line-height:1.5}.knowledge-action-buttons{display:flex;flex-wrap:wrap;gap:7px}.knowledge-action-buttons .secondary-btn{min-height:32px;padding:6px 9px;font-size:11px}@media(max-width:720px){.knowledge-focus-card{grid-template-columns:1fr}.knowledge-focus-card select{width:100%;max-width:none}}.kg-visual:before,.kg-visual:after{content:"";position:absolute;top:48px;right:52px;bottom:48px;left:52px;border:1px dashed #cbd5e1;border-radius:50%}.kg-visual:after{top:78px;right:84px;bottom:78px;left:84px}.kg-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border:2px solid #cbd5e1;border-radius:999px;background:#fff;color:var(--muted);text-align:center}.kg-node:nth-child(1){left:50%;top:24%}.kg-node:nth-child(2){left:76%;top:50%}.kg-node:nth-child(3){left:50%;top:76%}.kg-node:nth-child(4){left:24%;top:50%}.kg-node strong{font-size:14px}.kg-node span{font-size:11px;font-weight:800}.kg-node.understood{border-color:var(--blue);color:var(--blue);background:var(--blue-50)}.kg-node.mastered{border-color:var(--amber);color:var(--amber);background:var(--amber-50)}.kg-node.lit{border-color:#f59e0b;background:#fffbeb;color:#92400e;box-shadow:0 0 0 8px #f59e0b21}.kg-empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;color:var(--muted);font-size:12px;font-weight:850;text-align:center}.kg-evidence-list{display:grid;gap:8px;margin-top:12px}.kg-evidence-row{display:grid;gap:5px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.kg-evidence-row>div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.kg-evidence-row strong{color:var(--ink);font-size:13px;overflow-wrap:anywhere}.kg-evidence-row span{flex:0 0 auto;color:var(--muted);font-size:11px;font-weight:850}.kg-evidence-row p,.kg-evidence-row em{margin:0;color:var(--muted);font-size:12px;line-height:1.5;font-style:normal;overflow-wrap:anywhere}.kg-evidence-row.understood{border-color:#2557d638;background:#f8fbff}.kg-evidence-row.mastered{border-color:#d977063d;background:#fffaf3}.kg-evidence-row.lit{border-color:#f59e0b57;background:#fffbeb}.mastery-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.mastery-bar{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.mastery-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--blue),var(--teal));transition:width .3s ease}.mastery-meta{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.mastery-meta strong{color:var(--text)}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats-grid article{padding:14px}.stats-grid span{color:var(--muted);font-size:12px;font-weight:800}.stats-grid strong{display:block;margin-top:4px;font-size:23px}.note-card textarea{min-height:96px;margin-top:10px;padding:12px;resize:vertical;line-height:1.6}.compact-row{grid-template-columns:50px minmax(0,1fr);border-top:1px solid var(--line);padding-top:10px}.classroom-deep .content-panel{scroll-behavior:smooth}.broadcast-active .content-panel{background:linear-gradient(180deg,#eef2ffd1,#f6f8fbf5)}.outline-link{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:start;width:100%;border:1px solid transparent;border-radius:var(--radius);background:transparent;padding:12px;color:var(--ink);text-align:left}.outline-link:hover{background:#f8fafc}.outline-link.locked{opacity:.62}.outline-link.locked:hover{background:transparent}.outline-link.active{border-color:#1d4ed83d;background:var(--blue-50);color:var(--blue)}.outline-link>span{color:var(--soft);font-size:12px;font-weight:900}.outline-link strong{display:block;font-size:13px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.outline-link em{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-style:normal;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.section-article{scroll-margin-top:20px}.broadcast-article{width:min(980px,calc(100% - 56px));margin-top:28px;animation:broadcastPageIn .22s ease-out}@keyframes broadcastPageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.broadcast-console{display:grid;align-content:start;gap:14px}.broadcast-control-card,.teacher-notes-card,.hand-raise-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:16px}.broadcast-control-card>div,.teacher-notes-card>div,.hand-raise-card>div:not(.section-heading){display:flex;align-items:center;gap:9px}.broadcast-control-card p,.teacher-notes-card p,.hand-raise-card p,.muted-copy{margin:0;color:var(--muted);line-height:1.65;white-space:pre-wrap}.broadcast-sync-meta{font-size:12px;font-weight:800;color:var(--ink-soft)}.broadcast-page-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.broadcast-page-controls span{color:var(--muted);font-size:12px;font-weight:900}.teacher-notes-card{border-color:#7c3aed2e;background:#fbf9ff}.teacher-notes-card h3,.hand-raise-card h3{margin:0;font-size:15px}.hand-raise-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hand-raise-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px}.hand-raise-person{display:inline-flex;align-items:center;gap:8px;font-weight:900}.hand-raise-name{display:grid;gap:2px}.hand-raise-name small{color:var(--muted);font-size:11px;font-weight:800}.hand-raise-list em{color:var(--muted);font-size:12px;font-style:normal}.follow-section-title{border-left:3px solid var(--blue);padding-left:10px;line-height:1.45}.concept-list,.context-card ul,.agent-results ul{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.concept-list li{display:flex;align-items:flex-start;gap:8px;color:#344054;line-height:1.65}.concept-list svg{flex:0 0 auto;margin-top:4px;color:var(--teal)}.context-card{display:grid;gap:10px;padding:16px}.context-card h3{margin:0}.context-card li{color:var(--muted);line-height:1.65}.learning-focus{display:grid;gap:12px}.empty-panel-card{display:grid;gap:12px;min-height:180px;align-content:center}.empty-panel-card p{color:#ffffffc2;font-size:14px}.interest-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.interest-row input,.inline-answer,.draft-card textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);outline:none;background:#fff;color:var(--ink)}.interest-row input{min-height:42px;padding:0 12px}.interest-row input:focus,.inline-answer:focus,.draft-card textarea:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.source-pill{justify-self:start;border-radius:999px;background:#ffffff1f;padding:6px 9px;color:#ffffffd1;font-size:12px;font-weight:900}.source-pill.good{background:#ecfdf3;color:var(--green)}.source-pill.fallback{background:#fffbeb;color:#92400e}.source-pill.locked{background:#fef2f2;color:#b91c1c}.compact-memory{gap:8px}.compact-memory article{border-left:3px solid rgba(124,58,237,.35);padding-left:10px}.compact-memory strong{color:var(--purple);font-size:12px}.compact-memory p{margin:4px 0 0}.interest-bridge p{margin-top:8px}.fable-card{display:grid;gap:12px;border:1px solid rgba(124,58,237,.18);border-radius:var(--radius);background:linear-gradient(180deg,#fff,#fbfaff);padding:16px}.fable-title-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between}.fable-title-row strong{color:#4c1d95;font-size:18px;line-height:1.35}.fable-title-actions{display:flex;flex:0 0 auto;gap:6px;align-items:center}.fable-title-actions>span{flex:0 0 auto;border-radius:999px;background:#f3e8ff;padding:4px 8px;color:#6b21a8;font-size:12px;font-weight:800}.fable-title-actions button{display:inline-flex;gap:5px;align-items:center;border:1px solid #c4b5fd;border-radius:8px;background:#fff;padding:5px 8px;color:#6d28d9;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.fable-title-actions button:hover{background:#f5f3ff}.fable-title-actions button:focus-visible{outline:3px solid rgba(124,58,237,.22);outline-offset:2px}.fable-reading-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:12px}.fable-card p{margin:0;color:#344054;line-height:1.85}.fable-card .fable-reading-guide{border-left:3px solid #8b5cf6;border-radius:0 8px 8px 0;background:#f5f3ff;padding:9px 11px;color:#5b21b6;font-size:13px;line-height:1.65}.fable-card .fable-source-note{border:1px solid #f0d48a;border-radius:8px;background:#fffbeb;padding:9px 11px;color:#7c5a10;font-size:13px;line-height:1.65}.fable-story-body{display:grid;gap:11px;border-top:1px solid rgba(124,58,237,.12);padding-top:14px}.fable-story-body h4{margin:10px 0 0;color:#4c1d95;font-size:15px;line-height:1.5}.fable-story-body h4:first-child{margin-top:0}.fable-story-body p{font-size:14px;line-height:1.9;text-align:justify;text-justify:inter-ideograph;white-space:pre-line}.fable-story-body blockquote{margin:0;border-left:2px solid #c4b5fd;padding:2px 0 2px 12px;color:#5b21b6;font-size:14px;font-weight:650;line-height:1.75}.story-comic-panel{display:grid;grid-template-columns:1fr;overflow:hidden;margin:8px 0 14px;border:1px solid rgba(120,87,45,.2);border-radius:14px;background:#fffcf4;box-shadow:0 12px 28px #4e351917}.story-comic-panel-image{position:relative;display:grid;place-items:center;min-height:0;aspect-ratio:16 / 9;background-color:#eee5d3}.story-comic-panel-image.loading,.story-comic-panel-image.error{background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.86),transparent 34%),linear-gradient(145deg,#f6eddc,#ddccb2)}.story-comic-panel-artwork{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:contain}.story-comic-panel-image.error .story-comic-panel-artwork{display:none}.comic-image-status{position:relative;z-index:1;max-width:150px;border:1px solid rgba(120,87,45,.16);border-radius:999px;background:#fffdf7d1;padding:6px 9px;color:#755c3e;font-size:11px;font-weight:750;line-height:1.45;text-align:center}.story-comic-panel figcaption{display:grid;gap:7px;align-content:center;padding:16px}.story-comic-panel figcaption>span{width:fit-content;border-radius:999px;background:#efe7d3;padding:4px 8px;color:#78572d;font-size:11px;font-weight:850;letter-spacing:.03em}.story-comic-panel figcaption strong{color:#4d3520;font-size:15px;line-height:1.45}.story-comic-panel figcaption p{color:#685642;font-size:12px;line-height:1.7;text-align:left}.lesson-comic-puzzle{display:grid;gap:13px;margin-top:10px;border:1px solid rgba(120,87,45,.22);border-radius:16px;background:linear-gradient(145deg,#fffdf7,#f6efe1);padding:16px}.lesson-comic-story-end-marker{display:block;width:100%;height:1px}.lesson-comic-puzzle.unlocked{border-color:#1e865447;background:linear-gradient(145deg,#fffdf7,#eef9f1);box-shadow:0 16px 38px #1b5e3e1a}.lesson-comic-puzzle-heading,.lesson-comic-puzzle-heading>div{display:flex;gap:8px;align-items:center}.lesson-comic-puzzle-heading{justify-content:space-between;color:#513923}.lesson-comic-puzzle-heading>span{border-radius:999px;background:#78572d1c;padding:5px 9px;color:#78572d;font-size:11px;font-weight:850}.lesson-comic-puzzle.unlocked .lesson-comic-puzzle-heading>span{background:#dcfce7;color:#166534}.fable-card .lesson-comic-puzzle-guide{color:#675747;font-size:12px;line-height:1.7}.lesson-comic-locked-board{display:grid;aspect-ratio:3 / 2;overflow:hidden;gap:4px;border:4px solid #e5d8c3;border-radius:12px;background:#e5d8c3}.lesson-comic-locked-board>span{display:grid;place-items:center;min-width:0;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.72),transparent 34%),linear-gradient(145deg,#f7f0e3,#dfd0b8);color:#674f3094}.lesson-comic-master{position:relative;overflow:hidden;margin:0;border:4px solid #e9dcc7;border-radius:12px;background:#efe6d5}.comic-reward-pending{display:grid;place-items:center;min-height:170px;border:2px dashed rgba(120,87,45,.26);border-radius:12px;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.88),transparent 36%),linear-gradient(145deg,#f8f1e5,#e7d9c4);padding:22px;color:#71563a;text-align:center}.comic-reward-pending strong{margin-top:8px;font-size:14px}.comic-reward-pending span{max-width:420px;margin-top:6px;font-size:12px;line-height:1.65}.lesson-comic-master img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover}.lesson-comic-master.loading img,.lesson-comic-master.error img{display:none}.comic-master-status{display:grid;place-items:center;min-height:160px;aspect-ratio:3 / 2;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.88),transparent 36%),linear-gradient(145deg,#f6eddc,#ddccb2);padding:20px;color:#71563a;text-align:center}.comic-master-status strong{margin-top:8px;font-size:14px}.comic-master-status span{max-width:390px;margin-top:5px;font-size:12px;line-height:1.55}.lesson-comic-grid-overlay{position:absolute;top:0;right:0;bottom:28px;left:0;display:grid;pointer-events:none}.lesson-comic-grid-overlay span{border:1px solid rgba(255,252,242,.72)}.lesson-comic-master figcaption{padding:7px 10px;background:#fffdf7;color:#6f5840;font-size:11px;text-align:center}.lesson-comic-requirements{display:grid;grid-template-columns:1fr;gap:7px;margin:0;padding:0;list-style:none}.lesson-comic-requirements li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;border:1px solid rgba(120,87,45,.14);border-radius:10px;background:#ffffffb8;padding:8px 9px;color:#695642;font-size:11px}.lesson-comic-requirements li>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#efe6d7}.lesson-comic-requirements li strong{font-size:11px;line-height:1.35}.lesson-comic-requirements li em{color:#8a735b;font-style:normal;font-variant-numeric:tabular-nums}.lesson-comic-requirements li.done{border-color:#1e865433;color:#17633c}.lesson-comic-requirements li.done>span{background:#dcfce7;color:#15803d}.lesson-comic-jigsaw{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16 / 9;border:3px solid #dfcfb5;border-radius:14px;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.92),transparent 48%),linear-gradient(145deg,#f1e8d8,#dccbb0);box-shadow:inset 0 0 0 1px #ffffffb8,0 14px 30px #4c341b1f}.lesson-comic-jigsaw:before{position:absolute;z-index:0;top:12px;right:12px;bottom:12px;left:12px;border:1px dashed rgba(111,80,45,.25);border-radius:9px;content:"";pointer-events:none}.lesson-comic-jigsaw-base{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.055;filter:grayscale(1) contrast(.85)}.lesson-comic-jigsaw-svg{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;filter:drop-shadow(0 4px 5px rgba(74,48,21,.16))}.lesson-comic-jigsaw-slot{fill:#fffcf5a3;stroke:#71522f59;stroke-width:1.2;stroke-dasharray:3 2}.lesson-comic-jigsaw-outline{fill:none;stroke:#fffdf7eb;stroke-width:1.45;vector-effect:non-scaling-stroke}.lesson-comic-jigsaw-piece.empty .lesson-comic-jigsaw-outline{stroke:#75543157;stroke-dasharray:5 4}.lesson-comic-jigsaw-number{fill:#6b4d2c8f;font-size:10px;font-weight:900;text-anchor:middle;dominant-baseline:central}.lesson-comic-jigsaw-piece.just-placed{transform-box:fill-box;transform-origin:center;animation:comic-piece-arrive .9s cubic-bezier(.22,1.35,.36,1) both}.lesson-comic-jigsaw-loading{position:absolute;z-index:3;top:50%;left:50%;width:max-content;max-width:80%;transform:translate(-50%,-50%);border-radius:999px;background:#fffdf7e6;padding:7px 11px;color:#755c3e;font-size:11px;font-weight:750;text-align:center}.lesson-comic-jigsaw.complete{border-color:#1d8b5573;box-shadow:0 18px 42px #1a754933,0 0 0 5px #bbf7d047;animation:comic-board-complete .85s ease-out both}.lesson-comic-jigsaw.complete .lesson-comic-jigsaw-base,.lesson-comic-jigsaw.complete:before{opacity:0}.lesson-comic-complete-ceremony{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;pointer-events:none}.lesson-comic-complete-ceremony strong{border:1px solid rgba(255,255,255,.78);border-radius:999px;background:#145337d1;box-shadow:0 8px 24px #1453374d;padding:8px 14px;color:#fff;font-size:12px;letter-spacing:.06em;animation:comic-complete-label 2.6s ease both}.lesson-comic-complete-ceremony i{--spark-angle: 0deg;position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:2px;background:#fbbf24;transform:rotate(var(--spark-angle)) translateY(-8px);animation:comic-spark 1.25s ease-out both}.lesson-comic-complete-ceremony i:nth-child(2){--spark-angle: 36deg;background:#60a5fa}.lesson-comic-complete-ceremony i:nth-child(3){--spark-angle: 72deg;background:#f472b6}.lesson-comic-complete-ceremony i:nth-child(4){--spark-angle: 108deg;background:#34d399}.lesson-comic-complete-ceremony i:nth-child(5){--spark-angle: 144deg;background:#fbbf24}.lesson-comic-complete-ceremony i:nth-child(6){--spark-angle: 180deg;background:#60a5fa}.lesson-comic-complete-ceremony i:nth-child(7){--spark-angle: 216deg;background:#f472b6}.lesson-comic-complete-ceremony i:nth-child(8){--spark-angle: 252deg;background:#34d399}.lesson-comic-complete-ceremony i:nth-child(9){--spark-angle: 288deg;background:#fbbf24}.lesson-comic-complete-ceremony i:nth-child(10){--spark-angle: 324deg;background:#60a5fa}.lesson-comic-requirements li{display:block;padding:0;overflow:hidden}.lesson-comic-requirements li>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;border:0;background:transparent;padding:9px 10px;color:inherit;font:inherit;text-align:left}.lesson-comic-requirements li>button>span:first-child{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#efe6d7}.lesson-comic-requirement-copy{display:grid;gap:2px;min-width:0}.lesson-comic-requirement-copy strong{display:flex;gap:7px;align-items:center;color:#604a35;font-size:11px}.lesson-comic-requirement-copy strong b{border-radius:999px;background:#78572d1a;padding:2px 6px;color:#806343;font-size:9px;white-space:nowrap}.lesson-comic-requirement-copy small{color:#927b62;font-size:9px;line-height:1.35}.lesson-comic-requirements li.available{border-color:#258b526b;background:linear-gradient(100deg,#ecfdf5f5,#ffffffe0);box-shadow:0 7px 18px #1665341a}.lesson-comic-requirements li.available>button{cursor:grab}.lesson-comic-requirements li.available>button:active{cursor:grabbing}.lesson-comic-requirements li.available>button>span:first-child{background:#bbf7d0;color:#15803d;animation:comic-ready-pulse 1.8s ease-in-out infinite}.lesson-comic-requirements li.placed{border-color:#1e865433;background:#f0fdf4c7;color:#17633c}.lesson-comic-requirements li.placed>button>span:first-child{background:#dcfce7;color:#15803d}.lesson-comic-requirements li.placed .lesson-comic-requirement-copy strong,.lesson-comic-requirements li.placed .lesson-comic-requirement-copy small{color:#17633c}.lesson-comic-requirements li>button:focus-visible{outline:2px solid #16a34a;outline-offset:-2px}.lesson-comic-drag-hint{display:flex;gap:6px;align-items:center;justify-content:center;margin:0;border-radius:9px;background:#ecfdf5;padding:7px 9px;color:#166534;font-size:10px;font-weight:750;line-height:1.45}@keyframes comic-piece-arrive{0%{opacity:0;transform:translateY(18px) scale(.84) rotate(-3deg);filter:brightness(1.45)}65%{opacity:1;transform:translateY(-2px) scale(1.025) rotate(0);filter:brightness(1.16)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}@keyframes comic-ready-pulse{0%,to{box-shadow:0 0 #22c55e33}50%{box-shadow:0 0 0 5px #22c55e00}}@keyframes comic-board-complete{0%{transform:scale(.985);filter:saturate(.84)}55%{transform:scale(1.012);filter:saturate(1.15) brightness(1.05)}to{transform:scale(1);filter:none}}@keyframes comic-complete-label{0%,12%{opacity:0;transform:scale(.7)}28%,70%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}@keyframes comic-spark{0%{opacity:0;transform:rotate(var(--spark-angle)) translateY(-8px) scale(.5)}20%{opacity:1}to{opacity:0;transform:rotate(var(--spark-angle)) translateY(-105px) rotate(160deg) scale(1.1)}}@media(prefers-reduced-motion:reduce){.lesson-comic-jigsaw-piece.just-placed,.lesson-comic-jigsaw.complete,.lesson-comic-complete-ceremony strong,.lesson-comic-complete-ceremony i,.lesson-comic-requirements li.available>button>span:first-child{animation:none}}.key-takeaways-card ol{display:grid;gap:8px;margin:0;padding-left:20px}.key-takeaways-card li{color:#344054;line-height:1.55}.reveal-card{background:var(--violet-50)}.reveal-card p{white-space:pre-line}.metaphor-card{gap:12px}.metaphor-list{display:grid;gap:10px}.metaphor-list article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.metaphor-list span{color:var(--muted);font-size:12px;font-weight:900;line-height:1.45}.metaphor-list strong{color:var(--blue);font-size:13px;line-height:1.45}.metaphor-list p{grid-column:1 / -1;margin:0;color:#475467;font-size:13px;line-height:1.55}.metaphor-more{border-top:1px solid var(--line);padding-top:10px}.metaphor-more summary{cursor:pointer;color:var(--blue);font-size:13px;font-weight:800;line-height:1.5}.metaphor-more[open] summary{margin-bottom:10px}.learning-value-card{gap:12px}.interest-bridge-line{display:flex;gap:10px;align-items:flex-start;border-top:1px solid var(--line);padding-top:12px}.interest-bridge-line svg{flex:0 0 auto;color:var(--violet);margin-top:2px}.interest-bridge-line p{margin:0;color:#344054;line-height:1.65}.study-questions-card ul{display:grid;gap:7px;margin:8px 0 0;padding-left:18px}.soft-note{margin:4px 0 0;color:var(--soft);font-size:12px;line-height:1.6}.understanding-meter{height:8px;overflow:hidden;border-radius:999px;background:#7c3aed24}.understanding-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--blue))}.challenge-card em{display:block;margin-top:8px;color:var(--violet);font-size:12px;font-style:normal;font-weight:900}.practice-set{gap:16px}.practice-question{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:14px}.practice-question:first-of-type{border-top:0;padding-top:0}.practice-question h4{margin:0;line-height:1.5}.quiz-source-row{display:flex;gap:8px;align-items:center}.quiz-source-row small{color:var(--soft);font-size:12px;line-height:1.4}.status-pill.current-page{background:#15803d1a;color:#15803d}.inline-answer{min-height:44px;padding:11px 12px;resize:vertical;line-height:1.6}textarea.inline-answer{min-height:88px}.draft-card{display:grid;grid-template-columns:auto minmax(0,1fr)}.draft-card textarea,.draft-card .agent-toolbar,.draft-card .primary-btn{grid-column:1 / -1}.assignment-context-row{display:grid;gap:4px;margin:6px 0 8px;border-left:3px solid rgba(29,78,216,.28);padding-left:10px}.assignment-context-row span{color:var(--ink);font-size:13px;font-weight:900;line-height:1.4}.assignment-context-row em{color:var(--soft);font-size:12px;font-style:normal;font-weight:800;line-height:1.4}.draft-card textarea{min-height:180px;padding:12px;resize:vertical;line-height:1.65}.agent-toolbar{display:grid;grid-template-columns:1fr;gap:8px}.agent-toolbar .secondary-btn{justify-content:flex-start;min-height:42px}.agent-results{display:grid;gap:12px}.agent-results article{border-top:1px solid var(--line);padding-top:12px}.agent-results article:first-of-type{border-top:0;padding-top:0}.agent-results strong{display:block;margin-bottom:4px}.agent-results p,.agent-results li{color:var(--muted);line-height:1.6}.agent-results em{display:block;border-radius:var(--radius);background:#fff1f2;padding:9px;color:#9f1239;font-style:normal;font-weight:800;line-height:1.5}.process-log .compact-row p{display:grid;gap:3px;margin:0}.process-log .compact-row strong{color:var(--ink)}.timeline-evidence-tags{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.timeline-evidence-tags em{border-radius:999px;background:#eef6ff;padding:4px 8px;color:#1d4ed8;font-size:11px;font-style:normal;font-weight:850}.socratic-trace-log{display:grid;gap:10px;padding:14px}.socratic-trace-card{display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc;padding:10px}.trace-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.trace-card-head span,.socratic-trace-card dt{color:var(--muted);font-size:11px;font-weight:800}.trace-card-head strong{color:var(--blue);font-size:12px}.socratic-trace-card p{margin:0;line-height:1.55}.socratic-trace-card p b{color:var(--ink);margin-right:6px}.socratic-trace-card dl{display:grid;gap:6px;margin:0}.socratic-trace-card dl div{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px}.socratic-trace-card dd{margin:0;color:var(--ink);font-size:12px;line-height:1.5}.material-builder{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:var(--shadow)}.material-builder>.section-heading{align-items:start}.material-builder>.section-heading h2{font-size:22px}.upload-button{position:relative;overflow:hidden}.upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.format-hint{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.ingest-status{display:flex;align-items:center;gap:10px;border:1px solid rgba(29,78,216,.16);border-radius:var(--radius);background:var(--blue-50);padding:10px 12px;color:var(--blue);font-size:13px;font-weight:800;line-height:1.5}.ingest-progress{display:grid;gap:8px;border:1px solid rgba(15,23,42,.08);border-radius:var(--radius);background:#f8fafc;padding:10px 12px}.ingest-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-size:13px;font-weight:800}.ingest-progress span{color:var(--muted)}.ingest-progress progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:#e2e8f0}.ingest-progress progress::-webkit-progress-bar{background:#e2e8f0;border-radius:999px}.ingest-progress progress::-webkit-progress-value{background:linear-gradient(90deg,var(--blue),#7c3aed);border-radius:999px}.ingest-progress progress::-moz-progress-bar{background:linear-gradient(90deg,var(--blue),#7c3aed);border-radius:999px}.material-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.material-list article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;border:1px solid var(--line);border-radius:var(--radius);padding:12px}.material-list strong,.material-list span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-list span{margin-top:3px;color:var(--muted);font-size:12px;font-weight:800}.builder-grid{display:grid;grid-template-columns:minmax(188px,230px) minmax(0,1fr);gap:14px;min-height:420px}.generated-outline,.section-editor{border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.generated-outline{display:grid;align-content:start;gap:8px;padding:10px;overflow:auto}.outline-filter-row{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 6px}.outline-filter-row button{min-height:30px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:4px 8px;font-size:11px;font-weight:900;cursor:pointer}.outline-filter-row button.active{border-color:#1d4ed847;background:#2563eb14;color:var(--blue)}.outline-filter-row button span{margin-left:5px;color:inherit;opacity:.76}.outline-empty{margin:6px 0;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:12px;font-size:12px;font-weight:800}.generated-outline>button{position:relative;display:grid;grid-template-columns:15px 26px minmax(0,1fr);gap:7px;align-items:start;border:1px solid transparent;border-radius:var(--radius);background:transparent;padding:9px 8px;text-align:left;cursor:grab}.generated-outline>button:active{cursor:grabbing}.generated-outline>button:hover{background:#ffffffb8}.generated-outline>button.active{border-color:#1d4ed838;background:#fff;color:var(--blue)}.generated-outline>button.readiness-ready{border-left-color:#05966970}.generated-outline>button.readiness-attention{border-left-color:#d9770675}.generated-outline>button.readiness-blocked{border-left-color:#e11d486b}.generated-outline>button.dragging{opacity:.54;box-shadow:inset 0 0 0 1px #1d4ed82e}.generated-outline>button.drop-before:before,.generated-outline>button.drop-after:after{content:"";position:absolute;left:10px;right:10px;height:3px;border-radius:999px;background:var(--blue);box-shadow:0 4px 10px #1d4ed838}.generated-outline>button.drop-before:before{top:-5px}.generated-outline>button.drop-after:after{bottom:-5px}.generated-outline>button svg{margin-top:1px;color:var(--soft)}.generated-outline>button span{color:var(--soft);font-size:12px;font-weight:900}.generated-outline>button strong{min-width:0;font-size:13px;line-height:1.45}.outline-page-summary{display:grid;gap:6px;min-width:0}.outline-page-title-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.outline-page-title-line strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outline-page-summary small{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:11px;font-weight:700;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:1}.outline-readiness,.outline-status-chip{display:inline-flex;align-items:center;max-width:100%;border-radius:999px;font-style:normal;font-weight:900;white-space:nowrap}.outline-readiness{padding:3px 6px;background:var(--panel);color:var(--muted);font-size:10px}.outline-readiness.state-ready{background:#ecfdf3;color:#065f46}.outline-readiness.state-attention{background:var(--amber-50);color:#92400e}.outline-readiness.state-blocked{background:#fff1f2;color:var(--rose)}.outline-status-chip-row{display:flex;flex-wrap:wrap;gap:6px}.outline-status-chip{width:8px;height:8px;overflow:hidden;color:transparent;padding:0;font-size:0}.outline-status-chip.tone-good{background:#ecfdf3;color:#065f46}.outline-status-chip.tone-attention{background:var(--amber-50);color:#92400e}.outline-status-chip.tone-danger{background:#fff1f2;color:var(--rose)}.outline-status-chip.tone-muted{background:var(--panel);color:var(--muted)}.outline-actions{display:flex;justify-content:center;border-top:1px solid var(--line);padding-top:10px}.add-section-btn{border-style:dashed;color:var(--blue)}.add-section-btn:hover:not(:disabled){border-color:#1d4ed873;background:var(--blue-50)}.section-editor{display:grid;grid-template-columns:minmax(430px,1fr) minmax(330px,420px);align-items:start;gap:14px;border:0;background:transparent;padding:0}.section-editor>:not(.teaching-support-editor){grid-column:1}.section-editor-primary{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:14px}.section-title-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:10px;align-items:end}.section-editor label{display:grid;gap:8px}.section-editor label span{color:var(--muted);font-size:12px;font-weight:900}.section-editor input,.section-editor textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:11px 12px;line-height:1.6}.section-editor textarea{min-height:76px;resize:vertical}.section-editor .large-editor{min-height:132px}.section-editor .teacher-notes-editor{min-height:104px}.section-editor input:focus,.section-editor textarea:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.danger-icon-btn{border-color:#e11d4838;color:var(--rose)}.danger-icon-btn:hover:not(:disabled){background:#fff1f2;border-color:#e11d486b}.danger-btn{background:var(--rose);box-shadow:0 10px 24px #e11d482e}.danger-btn:disabled{cursor:not-allowed;background:#fecdd3;color:#fff;box-shadow:none}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:22px;background:#0f172a57;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog{width:min(440px,100%);border:1px solid rgba(15,23,42,.08);border-radius:var(--radius);background:#fff;box-shadow:0 24px 70px #0f172a33;padding:20px}.confirm-dialog strong{display:block;font-size:18px}.confirm-dialog p{margin:10px 0 18px;color:var(--muted);line-height:1.6}.confirm-dialog .button-row{justify-content:flex-end}.danger-confirm-field{display:grid;gap:7px;margin-bottom:16px}.danger-confirm-field span{color:var(--muted);font-size:12px;font-weight:900}.danger-confirm-field input{border:1px solid rgba(225,29,72,.28);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:11px 12px}.danger-confirm-field input:focus{border-color:#e11d48a6;box-shadow:0 0 0 4px #e11d481a}.context-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.context-editor label{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px}.context-editor textarea{min-height:112px}.page-media-preview{display:grid;gap:10px;border:1px solid rgba(29,78,216,.14);border-radius:var(--radius);background:#fff;padding:12px}.page-media-preview-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.page-media-preview-header div{display:flex;align-items:center;gap:8px}.page-media-preview-header strong{font-size:13px}.page-media-preview-header span{border-radius:999px;background:var(--blue-50);color:var(--blue);padding:4px 8px;font-size:11px;font-weight:900}.page-media-preview img,.page-media-preview video{width:min(520px,100%);aspect-ratio:16 / 9;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.source-page-preview img{width:min(640px,100%);height:auto;max-height:520px;aspect-ratio:auto;object-fit:contain;background:#fff}.page-media-item{display:grid;gap:8px}.page-media-item+.page-media-item{border-top:1px solid var(--line);padding-top:10px}.page-media-preview p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.page-media-preview .compact-danger-btn{justify-self:start;border-color:#e11d4833;color:var(--rose);padding:8px 10px}.teaching-support-editor{grid-column:2;grid-row:1 / span 8;display:grid;gap:12px;border:1px solid rgba(29,78,216,.16);border-radius:var(--radius);background:#fff;padding:12px;position:sticky;top:82px;max-height:calc(100vh - 110px);overflow:auto}.teaching-support-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(112px,136px);gap:12px;align-items:start}.support-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.teaching-support-header strong{display:block;margin-top:4px;font-size:16px}.teaching-support-header p,.support-empty-state p{margin:6px 0 0;color:var(--muted);line-height:1.6}.support-empty-state.compact{display:grid;gap:6px;border:1px dashed rgba(100,116,139,.32);border-radius:var(--radius);background:#f8fafc;padding:14px}.support-empty-state.compact strong{color:var(--ink);font-size:14px}.support-empty-state.compact p{margin:0;font-size:13px}.teaching-support-header p+p{margin-top:3px}.teaching-support-header .button-row{display:grid;grid-template-columns:1fr;justify-content:stretch;gap:7px}.teaching-support-header .button-row .secondary-btn{justify-content:center;min-height:36px;padding:7px 10px;font-size:12px}.lesson-support-editor{display:grid;gap:0;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.lesson-support-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;padding:20px 22px 18px}.lesson-support-heading>strong{display:block;margin-top:5px;color:var(--ink);font-size:18px;line-height:1.4}.lesson-support-heading>p{max-width:760px;margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.65}.lesson-support-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.lesson-support-meta span{border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--muted);padding:5px 8px;font-size:11px;font-weight:850}.lesson-support-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.lesson-support-generation-feedback{flex-basis:100%;width:min(320px,100%);margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.55;text-align:right}.lesson-support-generation-feedback.pending{color:#7a5312}.lesson-support-generation-feedback.success{color:#17705e}.lesson-support-generation-feedback.error{color:var(--danger)}.lesson-support-factory-badge{display:inline-flex;min-height:38px;align-items:center;border:1px solid rgba(5,150,105,.2);border-radius:var(--radius);background:#ecfdf5;color:#047857;padding:0 12px;font-size:12px;font-weight:800}.lesson-support-factory-guidance{flex-basis:100%;width:min(360px,100%);margin:0;color:var(--muted);font-size:12px;line-height:1.55;text-align:right}.lesson-support-generate-btn{min-height:38px;padding-inline:13px;font-size:12px}.lesson-support-status-control{display:inline-grid;grid-template-columns:repeat(3,minmax(68px,auto));gap:3px;border:1px solid var(--line);border-radius:var(--radius);background:#f3f5f8;padding:3px}.lesson-support-status-control button{min-height:30px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);padding:0 10px;font-size:12px;font-weight:850}.lesson-support-status-control button.active{background:#fff;color:var(--blue);box-shadow:0 1px 4px #0f172a1f}.lesson-support-status-control button:last-child.active{color:var(--rose)}.lesson-support-state-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(37,99,235,.14);border-width:1px 0;border-radius:0;background:#f8fafc;padding:10px 22px;color:var(--muted);font-size:12px;line-height:1.5}.lesson-support-state-strip strong{flex:0 0 auto;color:var(--ink);font-size:12px}.lesson-support-state-strip.saved{border-color:#14b8a638;background:#f0fdfacc}.lesson-support-state-strip.draft{border-color:#f59e0b3d;background:#fffbebd1}.lesson-support-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}.lesson-support-tabs{display:flex;gap:20px;min-height:48px;border-bottom:1px solid var(--line);padding:0 22px}.lesson-support-tabs button{position:relative;display:inline-flex;align-items:center;gap:8px;min-width:108px;border:0;background:transparent;color:var(--muted);padding:0 2px;font-size:13px;font-weight:850}.lesson-support-tabs button:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:transparent}.lesson-support-tabs button.active{color:var(--ink)}.lesson-support-tabs button.active:after{background:var(--blue)}.lesson-support-tabs .status-dot{width:7px;height:7px;border-radius:50%;background:var(--soft)}.lesson-support-tabs .status-dot.good{background:var(--green)}.lesson-support-tabs .status-dot.understood{background:var(--amber)}.lesson-support-tabs .status-dot.danger{background:var(--rose)}.lesson-support-editor .assistant-tab-panel{gap:18px;padding:22px}.lesson-support-editor .support-section-title{align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:14px}.lesson-support-editor .support-section-title strong{color:var(--ink);font-size:16px}.lesson-support-editor .support-section-title p,.lesson-assistant-field-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.lesson-support-editor label{display:grid;gap:7px;min-width:0}.lesson-support-editor label>span{color:var(--muted);font-size:12px;font-weight:850}.lesson-support-editor input,.lesson-support-editor select,.lesson-support-editor textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);outline:none;padding:10px 11px;line-height:1.6}.lesson-support-editor textarea{min-height:92px;resize:vertical}.lesson-support-editor .lesson-story-editor{min-height:280px;line-height:1.8}.lesson-support-editor input:focus,.lesson-support-editor select:focus,.lesson-support-editor textarea:focus{border-color:#1d4ed89e;box-shadow:0 0 0 3px #1d4ed81a}.lesson-support-list-columns,.lesson-support-form-grid,.lesson-guidance-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lesson-assistant-field-group{display:grid;gap:10px;min-width:0;border-top:1px solid var(--line);padding-top:16px}.lesson-assistant-field-heading,.lesson-guidance-row-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lesson-assistant-field-heading strong{color:var(--ink);font-size:13px}.lesson-assistant-field-heading .compact-action-btn{flex:0 0 auto}.lesson-assistant-list,.support-move-list{display:grid;gap:8px}.lesson-assistant-list-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.lesson-assistant-list-row textarea{min-height:66px;background:#fff}.lesson-assistant-row-index{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e8eefc;color:var(--blue);font-size:11px;font-weight:900}.lesson-assistant-row-actions{display:flex;gap:4px}.lesson-assistant-row-actions .icon-btn{width:32px;min-width:32px;min-height:32px;height:32px}.lesson-assistant-list-empty{margin:0;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:14px;font-size:12px}.lesson-interaction-intro textarea{min-height:120px}.lesson-support-editor .lesson-guidance-row{gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:14px}.lesson-guidance-row-header{align-items:center}.lesson-guidance-row-header>div:first-child{display:flex;align-items:center;gap:9px}.lesson-guidance-row-header strong{color:var(--ink);font-size:13px}.lesson-guidance-question{grid-column:1 / -1}.assistant-editor-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:4px}.assistant-editor-tabs button{min-height:32px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:12px;font-weight:900;cursor:pointer}.assistant-editor-tabs button.active{background:var(--surface);color:var(--blue);box-shadow:0 1px 4px #0f172a14}.teaching-assistant-regenerate{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.teaching-assistant-regenerate .button-row{justify-content:flex-start;flex-wrap:wrap}.teaching-assistant-history{grid-column:1 / -1;display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}.teaching-assistant-history>strong{font-size:12px;color:var(--muted)}.teaching-assistant-history article{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;padding:8px}.teaching-assistant-history span{display:block;font-size:12px;font-weight:800}.teaching-assistant-history small{display:block;color:var(--muted);line-height:1.5}.support-issue-panel{display:grid;gap:8px}.support-issue-list{display:flex;flex-wrap:wrap;gap:8px}.support-issue-list span{border-radius:999px;background:#fff7ed;color:#9a3412;padding:6px 9px;font-size:12px;font-weight:800}.support-section{display:grid;gap:12px;border-top:0;padding-top:0}.support-section-title{align-items:center}.support-section-title strong{font-size:14px}.support-title-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.support-move-list,.support-practice-items{display:grid;gap:10px}.practice-score-policy{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(130px,.35fr) minmax(260px,1fr);gap:10px;align-items:end;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.practice-score-policy p{margin:0 0 6px}.practice-item-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.practice-item-toolbar>div{display:flex;align-items:center;gap:6px}.support-move-list article,.support-practice-items article{display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.support-move-list article strong,.support-practice-items article span{color:var(--muted);font-size:12px;font-weight:900}.practice-editor-row{display:grid;grid-template-columns:minmax(120px,.55fr) minmax(90px,.35fr) minmax(180px,1fr);gap:10px}.practice-option-editor{display:grid;gap:8px}.practice-option-row{display:grid;grid-template-columns:22px minmax(0,1fr) 34px;gap:8px;align-items:center}.practice-option-row input[type=radio],.practice-option-row input[type=checkbox]{width:16px;height:16px;padding:0}.compact-action-btn{justify-self:start;padding:8px 10px}.support-empty-state{border:1px dashed rgba(29,78,216,.28);border-radius:var(--radius);background:var(--blue-50);padding:12px}.portfolio-page-shell{gap:24px}.portfolio-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:20px;align-items:stretch;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.portfolio-hero h2{margin:6px 0 12px;font-size:28px;line-height:1.18}.portfolio-hero p{max-width:780px;margin:0;color:var(--muted);line-height:1.75}.portfolio-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portfolio-summary-grid article{display:grid;gap:6px;padding:16px;border:1px solid #dbeafe;border-radius:var(--radius);background:var(--blue-50)}.portfolio-summary-grid span,.portfolio-progress-card span{color:var(--muted);font-size:12px;font-weight:800}.portfolio-summary-grid strong{font-size:26px}.portfolio-progress-card{display:grid;gap:12px;padding:20px 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.portfolio-progress-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px}.portfolio-progress-card strong{font-size:24px}.student-task-center{display:grid;gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.student-task-center .section-heading p{max-width:760px;margin:4px 0 0;color:var(--muted);line-height:1.6}.student-task-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.task-center-metric{display:grid;gap:5px;min-width:0;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.task-center-metric span{color:var(--muted);font-size:12px;font-weight:850}.task-center-metric strong{color:var(--ink);font-size:24px;line-height:1}.task-center-metric.is-urgent{border-color:#f43f5e33;background:#fff7f7}.task-center-metric.is-active{border-color:#2557d62e;background:#f8fbff}.task-center-metric.is-waiting{border-color:#f59e0b3d;background:#fffbeb}.task-center-metric.is-done{border-color:#10b98138;background:#f0fdf4}.student-task-list{display:grid;gap:10px}.student-task-empty{border:1px dashed var(--line);border-radius:var(--radius);background:#f8fafc;color:var(--muted);padding:14px}.student-task-empty strong{display:block;color:var(--ink);margin-bottom:4px}.student-task-empty p{margin:0;line-height:1.6}.student-task-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:14px;align-items:stretch;min-width:0;padding:14px;border:1px solid var(--line);border-left-width:4px;border-radius:var(--radius-sm);background:#fbfdff}.student-task-row.priority-urgent{border-left-color:#e11d48}.student-task-row.priority-active{border-left-color:#2557d6}.student-task-row.priority-waiting{border-left-color:#d97706}.student-task-row.priority-done{border-left-color:#10b981;background:#fbfffd}.student-task-main,.student-task-next{display:grid;align-content:start;gap:8px;min-width:0}.student-task-main strong{color:var(--ink);font-size:15px;line-height:1.35}.student-task-main p,.student-task-next p,.student-task-next em{margin:0;color:var(--muted);font-size:12px;line-height:1.55;font-style:normal}.student-task-next em{padding:9px 10px;border-radius:8px;background:#f8fafc;overflow-wrap:anywhere}.student-task-next .student-task-reminder{background:#f8fbff;color:#1e3a8a}.student-task-reminder-block{display:grid;justify-items:start;gap:8px;min-width:0}.student-task-status{justify-self:start;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:900}.student-task-status.is-urgent{background:#ffe4e6;color:#be123c}.student-task-status.is-active{background:#eff6ff;color:#1d4ed8}.student-task-status.is-waiting{background:#fef3c7;color:#92400e}.student-task-status.is-done{background:#dcfce7;color:#047857}.student-task-meta{display:flex;flex-wrap:wrap;gap:6px}.student-task-meta span{padding:4px 7px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:850}.student-task-progress{width:100%;height:6px;overflow:hidden;border-radius:999px;background:#e2e8f0}.student-task-progress div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#2557d6,#14b8a6)}.student-task-next .compact-btn{justify-self:start}.portfolio-showcase-editor{display:grid;gap:18px;padding:24px;border:1px solid #c7d2fe;border-radius:var(--radius);background:#f8fbff}.portfolio-showcase-summary{display:grid;grid-template-columns:minmax(260px,1.3fr) repeat(3,minmax(120px,.55fr));gap:12px}.portfolio-showcase-meter,.portfolio-showcase-stat{display:grid;gap:8px;min-width:0;border:1px solid rgba(148,163,184,.28);border-radius:var(--radius-sm);background:#ffffffd1;padding:14px}.portfolio-showcase-meter>div:first-child,.portfolio-showcase-stat{align-content:start}.portfolio-showcase-meter>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.portfolio-showcase-meter span,.portfolio-showcase-stat span{color:var(--muted);font-size:12px;font-weight:850}.portfolio-showcase-meter strong,.portfolio-showcase-stat strong{color:var(--ink);font-size:24px;line-height:1}.portfolio-showcase-meter em,.portfolio-showcase-stat em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.4}.portfolio-showcase-gaps{display:grid;gap:8px;border:1px solid rgba(245,158,11,.28);border-radius:var(--radius-sm);background:#fffbebc7;padding:13px 14px}.portfolio-showcase-gaps strong{color:#92400e;font-size:13px}.portfolio-showcase-gaps ul{display:grid;gap:5px;margin:0;padding-left:18px;color:#78350f;font-size:12px;line-height:1.55}.portfolio-showcase-gaps.is-ready{display:flex;align-items:center;border-color:#14b8a647;background:#f0fdfae6;color:#0f766e;font-size:13px;font-weight:800}.portfolio-showcase-grid{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);gap:14px}.portfolio-showcase-grid label,.portfolio-evidence-editor label{display:grid;gap:6px}.portfolio-showcase-grid label span,.portfolio-evidence-editor label span{color:var(--muted);font-size:12px;font-weight:850}.portfolio-showcase-grid input,.portfolio-showcase-grid textarea,.portfolio-evidence-editor input,.portfolio-evidence-editor select,.portfolio-evidence-editor textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 11px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;line-height:1.55}.portfolio-showcase-grid textarea{min-height:96px;resize:vertical}.portfolio-evidence-editor textarea{min-height:70px;resize:vertical}.portfolio-showcase-grid input:focus,.portfolio-showcase-grid textarea:focus,.portfolio-evidence-editor input:focus,.portfolio-evidence-editor select:focus,.portfolio-evidence-editor textarea:focus{border-color:#2563eb6b;box-shadow:0 0 0 3px #2563eb1a;outline:none}.portfolio-showcase-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.portfolio-showcase-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.portfolio-showcase-picker-heading div{display:grid;gap:4px;min-width:0}.portfolio-showcase-picker-heading strong{color:var(--ink);font-size:14px}.portfolio-showcase-picker-heading span{color:var(--muted);font-size:12px;line-height:1.45}.portfolio-showcase-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;min-height:150px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 8px 24px #0f172a0a}.portfolio-showcase-option.is-selected{border-color:#2563eb73;background:#f8fbff;box-shadow:0 12px 28px #2563eb1a}.portfolio-showcase-option.is-recommended{border-top-color:#14b8a68c}.portfolio-showcase-option.is-needs_work{border-top-color:#f59e0b8c}.portfolio-showcase-option.is-not_ready{opacity:.86}.portfolio-showcase-option input{margin-top:3px}.portfolio-showcase-option-body{display:grid;gap:8px;min-width:0}.portfolio-showcase-option-body>div{display:grid;gap:4px;min-width:0}.portfolio-showcase-option-body strong{color:var(--ink);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.portfolio-showcase-option-body span{color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere}.portfolio-showcase-option-body em{justify-self:start;border-radius:999px;background:var(--panel);padding:4px 8px;color:var(--muted);font-size:12px;font-style:normal;line-height:1}.portfolio-showcase-option-body p{margin:0;color:var(--ink);font-size:12px;line-height:1.55}.portfolio-showcase-option-body ul{display:grid;gap:4px;margin:0;padding-left:16px;color:var(--muted);font-size:12px;line-height:1.45}.portfolio-showcase-option-body li{overflow-wrap:anywhere}.portfolio-showcase-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(99,102,241,.18);padding-top:12px}.portfolio-showcase-actions span{color:var(--muted);font-size:12px;line-height:1.45}.portfolio-semester-list{display:grid;gap:18px}.portfolio-semester{display:grid;gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.portfolio-semester .section-heading p{max-width:780px;margin:6px 0 0;color:var(--muted);line-height:1.65}.portfolio-milestone-list{display:grid;gap:16px}.portfolio-milestone{display:grid;gap:14px;padding:16px;border:1px solid #e2e8f0;border-radius:var(--radius);background:#fbfdff}.portfolio-milestone-title{display:flex;align-items:center;gap:10px}.portfolio-milestone-title span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--teal-50);color:var(--teal);font-weight:900}.portfolio-artifact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.portfolio-artifact-card{display:grid;gap:10px;scroll-margin-top:92px;min-height:220px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.portfolio-artifact-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--blue)}.portfolio-artifact-card h4{margin:0;font-size:17px}.portfolio-artifact-card p,.portfolio-artifact-card em,.portfolio-artifact-card li{color:var(--muted);font-size:13px;line-height:1.6}.portfolio-artifact-card p,.portfolio-artifact-card ul{margin:0}.portfolio-artifact-card ul{display:grid;gap:6px;padding:0;list-style:none}.portfolio-artifact-card li{display:flex;align-items:flex-start;gap:6px}.portfolio-artifact-card li svg{flex:0 0 auto;margin-top:3px;color:var(--green)}.portfolio-evidence-list li{align-items:flex-start}.portfolio-evidence-list li span{display:grid;gap:2px;min-width:0}.portfolio-evidence-list li strong,.portfolio-evidence-list li small,.portfolio-evidence-list li em{overflow-wrap:anywhere}.portfolio-evidence-list li small{color:var(--muted);font-size:11px;line-height:1.45}.portfolio-evidence-list li em{align-self:start;color:#334155;font-size:12px;line-height:1.5}.portfolio-artifact-card em{align-self:end;font-style:normal}.portfolio-empty-copy{padding:10px;border-radius:var(--radius-sm);background:#f8fafc}.portfolio-evidence-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);padding-top:10px}.portfolio-evidence-editor .portfolio-draft-header,.portfolio-evidence-editor .portfolio-evidence-wide,.portfolio-evidence-editor button{grid-column:1 / -1}.portfolio-draft-editor{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}.creative-workspace{gap:10px}.portfolio-draft-header,.portfolio-draft-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.portfolio-draft-actions{flex-wrap:wrap}.portfolio-draft-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end}.portfolio-submit-state{padding:5px 8px;border-radius:999px;background:#eef6ff;color:var(--blue);font-size:12px;font-weight:900}.portfolio-draft-header strong{color:var(--ink);font-size:13px}.portfolio-draft-header span,.portfolio-draft-actions span{color:var(--muted);font-size:12px;line-height:1.45}.portfolio-draft-editor textarea{min-height:92px;resize:vertical;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 11px;background:#fbfdff;color:var(--ink);font:inherit;font-size:13px;line-height:1.55}.portfolio-draft-editor textarea:focus{border-color:#2563eb6b;box-shadow:0 0 0 3px #2563eb1a;outline:none}.creative-mode-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:6px}.creative-mode-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc;color:var(--muted);font-size:12px;font-weight:800}.creative-mode-tabs button.is-active{border-color:#2557d652;background:#eef6ff;color:var(--blue)}.creative-pane{display:grid;gap:8px}.creative-mode-note{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.creative-mode-note strong{color:var(--ink);font-size:13px}.creative-mode-note span{color:var(--muted);font-size:12px;line-height:1.55}.image-service-placeholder{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px dashed rgba(37,87,214,.26);border-radius:var(--radius-sm);background:#f8fbff;color:var(--muted);font-size:12px;line-height:1.55}.image-service-placeholder svg{flex:0 0 auto;margin-top:2px;color:var(--blue)}.generated-image-preview{display:grid;gap:8px;margin:0;padding:10px;border:1px solid rgba(16,185,129,.22);border-radius:var(--radius-sm);background:#f6fefb}.generated-image-preview img{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:6px;background:#fff;border:1px solid rgba(15,23,42,.08)}.generated-image-preview figcaption{color:#0f766e;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.generated-image-preview figcaption span{color:#334155}.generated-image-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.generated-image-gallery figure{display:grid;gap:6px;margin:0;padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.generated-image-gallery img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:6px;background:#f8fafc}.generated-image-gallery figcaption{color:var(--muted);font-size:11px;line-height:1.35;overflow-wrap:anywhere}.creative-error{margin:0;padding:9px 10px;border:1px solid rgba(239,68,68,.24);border-radius:var(--radius-sm);background:#fff7f7;color:#b42318;font-size:12px;line-height:1.45}.code-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.code-editor-grid label{display:grid;gap:5px}.code-editor-grid label span{color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.code-editor-grid textarea{min-height:126px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45}.storyboard-creative-pane{gap:10px}.storyboard-frame-list{display:grid;gap:10px}.storyboard-frame-card{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.storyboard-frame-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.storyboard-frame-grid label{display:grid;gap:6px}.storyboard-frame-grid label span{color:var(--muted);font-size:12px;font-weight:850}.storyboard-frame-grid input,.storyboard-frame-grid textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 10px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;line-height:1.5}.storyboard-frame-grid textarea{min-height:74px;resize:vertical}.code-preview-frame{width:100%;min-height:220px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}@media(max-width:780px){.code-editor-grid,.storyboard-frame-grid{grid-template-columns:1fr}}.portfolio-toolbox{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}.portfolio-toolbox>strong{color:var(--ink);font-size:13px}.portfolio-tool-row{display:flex;flex-wrap:wrap;gap:7px}.portfolio-tool-result{display:grid;gap:6px;border:1px solid rgba(29,78,216,.12);border-radius:var(--radius-sm);background:#f8fbff;padding:10px}.portfolio-tool-result.is-blocked{border-color:#e11d4829;background:#fff1f2}.portfolio-tool-result span{color:var(--blue);font-size:12px;font-weight:900}.portfolio-tool-result ul{margin:0;padding-left:16px;list-style:disc}.portfolio-reflection-save{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-top:1px solid rgba(29,78,216,.12);padding-top:8px}.portfolio-reflection-save span{color:var(--muted);font-size:12px}.portfolio-reflection-summary{display:grid;gap:6px;border:1px solid rgba(16,185,129,.18);border-radius:var(--radius-sm);background:#f0fdf4;padding:10px}.portfolio-reflection-summary span{color:#047857;font-size:12px;font-weight:900}.portfolio-reflection-summary p,.portfolio-reflection-summary em{margin:0;color:#065f46;font-size:12px;line-height:1.55}.publish-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:14px}.publish-row p{margin:4px 0 0;color:var(--muted)}.course-list-section{display:grid;gap:14px}.teacher-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.program-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.program-summary-grid article{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.program-summary-grid span,.program-summary-grid em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.program-summary-grid strong{font-size:24px}.outcome-summary-panel{display:grid;gap:12px;padding:14px;border:1px solid #dbeafe;border-radius:var(--radius);background:#f8fbff}.outcome-summary-panel .section-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.outcome-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.outcome-summary-grid article{display:grid;gap:5px;min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:var(--radius-sm);background:var(--surface)}.outcome-summary-grid span,.outcome-summary-grid em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.outcome-summary-grid strong{color:var(--ink);font-size:22px}.program-task-panel{display:grid;gap:12px;padding:14px;border:1px solid #fed7aa;border-radius:var(--radius);background:#fffaf3}.program-task-panel .section-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.task-reminder-notice{display:flex;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;border:1px solid rgba(37,87,214,.16);border-radius:var(--radius-sm);background:#f8fbff;color:#1e3a8a;font-size:12px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}.program-task-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.program-task-metrics article{display:grid;gap:5px;min-width:0;padding:12px;border:1px solid rgba(251,146,60,.22);border-radius:var(--radius-sm);background:var(--surface)}.program-task-metrics span,.program-task-metrics em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.program-task-metrics strong{color:var(--ink);font-size:22px}.program-task-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:12px;align-items:start}.program-task-list,.program-task-students{display:grid;gap:9px;min-width:0}.program-task-list h5,.program-task-students h5{margin:0;color:var(--ink);font-size:13px}.program-task-priority-row,.program-task-student-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:var(--radius-sm);background:var(--surface)}.program-task-priority-row div,.program-task-student-row div{min-width:0}.program-task-priority-row strong,.program-task-student-row strong{display:block;margin-top:7px;color:var(--ink);font-size:13px;line-height:1.35}.program-task-priority-row p,.program-task-student-row p,.program-task-priority-row em,.program-task-student-row em{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45;font-style:normal;overflow-wrap:anywhere}.program-task-priority-row .compact-btn{flex:0 0 auto;align-self:center}.program-task-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex:0 0 auto;max-width:240px}.program-task-actions .compact-btn{align-self:auto}.program-task-priority-row .program-task-reminder{display:inline-flex;padding:7px 9px;border-radius:8px;background:#f8fbff;color:#1e3a8a}.outcome-student-list{display:grid;gap:10px}.outcome-student-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(160px,.8fr);gap:12px;min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:var(--radius-sm);background:var(--surface)}.outcome-student-card>div{min-width:0}.outcome-student-card strong{display:block;margin-top:6px}.outcome-student-card p,.outcome-student-card em{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5;font-style:normal}.outcome-student-card .outcome-evidence-chain{color:#1d4ed8;font-weight:850}.outcome-student-card .outcome-evidence-source{color:#475569;overflow-wrap:anywhere}.outcome-artifact-list{display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-end;gap:6px}.outcome-artifact-list-title{flex-basis:100%;margin:0 0 2px;color:#64748b;font-size:11px;font-weight:900;text-align:right}.outcome-artifact-list span{max-width:100%;padding:5px 8px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:900}.outcome-artifact-list em{color:var(--muted);font-size:12px;font-style:normal}.program-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.program-panel{display:grid;align-content:start;gap:10px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff}.program-panel h4{margin:0;font-size:15px}.program-row-card{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:var(--radius-sm);background:var(--surface)}.program-row-card div{min-width:0}.program-row-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.program-row-card p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.program-row-card em{display:block;margin-top:4px;color:var(--soft);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.program-review-actions{display:grid;justify-items:end;gap:8px;flex:0 0 auto}.empty-state.compact{padding:14px}.teacher-course-grid article,.teacher-plan-grid article,.review-queue article{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:14px}.teacher-course-grid strong,.teacher-plan-grid strong,.review-queue strong{display:block;margin-top:9px;line-height:1.35}.teacher-course-grid p,.teacher-plan-grid p,.review-queue p{margin:7px 0 0;color:var(--muted);line-height:1.6}.plan-list-section,.review-list-section{display:grid;gap:14px}.management-filter-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(210px,max-content) minmax(150px,max-content) max-content;gap:8px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:9px}.plan-management-toolbar{grid-template-columns:minmax(220px,1fr) minmax(150px,max-content) max-content}.segmented-filter{display:inline-grid;grid-auto-flow:column;gap:4px;min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:4px}.segmented-filter button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);padding:0 9px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.segmented-filter button.is-active{background:#eff6ff;color:var(--blue);box-shadow:inset 0 0 0 1px #2563eb1f}.segmented-filter strong{color:inherit;font-size:11px}.management-filter-toolbar select{min-width:0;min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);padding:0 10px;font:inherit;font-size:13px;font-weight:780}.toolbar-result-count{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border-radius:var(--radius);background:#fff;color:var(--muted);padding:0 10px;font-size:12px;font-weight:900;white-space:nowrap}.teacher-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.teacher-plan-grid em{display:block;margin-top:8px;color:var(--soft);font-size:12px;font-style:normal;font-weight:800}.review-queue{display:grid;gap:10px}.review-queue article{grid-template-columns:minmax(0,1.4fr) minmax(170px,.8fr) auto;align-items:center}.review-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.review-evidence span{border-radius:999px;background:#fff;color:var(--muted);padding:6px 8px;font-size:12px;font-weight:900;text-align:center}.review-assignment-context{color:var(--blue)!important;font-size:12px;font-weight:900}.teacher-course-grid>.empty-state,.teacher-plan-grid>.empty-state{grid-column:1 / -1}.course-card-topline,.course-switcher-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.course-card-topline{align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}.status-pill.locked{background:#eef2ff;color:#3730a3}.status-pill.danger{background:#fff1f2;color:var(--rose)}.danger-outline-btn{border-color:#e11d483d;color:var(--rose)}.danger-outline-btn:hover:not(:disabled){background:#fff1f2;border-color:#e11d486b}.course-modal{width:min(560px,100%)}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.modal-form-grid.single{grid-template-columns:1fr}.modal-form-grid label,.delete-confirm-field{display:grid;gap:7px}.modal-form-grid label span,.delete-confirm-field span{color:var(--muted);font-size:12px;font-weight:900}.modal-form-grid input,.modal-form-grid select,.delete-confirm-field input{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:11px 12px}.modal-form-grid input:focus,.modal-form-grid select:focus,.delete-confirm-field input:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.admin-managed-note{display:flex;gap:8px;align-items:center;border:1px solid rgba(15,159,149,.18);border-radius:var(--radius);background:var(--teal-50);color:var(--teal);padding:10px 12px;font-size:12px;font-weight:800}.workbench-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin:0 auto}.workbench-nav a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:10px 12px;text-decoration:none;box-shadow:0 8px 20px #1018280a}.workbench-nav a:hover{border-color:#1d4ed83d;background:#f8fbff}.workbench-nav svg{color:var(--blue)}.workbench-nav span{min-width:0;font-size:13px;font-weight:900}.workbench-nav strong{display:grid;place-items:center;min-width:28px;height:24px;border-radius:999px;background:var(--blue-50);color:var(--blue);font-size:12px}#teacher-courses,#teacher-plans,#teacher-reviews{scroll-margin-top:18px}.review-modal{width:min(680px,100%)}.program-artifact-review-modal{width:min(980px,calc(100vw - 32px));max-height:min(90vh,900px);overflow:auto}.program-review-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.program-review-header p{margin:4px 0 0;color:var(--muted)}.program-review-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:12px}.program-review-subblock{display:grid;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.program-review-subblock strong{font-size:12px;color:var(--muted)}.review-gallery{margin-top:12px}.review-gallery a{display:block;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;background:#fff}.program-rubric-list,.program-evidence-list,.program-storyboard-list{display:grid;gap:8px}.program-rubric-list article,.program-evidence-list article,.program-storyboard-list article{display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.program-rubric-list article{grid-template-columns:minmax(0,1fr) auto}.program-rubric-list p,.program-evidence-list p,.program-evidence-list em,.program-storyboard-list p,.program-storyboard-list em,.program-evidence-list a{grid-column:1 / -1;margin:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.program-rubric-list p,.program-evidence-list p,.program-evidence-list em,.program-storyboard-list p,.program-storyboard-list em{color:var(--muted)}.program-evidence-list a{color:var(--blue);font-weight:800;text-decoration:none}.program-rubric-list span,.program-evidence-list span,.program-storyboard-list span{color:var(--blue);font-size:11px;font-weight:900}.program-code-preview{width:100%;min-height:260px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.program-version-list{display:grid;gap:8px}.program-version-list article{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.program-version-list article>div{display:flex;justify-content:space-between;gap:10px}.program-version-list span,.program-version-list em{color:var(--muted);font-size:12px;line-height:1.45}.program-version-list p{margin:0;color:var(--ink);font-size:13px;line-height:1.6;overflow-wrap:anywhere}.program-code-comparison{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid rgba(29,78,216,.16);border-radius:var(--radius-sm);background:#f8fbff}.program-code-comparison p{margin:0;color:var(--muted)}.program-code-comparison div{display:flex;flex-wrap:wrap;gap:6px}.program-code-comparison span{padding:4px 8px;border-radius:999px;background:var(--blue-50);color:var(--blue);font-size:11px;font-weight:900}.review-modal h4{margin:0 0 8px}.review-submission-summary{border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.review-submission-summary p{margin:0 0 12px}.review-submission-summary .submission-content{white-space:pre-wrap;line-height:1.65}.revision-history-item{border-top:1px solid rgba(148,163,184,.25);padding-top:10px}.revision-history-item+.revision-history-item{margin-top:10px}.revision-history-item strong,.revision-history-item em{display:block;line-height:1.5}.revision-history-item em{color:var(--soft);font-size:12px;font-style:normal}.review-assignment-context-card{background:#f8fbff;border-color:#1d4ed829}.review-assignment-context-card small{display:block;margin-top:9px;color:var(--soft);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.review-evidence.large{grid-template-columns:repeat(4,minmax(0,1fr))}.review-feedback-field{display:grid;gap:7px}.review-feedback-field span{color:var(--muted);font-size:12px;font-weight:900}.review-feedback-field textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:11px 12px;resize:vertical}.review-feedback-field textarea:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.course-switcher{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:var(--shadow)}.course-switcher-compact{gap:12px;padding:14px 16px;box-shadow:0 8px 22px #1018280b}.course-switcher h2{margin:2px 0 0;font-size:22px}.course-switcher-compact .course-switcher-head{align-items:center}.course-switcher-compact .button-row{gap:8px}.course-switcher-compact .button-row .secondary-btn{min-height:40px;padding-inline:12px}.prep-command-heading{align-items:end;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px;box-shadow:0 8px 22px #1018280a}.prep-command-heading h2{font-size:23px;line-height:1.25}.prep-command-heading .button-row{justify-content:flex-end}.prep-workflow-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.prep-workflow-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px;box-shadow:0 8px 22px #1018280d}.prep-workflow-index{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--panel);color:var(--muted);font-size:12px;font-weight:900}.prep-workflow-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.prep-workflow-title strong{min-width:0;color:var(--ink);font-size:14px;line-height:1.35}.prep-workflow-title span{flex:0 0 auto;border-radius:999px;background:var(--panel);color:var(--muted);padding:4px 7px;font-size:11px;font-weight:900}.prep-workflow-step p{margin:7px 0 10px;color:var(--muted);font-size:12px;line-height:1.5}.prep-workflow-step.state-ready{border-color:#0596693d}.prep-workflow-step.state-ready .prep-workflow-index,.prep-workflow-step.state-ready .prep-workflow-title span{background:#ecfdf3;color:#065f46}.prep-workflow-step.state-active{border-color:#1d4ed83d}.prep-workflow-step.state-active .prep-workflow-index,.prep-workflow-step.state-active .prep-workflow-title span{background:var(--blue-50);color:var(--blue)}.prep-workflow-step.state-attention{border-color:#d9770647}.prep-workflow-step.state-attention .prep-workflow-index,.prep-workflow-step.state-attention .prep-workflow-title span{background:var(--amber-50);color:#92400e}.prep-workflow-step.state-blocked{border-color:#e11d4833}.prep-workflow-step.state-blocked .prep-workflow-index,.prep-workflow-step.state-blocked .prep-workflow-title span{background:#fff1f2;color:var(--rose)}.course-chip-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.course-chip{display:grid;gap:3px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfdff;padding:10px 11px;color:var(--ink);text-align:left;cursor:pointer}.course-chip.active{border-color:#1d4ed85c;background:var(--blue-50);color:var(--blue)}.course-chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35;font-size:14px}.course-chip span{color:var(--muted);font-size:12px;font-weight:800}.admin-shell{display:grid;gap:16px}.admin-command-center{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:18px}.admin-command-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-command-card{position:relative;display:grid;gap:7px;min-width:0;min-height:154px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff;color:var(--ink);padding:14px;text-decoration:none;overflow:hidden}.admin-command-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#2563eb2e}.admin-command-card.is-good:before{background:#05966947}.admin-command-card.is-attention:before{background:#d9770652}.admin-command-card.is-blocked:before{background:#e11d4852}.admin-command-card svg{color:var(--blue)}.admin-command-card span{color:var(--blue);font-size:12px;font-weight:900}.admin-command-card strong{display:block;min-width:0;overflow:hidden;color:var(--ink);font-size:18px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.admin-command-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.admin-ops-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px}.admin-ops-nav a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 8px;align-items:center;min-height:var(--control-height);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:8px 10px;text-decoration:none;box-shadow:0 6px 16px #10182808}.admin-ops-nav a:hover{border-color:#1d4ed83d;background:#f8fbff}.admin-ops-nav svg{grid-row:span 2;color:var(--blue)}.admin-ops-nav span{min-width:0;overflow:hidden;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-ops-nav strong{min-width:0;overflow:hidden;color:var(--muted);font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.admin-metric-grid article,.admin-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.admin-metric-grid article{display:grid;gap:7px;padding:13px}.admin-metric-grid article>div{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius);background:var(--blue-50);color:var(--blue)}.admin-metric-grid span,.admin-log-list span,.admin-card-list span{color:var(--muted);font-size:12px;font-weight:800}.admin-metric-grid strong{font-size:24px}.admin-metric-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.admin-risk-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-risk-strip article{display:grid;gap:6px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:13px;box-shadow:0 8px 22px #1018280a}.admin-risk-strip article.state-good{border-color:#05966938}.admin-risk-strip article.state-attention{border-color:#d9770642}.admin-risk-strip article.state-danger{border-color:#e11d4838}.admin-risk-strip span{color:var(--muted);font-size:11px;font-weight:900}.admin-risk-strip strong{color:var(--ink);font-size:18px;line-height:1.3}.admin-risk-strip p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.admin-security-gate{gap:12px}.admin-security-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.admin-security-grid article{display:grid;gap:6px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.admin-security-grid article.state-good{border-color:#05966933}.admin-security-grid article.state-attention{border-color:#d977063d}.admin-security-grid article.state-blocked{border-color:#e11d4833}.admin-security-grid span{color:var(--muted);font-size:11px;font-weight:900}.admin-security-grid strong{font-size:15px;line-height:1.35}.admin-security-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.school-delivery-panel{gap:16px}.school-delivery-guidance,.school-delivery-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.school-delivery-guidance article,.school-delivery-preview article{display:grid;gap:6px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.school-delivery-guidance strong{color:var(--ink);font-size:14px}.school-delivery-guidance p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.school-delivery-form{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(96px,.7fr)) repeat(3,minmax(110px,.8fr)) max-content;gap:9px;align-items:end}.school-delivery-form label{display:grid;gap:6px;min-width:0}.school-delivery-form span,.school-delivery-preview span{color:var(--muted);font-size:11px;font-weight:900}.school-delivery-form input{min-width:0;height:var(--control-height);border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:10px 11px}.school-delivery-form input:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.school-delivery-preview{grid-template-columns:repeat(5,minmax(0,1fr))}.school-delivery-preview strong{min-width:0;overflow-wrap:anywhere;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:14px;line-height:1.35}.school-delivery-preview .delivery-preview-error{grid-column:1 / -1;border-color:#e11d482e;background:#fff1f2}.school-delivery-summary{margin:0;border:1px solid rgba(5,150,105,.18);border-radius:var(--radius);background:#f0fdf4;color:#047857;padding:10px 12px;font-weight:850;line-height:1.55}.roster-import-audit-panel{gap:12px}.roster-import-list article,.gradebook-export-list article{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr) minmax(190px,.9fr);gap:12px;align-items:center}.roster-import-metrics{display:flex;flex-wrap:wrap;gap:6px}.roster-import-metrics span{border:1px solid rgba(29,78,216,.12);border-radius:999px;background:#eff6ff;color:#1d4ed8;padding:4px 8px;font-size:11px;font-weight:900}.roster-import-list em,.gradebook-export-list em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.45}#admin-health,#admin-model-routing,#admin-ai-jobs,#admin-programs,#admin-school-delivery,#admin-accounts,#admin-classes,#admin-usage,#admin-interactions,#admin-security,#admin-reports,#admin-contracts,#admin-audit,#admin-school-learning{scroll-margin-top:18px}.admin-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px}.admin-grid.lower{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-panel{display:grid;align-content:start;gap:14px;min-width:0;padding:16px}.admin-panel.wide{grid-column:1 / -1}.system-health-panel{margin-top:-2px}.system-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.health-check-card{display:grid;min-width:0;align-content:start;gap:9px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:13px}.health-check-card>div{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:10px}.health-check-card strong{min-width:0;overflow-wrap:anywhere;line-height:1.35}.health-check-card p,.system-health-error{margin:0;overflow-wrap:anywhere;color:var(--muted);line-height:1.55}.health-check-card em{overflow-wrap:anywhere;color:var(--amber);font-size:12px;font-style:normal;font-weight:800;line-height:1.45}.health-check-card.placeholder{grid-column:1 / -1}.system-health-error{border:1px solid rgba(225,29,72,.18);border-radius:var(--radius);background:#fff1f2;color:var(--rose);padding:10px 12px;font-weight:800}.system-runtime-strip{display:flex;flex-wrap:wrap;gap:8px}.system-runtime-strip span{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:12px;font-weight:850;padding:7px 10px}.model-routing-panel{gap:16px}.model-routing-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.model-routing-summary article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px 11px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:13px}.model-routing-summary svg{grid-row:span 2;color:var(--blue)}.model-routing-summary strong,.model-key-list strong{display:block;line-height:1.35}.model-routing-summary span,.model-key-list span{color:var(--muted);font-size:12px;font-weight:850}.model-routing-summary p,.model-key-list p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.model-routing-form{grid-template-columns:repeat(4,minmax(140px,1fr))}.model-key-list{display:grid;gap:8px}.model-key-list article{display:grid;grid-template-columns:minmax(0,1.25fr) 120px 150px 82px 38px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:11px}.model-key-list .model-key-empty{display:grid;grid-template-columns:1fr}.admin-inline-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.admin-inline-form input,.admin-inline-form select{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:10px 11px}.admin-inline-form input:focus,.admin-inline-form select:focus{border-color:#1d4ed8a6;box-shadow:0 0 0 4px #1d4ed81a}.admin-binding-form{grid-template-columns:minmax(150px,.75fr) minmax(210px,1fr) minmax(150px,.75fr) minmax(210px,1fr) max-content;align-items:center}.admin-grid .admin-binding-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid .admin-binding-form>button{grid-column:1 / -1;justify-self:end}.admin-binding-search-field{min-height:44px}.admin-list-toolbar,.review-filter-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(132px,max-content) minmax(126px,max-content) minmax(132px,max-content) max-content;gap:8px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:9px}.admin-list-toolbar.compact,.review-filter-toolbar,.admin-list-toolbar.audit-toolbar{grid-template-columns:minmax(220px,1fr) minmax(150px,max-content) max-content}.toolbar-search-field{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--muted);padding:0 10px}.toolbar-search-field input,.admin-list-toolbar select,.review-filter-toolbar select{min-width:0;min-height:40px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:780;outline:none}.admin-list-toolbar select,.review-filter-toolbar select{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:0 10px}.admin-list-toolbar span,.review-filter-toolbar span{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border-radius:var(--radius);background:#fff;color:var(--muted);padding:0 10px;font-size:12px;font-weight:900;white-space:nowrap}.list-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:9px 10px}.list-pagination span,.list-pagination strong{color:var(--muted);font-size:12px;font-weight:900}.list-pagination div{display:inline-flex;align-items:center;gap:8px}.admin-programs-panel{gap:16px}.admin-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-program-grid article{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:13px}.admin-program-grid svg{color:var(--blue)}.admin-program-grid span,.program-assignment-list span,.program-assignment-list em,.program-operation-note{color:var(--muted);font-size:12px;font-weight:850}.admin-program-grid strong,.program-assignment-list strong{display:block;line-height:1.35}.admin-program-grid p,.program-assignment-list p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.program-operations-toolbar{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px;align-items:center}.program-assignment-form{grid-template-columns:minmax(190px,.8fr) minmax(240px,1fr) max-content}.program-class-search-field{min-height:44px}.program-operation-note{margin:0;border:1px solid rgba(13,148,136,.16);border-radius:var(--radius);background:#f0fdfa;color:#0f766e;padding:10px 12px}.program-assignment-list{display:grid;gap:8px}.program-assignment-list article{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(120px,.8fr) 86px 150px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.program-assignment-list .program-assignment-empty{grid-template-columns:1fr}.admin-table,.admin-card-list,.admin-log-list,.usage-bars{display:grid;gap:8px}.admin-table article{display:grid;grid-template-columns:minmax(0,1.15fr) 84px minmax(130px,.8fr) 38px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:10px}.admin-table .admin-empty-row,.admin-card-list .admin-empty-row,.admin-log-list .admin-empty-row{grid-template-columns:minmax(0,1fr);background:#fff;border-style:dashed}.admin-table strong,.admin-log-list strong,.admin-card-list strong{display:block;line-height:1.35}.contract-list strong{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px}.admin-table p,.admin-log-list p,.admin-card-list p{margin:4px 0 0;color:var(--muted);font-size:12px}.admin-table article>span{color:var(--muted);font-size:12px;font-weight:900}.admin-card-list article,.admin-log-list article,.usage-bars article{border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.ai-job-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.report-export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-control-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:12px}.report-control-card label{display:grid;gap:7px}.report-control-card .report-search-field{min-height:44px}.report-control-card label span{color:var(--muted);font-size:12px;font-weight:900}.report-control-card select{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);outline:none;padding:10px 11px}.report-filter-count{margin:-4px 0 0;color:var(--muted);font-size:12px;font-weight:780}.report-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.report-summary-grid article{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:10px}.report-summary-grid strong{display:block;font-size:22px}.report-summary-grid span,.monitor-strip span{color:var(--muted);font-size:12px;font-weight:900}.monitor-strip{display:flex;flex-wrap:wrap;gap:7px}.monitor-strip span{border:1px solid rgba(20,184,166,.18);border-radius:999px;background:#14b8a614;color:#0f766e;padding:6px 9px}.report-trace-preview{display:grid;gap:6px;border:1px solid rgba(37,99,235,.16);border-radius:var(--radius);background:#fff;padding:10px}.report-trace-preview strong{color:var(--ink);font-size:13px}.report-trace-preview span{color:var(--blue);font-size:12px;font-weight:900}.report-trace-preview p,.report-trace-preview em{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.assistant-review-dashboard{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:10px;border:1px solid rgba(37,99,235,.14);border-radius:var(--radius);background:#fbfdff;padding:12px}.assistant-review-heading{display:flex;grid-column:1 / -1;justify-content:space-between;gap:12px}.assistant-review-heading strong{display:block;color:var(--ink);font-size:16px}.assistant-review-heading p,.assistant-review-empty{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.assistant-review-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.assistant-review-metrics article{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;padding:8px}.assistant-review-metrics strong{display:block;color:var(--ink);font-size:18px}.assistant-review-metrics span{color:var(--muted);font-size:12px;font-weight:900}.assistant-quality-dashboard{display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:10px}.assistant-review-empty{grid-column:1 / -1;border:1px dashed rgba(100,116,139,.22);border-radius:var(--radius-sm);background:#fff;padding:9px 10px}.assistant-quality-dashboard>div:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center}.assistant-quality-dashboard strong{min-width:0;color:var(--ink);font-size:13px}.assistant-quality-dashboard p{grid-column:1 / -1;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.assistant-quality-dimensions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.assistant-quality-dimensions article{display:grid;gap:4px;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc;padding:7px}.assistant-quality-dimensions article.quality-pass{border-color:#0596692e;background:#f0fdf4}.assistant-quality-dimensions article.quality-warn{border-color:#d9770638;background:#fffbeb}.assistant-quality-dimensions article.quality-fail{border-color:#e11d482e;background:#fff1f2}.assistant-quality-dimensions strong,.assistant-quality-dimensions span,.assistant-quality-dimensions em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-quality-dimensions strong{font-size:12px}.assistant-quality-dimensions span{color:var(--ink);font-size:14px;font-weight:900}.assistant-quality-dimensions em{color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.assistant-review-action-list{display:grid;gap:7px}.assistant-review-action-list button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);padding:9px 10px;text-align:left;cursor:pointer}.assistant-review-action-list button.active{border-color:#2563eb5c;box-shadow:0 0 0 3px #2563eb14}.assistant-review-action-list strong,.assistant-review-action-list em{min-width:0}.assistant-review-action-list em{grid-column:2;color:var(--muted);font-size:12px;font-style:normal;line-height:1.45}.admin-card-list em{display:block;margin-top:7px;color:var(--blue);font-size:12px;font-style:normal;font-weight:900}.usage-bars article{display:grid;gap:9px}.usage-bars article>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-log-list article{display:grid;gap:4px}@media(max-width:1180px){.lesson-support-header{grid-template-columns:1fr}.lesson-support-actions{justify-content:flex-start}.lesson-support-list-columns,.dashboard-grid,.prep-layout,.admin-grid,.admin-grid.lower,.report-export-grid,.model-routing-summary,.portfolio-hero{grid-template-columns:1fr}.workbench-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-primary-actions,.assistant-review-dashboard{grid-template-columns:1fr}.dashboard-side,.prep-side,.prep-workflow-rail,.metric-grid,.admin-metric-grid,.portfolio-summary-grid,.student-task-metrics,.program-summary-grid,.program-task-metrics,.outcome-summary-grid,.admin-risk-strip,.admin-security-grid,.school-delivery-guidance,.school-delivery-preview,.system-health-grid,.admin-program-grid,.admin-command-cards,.assistant-review-metrics,.assistant-quality-dimensions,.prep-strip,.material-list,.teacher-course-grid,.teacher-plan-grid,.program-dashboard-grid,.course-chip-row{grid-template-columns:repeat(2,minmax(0,1fr))}.student-task-row,.program-task-columns{grid-template-columns:1fr}.review-queue article{grid-template-columns:1fr}.builder-grid{grid-template-columns:minmax(190px,230px) minmax(0,1fr)}.section-editor{grid-template-columns:1fr}.section-editor>.teaching-support-editor,.section-editor>:not(.teaching-support-editor){grid-column:1}.section-editor>.teaching-support-editor{grid-row:auto;position:static;max-height:none}.admin-inline-form,.admin-list-toolbar,.admin-list-toolbar.compact,.admin-list-toolbar.audit-toolbar,.management-filter-toolbar,.plan-management-toolbar,.review-filter-toolbar,.school-delivery-form,.program-operations-toolbar,.model-routing-form,.model-key-list article{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-list-toolbar span,.toolbar-result-count,.review-filter-toolbar span{justify-content:flex-start}.classroom-body,.classroom-body.resizable-classroom{grid-template-columns:1fr}.admin-ops-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.right-panel{grid-column:1 / -1;height:460px;border-top:1px solid var(--line)}.panel-resize-handle,.right-panel-toolbar{display:none}}@media(max-width:860px){.lesson-support-header,.lesson-support-editor .assistant-tab-panel{padding:16px}.lesson-support-state-strip{align-items:flex-start;flex-direction:column;padding-inline:16px}.lesson-support-tabs{padding-inline:16px}.lesson-support-actions{align-items:stretch;flex-direction:column}.lesson-support-status-control{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-support-form-grid,.lesson-guidance-fields{grid-template-columns:1fr}.lesson-guidance-question{grid-column:auto}.lesson-assistant-list-row{grid-template-columns:28px minmax(0,1fr)}.lesson-assistant-row-actions{grid-column:2}.login-shell{grid-template-columns:1fr}.login-visual{min-height:430px}.login-art{width:min(100%,720px);margin:24px auto}.login-panel{padding:30px}.login-caption strong{font-size:42px}.dashboard-grid,.prep-layout,.admin-shell,.workbench-nav{width:min(100% - 28px,720px)}.course-focus,.teacher-primary-actions,.upload-panel,.classroom-body,.classroom-body.resizable-classroom{grid-template-columns:1fr}.course-cover{min-height:210px}.teacher-home-command{padding:14px}.dashboard-side,.prep-side,.portfolio-summary-grid,.portfolio-showcase-summary,.portfolio-showcase-grid,.portfolio-showcase-picker,.program-summary-grid,.workbench-nav,.admin-ops-nav,.matrix-table,.prep-workflow-rail,.metric-grid,.admin-metric-grid,.admin-risk-strip,.admin-security-grid,.school-delivery-guidance,.school-delivery-preview,.system-health-grid,.admin-command-cards,.prep-strip,.material-list,.assistant-review-metrics,.assistant-quality-dimensions,.teacher-course-grid,.teacher-plan-grid,.program-dashboard-grid,.course-chip-row,.outcome-summary-grid,.builder-grid,.context-editor,.modal-form-grid,.outcome-student-card{grid-template-columns:1fr}.portfolio-showcase-editor{padding:18px}.portfolio-showcase-editor .section-heading,.portfolio-showcase-picker-heading,.portfolio-showcase-actions{align-items:stretch;flex-direction:column}.portfolio-showcase-meter>div:first-child{align-items:flex-start;flex-direction:column}.admin-inline-form,.admin-grid .admin-binding-form,.admin-list-toolbar,.admin-list-toolbar.compact,.admin-list-toolbar.audit-toolbar,.management-filter-toolbar,.plan-management-toolbar,.review-filter-toolbar,.school-delivery-form,.admin-table article,.program-assignment-list article,.program-operations-toolbar,.model-routing-form,.model-key-list article,.review-evidence.large{grid-template-columns:1fr}.admin-shell>.app-header{position:static;align-items:stretch;flex-direction:column;gap:12px;padding:14px}.admin-shell>.app-header .header-actions{justify-content:stretch;width:100%}.admin-shell>.app-header .header-actions>button{flex:1}.admin-shell .compact-btn{min-height:var(--control-height)}.course-switcher-head,.publish-row,.list-pagination{align-items:stretch;flex-direction:column}.list-pagination div{justify-content:space-between}.classroom-shell{height:auto;overflow:visible}.classroom-topbar{flex-direction:column;align-items:stretch;padding:12px}.classroom-body{height:auto;min-height:0}.outline-panel,.content-panel,.right-panel{min-height:auto;overflow:visible}.right-panel{height:auto}.classroom-deep .outline-panel{max-height:320px}.classroom-deep .outline-list{min-height:0;overflow-y:auto}.classroom-deep .content-panel{max-height:min(560px,52vh);overflow-y:auto}.classroom-deep .right-panel{min-height:min(620px,78vh)}.lesson-article{width:calc(100% - 28px);margin:18px auto}.lesson-article h2{font-size:32px;line-height:1.18}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.hand-responded-toast{color:var(--good);font-size:13px;margin-inline:8px}.hand-raise-actions{display:flex;align-items:center;gap:8px}.hand-raise-actions .text-btn{font-size:12px;color:var(--primary);background:transparent;border:none;cursor:pointer;padding:2px 6px}.hand-raise-actions .text-btn:hover{text-decoration:underline}.teacher-plan-grouped-list,.review-grouped-queue{display:flex;flex-direction:column;gap:12px}.teacher-plan-course-header,.review-class-header{display:flex;align-items:center;gap:12px;width:100%;background:transparent;border:1px solid var(--line);border-radius:var(--radius);padding:12px;cursor:pointer;text-align:left}.teacher-plan-course-header:hover,.review-class-header:hover{background:var(--bg-soft)}.group-chevron svg{transition:transform .2s ease}.group-chevron .collapsed{transform:rotate(-90deg)}.teacher-plan-class-list,.review-class-submissions{padding-left:16px;display:flex;flex-direction:column;gap:12px;margin-top:8px}.teacher-plan-class-header{display:flex;align-items:center;gap:8px;margin:8px 0 4px}.homework-set{border-top:2px solid var(--line);padding-top:16px}.homework-submission-note{display:grid;gap:8px;border:1px solid rgba(124,58,237,.2);border-radius:var(--radius);background:#7c3aed0f;padding:12px 14px}.homework-submission-note strong{color:var(--violet)}.homework-submission-note ol{display:grid;gap:4px;margin:0;padding-left:20px;color:#344054;line-height:1.55}.homework-submission-note p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.homework-set .practice-question h4{white-space:pre-line}.ai-review-badge{display:flex;align-items:center;gap:8px;margin-top:8px}.mini-app-sandbox{display:flex;flex-direction:column;gap:10px}.mini-app-sandbox-frame{width:100%;min-height:520px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.mini-app-sandbox-loading,.mini-app-sandbox-error,.mini-app-sandbox-ready{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius);font-size:13px}.mini-app-sandbox-loading{color:var(--muted);background:var(--blue-50)}.mini-app-sandbox-loading .spin{animation:spin 1s linear infinite}.mini-app-sandbox-error{color:var(--rose);background:#fff1f2}.mini-app-sandbox-ready{color:var(--green);background:var(--teal-50)}@keyframes spin{to{transform:rotate(360deg)}}.experiment-set{display:flex;flex-direction:column;gap:12px}.experiment-intro-card{background:linear-gradient(135deg,var(--amber-50),var(--orange-50));border-color:#f59e0b3d}.experiment-intro-card>div{display:flex;align-items:center;gap:10px;color:var(--amber)}.experiment-intro-card>div strong{color:var(--ink)}.experiment-intro-card p{color:#78350f}.mini-app-activity-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.mini-app-activity-card.expanded{gap:14px}.mini-app-activity-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mini-app-activity-title{display:flex;flex-direction:column;gap:2px}.mini-app-activity-header strong{font-size:14px;color:var(--ink)}.mini-app-activity-meta{font-size:12px;color:var(--muted)}.mini-app-activity-body{display:flex;flex-direction:column;gap:12px}.mini-app-activity-collapsed,.mini-app-activity-teacher-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.mini-app-activity-collapsed .soft-note,.mini-app-activity-teacher-actions .soft-note{margin:0}.mini-app-activity-expanded{display:flex;flex-direction:column;gap:10px}.mini-app-collapse-btn{align-self:flex-start}.mini-app-artifact-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px}.mini-app-artifact-card{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;background:var(--surface);display:flex;flex-direction:column;gap:8px}.mini-app-artifact-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.mini-app-artifact-kind{flex-shrink:0;padding:2px 8px;border-radius:999px;background:var(--blue-50);color:var(--blue);font-weight:500}.mini-app-artifact-image-link{display:block;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line)}.mini-app-artifact-image{display:block;width:100%;height:auto;object-fit:contain}.mini-app-artifact-download{justify-content:center;width:100%}.mini-app-artifact-filename{font-size:13px;color:var(--muted);word-break:break-all}.mini-app-artifact-notes{margin:0;font-size:12px;color:var(--muted);line-height:1.5}@media(max-width:720px){.mini-app-sandbox-frame{min-height:420px}.mini-app-artifact-gallery{grid-template-columns:1fr}}.artifact-validation-note{grid-column:1 / -1;border-radius:var(--radius);background:#fff7ed;border:1px solid rgba(245,158,11,.28);padding:10px 12px;color:#92400e;font-size:13px;line-height:1.55}.artifact-validation-note strong{color:#78350f;font-weight:900}.class-learning-dashboard-v2{display:flex;flex-direction:column;gap:20px;margin-top:16px}.dashboard-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.dashboard-kpi-card{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 10px);padding:14px 10px;text-align:center;box-shadow:0 1px 2px #0000000a}.dashboard-kpi-card strong{font-size:22px;font-weight:800;color:var(--foreground, #111827);line-height:1.2}.dashboard-kpi-card span{font-size:12px;color:var(--muted, #6b7280);margin-top:4px}.dashboard-kpi-card.attention strong{color:#dc2626}.dashboard-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.dashboard-chart-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 10px);padding:16px;box-shadow:0 1px 2px #0000000a}.dashboard-chart-card.wide{grid-column:1 / -1}.dashboard-chart-card h4{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--foreground, #111827)}.dashboard-chart-body{min-height:240px}.dashboard-heatmap-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 10px);padding:16px;box-shadow:0 1px 2px #0000000a}.dashboard-heatmap-card h4{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--foreground, #111827)}.knowledge-heatmap{display:flex;flex-direction:column;gap:4px;overflow-x:auto}.heatmap-header,.heatmap-row{display:grid;grid-template-columns:100px repeat(var(--heatmap-columns, 12),40px);gap:4px;align-items:center}.heatmap-corner,.heatmap-column-label,.heatmap-row-label{font-size:11px;color:var(--muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heatmap-column-label{text-align:center;transform:rotate(-30deg);transform-origin:bottom left;height:36px;line-height:36px}.heatmap-row-label{text-align:right;padding-right:8px}.heatmap-cell{width:36px;height:24px;border-radius:4px;display:inline-block}.heatmap-cell.mastery-mastered{background:#22c55e}.heatmap-cell.mastery-developing{background:#f59e0b}.heatmap-cell.mastery-not_mastered{background:#ef4444}.heatmap-cell.mastery-unevaluated{background:#e5e7eb}.heatmap-legend{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}.heatmap-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted, #6b7280)}@media(max-width:720px){.dashboard-chart-grid{grid-template-columns:1fr}.dashboard-kpi-row{grid-template-columns:repeat(2,1fr)}.heatmap-header,.heatmap-row{grid-template-columns:80px repeat(var(--heatmap-columns, 12),32px)}.heatmap-cell{width:28px;height:20px}}.student-learning-detail-page{display:flex;flex-direction:column;gap:20px}.detail-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.detail-header-main{display:flex;align-items:center;gap:12px}.detail-header-main h2{margin:0;font-size:22px;font-weight:800}.detail-meta{margin:6px 0 0;font-size:13px;color:var(--muted)}.meta-divider{margin:0 8px;color:var(--line)}.back-btn{width:36px;height:36px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);display:grid;place-items:center}.detail-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.detail-kpi-row article{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 10px;text-align:center}.detail-kpi-row article strong{font-size:20px;font-weight:800;color:var(--ink)}.detail-kpi-row article span{font-size:12px;color:var(--muted);margin-top:4px}.detail-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:8px}.detail-tab-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--muted);font-size:13px;font-weight:600}.detail-tab-btn:hover{background:var(--panel);color:var(--ink)}.detail-tab-btn.active{background:var(--blue-50);color:var(--blue);border-color:#1d4ed829}.detail-tab-panel{min-height:240px}.detail-empty,.detail-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;color:var(--muted);text-align:center}.detail-empty-state svg{color:var(--soft)}.process-timeline{display:flex;flex-direction:column;gap:0;padding-left:12px;border-left:2px solid var(--line)}.timeline-item{position:relative;padding:0 0 20px 20px}.timeline-marker{position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--blue);border:2px solid var(--surface)}.timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.timeline-head strong{font-weight:700}.timeline-head time{font-size:12px;color:var(--muted)}.timeline-detail{margin:6px 0 0;font-size:13px;color:var(--ink)}.timeline-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.meta-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:var(--panel);color:var(--muted);font-size:11px;font-weight:600}.knowledge-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.knowledge-detail-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.knowledge-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.knowledge-card-header strong{font-size:14px;font-weight:700}.knowledge-card-body{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;color:var(--muted)}.status-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.status-pill.status-success,.status-pill.mastered{background:#dcfce7;color:#166534}.status-pill.status-info,.status-pill.lit{background:#dbeafe;color:#1e40af}.status-pill.status-warning,.status-pill.not_mastered{background:#fee2e2;color:#991b1b}.status-pill.status-muted,.status-pill.unevaluated{background:#f3f4f6;color:#4b5563}.assignment-list,.dialogue-list{display:flex;flex-direction:column;gap:12px}.assignment-card,.dialogue-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.assignment-card-header,.dialogue-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.assignment-card-body{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}.assignment-feedback{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.assignment-feedback strong{display:block;font-size:12px;margin-bottom:4px}.assignment-feedback p{margin:0;font-size:13px;color:var(--ink)}.artifact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.artifact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.artifact-preview{aspect-ratio:4 / 3;background:var(--panel);display:grid;place-items:center}.artifact-preview img{width:100%;height:100%;object-fit:cover}.artifact-file-placeholder{display:flex;flex-direction:column;align-items:center;color:var(--muted);gap:6px;font-size:12px}.artifact-info{padding:10px;display:flex;flex-direction:column;gap:4px}.artifact-info strong{font-size:13px;font-weight:700}.artifact-info span,.artifact-info time{font-size:11px;color:var(--muted)}.dialogue-detail{margin:0 0 12px;font-size:13px;color:var(--ink)}.dialogue-trace{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.trace-field span{font-size:11px;color:var(--muted);font-weight:600}.trace-field p{margin:2px 0 0;font-size:12px;color:var(--ink)}.consumption-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.consumption-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.consumption-section h4{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:14px;font-weight:700}.consumption-kpi{display:flex;gap:12px;margin-bottom:12px}.consumption-kpi article{flex:1;text-align:center;padding:12px;background:var(--panel);border-radius:var(--radius-sm)}.consumption-kpi article strong{display:block;font-size:18px;font-weight:800}.consumption-kpi article span{font-size:11px;color:var(--muted)}.consumption-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.consumption-list li{display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:8px 10px;background:var(--panel);border-radius:var(--radius-sm)}.term-end-report-view{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.term-report-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.term-report-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font-size:13px;cursor:pointer}.term-report-title h2{margin:0 0 4px;font-size:18px;font-weight:800}.term-report-meta{font-size:12px;color:var(--muted)}.term-report-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:24px}.term-report-kpi-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;text-align:center}.term-report-kpi-card.highlight{border-color:var(--accent);background:#22c55e0f}.term-report-kpi-icon{color:var(--muted);margin-bottom:6px;display:flex;justify-content:center}.term-report-kpi-value{font-size:22px;font-weight:800;margin-bottom:2px}.term-report-kpi-label{font-size:11px;color:var(--muted)}.term-report-section{margin-bottom:24px}.term-report-section-title{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:15px;font-weight:700}.term-report-empty{margin:0;font-size:13px;color:var(--muted);padding:12px;background:var(--panel);border-radius:var(--radius-sm)}.term-report-highlight-list,.term-report-works-list,.term-report-weakpoint-list,.term-report-risk-list{display:grid;gap:10px}.term-report-highlight-card{margin:0;padding:14px;background:var(--panel);border-left:4px solid var(--accent);border-radius:var(--radius-sm)}.term-report-highlight-content{font-size:14px;font-weight:600;margin-bottom:6px}.term-report-highlight-context{font-size:12px;color:var(--muted);margin-bottom:8px}.term-report-highlight-footer{display:flex;gap:10px;align-items:center}.term-report-highlight-type{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--line);color:var(--ink)}.term-report-highlight-type.golden_quote{background:#fde68a;color:#92400e}.term-report-highlight-type.creative_idea{background:#c7d2fe;color:#3730a3}.term-report-highlight-type.critical_question{background:#fecaca;color:#991b1b}.term-report-highlight-source{font-size:11px;color:var(--muted)}.term-report-work-card{display:flex;gap:12px;padding:12px;background:var(--panel);border-radius:var(--radius-sm);align-items:flex-start}.term-report-work-rank{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--surface);font-weight:800;font-size:12px;flex-shrink:0}.term-report-work-body{flex:1}.term-report-work-title{font-size:14px;font-weight:700;margin-bottom:2px}.term-report-work-meta{font-size:12px;color:var(--muted);margin-bottom:4px}.term-report-work-reason{font-size:12px;color:var(--ink)}.term-report-weakpoint-card{padding:12px;background:var(--panel);border-radius:var(--radius-sm)}.term-report-weakpoint-title{font-size:14px;font-weight:700;margin-bottom:4px}.term-report-weakpoint-meta{font-size:12px;color:var(--muted);margin-bottom:8px}.term-report-weakpoint-bar{height:6px;background:var(--line);border-radius:999px;overflow:hidden}.term-report-weakpoint-fill{height:100%;background:linear-gradient(90deg,var(--danger),#fb923c)}.term-report-risk-card{padding:12px;background:var(--panel);border-radius:var(--radius-sm);border-left:3px solid var(--danger)}.term-report-risk-name{font-size:14px;font-weight:700;margin-bottom:2px}.term-report-risk-reason{font-size:12px;color:var(--danger);margin-bottom:4px}.term-report-risk-metrics{font-size:12px;color:var(--muted)}.term-report-recommendations{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px}.term-report-recommendations li{font-size:13px;color:var(--ink)}@media(max-width:720px){.term-report-kpi-row{grid-template-columns:repeat(2,1fr)}.term-report-header{flex-direction:column;align-items:flex-start}}.student-course-home{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 0%,rgba(255,229,168,.38),transparent 30rem),linear-gradient(180deg,#f9f7f1,#f1f4ee)}.student-course-home-header{min-height:72px;padding:14px clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(42,59,48,.12);background:#ffffffc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.student-course-brand{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;display:inline-flex;align-items:center;gap:10px;color:inherit;background:transparent;cursor:pointer;min-width:44px;min-height:44px}.student-course-brand span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:#253c31;font-weight:800}.student-course-brand strong{font-size:17px;letter-spacing:.08em}.student-course-account{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.student-course-account>span{min-height:40px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;border-radius:999px;color:#34493d;background:#edf1eb;font-size:13px;font-weight:700}.student-course-hero{max-width:1180px;margin:0 auto;padding:clamp(52px,8vw,92px) clamp(20px,4vw,44px) 34px}.student-course-hero h1{margin:8px 0 14px;font-size:clamp(38px,6vw,68px);letter-spacing:-.055em}.student-course-hero>p:not(.eyebrow){max-width:720px;margin:0;color:#5d6d63;font-size:clamp(16px,2vw,19px);line-height:1.8}.student-course-summary{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}.student-course-summary span{min-height:42px;padding:0 15px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(42,59,48,.12);border-radius:999px;background:#ffffffbd;color:#34493d;font-weight:700}.student-course-groups{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,44px) 80px;display:grid;gap:32px}.student-course-class{display:grid;gap:16px}.student-course-class-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.student-course-class-heading p,.student-course-class-heading h2{margin:0}.student-course-class-heading p{color:#78857d;font-size:13px;font-weight:700}.student-course-class-heading h2{margin-top:4px;font-size:clamp(22px,3vw,30px)}.student-course-class-heading>span{color:#6d7a72;font-size:13px}.student-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.student-course-card{min-width:0;padding:22px;display:flex;flex-direction:column;gap:18px;border:1px solid rgba(42,59,48,.12);border-radius:22px;background:#ffffffe0;box-shadow:0 18px 44px #2d393112}.student-course-card.is-live{border-color:#c1482f59;box-shadow:0 18px 44px #9138271c}.student-course-card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#7a877f;font-size:12px;font-weight:700}.student-course-status{min-height:30px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;color:#31523f;background:#e8f2eb}.student-course-card.is-live .student-course-status{color:#8d321f;background:#fae6df}.student-course-card h3{min-height:3.2em;margin:0;font-size:21px;line-height:1.55;overflow-wrap:anywhere}.student-course-progress-detail{min-height:2.9em;margin:-8px 0 0;color:#62736a;font-size:13px;line-height:1.55}.student-learning-state.is-reviewed,.student-learning-state.is-submitted{color:#24744a}.student-learning-state.is-revision_requested{color:#a44d2d}.student-course-card dl{margin:0;display:grid;gap:9px}.student-course-card dl>div{display:grid;grid-template-columns:66px minmax(0,1fr);gap:8px}.student-course-card dt,.student-course-card dd{margin:0;font-size:13px}.student-course-card dt{display:inline-flex;align-items:center;gap:5px;color:#7c8981}.student-course-card dd{color:#3d5045;overflow-wrap:anywhere}.student-course-card .primary-btn{width:100%;min-height:44px;margin-top:auto}.student-course-empty{min-height:280px;padding:40px;display:grid;place-items:center;align-content:center;gap:10px;border:1px dashed rgba(42,59,48,.24);border-radius:22px;background:#ffffff9e;text-align:center}.student-course-empty h2,.student-course-empty p{margin:0}.student-course-empty p{max-width:520px;color:#6e7b73;line-height:1.7}@media(max-width:920px){.student-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.student-course-home-header{align-items:flex-start}.student-course-brand strong,.student-course-account>span{display:none}.student-course-grid{grid-template-columns:1fr}.student-course-card h3{min-height:auto}}
