:root{color:#0f172a;--pastel-remember:#fde7f3;--pastel-understand:#fef3c7;--pastel-apply:#dcfce7;--pastel-analyze:#e0e7ff;--pastel-evaluate:#ffedd5;--pastel-create:#ccfbf1;--pastel-overall:#e0ecff;background:#f8fafc;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at 100% 0,#7dd3fc33,#0000 26%),linear-gradient(#f8fafc 0%,#eef4ff 100%);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell,.login-shell{min-height:100vh}.topbar{justify-content:space-between;align-items:center;padding:24px 32px 8px;display:flex}.topbar h1,.hero-copy h1{margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.topbar-actions{align-items:center;gap:12px;display:flex}.profile-pill{background:#ffffffb3;border:1px solid #94a3b840;border-radius:12px;flex-direction:column;padding:10px 14px;display:flex}.profile-pill small{color:#475569;text-transform:capitalize}.login-shell{place-items:center;padding:32px;display:grid}.hero-panel{grid-template-columns:1.3fr .9fr;gap:24px;width:min(1180px,100%);display:grid}.hero-copy,.login-card,.sidebar,.panel{background:#ffffffd1;border:1px solid #e2e8f0e6;border-radius:20px;box-shadow:0 16px 48px #0f172a14}.hero-copy{flex-direction:column;justify-content:center;gap:16px;padding:48px;display:flex}.body-copy{color:#334155;margin:0}.body-copy.compact{margin-top:0}.eyebrow{color:#2563eb;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.85rem;font-weight:700}.feature-strip{flex-wrap:wrap;gap:12px;display:flex}.feature-chip{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.login-card{padding:28px}.section-heading h2,.panel-header h2{margin:0;font-size:1.15rem}.section-heading p,.panel-header p,.sidebar-copy p,.muted-line{color:#475569;margin:4px 0 0}.account-list,.stack-list,.assignment-list{gap:12px;display:grid}.account-card,.assignment-card,.ledger-card,.comment-card{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;display:flex}.account-card span,.assignment-card small,.ledger-card small,.comment-card small{color:#475569;display:block}.workspace-grid{grid-template-columns:260px minmax(0,1fr);gap:24px;padding:16px 32px 32px;display:grid}.sidebar{align-self:start;gap:14px;padding:18px;display:grid;position:sticky;top:20px}.sidebar-block{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;padding:12px}.sidebar-title{align-items:center;gap:8px;margin-bottom:8px;display:flex}.workspace-main{gap:18px;display:grid}.workspace-main-principal{padding:16px 32px 32px}.principal-score-command,.report-command-panel{background:linear-gradient(135deg,#eff6ffe0,#fffffff0),radial-gradient(circle at 90% 10%,#99f6e459,#0000 24%);border:1px solid #cbd5e1e6;border-radius:18px;gap:16px;padding:18px;display:grid;box-shadow:0 18px 44px #0f172a14}.score-command-main{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px;display:grid}.score-command-main h2{margin:4px 0 10px;font-size:2.4rem;line-height:1}.command-stat-row{flex-wrap:wrap;gap:8px;display:flex}.command-stat-row span{color:#334155;background:#fff;border:1px solid #dbe4f1;border-radius:999px;padding:7px 10px;font-size:.86rem}.command-bloom-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px;display:grid}.score-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.weekly-growth-board,.board-focus-panel{background:linear-gradient(135deg,#fffffff5,#f0fdfac7),radial-gradient(circle at 14% 18%,#93c5fd38,#0000 24%),radial-gradient(circle at 92% 8%,#fdba742e,#0000 22%);border:1px solid #cbd5e1e6;border-radius:22px;gap:16px;padding:18px;display:grid;box-shadow:0 18px 44px #0f172a12}.growth-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.growth-card{background:#ffffffdb;border:1px solid #dbe4f1;border-radius:18px;gap:4px;padding:12px 14px;display:grid;position:relative;overflow:hidden}.growth-card:before{content:"";background:#93c5fd;width:5px;position:absolute;inset:0 auto 0 0}.growth-card-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.growth-card span{color:#475569;font-size:.8rem}.growth-card strong{letter-spacing:-.03em;font-size:1.45rem}.growth-card small{color:#64748b;font-size:.8rem}.trend-tag{border-radius:999px;align-items:center;gap:4px;padding:3px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.trend-tag-up{color:#166534;background:#dcfce7}.trend-tag-down{color:#991b1b;background:#fee2e2}.trend-tag-flat{color:#334155;background:#e2e8f0}.growth-positive:before{background:#86efac}.growth-watch:before{background:#fcd34d}.growth-risk:before{background:#fda4af}.wing-breakup-grid{grid-template-columns:1fr;gap:12px;display:grid}.wing-score-card{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe4f1;border-radius:18px;gap:12px;padding:14px;display:grid}.wing-score-head,.board-focus-score{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wing-score-head strong,.board-focus-score span{color:#0f172a;font-weight:700;display:block}.wing-score-head small,.board-focus-score small{color:#64748b;margin-top:3px;display:block}.wing-score-head>span{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:7px 10px;font-weight:800}.wing-dial-row,.board-focus-dials{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;display:grid}.board-focus-grid{grid-template-columns:1fr;gap:14px;display:grid}.board-focus-card{background:linear-gradient(135deg,#eff6fff0,#ffffffeb),radial-gradient(circle at 94% 12%,#f9a8d442,#0000 24%);border:1px solid #bfdbfe;border-radius:22px;gap:14px;padding:18px;display:grid}.board-focus-empty{background:#f8fafc;border-style:dashed}.board-focus-score strong{letter-spacing:-.05em;font-size:1.6rem}.wing-mini-dial,.board-mini-dial{padding:8px}.wing-mini-dial .half-dial,.board-mini-dial .half-dial{width:86px;height:48px}.wing-mini-dial .half-dial-inner,.board-mini-dial .half-dial-inner{height:26px;padding-bottom:2px;left:16px;right:16px}.wing-mini-dial .half-dial-inner strong,.board-mini-dial .half-dial-inner strong{font-size:.85rem}.wing-mini-dial>span,.board-mini-dial>span{font-size:.77rem}.wing-subject-strip{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;display:grid}.wing-subject-pill{background:#fff;border:1px solid #dbe4f1;border-radius:12px;gap:3px;padding:8px;display:grid}.wing-subject-pill span{color:#64748b;font-size:.75rem}.wing-subject-pill strong{color:#0f172a;font-size:.95rem}.wing-subject-bloom-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px;display:grid}.audit-baseline-panel{background:linear-gradient(135deg,#fffffffa,#ecfdf59e);border:1px solid #dbe4f1;border-radius:20px}.audit-snapshot-grid{grid-template-columns:1fr;gap:12px;display:grid}.audit-snapshot-card{background:#fff;border:1px solid #dbe4f1;border-radius:16px;gap:10px;padding:12px;display:grid}.audit-snapshot-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.audit-snapshot-head strong{color:#0f172a;font-size:.86rem}.audit-snapshot-head span{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:4px 9px;font-size:.82rem;font-weight:700}.audit-snapshot-dials{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;display:grid}.top-teacher-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.top-teacher-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;gap:8px;padding:10px;display:grid}.top-teacher-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.top-teacher-head strong{font-size:.82rem}.top-teacher-head span{color:#1d4ed8;font-size:.8rem;font-weight:700}.top-teacher-bars{gap:8px;display:grid}.board-subject-row{grid-auto-columns:minmax(128px,1fr);grid-auto-flow:column;gap:8px;padding-bottom:2px;display:grid;overflow-x:auto}.board-subject-dial{min-width:128px;padding:8px 6px}.board-subject-dial .half-dial{width:74px;height:42px}.board-subject-dial .half-dial-inner{height:22px;padding-bottom:2px;left:13px;right:13px}.board-subject-dial .half-dial-inner strong{font-size:.78rem}.board-subject-dial>span{overflow-wrap:anywhere;font-size:.76rem}.principal-menu{flex-wrap:wrap;gap:10px;display:flex}.principal-menu .ghost-button{background:#ffffffd9;border-radius:999px}.menu-active{color:#1d4ed8!important;background:#eff6ff!important;border-color:#93c5fd!important}.card-grid{gap:16px;display:grid}.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card,.panel{padding:20px}.metric-card{background:#ffffffd9;border:1px solid #dbe4f1f2;border-radius:18px;align-items:center;gap:14px;display:flex;box-shadow:0 12px 32px #0f172a0f}.metric-icon{color:#1d4ed8;background:#eff6ff;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.metric-card span{color:#475569;display:block}.metric-card strong{font-size:1.5rem}.dial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.section-dial-grid{gap:14px;display:grid}.section-dial-panel{background:#f8fbff;border:1px solid #dbe4f1;border-radius:16px;gap:12px;padding:14px;display:grid}.section-dial-header h3{margin:0;font-size:1rem}.dial-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;align-content:start;justify-items:center;gap:8px;min-width:0;padding:12px;display:grid;overflow:hidden}.command-overall-dial{background:linear-gradient(#fff 0%,#eff6ff 100%);align-content:center;min-height:180px}.command-overall-dial .half-dial{width:210px;height:112px}.command-overall-dial .half-dial-inner{height:56px;padding-bottom:4px;left:32px;right:32px}.command-overall-dial .half-dial-inner strong{font-size:1.45rem}.overall-dial-large{grid-column:span 2;padding:16px}.overall-dial-large .half-dial{width:176px;height:94px}.overall-dial-large .half-dial-inner{height:45px;left:28px;right:28px}.overall-dial-large .half-dial-inner strong{font-size:1.2rem}.half-dial{width:132px;height:74px;position:relative}.half-dial-svg{width:100%;height:100%;position:absolute;inset:0}.half-dial-track,.half-dial-progress{fill:none;stroke-width:14px;stroke-linecap:round}.half-dial-inner{background:#fff;border-top-left-radius:60px;border-top-right-radius:60px;place-items:center;gap:2px;height:38px;padding-bottom:3px;display:grid;position:absolute;bottom:0;left:22px;right:22px}.half-dial-inner-transparent{background:0 0}.half-dial-inner strong{font-size:.96rem}.dial-card>span{color:#35506f;letter-spacing:.012em;text-align:center;overflow-wrap:anywhere;background:#f3f7fc;border-radius:999px;max-width:100%;padding:3px 9px;font-family:Aptos Display,Segoe UI Variable Display,Segoe UI,sans-serif;font-size:.86rem;font-weight:600;line-height:1.2}.panel{gap:16px;display:grid}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.table-wrap{overscroll-behavior-inline:contain;scrollbar-gutter:stable;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #e2e8f0;padding:12px 14px}th{color:#475569;font-weight:600}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.assignment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}label{color:#334155;gap:8px;font-size:.95rem;display:grid}input,select,textarea{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;width:100%;padding:11px 12px}textarea{resize:vertical}.checkbox-row{align-items:center;gap:10px;min-height:44px;display:flex}.checkbox-row input{width:18px;height:18px}.full-span{grid-column:1/-1}.primary-button,.ghost-button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 16px;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8)}.ghost-button{color:#0f172a;background:#fff;border-color:#cbd5e1}.banner{border-radius:14px;padding:12px 14px;font-size:.95rem}.banner-success{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.banner-error,.error-line{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:12px 14px}.mini-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mini-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-list{gap:10px;display:grid}.mini-list h3{margin:0;font-size:1rem}.mini-list-row{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;gap:4px;padding:12px;display:grid}.score-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.score-strip>div{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe4f1;border-radius:14px;padding:14px}.score-strip span{color:#475569;display:block}.score-strip strong{font-size:1.5rem}.status-pill{text-transform:capitalize;border-radius:999px;padding:6px 10px;font-size:.78rem;display:inline-flex}.status-in_progress{color:#1d4ed8;background:#eff6ff}.status-incomplete{color:#c2410c;background:#fff7ed}.status-complete,.status-revision{color:#15803d;background:#ecfdf5}.ledger-title{justify-content:space-between;gap:12px;display:flex}.inline-hint{color:#475569;margin:0}.compact-form{grid-template-columns:1fr auto}.field-action{align-self:end}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.inline-actions{gap:8px;display:flex}.quick-actions-grid{grid-template-columns:1fr;gap:12px;display:grid}.quick-action{border:1px solid #0000;border-radius:14px;justify-content:flex-start;min-height:44px}.quick-action-pink{color:#9d174d;background:#fdf2f8;border-color:#fbcfe8}.quick-action-blue{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.quick-action-green{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.quick-action-amber{color:#92400e;background:#fffbeb;border-color:#fde68a}.quick-action-indigo{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.quick-action-cyan{color:#0e7490;background:#ecfeff;border-color:#a5f3fc}.soft-panel{border-style:dashed}.assignment-card.task-overdue{background:#fff1f2;border-color:#fca5a5}.assignment-card.task-due-soon{background:#fffbeb;border-color:#fcd34d}.overlay-metric{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;gap:4px;padding:14px;display:grid}.overlay-metric span{color:#475569}.overlay-metric strong{font-size:1.4rem}.report-filter-grid{grid-template-columns:1.2fr repeat(3,1fr);gap:12px;display:grid}.report-score-strip{grid-template-columns:1.15fr 1fr repeat(6,minmax(95px,1fr));align-items:stretch;gap:10px;display:grid}.report-overall-dial{padding:8px}.report-overall-dial .half-dial{width:112px;height:62px}.report-overall-dial .half-dial-inner{height:30px;left:18px;right:18px}.report-mini-dial{padding:8px 6px}.report-mini-dial .half-dial{width:96px;height:54px}.report-mini-dial .half-dial-inner{height:27px;padding-bottom:2px;left:16px;right:16px}.report-mini-dial .half-dial-inner strong{font-size:.83rem}.report-mini-dial>span{font-size:.71rem}.bloom-bar{background:#fff;border:1px solid #dbe4f1;border-radius:12px;grid-template-columns:minmax(68px,.8fr) minmax(72px,1.2fr) 42px;align-items:center;gap:8px;min-width:0;padding:10px;display:grid}.bloom-bar span{color:#475569;white-space:nowrap;font-size:.85rem}.bloom-bar strong{text-align:right;font-size:.9rem}.bloom-bar-track{background:#e2e8f0;border-radius:999px;height:9px;overflow:hidden}.bloom-bar-fill{border-radius:inherit;height:100%}.bloom-bar-compact{grid-template-columns:minmax(60px,1fr) 38px;padding:8px}.bloom-bar-compact span{display:none}.tone-positive{color:#166534}.tone-negative{color:#b91c1c}.link-button{color:#1d4ed8;background:0 0;border:none;padding:0;font-weight:600}.table-score-pill{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;justify-content:center;align-items:center;min-width:54px;padding:4px 10px;font-weight:700;display:inline-flex}.score-bar10{grid-template-columns:minmax(82px,.82fr) minmax(0,1.7fr);align-items:center;gap:10px;width:100%;min-width:0;display:grid}.score-bar10 span{color:#496078;overflow-wrap:anywhere;min-width:0;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;font-size:.79rem;font-weight:500;line-height:1.2}.score-bar10-track{background:#edf2fa;border-radius:10px;width:100%;min-width:0;height:18px;position:relative;overflow:hidden}.score-bar10-fill{border-radius:inherit;min-width:38px;max-width:100%;min-height:100%;position:relative}.score-bar10-fill em{color:#334155;text-align:right;padding-right:7px;font-size:.66rem;font-style:normal;font-weight:500;line-height:18px;display:block}.score-bar10 strong{text-align:center;color:#334155;font-size:.68rem;font-weight:500}.score-bar10-compact{grid-template-columns:minmax(92px,.92fr) minmax(0,1.4fr);gap:8px}.score-bar10-compact .score-bar10-track{grid-column:auto}.score-bar10-value-inside{grid-template-columns:minmax(82px,.82fr) minmax(0,1.6fr)}.score-bar10-value-inside .score-bar10-track{height:18px}.score-bar10-value-inside .score-bar10-fill{min-width:38px}.overlay-touch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.overlay-touch-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;gap:8px;padding:10px;display:grid}.overlay-touch-card strong{font-size:.82rem}.overlay-touch-circles{display:block}.detail-bloom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.detail-bloom-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;gap:8px;padding:10px;display:grid}.detail-bloom-card-head strong{color:#263e59;letter-spacing:.01em;font-family:Aptos Display,Segoe UI Variable Display,Segoe UI,sans-serif;font-size:1rem;font-weight:650}.detail-bloom-card-reverse .detail-bloom-card-head{text-align:right}.detail-bloom-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;display:grid}.detail-bloom-card-reverse .detail-bloom-bars{order:2}.detail-bloom-card-reverse .detail-bloom-dial{order:1}.detail-bloom-dial{justify-items:center;display:grid}.detail-bloom-bars{grid-template-columns:1fr;place-items:start stretch;gap:6px;display:grid}.detail-bloom-bars .score-bar10{grid-template-columns:minmax(102px,1fr) minmax(0,1.3fr)}.detail-bloom-bars .score-bar10 span{color:#475569;text-align:left;font-size:.78rem;line-height:1.25}.week-work-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.week-work-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;gap:8px;padding:12px;display:grid}.week-work-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.week-work-head strong{font-size:.86rem}.week-work-head span{color:#64748b;font-size:.74rem}.week-work-topic{gap:2px;display:grid}.week-work-topic span{color:#0f172a;font-size:.82rem;font-weight:600}.week-work-topic small{color:#64748b}.week-work-card p{color:#334155;white-space:pre-wrap;margin:0;font-size:.79rem;line-height:1.4}.teacher-remarks-panel{background:linear-gradient(135deg,#fff 0%,#f8fbff 54%,#fff8f3 100%)}.teacher-remarks-layout{grid-template-columns:minmax(220px,.8fr) minmax(0,1.8fr);align-items:stretch;gap:14px;display:grid}.remark-target-card,.remark-editor-card{background:#ffffffd1;border:1px solid #dbe4f1;border-radius:18px;box-shadow:0 14px 30px #0f172a0f}.remark-target-card{align-content:center;gap:8px;min-height:190px;padding:18px;display:grid}.remark-target-card span,.remark-target-card small{color:#64748b;font-size:.78rem}.remark-target-card strong{color:#0f172a;font-size:1.35rem;line-height:1.15}.remark-score-strip{background:#eef6ff;border:1px solid #cfe2ff;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;display:flex}.remark-score-strip b{color:#1e3a8a;font-size:1.05rem;font-weight:600}.remark-editor-card{grid-template-columns:minmax(220px,.75fr) minmax(0,1.5fr);align-items:start;gap:12px;padding:14px;display:grid}.detailed-remark-field textarea{resize:vertical;min-height:146px;line-height:1.45}.remark-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.teacher-pdf-sheet{display:none}.document-picker{color:#354f6c;background:#f8fbff;border:1px dashed #b8cce3;border-radius:12px;gap:7px;padding:12px;display:grid}.document-picker>span{align-items:center;gap:7px;font-weight:600;display:flex}.document-picker input{background:#fff;border:1px solid #d6e1ef;border-radius:9px;width:100%;padding:9px}.document-picker>small,.selected-document-list small{color:#64748b;font-weight:400}.selected-document-list,.attachment-list{flex-wrap:wrap;gap:7px;display:flex}.selected-document-list>span{color:#294968;overflow-wrap:anywhere;background:#eaf3fc;border-radius:9px;align-items:center;gap:7px;max-width:100%;padding:6px 9px;font-size:.78rem;display:inline-flex}.attachment-list{margin-top:8px}.attachment-chip{color:#31506f;text-align:left;background:#f7fbff;border:1px solid #cbdced;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px;max-width:min(100%,390px);padding:7px 9px;font-size:.76rem;display:inline-grid}.attachment-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attachment-chip small{color:#708399;white-space:nowrap}.attachment-chip:hover{background:#edf6ff;border-color:#8fb3d7}.teacher-report-table{table-layout:fixed;min-width:980px}.teacher-report-table th:first-child,.teacher-report-table td:first-child{width:170px}.teacher-report-table th:not(:first-child),.teacher-report-table td:not(:first-child){width:116px}.teacher-report-table td{vertical-align:middle}.teacher-report-table .score-bar10{grid-template-columns:minmax(0,1fr)}.joined-half-pair{justify-items:center;gap:4px;width:100%;display:grid}.joined-half{width:min(168px,100%);height:76px;position:relative}.joined-half-overlay .half-dial-progress{stroke-width:11px}.joined-half-track{stroke-width:13px;stroke:#f1f5f9!important}.joined-half-progress-school{stroke:#9bb8d8}.joined-half-progress-teacher{stroke:#f3b6a6;stroke-dashoffset:inherit}.joined-half-legend{flex-wrap:wrap;justify-content:center;gap:8px;padding-top:2px;display:flex}.joined-half-legend span{white-space:nowrap;align-items:center;gap:4px;font-size:.65rem;font-weight:600;display:inline-flex}.joined-half-legend span:before{content:"";border-radius:999px;width:7px;height:7px;display:inline-block}.legend-school{color:#475569}.legend-school:before{background:#9bb8d8}.legend-teacher{color:#475569}.legend-teacher:before{background:#f3b6a6}.joined-half strong{text-align:center;color:#334155;font-size:.67rem;font-weight:600}.detail-matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.detail-matrix-card{background:#fff;border:1px solid #dbe4f1;border-radius:16px;gap:8px;padding:12px;display:grid}.detail-matrix-card h3{margin:0;font-size:.98rem}.status-pending_principal{color:#92400e;background:#fef3c7}.status-rejected{color:#b91c1c;background:#fee2e2}.cockpit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cockpit-card{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #d7e5f8;border-radius:16px;min-height:210px;padding:14px}.cockpit-span-2{grid-column:span 2}.tag-toggle{border-radius:999px;padding:8px 12px}.tag-selected{color:#1e40af;background:#dbeafe;border-color:#93c5fd}.avatar-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.avatar-button{color:#1e3a8a;background:#e0ecff;border:1px solid #c7d9f8;border-radius:999px;width:44px;height:44px;font-weight:700}.dialog-overlay{z-index:40;background:#0f172a57;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog-card{background:#fff;border:1px solid #dbe4f1;border-radius:18px;gap:14px;width:min(1060px,100%);max-height:88vh;padding:18px;display:grid;overflow:auto;box-shadow:0 24px 54px #0f172a33}.dialog-header,.dialog-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.timetable-matrix td{min-width:120px}.settings-launchpad{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.launchpad-tile{background:linear-gradient(#fff 0%,#f6faff 100%);border:1px solid #d7e5f8;border-radius:16px;align-content:center;justify-items:center;gap:8px;min-height:110px;display:grid}.launchpad-tile strong{text-align:center;font-size:.95rem}.settings-dialog-card{width:min(1100px,100%)}@media (width<=1200px){.cards-4,.cards-3,.cards-2,.mini-columns,.assignment-grid,.dial-grid,.cockpit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-launchpad,.command-bloom-grid,.growth-card-grid,.report-score-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.top-teacher-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.wing-breakup-grid,.audit-snapshot-grid,.board-focus-grid{grid-template-columns:1fr}.wing-dial-row,.board-focus-dials,.audit-snapshot-dials{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}.overlay-touch-grid,.detail-bloom-grid,.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.hero-panel,.workspace-grid,.cards-4,.cards-3,.cards-2,.mini-columns,.dial-grid,.form-grid,.assignment-grid,.score-strip,.cockpit-grid{grid-template-columns:1fr}.cockpit-span-2{grid-column:auto}.settings-launchpad{grid-template-columns:repeat(2,minmax(0,1fr))}.score-command-main,.command-bloom-grid,.score-kpi-strip,.growth-card-grid,.wing-breakup-grid,.board-focus-grid,.top-teacher-grid,.wing-dial-row,.board-focus-dials,.audit-snapshot-grid,.audit-snapshot-dials,.overlay-touch-grid,.detail-bloom-grid,.detail-matrix-grid,.report-filter-grid,.report-score-strip,.wing-subject-strip{grid-template-columns:1fr}.wing-subject-bloom-row{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-bloom-bars,.detail-bloom-body,.detail-bloom-bars .score-bar10{grid-template-columns:1fr}.detail-bloom-card-reverse .detail-bloom-bars,.detail-bloom-card-reverse .detail-bloom-dial{order:initial}.teacher-remarks-layout,.remark-editor-card{grid-template-columns:1fr}.board-subject-row{grid-auto-columns:minmax(78px,1fr)}.overall-dial-large{grid-column:auto}.workspace-grid,.workspace-main-principal{padding:16px}.topbar{flex-direction:column;align-items:flex-start;gap:16px;padding:20px 16px 8px}.sidebar{position:static}.hero-copy,.login-card{padding:24px}}@media (width<=760px){.teacher-report-table-wrap{overflow:visible}.teacher-report-table{width:100%;min-width:0;display:block}.teacher-report-table thead{display:none}.teacher-report-table tbody,.teacher-report-table tr,.teacher-report-table td{display:block;width:100%!important}.teacher-report-table tr{background:#f9fbfe;border:1px solid #dbe4f1;border-radius:14px;margin-bottom:12px;padding:11px}.teacher-report-table td{border-bottom:1px solid #e8eef6;grid-template-columns:minmax(90px,.65fr) minmax(0,1.35fr);align-items:center;gap:10px;padding:8px 5px;display:grid}.teacher-report-table td:last-child{border-bottom:0}.teacher-report-table td:before{content:attr(data-label);color:#52677e;font-size:.76rem;font-weight:600}.teacher-report-table .score-bar10{min-width:0}.assignment-card,.comment-card{display:grid}.attachment-chip{max-width:100%}}@page{size:A4;margin:10mm}@media print{html,body,.teacher-pdf-sheet,.teacher-pdf-sheet *{box-sizing:border-box;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden!important}body.printing-teacher-report{background:#fff!important;min-height:0!important;margin:0!important}body.printing-teacher-report .app-shell{min-height:0!important}body.printing-teacher-report .topbar,body.printing-teacher-report .workspace-main-principal>:not(.teacher-pdf-sheet){display:none!important}body.printing-teacher-report .workspace-main-principal{margin:0!important;padding:0!important;display:block!important}.teacher-pdf-sheet,.teacher-pdf-sheet *{visibility:visible!important}.teacher-pdf-sheet{color:#172033;z-index:9999;background:#fff;width:190mm;min-height:0;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;position:static;overflow:visible;display:block!important}.teacher-pdf-page{box-sizing:border-box;background:#fff;gap:7mm;width:100%;min-height:0;padding:0;display:grid}.teacher-pdf-header{background:linear-gradient(135deg,#eef6ff 0%,#fff4ec 100%);border:1px solid #d7e4f2;border-radius:8mm;justify-content:space-between;align-items:center;padding:7mm;display:flex}.teacher-pdf-header p,.teacher-pdf-header h1,.teacher-pdf-header span,.teacher-pdf-section-title h2,.teacher-pdf-section-title p,.teacher-pdf-note-card p,.teacher-pdf-remarks-box p{margin:0}.teacher-pdf-header p,.teacher-pdf-meta,.teacher-pdf-section-title p,.teacher-pdf-note-card span,.teacher-pdf-note-card small{color:#64748b}.teacher-pdf-header h1{color:#0f172a;margin-top:1mm;font-size:23pt;line-height:1.05}.teacher-pdf-stamp{background:#ffffffd1;border:1px solid #dbe4f1;border-radius:999px;place-items:center;min-width:34mm;height:25mm;padding:4mm;display:grid}.teacher-pdf-stamp strong{color:#1e3a8a;font-size:20pt;line-height:1}.teacher-pdf-stamp span{font-size:7.5pt}.teacher-pdf-meta{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;gap:3mm 6mm;padding-bottom:3mm;font-size:8pt;display:flex}.teacher-pdf-section{page-break-inside:avoid;gap:3mm;display:grid}.teacher-pdf-section-title{justify-content:space-between;align-items:end;gap:8mm;display:flex}.teacher-pdf-section-title h2,.teacher-pdf-remarks-box h2{color:#0f172a;margin:0;font-size:12pt}.teacher-pdf-section-title p{text-align:right;font-size:7.5pt}.teacher-pdf-overview-grid{grid-template-columns:35mm 1fr;gap:4mm;display:grid}.teacher-pdf-overall-card,.teacher-pdf-overlay-card,.teacher-pdf-matrix-card,.teacher-pdf-note-card,.teacher-pdf-remarks-box{box-shadow:none;background:#fff;border:1px solid #dbe4f1;border-radius:5mm;min-width:0;overflow:hidden}.teacher-pdf-overall-card{place-items:center;padding:2mm;display:grid}.teacher-pdf-bar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2mm;display:grid}.teacher-pdf-overlay-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2mm;display:grid}.teacher-pdf-overlay-card{justify-items:center;gap:1mm;min-width:0;padding:2mm 1mm;display:grid}.teacher-pdf-overlay-card strong{font-size:7.4pt}.teacher-pdf-matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm;display:grid}.teacher-pdf-matrix-card{page-break-inside:avoid;gap:2mm;min-width:0;padding:3mm;display:grid}.teacher-pdf-matrix-card-reverse .teacher-pdf-matrix-head{direction:rtl}.teacher-pdf-matrix-card-reverse .teacher-pdf-matrix-head>*{direction:ltr}.teacher-pdf-matrix-card-reverse .teacher-pdf-matrix-head>strong{text-align:right}.teacher-pdf-matrix-head{grid-template-columns:1fr 32mm;align-items:center;gap:2mm;display:grid}.teacher-pdf-matrix-head>strong{color:#263e59;letter-spacing:.01em;overflow-wrap:anywhere;font-family:Aptos Display,Segoe UI Variable Display,Segoe UI,sans-serif;font-size:10.5pt;font-weight:650;line-height:1.15}.teacher-pdf-matrix-bars{gap:1.4mm;min-width:0;display:grid}.teacher-pdf-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2mm;display:grid}.teacher-pdf-note-card{gap:1mm;padding:3mm;display:grid}.teacher-pdf-note-card strong{color:#0f172a;font-size:8.5pt}.teacher-pdf-note-card span,.teacher-pdf-note-card small,.teacher-pdf-note-card p{font-size:7.2pt;line-height:1.3}.teacher-pdf-note-card p{color:#334155}.teacher-pdf-remarks-box{page-break-inside:avoid;gap:4mm;padding:5mm;display:grid}.teacher-pdf-remarks-box p{color:#334155;white-space:pre-wrap;min-height:18mm;font-size:9pt;line-height:1.45}.teacher-pdf-signature{grid-template-columns:1fr 1fr;gap:8mm;display:grid}.teacher-pdf-signature span{color:#64748b;border-top:1px solid #94a3b8;padding-top:2mm;font-size:8pt}.teacher-pdf-sheet .panel,.teacher-pdf-sheet button{display:none!important}.teacher-pdf-sheet .dial-card{box-shadow:none;border:none;width:100%;padding:0}.teacher-pdf-sheet .half-dial{width:33mm;max-width:100%;height:25mm}.teacher-pdf-sheet .half-dial-inner{height:12mm;bottom:0;left:6mm;right:6mm}.teacher-pdf-sheet .half-dial-inner strong{font-size:10pt}.teacher-pdf-sheet .dial-card>span{color:#35506f;background:#f3f7fc;padding:.8mm 2mm;font-size:7.4pt;font-weight:600}.teacher-pdf-sheet .score-bar10{grid-template-columns:minmax(20mm,.78fr) minmax(0,1.35fr);gap:2mm;width:100%;min-width:0;display:grid!important}.teacher-pdf-sheet .score-bar10 span{font-size:7pt}.teacher-pdf-sheet .score-bar10-track{width:100%;min-width:0;height:4.2mm;overflow:hidden;background:#edf2fa!important;display:block!important}.teacher-pdf-sheet .score-bar10-fill{min-width:7mm;max-width:100%;display:block!important}.teacher-pdf-sheet .score-bar10-fill em{padding-right:2mm;font-size:6.5pt;line-height:4.2mm}.teacher-pdf-sheet .joined-half{width:31mm;max-width:100%;height:18mm}.teacher-pdf-sheet .joined-half-legend{gap:2mm;padding-top:0}.teacher-pdf-sheet .joined-half-legend span{font-size:6.2pt}}
