@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#282331;font-synthesis:none;text-rendering:optimizelegibility;--ink:#282331;--muted:#746f7c;--line:#e7e3ec;--surface:#fff;--page:#f7f6f9;--purple:#6847bd;--purple-dark:#261d3a;--purple-soft:#f0ecf8;--pink:#d9367c;--pink-soft:#fff0f6;--blue:#2674bd;--blue-soft:#edf6ff;--green:#18784f;--green-soft:#eaf7f0;--warning:#94600c;--warning-soft:#fff7e6;--shadow:0 10px 30px #241c300e;background:#f7f6f9;font-family:DM Sans,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{background:var(--page);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,select,label.upload-label{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.55}button{color:inherit}a{color:#4f38a0}:focus-visible{outline-offset:2px;outline:3px solid #ec7fb1}::selection{color:#271c43;background:#e4dcf7}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,.brand-lockup strong,.brand-lockup span{font-family:Manrope,Segoe UI,sans-serif}small,.small-muted{color:var(--muted)}.small-muted{font-size:.84rem;line-height:1.5}.eyebrow{color:#76629c;letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-size:.68rem;font-weight:800;line-height:1.3}.auth-shell{background:radial-gradient(at 8% 6%,#eee7f7,#0000 42%),linear-gradient(135deg,#fbfafc,#f4f1f8);flex-direction:column;min-height:100vh;padding:28px clamp(20px,5vw,72px);display:flex}.auth-brand,.brand-lockup{align-items:center;gap:12px;display:flex}.auth-brand strong,.brand-lockup strong{letter-spacing:-.035em;font-size:1.04rem;display:block}.auth-brand span:not(.brand-mark),.brand-lockup span:not(.brand-mark){color:var(--muted);margin-top:1px;font-size:.75rem;display:block}.brand-mark{background:var(--purple-dark);color:#fff;border-radius:13px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;box-shadow:0 5px 14px #261d3a33}.brand-mark svg{width:34px;height:34px}.auth-main{flex:1;grid-template-columns:minmax(0,1fr) minmax(330px,430px);align-items:center;gap:clamp(36px,7vw,95px);width:min(1080px,100%);margin:28px auto;display:grid}.auth-copy h1{color:#221b30;letter-spacing:-.065em;max-width:660px;margin:16px 0;font-size:clamp(2.45rem,5.3vw,4.45rem);line-height:1.06}.auth-copy h1 span{color:var(--purple)}.auth-lede{color:#686272;max-width:570px;font-size:1.08rem;line-height:1.75}.auth-feature-list{gap:10px;margin-top:30px;display:grid}.auth-feature-list>div{background:#ffffffbd;border:1px solid #dfd8ead9;border-radius:14px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.feature-number{color:#a18dc9;font-size:.75rem;font-weight:800}.auth-feature-list p{margin:0}.auth-feature-list strong,.auth-feature-list small{display:block}.auth-feature-list strong{margin-bottom:3px;font-size:.9rem}.auth-feature-list small{font-size:.79rem;line-height:1.45}.auth-card{border:1px solid var(--line);background:#fffffff0;border-radius:22px;padding:30px;box-shadow:0 20px 60px #261d3a1a}.auth-card h2{letter-spacing:-.04em;margin:8px 0 10px;font-size:1.55rem}.auth-card>p{color:var(--muted);font-size:.9rem;line-height:1.6}.auth-card-mark{justify-content:center;margin:-4px 0 20px;display:flex}.auth-card-mark .brand-mark{border-radius:17px;width:54px;height:54px}.auth-card-mark .brand-mark svg{width:44px;height:44px}.auth-signin,.auth-demo{justify-content:center;width:100%;padding:13px 16px!important}.auth-divider{color:#9b96a2;align-items:center;gap:12px;margin:17px 0;font-size:.78rem;display:flex}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";flex:1;height:1px}.auth-note{margin:14px 0 0;font-size:.76rem!important}.auth-ai-status{color:var(--muted);align-items:center;gap:8px;margin-top:20px;font-size:.78rem;display:flex}.auth-footer{color:var(--muted);text-align:center;padding:18px 0 0;font-size:.78rem}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{color:#f7f4fc;background:linear-gradient(#271e3c,#20182f 70%,#1c152a);flex-direction:column;height:100vh;padding:18px 13px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand-lockup{padding:0 9px 22px}.brand-lockup strong{color:#fff;font-size:.95rem}.brand-lockup span:not(.brand-mark){color:#bbb2ca;font-size:.7rem}.app-sidebar .brand-mark{width:37px;height:37px;box-shadow:none;background:#4b3970;border:1px solid #ffffff29;border-radius:11px}.app-sidebar .brand-mark svg{width:31px;height:31px}.sidebar-collapse{color:#c8bfd5;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:29px;height:29px;margin-left:auto;display:inline-flex}.sidebar-collapse:hover{color:#fff;background:#ffffff1a}.sidebar-label{color:#a79bb8;letter-spacing:.11em;text-transform:uppercase;padding:6px 11px 10px;font-size:.65rem;font-weight:800}.side-nav{gap:4px;display:grid}.nav-item{color:#c9c2d2;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;min-height:52px;padding:8px 10px;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item.active{color:#fff;background:linear-gradient(100deg,#795bb954,#ffffff0f);border-color:#cbb8f826}.nav-icon{background:#ffffff12;border-radius:8px;flex:none;justify-content:center;align-items:center;width:29px;height:29px;display:flex}.nav-item.active .nav-icon{color:#fff;background:#7455b6}.nav-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-copy strong{font-size:.81rem;font-weight:650}.nav-copy small{color:#a99fb8;font-size:.67rem}.nav-active-mark{background:#f27eaf;border-radius:4px 0 0 4px;width:3px;height:24px;position:absolute;top:13px;right:0}.sidebar-footer{border-top:1px solid #ffffff1f;align-items:center;gap:10px;margin-top:auto;padding:15px 7px 2px;display:flex}.teacher-avatar,.avatar-mark{color:#5c368a;background:#eddcf0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-weight:800;display:flex}.teacher-footer-copy{flex:1;min-width:0}.teacher-footer-copy strong,.teacher-footer-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-footer-copy strong{font-size:.78rem}.teacher-footer-copy small{color:#b7aec3;margin-top:3px;font-size:.66rem}.sidebar-logout{color:#c8bfd5!important}.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .app-sidebar{padding-left:9px;padding-right:9px}.sidebar-collapsed .brand-lockup{flex-wrap:wrap;justify-content:center;padding:0 0 22px}.sidebar-collapsed .brand-lockup>div,.sidebar-collapsed .sidebar-label,.sidebar-collapsed .nav-copy,.sidebar-collapsed .nav-active-mark,.sidebar-collapsed .teacher-footer-copy{display:none}.sidebar-collapsed .sidebar-collapse{margin-left:0}.sidebar-collapsed .nav-item{justify-content:center;padding:8px}.sidebar-collapsed .sidebar-footer{flex-wrap:wrap;justify-content:center}.sidebar-collapsed .sidebar-logout{margin:0 auto}.app-main{min-width:0}.topbar{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #eae6ef;justify-content:space-between;align-items:center;gap:14px;min-height:66px;padding:10px clamp(18px,3vw,38px);display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:10px;display:flex}.crumb{color:#817a89;font-size:.78rem}.crumb span{color:#c2bdc8;padding:0 7px}.crumb strong{color:#30283a}.mobile-nav-toggle{display:none!important}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.topbar-class{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:8px;height:38px;padding:0 9px;display:inline-flex}.topbar-class>span{color:#8b8492;letter-spacing:.08em;font-size:.6rem;font-weight:800}.topbar-class select{max-width:185px;color:var(--ink);background:0 0;border:0;outline:0;font-size:.76rem;font-weight:650}.privacy-toggle{color:#5a4c72;background:#fff;border:1px solid #ddd6eb;border-radius:8px;min-height:35px;padding:0 10px;font-size:.7rem;font-weight:700}.privacy-toggle.active{background:var(--green-soft);color:#17633f;border-color:#badac8}.save-state,.ai-state{white-space:nowrap;color:#6f6977;align-items:center;gap:6px;font-size:.69rem;display:inline-flex}.ai-state{background:#f2f0f5;border-radius:8px;padding:7px 9px}.ai-ready{background:var(--green-soft);color:var(--green)}.ai-needs-setup{background:var(--warning-soft);color:var(--warning)}.status-dot{background:#5b9b75;border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.status-dot.warning{background:#dc9e2f}.status-dot.ready{background:#3a9662}.demo-banner{color:#6e5016;background:#fff8e9;border-bottom:1px solid #f0d9a9;align-items:center;gap:10px;padding:10px clamp(18px,3vw,38px);font-size:.78rem;display:flex}.demo-banner span{flex:1}.demo-banner button,.text-button{color:#5c43a0;background:0 0;border:0;font-size:.78rem;font-weight:700}.demo-banner button:hover,.text-button:hover{text-decoration:underline}.app-alert{padding:10px clamp(18px,3vw,38px) 0}.app-content{max-width:1580px;min-height:calc(100vh - 120px);margin:0 auto;padding:28px clamp(18px,3vw,38px) 42px}.workspace-footer{border-top:1px solid var(--line);color:#8a8491;justify-content:space-between;padding:16px clamp(18px,3vw,38px);font-size:.7rem;display:flex}.screen-stack{gap:18px;display:grid}.section-title{justify-content:space-between;align-items:flex-end;gap:22px;margin:2px 0 3px;display:flex}.section-title h1{letter-spacing:-.055em;margin:0 0 7px;font-size:clamp(1.72rem,2.5vw,2.28rem);line-height:1.12}.section-description{max-width:820px;color:var(--muted);margin:0;font-size:.9rem;line-height:1.58}.panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:15px;padding:19px}.panel-heading{border-bottom:1px solid #f0edf3;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:17px;padding-bottom:13px;display:flex}.panel-heading h2{letter-spacing:-.035em;margin:0;font-size:1.05rem}.panel-heading .eyebrow{margin-bottom:3px}.panel-note{color:var(--muted);margin:-4px 0 14px;font-size:.8rem;line-height:1.55}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 13px;font-size:.79rem;font-weight:700;line-height:1.1;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--purple);color:#fff;box-shadow:0 4px 10px #6847bd29}.button-primary:hover:not(:disabled){background:#5838ab}.button-secondary{color:#453d50;background:#fff;border-color:#dfdbe5}.button-secondary:hover:not(:disabled){background:#faf8fd;border-color:#c6badb}.button-blue{background:var(--blue);color:#fff}.button-small{min-height:32px;padding:6px 10px;font-size:.72rem}.full-width{width:100%;margin-top:12px}.icon-button{color:#686273;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-button:hover{border-color:var(--line);background:#f7f5f9}.danger-text{color:#b2355c!important}.text-link{font-size:.79rem;font-weight:700}.pill{border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:.68rem;font-weight:750;line-height:1.15;display:inline-flex}.pill-neutral{color:#615b68;background:#f7f6f8;border-color:#e4e0e8}.pill-purple{background:var(--purple-soft);color:#563d91;border-color:#e0d7f0}.pill-pink{background:var(--pink-soft);color:#a43163;border-color:#f4d3e1}.pill-blue{background:var(--blue-soft);color:#215f94;border-color:#d0e5f7}.pill-green{background:var(--green-soft);color:#176243;border-color:#cee9d9}.pill-warning{background:var(--warning-soft);color:#82580f;border-color:#f1dfb5}.notice{color:#38536f;overflow-wrap:anywhere;background:#f3f8fd;border:1px solid #d8e5f3;border-radius:10px;padding:11px 13px;font-size:.82rem;line-height:1.55;display:block}.notice-info{color:#38536f;background:#f3f8fd;border-color:#d8e5f3}.notice-success{color:#245d3f;background:#f0f8f2;border-color:#cfe6d7}.notice-warning{color:#775317;background:#fff8e9;border-color:#f0dfb5}.notice-error{color:#812d45;background:#fff2f4;border-color:#f0cad3}.notice a{color:inherit;font-weight:700}.notice .text-button{color:inherit}.empty-state{text-align:center;background:#fbfafc;border:1px dashed #d8d2df;border-radius:12px;justify-items:center;padding:34px 18px;display:grid}.empty-mark{background:var(--purple-soft);width:35px;height:35px;color:var(--purple);border-radius:50%;place-items:center;margin-bottom:9px;font-size:1.35rem;display:grid}.empty-state h3{margin:0 0 6px;font-size:.98rem}.empty-state p{max-width:490px;color:var(--muted);margin-bottom:0;font-size:.83rem;line-height:1.5}.empty-inline{color:var(--muted);border:1px dashed #ded9e5;border-radius:9px;padding:13px;font-size:.82rem;line-height:1.5}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:#4c4555;font-size:.75rem;font-weight:750}.field-hint{color:var(--muted);font-size:.72rem;line-height:1.45}.field input,.field textarea,.field select,input,textarea,select{max-width:100%}.field input,.field textarea,.field select,.inline-field select,.data-table input,.data-table select{min-height:39px;color:var(--ink);background:#fff;border:1px solid #ddd8e3;border-radius:8px;padding:8px 10px;font-size:.81rem}.field textarea{resize:vertical;min-height:74px;line-height:1.5}.field input:focus,.field textarea:focus,.field select:focus,.inline-field select:focus{border-color:#a48cd3;outline:3px solid #efe9f8}.form-grid{gap:13px;display:grid}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.four-col{grid-template-columns:repeat(4,minmax(0,1fr))}.field-action{justify-content:flex-end}.field-action .button{align-self:flex-start}.check-row{cursor:pointer;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--purple);flex:none;margin:2px 0 0}.check-row strong,.check-row small{display:block}.check-row strong{font-size:.8rem}.check-row small{margin-top:3px;font-size:.72rem;line-height:1.4}.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.inline-field{color:#625b69;align-items:center;gap:8px;font-size:.76rem;font-weight:700;display:inline-flex}.inline-field select{min-height:34px}.filter-row{flex-wrap:wrap;align-items:center;gap:15px;margin:0 0 13px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stat-card{border:1px solid var(--line);min-height:126px;box-shadow:var(--shadow);background:#fff;border-radius:13px;flex-direction:column;padding:16px;display:flex}.stat-label{color:#686170;font-size:.74rem;font-weight:750}.stat-card strong{letter-spacing:-.05em;margin:8px 0 3px;font-family:Manrope,sans-serif;font-size:2.05rem;line-height:1}.stat-detail{color:var(--muted);margin-top:auto;font-size:.7rem;line-height:1.4}.stat-purple{border-top:3px solid var(--purple)}.stat-pink{border-top:3px solid var(--pink)}.stat-blue{border-top:3px solid var(--blue)}.stat-green{border-top:3px solid #36a06d}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);align-items:start;gap:15px;display:grid}.panel-wide,.detail-panel{min-width:0}.table-scroll{border:1px solid #ebe7ef;border-radius:9px;width:100%;overflow:auto}.data-table,.heatmap-table{border-collapse:collapse;width:100%;font-size:.74rem}.data-table th,.data-table td,.heatmap-table th,.heatmap-table td{text-align:left;vertical-align:top;border-bottom:1px solid #efedf2;padding:9px 10px}.data-table th,.heatmap-table thead th{color:#5f5868;background:#faf9fb;font-size:.68rem;font-weight:800}.data-table tr:last-child td{border-bottom:0}.data-table input,.data-table select{min-height:31px;padding:5px 6px;font-size:.7rem}.heatmap-table{min-width:830px}.heatmap-table thead th{z-index:1;min-width:130px;position:sticky;top:0}.heatmap-table thead th:first-child{z-index:2;min-width:150px;left:0}.heatmap-table tbody th{z-index:1;background:#fff;min-width:150px;position:sticky;left:0}.code-label,.standard-short{display:block}.code-label{color:#514275;font-size:.7rem}.standard-short{max-width:170px;color:var(--muted);margin-top:4px;font-size:.65rem;font-weight:500;line-height:1.35}.student-link{color:#342b43;text-align:left;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:750}.student-link:hover{color:var(--purple);text-decoration:underline}.heatmap-table tbody th small{margin-top:4px;font-size:.64rem;font-weight:500;display:block}.heat-cell{text-align:left;border:1px solid #0000;border-radius:7px;align-items:center;gap:6px;min-width:118px;padding:7px;font-size:.66rem;font-weight:700;display:flex}.heat-cell:hover{border-color:#8f78bf}.heat-need{color:#943858;background:#fde8ef}.heat-developing{color:#7b5a20;background:#fff1d9}.heat-independent{color:#2c5f91;background:#e7f1fc}.heat-extension{color:#28633e;background:#e5f4ea}.heat-not-assessed{color:#716c79;background:#f3f1f5}.heat-conflict{color:#8d4a18;background:#fbe9de}.legend-row{color:#645e6c;flex-wrap:wrap;gap:9px 16px;margin-top:12px;font-size:.67rem;display:flex}.legend-row>span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:3px;width:9px;height:9px}.student-detail-title{border-bottom:1px solid #efedf2;align-items:center;gap:10px;padding-bottom:12px;display:flex}.student-detail-title strong,.student-detail-title small{display:block}.student-detail-title strong{font-size:.85rem}.student-detail-title small{margin-top:3px;font-size:.69rem}.evidence-detail{border-bottom:1px solid #efedf2;padding:12px 0}.evidence-detail:last-child{border-bottom:0}.evidence-detail>.row-between{font-size:.72rem}.evidence-line{background:#f8f7fa;border-radius:8px;grid-template-columns:1fr auto;gap:5px 12px;margin:9px 0 0;padding:8px;font-size:.68rem;display:grid}.evidence-line small{grid-column:1/-1;line-height:1.4}.trend-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.trend-figure{border:1px solid #eeebf1;border-radius:10px;margin:0;padding:10px}.trend-figure figcaption{justify-content:space-between;gap:8px;margin-bottom:4px;font-size:.68rem;display:flex}.trend-figure figcaption span:first-child{font-weight:750}.trend-figure figcaption span:last-child{color:var(--muted)}.trend-figure svg{width:100%;height:auto}.chart-axis{stroke:#8b8492;stroke-width:1.1px}.chart-gridline{stroke:#e8e4ec;stroke-width:1px}.chart-line{stroke:#6d4bbb;stroke-width:2.6px}.chart-point{fill:#6d4bbb;stroke:#fff;stroke-width:2px}.chart-label{fill:#6d6674;font:9px DM Sans,sans-serif}.dashboard-footnote,.screen-footer{color:#5c4b79;background:#f0edf6;border-radius:9px;align-items:center;gap:9px;padding:10px 12px;font-size:.76rem;line-height:1.4;display:flex}.class-switcher{flex-wrap:wrap;gap:8px;margin:0 0 15px;display:flex}.class-chip{border:1px solid var(--line);text-align:left;background:#fff;border-radius:9px;flex-direction:column;gap:4px;min-width:145px;padding:10px 12px;display:flex}.class-chip span{font-size:.77rem;font-weight:750}.class-chip small{font-size:.67rem}.class-chip.selected{background:var(--purple-soft);color:#483373;border-color:#a894d2}.class-toolbar{border-top:1px solid #efedf2;justify-content:space-between;align-items:center;gap:10px;margin-top:13px;padding-top:12px;display:flex}.upload-label{position:relative;overflow:hidden}.upload-label input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-label.disabled{opacity:.55;pointer-events:none}.score-input{width:55px}.evidence-table{min-width:900px}.modal-backdrop{z-index:30;background:#1b14277a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(760px,100%);max-height:90vh;padding:22px;overflow:auto;box-shadow:0 24px 80px #0f0a193d}.modal-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-heading h2{margin:0;font-size:1.25rem}.modal-card>p{color:var(--muted);font-size:.82rem;line-height:1.5}.mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:15px 0;display:grid}.modal-actions{justify-content:flex-end;gap:8px;margin-top:15px;display:flex}.cluster-list{gap:7px;display:grid}.cluster-row{cursor:grab;background:#fff;border:1px solid #ece8f0;border-radius:9px;grid-template-columns:68px minmax(150px,1fr) auto auto;align-items:center;gap:10px;padding:9px;display:grid}.cluster-row.dragging{opacity:.5}.cluster-row:active{cursor:grabbing}.cluster-row>input{background:#faf9fb;border:1px solid #0000;border-radius:7px;min-width:0;padding:8px;font-weight:700}.cluster-sort{align-items:center;gap:3px;display:flex}.cluster-sort button{color:#584a6e;background:#fff;border:1px solid #e8e4ec;border-radius:6px;place-items:center;width:25px;height:25px;display:grid}.cluster-sort span{color:#8b8492;text-align:center;width:20px;font-size:.68rem}.standards-list{gap:10px;display:grid}.standard-card{border:1px solid #eae6ee;border-radius:11px;padding:13px}.standard-card.standard-excluded{border-left:3px solid var(--pink);background:#fffdfd}.standard-head{justify-content:space-between;gap:12px;display:flex}.standard-head strong{color:#514275;font-size:.76rem}.standard-head h3{margin:4px 0 0;font-size:.93rem}.standard-card>p{color:#57515e;margin:10px 0;font-size:.78rem;line-height:1.55}.chip-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.standard-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:.69rem;display:flex}.standard-meta .inline-field{margin-left:auto}.standard-actions{flex-wrap:wrap;gap:10px;margin-top:9px;display:flex}.standard-actions a,.standard-actions button{font-size:.7rem}.import-template-note{color:var(--muted);margin-top:14px;font-size:.74rem}.import-template-note code{background:#f1eef5;border-radius:4px;padding:2px 5px}.excluded-detail{color:#713e57;border:1px dashed #e5c3d2;border-radius:9px;margin-top:14px;padding:10px;font-size:.76rem}.excluded-detail summary{cursor:pointer;font-weight:750}.group-columns{grid-template-columns:repeat(var(--group-count), minmax(215px, 1fr));align-items:start;gap:12px;padding:2px;display:grid;overflow-x:auto}.group-column{background:#fff;border:1px solid #e6e1eb;border-radius:12px;min-width:210px;padding:12px;transition:background .15s,border-color .15s}.group-column.group-drag-over{background:#f6f2fc;border-color:#9a82c7}.group-column-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.group-title-input{color:#332a40;background:0 0;border:0;width:100%;min-width:0;padding:3px 0;font-weight:800}.group-column-head small{margin-top:3px;font-size:.66rem;display:block}.group-reason{color:#6b6572;min-height:55px;margin:10px 0;font-size:.71rem;line-height:1.45}.group-members{gap:7px;display:grid}.group-member{cursor:grab;background:#fbfafc;border:1px solid #eeebf1;border-radius:8px;align-items:center;gap:7px;padding:9px 7px;display:flex}.group-member-name{flex:1;min-width:0}.group-member-name strong,.group-member-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.group-member-name strong{font-size:.72rem}.group-member-name small{margin-top:2px;font-size:.62rem}.group-member-name .group-member-reason{color:#6b6572;text-overflow:clip;white-space:normal;font-size:.61rem;line-height:1.35;display:block;overflow:visible}.move-control{color:#6d6477;align-items:center;display:flex}.move-control select{color:#0000;cursor:pointer;background:0 0;border:0;width:28px;height:28px}.move-control select option{color:var(--ink)}.move-control svg{pointer-events:none;margin-left:-22px}.activity-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.activity-card{border:1px solid #e9e5ee;border-radius:10px;gap:9px;padding:12px;display:flex}.activity-card strong{font-size:.75rem}.activity-card p{color:var(--muted);margin:4px 0 0;font-size:.69rem;line-height:1.4}.activity-dot{color:var(--purple)}.activity-teacher-table{background:#f8f5fc}.activity-partner-practice{background:#eff7ff}.activity-independent-practice{background:#fff5fa}.activity-extension{background:#f0f8f3}.planner-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);align-items:start;gap:14px;display:grid}.planner-grid>.panel:first-child>.form-grid{margin-bottom:15px}.standard-check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.standard-check-list fieldset{border:1px solid #e9e4ed;border-radius:9px;min-width:0;padding:9px 11px}.standard-check-list legend{color:#4a3c67;padding:0 5px;font-size:.72rem;font-weight:800}.standard-check-list .check-row{gap:8px;padding:5px 0}.standard-check-list .check-row strong{font-size:.69rem}.standard-check-list .check-row small{font-size:.67rem}.coverage-card{background:#faf9fc;border:1px solid #e5dfed;border-radius:10px;margin:13px 0;padding:13px}.coverage-card>.row-between strong{font-size:.78rem}.coverage-card>p{color:var(--muted);margin:8px 0;font-size:.71rem;line-height:1.45}.coverage-counts{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.coverage-counts span{color:#675f70;background:#fff;border-radius:7px;padding:7px;font-size:.66rem}.coverage-counts strong{color:var(--ink);font-size:1.05rem;display:block}.coverage-list{gap:5px;margin-top:8px;display:grid}.coverage-list>div{border-top:1px solid #ede9f1;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;font-size:.69rem;display:flex}.saved-plan-list{gap:7px;margin-bottom:12px;display:grid}.saved-plan-row{color:#51466a;text-align:left;background:#fff;border:1px solid #ebe7ef;border-radius:9px;align-items:center;gap:9px;width:100%;padding:10px;display:flex}.saved-plan-row:hover,.saved-plan-row.active{background:#f6f2fc;border-color:#b5a5d5}.saved-plan-row span{min-width:0}.saved-plan-row strong,.saved-plan-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.saved-plan-row strong{color:#342b43;font-size:.75rem}.saved-plan-row small{margin-top:3px;font-size:.66rem}.plan-standard-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;font-size:.75rem;display:flex}.plan-days{gap:12px;display:grid}.plan-day{background:#fcfbfd;border:1px solid #e9e5ee;border-radius:11px;padding:13px}.plan-day-title{background:#fff;border:1px solid #e6e1ea;border-radius:7px;width:min(420px,100%);min-height:34px;padding:5px 7px;font-size:.81rem;font-weight:800}.plan-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0;display:grid}.plan-edit-grid .field textarea{min-height:65px}.pacing-list{border-top:1px solid #ebe7ef;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;padding-top:11px;display:grid}.pacing-list>strong,.pacing-total-ok,.pacing-total-error{grid-column:1/-1;font-size:.72rem}.pacing-item{color:#5f5966;grid-template-columns:1fr 58px 24px;align-items:center;gap:5px;font-size:.68rem;display:grid}.pacing-item input{text-align:right;border:1px solid #e0dbe6;border-radius:6px;width:58px;min-height:30px;padding:4px}.pacing-total-ok{color:var(--green);font-weight:800}.pacing-total-error{color:#b63852;font-weight:800}.lesson-builder-grid{grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);align-items:start;gap:14px;display:grid}.lesson-input-column,.lesson-output-column{gap:12px;min-width:0;display:grid}.lesson-input-column .panel{max-height:calc(100vh - 95px);position:sticky;top:82px;overflow:auto}.lesson-standard-select{border:1px solid #e9e5ee;border-radius:9px;max-height:210px;margin:11px 0;padding:8px 10px;overflow:auto}.lesson-standard-select legend{color:#4d4266;padding:0 4px;font-size:.72rem;font-weight:800}.source-note{color:var(--muted);font-size:.71rem;line-height:1.45}.lesson-meta-bar{gap:12px;margin-bottom:12px;display:grid}.lesson-title-edit{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.lesson-title-edit .field{flex:1}.lesson-title-edit .field input{font-family:Manrope,sans-serif;font-size:.93rem;font-weight:700}.lesson-sections{gap:10px;display:grid}.lesson-section{background:#fff;border:1px solid #e9e5ee;border-radius:10px;padding:12px}.lesson-section-heading{align-items:center;gap:9px;margin-bottom:9px;display:flex}.lesson-section-heading h3{margin:0;font-size:.81rem}.lesson-section-heading small{margin-top:3px;font-size:.66rem;display:block}.lesson-section-heading>div:nth-child(2){flex:1}.step-number{background:var(--purple-soft);color:#58418c;border-radius:8px;flex:none;place-items:center;width:29px;height:29px;font-size:.68rem;font-weight:850;display:grid}.lesson-section textarea{color:#37303e;resize:vertical;background:#fbfafc;border:1px solid #e7e3eb;border-radius:7px;width:100%;min-height:64px;padding:9px;font-size:.78rem;line-height:1.55}.lesson-section .field{margin-top:8px}.lesson-section .field textarea{background:#fffaf0}.lesson-answer-section{background:#fffaf5;border-color:#efd6c2}.lesson-exit-section{background:#f8fbfe;border-color:#d4e5f3}.presentation-card{background:#fbf9ff;border:1px solid #d8cfea;border-radius:12px;gap:15px;padding:15px;display:grid}.presentation-text{color:#312a39;white-space:pre-wrap;background:#fff;border-radius:9px;min-height:130px;padding:18px;font-size:clamp(1rem,2vw,1.28rem);line-height:1.6}.presentation-nav{justify-content:space-between;gap:8px;display:flex}.lesson-tools{grid-template-columns:minmax(200px,.8fr) minmax(220px,1.2fr);gap:10px;margin-top:12px;display:grid}.timer-card,.pacing-card{background:#faf9fc;border:1px solid #ebe7ef;border-radius:10px;padding:12px}.timer-display{color:#40344f;align-items:center;gap:7px;display:flex}.timer-display span{font-variant-numeric:tabular-nums;font-family:Manrope,sans-serif;font-size:1.34rem;font-weight:800}.timer-display small{margin-left:auto;font-size:.64rem}.timer-progress{background:#e8e3ef;border-radius:8px;height:7px;margin:11px 0 7px;overflow:hidden}.timer-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#7758ba,#db4c8b);height:100%;transition:width .3s}.timer-card>strong,.pacing-card>strong{color:#4e4560;margin-bottom:8px;font-size:.72rem;display:block}.pacing-row{color:#635d69;border-top:1px solid #eeeaf2;justify-content:space-between;gap:8px;padding:4px 0;font-size:.68rem;display:flex}.lesson-footer-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.precise-graph{background:#f8fbff;border:1px solid #dce7f1;border-radius:10px;margin:10px 0 13px;padding:11px}.precise-graph figcaption{color:#40566d;align-items:baseline;gap:9px;margin-bottom:6px;font-size:.74rem;display:flex}.precise-graph figcaption strong{color:#27547d}.precise-graph figcaption span{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.precise-graph svg{width:min(100%,460px);height:auto;margin:0 auto;display:block}.graph-gridline{stroke:#e4ebf1;stroke-width:1px}.graph-axis{stroke:#6a7785;stroke-width:1.4px}.graph-tick{fill:#647182;font:9px DM Sans,sans-serif}.graph-axis-label{fill:#37485a;font:700 10px DM Sans,sans-serif}.graph-relation{stroke:#6b43b2;stroke-width:3px;stroke-linecap:round}.graph-scale{color:#5d6c7b;text-align:center;max-width:540px;margin:5px auto 0;font-size:.67rem;line-height:1.4}.loading-shell{background:#f7f5fa;grid-template-columns:auto minmax(250px,520px);place-content:center;align-items:center;gap:20px;min-height:100vh;padding:25px;display:grid}.loading-shell h1{margin:0 0 7px;font-size:1.5rem}.loading-shell p:not(.eyebrow){color:var(--muted);font-size:.88rem}.loading-bar{background:#e7e1ee;border-radius:8px;height:5px;overflow:hidden}.loading-bar span{border-radius:inherit;background:var(--purple);width:38%;height:100%;animation:1.5s ease-in-out infinite alternate loading;display:block}@keyframes loading{0%{transform:translate(-10%)}to{transform:translate(180%)}}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-grid .panel-note{margin-bottom:12px}.threshold-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.threshold-fields .field-label{min-height:32px;font-size:.69rem}.threshold-fields input{width:100%;min-width:0}.screen-footer{margin-top:4px}@media (width<=1180px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.sidebar-collapsed{grid-template-columns:70px minmax(0,1fr)}.topbar{align-items:flex-start}.topbar-actions{gap:6px}.save-state{display:none}.four-col,.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-builder-grid{grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr)}}@media (width<=900px){.app-shell,.sidebar-collapsed{grid-template-columns:1fr}.app-sidebar{z-index:20;width:260px;height:100dvh;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:12px 0 35px #160f2238}.sidebar-open .app-sidebar{transform:translate(0)}.sidebar-collapsed .app-sidebar{width:260px;transform:translate(-105%)}.sidebar-collapsed.sidebar-open .app-sidebar{transform:translate(0)}.sidebar-collapsed .brand-lockup>div,.sidebar-collapsed .sidebar-label,.sidebar-collapsed .nav-copy,.sidebar-collapsed .nav-active-mark,.sidebar-collapsed .teacher-footer-copy{display:initial}.sidebar-collapsed .brand-lockup{flex-wrap:nowrap;justify-content:flex-start;padding:0 9px 22px}.sidebar-collapsed .sidebar-footer{flex-wrap:nowrap;justify-content:flex-start}.sidebar-collapsed .nav-item{justify-content:flex-start;padding:8px 10px}.sidebar-collapsed .sidebar-collapse{margin-left:auto}.mobile-nav-toggle{display:inline-flex!important}.dashboard-grid,.planner-grid,.lesson-builder-grid{grid-template-columns:1fr}.lesson-input-column .panel{max-height:none;position:static}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.group-columns{grid-template-columns:repeat(2,minmax(215px,1fr))}.section-title{align-items:flex-start}}@media (width<=620px){.auth-shell{padding:18px}.auth-main{grid-template-columns:1fr;gap:20px;margin:25px auto}.auth-copy h1{font-size:2.42rem}.auth-card{padding:22px}.topbar{flex-wrap:wrap;min-height:58px;padding:8px 12px}.topbar-left{justify-content:space-between;width:100%}.topbar-actions{justify-content:flex-start;width:100%}.topbar-class{flex:1}.topbar-class select{width:100%;max-width:none}.ai-state,.privacy-toggle{font-size:.65rem}.demo-banner{flex-wrap:wrap;align-items:flex-start;padding:9px 13px}.demo-banner span{min-width:80%}.demo-banner button{margin-left:25px}.app-content{padding:21px 12px 30px}.workspace-footer{gap:10px;padding:12px;font-size:.62rem}.workspace-footer span:last-child{text-align:right}.section-title{flex-direction:column;gap:12px}.section-title h1{font-size:1.8rem}.panel{border-radius:12px;padding:14px}.panel-heading{align-items:center}.two-col,.three-col,.four-col,.standard-check-list,.plan-edit-grid,.settings-grid,.threshold-fields{grid-template-columns:1fr}.stat-grid{gap:8px}.stat-card{min-height:112px;padding:12px}.stat-card strong{font-size:1.7rem}.stat-detail{font-size:.65rem}.group-columns,.activity-grid{grid-template-columns:1fr}.class-toolbar,.standard-head,.standard-meta{flex-direction:column;align-items:flex-start}.standard-meta .inline-field{margin-left:0}.cluster-row{grid-template-columns:60px minmax(0,1fr)}.cluster-row>.small-muted,.cluster-row>.pill{grid-column:2}.lesson-title-edit{flex-direction:column;align-items:flex-start}.lesson-tools,.pacing-list,.mapping-grid{grid-template-columns:1fr}.coverage-counts span{font-size:.61rem}.auth-feature-list{gap:7px}.auth-feature-list>div{padding:11px}}@media print{@page{size:letter;margin:.55in}body{font-size:11pt;color:#111!important;background:#fff!important}.app-sidebar,.topbar,.screen-title-actions,.lesson-input-column,.screen-title,.section-title,.panel-heading button,.lesson-footer-actions,.lesson-tools,.lesson-section-heading button,.no-print,.modal-backdrop,.workspace-footer,.demo-banner{display:none!important}.app-main,.app-content,.screen-stack,.panel,.lesson-output-column,.lesson-sections{width:100%!important;max-width:none!important;box-shadow:none!important;border:0!important;margin:0!important;padding:0!important;display:block!important}.lesson-builder-grid{display:block!important}.panel-heading{border:0!important;padding:0 0 8pt!important}.lesson-section{break-inside:avoid;border:1px solid #aaa!important;margin:0 0 12pt!important;padding:10pt!important}.lesson-section textarea,.lesson-section input{color:#111!important;background:0 0!important;border:0!important;min-height:0!important;padding:0!important}.lesson-section textarea[readonly]{resize:none}.lesson-exit-section{break-before:page}html[data-print-scope=plan] .planner-grid{display:none!important}html[data-print-scope=plan] .plan-edit-grid{display:block!important}html[data-print-scope=plan] .plan-edit-grid .field:nth-child(8){break-before:page;page-break-before:always;margin-top:0!important}html[data-print-scope=plan] .plan-edit-grid textarea{color:#111!important;resize:none!important;background:0 0!important;border:0!important;min-height:1.2em!important;padding:0!important;overflow:visible!important}html[data-print-scope=plan] .plan-day{border:0!important;padding:0!important}.lesson-section-answer,.teacher-answer,html[data-print-view=student] .teacher-notes,html[data-print-view=student] .lesson-answer-section{display:none!important}html[data-print-view=teacher] .lesson-answer-section,.print-student-only{display:block!important}.lesson-meta-bar .button-row{display:none!important}.lesson-meta-bar input{font-size:16pt;font-weight:700;color:#111!important;background:0 0!important;border:0!important;padding:0!important}a{color:#111!important;text-decoration:none!important}}
