.student-archive{margin-top:18px;border-radius:8px}.student-archive-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 18px 12px;padding:3px;border:1px solid #dfe4ec;border-radius:6px;background:#f5f7fa}.student-archive-filters button{min-height:30px;border:0;border-radius:4px;background:transparent;color:#5e6879;font:inherit;font-size:11px;cursor:pointer}.student-archive-filters button.is-active{background:#fff;color:#173d35;box-shadow:0 1px 4px #162a261f;font-weight:700}.student-archive-list{max-height:460px;overflow-y:auto;margin:0;padding:0 18px 18px;list-style:none}.student-archive-list>li{position:relative;display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;padding:14px 0 14px 14px;border-bottom:1px solid #edf0f3}.student-archive-list>li:before{content:"";position:absolute;top:20px;left:0;width:7px;height:7px;border-radius:50%;background:#2f786a}.student-archive-list>li.is-guidance:before{background:#3e6da8}.student-archive-list>li.is-feedback:before{background:#d17b2c}.student-archive-list>li:last-child{border-bottom:0}.student-archive-time time,.student-archive-time span,.student-archive-content strong,.student-archive-content small{display:block}.student-archive-time time{color:#697486;font-size:10px}.student-archive-time span{width:max-content;max-width:100%;margin-top:7px;padding:3px 5px;border-radius:4px;background:#e8f3ef;color:#286759;font-size:9px}.is-guidance .student-archive-time span{background:#eaf0f8;color:#365f91}.is-feedback .student-archive-time span{background:#fff0df;color:#9b5b20}.student-archive-content{min-width:0}.student-archive-content strong{color:#25313d;font-size:12px}.student-archive-content p{overflow-wrap:anywhere;margin:5px 0 0;color:#5f6a77;font-size:10px;line-height:1.55}.student-archive-content small{overflow-wrap:anywhere;margin-top:6px;color:#8a6370;font-size:9px;line-height:1.5}.student-archive-material{margin-top:8px;color:#344554;font-size:10px}.student-archive-material summary{width:max-content;max-width:100%;color:#365f91;cursor:pointer;font-weight:700}.student-archive-material dl{display:grid;gap:0;margin:9px 0 0;border:1px solid #e2e7ec;border-radius:6px;background:#fafbfc}.student-archive-material dl>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;padding:7px 9px;border-bottom:1px solid #e7ebef}.student-archive-material dl>div:last-child{border-bottom:0}.student-archive-material dt{color:#75808c}.student-archive-material dd{min-width:0;margin:0;overflow-wrap:anywhere}.student-archive-material dd ol{margin:0;padding-left:17px}.student-archive-material dd li{display:list-item;padding:0;border:0}.student-archive-material dd li:before{display:none}.student-archive-empty{margin:0;padding:22px 18px 26px;color:#76808f;font-size:11px;text-align:center}@media(max-width:420px){.student-archive-list>li{grid-template-columns:1fr}}@media(max-width:820px){.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:minmax(0,1fr)!important}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-column:auto!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important}}.parent-guidance-page{width:min(1040px,100%);margin:0 auto;color:#17324f}.parent-guidance-page .page-header{margin-bottom:18px}.parent-guidance-band{padding:18px;border:1px solid #d9e4ef;border-radius:8px;background:#fff}.parent-guidance-band+.parent-guidance-band{margin-top:16px}.parent-guidance-summary-head,.parent-guidance-summary-controls,.parent-guidance-home-task>header,.parent-guidance-task-actions{display:flex;align-items:center}.parent-guidance-summary-head{justify-content:space-between;gap:16px}.parent-guidance-summary-head h2,.parent-guidance-summary-head p{margin:0}.parent-guidance-summary-head h2{font-size:15px}.parent-guidance-summary-head p{margin-top:4px;color:#6b7f93;font-size:11px}.parent-guidance-summary-controls{gap:8px}.parent-guidance-summary-controls input{min-height:34px;border:1px solid #cddae7;border-radius:6px;color:#17324f}.parent-guidance-source-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:14px;overflow:hidden;border:1px solid #e2eaf2;border-radius:7px;background:#e2eaf2}.parent-guidance-source-line{min-width:0;padding:12px;background:#f8fafc}.parent-guidance-source-line header{display:flex;align-items:center;justify-content:space-between;gap:8px}.parent-guidance-source-line h3,.parent-guidance-source-line p{margin:0}.parent-guidance-source-line h3{font-size:13px}.parent-guidance-source-line header span{color:#61778d;font-size:10px}.parent-guidance-source-line ol{margin:10px 0 0;padding-left:20px}.parent-guidance-source-line li+li{margin-top:8px}.parent-guidance-source-line li b,.parent-guidance-source-line li span{display:block;overflow-wrap:anywhere}.parent-guidance-source-line li b{font-size:11px}.parent-guidance-source-line li span,.parent-guidance-source-line p{margin-top:2px;color:#667d93;font-size:10px;line-height:1.5}.parent-guidance-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.parent-guidance-form label,.parent-guidance-observation label{min-width:0;display:grid;gap:6px;color:#46617d;font-size:12px;font-weight:700}.parent-guidance-form label.is-wide{grid-column:1 / -1}.parent-guidance-form input,.parent-guidance-form select,.parent-guidance-form textarea,.parent-guidance-review textarea,.parent-guidance-observation input,.parent-guidance-observation select,.parent-guidance-observation textarea{width:100%;min-width:0;border:1px solid #cddae7;border-radius:6px;background:#fff;color:#17324f;font:inherit}.parent-guidance-form input,.parent-guidance-form select,.parent-guidance-observation select{min-height:38px}.parent-guidance-form textarea,.parent-guidance-review textarea,.parent-guidance-observation textarea{resize:vertical}.parent-guidance-form-actions,.parent-guidance-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.parent-guidance-form-actions{grid-column:1 / -1}.parent-guidance-list{display:grid;gap:14px;margin-top:16px}.parent-guidance-artifact{overflow:hidden;border:1px solid #d9e4ef;border-radius:8px;background:#fff}.parent-guidance-artifact>header{min-height:58px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #e7edf3;background:#f7fafc}.parent-guidance-artifact>header>div{min-width:0;flex:1}.parent-guidance-artifact-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0}.parent-guidance-artifact h2,.parent-guidance-artifact h3{margin:0;color:#17324f}.parent-guidance-artifact h2{font-size:16px}.parent-guidance-artifact h3{font-size:13px}.parent-guidance-artifact header p{margin:4px 0 0;color:#6b7f93;font-size:11px}.parent-guidance-status{flex:0 0 auto;min-width:86px;min-height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border-radius:5px;background:#edf3f8;color:#425e78;font-size:10px;font-weight:800}.parent-guidance-status.is-draft{background:#fff4dc;color:#8f5b00}.parent-guidance-status.is-approved,.parent-guidance-status.is-sent,.parent-guidance-status.is-completed{background:#e5f7ef;color:#08734c}.parent-guidance-status.is-rejected,.parent-guidance-status.is-needs-human-review{background:#fff0f2;color:#ad3348}.parent-guidance-artifact-body{display:grid;gap:16px;padding:16px}.parent-guidance-package-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #dfe8f1;border-radius:7px;background:#dfe8f1}.parent-guidance-package-summary>div{min-width:0;padding:11px 12px;background:#f7fafc}.parent-guidance-package-summary span,.parent-guidance-package-summary b{display:block;overflow-wrap:anywhere}.parent-guidance-package-summary span{color:#71869a;font-size:10px}.parent-guidance-package-summary b{margin-top:4px;color:#203c59;font-size:12px}.parent-guidance-task-list{border-top:1px solid #dfe8f1}.parent-guidance-home-task{border-bottom:1px solid #dfe8f1}.parent-guidance-home-task>header{min-height:54px;justify-content:space-between;gap:12px;padding:10px 4px}.parent-guidance-home-task>header>div{min-width:0}.parent-guidance-home-task>header span{display:block;color:#637b92;font-size:10px;font-weight:700}.parent-guidance-home-task>header h3{margin-top:4px}.parent-guidance-home-task>header>b{flex:0 0 auto;color:#2c5675;font-size:11px}.parent-guidance-home-task-body{display:grid;gap:14px;padding:0 4px 16px}.parent-guidance-task-toggle{min-width:0;display:block;flex:1;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.parent-guidance-task-toggle span,.parent-guidance-task-toggle b{display:block;overflow-wrap:anywhere}.parent-guidance-task-toggle span{color:#637b92;font-size:10px}.parent-guidance-task-toggle b{margin-top:4px;font-size:13px}.parent-guidance-task-actions{justify-content:flex-end;padding-top:8px}.parent-guidance-task-editor{padding:12px 0 16px;border-top:1px solid #e6edf4}.parent-guidance-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #e2eaf2;border-radius:7px;background:#e2eaf2}.parent-guidance-plan-grid>div{min-width:0;padding:12px;background:#fff}.parent-guidance-plan-grid>div.is-wide{grid-column:1 / -1}.parent-guidance-plan-grid dt{color:#71869a;font-size:10px}.parent-guidance-plan-grid dd{margin:5px 0 0;overflow-wrap:anywhere;color:#203c59;font-size:12px;line-height:1.6}.parent-guidance-plan-grid ol,.parent-guidance-plan-grid ul{margin:0;padding-left:20px}.parent-guidance-plan-grid li+li{margin-top:5px}.parent-guidance-trace{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.parent-guidance-trace>div{min-width:0;padding:10px;border:1px solid #dfe8f1;border-radius:6px;background:#f8fafc}.parent-guidance-trace b,.parent-guidance-trace span{display:block}.parent-guidance-trace b{color:#17324f;font-size:15px}.parent-guidance-trace span{margin-top:4px;color:#72869a;font-size:10px}.parent-guidance-gaps{margin:0;padding:10px 12px;border-left:3px solid #d44d63;background:#fff6f7;color:#8e2f42;font-size:12px;line-height:1.6}.parent-guidance-review{display:grid;gap:8px;padding-top:14px;border-top:1px solid #e6edf4}.parent-guidance-review label{color:#526c85;font-size:11px;font-weight:700}.parent-guidance-empty{margin:0;padding:28px 18px;border:1px dashed #c9d8e6;border-radius:8px;color:#6e8296;text-align:center}.parent-guidance-observation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px;border-top:1px solid #e6edf4}.parent-guidance-observation label.is-wide,.parent-guidance-observation .parent-guidance-actions{grid-column:1 / -1}.parent-guidance-check{display:flex!important;align-items:center;gap:8px!important;font-weight:600!important}.parent-guidance-check input{width:16px;min-height:16px;margin:0}.parent-guidance-success{margin:0;padding:10px 12px;border-left:3px solid #14966d;background:#effaf6;color:#0a6a4c;font-size:12px}@media(max-width:760px){.parent-guidance-form,.parent-guidance-plan-grid,.parent-guidance-observation,.parent-guidance-trace,.parent-guidance-source-lines,.parent-guidance-package-summary{grid-template-columns:1fr}.parent-guidance-form label.is-wide,.parent-guidance-plan-grid>div.is-wide,.parent-guidance-observation label.is-wide,.parent-guidance-observation .parent-guidance-actions{grid-column:auto}.parent-guidance-artifact>header{align-items:flex-start;flex-direction:column}.parent-guidance-artifact-tools{width:100%;justify-content:space-between}.parent-guidance-summary-head{align-items:stretch;flex-direction:column}.parent-guidance-summary-controls{width:100%}.parent-guidance-summary-controls input{min-width:0;flex:1}}.kg-guidance-page{width:min(1160px,100%);margin:0 auto;padding:0 16px 40px;color:#182230;letter-spacing:0}.kg-guidance-page .page-header{margin-bottom:14px}.kg-governance-band{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin:0 -16px;padding:12px 16px;border-top:1px solid #c9d3df;background:#f3f7f6}.kg-governance-copy{display:grid;min-width:0;gap:3px;color:#344054;font-size:12px;line-height:1.55}.kg-governance-copy strong{color:#173f3a;font-size:13px}.kg-withdrawal{flex:0 0 min(430px,48%);color:#475467;font-size:12px}.kg-withdrawal summary{color:#8f2d26;font-weight:700;cursor:pointer}.kg-withdrawal-controls{display:grid;grid-template-columns:minmax(120px,160px) minmax(220px,1fr) auto;gap:8px 12px;align-items:end;margin-top:9px}.kg-withdrawal-controls>label:not(.kg-check){display:grid;gap:4px;font-weight:650}.kg-withdrawal-controls select{min-height:36px;border:1px solid #cbd5df;border-radius:6px;padding:6px 8px;background:#fff;color:#182230}.kg-withdrawal-status{flex:0 1 430px;border-left:3px solid #c84a40;padding:8px 10px;background:#fff0ef;color:#8f2d26;font-size:12px;line-height:1.5}.kg-guidance-band{margin:0 -16px 18px;padding:18px 16px;border-top:1px solid #dfe5ec;border-bottom:1px solid #dfe5ec;background:#f8fafc}.kg-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.kg-form label,.kg-segment-field{min-width:0;margin:0;border:0;padding:0;color:#344054;font-size:13px;font-weight:650}.kg-segment-field legend{margin-bottom:7px;padding:0}.kg-form label{display:grid;align-content:start;gap:7px}.kg-form label.is-wide,.kg-segment-field.is-wide,.kg-form-actions{grid-column:1 / -1}.kg-field-note{color:#667085;font-size:11px;font-weight:400;line-height:1.5}.kg-form input,.kg-form select,.kg-form textarea,.kg-review-actions textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #cbd5df;border-radius:6px;background:#fff;color:#182230;font:inherit;font-weight:400;line-height:1.5;letter-spacing:0}.kg-form input,.kg-form select{min-height:40px;padding:8px 10px}.kg-form textarea,.kg-review-actions textarea{padding:9px 10px;resize:vertical}.kg-form input:focus,.kg-form select:focus,.kg-form textarea:focus,.kg-review-actions textarea:focus{border-color:#4b6fb9;outline:3px solid #dce7f8}.kg-form input:disabled{background:#eef2f6;color:#667085}.kg-segmented{display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(92px,auto);min-height:40px;overflow:hidden;border:1px solid #cbd5df;border-radius:6px;background:#fff}.kg-segmented button{min-width:0;border:0;border-right:1px solid #dfe5ec;padding:8px 13px;background:#fff;color:#475467;font:inherit;font-size:13px;font-weight:650;letter-spacing:0;cursor:pointer}.kg-segmented button:last-child{border-right:0}.kg-segmented button.is-active{background:#244f88;color:#fff}.kg-form-actions,.kg-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.kg-list-toolbar{display:flex;justify-content:flex-end;margin:0 0 12px}.kg-artifact-list{display:grid;gap:14px}.kg-artifact{min-width:0;overflow:hidden;border:1px solid #d9e0e8;border-radius:8px;background:#fff;box-shadow:0 1px 2px #1018280d}.kg-artifact>header{display:flex;justify-content:space-between;gap:16px;padding:16px 18px 14px;border-bottom:1px solid #e8edf2}.kg-artifact>header>div{min-width:0}.kg-title-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.kg-title-row h2{min-width:0;overflow-wrap:anywhere;margin:0;color:#101828;font-size:18px;line-height:1.35;letter-spacing:0}.kg-artifact>header p{margin:6px 0 0;color:#667085;font-size:12px;line-height:1.5}.kg-status,.kg-execution{flex:0 0 auto;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap}.kg-status.is-draft{background:#fff4cc;color:#7a4b00}.kg-status.is-approved{background:#dff5e7;color:#176b3a}.kg-status.is-needs_revision,.kg-status.is-needs_human_review{background:#e6edfb;color:#284b84}.kg-status.is-rejected,.kg-execution.is-stopped{background:#fee7e5;color:#a9342a}.kg-execution{background:#e8f4f3;color:#176b65}.kg-plan{padding:16px 18px 4px}.kg-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid #e8edf2;border-left:1px solid #e8edf2}.kg-plan-grid>div{min-width:0;border-right:1px solid #e8edf2;border-bottom:1px solid #e8edf2;padding:10px 12px}.kg-plan-grid>div.is-wide{grid-column:1 / -1}.kg-plan-grid dt{margin:0 0 4px;color:#667085;font-size:11px;font-weight:700}.kg-plan-grid dd{overflow-wrap:anywhere;margin:0;color:#243043;font-size:13px;line-height:1.65}.kg-detail-columns,.kg-trace{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:16px;border-top:1px solid #dfe5ec}.kg-detail-columns section,.kg-trace section{min-width:0;padding:14px 16px 14px 0;border-right:1px solid #e8edf2}.kg-detail-columns section+section,.kg-trace section+section{padding-left:16px}.kg-detail-columns section:last-child,.kg-trace section:last-child{padding-right:0;border-right:0}.kg-plan h3,.kg-editor h3,.kg-observation-form h3,.kg-handoff-form h3{margin:0 0 9px;color:#243043;font-size:14px;line-height:1.4;letter-spacing:0}.kg-plan b{color:#475467;font-size:12px}.kg-plan ol,.kg-plan ul{margin:6px 0 12px;padding-left:20px;color:#344054;font-size:13px;line-height:1.65}.kg-plan li+li{margin-top:4px}.kg-trace ul{list-style:none;padding-left:0}.kg-trace li{display:grid;gap:2px;padding:6px 0;border-bottom:1px solid #eef2f6}.kg-trace li b{overflow-wrap:anywhere;color:#344054}.kg-trace li span,.kg-trace p{overflow-wrap:anywhere;margin:0;color:#667085;font-size:12px;line-height:1.55}.kg-alert,.kg-review-note,.kg-success,.kg-artifact>.error{margin:12px 18px 0;border-left:3px solid #d59b20;padding:9px 11px;background:#fff8df;color:#704b00;font-size:12px;line-height:1.55}.kg-review-note{border-left-color:#4b6fb9;background:#eef4ff;color:#284b84}.kg-review-note.is-danger{border-left-color:#c84a40;background:#fff0ef;color:#8f2d26}.kg-success{border-left-color:#2b8a57;background:#eaf8ef;color:#176b3a}.kg-review-actions,.kg-editor,.kg-observation-form,.kg-handoff-form,.kg-observation-history{margin-top:14px;border-top:1px solid #dfe5ec;padding:14px 18px 16px;background:#f8fafc}.kg-review-actions label{display:grid;gap:6px;margin-bottom:10px;color:#344054;font-size:12px;font-weight:650}.kg-danger{border-color:#e5aaa5!important;color:#a9342a!important}.kg-check{display:flex!important;min-height:40px;grid-auto-flow:column;grid-template-columns:18px minmax(0,1fr);align-items:center}.kg-check input{width:16px;min-height:16px;margin:0}.kg-observation-history{margin-right:-18px;margin-left:-18px}.kg-observation-rows{display:grid}.kg-observation-rows>div{display:grid;grid-template-columns:90px minmax(0,1fr) 120px;gap:12px;align-items:start;padding:8px 0;border-top:1px solid #e3e8ef;color:#344054;font-size:12px}.kg-observation-rows span{overflow-wrap:anywhere}.kg-observation-rows time{color:#667085;text-align:right}.kg-empty{border:1px dashed #b9c4d0;padding:32px 16px;color:#667085;text-align:center;font-size:13px}@media(max-width:760px){.kg-guidance-page{padding-right:12px;padding-left:12px}.kg-guidance-band{margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px}.kg-governance-band{display:grid;margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px}.kg-withdrawal,.kg-withdrawal-status{width:100%;max-width:none}.kg-withdrawal-controls,.kg-form,.kg-plan-grid,.kg-detail-columns,.kg-trace{grid-template-columns:minmax(0,1fr)}.kg-form label.is-wide,.kg-segment-field.is-wide,.kg-form-actions,.kg-plan-grid>div.is-wide{grid-column:auto}.kg-detail-columns section,.kg-trace section,.kg-detail-columns section+section,.kg-trace section+section{padding:13px 0;border-right:0;border-bottom:1px solid #e8edf2}.kg-detail-columns section:last-child,.kg-trace section:last-child{border-bottom:0}.kg-artifact>header,.kg-plan,.kg-review-actions,.kg-editor,.kg-observation-form,.kg-handoff-form{padding-right:14px;padding-left:14px}.kg-observation-history{margin-right:-14px;margin-left:-14px}.kg-list-toolbar{justify-content:stretch}.kg-list-toolbar .kg-segmented{width:100%;grid-auto-columns:minmax(0,1fr)}.kg-observation-rows>div{grid-template-columns:82px minmax(0,1fr)}.kg-observation-rows time{grid-column:2;text-align:left}}:root{font-family:Segoe UI,Microsoft YaHei,system-ui,sans-serif;--accent: #3056d3;--bg: #f5f6f8;--card: #ffffff;--text: #1f2329;--text-light: #6b7280;--border: #e5e7eb;--danger: #dc2626}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}h1{font-size:22px;margin:0}h2{font-size:18px}h3{font-size:15px}a{color:var(--accent);text-decoration:none}.portal-layout{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:#1b2230;color:#cbd5e1;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar-brand{padding:20px 18px;font-weight:700;color:#fff;font-size:15px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.sidebar-nav{flex:1;padding:12px 10px;overflow-y:auto}.nav-item{display:block;padding:10px 12px;border-radius:8px;color:#cbd5e1;margin-bottom:2px}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:var(--accent);color:#fff}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;background:none;border:none;cursor:pointer;padding:10px 12px;border-radius:8px;color:#cbd5e1;font-size:14px;font-weight:600;text-align:left;margin-bottom:2px}.nav-group-toggle:hover{background:#ffffff0f;color:#fff}.nav-caret{font-size:11px;color:#94a3b8}.nav-item.nav-sub-item{padding-left:26px;font-size:13.5px}.sidebar-footer{padding:14px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-user-name{color:#fff;font-weight:600}.sidebar-user-role{font-size:12px;color:#94a3b8;margin:2px 0 4px}.sidebar-invite{font-size:12px;color:#fbbf24;margin-bottom:8px}.portal-main{flex:1;padding:24px 28px;min-width:0}@media(max-width:720px){.portal-layout{flex-direction:column}.sidebar{width:100%;height:auto;max-height:none;position:static}.sidebar-brand{padding:12px 14px}.sidebar-nav{flex:none;display:flex;gap:4px;padding:8px 10px;overflow-x:auto;overflow-y:hidden}.sidebar-nav .nav-group{display:flex;flex:none;align-items:center}.sidebar-nav .nav-group-label{display:none!important}.sidebar-nav .nav-item,.sidebar-nav .nav-item.nav-sub-item{flex:none;margin:0 2px 0 0;padding:8px 10px;white-space:nowrap}.sidebar-nav .nav-group-toggle{flex:none;width:auto;margin:0;white-space:nowrap}.sidebar-footer{display:flex;align-items:center;gap:12px;padding:8px 12px}.sidebar-user{flex:1;min-width:0}.sidebar-user-role,.sidebar-invite{display:none}.sidebar-footer .btn{width:auto}.portal-main{width:100%;padding:14px 12px}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;gap:12px;flex-wrap:wrap}.page-subtitle{color:var(--text-light);margin:6px 0 0}.page-actions{display:flex;gap:8px}.page-loading{padding:60px;text-align:center;color:var(--text-light)}.btn{padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer;font-size:14px;color:var(--text)}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{color:#fff;opacity:.92}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:var(--danger)}.btn-ghost{background:transparent;border-color:#fff3;color:#cbd5e1;width:100%}.btn-ghost:hover{border-color:#fff;color:#fff}.btn-block{width:100%}.btn-sm{padding:4px 10px;font-size:13px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.card h2,.card h3{margin-top:0}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:18px}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:18px;display:block;color:var(--text)}.stat-card:hover{border-color:var(--accent)}.stat-value{font-size:28px;font-weight:700;color:var(--accent)}.stat-label{color:var(--text-light);margin-top:4px}.stat-hint{font-size:12px;color:var(--text-light);margin-top:6px}.data-table-toolbar{display:flex;gap:10px;margin-bottom:12px;align-items:center;flex-wrap:wrap}.toolbar-spacer{flex:1}.search-box{display:flex;gap:6px}.search-box input{width:220px}.table-wrap{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--border)}th{background:#fafbfc;color:var(--text-light);font-weight:600;font-size:13px;white-space:nowrap}tbody tr:last-child td{border-bottom:none}.row-clickable{cursor:pointer}.row-clickable:hover{background:#f8faff}.table-empty{text-align:center;color:var(--text-light);padding:36px!important}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;color:var(--text-light)}.seg{display:inline-flex;gap:6px}.seg-btn{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:7px 16px;cursor:pointer;font-size:14px;color:var(--text)}.seg-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:5px 12px;cursor:pointer;font-size:13px;color:var(--text);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.chip-count{font-size:12px;opacity:.7}.cases-table-wrap{max-height:calc(100vh - 270px);overflow-y:auto}.cases-table thead th{position:sticky;top:0;z-index:1}.cases-table td.col-action,.cases-table th.col-action{text-align:right;white-space:nowrap;width:1%}.cases-table .col-next{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.cases-table .col-next,.cases-table .col-owner{display:none}}.stage-stepper{display:flex;align-items:flex-start;padding:14px 10px 8px;background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;overflow-x:auto}.stage-stepper a.stage-node{transition:background .12s}.stage-stepper a.stage-node:hover{background:#f1f5ff}.ados2-shell{display:flex;flex-direction:column;height:calc(100vh - 48px);border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--card)}.ados2-shell-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.ados2-shell-spacer{flex:1}.ados2-immersive{flex:1;min-height:0}.ados2-immersive .ados2-embed-frame{height:100%;border:none;border-radius:0;min-height:0}.ados2-immersive .ados2-embed-frame #studentBar{display:none!important}.ados2-immersive{overflow:hidden}.ados2-immersive .ados2-embed-frame{zoom:1.1;height:100%;overflow-y:auto}.ados2-immersive .ados2-embed-frame .ados2-cabin-root{height:auto!important;min-height:100%;overflow:visible!important}.ados2-immersive .ados2-embed-frame .main-area,.ados2-immersive .ados2-embed-frame .right-panel{overflow:visible!important}.ados2-immersive .ados2-embed-frame .left-panel{position:sticky;top:0;align-self:flex-start;height:calc((100vh - 92px) / 1.1)!important}.anchor-flash{border-radius:12px;animation:anchorFlash 1.8s ease-out}@keyframes anchorFlash{0%{box-shadow:0 0 0 4px #2563eb}55%{box-shadow:0 0 0 4px #2563eb59}to{box-shadow:0 0 #2563eb00}}.cases-page,.cases-page .seg-btn{font-size:15px}.cases-page .chip{font-size:14px}.cases-page .chip-count{font-size:13px}.cases-page .badge{font-size:13px;padding:3px 10px}.cases-page .btn-sm{font-size:14px;padding:6px 13px}.cases-page table th{font-size:14px}.cases-page table td{font-size:15px}.cases-page .text-light{font-size:14px}.cases-page .btn,.cases-page .seg-btn,.cases-page .chip{transition:transform .1s ease,box-shadow .16s ease,filter .16s ease,border-color .16s ease}.cases-page .btn:hover,.cases-page .seg-btn:hover,.cases-page .chip:hover{transform:translateY(-1px);box-shadow:0 3px 9px #0000001f}.cases-page .btn:active,.cases-page .seg-btn:active,.cases-page .chip:active{transform:translateY(0) scale(.95);box-shadow:0 1px 3px #0000001f}.cases-page .seg-btn:hover,.cases-page .chip:hover{border-color:var(--accent)}.cases-page .btn-primary{box-shadow:0 2px 6px #0e9f6e47}.cases-page .btn-primary:hover{filter:brightness(1.06);box-shadow:0 5px 14px #0e9f6e6b}.cases-page .btn-primary:active{transform:translateY(0) scale(.95);box-shadow:0 1px 4px #0e9f6e4d}@media(prefers-reduced-motion:reduce){.cases-page .btn,.cases-page .seg-btn,.cases-page .chip{transition:none}.cases-page .btn:hover,.cases-page .seg-btn:hover,.cases-page .chip:hover,.cases-page .btn:active,.cases-page .seg-btn:active,.cases-page .chip:active{transform:none}}input,select,textarea{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:var(--text);max-width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}.schema-form{max-width:480px}.form-field{margin-bottom:14px;display:flex;flex-direction:column;gap:6px}.form-field>label{font-weight:600;font-size:13px}.required-mark{color:var(--danger);margin-left:2px}.field-help{font-size:12px;color:var(--text-light)}.field-error{font-size:12px;color:var(--danger)}.form-actions{display:flex;gap:10px;margin-top:18px;align-items:center}.option-group{display:flex;gap:14px;flex-wrap:wrap}.option-item{display:flex;align-items:center;gap:5px;cursor:pointer}.rating-group{display:flex;align-items:center;gap:4px}.rating-star{background:none;border:none;font-size:22px;color:#d1d5db;cursor:pointer;padding:0 2px}.rating-star.active{color:#f59e0b}.rating-value{margin-left:8px;color:var(--text-light)}.alert{padding:10px 14px;border-radius:8px;margin:10px 0;font-size:13px}.alert-error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.alert-success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.alert-info{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;white-space:nowrap}.badge-green{background:#ecfdf5;color:#047857}.badge-blue{background:#eff6ff;color:#1d4ed8}.badge-gray{background:#f3f4f6;color:#4b5563}.badge-red{background:#fef2f2;color:#b91c1c}.badge-purple{background:#f5f3ff;color:#6d28d9}.badge-orange{background:#fff7ed;color:#c2410c}.badge-pink{background:#fdf2f8;color:#be185d}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--accent) 0%,#1b2230 100%);padding:20px}.login-card{background:#fff;border-radius:16px;padding:36px;width:380px;box-shadow:0 18px 50px #00000040}.login-brand{color:var(--accent);font-weight:700;letter-spacing:1px;margin-bottom:6px}.login-card h1{margin-bottom:4px}.login-subtitle{color:var(--text-light);margin:0 0 20px}.login-card input{width:100%}.login-links{margin-top:18px;font-size:13px;color:var(--text-light);display:flex;gap:10px;flex-wrap:wrap}.forbidden-page{max-width:480px;margin:80px auto;text-align:center;background:#fff;border:1px solid var(--border);border-radius:16px;padding:48px 32px}.forbidden-page p{color:var(--text-light);margin:14px 0 24px}.landing-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,#1b2230,#2d3a55);color:#fff;padding:24px}.landing-page h1{font-size:34px;margin-bottom:8px}.landing-page>p{color:#94a3b8;margin-bottom:36px}.portal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;width:min(900px,100%)}.portal-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:28px 22px;color:#fff;transition:transform .15s}.portal-card:hover{transform:translateY(-4px);border-color:#fff6}.portal-card h2{margin:0 0 8px}.portal-card p{color:#94a3b8;margin:0;font-size:13px}.report-content{display:flex;flex-direction:column;gap:14px}.report-section{background:#fafbfc;border:1px solid var(--border);border-radius:10px;padding:14px 18px}.report-section h3{margin:0 0 10px;color:var(--accent)}.report-items{margin:0}.report-item{display:flex;gap:12px;padding:5px 0}.report-item dt{width:110px;flex-shrink:0;color:var(--text-light)}.report-item dd{margin:0;white-space:pre-wrap}.report-raw{background:#f8f9fa;padding:14px;border-radius:8px;overflow-x:auto;font-size:12px}.ai-result{white-space:pre-wrap;line-height:1.8;background:#fafbfc;border:1px solid var(--border);border-radius:10px;padding:18px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.modal{background:#fff;border-radius:14px;width:min(640px,100%);max-height:86vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--border)}.modal-header h3{margin:0}.modal-close{background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-light);line-height:1}.modal-body{padding:20px 22px;overflow-y:auto}.desc-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 24px;margin:0}.desc-item dt{color:var(--text-light);font-size:12px;margin-bottom:3px}.desc-item dd{margin:0}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.game-card{background:var(--card);border:2px solid var(--border);border-radius:16px;padding:24px;text-align:center;color:var(--text);transition:transform .15s}.game-card:hover{transform:translateY(-4px);border-color:var(--accent)}.game-emoji{font-size:44px;margin-bottom:10px}.game-card h3{margin:0 0 6px;font-size:17px}.game-card p{color:var(--text-light);font-size:13px;margin:0}.game-stage{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:32px 36px;max-width:920px;min-height:68vh;margin:0 auto;text-align:center;display:flex;flex-direction:column;justify-content:center}.game-hud{display:flex;justify-content:space-between;margin-bottom:24px;font-weight:600;font-size:17px;color:var(--text-light)}.game-hud strong{color:var(--accent);font-size:22px}.game-question{font-size:60px;font-weight:700;margin:32px 0}.game-answers{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;width:100%;max-width:560px;margin:0 auto}.game-answer{font-size:28px;padding:22px;border-radius:12px;border:2px solid var(--border);background:#fff;cursor:pointer}.game-answer:hover{border-color:var(--accent)}.memory-grid{display:grid;gap:14px;justify-content:center;margin-top:10px}.memory-card{width:84px;height:84px;border-radius:14px;border:2px solid var(--border);font-size:40px;cursor:pointer;background:var(--accent);color:transparent;transition:background .2s}.memory-card.revealed{background:#fff;color:inherit}.memory-card.matched{background:#ecfdf5;border-color:#34d399;color:inherit;cursor:default}.color-word{font-size:84px;font-weight:800;margin:30px 0}.game-over{padding:20px 0}.game-over .final-score{font-size:64px;font-weight:800;color:var(--accent);margin:12px 0}.game-start-tip{color:var(--text-light);font-size:16px;margin:14px 0 22px;line-height:1.7}.whack-stage{position:relative;max-width:920px;margin:0 auto;padding:24px;border-radius:20px;background:linear-gradient(#bdeafc,#bdeafc 16%,#8fd66b 16%,#6cc24a);box-shadow:0 8px 28px #286e282e;user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;overflow:hidden}.whack-topbar{height:12px;border-radius:999px;background:#ffffff8c;overflow:hidden}.whack-time-fill{height:100%;background:linear-gradient(90deg,#ffd24a,#ff9f1c);border-radius:999px;transition:width .1s linear}.whack-hud{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:12px 2px 8px;font-weight:700;color:#2f5d1f;text-shadow:0 1px 0 rgba(255,255,255,.6);font-size:16px}.whack-hud strong{color:#1f7a1f;font-size:21px}.whack-combo{transition:transform .15s}.whack-combo.hot{color:#fff;background:#d9480f;padding:2px 9px;border-radius:999px;transform:scale(1.08)}.whack-target{display:flex;align-items:center;gap:10px;margin:0 2px 14px}.whack-target-bar{flex:1;height:14px;border-radius:999px;background:#ffffff8c;overflow:hidden}.whack-target-fill{height:100%;background:linear-gradient(90deg,#ff7eb3,#ff4d6d);border-radius:999px;transition:width .2s ease}.whack-target-label{font-size:13px;font-weight:700;color:#fff;background:#0000002e;padding:3px 10px;border-radius:999px;white-space:nowrap}.whack-board{display:grid;gap:14px}.whack-hole{position:relative;aspect-ratio:1 / 1;min-height:110px;border:none;border-radius:18px;background:radial-gradient(ellipse at 50% 120%,#4ea32f,#5fb83a 55%,#74c84e);box-shadow:inset 0 -6px 10px #1e5a1440,0 3px #1e5a1440;cursor:pointer;overflow:visible;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.whack-hole:active{transform:translateY(2px)}.whack-bush{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:56px;opacity:.85;filter:saturate(1.2)}.whack-hole.has-sheep .whack-bush{opacity:.35}.whack-sheep{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:72px;z-index:2;animation:whack-pop .16s ease-out}.whack-float{position:absolute;left:50%;top:38%;transform:translate(-50%);font-weight:800;font-size:22px;z-index:3;pointer-events:none;animation:whack-rise .65s ease-out forwards}.whack-float.hit{color:#fff;-webkit-text-stroke:1px rgba(0,0,0,.55);text-shadow:0 2px 3px rgba(0,0,0,.5)}.whack-float.miss{color:#c92a2a;font-size:26px}.whack-ready{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#14320f73;color:#fff;z-index:10;text-align:center}.whack-ready-num{font-size:80px;font-weight:900;text-shadow:0 4px 12px rgba(0,0,0,.35);animation:whack-pop .4s ease-out}.whack-ready p{margin:0;font-size:16px;font-weight:600}@keyframes whack-pop{0%{transform:scale(.2);opacity:0}70%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}@keyframes whack-rise{0%{transform:translate(-50%);opacity:1}to{transform:translate(-50%,-42px);opacity:0}}@media(max-width:640px){.whack-board{grid-template-columns:repeat(2,1fr)!important}}.game-report-card{display:flex;flex-direction:column;gap:12px}.game-report-head{display:flex;align-items:center;gap:12px}.game-report-emoji{font-size:34px;line-height:1}.game-report-head h3{margin:0}.game-report-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;background:var(--bg);border-radius:10px;padding:12px 6px}.game-report-metrics .m-value{display:block;font-size:20px;font-weight:700;color:var(--accent)}.game-report-metrics .m-label{display:block;font-size:12px;color:var(--text-light);margin-top:2px}.game-report-latest{font-size:13px;line-height:1.6;color:var(--text)}.game-report-log-wrap{overflow-x:auto}.game-report-log{list-style:none;margin:0;padding:0;min-width:520px}.game-report-log li{display:grid;grid-template-columns:92px 1.4fr 2fr 84px 64px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--border);font-size:13px}.game-report-log li:last-child{border-bottom:none}.game-report-log-head{font-weight:700;color:var(--text-light)}.game-report-foot{margin-top:14px;font-size:12px;line-height:1.7}.daily-gen-row{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.daily-gen-row .form-field{margin-bottom:0}.daily-redline{font-size:12px;margin:12px 0 0;line-height:1.6}.daily-lesson-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.daily-lesson-head h3{margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.daily-status{font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;color:#fff;background:#6b7280}.daily-status-AI_DRAFT{background:#8a6d3b}.daily-status-TEACHER_MODIFIED{background:#3b6cf0}.daily-status-CONFIRMED{background:#2f9e6b}.daily-status-IN_CLASS{background:#d9480f}.daily-status-FINISHED{background:#6b7280}.daily-goal-row{display:flex;gap:16px;flex-wrap:wrap;margin:14px 0}.daily-goal-row .form-field:first-child{flex:1;min-width:280px;margin-bottom:0}.daily-task{border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-top:14px;background:var(--bg)}.daily-task-title{font-weight:700;margin-bottom:10px;color:var(--text)}.daily-task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 16px}.daily-task-grid .form-field{margin-bottom:0}.daily-task-grid .daily-field-wide{grid-column:1 / -1}.daily-task-grid textarea{width:100%;resize:vertical}@media(max-width:720px){.daily-task-grid{grid-template-columns:1fr}}.lesson-blueprint{margin:14px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:14px 0}.lesson-blueprint-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.lesson-blueprint-head h4{margin:0 0 4px;font-size:16px}.lesson-blueprint-head p{margin:0;color:var(--muted);font-size:12px}.lesson-blueprint-result{border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:12px;font-weight:700}.lesson-blueprint-result.is-pass{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.lesson-blueprint-result.is-fail{color:#991b1b;background:#fef2f2;border-color:#fecaca}.lesson-blueprint-tabs{display:flex;overflow-x:auto;margin-top:12px;border-bottom:1px solid var(--border)}.lesson-blueprint-tabs button{flex:0 0 auto;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:9px 12px;cursor:pointer;font:inherit;font-size:13px}.lesson-blueprint-tabs button.is-active{color:var(--text);border-bottom-color:var(--primary);font-weight:700}.lesson-blueprint-panel{min-height:180px;padding-top:12px}.lesson-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}.lesson-summary-term{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.6}.lesson-summary-term strong,.lesson-summary-wide strong{color:var(--muted)}.lesson-summary-wide{grid-column:1 / -1;padding-top:8px;border-top:1px solid var(--border);font-size:13px}.lesson-summary-wide ul{margin:6px 0 0;padding-left:20px}.lesson-summary-wide p{margin:6px 0 0}.lesson-table-wrap{overflow-x:auto}.lesson-blueprint-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12.5px}.lesson-blueprint-table th,.lesson-blueprint-table td{border-bottom:1px solid var(--border);padding:9px 10px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.lesson-blueprint-table th{color:var(--muted);font-size:12px}.lesson-blueprint-table p{margin:4px 0 0;line-height:1.5;color:var(--muted)}.lesson-extension-list{display:grid;gap:10px}.lesson-extension-list article{border-bottom:1px solid var(--border);padding:0 0 10px}.lesson-extension-list article>div{display:flex;justify-content:space-between;gap:12px}.lesson-extension-list article span{color:#7c2d12;font-size:12px}.lesson-extension-list article p{margin:5px 0 0;line-height:1.65;font-size:13px}.lesson-check-list{display:grid;gap:8px}.lesson-check{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid var(--border)}.lesson-check>span{border-radius:5px;padding:2px 5px;text-align:center;font-size:11px;font-weight:700}.lesson-check strong{font-size:13px}.lesson-check p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.lesson-check-pass>span{color:#166534;background:#dcfce7}.lesson-check-warn>span{color:#854d0e;background:#fef9c3}.lesson-check-fail>span{color:#991b1b;background:#fee2e2}@media(max-width:720px){.lesson-summary-grid{grid-template-columns:1fr}.lesson-summary-wide{grid-column:auto}.lesson-blueprint-table{min-width:760px}}.vbmapp-toolbar{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-end}.vbmapp-toolbar .form-field{margin-bottom:0;min-width:180px}.vbmapp-progress{font-size:20px;color:var(--accent)}.vbmapp-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px 24px}.vbmapp-group-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 0;border-bottom:1px dashed var(--border)}.vbmapp-group-row label{flex:1;cursor:pointer}.vbmapp-group-row select{width:84px}.vbmapp-result-group{padding:12px 0;border-bottom:1px dashed var(--border)}.vbmapp-result-group:last-child{border-bottom:none}.vbmapp-result-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.vbmapp-interpretation{margin:8px 0;line-height:1.7}.vbmapp-result-group details summary{cursor:pointer;font-size:13px}.vbmapp-result-group .report-raw{white-space:pre-wrap;margin-top:8px}.vbmapp-summary-table{margin-bottom:0}.vbmapp-direction-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px}.vbmapp-legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-light)}.vbmapp-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.vbmapp-group-row{flex-wrap:wrap}.vbmapp-group-main{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%}.vbmapp-group-def{width:100%;margin:4px 0 2px}.vbmapp-group-def summary{cursor:pointer;font-size:12px;color:var(--text-light)}.vbmapp-group-def p{margin:6px 0 0;font-size:13px;color:var(--text-light);line-height:1.6}.vbmapp-score-hint{width:100%;font-size:13px;line-height:1.6;padding:6px 10px;border-radius:8px;margin:4px 0 2px;animation:hintIn .25s ease}.vbmapp-score-hint.tone-good{background:#ecfdf5;color:#047857}.vbmapp-score-hint.tone-mid{background:#fffbeb;color:#b45309}.vbmapp-score-hint.tone-low{background:#fef2f2;color:#b91c1c}.vbmapp-score-hint .hint-tag{font-weight:700;margin-right:6px}@keyframes hintIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.ai-thinking{display:flex;gap:16px;align-items:flex-start;padding:18px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(120deg,#f5f3ff,#eff6ff)}.ai-thinking-orb{position:relative;width:40px;height:40px;flex-shrink:0}.ai-thinking-orb span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 30% 30%,#a78bfa,#6d28d9);opacity:.7;animation:orbPulse 1.6s ease-in-out infinite}.ai-thinking-orb span:nth-child(2){animation-delay:.5s}.ai-thinking-orb span:nth-child(3){animation-delay:1s}@keyframes orbPulse{0%,to{transform:scale(.6);opacity:.25}50%{transform:scale(1);opacity:.8}}.ai-thinking-body{flex:1;min-width:0}.ai-thinking-title{font-weight:700;color:#6d28d9;display:flex;align-items:center;gap:6px}.ai-thinking-msg{color:var(--text-light);margin-top:4px;animation:hintIn .4s ease}.ai-thinking-reasoning{margin-top:10px;font-size:12px;color:#94a3b8;line-height:1.6;max-height:64px;overflow:hidden;border-left:2px solid #ddd6fe;padding-left:10px;white-space:pre-wrap}.ai-dots{display:inline-flex;gap:3px}.ai-dots i{width:5px;height:5px;border-radius:50%;background:#8b5cf6;animation:dotBlink 1.2s infinite}.ai-dots i:nth-child(2){animation-delay:.2s}.ai-dots i:nth-child(3){animation-delay:.4s}@keyframes dotBlink{0%,60%,to{opacity:.25}30%{opacity:1}}.ai-stream{white-space:pre-wrap;line-height:1.85;background:#fafbfc;border:1px solid var(--border);border-radius:10px;padding:18px;animation:fadeInUp .3s ease}.ai-stream.streaming:after{content:"▋";color:var(--accent);animation:caretBlink 1s step-end infinite;margin-left:1px}@keyframes caretBlink{50%{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ai-card-enter{animation:fadeInUp .35s ease}.mt-12{margin-top:12px}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.text-light{color:var(--text-light)}.mt-0{margin-top:0}.section-title{margin:22px 0 12px}.registry-mono{font-family:Consolas,monospace;font-size:12px}.progress-timeline{list-style:none;margin:0;padding:0}.progress-timeline li{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed var(--border)}.progress-timeline li:last-child{border-bottom:none}.progress-date{width:96px;flex-shrink:0;color:var(--text-light);font-size:13px}.progress-note{flex:1}.progress-percent{color:var(--accent);font-weight:700}.vbq-preview{position:sticky;top:8px;z-index:5}.vbq-fam-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0}.vbq-fam-stat{border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.vbq-fam-stat strong{font-size:20px;color:var(--accent)}.vbq-fam-name{font-size:13px}.vbq-group-detail summary{cursor:pointer;font-size:13px;color:var(--text-light)}.vbq-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 10px}.vbq-tab{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:7px 16px;cursor:pointer;font-size:14px;color:var(--text)}.vbq-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.vbq-tab.active .text-light{color:#dbe4ff}.vbq-level{margin-bottom:18px}.vbq-dim{border:1px solid var(--border);border-radius:10px;padding:8px 12px;margin:10px 0}.vbq-dim-head{display:flex;align-items:center;gap:10px;padding-bottom:6px;border-bottom:1px dashed var(--border);margin-bottom:6px}.vbq-group-chip{font-size:12px;color:var(--text-light);background:#f1f5ff;border-radius:6px;padding:2px 8px}.vbq-item{padding:8px 0;border-bottom:1px dashed var(--border)}.vbq-item:last-child{border-bottom:none}.vbq-item-main{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.vbq-item-stem{flex:1;min-width:220px;line-height:1.6}.vbq-item-detail{width:100%;margin-top:6px}.vbq-item-detail summary{cursor:pointer;font-size:12px;color:var(--text-light)}.vbq-item-detail p,.vbq-item-detail li{font-size:13px;line-height:1.6;color:var(--text-light);margin:4px 0}.vbq-item-detail b{color:var(--text)}.vbq-item-detail ol,.vbq-item-detail ul{margin:4px 0;padding-left:20px}.vbq-seg{display:inline-flex;flex-wrap:wrap;gap:4px;flex-shrink:0}.vbq-seg-btn{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:5px 12px;cursor:pointer;font-size:13px;color:var(--text);white-space:nowrap}.vbq-seg-btn:hover{border-color:var(--accent)}.vbq-seg-btn.active.tone-good{background:#ecfdf5;border-color:#047857;color:#047857;font-weight:700}.vbq-seg-btn.active.tone-mid{background:#fffbeb;border-color:#b45309;color:#b45309;font-weight:700}.vbq-seg-btn.active.tone-low{background:#fef2f2;border-color:#b91c1c;color:#b91c1c;font-weight:700}.vbq-seg-btn.active.tone-na{background:#f3f4f6;border-color:var(--text-light);color:var(--text-light);font-weight:700}.vbq-tag{font-weight:700;border-radius:6px;padding:0 6px;margin-right:4px}.vbq-tag.tone-good{background:#ecfdf5;color:#047857}.vbq-tag.tone-mid{background:#fffbeb;color:#b45309}.vbq-tag.tone-low{background:#fef2f2;color:#b91c1c}.vbq-tag.tone-na{background:#f3f4f6;color:var(--text-light)}.vbq-pane{display:flex;gap:14px;align-items:flex-start}.vbq-fold-mini{display:flex;flex-wrap:wrap;gap:10px;font-size:13px}.vbq-fold-mini-item{color:var(--text-light);white-space:nowrap}.vbq-fold-mini-item strong{color:var(--accent);font-size:15px}.vbq-nav{width:320px;flex-shrink:0;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:10px;position:sticky;top:8px;max-height:calc(100vh - 24px);display:flex;flex-direction:column}.vbq-nav-search{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;margin-bottom:8px}.vbq-nav-scroll{overflow-y:auto;flex:1}.vbq-nav-group{margin-bottom:6px}.vbq-nav-head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:6px;font-size:13px;color:var(--text);text-align:left}.vbq-nav-head.lv{font-weight:700}.vbq-nav-head.dim{font-weight:600;color:var(--text-light);cursor:default;padding-top:8px}.vbq-nav-count{font-size:12px;color:var(--text-light);white-space:nowrap}.vbq-nav-dim{margin-left:2px}.vbq-nav-item{width:100%;display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:5px 8px 5px 16px;font-size:13px;color:var(--text);text-align:left;border-radius:8px}.vbq-nav-item:hover{background:var(--bg)}.vbq-nav-item.active{background:#eef4ff;color:var(--accent);font-weight:600}.vbq-nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vbq-nav-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.vbq-nav-dot.on{background:#16a34a}.vbq-nav-dot.na{background:#cbd5e1}.vbq-nav-dot.off{background:transparent;border:1px solid #cbd5e1}.vbq-card-wrap{flex:1;min-width:0}.vbq-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px 22px}.vbq-card-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.vbq-card-badge{flex-shrink:0;background:#1a4b7c;color:#fff;font-weight:700;font-size:14px;border-radius:8px;padding:6px 12px;white-space:nowrap}.vbq-card-titlewrap h3{margin:0 0 4px;font-size:18px;line-height:1.4}.vbq-card-sub{font-size:13px;color:var(--text-light)}.vbq-card-score{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin-bottom:16px}.vbq-card-score-label{font-weight:600;font-size:13px}.vbq-card-section{margin:14px 0}.vbq-card-section h4{margin:0 0 8px;font-size:14px;color:var(--text)}.vbq-card-section p{margin:4px 0;line-height:1.7;font-size:14px}.vbq-card-prewrap{white-space:pre-wrap}.vbq-card-scene{background:#eef4ff;border-left:3px solid #3b6fb0;border-radius:8px;padding:10px 14px;font-size:14px;line-height:1.7;color:#2d3748}.vbq-card-steps{counter-reset:vbqstep;list-style:none;padding-left:0;margin:8px 0 0}.vbq-card-steps li{counter-increment:vbqstep;position:relative;padding:6px 0 6px 34px;line-height:1.7;font-size:14px;border-bottom:1px dashed var(--border)}.vbq-card-steps li:last-child{border-bottom:none}.vbq-card-steps li:before{content:counter(vbqstep);position:absolute;left:0;top:6px;width:22px;height:22px;border-radius:50%;background:#3b6fb0;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center}.vbq-card-scorestd{list-style:none;padding-left:0;margin:4px 0}.vbq-card-scorestd li{padding:5px 0;line-height:1.6;font-size:13px}.vbq-card-tips{margin:4px 0;padding-left:20px}.vbq-card-tips li{padding:4px 0;line-height:1.7;font-size:13px;color:var(--text-light)}.vbq-esei-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.vbq-esei-cell{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 10px;font-size:13px;cursor:pointer;text-align:left;color:var(--text)}.vbq-esei-cell:hover{border-color:var(--accent)}.vbq-esei-cell.active{border-color:var(--accent);background:#eef4ff;color:var(--accent);font-weight:600}.vbq-esei-cell.done{border-left:3px solid #16a34a}@media(max-width:860px){.vbq-pane{flex-direction:column}.vbq-nav{width:100%;position:static;max-height:320px}}.pro-doc{background:#fff;border:1px solid #e6eef6;border-radius:14px;max-width:1123px;margin:0 auto;overflow:hidden;font-size:13px;color:#1f2d3d;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif;box-shadow:0 8px 30px #1a4b7c17}.pro-cover{padding:64px;background:linear-gradient(135deg,#eef6ff,#fff 70%);border-bottom:6px solid #1a4b7c}.pro-brand{color:#2f80c8;font-size:18px;font-weight:800;letter-spacing:2px;margin-bottom:18px}.pro-kicker{display:inline-block;color:#1a4b7c;border:1px solid #1a4b7c;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:800;margin-bottom:18px}.pro-cover h1{font-size:42px;color:#1a4b7c;margin:0 0 12px;line-height:1.15}.pro-cover-sub{font-size:18px;color:#5a8eb8;margin:0 0 30px}.pro-cover-info{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pro-cover-info>div{background:#fff;border:1px solid #dce8f4;border-radius:12px;padding:14px;min-height:72px}.pro-cover-info b{display:block;color:#6b7d93;font-size:12px;margin-bottom:6px;font-weight:600}.pro-cover-info span{display:block;color:#1a4b7c;font-size:16px;font-weight:700;line-height:1.5;word-break:break-all}.pro-boundary{display:block;margin-top:24px;color:#5f6f81;font-size:13px;line-height:1.8;font-style:normal}.pro-section{padding:28px 36px;border-bottom:1px solid #e6eef6}.pro-section:last-child{border-bottom:none}.pro-section h2{color:#1a4b7c;font-size:20px;margin:0 0 14px}.pro-section h3{color:#1a4b7c;font-size:15px;margin:14px 0 8px}.pro-note{font-size:12px;color:#6b7d93;margin-top:10px;line-height:1.7}.pro-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pro-grid2>div{border:1px solid #dce8f4;border-radius:10px;background:#f8fbff;padding:12px}.pro-grid2 b{display:block;color:#1a4b7c;font-size:13px;margin-bottom:6px}.pro-grid2 span{display:block;color:#40566b;font-size:12px;line-height:1.8}.pro-table{width:100%;border-collapse:collapse;font-size:12px;color:#40566b}.pro-table th{background:#eef7ff;color:#1a4b7c;text-align:left;font-weight:700}.pro-table th,.pro-table td{border:1px solid #dce8f4;padding:8px;vertical-align:top;line-height:1.6}.pro-profile-row{display:flex;align-items:center;gap:10px;padding:5px 0}.pro-profile-name{width:110px;font-size:12.5px;color:#1a4b7c;font-weight:600;flex:none}.pro-profile-track{flex:1;height:14px;background:#eef2f7;border-radius:999px;overflow:hidden}.pro-profile-fill{height:100%;border-radius:999px}.pro-cell{text-align:center}.pro-cell b{display:block;font-size:14px}.pro-cell span{display:block;font-size:10px;opacity:.75}.pro-plan{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pro-plan>div{border:1px solid #dce8f4;border-radius:10px;background:#f8fbff;padding:12px}.pro-plan b{display:block;color:#1a4b7c;margin-bottom:6px;font-size:13px}.pro-plan span{color:#40566b;font-size:12px;line-height:1.8;display:block}.pro-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.pro-summary-grid>div{border:1px solid #dce8f4;border-radius:8px;padding:12px;background:#f8fbff}.pro-summary-grid b,.pro-summary-grid strong,.pro-summary-grid span{display:block}.pro-summary-grid b{color:#6b7d93;font-size:12px}.pro-summary-grid strong{color:#1a4b7c;font-size:22px;margin:5px 0}.pro-summary-grid span{color:#6b7d93;font-size:11px;line-height:1.5}.pro-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media(max-width:720px){.pro-summary-grid,.pro-two-col{grid-template-columns:1fr}.pro-cover{padding:34px 20px}.pro-cover h1{font-size:28px}.pro-cover-sub{font-size:15px}.pro-cover-info{grid-template-columns:1fr}.pro-section{padding:22px 18px;overflow-x:auto}}.pro-ats-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#40566b;margin-bottom:10px}.pro-ats-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-1px}.pro-ats-wrap{display:flex;gap:4px;overflow-x:auto;align-items:flex-start}.pro-ats-col{min-width:54px;flex:1}.pro-ats-colhdr{font-size:10px;color:#1a4b7c;font-weight:700;text-align:center;padding:4px 2px;line-height:1.3;min-height:42px;display:flex;align-items:center;justify-content:center}.pro-ats-item{display:flex;align-items:center;justify-content:space-between;font-size:9.5px;padding:2px 4px;border-radius:3px;margin-bottom:2px;color:#2d3748}.pro-vb-grid td,.pro-vb-grid th{text-align:center;padding:5px 3px;font-size:11px;border:1px solid #dce8f4}.pro-vb-grid thead th{background:#eef7ff;color:#1a4b7c;font-weight:700;vertical-align:middle}.pro-vb-grid th.rowhead,.pro-vb-grid td.rowhead{text-align:left;white-space:nowrap;font-weight:600;color:#1a4b7c;background:#f7fbff}.pro-vb-grid td.f1{background:#c6f6d5;font-weight:700}.pro-vb-grid td.fh{background:#fefcbf;font-weight:700}.pro-vb-grid td.f0{background:#fed7d7}.pro-vb-grid td.na{color:#a0aec0;background:#f7fafc}.pro-vb-paper th small{font-weight:400;color:#8aa8c4}.pro-vb-grid td.level-start,.pro-vb-grid th.level-start{border-left:2px solid #1a4b7c}.pro-vb-grid td.vb-domain i{display:inline-block;font-style:normal;background:#1a4b7c;color:#fff;border-radius:4px;font-size:10px;width:18px;height:18px;line-height:18px;text-align:center;margin-right:6px}.pro-vb-grid td.vb-empty{background:#f6f8fb}.pro-vb-grid td.vb-empty:after{content:"—";color:#c2cddb;font-size:12px}.pro-vb-grid td.vb-yes{background:#f3fbf6}.pro-vb-grid td.vb-half{background:#fffdf4}.pro-vb-grid td.vb-no{background:#fdf6f6}.pro-vb-grid .vb-code{display:block;font-size:9.5px;color:#55697f;line-height:1.25;letter-spacing:.2px}.pro-vb-grid .vb-mark{display:block;font-size:13px;font-weight:800;line-height:1.15;min-height:15px}.pro-vb-grid td.vb-yes .vb-mark{color:#2f855a}.pro-vb-grid td.vb-half .vb-mark{color:#b7791f}.pro-vb-grid td.vb-no .vb-mark{color:#c53030}.pro-vb-grid td.vb-total{font-weight:800;color:#1a4b7c;text-align:center;background:#f7fbff}.pro-vb-rate td,.pro-vb-rate th{border:1px solid #dce8f4}.pro-vb-rate .vb-group-head th{background:#eef7ff;color:#1a4b7c;text-align:left;font-size:12.5px;padding:8px 10px}.pro-vb-rate .vb-group-head th span{float:right;font-weight:600;color:#5a7ea6;font-size:11.5px}.pro-vb-rate td.vb-code-cell{font-weight:700;color:#1a4b7c;white-space:nowrap;text-align:center}.pro-vb-rate td.vb-rate-cell{text-align:center;background:#fff;color:#90a0b5}.pro-vb-rate td.vb-rate-cell.sel{background:#1a4b7c;color:#fff;font-weight:800}.pro-vb-rate td.vb-total{font-weight:700;color:#1a4b7c;text-align:center}@media print{@page{size:A4 landscape;margin:8mm}.sidebar,.no-print{display:none!important}.portal-main{padding:0!important}.pro-doc{border:none;border-radius:0;max-width:none;box-shadow:none}.pro-cover{break-after:page}.pro-section,.pro-table tr,.pro-vb-grid tr,.pro-vb-rate tr{break-inside:avoid}.pro-vb-grid td,.pro-vb-grid th,.pro-vb-rate td,.pro-vb-rate th{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.scale-doc{background:#fff;border:1px solid var(--border);border-radius:12px;padding:28px 32px;max-width:980px}.scale-doc h1{font-size:20px;text-align:center;margin:0 0 4px}.scale-doc .scale-subtitle{text-align:center;color:var(--text-light);font-size:12px;margin:0 0 16px}.scale-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 18px;border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:14px}.scale-summary{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;margin:0 0 6px}.scale-summary b{font-size:15px}.scale-sec{font-size:14px;font-weight:700;margin:18px 0 6px}.scale-table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:6px}.scale-table th,.scale-table td{border:1px solid #d7dce2;padding:4px 8px;text-align:left}.scale-table th{background:#f3f5f8;font-weight:600;white-space:nowrap}.scale-table td.num{text-align:center;white-space:nowrap}.scale-legend{font-size:12px;color:var(--text-light);line-height:1.7;border-top:1px dashed var(--border);padding-top:10px;margin-top:14px}.scale-sign{display:flex;gap:56px;margin-top:24px;font-size:13px}@media print{.sidebar,.no-print{display:none!important}.portal-main{padding:0!important}.scale-doc{border:none;border-radius:0;padding:0;max-width:none}.scale-sec{break-after:avoid}.scale-table tr{break-inside:avoid}}.dashboard{--d-bandbg: #e3eff9;--d-band-title: #1e4a6b;--d-band-sub: #3e6e90;--d-accent: #4e90c4;--d-accent-dark: #2c6a96;--d-cardbg: #fcfeff;--d-border: #e0ebf3;--d-title: #243642;--d-body: #586773;--d-muted: #8794a0;--d-track: #e5eff7;--d-dot: #cbdeee;--d-tint: #ecf4fb;--d-d1: #dcebf7;--d-d2: #bbdcf0;--d-d3: #93c4e4;--d-d4: #6baad6;--d-d5: #4e90c4;--d-d6: #2c6a96;--d-warn-bg: #fff3e0;--d-warn-fg: #9a5a18}.dash-band{background:var(--d-bandbg);border-radius:16px;padding:18px 22px;margin-bottom:24px}.dash-band-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.dash-hello{display:flex;align-items:center;gap:13px}.dash-avatar{width:46px;height:46px;border-radius:50%;background:var(--d-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:18px;flex-shrink:0}.dash-hello-title{font-size:20px;font-weight:500;color:var(--d-band-title);margin:0}.dash-hello-sub{font-size:13px;color:var(--d-band-sub);margin:3px 0 0}.dash-newcase{display:inline-flex;align-items:center;gap:6px;background:var(--d-accent);color:#fff;font-size:13px;font-weight:500;padding:9px 16px;border-radius:999px;border:none;cursor:pointer}.dash-newcase:hover{color:#fff;filter:brightness(1.05)}.dash-stat-strip{display:flex;margin-top:16px;background:#f2f8fd;border-radius:8px;padding:2px}.dash-stat{flex:1;text-align:center;padding:8px 4px;color:inherit;display:block}.dash-stat:hover{filter:brightness(.98)}.dash-stat b{font-size:22px;font-weight:500;color:var(--d-band-title);display:block}.dash-stat small{font-size:11.5px;color:var(--d-band-sub)}.dash-stat .up{color:var(--d-accent)}.dash-stat.alert b,.dash-stat.alert small{color:var(--d-accent-dark)}.dash-stat-div{width:.5px;background:#cfe2f1;margin:8px 0;flex-shrink:0}.dash-sec-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 12px;gap:10px}.dash-sec-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dash-sec-title b{font-size:15px;font-weight:500;color:var(--text)}.dash-sec-title small{font-size:12px;color:var(--text-light)}.dash-sec-head>a{font-size:12px;color:var(--d-accent-dark);font-weight:500;white-space:nowrap}.dash-focus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px}.dash-focus{background:var(--d-cardbg);border:1px solid var(--d-border);border-radius:12px;padding:15px;display:flex;flex-direction:column}.dash-focus-head{display:flex;align-items:center;gap:10px;margin-bottom:11px}.dash-face{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:15px;flex-shrink:0}.dash-who{flex:1;min-width:0}.dash-who b{font-size:14px;font-weight:500;color:var(--d-title);display:block}.dash-who small{font-size:11px;color:var(--d-muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-ph{font-size:11px;padding:2px 8px;border-radius:999px;flex-shrink:0;white-space:nowrap}.dash-focus-desc{font-size:13px;color:var(--d-body);line-height:1.5;margin-bottom:13px;flex:1}.dash-prog{display:flex;align-items:center;gap:10px;margin-bottom:12px}.dash-prog-track{flex:1;height:6px;background:var(--d-track);border-radius:999px;overflow:hidden}.dash-prog-fill{height:100%;background:var(--d-accent);border-radius:999px}.dash-prog small{font-size:11px;color:var(--d-muted);flex-shrink:0}.dash-chip{font-size:11px;padding:3px 10px;border-radius:999px;display:inline-block}.dash-chip.warn{background:var(--d-warn-bg);color:var(--d-warn-fg)}.dash-chip.info{background:var(--d-bandbg);color:var(--d-accent-dark)}.dash-chip-row{margin-bottom:12px}.dash-act{display:block;text-align:center;font-size:12.5px;font-weight:500;border-radius:8px;padding:8px;cursor:pointer}.dash-act.ghost{color:var(--d-accent-dark);border:1px solid var(--d-d2);background:transparent}.dash-act.ghost:hover{border-color:var(--d-accent);color:var(--d-accent-dark)}.dash-act.solid{color:#fff;background:var(--d-accent);border:1px solid var(--d-accent)}.dash-act.solid:hover{color:#fff;filter:brightness(1.05)}.dash-data{display:grid;grid-template-columns:1.35fr 1fr;gap:14px;margin-top:22px}.dash-dcard{background:var(--d-cardbg);border:1px solid var(--d-border);border-radius:12px;padding:15px 16px;min-width:0}.dash-dcard-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:13px;gap:8px}.dash-dcard-head b{font-size:13px;font-weight:500;color:var(--d-title)}.dash-dcard-head small{font-size:12px;color:var(--d-muted)}.dash-distbar{display:flex;height:16px;border-radius:999px;overflow:hidden;margin-bottom:14px}.dash-legend{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px}.dash-legend>div{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--d-body)}.dash-legend i{width:9px;height:9px;border-radius:2px;flex-shrink:0}.dash-legend b{margin-left:auto;color:var(--d-title);font-weight:500}.dash-energy-num{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.dash-energy-num b{font-size:26px;font-weight:500;color:var(--d-band-title)}.dash-energy-num small{font-size:12px;color:var(--d-accent-dark)}.dash-energy-x{display:flex;justify-content:space-between;font-size:10.5px;color:var(--d-muted);margin-top:5px}.dash-tools-head{display:flex;align-items:center;gap:8px;margin:22px 0 12px;padding-top:16px;border-top:1px solid var(--d-border);font-size:14px;font-weight:500;color:var(--d-title)}.dash-tools-head .tools-ic{color:var(--d-accent);display:inline-flex}.dash-tools-head small{font-size:12px;font-weight:400;color:var(--d-muted)}.dash-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:10px}.dash-tool{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;background:var(--d-cardbg);border:.5px solid var(--d-border);border-radius:12px;padding:16px 10px;text-decoration:none;transition:border-color .12s ease,transform .12s ease}.dash-tool:hover{border-color:var(--d-accent);transform:translateY(-1px)}.dash-tool-ic{width:42px;height:42px;border-radius:10px;background:var(--d-tint);color:var(--d-accent-dark);display:flex;align-items:center;justify-content:center}.dash-tool-ic svg{width:22px;height:22px}.dash-tool-name{font-size:13px;font-weight:500;color:var(--d-title)}.dash-tool-hint{font-size:11.5px;color:var(--d-muted);line-height:1.4}.dash-invite{font-size:12px;color:var(--text-light);margin:16px 0 0}.dash-loading{padding:40px;text-align:center;color:var(--d-muted)}.dash-empty{background:var(--d-cardbg);border:1px dashed var(--d-border);border-radius:12px;padding:22px;text-align:center;color:var(--d-muted);font-size:13px}@media(max-width:720px){.dash-data{grid-template-columns:1fr}}.curriculum-strategy-field{display:grid;gap:6px;margin:10px 0 14px}.curriculum-strategy-label{color:var(--text, #243142);font-size:13px;font-weight:600}.curriculum-strategy-help{margin-top:-2px;color:#667085;font-size:12px}.curriculum-strategy-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px;overflow:hidden;border:1px solid var(--border, #d9e2ec);border-radius:6px;background:#fff}.curriculum-strategy-segment{min-height:42px;padding:8px 12px;border:0;border-right:1px solid var(--border, #d9e2ec);border-radius:0;background:#fff;color:#344054;cursor:pointer;font:inherit;font-size:13px}.curriculum-strategy-segment:last-child{border-right:0}.curriculum-strategy-segment.is-active{background:#eaf5ef;color:#17643b;box-shadow:inset 0 -2px #25885a;font-weight:700}.curriculum-strategy-segment:disabled{background:#f7f8fa;color:#98a2b3;cursor:not-allowed}.curriculum-strategy-segment small{display:block;margin-top:2px;font-size:11px}.curriculum-strategy-snapshot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:8px 10px;border-left:3px solid #25885a;background:#f2f8f5;color:#475467;font-size:13px}.curriculum-strategy-snapshot strong{color:#17643b}.strategy-profile-summary{display:grid;gap:12px;margin:10px 0 14px;padding:14px;border:1px solid var(--border, #d9e2ec);border-radius:10px;background:#fbfcfe}.strategy-profile-summary.is-compact{gap:9px;padding:11px 12px}.strategy-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.strategy-profile-source{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;color:#667085;font-size:12px}.strategy-profile-source>span{padding:2px 7px;border-radius:999px;background:#eef2f6}.strategy-profile-source>.is-inherited{background:#ecfdf3;color:#027a48}.strategy-profile-source>.is-override{background:#fff4e5;color:#b54708}.strategy-snapshot-hash{flex:0 0 auto;color:#667085;font-family:monospace;font-size:11px}.strategy-profile-grid{display:grid;gap:9px}.strategy-profile-layer{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;align-items:start}.strategy-profile-layer-label{padding-top:4px;color:#475467;font-size:12px;font-weight:700}.strategy-profile-chips{display:flex;flex-wrap:wrap;gap:6px}.strategy-profile-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:4px 8px;border:1px solid #dbe7f5;border-radius:999px;background:#fff;color:#344054;font-size:12px}.strategy-profile-chip small{color:#667085;font-size:10px;font-weight:700}.strategy-profile-chip em{color:#7f8b9a;font-size:10px;font-style:normal}.strategy-method-override{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;border-left:3px solid #f79009;background:#fffaeb;color:#7a2e0e;font-size:12px}.strategy-method-override span{color:#b54708}.strategy-profile-empty,.strategy-profile-notes,.strategy-profile-captured{margin:0;color:#667085;font-size:12px}.strategy-profile-captured{text-align:right}@media(max-width:680px){.curriculum-strategy-segments{grid-template-columns:1fr}.curriculum-strategy-segment{border-right:0;border-bottom:1px solid var(--border, #d9e2ec)}.curriculum-strategy-segment:last-child{border-bottom:0}.strategy-profile-layer{grid-template-columns:1fr;gap:4px}.strategy-profile-head{flex-direction:column}}.portal-layout-teacher{--teacher-bg: #f6f4ff;--teacher-surface: #ffffff;--teacher-surface-soft: #fbfaff;--teacher-line: #e6e0fb;--teacher-text: #1f2340;--teacher-muted: #6c7189;--teacher-accent: #7457f6;--teacher-accent-dark: #553ad8;--teacher-cyan: #16a3b8;--teacher-green: #24a66d;--teacher-amber: #d88b1a;--teacher-danger: #d54f67;background:radial-gradient(circle at top left,rgba(116,87,246,.13),transparent 30%),linear-gradient(135deg,#f8f6ff,#f6f9ff 46%,#f4fff9);color:var(--teacher-text)}.portal-layout-teacher .sidebar{width:252px;background:#fffffff0;border-right:1px solid var(--teacher-line);box-shadow:18px 0 38px #4a3d9414;color:var(--teacher-muted)}.portal-layout-teacher .sidebar-brand{min-height:72px;padding:18px 18px 14px;color:var(--teacher-text);font-size:15px;line-height:1.35;gap:12px}.portal-layout-teacher .brand-dot{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:linear-gradient(135deg,#b98cff,#6b45ff);box-shadow:0 10px 24px #7457f63d}.portal-layout-teacher .brand-dot:after{content:"★";color:#fff;font-size:16px;line-height:1}.portal-layout-teacher .sidebar-nav{padding:8px 12px 16px}.portal-layout-teacher .nav-group{margin-bottom:5px}.portal-layout-teacher .nav-group-label{color:#8a7eb4!important;font-size:11px!important;font-weight:700!important;letter-spacing:0!important;padding:14px 10px 6px!important}.portal-layout-teacher .nav-item{display:flex;align-items:center;gap:9px;min-height:38px;padding:9px 10px;border:1px solid transparent;border-radius:8px;color:var(--teacher-muted);font-size:14px}.portal-layout-teacher .nav-item:hover{background:#f4f0ff;color:var(--teacher-accent-dark)}.portal-layout-teacher .nav-item.active{background:#efeaff;border-color:#d8ccff;color:var(--teacher-accent-dark);box-shadow:inset 3px 0 0 var(--teacher-accent)}.teacher-nav-icon{width:24px;height:24px;flex:0 0 24px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#f3efff;color:var(--teacher-accent);font-size:13px;line-height:1}.portal-layout-teacher .nav-item.active .teacher-nav-icon{background:var(--teacher-accent);color:#fff}.portal-layout-teacher .sidebar-footer{padding:14px;border-top:1px solid var(--teacher-line);background:#fbfaff}.portal-layout-teacher .sidebar-user{padding:10px;border-radius:8px;background:#f6f2ff}.portal-layout-teacher .sidebar-user-name{color:var(--teacher-text)}.portal-layout-teacher .sidebar-user-role{color:var(--teacher-muted)}.portal-layout-teacher .sidebar-invite{color:var(--teacher-accent-dark)}.portal-layout-teacher .btn-ghost{margin-top:10px;border-color:#d6cff5;color:var(--teacher-accent-dark);background:#fff}.portal-layout-teacher .btn-ghost:hover{border-color:var(--teacher-accent);color:var(--teacher-accent-dark)}.portal-layout-teacher .portal-main{padding:0 28px 36px;background:transparent}.teacher-topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:16px;min-height:72px;margin:0 -28px 18px;padding:14px 28px;border-bottom:0;background:#f8f7ffbd;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.teacher-search{width:min(420px,100%);min-height:42px;display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;color:#8a7eb4}.teacher-search input{width:100%;border:0;outline:0;color:var(--teacher-text);background:transparent;font:inherit;font-size:14px}.teacher-search input::placeholder{color:#9ca0b6}.teacher-topbar-actions{display:flex;align-items:center;gap:10px}.teacher-icon-button,.teacher-topbar-user{position:relative;width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;color:var(--teacher-accent-dark);font-weight:700}.teacher-icon-button{cursor:pointer}.teacher-icon-button:hover{border-color:var(--teacher-accent);color:var(--teacher-accent-dark)}.teacher-icon-button b{position:absolute;top:8px;right:8px;width:7px;height:7px;border:1px solid #ffffff;border-radius:50%;background:var(--teacher-danger)}.teacher-topbar-user{background:var(--teacher-accent);color:#fff}.teacher-dashboard{max-width:1440px;margin:0 auto;padding:0 0 42px}.teacher-dashboard a{text-decoration:none}.teacher-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:156px;padding:26px;border:1px solid var(--teacher-line);border-radius:8px;background:linear-gradient(135deg,#fffffffa,#f6f2fff2 54%,#eafbfff5);box-shadow:0 18px 38px #47378a14}.teacher-eyebrow{margin:0 0 10px;color:var(--teacher-accent-dark);font-size:13px;font-weight:700}.teacher-dashboard-hero h1{max-width:780px;margin:0;color:var(--teacher-text);font-size:28px;line-height:1.28;font-weight:800}.teacher-dashboard-hero p{max-width:760px;margin:12px 0 0;color:var(--teacher-muted);font-size:14px;line-height:1.7}.teacher-dashboard-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.teacher-primary-action,.teacher-secondary-action{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;border-radius:8px;font-size:14px;font-weight:700;white-space:nowrap}.teacher-primary-action{background:var(--teacher-accent);color:#fff;box-shadow:0 12px 24px #7457f633}.teacher-primary-action:hover{color:#fff;background:var(--teacher-accent-dark)}.teacher-primary-action svg{width:17px;height:17px}.teacher-secondary-action{border:1px solid #d6cff5;background:#fff;color:var(--teacher-accent-dark)}.teacher-secondary-action:hover{border-color:var(--teacher-accent);color:var(--teacher-accent-dark)}.teacher-metric-grid,.teacher-skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.teacher-metric-card{min-height:126px;display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--teacher-line);border-radius:8px;background:var(--teacher-surface);box-shadow:0 12px 26px #47378a0f}.teacher-metric-icon{width:42px;height:42px;flex:0 0 42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.teacher-metric-icon svg,.teacher-quick-icon svg{width:22px;height:22px}.teacher-metric-card span:not(.teacher-metric-icon){display:block;color:var(--teacher-muted);font-size:13px}.teacher-metric-card strong{display:block;margin-top:6px;color:var(--teacher-text);font-size:30px;line-height:1}.teacher-metric-card small{display:block;margin-top:8px;color:#84899d;font-size:12px}.teacher-metric-violet .teacher-metric-icon{background:#efeaff;color:var(--teacher-accent)}.teacher-metric-cyan .teacher-metric-icon{background:#e8f9fc;color:var(--teacher-cyan)}.teacher-metric-green .teacher-metric-icon{background:#e9f8f0;color:var(--teacher-green)}.teacher-metric-amber .teacher-metric-icon{background:#fff4df;color:var(--teacher-amber)}.teacher-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);gap:16px;margin-top:16px}.teacher-dashboard-grid-secondary{grid-template-columns:minmax(0,1.25fr) minmax(320px,.8fr)}.teacher-panel{min-width:0;padding:18px;border:1px solid var(--teacher-line);border-radius:8px;background:#fffffff5;box-shadow:0 12px 26px #47378a0e}.teacher-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}.teacher-panel-heading h2,.teacher-notice h2{margin:0;color:var(--teacher-text);font-size:17px;line-height:1.35}.teacher-panel-heading p,.teacher-notice p{margin:5px 0 0;color:var(--teacher-muted);font-size:13px;line-height:1.55}.teacher-todo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.teacher-todo-card{min-height:118px;display:grid;align-content:space-between;gap:8px;padding:14px;border-radius:8px;color:var(--teacher-text);background:#f8f6ff}.teacher-todo-card:hover{transform:translateY(-1px)}.teacher-todo-card span{color:var(--teacher-muted);font-size:13px}.teacher-todo-card strong{color:var(--teacher-text);font-size:28px;line-height:1}.teacher-todo-card small{color:#81879d;font-size:12px;line-height:1.45}.teacher-todo-violet{background:#f0ebff}.teacher-todo-cyan{background:#eaf9fc}.teacher-todo-green{background:#ecf8f2}.teacher-todo-amber{background:#fff4df}.teacher-energy-chart{height:228px;display:grid;grid-template-columns:repeat(auto-fit,minmax(34px,1fr));align-items:end;gap:10px;padding-top:8px}.teacher-energy-bar{min-width:0;height:100%;display:grid;grid-template-rows:minmax(0,1fr) 22px;align-items:end;gap:7px}.teacher-energy-bar span{width:100%;height:var(--bar-height);min-height:16px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,var(--teacher-accent) 0%,#2fb6c5 100%)}.teacher-energy-bar small{overflow:hidden;color:#8388a0;font-size:11px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.teacher-focus-list{display:grid;gap:10px}.teacher-focus-item{min-height:64px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px;border:1px solid #eeeafa;border-radius:8px;background:#fff;color:var(--teacher-text)}.teacher-focus-item:hover{border-color:#d8ccff}.teacher-avatar{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#efeaff;color:var(--teacher-accent-dark);font-weight:800}.teacher-focus-main{min-width:0}.teacher-focus-main strong{display:flex;align-items:center;gap:7px;color:var(--teacher-text);font-size:14px}.teacher-focus-main strong small{color:#8c90a5;font-size:12px;font-weight:500}.teacher-focus-main em{display:block;overflow:hidden;margin-top:4px;color:var(--teacher-muted);font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.teacher-status{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:8px;font-size:12px;font-weight:700;white-space:nowrap}.teacher-status-claim{background:#f0ebff;color:var(--teacher-accent-dark)}.teacher-status-action{background:#fff3df;color:#a96300}.teacher-quick-grid{display:grid;gap:10px}.teacher-quick-card{min-height:74px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:11px;padding:12px;border:1px solid #eeeafa;border-radius:8px;background:#fff;color:var(--teacher-text)}.teacher-quick-card:hover{border-color:#d8ccff;background:#fbfaff}.teacher-quick-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#eff7ff;color:#2378b6}.teacher-quick-card strong,.teacher-quick-card small{display:block}.teacher-quick-card strong{color:var(--teacher-text);font-size:14px}.teacher-quick-card small{margin-top:4px;color:var(--teacher-muted);font-size:12px;line-height:1.45}.teacher-phase-list{display:grid;gap:13px}.teacher-phase-item{display:grid;gap:8px}.teacher-phase-item>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--teacher-text);font-size:13px}.teacher-phase-item span{color:var(--teacher-muted)}.teacher-phase-track{height:9px;display:block;overflow:hidden;border-radius:8px;background:#f0eef9}.teacher-phase-track i{width:var(--phase-width);height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--teacher-accent) 0%,var(--teacher-cyan) 100%)}.teacher-ability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.teacher-ability-card{min-height:92px;padding:14px;border-radius:8px;background:#f8f6ff}.teacher-ability-card strong{color:var(--teacher-text);font-size:26px;line-height:1}.teacher-ability-card span{margin-left:3px;color:var(--teacher-muted);font-size:12px}.teacher-ability-card small{display:block;margin-top:9px;color:var(--teacher-muted);font-size:12px}.teacher-empty-state,.teacher-notice{color:var(--teacher-muted)}.teacher-empty-state{min-height:120px;display:flex;align-items:center;justify-content:center;margin:0;border:1px dashed #d8ccff;border-radius:8px;background:#fbfaff;font-size:13px;text-align:center}.teacher-notice,.teacher-skeleton-wrap{margin-top:16px}.teacher-skeleton-card,.teacher-skeleton-panel{display:block;overflow:hidden;border-radius:8px;background:linear-gradient(90deg,#fff,#f0ebff 45%,#fff);background-size:220% 100%;animation:teacherSkeleton 1.2s ease-in-out infinite}.teacher-skeleton-card{height:126px}.teacher-skeleton-panel{height:280px;margin-top:16px}@keyframes teacherSkeleton{0%{background-position:120% 0}to{background-position:-120% 0}}@media(max-width:1180px){.teacher-metric-grid,.teacher-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-grid,.teacher-dashboard-grid-secondary{grid-template-columns:1fr}}@media(max-width:900px){.portal-layout-teacher .portal-main{padding:0 18px 28px}.teacher-topbar{margin:0 -18px 16px;padding:12px 18px}.teacher-dashboard-hero{grid-template-columns:1fr}.teacher-dashboard-hero-actions{justify-content:flex-start}.teacher-todo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.portal-layout-teacher .sidebar{width:100%;max-height:none;border-right:0;border-bottom:1px solid var(--teacher-line)}.portal-layout-teacher .sidebar-nav{max-height:320px}.teacher-topbar{position:relative;flex-direction:column;align-items:stretch}.teacher-topbar-actions{justify-content:flex-end}.teacher-dashboard-hero{padding:20px}.teacher-dashboard-hero h1{font-size:24px}.teacher-metric-grid,.teacher-skeleton-grid,.teacher-todo-grid,.teacher-ability-grid{grid-template-columns:1fr}.teacher-focus-item{grid-template-columns:42px minmax(0,1fr)}.teacher-status{grid-column:2;justify-self:start}}.teacher-students-page{max-width:1460px;margin:0 auto;padding:0 0 40px;color:var(--teacher-text)}.teacher-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.teacher-list-header h1{margin:0;color:#151936;font-size:30px;line-height:1.18;font-weight:800}.teacher-list-header p{margin:10px 0 0;color:#6e7596;font-size:14px}.teacher-student-filters{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(150px,.5fr) minmax(170px,.55fr) 86px minmax(132px,auto);gap:14px;align-items:center;margin-bottom:24px}.teacher-student-search,.teacher-student-filters select,.teacher-filter-reset{min-height:46px;border:1px solid #e0ddf1;border-radius:8px;background:#fff;color:#263152;box-shadow:0 8px 20px #42377c0a}.teacher-student-search{display:flex;align-items:center;gap:10px;padding:0 16px}.teacher-student-search span{color:var(--teacher-accent)}.teacher-student-search input{width:100%;border:0;outline:0;background:transparent;color:#263152;font:inherit;font-size:14px}.teacher-student-search input::placeholder{color:#8d94b3}.teacher-student-filters select{padding:0 16px;font:inherit;font-size:14px}.teacher-filter-reset{cursor:pointer;font-weight:700}.teacher-filter-reset:hover{border-color:#b9a9ff;color:var(--teacher-accent-dark)}.teacher-student-add{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border-radius:8px;background:linear-gradient(135deg,#7a52ff,#613ff3);color:#fff;font-size:14px;font-weight:800;box-shadow:0 14px 28px #6948f43d;white-space:nowrap}.teacher-student-add:hover{color:#fff;filter:brightness(1.04)}.teacher-student-add span{font-size:22px;font-weight:400;line-height:1}.teacher-student-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:20px}.teacher-student-metric{min-height:126px;display:flex;align-items:center;gap:24px;padding:24px;border:1px solid #ebe8f7;border-radius:8px;background:#fffffff0;box-shadow:0 18px 40px #3d34680f}.teacher-student-metric>span{width:64px;height:64px;flex:0 0 64px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;font-size:28px}.teacher-student-metric-violet>span{background:#efeaff;color:var(--teacher-accent)}.teacher-student-metric-green>span{background:#dcf8ec;color:#13a36b}.teacher-student-metric-amber>span{background:#fff0df;color:#ee7e22}.teacher-student-metric p,.teacher-student-metric em{margin:0;color:#5f6889;font-size:14px;font-style:normal}.teacher-student-metric strong{display:block;margin:7px 0 9px;color:#151936;font-size:30px;line-height:1}.teacher-student-metric strong small{margin-left:5px;color:#25304c;font-size:14px;font-weight:500}.teacher-student-table-card{overflow:hidden;border:1px solid #ebe8f7;border-radius:8px;background:#fffffff5;box-shadow:0 20px 48px #3d346812}.teacher-table-error{margin:18px;padding:12px 14px;border:1px solid #ffc4c4;border-radius:8px;background:#fff4f4;color:#bd1c1c;font-size:13px}.teacher-student-table{min-width:1120px}.teacher-student-table-head,.teacher-student-row{display:grid;grid-template-columns:1.55fr .82fr 1fr 1.05fr 1fr .9fr .9fr 1.35fr;column-gap:16px;align-items:center;padding:0 20px}.teacher-student-table-head{min-height:56px;border-bottom:1px solid #ebe8f7;color:#65708f;font-size:13px;font-weight:800}.teacher-student-row{min-height:82px;border-bottom:1px solid #f0edf8;cursor:pointer;transition:background .14s ease}.teacher-student-row:last-child{border-bottom:0}.teacher-student-row:hover{background:#fbf9ff}.teacher-student-info{min-width:0;display:flex;align-items:center;gap:12px}.teacher-student-avatar{width:46px;height:46px;flex:0 0 46px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e6e1f7;border-radius:50%;background:linear-gradient(135deg,#eef7ff,#fff0f7);font-size:25px}.teacher-student-info strong{min-width:0;display:flex;align-items:center;gap:7px;color:#1b2440;font-size:14px}.teacher-student-info small,.teacher-parent-contact small,.teacher-last-assessment small{display:block;margin-top:5px;color:#7f87a4;font-size:12px}.teacher-gender{min-width:24px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-size:12px}.teacher-gender-male{background:#edf2ff;color:#3e63d8}.teacher-gender-female{background:#fff0f6;color:#df3f83}.teacher-gender-other{background:#f1f4f9;color:#65708f}.teacher-student-grade,.teacher-training-stage span,.teacher-parent-contact strong,.teacher-student-row time{color:#445174;font-size:13px}.teacher-focus-tags{display:flex;flex-wrap:wrap;gap:6px}.teacher-focus-tags span{min-height:24px;display:inline-flex;align-items:center;padding:0 9px;border-radius:7px;background:#efeaff;color:#6d4dff;font-size:12px;font-weight:700}.teacher-focus-tags span:nth-child(2n){background:#eaf3ff;color:#4778e6}.teacher-last-assessment{display:inline-grid;gap:3px;justify-self:start;padding:8px 10px;border:1px solid #e7e3f7;border-radius:8px;background:#f8f7ff}.teacher-last-assessment strong{color:#445174;font-size:12px;font-weight:700}.teacher-training-stage i{display:flex;gap:6px;margin-top:9px;font-style:normal}.teacher-training-stage b{width:9px;height:9px;border-radius:50%;background:#d7dce9}.teacher-training-stage b.is-active{background:var(--teacher-accent)}.teacher-parent-contact{min-width:0}.teacher-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.teacher-row-actions a,.teacher-row-actions button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-size:12px;font-weight:800;white-space:nowrap}.teacher-row-actions a{padding:0 12px;border:1px solid #cfc3ff;background:#fff;color:var(--teacher-accent-dark)}.teacher-row-actions a.is-primary{border-color:transparent;background:linear-gradient(135deg,#7a52ff,#613ff3);color:#fff;box-shadow:0 10px 20px #6948f42e}.teacher-row-actions button{width:28px;border:0;background:transparent;color:#1f2b4a;cursor:pointer;font-size:20px}.teacher-table-empty{min-height:120px;display:flex;align-items:center;justify-content:center;margin:0;color:#7d85a1;font-size:14px}.teacher-student-pagination{min-height:64px;display:flex;align-items:center;justify-content:center;gap:12px;border-top:1px solid #f0edf8;color:#5f6889;font-size:13px}.teacher-student-pagination button{min-width:38px;height:38px;border:1px solid #e0ddf1;border-radius:8px;background:#fff;color:#25304c;cursor:pointer;font-weight:800}.teacher-student-pagination button.is-active{border-color:transparent;background:#efeaff;color:var(--teacher-accent-dark)}.teacher-student-pagination button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:1260px){.teacher-student-table-card{overflow-x:auto}.teacher-student-filters{grid-template-columns:minmax(260px,1fr) repeat(3,minmax(120px,auto))}.teacher-student-add{grid-column:1 / -1;justify-self:end}}@media(max-width:820px){.teacher-list-header{display:block}.teacher-student-filters,.teacher-student-metrics{grid-template-columns:1fr}.teacher-student-add{justify-self:stretch}}body .portal-layout-teacher .portal-main>.teacher-workspace-page{width:100%;max-width:none;display:grid;gap:13px;padding:10px 24px 24px;color:#173963}.teacher-workspace-header{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:2px}.teacher-workspace-header h1{margin:0;color:#102b54;font-size:25px;line-height:1.2}.teacher-workspace-header p{margin:7px 0 0;color:#71829c;font-size:11px}.teacher-workspace-primary{min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 19px;border:1px solid #1767f1;border-radius:8px;background:#1165ef;color:#fff;box-shadow:0 7px 15px #1964eb38,inset 0 1px #ffffff57;font-size:13px;font-weight:800;text-decoration:none}.teacher-workspace-primary:disabled{cursor:not-allowed;opacity:.5}.teacher-workspace-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.teacher-workspace-metric{min-height:100px;display:flex;align-items:center;gap:17px;padding:15px 19px;border:1px solid #e4edf7;border-radius:10px;background:#fffffff5;box-shadow:7px 8px 17px #1e497813,-5px -5px 13px #fffffffa}button.teacher-workspace-metric{width:100%;cursor:pointer;font:inherit;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}button.teacher-workspace-metric:hover{border-color:#a9c8ef;transform:translateY(-1px)}button.teacher-workspace-metric.active{border-color:#1267f3;box-shadow:0 0 0 2px #1267f31f,7px 8px 17px #1e497813}button.teacher-workspace-metric:focus-visible{outline:3px solid rgba(18,103,243,.22);outline-offset:2px}.teacher-workspace-metric>span{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border-radius:10px;background:#eaf3ff;color:#1267ef;box-shadow:inset 0 0 0 1px #ffffffbf,4px 5px 10px #214b7b14}.teacher-workspace-metric.is-green>span{background:#eaf8f1;color:#0aad64}.teacher-workspace-metric.is-orange>span{background:#fff3e5;color:#f47a12}.teacher-workspace-metric.is-violet>span{background:#f0edff;color:#6251ed}.teacher-workspace-metric svg{width:29px;height:29px}.teacher-workspace-metric p{margin:0;color:#536b8c;font-size:11px}.teacher-workspace-metric strong{display:block;margin-top:4px;color:#102b54;font-size:28px;line-height:1}.teacher-workspace-metric strong small{margin-left:5px;color:#45658d;font-size:11px;font-weight:700}.teacher-workspace-metric em{display:block;margin-top:6px;color:#7589a4;font-size:9px;font-style:normal}.teacher-workspace-card{min-width:0;overflow:hidden;border:1px solid #e4edf7;border-radius:10px;background:#fffffff5;box-shadow:7px 8px 17px #1e497812,-5px -5px 13px #fffffffa}.teacher-task-toolbar{min-height:70px;display:grid;grid-template-columns:auto minmax(220px,1fr) 170px auto;align-items:center;gap:12px;padding:10px 15px;border-bottom:1px solid #e5edf6}.teacher-task-tabs{display:inline-flex;overflow:hidden;border:1px solid #dfe8f3;border-radius:8px}.teacher-task-tabs button{min-width:78px;min-height:38px;padding:0 13px;border:0;border-right:1px solid #e3ebf4;background:#fff;color:#496483;font-size:11px;font-weight:700}.teacher-task-tabs button:last-child{border-right:0}.teacher-task-tabs button.active{background:#1267f3;color:#fff}.teacher-task-search{min-height:40px;display:flex;align-items:center;gap:8px;justify-self:end;width:min(100%,330px);padding:0 12px;border:1px solid #dfe8f3;border-radius:8px;background:#fff}.teacher-task-search svg,.teacher-task-next svg{width:16px;height:16px;flex:0 0 16px}.teacher-task-search input{min-width:0;width:100%;border:0;outline:0;color:#274a75;font-size:11px}.teacher-task-toolbar select,.teacher-task-reset{min-height:40px;border:1px solid #dfe8f3;border-radius:8px;background:#fff;color:#37587f;font-size:11px}.teacher-task-toolbar select{padding:0 12px}.teacher-task-reset{padding:0 12px;cursor:pointer}.teacher-task-table{min-width:1100px;overflow-x:auto}.teacher-task-head,.teacher-task-row{display:grid;grid-template-columns:minmax(175px,1.15fr) minmax(155px,1fr) minmax(170px,1.15fr) minmax(170px,1.08fr) minmax(155px,1fr) 90px minmax(125px,.8fr);align-items:center;column-gap:12px;padding:0 18px}.teacher-task-head{min-height:45px;border-bottom:1px solid #e5edf6;background:#fbfdff;color:#345276;font-size:10px;font-weight:800}.teacher-task-row{min-height:69px;border-bottom:1px solid #edf2f7;color:#284d79;font-size:10px}.teacher-task-row:hover{background:#f7fbff}.teacher-task-student{min-width:0;display:flex;align-items:center;gap:10px}.teacher-training-page .teacher-student-avatar{width:44px;height:44px;flex:0 0 44px;border:2px solid #ffffff;background-image:url(/assets/teacher/student-avatar-sprite.png);background-repeat:no-repeat;background-size:300% 200%;box-shadow:0 3px 8px #1e49781f}.teacher-task-student strong,.teacher-task-name strong,.teacher-task-target strong{display:block;color:#173963;font-size:10px}.teacher-task-student small,.teacher-task-name small,.teacher-task-target small{display:block;margin-top:3px;color:#7187a4;font-size:9px}.teacher-task-name small{width:fit-content;padding:2px 6px;border-radius:5px;background:#eaf3ff;color:#1267e9}.teacher-task-progress>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.teacher-task-progress small{color:#758aa6}.teacher-task-progress i{height:5px;display:block;overflow:hidden;margin-top:8px;border-radius:4px;background:#e8eef5}.teacher-task-progress i b{height:100%;display:block;border-radius:inherit;background:#1267f3}.teacher-task-next{display:grid;gap:6px}.teacher-task-next span{display:flex;align-items:center;gap:6px}.teacher-task-state{width:fit-content;padding:5px 9px;border-radius:7px;font-weight:800}.teacher-task-state.is-running{background:#e9f8f1;color:#0a9d5b}.teacher-task-state.is-feedback{background:#fff4e5;color:#ec7410}.teacher-task-state.is-planned{background:#f0f4f8;color:#536b86}.teacher-task-state.is-completed{background:#eaf3ff;color:#1267e9}.teacher-task-actions{display:flex;align-items:center;gap:7px}.teacher-task-actions a{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;border:1px solid #dfe8f3;border-radius:7px;background:#fff;color:#1267e9;font-weight:800;text-decoration:none}.teacher-task-actions .teacher-task-more{width:34px;padding:0}.teacher-workspace-empty{min-height:180px;display:grid;place-items:center;margin:0;color:#8293aa;font-size:13px}.teacher-task-footer{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 18px;color:#4b6788;font-size:10px}.teacher-task-footer>div{display:flex;align-items:center;gap:7px}.teacher-task-footer button,.teacher-task-footer>div>span{min-width:31px;min-height:31px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border:1px solid #dfe8f3;border-radius:7px;background:#fff;color:#476382}.teacher-task-footer button.active{border-color:#1267f3;background:#1267f3;color:#fff}.teacher-cases-card{display:grid}.teacher-cases-toolbar{min-height:68px;margin:0!important;padding:10px 15px;border-bottom:1px solid #e5edf6;background:#fff}.teacher-cases-page .chip-row{margin:0;padding:10px 15px;border-bottom:1px solid #e5edf6}.teacher-cases-page .seg{border-color:#dfe8f3;border-radius:8px;background:#fff}.teacher-cases-page .seg-btn.active,.teacher-cases-page .chip.active{border-color:#1267f3;background:#1267f3;color:#fff}.teacher-cases-page .chip.active .chip-count{color:#fff}.teacher-cases-page .search-box input,.teacher-cases-page .data-table-toolbar select{min-height:40px;border-color:#dfe8f3;border-radius:8px;box-shadow:none;font-size:11px}.teacher-cases-page .table-wrap{border:0;border-radius:0;box-shadow:none}.teacher-cases-page .cases-table-wrap{max-height:none}.teacher-cases-page th{height:45px;padding:0 14px;background:#fbfdff;color:#345276;font-size:10px}.teacher-cases-page td{min-height:64px;padding:11px 14px;color:#284d79;font-size:10px}.teacher-cases-page .badge{border-radius:7px;font-size:9px!important}.teacher-cases-page .btn-sm{min-height:32px;border-radius:7px;font-size:10px}.teacher-course-card{overflow-x:auto}.teacher-course-toolbar{min-width:1080px;min-height:68px;display:grid;grid-template-columns:auto 42px minmax(250px,1fr) 42px 70px 170px 170px;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #e5edf6}.teacher-course-toolbar button,.teacher-course-toolbar select{min-height:39px;border:1px solid #dfe8f3;border-radius:8px;background:#fff;color:#34587f;font-size:11px}.teacher-course-toolbar>strong{text-align:center;color:#173963;font-size:12px}.teacher-course-view-switch{display:flex;overflow:hidden;border:1px solid #dfe8f3;border-radius:8px}.teacher-course-view-switch button{min-width:86px;border:0;border-right:1px solid #dfe8f3;border-radius:0}.teacher-course-view-switch button:last-child{border-right:0}.teacher-course-view-switch button.active{background:#1267f3;color:#fff}.teacher-course-week{min-width:1080px;display:grid;grid-template-columns:64px repeat(7,minmax(140px,1fr));border-bottom:1px solid #e5edf6}.teacher-course-week-scroll{overflow:visible}.teacher-course-corner,.teacher-course-day,.teacher-course-time,.teacher-course-cell{border-right:1px solid #e5edf6;border-bottom:1px solid #e5edf6}.teacher-course-day{display:flex;align-items:center;justify-content:center;gap:8px;color:#173963;font-size:11px}.teacher-course-day span{padding:2px 5px;border-radius:5px;background:#1267f3;color:#fff;font-size:9px}.teacher-course-time{display:flex;align-items:flex-start;justify-content:center;padding-top:14px;color:#173963;font-size:11px;font-weight:800}.teacher-course-cell{display:grid;align-content:start;gap:5px;padding:5px}.teacher-course-block{width:100%;min-height:84px;display:grid;align-content:center;gap:5px;padding:7px 9px;border:1px solid #91c2ff;border-radius:7px;background:#f2f8ff;color:#24527f;text-align:left;box-shadow:2px 3px 7px #234f800f}.teacher-course-block.is-green{border-color:#9bdabd;background:#effaf5}.teacher-course-block.is-orange{border-color:#f4c27f;background:#fff8ee}.teacher-course-block.is-violet{border-color:#c8baf5;background:#f7f4ff}.teacher-course-block.is-muted{border-color:#cbd5e1;background:#f5f7fa;opacity:.78}.teacher-course-block>span{display:flex;align-items:flex-start;justify-content:space-between;gap:7px}.teacher-course-block strong{min-width:0;color:#0f559f;font-size:10px;line-height:1.35}.teacher-course-block em{flex:0 0 auto;padding:2px 4px;border-radius:4px;background:#ffffffb8;color:#0a9655;font-size:8px;font-style:normal;white-space:nowrap}.teacher-course-block b{color:#294f78;font-size:9px}.teacher-course-block small{overflow:hidden;color:#7187a4;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.teacher-course-week-empty{grid-column:1 / -1;min-height:108px;display:grid;place-items:center;margin:0;border-bottom:1px solid #e5edf6;color:#7187a4;font-size:11px}.teacher-course-alert{margin:12px 14px 0}.teacher-course-legend{min-height:48px;display:flex;align-items:center;gap:8px;padding:8px 16px;color:#456483;font-size:10px}.teacher-course-legend span{width:13px;height:13px;margin-left:12px;border:1px solid #91c2ff;border-radius:3px;background:#eaf4ff}.teacher-course-legend span.is-green{border-color:#9bdabd;background:#eaf8f1}.teacher-course-legend span.is-violet{border-color:#c8baf5;background:#f0edff}.teacher-course-legend span.is-muted{border-color:#cbd5e1;background:#f1f5f9}.teacher-course-list{min-width:960px}.teacher-course-list-head,.teacher-course-list>button{min-height:52px;display:grid;grid-template-columns:1.3fr 1fr 1.25fr 1.25fr .65fr;align-items:center;gap:12px;width:100%;padding:0 18px;border:0;border-bottom:1px solid #e8eef5;background:#fff;color:#34587f;font-size:10px;text-align:left}.teacher-course-list-head{min-height:43px;background:#fbfdff;font-weight:800}.teacher-course-list>button:hover{background:#f7fbff}.teacher-lesson-detail{display:grid;gap:16px}.teacher-lesson-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;margin:0;border:1px solid #e1e9f3;border-radius:8px;background:#e1e9f3}.teacher-lesson-detail dl>div{min-width:0;padding:11px 13px;background:#fff}.teacher-lesson-detail dt{margin-bottom:4px;color:#7187a4;font-size:10px}.teacher-lesson-detail dd{overflow-wrap:anywhere;margin:0;color:#173963;font-size:12px;font-weight:700}.teacher-lesson-reschedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.teacher-lesson-reschedule label{display:grid;gap:6px;color:#456483;font-size:11px}.teacher-lesson-reschedule label.is-wide{grid-column:1 / -1}.teacher-lesson-reschedule input,.teacher-lesson-reschedule textarea,.teacher-lesson-reschedule select{width:100%;border:1px solid #d9e4f0;border-radius:7px;background:#fff;color:#173963}.teacher-lesson-runtime-loading,.teacher-lesson-empty-action{margin:0;color:#7187a4;font-size:11px}.teacher-lesson-runtime-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #e1e9f3;background:#f8fbff}.teacher-lesson-runtime-strip>span{min-width:0;display:grid;gap:3px;padding:10px 12px;border-right:1px solid #e1e9f3}.teacher-lesson-runtime-strip>span:last-child{border-right:0}.teacher-lesson-runtime-strip small{color:#7187a4;font-size:9px}.teacher-lesson-runtime-strip b{overflow-wrap:anywhere;color:#173963;font-size:11px}.teacher-lesson-actions{flex-wrap:wrap;justify-content:flex-end;margin-top:0}.teacher-lesson-history{border-top:1px solid #e1e9f3;padding-top:14px}.teacher-lesson-leaves{display:grid;gap:0;border-top:1px solid #e1e9f3;padding-top:14px}.teacher-lesson-leaves h4{margin:0 0 8px;color:#173963;font-size:12px}.teacher-lesson-leaves>div{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf2f7}.teacher-lesson-leaves>div>span{min-width:0;display:flex;align-items:center;gap:7px}.teacher-lesson-leaves>div>span:first-child{display:grid;gap:3px}.teacher-lesson-leaves b{color:#254f79;font-size:10px}.teacher-lesson-leaves small{overflow-wrap:anywhere;color:#7187a4;font-size:9px}.teacher-lesson-history h4{margin:0 0 9px;color:#173963;font-size:12px}.teacher-lesson-history ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.teacher-lesson-history li{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,1.4fr);gap:12px;align-items:center;min-height:46px;border-bottom:1px solid #edf2f7}.teacher-lesson-history li>span{min-width:0;display:grid;gap:2px}.teacher-lesson-history b{color:#254f79;font-size:10px}.teacher-lesson-history small,.teacher-lesson-history p{color:#7187a4;font-size:9px}.teacher-lesson-history p{overflow-wrap:anywhere;margin:0}.parent-lessons-page{display:grid;gap:16px}.parent-lessons-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dfe7ef;border-radius:8px;background:#fff}.parent-lessons-summary>div{min-width:0;display:grid;grid-template-columns:auto auto;align-items:end;justify-content:start;gap:4px;padding:16px 18px;border-right:1px solid #e7edf3}.parent-lessons-summary>div:last-child{border-right:0}.parent-lessons-summary span{grid-column:1 / -1;color:#65758b;font-size:11px}.parent-lessons-summary b{color:#173963;font-size:24px;line-height:1}.parent-lessons-summary small{color:#65758b;font-size:10px}.parent-lessons-toolbar{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px}.parent-lessons-toolbar select,.parent-lessons-tabs button{min-height:38px;border:1px solid #d9e4ee;background:#fff;color:#315475}.parent-lessons-toolbar select{min-width:180px;border-radius:7px}.parent-lessons-tabs{display:flex}.parent-lessons-tabs button{min-width:104px;border-right:0}.parent-lessons-tabs button:first-child{border-radius:7px 0 0 7px}.parent-lessons-tabs button:last-child{border-right:1px solid #d9e4ee;border-radius:0 7px 7px 0}.parent-lessons-tabs button.active{border-color:#1467d8;background:#1467d8;color:#fff}.parent-lessons-list{overflow-x:auto;border:1px solid #dfe7ef;border-radius:8px;background:#fff}.parent-lessons-list-head,.parent-lessons-list>button{min-width:880px;display:grid;grid-template-columns:1.1fr 1.25fr 1.15fr .8fr .9fr;align-items:center;gap:14px;width:100%;padding:0 18px}.parent-lessons-list-head{min-height:42px;border-bottom:1px solid #dfe7ef;background:#f8fafc;color:#60758c;font-size:10px;font-weight:700}.parent-lessons-list>button{min-height:70px;border:0;border-bottom:1px solid #e8eef4;background:#fff;color:#284b6d;text-align:left}.parent-lessons-list>button:hover{background:#f7fbff}.parent-lessons-list>button>span{min-width:0;display:grid;gap:4px}.parent-lessons-list b{overflow-wrap:anywhere;color:#173963;font-size:11px}.parent-lessons-list small{overflow:hidden;color:#718398;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.parent-lessons-list em{width:fit-content;max-width:100%;padding:4px 7px;border-radius:5px;background:#eef4fa;color:#496883;font-size:9px;font-style:normal}.parent-lessons-list em.is-scheduled,.parent-lessons-list em.is-leave-approved{background:#eaf3ff;color:#155fb7}.parent-lessons-list em.is-in_progress,.parent-lessons-list em.is-completed{background:#e9f8f0;color:#087f4f}.parent-lessons-list em.is-leave,.parent-lessons-list em.is-leave-pending{background:#fff4df;color:#9a5c08}.parent-lessons-list em.is-cancelled,.parent-lessons-list em.is-none{background:#f1f4f7;color:#6a7887}.parent-lessons-list>p{min-height:100px;display:grid;place-items:center;margin:0;color:#718398;font-size:11px}.parent-lesson-detail{display:grid;gap:16px}.parent-lesson-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;margin:0;border:1px solid #e1e8ef;border-radius:8px;background:#e1e8ef}.parent-lesson-detail dl>div{min-width:0;padding:11px 13px;background:#fff}.parent-lesson-detail dt{margin-bottom:4px;color:#718398;font-size:10px}.parent-lesson-detail dd{overflow-wrap:anywhere;margin:0;color:#173963;font-size:12px;font-weight:700}.parent-lesson-quota{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;padding:12px 14px;border-block:1px solid #dce7f1;background:#f7fbff}.parent-lesson-quota span,.parent-lesson-quota small{color:#60758c;font-size:10px}.parent-lesson-quota b{grid-row:1 / 3;grid-column:2;color:#155fb7;font-size:18px}.parent-lesson-leave-form,.parent-lesson-leave-status{display:grid;gap:10px;border-top:1px solid #e1e8ef;padding-top:14px}.parent-lesson-leave-form h4,.parent-lesson-leave-status h4{margin:0;color:#173963;font-size:13px}.parent-lesson-leave-status p,.parent-lesson-leave-status small{margin:0;color:#60758c;font-size:10px}.parent-lesson-leave-form label,.parent-lesson-leave-status label{display:grid;gap:6px;color:#4a637c;font-size:10px}.parent-lesson-leave-form select,.parent-lesson-leave-form textarea,.parent-lesson-leave-status textarea{width:100%;border:1px solid #d9e4ee;border-radius:7px;background:#fff;color:#173963}.parent-lesson-leave-form button,.parent-lesson-leave-status button{justify-self:end}.parent-notifications-page{display:grid;gap:18px}.parent-notifications-toolbar{display:flex;gap:4px;border-bottom:1px solid #dce6ee}.parent-notifications-toolbar button{min-height:38px;padding:0 16px;border:0;border-bottom:2px solid transparent;background:transparent;color:#64758a;cursor:pointer}.parent-notifications-toolbar button.active{border-bottom-color:#d97706;color:#92400e;font-weight:700}.parent-notifications-list{display:grid;border:1px solid #dce6ee;border-radius:8px;overflow:hidden;background:#fff}.parent-notifications-list article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:104px;padding:18px;border-bottom:1px solid #e8eef3}.parent-notifications-list article:last-of-type{border-bottom:0}.parent-notifications-list article.is-unread{background:#f7fbff}.parent-notification-mark{width:8px;height:36px;border-radius:4px;background:#4472c4}.parent-notification-mark.is-leave{background:#d97706}.parent-notification-mark.is-attendance{background:#16856a}.parent-notifications-list header{display:flex;align-items:center;gap:8px}.parent-notifications-list header strong{color:#173963}.parent-notifications-list header em{padding:2px 7px;border-radius:7px;background:#e8f2ff;color:#1d5fa7;font-size:12px;font-style:normal}.parent-notifications-list p{margin:7px 0;color:#536a82;line-height:1.55}.parent-notifications-list small{color:#8796a7}@media(max-width:720px){.teacher-lesson-detail dl,.teacher-lesson-reschedule,.teacher-lesson-runtime-strip{grid-template-columns:1fr}.teacher-lesson-runtime-strip>span{border-right:0;border-bottom:1px solid #e1e9f3}.teacher-lesson-runtime-strip>span:last-child{border-bottom:0}.teacher-lesson-history li{grid-template-columns:1fr;gap:4px;padding:8px 0}.parent-lessons-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-lessons-summary>div:nth-child(2){border-right:0}.parent-lessons-summary>div:nth-child(-n+2){border-bottom:1px solid #e7edf3}.parent-lessons-toolbar{align-items:stretch;flex-direction:column}.parent-lessons-toolbar select{width:100%}.parent-lessons-tabs button{flex:1}.parent-lesson-detail dl{grid-template-columns:1fr}.parent-notifications-list article{grid-template-columns:8px minmax(0,1fr)}.parent-notifications-list article>button{grid-column:2;justify-self:start}}.schedule-preview-page{width:100%;min-width:0;display:grid;gap:14px;padding:14px 22px 26px;color:#173963}.schedule-preview-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.schedule-preview-eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:#607795;font-size:11px;font-weight:700}.schedule-preview-eyebrow span{width:6px;height:6px;border-radius:50%;background:#1267ef;box-shadow:0 0 0 4px #e8f2ff}.schedule-preview-header h1{margin:0;color:#102b54;font-size:26px;line-height:1.15}.schedule-preview-header p{margin:7px 0 0;color:#71839b;font-size:11px}.schedule-preview-header-actions{display:flex;align-items:center;gap:10px}.schedule-preview-primary,.schedule-preview-secondary{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 17px;border:1px solid #dce7f3;border-radius:8px;background:#fff;color:#315779;box-shadow:3px 5px 12px #214a7714;font-size:12px;font-weight:800}.schedule-preview-primary{border-color:#1768ef;background:#1267ef;color:#fff;box-shadow:0 8px 17px #1267ef3d,inset 0 1px #ffffff57}.schedule-preview-primary svg,.schedule-preview-secondary svg{width:18px;height:18px}.schedule-preview-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.schedule-preview-metric{min-width:0;min-height:94px;display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #e3ebf5;border-radius:8px;background:#fffffff7;box-shadow:6px 8px 17px #1f456f11,-4px -4px 10px #fffffff0}.schedule-preview-metric>span{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:8px;background:#eaf3ff;color:#1267ef}.schedule-preview-metric.is-green>span{background:#e8f8f1;color:#07945a}.schedule-preview-metric.is-orange>span{background:#fff2e3;color:#ef7914}.schedule-preview-metric.is-rose>span{background:#fff0f2;color:#df4862}.schedule-preview-metric svg{width:26px;height:26px}.schedule-preview-metric p,.schedule-preview-metric em{margin:0;color:#607795;font-size:10px;font-style:normal}.schedule-preview-metric strong{display:block;margin:5px 0;color:#102b54;font-size:25px;line-height:1}.schedule-preview-metric strong small{margin-left:5px;color:#4e6a8d;font-size:10px}.schedule-preview-metric em{overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-workspace{min-width:0;display:grid;grid-template-columns:minmax(760px,1fr) 288px;align-items:start;gap:13px}.schedule-preview-calendar-panel,.schedule-preview-side-panel{min-width:0;overflow:hidden;border:1px solid #e1eaf4;border-radius:8px;background:#fffffffa;box-shadow:6px 8px 18px #1c436d11,-4px -4px 12px #fffffff5}.schedule-preview-toolbar{min-height:62px;display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:14px;padding:9px 12px;border-bottom:1px solid #e7eef6}.schedule-preview-date-nav{display:flex;overflow:hidden;border:1px solid #dce6f1;border-radius:7px}.schedule-preview-date-nav button{min-width:38px;min-height:36px;padding:0 11px;border:0;border-right:1px solid #e0e8f2;background:#fff;color:#315779;font-size:11px;font-weight:800}.schedule-preview-date-nav button:last-child{border-right:0}.schedule-preview-date-nav button:first-child,.schedule-preview-date-nav button:last-child{font-size:20px;font-weight:500}.schedule-preview-toolbar>strong{color:#173963;font-size:12px;text-align:center}.schedule-preview-filters{display:flex;align-items:center;gap:8px}.schedule-preview-filters label{position:relative;display:flex;align-items:center}.schedule-preview-filters label span{position:absolute;left:10px;color:#7b8da4;font-size:9px;pointer-events:none}.schedule-preview-filters select{min-width:116px;height:36px;padding:0 27px 0 38px;border:1px solid #dce6f1;border-radius:7px;background:#fff;color:#315779;font-size:10px}.schedule-preview-alert{min-height:46px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;margin:10px 12px;padding:7px 10px;border:1px solid #ffd4da;border-radius:7px;background:#fff7f8;color:#a7364a}.schedule-preview-alert>svg{width:21px;height:21px}.schedule-preview-alert div{min-width:0}.schedule-preview-alert strong,.schedule-preview-alert span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-alert strong{font-size:10px}.schedule-preview-alert span{margin-top:3px;color:#9a5c68;font-size:9px}.schedule-preview-alert button{min-height:31px;padding:0 11px;border:1px solid #f3a9b5;border-radius:6px;background:#fff;color:#c63f56;font-size:9px;font-weight:800}.schedule-preview-calendar-scroll{overflow:auto;border-top:1px solid #e7eef6}.schedule-preview-calendar{min-width:950px;display:grid;grid-template-columns:58px repeat(7,minmax(126px,1fr));grid-template-rows:45px repeat(7,78px)}.schedule-preview-corner,.schedule-preview-day,.schedule-preview-time,.schedule-preview-cell{border-right:1px solid #e8eef5;border-bottom:1px solid #e8eef5}.schedule-preview-corner,.schedule-preview-day{background:#fbfdff}.schedule-preview-corner{display:grid;place-items:center;color:#95a4b6;font-size:8px}.schedule-preview-day{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;color:#526d8f}.schedule-preview-day strong{color:#173963;font-size:10px}.schedule-preview-day span{font-size:9px}.schedule-preview-day em{position:absolute;top:3px;right:5px;padding:2px 4px;border-radius:4px;background:#1267ef;color:#fff;font-size:7px;font-style:normal}.schedule-preview-day.is-today,.schedule-preview-cell.is-today{background:#f7fbff}.schedule-preview-time{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;padding-top:10px;color:#496482}.schedule-preview-time strong{font-size:9px}.schedule-preview-time span{color:#9aa8b8;font-size:7px}.schedule-preview-cell{min-width:0;display:grid;gap:4px;padding:4px;background:#fff}.schedule-preview-course{width:100%;min-width:0;min-height:67px;display:grid;align-content:center;gap:4px;padding:6px 7px;overflow:hidden;border:1px solid #a9cdfc;border-left:3px solid #2b7cf0;border-radius:6px;background:#f1f7ff;color:#254f7a;text-align:left}.schedule-preview-course.is-group{border-color:#9bdabc;border-left-color:#18a366;background:#eff9f4}.schedule-preview-course.is-assessment{border-color:#c6b9ee;border-left-color:#7358d7;background:#f7f4ff}.schedule-preview-course.is-conflict{border-color:#ef9eaa;border-left-color:#df4862;background:#fff5f6}.schedule-preview-course>span{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:4px}.schedule-preview-course strong,.schedule-preview-course b,.schedule-preview-course small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-course strong{min-width:0;color:#174f8f;font-size:9px}.schedule-preview-course b{color:#315779;font-size:8px}.schedule-preview-course small{color:#72869e;font-size:7px}.schedule-preview-course em{flex:0 0 auto;color:#0b9758;font-size:7px;font-style:normal}.schedule-preview-course.is-pending em{color:#e17112}.schedule-preview-course.is-conflict em{color:#d83e57}.schedule-preview-legend{min-height:43px;display:flex;align-items:center;gap:7px;padding:7px 13px;color:#607895;font-size:9px}.schedule-preview-legend strong{margin-right:4px;color:#315779}.schedule-preview-legend>span{width:11px;height:11px;margin-left:8px;border:1px solid #a9cdfc;border-radius:3px;background:#f1f7ff}.schedule-preview-legend>span.is-group{border-color:#9bdabc;background:#eff9f4}.schedule-preview-legend>span.is-assessment{border-color:#c6b9ee;background:#f7f4ff}.schedule-preview-legend>i{flex:1}.schedule-preview-legend small{font-size:8px}.schedule-preview-side{display:grid;gap:12px}.schedule-preview-side-panel{padding:13px}.schedule-preview-panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.schedule-preview-panel-title>div{display:flex;align-items:center;gap:8px}.schedule-preview-panel-title svg{width:18px;height:18px;color:#1267ef}.schedule-preview-panel-title strong{color:#173963;font-size:12px}.schedule-preview-panel-title>span{color:#8091a7;font-size:9px}.schedule-preview-load-row{display:grid;gap:7px;margin-top:12px}.schedule-preview-load-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.schedule-preview-load-row strong{color:#345779;font-size:9px}.schedule-preview-load-row span{color:#8292a6;font-size:8px}.schedule-preview-progress{height:5px;overflow:hidden;border-radius:3px;background:#e9eff6}.schedule-preview-progress i{height:100%;display:block;border-radius:inherit;background:#2a7bef}.schedule-preview-progress.is-orange i{background:#ef7f20}.schedule-preview-progress.is-green i{background:#16a166}.schedule-preview-progress.is-violet i{background:#7058d8}.schedule-preview-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.schedule-preview-room{min-width:0;min-height:72px;display:grid;align-content:center;gap:4px;padding:8px 9px;border:1px solid #dbe7f5;border-radius:7px;background:#f8fbff}.schedule-preview-room span,.schedule-preview-room em{overflow:hidden;color:#607895;font-size:8px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-room strong{color:#1662bd;font-size:17px}.schedule-preview-room.is-green{border-color:#cfeadd;background:#f4fbf7}.schedule-preview-room.is-green strong{color:#0c9158}.schedule-preview-room.is-orange{border-color:#f2dec5;background:#fff9f1}.schedule-preview-room.is-orange strong{color:#db7218}.schedule-preview-room.is-rose{border-color:#f1d1d7;background:#fff7f8}.schedule-preview-room.is-rose strong{color:#d6465e}.schedule-preview-todo{min-height:54px;display:grid;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:9px;border-top:1px solid #edf1f6}.schedule-preview-todo>span{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:#eaf3ff;color:#1267ef;font-size:11px;font-weight:900}.schedule-preview-todo>span.is-orange{background:#fff2e3;color:#e37817}.schedule-preview-todo>span.is-violet{background:#f0edff;color:#7058d8}.schedule-preview-todo strong,.schedule-preview-todo small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-preview-todo strong{color:#315779;font-size:9px}.schedule-preview-todo small{margin-top:3px;color:#8292a6;font-size:8px}.schedule-preview-todo>svg{width:14px;height:14px;color:#91a2b6}.schedule-preview-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.schedule-preview-form-grid .is-wide{grid-column:1 / -1}.schedule-preview-rule-list{display:grid;gap:8px}.schedule-preview-rule{min-height:64px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid #e2eaf4;border-radius:7px;background:#fbfdff}.schedule-preview-rule>span{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:#e9f8f1;color:#0a985c}.schedule-preview-rule svg{width:17px;height:17px}.schedule-preview-rule strong{color:#244d78;font-size:10px}.schedule-preview-rule p{margin:4px 0 0;color:#71859e;font-size:9px}.schedule-preview-rule em{padding:4px 7px;border-radius:5px;background:#eaf3ff;color:#1267ef;font-size:8px;font-style:normal}.schedule-preview-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.schedule-preview-detail>div{min-height:58px;display:grid;align-content:center;gap:6px;padding:9px 11px;border:1px solid #e2eaf4;border-radius:7px;background:#fbfdff}.schedule-preview-detail span{color:#7a8ca3;font-size:9px}.schedule-preview-detail strong{color:#244d78;font-size:11px}.auto-schedule-page .schedule-preview-primary:disabled{cursor:wait;opacity:.68}.schedule-preview-metric.is-violet>span{background:#f0edff;color:#7058d8}.auto-schedule-steps{min-width:0;min-height:72px;display:grid;grid-template-columns:minmax(150px,1fr) 44px minmax(150px,1fr) 44px minmax(150px,1fr) 44px minmax(150px,1fr);align-items:center;gap:8px;padding:10px 16px;border:1px solid #e2eaf4;border-radius:8px;background:#fffffff5;box-shadow:5px 7px 15px #1e456f0e}.auto-schedule-steps>div{min-width:0;display:flex;align-items:center;gap:10px}.auto-schedule-steps>div>b{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border:1px solid #d7e2ef;border-radius:50%;background:#f6f9fc;color:#8292a6;font-size:10px}.auto-schedule-steps>div.is-complete>b{border-color:#96d7b8;background:#eaf8f1;color:#07945a}.auto-schedule-steps>div.is-active>b{border-color:#1267ef;background:#1267ef;color:#fff;box-shadow:0 4px 10px #1267ef33}.auto-schedule-steps strong,.auto-schedule-steps small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-steps strong{color:#315779;font-size:10px}.auto-schedule-steps small{margin-top:4px;color:#8998aa;font-size:8px}.auto-schedule-steps>i{height:1px;background:#dce5ef}.auto-schedule-panel{min-width:0;overflow:hidden;border:1px solid #e1e9f3;border-radius:8px;background:#fffffff7;box-shadow:6px 8px 17px #1d436c0f,-4px -4px 10px #fffffff0}.auto-schedule-config-grid{min-width:0;display:grid;grid-template-columns:minmax(600px,1fr) 310px;align-items:stretch;gap:12px}.auto-schedule-stage-panel,.auto-schedule-rule-panel,.auto-schedule-result-side>.auto-schedule-panel{padding:14px}.auto-schedule-panel-heading{min-width:0;display:flex;align-items:center;gap:10px}.auto-schedule-panel-heading>span{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:7px;background:#eaf3ff;color:#1267ef}.auto-schedule-panel-heading svg{width:19px;height:19px}.auto-schedule-panel-heading>div{min-width:0}.auto-schedule-panel-heading strong,.auto-schedule-panel-heading small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-panel-heading strong{color:#173963;font-size:12px}.auto-schedule-panel-heading small{margin-top:4px;color:#7c8da4;font-size:8px}.auto-schedule-stage-fields{display:grid;grid-template-columns:minmax(170px,1.4fr) repeat(4,minmax(112px,1fr));gap:9px;margin-top:15px}.auto-schedule-stage-fields label{min-width:0}.auto-schedule-stage-fields label>span{display:block;margin:0 0 5px 2px;color:#647a96;font-size:8px;font-weight:700}.auto-schedule-stage-fields input,.auto-schedule-stage-fields select{width:100%;height:37px;padding:0 9px;border:1px solid #dce6f1;border-radius:7px;background:#fff;color:#315779;font-size:9px}.auto-schedule-stage-summary{min-height:42px;display:flex;align-items:center;gap:13px;margin-top:13px;padding:7px 11px;border:1px solid #d9e7f7;border-radius:7px;background:#f7fbff;color:#607895;font-size:9px}.auto-schedule-stage-summary strong{margin-right:3px;color:#1267ef;font-size:13px}.auto-schedule-stage-summary i{width:1px;height:20px;background:#dce6f1}.auto-schedule-rule-panel{display:grid;align-content:start;gap:0}.auto-schedule-rule-line{min-height:40px;display:grid;grid-template-columns:17px minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid #edf2f7}.auto-schedule-rule-line:first-of-type{margin-top:9px}.auto-schedule-rule-line:last-child{border-bottom:0}.auto-schedule-rule-line>svg{width:15px;height:15px;color:#0a9a5c}.auto-schedule-rule-line span{overflow:hidden;color:#456482;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-rule-line em{padding:3px 6px;border-radius:5px;background:#eaf3ff;color:#1267ef;font-size:7px;font-style:normal}.auto-schedule-rule-line em.is-red{background:#fff0f2;color:#d7465e}.auto-schedule-rule-line em.is-green{background:#e9f8f1;color:#078f57}.auto-schedule-children-panel>.auto-schedule-panel-heading{min-height:62px;padding:10px 14px;border-bottom:1px solid #e7edf5}.auto-schedule-table-scroll{overflow-x:auto}.auto-schedule-table{min-width:1120px}.auto-schedule-table-head,.auto-schedule-child-row{display:grid;grid-template-columns:140px 165px 82px minmax(350px,1fr) 120px 94px;align-items:center;gap:10px;padding:0 14px}.auto-schedule-table-head{min-height:38px;border-bottom:1px solid #e7edf5;background:#fbfdff;color:#607895;font-size:8px;font-weight:800}.auto-schedule-child-row{min-height:69px;border-bottom:1px solid #edf2f7}.auto-schedule-child-row:last-child{border-bottom:0}.auto-schedule-child{min-width:0;display:flex;align-items:center;gap:9px}.auto-schedule-child>b{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:50%;background:#eaf3ff;color:#1267ef;font-size:10px}.auto-schedule-child strong,.auto-schedule-child small,.auto-schedule-current strong,.auto-schedule-current small,.auto-schedule-resource strong,.auto-schedule-resource small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-child strong,.auto-schedule-current strong,.auto-schedule-resource strong{color:#315779;font-size:9px}.auto-schedule-child small,.auto-schedule-current small,.auto-schedule-resource small{margin-top:4px;color:#8191a5;font-size:8px}.auto-schedule-current,.auto-schedule-resource{min-width:0}.auto-schedule-session-select select{width:66px;height:32px;border:1px solid #dbe5f0;border-radius:6px;background:#fff;color:#315779;font-size:9px}.auto-schedule-window-chips{min-width:0;display:flex;flex-wrap:wrap;gap:5px}.auto-schedule-window-chips span{padding:4px 6px;border:1px solid #d8e7f8;border-radius:5px;background:#f3f8ff;color:#3a6795;font-size:7px;white-space:nowrap}.auto-schedule-window-chips em{color:#d54960;font-size:8px;font-style:normal}.auto-schedule-edit{min-height:31px;padding:0 9px;border:1px solid #cddcf0;border-radius:6px;background:#fff;color:#1267ef;font-size:8px;font-weight:800}.auto-schedule-generate-bar,.auto-schedule-review-bar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border:1px solid #dbe7f5;border-radius:8px;background:#f7fbff}.auto-schedule-generate-bar>div,.auto-schedule-review-bar>div{min-width:0;display:flex;align-items:center;gap:11px}.auto-schedule-generate-bar>div>svg,.auto-schedule-review-bar>div>svg{width:27px;height:27px;flex:0 0 27px;color:#1267ef}.auto-schedule-generate-bar strong,.auto-schedule-generate-bar small,.auto-schedule-review-bar strong,.auto-schedule-review-bar small{display:block}.auto-schedule-generate-bar strong,.auto-schedule-review-bar strong{color:#244d78;font-size:10px}.auto-schedule-generate-bar small,.auto-schedule-review-bar small{margin-top:4px;color:#71859e;font-size:8px}.auto-schedule-window-editor{display:grid;gap:7px}.auto-schedule-window-row{min-height:48px;display:grid;grid-template-columns:minmax(90px,1fr) 105px 20px 105px;align-items:center;gap:7px;padding:6px 9px;border:1px solid #e4eaf2;border-radius:7px;background:#fafcfe;opacity:.62}.auto-schedule-window-row.is-enabled{border-color:#cfe0f5;background:#f6faff;opacity:1}.auto-schedule-window-row label{display:flex;align-items:center;gap:8px;color:#315779;font-size:10px;font-weight:800}.auto-schedule-window-row input{width:15px;height:15px;accent-color:#1267ef}.auto-schedule-window-row select{height:33px;border:1px solid #dce5ef;border-radius:6px;background:#fff;color:#315779;font-size:9px}.auto-schedule-window-row i{color:#8292a6;font-size:9px;font-style:normal;text-align:center}.auto-schedule-result-grid{min-width:0;display:grid;grid-template-columns:minmax(760px,1fr) 280px;align-items:start;gap:12px}.auto-schedule-result-head{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid #e6edf5}.auto-schedule-result-head>span{flex:0 0 auto;padding:5px 8px;border-radius:5px;background:#fff2e3;color:#d96f14;font-size:8px;font-weight:800}.auto-schedule-day-scroll{overflow-x:auto}.auto-schedule-day-board{min-width:1050px;display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));background:#f9fbfd}.auto-schedule-day-column{min-width:0;min-height:480px;border-right:1px solid #e4ebf3}.auto-schedule-day-column:last-child{border-right:0}.auto-schedule-day-column>header{height:47px;display:flex;align-items:center;justify-content:center;gap:6px;border-bottom:1px solid #e4ebf3;background:#fbfdff}.auto-schedule-day-column>header span{color:#607895;font-size:8px}.auto-schedule-day-column>header strong{color:#173963;font-size:9px}.auto-schedule-day-column>header em{padding:2px 4px;border-radius:4px;background:#eaf3ff;color:#1267ef;font-size:7px;font-style:normal}.auto-schedule-day-column>div{display:grid;align-content:start;gap:7px;padding:7px}.auto-schedule-day-column>div>p{margin:24px 0;color:#9aa7b6;font-size:8px;text-align:center}.auto-schedule-lesson{min-width:0;min-height:92px;display:grid;align-content:center;gap:4px;padding:7px 8px;border:1px solid #a9cdfc;border-left:3px solid #2b7cf0;border-radius:6px;background:#f1f7ff;color:#315779;text-align:left}.auto-schedule-lesson.is-green{border-color:#9bdabc;border-left-color:#16a166;background:#eff9f4}.auto-schedule-lesson.is-orange{border-color:#efc99f;border-left-color:#e67b1b;background:#fff8ef}.auto-schedule-lesson.is-violet{border-color:#c5b8ed;border-left-color:#7058d8;background:#f7f4ff}.auto-schedule-lesson>span{display:flex;align-items:center;justify-content:space-between;gap:5px}.auto-schedule-lesson>span strong{color:#155dad;font-size:10px}.auto-schedule-lesson>span em{color:#8191a5;font-size:7px;font-style:normal}.auto-schedule-lesson b,.auto-schedule-lesson p,.auto-schedule-lesson small{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-lesson b{color:#244d78;font-size:9px}.auto-schedule-lesson p{color:#456482;font-size:8px}.auto-schedule-lesson small{color:#8191a5;font-size:7px}.auto-schedule-result-foot{min-height:43px;display:flex;align-items:center;gap:9px;padding:7px 13px;border-top:1px solid #e6edf5;color:#607895;font-size:8px}.auto-schedule-result-foot span{display:flex;align-items:center;gap:5px}.auto-schedule-result-foot i{width:10px;height:10px;border-radius:3px;background:#eaf3ff}.auto-schedule-result-foot i.is-green{background:#e7f7ef}.auto-schedule-result-foot i.is-violet{background:#f0edff}.auto-schedule-result-foot>b{flex:1}.auto-schedule-result-foot small{font-size:8px}.auto-schedule-result-side{display:grid;gap:12px}.auto-schedule-result-side .auto-schedule-panel-heading{margin-bottom:12px}.auto-schedule-check-line{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #edf2f7}.auto-schedule-check-line span{display:flex;align-items:center;gap:6px;color:#607895;font-size:8px}.auto-schedule-check-line svg{width:14px;height:14px;color:#07945a}.auto-schedule-check-line strong{color:#0a9158;font-size:8px}.auto-schedule-unassigned p{display:flex;align-items:center;justify-content:space-between;margin:0;padding:8px 0;border-top:1px solid #edf2f7;color:#456482;font-size:9px}.auto-schedule-unassigned button{width:100%;min-height:33px;margin-top:8px;border:1px solid #d1dff0;border-radius:6px;background:#fff;color:#1267ef;font-size:8px;font-weight:800}.auto-schedule-review-bar{background:#f5fbf8;border-color:#cfe9dc}.auto-schedule-review-bar>div>svg{color:#07945a}@media(max-width:1280px){.schedule-preview-workspace{grid-template-columns:1fr}.schedule-preview-side{grid-template-columns:repeat(3,minmax(0,1fr))}.auto-schedule-result-grid{grid-template-columns:1fr}.auto-schedule-result-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.schedule-preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-preview-toolbar{grid-template-columns:auto 1fr}.schedule-preview-filters{grid-column:1 / -1;justify-content:flex-end}.schedule-preview-side{grid-template-columns:1fr}.auto-schedule-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.auto-schedule-steps>i{display:none}.auto-schedule-steps small{display:none}.auto-schedule-config-grid{grid-template-columns:1fr}.auto-schedule-stage-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.auto-schedule-result-side{grid-template-columns:1fr}}@media(max-width:720px){.schedule-preview-page{padding:12px}.schedule-preview-header{align-items:flex-start;flex-direction:column}.schedule-preview-header-actions{width:100%}.schedule-preview-primary,.schedule-preview-secondary{flex:1}.schedule-preview-metrics,.schedule-preview-form-grid,.schedule-preview-detail{grid-template-columns:1fr}.schedule-preview-form-grid .is-wide{grid-column:auto}.auto-schedule-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.auto-schedule-stage-fields{grid-template-columns:1fr}.auto-schedule-stage-summary{align-items:flex-start;flex-direction:column}.auto-schedule-stage-summary i{width:100%;height:1px}.auto-schedule-generate-bar,.auto-schedule-review-bar{align-items:stretch;flex-direction:column}.auto-schedule-window-row{grid-template-columns:1fr 90px 14px 90px}}.scheduling-live-page{--schedule-ink: #173963;--schedule-muted: #71839b;--schedule-line: #dfe8f3;--schedule-blue: #1267ef;--schedule-soft-blue: #edf5ff;background:#f7faff}.scheduling-live-page button,.scheduling-live-page input,.scheduling-live-page select,.scheduling-live-page textarea{font:inherit}.scheduling-live-alert{margin:0}.scheduling-live-condition-grid,.scheduling-live-review-grid{min-width:0;display:grid;grid-template-columns:minmax(680px,1fr) 292px;align-items:start;gap:14px}.scheduling-live-condition-grid>div{min-width:0;display:grid;gap:14px}.scheduling-live-condition-grid>div>.auto-schedule-panel:first-child,.scheduling-live-condition-side>.auto-schedule-panel,.scheduling-live-review-side>.auto-schedule-panel{padding:15px}.scheduling-live-panel-action{margin-left:auto}.scheduling-live-panel-action>button{border:0;background:transparent;color:var(--schedule-blue);font-size:10px;font-weight:800;cursor:pointer}.scheduling-live-stage-fields{grid-template-columns:minmax(170px,1.4fr) repeat(3,minmax(130px,1fr));margin-top:14px}.scheduling-live-rule-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:13px;border:1px solid #e2eaf4;border-radius:7px;background:#f8fbff}.scheduling-live-rule-strip>div{min-width:0;display:flex;align-items:baseline;justify-content:center;gap:6px;padding:10px;border-right:1px solid #e2eaf4;color:#687e99;font-size:9px}.scheduling-live-rule-strip>div:last-child{border-right:0}.scheduling-live-rule-strip b{color:#1b5eaf;font-size:14px}.scheduling-live-program-panel>.auto-schedule-panel-heading{padding:14px 15px 12px;border-bottom:1px solid #e5ecf5}.scheduling-live-program-table{min-width:980px}.scheduling-live-program-head,.scheduling-live-program-row{display:grid;grid-template-columns:42px minmax(130px,1.05fr) minmax(150px,1.25fr) 64px minmax(270px,2fr) minmax(130px,1fr) 48px;align-items:center;column-gap:10px;padding:0 14px}.scheduling-live-program-head{min-height:34px;background:#f4f8fc;color:#768aa2;font-size:9px;font-weight:800}.scheduling-live-program-row{min-height:66px;border-top:1px solid #edf1f6;transition:background .16s ease,opacity .16s ease}.scheduling-live-program-row:hover{background:#fbfdff}.scheduling-live-program-row.is-disabled{background:#fafbfd;opacity:.58}.scheduling-live-program-row .auto-schedule-child>b{width:30px;height:30px;flex:0 0 30px;font-size:10px}.scheduling-live-program-row .auto-schedule-current,.scheduling-live-program-row .auto-schedule-resource{min-width:0}.scheduling-live-program-row .auto-schedule-current strong,.scheduling-live-program-row .auto-schedule-resource strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-check{width:18px;height:18px;position:relative;display:block;cursor:pointer}.scheduling-live-check input{position:absolute;opacity:0;pointer-events:none}.scheduling-live-check span{width:17px;height:17px;display:block;border:1px solid #b9c8d9;border-radius:4px;background:#fff}.scheduling-live-check input:checked+span{border-color:var(--schedule-blue);background:var(--schedule-blue);box-shadow:inset 0 0 0 3px #fff}.scheduling-live-sessions{color:#24588b;font-size:11px;text-align:center}.scheduling-live-program-row .auto-schedule-window-chips{flex-wrap:wrap;gap:4px}.scheduling-live-program-row .auto-schedule-window-chips span{padding:4px 6px;font-size:8px}.scheduling-live-table-footer{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border-top:1px solid #e5ecf5;color:#788ba2;font-size:9px}.scheduling-live-table-footer>div{display:flex;align-items:center;gap:7px}.scheduling-live-table-footer button{width:26px;height:26px;display:grid;place-items:center;border:1px solid #dce5ef;border-radius:6px;background:#fff;color:#315779;cursor:pointer}.scheduling-live-table-footer button:disabled{cursor:default;opacity:.42}.scheduling-live-table-footer b{min-width:24px;height:24px;display:grid;place-items:center;border-radius:5px;background:var(--schedule-blue);color:#fff}.scheduling-live-condition-side,.scheduling-live-review-side{min-width:0;display:grid;gap:12px}.scheduling-live-condition-side .auto-schedule-panel-heading,.scheduling-live-review-side .auto-schedule-panel-heading{margin-bottom:9px}.scheduling-live-readiness,.scheduling-live-validation{min-width:0;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:9px;padding:10px 0;border-top:1px solid #edf1f6}.scheduling-live-readiness>b,.scheduling-live-validation>b{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#e9f8f1;color:#07945a;font-size:9px}.scheduling-live-readiness span,.scheduling-live-readiness strong,.scheduling-live-readiness small{min-width:0;display:block}.scheduling-live-readiness strong{color:#315779;font-size:10px}.scheduling-live-readiness small{margin-top:3px;overflow:hidden;color:#8797aa;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-readiness.is-warning>b{background:#fff3e7;color:#e17816}.scheduling-baseline-panel{min-width:0}.scheduling-baseline-status{display:inline-grid;place-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#e9f8f1;color:#087448;font-size:8px;font-weight:900;letter-spacing:0}.scheduling-baseline-status.is-loading{background:#eaf3ff;color:var(--schedule-blue)}.scheduling-baseline-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.scheduling-baseline-stats>div{min-width:0;padding:8px 9px;border:1px solid #e3ebf5;border-radius:7px;background:#f8fbff}.scheduling-baseline-stats b,.scheduling-baseline-stats span{display:block}.scheduling-baseline-stats b{color:#1b4f86;font-size:15px;line-height:1}.scheduling-baseline-stats span{margin-top:4px;color:#7c8fa6;font-size:8px}.scheduling-baseline-resource-list{min-width:0;display:grid;gap:7px;margin-top:12px}.scheduling-baseline-resource-list>strong{color:#315779;font-size:10px}.scheduling-baseline-resource-list>div{min-width:0;display:grid;gap:5px;padding:8px 0;border-top:1px solid #edf1f6}.scheduling-baseline-resource-list span,.scheduling-baseline-resource-list b,.scheduling-baseline-resource-list small{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-baseline-resource-list b{color:#234b73;font-size:9px}.scheduling-baseline-resource-list small{margin-top:2px;color:#7e91a7;font-size:8px}.scheduling-baseline-resource-list ul{display:grid;gap:3px;margin:0;padding:0;list-style:none}.scheduling-baseline-resource-list li,.scheduling-baseline-resource-list p,.scheduling-baseline-resource-list em,.scheduling-baseline-footnote{margin:0;color:#8797aa;font-size:8px;font-style:normal;line-height:1.5}.scheduling-baseline-resource-list li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-baseline-footnote{margin-top:10px}.auto-schedule-baseline-hint{display:block;max-width:100%;margin-top:3px;overflow:hidden;color:#1768ef;font-size:8px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.auto-schedule-baseline-hint.is-warning{color:#d46d11}.scheduling-live-new-button{min-height:66px;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:10px;padding:12px 15px;border:1px dashed #b9cbe0;border-radius:8px;background:#fbfdff;color:#315779;text-align:left;cursor:pointer}.scheduling-live-new-button>span{grid-row:1 / 3;width:32px;height:32px;display:grid;place-items:center;border-radius:7px;background:#eaf3ff;color:var(--schedule-blue);font-size:17px}.scheduling-live-new-button strong{font-size:10px}.scheduling-live-new-button small{margin-top:3px;color:#8797aa;font-size:8px}.scheduling-live-empty,.scheduling-live-modal-note{margin:0;padding:14px;color:#7f90a5;font-size:10px;line-height:1.6}.scheduling-live-empty-state{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;color:#73869d;text-align:center}.scheduling-live-empty-state>svg{width:34px;height:34px;color:var(--schedule-blue)}.scheduling-live-empty-state strong{color:#315779;font-size:12px}.scheduling-live-empty-state span{max-width:520px;font-size:9px;line-height:1.7}.scheduling-live-review-toolbar{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 10px;border:1px solid var(--schedule-line);border-radius:8px;background:#fff;box-shadow:5px 7px 15px #1e456f0d}.scheduling-live-tabs,.scheduling-live-review-filters,.scheduling-live-week-nav{display:flex;align-items:center}.scheduling-live-tabs{gap:4px}.scheduling-live-tabs button{min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:0 11px;border:0;border-radius:6px;background:transparent;color:#667c96;font-size:9px;font-weight:800;cursor:pointer}.scheduling-live-tabs button svg{width:15px;height:15px}.scheduling-live-tabs button.active{background:#eaf3ff;color:var(--schedule-blue)}.scheduling-live-review-filters{min-width:0;justify-content:flex-end;gap:6px}.scheduling-live-review-filters>label{min-width:0;height:32px;display:flex;align-items:center;gap:4px;padding-left:8px;border:1px solid #dce6f1;border-radius:6px;background:#fff;color:#70849d}.scheduling-live-review-filters>label>svg{width:14px;height:14px}.scheduling-live-review-filters select{min-width:92px;height:30px;border:0;outline:0;background:transparent;color:#3f617f;font-size:9px}.scheduling-live-week-nav{height:32px;gap:7px;margin-left:3px;border:1px solid #dce6f1;border-radius:6px;background:#fff}.scheduling-live-week-nav button{width:30px;height:30px;display:grid;place-items:center;border:0;background:transparent;color:#35628d;cursor:pointer}.scheduling-live-week-nav button:disabled{color:#b4c0cd;cursor:default}.scheduling-live-week-nav svg{width:14px;height:14px}.scheduling-live-week-nav strong{color:#315779;font-size:9px;white-space:nowrap}.scheduling-live-board-panel{min-width:0;overflow-x:auto}.scheduling-live-calendar{min-width:920px;background:#fff}.scheduling-live-calendar-head,.scheduling-live-calendar-body{display:grid;grid-template-columns:56px repeat(7,minmax(118px,1fr))}.scheduling-live-calendar-head{height:48px;border-bottom:1px solid #dfe8f3;background:#f7faff}.scheduling-live-calendar-head>div{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #e3ebf4;color:#66809c}.scheduling-live-calendar-head strong{color:#315779;font-size:9px}.scheduling-live-calendar-head span{margin-top:3px;color:#8b9bad;font-size:8px}.scheduling-live-calendar-body{height:600px}.scheduling-live-time-axis,.scheduling-live-day-track{position:relative;min-width:0;border-right:1px solid #e3ebf4;background-color:#fff;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(8.333% - 1px),#edf1f6 calc(8.333% - 1px),#edf1f6 8.333%)}.scheduling-live-time-axis{background-color:#fbfcfe}.scheduling-live-time-axis>span{position:absolute;right:8px;z-index:1;color:#8596a9;font-size:8px;transform:translateY(-50%)}.scheduling-live-time-axis>span:first-child{transform:none}.scheduling-live-time-axis>span:last-child{transform:translateY(-100%)}.scheduling-live-day-track{overflow:hidden}.scheduling-live-lesson{position:absolute;z-index:2;min-width:0;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:5px 6px;border:1px solid #a9caee;border-left:3px solid #2677dc;border-radius:5px;background:#edf5ff;color:#244d78;text-align:left;cursor:pointer}.scheduling-live-lesson:hover{z-index:4;box-shadow:0 5px 12px #1b497a26}.scheduling-live-lesson strong,.scheduling-live-lesson span,.scheduling-live-lesson small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-lesson strong{font-size:8px}.scheduling-live-lesson span,.scheduling-live-lesson small{font-size:7px}.scheduling-live-lesson small{color:#69839e}.scheduling-live-lesson em{position:absolute;top:3px;right:3px;padding:2px 3px;border-radius:3px;background:#fff;color:#6754c8;font-size:6px;font-style:normal}.scheduling-live-lesson.is-green{border-color:#9bdabc;border-left-color:#16a166;background:#eff9f4}.scheduling-live-lesson.is-orange{border-color:#efc99f;border-left-color:#e67b1b;background:#fff8ef}.scheduling-live-lesson.is-violet{border-color:#c5b8ed;border-left-color:#7058d8;background:#f7f4ff}.scheduling-live-lesson.is-locked{box-shadow:inset 0 0 0 1px #6754c840}.scheduling-live-calendar-legend{min-height:43px;display:flex;align-items:center;gap:14px;padding:8px 14px;border-top:1px solid #dfe8f3;color:#6f8299;font-size:8px}.scheduling-live-calendar-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.scheduling-live-calendar-legend i{width:8px;height:8px;border-radius:2px;background:#2677dc}.scheduling-live-calendar-legend i.is-green{background:#16a166}.scheduling-live-calendar-legend i.is-orange{background:#e67b1b}.scheduling-live-calendar-legend i.is-violet{background:#7058d8}.scheduling-live-calendar-legend small{margin-left:auto;color:#94a1b1;white-space:nowrap}.scheduling-live-state,.scheduling-live-count{display:inline-flex;align-items:center;justify-content:center;min-height:23px;padding:0 8px;border-radius:5px;background:#e9f8f1;color:#078f57;font-size:8px;font-weight:800}.scheduling-live-state.is-error{background:#fff0f2;color:#d7465e}.scheduling-live-count{background:#fff3e7;color:#db7216}.scheduling-live-validation{grid-template-columns:22px minmax(0,1fr) auto;color:#526f8d;font-size:9px}.scheduling-live-validation>strong{color:#078f57;font-size:8px}.scheduling-live-validation.is-error>b{background:#fff0f2;color:#d7465e}.scheduling-live-validation.is-error>strong{color:#d7465e}.scheduling-live-unassigned-list{display:grid}.scheduling-live-unassigned-list>div{min-width:0;display:flex;align-items:center;gap:9px;padding:9px 0;border-top:1px solid #edf1f6}.scheduling-live-unassigned-list>div>b{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;border-radius:50%;background:#fff3e7;color:#d97015;font-size:9px}.scheduling-live-unassigned-list span,.scheduling-live-unassigned-list strong,.scheduling-live-unassigned-list small{min-width:0;display:block}.scheduling-live-unassigned-list strong{overflow:hidden;color:#315779;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-unassigned-list small,.scheduling-live-unassigned-list>p{margin:3px 0 0;color:#8797aa;font-size:8px;line-height:1.5}.scheduling-live-load-list{display:grid;gap:9px;padding-top:5px}.scheduling-live-load-list>div{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;align-items:center;gap:7px;color:#58728e;font-size:8px}.scheduling-live-load-list i{height:5px;overflow:hidden;border-radius:3px;background:#e9eef5}.scheduling-live-load-list i>b{height:100%;display:block;border-radius:inherit;background:#4d8ee8}.scheduling-live-load-list em{color:#315779;font-style:normal;text-align:right}.scheduling-live-load-list>p{margin:0;color:#8797aa;font-size:8px}.scheduling-runtime-panel .scheduling-live-panel-action button{min-height:24px;display:inline-flex;align-items:center;gap:5px;padding:0 8px;border:1px solid #d6e3f2;border-radius:6px;background:#fff;color:#315779;font:inherit;font-size:8px;font-weight:800;cursor:pointer}.scheduling-runtime-panel .scheduling-live-panel-action button:disabled{cursor:default;opacity:.55}.scheduling-runtime-panel .scheduling-live-panel-action svg{width:12px;height:12px}.scheduling-runtime-error{margin-bottom:8px;padding:7px 8px;border:1px solid #ffd2dc;border-radius:6px;background:#fff6f8;color:#c83f58;font-size:8px;line-height:1.5}.scheduling-runtime-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:10px}.scheduling-runtime-stats>div{min-width:0;padding:7px;border:1px solid #e3ebf5;border-radius:7px;background:#f8fbff}.scheduling-runtime-stats b,.scheduling-runtime-stats span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-runtime-stats b{color:#1b4f86;font-size:14px;line-height:1}.scheduling-runtime-stats span{margin-top:4px;color:#7c8fa6;font-size:8px}.scheduling-runtime-stats .is-alert{border-color:#f7cfb6;background:#fff8f2}.scheduling-runtime-stats .is-alert b{color:#cf6a12}.scheduling-runtime-section{min-width:0;display:grid;gap:7px;padding:10px 0;border-top:1px solid #edf1f6}.scheduling-runtime-section>strong{color:#315779;font-size:10px}.scheduling-runtime-section>p{margin:0;color:#8797aa;font-size:8px;line-height:1.5}.scheduling-runtime-item{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.scheduling-runtime-item span,.scheduling-runtime-item b,.scheduling-runtime-item small{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-runtime-item b{color:#244d78;font-size:9px}.scheduling-runtime-item small{margin-top:3px;color:#8797aa;font-size:8px}.scheduling-runtime-item button{min-height:24px;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 8px;border:1px solid #d6e3f2;border-radius:6px;background:#fff;color:#315779;font:inherit;font-size:8px;font-weight:800;cursor:pointer;white-space:nowrap}.scheduling-runtime-item button:disabled{cursor:default;opacity:.55}.scheduling-runtime-item button svg{width:12px;height:12px}.scheduling-runtime-item.is-leave>div{display:flex;gap:5px}.scheduling-runtime-item.is-leave button:first-child{border-color:#bfe8d2;background:#f2fbf6;color:#087448}.scheduling-runtime-item.is-leave button:last-child{border-color:#ffd2dc;background:#fff6f8;color:#c83f58}.scheduling-runtime-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding-top:10px;border-top:1px solid #edf1f6}.scheduling-runtime-foot span,.scheduling-runtime-foot b,.scheduling-runtime-foot small{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-runtime-foot b{color:#315779;font-size:9px}.scheduling-runtime-foot small{margin-top:3px;color:#8797aa;font-size:8px}.scheduling-runtime-foot em,.scheduling-runtime-foot a,.scheduling-runtime-foot button{min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border:0;border-radius:5px;background:#e9f8f1;color:#078f57;font:inherit;font-size:8px;font-style:normal;font-weight:800;text-decoration:none;white-space:nowrap}.scheduling-runtime-foot button{cursor:pointer}.scheduling-runtime-foot button:disabled{cursor:default;opacity:.55}.scheduling-runtime-quota{margin:7px 0 0;color:#8797aa;font-size:8px;line-height:1.5}.scheduling-live-review-notice.needs-validation{border-color:#efd6b6;background:#fffaf3}.scheduling-live-review-notice.needs-validation>div>svg{color:#dc7518}.scheduling-live-review-actions{display:flex;align-items:center;gap:8px}.scheduling-live-resource-board{min-height:540px;padding:15px}.scheduling-live-resource-board>header{display:flex;justify-content:space-between;padding-bottom:12px;color:#315779;font-size:11px}.scheduling-live-resource-board>header span{color:#8495a8;font-size:9px}.scheduling-live-resource-board>section{min-width:0;display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid #e7edf5}.scheduling-live-resource-board>section>div:first-child{display:flex;align-items:center;gap:9px}.scheduling-live-resource-board>section>div:first-child>b{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:50%;background:#eaf3ff;color:var(--schedule-blue);font-size:9px}.scheduling-live-resource-board>section>div:first-child strong,.scheduling-live-resource-board>section>div:first-child small{display:block}.scheduling-live-resource-board>section>div:first-child strong{color:#315779;font-size:9px}.scheduling-live-resource-board>section>div:first-child small{margin-top:3px;color:#8797aa;font-size:8px}.scheduling-live-resource-cards{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:7px}.scheduling-live-resource-cards>button{min-width:0;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 10px;border:1px solid #bbd2ec;border-left:3px solid #2677dc;border-radius:6px;background:#f3f8ff;color:#315779;text-align:left;cursor:pointer}.scheduling-live-resource-cards>button.is-green{border-left-color:#16a166;background:#f1faf6}.scheduling-live-resource-cards>button.is-orange{border-left-color:#e67b1b;background:#fff8f0}.scheduling-live-resource-cards>button.is-violet{border-left-color:#7058d8;background:#f7f5ff}.scheduling-live-resource-cards strong,.scheduling-live-resource-cards span,.scheduling-live-resource-cards small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-resource-cards strong{font-size:8px}.scheduling-live-resource-cards span{font-size:9px}.scheduling-live-resource-cards small{color:#7e90a5;font-size:8px}.scheduling-live-resource-cards em{position:absolute;top:6px;right:6px;color:#6754c8;font-size:7px;font-style:normal}.scheduling-live-window-editor{display:grid;gap:7px}.scheduling-live-window-editor>div{display:grid;grid-template-columns:minmax(96px,1fr) 110px 18px 110px;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e4ebf4;border-radius:7px;background:#fafcfe}.scheduling-live-window-editor>div.is-enabled{border-color:#b9d5f6;background:#f3f8ff}.scheduling-live-window-editor label{display:flex;align-items:center;gap:7px;color:#315779;font-size:10px;font-weight:800}.scheduling-live-window-editor input[type=time]{min-width:0;height:32px;padding:0 7px;border:1px solid #dce6f1;border-radius:6px;background:#fff;color:#315779;font-size:9px}.scheduling-live-window-editor i{color:#8797aa;font-size:9px;font-style:normal;text-align:center}.scheduling-live-history{display:grid;gap:7px}.scheduling-live-history>button{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid #e0e8f2;border-radius:7px;background:#fff;color:#315779;text-align:left;cursor:pointer}.scheduling-live-history>button.active{border-color:#a7c9f4;background:#f1f7ff}.scheduling-live-history>button span,.scheduling-live-history>button strong,.scheduling-live-history>button small{min-width:0;display:block}.scheduling-live-history>button strong{font-size:10px}.scheduling-live-history>button small{margin-top:4px;color:#8293a7;font-size:8px}.scheduling-live-history>button em{padding:4px 7px;border-radius:5px;background:#eaf3ff;color:var(--schedule-blue);font-size:8px;font-style:normal;font-weight:800;white-space:nowrap}.scheduling-live-history>.scheduling-live-history-new{justify-content:center;border-style:dashed;color:var(--schedule-blue);font-weight:800}.scheduling-live-assignment-modal{display:grid;gap:14px}.scheduling-live-assignment-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #e1e9f3;border-radius:7px;background:#f8fbff}.scheduling-live-assignment-summary>div{min-width:0;padding:10px 12px;border-right:1px solid #e1e9f3;border-bottom:1px solid #e1e9f3}.scheduling-live-assignment-summary>div:nth-child(2n){border-right:0}.scheduling-live-assignment-summary>div:nth-last-child(-n+2){border-bottom:0}.scheduling-live-assignment-summary span,.scheduling-live-assignment-summary strong{display:block}.scheduling-live-assignment-summary span{color:#7f91a6;font-size:8px}.scheduling-live-assignment-summary strong{margin-top:4px;overflow-wrap:anywhere;color:#315779;font-size:10px}.scheduling-live-assignment-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.scheduling-live-assignment-fields label{min-width:0;display:grid;gap:5px}.scheduling-live-assignment-fields label.is-wide{grid-column:1 / -1}.scheduling-live-assignment-fields label>span{color:#607795;font-size:9px;font-weight:800}.scheduling-live-assignment-fields input,.scheduling-live-assignment-fields select,.scheduling-live-assignment-fields textarea{width:100%;min-width:0;border:1px solid #dce6f1;border-radius:6px;background:#fff;color:#315779;font-size:9px}.scheduling-live-assignment-fields input,.scheduling-live-assignment-fields select{height:36px;padding:0 8px}.scheduling-live-assignment-fields textarea{resize:vertical;padding:8px}.scheduling-live-assignment-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px}.scheduling-live-assignment-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.scheduling-live-assignment-actions .btn svg{width:15px;height:15px}.scheduling-weekly-panel,.scheduling-teacher-panel{padding:15px}.scheduling-weekly-hours{display:grid;gap:6px;margin-top:12px}.scheduling-weekly-hours>div{min-width:0;display:grid;grid-template-columns:22px 44px 88px 14px 88px 60px 88px 14px 88px;align-items:center;gap:7px;padding:7px 9px;border:1px solid #e5ecf5;border-radius:6px;background:#f8fafc;color:#8a99aa}.scheduling-weekly-hours>div.is-enabled{background:#fff;color:#315779}.scheduling-weekly-hours input[type=time]{width:100%;min-width:0;height:30px;padding:0 6px;border:1px solid #dbe5f0;border-radius:5px;background:#fff;color:#315779;font-size:9px}.scheduling-weekly-hours i{color:#8798aa;font-size:8px;font-style:normal;text-align:center}.scheduling-weekly-break-toggle{display:flex;align-items:center;gap:5px;font-size:9px;cursor:pointer}.scheduling-teacher-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.scheduling-teacher-selector>label{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;padding:9px;border:1px solid #e0e8f2;border-radius:6px;background:#f8fafc;cursor:pointer}.scheduling-teacher-selector>label.is-selected{border-color:#9cc3f5;background:#f1f7ff}.scheduling-teacher-selector input{position:absolute;opacity:0}.scheduling-teacher-selector b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#dfeeff;color:#1267ef;font-size:10px}.scheduling-teacher-selector span,.scheduling-teacher-selector strong,.scheduling-teacher-selector small{min-width:0;display:block}.scheduling-teacher-selector strong{color:#254f7a;font-size:10px}.scheduling-teacher-selector small{margin-top:3px;overflow:hidden;color:#7a8da4;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.scheduling-live-session-input{display:grid;grid-template-columns:34px auto;align-items:center;justify-content:center;gap:4px;color:#607a97;font-size:8px}.scheduling-live-session-input input{width:34px;height:28px;padding:0 3px;border:1px solid #cfdeee;border-radius:5px;color:#24588b;text-align:center}.scheduling-live-program-row .auto-schedule-child a,.scheduling-live-assignment-summary a,.scheduling-live-lesson a,.scheduling-impact-panel a{color:#1267ef;font-weight:800;text-decoration:none}.scheduling-live-lesson a{color:inherit;text-decoration:underline;text-decoration-color:#1267ef59}.scheduling-absence-list{display:grid}.scheduling-absence-list>div{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:start;gap:7px;padding:9px 0;border-top:1px solid #edf1f6}.scheduling-absence-list>div>b{padding:3px 4px;border-radius:4px;background:#fff1e9;color:#c45b23;font-size:8px;text-align:center}.scheduling-absence-list span,.scheduling-absence-list strong,.scheduling-absence-list small,.scheduling-absence-list em{min-width:0;display:block}.scheduling-absence-list strong{color:#315779;font-size:9px}.scheduling-absence-list small,.scheduling-absence-list em,.scheduling-absence-list>p{margin-top:3px;color:#7c8ea4;font-size:8px;font-style:normal}.scheduling-absence-list button{width:22px;height:22px;border:0;background:transparent;color:#9aa8b7;cursor:pointer}.scheduling-absence-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.scheduling-absence-form>label{min-width:0;display:grid;gap:5px}.scheduling-absence-form>label>span{color:#687e99;font-size:9px;font-weight:800}.scheduling-absence-form input,.scheduling-absence-form select,.scheduling-absence-form textarea{width:100%;min-width:0;padding:9px 10px;border:1px solid #dce5ef;border-radius:6px;background:#fff;color:#315779}.scheduling-absence-form .is-wide,.scheduling-absence-type{grid-column:1 / -1}.scheduling-absence-type{display:grid;grid-template-columns:repeat(2,1fr);padding:3px;border-radius:6px;background:#eef3f9}.scheduling-absence-type button{min-height:34px;border:0;border-radius:5px;background:transparent;color:#6e829a;cursor:pointer}.scheduling-absence-type button.active{background:#fff;color:#1267ef;box-shadow:0 2px 7px #2b4d751f}.scheduling-batch-report{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border:1px solid #dce7f2;border-radius:7px;background:#fff}.scheduling-batch-report.has-impact{border-color:#efc7a8;background:#fffaf5}.scheduling-batch-report>div{min-width:0;display:flex;align-items:center;gap:10px}.scheduling-batch-report svg{width:20px;height:20px;color:#1267ef}.scheduling-batch-report span strong,.scheduling-batch-report span small{display:block}.scheduling-batch-report span strong{color:#234d78;font-size:11px}.scheduling-batch-report span small{margin-top:3px;color:#71839b;font-size:8px}.scheduling-batch-report b{min-width:54px;color:#24588b;font-size:15px;text-align:center}.scheduling-batch-report b small{display:block;margin-top:2px;color:#8192a5;font-size:7px}.scheduling-impact-panel>div:last-child{display:grid;gap:7px}.scheduling-impact-panel p{min-width:0;display:grid;grid-template-columns:48px minmax(0,1fr);gap:3px 7px;margin:0;padding-top:7px;border-top:1px solid #edf1f6;font-size:8px}.scheduling-impact-panel p small{grid-column:2;color:#8b6a57}@media(max-width:1320px){.scheduling-live-condition-grid,.scheduling-live-review-grid{grid-template-columns:minmax(620px,1fr) 268px}.scheduling-live-review-toolbar{align-items:stretch;flex-direction:column}.scheduling-live-review-filters{justify-content:flex-start}}@media(max-width:1080px){.scheduling-live-condition-grid,.scheduling-live-review-grid{grid-template-columns:1fr}.scheduling-live-condition-side,.scheduling-live-review-side{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduling-live-condition-side>:last-child,.scheduling-live-review-side>:last-child{grid-column:1 / -1}.scheduling-live-stage-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.scheduling-live-condition-side,.scheduling-live-review-side{grid-template-columns:1fr}.scheduling-live-condition-side>:last-child,.scheduling-live-review-side>:last-child{grid-column:auto}.scheduling-live-stage-fields,.scheduling-live-rule-strip,.scheduling-live-assignment-fields{grid-template-columns:1fr}.scheduling-live-rule-strip>div{justify-content:flex-start;border-right:0;border-bottom:1px solid #e2eaf4}.scheduling-live-rule-strip>div:last-child{border-bottom:0}.scheduling-live-tabs,.scheduling-live-review-filters{overflow-x:auto;justify-content:flex-start}.scheduling-live-tabs button,.scheduling-live-review-filters>label,.scheduling-live-week-nav{flex:0 0 auto}.scheduling-live-window-editor>div{grid-template-columns:1fr 90px 14px 90px}.scheduling-live-resource-board>section{grid-template-columns:1fr}.scheduling-live-resource-cards,.scheduling-live-assignment-summary{grid-template-columns:1fr}.scheduling-live-assignment-summary>div{border-right:0;border-bottom:1px solid #e1e9f3}.scheduling-live-assignment-summary>div:nth-last-child(-n+2){border-bottom:1px solid #e1e9f3}.scheduling-live-assignment-summary>div:last-child{border-bottom:0}.scheduling-live-assignment-actions{grid-template-columns:1fr}.scheduling-live-assignment-actions>span{display:none}.scheduling-teacher-selector,.scheduling-absence-form{grid-template-columns:1fr}.scheduling-absence-form .is-wide,.scheduling-absence-type{grid-column:auto}.scheduling-weekly-hours{overflow-x:auto}.scheduling-weekly-hours>div{min-width:680px}.scheduling-batch-report,.scheduling-batch-report>div{align-items:stretch;flex-direction:column}}.teacher-upload-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:24px;padding:14px 18px}.teacher-upload-dropzone{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border:1px dashed #79aaf3;border-radius:8px;background:#fbfdff;text-align:center}.teacher-upload-cloud{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#eaf3ff;color:#1267ef;font-size:35px;font-weight:800}.teacher-upload-dropzone h2,.teacher-upload-fields h2,.teacher-upload-list-card>h2{margin:11px 0 0;color:#173963;font-size:15px}.teacher-upload-dropzone p{margin:7px 0 13px;color:#7287a3;font-size:10px}.teacher-upload-picker{min-height:37px;display:inline-flex;align-items:center;justify-content:center;padding:0 25px;border-radius:7px;background:#1267f3;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.teacher-upload-picker input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.teacher-upload-fields{display:grid;align-content:start;gap:10px;padding-left:20px;border-left:1px solid #e5edf6}.teacher-upload-fields h2{margin:0 0 2px}.teacher-upload-fields .form-field{margin:0}.teacher-upload-fields .form-field label{margin-bottom:4px;color:#4b6788;font-size:10px}.teacher-upload-fields input,.teacher-upload-fields select{min-height:38px;border-color:#dfe8f3;border-radius:7px;font-size:10px}.teacher-upload-fields .teacher-workspace-primary{width:fit-content;min-height:38px;margin-top:2px}.teacher-upload-list-card>h2{margin:0;padding:13px 18px;border-bottom:1px solid #e5edf6}.teacher-upload-list-card .data-table-wrapper,.teacher-upload-list-card .data-table-card{border:0;border-radius:0;box-shadow:none}.teacher-upload-list-card .data-table-toolbar{margin:0;padding:10px 14px;border-bottom:1px solid #e5edf6}.teacher-upload-list-card th{height:43px;padding:0 13px;background:#fbfdff;color:#345276;font-size:10px}.teacher-upload-list-card td{padding:10px 13px;color:#34587f;font-size:10px}@media(max-width:1000px){.teacher-upload-panel{grid-template-columns:1fr}.teacher-upload-fields{padding-left:0;border-top:1px solid #e5edf6;border-left:0;padding-top:16px}}.teacher-campaign-create,.teacher-campaign-list,.teacher-campaign-detail{padding:14px 16px}.teacher-campaign-create h3,.teacher-campaign-list h3,.teacher-campaign-detail h3{color:#173963;font-size:14px}.teacher-campaign-create label{color:#4b6788;font-size:10px!important}.teacher-campaign-create input,.teacher-campaign-create select{min-height:38px;border:1px solid #dfe8f3;border-radius:7px;color:#34587f;font-size:10px}.teacher-campaign-create .btn-primary{min-height:38px;border-radius:7px;background:#1267f3}.teacher-campaign-list{overflow-x:auto}.teacher-campaign-list table{min-width:1050px}.teacher-campaign-list th,.teacher-campaign-detail th{height:43px;padding:0 12px;background:#fbfdff;color:#345276;font-size:10px}.teacher-campaign-list td,.teacher-campaign-detail td{padding:10px 12px;color:#34587f;font-size:10px}.teacher-campaign-list code,.teacher-campaign-detail code{color:#34587f;font-size:9px!important}.teacher-campaign-list .btn-sm,.teacher-campaign-detail .btn-sm{min-height:31px;border-radius:7px;font-size:9px}.teacher-report-overview{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:13px}.teacher-report-chart-card,.teacher-report-distribution{padding:14px 18px}.teacher-report-chart-card header,.teacher-report-distribution header,.teacher-report-list-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-report-chart-card h2,.teacher-report-distribution h2,.teacher-report-list-card h2{margin:0;color:#173963;font-size:14px}.teacher-report-chart-card p,.teacher-report-distribution p,.teacher-report-list-card p{margin:4px 0 0;color:#7589a4;font-size:9px}.teacher-report-chart-card select{min-height:34px;border:1px solid #dfe8f3;border-radius:7px;color:#456483;font-size:10px}.teacher-report-chart-card svg{width:100%;height:180px;margin-top:6px;overflow:visible}.teacher-report-chart-card .grid path{fill:none;stroke:#e8eef5;stroke-width:1}.teacher-report-chart-card .area{fill:#1267f317}.teacher-report-chart-card .line{fill:none;stroke:#1267f3;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.teacher-report-chart-card circle{fill:#fff;stroke:#1267f3;stroke-width:3}.teacher-report-chart-card .labels{fill:#7589a4;font-size:10px}.teacher-report-distribution>div{min-height:184px;display:flex;align-items:center;justify-content:center;gap:22px}.teacher-report-ring{width:118px;height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:conic-gradient(#1267f3 0,#1267f3 38%,#14ad68 38%,#14ad68 69%,#f28b24 69%,#f28b24 88%,#7058ec 88%,#7058ec);box-shadow:inset 0 0 0 21px #fff}.teacher-report-ring strong{color:#173963;font-size:22px}.teacher-report-ring small{color:#7589a4;font-size:9px}.teacher-report-distribution ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.teacher-report-distribution li{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;color:#4a6788;font-size:9px}.teacher-report-distribution li i{width:8px;height:8px;border-radius:2px;background:#1267f3}.teacher-report-distribution li i.is-green{background:#14ad68}.teacher-report-distribution li i.is-orange{background:#f28b24}.teacher-report-distribution li i.is-violet{background:#7058ec}.teacher-report-list-card{overflow-x:auto}.teacher-report-list-card>header{min-width:950px;min-height:58px;padding:10px 18px;border-bottom:1px solid #e5edf6}.teacher-report-list-card>header label{min-height:37px;display:flex;align-items:center;gap:7px;width:260px;padding:0 10px;border:1px solid #dfe8f3;border-radius:7px}.teacher-report-list-card>header input{width:100%;border:0;outline:0;color:#34587f;font-size:10px}.teacher-report-list-head,.teacher-report-row{min-width:950px;display:grid;grid-template-columns:1.2fr 1.4fr 1fr .85fr .75fr .75fr;align-items:center;gap:12px;padding:0 18px}.teacher-report-list-head{min-height:43px;border-bottom:1px solid #e5edf6;background:#fbfdff;color:#345276;font-size:10px;font-weight:800}.teacher-report-row{min-height:62px;border-bottom:1px solid #edf2f7;color:#456483;font-size:10px}.teacher-report-row:hover{background:#f7fbff}.teacher-report-row>strong{color:#173963}.teacher-report-student{display:flex;align-items:center;gap:9px}.teacher-report-student .teacher-student-avatar{width:38px;height:38px;flex:0 0 38px;background-image:url(/assets/teacher/student-avatar-sprite.png);background-repeat:no-repeat;background-size:300% 200%}.teacher-report-student strong{color:#173963;font-size:10px}.teacher-report-student small{display:block;margin-top:3px;color:#7589a4;font-size:8px}.teacher-report-status{width:fit-content;padding:4px 8px;border-radius:6px;background:#eaf8f1;color:#0a9655;font-weight:800}.teacher-report-status.is-1{background:#fff4e5;color:#e87513}.teacher-report-status.is-3{background:#f0f4f8;color:#62758c}.teacher-report-row>a{width:fit-content;padding:7px 10px;border:1px solid #dfe8f3;border-radius:7px;color:#1267e9;font-weight:800;text-decoration:none}@media(max-width:980px){.teacher-report-overview{grid-template-columns:1fr}}.teacher-training-detail-page,.teacher-training-plan-page{align-content:start}.teacher-training-detail-page>div:first-child,.teacher-training-plan-page>div:first-child{min-height:70px;padding:2px}.teacher-training-detail-page>div:first-child h1,.teacher-training-plan-page>div:first-child h1{color:#102b54;font-size:25px}.teacher-training-detail-page .page-subtitle,.teacher-training-plan-page .page-subtitle{color:#71829c;font-size:11px}.teacher-training-detail-page .card,.teacher-training-plan-page .card{margin-top:0!important;border:1px solid #e4edf7;border-radius:10px;background:#fffffff5!important;box-shadow:7px 8px 17px #1e497812,-5px -5px 13px #fffffffa}.teacher-training-detail-page .btn,.teacher-training-plan-page .btn{border-radius:7px;font-size:10px}.teacher-training-detail-page .btn-primary,.teacher-training-plan-page .btn-primary{border-color:#1267f3;background:#1267f3}.teacher-training-detail-page .card>b,.teacher-training-plan-page .card>b{color:#173963;font-size:13px}.teacher-training-detail-page .card a,.teacher-training-plan-page .card a{border-color:#e2ebf5!important;color:#34587f!important}.teacher-ados-steps{min-height:70px;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;border:1px solid #e4edf7;border-radius:10px;background:#fff;box-shadow:7px 8px 17px #1e49780e}.teacher-ados-steps span{display:flex;align-items:center;gap:7px;color:#7589a4;font-size:10px;font-weight:800}.teacher-ados-steps span b{width:26px;height:26px;display:grid;place-items:center;border:1px solid #dce7f3;border-radius:50%;background:#f5f8fb}.teacher-ados-steps span.active{color:#1267e9}.teacher-ados-steps span.active b{border-color:#1267f3;background:#1267f3;color:#fff}.teacher-ados-steps i{width:min(90px,7vw);height:2px;background:#e2eaf3}.teacher-ados-selector{min-height:330px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:30px;padding:28px 34px}.teacher-ados-selector-copy{padding-right:30px;border-right:1px solid #e5edf6}.teacher-ados-selector-copy>span{width:58px;height:58px;display:grid;place-items:center;border-radius:12px;background:#eaf3ff;color:#1267f3;font-size:28px;font-weight:900}.teacher-ados-selector-copy h2{margin:18px 0 0;color:#173963;font-size:20px}.teacher-ados-selector-copy p{max-width:580px;color:#687f9e;font-size:11px;line-height:1.7}.teacher-ados-selector-copy ul{display:grid;gap:10px;padding-left:20px;color:#456483;font-size:10px}.teacher-ados-select-form{display:grid;align-content:center;gap:9px}.teacher-ados-select-form label{color:#34587f;font-size:10px;font-weight:800}.teacher-ados-select-form label span{margin-left:3px;color:#e25252}.teacher-ados-select-form select,.teacher-ados-select-form input{min-height:42px;border-color:#dfe8f3;border-radius:7px;font-size:11px}.teacher-ados-select-form p{margin:3px 0 0;color:#7c8fa8;font-size:9px}@media(max-width:850px){.teacher-ados-selector{grid-template-columns:1fr}.teacher-ados-selector-copy{padding-right:0;padding-bottom:22px;border-right:0;border-bottom:1px solid #e5edf6}.teacher-ados-steps{flex-wrap:wrap}.teacher-ados-steps i{display:none}}.teacher-survey-page .page-header{min-height:70px;margin:0;padding:2px}.teacher-survey-page .page-header h1{color:#102b54;font-size:25px}.teacher-survey-page .page-subtitle{color:#71829c;font-size:11px}.teacher-survey-page>.card{width:100%;max-width:none!important;margin:0;padding:16px 20px;border:1px solid #e4edf7;border-radius:10px;background:#fffffff5;box-shadow:7px 8px 17px #1e49780f,-5px -5px 13px #fffffffa}.teacher-survey-page>.card h3{margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #e7eef6;color:#173963;font-size:14px}.teacher-survey-page .form-field label{color:#34587f;font-size:10px;font-weight:800}.teacher-survey-page input,.teacher-survey-page select,.teacher-survey-page textarea{border-color:#dfe8f3;border-radius:7px;color:#34587f;font-size:10px}.teacher-survey-page .btn{border-radius:7px;font-size:10px}.teacher-survey-page .btn-primary{background:#1267f3}.teacher-assessment-list-card .data-table-wrapper,.teacher-assessment-list-card .data-table-card{border:0;border-radius:0;box-shadow:none}.teacher-assessment-list-card .data-table-toolbar{margin:0;padding:10px 14px;border-bottom:1px solid #e5edf6}.teacher-assessment-list-card th{height:43px;padding:0 14px;background:#fbfdff;color:#345276;font-size:10px}.teacher-assessment-list-card td{padding:11px 14px;color:#34587f;font-size:10px}.teacher-assessment-list-card .btn-sm{min-height:32px;border-radius:7px;background:#1267f3;font-size:10px}.teacher-report-new-page,.teacher-report-detail-page{max-width:none;padding-bottom:30px}.teacher-report-new-page>div:first-child,.teacher-report-detail-page>div:first-child{min-height:52px;padding:2px 2px 0}.teacher-report-new-page>div:first-child h1,.teacher-report-detail-page>div:first-child h1{color:#102d57;font-size:25px;font-weight:900;letter-spacing:0}.teacher-report-new-page>.card,.teacher-report-detail-page>.card{overflow:hidden;border:1px solid #dfe9f4;border-radius:10px;background:#fffffffa;box-shadow:0 6px 16px #224c7b14}.teacher-report-new-page>.card:first-of-type,.teacher-report-detail-page>.card:first-of-type{margin-top:12px}.teacher-report-new-page .card>div:first-child,.teacher-report-detail-page .card>div:first-child{color:#183b68}.teacher-report-new-page input[type=file],.teacher-report-new-page textarea{border-color:#d7e3f0!important;border-radius:7px!important;background:#fbfdff}.teacher-report-new-page .btn,.teacher-report-detail-page .btn{border-radius:7px}.teacher-report-new-page .btn-primary,.teacher-report-detail-page .btn-primary{border-color:#1267f3;background:#1267f3;box-shadow:0 5px 12px #1267f32e}.teacher-report-detail-page .ai-stream,.teacher-report-detail-page .rich-text{color:#29496e;font-size:14px}.teacher-report-detail-page>div[style*=background]{border-radius:8px!important}@media(max-width:1180px){.teacher-workspace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-task-toolbar{grid-template-columns:1fr 1fr}.teacher-task-search{justify-self:stretch;width:100%}}@media(max-width:720px){body .portal-layout-teacher .portal-main>.teacher-workspace-page{padding:14px}.teacher-workspace-header{align-items:flex-start;flex-direction:column}.teacher-workspace-metrics,.teacher-task-toolbar{grid-template-columns:1fr}.teacher-task-tabs{overflow-x:auto}}.portal-layout-teacher .teacher-topbar{min-height:72px;justify-content:flex-end;padding:12px 36px;border-bottom:0;background:#f8f7ffe0}.portal-layout-teacher .teacher-search{width:min(390px,42vw);min-height:44px;border-radius:22px;box-shadow:none}.portal-layout-teacher .teacher-icon-button,.portal-layout-teacher .teacher-topbar-user{border-color:transparent;background:transparent;box-shadow:none}.portal-layout-teacher .teacher-topbar-user{background:#efeaff;color:#6846ee}.portal-layout-teacher .nav-item.active{border-color:#e5dcff;background:linear-gradient(90deg,#f0ebff,#f4f0ff);color:#6744ed;box-shadow:0 8px 18px #6744ed14}.portal-layout-teacher .nav-item.active .teacher-nav-icon{background:transparent;color:#6744ed}.portal-layout-teacher .portal-main>.teacher-dashboard{max-width:none;padding-top:10px}.teacher-dashboard-hero{min-height:74px;padding:0 4px 12px;border:0;border-radius:0;background:transparent;box-shadow:none}.portal-layout-teacher .teacher-dashboard-hero h1{font-size:30px}.portal-layout-teacher .teacher-dashboard-hero p{margin-top:8px;color:#737b98;font-size:15px}.teacher-dashboard-hero-actions{align-self:start}.teacher-primary-action{min-height:44px;padding:0 20px;border-radius:8px}.teacher-metric-grid,.teacher-skeleton-grid{gap:18px;margin-top:8px}.portal-layout-teacher .teacher-metric-card{min-height:138px;align-items:center;gap:20px;padding:22px;border-radius:16px}.portal-layout-teacher .teacher-metric-icon{width:64px;height:64px;flex:0 0 64px;border-radius:16px}.teacher-metric-icon svg{width:31px;height:31px;stroke-width:1.7}.teacher-metric-card span:not(.teacher-metric-icon){color:#4f5876;font-size:14px}.teacher-metric-card strong{margin-top:8px;font-size:31px}.teacher-metric-card strong b{margin-left:6px;color:#303956;font-size:14px;font-weight:500}.teacher-metric-card small{margin-top:10px;color:#7a829e;font-size:12px}.teacher-metric-amber .teacher-metric-icon{background:#fff0e4;color:#ff7a21}.teacher-metric-green .teacher-metric-icon{background:#ffecef;color:#ef4164}.teacher-metric-cyan .teacher-metric-icon{background:#e9f3ff;color:#2476e8}.portal-layout-teacher .teacher-panel{border-radius:16px;box-shadow:0 18px 42px #45377a0e}.teacher-today-panel{margin-top:18px;padding:18px 22px 12px}.teacher-panel-heading{align-items:center;margin-bottom:14px}.teacher-panel-heading h2{font-size:17px}.teacher-panel-action,.teacher-panel-action a{color:#704cf3;font-size:13px;font-weight:700;text-decoration:none}.teacher-period-control{min-height:34px;display:inline-flex;align-items:center;padding:0 13px;border:1px solid #e1dbee;border-radius:8px;background:#fff;color:#53607f}.teacher-todo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.teacher-todo-card{min-height:86px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px 14px;border:1px solid #ece7f6;border-radius:12px;background:#fff}.teacher-todo-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#f0ebff;color:#7351f4}.teacher-todo-icon svg{width:24px;height:24px}.teacher-todo-amber .teacher-todo-icon{background:#fff1e4;color:#ff7a21}.teacher-todo-green .teacher-todo-icon{background:#ffeaf0;color:#ed416a}.teacher-todo-cyan .teacher-todo-icon{background:#eaf4ff;color:#257ae8}.teacher-todo-copy{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:7px}.teacher-todo-copy strong{color:#141a38;font-size:24px;line-height:1}.teacher-todo-copy strong small{margin-left:4px;font-size:12px;font-weight:500}.teacher-todo-copy b{color:#212943;font-size:13px}.teacher-todo-copy em{grid-column:1 / -1;margin-top:6px;overflow:hidden;color:#7b839d;font-size:11px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.teacher-todo-arrow{color:#7d86a2;font-size:23px}.teacher-dashboard-main-grid{grid-template-columns:minmax(0,1.55fr) minmax(360px,1fr);gap:18px;margin-top:18px}.teacher-dashboard-main-grid .teacher-panel{min-height:300px;padding:18px 22px}.teacher-energy-chart{height:224px;display:block;padding:0}.teacher-energy-chart svg{width:100%;height:194px;overflow:visible}.teacher-chart-gridline{stroke:#eceaf3;stroke-width:1}.teacher-chart-area{fill:#7451f414}.teacher-chart-line{fill:none;stroke:#7351f4;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.teacher-chart-point{fill:#7351f4;stroke:#fff;stroke-width:2}.teacher-chart-labels{display:flex;justify-content:space-between;color:#7b839d;font-size:11px}.teacher-recent-panel .teacher-focus-list{gap:0}.teacher-recent-panel .teacher-focus-item{min-height:66px;padding:8px 0;border:0;border-bottom:1px solid #efecf7;border-radius:0}.teacher-recent-panel .teacher-focus-item:last-child{border-bottom:0}.teacher-recent-panel .teacher-avatar{border-radius:12px;background:#f0ebff}.teacher-dashboard-bottom{display:grid;grid-template-columns:minmax(430px,1.2fr) minmax(300px,.76fr) minmax(330px,.9fr);gap:18px;margin-top:18px}.teacher-dashboard-bottom>.teacher-panel{min-height:210px;padding:18px 20px}.teacher-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.portal-layout-teacher .teacher-quick-card{min-height:124px;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:10px 6px;border-radius:10px;box-shadow:none;text-align:center}.teacher-quick-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#f3efff;color:#704cf3}.teacher-quick-card strong{font-size:12px;white-space:nowrap}.teacher-service-progress{min-height:128px;display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:20px}.teacher-progress-ring{width:104px;height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at center,#fff 0 60%,transparent 61%),conic-gradient(#7351f4 var(--progress),#ebe8f6 0)}.teacher-progress-ring strong{color:#151a38;font-size:22px}.teacher-progress-ring span{margin-top:3px;color:#7a829e;font-size:10px}.teacher-service-legend{display:grid;gap:12px}.teacher-service-legend div{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;color:#747d99;font-size:11px}.teacher-service-legend i{width:7px;height:7px;border-radius:50%;background:#7351f4}.teacher-service-legend .tone-2{background:#4da2f2}.teacher-service-legend .tone-3{background:#a5acc0}.teacher-service-legend strong{color:#29314f}.teacher-ability-grid{gap:12px}.teacher-ability-card{min-height:64px;padding:10px 12px;border-radius:10px;background:#f8f6ff}.teacher-ability-card>span{display:block;color:#6e7793;font-size:11px}.teacher-ability-card strong{display:block;margin-top:7px;font-size:21px}.teacher-ability-card strong b{margin-left:4px;color:#757e99;font-size:10px;font-weight:500}.teacher-ability-card.tone-cyan{background:#eff8ff}.teacher-ability-card.tone-amber{background:#fff5e9}.teacher-ability-card.tone-green{background:#ecf9f3}.portal-layout-teacher .teacher-students-page{max-width:none}.teacher-students-page .teacher-list-header{margin-bottom:22px}.teacher-student-filters{grid-template-columns:minmax(250px,330px) 160px 180px 78px 1fr}.teacher-student-add{justify-self:end}.teacher-student-metric>span svg{width:32px;height:32px}.teacher-student-table-card{border-radius:16px}.teacher-student-table-head,.teacher-student-row{grid-template-columns:1.55fr .82fr 1fr 1.05fr 1fr .9fr .9fr 1.45fr}.teacher-student-row{min-height:78px}.portal-layout-teacher .portal-main>.teacher-growth-page{max-width:none;padding-top:10px}.teacher-growth-page{color:#17203d}.teacher-growth-profile{min-height:190px;display:grid;grid-template-columns:142px minmax(0,1fr) auto;align-items:center;gap:28px;padding:24px 28px;border:1px solid #ebe7f5;border-radius:18px;background:#fffffff5;box-shadow:0 18px 42px #45377a0e}.teacher-growth-avatar{width:132px;height:132px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:8px solid #ede9ff;border-radius:50%;background:linear-gradient(135deg,#dfe9ff,#fff0f6);font-size:72px}.teacher-growth-identity{min-width:0}.teacher-growth-name-row{display:flex;align-items:center;gap:12px}.teacher-growth-name-row h1{margin:0;color:#111733;font-size:31px;line-height:1.2}.teacher-growth-name-row>b{min-height:30px;display:inline-flex;align-items:center;padding:0 13px;border-radius:9px;background:#f0ebff;color:#6744ed;font-size:14px}.teacher-growth-meta{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));margin:24px 0 18px}.teacher-growth-meta>div{padding:0 24px;border-left:1px solid #ece8f5}.teacher-growth-meta>div:first-child{padding-left:0;border-left:0}.teacher-growth-meta dt{color:#737c98;font-size:12px}.teacher-growth-meta dd{margin:7px 0 0;overflow:hidden;color:#27304f;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.teacher-growth-meta dd.is-accent{color:#6744ed;font-weight:700}.teacher-growth-tags{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#69728e;font-size:13px}.teacher-growth-tags b{min-height:28px;display:inline-flex;align-items:center;padding:0 12px;border-radius:14px;background:#f3efff;color:#7355db;font-size:12px}.teacher-growth-edit{align-self:start;min-height:40px;display:inline-flex;align-items:center;gap:7px;padding:0 15px;border:1px solid #ddd6f2;border-radius:9px;background:#fff;color:#52607e;font-size:13px;font-weight:700;text-decoration:none}.teacher-growth-tabs{min-height:58px;display:flex;align-items:end;gap:16px;margin:12px 0 14px;padding:0 20px;border-bottom:1px solid #e7e2f1;background:#ffffffb3}.teacher-growth-tabs a{min-height:52px;display:inline-flex;align-items:center;padding:0 14px;border-bottom:3px solid transparent;color:#525c79;font-size:14px;text-decoration:none}.teacher-growth-tabs a.is-active{border-color:#7351f4;color:#6744ed;font-weight:800}.teacher-growth-overview{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(360px,1fr) minmax(350px,1fr);gap:18px;align-items:start}.teacher-growth-main-column,.teacher-growth-side-column{display:grid;gap:18px}.teacher-growth-card{min-width:0;overflow:hidden;border:1px solid #ebe7f5;border-radius:16px;background:#fffffff7;box-shadow:0 16px 36px #45377a0d}.teacher-growth-card>header{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px}.teacher-growth-card>header h2{margin:0;color:#17203c;font-size:16px}.teacher-growth-card>header a,.teacher-growth-card>header span,.teacher-growth-card>header time{color:#7450ef;font-size:11px;text-decoration:none}.teacher-milestone-list{padding:2px 18px 18px}.teacher-milestone-list>div{position:relative;min-height:66px;display:grid;grid-template-columns:95px 1fr;gap:18px;padding-left:18px}.teacher-milestone-list>div:before{content:"";position:absolute;top:7px;left:0;width:9px;height:9px;border:2px solid #7351f4;border-radius:50%;background:#7351f4}.teacher-milestone-list>div:after{content:"";position:absolute;top:20px;bottom:-2px;left:5px;width:1px;background:#cbbfff}.teacher-milestone-list>div:last-child:after{display:none}.teacher-milestone-list>div.is-pending:before{background:#fff}.teacher-milestone-list time{color:#7a829e;font-size:11px}.teacher-milestone-list strong,.teacher-milestone-list small{display:block}.teacher-milestone-list strong{color:#29314e;font-size:12px}.teacher-milestone-list small{margin-top:5px;color:#858ca5;font-size:10px;line-height:1.45}.teacher-growth-radar{min-height:270px}.teacher-radar-visual{position:relative;width:310px;height:188px;margin:0 auto;color:#5f6986;font-size:10px}.teacher-radar-visual>span{position:absolute;z-index:2;white-space:nowrap}.teacher-radar-visual .label-top{top:0;left:50%;transform:translate(-50%)}.teacher-radar-visual .label-right-top{top:45px;right:0}.teacher-radar-visual .label-right-bottom{right:12px;bottom:35px}.teacher-radar-visual .label-bottom{bottom:0;left:50%;transform:translate(-50%)}.teacher-radar-visual .label-left-bottom{bottom:35px;left:3px}.teacher-radar-visual .label-left-top{top:45px;left:0}.teacher-radar-grid{position:absolute;top:27px;left:76px;width:160px;height:136px;border:1px solid #cec4fb;background:repeating-radial-gradient(circle,transparent 0 22px,rgba(117,81,244,.1) 23px 24px);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.teacher-radar-grid i{width:100%;height:100%;display:block;background:#7551f433;clip-path:polygon(50% 10%,91% 30%,84% 72%,50% 84%,12% 70%,18% 32%)}.teacher-radar-legend{display:flex;justify-content:center;gap:28px;padding:0 0 14px;color:#7b839e;font-size:10px}.teacher-radar-legend span:before{content:"";width:24px;height:3px;display:inline-block;margin-right:6px;border-radius:2px;background:#7351f4;vertical-align:middle}.teacher-radar-legend span:last-child:before{height:0;border-top:2px dashed #a89aff;background:transparent}.teacher-goal-list,.teacher-recent-training-list{padding:0 18px 14px}.teacher-goal-list>div{min-height:72px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;border-bottom:1px solid #f0edf7}.teacher-goal-list>div:last-child{border-bottom:0}.teacher-goal-list>div>span,.teacher-recent-training-list>div>span{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#f0ebff;color:#7351f4}.teacher-goal-list svg,.teacher-recent-training-list svg{width:20px;height:20px}.teacher-goal-list strong,.teacher-goal-list small{display:block}.teacher-goal-list strong{color:#29314e;font-size:12px}.teacher-goal-list small{margin-top:4px;color:#858ca5;font-size:10px}.teacher-goal-list i{height:5px;display:block;overflow:hidden;margin-top:8px;border-radius:3px;background:#ece9f5}.teacher-goal-list i b{height:100%;display:block;border-radius:inherit;background:#7351f4}.teacher-goal-list em{color:#68718e;font-size:10px;font-style:normal}.teacher-recent-training-list>div{min-height:58px;display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;border-bottom:1px solid #f0edf7}.teacher-recent-training-list>div:last-child{border-bottom:0}.teacher-recent-training-list strong,.teacher-recent-training-list small{display:block}.teacher-recent-training-list strong{color:#29314e;font-size:11px}.teacher-recent-training-list small{margin-top:3px;color:#8a91a8;font-size:9px}.teacher-recent-training-list em{color:#5a6482;font-size:10px;font-style:normal}.teacher-recent-training-list>div>b{padding:4px 8px;border-radius:10px;background:#e9f8f0;color:#26a872;font-size:9px}.teacher-growth-empty{min-height:100px;display:flex;align-items:center;justify-content:center;margin:0;color:#868da5;font-size:12px}.teacher-growth-summary>section{margin:0 16px 16px;padding:15px;border:1px solid #eeeaf6;border-radius:12px}.teacher-growth-summary h3{margin:0 0 12px;color:#2b334f;font-size:13px}.teacher-growth-summary section>div{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px}.teacher-growth-summary section>div>span{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#f0ebff;color:#7351f4}.teacher-growth-summary svg{width:24px;height:24px}.teacher-growth-summary p{margin:0}.teacher-growth-summary p strong,.teacher-growth-summary p small{display:block}.teacher-growth-summary p strong{color:#27304d;font-size:11px}.teacher-growth-summary p small{margin-top:4px;color:#8088a2;font-size:9px}.teacher-growth-summary .btn{min-height:32px;padding:0 11px;font-size:10px}.teacher-growth-quick>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 16px 16px}.teacher-growth-quick a{min-height:94px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1px solid #e9e4f5;border-radius:10px;color:#5e6885;font-size:10px;text-decoration:none}.teacher-growth-quick svg{width:27px;height:27px;color:#7351f4}.teacher-growth-assessment-actions{margin-top:18px;padding:18px 20px;border:1px solid #ebe7f5;border-radius:16px;background:#fffffff5}.teacher-growth-assessment-actions header h2{margin:0;font-size:16px}.teacher-growth-assessment-actions header p{margin:5px 0 0;color:#7b849e;font-size:11px}.teacher-growth-assessment-actions>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.teacher-growth-assessment-actions .btn{min-height:34px;padding:0 12px;border-color:#e0daf1;background:#faf9ff;color:#5c6682;font-size:11px}.teacher-growth-records{margin-top:18px}.teacher-growth-records>.card,.teacher-growth-records>.card-grid>.card{border-color:#ebe7f5;border-radius:14px;box-shadow:0 14px 32px #45377a0b}@media(max-width:1420px){.teacher-dashboard-bottom{grid-template-columns:1fr 1fr}.teacher-quick-panel{grid-column:1 / -1}.teacher-growth-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-growth-side-column{grid-column:1 / -1;grid-template-columns:1.25fr .75fr}.teacher-growth-meta{grid-template-columns:repeat(2,minmax(160px,1fr));row-gap:18px}.teacher-growth-meta>div:nth-child(3){padding-left:0;border-left:0}}@media(max-width:1180px){.teacher-todo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard-main-grid{grid-template-columns:1fr}.teacher-growth-profile{grid-template-columns:112px minmax(0,1fr)}.teacher-growth-avatar{width:104px;height:104px;font-size:54px}.teacher-growth-edit{grid-column:2;justify-self:start}}@media(max-width:820px){.portal-layout-teacher .teacher-topbar{justify-content:stretch}.portal-layout-teacher .teacher-search{width:100%}.teacher-todo-grid,.teacher-dashboard-bottom,.teacher-growth-overview,.teacher-growth-side-column{grid-template-columns:1fr}.teacher-quick-panel,.teacher-growth-side-column{grid-column:auto}.teacher-quick-grid{grid-template-columns:repeat(3,1fr)}.teacher-growth-profile{grid-template-columns:1fr;text-align:center}.teacher-growth-avatar{justify-self:center}.teacher-growth-name-row,.teacher-growth-tags{justify-content:center}.teacher-growth-meta{grid-template-columns:1fr}.teacher-growth-meta>div{padding:0;border-left:0}.teacher-growth-edit{grid-column:auto;justify-self:center}.teacher-growth-tabs{overflow-x:auto}}.portal-layout-teacher{--teacher-bg: #f6f3ff;--teacher-bg-2: #f9f8ff;--teacher-surface: rgba(255, 255, 255, .96);--teacher-panel: #ffffff;--teacher-line: #e7e1f8;--teacher-line-strong: #ddd3f7;--teacher-text: #141a38;--teacher-muted: #66708f;--teacher-muted-2: #8b91ad;--teacher-accent: #7556f6;--teacher-accent-dark: #6240e8;--teacher-accent-soft: #f0ebff;--teacher-cyan: #26b8ce;--teacher-green: #23b37a;--teacher-amber: #f19831;--teacher-danger: #ef4e62;display:grid;grid-template-columns:278px minmax(0,1fr);min-height:100vh;background:linear-gradient(90deg,#ffffff 0,#ffffff 278px,transparent 278px),linear-gradient(135deg,#f5f2ff,#f8f7ff 52%,#f3fbff);color:var(--teacher-text)}.portal-layout-teacher .sidebar{position:sticky;top:0;width:278px;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#fffffff5;border-right:1px solid var(--teacher-line);box-shadow:18px 0 42px #4e3f9714;color:var(--teacher-muted)}.portal-layout-teacher .sidebar-brand{min-height:78px;display:flex;align-items:center;gap:13px;padding:20px 22px 16px;color:#07163a;font-size:18px;font-weight:900;letter-spacing:0;white-space:nowrap}.portal-layout-teacher .brand-dot{width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#b797ff,#7656f6 58%,#5a37e5);box-shadow:0 12px 22px #7457f642}.portal-layout-teacher .brand-dot:after{content:"";width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px #ffffff47}.portal-layout-teacher .sidebar-nav{flex:1;overflow-y:auto;padding:8px 16px 18px;scrollbar-width:thin;scrollbar-color:#c9c0ef transparent}.portal-layout-teacher .nav-group{margin-bottom:13px}.portal-layout-teacher .nav-group-label{margin:16px 0 7px;padding:0 5px!important;color:#7b6fb4!important;font-size:13px!important;line-height:1.35;font-weight:800!important;letter-spacing:0!important;text-transform:none!important}.portal-layout-teacher .nav-item{min-height:48px;display:flex;align-items:center;gap:12px;padding:0 7px;border:1px solid transparent;border-radius:12px;color:#596382;font-size:16px;font-weight:500;letter-spacing:0}.portal-layout-teacher .nav-item:hover{background:#f7f3ff;color:var(--teacher-accent-dark)}.portal-layout-teacher .nav-item.active{background:transparent;border-color:transparent;color:#293252;box-shadow:none;font-weight:700}.portal-layout-teacher .teacher-nav-icon{width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#f1ebff;color:var(--teacher-accent);font-size:15px;font-weight:800;box-shadow:none}.portal-layout-teacher .nav-item.active .teacher-nav-icon{background:#ede6ff;color:var(--teacher-accent-dark)}.portal-layout-teacher .sidebar-footer{flex:0 0 auto;padding:16px;border-top:1px solid var(--teacher-line);background:linear-gradient(180deg,#ffffffe0,#fbf9ff)}.portal-layout-teacher .sidebar-user{padding:14px;border:1px solid #ece6fb;border-radius:14px;background:#f7f2ff}.portal-layout-teacher .sidebar-user-name{color:#101735;font-size:16px;font-weight:900}.portal-layout-teacher .sidebar-user-role,.portal-layout-teacher .sidebar-invite{color:#66708f;font-size:13px}.portal-layout-teacher .btn-ghost{width:100%;min-height:40px;margin-top:12px;border:1px solid #d8cff7;border-radius:12px;background:#fff;color:var(--teacher-accent-dark);font-weight:800}.portal-layout-teacher .portal-main{min-width:0;padding:0;background:transparent}.portal-layout-teacher .teacher-topbar{position:sticky;top:0;z-index:20;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:10px 36px 18px;border-bottom:1px solid var(--teacher-line);background:#f9f7ffe6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-layout-teacher .teacher-search{width:min(650px,58vw);min-height:52px;padding:0 18px;border:1px solid #ded6f3;border-radius:12px;background:#fffffff0;color:var(--teacher-accent);box-shadow:0 12px 28px #5746a00d}.portal-layout-teacher .teacher-search input{color:var(--teacher-text);font-size:16px}.portal-layout-teacher .teacher-search input::placeholder{color:#9990bd}.portal-layout-teacher .teacher-icon-button,.portal-layout-teacher .teacher-topbar-user{width:42px;height:42px;flex-basis:42px;border:1px solid #e4def6;border-radius:50%;background:#fff;color:var(--teacher-accent-dark);box-shadow:0 10px 24px #50438c0f}.portal-layout-teacher .teacher-topbar-user{background:linear-gradient(135deg,#8567fb,#6240e8);color:#fff}.portal-layout-teacher .portal-main>:not(.teacher-topbar){max-width:none;margin:0;padding:28px 36px 48px}.portal-layout-teacher .page-header,.portal-layout-teacher .teacher-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:0 0 22px}.portal-layout-teacher .page-header h1,.portal-layout-teacher .teacher-list-header h1,.portal-layout-teacher .teacher-dashboard-hero h1{margin:0;color:#111837;font-size:30px;line-height:1.2;font-weight:900;letter-spacing:0}.portal-layout-teacher .page-subtitle,.portal-layout-teacher .teacher-list-header p,.portal-layout-teacher .teacher-dashboard-hero p{margin:9px 0 0;color:#6b7391;font-size:16px;line-height:1.55}.portal-layout-teacher .btn,.portal-layout-teacher button,.portal-layout-teacher input,.portal-layout-teacher select,.portal-layout-teacher textarea{font-family:inherit;letter-spacing:0}.portal-layout-teacher .btn,.portal-layout-teacher .btn-sm{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-weight:800}.portal-layout-teacher .btn-primary,.portal-layout-teacher .cases-page .btn-primary,.portal-layout-teacher .teacher-primary-action,.portal-layout-teacher .teacher-student-add{border-color:transparent;background:linear-gradient(135deg,#8667ff,#6b49f6 55%,#5b37e9);color:#fff;box-shadow:0 14px 28px #6948f440}.portal-layout-teacher .btn-primary:hover,.portal-layout-teacher .teacher-primary-action:hover,.portal-layout-teacher .teacher-student-add:hover{color:#fff;filter:brightness(1.03)}.portal-layout-teacher .data-table-toolbar,.portal-layout-teacher .teacher-student-filters{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 20px}.portal-layout-teacher .teacher-student-filters{display:grid;grid-template-columns:minmax(260px,1fr) 160px 170px 88px auto}.portal-layout-teacher .search-box{display:flex;align-items:center;gap:10px}.portal-layout-teacher .search-box input,.portal-layout-teacher .data-table-toolbar select,.portal-layout-teacher .teacher-student-search,.portal-layout-teacher .teacher-student-filters select,.portal-layout-teacher .teacher-filter-reset{min-height:46px;border:1px solid #ded8ef;border-radius:12px;background:#fff;color:#27314f;box-shadow:0 10px 22px #50438c0a}.portal-layout-teacher .search-box input{min-width:270px;padding:0 15px;outline:0;font-size:15px}.portal-layout-teacher form.search-box .btn{min-height:46px;padding:0 22px;border-color:transparent;background:linear-gradient(135deg,#8667ff,#6240e8);color:#fff}.portal-layout-teacher .data-table-toolbar select,.portal-layout-teacher .teacher-student-filters select{padding:0 15px;font-size:15px}.portal-layout-teacher .toolbar-spacer{flex:1 1 auto}.portal-layout-teacher .seg{gap:8px;padding:4px;border:1px solid #e8e2f6;border-radius:16px;background:#ffffffbd}.portal-layout-teacher .seg-btn{min-height:38px;padding:0 18px;border:0;border-radius:12px;background:transparent;color:#66708f;font-weight:800}.portal-layout-teacher .seg-btn.active{background:#eee8ff;color:var(--teacher-accent-dark);box-shadow:inset 0 0 0 1px #d8cff7}.portal-layout-teacher .chip-row{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.portal-layout-teacher .chip{min-height:36px;padding:0 14px;border:1px solid #e3ddf2;border-radius:18px;background:#fff;color:#65708f;font-size:14px;font-weight:800}.portal-layout-teacher .chip.active{border-color:#d4c8ff;background:#f0ebff;color:var(--teacher-accent-dark)}.portal-layout-teacher .chip-count{margin-left:6px;color:#9a90bd}.portal-layout-teacher .table-wrap,.portal-layout-teacher .teacher-student-table-card{overflow:hidden;border:1px solid #ebe6f6;border-radius:18px;background:#fffffffa;box-shadow:0 22px 48px #483d7e12}.portal-layout-teacher .cases-table-wrap{max-height:calc(100vh - 278px);overflow:auto}.portal-layout-teacher table{width:100%;border-collapse:separate;border-spacing:0;color:#27314f}.portal-layout-teacher th{height:56px;padding:0 18px;border-bottom:1px solid #ece7f7;background:#fff;color:#65708f;font-size:14px;font-weight:900;text-align:left;white-space:nowrap}.portal-layout-teacher td{min-height:66px;padding:15px 18px;border-bottom:1px solid #f1edf8;color:#33405f;font-size:14px;vertical-align:middle}.portal-layout-teacher tbody tr:last-child td{border-bottom:0}.portal-layout-teacher .row-clickable:hover,.portal-layout-teacher tbody tr:hover{background:#fbf9ff}.portal-layout-teacher .pagination{min-height:64px;display:flex;align-items:center;justify-content:center;gap:12px;color:#64708e;font-size:14px}.portal-layout-teacher .pagination .btn{min-width:72px;border:1px solid #ded8ef;background:#fff;color:#445174}.portal-layout-teacher .alert{border-radius:14px}.portal-layout-teacher .teacher-student-metrics,.portal-layout-teacher .teacher-metric-grid,.portal-layout-teacher .teacher-skeleton-grid{gap:20px;margin-bottom:20px}.portal-layout-teacher .teacher-student-metric,.portal-layout-teacher .teacher-metric-card,.portal-layout-teacher .teacher-panel,.portal-layout-teacher .teacher-dashboard-hero,.portal-layout-teacher .teacher-quick-card{border:1px solid #ebe6f6;border-radius:20px;background:#fffffff5;box-shadow:0 20px 44px #483d7e12}.portal-layout-teacher .teacher-dashboard-hero{min-height:174px;padding:30px 34px;background:linear-gradient(135deg,#fffffffa,#f8f5fffa 62%,#edf9fffa)}.portal-layout-teacher .teacher-metric-icon,.portal-layout-teacher .teacher-student-metric>span,.portal-layout-teacher .teacher-quick-icon{border-radius:18px}.portal-layout-teacher .teacher-student-metric{min-height:126px;padding:24px}.portal-layout-teacher .teacher-student-table-head,.portal-layout-teacher .teacher-student-row{padding:0 24px;column-gap:18px}.portal-layout-teacher .teacher-student-table-head{min-height:58px;background:#fff;color:#65708f;font-size:14px;font-weight:900}.portal-layout-teacher .teacher-student-row{min-height:84px}.portal-layout-teacher .teacher-last-assessment,.portal-layout-teacher .teacher-row-actions a,.portal-layout-teacher .teacher-row-actions button,.portal-layout-teacher .teacher-student-pagination button{border-radius:12px}.portal-layout-teacher .teacher-focus-tags span{border-radius:10px;background:#f0ebff;color:var(--teacher-accent-dark)}.portal-layout-teacher .badge{border-radius:999px;font-weight:800}@media(max-width:1180px){.portal-layout-teacher{grid-template-columns:248px minmax(0,1fr);background:linear-gradient(90deg,#ffffff 0,#ffffff 248px,transparent 248px),linear-gradient(135deg,#f5f2ff,#f8f7ff 52%,#f3fbff)}.portal-layout-teacher .sidebar{width:248px}.portal-layout-teacher .portal-main>:not(.teacher-topbar),.portal-layout-teacher .teacher-topbar{padding-left:24px;padding-right:24px}.portal-layout-teacher .teacher-student-filters{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(130px,auto))}}@media(max-width:820px){.portal-layout-teacher{display:block;background:linear-gradient(135deg,#f5f2ff,#f8f7ff 52%,#f3fbff)}.portal-layout-teacher .sidebar{position:relative;width:100%;height:auto}.portal-layout-teacher .sidebar-nav{max-height:46vh}.portal-layout-teacher .teacher-topbar{position:relative;display:grid;grid-template-columns:1fr;min-height:auto;padding:16px}.portal-layout-teacher .teacher-search{width:100%}.portal-layout-teacher .portal-main>:not(.teacher-topbar){padding:20px 16px 36px}}body .portal-layout-teacher .teacher-topbar{min-height:72px;justify-content:flex-end;padding:12px 36px;border-bottom:0;background:#f8f7ffe0}body .portal-layout-teacher .teacher-search{width:min(390px,42vw);min-height:44px;border-radius:22px;box-shadow:none}body .portal-layout-teacher .teacher-icon-button,body .portal-layout-teacher .teacher-topbar-user{border-color:transparent;box-shadow:none}body .portal-layout-teacher .teacher-icon-button{background:transparent}body .portal-layout-teacher .teacher-topbar-user{background:#efeaff;color:#6846ee}body .portal-layout-teacher .nav-item.active{border-color:#e5dcff;background:linear-gradient(90deg,#f0ebff,#f4f0ff);color:#6744ed;box-shadow:0 8px 18px #6744ed14}body .portal-layout-teacher .nav-item.active .teacher-nav-icon{background:transparent;color:#6744ed}body .portal-layout-teacher .portal-main>.teacher-dashboard,body .portal-layout-teacher .portal-main>.teacher-growth-page{max-width:none;padding-top:10px}body .portal-layout-teacher .teacher-dashboard-hero{min-height:74px;padding:0 4px 12px;border:0;border-radius:0;background:transparent;box-shadow:none}body .portal-layout-teacher .teacher-metric-card{min-height:138px;align-items:center;gap:20px;padding:22px;border-radius:16px}body .portal-layout-teacher .teacher-metric-icon{width:64px;height:64px;flex:0 0 64px;border-radius:16px}body .portal-layout-teacher .teacher-panel,body .portal-layout-teacher .teacher-quick-card{border-radius:16px}body .portal-layout-teacher .teacher-quick-card{min-height:124px;padding:10px 6px;box-shadow:none}body .portal-layout-teacher .teacher-student-metric{min-height:126px;padding:24px;border-radius:16px}body .portal-layout-teacher .teacher-student-table-card{border-radius:16px}body .portal-layout-teacher .teacher-student-row{min-height:78px}body .teacher-todo-copy{grid-template-columns:1fr;align-items:start}body .teacher-todo-copy b{margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .teacher-todo-copy em{grid-column:auto}@media(max-width:820px){body .portal-layout-teacher .teacher-topbar{position:relative;display:grid;grid-template-columns:1fr;min-height:auto;padding:16px}body .portal-layout-teacher .teacher-search{width:100%}}.portal-layout-teacher:has(.teacher-growth-page){--growth-blue: #1268f4;--growth-blue-dark: #0a4fc4;--growth-blue-soft: #eaf3ff;--growth-ink: #102c5d;--growth-muted: #60769d;--growth-border: #dbe8f6;background:#f3f8fd;color:var(--growth-ink)}.portal-layout-teacher:has(.teacher-growth-page) .sidebar{border-right-color:#e1ebf5;background:#fffffffa;box-shadow:12px 0 34px #1d4b800f}.portal-layout-teacher:has(.teacher-growth-page) .brand-dot{position:relative;overflow:hidden;border:2px solid #ffffff;background:linear-gradient(180deg,#ff9c27 0,#ff9c27 48%,#22bad1 49%,#22bad1 70%,#0b8aa8 71%,#0b8aa8);box-shadow:0 7px 16px #0f739f2e}.portal-layout-teacher:has(.teacher-growth-page) .brand-dot:after{width:12px;height:12px;margin:-11px 0 0 10px;background:#fff3c4;box-shadow:-12px 15px 0 3px #ffffffe6,7px 15px 0 2px #ffffffb3}.portal-layout-teacher:has(.teacher-growth-page) .nav-group-label{color:#6480a6!important}.portal-layout-teacher:has(.teacher-growth-page) .nav-item{color:#284b7d}.portal-layout-teacher:has(.teacher-growth-page) .teacher-nav-icon{background:#f3f7fc;color:#315f9c}.portal-layout-teacher:has(.teacher-growth-page) .nav-item.active{border-color:#d8e8fb;background:linear-gradient(90deg,#eaf3ff,#edf5ff);color:var(--growth-blue);box-shadow:0 9px 20px #1969d61f}.portal-layout-teacher:has(.teacher-growth-page) .teacher-topbar{background:#f3f8fde6}.portal-layout-teacher:has(.teacher-growth-page) .teacher-search{border-color:#d9e6f3;background:#fffffff5;color:var(--growth-blue);box-shadow:7px 7px 16px #244d7914,-6px -6px 14px #ffffffe6}.portal-layout-teacher:has(.teacher-growth-page) .teacher-search input::placeholder{color:#61799e}.portal-layout-teacher:has(.teacher-growth-page) .portal-main>.teacher-growth-page{padding-top:2px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-page{color:var(--growth-ink)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-profile{position:relative;min-height:190px;overflow:hidden;border-color:var(--growth-border);border-radius:15px;background:#fff;box-shadow:8px 9px 22px #1e4f8417,-6px -6px 18px #fffffff2,inset 0 0 0 1px #fffc}.teacher-growth-scenery{position:absolute;z-index:0;right:0;bottom:0;width:43%;height:100%;overflow:hidden;pointer-events:none}.teacher-growth-scenery:before{content:"";position:absolute;right:19%;bottom:8px;width:250px;height:250px;border-radius:50%;background:repeating-conic-gradient(from -5deg,rgba(255,191,78,.18) 0deg 5deg,transparent 5deg 14deg);mask:radial-gradient(circle,transparent 0 33%,#000 34% 100%)}.teacher-growth-sun{position:absolute;right:26%;bottom:15px;width:82px;height:82px;border-radius:50%;background:linear-gradient(180deg,#ffd77a,#ffac37);box-shadow:0 0 28px #ffb33747}.teacher-growth-wave{position:absolute;right:-8%;bottom:-52px;width:112%;height:116px;border:6px solid rgba(255,255,255,.92);border-radius:55% 42% 0 0;transform:rotate(-3deg)}.teacher-growth-wave.wave-back{right:-18%;bottom:-35px;background:#8fe1ea;transform:rotate(-8deg)}.teacher-growth-wave.wave-mid{right:-10%;bottom:-52px;background:#24bfd1;transform:rotate(4deg)}.teacher-growth-wave.wave-front{right:-4%;bottom:-72px;background:#098fae;transform:rotate(-2deg)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-avatar,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-identity,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-edit{position:relative;z-index:2}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-avatar{border:6px solid #ffffff;background:#eaf3ff;box-shadow:0 0 0 4px #dceafd,8px 9px 18px #234f7e21}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row h1{color:#0d2856}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row>b{border:1px solid #d9e7f8;background:#f6faff;color:var(--growth-blue);box-shadow:4px 5px 10px #224c7c14,-3px -3px 9px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div{border-color:#dfebf6}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dt,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags>span{color:#62789b}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dd{color:#183b6d}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dd.is-accent{color:var(--growth-blue)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags b{border:1px solid #dbe8f7;background:#f7fbff;color:#2b67ba;box-shadow:4px 5px 10px #254e7c12,-3px -3px 8px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-edit{border-color:#f0dfcf;background:#fffdf9;color:#bb5d20;box-shadow:6px 7px 14px #764b241a,-4px -4px 10px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tabs{display:none}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:minmax(300px,.82fr) minmax(365px,1.08fr) minmax(385px,1.18fr);gap:16px;margin-top:14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-main-column,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{gap:14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card{border-color:var(--growth-border);border-radius:14px;background:#fafdff;box-shadow:8px 9px 20px #1f4a7a17,-6px -6px 16px #fffffff5,inset 0 0 0 1px #ffffffbf}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header h2{color:#143461}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header a,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header span{color:var(--growth-blue)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list{padding:2px 14px 14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div{min-height:72px;grid-template-columns:86px 1fr;padding-left:17px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div:before{border-color:#fff;background:#20c983;box-shadow:0 0 0 2px #20c983,3px 4px 8px #16996238}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div:after{background:#478cf7}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div.is-pending:before{border-color:var(--growth-blue);background:#fff;box-shadow:0 0 0 1px var(--growth-blue)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div>span{align-self:start;min-height:58px;padding:10px 12px;border:1px solid #dce8f5;border-radius:10px;background:#f9fcff;box-shadow:5px 6px 12px #244e7d17,-4px -4px 9px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list time{color:#365d91}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-grid{border-color:#90bcff;background:repeating-radial-gradient(circle,transparent 0 22px,rgba(26,105,238,.11) 23px 24px)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-grid i{background:#1f71f433}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-legend span:before{background:var(--growth-blue)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-legend span:last-child:before{border-color:#5ea0ff;background:transparent}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list{display:grid;gap:10px;padding:0 12px 14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list>div{min-height:78px;padding:7px 11px;border:1px solid #dce8f5;border-radius:10px;background:#f9fcff;box-shadow:5px 6px 12px #244e7d17,-4px -4px 9px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list>div>span,.portal-layout-teacher:has(.teacher-growth-page) .teacher-recent-training-list>div>span{background:#eaf3ff;color:var(--growth-blue);box-shadow:3px 4px 8px #2065c11a}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list i b{background:linear-gradient(90deg,#2780ff,#0960e9)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-recent-training-list{display:grid;gap:8px;padding:0 12px 12px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-recent-training-list>div{min-height:58px;padding:4px 10px;border:1px solid #dce8f5;border-radius:9px;background:#f9fcff;box-shadow:4px 5px 10px #244e7d14,-3px -3px 8px #fff}.teacher-growth-stats>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 12px 13px}.teacher-growth-stats>div>section{min-height:94px;padding:11px;border:1px solid #dce8f5;border-radius:10px;background:#f9fcff;box-shadow:5px 6px 12px #244e7d17,-4px -4px 9px #fff}.teacher-growth-stats section>span{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#eaf3ff;color:var(--growth-blue)}.teacher-growth-stats section:nth-child(2)>span{background:#fff2e6;color:#f47f20}.teacher-growth-stats section:nth-child(3)>span{background:#e9f8f3;color:#0aa878}.teacher-growth-stats svg{width:17px;height:17px}.teacher-growth-stats small{display:inline-block;margin-left:6px;color:#5e7498;font-size:9px}.teacher-growth-stats strong{display:block;margin-top:12px;color:#113261;font-size:23px}.teacher-growth-stats strong b{margin-left:4px;color:#62789b;font-size:10px;font-weight:500}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary>section{margin:0 12px 12px;padding:12px;border-color:#dce8f5;background:#f9fcff;box-shadow:4px 5px 10px #244e7d12,-3px -3px 8px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary section>div>span{background:#eaf3ff;color:var(--growth-blue);box-shadow:3px 4px 8px #2065c11a}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary .btn-primary{border-color:transparent;background:linear-gradient(180deg,#2a82ff,#0c60ed);box-shadow:5px 7px 13px #145bcf42,inset 0 1px #fff6}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick>div{gap:9px;padding:0 12px 12px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick a{min-height:100px;border-color:#dce8f5;background:#f9fcff;color:#254c7e;box-shadow:5px 6px 12px #244e7d17,-4px -4px 9px #fff}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick svg{color:var(--growth-blue)}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-assessment-actions,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-records>.card,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-records>.card-grid>.card{border-color:var(--growth-border);background:#fafdff;box-shadow:7px 8px 18px #1f4a7a14,-5px -5px 14px #fffffff2}@media(max-width:1420px){.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-growth-stats{grid-column:1 / -1}}@media(max-width:820px){.teacher-growth-scenery{width:100%;opacity:.34}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-template-columns:1fr}.teacher-growth-stats{grid-column:auto}.teacher-growth-stats>div{grid-template-columns:1fr}}.portal-layout-teacher:has(.teacher-growth-page){grid-template-columns:278px minmax(0,1fr);background:#f3f8fd}.portal-layout-teacher:has(.teacher-growth-page) .sidebar{width:278px;border-right:1px solid #e2ebf5;box-shadow:10px 0 30px #254b760e}.portal-layout-teacher:has(.teacher-growth-page) .sidebar-brand{min-height:94px;gap:13px;padding:16px 17px;color:#102d5c;font-size:19px;font-weight:900}.portal-layout-teacher:has(.teacher-growth-page) .brand-dot{width:62px;height:62px;flex:0 0 62px;border:2px solid #ffffff;border-radius:50%;background-color:#fff;background-image:url(/assets/teacher/student-archive-sunrise.png);background-position:73% 58%;background-size:220px 92px;box-shadow:0 5px 13px #1667992b}.portal-layout-teacher:has(.teacher-growth-page) .brand-dot:after{display:none}.portal-layout-teacher:has(.teacher-growth-page) .sidebar-nav{padding:0 13px 12px;scrollbar-width:none}.portal-layout-teacher:has(.teacher-growth-page) .sidebar-nav::-webkit-scrollbar{display:none}.teacher-archive-nav{display:grid;gap:3px}.archive-nav-item,.archive-nav-parent{min-height:42px;display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:11px;padding:0 12px;border:1px solid transparent;border-radius:9px;color:#264b7b;font-size:15px;font-weight:700;text-decoration:none}.archive-nav-item svg,.archive-nav-parent svg{width:23px;height:23px}.archive-nav-parent b{color:#174a8d;font-size:16px}.archive-nav-item:hover{background:#f2f7fd;color:#0f63e9}.archive-nav-item.active{border-color:#d7e7fb;background:#eaf3ff;color:#0c62ee;box-shadow:4px 5px 12px #1e62bd1c,-3px -3px 8px #ffffffe6}.archive-nav-children{position:relative;display:grid;gap:2px;margin:-1px 0 4px 25px;padding-left:16px}.archive-nav-children:before{content:"";position:absolute;top:2px;bottom:3px;left:0;width:1px;background:#dbe6f3}.archive-nav-child{min-height:37px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid transparent;border-radius:8px;color:#395c86;font-size:13px;font-weight:700;text-decoration:none}.archive-nav-child.active{border-color:#d7e7fb;background:#e7f1ff;color:#0c62ee;box-shadow:4px 5px 12px #1e62bd1f}.archive-nav-child.active span{color:#0c62ee;font-size:20px;line-height:1}.archive-nav-section{padding:7px 12px 3px;color:#7186a4;font-size:11px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-archive-footer{padding:12px 14px 88px;border-top:0;background:#fff}.teacher-archive-account{min-height:66px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid #dfe8f3;border-radius:12px 12px 0 0;background:#f9fcff;color:#1d416f}.teacher-archive-account img{width:46px;height:46px;object-fit:cover;border:2px solid #ffffff;border-radius:50%;box-shadow:0 3px 8px #234f8026}.teacher-archive-account strong,.teacher-archive-account span{display:block}.teacher-archive-account strong{font-size:14px}.teacher-archive-account div span{margin-top:4px;color:#6f82a1;font-size:10px}.teacher-archive-account>span{font-size:15px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-archive-logout{min-height:45px;margin-top:0;gap:9px;border-color:#dfe8f3;border-top:0;border-radius:0 0 12px 12px;color:#264c7d;box-shadow:0 6px 13px #234f8012}.teacher-archive-logout svg{width:20px;height:20px}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-topbar{min-height:60px;height:60px;gap:16px;padding:8px 24px 7px;background:#f3f8fdf0}.portal-layout-teacher:has(.teacher-growth-page) .teacher-topbar .teacher-search{width:393px;min-height:42px;margin-left:auto;border-radius:22px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-topbar-actions{gap:10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-icon-button{width:40px;height:40px;flex-basis:40px;color:#173d72}.portal-layout-teacher:has(.teacher-growth-page) .teacher-icon-button svg{width:25px;height:25px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-topbar-user{display:none}body .portal-layout-teacher .portal-main>.teacher-growth-page{padding:0 0 18px 24px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-profile{min-height:191px;height:191px;grid-template-columns:154px minmax(0,1fr) auto;gap:25px;padding:18px 35px;border-radius:15px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-scenery{position:absolute;z-index:0;top:0;right:0;bottom:auto;width:57%;height:100%;object-fit:fill;opacity:1}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-avatar{width:136px;height:136px;flex:0 0 136px;padding:0;overflow:hidden;border:5px solid #ffffff;background:#eaf3ff;box-shadow:0 0 0 4px #dfedff,7px 8px 17px #214f8229}.teacher-growth-avatar img{width:100%;height:100%;display:block;object-fit:cover}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-identity{align-self:center;max-width:660px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row h1{font-size:29px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row>b{min-height:29px;padding:0 14px;border-radius:9px;font-size:14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta{grid-template-columns:1fr 1.05fr 1.25fr 1fr;margin:18px 0 14px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div{padding:0 19px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dt{font-size:11px;font-weight:700}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dd{margin-top:6px;font-size:13px;font-weight:700}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags{gap:8px;font-size:11px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags b{min-height:27px;padding:0 12px;font-size:11px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-edit{min-height:42px;margin-top:8px;padding:0 17px;border-radius:10px;font-size:12px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:365px 469px minmax(0,1fr);gap:16px;margin-top:13px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column:first-child{grid-template-rows:370px 244px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column:nth-child(2){grid-template-rows:290px 324px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-template-rows:160px 118px 136px 176px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-main-column,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{gap:12px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card{height:100%;border-radius:14px;box-shadow:7px 8px 17px #1e497816,-5px -5px 13px #fffffffa,inset 0 0 0 1px #ffffffbf}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header{min-height:45px;padding:0 16px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header h2{display:flex;align-items:center;gap:8px;font-size:16px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card>header h2>small{color:#54749e;font-size:10px}.teacher-growth-title-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#eaf3ff;color:#0d65ed;box-shadow:3px 4px 8px #1e62bd1a,-2px -2px 6px #fff}.teacher-growth-title-icon svg{width:17px;height:17px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list{padding:1px 12px 10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div{min-height:75px;grid-template-columns:87px 1fr;gap:12px;padding-left:17px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list>div>span{min-height:61px;display:grid;grid-template-columns:37px minmax(0,1fr);align-items:center;gap:9px;padding:8px 10px}.teacher-milestone-list>div>span>i{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:#eaf3ff;color:#176bef;font-style:normal}.teacher-milestone-list>div>span>i.tone-green{background:#e8faf2;color:#12ad73}.teacher-milestone-list>div>span>i.tone-pink{background:#fff0f6;color:#ec4d91}.teacher-milestone-list>div>span>i.tone-blue{background:#e8f7ff;color:#1a9ae2}.teacher-milestone-list>div>span>i svg{width:19px;height:19px}.teacher-milestone-list>div>span>b{min-width:0;font-weight:400}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list strong{overflow:hidden;color:#173963;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.portal-layout-teacher:has(.teacher-growth-page) .teacher-milestone-list small{overflow:hidden;margin-top:4px;color:#697f9e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-radar{min-height:0}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-visual{width:300px;height:166px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-grid{top:18px;left:74px;width:152px;height:130px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-radar-legend{padding-bottom:7px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list{gap:9px;padding:0 11px 10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list>div{min-height:70px;padding:6px 10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list>div>span{width:43px;height:43px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list strong{font-size:12px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-goal-list small{font-size:9px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-recent-training-list{gap:7px;padding:0 11px 8px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-recent-training-list>div{min-height:50px;padding:3px 9px}.teacher-recent-training-list>div.is-placeholder{opacity:.72}.teacher-recent-training-list>div.is-placeholder>b{background:#eef3f8;color:#72829a}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-stats>div{gap:9px;padding:0 11px 11px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-stats>div>section{min-height:93px;padding:10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-stats strong{margin-top:10px;font-size:22px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary>section{margin:0 11px 10px;padding:8px 10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary section>div{grid-template-columns:43px minmax(0,1fr) auto;gap:10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary section>div>span{width:42px;height:42px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary p strong{font-size:10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary p small{margin-top:3px;font-size:8px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-summary .btn{min-height:36px;padding:0 13px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick>div{gap:9px;padding:0 11px 11px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick a{min-height:105px;font-size:10px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-assessment-actions,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-records{margin-top:60px}@media(max-width:1420px){.portal-layout-teacher:has(.teacher-growth-page){grid-template-columns:248px minmax(0,1fr)}.portal-layout-teacher:has(.teacher-growth-page) .sidebar{width:248px}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column,.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-template-rows:none}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card{height:auto}.portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}.portal-layout-teacher:has(.teacher-dashboard),.portal-layout-teacher:has(.teacher-students-page){grid-template-columns:278px minmax(0,1fr);background:#f3f8fd}.portal-layout-teacher:has(.teacher-dashboard) .sidebar,.portal-layout-teacher:has(.teacher-students-page) .sidebar{width:278px;border-right:1px solid #e2ebf5;box-shadow:10px 0 30px #254b760e}.portal-layout-teacher:has(.teacher-dashboard) .sidebar-brand,.portal-layout-teacher:has(.teacher-students-page) .sidebar-brand{min-height:94px;gap:13px;padding:16px 17px;color:#102d5c;font-size:19px;font-weight:900}.portal-layout-teacher:has(.teacher-dashboard) .brand-dot,.portal-layout-teacher:has(.teacher-students-page) .brand-dot{width:62px;height:62px;flex:0 0 62px;border:2px solid #ffffff;border-radius:50%;background-color:#fff;background-image:url(/assets/teacher/student-archive-sunrise.png);background-position:73% 58%;background-size:220px 92px;box-shadow:0 5px 13px #1667992b}.portal-layout-teacher:has(.teacher-dashboard) .brand-dot:after,.portal-layout-teacher:has(.teacher-students-page) .brand-dot:after{display:none}.portal-layout-teacher:has(.teacher-dashboard) .sidebar-nav,.portal-layout-teacher:has(.teacher-students-page) .sidebar-nav{padding:0 13px 12px;scrollbar-width:none}.portal-layout-teacher:has(.teacher-dashboard) .sidebar-nav::-webkit-scrollbar,.portal-layout-teacher:has(.teacher-students-page) .sidebar-nav::-webkit-scrollbar{display:none}.archive-nav-child.is-muted{cursor:default;opacity:.68}.portal-layout-teacher:has(.teacher-dashboard) .teacher-archive-footer,.portal-layout-teacher:has(.teacher-students-page) .teacher-archive-footer{padding:12px 14px 18px;border-top:0;background:#fff}.portal-layout-teacher:has(.teacher-dashboard) .teacher-archive-logout,.portal-layout-teacher:has(.teacher-students-page) .teacher-archive-logout{min-height:45px;margin-top:0;gap:9px;border-color:#dfe8f3;border-top:0;border-radius:0 0 12px 12px;color:#264c7d;box-shadow:0 6px 13px #234f8012}body .portal-layout-teacher:has(.teacher-dashboard) .teacher-topbar,body .portal-layout-teacher:has(.teacher-students-page) .teacher-topbar{min-height:60px;height:60px;gap:16px;padding:8px 24px 7px;background:#f3f8fdf0}.portal-layout-teacher:has(.teacher-dashboard) .teacher-topbar .teacher-search,.portal-layout-teacher:has(.teacher-students-page) .teacher-topbar .teacher-search{width:393px;min-height:42px;margin-left:auto;border-radius:22px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-topbar-actions,.portal-layout-teacher:has(.teacher-students-page) .teacher-topbar-actions{gap:10px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-icon-button,.portal-layout-teacher:has(.teacher-students-page) .teacher-icon-button{width:40px;height:40px;flex-basis:40px;color:#173d72}.portal-layout-teacher:has(.teacher-dashboard) .teacher-icon-button svg,.portal-layout-teacher:has(.teacher-students-page) .teacher-icon-button svg{width:25px;height:25px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-topbar-user,.portal-layout-teacher:has(.teacher-students-page) .teacher-topbar-user{display:none}body .portal-layout-teacher .portal-main>.teacher-dashboard{width:100%;max-width:none;display:grid;gap:13px;padding:10px 24px 22px;color:#163760}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-grid,.portal-layout-teacher:has(.teacher-dashboard) .teacher-today-panel,.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-main-grid,.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-bottom{margin-top:0;margin-bottom:0}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-hero{min-height:70px;padding:4px 2px;border:0;background:transparent;box-shadow:none}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-hero h1{color:#102b54;font-size:25px;line-height:1.2}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-hero p{margin-top:8px;color:#71829c;font-size:12px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-primary-action,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-add{min-height:43px;border:1px solid #1767f1;border-radius:9px;background:linear-gradient(180deg,#3b82ff,#0d60ed);color:#fff;box-shadow:0 7px 15px #1964eb38,inset 0 1px #ffffff57}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-card{min-height:106px;gap:14px;padding:16px 18px;border:1px solid #e4edf7;border-radius:12px;background:#fffffff0;box-shadow:7px 8px 17px #1e497813,-5px -5px 13px #fffffffa}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-icon{width:54px;height:54px;flex:0 0 54px;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffffb8,4px 5px 10px #214b7b14}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-card strong{margin-top:3px;color:#102b54;font-size:29px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-card span:not(.teacher-metric-icon),.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-card small{font-size:11px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-panel{border:1px solid #e4edf7;border-radius:12px;background:#fffffff2;box-shadow:7px 8px 17px #1e497812,-5px -5px 13px #fffffffa}.portal-layout-teacher:has(.teacher-dashboard) .teacher-today-panel{min-height:144px;padding:15px 18px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-panel-heading h2{color:#15365f;font-size:16px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-panel-heading p,.portal-layout-teacher:has(.teacher-dashboard) .teacher-panel-action,.portal-layout-teacher:has(.teacher-dashboard) .teacher-panel-action a{color:#647d9e;font-size:10px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-grid{gap:10px;margin-top:12px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-card{min-height:72px;padding:8px 10px;border-color:#e8eff7;border-radius:9px;box-shadow:3px 4px 9px #204b7a0e}.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-icon{width:38px;height:38px;flex:0 0 38px;border-radius:10px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-copy strong{font-size:18px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-copy b,.portal-layout-teacher:has(.teacher-dashboard) .teacher-todo-copy em{font-size:9px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-main-grid{min-height:252px;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:13px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-main-grid .teacher-panel{min-height:252px;padding:15px 18px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-energy-chart{height:176px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-energy-chart svg{height:150px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-focus-list{gap:3px;margin-top:8px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-focus-item{min-height:43px;padding:4px 2px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-focus-item .teacher-avatar{width:34px;height:34px;flex:0 0 34px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-bottom{min-height:159px;grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr) minmax(0,1fr);gap:13px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-bottom>.teacher-panel{min-height:159px;padding:14px 16px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:12px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-quick-card{min-height:84px;padding:7px 3px;border-color:#e7eef7;border-radius:9px;box-shadow:3px 4px 9px #204b7a0e}.portal-layout-teacher:has(.teacher-dashboard) .teacher-quick-icon{width:37px;height:37px;border-radius:10px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-quick-card strong{font-size:9px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-service-progress{margin-top:7px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-progress-ring{width:91px;height:91px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-ability-grid{gap:7px;margin-top:10px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-ability-card{min-height:49px;padding:7px 9px}body .portal-layout-teacher .portal-main>.teacher-students-page{width:100%;max-width:none;display:grid;gap:13px;padding:15px 24px 21px;color:#163760}.portal-layout-teacher:has(.teacher-students-page) .teacher-list-header,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-filters,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metrics,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table-card{margin-top:0;margin-bottom:0}.portal-layout-teacher:has(.teacher-students-page) .teacher-list-header{min-height:54px;padding:0 2px}.portal-layout-teacher:has(.teacher-students-page) .teacher-list-header h1{color:#102b54;font-size:25px;line-height:1.2}.portal-layout-teacher:has(.teacher-students-page) .teacher-list-header p{margin-top:7px;color:#71829c;font-size:11px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-filters{grid-template-columns:minmax(280px,1.7fr) minmax(145px,.75fr) minmax(155px,.78fr) 83px 126px;gap:11px;padding:0;border:0;background:transparent;box-shadow:none}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-search,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-filters select,.portal-layout-teacher:has(.teacher-students-page) .teacher-filter-reset{min-height:43px;border:1px solid #dde8f4;border-radius:9px;background:#fffffff2;color:#345579;box-shadow:4px 5px 11px #1e49780e,-3px -3px 8px #ffffffeb}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metric{min-height:105px;gap:16px;padding:15px 22px;border:1px solid #e4edf7;border-radius:12px;background:#fffffff2;box-shadow:7px 8px 17px #1e497813,-5px -5px 13px #fffffffa}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metric>span{width:54px;height:54px;flex:0 0 54px;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffffb8,4px 5px 10px #214b7b14}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metric p,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metric em{font-size:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metric strong{color:#102b54;font-size:27px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table-card{min-width:0;overflow:hidden;border:1px solid #e4edf7;border-radius:12px;background:#fffffff7;box-shadow:7px 8px 17px #1e497813,-5px -5px 13px #fffffffa}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table{min-width:0;overflow-x:auto}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table-head,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-row{min-width:1110px;grid-template-columns:minmax(150px,1.45fr) minmax(95px,.78fr) minmax(112px,.95fr) minmax(105px,.93fr) minmax(128px,1.08fr) minmax(115px,.98fr) minmax(85px,.72fr) minmax(132px,1.12fr);gap:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table-head{min-height:48px;padding:0 20px;border-bottom:1px solid #e5edf6;background:#f8fbff;color:#5c7392;font-size:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-row{min-height:66px;padding:6px 20px;border-bottom:1px solid #edf2f7;color:#294b73;font-size:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-row:hover{background:#f7fbff}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-avatar{width:42px;height:42px;flex:0 0 42px;border:2px solid #ffffff;border-radius:50%;background-color:#eaf4ff;background-image:url(/assets/teacher/student-avatar-sprite.png);background-repeat:no-repeat;background-size:300% 200%;box-shadow:0 0 0 2px #e4effb,3px 4px 8px #26528021}.teacher-student-avatar-1{background-position:0 0}.teacher-student-avatar-2{background-position:50% 0}.teacher-student-avatar-3{background-position:100% 0}.teacher-student-avatar-4{background-position:0 100%}.teacher-student-avatar-5{background-position:50% 100%}.teacher-student-avatar-6{background-position:100% 100%}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-info strong{color:#173963;font-size:11px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-info small,.portal-layout-teacher:has(.teacher-students-page) .teacher-last-assessment small,.portal-layout-teacher:has(.teacher-students-page) .teacher-parent-contact small,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-row time{color:#7890ad;font-size:9px}.portal-layout-teacher:has(.teacher-students-page) .teacher-focus-tags span,.portal-layout-teacher:has(.teacher-students-page) .teacher-gender{border-radius:8px;font-size:8px}.portal-layout-teacher:has(.teacher-students-page) .teacher-training-stage>span,.portal-layout-teacher:has(.teacher-students-page) .teacher-last-assessment strong,.portal-layout-teacher:has(.teacher-students-page) .teacher-parent-contact strong{font-size:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-row-actions{gap:5px}.portal-layout-teacher:has(.teacher-students-page) .teacher-row-actions a,.portal-layout-teacher:has(.teacher-students-page) .teacher-row-actions button{min-height:29px;padding:0 8px;border-radius:7px;font-size:9px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-pagination{min-height:52px;padding:8px 18px;border-top:1px solid #edf2f7;font-size:10px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-pagination button{width:30px;height:30px;border-radius:7px}@media(max-width:1420px){.portal-layout-teacher:has(.teacher-dashboard),.portal-layout-teacher:has(.teacher-students-page){grid-template-columns:248px minmax(0,1fr)}.portal-layout-teacher:has(.teacher-dashboard) .sidebar,.portal-layout-teacher:has(.teacher-students-page) .sidebar{width:248px}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-bottom{grid-template-columns:1fr 1fr}.portal-layout-teacher:has(.teacher-dashboard) .teacher-quick-panel{grid-column:1 / -1}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-filters{grid-template-columns:minmax(230px,1fr) minmax(130px,.65fr) minmax(145px,.7fr) 76px 116px}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-table-head,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-row{min-width:900px;grid-template-columns:150px 84px 98px 94px 108px 94px 82px minmax(120px,1fr);gap:7px;padding-right:12px;padding-left:12px}}@media(max-width:1080px){.portal-layout-teacher:has(.teacher-dashboard) .teacher-metric-grid,.portal-layout-teacher:has(.teacher-students-page) .teacher-student-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-layout-teacher:has(.teacher-dashboard) .teacher-dashboard-main-grid{grid-template-columns:1fr}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-filters{grid-template-columns:1fr 1fr}.portal-layout-teacher:has(.teacher-students-page) .teacher-student-search{grid-column:1 / -1}}body .portal-layout-teacher{grid-template-columns:278px minmax(0,1fr);background:#f3f8fd}body .portal-layout-teacher .sidebar{width:278px;border-right:1px solid #e2ebf5;background:#fff;box-shadow:10px 0 30px #254b760e}body .portal-layout-teacher .sidebar-brand{min-height:94px;gap:13px;padding:16px 17px;color:#102d5c;font-size:19px;font-weight:900}body .portal-layout-teacher .brand-dot{width:62px;height:62px;flex:0 0 62px;border:2px solid #ffffff;border-radius:50%;background-color:#fff;background-image:url(/assets/teacher/student-archive-sunrise.png);background-position:73% 58%;background-size:220px 92px;box-shadow:0 5px 13px #1667992b}body .portal-layout-teacher .brand-dot:after{display:none}body .portal-layout-teacher .sidebar-nav{padding:0 13px 12px;scrollbar-width:thin;scrollbar-color:#c9d9e9 transparent}body .portal-layout-teacher .teacher-archive-footer{padding:12px 14px 18px;border-top:0;background:#fff}body .portal-layout-teacher .teacher-archive-logout{min-height:45px;margin-top:0;gap:9px;border-color:#dfe8f3;border-top:0;border-radius:0 0 8px 8px;color:#264c7d;box-shadow:0 6px 13px #234f8012}body .portal-layout-teacher .teacher-topbar.is-archive{min-height:60px;height:60px;gap:16px;padding:8px 24px 7px;background:#f3f8fdf0}body .portal-layout-teacher .teacher-topbar.is-archive .teacher-search{width:393px;min-height:42px;margin-left:auto;border-radius:22px}body .portal-layout-teacher .teacher-topbar.is-archive .teacher-topbar-actions{gap:10px}body .portal-layout-teacher .teacher-topbar.is-archive .teacher-icon-button{width:40px;height:40px;flex-basis:40px;color:#173d72}body .portal-layout-teacher .teacher-topbar.is-archive .teacher-topbar-user{display:none}.teacher-business-nav{gap:3px}.teacher-business-group{display:grid;gap:2px}.teacher-business-toggle{width:100%;cursor:pointer;background:transparent;text-align:left}.teacher-business-toggle:hover,.teacher-business-group.is-current>.teacher-business-toggle{background:#f4f8fd;color:#0e61dd}.teacher-business-group.is-current>.teacher-business-toggle{font-weight:900}.teacher-business-toggle b{font-size:20px;font-weight:600;line-height:1}.teacher-business-children{margin-top:0;margin-bottom:5px}.teacher-business-children>div{display:grid;gap:2px}.teacher-business-section{min-height:25px;display:flex;align-items:flex-end;padding:6px 10px 3px;color:#8799b0;font-size:10px;font-weight:700}.teacher-business-children .archive-nav-child{position:relative;min-height:37px;padding-right:8px}.teacher-business-children .archive-nav-child.active:before{content:"";position:absolute;top:7px;bottom:7px;left:-17px;width:3px;border-radius:2px;background:#1267f3}.teacher-business-children .archive-nav-child.is-muted{justify-content:space-between;color:#93a1b3}.teacher-business-children .archive-nav-child small{color:#a4afbd;font-size:9px;font-weight:600}@media(max-width:1420px){body .portal-layout-teacher{grid-template-columns:248px minmax(0,1fr)}body .portal-layout-teacher .sidebar{width:248px}body .portal-layout-teacher .sidebar-brand{font-size:17px}}@media(max-width:820px){body .portal-layout-teacher{display:block}body .portal-layout-teacher .sidebar,body .portal-layout-teacher .teacher-topbar.is-archive .teacher-search{width:100%}}.teacher-showcase-page{--showcase-navy: #102b54;--showcase-text: #355477;--showcase-muted: #7a8ca5;--showcase-line: #e2ebf5}.teacher-showcase-header-actions{display:flex;align-items:center;gap:10px}.teacher-showcase-secondary{min-height:41px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;border:1px solid #d8e4f0;border-radius:8px;background:#fff;color:#24517f;box-shadow:0 5px 12px #254c7714;font:inherit;font-size:12px;font-weight:800;text-decoration:none}.teacher-showcase-secondary svg{width:17px;height:17px}.teacher-showcase-secondary:disabled,.teacher-workspace-primary:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.55}.teacher-showcase-card{min-height:400px}.teacher-showcase-toolbar{min-height:69px;display:grid;grid-template-columns:minmax(260px,1fr) 164px auto;align-items:center;gap:11px;padding:12px 15px;border-bottom:1px solid var(--showcase-line)}.teacher-report-toolbar{grid-template-columns:minmax(260px,1fr) 180px 142px auto}.teacher-showcase-search{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid #dae5f1;border-radius:8px;background:#fbfdff;color:#6e84a0}.teacher-showcase-search:focus-within{border-color:#92b8ef;box-shadow:0 0 0 3px #1267f314}.teacher-showcase-search svg{width:17px;height:17px;flex:0 0 17px}.teacher-showcase-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--showcase-navy);font:inherit;font-size:12px}.teacher-showcase-toolbar select{min-height:42px;padding:0 12px;border:1px solid #dae5f1;border-radius:8px;outline:0;background:#fff;color:#405e82;font:inherit;font-size:12px}.teacher-showcase-count{color:#7186a1;font-size:11px;text-align:right;white-space:nowrap}.teacher-showcase-table-wrap{width:100%;overflow-x:auto}.teacher-showcase-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:auto}.teacher-showcase-table th{height:47px;padding:0 14px;border-bottom:1px solid var(--showcase-line);background:#fbfdff;color:#526d8e;font-size:10px;font-weight:800;text-align:left;white-space:nowrap}.teacher-showcase-table td{height:66px;padding:9px 14px;border-bottom:1px solid #edf2f7;color:#3f5d80;font-size:11px;vertical-align:middle}.teacher-showcase-table tbody tr:hover{background:#f8fbff}.teacher-showcase-table tbody tr:last-child td{border-bottom:0}.teacher-class-name,.teacher-student-cell{display:flex;align-items:center;gap:10px}.teacher-class-name>span{width:37px;height:37px;flex:0 0 37px;display:grid;place-items:center;border-radius:8px;background:#eaf3ff;color:#1267f3}.teacher-class-name svg{width:20px;height:20px}.teacher-class-name strong,.teacher-student-cell strong{display:block;color:#17385f;font-size:11px}.teacher-class-name small,.teacher-student-cell small,.teacher-table-sub{display:block;margin-top:4px;color:#8a9aaf;font-size:9px}.teacher-showcase-avatar{width:35px;height:35px;flex:0 0 35px;display:block;border:2px solid #ffffff;border-radius:50%;background-image:url(/assets/teacher/student-avatar-sprite.png);background-repeat:no-repeat;background-size:300% 200%;box-shadow:0 2px 8px #1f4b7b29}.teacher-showcase-avatar.avatar-1{background-position:0 0}.teacher-showcase-avatar.avatar-2{background-position:50% 0}.teacher-showcase-avatar.avatar-3{background-position:100% 0}.teacher-showcase-avatar.avatar-4{background-position:0 100%}.teacher-table-progress{min-width:112px;display:flex;align-items:center;gap:8px}.teacher-table-progress>span{width:72px;height:6px;overflow:hidden;border-radius:4px;background:#e4edf7}.teacher-table-progress i{height:100%;display:block;border-radius:inherit;background:#1267f3}.teacher-table-progress b{color:#33597f;font-size:10px}.teacher-showcase-status{display:inline-flex;align-items:center;justify-content:center;min-width:54px;min-height:25px;padding:0 8px;border-radius:13px;font-size:9px;font-weight:800;white-space:nowrap}.teacher-showcase-status.is-success{background:#eaf8f1;color:#089d5a}.teacher-showcase-status.is-waiting{background:#fff3e6;color:#e96c0b}.teacher-showcase-status.is-draft{background:#eef2f6;color:#667b95}.teacher-table-action{display:inline-flex;align-items:center;gap:3px;color:#1267e9;font-size:10px;font-weight:800;text-decoration:none;white-space:nowrap}.teacher-table-action svg{width:13px;height:13px}.teacher-table-actions{display:flex;align-items:center;gap:10px}.teacher-showcase-footer{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 15px;border-top:1px solid var(--showcase-line);color:#8292a8;font-size:10px}.teacher-showcase-footer>div{display:flex;align-items:center;gap:6px}.teacher-showcase-footer button,.teacher-showcase-footer b{min-width:32px;min-height:30px;display:grid;place-items:center;padding:0 8px;border:1px solid #e0e8f1;border-radius:7px;background:#fff;color:#68809c;font:inherit}.teacher-showcase-footer b{border-color:#1267f3;background:#1267f3;color:#fff}.teacher-class-profile{min-height:115px;display:grid;grid-template-columns:72px repeat(4,minmax(0,1fr));align-items:center;gap:18px;padding:17px 21px}.teacher-class-profile-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:10px;background:#eaf3ff;color:#1267f3}.teacher-class-profile-icon svg{width:34px;height:34px}.teacher-class-profile>div:not(:first-child){min-width:0;padding-left:18px;border-left:1px solid #e7eef6}.teacher-class-profile span,.teacher-class-profile small{display:block;color:#8495aa;font-size:9px}.teacher-class-profile strong{display:block;margin:7px 0 5px;overflow:hidden;color:#173a64;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.teacher-class-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:13px}.teacher-class-progress-card,.teacher-class-team-card{min-height:286px;padding:17px 19px}.teacher-class-progress-card>header,.teacher-class-team-card>header,.teacher-showcase-section-head,.teacher-settings-section>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.teacher-class-progress-card h2,.teacher-class-team-card h2,.teacher-showcase-section-head h2,.teacher-settings-section h2,.teacher-resource-preview h2{margin:0;color:var(--showcase-navy);font-size:14px}.teacher-class-progress-card p,.teacher-showcase-section-head p,.teacher-settings-section p{margin:5px 0 0;color:#8394aa;font-size:9px}.teacher-class-progress-card>header>span,.teacher-class-team-card>header>span{color:#8798ad;font-size:9px}.teacher-class-bars{height:205px;display:grid;grid-template-columns:repeat(8,minmax(24px,1fr));align-items:end;gap:12px;padding:22px 4px 0;border-bottom:1px solid #dfe8f2;background-image:linear-gradient(to bottom,transparent 24%,#eef3f8 25%,transparent 26%,transparent 49%,#eef3f8 50%,transparent 51%,transparent 74%,#eef3f8 75%,transparent 76%)}.teacher-class-bars>div{height:100%;display:grid;grid-template-rows:minmax(0,1fr) 22px;align-items:end;gap:6px}.teacher-class-bars span{width:min(28px,100%);min-height:24px;display:block;justify-self:center;position:relative;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#2e7cf4,#86baf7)}.teacher-class-bars b{position:absolute;top:-17px;left:50%;color:#31577f;font-size:8px;transform:translate(-50%)}.teacher-class-bars small{color:#8798ad;font-size:8px;text-align:center;white-space:nowrap}.teacher-team-member{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid #edf2f7}.teacher-team-member>div{min-width:0;flex:1}.teacher-team-member strong,.teacher-team-member small{display:block}.teacher-team-member strong{color:#27496f;font-size:11px}.teacher-team-member small{margin-top:4px;color:#8798ad;font-size:8px}.teacher-team-member>b{padding:4px 8px;border-radius:10px;background:#eaf3ff;color:#1267e9;font-size:8px}.teacher-class-team-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 0}.teacher-class-team-card dl div{min-width:0;padding:8px;border-radius:7px;background:#f6f9fc;text-align:center}.teacher-class-team-card dt{color:#8a99ac;font-size:8px}.teacher-class-team-card dd{margin:5px 0 0;color:#254a75;font-size:10px;font-weight:800}.teacher-showcase-section-head{min-height:68px;padding:11px 15px;border-bottom:1px solid var(--showcase-line)}.teacher-showcase-section-head .teacher-showcase-search{width:280px}.teacher-report-code{color:#45688d;font-family:Consolas,Courier New,monospace;font-size:9px}.teacher-report-score{color:#145fcd;font-size:13px}.teacher-resource-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px}.teacher-resource-tabs,.teacher-density-control{display:inline-flex;overflow:hidden;border:1px solid #dce7f2;border-radius:8px;background:#fff}.teacher-resource-tabs button,.teacher-density-control button{min-height:39px;padding:0 17px;border:0;border-right:1px solid #e4ecf4;background:transparent;color:#657d99;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.teacher-resource-tabs button:last-child,.teacher-density-control button:last-child{border-right:0}.teacher-resource-tabs button.active,.teacher-density-control button.active{background:#1267f3;color:#fff}.teacher-resource-toolbar .teacher-showcase-search{width:300px}.teacher-resource-phase-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:18px;align-items:stretch;padding:18px;border:1px solid #dbe8f5;border-radius:8px;background:#fff;box-shadow:7px 8px 17px #1e49780f}.teacher-resource-phase-panel>div{display:grid;align-content:center;gap:8px}.teacher-resource-phase-panel span,.teacher-resource-area-card small{color:#607a99;font-size:10px;font-weight:800}.teacher-resource-phase-panel>div>span{width:fit-content;padding:4px 9px;border-radius:999px;background:#eef6ff;color:#1267e9}.teacher-resource-phase-panel h2{margin:0;color:#17385f;font-size:20px}.teacher-resource-phase-panel p{max-width:720px;margin:0;color:#5d7796;font-size:13px;line-height:1.7}.teacher-resource-phase-panel ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.teacher-resource-phase-panel li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center;padding:11px 12px;border-radius:8px;background:#f7fafc}.teacher-resource-phase-panel li strong{color:#17385f;font-size:12px}.teacher-resource-phase-panel li span{color:#607a99;font-size:12px;line-height:1.5}.teacher-resource-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.teacher-resource-area-card{min-height:218px;display:grid;grid-template-rows:auto 1fr auto;gap:14px;padding:16px;border:1px solid #e1eaf4;border-radius:8px;background:#fff;box-shadow:7px 8px 17px #1e497812}.teacher-resource-area-card>header,.teacher-resource-area-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.teacher-resource-area-card>header>span{width:42px;height:42px;display:grid;flex:0 0 42px;place-items:center;border-radius:8px;background:#eaf3ff;color:#1267f3}.teacher-resource-area-card.is-green>header>span{background:#eaf8f1;color:#0a9e5c}.teacher-resource-area-card.is-orange>header>span{background:#fff3e6;color:#eb7413}.teacher-resource-area-card.is-violet>header>span{background:#f0edff;color:#6552ea}.teacher-resource-area-card>header svg{width:23px;height:23px}.teacher-resource-area-card>header b{flex:0 1 auto;min-width:0;padding:4px 8px;border-radius:999px;background:#f2f5f8;color:#637c98;font-size:10px;overflow-wrap:anywhere}.teacher-resource-area-card h2{margin:6px 0 0;color:#17385f;font-size:16px}.teacher-resource-area-card p{margin:8px 0 0;color:#667f9c;font-size:12px;line-height:1.65}.teacher-resource-area-card>footer{padding-top:12px;border-top:1px solid #edf2f7}.teacher-resource-area-card>footer strong{color:#17385f;font-size:18px}.teacher-resource-area-card>footer small{margin-left:3px;color:#8395aa;font-size:11px}.teacher-resource-area-action{display:inline-flex;align-items:center;gap:4px;min-height:36px;color:#1267e9;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}.teacher-resource-area-action svg{width:14px;height:14px}.teacher-resource-area-action.is-disabled{color:#899aaf}.teacher-resource-library-head{margin-top:2px}.teacher-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.teacher-resource-card{min-height:240px;display:grid;grid-template-rows:auto 1fr auto auto;gap:14px;padding:16px;border:1px solid #e1eaf4;border-radius:10px;background:#fff;box-shadow:7px 8px 17px #1e497812}.teacher-resource-card>header,.teacher-resource-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.teacher-resource-card>header>span{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#eaf3ff;color:#1267f3}.teacher-resource-card.is-green>header>span{background:#eaf8f1;color:#0a9e5c}.teacher-resource-card.is-orange>header>span{background:#fff3e6;color:#eb7413}.teacher-resource-card.is-violet>header>span{background:#f0edff;color:#6552ea}.teacher-resource-card>header svg{width:23px;height:23px}.teacher-resource-card>header b{padding:4px 8px;border-radius:10px;background:#f2f5f8;color:#6f8299;font-size:8px}.teacher-resource-card small{color:#6e8bad;font-size:8px;font-weight:800}.teacher-resource-card h2{margin:6px 0 0;color:#17385f;font-size:13px}.teacher-resource-card p{margin:8px 0 0;color:#7488a1;font-size:9px;line-height:1.65}.teacher-resource-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.teacher-resource-card dl div{padding:8px 9px;border-radius:7px;background:#f7fafc}.teacher-resource-card dt{color:#8c9caf;font-size:8px}.teacher-resource-card dd{margin:4px 0 0;color:#34587f;font-size:9px;font-weight:800}.teacher-resource-card>footer{padding-top:12px;border-top:1px solid #edf2f7}.teacher-resource-card>footer>span{color:#8c9caf;font-size:8px}.teacher-resource-card>footer button,.teacher-resource-detail-link{display:inline-flex;align-items:center;gap:3px;padding:0;border:0;background:transparent;color:#1267e9;font:inherit;font-size:10px;font-weight:800;cursor:pointer;text-decoration:none}.teacher-resource-card>footer svg{width:13px;height:13px}.teacher-resource-preview{min-height:105px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:15px;padding:16px 18px}.teacher-resource-preview-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:10px;background:#eaf3ff;color:#1267f3}.teacher-resource-preview-icon.is-green{background:#eaf8f1;color:#0a9e5c}.teacher-resource-preview-icon.is-orange{background:#fff3e6;color:#eb7413}.teacher-resource-preview-icon.is-violet{background:#f0edff;color:#6552ea}.teacher-resource-preview-icon svg{width:28px;height:28px}.teacher-resource-preview small{color:#8193aa;font-size:8px}.teacher-resource-preview h2{margin-top:4px}.teacher-resource-preview p{margin:6px 0 3px;color:#647d99;font-size:9px}.teacher-resource-preview>div>span{color:#8b9caf;font-size:8px}.teacher-resource-state{padding:42px 20px;color:#657d99;text-align:center}.teacher-resource-state strong{display:block;margin-bottom:7px;color:#17385f;font-size:16px}.teacher-resource-state p{margin:0 0 16px}.teacher-resource-load-error{display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-resource-load-error .btn{flex:0 0 auto}.teacher-resource-pagination{display:flex;align-items:center;justify-content:center;gap:12px;color:#657d99;font-size:12px}.teacher-resource-upload-form{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.15fr);gap:24px;padding:24px}.teacher-resource-file-drop{min-height:340px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:28px;border:2px dashed #c9d9eb;border-radius:12px;background:#f8fbff;color:#657d99;text-align:center;transition:.18s ease}.teacher-resource-file-drop.is-dragging{border-color:#1267f3;background:#edf5ff;transform:translateY(-2px)}.teacher-resource-file-drop strong{max-width:100%;color:#17385f;font-size:16px;overflow-wrap:anywhere}.teacher-resource-file-drop p{max-width:420px;margin:0 0 6px;line-height:1.6}.teacher-resource-upload-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:16px}.teacher-resource-upload-fields label{display:grid;gap:7px;color:#405e82;font-size:13px;font-weight:700}.teacher-resource-upload-fields input,.teacher-resource-upload-fields select,.teacher-resource-upload-fields textarea{width:100%;min-height:42px;padding:10px 12px;border:1px solid #d8e4f0;border-radius:8px;background:#fff;color:#17385f;font:inherit;font-weight:400}.teacher-resource-upload-fields textarea{resize:vertical}.teacher-resource-upload-fields .is-wide{grid-column:1 / -1}.teacher-resource-upload-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.teacher-resource-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;background:#e5edf6}.teacher-resource-detail-meta>div{min-width:0;padding:16px;background:#fff}.teacher-resource-detail-meta span,.teacher-resource-detail-meta strong{display:block}.teacher-resource-detail-meta span{color:#8193aa;font-size:11px}.teacher-resource-detail-meta strong{margin-top:6px;color:#17385f;font-size:13px;overflow-wrap:anywhere}.teacher-resource-description{padding:20px}.teacher-resource-description h2,.teacher-resource-preview-panel h2{margin:0 0 12px;color:#17385f;font-size:16px}.teacher-resource-description p{margin:0;color:#526d8e;line-height:1.75;white-space:pre-wrap}.teacher-resource-preview-panel{padding:18px}.teacher-resource-preview-panel iframe{width:100%;height:min(72vh,880px);min-height:560px;border:1px solid #dce6f1;border-radius:8px;background:#f6f8fb}.teacher-resource-preview-panel img,.teacher-resource-preview-panel video{display:block;width:auto;max-width:100%;max-height:75vh;margin:0 auto;border-radius:8px}.teacher-resource-preview-panel audio{width:100%}.teacher-resource-preview-loading{min-height:220px;display:grid;place-items:center;margin:0;border:1px dashed #d3dfec;border-radius:8px;background:#f8fbff;color:#657d99}.teacher-resource-preview-fallback{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px}.teacher-resource-preview-fallback>svg{width:40px;color:#1267f3}.teacher-resource-preview-fallback h2{margin:0;color:#17385f;font-size:15px}.teacher-resource-preview-fallback p{margin:6px 0 0;color:#7186a1}.teacher-resource-danger-zone{display:flex;justify-content:flex-end}.teacher-notice-card{min-height:480px}.teacher-notice-tabs{min-height:58px;display:flex;align-items:flex-end;gap:23px;padding:0 18px;border-bottom:1px solid var(--showcase-line)}.teacher-notice-tabs button{min-height:47px;display:inline-flex;align-items:center;gap:6px;padding:9px 2px 8px;border:0;border-bottom:2px solid transparent;background:transparent;color:#7186a0;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.teacher-notice-tabs button.active{border-bottom-color:#1267f3;color:#1267e9}.teacher-notice-tabs b{min-width:18px;height:18px;display:grid;place-items:center;border-radius:9px;background:#eaf3ff;font-size:8px}.teacher-notice-list article{min-height:92px;display:grid;grid-template-columns:45px minmax(0,1fr) 35px;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid #edf2f7;background:#fff}.teacher-notice-list article.is-unread{background:#f7fbff}.teacher-notice-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:9px;background:#eaf8f1;color:#0a9e5c}.teacher-notice-icon.is-report{background:#fff3e6;color:#eb7413}.teacher-notice-icon.is-system{background:#f0edff;color:#6552ea}.teacher-notice-icon svg{width:22px;height:22px}.teacher-notice-list article>div>div{display:flex;align-items:center;gap:8px}.teacher-notice-list strong{color:#254a73;font-size:11px}.teacher-notice-list i{padding:3px 7px;border-radius:8px;background:#eaf3ff;color:#1267e9;font-size:7px;font-style:normal}.teacher-notice-list p{margin:6px 0;color:#6e839c;font-size:9px;line-height:1.5}.teacher-notice-list small{color:#96a3b4;font-size:8px}.teacher-notice-list article>a,.teacher-notice-list article>button{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e0e9f2;border-radius:8px;background:#fff;color:#53749a;cursor:pointer}.teacher-notice-list article>a svg,.teacher-notice-list article>button svg{width:16px;height:16px}.teacher-showcase-empty{min-height:300px;display:grid;place-items:center;align-content:center;gap:8px;color:#8295ab}.teacher-showcase-empty svg{width:38px;height:38px;color:#20a56a}.teacher-showcase-empty strong{color:#34577d;font-size:12px}.teacher-showcase-empty span{font-size:9px}.teacher-settings-saved{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 14px;border:1px solid #b8ead2;border-radius:8px;background:#edfbf4;color:#087b48;font-size:10px;font-weight:800}.teacher-settings-saved svg{width:17px;height:17px}.teacher-settings-layout{display:grid;grid-template-columns:205px minmax(0,1fr);align-items:start;gap:13px}.teacher-settings-nav{position:sticky;top:72px;display:grid;gap:3px;padding:10px}.teacher-settings-nav button{min-height:43px;display:flex;align-items:center;gap:10px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#617b98;cursor:pointer;font-size:10px;font-weight:700;text-align:left;text-decoration:none}.teacher-settings-nav button.active,.teacher-settings-nav button:hover{background:#eaf3ff;color:#1267e9}.teacher-settings-nav svg{width:18px;height:18px}.teacher-settings-content{display:grid;gap:13px}.teacher-settings-section{scroll-margin-top:80px;padding:18px 19px}.teacher-settings-section.is-hidden{display:none}.teacher-settings-section>header{min-height:48px;padding-bottom:13px;border-bottom:1px solid #e8eef5}.teacher-settings-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#eaf3ff;color:#1267e9;font-size:15px;font-weight:900}.teacher-settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding-top:17px}.teacher-settings-fields label{display:grid;gap:7px}.teacher-settings-fields label.is-wide{grid-column:1 / -1}.teacher-settings-fields label>span,.teacher-settings-options>div>span{color:#58718e;font-size:9px;font-weight:800}.teacher-settings-fields input{min-height:42px;padding:0 12px;border:1px solid #dce6f0;border-radius:7px;outline:0;background:#fbfdff;color:#294d75;font:inherit;font-size:10px}.teacher-settings-fields input:focus{border-color:#8db6ef;box-shadow:0 0 0 3px #1267f314}.teacher-settings-fields input:disabled{color:#8c9caf;background:#f3f6f9}.teacher-settings-options{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:17px}.teacher-settings-options>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.teacher-color-swatches{display:flex;gap:9px}.teacher-color-swatches button{width:29px;height:29px;display:grid;place-items:center;border:2px solid #ffffff;border-radius:7px;color:#fff;cursor:pointer;box-shadow:0 0 0 1px #d8e3ee}.teacher-color-swatches button.active{box-shadow:0 0 0 2px #6f93bd}.teacher-color-swatches svg{width:15px;height:15px}.teacher-toggle-list{display:grid}.teacher-toggle-row{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #edf2f7;cursor:pointer}.teacher-toggle-row:last-child{border-bottom:0}.teacher-toggle-row strong,.teacher-toggle-row small{display:block}.teacher-toggle-row strong{color:#31557b;font-size:10px}.teacher-toggle-row small{margin-top:5px;color:#8697ab;font-size:8px}.teacher-toggle-row input{position:absolute;opacity:0;pointer-events:none}.teacher-toggle-row>i{width:38px;height:22px;flex:0 0 38px;position:relative;border-radius:11px;background:#ced8e4;transition:background .16s ease}.teacher-toggle-row>i b{width:16px;height:16px;position:absolute;top:3px;left:3px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #21406233;transition:transform .16s ease}.teacher-toggle-row input:checked+i{background:#1267f3}.teacher-toggle-row input:checked+i b{transform:translate(16px)}@media(max-width:1180px){.teacher-report-toolbar{grid-template-columns:minmax(230px,1fr) 160px 130px}.teacher-report-toolbar .teacher-showcase-count{display:none}.teacher-resource-area-grid,.teacher-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-resource-upload-form{grid-template-columns:1fr}.teacher-class-profile{grid-template-columns:62px repeat(2,minmax(0,1fr))}.teacher-class-profile>div:nth-child(4){border-left:0}.teacher-class-detail-grid{grid-template-columns:1fr}}@media(max-width:760px){.teacher-showcase-header-actions,.teacher-resource-toolbar,.teacher-showcase-section-head{width:100%;align-items:stretch;flex-direction:column}.teacher-showcase-header-actions>*,.teacher-resource-toolbar .teacher-showcase-search,.teacher-showcase-section-head .teacher-showcase-search{width:100%}.teacher-resource-phase-panel,.teacher-resource-area-grid{grid-template-columns:1fr}.teacher-resource-phase-panel{padding:14px}.teacher-resource-phase-panel li{grid-template-columns:1fr}.teacher-resource-area-card{min-height:0}.teacher-resource-area-card>footer{align-items:flex-start;flex-direction:column}.teacher-resource-area-action{min-height:44px}.teacher-showcase-toolbar,.teacher-report-toolbar{grid-template-columns:1fr}.teacher-showcase-count{text-align:left}.teacher-class-profile{grid-template-columns:1fr}.teacher-class-profile-icon{display:none}.teacher-class-profile>div:not(:first-child){padding:10px 0;border-left:0;border-bottom:1px solid #e7eef6}.teacher-resource-tabs{width:100%;overflow-x:auto}.teacher-resource-tabs button{min-height:44px;flex:1 0 auto;font-size:12px}.teacher-resource-grid{grid-template-columns:1fr}.teacher-resource-card{min-height:0}.teacher-resource-card h2{font-size:16px}.teacher-resource-card p{font-size:13px}.teacher-resource-card small,.teacher-resource-card dt,.teacher-resource-card dd,.teacher-resource-card>footer>span,.teacher-resource-detail-link{font-size:12px}.teacher-resource-detail-link{min-height:44px;padding:0 8px}.teacher-resource-preview{grid-template-columns:48px minmax(0,1fr)}.teacher-resource-preview>button{grid-column:1 / -1}.teacher-resource-pagination{flex-wrap:wrap}.teacher-resource-upload-form{padding:14px}.teacher-resource-file-drop{min-height:230px;padding:20px 14px}.teacher-resource-upload-fields,.teacher-resource-detail-meta{grid-template-columns:1fr}.teacher-resource-upload-fields .is-wide{grid-column:auto}.teacher-resource-upload-actions{align-items:stretch;flex-direction:column-reverse}.teacher-resource-upload-actions>*,.teacher-showcase-header-actions>*{width:100%;min-height:44px}.teacher-resource-load-error{align-items:stretch;flex-direction:column}.teacher-resource-load-error .btn,.teacher-resource-state .btn{width:100%;min-height:44px}.teacher-resource-preview-panel{padding:12px}.teacher-resource-preview-panel iframe{min-height:62vh}.teacher-resource-preview-fallback{grid-template-columns:1fr;text-align:center}.teacher-resource-preview-fallback>svg{margin:0 auto}.teacher-resource-preview-fallback .btn,.teacher-resource-danger-zone .btn{width:100%;min-height:44px}.teacher-notice-tabs{overflow-x:auto}.teacher-notice-tabs button{flex:0 0 auto}.teacher-notice-list article{grid-template-columns:39px minmax(0,1fr) 31px;padding:12px}.teacher-notice-icon{width:38px;height:38px}.teacher-settings-layout{grid-template-columns:1fr}.teacher-settings-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-settings-fields,.teacher-settings-options{grid-template-columns:1fr}.teacher-settings-options>div{align-items:flex-start;flex-direction:column}}.teacher-learning-page{--learning-navy: #102b54;--learning-text: #385979;--learning-muted: #8192a8}.teacher-learning-student{min-height:108px;display:grid;grid-template-columns:70px minmax(180px,.8fr) minmax(340px,1.6fr) minmax(280px,1fr);align-items:center;gap:17px;padding:16px 20px}.teacher-learning-student>img{width:66px;height:66px;object-fit:cover;border:4px solid #ffffff;border-radius:50%;background:#eaf3ff;box-shadow:0 5px 13px #1e4a7a2b}.teacher-learning-student>div:nth-child(2) span,.teacher-learning-tags>span{color:#8496ac;font-size:8px;font-weight:800}.teacher-learning-student h2{margin:4px 0 0;color:var(--learning-navy);font-size:18px}.teacher-learning-student p{margin:5px 0 0;color:#7388a2;font-size:9px}.teacher-learning-student dl{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.teacher-learning-student dl>div{min-width:0;padding:3px 15px;border-left:1px solid #e6edf5}.teacher-learning-student dt{color:#8496ac;font-size:8px}.teacher-learning-student dd{margin:7px 0 0;overflow:hidden;color:#2a4e77;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.teacher-learning-tags{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-left:17px;border-left:1px solid #e6edf5}.teacher-learning-tags>span{width:100%}.teacher-learning-tags b{padding:5px 9px;border:1px solid #dce8f4;border-radius:12px;background:#f8fbff;color:#3d628b;font-size:8px;white-space:nowrap}.teacher-learning-top-grid,.teacher-learning-bottom-grid{display:grid;gap:13px}.teacher-learning-top-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr)}.teacher-learning-bottom-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.75fr)}.teacher-learning-trend,.teacher-learning-ability,.teacher-learning-goals,.teacher-learning-next{min-height:300px;padding:17px 19px}.teacher-learning-trend>header,.teacher-learning-ability>header,.teacher-learning-goals>header,.teacher-learning-next>header,.teacher-learning-records>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.teacher-learning-trend h2,.teacher-learning-ability h2,.teacher-learning-goals h2,.teacher-learning-next h2,.teacher-learning-records h2{margin:0;color:var(--learning-navy);font-size:14px}.teacher-learning-trend header p,.teacher-learning-ability header p,.teacher-learning-goals header p,.teacher-learning-next header p,.teacher-learning-records header p{margin:5px 0 0;color:var(--learning-muted);font-size:8px}.teacher-learning-trend>header>span{display:inline-flex;align-items:center;gap:6px;color:#6e839e;font-size:8px}.teacher-learning-trend>header i{width:17px;height:3px;border-radius:2px;background:#1267f3}.teacher-learning-chart{min-width:0;height:235px;display:grid;grid-template-columns:27px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 22px;gap:0 9px;padding-top:19px}.teacher-learning-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:2px;color:#96a4b6;font-size:7px;text-align:right}.teacher-learning-chart svg{width:100%;height:100%;overflow:visible}.teacher-learning-chart svg .grid{fill:none;stroke:#e8eef5;stroke-width:1}.teacher-learning-chart svg polygon{fill:#1267f317;stroke:none}.teacher-learning-chart svg polyline{fill:none;stroke:#1267f3;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.teacher-learning-chart svg circle{fill:#fff;stroke:#1267f3;stroke-width:3}.teacher-learning-x-axis{grid-column:2;display:grid;grid-template-columns:repeat(8,1fr);color:#8e9db0;font-size:7px;text-align:center}.teacher-learning-ability>header a,.teacher-learning-goals>header a{color:#1267e9;font-size:8px;font-weight:800;text-decoration:none}.teacher-ability-list{display:grid;gap:20px;padding-top:25px}.teacher-ability-list>div{display:grid;grid-template-columns:62px minmax(80px,1fr) 28px 30px;align-items:center;gap:8px}.teacher-ability-list span{color:#4d6a8a;font-size:9px;font-weight:700}.teacher-ability-list i,.teacher-learning-goals article div>i{height:7px;overflow:hidden;border-radius:4px;background:#e5edf6}.teacher-ability-list i b,.teacher-learning-goals article div>i b{height:100%;display:block;border-radius:inherit;background:#1267f3}.teacher-ability-list strong{color:#284e77;font-size:10px}.teacher-ability-list em{color:#0a9f5c;font-size:8px;font-style:normal;font-weight:800}.teacher-learning-goals>div{display:grid;gap:10px;padding-top:18px}.teacher-learning-goals article{min-height:65px;display:grid;grid-template-columns:39px minmax(0,1fr) 38px;align-items:center;gap:11px;padding:9px 11px;border:1px solid #e6edf5;border-radius:8px;background:#fbfdff}.teacher-learning-goals article>span{width:35px;height:35px;display:grid;place-items:center;border-radius:8px;background:#eaf3ff;color:#1267f3}.teacher-learning-goals article>span.is-green{background:#eaf8f1;color:#0a9f5c}.teacher-learning-goals article>span.is-orange{background:#fff3e6;color:#eb7413}.teacher-learning-goals article>span svg{width:18px;height:18px}.teacher-learning-goals article div{min-width:0;display:grid;gap:4px}.teacher-learning-goals article strong{color:#294e75;font-size:10px}.teacher-learning-goals article small{overflow:hidden;color:#8192a7;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.teacher-learning-goals article em{color:#456788;font-size:9px;font-style:normal;font-weight:800}.teacher-learning-next>header>span{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:#eaf3ff;color:#1267f3}.teacher-learning-next>header svg{width:23px;height:23px}.teacher-learning-next>div{padding:22px 0 18px}.teacher-learning-next>div>strong{color:#234970;font-size:12px}.teacher-learning-next>div>p{margin:7px 0 17px;color:#768ba3;font-size:8px}.teacher-learning-next dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0}.teacher-learning-next dl div{padding:9px 8px;border-radius:7px;background:#f5f9fc;text-align:center}.teacher-learning-next dt{color:#8c9bae;font-size:7px}.teacher-learning-next dd{margin:5px 0 0;color:#31577f;font-size:8px;font-weight:800}.teacher-learning-next>a{min-height:38px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #dce7f2;border-radius:8px;color:#1267e9;font-size:9px;font-weight:800;text-decoration:none}.teacher-learning-next>a svg{width:14px;height:14px}.teacher-learning-records{overflow:hidden}.teacher-learning-records>header{min-height:65px;padding:12px 17px;border-bottom:1px solid #e5edf6}.teacher-learning-records>header>span{color:#8192a7;font-size:8px}@media(max-width:1180px){.teacher-learning-student{grid-template-columns:66px minmax(160px,.8fr) minmax(300px,1.5fr)}.teacher-learning-tags{grid-column:2 / -1;padding:10px 0 0;border-top:1px solid #e6edf5;border-left:0}.teacher-learning-tags>span{width:auto}.teacher-learning-top-grid,.teacher-learning-bottom-grid{grid-template-columns:1fr}}@media(max-width:760px){.teacher-learning-student{grid-template-columns:58px minmax(0,1fr)}.teacher-learning-student>img{width:54px;height:54px}.teacher-learning-student dl,.teacher-learning-tags{grid-column:1 / -1}.teacher-learning-student dl{grid-template-columns:1fr}.teacher-learning-student dl>div{padding:9px 0;border-left:0;border-bottom:1px solid #e6edf5}.teacher-learning-trend,.teacher-learning-ability,.teacher-learning-goals,.teacher-learning-next{padding:14px}.teacher-learning-chart{height:205px}.teacher-learning-x-axis span:nth-child(2n){display:none}.teacher-ability-list>div{grid-template-columns:58px minmax(70px,1fr) 25px 27px}.teacher-learning-next dl{grid-template-columns:1fr}}html,html[data-teacher-accent=blue]{--teacher-ui-accent: #1267f3;--teacher-ui-accent-rgb: 18, 103, 243;--teacher-ui-accent-dark: #0c58d4;--teacher-ui-soft: #eaf3ff;--teacher-ui-border: #cfe0f7}html[data-teacher-accent=cyan]{--teacher-ui-accent: #0e9caa;--teacher-ui-accent-rgb: 14, 156, 170;--teacher-ui-accent-dark: #087b87;--teacher-ui-soft: #e8f7f8;--teacher-ui-border: #c8e9eb}html[data-teacher-accent=green]{--teacher-ui-accent: #12a565;--teacher-ui-accent-rgb: 18, 165, 101;--teacher-ui-accent-dark: #087c4a;--teacher-ui-soft: #eaf8f1;--teacher-ui-border: #cbe9da}html[data-teacher-accent=violet]{--teacher-ui-accent: #6b52ef;--teacher-ui-accent-rgb: 107, 82, 239;--teacher-ui-accent-dark: #563bd7;--teacher-ui-soft: #f0edff;--teacher-ui-border: #dcd5ff}html[data-teacher-accent] body .portal-layout-teacher .teacher-workspace-primary,html[data-teacher-accent] body .portal-layout-teacher .btn-primary,html[data-teacher-accent] body .portal-layout-teacher .teacher-task-tabs button.active,html[data-teacher-accent] body .portal-layout-teacher .teacher-resource-tabs button.active,html[data-teacher-accent] body .portal-layout-teacher .teacher-density-control button.active{border-color:var(--teacher-ui-accent);background:var(--teacher-ui-accent);box-shadow:0 7px 15px rgba(var(--teacher-ui-accent-rgb),.2)}html[data-teacher-accent] body .portal-layout-teacher .teacher-business-toggle:hover,html[data-teacher-accent] body .portal-layout-teacher .teacher-business-group.is-current>.teacher-business-toggle,html[data-teacher-accent] body .portal-layout-teacher .teacher-settings-nav button.active,html[data-teacher-accent] body .portal-layout-teacher .teacher-settings-nav button:hover{background:var(--teacher-ui-soft);color:var(--teacher-ui-accent-dark)}html[data-teacher-accent] body .portal-layout-teacher .archive-nav-child.active{border-color:var(--teacher-ui-border);background:var(--teacher-ui-soft);color:var(--teacher-ui-accent-dark);box-shadow:4px 5px 12px rgba(var(--teacher-ui-accent-rgb),.12)}html[data-teacher-accent] body .portal-layout-teacher .teacher-business-children .archive-nav-child.active:before,html[data-teacher-accent] body .portal-layout-teacher .teacher-table-progress i,html[data-teacher-accent] body .portal-layout-teacher .teacher-task-progress i b,html[data-teacher-accent] body .portal-layout-teacher .teacher-ability-list i b,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-goals article div>i b{background:var(--teacher-ui-accent)}html[data-teacher-accent] body .portal-layout-teacher .teacher-workspace-metric:not(.is-green):not(.is-orange):not(.is-violet)>span,html[data-teacher-accent] body .portal-layout-teacher .teacher-class-name>span,html[data-teacher-accent] body .portal-layout-teacher .teacher-class-profile-icon,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-next>header>span{background:var(--teacher-ui-soft);color:var(--teacher-ui-accent)}html[data-teacher-accent] body .portal-layout-teacher .teacher-table-action,html[data-teacher-accent] body .portal-layout-teacher .teacher-report-row>a,html[data-teacher-accent] body .portal-layout-teacher .teacher-resource-card>footer button,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-ability>header a,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-goals>header a,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-next>a{color:var(--teacher-ui-accent-dark)}html[data-teacher-accent] body .portal-layout-teacher .teacher-report-chart-card .area,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-chart svg polygon{fill:rgba(var(--teacher-ui-accent-rgb),.09)}html[data-teacher-accent] body .portal-layout-teacher .teacher-report-chart-card .line,html[data-teacher-accent] body .portal-layout-teacher .teacher-report-chart-card circle,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-chart svg polyline,html[data-teacher-accent] body .portal-layout-teacher .teacher-learning-chart svg circle{stroke:var(--teacher-ui-accent)}html[data-teacher-accent] body .portal-layout-teacher .teacher-report-ring{background:conic-gradient(var(--teacher-ui-accent) 0 38%,#14ad68 38% 69%,#f28b24 69% 88%,#7058ec 88% 100%)}html[data-teacher-accent] body .portal-layout-teacher .teacher-report-distribution li i:not(.is-green):not(.is-orange):not(.is-violet){background:var(--teacher-ui-accent)}html[data-teacher-density=compact] body .portal-layout-teacher .portal-main>.teacher-workspace-page{gap:8px;padding-top:6px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-header{min-height:58px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-metrics{gap:8px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-metric{min-height:78px;gap:12px;padding:10px 14px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-metric>span{width:44px;height:44px;flex-basis:44px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-metric svg{width:24px;height:24px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-workspace-metric strong{font-size:23px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-showcase-table th{height:38px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-showcase-table td{height:52px;padding-top:6px;padding-bottom:6px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-report-row,html[data-teacher-density=compact] body .portal-layout-teacher .teacher-notice-list article{min-height:72px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-resource-card{min-height:214px;gap:10px;padding:12px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-business-children .archive-nav-child{min-height:32px}html[data-teacher-density=compact] body .portal-layout-teacher .teacher-settings-section{padding:14px 16px}.schedule-import-backdrop{position:fixed;z-index:1600;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;background:#102a4e75;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.schedule-import-workspace{width:min(1540px,100%);height:min(920px,calc(100vh - 32px));min-height:620px;overflow:hidden;display:flex;flex-direction:column;color:#102f5d;background:#f7faff;border:1px solid #cbd9ea;border-radius:8px;box-shadow:0 24px 70px #0f2c523d}.schedule-import-header{flex:0 0 auto;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 20px;background:#fff;border-bottom:1px solid #d9e3ef}.schedule-import-header h2{margin:2px 0 3px;color:#0b2c59;font-size:22px;line-height:1.25;letter-spacing:0}.schedule-import-header p{margin:0;color:#67809f;font-size:13px}.schedule-import-kicker{color:#1b67db;font-size:12px;font-weight:700}.schedule-import-header-actions{display:flex;align-items:center;gap:8px}.schedule-import-button,.schedule-import-icon-button,.schedule-import-footer button{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#174d91;font:inherit;font-size:13px;font-weight:700;background:#fff;border:1px solid #c9d8e9;border-radius:7px;cursor:pointer}.schedule-import-button{padding:0 14px}.schedule-import-button svg,.schedule-import-icon-button svg,.schedule-import-footer svg{width:18px;height:18px}.schedule-import-icon-button{width:38px;padding:0}.schedule-import-button:hover,.schedule-import-icon-button:hover{color:#075fd5;border-color:#8eb6eb;background:#f3f8ff}.schedule-import-button:disabled,.schedule-import-footer button:disabled{opacity:.58;cursor:not-allowed}.schedule-import-error{flex:0 0 auto;min-height:42px;display:flex;align-items:center;gap:9px;padding:8px 20px;color:#ad2d2d;font-size:13px;background:#fff1f1;border-bottom:1px solid #f2caca}.schedule-import-error svg{width:18px;height:18px}.schedule-import-empty{flex:1;min-height:0;display:grid;place-items:center;padding:32px}.schedule-import-empty.has-drafts{grid-template-columns:minmax(360px,1fr) 360px;gap:18px;place-items:stretch;align-items:center}.schedule-import-side-stack{min-height:320px;max-height:600px;min-width:0;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px}.schedule-import-dropzone{width:min(680px,100%);min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center;background:#fff;border:1px dashed #9db7d4;border-radius:8px;transition:border-color .16s ease,background .16s ease}.schedule-import-dropzone.is-dragging{background:#eef6ff;border-color:#1671e8}.schedule-import-dropzone>span{width:66px;height:66px;display:grid;place-items:center;margin-bottom:18px;color:#1269dc;background:#eaf3ff;border:1px solid #c9ddf7;border-radius:8px}.schedule-import-dropzone>span svg{width:34px;height:34px}.schedule-import-dropzone strong{color:#102f5d;font-size:19px}.schedule-import-dropzone p{margin:8px 0 20px;color:#6f86a1;font-size:13px}.schedule-import-dropzone button{height:42px;padding:0 22px;color:#fff;font:inherit;font-weight:700;background:#146bea;border:0;border-radius:7px;box-shadow:0 7px 18px #146bea33;cursor:pointer}.schedule-import-dropzone button:disabled{opacity:.7;cursor:wait}.schedule-import-draft-list{min-height:320px;max-height:600px;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid #d7e2ef;border-radius:8px}.schedule-import-side-stack .schedule-import-draft-list{min-height:0;max-height:none}.schedule-import-draft-list>header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid #e0e7f0}.schedule-import-draft-list strong,.schedule-import-draft-list small{display:block}.schedule-import-draft-list header strong{color:#173b65;font-size:14px}.schedule-import-draft-list header small{margin-top:3px;color:#7186a0;font-size:11px}.schedule-import-draft-list header button,.schedule-import-draft-list footer button{height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 10px;color:#1767ce;font:inherit;font-size:11px;font-weight:700;background:#eef6ff;border:1px solid #c9ddf7;border-radius:6px;cursor:pointer}.schedule-import-draft-list footer button.is-danger{color:#a23b3b;background:#fff2f2;border-color:#efcccc}.schedule-import-draft-list footer svg{width:14px;height:14px}.schedule-import-draft-list button:disabled{opacity:.65;cursor:wait}.schedule-import-draft-list>div{flex:1;min-height:0;overflow-y:auto;padding:10px}.schedule-import-draft-list article{display:grid;gap:9px;margin-bottom:9px;padding:11px;background:#fbfdff;border:1px solid #e1e9f3;border-radius:7px}.schedule-import-draft-list article.is-active{border-color:#79aae7;box-shadow:inset 3px 0 #176ee1}.schedule-import-baseline-list article.is-revoked{opacity:.72;background:#f7f9fb}.schedule-import-draft-list article strong{overflow:hidden;color:#173b65;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.schedule-import-draft-list article small{margin-top:3px;color:#7186a0;font-size:10px}.schedule-import-draft-list dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0}.schedule-import-draft-list dl div{padding:7px 6px;text-align:center;background:#f6f9fd;border:1px solid #e2e9f2;border-radius:6px}.schedule-import-draft-list dt{color:#7a8fa8;font-size:10px}.schedule-import-draft-list dd{margin:3px 0 0;color:#143862;font-size:12px;font-weight:800}.schedule-import-draft-list footer{display:flex;justify-content:flex-end;gap:7px}.schedule-import-draft-notice{flex:0 0 auto;margin:0;padding:8px 12px;color:#7b5a16;font-size:11px;background:#fff8e8;border-bottom:1px solid #efdcae}.schedule-import-summary{flex:0 0 auto;min-height:82px;display:grid;grid-template-columns:minmax(250px,1.35fr) repeat(5,minmax(110px,.8fr));align-items:stretch;background:#fff;border-bottom:1px solid #d9e3ef}.schedule-import-summary>div{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:11px 16px;border-right:1px solid #e2e9f2}.schedule-import-summary>div:last-child{border-right:0}.schedule-import-summary>div>small{color:#7186a0;font-size:11px}.schedule-import-summary>div>strong{margin:2px 0;color:#0e315e;font-size:22px}.schedule-import-summary>div>span{overflow:hidden;color:#667f9e;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.schedule-import-summary .schedule-import-file{flex-direction:row;align-items:center;gap:11px}.schedule-import-file>span{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;color:#148252;background:#e8f8f0;border-radius:7px}.schedule-import-file svg{width:23px;height:23px}.schedule-import-file>div{min-width:0}.schedule-import-file strong,.schedule-import-file small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-import-file strong{color:#143862;font-size:14px}.schedule-import-file small{margin-top:3px;color:#7288a2;font-size:11px}.schedule-import-steps{flex:0 0 auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;padding:0;background:#d9e3ef;border-bottom:1px solid #d9e3ef}.schedule-import-steps button{min-width:0;min-height:56px;display:flex;align-items:center;gap:9px;padding:8px 12px;color:#536f91;text-align:left;font:inherit;background:#f8fbff;border:0;cursor:pointer}.schedule-import-steps button:hover{background:#eef6ff}.schedule-import-steps button.is-active{color:#0f5fc9;background:#fff;box-shadow:inset 0 -3px #176ee1}.schedule-import-steps b{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;color:#1767ce;font-size:11px;background:#e7f1ff;border-radius:6px}.schedule-import-steps button.is-active b{color:#fff;background:#176ee1}.schedule-import-steps span,.schedule-import-steps strong,.schedule-import-steps small{min-width:0;display:block}.schedule-import-steps strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.schedule-import-steps small{overflow:hidden;margin-top:2px;color:#7890aa;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.schedule-import-draft-status{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:9px 16px;color:#245d49;background:#f0faf5;border-bottom:1px solid #cfe8db}.schedule-import-draft-status>span{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;color:#148252;background:#e4f6ed;border-radius:7px}.schedule-import-draft-status svg{width:17px;height:17px}.schedule-import-draft-status strong,.schedule-import-draft-status small{display:block}.schedule-import-draft-status strong{font-size:12px}.schedule-import-draft-status small{margin-top:2px;font-size:11px}.schedule-import-baseline-status{color:#174d91;background:#edf6ff;border-bottom-color:#cfe1f7}.schedule-import-baseline-status>span{color:#1767ce;background:#e1f0ff}.schedule-import-baseline-status small{color:#557798}.schedule-import-baseline-status.is-revoked{color:#77612d;background:#fff8e8;border-bottom-color:#ead8a8}.schedule-import-content{flex:1;min-height:0;display:grid;grid-template-columns:240px minmax(560px,1fr) 300px;background:#f7faff}.schedule-import-navigation,.schedule-import-issues{min-height:0;background:#fff}.schedule-import-navigation{overflow-y:auto;padding:14px;border-right:1px solid #d9e3ef}.schedule-import-navigation>label{display:grid;gap:6px}.schedule-import-navigation>label>span,.schedule-import-block-list>span,.schedule-import-aliases>span{color:#667e9b;font-size:11px;font-weight:700}.schedule-import-navigation select{width:100%;height:38px;padding:0 10px;color:#163a65;font:inherit;font-size:13px;background:#fff;border:1px solid #ccd9e8;border-radius:6px}.schedule-import-block-list{display:grid;gap:7px;margin-top:16px}.schedule-import-block-list>button{width:100%;min-height:58px;display:flex;align-items:center;gap:9px;padding:8px;color:#173b65;text-align:left;font:inherit;background:#fff;border:1px solid #d8e2ee;border-radius:7px;cursor:pointer}.schedule-import-block-list>button:hover{background:#f6f9fd}.schedule-import-block-list>button.is-active{background:#edf5ff;border-color:#79aae7;box-shadow:inset 3px 0 #176ee1}.schedule-import-block-list>button>b{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;color:#1767ce;font-size:12px;background:#e7f1ff;border-radius:6px}.schedule-import-block-list>button>span{min-width:0}.schedule-import-block-list strong,.schedule-import-block-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-import-block-list strong{font-size:12px}.schedule-import-block-list small{margin-top:3px;color:#7288a2;font-size:10px}.schedule-import-aliases{margin-top:18px;padding-top:14px;border-top:1px solid #e1e8f1}.schedule-import-aliases>div{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.schedule-import-aliases b{min-width:28px;padding:4px 7px;color:#1767ce;text-align:center;font-size:11px;background:#eaf3ff;border:1px solid #ccdef5;border-radius:5px}.schedule-import-aliases small{color:#7489a2;font-size:11px}.schedule-import-preview{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:14px 16px 10px}.schedule-import-preview-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.schedule-import-preview-toolbar>div:first-child{min-width:0}.schedule-import-preview-toolbar strong,.schedule-import-preview-toolbar small{display:block}.schedule-import-preview-toolbar strong{color:#133967;font-size:14px}.schedule-import-preview-toolbar small{margin-top:2px;color:#7186a0;font-size:11px}.schedule-import-day-tabs{display:flex;align-items:center;padding:3px;background:#e9eff7;border-radius:7px}.schedule-import-day-tabs button{height:30px;min-width:45px;padding:0 9px;color:#5a7494;font:inherit;font-size:11px;font-weight:700;background:transparent;border:0;border-radius:5px;cursor:pointer}.schedule-import-day-tabs button.is-active{color:#0f5fc9;background:#fff;box-shadow:0 2px 7px #24466f21}.schedule-import-grid-scroll{flex:1;min-height:0;overflow:auto;background:#fff;border:1px solid #b8c5d3;border-radius:5px}.schedule-import-grid{width:100%;min-width:830px;border-spacing:0;border-collapse:collapse;table-layout:auto;color:#172f4d;background:#fff}.schedule-import-grid th,.schedule-import-grid td{height:33px;padding:4px 7px;vertical-align:middle;text-align:center;font-size:12px;line-height:1.25;letter-spacing:0;white-space:pre-line;border-right:1px solid #7d8d9f;border-bottom:1px solid #7d8d9f}.schedule-import-grid th{height:30px;color:#183d28;font-size:13px;font-weight:700;background:#d5ecc8}.schedule-import-grid td.is-name-header,.schedule-import-grid td.is-time-header{color:#173b2a;font-weight:700;background:#edf7e8}.schedule-import-grid td.is-name-header,.schedule-import-grid td.is-student{min-width:94px}.schedule-import-grid td.is-time-header,.schedule-import-grid td.is-individual,.schedule-import-grid td.is-multi-teacher{min-width:58px}.schedule-import-grid td.is-student{color:#173b65;font-weight:600;background:#fbfdff}.schedule-import-grid td.is-individual{color:#174f91}.schedule-import-grid td.is-multi-teacher{color:#95580a;font-weight:700;background:#fff4d9}.schedule-import-grid td.is-group{min-width:74px;color:#075f77;font-weight:700;background:#def4f6}.schedule-import-grid td.is-rest{color:#53657a;font-weight:700;background:#edf1f5}.schedule-import-grid td.is-unknown{color:#9b2f35;background:#fff0f1}.schedule-import-grid tr:last-child td{border-bottom:0}.schedule-import-grid tr>td:last-child,.schedule-import-grid tr>th:last-child{border-right:0}.schedule-import-grid-legend{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:14px;padding:8px 2px 0;color:#7186a0;font-size:10px}.schedule-import-grid-legend span{display:inline-flex;align-items:center;gap:5px}.schedule-import-grid-legend i{width:10px;height:10px;border:1px solid #b8c7d8;border-radius:2px}.schedule-import-grid-legend .is-individual{background:#fff}.schedule-import-grid-legend .is-multi{background:#fff4d9}.schedule-import-grid-legend .is-group{background:#def4f6}.schedule-import-grid-legend .is-rest{background:#edf1f5}.schedule-import-issues{overflow:hidden;display:flex;flex-direction:column;border-left:1px solid #d9e3ef}.schedule-import-issues>div:first-child{flex:0 0 auto;display:flex;align-items:center;gap:9px;min-height:58px;padding:10px 13px;border-bottom:1px solid #e0e7f0}.schedule-import-issues>div:first-child>span{width:34px;height:34px;display:grid;place-items:center;color:#c2760b;background:#fff2dc;border-radius:7px}.schedule-import-issues svg{width:18px;height:18px}.schedule-import-issues strong,.schedule-import-issues small{display:block}.schedule-import-issues strong{color:#173b65;font-size:13px}.schedule-import-issues small{margin-top:2px;color:#758ba4;font-size:10px}.schedule-import-issue-list{flex:1;min-height:0;overflow-y:auto;padding:9px 11px 14px}.schedule-import-issue-list article{margin-bottom:8px;padding:9px 10px;background:#fffaf0;border:1px solid #eed9b5;border-left:3px solid #dfa23e;border-radius:5px}.schedule-import-issue-list article.is-error{background:#fff3f3;border-color:#efcccc;border-left-color:#d64848}.schedule-import-issue-list article.is-info{background:#f2f7ff;border-color:#cedeef;border-left-color:#4c85c9}.schedule-import-issue-list article header{display:flex;align-items:center;justify-content:space-between;gap:8px}.schedule-import-issue-list article b{color:#86520d;font-size:11px}.schedule-import-issue-list article header span{color:#8b98a8;font-size:9px;font-family:Consolas,monospace}.schedule-import-issue-list article p{margin:5px 0 0;color:#596f89;font-size:11px;line-height:1.5}.schedule-import-issue-empty,.schedule-import-no-selection{display:grid;place-items:center;color:#6f86a0;text-align:center}.schedule-import-issue-empty{min-height:180px}.schedule-import-issue-empty svg{width:28px;height:28px;margin-bottom:8px;color:#1a9a65}.schedule-import-no-selection{flex:1;font-size:13px}.schedule-import-stage{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:12px}.schedule-import-stage-header{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border:1px solid #d7e2ef;border-radius:7px}.schedule-import-stage-header>span{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;color:#1767ce;background:#eaf3ff;border-radius:7px}.schedule-import-stage-header svg{width:19px;height:19px}.schedule-import-stage-header strong,.schedule-import-stage-header small{display:block}.schedule-import-stage-header strong{color:#133967;font-size:14px}.schedule-import-stage-header small{margin-top:3px;color:#6f86a0;font-size:11px}.schedule-import-baseline-grid{flex:1;min-height:0;overflow-y:auto;display:grid;align-content:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-right:2px}.schedule-import-baseline-card{min-width:0;display:grid;gap:10px;padding:12px;background:#fff;border:1px solid #d7e2ef;border-radius:7px}.schedule-import-baseline-card.is-selected{border-color:#79aae7;box-shadow:inset 3px 0 #176ee1}.schedule-import-baseline-card.is-previewing{background:#fbfdff}.schedule-import-baseline-card header,.schedule-import-baseline-card footer{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.schedule-import-baseline-card label{min-width:0;display:flex;align-items:flex-start;gap:8px;cursor:pointer}.schedule-import-baseline-card input{width:16px;height:16px;margin-top:2px;accent-color:#176ee1}.schedule-import-baseline-card strong,.schedule-import-baseline-card small{display:block}.schedule-import-baseline-card strong{color:#173b65;font-size:13px}.schedule-import-baseline-card small{margin-top:2px;color:#7489a2;font-size:10px}.schedule-import-baseline-card em,.schedule-import-status{flex:0 0 auto;padding:3px 7px;font-style:normal;font-size:10px;font-weight:700;border-radius:999px}.schedule-import-baseline-card em.is-ok,.schedule-import-status.is-ok{color:#14734d;background:#e7f7ef}.schedule-import-baseline-card em.is-warning,.schedule-import-status.is-warning{color:#995b0a;background:#fff1d6}.schedule-import-status.is-hint{color:#1767ce;background:#eaf3ff}.schedule-import-baseline-metrics,.schedule-import-summary-board{display:grid;gap:8px}.schedule-import-baseline-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.schedule-import-baseline-metrics span,.schedule-import-summary-board article{min-width:0;padding:8px;background:#f7faff;border:1px solid #e1e9f3;border-radius:6px}.schedule-import-baseline-metrics b,.schedule-import-baseline-metrics small,.schedule-import-summary-board small,.schedule-import-summary-board strong,.schedule-import-summary-board span{display:block}.schedule-import-baseline-metrics b{color:#143862;font-size:16px}.schedule-import-baseline-metrics small{color:#7489a2;font-size:10px}.schedule-import-baseline-card p{margin:0;color:#657d9a;font-size:11px;line-height:1.45}.schedule-import-baseline-card footer button{height:30px;flex:0 0 auto;padding:0 10px;color:#1767ce;font:inherit;font-size:11px;font-weight:700;background:#eef6ff;border:1px solid #c9ddf7;border-radius:6px;cursor:pointer}.schedule-import-mapping-table{flex:1;min-height:0;overflow-y:auto;background:#fff;border:1px solid #d7e2ef;border-radius:7px}.schedule-import-mapping-table>header,.schedule-import-mapping-table>article{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(150px,1.1fr) minmax(190px,1.25fr) minmax(92px,.6fr);align-items:center;gap:12px;padding:9px 12px}.schedule-import-mapping-table.is-students>header,.schedule-import-mapping-table.is-students>article{grid-template-columns:minmax(120px,.8fr) minmax(150px,1.1fr) minmax(210px,1.35fr) minmax(92px,.6fr)}.schedule-import-mapping-table>header{position:sticky;z-index:1;top:0;color:#6a819c;font-size:11px;font-weight:700;background:#f5f9fe;border-bottom:1px solid #dfe8f2}.schedule-import-mapping-table>article{min-height:58px;border-bottom:1px solid #edf2f7}.schedule-import-mapping-table>article:last-child{border-bottom:0}.schedule-import-mapping-table strong,.schedule-import-mapping-table span,.schedule-import-mapping-table small{display:block}.schedule-import-mapping-table strong{color:#173b65;font-size:13px}.schedule-import-mapping-table span,.schedule-import-mapping-table small{overflow:hidden;color:#7186a0;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.schedule-import-mapping-table label{min-width:0}.schedule-import-mapping-table select,.schedule-import-review-list select{width:100%;height:34px;padding:0 9px;color:#163a65;font:inherit;font-size:12px;background:#fff;border:1px solid #ccd9e8;border-radius:6px}.schedule-import-review-columns{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.schedule-import-review-columns>section{min-height:0;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid #d7e2ef;border-radius:7px}.schedule-import-review-columns>section>header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-bottom:1px solid #e0e7f0}.schedule-import-review-columns header strong{color:#173b65;font-size:13px}.schedule-import-review-columns header span{color:#6f86a0;font-size:11px}.schedule-import-review-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid #e7edf5;background:#f8fbff}.schedule-import-review-actions span{color:#5d7794;font-size:10px;font-weight:800}.schedule-import-review-actions button{min-height:28px;padding:0 10px;border:1px solid #bdd2ee;border-radius:6px;background:#fff;color:#1267e9;font:inherit;font-size:9px;font-weight:800;cursor:pointer}.schedule-import-review-list{min-height:0;overflow-y:auto;padding:10px}.schedule-import-review-list article{display:grid;gap:4px;margin-bottom:8px;padding:9px 10px;background:#fbfdff;border:1px solid #e1e9f3;border-radius:6px}.schedule-import-review-list b,.schedule-import-review-list span,.schedule-import-review-list small{display:block}.schedule-import-review-list b{color:#133967;font-size:13px}.schedule-import-review-list span,.schedule-import-review-list small{color:#70859f;font-size:10px;line-height:1.45}.schedule-import-summary-board{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-import-summary-board article{display:grid;gap:4px;min-height:118px;padding:13px;background:#fff}.schedule-import-summary-board small{color:#6d849f;font-size:11px}.schedule-import-summary-board strong{color:#0e315e;font-size:28px}.schedule-import-summary-board span{color:#617893;font-size:11px;line-height:1.45}.schedule-import-summary-note,.schedule-import-inline-empty{display:flex;align-items:center;gap:9px;color:#7b5a16;background:#fff8e8;border:1px solid #efdcae;border-radius:7px}.schedule-import-summary-note{padding:11px 13px}.schedule-import-summary-note svg,.schedule-import-inline-empty svg{width:18px;height:18px;flex:0 0 18px}.schedule-import-summary-note p{margin:0;font-size:12px;line-height:1.5}.schedule-import-baseline-preview{gap:12px}.schedule-import-baseline-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.schedule-import-baseline-preview-header .schedule-import-stage-header{flex:1;min-width:0}.schedule-import-baseline-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.schedule-import-baseline-preview-header button{height:34px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;color:#a23b3b;font:inherit;font-size:12px;font-weight:700;background:#fff2f2;border:1px solid #efcccc;border-radius:6px;cursor:pointer}.schedule-import-baseline-preview-header button.is-secondary{color:#1f4f68;background:#eef8fb;border-color:#bddfeb}.schedule-import-baseline-preview-header button:disabled{opacity:.62;cursor:not-allowed}.schedule-import-baseline-review-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.schedule-import-baseline-review-metrics span{min-height:62px;display:flex;flex-direction:column;justify-content:center;padding:9px 10px;background:#fff;border:1px solid #dce7f2;border-radius:7px}.schedule-import-baseline-review-metrics b,.schedule-import-baseline-review-metrics small{display:block}.schedule-import-baseline-review-metrics b{color:#0e315e;font-size:20px}.schedule-import-baseline-review-metrics small{margin-top:2px;color:#6d849f;font-size:10px}.schedule-import-baseline-entry-list{min-height:0;overflow-y:auto;display:grid;gap:8px}.schedule-import-baseline-entry-list article{min-height:62px;display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(92px,.55fr) minmax(110px,.7fr) minmax(110px,.7fr) 132px;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1px solid #dce7f2;border-radius:7px}.schedule-import-baseline-entry-list strong,.schedule-import-baseline-entry-list span,.schedule-import-baseline-entry-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-import-baseline-entry-list strong,.schedule-import-baseline-entry-list span{color:#173b65;font-size:12px}.schedule-import-baseline-entry-list small{margin-top:3px;color:#7186a0;font-size:10px}.schedule-import-baseline-entry-list select{width:100%;height:34px;padding:0 9px;color:#163a65;font:inherit;font-size:12px;background:#fff;border:1px solid #ccd9e8;border-radius:6px}.schedule-import-inline-empty{margin:10px;padding:14px;justify-content:center;color:#58708c;background:#f7faff;border-color:#e1e9f3;font-size:12px}.schedule-import-footer{flex:0 0 54px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;color:#36715a;font-size:12px;background:#fff;border-top:1px solid #d9e3ef}.schedule-import-footer>span{display:inline-flex;align-items:center;gap:7px}.schedule-import-footer>div{display:flex;align-items:center;gap:8px}.schedule-import-footer button{min-width:94px;padding:0 16px;color:#fff;background:#146bea;border-color:#146bea}.schedule-import-footer button.is-secondary{color:#174d91;background:#fff;border-color:#c9d8e9}@media(max-width:1180px){.schedule-import-content{grid-template-columns:220px minmax(520px,1fr)}.schedule-import-steps{overflow-x:auto;grid-template-columns:repeat(6,170px)}.schedule-import-issues{display:none}.schedule-import-summary{overflow-x:auto;grid-template-columns:240px repeat(5,120px)}.schedule-import-empty.has-drafts{grid-template-columns:1fr;align-content:start;overflow-y:auto}.schedule-import-side-stack{max-height:none;grid-template-rows:auto auto}.schedule-import-baseline-grid,.schedule-import-review-columns,.schedule-import-baseline-review-metrics{grid-template-columns:1fr}.schedule-import-summary-board{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-import-baseline-entry-list article{grid-template-columns:1fr}}@media(max-width:760px){.schedule-import-backdrop{padding:0}.schedule-import-workspace{width:100%;height:100vh;min-height:0;border:0;border-radius:0}.schedule-import-header{min-height:76px;padding:10px 12px}.schedule-import-header h2{font-size:18px}.schedule-import-header p,.schedule-import-kicker,.schedule-import-button{display:none}.schedule-import-content{display:flex;flex-direction:column}.schedule-import-empty.has-drafts{padding:14px}.schedule-import-draft-list{width:100%;min-height:260px}.schedule-import-baseline-preview-header{display:grid}.schedule-import-draft-status{padding:8px 12px}.schedule-import-steps{display:flex;overflow-x:auto}.schedule-import-steps button{min-width:150px;min-height:50px;padding:7px 9px}.schedule-import-navigation{flex:0 0 auto;max-height:160px;padding:10px;border-right:0;border-bottom:1px solid #d9e3ef}.schedule-import-block-list{display:flex;overflow-x:auto;margin-top:9px}.schedule-import-block-list>span,.schedule-import-aliases{display:none}.schedule-import-block-list>button{min-width:180px}.schedule-import-preview{flex:1;padding:10px}.schedule-import-stage-header{padding:10px}.schedule-import-baseline-grid,.schedule-import-summary-board{grid-template-columns:1fr}.schedule-import-baseline-card header,.schedule-import-baseline-card footer{flex-direction:column}.schedule-import-baseline-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-import-mapping-table>header{display:none}.schedule-import-mapping-table>article,.schedule-import-mapping-table.is-students>article{grid-template-columns:1fr;align-items:stretch;gap:7px}.schedule-import-review-columns{grid-template-columns:1fr}.schedule-import-preview-toolbar{align-items:flex-start;flex-direction:column;gap:7px}.schedule-import-day-tabs{width:100%;overflow-x:auto}.schedule-import-day-tabs button{flex:1 0 46px}.schedule-import-footer{padding:8px 12px}.schedule-import-footer>span{overflow:hidden;max-width:65%;text-overflow:ellipsis;white-space:nowrap}.schedule-import-footer>div{flex:0 0 auto}.schedule-import-footer button.is-secondary{display:none}}.teacher-student-intent{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:12px 16px;border:1px solid #cfe0f7;border-radius:12px;background:#eef6ff;color:#244b78}.teacher-student-intent strong,.teacher-student-intent span{display:block}.teacher-student-intent span{margin-top:3px;color:#657f9e;font-size:12px}.teacher-student-intent>a{flex:0 0 auto;font-weight:700}.teacher-student-row:focus-visible{outline:3px solid rgba(18,103,243,.28);outline-offset:-3px}@media(max-width:900px){body .portal-layout-teacher,body .portal-layout-teacher:has(.teacher-dashboard),body .portal-layout-teacher:has(.teacher-students-page),body .portal-layout-teacher:has(.teacher-growth-page){display:block!important;min-height:100vh;background:#f3f8fd!important}body .portal-layout-teacher .sidebar,body .portal-layout-teacher:has(.teacher-dashboard) .sidebar,body .portal-layout-teacher:has(.teacher-students-page) .sidebar,body .portal-layout-teacher:has(.teacher-growth-page) .sidebar{position:relative!important;top:auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;border-right:0;border-bottom:1px solid #dce7f3;box-shadow:0 10px 28px #254b7617}body .portal-layout-teacher .sidebar-brand,body .portal-layout-teacher:has(.teacher-dashboard) .sidebar-brand,body .portal-layout-teacher:has(.teacher-students-page) .sidebar-brand,body .portal-layout-teacher:has(.teacher-growth-page) .sidebar-brand{min-height:66px!important;padding:10px 14px!important;font-size:17px!important}body .portal-layout-teacher .brand-dot,body .portal-layout-teacher:has(.teacher-dashboard) .brand-dot,body .portal-layout-teacher:has(.teacher-students-page) .brand-dot,body .portal-layout-teacher:has(.teacher-growth-page) .brand-dot{width:42px!important;height:42px!important;flex-basis:42px!important;background-size:154px 64px}body .portal-layout-teacher .sidebar-nav,body .portal-layout-teacher:has(.teacher-dashboard) .sidebar-nav,body .portal-layout-teacher:has(.teacher-students-page) .sidebar-nav,body .portal-layout-teacher:has(.teacher-growth-page) .sidebar-nav{display:block!important;height:auto!important;max-height:none!important;flex:none!important;overflow:visible!important;padding:8px 10px 10px!important}body .portal-layout-teacher .teacher-archive-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}body .portal-layout-teacher .teacher-home-link{grid-column:1 / -1}body .portal-layout-teacher .teacher-business-group{min-width:0;align-content:start;border:1px solid #e1eaf4;border-radius:10px;background:#fbfdff}body .portal-layout-teacher .teacher-business-group:has(.teacher-business-toggle[aria-expanded=true]){grid-column:1 / -1;border-color:#cfe0f7;background:#f7fbff}body .portal-layout-teacher .archive-nav-item,body .portal-layout-teacher .archive-nav-parent{min-height:46px;padding:0 10px;font-size:13px}body .portal-layout-teacher .teacher-business-children{max-height:48vh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0;padding:6px;overflow-y:auto;overscroll-behavior:contain}body .portal-layout-teacher .teacher-business-children:before{display:none}body .portal-layout-teacher .teacher-business-children>div{min-width:0}body .portal-layout-teacher .teacher-business-section{min-height:20px;padding:3px 7px 1px}body .portal-layout-teacher .teacher-business-children .archive-nav-child{min-height:44px;padding:6px 9px;line-height:1.35}body .portal-layout-teacher .teacher-business-children .archive-nav-child.active:before{left:0}body .portal-layout-teacher .teacher-archive-footer,body .portal-layout-teacher:has(.teacher-dashboard) .teacher-archive-footer,body .portal-layout-teacher:has(.teacher-students-page) .teacher-archive-footer,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-archive-footer{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;padding:8px 10px 12px!important}body .portal-layout-teacher .teacher-archive-account{min-height:52px;grid-template-columns:38px minmax(0,1fr);border-radius:10px}body .portal-layout-teacher .teacher-archive-account img{width:36px;height:36px}body .portal-layout-teacher .teacher-archive-account>span{display:none}body .portal-layout-teacher .teacher-archive-logout,body .portal-layout-teacher:has(.teacher-dashboard) .teacher-archive-logout,body .portal-layout-teacher:has(.teacher-students-page) .teacher-archive-logout,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-archive-logout{width:auto;min-width:104px;min-height:52px;margin:0;padding:0 12px;border:1px solid #dfe8f3;border-radius:10px}body .portal-layout-teacher .portal-main{width:100%;min-width:0;padding:0!important;scroll-margin-top:0;outline:0}body .portal-layout-teacher .teacher-topbar,body .portal-layout-teacher .teacher-topbar.is-archive{top:0;min-height:62px!important;height:auto!important;gap:8px;padding:8px 10px!important}body .portal-layout-teacher .teacher-topbar.is-archive .teacher-search{width:100%!important;min-width:0;min-height:42px}body .portal-layout-teacher .teacher-topbar-actions{flex:0 0 auto}body .portal-layout-teacher .portal-main>:not(.teacher-topbar),body .portal-layout-teacher .portal-main>.teacher-dashboard,body .portal-layout-teacher .portal-main>.teacher-growth-page{width:100%;max-width:none;margin:0;padding:16px 12px 32px!important}body .portal-layout-teacher .teacher-workspace-header{min-height:0;align-items:stretch;flex-direction:column}body .portal-layout-teacher .teacher-workspace-primary{width:100%}body .portal-layout-teacher .teacher-workspace-metrics,body .portal-layout-teacher .teacher-student-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body .portal-layout-teacher .teacher-task-toolbar{grid-template-columns:1fr 1fr}body .portal-layout-teacher .teacher-task-tabs,body .portal-layout-teacher .teacher-task-search{grid-column:1 / -1;justify-self:stretch;width:100%}body .portal-layout-teacher .teacher-task-tabs{overflow-x:auto}body .portal-layout-teacher .teacher-task-tabs button{flex:1 0 auto}body .portal-layout-teacher .teacher-task-table{min-width:0;display:grid;gap:10px;padding:10px;overflow:visible}body .portal-layout-teacher .teacher-task-head,body .portal-layout-teacher .teacher-student-table-head{display:none}body .portal-layout-teacher .teacher-task-row{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid #e1eaf4;border-radius:10px;background:#fff}body .portal-layout-teacher .teacher-task-student,body .portal-layout-teacher .teacher-task-actions{grid-column:1 / -1}body .portal-layout-teacher .teacher-task-row [data-label],body .portal-layout-teacher .teacher-student-row [data-label]{min-width:0}body .portal-layout-teacher .teacher-task-row [data-label]:before,body .portal-layout-teacher .teacher-student-row [data-label]:before{content:attr(data-label);display:block;margin-bottom:5px;color:#7b8da4;font-size:10px;font-weight:700}body .portal-layout-teacher .teacher-task-student:before,body .portal-layout-teacher .teacher-task-actions:before,body .portal-layout-teacher .teacher-student-info:before,body .portal-layout-teacher .teacher-row-actions:before{grid-column:1 / -1}body .portal-layout-teacher .teacher-task-footer{align-items:flex-start;flex-direction:column}body .portal-layout-teacher .teacher-student-table{display:grid;gap:10px;padding:10px;overflow:visible}body .portal-layout-teacher .teacher-student-row,body .portal-layout-teacher:has(.teacher-students-page) .teacher-student-row{min-width:0!important;min-height:0;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:14px!important;border:1px solid #e1eaf4;border-radius:10px;background:#fff}body .portal-layout-teacher .teacher-student-info,body .portal-layout-teacher .teacher-row-actions{grid-column:1 / -1}body .portal-layout-teacher .teacher-student-info{flex-wrap:wrap}body .portal-layout-teacher .teacher-task-student:before,body .portal-layout-teacher .teacher-task-actions:before,body .portal-layout-teacher .teacher-student-info:before,body .portal-layout-teacher .teacher-row-actions:before{width:100%;flex-basis:100%}body .portal-layout-teacher .teacher-row-actions{flex-wrap:wrap}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-profile{min-height:0!important;height:auto!important;grid-template-columns:96px minmax(0,1fr)!important;gap:14px!important;padding:16px!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-avatar{width:88px!important;height:88px!important;align-self:start}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-identity{width:100%;max-width:none}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags{flex-wrap:wrap}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row h1{font-size:24px}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 0;margin:14px 0!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div:nth-child(3){min-width:0;padding:0 10px!important;border-left:0!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div:nth-child(odd){padding-left:0!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta dd{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-edit{grid-column:1 / -1;justify-self:start;margin:0!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tabs{overflow-x:auto;overscroll-behavior-inline:contain}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tabs a{flex:0 0 auto}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column:first-child,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-overview>.teacher-growth-main-column:nth-child(2),body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-side-column{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-card{min-height:0;height:auto!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-quick>div{grid-template-columns:repeat(2,minmax(0,1fr))}body .portal-layout-teacher .ados2-shell{height:auto;min-height:760px;overflow:visible}body .portal-layout-teacher .ados2-shell-bar{align-items:stretch;flex-wrap:wrap;padding:10px}body .portal-layout-teacher .ados2-shell-spacer{display:none}body .portal-layout-teacher .ados2-immersive{min-height:720px;overflow:visible}body .portal-layout-teacher .ados2-immersive .ados2-embed-frame{height:auto;min-height:720px;overflow:visible;zoom:1}body .portal-layout-teacher .ados2-immersive .ados2-embed-frame .ados2-cabin-root{height:auto!important;min-height:720px}}@media(max-width:520px){body .portal-layout-teacher .teacher-archive-nav,body .portal-layout-teacher .teacher-business-children{grid-template-columns:1fr}body .portal-layout-teacher .teacher-business-group:has(.teacher-business-toggle[aria-expanded=true]){grid-column:auto}body .portal-layout-teacher .teacher-search input{font-size:13px}body .portal-layout-teacher .teacher-icon-button{width:38px;height:38px;flex-basis:38px}.teacher-student-intent{align-items:flex-start;flex-direction:column}body .portal-layout-teacher .teacher-workspace-metrics,body .portal-layout-teacher .teacher-student-metrics,body .portal-layout-teacher .teacher-task-toolbar,body .portal-layout-teacher .teacher-task-row,body .portal-layout-teacher .teacher-student-row,body .portal-layout-teacher:has(.teacher-students-page) .teacher-student-row{grid-template-columns:1fr!important}body .portal-layout-teacher .teacher-task-row>*,body .portal-layout-teacher .teacher-student-row>*{grid-column:auto}body .portal-layout-teacher .teacher-task-student,body .portal-layout-teacher .teacher-task-actions,body .portal-layout-teacher .teacher-student-info,body .portal-layout-teacher .teacher-row-actions{grid-column:1 / -1}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-profile{grid-template-columns:minmax(0,1fr)!important;text-align:center}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-avatar,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-edit{grid-column:auto;justify-self:center}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-name-row,body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-tags{justify-content:center}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta{grid-template-columns:minmax(0,1fr)!important}body .portal-layout-teacher:has(.teacher-growth-page) .teacher-growth-meta>div{padding:0!important}}.initial-reports-launcher{width:100%;max-width:980px;margin:0 auto}.initial-reports-launcher-card{padding:0;overflow:hidden}.initial-reports-launcher-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--border, #e8edf3)}.initial-reports-launcher-toolbar>div{display:flex;align-items:baseline;gap:8px}.initial-reports-launcher-toolbar span,.initial-reports-launcher-row small,.initial-reports-launcher-row>div>span{color:var(--text-light, #718096)}.initial-reports-launcher-toolbar input{width:min(320px,46vw);min-height:40px}.initial-reports-launcher-list{display:grid}.initial-reports-launcher-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 20px;border-bottom:1px solid var(--border, #e8edf3)}.initial-reports-launcher-row:last-child{border-bottom:0}.initial-reports-launcher-row>div{display:grid;grid-template-columns:minmax(100px,auto) minmax(120px,1fr);align-items:baseline;gap:4px 14px;min-width:0}.initial-reports-launcher-row strong,.initial-reports-launcher-row>div>span,.initial-reports-launcher-row small{min-width:0;overflow-wrap:anywhere}.initial-reports-launcher-row small{grid-column:1 / -1}.initial-reports-launcher-empty,.initial-reports-launcher-card>.page-loading{padding:44px 20px;text-align:center}.initial-reports-launcher-empty p{margin:8px 0 16px;color:var(--text-light, #718096)}@media(max-width:620px){.initial-reports-launcher-toolbar,.initial-reports-launcher-row{align-items:stretch;grid-template-columns:1fr}.initial-reports-launcher-toolbar{flex-direction:column}.initial-reports-launcher-toolbar input,.initial-reports-launcher-row>.btn{width:100%}.initial-reports-launcher-row>div{grid-template-columns:1fr}.initial-reports-launcher-row small{grid-column:auto}}.parent-questionnaires-page{width:100%;max-width:1080px;margin:0 auto}.parent-questionnaires-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.parent-questionnaire-card{min-height:184px}@media(max-width:900px){.parent-questionnaires-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.parent-questionnaires-grid{grid-template-columns:1fr}.parent-questionnaire-card{min-height:0}}
