@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Source+Serif+4:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Source+Serif+4:wght@400;500;600;700&display=swap";.support-menu{display:inline-flex;position:relative}.support-menu--block{width:100%;display:flex}.support-menu__trigger{cursor:pointer;justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.support-menu__trigger--block{justify-content:flex-start;width:100%}.support-menu__panel{z-index:80;color:#0f172a;background:#fff;border:1px solid #0f172a1f;border-radius:14px;width:min(288px,100vw - 24px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0f172a24}.support-menu__panel--up{top:auto;bottom:calc(100% + 8px)}.support-menu__panel--start{left:0;right:auto}.support-menu__heading{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0 0 8px;font-size:12px;font-weight:700}.support-menu__heading--secondary{margin-top:14px}.support-menu__list{flex-direction:column;gap:8px;display:flex}.support-menu__link{color:#0f172a;background:#f8fafc;border:1px solid #0f172a1a;border-radius:12px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-size:14px;font-weight:600;line-height:1.3;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.support-menu__link:hover,.support-menu__link:focus-visible{background:#eef2ff;border-color:#2563eb47;outline:none}.support-menu__link--phone{color:#065f46;background:#ecfdf5;border-color:#05966947}.support-menu__link--phone:hover,.support-menu__link--phone:focus-visible{background:#d1fae5;border-color:#05966973}.support-menu__link-icon{background:#ffffffd9;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.support-menu__link-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.support-menu__link-label{letter-spacing:.02em;text-transform:uppercase;color:inherit;opacity:.72;font-size:11px;font-weight:600}.support-menu__link-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.support-call-strip{color:#065f46;background:linear-gradient(#f0fdf8 0%,#ecfdf5 100%);border:1px solid #05966938;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 14px;width:100%;margin:0 0 18px;padding:12px 14px;display:flex}.support-call-strip__label{letter-spacing:.04em;text-transform:uppercase;color:#047857;flex:none;margin:0;font-size:12px;font-weight:700}.support-call-strip__numbers{flex-wrap:wrap;flex:auto;gap:8px;min-width:0;display:flex}.support-call-strip__link{color:#065f46;background:#fff;border:1px solid #0596694d;border-radius:12px;flex:200px;align-items:center;gap:10px;min-width:0;min-height:48px;padding:10px 12px;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.support-call-strip__link:hover,.support-call-strip__link:focus-visible{background:#d1fae5;border-color:#05966980;outline:none}.support-call-strip__icon{background:#ecfdf5;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.support-call-strip__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.support-call-strip__action{letter-spacing:.02em;text-transform:uppercase;opacity:.72;font-size:11px;font-weight:600}.support-call-strip__value{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.3;overflow:hidden}@media (width<=640px){.support-call-strip{flex-direction:column;align-items:stretch;gap:10px}.support-call-strip__numbers{flex-direction:column}.support-call-strip__link{flex:auto;width:100%}}:root{--teacher-bg:var(--stitch-bg,#fbf9f6);--teacher-bg-strong:var(--app-paper,#fbf9f6);--teacher-surface:var(--stitch-surface,#fff);--teacher-surface-2:var(--stitch-surface-muted,#f8fafc);--teacher-surface-3:var(--app-surface-tint,#eef3ff);--teacher-surface-4:#edf1f7;--teacher-border:var(--stitch-border,#dbe4f0);--teacher-border-soft:var(--app-border-strong,#c9d6ea);--teacher-border-strong:var(--app-border-strong,#c9d6ea);--teacher-text:var(--stitch-text,#0f172a);--teacher-muted:var(--stitch-text-soft,#334155);--teacher-primary:var(--stitch-accent,#7d5b45);--teacher-primary-strong:var(--stitch-accent-strong,#111827);--teacher-success:var(--app-success,#0f766e);--teacher-warning:#b7791f;--teacher-danger:var(--app-danger,#a45045);--teacher-shadow:var(--app-shadow,0 1px 2px #0f172a0f);--teacher-text-soft:var(--teacher-muted);--teacher-text-strong:var(--teacher-text);--teacher-accent:var(--teacher-primary);--teacher-accent-strong:var(--teacher-primary-strong);--teacher-accent-soft:var(--stitch-accent-soft,#f3ebe4);--teacher-surface-soft:var(--teacher-surface-2);--teacher-warn:var(--teacher-warning);--teacher-sidebar-width:256px}.teacher-app{background:radial-gradient(circle at top right, #7d5b4514, transparent 22rem), linear-gradient(180deg, #f4f8ffd1 0%, #fbf9f6fa 14%, var(--teacher-bg) 100%);min-height:100vh;color:var(--teacher-text);font-family:Plus Jakarta Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.teacher-app--standalone{display:block}.teacher-shell{min-height:100vh}.teacher-sidebar{width:var(--teacher-sidebar-width);border-right:1px solid var(--teacher-border);background:color-mix(in srgb, var(--teacher-surface) 94%, white 6%);z-index:30;box-sizing:border-box;flex-direction:column;gap:18px;padding:22px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.teacher-sidebar-backdrop{display:none}.teacher-brand{color:var(--teacher-text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:6px 10px;display:flex}.teacher-brand-mark{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);width:40px;height:40px;color:var(--teacher-primary);border-radius:12px;flex-shrink:0;place-items:center;font-size:18px;font-weight:800;display:grid}.teacher-brand-copy{gap:2px;min-width:0;display:grid}.teacher-brand-copy strong{font-size:22px;line-height:1.05}.teacher-brand-copy span{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.teacher-nav{gap:4px;display:grid}.teacher-nav a,.teacher-sidebar-footer button{min-width:0;color:var(--teacher-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:flex}.teacher-nav a span,.teacher-sidebar-footer button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.teacher-nav a:hover,.teacher-sidebar-footer button:hover{color:var(--teacher-text);background:var(--teacher-surface-2)}.teacher-nav a.active{color:var(--teacher-text);border-color:var(--teacher-border);background:var(--teacher-accent-soft)}.teacher-sidebar-footer{border-top:1px solid var(--teacher-border);gap:10px;margin-top:auto;padding-top:16px;display:grid}.teacher-sidebar-chip{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);color:var(--teacher-primary);font:inherit;cursor:pointer;border-radius:999px;padding:8px 12px;font-weight:700}.teacher-main{min-height:100vh;margin-left:var(--teacher-sidebar-width);min-width:0}.teacher-topbar{z-index:20;border-bottom:1px solid var(--teacher-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbf9f6f0;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:14px 24px;display:flex;position:sticky;top:0}.teacher-topbar__leading{align-items:center;gap:12px;min-width:0;display:flex}.teacher-topbar__copy{gap:2px;min-width:0;display:grid}.teacher-topbar__label{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.teacher-topbar__title{font-size:15px;font-weight:700;line-height:1.1}.teacher-menu-button{border:1px solid var(--teacher-border);background:var(--teacher-surface);width:40px;height:40px;color:var(--teacher-text);cursor:pointer;border-radius:12px;flex-shrink:0;place-items:center;display:none}.teacher-user{align-items:center;gap:10px;min-width:0;display:flex}.teacher-user__copy{text-align:right;gap:2px;min-width:0;display:grid}.teacher-user__copy strong{font-size:13px;line-height:1.1}.teacher-avatar{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);width:36px;height:36px;color:var(--teacher-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:800;display:grid}.teacher-avatar--large{width:42px;height:42px}.teacher-content{box-sizing:border-box;width:100%;padding:20px 24px 28px}.teacher-page-stack,.teacher-stack,.teacher-main,.teacher-content>*,.teacher-panel,.teacher-card,.teacher-feed-card,.teacher-class-card,.teacher-assignment-card,.teacher-table-wrap,.teacher-form,.teacher-card-actions,.teacher-section-head,.teacher-topbar__copy,.teacher-brand-copy,.teacher-user__copy{min-width:0}.teacher-stack{gap:14px;display:grid}.teacher-page-stack{gap:16px;display:grid}.teacher-page-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.teacher-page-head h1{letter-spacing:0;overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:0;font-size:clamp(28px,2.5vw,40px);line-height:1.04}.teacher-page-head p{overflow-wrap:anywhere;max-width:640px;margin:6px 0 0;font-size:13px}.teacher-muted{color:var(--teacher-muted)}.teacher-wrap,.teacher-text-break,.teacher-text-break *{overflow-wrap:anywhere;word-break:break-word;min-width:0}.teacher-truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.teacher-no-wrap{white-space:nowrap}.teacher-command-grid{grid-template-columns:minmax(0,1fr) minmax(300px,336px);align-items:start;gap:16px;display:grid}.teacher-command-grid--wide{grid-template-columns:minmax(0,1fr) minmax(320px,360px)}.teacher-command-grid--equal{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,340px);align-items:start;gap:16px;display:grid}.teacher-dashboard-shell{grid-template-columns:minmax(0,1fr) minmax(300px,340px);align-items:start;gap:18px;display:grid}.teacher-dashboard-main,.teacher-dashboard-side{min-width:0}.teacher-dashboard-grid>.teacher-panel,.teacher-dashboard-grid>aside,.teacher-command-grid>.teacher-panel,.teacher-command-grid>aside,.teacher-dashboard-shell>.teacher-dashboard-main,.teacher-dashboard-shell>.teacher-dashboard-side,.teacher-class-hero__grid>*{align-self:start;height:auto}.teacher-panel,.teacher-card,.teacher-role-gate__card{border:1px solid var(--teacher-border);background:color-mix(in srgb, var(--teacher-surface) 96%, white 4%);box-shadow:var(--teacher-shadow);border-radius:18px}.teacher-panel{padding:16px}.teacher-card,.teacher-class-card,.teacher-assignment-card,.teacher-feed-card,.teacher-student-card{padding:14px}.teacher-class-card,.teacher-assignment-card,.teacher-feed-card,.teacher-student-card{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:16px}.teacher-card--class,.teacher-card--action,.teacher-student-card,.teacher-plain-link{transition:border-color .15s,background-color .15s,transform .15s}.teacher-card--class:hover,.teacher-card--action:hover,.teacher-student-card:hover,.teacher-plain-link:hover{border-color:var(--teacher-border-soft);background:var(--teacher-surface-3);transform:translateY(-1px)}.teacher-card__head,.teacher-class-card__head,.teacher-assignment-card__head,.teacher-feed-card__head,.teacher-section-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-section-head h2,.teacher-panel h2,.teacher-card h2{margin:0;font-size:18px;line-height:1.2}.teacher-card h3,.teacher-class-card h3{margin:0;font-size:17px;line-height:1.2}.teacher-card__icon{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);width:32px;height:32px;color:var(--teacher-primary);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.teacher-class-grid,.teacher-next-grid,.teacher-assignment-grid,.teacher-roster-grid{gap:12px;display:grid}.teacher-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.teacher-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.teacher-row-wrap{flex-wrap:wrap}.teacher-assignment-grid,.teacher-roster-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.teacher-next-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.teacher-card--action{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.teacher-card--action strong{font-size:14px}.teacher-card--action span{font-size:12px}.teacher-card-copy,.teacher-feed-card__body,.teacher-inline-summary{margin:0;font-size:13px;line-height:1.45}.teacher-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.teacher-metric-card{border:1px solid var(--teacher-border);background:color-mix(in srgb, var(--teacher-surface) 90%, var(--teacher-surface-2) 10%);border-radius:16px;min-width:0;padding:14px 16px}.teacher-metric-card__label{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.teacher-metric-card__value{margin-top:10px;font-size:clamp(28px,2vw,36px);font-weight:800;line-height:1}.teacher-metric-card.tone-primary .teacher-metric-card__value{color:var(--teacher-primary)}.teacher-metric-card.tone-success .teacher-metric-card__value{color:var(--teacher-success)}.teacher-metric-card.tone-warning .teacher-metric-card__value{color:var(--teacher-warning)}.teacher-meta,.teacher-header-actions,.teacher-card-actions,.teacher-inline-summary,.teacher-inline-stats,.teacher-stats,.teacher-table__actions,.teacher-table__badge-wrap{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.teacher-header-actions{justify-content:flex-end}.teacher-inline-summary{color:var(--teacher-muted)}.teacher-inline-stats,.teacher-stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.teacher-inline-stats--wide{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.teacher-inline-stat,.teacher-stat{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:14px;min-width:0;padding:10px 12px}.teacher-inline-stat strong,.teacher-stat strong{font-size:18px;line-height:1;display:block}.teacher-inline-stat span,.teacher-stat span{color:var(--teacher-muted);align-items:center;gap:6px;margin-top:6px;font-size:12px;display:inline-flex}.teacher-inline-stat.accent-success strong{color:var(--teacher-success)}.teacher-inline-stat.accent-warning strong{color:var(--teacher-warning)}.teacher-chip,.teacher-status-pill{white-space:nowrap;text-overflow:ellipsis;border-radius:999px;justify-content:center;align-items:center;gap:6px;max-width:100%;min-height:26px;padding:4px 10px;font-size:11px;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.teacher-chip{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);color:var(--teacher-primary)}.teacher-status-pill.success{border:1px solid color-mix(in srgb, var(--teacher-success) 28%, white 72%);background:color-mix(in srgb, var(--teacher-success) 12%, white 88%);color:var(--teacher-success)}.teacher-status-pill.warning{color:var(--teacher-warning);background:#b7791f1f;border:1px solid #b7791f42}.teacher-status-pill.muted{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);color:var(--teacher-muted)}.teacher-button{background:var(--teacher-primary);color:#fff;min-height:38px;font:inherit;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;transition:filter .15s,transform .15s,background-color .15s,border-color .15s;display:inline-flex}.teacher-button:hover{filter:brightness(1.04);transform:translateY(-1px)}.teacher-button.secondary{border-color:var(--teacher-border);background:var(--teacher-accent-soft);color:var(--teacher-primary)}.teacher-button.ghost{border-color:var(--teacher-border);background:var(--teacher-surface);color:var(--teacher-text)}.teacher-button:disabled{cursor:not-allowed;opacity:.62;transform:none}.teacher-tabs,.teacher-segmented{flex-wrap:wrap;gap:8px;display:flex}.teacher-tab,.teacher-segmented button{border:1px solid var(--teacher-border);background:var(--teacher-surface);color:var(--teacher-muted);font:inherit;white-space:nowrap;cursor:pointer;border-radius:12px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1}.teacher-tab.active,.teacher-segmented button.active{border-color:var(--teacher-border-soft);background:var(--teacher-accent-soft);color:var(--teacher-primary)}.teacher-form{gap:10px;display:grid}.teacher-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-form-grid textarea,.teacher-form-grid .teacher-card-actions{grid-column:1/-1}.teacher-form input,.teacher-form textarea,.teacher-form select,.teacher-toolbar-search input{box-sizing:border-box;border:1px solid var(--teacher-border-strong);background:var(--teacher-surface);width:100%;color:var(--teacher-text);font:inherit;border-radius:12px;outline:0;padding:10px 12px}.teacher-form input::placeholder,.teacher-form textarea::placeholder,.teacher-toolbar-search input::placeholder{color:#7f89a7}.teacher-form textarea{resize:vertical;min-height:110px}.teacher-toolbar-search{border:1px solid var(--teacher-border-strong);background:var(--teacher-surface);width:min(100%,280px);color:var(--teacher-muted);border-radius:12px;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.teacher-toolbar-search input{background:0 0;border:0;padding:10px 0}.teacher-empty{border:1px dashed var(--teacher-border-strong);color:var(--teacher-muted);text-align:center;border-radius:16px;padding:18px}.teacher-empty--left{text-align:left}.teacher-feed-item{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:14px;align-items:flex-start;gap:10px;min-width:0;padding:12px;display:flex}.teacher-feed-item__icon{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:11px;font-weight:800;display:grid}.teacher-feed-item__icon.neutral{background:var(--teacher-accent-soft);color:var(--teacher-primary)}.teacher-feed-card__body{color:var(--teacher-muted)}.teacher-plain-link{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);color:inherit;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;text-decoration:none;display:flex}.teacher-link-inline{color:var(--teacher-primary);font-size:13px;font-weight:700;text-decoration:none}.teacher-link-inline:hover{color:#e3d7ff}.teacher-table-wrap{border:1px solid var(--teacher-border);background:var(--teacher-surface);-webkit-overflow-scrolling:touch;border-radius:16px;min-width:0;overflow-x:auto}.teacher-table{border-collapse:collapse;width:100%;min-width:720px}.teacher-table--compact{min-width:640px}.teacher-table th,.teacher-table td{border-bottom:1px solid var(--teacher-border);text-align:left;vertical-align:middle;min-width:0;padding:12px 14px;font-size:13px}.teacher-table th{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:700}.teacher-table tbody tr:last-child td{border-bottom:0}.teacher-table__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.teacher-table__meta{color:var(--teacher-muted);margin-top:4px;font-size:12px;line-height:1.35}.teacher-table__actions,.teacher-table__badge-wrap{align-items:center}.teacher-attachment{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.teacher-worksheet-studio{gap:12px;width:100%}.teacher-worksheet-classbar{justify-content:space-between;align-items:flex-end;gap:14px;padding:16px 18px;display:flex}.teacher-worksheet-classbar__field{flex:1;min-width:0}.teacher-worksheet-classbar__link{flex-shrink:0;margin-bottom:6px}.teacher-worksheet-classbar h2,.teacher-worksheet-launch h2,.teacher-worksheet-empty-state h2{margin:0}.teacher-worksheet-classbar p,.teacher-worksheet-launch p,.teacher-worksheet-empty-state p{margin:5px 0 0}.teacher-worksheet-classbar__copy{min-width:0}.teacher-worksheet-classbar__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.teacher-compact-select{border:1px solid var(--teacher-border);background:var(--teacher-surface-soft);width:min(340px,58vw);min-height:42px;color:var(--teacher-text);font:inherit;border-radius:14px;outline:0;padding:9px 12px;font-weight:700}.teacher-worksheet-runtime{gap:12px}.teacher-worksheet-page-layout{flex-direction:column;gap:20px;width:100%;display:flex}.teacher-worksheet-create-row{gap:12px;width:100%;display:grid}.teacher-worksheet-launch{background:radial-gradient(circle at top right, #43d7ac24, transparent 24rem), var(--teacher-surface);gap:14px;padding:16px;display:grid}.teacher-worksheet-launch__head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.teacher-worksheet-mode-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.teacher-worksheet-mode-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:16px;gap:8px;height:100%;min-height:160px;padding:18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.teacher-worksheet-mode-card:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 8px 24px #0f172a14}.teacher-worksheet-mode-card strong{font-size:1.02rem}.teacher-worksheet-mode-card__icon{border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.teacher-worksheet-mode-card__icon--quick{color:#ea580c;background:#fff7ed}.teacher-worksheet-mode-card__icon--upload{color:#16a34a;background:#f0fdf4}.teacher-worksheet-mode-card__icon--custom{color:#7c3aed;background:#f5f3ff}.teacher-worksheet-subview__head{gap:12px;display:grid}.teacher-worksheet-upload-panel{max-width:520px}.teacher-worksheet-tool-grid{gap:12px;display:grid}.teacher-worksheet-tool-grid h3{margin:4px 0 0;font-size:1rem}.teacher-worksheet-config-grid.stitch-test-config-card__grid--chapter{grid-template-columns:minmax(90px,.55fr) minmax(220px,1.45fr) repeat(3,minmax(96px,.65fr))}.teacher-worksheet-form textarea{min-height:78px}.teacher-worksheet-form-row.teacher-two{gap:10px}.teacher-worksheet-library{gap:20px;width:100%;display:grid}.teacher-worksheet-library__head h2{margin:0 0 4px;font-size:1.25rem}.teacher-worksheet-library__head p{margin:0}.teacher-worksheet-library__section{gap:12px;display:grid}.teacher-worksheet-library-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.teacher-worksheet-draft-list{gap:10px;display:grid}.teacher-section-title{color:var(--teacher-text);margin:0;font-size:.95rem;font-weight:700}.teacher-worksheet-draft-card{flex-direction:column;justify-content:space-between;gap:12px;min-height:132px;display:flex}.teacher-worksheet-draft-card .teacher-row{background:0 0;padding:0}.teacher-worksheet-draft-card__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.teacher-worksheet-empty-state{text-align:left;grid-column:1/-1;align-content:center;justify-items:start;gap:8px;min-height:120px;display:grid}.teacher-button:disabled{cursor:not-allowed;opacity:.55}.teacher-worksheet-hero{background:radial-gradient(circle at top left, #8c77ff47, transparent 22rem), linear-gradient(135deg, #43d7ac1a, transparent 38%), var(--teacher-surface);grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);align-items:stretch;gap:18px;display:grid;position:relative;overflow:hidden}.teacher-worksheet-hero:after{content:"";filter:blur(8px);pointer-events:none;background:#6a8cff2e;border-radius:999px;width:260px;height:260px;position:absolute;inset:auto -40px -70px auto}.teacher-worksheet-hero>*{z-index:1;position:relative}.teacher-worksheet-hero h2{max-width:760px;margin-top:6px;font-size:clamp(1.45rem,3vw,2.4rem);line-height:1.08}.teacher-worksheet-hero p{max-width:680px;margin:12px 0 0;font-size:.98rem;line-height:1.65}.teacher-worksheet-hero__stats{grid-template-columns:repeat(3,minmax(0,1fr));align-self:end;gap:10px;display:grid}.teacher-class-selector-grid--compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.teacher-app .stitch-launchpad__grid{grid-template-columns:minmax(240px,.85fr) minmax(0,1.4fr);gap:16px;display:grid}.teacher-app .stitch-launch-card{border:1px solid var(--teacher-border);background:linear-gradient(145deg, #ffffff14, transparent), var(--teacher-surface-soft);min-height:100%;color:var(--teacher-text);text-align:left;border-radius:24px;gap:14px;padding:18px;display:grid;box-shadow:inset 0 1px #ffffff0f}.teacher-app button.stitch-launch-card{cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.teacher-app button.stitch-launch-card:hover{border-color:var(--teacher-border-strong);background:radial-gradient(circle at top left, #8c77ff2e, transparent 18rem), var(--teacher-surface-soft);transform:translateY(-2px)}.teacher-app .stitch-launch-card__title{color:var(--teacher-text-strong);align-items:center;gap:10px;font-size:1.05rem;font-weight:800;display:flex}.teacher-app .stitch-launch-card__copy{color:var(--teacher-text-soft);line-height:1.55}.teacher-app .stitch-launch-card__cta{background:linear-gradient(135deg, var(--teacher-accent), var(--teacher-accent-strong));color:#fff;cursor:pointer;width:fit-content;font:inherit;border:0;border-radius:999px;padding:10px 15px;font-weight:800}.teacher-app .stitch-test-config-card{background:radial-gradient(circle at top right, #43d7ac29, transparent 18rem), var(--teacher-surface-soft)}.teacher-app .stitch-test-config-card__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.teacher-app .stitch-test-config-card__grid--chapter{grid-template-columns:minmax(110px,.7fr) minmax(240px,1.6fr) repeat(3,minmax(110px,.75fr))}.teacher-app .stitch-test-config-card__field{min-width:0;color:var(--teacher-text-soft);letter-spacing:.02em;text-transform:uppercase;gap:7px;font-size:.78rem;font-weight:700;display:grid}.teacher-app .stitch-test-config-card__field--wide{min-width:0}.teacher-app .stitch-select-wrap{position:relative}.teacher-app .stitch-select{appearance:none;border:1px solid var(--teacher-border);width:100%;min-height:44px;color:var(--teacher-text);font:inherit;background:#040a1838;border-radius:15px;outline:0;padding:10px 34px 10px 12px;font-weight:600}.teacher-app[data-theme=light] .stitch-select{background:#ffffffb8}.teacher-app .stitch-select__icon{color:var(--teacher-text-soft);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.teacher-app .stitch-test-config-card__button{justify-self:start}.teacher-app .stitch-inline-note,.teacher-app .stitch-empty-inline{color:var(--teacher-text-soft)}.teacher-app .stitch-inline-note--warning{color:var(--teacher-warn);background:#f8b9631a;border:1px solid #f8b9634d;border-radius:16px;padding:12px 14px}.teacher-app .stitch-generated-layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.teacher-app .stitch-generated-summary,.teacher-app .stitch-generated-paper,.teacher-app .stitch-generated-question{border:1px solid var(--teacher-border);background:linear-gradient(180deg, #ffffff0d, transparent), var(--teacher-surface);color:var(--teacher-text);box-shadow:var(--teacher-shadow);border-radius:24px}.teacher-app .stitch-generated-summary__header,.teacher-app .stitch-generated-paper__header{gap:8px;padding:18px;display:grid}.teacher-app .stitch-generated-paper__header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.teacher-app .stitch-generated-summary__eyebrow,.teacher-app .stitch-generated-paper__eyebrow{color:#c7b7ff;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-size:.76rem;font-weight:800;display:inline-flex}.teacher-app .stitch-generated-summary__content{gap:16px;padding:0 18px 18px;display:grid}.teacher-app .stitch-generated-summary__stats{gap:10px;display:grid}.teacher-app .stitch-generated-summary__stat{border:1px solid var(--teacher-border);background:var(--teacher-surface-soft);border-radius:18px;align-items:center;gap:10px;padding:12px;display:flex}.teacher-app .stitch-generated-summary__stat span,.teacher-app .ui-card__description{color:var(--teacher-text-soft)}.teacher-app .stitch-generated-summary__stat strong,.teacher-app .ui-card__title{color:var(--teacher-text-strong)}.teacher-app .stitch-generated-summary__focus,.teacher-app .stitch-generated-summary__actions,.teacher-app .stitch-generated-summary__chips{flex-wrap:wrap;gap:10px;display:flex}.teacher-app .stitch-generated-summary__focus{display:grid}.teacher-app .stitch-generated-summary__label{color:var(--teacher-text-soft);font-size:.82rem;font-weight:800}.teacher-app .stitch-generated-paper__scroll{max-height:min(820px,72vh);padding:18px;overflow:auto}.teacher-app .stitch-generated-paper__list{gap:14px;display:grid}.teacher-app .stitch-generated-question__content{gap:14px;padding:16px;display:grid}.teacher-app .stitch-generated-question__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-app .stitch-generated-question__body{color:var(--teacher-text-strong);font-size:1rem;line-height:1.65}.teacher-app .stitch-generated-question__options{gap:8px;display:grid}.teacher-app .stitch-generated-question__option{border:1px solid var(--teacher-border);background:var(--teacher-surface-soft);border-radius:16px;gap:10px;padding:10px 12px;display:flex}.teacher-app .stitch-generated-question__option-label{background:var(--teacher-accent-soft);width:24px;height:24px;color:var(--teacher-text-strong);border-radius:999px;flex:none;place-items:center;font-weight:800;display:grid}.teacher-scroll-frame{border:1px solid var(--teacher-border);background:var(--teacher-surface);border-radius:16px;min-width:0;overflow:hidden}.teacher-scroll-frame--table,.teacher-scroll-frame--list{height:min(420px,58vh)}.teacher-scroll-frame--auto{height:auto;max-height:min(360px,48vh)}.teacher-app .ui-scroll-area{width:100%;overflow:hidden}.teacher-scroll-panel{min-width:0;height:100%}.teacher-scroll-frame--auto .teacher-scroll-panel{height:auto;max-height:inherit}.teacher-scroll-panel .ui-scroll-area__viewport{border-radius:inherit;width:100%;height:100%}.teacher-scroll-frame--table .ui-scroll-area__viewport>div{min-width:max-content;display:block!important}.teacher-scroll-frame--auto .teacher-scroll-panel .ui-scroll-area__viewport{height:auto;max-height:inherit}.teacher-scroll-panel .ui-scroll-area__viewport>*{min-width:0}.teacher-scroll-panel--table,.teacher-scroll-panel--list{height:100%}.teacher-scroll-panel--auto{max-height:inherit}.teacher-app .ui-scroll-area__scrollbar{opacity:1;background:var(--stitch-scrollbar-track,#e0d3c733);border-radius:999px;width:10px;padding:2px}.teacher-app .ui-scroll-area__scrollbar--horizontal{height:10px}.teacher-app .ui-scroll-area__thumb{background:linear-gradient(180deg, var(--stitch-scrollbar-thumb,#6f513d94), #7d5b4557);border-radius:999px}.teacher-app .ui-scroll-area__thumb:hover{background:linear-gradient(180deg, var(--stitch-scrollbar-thumb-strong,#584031c2), #7d5b4580)}.teacher-app .ui-scroll-area__corner{background:var(--stitch-scrollbar-track,#e0d3c733)}.teacher-table__cell,.teacher-table__cell>*,.teacher-table__meta,.teacher-inline-summary,.teacher-feed-card__body,.teacher-feed-item strong,.teacher-feed-item .teacher-muted,.teacher-attachment strong,.teacher-attachment .teacher-muted{min-width:0}.teacher-table__actions{flex-wrap:nowrap;gap:6px}.teacher-action-group{align-items:center;gap:6px;min-width:0;display:inline-flex}.teacher-action-chip{border:1px solid var(--teacher-border);background:var(--teacher-surface);min-width:0;max-width:100%;color:var(--teacher-text);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.teacher-action-chip:hover{background:var(--teacher-accent-soft);color:var(--teacher-primary)}.teacher-split-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px;display:grid}.teacher-roster-table td,.teacher-roster-table th,.teacher-submission-table td,.teacher-submission-table th,.teacher-assignment-table td,.teacher-assignment-table th{white-space:nowrap}.teacher-roster-table .teacher-wrap,.teacher-submission-table .teacher-wrap,.teacher-assignment-table .teacher-wrap,.teacher-roster-table .teacher-text-break,.teacher-submission-table .teacher-text-break,.teacher-assignment-table .teacher-text-break{white-space:normal}.teacher-progress-stack{gap:8px;display:grid}.teacher-progress-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.teacher-progress-label{min-width:0;color:var(--teacher-muted);font-size:12px}.teacher-progress-value{color:var(--teacher-text);white-space:nowrap;font-size:12px;font-weight:700}.teacher-compact-kpis{gap:10px;display:grid}.teacher-compact-kpi{gap:6px;min-width:0;display:grid}.teacher-compact-kpi__head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.teacher-compact-kpi__head strong,.teacher-compact-kpi__head span{min-width:0}.teacher-ring-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.teacher-ring-card{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:16px;justify-items:center;gap:8px;min-width:0;padding:14px;display:grid}.teacher-ring{--teacher-ring-value:0;background:conic-gradient(var(--teacher-primary) calc(var(--teacher-ring-value) * 1%), #e2e8f0 0);border-radius:999px;place-items:center;width:74px;height:74px;display:grid;position:relative}.teacher-ring:after{content:"";background:var(--teacher-surface);border-radius:999px;width:54px;height:54px}.teacher-ring>span{font-size:14px;font-weight:800;position:absolute}.teacher-mini-bars{gap:10px;display:grid}.teacher-mini-bar{gap:6px;display:grid}.teacher-mini-bar__head{justify-content:space-between;align-items:center;gap:10px;min-width:0;font-size:12px;display:flex}.teacher-mini-bar__label{min-width:0}.teacher-mini-bar__value{white-space:nowrap;color:var(--teacher-muted)}.teacher-analytics-list{gap:10px;display:grid}.teacher-analytics-row{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:14px;gap:8px;min-width:0;padding:12px;display:grid}.teacher-analytics-row__top{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.teacher-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.teacher-summary-card{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:16px;gap:6px;padding:14px;display:grid}.teacher-summary-card__value{font-size:22px;font-weight:800;line-height:1}.teacher-summary-card__label{color:var(--teacher-muted);font-size:12px}.teacher-subpanel{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:16px;padding:14px}.teacher-page-head__meta{flex-wrap:wrap;gap:8px;min-width:0;margin-top:8px;display:flex}.teacher-class-hero{gap:16px;display:grid}.teacher-class-hero__grid{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;display:grid}.teacher-class-hero__surface{border:1px solid var(--teacher-border);background:linear-gradient(#fff9,#ffffffe0);border-radius:18px;min-width:0;padding:18px}.teacher-class-hero__surface h1,.teacher-class-hero__surface h2{margin:0}.teacher-class-hero__stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.teacher-class-hero__label{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.teacher-class-hero__value{font-size:18px;font-weight:800;line-height:1.15}@media (width<=1080px){.teacher-hero-grid,.teacher-two,.teacher-two-balanced,.teacher-three,.teacher-worksheet-hero,.teacher-split-grid,.teacher-class-hero__grid,.teacher-app .stitch-launchpad__grid,.teacher-app .stitch-generated-layout{grid-template-columns:1fr}.teacher-app .stitch-test-config-card__grid,.teacher-worksheet-config-grid.stitch-test-config-card__grid--chapter,.teacher-app .stitch-test-config-card__grid--chapter{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-search{min-width:0}}.teacher-join-card{border:1px solid var(--teacher-border);background:var(--teacher-accent-soft);border-radius:16px;padding:14px 16px}.teacher-join-card__code{color:var(--teacher-primary);letter-spacing:.04em;font-size:22px;font-weight:800;line-height:1.1;display:block}.teacher-join-card__label{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.teacher-join-entry{gap:12px;display:grid}.teacher-join-entry__row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.teacher-join-entry input{letter-spacing:.14em;text-transform:uppercase;min-height:44px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:15px;font-weight:700}.teacher-join-entry .teacher-button{min-height:44px;padding-inline:16px}@media (width<=640px){.teacher-join-entry__row{grid-template-columns:1fr}}.teacher-error-state{gap:10px}.teacher-create-card{position:sticky;top:78px}.teacher-join-layout,.teacher-role-gate{box-sizing:border-box;place-items:center;min-height:100vh;padding:24px;display:grid}.teacher-join-panel{width:min(100%,640px)}.teacher-role-gate__card{width:min(100%,560px);padding:28px}.teacher-role-gate__eyebrow{color:var(--teacher-primary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.teacher-role-gate__card h1{margin:10px 0 8px;font-size:30px;line-height:1.06}.teacher-role-gate__card p{color:var(--teacher-muted);margin:0 0 10px}.teacher-role-gate__card a{background:var(--teacher-primary-strong);color:#17052e;border-radius:12px;justify-content:center;align-items:center;min-height:38px;margin-top:8px;padding:8px 12px;font-weight:700;text-decoration:none;display:inline-flex}@media (width<=1320px){.teacher-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1180px){.teacher-command-grid,.teacher-command-grid--wide,.teacher-dashboard-grid,.teacher-dashboard-shell{grid-template-columns:1fr}.teacher-create-card{position:static}}@media (width<=900px){.teacher-main{margin-left:0}.teacher-sidebar{transition:transform .18s;transform:translate(-102%);box-shadow:0 24px 50px #0f172a2e}.teacher-sidebar.is-open{transform:translate(0)}.teacher-sidebar-backdrop{z-index:25;opacity:0;pointer-events:none;background:#0f172a2e;transition:opacity .18s;display:block;position:fixed;inset:0}.teacher-sidebar-backdrop.is-open{opacity:1;pointer-events:auto}.teacher-menu-button{display:grid}.teacher-topbar{padding:12px 16px}.teacher-content{padding:16px}.teacher-user__copy{display:none}.teacher-topbar,.teacher-topbar-right,.teacher-page-head,.teacher-card-foot,.teacher-row,.teacher-worksheet-classbar,.teacher-worksheet-launch__head{flex-direction:column;align-items:flex-start}.teacher-compact-select{width:100%}.teacher-user{justify-content:space-between;width:100%}.teacher-user>div{text-align:left}.teacher-search{width:100%}.teacher-kpi-strip,.teacher-stats,.teacher-worksheet-hero__stats,.teacher-kpi-strip-5{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.teacher-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-page-head,.teacher-section-head,.teacher-card__head,.teacher-class-card__head,.teacher-assignment-card__head,.teacher-feed-card__head,.teacher-attachment{flex-direction:column;align-items:stretch}.teacher-form-grid,.teacher-inline-stats,.teacher-stats{grid-template-columns:1fr}.teacher-tabs,.teacher-segmented{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=640px){.teacher-content,.teacher-topbar,.teacher-role-gate,.teacher-join-layout{padding-left:12px;padding-right:12px}.teacher-panel,.teacher-card,.teacher-class-card,.teacher-assignment-card,.teacher-feed-card,.teacher-student-card,.teacher-role-gate__card{border-radius:16px;padding:14px}.teacher-metric-grid{grid-template-columns:1fr}.teacher-tabs,.teacher-segmented{grid-template-columns:1fr 1fr}.teacher-button,.teacher-button.secondary,.teacher-button.ghost{width:100%}.teacher-card-actions,.teacher-table__actions{display:grid}.teacher-kpi-strip,.teacher-stats,.teacher-action-grid,.teacher-worksheet-hero__stats,.teacher-worksheet-config-grid.stitch-test-config-card__grid--chapter,.teacher-app .stitch-test-config-card__grid,.teacher-app .stitch-test-config-card__grid--chapter{grid-template-columns:1fr}}@keyframes teacherRiseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.teacher-page-stack>*{animation:.36s both teacherRiseIn}.teacher-page-stack>:nth-child(2){animation-delay:70ms}.teacher-page-stack>:nth-child(3){animation-delay:.12s}.teacher-panel,.teacher-scroll-frame,.teacher-summary-card,.teacher-analytics-row,.teacher-class-health-row,.teacher-pulse-row,.teacher-feed-item,.teacher-create-card{box-shadow:0 16px 34px #0f172a0f}.teacher-section-head{align-items:center}.teacher-workspace-hero{grid-template-columns:minmax(0,1.35fr) minmax(300px,380px);gap:16px;min-width:0;display:grid}.teacher-workspace-hero__copy,.teacher-workspace-hero__panel,.teacher-pulse-row,.teacher-class-health-row,.teacher-feed-item,.teacher-summary-card,.teacher-ring-card{min-width:0}.teacher-workspace-hero__copy,.teacher-workspace-hero__panel{background:radial-gradient(circle at 100% 0,#7d5b451a,#0000 16rem),linear-gradient(#fffffff5,#f8fafce6);border:1px solid #7d5b452e;border-radius:24px;padding:18px}.teacher-workspace-hero__copy{gap:16px;display:grid}.teacher-workspace-hero__copy h2{margin:0;font-size:clamp(26px,2.6vw,38px);line-height:1.04}.teacher-workspace-hero__eyebrow{color:var(--teacher-primary);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800}.teacher-workspace-hero__panel{gap:14px;display:grid}.teacher-workspace-hero__panel-head strong{margin-top:6px;font-size:20px;line-height:1.15;display:block}.teacher-workspace-hero__pulse{gap:10px;display:grid}.teacher-pulse-row,.teacher-class-health-row{background:#ffffffe0;border:1px solid #7d5b4529;border-radius:18px;gap:8px;padding:14px;display:grid}.teacher-pulse-row__head,.teacher-pulse-row__meta,.teacher-class-health-row__head,.teacher-class-health-row__meta{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.teacher-pulse-row__meta,.teacher-class-health-row__meta{color:var(--teacher-muted);flex-wrap:wrap;font-size:12px}.teacher-metric-grid{gap:10px}.teacher-metric-card{background:linear-gradient(#fffffffa,#f8fafcf0);border-radius:18px;padding:16px 18px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.teacher-metric-card:after{content:"";background:#7d5b452e;border-radius:999px;height:3px;position:absolute;inset:auto 14px 0}.teacher-metric-card.tone-primary:after{background:#7d5b4575}.teacher-metric-card.tone-success:after{background:#0f766e6b}.teacher-metric-card.tone-warning:after{background:#b7791f6b}.teacher-metric-card:hover{transform:translateY(-2px);box-shadow:0 20px 36px #0f172a14}.teacher-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.teacher-summary-grid--compact{grid-template-columns:repeat(3,minmax(140px,1fr))}.teacher-summary-card{background:linear-gradient(#ffffffe6,#f3ebe44d);gap:8px;min-width:0;padding:14px 15px}.teacher-summary-card__value{overflow-wrap:anywhere;min-width:0;line-height:1.15}.teacher-summary-card__hint{color:var(--teacher-muted);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.teacher-feed-item{background:#ffffffe0;border:1px solid #7d5b4524;border-radius:16px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:12px;display:grid}.teacher-feed-item__icon{background:var(--teacher-accent-soft);width:32px;height:32px;color:var(--teacher-primary);border:1px solid #7d5b4529;border-radius:12px;place-items:center;display:grid}.teacher-feed-item__icon.warning{color:var(--teacher-warning);background:#b7791f1f}.teacher-feed-item__icon.success{background:color-mix(in srgb, var(--teacher-success) 12%, white 88%);color:var(--teacher-success)}.teacher-scroll-frame{background:#ffffffeb;border-color:#7d5b4529;border-radius:18px}.teacher-scroll-frame--table{height:min(400px,56vh)}.teacher-scroll-frame--list{height:min(440px,60vh)}.teacher-command-grid,.teacher-dashboard-grid,.teacher-class-hero__grid{gap:18px}.teacher-create-card{background:radial-gradient(circle at 100% 0,#7d5b451a,#0000 15rem),linear-gradient(#fffffff5,#f3ebe466);border-color:#7d5b452e}.teacher-card--action{background:#ffffffe6;border-color:#7d5b4524;border-radius:18px;padding:14px}.teacher-class-health-list,.teacher-analytics-list{gap:10px;display:grid}.teacher-class-health-row__head,.teacher-analytics-row__top{align-items:flex-start}.teacher-analytics-row{background:#ffffffe6;border-color:#7d5b451f;border-radius:18px;gap:10px;padding:14px}.teacher-attachment-list{gap:8px;display:grid}.teacher-attachment{background:#f8fafceb;border:1px solid #7d5b451f;border-radius:16px;padding:10px 12px}.teacher-action-chip{transition:background-color .16s,border-color .16s,transform .16s}.teacher-action-chip:hover{border-color:#7d5b453d;transform:translateY(-1px)}.teacher-ring-card{background:linear-gradient(#fffffff5,#f3ebe457);border-radius:18px;padding:16px 14px}.teacher-ring.tone-primary{background:conic-gradient(var(--teacher-primary) calc(var(--teacher-ring-value) * 1%), #e2e8f0 0)}.teacher-ring.tone-success{background:conic-gradient(var(--teacher-success) calc(var(--teacher-ring-value) * 1%), #e2e8f0 0)}.teacher-ring.tone-warning{background:conic-gradient(var(--teacher-warning) calc(var(--teacher-ring-value) * 1%), #e2e8f0 0)}.teacher-ring.tone-neutral{background:conic-gradient(#475569 calc(var(--teacher-ring-value) * 1%), #e2e8f0 0)}.teacher-join-card,.teacher-class-hero__surface,.teacher-subpanel{background:linear-gradient(#fffffff5,#f8fafce0);border-color:#7d5b4529}.teacher-progress-row{font-variant-numeric:tabular-nums}.teacher-table td,.teacher-table th{vertical-align:top}@media (width<=1080px){.teacher-workspace-hero{grid-template-columns:1fr}}@media (width<=720px){.teacher-workspace-hero__copy,.teacher-workspace-hero__panel{border-radius:20px;padding:16px}.teacher-summary-grid--compact{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.teacher-page-stack>*,.teacher-metric-card,.teacher-card--action,.teacher-action-chip{transition:none;animation:none}}.teacher-quick-wizard__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-quick-wizard__steps{align-items:center;gap:10px;font-size:.9rem;display:flex}.teacher-quick-wizard__steps span.active{color:var(--teacher-accent,#ea580c);font-weight:700}.teacher-quick-wizard__steps span.done{color:#16a34a}.teacher-quick-wizard__divider{background:#cbd5e1;border-radius:999px;width:28px;height:2px}.topics-step{gap:24px;display:grid}.topics-step__header h2{margin:6px 0 0;font-size:1.45rem}.topics-step__filters{background:linear-gradient(#fcfdff 0%,#f8fafc 100%);border:1px solid #e8edf3;border-radius:18px;gap:18px;padding:18px;display:grid}.topics-field{gap:10px;display:grid}.topics-field__label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-size:.78rem;font-weight:700}.topics-field__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.topics-field__hint{color:#94a3b8;font-size:.85rem}.topics-dump-toggle{cursor:pointer;background:#f5f3ff;border:1px dashed #c4b5fd;border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.topics-dump-toggle input{margin-top:3px}.topics-dump-toggle strong{color:#5b21b6;font-size:.92rem;display:block}.topics-dump-toggle em{color:#6d28d9;margin-top:2px;font-size:.8rem;font-style:normal;display:block}.topics-dump-counts{color:#3730a3;background:#eef2ff;border-radius:12px;padding:10px 12px;font-size:.88rem}.topics-dump-counts--warn{color:#92400e;background:#fef3c7}.topics-pill-row{flex-wrap:wrap;gap:8px;display:flex}.topics-pill{color:#334155;cursor:pointer;background:#fff;border:1px solid #dbe3ee;border-radius:999px;padding:8px 14px;font-size:.92rem;font-weight:600;transition:all .15s}.topics-pill:hover{background:#f8fafc;border-color:#cbd5e1}.topics-pill.is-active{color:#c2410c;background:#fff7ed;border-color:#ea580c;box-shadow:0 0 0 3px #ea580c1f}.topics-field--chapters{gap:14px}.topics-chapter-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.topics-chapter-grid--loading{pointer-events:none}.topics-chapter-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.topics-chapter-card:hover{border-color:#cbd5e1;box-shadow:0 8px 20px #0f172a0f}.topics-chapter-card.is-selected{background:#fffaf5;border-color:#ea580c;box-shadow:0 0 0 3px #ea580c1a}.topics-chapter-card--skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;min-height:72px;animation:1.2s infinite topics-shimmer}@keyframes topics-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.topics-chapter-card__index{color:#475569;background:#f1f5f9;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:.9rem;font-weight:700;display:inline-flex}.topics-chapter-card.is-selected .topics-chapter-card__index{color:#c2410c;background:#ffedd5}.topics-chapter-card__body{gap:2px;min-width:0;display:grid}.topics-chapter-card__body strong{font-size:.95rem;line-height:1.3}.topics-chapter-card__body span{color:#94a3b8;font-size:.8rem}.topics-chapter-card__check{color:#ea580c;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.topics-empty,.topics-kb-note{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:14px 16px;font-size:.92rem}.topics-kb-note code{font-size:.82rem}.topics-step__footer{justify-content:flex-end;padding-top:4px;display:flex}.topics-step__continue{min-width:200px}@media (width<=720px){.topics-chapter-grid{grid-template-columns:1fr}}.teacher-quick-chapter-list{gap:8px;max-height:280px;display:grid;overflow:auto}.teacher-quick-chapter-item{cursor:pointer;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.teacher-quick-chapter-item.is-selected{background:#fff7ed;border-color:#ea580c}.teacher-quick-chapter-item span{gap:2px;display:grid}.teacher-quick-section-cards{gap:12px;display:grid}.teacher-quick-section-card{border:2px solid #e2e8f0;border-radius:16px;overflow:hidden}.teacher-quick-section-card__head{justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.teacher-quick-section-card__dot{border-radius:999px;width:10px;height:10px;margin-right:8px;display:inline-block}.teacher-quick-section-card__body{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 14px 16px;display:grid}.teacher-quick-counter__controls{align-items:center;gap:8px;display:flex}.teacher-quick-counter__controls button{background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:28px;height:28px}.teacher-quick-summary-bar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;gap:16px;padding:12px 14px;display:flex}.teacher-quick-generate{background:#ea580c;border-color:#ea580c}.teacher-quick-question-row{border-bottom:1px solid #f1f5f9;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:10px 0;display:grid}.teacher-quick-add-section summary{cursor:pointer;list-style:none}.teacher-quick-add-section__menu{gap:6px;margin-top:8px;display:grid}@media print{.teacher-button,.teacher-action-group,.teacher-quick-wizard__head button{display:none!important}.teacher-quick-detail{box-shadow:none;border:none}}.teacher-minimal-header{border-bottom:1px solid var(--teacher-border);background:color-mix(in srgb, var(--teacher-surface) 96%, white 4%);z-index:20;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding:16px 24px;display:grid;position:sticky;top:0}.teacher-minimal-header__leading,.teacher-minimal-header__actions{align-items:center;gap:10px;display:flex}.teacher-minimal-header__actions{justify-content:flex-end}.teacher-minimal-header__title{text-align:center;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:1rem;font-weight:700;overflow:hidden}.teacher-minimal-header__back,.teacher-minimal-header__brand{color:var(--teacher-text);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.teacher-minimal-header__icon-button{border:1px solid var(--teacher-border);background:var(--teacher-surface);width:36px;height:36px;color:var(--teacher-text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.teacher-minimal-main{min-height:calc(100vh - 72px)}.teacher-content--centered{max-width:1080px;margin:0 auto;padding:24px}.teacher-user--compact .teacher-user__copy span{display:none}.teacher-picker-hero h1,.teacher-hub-hero h1{margin:0;font-size:clamp(1.75rem,3vw,2.35rem)}.teacher-picker-hero__eyebrow{color:var(--teacher-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:.9rem}.teacher-class-hub-header{flex-direction:column;gap:8px;margin-bottom:4px;display:flex}.teacher-class-hub-header__eyebrow{color:var(--teacher-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.9rem}.teacher-class-hub-header__title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.teacher-class-hub-header__title-row h1{margin:0;font-size:clamp(1.75rem,3vw,2.35rem)}.teacher-class-hub-header__students{margin:0;font-size:.95rem}.teacher-class-hub-header__join-row{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.teacher-class-hub-header__join-label{font-size:.95rem}.teacher-class-hub-header__code{color:var(--teacher-primary);letter-spacing:.04em;font-size:1.1rem;font-weight:800}.teacher-class-hub-header__actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=640px){.teacher-class-hub-header__join-row{flex-direction:column;align-items:flex-start}.teacher-class-hub-header__actions{width:100%}.teacher-class-hub-header__actions .teacher-button{flex:auto}}.teacher-class-grid,.teacher-hub-grid{gap:20px;display:grid}.teacher-class-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));max-width:880px}.teacher-hub-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.teacher-class-card,.teacher-hub-card{border:1px solid var(--teacher-border);background:var(--teacher-surface);min-height:132px;box-shadow:var(--teacher-shadow);color:inherit;text-align:left;cursor:pointer;border-radius:18px;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;text-decoration:none;display:flex}.teacher-class-card strong,.teacher-hub-card strong{font-size:1.1rem}.teacher-class-card{min-height:200px;padding:28px}.teacher-class-card__label{font-size:1.5rem;font-weight:700}.teacher-class-card--create{color:var(--teacher-muted);border-style:dashed;justify-content:center;align-items:center}.teacher-hub-card__icon{background:var(--teacher-accent-soft);width:44px;height:44px;color:var(--teacher-primary);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.teacher-hub-card--insights{background:color-mix(in srgb, var(--teacher-surface-3) 72%, var(--teacher-surface));box-shadow:var(--teacher-shadow), inset 3px 0 0 color-mix(in srgb, var(--teacher-primary) 28%, var(--teacher-border));position:relative}.teacher-hub-card--insights .teacher-hub-card__icon{background:color-mix(in srgb, var(--teacher-surface-3) 65%, var(--teacher-accent-soft))}.teacher-hub-card__view{color:var(--teacher-muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:18px;right:18px}.teacher-analytics-hub{grid-template-columns:1fr;gap:16px;display:grid}.teacher-analytics-hub__card{gap:10px;min-height:168px;padding:28px}.teacher-analytics-hub__card .teacher-hub-card__icon{border-radius:14px;width:52px;height:52px}.teacher-analytics-hub__card strong{font-size:1.35rem}@media (width>=720px){.teacher-analytics-hub{grid-template-columns:repeat(2,minmax(0,1fr))}}.teacher-recent-list{flex-direction:column;gap:12px;display:flex}.teacher-recent-row{border:1px solid var(--teacher-border);background:var(--teacher-surface-2);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.teacher-recent-row__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-modal-backdrop{z-index:10000;background:#0f172a6b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.teacher-modal{background:var(--p-surface,#fff);border:1px solid #0f172a14;border-radius:16px;width:min(100%,520px);max-height:min(90vh,900px);overflow:auto;box-shadow:0 24px 64px #0f172a38}.teacher-modal--wide{width:min(100%,860px)}.teacher-modal__header,.teacher-modal__footer{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.teacher-modal__body{padding:0 20px 16px}.teacher-modal__close{border:1px solid var(--teacher-border);background:var(--teacher-surface,#fff);width:36px;height:36px;color:var(--teacher-muted);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.teacher-modal__close:hover{color:var(--teacher-text);border-color:var(--teacher-border-soft,#cbd5e1)}.publish-marks-summary{justify-content:space-between;margin-bottom:12px;display:flex}.publish-marks-list{flex-direction:column;gap:10px;max-height:360px;display:flex;overflow:auto}.publish-marks-row{border-bottom:1px solid #0f172a14;grid-template-columns:1fr 100px;gap:12px;padding:10px 0;display:grid}.publish-marks-row__marks input{width:100%}.publish-marks-toggle,.publish-marks-due,.publish-marks-note{flex-direction:column;gap:6px;margin-top:14px;display:flex}.publish-marks-note textarea{resize:vertical;width:100%;min-height:84px;font:inherit;border:1px solid #0f172a1f;border-radius:12px;padding:10px 12px;line-height:1.45}.publish-marks-toggle--row{flex-direction:row;align-items:center;gap:10px}.grading-hub__hero{border:1px solid var(--teacher-border);background:linear-gradient(135deg,#fffffffa,#f8fafceb);border-radius:20px;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;display:flex}.grading-hub__hero-copy h1{overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:6px 0 8px;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15}.grading-hub__hero-actions,.grading-hub__toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.grading-hub__stats{margin-top:0}.grading-hub__roster{width:100%;min-width:0}.grading-hub__review-modal{flex-direction:column;width:min(100%,960px);max-height:min(90vh,920px);display:flex;overflow:hidden}.grading-hub__review-modal-body{flex:auto;padding-bottom:20px;overflow-y:auto}.grading-hub__review-modal .grading-hub__detail-head{border-bottom:1px solid var(--teacher-border);flex-shrink:0;margin-bottom:0}.grading-hub__section-head h2,.grading-hub__section-head h3{align-items:center;gap:8px;margin:0;font-size:15px;display:inline-flex}.grading-hub__section-head p{margin:4px 0 0}.grading-hub__table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;margin-top:14px;overflow-x:auto}.grading-hub__table tbody tr{cursor:pointer;transition:background .15s}.grading-hub__table tbody tr:hover{background:#7d5b450d}.grading-hub__table tbody tr.is-selected{box-shadow:inset 3px 0 0 var(--teacher-primary);background:#7d5b451a}.grading-hub__row-status{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.grading-hub__detail-head{border-bottom:1px solid var(--teacher-border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:18px;display:flex}.grading-hub__detail-eyebrow{color:var(--teacher-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.grading-hub__detail-head h2{margin:0 0 10px;font-size:1.35rem}.grading-hub__detail-pills{flex-wrap:wrap;gap:8px;display:flex}.grading-hub__section{gap:12px;margin-top:18px;display:grid}.grading-hub__section-head{gap:2px;display:grid}.grading-hub__attachments{gap:10px;display:grid}.grading-hub__attachment{border:1px solid var(--teacher-border);background:#ffffffeb;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.grading-hub__attachment-copy{gap:4px;min-width:0;display:grid}.grading-hub__attachment-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grading-hub__alert{color:var(--teacher-text);background:#f8fafcf2;border:1px solid #7d5b4524;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.5}.grading-hub__alert--error{color:#991b1b;background:#fef2f2f2;border-color:#dc26262e}.grading-hub__empty-detail,.grading-hub__loading{place-items:center;min-height:240px;display:grid}.grading-hub__toolbar .teacher-button svg,.grading-hub__hero-actions .teacher-button svg{flex-shrink:0}.teacher-grading-overview{border:1px solid var(--teacher-border);background:#fffffff5;border-radius:16px;gap:16px;padding:18px;display:grid}.teacher-grading-overview--compact{gap:12px;padding:14px}.teacher-grading-overview__head{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;display:grid}.teacher-grading-overview__score{background:#f8fafcf2;border:1px solid #7d5b451a;border-radius:14px;flex-direction:column;gap:4px;min-width:120px;padding:12px 14px;display:flex}.teacher-grading-overview__score-label{text-transform:uppercase;letter-spacing:.06em;color:var(--teacher-muted);font-size:11px}.teacher-grading-overview__score strong{font-variant-numeric:tabular-nums;font-size:28px;line-height:1}.teacher-grading-overview__band{color:var(--teacher-muted);font-size:12px}.teacher-grading-overview__verdict{color:var(--teacher-text);margin:0;padding-top:6px;font-size:14px;line-height:1.5}.teacher-grading-overview__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.teacher-grading-overview__card{background:#f8fafce6;border:1px solid #7d5b4514;border-radius:12px;padding:14px}.teacher-grading-overview__card--gap{background:#fffbeb8c;border-color:#b7791f2e}.teacher-grading-overview__card h3,.teacher-grading-overview__section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--teacher-muted);margin:0 0 8px;font-size:11px}.teacher-grading-overview__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.teacher-grading-overview__stats div{gap:2px;display:grid}.teacher-grading-overview__stats dt{color:var(--teacher-muted);font-size:11px}.teacher-grading-overview__stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.teacher-grading-overview__text,.teacher-grading-overview__next{margin:0;font-size:13px;line-height:1.5}.teacher-grading-overview__weak-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.teacher-grading-overview__weak-list li{background:#f8fafcf2;border:1px solid #7d5b451a;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;display:inline-flex}.teacher-grading-overview__lost-table td{vertical-align:top}.teacher-grading-overview__flags{flex-wrap:wrap;gap:8px;display:flex}.teacher-grading-overview__note{background:#fffbebe6;border:1px solid #d977062e;border-radius:12px;padding:12px 14px}.teacher-grading-overview__note p{margin:6px 0 0}.severity-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.severity-minor{color:#475569;background:#94a3b82e}.severity-moderate{color:#b45309;background:#f59e0b29}.severity-major{color:#b91c1c;background:#ef444424}.teacher-question-cards{gap:12px;display:grid}.teacher-question-cards h3{margin:0;font-size:15px}.teacher-question-cards__list{gap:10px;display:grid}.teacher-question-card{border:1px solid var(--teacher-border);background:#fffffff5;border-radius:14px;padding:14px 16px}.teacher-question-card__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-question-card__head h4{margin:0 0 4px;font-size:14px}.teacher-question-card__feedback{color:var(--teacher-muted);margin:0;font-size:13px;line-height:1.45}.teacher-question-card__marks{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.teacher-question-card__flag{color:var(--teacher-warning);margin:8px 0 0;font-size:12px}.teacher-question-card__strengths{margin:8px 0 0;padding-left:18px;font-size:13px}.teacher-question-card__gaps{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.teacher-question-card__gap{font-size:11px}.teacher-question-card__toggle{color:var(--teacher-primary);cursor:pointer;background:0 0;border:0;margin-top:8px;padding:0;font-size:12px}.teacher-question-card__detail{border-top:1px solid var(--teacher-border);gap:10px;margin-top:10px;padding-top:10px;display:grid}.teacher-question-card__detail h5{text-transform:uppercase;letter-spacing:.05em;color:var(--teacher-muted);margin:0 0 4px;font-size:11px}.marking-steps{margin-top:10px}.marking-steps h5{text-transform:uppercase;letter-spacing:.05em;color:var(--teacher-muted);margin:0 0 8px;font-size:11px}.marking-steps__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.marking-step{border:1px solid var(--teacher-border);background:#ffffff05;border-radius:8px;padding:8px 10px}.marking-step--awarded{border-left:3px solid #22c55e}.marking-step--partial{border-left:3px solid #f59e0b}.marking-step--deducted,.marking-step--missing{border-left:3px solid #ef4444}.marking-step__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.marking-step__criterion{font-size:13px;font-weight:600}.marking-step__marks{white-space:nowrap;font-size:12px;font-weight:700}.marking-step__status{color:var(--teacher-muted);margin:4px 0 0;font-size:11px}.marking-step__evidence,.marking-step__reason{margin:4px 0 0;font-size:12px;line-height:1.45}.marking-step__evidence{font-style:italic}@media (width<=1080px){.grading-hub__hero,.grading-hub__detail-head{flex-direction:column}.grading-hub__toolbar{justify-content:flex-start}.teacher-grading-overview__head{grid-template-columns:1fr}}@media (width<=768px){.teacher-minimal-header{grid-template-columns:1fr;gap:10px}.teacher-minimal-header__title{text-align:left}.teacher-content--centered{padding:16px}.teacher-recent-row{flex-direction:column;align-items:flex-start}.teacher-analytics-row__top{flex-direction:column;align-items:flex-start;gap:8px}.teacher-analytics-action-card{flex-direction:column;align-items:flex-start}.teacher-summary-grid,.teacher-summary-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-class-grid{grid-template-columns:1fr;max-width:none}.teacher-class-card,.teacher-class-card--create{width:100%;min-height:120px}.teacher-action-group{grid-template-columns:1fr;width:100%;display:grid}.teacher-action-group .teacher-button{justify-content:center;width:100%}.teacher-page-head h1{font-size:clamp(1.35rem,6vw,1.85rem)}.teacher-table,.teacher-table--compact{min-width:520px}.teacher-analytics-chart{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}}@media (width<=480px){.teacher-summary-grid,.teacher-summary-grid--compact{grid-template-columns:1fr}}.teacher-status-pill--at-risk{background:color-mix(in srgb, var(--teacher-danger) 14%, white);color:var(--teacher-danger);border:1px solid color-mix(in srgb, var(--teacher-danger) 30%, transparent)}.teacher-status-pill--needs-support{background:color-mix(in srgb, var(--teacher-warning) 14%, white);color:#b45309;border:1px solid color-mix(in srgb, var(--teacher-warning) 30%, transparent)}.teacher-status-pill--on-track{background:color-mix(in srgb, var(--teacher-primary) 12%, white);color:var(--teacher-primary);border:1px solid color-mix(in srgb, var(--teacher-primary) 24%, transparent)}.teacher-status-pill--excelling{background:color-mix(in srgb, var(--teacher-success) 14%, white);color:var(--teacher-success);border:1px solid color-mix(in srgb, var(--teacher-success) 30%, transparent)}.teacher-analytics-section,.teacher-analytics-hero{gap:16px}.teacher-analytics-narrative{color:var(--teacher-text);margin:0;font-size:15px;line-height:1.55}.teacher-analytics-actions{gap:10px}.teacher-analytics-action-card{border:1px solid var(--teacher-border);background:var(--teacher-surface);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.teacher-analytics-chart{width:100%}.teacher-filter-chips{flex-wrap:wrap;gap:8px;display:flex}.teacher-filter-chip{border:1px solid var(--teacher-border);background:var(--teacher-surface);color:var(--teacher-muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px}.teacher-filter-chip.active{background:color-mix(in srgb, var(--teacher-primary) 12%, white);border-color:color-mix(in srgb, var(--teacher-primary) 30%, transparent);color:var(--teacher-primary)}.teacher-table-sort{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.teacher-analytics-band-toggle{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:8px 0;display:flex}.teacher-grade-assist__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.teacher-grade-assist__step{border:1px solid var(--teacher-border,#e5e7eb);color:var(--teacher-muted,#64748b);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex}.teacher-grade-assist__step span{background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-weight:600;display:inline-flex}.teacher-grade-assist__step--active{color:#0f172a;border-color:#0f6353}.teacher-grade-assist__step--active span{color:#fff;background:#0f6353}.teacher-grade-assist__step--done{color:#0f172a}.teacher-upload-dropzone{cursor:pointer;background:#f8fafc;border:1.5px dashed #cbd5e1;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:180px;padding:24px;display:flex}.teacher-upload-dropzone__icon{color:#0f6353}.teacher-grade-assist-marks{flex-direction:column;gap:12px;display:flex}.teacher-grade-assist-marks__row{border:1px solid var(--teacher-border,#e5e7eb);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) 120px;gap:16px;padding:14px;display:grid}.teacher-grade-assist-marks__question{flex-direction:column;gap:8px;display:flex}.teacher-grade-assist-marks__num{font-weight:700}.teacher-grade-assist-marks__type{color:#0f6353;text-transform:uppercase;background:#ecfdf5;border-radius:999px;width:fit-content;padding:2px 8px;font-size:12px;display:inline-flex}.teacher-grade-assist-marks__input{color:var(--teacher-muted,#64748b);flex-direction:column;gap:6px;font-size:12px;display:flex}.teacher-grade-assist-roster{flex-direction:column;gap:8px;display:flex}.teacher-grade-assist-roster__label{color:var(--teacher-muted,#64748b);align-items:center;gap:6px;font-size:13px;display:inline-flex}.teacher-grade-assist-roster__chips{flex-wrap:wrap;gap:8px;display:flex}.teacher-grade-assist-roster__chip{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:6px 12px;font-size:13px}.teacher-grade-assist-candidate{border:1px solid var(--teacher-border,#e5e7eb);background:#fff;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.teacher-grade-assist-candidate__head{justify-content:space-between;align-items:center;display:flex}.teacher-grade-assist-candidate__uploads{flex-wrap:wrap;gap:10px;display:flex}.teacher-upload-chip{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:inline-flex}.teacher-grade-assist-candidate__files{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.teacher-grade-assist-candidate__files li{background:#f8fafc;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.teacher-worksheet-upload-pages li{align-items:flex-start}.teacher-worksheet-upload-page{align-items:center;gap:10px;min-width:0;display:flex}.teacher-worksheet-upload-page img{object-fit:cover;background:#e2e8f0;border-radius:6px;width:56px;height:72px}.teacher-inline-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.teacher-error{color:#b42318;font-size:14px}.teacher-icon-button{cursor:pointer;color:inherit;background:0 0;border:none}.teacher-spin{animation:1s linear infinite teacher-grade-assist-spin}@keyframes teacher-grade-assist-spin{to{transform:rotate(360deg)}}@media (width<=768px){.teacher-grade-assist-marks__row,.teacher-grade-assist__steps{grid-template-columns:1fr}}.custom-select-flow{--custom-select-bar-space:112px;min-height:0}.custom-select-browse{gap:16px;display:grid}.custom-select-filters{grid-template-columns:minmax(92px,.55fr) minmax(200px,1.5fr);align-items:end;gap:12px;display:grid}.custom-select-filters:has(.custom-select-filter:nth-child(3)){grid-template-columns:minmax(92px,.55fr) minmax(200px,1.5fr) minmax(180px,1.2fr)}.custom-select-filters .stitch-select:disabled{opacity:.55;cursor:not-allowed}.custom-select-browse--with-bucket{padding-bottom:var(--custom-select-bar-space)}.custom-select-sections{z-index:4;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:18px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:6px;display:grid;position:sticky;top:0;box-shadow:0 8px 24px #0f172a0a}.custom-select-section{text-align:center;color:#475569;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;justify-items:center;gap:6px;min-width:0;padding:10px 8px 12px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:grid}.custom-select-section:hover:not(:disabled):not(.is-active){color:#0f172a;background:#fff}.custom-select-section strong{letter-spacing:-.01em;font-size:.84rem;font-weight:700;line-height:1.2}.custom-select-section__meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;min-height:1.2em;display:flex}.custom-select-section__count{font-variant-numeric:tabular-nums;color:#64748b;font-size:.72rem;font-weight:600}.custom-select-section__picked{color:#6d28d9;white-space:nowrap;background:#ede9fe;border-radius:999px;align-items:center;padding:1px 6px;font-size:.68rem;font-weight:700;line-height:1.4;display:inline-flex}.custom-select-section.is-active{color:#5b21b6;background:#fff;border-color:#ddd6fe;box-shadow:0 1px 2px #0f172a0f,0 0 0 1px #7c3aed1f}.custom-select-section.is-active .custom-select-section__count{color:#7c3aed}.custom-select-section.is-active .custom-select-section__picked{color:#fff;background:#7c3aed}.custom-select-section:disabled{opacity:.5;cursor:not-allowed}@media (width<=720px){.custom-select-filters{grid-template-columns:1fr}}@media (width<=640px){.custom-select-sections{-webkit-overflow-scrolling:touch;grid-template-columns:repeat(5,minmax(92px,1fr));overflow-x:auto}.custom-select-section{padding:10px 6px}.custom-select-section strong{font-size:.78rem}.custom-select-section__picked{padding:1px 5px;font-size:.64rem}}.custom-select-list{gap:12px;display:grid}.custom-select-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.custom-select-card.is-selected{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.custom-select-card__select{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:28px 1fr;gap:10px;width:100%;padding:14px;display:grid}.custom-select-card__check{color:#fff;border:1.5px solid #cbd5e1;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;font-size:12px;display:inline-flex}.custom-select-card.is-selected .custom-select-card__check{background:#7c3aed;border-color:#7c3aed}.custom-select-card__body{gap:10px;min-width:0;display:grid}.custom-select-card__given{color:#92400e;background:#fef3c7;border-radius:999px;width:fit-content;padding:2px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.custom-select-footer{z-index:40;left:calc(var(--teacher-sidebar-width) + 16px);border:1px solid color-mix(in srgb, var(--teacher-primary) 16%, #e4d8cc);background:#f6f1ea;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;bottom:16px;right:56px;box-shadow:0 10px 28px #3d281c1f}.custom-select-footer__meta{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.custom-select-footer__meta strong{font-variant-numeric:tabular-nums}.custom-select-footer__clear{color:#64748b;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:600}.custom-select-footer__clear:hover{color:#0f172a}.custom-select-footer__chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;flex:auto;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.custom-select-footer__chips::-webkit-scrollbar{display:none}.custom-select-footer__chip{color:#6d28d9;background:#ede9fe;border-radius:999px;flex-shrink:0;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex;overflow:hidden}.custom-select-footer__chip-label,.custom-select-footer__chip-remove{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;line-height:1.2}.custom-select-footer__chip-label{white-space:nowrap;padding:6px 6px 6px 10px}.custom-select-footer__chip-remove{opacity:.72;padding:6px 10px 6px 4px}.custom-select-footer__chip-remove:hover{opacity:1}.custom-select-footer__continue{flex-shrink:0;min-height:44px;padding:10px 18px}@media (width<=900px){.custom-select-footer{left:12px;right:20px;bottom:max(12px, env(safe-area-inset-bottom))}}@media (width<=640px){.custom-select-flow{--custom-select-bar-space:176px}.custom-select-footer{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px}.custom-select-footer__meta{flex-wrap:wrap;row-gap:8px}.custom-select-footer__chips{flex:100%;width:100%}.custom-select-footer__continue{width:100%;min-height:44px}}.impersonation-banner{z-index:80;color:#1f1300;background:#f6c453;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:10px 20px;font-size:14px;font-weight:600;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 8px 24px #7850002e}.impersonation-banner__exit{color:#fff8e8;cursor:pointer;background:#1f1300;border:0;border-radius:999px;padding:8px 14px;font-weight:650}.app-with-impersonation-banner{padding-top:48px}.principal-nav{flex-wrap:wrap;gap:8px;padding:12px 24px 0;display:flex}.principal-nav__link{border:1px solid var(--teacher-border);background:var(--teacher-surface);color:var(--teacher-muted);border-radius:999px;align-items:center;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.principal-nav__link.is-active{background:var(--teacher-accent-soft);color:var(--teacher-text);border-color:#0000}.principal-stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.principal-stat-card{background:var(--teacher-surface);border:1px solid var(--teacher-border);border-radius:18px;padding:18px}.principal-stat-card strong{margin-bottom:4px;font-size:28px;line-height:1.1;display:block}.principal-warning-card{background:#fff6e5;border:1px solid #f0d7a4;border-radius:16px;padding:16px 18px}.principal-progress{background:var(--teacher-surface-3);border-radius:999px;height:10px;overflow:hidden}.principal-progress>span{background:var(--teacher-primary);border-radius:inherit;height:100%;display:block}.principal-rank-list{flex-direction:column;gap:8px;display:flex}.principal-rank-item{background:var(--teacher-surface);border:1px solid var(--teacher-border);border-radius:14px;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.principal-rank-item.is-gold{background:#fff7dc}.principal-rank-item.is-silver{background:#f4f6f8}.principal-rank-item.is-bronze{background:#f8eee6}.principal-rank-item.is-muted{opacity:.72}.principal-form-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-input,.principal-form-row input,.principal-form-row select{border:1px solid var(--teacher-border);min-height:40px;font:inherit;background:#fff;border-radius:12px;padding:8px 12px}.principal-chip-row{flex-wrap:wrap;gap:6px;display:flex}.teacher-feed-item.principal-class-card{box-sizing:border-box;grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,.6fr) minmax(0,220px);align-items:center;gap:16px 20px;width:100%;max-width:100%;padding:16px 18px;display:grid}.teacher-feed-item.principal-class-card.principal-class-card--unassigned{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) minmax(0,.7fr) minmax(0,220px)}.principal-class-card__class,.principal-class-card__teacher,.principal-class-card__stat{gap:4px;min-width:0;display:grid}.principal-class-card__class strong,.principal-class-card__teacher strong,.principal-class-card__stat strong{overflow-wrap:anywhere;font-size:16px;line-height:1.25;display:block}.principal-class-card .principal-class-card__action,.principal-class-card .teacher-input{box-sizing:border-box;justify-self:stretch;width:100%;min-width:0;max-width:100%}.teacher-feed-item.principal-teacher-card{box-sizing:border-box;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr) minmax(0,.7fr) auto;align-items:center;gap:16px 20px;width:100%;max-width:100%;padding:16px 18px;display:grid}.principal-teacher-card__person,.principal-teacher-card__stat{gap:4px;min-width:0;display:grid}.principal-teacher-card__person strong,.principal-teacher-card__stat strong{overflow-wrap:anywhere;font-size:16px;line-height:1.25;display:block}.principal-teacher-card__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.teacher-feed-item.principal-student-card{box-sizing:border-box;grid-template-columns:minmax(0,1.6fr) minmax(0,1.2fr) auto;align-items:center;gap:16px 20px;width:100%;max-width:100%;padding:16px 18px;display:grid}.principal-student-card__person,.principal-student-card__classes{gap:4px;min-width:0;display:grid}.principal-student-card__person strong{overflow-wrap:anywhere;font-size:16px;line-height:1.25;display:block}.principal-student-card__actions{justify-content:flex-end;min-width:0;display:flex}@media (width<=720px){.principal-nav{padding:12px 16px 0}.teacher-feed-item.principal-class-card,.teacher-feed-item.principal-class-card.principal-class-card--unassigned{grid-template-columns:1fr}.principal-class-card .principal-class-card__action,.principal-class-card .teacher-input{justify-self:stretch;width:100%}.teacher-feed-item.principal-teacher-card{grid-template-columns:1fr}.principal-teacher-card__actions{justify-content:stretch}.principal-teacher-card__actions .teacher-button{flex:100%}.teacher-feed-item.principal-student-card{grid-template-columns:1fr}.principal-student-card__actions{justify-content:stretch}.principal-student-card__actions .teacher-button{width:100%}}.principal-remove-highlight{color:#1f1300;background:#f6c453;border-radius:12px;margin:0 0 16px;padding:12px 14px;font-size:14px;font-weight:650;line-height:1.4}.principal-remove-choices{gap:10px;display:grid}.principal-remove-choice{text-align:left;border:1px solid var(--teacher-border);cursor:pointer;font:inherit;color:inherit;background:#fff;border-radius:12px;gap:4px;padding:12px 14px;display:grid}.principal-remove-choice:hover,.principal-remove-choice:focus-visible{border-color:#1f1300}.principal-remove-choice strong{font-size:15px}.principal-remove-choice span{color:var(--teacher-muted);font-size:13px;font-weight:400;line-height:1.4}.edvera-auth{--auth-bg:#fbf9f6;--auth-surface:#ffffffe0;--auth-surface-strong:#fff;--auth-border:#1a24361a;--auth-border-strong:#7d5b452e;--auth-text:#0f172a;--auth-text-soft:#475569;--auth-text-muted:#64748b;--auth-accent:#7d5b45;--auth-accent-deep:#634636;--auth-accent-soft:#f3ebe4;--auth-shadow:0 30px 70px #0f172a14;--auth-display:"Cormorant Garamond", "Source Serif 4", Georgia, serif;--auth-body:"Source Serif 4", Georgia, serif;background:radial-gradient(circle at 12% 12%, #7d5b4524, transparent 26%), radial-gradient(circle at 88% 18%, #94a3b833, transparent 24%), linear-gradient(180deg, #fdfbf7 0%, var(--auth-bg) 100%);color:var(--auth-text);font-family:var(--auth-body);min-height:100vh;padding:28px}.edvera-auth,.edvera-auth *{box-sizing:border-box}.edvera-auth--center{justify-content:center;align-items:center;display:flex}.edvera-auth__shell{grid-template-columns:minmax(320px,1.05fr) minmax(0,.95fr);align-items:stretch;gap:24px;max-width:1240px;min-height:min(840px,100vh - 56px);margin:0 auto;display:grid}.edvera-auth__hero,.edvera-auth__panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:var(--auth-surface);border:1px solid var(--auth-border);box-shadow:var(--auth-shadow);border-radius:28px}.edvera-auth__hero{flex-direction:column;justify-content:flex-start;gap:clamp(22px,4vh,42px);padding:30px;display:flex;position:relative;overflow:hidden}.edvera-auth__hero:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#7d5b450d 1px,#0000 1px),linear-gradient(90deg,#7d5b450d 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:22px 22px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000bf,#0000 82%);mask-image:linear-gradient(#000000bf,#0000 82%)}.edvera-auth__hero>*{position:relative}.edvera-auth__brand{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:16px;display:flex}.edvera-auth__badge,.edvera-auth__eyebrow,.edvera-auth__meta-label,.edvera-auth__meta-value{color:var(--auth-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600}.edvera-auth__badge{background:#7d5b4514;border:1px solid #7d5b4524;border-radius:999px;padding:8px 12px;line-height:1}.edvera-auth__headline{flex-direction:column;gap:10px;max-width:22rem;display:flex}.edvera-auth__headline h1,.edvera-auth__headline h2,.edvera-auth__panel h1,.edvera-auth__panel h2{font-family:var(--auth-display);letter-spacing:-.05em;margin:0;font-size:clamp(3.2rem,5vw,5.6rem);font-weight:600;line-height:.9}.edvera-auth__headline p,.edvera-auth__supporting,.edvera-auth__panel-intro p,.edvera-auth__status,.edvera-auth__divider span{color:var(--auth-text-soft);margin:0;font-size:15px;line-height:1.6}.edvera-auth__visual{justify-content:flex-end;align-items:end;width:100%;margin-top:auto;padding-top:8px;display:flex}.edvera-auth__visual-art{background:#eadfd2;border:1px solid #7d5b4524;border-radius:26px;align-self:flex-end;width:100%;min-height:clamp(300px,42vh,430px);overflow:hidden;box-shadow:0 18px 36px #6346361f}.edvera-auth__visual-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.edvera-auth__panel{flex-direction:column;justify-content:center;gap:24px;padding:34px;display:flex}.edvera-auth__nav{justify-content:flex-start;align-items:center;display:flex}.edvera-auth__back{color:var(--auth-text-soft);cursor:pointer;font-family:var(--auth-body);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.edvera-auth__back:hover{color:var(--auth-accent)}.edvera-auth__panel-intro{flex-direction:column;gap:10px;display:flex}.edvera-auth__panel-intro h1,.edvera-auth__panel-intro h2{font-size:clamp(2.5rem,4vw,4rem)}.edvera-auth__body,.edvera-auth__form{flex-direction:column;gap:16px;display:flex}.edvera-auth__field{flex-direction:column;gap:8px;display:flex}.edvera-auth__field label{color:var(--auth-text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.edvera-auth__field input,.edvera-auth__field select{border:1px solid var(--auth-border);color:var(--auth-text);font-family:var(--auth-body);background:#ffffffdb;border-radius:14px;outline:none;min-height:54px;padding:0 16px;font-size:16px;transition:border-color .16s,box-shadow .16s,background-color .16s}.edvera-auth__field input:focus,.edvera-auth__field select:focus{background:#fff;border-color:#7d5b455c;box-shadow:0 0 0 4px #7d5b451a}.edvera-auth__field input::placeholder{color:#94a3b8}.edvera-auth__button,.edvera-auth__link-button{cursor:pointer;font-family:var(--auth-body);border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 18px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s,background-color .16s,color .16s;display:inline-flex}.edvera-auth__button{background:linear-gradient(135deg, var(--auth-accent), var(--auth-accent-deep));color:#fff;box-shadow:0 18px 34px #63463633}.edvera-auth__button:disabled{cursor:not-allowed;opacity:.65}.edvera-auth__button:not(:disabled):hover,.edvera-auth__link-button:hover{transform:translateY(-1px)}.edvera-auth__link-button{color:var(--auth-accent);background:0 0;min-height:auto;padding:0}.edvera-auth__subtle-link{color:var(--auth-text-muted);font-size:13px;text-decoration:none}.edvera-auth__divider{align-items:center;gap:10px;display:flex}.edvera-auth__divider:before,.edvera-auth__divider:after{background:var(--auth-border);content:"";flex:1;height:1px}.edvera-auth__google{justify-content:center;min-height:44px;display:flex}.edvera-auth__error,.edvera-auth__success{border-radius:16px;padding:14px 16px;font-size:14px;line-height:1.55}.edvera-auth__error{color:var(--auth-accent-deep);background:#7d5b451a;border:1px solid #7d5b452e}.edvera-auth__success{color:#166534;background:#22c55e1a;border:1px solid #22c55e29}.edvera-auth__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.edvera-auth__footer--center{justify-content:center}.edvera-auth__shell--entry{grid-template-columns:minmax(360px,1.08fr) minmax(0,.92fr)}.edvera-auth__entry-card{background:var(--auth-surface-strong);border:1px solid var(--auth-border);border-radius:24px;gap:18px;padding:24px;display:grid}.edvera-auth__step{color:var(--auth-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600}@media (width<=1023px){.edvera-auth{padding:16px}.edvera-auth__shell,.edvera-auth__shell--entry{grid-template-columns:1fr;gap:18px;min-height:auto}.edvera-auth__hero,.edvera-auth__panel{padding:24px 20px}.edvera-auth__visual{justify-content:flex-start;margin-top:0;padding-top:0}.edvera-auth__headline h1,.edvera-auth__headline h2{font-size:clamp(2.6rem,12vw,4.2rem)}.edvera-auth__visual-art{min-height:240px}}@media (width<=640px){.edvera-auth{padding:12px}.edvera-auth__shell,.edvera-auth__shell--entry{gap:14px}.edvera-auth__hero,.edvera-auth__panel{border-radius:24px}.edvera-auth__hero{gap:14px;padding:18px}.edvera-auth__brand{gap:12px}.edvera-auth__badge{padding:7px 11px}.edvera-auth__headline{gap:6px;max-width:none}.edvera-auth__headline h1,.edvera-auth__headline h2{font-size:clamp(1.95rem,9vw,2.5rem);line-height:.94}.edvera-auth__visual-art{border-radius:22px;min-height:clamp(156px,28vh,192px)}.edvera-auth__panel{gap:20px;padding:24px 18px}.edvera-auth__panel-intro h1,.edvera-auth__panel-intro h2{font-size:clamp(2.2rem,11vw,3.1rem)}.edvera-auth__button,.edvera-auth__field input,.edvera-auth__field select{min-height:52px}.edvera-auth__google{width:100%}.edvera-auth__footer{flex-direction:column;align-items:flex-start}}.vedora-gate{--cream:#f6f2e9;--paper:#fff;--ink:#1e2233;--ink-soft:#5b6072;--brown:#5c3a21;--brown-dark:#472c19;--gold:#b08d3e;--line:#e4decf;--focus:#8a6a3b;background:var(--cream);color:var(--ink);justify-content:center;min-height:100vh;padding:32px 16px;display:flex}.vedora-gate,.vedora-gate *{box-sizing:border-box}.vedora-gate--center{align-items:center}.vedora-gate__shell{width:390px;max-width:100%}.vedora-gate__hero{display:none}.vedora-gate__phone{background:var(--paper);border:1px solid var(--line);border-radius:28px;width:100%;overflow:hidden;box-shadow:0 20px 60px #1e223326}.vedora-gate__top{padding:28px 24px 0}.vedora-gate__brand{align-items:center;gap:10px;margin-bottom:22px;display:flex}.vedora-gate__mark{background:var(--ink);color:var(--gold);border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-family:Georgia,Iowan Old Style,serif;font-size:16px;font-weight:700;display:flex}.vedora-gate__brand-name{color:var(--ink);letter-spacing:.2px;font-family:Georgia,Iowan Old Style,serif;font-size:19px}.vedora-gate__tabs{background:var(--cream);border-radius:12px;margin-bottom:24px;padding:4px;display:flex}.vedora-gate__tab{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:10px 0;font-family:-apple-system,system-ui,sans-serif;font-size:14px;font-weight:600}.vedora-gate__tab.is-active{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px #1e22331f}.vedora-gate__title{color:var(--ink);margin:0 0 6px;font-family:Georgia,Iowan Old Style,serif;font-size:26px;font-weight:400;line-height:1.25}.vedora-gate__sub,.vedora-gate__info,.vedora-gate__status{color:var(--ink-soft);margin:0 0 20px;font-family:-apple-system,system-ui,sans-serif;font-size:14px;line-height:1.45}.vedora-gate__status{text-align:center;margin:0;padding:48px 24px}.vedora-gate__form{padding:0 24px 28px}.vedora-gate__field{margin-bottom:16px}.vedora-gate__label-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.vedora-gate__field label{color:var(--ink);letter-spacing:.3px;font-family:-apple-system,system-ui,sans-serif;font-size:12.5px;font-weight:600;display:block}.vedora-gate__channel{gap:4px;display:flex}.vedora-gate__channel-btn{background:var(--cream);color:var(--ink-soft);cursor:pointer;border:0;border-radius:999px;padding:5px 9px;font-family:-apple-system,system-ui,sans-serif;font-size:11px;font-weight:700}.vedora-gate__channel-btn.is-active{background:var(--ink);color:var(--paper)}.vedora-gate input{background:var(--paper);border:1.5px solid var(--line);color:var(--ink);border-radius:10px;outline:none;width:100%;padding:13px 14px;font-family:-apple-system,system-ui,sans-serif;font-size:15px}.vedora-gate input:focus{border-color:var(--focus)}.vedora-gate input::placeholder{color:#a9a48f}.vedora-gate__phone-input{border:1.5px solid var(--line);border-radius:10px;align-items:center;display:flex}.vedora-gate__phone-input span{color:var(--ink-soft);padding:0 0 0 14px;font-family:-apple-system,system-ui,sans-serif;font-size:14px;font-weight:600}.vedora-gate__phone-input input{border:0;border-radius:10px}.vedora-gate__input-wrap{position:relative}.vedora-gate__input-wrap input{padding-right:64px}.vedora-gate__toggle-pw{color:var(--brown);cursor:pointer;background:0 0;border:0;font-family:-apple-system,system-ui,sans-serif;font-size:12.5px;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.vedora-gate__row-between{justify-content:flex-end;margin:-8px 0 18px;display:flex}.vedora-gate__link,.vedora-gate__back{color:var(--brown);cursor:pointer;background:0 0;border:0;padding:0;font-family:-apple-system,system-ui,sans-serif;font-size:13px;font-weight:600;text-decoration:none}.vedora-gate__back{margin:0 0 16px;display:inline-flex}.vedora-gate__cta{background:var(--brown);color:#fff;cursor:pointer;border:0;border-radius:10px;width:100%;margin-bottom:16px;padding:15px 0;font-family:-apple-system,system-ui,sans-serif;font-size:15.5px;font-weight:700;transition:background .15s}.vedora-gate__cta:hover:not(:disabled){background:var(--brown-dark)}.vedora-gate__cta:disabled{cursor:default;opacity:.65}.vedora-gate__divider{color:var(--ink-soft);align-items:center;gap:10px;margin:6px 0 16px;font-family:-apple-system,system-ui,sans-serif;font-size:12.5px;display:flex}.vedora-gate__divider:before,.vedora-gate__divider:after{background:var(--line);content:"";flex:1;height:1px}.vedora-gate__google{justify-content:center;width:100%;display:flex}.vedora-gate__google>div,.vedora-gate__google iframe{max-width:100%}.vedora-gate__footnote{color:var(--ink-soft);text-align:center;margin-top:20px;font-family:-apple-system,system-ui,sans-serif;font-size:13px}.vedora-gate__alt{text-align:center;margin:-8px 0 16px}.vedora-gate__error{color:#9b3a2f;margin:0 0 12px;font-family:-apple-system,system-ui,sans-serif;font-size:13px}.vedora-gate__options{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.vedora-gate__option{background:var(--paper);border:1.5px solid var(--line);cursor:pointer;text-align:left;border-radius:12px;padding:14px}.vedora-gate__option span{flex-direction:column;gap:4px;display:flex}.vedora-gate__option strong{color:var(--ink);font-family:-apple-system,system-ui,sans-serif;font-size:15px}.vedora-gate__option span span{color:var(--ink-soft);font-family:-apple-system,system-ui,sans-serif;font-size:13px}.vedora-gate__option.is-selected{border-color:var(--brown);background:#fbf6ee}@media (width>=900px){.vedora-gate{align-items:stretch;padding:28px}.vedora-gate__shell{grid-template-columns:minmax(320px,1.05fr) minmax(0,.95fr);align-items:stretch;gap:24px;width:100%;max-width:1240px;min-height:min(840px,100vh - 56px);margin:0 auto;display:grid}.vedora-gate__hero{background:var(--paper);border:1px solid var(--line);border-radius:28px;flex-direction:column;gap:clamp(18px,3vh,32px);min-width:0;padding:30px;display:flex;overflow:hidden;box-shadow:0 20px 60px #1e22331f}.vedora-gate__hero .vedora-gate__brand{margin-bottom:0}.vedora-gate__hero-copy{max-width:22rem}.vedora-gate__hero-title{color:var(--ink);letter-spacing:-.04em;margin:0;font-family:Georgia,Iowan Old Style,serif;font-size:clamp(2.6rem,4.6vw,4.6rem);font-weight:500;line-height:.95}.vedora-gate__hero-sub{color:var(--ink-soft);margin:10px 0 0;font-family:-apple-system,system-ui,sans-serif;font-size:15px;line-height:1.5}.vedora-gate__visual{flex:1;align-items:end;width:100%;min-height:0;margin-top:auto;padding-top:8px;display:flex}.vedora-gate__visual .edvera-auth__visual-art{min-height:clamp(280px,38vh,430px)}.vedora-gate__phone{flex-direction:column;justify-content:center;min-width:0;display:flex}.vedora-gate__phone .vedora-gate__brand,.vedora-gate__phone .vedora-gate__title,.vedora-gate__phone .vedora-gate__sub{display:none}.vedora-gate__top:not(:has(.vedora-gate__tabs,.vedora-gate__back)){display:none}.vedora-gate__top{padding:32px 32px 0}.vedora-gate__form{padding:8px 32px 32px}.vedora-gate__status{padding:48px 32px}}:root{--p-bg:#fbf9f6;--p-surface:#fff;--p-surface-2:#f8fafc;--p-ink:#0f172a;--p-ink-2:#334155;--p-muted:#64748b;--p-border:#dbe4f0;--p-border-strong:#cbd5e1;--p-primary:#7d5b45;--p-primary-fg:#fff;--p-primary-tint:#f3ebe4;--p-accent:#111827;--p-accent-tint:#eef2ff;--p-success:#237a57;--p-danger:#ba1a1a;--radius-sm:8px;--radius:14px;--radius-lg:20px;--radius-xl:28px;--font-display:"Source Serif 4", Georgia, serif;--font-ui:"Source Serif 4", Georgia, serif;--font-mono:"Source Serif 4", Georgia, serif}.pal-indigo{--p-ink:oklch(18% .015 268);--p-ink-2:oklch(38% .012 268);--p-muted:oklch(58% .01 268);--p-primary:oklch(42% .14 268);--p-primary-tint:oklch(95% .025 268);--p-accent:oklch(72% .15 60);--p-accent-tint:oklch(96% .03 70)}.pal-plum{--p-primary:oklch(40% .13 330);--p-primary-tint:oklch(95% .025 330);--p-accent:oklch(72% .14 45);--p-accent-tint:oklch(96% .03 50)}.dark{--p-bg:oklch(18% .012 175);--p-surface:oklch(22% .014 175);--p-surface-2:oklch(25% .014 175);--p-ink:oklch(97% .005 90);--p-ink-2:oklch(82% .01 175);--p-muted:oklch(62% .012 175);--p-border:oklch(30% .012 175);--p-border-strong:oklch(36% .014 175);--p-primary:oklch(72% .1 175);--p-primary-tint:oklch(28% .04 175);--p-accent:oklch(72% .06 55);--p-accent-tint:oklch(32% .02 55)}.mathema-app,.mathema-app *{box-sizing:border-box}.mathema-app .screen{background:var(--p-bg);width:100%;min-height:0;color:var(--p-ink);font-family:var(--font-ui);letter-spacing:-.005em;flex-direction:column;flex:1;font-size:15px;line-height:1.5;display:flex;position:relative;overflow:hidden}.mathema-app .screen-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;padding:24px 24px 12px;display:flex;overflow-y:auto}.mathema-app .screen-foot{flex-direction:column;gap:10px;padding:12px 24px 24px;display:flex}.mathema-app .steps{gap:4px;padding:8px 24px 0;display:flex}.mathema-app .steps .dot{background:var(--p-border);border-radius:2px;flex:1;height:3px}.mathema-app .steps .dot.active{background:var(--p-primary)}.mathema-app .steps .dot.done{background:var(--p-primary);opacity:.5}.mathema-app .top-bar{color:var(--p-muted);justify-content:space-between;align-items:center;padding:8px 24px 0;font-size:13px;display:flex}.mathema-app .top-bar button{color:var(--p-muted);cursor:pointer;background:0 0;border:none;padding:8px 4px;font-family:inherit;font-size:13px;font-weight:500}.mathema-app .top-bar .back{justify-content:center;align-items:center;width:36px;height:36px;margin-left:-8px;display:flex}.mathema-app .eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--p-muted);font-size:11px;font-weight:500}.mathema-app .display{font-family:var(--font-display);letter-spacing:-.02em;color:var(--p-ink);margin:0;font-size:40px;font-weight:400;line-height:1.05}.mathema-app .display em{color:var(--p-primary);font-style:italic}.mathema-app .title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--p-ink);margin:0;font-size:30px;font-weight:400;line-height:1.1}.mathema-app .subtitle{color:var(--p-ink-2);text-wrap:pretty;margin:8px 0 0;font-size:15px;line-height:1.45}.mathema-app .caption{color:var(--p-muted);font-size:12.5px;line-height:1.45}.mathema-app .btn{background:var(--p-primary);width:100%;height:54px;color:var(--p-primary-fg);letter-spacing:-.005em;cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;font-family:inherit;font-size:16px;font-weight:600;transition:transform .12s,opacity .12s;display:flex}.mathema-app .btn:hover{opacity:.95}.mathema-app .btn:active{transform:scale(.99)}.mathema-app .btn:disabled{cursor:not-allowed}.mathema-app .btn.ghost{color:var(--p-ink-2);border-color:var(--p-border-strong);background:0 0}.mathema-app .btn.outline{background:var(--p-surface);color:var(--p-ink);border-color:var(--p-border-strong)}.mathema-app .btn.text{color:var(--p-ink-2);background:0 0;border:none;height:44px;font-weight:500}.mathema-app .field{flex-direction:column;gap:6px;display:flex}.mathema-app .field label{color:var(--p-ink-2);letter-spacing:-.005em;font-size:12px;font-weight:600}.mathema-app .field input,.mathema-app .field select{border:1px solid var(--p-border-strong);background:var(--p-surface);width:100%;height:52px;color:var(--p-ink);border-radius:12px;outline:none;padding:0 16px;font-family:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.mathema-app .field input:focus,.mathema-app .field select:focus{border-color:var(--p-primary);box-shadow:0 0 0 4px var(--p-primary-tint)}.mathema-app .card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:16px;padding:16px}.mathema-app .option-card{background:var(--p-surface);border:1.5px solid var(--p-border);cursor:pointer;text-align:left;width:100%;color:inherit;appearance:none;border-radius:16px;align-items:flex-start;gap:14px;padding:16px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.mathema-app .option-card:hover{border-color:var(--p-border-strong)}.mathema-app .option-card.selected{border-color:var(--p-primary);background:var(--p-primary-tint)}.mathema-app .option-card:disabled{cursor:not-allowed;opacity:1}.mathema-app .option-card .check{border:1.5px solid var(--p-border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;display:flex}.mathema-app .option-card.selected .check{background:var(--p-primary);border-color:var(--p-primary);color:var(--p-primary-fg)}.mathema-app .chip{background:var(--p-surface-2);color:var(--p-ink-2);border:1px solid var(--p-border);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;display:inline-flex}.mathema-app .chip.accent{background:var(--p-accent-tint);color:var(--p-ink);border-color:#0000}.mathema-app .chip.primary{background:var(--p-primary-tint);color:var(--p-primary);border-color:#0000}.mathema-app .grade-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.mathema-app .grade-pill{border:1.5px solid var(--p-border);background:var(--p-surface);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;height:64px;transition:all .15s;display:flex}.mathema-app .grade-pill .num{font-family:var(--font-display);color:var(--p-ink);font-size:24px;line-height:1}.mathema-app .grade-pill .lbl{color:var(--p-muted);letter-spacing:.04em;margin-top:4px;font-size:10.5px}.mathema-app .grade-pill.selected{border-color:var(--p-primary);background:var(--p-primary-tint)}.mathema-app .grade-pill.selected .num,.mathema-app .grade-pill.selected .lbl{color:var(--p-primary)}.mathema-app .choice{border:1.5px solid var(--p-border);background:var(--p-surface);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:14px;transition:all .12s;display:flex}.mathema-app .choice:hover{border-color:var(--p-border-strong)}.mathema-app .choice .letter{border:1.5px solid var(--p-border-strong);width:28px;height:28px;font-family:var(--font-mono);color:var(--p-ink-2);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.mathema-app .choice .text{font-size:15px;font-family:var(--font-mono);color:var(--p-ink)}.mathema-app .choice.selected{border-color:var(--p-primary);background:var(--p-primary-tint)}.mathema-app .choice.selected .letter{background:var(--p-primary);border-color:var(--p-primary);color:var(--p-primary-fg)}.mathema-app .choice.correct{border-color:var(--p-success);background:oklch(96% .04 155)}.mathema-app .choice.correct .letter{background:var(--p-success);border-color:var(--p-success);color:#fff}.mathema-app .hero-glyph{aspect-ratio:1.1;background:var(--p-primary);width:100%;color:var(--p-primary-fg);border-radius:28px;position:relative;overflow:hidden}.mathema-app .hero-glyph .grid-bg{background-image:linear-gradient(90deg,#ffffff12 1px,#0000 1px),linear-gradient(#ffffff12 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.mathema-app .toggle{background:var(--p-border-strong);cursor:pointer;border-radius:999px;flex-shrink:0;width:44px;height:26px;transition:background .15s;position:relative}.mathema-app .toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.mathema-app .toggle.on{background:var(--p-primary)}.mathema-app .toggle.on:after{transform:translate(18px)}.mathema-app .consent-row{border-bottom:1px solid var(--p-border);gap:14px;padding:14px 0;display:flex}.mathema-app .consent-row:last-child{border-bottom:none}.mathema-app .consent-row .ck{border:1.5px solid var(--p-border-strong);cursor:pointer;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;display:flex}.mathema-app .consent-row .ck.checked{background:var(--p-primary);border-color:var(--p-primary);color:var(--p-primary-fg)}.mathema-app .consent-row .info{flex:1;min-width:0}.mathema-app .consent-row .info .name{color:var(--p-ink);align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:flex}.mathema-app .consent-row .info .desc{color:var(--p-muted);margin-top:4px;font-size:12.5px;line-height:1.45}.mathema-app .req-pill{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--p-surface-2);color:var(--p-muted);border:1px solid var(--p-border);border-radius:4px;padding:2px 6px;font-size:9.5px}.mathema-app .mastery-row{align-items:center;gap:12px;padding:10px 0;display:flex}.mathema-app .mastery-row .label{width:110px;color:var(--p-ink-2);font-size:13px;font-weight:500}.mathema-app .mastery-row .track{background:var(--p-surface-2);border-radius:4px;flex:1;height:8px;position:relative;overflow:hidden}.mathema-app .mastery-row .fill{background:var(--p-primary);border-radius:4px;height:100%}.mathema-app .mastery-row .value{text-align:right;width:36px;font-family:var(--font-mono);color:var(--p-ink-2);font-size:12px;font-weight:500}.mathema-app .math{font-family:var(--font-mono);letter-spacing:-.005em;color:var(--p-ink);font-size:15px}.mathema-app .math-big{font-family:var(--font-mono);color:var(--p-ink);letter-spacing:-.01em;font-size:22px}.mathema-app .tabbar{background:var(--p-surface);border-top:1px solid var(--p-border);grid-template-columns:repeat(6,minmax(0,1fr));padding:6px 4px 8px;display:grid}.mathema-app .tabbar .tab{color:var(--p-muted);cursor:pointer;flex-direction:column;align-items:center;gap:3px;padding:6px 4px;font-size:10.5px;font-weight:500;display:flex}.mathema-app .tabbar .tab .icon{justify-content:center;align-items:center;width:22px;height:22px;display:flex}.mathema-app .tabbar .tab.active{color:var(--p-primary)}.mathema-app .app-head{justify-content:space-between;align-items:center;padding:18px 22px 8px;display:flex}.mathema-app .app-head .greet{flex:1;min-width:0}.mathema-app .app-head .greet .hello{color:var(--p-muted);letter-spacing:.02em;font-size:12px}.mathema-app .app-head .greet .name{font-family:var(--font-display);letter-spacing:-.01em;font-size:24px;line-height:1.1}.mathema-app .app-head .greet .name em{color:var(--p-primary);font-style:italic}.mathema-app .app-head .avatar{background:var(--p-primary);width:40px;height:40px;color:var(--p-primary-fg);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-style:italic;display:flex}.mathema-app .stat-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.mathema-app .stat{background:var(--p-surface);border:1px solid var(--p-border);border-radius:14px;padding:12px 14px}.mathema-app .stat .k{letter-spacing:.06em;color:var(--p-muted);font-size:10.5px;font-family:var(--font-mono);text-transform:uppercase}.mathema-app .stat .v{font-family:var(--font-display);color:var(--p-ink);letter-spacing:-.01em;margin-top:6px;font-size:24px;line-height:1.1}.mathema-app .stat .v.italic{font-style:italic}.mathema-app .stat .delta{font-family:var(--font-mono);color:var(--p-success);margin-top:2px;font-size:11px}.mathema-app .stat .delta.down{color:var(--p-danger)}.mathema-app .section-h{justify-content:space-between;align-items:baseline;margin:14px 0 8px;padding:4px 0;display:flex}.mathema-app .section-h .label{color:var(--p-ink);font-size:13.5px;font-weight:600}.mathema-app .section-h .more{color:var(--p-muted);cursor:pointer;font-size:12px}.mathema-app .plan-card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.mathema-app .plan-card .badge{width:44px;height:44px;font-family:var(--font-display);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-style:italic;display:flex}.mathema-app .plan-card .info{flex:1;min-width:0}.mathema-app .plan-card .info .ttl{color:var(--p-ink);font-size:14px;font-weight:600}.mathema-app .plan-card .info .sub{color:var(--p-muted);margin-top:2px;font-size:12px}.mathema-app .heatmap{grid-template-columns:repeat(12,1fr);gap:3px;display:grid}.mathema-app .heatmap .cell{aspect-ratio:1;background:var(--p-surface-2);border-radius:3px}.mathema-app .heatmap .cell.l1{background:oklch(from var(--p-primary) l c h / .25)}.mathema-app .heatmap .cell.l2{background:oklch(from var(--p-primary) l c h / .5)}.mathema-app .heatmap .cell.l3{background:var(--p-primary)}.mathema-app .viz-frame{background:var(--p-surface);border:1px solid var(--p-border);border-radius:18px;padding:18px;position:relative;overflow:hidden}.mathema-app .viz-frame .viz-bg{background-image:linear-gradient(90deg,oklch(92% .005 90/.5) 1px,#0000 1px),linear-gradient(oklch(92% .005 90/.5) 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.mathema-app .prob-head{border-bottom:1px solid var(--p-border);justify-content:space-between;align-items:center;padding:12px 22px;display:flex}.mathema-app .timer{font-family:var(--font-mono);color:var(--p-ink);letter-spacing:.02em;font-size:16px;font-weight:600}.mathema-app .step-pill{background:var(--p-primary-tint);color:var(--p-primary);font-size:11px;font-weight:600;font-family:var(--font-mono);letter-spacing:.06em;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:flex}.mathema-app .guide-tabs{gap:6px;padding:12px 0 14px;display:flex}.mathema-app .guide-tab{text-align:center;background:var(--p-surface-2);color:var(--p-ink-2);cursor:pointer;border-radius:10px;flex:1;padding:8px 0;font-size:11.5px;font-weight:600}.mathema-app .guide-tab.active{background:var(--p-primary);color:var(--p-primary-fg)}.mathema-app .sheet-backdrop{z-index:10;background:oklch(18% .012 175/.35);position:absolute;inset:0}.mathema-app .bottom-sheet{background:var(--p-surface);z-index:11;border-radius:24px 24px 0 0;flex-direction:column;max-height:72%;padding:12px 22px 18px;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 24px oklch(0% 0 0/.06)}.mathema-app .bottom-sheet .grip{background:var(--p-border-strong);border-radius:2px;width:36px;height:4px;margin:0 auto 4px}.mathema-app .notes-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.mathema-app .note-card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:14px;flex-direction:column;gap:8px;min-height:130px;padding:12px;display:flex}.mathema-app .note-card .src{font-family:var(--font-mono);letter-spacing:.05em;color:var(--p-muted);font-size:10px}.mathema-app .note-card .body{font-size:12.5px;font-family:var(--font-mono);color:var(--p-ink);max-height:56px;line-height:1.4;overflow:hidden}.mathema-app .note-card .foot{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.mathema-app .status-chip{font-size:10.5px;font-weight:600;font-family:var(--font-mono);letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.mathema-app .status-chip.pending{color:oklch(45% .12 70);background:oklch(96% .04 70)}.mathema-app .status-chip.analyzing{background:var(--p-primary-tint);color:var(--p-primary)}.mathema-app .status-chip.mastered{color:var(--p-success);background:oklch(95% .05 155)}.mathema-app .filter-row{-webkit-overflow-scrolling:touch;gap:6px;padding:4px 0 8px;display:flex;overflow-x:auto}.mathema-app .filter-row::-webkit-scrollbar{display:none}.mathema-app .filter-chip{background:var(--p-surface);border:1px solid var(--p-border);color:var(--p-ink-2);white-space:nowrap;cursor:pointer;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px}.mathema-app .filter-chip.active{background:var(--p-ink);color:var(--p-bg);border-color:var(--p-ink)}.mathema-app .fab{background:var(--p-primary);width:56px;height:56px;color:var(--p-primary-fg);box-shadow:0 8px 20px oklch(from var(--p-primary) l c h / .35);cursor:pointer;z-index:5;border-radius:18px;justify-content:center;align-items:center;display:flex;position:absolute;bottom:92px;right:22px}.mathema-app .achiev{border-bottom:1px dashed var(--p-border);align-items:center;gap:10px;padding:10px 0;display:flex}.mathema-app .achiev:last-child{border-bottom:none}.mathema-app .achiev .medal{background:var(--p-accent-tint);width:32px;height:32px;font-family:var(--font-display);color:var(--p-ink);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-style:italic;display:flex}.mathema-viewport{background:var(--p-bg);justify-content:center;align-items:stretch;width:100%;max-width:100%;height:100dvh;display:flex;overflow:hidden}.mathema-phone{background:var(--p-bg);width:100%;height:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);flex-direction:column;display:flex;position:relative;overflow:hidden}@media (width>=480px){.mathema-viewport{align-items:center;padding:24px 0;overflow-y:auto}.mathema-phone{width:min(428px,100vw - 32px);max-width:min(428px,100vw - 32px);height:min(892px,100vh - 48px);max-height:892px;box-shadow:0 24px 48px #00000014, 0 0 0 1px var(--p-border);border-radius:36px}}.edvera-main-app .student-grading-report{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;max-width:100%;display:grid}.edvera-main-app .student-grading-report-panel{gap:12px;min-width:0;display:grid}.edvera-main-app .feedback-style-bar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.edvera-main-app .feedback-style-toggle{border:1px solid #dbe3ef;border-radius:999px;display:inline-flex;overflow:hidden}.edvera-main-app .feedback-style-toggle button{color:#475569;cursor:pointer;font:inherit;letter-spacing:.02em;background:#fff;border:0;padding:7px 12px;font-size:12px;font-weight:700}.edvera-main-app .feedback-style-toggle button.is-active{color:#1e3a8a;background:#eff6ff}.edvera-main-app .feedback-style-bar__hint,.edvera-main-app .feedback-style-bar__status,.edvera-main-app .feedback-style-bar__warning{color:#64748b;margin:0;font-size:12px;line-height:1.4}.edvera-main-app .feedback-style-bar__warning{color:#9a3412}.edvera-main-app .corrector-report .candidate-result-header{gap:8px;display:grid}.edvera-main-app .corrector-report .candidate-score{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 16px;display:flex}.edvera-main-app .corrector-report .candidate-name{color:var(--stitch-muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:650}.edvera-main-app .corrector-report .candidate-items{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;max-width:100%;display:grid}.edvera-main-app .corrector-report .result-card{box-sizing:border-box;overflow-wrap:anywhere;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;min-width:0;max-width:100%;padding:16px}.edvera-main-app .corrector-report .result-card header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.edvera-main-app .corrector-report .result-card header h3{margin:0;font-size:16px}.edvera-main-app .corrector-report .result-card .marks{color:#2563eb;white-space:nowrap;font-size:14px;font-weight:700}.edvera-main-app .corrector-report .result-card .banner{box-sizing:border-box;color:#1e3a8a;overflow-wrap:anywhere;background:#eff6ff;border-radius:8px;min-width:0;max-width:100%;margin:10px 0 0;padding:10px 12px;font-size:14px;line-height:1.55}.edvera-main-app .corrector-report .result-card section{overflow-wrap:anywhere;min-width:0;max-width:100%;margin-top:14px}.edvera-main-app .corrector-report .result-card h4{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.edvera-main-app .corrector-report .math-content{white-space:pre-wrap;word-break:break-word;line-height:1.65;overflow-x:auto}.edvera-main-app .corrector-report .math-content .katex-display{margin:.5rem 0;overflow-x:auto}.edvera-main-app .corrector-report .math-text__fallback{color:inherit;white-space:pre-wrap;font-family:inherit}.edvera-main-app .corrector-report .warning-banner{color:#b45309;background:#fffbeb;border-radius:8px;margin:8px 0 0;padding:8px 10px;font-size:13px}.edvera-main-app .corrector-report .weakness-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.edvera-main-app .corrector-report .weakness-item{box-sizing:border-box;overflow-wrap:anywhere;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;min-width:0;max-width:100%;padding:12px}.edvera-main-app .corrector-report .strength-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.edvera-main-app .corrector-report .strength-item{box-sizing:border-box;overflow-wrap:anywhere;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;min-width:0;max-width:100%;padding:12px}.edvera-main-app .corrector-report .weakness-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.edvera-main-app .corrector-report .severity-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700}.edvera-main-app .corrector-report .severity-minor{color:#a16207;background:#fef9c3}.edvera-main-app .corrector-report .severity-moderate{color:#c2410c;background:#ffedd5}.edvera-main-app .corrector-report .severity-major{color:#b91c1c;background:#fee2e2}.edvera-main-app .corrector-report .weakness-evidence,.edvera-main-app .corrector-report .weakness-remediation{color:#475569;margin:10px 0 0;font-size:15px;line-height:1.7}.edvera-main-app .corrector-report .weakness-item .katex{font-size:1.08em}.edvera-main-app .corrector-report .weakness-item .katex .frac-line{border-bottom-width:.06em}.edvera-main-app .corrector-report .result-card ul{gap:6px;margin:0;padding-left:18px;display:grid}.edvera-main-app .corrector-report .result-card ul.strength-list,.edvera-main-app .corrector-report .result-card ul.weakness-list{gap:10px;padding-left:0}.edvera-main-app .student-grading-report__summary{gap:8px;display:grid}.edvera-main-app .student-grading-report__score{font-size:20px;font-weight:700}.edvera-main-app .student-grading-report__band{color:var(--app-text-soft);margin-left:8px;font-size:14px;font-weight:600}.edvera-main-app .student-grading-report__verdict,.edvera-main-app .student-grading-report__focus{color:var(--app-text-soft);font-size:14px;line-height:1.5}.edvera-main-app .student-grading-report__items{gap:12px;display:grid}.edvera-main-app .student-grading-report__item{border:1px solid #4648d41f;border-radius:16px;gap:10px;padding:14px;display:grid}.edvera-main-app .student-grading-report__item-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.edvera-main-app .student-grading-report__section h4{letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:12px}.edvera-main-app .student-grading-report__section ul,.edvera-main-app .student-grading-report__weaknesses{gap:8px;margin:0;padding-left:18px;display:grid}.edvera-main-app .student-grading-report__warning{color:#8a6d00;background:#ffc1071f;border-radius:10px;margin:0;padding:8px 10px;font-size:13px}.edvera-main-app .student-grading-report__feedback{margin:0}.edvera-main-app .student-grading-report__weakness-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.edvera-main-app .student-grade-severity{text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.edvera-main-app .student-grade-severity--minor{color:#2e7d32;background:#4caf5024}.edvera-main-app .student-grade-severity--moderate{color:#ef6c00;background:#ff980029}.edvera-main-app .student-grade-severity--major{color:#c62828;background:#f4433624}.edvera-main-app .corrector-report .report-collapse{margin-top:14px}.edvera-main-app .corrector-report .report-collapse__toggle{color:#64748b;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;width:100%;margin:0;padding:0;font-size:11px;font-weight:700;display:flex}.edvera-main-app .corrector-report .report-collapse__toggle:hover{color:#334155}.edvera-main-app .corrector-report .report-collapse__chevron{color:#94a3b8;flex-shrink:0;transition:transform .15s}.edvera-main-app .corrector-report .report-collapse__chevron--open{transform:rotate(180deg)}.edvera-main-app .corrector-report .report-collapse__body{margin-top:8px}.edvera-main-app .corrector-report .model-solution{margin-top:14px}.edvera-main-app .corrector-report .model-solution__toggle{color:#1e3a8a;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.edvera-main-app .corrector-report .model-solution__toggle:hover{background:#f8fafc}.edvera-main-app .corrector-report .model-solution__unavailable{color:#64748b;margin:0;font-size:13px;font-weight:500}.edvera-main-app .corrector-report .model-solution-modal{z-index:80;background:#0f172a73;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.edvera-main-app .corrector-report .model-solution-modal__panel{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:640px;max-height:min(86vh,720px);display:flex;box-shadow:0 20px 48px #0f172a38}.edvera-main-app .corrector-report .model-solution-modal__header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 12px;display:flex}.edvera-main-app .corrector-report .model-solution-modal__header h3{margin:0;font-size:16px;font-weight:700}.edvera-main-app .corrector-report .model-solution-modal__close{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.edvera-main-app .corrector-report .model-solution-modal__close:hover{color:#0f172a;background:#f1f5f9}.edvera-main-app .corrector-report .model-solution-modal__body{padding:14px 18px;overflow:auto}.edvera-main-app .corrector-report .model-solution-modal__actions{border-top:1px solid #e2e8f0;justify-content:flex-end;padding:12px 18px 16px;display:flex}.edvera-main-app .corrector-report .model-solution__prose{color:#0f172a;font-size:15px;line-height:1.75}.edvera-main-app .corrector-report .model-solution__prose .katex{font-size:1.1em}.edvera-main-app .corrector-report .model-solution__prose .katex-display{margin:.75rem 0}.edvera-main-app .corrector-report .model-solution__final{color:#0f172a;margin:12px 0 0;font-size:14px}
