: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,.record-secondary-summary,.legacy-record-details,.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}.classroom-error-banner span{min-width:0;flex:1}.classroom-error-dismiss,.broadcast-transition-close{display:inline-grid;flex:0 0 auto;place-items:center;width:32px;height:32px;border:0;border-radius:9px;background:transparent;color:currentColor;cursor:pointer}.classroom-error-dismiss:hover,.broadcast-transition-close:hover{background:#0f172a12}.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}.broadcast-transition-copy{min-width:0;flex:1}@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)}.resizable-right-panel.experiment-focus-mode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1210;width:100vw;height:100vh;height:100dvh;min-height:0;overflow:hidden;border:0;background:#fff;box-shadow:none}.resizable-right-panel.experiment-focus-mode .panel-resize-handle,.resizable-right-panel.experiment-focus-mode .right-panel-toolbar,.resizable-right-panel.experiment-focus-mode .tab-strip{display:none}.resizable-right-panel.experiment-focus-mode .tab-content{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0;background:#eef2f7}.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}.tutor-assist-intro{display:grid;gap:12px;padding:16px;border:1px solid #a7f3d0;border-radius:var(--radius);background:linear-gradient(135deg,#ecfdf5,#f0f9ff)}.tutor-assist-intro>div:first-child{display:grid;gap:4px}.tutor-assist-intro strong{color:#065f46}.tutor-assist-intro span{color:var(--muted);font-size:12px;line-height:1.5}.tutor-intent-list{display:flex;flex-wrap:wrap;gap:8px}.tutor-intent-list button,.tutor-episode-status button{border:1px solid #6ee7b7;border-radius:999px;padding:7px 10px;background:#fff;color:#065f46;font-size:12px;font-weight:800;cursor:pointer}.tutor-intent-list button.active{border-color:#059669;background:#059669;color:#fff}.tutor-intent-list button:disabled{cursor:default;opacity:.55}.tutor-episode-status{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid #a7f3d0}.tutor-episode-status button{flex:0 0 auto}.tutor-trace-card>p{display:grid;gap:4px}@media(max-width:520px){.tutor-assist-intro{padding:12px}.tutor-intent-list{display:grid;grid-template-columns:1fr}.tutor-intent-list button{width:100%;text-align:left}.tutor-episode-status{align-items:flex-start;flex-direction:column}}.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-coverage-inline{display:grid;gap:7px;margin-top:14px}.knowledge-coverage-inline p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.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}.record-secondary-summary{display:grid;gap:12px;padding:16px}.learning-quality-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.legacy-record-details{overflow:hidden}.legacy-record-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}.legacy-record-details>summary::-webkit-details-marker{display:none}.legacy-record-details>summary:after{content:"展开";flex:0 0 auto;color:var(--blue);font-size:12px;font-weight:850}.legacy-record-details[open]>summary:after{content:"收起"}.legacy-record-details>summary span{color:var(--ink);font-size:14px;font-weight:850}.legacy-record-details>summary small{margin-left:auto;color:var(--muted);font-size:11px}.legacy-record-details-body{display:grid;gap:12px;border-top:1px solid var(--line);padding:14px;background:#f8fafc}.legacy-record-details-body .record-timeline{box-shadow:none}.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,.narration-control-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,.narration-control-card p,.muted-copy{margin:0;color:var(--muted);line-height:1.65;white-space:pre-wrap}.narration-mode-select{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;font-weight:800}.narration-mode-select select{height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 28px 0 10px;font:inherit}.narration-control-card{border-color:#3667f238;background:#f7f9ff}.narration-control-card h3{margin:0;font-size:15px}.narration-control-card>p{max-height:132px;overflow:auto;font-size:12px}.narration-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.narration-controls button{justify-content:center;min-width:0}.ai-synthesis-label{display:inline-flex;align-items:center;border-radius:999px;background:#e9edff;color:#4659b7;padding:4px 8px;font-size:10px;font-weight:850}.digital-teacher-overlay{position:sticky;z-index:18;bottom:12px;display:grid;grid-template-columns:minmax(0,1fr) 104px;align-items:end;gap:12px;width:min(920px,calc(100% - 40px));margin:0 auto 12px;pointer-events:none}.digital-teacher-avatar-wrap{grid-column:2;grid-row:1;display:grid;justify-items:center;gap:4px;filter:drop-shadow(0 10px 18px rgba(29,42,86,.22))}.digital-teacher-avatar-wrap img{width:92px;height:92px;border:4px solid rgba(255,255,255,.96);border-radius:50%;background:#fff}.digital-teacher-avatar-wrap em{border-radius:999px;background:#212a4ceb;color:#fff;padding:3px 7px;font-size:9px;font-style:normal;font-weight:800}.digital-teacher-caption{grid-column:1;grid-row:1;max-height:148px;overflow:auto;border:1px solid rgba(40,57,105,.16);border-radius:12px;background:#fffffff5;box-shadow:0 12px 32px #1e2b4b29;padding:12px 14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.digital-teacher-caption strong{color:#4054a5;font-size:12px}.digital-teacher-caption p{margin:5px 0 0;color:#29384d;font-size:14px;line-height:1.65;white-space:pre-wrap}.digital-teacher-speaking-dots{display:inline-flex;gap:3px;height:8px}.digital-teacher-speaking-dots i{width:4px;height:4px;border-radius:50%;background:#536de0;animation:digitalTeacherPulse .9s ease-in-out infinite}.digital-teacher-speaking-dots i:nth-child(2){animation-delay:.15s}.digital-teacher-speaking-dots i:nth-child(3){animation-delay:.3s}.digital-teacher-overlay.paused .digital-teacher-speaking-dots i{animation-play-state:paused;opacity:.45}@keyframes digitalTeacherPulse{0%,to{transform:translateY(2px);opacity:.45}50%{transform:translateY(-2px);opacity:1}}@media(max-width:768px){.narration-mode-select>span{display:none}.digital-teacher-overlay{grid-template-columns:minmax(0,1fr) 68px;width:calc(100% - 20px);bottom:8px}.digital-teacher-avatar-wrap img{width:58px;height:58px;border-width:3px}.digital-teacher-avatar-wrap em{font-size:8px}.digital-teacher-caption{max-height:108px;padding:9px 10px}.digital-teacher-caption p{font-size:12px;line-height:1.55}}@media(max-width:430px){.digital-teacher-overlay{display:flex;flex-direction:column-reverse;align-items:flex-end}.digital-teacher-avatar-wrap{display:flex;align-items:center}.digital-teacher-caption{width:100%;max-height:88px}.narration-controls{grid-template-columns:1fr}}.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-mapping-check{display:grid;gap:12px}.mapping-instruction{margin:0;color:#475467;font-size:13px;line-height:1.55}.mapping-rows{display:grid;gap:10px}.mapping-row{display:grid;grid-template-columns:minmax(110px,.85fr) minmax(150px,1.15fr);gap:7px 12px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:10px;background:#f8fafc}.mapping-row.correct{border-color:#86d7a8;background:#f0fbf4}.mapping-row.wrong{border-color:#efb3a6;background:#fff7f4}.mapping-row label,.mapping-row.preview span{color:#344054;font-size:13px;font-weight:800}.mapping-row select{width:100%;min-width:0}.mapping-row.preview strong{color:var(--blue)}.mapping-feedback{grid-column:2;display:inline-flex;gap:5px;align-items:center;font-size:12px;font-weight:800}.mapping-feedback.correct,.mapping-complete-message{color:#18794e}.mapping-feedback.wrong{color:#b5472f}.mapping-actions{display:flex;flex-wrap:wrap;gap:8px}.mapping-complete-message{display:flex;gap:7px;align-items:center;margin:0;font-size:13px;font-weight:800}.basic-learning-loop-list{display:grid;gap:8px}.basic-learning-loop-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.basic-learning-loop-list article.done{background:#f0fbf4;border-color:#b7e3c8}.basic-learning-loop-list article>span{color:#18794e;font-weight:900}.basic-learning-loop-list article>div{display:grid;gap:2px}.basic-learning-loop-list article strong{color:#344054;font-size:13px}.basic-learning-loop-list article small{color:var(--muted)}.knowledge-nebula .kg-node.in_progress{border-color:#efc46f;background:#fff9e9}@media(max-width:520px){.mapping-row{grid-template-columns:minmax(0,1fr)}.mapping-feedback{grid-column:1}.basic-learning-loop-list article{grid-template-columns:auto minmax(0,1fr)}.basic-learning-loop-list article button{grid-column:2;justify-self:start}}.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}.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-image-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-image-model-routing{scroll-margin-top:86px}.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}.image-model-routing-panel{border-color:#2563eb2e}.image-env-fallback{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);gap:8px 12px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc;padding:11px 13px}.image-env-fallback.configured{border-color:#2563eb38;background:#eff6ff}.image-env-fallback span{color:var(--blue);font-size:12px;font-weight:900}.image-env-fallback p{margin:0;color:var(--muted);font-size:12px}.image-routing-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff;padding:14px}.image-routing-form-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px}.image-routing-form>label{display:grid;align-content:start;gap:6px;min-width:0;color:var(--muted);font-size:12px;font-weight:850}.image-routing-form input,.image-routing-form select{width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);padding:10px 11px}.image-routing-form .span-two{grid-column:span 2}.image-routing-options{display:flex;flex-wrap:wrap;gap:8px 16px;min-width:0;margin:0;border:1px solid var(--line);border-radius:var(--radius);padding:8px 11px 10px}.image-routing-options legend{color:var(--muted);font-size:12px;font-weight:900;padding:0 5px}.image-routing-options label{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:12px;font-weight:800}.image-routing-options input{width:auto}.image-route-list article{grid-template-columns:minmax(220px,1.4fr) 110px 145px 82px minmax(230px,auto)}.image-route-list small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.45}.image-route-test-preview{display:flex;align-items:center;gap:12px;width:fit-content;border:1px solid rgba(37,99,235,.2);border-radius:var(--radius);background:#eff6ff;padding:8px}.image-route-test-preview img{width:88px;height:88px;border-radius:calc(var(--radius) - 3px);object-fit:cover}.image-route-test-preview span{color:var(--blue);font-size:12px;font-weight:900}.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}.api-contract-details{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.api-contract-details summary{display:grid;grid-template-columns:18px minmax(0,1fr) auto 18px;align-items:center;gap:8px;cursor:pointer;list-style:none;padding:11px 12px}.api-contract-details summary::-webkit-details-marker{display:none}.api-contract-details summary:after{content:"+";grid-column:4;grid-row:1;color:#718096;font-size:16px}.api-contract-details summary>span{grid-column:3;color:var(--muted);font-size:10px;font-weight:800}.api-contract-details[open] summary:after{content:"−"}.api-contract-details>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);background:#fff;padding:10px 12px}.api-contract-details>div p{margin:0}.api-contract-details>div span{flex:0 0 auto;color:var(--muted);font-size:11px;font-weight:800}.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,.image-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,.image-routing-form,.model-key-list article,.review-evidence.large{grid-template-columns:1fr}.image-routing-form .span-two{grid-column:auto}.image-env-fallback{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-panel{gap:12px}.experiment-intro-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:linear-gradient(135deg,var(--amber-50),var(--orange-50));border-color:#f59e0b3d}.experiment-intro-card>div{display:flex;flex:0 0 auto;align-items:center;gap:10px;color:var(--amber)}.experiment-intro-card>div strong{color:var(--ink)}.experiment-intro-card p{margin:0;color:#78350f;font-size:13px}.mini-app-activity-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px}.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-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-experiment-stage,.mini-app-activity-list.is-focused,.experiment-focus-mode .experiment-panel,.experiment-focus-mode .experiment-set{display:flex;flex-direction:column;min-height:0}.experiment-focus-mode .experiment-panel,.experiment-focus-mode .experiment-set,.experiment-focus-mode .mini-app-activity-list.is-focused,.experiment-focus-mode .mini-app-experiment-stage{flex:1}.experiment-focus-mode .experiment-panel{width:100%}.experiment-focus-mode .experiment-intro-card{display:none}.experiment-focus-mode .experiment-set{gap:0;overflow:hidden;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.mini-app-experiment-stage{overflow:hidden;border:0;background:#eef2f7}.mini-app-experiment-toolbar{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:14px;min-height:62px;border-bottom:1px solid var(--line);padding:9px 14px;background:#fffffff5;box-shadow:0 5px 18px #0f172a0f}.mini-app-experiment-toolbar-main,.mini-app-experiment-toolbar-actions,.mini-app-scheme-switcher{display:flex;align-items:center}.mini-app-experiment-toolbar-main{min-width:0;gap:12px}.mini-app-experiment-toolbar-actions{flex:0 0 auto;gap:10px}.mini-app-experiment-back{flex:0 0 auto}.mini-app-experiment-title{display:grid;min-width:0;gap:2px}.mini-app-experiment-title span{overflow:hidden;color:var(--muted);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.mini-app-experiment-title strong{overflow:hidden;color:var(--ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.mini-app-scheme-switcher{gap:3px;border:1px solid var(--line);border-radius:10px;padding:3px;background:#f8fafc}.mini-app-scheme-switcher button{min-height:30px;border:0;border-radius:7px;padding:0 11px;background:transparent;color:var(--muted);font-size:12px;font-weight:900}.mini-app-scheme-switcher button.active{background:#fff;color:var(--blue);box-shadow:0 1px 5px #0f172a1f}.mini-app-stage-sandbox{position:relative;flex:1;min-height:0;gap:0;padding:10px}.mini-app-stage-sandbox .mini-app-sandbox-loading,.mini-app-stage-sandbox .mini-app-sandbox-error,.mini-app-stage-sandbox .mini-app-sandbox-ready{position:absolute;top:18px;left:50%;z-index:2;max-width:calc(100% - 40px);border:1px solid rgba(148,163,184,.24);padding:7px 10px;box-shadow:0 6px 18px #0f172a1f;transform:translate(-50%);white-space:nowrap}.experiment-focus-mode .mini-app-stage-sandbox .mini-app-sandbox-frame{flex:1;height:100%;min-height:0;border-radius:12px;background:#fff}.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-experiment-toolbar{align-items:stretch;flex-wrap:wrap;gap:8px;min-height:0;padding:8px}.mini-app-experiment-toolbar-main{flex:1 1 100%}.mini-app-experiment-toolbar-actions{width:100%;justify-content:space-between}.mini-app-experiment-toolbar-actions>.status-pill:only-child{margin-left:auto}.mini-app-stage-sandbox{padding:6px}.experiment-focus-mode .mini-app-stage-sandbox .mini-app-sandbox-frame{min-height:0;border-radius:9px}.mini-app-artifact-gallery{grid-template-columns:1fr}}@media(max-width:520px){.experiment-intro-card{align-items:flex-start;flex-direction:column;gap:6px}.mini-app-experiment-title span{display:none}.mini-app-experiment-title strong{font-size:12px}.mini-app-experiment-back,.mini-app-scheme-switcher button{padding-inline:9px}}.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-cell.lighting-lit{background:#22c55e}.heatmap-cell.lighting-in_progress{background:#f59e0b}.heatmap-cell.lighting-gray{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-checkpoints{display:grid;gap:7px;padding:0;margin:12px 0;list-style:none}.student-course-checkpoints li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;border-radius:10px;background:#f5f8f6e6;color:#68756d;font-size:12px}.student-course-checkpoints li.is-approved,.student-course-checkpoints li.is-submitted{background:#daf1e2b8;color:#216341}.student-course-checkpoints li.is-revision_requested{background:#ffebd9cc;color:#8f4c24}.student-course-checkpoints strong{text-align:right;font-weight:650}.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}}.lesson-reflection-submit-card,.lesson-reflection-review-workspace{display:grid;gap:12px}.student-reflection-review-card{display:grid;gap:12px;padding:16px;border:1px solid #d9e5ef;border-radius:16px;background:#f7fafc}.student-reflection-review-card>header,.student-reflection-review-card>header>div{display:flex;align-items:center;justify-content:space-between;gap:9px}.student-reflection-review-card>header>div{justify-content:flex-start}.student-reflection-review-card>header>span{color:#6f7e89;font-size:12px}.student-reflection-review-card.is-revision_requested{border-color:#efc8a9;background:#fff8f1}.student-reflection-review-card.is-reviewed{border-color:#bde1d2;background:#f2fbf7}.student-reflection-feedback,.student-reflection-approved-copy,.student-reflection-past-feedback,.student-reflection-history article{padding:12px 14px;border-radius:12px;background:#fff}.student-reflection-feedback p,.student-reflection-approved-copy p,.student-reflection-past-feedback p,.student-reflection-history p,.student-reflection-next-action{margin:6px 0 0;line-height:1.65;white-space:pre-wrap}.student-reflection-next-action{color:#8b4d26}.student-reflection-history summary{cursor:pointer;color:#315f8c;font-weight:700}.student-reflection-history article{margin-top:9px;border:1px solid #e3e9ef}.student-reflection-history em{color:#6f7e89;font-size:12px;font-style:normal}.reflection-version-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reflection-version-compare article{min-width:0}.reflection-version-compare textarea{width:100%;min-height:180px;resize:vertical}.lesson-reflection-suggestion{display:grid;gap:10px}.teacher-learning-analytics{display:grid;gap:18px}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.analytics-kpi-grid article{display:grid;gap:6px;padding:14px;border:1px solid rgba(44,91,67,.12);border-radius:14px;background:#f8fbf9}.analytics-kpi-grid article svg,.analytics-kpi-grid article span{color:#61766a}.analytics-kpi-grid article strong{font-size:20px;color:#254e39}.analytics-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analytics-chart-grid>article,.learning-heatmap-wrap,.analytics-attention-list{padding:16px;border:1px solid rgba(44,91,67,.12);border-radius:16px;background:#fff}.learning-heatmap-table{display:grid;gap:5px;overflow-x:auto}.learning-heatmap-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(74px,1fr);gap:5px;min-width:620px}.learning-heatmap-row>*{padding:8px;border-radius:8px;text-align:center;background:#f3f5f4}.learning-heatmap-row>strong{text-align:left;position:sticky;left:0;z-index:1}.learning-heatmap-row .heat-high{background:#cfead9;color:#1e6840}.learning-heatmap-row .heat-medium{background:#f8e8bc;color:#825d16}.learning-heatmap-row .heat-low{background:#f8d6cd;color:#8b3826}.analytics-attention-list{display:grid;gap:8px}.analytics-attention-list article{padding:10px 12px;border-left:3px solid #d26a3f;background:#fff8f4}@media(max-width:980px){.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-grid{grid-template-columns:1fr}}@media(max-width:760px){.reflection-version-compare{grid-template-columns:1fr}}.student-outcome-page{min-height:100vh;background:#f4f7fb;color:#183153}.student-outcome-hero{padding:64px clamp(24px,6vw,88px) 34px;background:radial-gradient(circle at 82% 20%,rgba(26,169,129,.16),transparent 32%),linear-gradient(135deg,#eef5ff,#fff 55%)}.student-outcome-hero h1{margin:8px 0 12px;font-size:clamp(34px,5vw,58px);letter-spacing:-.04em}.student-outcome-hero>p:not(.eyebrow){max-width:820px;margin:0;color:#5f6b7a;line-height:1.8}.student-outcome-message{margin:24px clamp(24px,6vw,88px) 0;padding:14px 18px;border:1px solid #cfe0fa;border-radius:14px;background:#eef5ff;color:#24589f}.student-review-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:24px clamp(24px,6vw,88px) 0;padding:16px 18px;border:1px solid #efc7a4;border-radius:16px;background:#fff8f1;color:#7f451f}.student-review-alert p{margin:4px 0 0;color:#7f5a40;line-height:1.55}.student-course-review-feedback{margin:0;padding:10px 12px;border-left:3px solid #df8a4b;border-radius:8px;background:#fff8f1;color:#774a2c;font-size:13px;line-height:1.55}.student-outcome-workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px clamp(24px,6vw,88px) 0}.student-outcome-workspace-heading h2{margin:5px 0 0;font-size:clamp(24px,3vw,34px)}.student-outcome-workspace-heading>p{max-width:680px;margin:0;color:#687789;line-height:1.7}.student-outcome-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,470px),1fr));gap:24px;padding:32px clamp(24px,6vw,88px) 72px}.student-outcome-card{padding:26px;border:1px solid #dfe7f1;border-radius:24px;background:#fff;box-shadow:0 18px 52px #1f395b14}.student-outcome-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.student-outcome-card-heading span{display:inline-flex;align-items:center;gap:7px;color:#2367d1;font-size:13px;font-weight:800}.student-outcome-card-heading h2{margin:9px 0 0;font-size:24px;line-height:1.35}.student-outcome-card-heading>strong{color:#1aa981;font-size:30px}.student-outcome-progress{height:7px;margin:20px 0;overflow:hidden;border-radius:999px;background:#e8edf4}.student-outcome-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2367d1,#1aa981)}.student-outcome-course-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.student-outcome-course-list li{display:grid;grid-template-columns:62px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px;border-radius:11px;background:#f7f9fc}.student-outcome-course-list li>div{min-width:0}.student-outcome-course-list li>div>strong{display:block}.student-outcome-course-list li p{margin:4px 0 0;color:#8a5638;font-size:12px;line-height:1.45}.student-outcome-course-list li>small{color:#8a96a5;font-size:12px}.student-outcome-course-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:6px 10px;border:1px solid #cbd8e7;border-radius:9px;background:#fff;color:#24589f;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.student-outcome-course-action:hover{border-color:#8eb1dd;background:#f4f8fd}.student-outcome-course-list li span,.student-outcome-course-list li em{color:#6b7788;font-size:12px;font-style:normal}.student-outcome-course-list li.is-approved{background:#eefaf6}.student-outcome-course-list li.is-approved em{color:#138263}.student-outcome-course-list li.is-revision_requested{background:#fff4ec}.student-outcome-package,.student-outcome-downloads{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px;padding:13px;border-radius:13px;background:#f3f7fc}.student-outcome-package.is-running{color:#24589f}.student-outcome-package.is-error{color:#a84d2b;background:#fff3ed}.student-outcome-downloads>span{margin-right:auto;color:#5f6b7a}.student-outcome-actions{display:flex;justify-content:flex-end;margin-top:20px}.student-outcome-actions .primary-btn{display:inline-flex;align-items:center;gap:8px}.spin{animation:student-outcome-spin 1s linear infinite}@keyframes student-outcome-spin{to{transform:rotate(360deg)}}@media(max-width:680px){.student-outcome-hero{padding-top:38px}.student-outcome-grid{grid-template-columns:1fr}.student-review-alert{grid-template-columns:auto 1fr}.student-review-alert .primary-btn{grid-column:1 / -1;width:100%}.student-outcome-workspace-heading{align-items:flex-start;flex-direction:column;gap:10px}.student-outcome-course-list li{grid-template-columns:48px minmax(0,1fr) auto}.student-outcome-course-list li em{grid-column:2}.student-outcome-course-action,.student-outcome-course-list li>small{grid-column:2 / -1;width:100%}.student-reflection-review-card>header{align-items:flex-start;flex-direction:column}}.teacher-outcome-package-panel .section-heading{align-items:flex-start}.teacher-outcome-package-panel select{min-height:38px;padding:0 34px 0 12px;border:1px solid var(--line, #dfe7f1);border-radius:10px;background:#fff}.teacher-outcome-package-message{padding:12px 14px;border-radius:11px;background:#eef5ff;color:#24589f}.teacher-outcome-package-summary{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.teacher-outcome-package-summary span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:#f1f5fa;color:#506174;font-size:13px;font-weight:700}.teacher-outcome-package-rows{display:grid;gap:8px}.teacher-outcome-package-rows article{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(130px,auto) auto;align-items:center;gap:14px;padding:13px 15px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.teacher-outcome-package-rows article p{margin:4px 0 0;color:#718096;font-size:12px}.teacher-outcome-row-actions{justify-content:flex-end}.teacher-outcome-row-actions .ghost-btn{white-space:nowrap}@media(max-width:860px){.teacher-outcome-package-rows article{grid-template-columns:1fr auto}}.school-dashboard-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:18px 0;padding:16px;border:1px solid #e0e7f0;border-radius:16px;background:#f7f9fc}.school-dashboard-filters label{display:grid;gap:6px;color:#64748b;font-size:12px;font-weight:700}.school-dashboard-filters select,.school-dashboard-filters input{min-width:0;height:38px;padding:0 10px;border:1px solid #d8e1ec;border-radius:9px;background:#fff;color:#243b55}.school-dashboard-message{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:10px;background:#eef5ff;color:#24589f}.school-process-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.school-process-metrics .admin-metric{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;min-width:0;padding:14px;border:1px solid #e0e7f0;border-radius:14px;background:#fff;box-shadow:0 8px 24px #243b550d}.school-process-metrics .admin-metric>svg{margin-top:2px;color:#2367d1}.school-process-metrics .admin-metric>div{display:grid;gap:4px;min-width:0}.school-process-metrics .admin-metric-label,.school-process-metrics .admin-metric small{color:#64748b;font-size:12px;line-height:1.45}.school-process-metrics .admin-metric-value{color:#1f3349;font-size:21px;line-height:1.25;overflow-wrap:anywhere}.school-dashboard-charts{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:16px;margin:18px 0}.school-dashboard-charts>section{padding:18px;border:1px solid #e0e7f0;border-radius:16px;background:#fff}.school-dashboard-charts h4{margin:0 0 12px}.school-dashboard-charts p{margin:8px 0 0;color:#718096;font-size:12px}.school-growth-chart{width:100%;min-height:190px}.school-growth-chart .grid line{stroke:#dfe7f1;stroke-width:1}.school-growth-chart polyline{fill:none;stroke:#2367d1;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.school-growth-chart circle{fill:#1aa981}.school-growth-chart text{fill:#64748b;font-size:12px;text-anchor:middle}.school-duration-bars{display:grid;gap:12px}.school-duration-bars>div{display:grid;grid-template-columns:66px 1fr 66px;align-items:center;gap:9px;font-size:12px}.school-duration-bars i{height:8px;overflow:hidden;border-radius:999px;background:#edf1f6}.school-duration-bars b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2367d1,#1aa981)}.school-duration-bars em{color:#718096;text-align:right;font-style:normal}.school-insight-panel ul{display:grid;gap:10px;margin:14px 0;padding:0;list-style:none}.school-insight-panel li{padding:12px;border-radius:11px;background:#f7f9fc}.school-insight-panel li p{margin:5px 0;line-height:1.6}.school-insight-panel li small{color:#718096;overflow-wrap:anywhere}.school-insight-status{display:flex;align-items:center;justify-content:space-between;gap:10px}.school-insight-status em{color:#718096;font-size:12px;font-style:normal}@media(max-width:1100px){.school-dashboard-filters{grid-template-columns:repeat(2,minmax(150px,1fr))}.school-process-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.school-dashboard-charts{grid-template-columns:1fr}}@media(max-width:680px){.school-dashboard-filters,.school-process-metrics{grid-template-columns:1fr}}.admin-v2-app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh;background:#f4f7fb}.admin-v2-sidebar{position:sticky;top:0;z-index:60;display:flex;flex-direction:column;gap:20px;width:232px;height:100vh;overflow-y:auto;border-right:1px solid #dde5ef;background:#f9fbfd;padding:18px 14px}.admin-sidebar-brand{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 7px 14px;border-bottom:1px solid #e4eaf2}.admin-sidebar-brand>button:first-child{width:42px;height:42px;border:0;border-radius:10px;background:#1f4f95;color:#fff;font-size:14px;font-weight:900}.admin-sidebar-brand div{display:grid;gap:2px;min-width:0}.admin-sidebar-brand strong{font-size:14px}.admin-sidebar-brand span{color:#77869a;font-size:11px}.admin-drawer-close{display:none;border:0;background:transparent;color:#52647a}.admin-v2-sidebar nav{display:grid;gap:6px}.admin-v2-sidebar nav>button{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:10px;width:100%;min-height:58px;border:1px solid transparent;border-radius:10px;background:transparent;color:#53657b;padding:9px 10px;text-align:left}.admin-v2-sidebar nav>button:hover{background:#f0f4f9;color:#233e61}.admin-v2-sidebar nav>button.is-active{border-color:#cfdef2;background:#eaf2fd;color:#194f92}.admin-v2-sidebar nav>button>span{display:grid;gap:3px;min-width:0}.admin-v2-sidebar nav strong{font-size:13px}.admin-v2-sidebar nav small{overflow:hidden;color:#7a899c;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.admin-v2-sidebar nav>button.is-active small{color:#5b7596}.admin-sidebar-account{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;border-top:1px solid #e4eaf2;padding:14px 7px 2px;color:#44566c;font-size:12px;font-weight:800}.admin-sidebar-account button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#6b7b8f;font-size:12px}.admin-v2-main{width:100%;min-width:0}.admin-v2-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:78px;border-bottom:1px solid #e0e7f0;background:#fffffff2;padding:16px clamp(20px,3vw,40px);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-v2-header h1{margin:2px 0 3px;font-size:clamp(22px,2vw,29px);letter-spacing:-.02em}.admin-v2-header p{margin:0;color:#728095;font-size:12px}.admin-v2-header-actions{display:flex;align-items:center;gap:10px}.admin-global-search{position:relative;width:min(390px,34vw)}.admin-global-search>label{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid #d9e2ec;border-radius:9px;background:#f8fafc;color:#6a7c91;padding:0 10px}.admin-global-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#263d57;font-size:12px}.admin-global-search label button{display:grid;place-items:center;border:0;background:transparent;color:#718196;padding:2px}.admin-global-search kbd{border:1px solid #d6dee8;border-radius:5px;background:#fff;color:#8491a1;padding:2px 5px;font-family:inherit;font-size:9px}.admin-global-search-results{position:absolute;top:calc(100% + 8px);right:0;z-index:90;display:grid;gap:8px;width:min(520px,82vw);max-height:min(68vh,620px);overflow-y:auto;border:1px solid #d9e2ec;border-radius:12px;background:#fff;box-shadow:0 18px 50px #192f492e;padding:12px}.admin-global-search-results>div{display:flex;justify-content:space-between;gap:10px;color:#75859a;font-size:11px}.admin-global-search-results section{display:grid;gap:3px}.admin-global-search-results h3{display:flex;align-items:center;gap:6px;margin:4px 5px;color:#66788d;font-size:10px;text-transform:uppercase}.admin-global-search-results h3 small{color:#9aa5b2}.admin-global-search-results section>button{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:8px;background:transparent;color:#263d57;padding:9px;text-align:left}.admin-global-search-results section>button:hover{background:#edf4fc}.admin-global-search-results section>button span{display:grid;gap:3px;min-width:0}.admin-global-search-results section>button strong,.admin-global-search-results section>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-global-search-results section>button strong{font-size:12px}.admin-global-search-results section>button small{color:#7a899a;font-size:10px}.admin-global-search-results section>button em{flex:0 0 auto;color:#6f8094;font-size:10px;font-style:normal}.admin-secondary-tabs{position:sticky;top:78px;z-index:29;display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid #e0e7f0;background:#f9fbfdf5;padding:0 clamp(20px,3vw,40px);scrollbar-width:none}.admin-secondary-tabs button{flex:0 0 auto;min-height:48px;border:0;border-bottom:2px solid transparent;background:transparent;color:#68798e;padding:0 14px;font-size:13px;font-weight:800}.admin-secondary-tabs button.is-active{border-bottom-color:#2763ad;color:#194f92}.admin-v2-content{width:100%;min-width:0;padding:20px clamp(18px,2.5vw,34px) 48px}.admin-embedded-workspace{min-height:0;background:transparent}.admin-embedded-workspace>.admin-grid:first-of-type:empty,.admin-embedded-workspace>.admin-grid.lower:empty{display:none}.admin-mobile-menu{display:none}.admin-overview-workspace,.official-course-workspace{display:grid;gap:18px}.admin-overview-intro,.course-series-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #dce5ef;border-radius:12px;background:#fff;padding:22px}.admin-overview-intro h2,.course-series-summary h2{margin:2px 0 7px;font-size:22px}.admin-overview-intro p,.course-series-summary p{margin:0;color:#718096;font-size:12px;line-height:1.6}.admin-overview-scale-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.admin-overview-scale-grid article{display:grid;gap:7px;min-width:0;border:1px solid #dfe6ef;border-radius:11px;background:#fff;padding:16px}.admin-overview-scale-grid article div{color:#2763ad}.admin-overview-scale-grid span{color:#6d7d90;font-size:11px;font-weight:800}.admin-overview-scale-grid strong{font-size:25px}.admin-overview-scale-grid p{margin:0;overflow:hidden;color:#8a97a7;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.admin-overview-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-overview-detail-grid>button{display:grid;gap:11px;min-height:182px;border:1px solid #dce5ef;border-radius:12px;background:#fff;color:#1e2f44;padding:18px;text-align:left}.admin-overview-detail-grid>button:hover{border-color:#b7cce6;box-shadow:0 10px 26px #1f4f9512}.admin-overview-detail-grid span{display:flex;align-items:center;gap:8px;color:#315b8d;font-size:12px;font-weight:900}.admin-overview-detail-grid strong{font-size:24px}.admin-overview-detail-grid p{margin:0;color:#68798e;font-size:12px;line-height:1.55}.admin-overview-detail-grid em{margin-top:auto;color:#8a97a7;font-size:11px;font-style:normal}.admin-inline-alert{display:flex;align-items:center;gap:9px;min-width:0;border:1px solid #d6e2f0;border-radius:9px;background:#eef5fd;color:#315b8d;padding:11px 13px;font-size:12px}.admin-inline-alert span{min-width:0}.admin-inline-alert small{overflow:hidden;margin-left:auto;color:#7c8898;text-overflow:ellipsis;white-space:nowrap}.admin-inline-alert button{margin-left:auto;border:0;background:transparent;color:#1f5c9f;font-weight:850}.admin-inline-alert.is-warning{border-color:#f0d7ad;background:#fff8e9;color:#8b5a13}.admin-inline-alert.is-success{border-color:#c9e8dc;background:#effaf6;color:#176b52}.is-spinning{animation:admin-spin 1s linear infinite}@keyframes admin-spin{to{transform:rotate(360deg)}}.school-directory-search{width:min(620px,100%);min-height:44px}.school-directory-list{display:grid;gap:8px}.school-directory-list article{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:12px;border:1px solid #e1e7ef;border-radius:10px;background:#fbfcfe;padding:12px}.school-directory-list article p{margin:3px 0 0;color:#7a899c;font-size:11px}.school-directory-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#eaf2fd;color:#245d9f}.course-series-summary{display:grid;grid-template-columns:minmax(0,1fr) 120px 190px}.course-series-summary>div:not(:first-child){display:grid;gap:3px;border-left:1px solid #e2e8f0;padding-left:20px}.course-series-summary>div:not(:first-child) strong{font-size:19px}.course-series-summary>div:not(:first-child) span{color:#7b899b;font-size:11px}.course-lesson-matrix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-lesson-matrix>button{display:grid;gap:7px;min-width:0;border:1px solid #dfe6ee;border-radius:10px;background:#fff;color:#24384f;padding:14px;text-align:left}.course-lesson-matrix>button.is-selected{border-color:#86aede;box-shadow:0 0 0 3px #2763ad17}.course-lesson-matrix span{color:#55718f;font-size:10px;font-weight:900;text-transform:uppercase}.course-lesson-matrix strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.course-lesson-matrix p{margin:0;color:#7e8c9d;font-size:10px}.course-card-metrics{display:flex;justify-content:space-between;gap:8px;color:#65778b;font-size:10px;font-weight:800}.course-card-progress{height:7px;overflow:hidden;border-radius:999px;background:#edf1f5}.course-card-progress i{display:block;height:100%;border-radius:inherit;background:#2f7f68}.course-version-detail{padding:20px}.course-governance-toolbar{justify-content:space-between}.course-governance-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-governance-status-grid article{display:grid;grid-template-columns:24px minmax(0,1fr);gap:3px 8px;align-items:center;border:1px solid #dfe7ef;border-radius:10px;background:#f8fafc;padding:13px}.course-governance-status-grid article>svg{grid-row:1 / 4;color:#2865ac}.course-governance-status-grid span{color:#718096;font-size:10px;font-weight:850}.course-governance-status-grid strong{font-size:18px}.course-governance-status-grid small{color:#7d8998;font-size:10px}.course-governance-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:16px;align-items:start}.course-governance-columns>div{min-width:0}.course-governance-columns .course-material-checklist{grid-template-columns:1fr}.course-version-timeline{display:grid;gap:12px;border:1px solid #dde6ef;border-radius:10px;background:#f8fafc;padding:14px}.course-package-times{display:grid;gap:7px;margin:0}.course-package-times>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e4eaf0;padding-bottom:7px}.course-package-times dt{color:#718096;font-size:10px}.course-package-times dd{margin:0;color:#314a64;font-size:10px;font-weight:800;text-align:right}.course-version-list{display:grid;gap:6px}.course-version-list button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #dfe6ee;border-radius:8px;background:#fff;color:#2b425c;padding:9px;text-align:left}.course-version-list button.is-active{border-color:#87acd7;background:#edf5fd}.course-version-list button span{display:grid;gap:2px}.course-version-list button small{color:#7a8899;font-size:9px}.course-version-list button em{color:#5f7590;font-size:9px;font-style:normal}.course-inspection-history{display:grid;gap:7px;border-top:1px solid #dde5ee;padding-top:10px}.course-inspection-history>strong{font-size:11px}.course-inspection-history>div{display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:9px}.course-inspection-history time{color:#6f8092}.course-inspection-history small{grid-column:1 / -1;color:#8995a3}.course-material-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.course-material-checklist label{display:grid;grid-template-columns:26px minmax(0,1fr) auto 76px;align-items:center;gap:9px;border:1px solid #dfe7ef;border-radius:9px;background:#fbfcfe;padding:11px}.course-material-checklist label.is-missing{border-color:#f0c9c9;background:#fff7f7}.course-material-checklist label>span:nth-child(2){display:grid;gap:3px}.course-material-checklist small{color:#7c899a;font-size:10px}.course-material-checklist em{color:#6e7f92;font-size:10px;font-style:normal;text-align:right}.course-material-checklist input[type=checkbox]{width:18px;height:18px;accent-color:#246b55;cursor:pointer}.course-material-checklist input[type=checkbox]:disabled{cursor:not-allowed}.course-material-auto{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#e6f5ef;color:#197359}.is-missing .course-material-auto{background:#fdeaea;color:#b54141}.course-publish-bar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,.8fr) auto;align-items:center;gap:14px;border-top:1px solid #e0e7ef;padding-top:16px}.course-publish-bar strong{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:12px}.course-publish-bar p{margin:4px 0 0;color:#78879a;font-size:10px}.course-publish-bar textarea{min-height:70px;resize:vertical;border:1px solid #d8e1eb;border-radius:8px;padding:9px}.course-entitlement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.compact-list article{grid-template-columns:minmax(0,1fr) auto auto}.admin-policy-note{margin:0;border-left:3px solid #6d8fb6;background:#eef4fb;color:#526d8b;padding:12px 14px;font-size:12px;line-height:1.6}.course-release-list>article{display:grid;grid-template-columns:minmax(0,1fr) 70px 180px 90px;align-items:center;gap:12px;border-top:1px solid #e3e8ef;padding:13px 0}.course-release-list>article p{margin:4px 0 0;color:#7b899a;font-size:11px}.course-release-list>article em{color:#577597;font-size:11px;font-style:normal;font-weight:800;text-align:right}.course-preview-backdrop,.model-editor-backdrop{display:flex;justify-content:flex-end}.course-preview-drawer,.model-editor-drawer{position:relative;width:min(520px,92vw);height:100%;overflow-y:auto;background:#fff;box-shadow:-18px 0 54px #1625382e;padding:26px}.course-preview-drawer>.admin-drawer-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#f1f4f8}.course-preview-drawer h2{margin:5px 0}.course-preview-stats{display:grid;gap:4px;margin:22px 0;border-radius:11px;background:#edf5fd;padding:18px}.course-preview-stats strong{font-size:28px}.course-preview-stats span{color:#61758b;font-size:11px}.course-preview-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e5eaf0;padding:12px 0;font-size:12px}.course-preview-row em{color:#637991;font-style:normal}.model-editor-drawer{width:min(620px,94vw)}.model-editor-drawer .model-routing-form{grid-template-columns:repeat(2,minmax(0,1fr));border:0;background:transparent;padding:0}.model-editor-drawer .model-routing-form>button{grid-column:1 / -1}.token-plan-restriction-notice{display:flex;align-items:flex-start;gap:8px;margin:12px 0;padding:12px 14px;border:1px solid rgba(190,120,25,.35);border-radius:12px;background:#fff4dac7;color:#6b4516;font-size:13px;line-height:1.6}.token-plan-restriction-notice a{color:#7b4c11;font-weight:700;white-space:nowrap}.model-routing-form .model-editor-notice{grid-column:1 / -1;margin:0}.model-key-list article{grid-template-columns:minmax(180px,1.3fr) 105px 145px minmax(100px,auto) 76px auto auto 38px;overflow-x:auto}.release-hero-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.release-hero-grid article{display:grid;gap:6px;border:1px solid #e1e7ef;border-radius:10px;background:#fafbfd;padding:14px}.release-hero-grid span{color:#748397;font-size:10px;font-weight:850}.release-hero-grid strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.release-hero-grid p{margin:0;color:#7d8998;font-size:10px;line-height:1.5}.release-record-list article{grid-template-columns:20px minmax(0,1fr) 100px 180px 60px}.release-record-list article>em{color:#416993;font-size:10px;font-style:normal;font-weight:850}.ai-usage-filters{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr)) auto;align-items:end;gap:9px;border:1px solid #e0e7ef;border-radius:10px;background:#f8fafc;padding:13px}.ai-usage-filters label{display:grid;gap:5px;min-width:0;color:#6f8094;font-size:10px;font-weight:850}.ai-usage-filters select,.ai-usage-filters input{min-width:0;height:37px;border:1px solid #d7e0e9;border-radius:7px;background:#fff;color:#304760;padding:0 8px;font-size:11px}.ai-usage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.ai-usage-summary article{display:grid;gap:5px;border:1px solid #e0e7ef;border-radius:9px;background:#fff;padding:13px}.ai-usage-summary span{color:#708197;font-size:10px;font-weight:850}.ai-usage-summary strong{font-size:20px}.ai-usage-summary p{margin:0;color:#7d8b9c;font-size:10px}.ai-usage-table{display:grid;gap:6px}.ai-usage-table article{display:grid;grid-template-columns:20px minmax(180px,1fr) minmax(110px,.6fr) 90px 150px;align-items:center;gap:10px;border:1px solid #e2e8ef;border-radius:8px;background:#fbfcfd;padding:10px}.ai-usage-table article p{margin:3px 0 0;color:#7a899b;font-size:10px}.ai-usage-table article>span,.ai-usage-table time{color:#6f8094;font-size:10px}.managed-accounts-panel,.class-directory-panel{display:grid;gap:14px;margin-bottom:18px}.admin-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;border:0;background:#111e2d57}.managed-account-heading{align-items:center}.managed-account-filters{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(4,minmax(96px,.55fr)) auto auto auto;align-items:center;gap:8px}.managed-account-filters>select{min-width:0;height:40px;border:1px solid #d7e0e9;border-radius:7px;background:#fff;color:#304760;padding:0 8px;font-size:11px}.managed-account-filters>span{color:#68798d;font-size:11px;font-weight:800;white-space:nowrap}.managed-account-filters .toolbar-search-field,.managed-account-filters .admin-compact-filter{min-height:40px;font-size:11px}.managed-account-filters .secondary-btn{min-height:40px;white-space:nowrap}.managed-account-clear-filters{padding-inline:10px}.managed-account-export{min-width:118px}.managed-account-batchbar{display:flex;align-items:center;flex-wrap:wrap;gap:7px;border:1px solid #cbdcf0;border-radius:9px;background:#edf5fd;padding:8px 10px}.managed-account-batchbar strong{margin-right:auto;color:#315b8d;font-size:11px}.managed-account-batchbar button{display:inline-flex;align-items:center;gap:4px;min-height:30px;border:1px solid #bfd1e5;border-radius:7px;background:#fff;color:#315b8d;padding:0 9px;font-size:10px;font-weight:800}.managed-account-table-wrap{max-height:calc(100vh - 320px);min-height:360px;overflow:auto;border:1px solid #dfe6ee;border-radius:10px;background:#fff}.managed-account-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;color:#31465f;font-size:11px}.managed-account-table th{position:sticky;top:0;z-index:2;height:36px;border-bottom:1px solid #dfe6ee;background:#f4f7fa;color:#67798e;padding:0 8px;text-align:left;font-size:10px}.managed-account-table td{height:40px;border-bottom:1px solid #edf0f4;padding:3px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-account-table tbody tr{cursor:pointer}.managed-account-table tbody tr:hover{background:#f7faff}.managed-account-table tbody tr:focus-visible{position:relative;z-index:1;outline:2px solid #4f83bd;outline-offset:-2px;background:#f2f7fd}.managed-account-table tbody tr.is-selected{background:#edf5fd}.managed-account-table .is-checkbox{width:40px;text-align:center}.managed-account-table .is-checkbox input{width:17px;height:17px;accent-color:#2865ac;cursor:pointer}.managed-account-table .is-action{width:48px;text-align:center}.managed-account-table th:nth-child(2){width:15%}.managed-account-table th:nth-child(3){width:20%}.managed-account-table th:nth-child(4){width:11%}.managed-account-table th:nth-child(5){width:16%}.managed-account-table th:nth-child(6){width:72px}.managed-account-table th:nth-child(7){width:116px}.managed-account-name{display:grid;gap:1px;width:100%;min-width:0;border:0;background:transparent;color:#263e58;padding:0;text-align:left}.managed-account-name strong,.managed-account-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-account-name small{color:#7d8998;font-size:10px}.managed-account-table time{color:#718196;font-size:10px}.managed-account-empty{height:160px!important;color:#718096;text-align:center}.managed-account-empty svg{margin-right:7px;vertical-align:middle}.managed-account-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#68798d;font-size:10px}.managed-account-pagination>span{margin-right:auto}.managed-account-pagination label{display:inline-flex;align-items:center;gap:5px}.managed-account-pagination select,.managed-account-pagination input{height:32px;border:1px solid #d7e0e9;border-radius:6px;background:#fff;padding:0 6px}.managed-account-pagination input{width:52px}.managed-account-drawer-backdrop{display:flex;justify-content:flex-end}.managed-account-drawer{position:relative;display:grid;align-content:start;gap:14px;width:min(460px,94vw);height:100%;overflow-y:auto;background:#fff;box-shadow:-18px 0 54px #1625382e;padding:28px}.managed-account-drawer>.admin-drawer-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#f1f4f8}.managed-account-drawer>h2{margin:0}.managed-account-drawer>p{margin:0;color:#718096;font-size:11px;line-height:1.55}.managed-account-drawer>label{display:grid;gap:6px;color:#53677e;font-size:11px;font-weight:800}.managed-account-drawer input{min-height:40px;border:1px solid #d7e0e9;border-radius:8px;padding:0 10px}.managed-account-drawer label small{color:#8793a1;font-size:9px;font-weight:500}.managed-account-detail-list{display:grid;gap:0;margin:4px 0;border:1px solid #e0e7ef;border-radius:9px;background:#f8fafc}.managed-account-detail-list>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;border-bottom:1px solid #e4eaf0;padding:10px}.managed-account-detail-list>div:last-child{border-bottom:0}.managed-account-detail-list dt{color:#728095;font-size:10px}.managed-account-detail-list dd{margin:0;overflow-wrap:anywhere;color:#2e465f;font-size:10px;font-weight:800}.managed-account-security-actions{display:grid;gap:7px;border-top:1px solid #e1e7ee;padding-top:14px}.managed-account-security-actions h3{margin:0 0 3px;font-size:13px}.managed-account-security-actions>button{display:flex;align-items:center;gap:10px;border:1px solid #dce4ed;border-radius:9px;background:#fff;color:#2d4864;padding:11px;text-align:left}.managed-account-security-actions>button>span{display:grid;gap:2px}.managed-account-security-actions small{color:#7d8a99;font-size:9px}.managed-account-security-actions>button.is-danger{border-color:#efcaca;color:#a33c3c}.managed-account-batch-dialog{width:min(520px,92vw)}.managed-account-batch-dialog label{display:grid;gap:6px}.managed-account-batch-dialog textarea{min-height:88px;resize:vertical}.managed-account-batch-dialog input,.managed-account-batch-dialog textarea{border:1px solid #d7e0e9;border-radius:8px;padding:9px}.managed-account-batch-dialog code{overflow-wrap:anywhere;color:#8a3c26}.admin-course-preview-page{min-height:100vh;background:#f3f6fa;color:#263c56}.admin-course-preview-page.is-loading,.admin-course-preview-page.is-error{display:grid;place-content:center;justify-items:center;gap:12px;padding:24px;text-align:center}.admin-course-preview-page.is-error p{max-width:620px;color:#718096}.admin-course-preview-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:78px;border-bottom:1px solid #dce4ed;background:#fffffff5;padding:12px 20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-course-preview-header>div:nth-child(2){display:grid;gap:2px;min-width:0}.admin-course-preview-header>div:nth-child(2) span{color:#1e7457;font-size:10px;font-weight:900}.admin-course-preview-header>div:nth-child(2) strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.admin-course-preview-header>div:nth-child(2) small{color:#76869a;font-size:10px}.admin-course-preview-view-switch{display:flex;gap:3px;border-radius:9px;background:#edf1f5;padding:3px}.admin-course-preview-view-switch button{display:inline-flex;align-items:center;gap:5px;min-height:34px;border:0;border-radius:7px;background:transparent;color:#61758c;padding:0 10px;font-size:10px;font-weight:850}.admin-course-preview-view-switch button.is-active{background:#fff;color:#1f5d9e;box-shadow:0 2px 8px #192f4917}.admin-course-preview-notice{display:flex;align-items:center;gap:8px;min-height:38px;border-bottom:1px solid #dce4ed;background:#ecf8f3;color:#246b55;padding:0 20px;font-size:10px}.admin-course-preview-layout{display:grid;grid-template-columns:230px minmax(0,1fr) 300px;min-height:calc(100vh - 116px)}.admin-course-preview-outline,.admin-course-preview-side{position:sticky;top:116px;height:calc(100vh - 116px);overflow-y:auto;background:#fff}.admin-course-preview-outline{border-right:1px solid #dfe6ee;padding:16px 12px}.admin-course-preview-outline>strong{display:block;margin:0 7px 10px;color:#66788d;font-size:11px}.admin-course-preview-outline nav{display:grid;gap:5px}.admin-course-preview-outline nav button{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;min-width:0;border:1px solid transparent;border-radius:8px;background:transparent;color:#53667c;padding:8px;text-align:left}.admin-course-preview-outline nav button.is-active{border-color:#c9daee;background:#edf5fd;color:#1f5c9f}.admin-course-preview-outline nav button>span:first-child{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#e8edf3;font-size:10px;font-weight:900}.admin-course-preview-outline nav button>span:last-child{display:grid;gap:2px;min-width:0}.admin-course-preview-outline nav strong,.admin-course-preview-outline nav small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-course-preview-outline nav strong{font-size:11px;line-height:1.4}.admin-course-preview-outline nav small{color:#78889a;font-size:10px;line-height:1.35}.admin-course-preview-content{min-width:0;padding:24px clamp(18px,3vw,44px) 60px}.admin-course-preview-content>article{max-width:900px;margin:0 auto;border:1px solid #dfe6ee;border-radius:12px;background:#fff;padding:clamp(20px,3vw,38px)}.admin-course-preview-content h1{margin:5px 0 9px;font-size:clamp(24px,3vw,34px)}.admin-course-preview-content .lead{color:#5d7188;line-height:1.65}.admin-course-preview-content .content-block{margin-top:20px}.admin-course-preview-side{display:grid;align-content:start;gap:10px;overflow-x:hidden;border-left:1px solid #dfe6ee;padding:16px}.admin-course-preview-side>div{display:grid;gap:8px;border:1px solid #dfe6ee;border-radius:9px;background:#f8fafc;padding:13px}.admin-course-preview-side span{display:flex;align-items:center;gap:6px;color:#365c86;font-size:10px;font-weight:900}.admin-course-preview-side p,.admin-course-preview-side ul{margin:0;overflow-wrap:anywhere;color:#5e7085;font-size:11px;line-height:1.65}.admin-course-preview-note-sections{display:grid;gap:8px}.admin-course-preview-note-sections section{display:grid;gap:4px;border-left:2px solid #b8cce3;padding-left:9px}.admin-course-preview-note-sections section>strong{color:#355d86;font-size:10px}.admin-course-preview-note-sections section>p{color:#526a82}.admin-compact-filter{min-width:120px;height:38px;border:1px solid #d7e0e9;border-radius:7px;background:#fff;padding:0 9px}.managed-account-filters.class-directory-filters{grid-template-columns:minmax(260px,1fr) auto auto}.class-directory-table th:first-child{width:18%}.class-directory-table th:nth-child(2){width:18%}.class-directory-table th:nth-child(3){width:18%}.class-directory-table th:nth-child(4){width:10%}.class-directory-table th:nth-child(5){width:70px}.class-directory-table th:nth-child(6){width:100px}.class-directory-table th:nth-child(7){width:72px}.class-directory-table td:nth-child(2){color:#718196;font-size:10px}.class-directory-drawer{width:min(560px,94vw)}.class-capacity-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.class-capacity-fields>label{display:grid;gap:6px;color:#53677e;font-size:11px;font-weight:800}.class-roster-editor{display:grid;gap:13px;border-top:1px solid #e1e7ee;padding-top:14px}.class-roster-editor h3{margin:0;font-size:13px}.class-roster-editor p{margin:4px 0 0;color:#718096;font-size:10px;line-height:1.55}.class-roster-editor .admin-list-toolbar{display:grid;grid-template-columns:126px minmax(0,1fr);gap:8px;margin:0;padding:9px}.class-roster-editor .admin-list-toolbar select,.class-roster-change-form select,.class-roster-change-form input{min-width:0;min-height:38px;border:1px solid #d7e0e9;border-radius:7px;background:#fff;color:#304760;padding:0 9px;font-size:11px}.class-account-results{display:grid;grid-template-columns:1fr;gap:7px}.class-account-results>button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;border:1px solid #dce5ef;border-radius:8px;background:#fff;color:#263d57;padding:10px;text-align:left}.class-account-results>button:hover{border-color:#9ebce0;background:#f1f7fd}.class-account-results>button span{display:grid;gap:3px;min-width:0}.class-account-results strong,.class-account-results small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-account-results small{color:#7c8b9c;font-size:10px}.class-roster-change-form{display:grid;grid-template-columns:126px minmax(0,1fr);gap:8px;border-top:1px solid #dde6ef;padding-top:13px}.class-roster-change-form h3{grid-column:1 / -1}.class-roster-change-form>button{justify-self:start}.admin-workspace-loading{display:grid;place-items:center;gap:10px;min-height:280px;color:#61758c}.admin-workspace-loading span{width:28px;height:28px;border:3px solid #dbe5f0;border-top-color:#2865ac;border-radius:999px;animation:admin-spin .9s linear infinite}@media(max-width:1180px){.admin-v2-app{grid-template-columns:78px minmax(0,1fr)}.admin-v2-sidebar{width:78px;gap:14px;padding-inline:10px}.admin-sidebar-brand{display:flex;justify-content:center;padding-inline:0}.admin-sidebar-brand div,.admin-sidebar-brand>svg,.admin-v2-sidebar nav>button>span,.admin-v2-sidebar nav>button>svg:last-child,.admin-sidebar-account>span{display:none}.admin-v2-sidebar nav>button{display:grid;grid-template-columns:1fr;place-items:center;min-height:46px;padding:8px}.admin-v2-sidebar nav>button>svg:first-child{grid-column:1}.admin-sidebar-account{justify-content:center;padding-inline:0}.admin-overview-scale-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.course-lesson-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.course-governance-columns{grid-template-columns:1fr}.managed-account-filters{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(120px,.55fr)) auto}.managed-account-filters>input:nth-of-type(2),.managed-account-filters>select:nth-of-type(2){grid-row:2}.admin-course-preview-layout{grid-template-columns:190px minmax(0,1fr)}.admin-course-preview-side{position:static;grid-column:2;height:auto;overflow:visible;border-top:1px solid #dfe6ee;border-left:0;padding:0 clamp(18px,3vw,44px) 40px}.course-publish-bar{grid-template-columns:1fr 1fr}.course-publish-bar>button{grid-column:1 / -1;justify-self:end}.release-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-usage-filters{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media(max-width:820px){.admin-v2-app{display:block}.admin-v2-sidebar{position:fixed;left:0;top:0;width:min(310px,86vw);transform:translate(-104%);transition:transform .18s ease;box-shadow:18px 0 48px #1323362e}.admin-v2-sidebar.is-open{transform:translate(0)}.admin-sidebar-brand{display:grid;justify-content:initial;padding-inline:7px}.admin-sidebar-brand div,.admin-sidebar-brand>svg,.admin-v2-sidebar nav>button>span,.admin-v2-sidebar nav>button>svg:last-child,.admin-sidebar-account>span{display:grid}.admin-v2-sidebar nav>button{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;place-items:initial;min-height:58px;padding:9px 10px}.admin-sidebar-account{justify-content:space-between;padding-inline:7px}.admin-drawer-close{display:grid}.admin-mobile-menu{position:fixed;top:24px;left:16px;z-index:45;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d7e0ea;border-radius:9px;background:#fff;color:#31587f;box-shadow:0 8px 22px #172d461c}.admin-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;border:0;background:#111e2d57}.admin-v2-header{min-height:88px;padding-left:70px}.admin-v2-header .ghost-btn{display:none}.admin-global-search{width:min(390px,50vw)}.admin-secondary-tabs{top:88px}.admin-overview-detail-grid,.course-entitlement-grid{grid-template-columns:1fr}.course-series-summary{grid-template-columns:1fr 1fr}.course-series-summary>div:first-child{grid-column:1 / -1}.course-series-summary>div:nth-child(2){border-left:0;padding-left:0}.course-material-checklist{grid-template-columns:1fr}.course-lesson-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.course-governance-status-grid{grid-template-columns:1fr}.managed-account-filters{grid-template-columns:1fr 1fr}.managed-account-filters>label{grid-column:1 / -1}.admin-course-preview-header{grid-template-columns:auto minmax(0,1fr)}.admin-course-preview-view-switch{grid-column:1 / -1;justify-self:start}.admin-course-preview-layout{grid-template-columns:1fr}.admin-course-preview-outline{position:static;height:auto;overflow:visible;border-right:0;border-bottom:1px solid #dfe6ee}.admin-course-preview-outline nav{display:flex;overflow-x:auto;padding-bottom:3px}.admin-course-preview-outline nav button{flex:0 0 190px}.admin-course-preview-content,.admin-course-preview-side{grid-column:1}.admin-course-preview-side{padding-inline:16px}.admin-embedded-workspace .admin-grid,.admin-embedded-workspace .admin-grid.lower{grid-template-columns:1fr}}@media(max-width:520px){.admin-v2-header{gap:8px;min-height:82px;padding:12px 12px 12px 64px}.admin-v2-header h1{font-size:20px}.admin-v2-header>div>p:last-child{display:none}.admin-global-search{width:min(180px,48vw)}.admin-global-search kbd{display:none}.admin-secondary-tabs{top:82px;padding:0 10px}.admin-secondary-tabs button{min-height:44px;padding:0 11px;font-size:12px}.admin-v2-content{padding:14px 12px 36px}.admin-overview-intro{align-items:flex-start;padding:16px}.admin-overview-intro h2{font-size:18px}.admin-overview-scale-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-overview-scale-grid article{padding:13px}.admin-overview-detail-grid>button{min-height:150px}.school-directory-list article{grid-template-columns:38px minmax(0,1fr) auto}.school-directory-list article>button{grid-column:1 / -1;justify-self:stretch}.course-series-summary{padding:16px}.course-lesson-matrix{grid-template-columns:1fr}.course-material-checklist label{grid-template-columns:26px minmax(0,1fr) auto}.course-material-checklist label em{grid-column:2 / -1;text-align:left}.course-publish-bar{grid-template-columns:1fr}.course-publish-bar>button{grid-column:auto;width:100%}.course-release-list>article{grid-template-columns:1fr auto}.course-release-list>article span:nth-of-type(2){display:none}.release-hero-grid{grid-template-columns:1fr}.release-record-list article{grid-template-columns:20px minmax(0,1fr) auto}.release-record-list article>span{display:none}.model-editor-drawer{padding:20px 14px}.model-editor-drawer .model-routing-form{grid-template-columns:1fr}.ai-usage-filters,.ai-usage-summary{grid-template-columns:1fr 1fr}.ai-usage-table article{grid-template-columns:18px minmax(0,1fr) auto}.ai-usage-table article>span,.ai-usage-table time{display:none}.class-account-results,.managed-account-filters{grid-template-columns:1fr}.managed-account-filters>label{grid-column:auto}.managed-account-table-wrap{max-height:none;min-height:0;overflow:visible;border:0;background:transparent}.managed-account-table,.managed-account-table tbody{display:grid;gap:8px}.managed-account-table thead{display:none}.managed-account-table tr{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;border:1px solid #dfe6ee;border-radius:9px;background:#fff;padding:10px 44px 10px 40px}.managed-account-table td{display:flex;align-items:baseline;gap:8px;width:auto!important;height:auto;min-width:0;border:0;padding:0;overflow:visible;white-space:normal}.managed-account-table td[data-label]:before{content:attr(data-label);flex:0 0 56px;color:#7b899a;font-size:9px;font-weight:800}.managed-account-table .is-checkbox{position:absolute;top:13px;left:12px}.managed-account-table .is-action{position:absolute;top:8px;right:8px}.managed-account-table td:nth-child(2),.managed-account-table td:nth-child(3),.managed-account-table td:nth-child(4),.managed-account-table td:nth-child(5),.managed-account-table td:nth-child(7){grid-column:1 / -1}.managed-account-table td:nth-child(2):before{display:none}.managed-account-table td:nth-child(6){grid-column:1 / -1}.class-directory-table tr{padding-left:12px}.class-directory-table td:nth-child(1),.class-directory-table td:nth-child(2),.class-directory-table td:nth-child(3),.class-directory-table td:nth-child(4),.class-directory-table td:nth-child(5),.class-directory-table td:nth-child(6),.class-directory-table td:nth-child(7){grid-column:1 / -1}.class-directory-table td:nth-child(1):before{display:none}.class-directory-table td:nth-child(2):before{display:block}.class-directory-table td[data-label]:before{flex-basis:68px}.managed-account-empty{position:static!important;grid-column:1 / -1;padding:24px!important}.managed-account-pagination{justify-content:center;flex-wrap:wrap}.managed-account-pagination>span{width:100%;margin:0;text-align:center}.managed-account-drawer{padding:22px 16px}.admin-course-preview-header{min-height:92px;gap:8px 12px;padding:10px 12px}.admin-course-preview-header>div:nth-child(2) small{display:none}.admin-course-preview-notice{padding-inline:12px}.admin-course-preview-content{padding:14px 12px 32px}.admin-course-preview-content>article{padding:18px 15px}.managed-accounts-panel>.section-heading.compact,.class-directory-panel>.section-heading.compact{align-items:flex-start;flex-direction:column}.managed-account-filters.class-directory-filters,.class-roster-editor .admin-list-toolbar,.class-roster-change-form,.class-capacity-fields{grid-template-columns:1fr}.class-roster-change-form h3{grid-column:auto}.class-roster-change-form>button{width:100%;justify-content:center}}.teacher-v2-app{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr);background:#f5f7fa;color:#20344c}.teacher-v2-sidebar{position:sticky;top:0;z-index:52;display:flex;flex-direction:column;width:252px;height:100vh;border-right:1px solid #dfe6ee;background:#fff;padding:20px 14px 16px}.teacher-sidebar-brand{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 6px 22px}.teacher-sidebar-brand>button:first-child{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:10px;background:#23654a;color:#fff;font-weight:900;letter-spacing:.04em}.teacher-sidebar-brand div{display:grid;gap:2px;min-width:0}.teacher-sidebar-brand strong{font-size:14px}.teacher-sidebar-brand span{color:#77869a;font-size:10px}.teacher-v2-sidebar nav{display:grid;gap:6px}.teacher-v2-sidebar nav>button{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:10px;width:100%;border:1px solid transparent;border-radius:9px;background:transparent;color:#53677e;padding:10px 9px;text-align:left}.teacher-v2-sidebar nav>button:hover{background:#f1f5f3;color:#244b3b}.teacher-v2-sidebar nav>button.is-active{border-color:#cde0d7;background:#eaf4ef;color:#1d6548}.teacher-v2-sidebar nav>button>span{display:grid;gap:3px;min-width:0}.teacher-v2-sidebar nav strong{font-size:13px}.teacher-v2-sidebar nav small{overflow:hidden;color:#7a899c;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.teacher-sidebar-account{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;border-top:1px solid #e6ebf0;padding:15px 6px 0;color:#354b63;font-size:12px}.teacher-sidebar-account button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#6b7b8f;font-size:12px}.teacher-drawer-close,.teacher-mobile-menu,.teacher-drawer-backdrop{display:none}.teacher-v2-main{min-width:0}.teacher-v2-header{position:sticky;top:0;z-index:38;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:92px;border-bottom:1px solid #dfe6ee;background:#fffffff5;padding:16px clamp(20px,3vw,40px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.teacher-v2-header h1{margin:2px 0 3px;font-size:clamp(22px,2vw,29px);letter-spacing:-.02em}.teacher-v2-header p{margin:0;color:#728095;font-size:12px}.teacher-v2-header-actions{display:flex;align-items:center;gap:9px}.teacher-v2-content{min-width:0;padding:22px clamp(16px,2.5vw,34px) 48px}.teacher-workspace-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;border:1px solid #cfe1d8;border-radius:9px;background:#eff8f3;color:#285842;padding:10px 12px;font-size:12px}.teacher-workspace-notice button{border:0;background:transparent;color:inherit}.teacher-schedule-prerequisite{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 12px;border:1px solid #ead7b1;border-radius:10px;background:#fff9ed;padding:14px 16px}.teacher-schedule-prerequisite div{display:grid;gap:4px}.teacher-schedule-prerequisite strong{color:#6b4d16;font-size:13px}.teacher-schedule-prerequisite p{margin:0;color:#7c6843;font-size:11px;line-height:1.55}.prep-command-heading .form-hint{flex-basis:100%;margin:0;color:#8a6522;font-size:12px}.teacher-schedule-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.teacher-schedule-summary article{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid #dfe6ec;border-radius:10px;background:#fff;padding:12px 14px}.teacher-schedule-summary svg{color:#38775c}.teacher-schedule-summary span{color:#718095;font-size:11px}.teacher-schedule-summary strong{color:#20344c;font-size:15px}.teacher-calendar-panel{overflow:hidden;border:1px solid #dae2ea;border-radius:12px;background:#fff;box-shadow:0 7px 22px #1d30450d}.teacher-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:68px;border-bottom:1px solid #e3e8ee;padding:12px 14px}.teacher-calendar-month-actions,.teacher-calendar-filters{display:flex;align-items:center;gap:8px}.teacher-calendar-month-actions h2{min-width:122px;margin:0 0 0 4px;font-size:18px}.teacher-calendar-filters select,.teacher-list-toolbar select{min-width:118px;height:38px;border:1px solid #d6dfe7;border-radius:7px;background:#fff;color:#344b61;padding:0 9px}.teacher-calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;min-width:0}.teacher-month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;border-right:1px solid #e1e7ed}.teacher-calendar-weekday{border-bottom:1px solid #e3e8ee;background:#f8fafb;color:#708094;padding:9px 7px;text-align:center;font-size:11px;font-weight:800}.teacher-calendar-day{min-width:0;min-height:164px;border-right:1px solid #e6ebf0;border-bottom:1px solid #e6ebf0;background:#fff;padding:6px;outline:0}.teacher-calendar-day:nth-child(7n){border-right:0}.teacher-calendar-day.is-outside{background:#fafbfc;color:#a0abb8}.teacher-calendar-day.is-selected{box-shadow:inset 0 0 0 2px #63a283}.teacher-calendar-day.is-today .teacher-calendar-date{background:#26684b;color:#fff}.teacher-calendar-date{display:grid;place-items:center;width:25px;height:25px;margin:0 0 5px auto;border:0;border-radius:999px;background:transparent;color:inherit;font-size:11px}.teacher-calendar-events{display:grid;gap:4px}.teacher-calendar-event{display:grid;gap:2px;width:100%;overflow:hidden;border:1px solid #d5e5dd;border-left:3px solid #38805f;border-radius:5px;background:#eff7f3;color:#254839;padding:4px 5px;text-align:left;cursor:pointer}.teacher-calendar-event.is-live{border-color:#f0c9a7;border-left-color:#d87532;background:#fff4e9;color:#75411e}.teacher-calendar-event.is-completed{border-color:#dbe1e8;border-left-color:#7a899a;background:#f5f7f9;color:#56677a}.teacher-calendar-event time{font-size:9px;font-weight:850}.teacher-calendar-event strong,.teacher-calendar-event span,.teacher-calendar-event em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-calendar-event strong{font-size:10px}.teacher-calendar-event span{font-size:9px;opacity:.82}.teacher-calendar-event em{font-size:8px;font-style:normal;opacity:.78}.teacher-calendar-more{border:0;background:transparent;color:#35745a;padding:2px 4px;text-align:left;font-size:10px;font-weight:800}.teacher-day-agenda{min-width:0;background:#fafbfc;padding:13px}.teacher-day-agenda>div:first-child{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6px;border-bottom:1px solid #e1e7ed;padding-bottom:11px}.teacher-day-agenda>div:first-child span{color:#77879a;font-size:10px}.teacher-day-agenda>button{display:grid;gap:5px;width:100%;border:0;border-bottom:1px solid #e5eaf0;background:transparent;color:#2b455e;padding:11px 2px;text-align:left}.teacher-day-agenda time,.teacher-day-agenda p{margin:0;color:#76869a;font-size:10px}.teacher-list-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:14px;border:1px solid #dfe6ed;border-radius:10px;background:#fff;padding:11px}.teacher-search-field{display:flex;align-items:center;gap:8px;flex:1;min-width:180px;height:38px;border:1px solid #d6dfe7;border-radius:7px;padding:0 10px;color:#748497}.teacher-search-field input{min-width:0;flex:1;border:0;outline:0}.teacher-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.teacher-course-card{display:grid;align-content:start;gap:9px;min-width:0;border:1px solid #dfe6ed;border-radius:11px;background:#fff;padding:16px}.teacher-course-card-heading{display:flex;align-items:center;justify-content:space-between;color:#39765c}.teacher-course-card h3,.teacher-course-card p{margin:0}.teacher-course-card>p{min-height:38px;color:#718196;font-size:11px;line-height:1.65}.teacher-course-card dl{display:grid;grid-template-columns:1fr 1fr;margin:2px 0;border-block:1px solid #e7ebef;padding:9px 0}.teacher-course-card dl div{display:grid;gap:3px}.teacher-course-card dt{color:#8693a3;font-size:9px}.teacher-course-card dd{margin:0;font-size:11px;font-weight:750}.teacher-course-reference-note{display:flex;align-items:center;gap:5px;min-height:auto!important;color:#8b6424!important}.teacher-course-actions{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:3px}.teacher-course-actions .primary-btn{flex:1}.teacher-compact-modal{width:min(480px,calc(100vw - 28px))}.teacher-compact-modal>label{display:grid;gap:7px;color:#43586d;font-size:12px;font-weight:750}.teacher-compact-modal input{height:42px;border:1px solid #d3dce5;border-radius:8px;padding:0 11px}.teacher-library-page{min-width:0}.teacher-course-preview-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.teacher-course-preview-meta>div{display:grid;gap:4px;min-width:0;border:1px solid #e2e8ee;border-radius:8px;background:#f8fafb;padding:10px}.teacher-course-preview-meta dt{color:#7d8b9c;font-size:10px}.teacher-course-preview-meta dd{min-width:0;margin:0;color:#2b435a;font-size:11px;font-weight:760;overflow-wrap:anywhere}.teacher-preparation-form{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}.teacher-preparation-form>*,.teacher-preparation-section,.teacher-preparation-section>div{min-width:0}.teacher-preparation-form>label,.teacher-preparation-section>label{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}.teacher-preparation-form textarea{width:100%;min-width:0;min-height:96px;resize:vertical}.teacher-preparation-section{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;border:1px solid #dfe6ed;border-radius:10px;background:#fff;padding:14px}.teacher-preparation-section h3,.teacher-preparation-section p{margin:0;overflow-wrap:anywhere}.teacher-preparation-section p{color:#647589;font-size:12px;line-height:1.7;white-space:pre-wrap}.teacher-review-filters{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr))}.teacher-review-tabs{position:static;margin:-4px 0 14px;border:1px solid #dfe6ed;border-radius:10px;padding:0 8px}.teacher-review-split{display:grid;grid-template-columns:minmax(260px,32%) minmax(0,1fr);min-height:640px;overflow:hidden;border:1px solid #dce4eb;border-radius:12px;background:#fff}.teacher-review-queue{overflow:auto;border-right:1px solid #dfe6ed;background:#fafbfc}.teacher-review-queue>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;border-bottom:1px solid #e2e8ee;background:#f7f9fb;padding:14px;font-size:12px}.teacher-review-queue>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;width:100%;border:0;border-bottom:1px solid #e6ebef;background:transparent;color:#2c435a;padding:12px 14px;text-align:left}.teacher-review-queue>button.is-active{box-shadow:inset 3px 0 #2d7757;background:#edf6f1}.teacher-review-queue>button span{display:grid;gap:4px;min-width:0}.teacher-review-queue>button strong,.teacher-review-queue>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-review-queue>button small,.teacher-review-queue time{color:#79889a;font-size:10px}.teacher-review-queue em{color:#a1672a;font-size:10px;font-style:normal}.teacher-review-queue time{grid-column:1 / -1}.teacher-review-detail{min-width:0;overflow:auto;padding:22px}.teacher-review-editor{display:grid;gap:17px;width:100%;max-width:880px;margin:auto}.teacher-review-editor>strong{font-size:18px}.teacher-review-editor>p{margin:-10px 0 0;color:#78889a;font-size:11px}.teacher-review-editor textarea{width:100%}.teacher-review-form{display:grid;gap:17px;max-width:880px;margin:auto}.teacher-review-form>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e7ec;padding-bottom:15px}.teacher-review-form h2,.teacher-review-form h3,.teacher-review-form p{margin:0}.teacher-review-form header p:last-child{margin-top:5px;color:#78889a;font-size:11px}.teacher-review-form section{display:grid;gap:8px}.teacher-submission-content{min-height:130px;border:1px solid #e1e7ed;border-radius:9px;background:#f8fafb;padding:14px;white-space:pre-wrap;line-height:1.7}.teacher-review-score-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.teacher-review-form label{display:grid;gap:6px;color:#465b70;font-size:11px;font-weight:780}.teacher-review-form input,.teacher-review-form select,.teacher-review-form textarea{width:100%;border:1px solid #d5dee7;border-radius:8px;background:#fff;padding:9px 10px;color:#2a4158}.teacher-analytics-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr))}.teacher-analytics-filters label{display:grid;gap:4px;color:#718095;font-size:9px}.teacher-analytics-filters input{height:38px;border:1px solid #d6dfe7;border-radius:7px;padding:0 8px}.teacher-student-drilldown{margin-top:14px}.teacher-student-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.teacher-student-list button{display:grid;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:9px;border:1px solid #dfe6ed;border-radius:8px;background:#fff;color:#314a61;padding:11px;text-align:left}.teacher-student-list button:hover{border-color:#9fc3b1;background:#f2f8f5}.teacher-student-list span{display:grid;gap:3px;min-width:0}.teacher-student-list small{overflow:hidden;color:#7b8a9c;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.teacher-drawer-backdrop.is-detail{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;border:0;background:#1623305c}.teacher-schedule-detail{position:fixed;top:0;right:0;z-index:72;display:flex;flex-direction:column;width:min(440px,92vw);height:100vh;overflow:auto;background:#fff;box-shadow:-18px 0 45px #14233229;padding:22px}.teacher-schedule-detail>header,.teacher-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e1e7ed;padding-bottom:14px}.teacher-schedule-detail h2,.teacher-dialog-heading h2{margin:2px 0 0;font-size:20px}.teacher-schedule-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:18px 0}.teacher-schedule-detail-list div{display:grid;gap:4px;border-bottom:1px solid #e7ebef;padding-bottom:9px}.teacher-schedule-detail-list dt{color:#7c8a9b;font-size:10px}.teacher-schedule-detail-list dd{margin:0;font-size:12px;font-weight:760}.teacher-data-lock-note,.teacher-room-warning{display:flex;align-items:flex-start;gap:8px;border:1px solid #efd7af;border-radius:8px;background:#fff8eb;color:#795124;padding:10px;font-size:11px;line-height:1.5}.teacher-schedule-detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:16px}.teacher-schedule-dialog{width:min(760px,calc(100vw - 28px));max-height:92vh;overflow:auto;text-align:left}.teacher-schedule-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.teacher-schedule-dialog label{display:grid;gap:6px;color:#4d6074;font-size:11px;font-weight:780}.teacher-schedule-dialog input,.teacher-schedule-dialog select,.teacher-schedule-dialog textarea{width:100%;border:1px solid #d4dde5;border-radius:7px;background:#fff;padding:8px 9px}.teacher-time-wheel{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:7px;grid-column:1 / -1}.teacher-time-wheel label{min-width:0}.teacher-time-wheel select{height:120px;padding:3px}.teacher-time-wheel option{padding:5px;text-align:center}.teacher-duration-picker,.teacher-series-scope{display:flex;flex-wrap:wrap;gap:7px}.teacher-duration-picker button,.teacher-series-scope button{border:1px solid #d5dee6;border-radius:7px;background:#fff;color:#4b6075;padding:7px 10px}.teacher-duration-picker button.is-active,.teacher-series-scope button.is-active{border-color:#6fa188;background:#edf6f1;color:#246246}.teacher-repeat-setting{display:grid;gap:8px;grid-column:1 / -1;border-top:1px solid #e3e8ed;padding-top:10px}.teacher-repeat-setting>label:first-child{display:flex;align-items:center;grid-template-columns:auto 1fr}.teacher-repeat-setting input[type=checkbox]{width:auto}.teacher-schedule-preview{display:grid;gap:7px;grid-column:1 / -1}.teacher-schedule-preview-list{max-height:190px;overflow:auto;border:1px solid #e0e6ec;border-radius:8px}.teacher-schedule-preview-list label{display:grid;grid-template-columns:18px 125px minmax(0,1fr);align-items:center;gap:7px;border-bottom:1px solid #e7ebef;padding:7px 9px}.teacher-schedule-preview-list label.has-blocker{background:#fff2ef;color:#8a3f32}.teacher-schedule-preview-list label.has-warning{background:#fff9ec;color:#795525}.teacher-schedule-preview-list input{width:auto}.teacher-schedule-preview-list small{font-size:9px}@media(max-width:1180px){.teacher-v2-app{grid-template-columns:220px minmax(0,1fr)}.teacher-v2-sidebar{width:220px}.teacher-v2-sidebar nav small{display:none}.teacher-calendar-layout{grid-template-columns:minmax(0,1fr) 220px}.teacher-calendar-filters .primary-btn{display:none}.teacher-course-grid,.teacher-student-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.teacher-v2-app{display:block}.teacher-v2-sidebar{position:fixed;left:0;top:0;width:min(310px,86vw);transform:translate(-104%);transition:transform .18s ease;box-shadow:18px 0 48px #1323362e}.teacher-v2-sidebar.is-open{transform:translate(0)}.teacher-drawer-close{display:grid;place-items:center;border:0;background:transparent;color:#6b7b8c}.teacher-mobile-menu{position:fixed;top:24px;left:16px;z-index:45;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d7e0ea;border-radius:9px;background:#fff;color:#31587f;box-shadow:0 8px 22px #172d461c}.teacher-drawer-backdrop:not(.is-detail){position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:block;border:0;background:#111e2d57}.teacher-v2-header{min-height:88px;padding-left:70px}.teacher-calendar-layout{grid-template-columns:1fr}.teacher-month-calendar{border-right:0}.teacher-day-agenda{border-top:1px solid #e1e7ed}.teacher-review-split{grid-template-columns:minmax(220px,38%) minmax(0,1fr)}.teacher-review-filters{grid-template-columns:repeat(3,minmax(110px,1fr))}}@media(max-width:600px){.teacher-v2-header{min-height:82px;padding:12px 12px 12px 64px}.teacher-v2-header h1{font-size:20px}.teacher-v2-header>div>p:last-child,.teacher-v2-header-actions{display:none}.teacher-v2-content{padding:12px 8px 34px}.teacher-schedule-summary{grid-template-columns:1fr 1fr 1fr;gap:6px}.teacher-schedule-summary article{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px}.teacher-schedule-summary article svg{display:none}.teacher-schedule-summary strong{font-size:12px}.teacher-calendar-toolbar{align-items:flex-start;flex-direction:column;padding:9px}.teacher-calendar-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.teacher-calendar-filters select{min-width:0;width:100%;font-size:10px}.teacher-calendar-day{min-height:58px;padding:3px}.teacher-calendar-weekday{padding:7px 2px;font-size:9px}.teacher-calendar-date{width:22px;height:22px;margin:0 auto 2px}.teacher-calendar-event{min-height:5px;border:0;border-radius:4px;background:#3b8463;padding:0}.teacher-calendar-event time,.teacher-calendar-event strong,.teacher-calendar-event span,.teacher-calendar-event em{display:none}.teacher-calendar-event.is-live{background:#dc7c38}.teacher-calendar-event.is-completed{background:#8b98a6}.teacher-calendar-more{padding:0;font-size:8px}.teacher-day-agenda{padding:10px}.teacher-list-toolbar{align-items:stretch;flex-direction:column}.teacher-list-toolbar select{width:100%}.teacher-course-grid,.teacher-student-list,.teacher-course-preview-meta{grid-template-columns:1fr}.teacher-review-filters,.teacher-analytics-filters{display:grid;grid-template-columns:1fr 1fr}.teacher-review-split{display:block}.teacher-review-queue{max-height:330px;border-right:0;border-bottom:1px solid #dfe6ed}.teacher-review-detail{padding:14px 10px}.teacher-review-score-row,.teacher-schedule-form-grid{grid-template-columns:1fr}.teacher-outcome-package-panel .section-heading{display:grid}.teacher-outcome-package-panel .section-heading .button-row{display:grid;grid-template-columns:1fr;width:100%}.teacher-outcome-package-panel .section-heading select,.teacher-outcome-package-panel .section-heading button{min-width:0;width:100%}.teacher-outcome-package-rows article{grid-template-columns:minmax(0,1fr)}.teacher-outcome-row-actions{justify-content:stretch}.teacher-time-wheel{grid-template-columns:repeat(5,minmax(0,1fr))}.teacher-time-wheel select{height:105px;padding:1px;font-size:10px}.teacher-schedule-preview-list label{grid-template-columns:17px 94px minmax(0,1fr)}.teacher-schedule-detail-actions{grid-template-columns:1fr}}.narration-production-empty{display:grid;gap:14px;max-width:760px}.narration-production-empty h2,.narration-production-empty p{margin:0}.narration-production-empty>p{color:#62748a;line-height:1.75}.narration-production-empty .primary-btn{justify-self:start}.narration-production-workspace{display:grid;gap:14px}.narration-production-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.narration-production-header h2,.narration-production-header p{margin:0}.narration-production-header>div:first-child{display:grid;gap:5px}.narration-production-header>div:first-child>p:last-child{color:#718095;font-size:11px}.narration-import-button{position:relative;cursor:pointer}.narration-import-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.narration-profile-editor{padding:0;overflow:hidden}.narration-profile-editor summary{cursor:pointer;padding:14px 16px;color:#354e67;font-size:12px;font-weight:820}.narration-profile-editor summary span{margin-left:8px;color:#8693a2;font-size:10px;font-weight:500}.narration-profile-editor>div{display:grid;grid-template-columns:1fr 1fr 1fr 1fr minmax(220px,2fr) auto;align-items:end;gap:10px;border-top:1px solid #e1e7ed;background:#fafbfc;padding:14px 16px}.narration-profile-editor label{display:grid;gap:5px;color:#607287;font-size:9px;font-weight:780}.narration-profile-editor input{min-width:0;width:100%;height:36px;border:1px solid #d7e0e8;border-radius:7px;background:#fff;padding:0 9px}.narration-page-list{display:grid;gap:10px}.narration-page-row{display:grid;grid-template-columns:150px minmax(300px,1fr) 150px auto;align-items:start;gap:12px;padding:14px}.narration-page-row>header{display:grid;gap:4px;min-width:0}.narration-page-row>header span{color:#7b899b;font-size:10px}.narration-page-row>header strong{overflow-wrap:anywhere;font-size:12px}.narration-page-row>header em{width:fit-content;border-radius:999px;background:#eef2f7;color:#5f7186;padding:3px 7px;font-size:9px;font-style:normal}.narration-page-row.status-ready>header em{background:#e8f5ed;color:#28704d}.narration-page-row.status-stale>header em,.narration-page-row.status-failed>header em{background:#fff0e7;color:#98522d}.narration-page-row>label{display:grid;gap:6px;color:#556a80;font-size:10px;font-weight:780}.narration-page-row textarea{width:100%;min-height:96px;resize:vertical;border:1px solid #d8e0e8;border-radius:8px;background:#fff;padding:10px;color:#2b4157;line-height:1.65}.narration-page-row textarea:disabled{background:#f3f5f7;color:#8a96a4}.narration-page-meta{display:grid;gap:7px;color:#738397;font-size:10px}.narration-page-meta .is-warning{color:#a36d18;font-weight:800}.narration-page-meta .is-error{color:#b33e36;font-weight:800}.narration-page-row>.button-row{align-self:center;max-width:310px}.narration-enable-toggle{display:inline-flex!important;grid-template-columns:auto auto!important;align-items:center;gap:5px!important;white-space:nowrap}.narration-enable-toggle input{width:auto}@media(max-width:1120px){.narration-page-row{grid-template-columns:130px minmax(280px,1fr) 120px}.narration-page-row>.button-row{grid-column:2 / -1;justify-content:flex-start}.narration-profile-editor>div{grid-template-columns:1fr 1fr 1fr}}@media(max-width:720px){.narration-production-header{align-items:stretch;flex-direction:column}.narration-production-header .button-row{display:grid;grid-template-columns:1fr}.narration-page-row{grid-template-columns:1fr}.narration-page-row>.button-row{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;max-width:none}.narration-profile-editor>div{grid-template-columns:1fr}}
