:root{--bg: #F6F5F2;--surface: #FFFFFF;--surface-2: #FBFAF7;--ink: #1C2033;--ink-2: #4A5068;--muted: #8A8FA3;--line: #E9E6DF;--line-strong: #D9D5CB;--brand: #3B46C4;--brand-strong: #2F3AA8;--brand-soft: #EEF0FC;--teal: #0E9F8A;--teal-soft: #E3F5F1;--amber: #D97706;--amber-soft: #FDF1E0;--red: #DC4446;--red-soft: #FCEBEB;--violet: #7C5CD6;--violet-soft: #F1ECFC;--radius: 14px;--radius-sm: 10px;--shadow-sm: 0 1px 2px rgba(28, 32, 51, .05);--shadow-md: 0 6px 20px rgba(28, 32, 51, .08)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:-apple-system,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;font-size:14px;line-height:1.5}strong,b{font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}h1,h2,h3,p{margin-top:0}.workspace{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;align-items:start}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:18px;padding:20px 14px 16px;background:var(--surface-2);border-right:1px solid var(--line)}.brand-block{display:flex;gap:10px;align-items:center;padding:0 6px}.brand-mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--brand),var(--teal));color:#fff;font-size:14px;font-weight:800;display:grid;place-items:center;flex-shrink:0}.brand-block strong{display:block;font-size:15px}.brand-block small{display:block;font-size:10.5px;color:var(--muted)}.sidebar-meta{display:flex;flex-wrap:wrap;gap:6px;padding:0 6px}.sidebar-meta span{font-size:10.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px;background:var(--surface)}.sidebar-run{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:4px}.sidebar-run>span{font-size:9.5px;letter-spacing:.08em;color:var(--muted)}.sidebar-run strong{font-size:13px}.sidebar-run small{font-size:11px;color:var(--muted)}.surface-nav{display:flex;flex-direction:column;gap:2px}.surface-nav button{display:flex;gap:10px;align-items:center;text-align:left;padding:8px 10px;border-radius:var(--radius-sm);border-left:3px solid transparent;color:var(--ink-2);transition:background .14s ease,color .14s ease}.surface-nav button>svg{flex-shrink:0}.surface-nav button>span{display:flex;flex-direction:column;min-width:0}.surface-nav button strong{font-size:13px;font-weight:600}.surface-nav button small{font-size:10.5px;color:var(--muted)}.surface-nav button:hover{background:#f1efe9}.surface-nav button.is-active{background:var(--brand-soft);color:var(--brand);border-left-color:var(--brand)}.surface-nav button.is-active small{color:var(--brand);opacity:.75}.nav-divider{height:1px;background:var(--line);margin:8px 4px}.sidebar-note{margin-top:auto;display:flex;gap:8px;align-items:flex-start;padding:0 6px;font-size:11px;color:var(--muted)}.sidebar-note svg{flex-shrink:0;margin-top:1px}.sidebar-foot{display:flex;gap:6px;align-items:center;padding:0 6px;font-size:10.5px;color:var(--muted)}.main-column{display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:30;height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--line)}.topbar-title strong{font-size:15px;font-weight:600}.topbar-actions{display:flex;align-items:center;gap:12px}.foundation-chip{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:650;white-space:nowrap}.foundation-connected{border-color:color-mix(in srgb,var(--teal) 35%,var(--line));background:var(--teal-soft);color:#087566}.foundation-unavailable{border-color:color-mix(in srgb,var(--amber) 35%,var(--line));background:var(--amber-soft);color:#9a5205}.icon-button{position:relative;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);transition:box-shadow .14s ease,transform .1s ease}.icon-button:hover{box-shadow:var(--shadow-sm)}.notify-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--red);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}.notify-wrap{position:relative}.notify-panel{position:absolute;right:0;top:42px;width:340px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:12px;z-index:60}.notify-panel-head{display:flex;justify-content:space-between;align-items:baseline;padding:2px 6px 10px}.notify-panel-head strong{font-size:14px}.notify-panel-head span{font-size:11px;color:var(--muted)}.notify-panel article{display:flex;gap:10px;padding:10px 6px;border-top:1px solid #F0EDE6;border-radius:8px}.notify-panel article.is-unread{background:var(--brand-soft)}.notify-panel article strong{font-size:12.5px}.notify-panel article p{margin:3px 0;font-size:12px;color:var(--ink-2)}.notify-panel article time{font-size:11px;color:var(--muted)}.notify-kind{flex-shrink:0;height:fit-content;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px}.kind-review{background:var(--violet-soft);color:var(--violet)}.kind-alert{background:var(--amber-soft);color:var(--amber)}.kind-backup{background:var(--teal-soft);color:var(--teal)}.kind-system{background:var(--surface-2);color:var(--muted)}.topbar-user{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2)}.avatar{width:28px;height:28px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:12px;font-weight:700;display:grid;place-items:center}.surface-main{width:100%;max-width:1220px;margin:0 auto;padding:24px 28px 64px}.view-enter{animation:view-in .15s ease-out}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}}.view-stack{display:flex;flex-direction:column;gap:18px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.page-header h1{font-size:28px;font-weight:700;letter-spacing:-.01em;margin:4px 0 6px}.page-header p{margin:0;font-size:13px;color:var(--ink-2);max-width:640px}.page-header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.eyebrow,.panel-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px 20px}.panel h2{font-size:16px;font-weight:600;margin:2px 0 0}.panel h3{font-size:14px;font-weight:600}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.panel-header p{margin:4px 0 0;font-size:12px;color:var(--muted)}.panel-chip{font-size:11px;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap}.btn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;border-radius:var(--radius-sm);padding:8px 14px;border:1px solid transparent;transition:background .14s ease,box-shadow .14s ease,transform .1s ease}.btn:active{transform:translateY(1px) scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-strong)}.btn-secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink-2)}.btn-secondary:hover:not(:disabled){color:var(--ink);box-shadow:var(--shadow-sm)}.btn-ghost{background:transparent;color:var(--brand);padding:7px 10px}.btn-ghost:hover{background:var(--brand-soft)}.btn-sm{padding:5px 10px;font-size:12px}.link-button{display:inline-flex;align-items:center;gap:5px;color:var(--brand);font-size:12.5px;font-weight:600}.link-button:hover{text-decoration:underline}.action-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line)}.chip-amber{background:var(--amber-soft);color:var(--amber);border-color:transparent;font-weight:600}.type-chip{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.tone-teal{background:var(--teal-soft);color:var(--teal)}.tone-blue{background:var(--brand-soft);color:var(--brand)}.tone-amber{background:var(--amber-soft);color:var(--amber)}.tone-red{background:var(--red-soft);color:var(--red)}.tone-gray{background:var(--surface-2);color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px 18px;transition:box-shadow .16s ease,transform .16s ease}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.metric-card>span{font-size:12px;color:var(--ink-2)}.metric-card strong{display:block;font-size:30px;font-weight:700;margin:6px 0 4px}.metric-card p{margin:0;font-size:12px;color:var(--muted)}.metric-teal>span{color:var(--teal)}.metric-blue>span{color:var(--brand)}.metric-amber>span{color:var(--amber)}.metric-red>span{color:var(--red)}.metric-gray>span{color:var(--muted)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap;width:fit-content}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-healthy,.status-completed,.status-published,.status-live{background:var(--teal-soft);color:var(--teal)}.status-warning,.status-queued{background:var(--amber-soft);color:var(--amber)}.status-processing,.status-running{background:var(--brand-soft);color:var(--brand)}.status-review{background:var(--violet-soft);color:var(--violet)}.status-critical,.status-failed,.status-blocked{background:var(--red-soft);color:var(--red)}.status-waiting,.status-draft,.status-seeded{background:var(--surface-2);color:var(--muted)}.split-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.split-grid.wide-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.data-table .table-head,.data-table article{display:grid;gap:12px;align-items:center}.data-table .table-head{font-size:11px;letter-spacing:.04em;color:var(--muted);padding:0 8px 8px;border-bottom:1px solid var(--line)}.data-table article{padding:10px 8px;border-bottom:1px solid #F0EDE6;font-size:13px}.data-table article:last-child{border-bottom:none}.data-table article>span{color:var(--ink-2);font-size:12.5px}.campus-table .table-head,.campus-table article{grid-template-columns:minmax(130px,1.5fr) 80px 90px minmax(110px,1fr)}.video-table .table-head,.video-table article{grid-template-columns:minmax(150px,2fr) 70px 70px 100px}.exam-table .table-head,.exam-table article{grid-template-columns:minmax(150px,1.8fr) 90px 90px 110px 110px}.student-record-table .table-head,.student-record-table article{grid-template-columns:minmax(80px,.8fr) 90px 110px 70px minmax(130px,1.4fr)}.p6-task-table .table-head,.p6-task-table article{grid-template-columns:minmax(180px,1.8fr) 100px 60px minmax(150px,1fr) 90px}.p6-student-table .table-head,.p6-student-table article{grid-template-columns:minmax(100px,1fr) 100px 80px 70px 100px}.recognition-queue-table .table-head,.recognition-queue-table article{grid-template-columns:minmax(200px,2fr) 90px 110px 70px 60px 100px}.recognition-queue-table article.is-clickable{cursor:pointer;border-radius:var(--radius-sm);transition:background .14s ease}.recognition-queue-table article.is-clickable:hover{background:var(--surface-2)}.recognition-queue-table article.is-selected{background:var(--brand-soft)}.ledger-table .table-head,.ledger-table article{grid-template-columns:90px minmax(140px,1.6fr) 80px 100px 110px 90px;font-size:12.5px}.list-stack{display:flex;flex-direction:column;gap:10px}.list-item{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-start;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);transition:box-shadow .16s ease,transform .16s ease}.list-item:hover{box-shadow:var(--shadow-sm)}.list-item>div{flex:1;min-width:200px}.list-item strong{font-size:13px}.list-item span{display:block;font-size:12px;color:var(--muted);margin-top:3px}.list-item p{width:100%;margin:0;font-size:12px;color:var(--ink-2)}.review-item{align-items:center}.progress-line{height:6px;background:#efede7;border-radius:999px;overflow:hidden}.progress-line>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}.empty-hint{margin:0;font-size:12.5px;color:var(--muted)}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.dot-teal{background:var(--teal)}.dot-amber{background:var(--amber)}.dot-red{background:var(--red)}.trend-chart{width:100%}.trend-chart svg{width:100%;height:auto;display:block}.chart-legend{display:flex;gap:16px;margin-bottom:8px;font-size:12px;color:var(--ink-2)}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-grid{stroke:#edebe4;stroke-width:1}.chart-axis{stroke:#e2dfd6}.chart-tick{fill:var(--muted);font-size:10px}.donut-chart{display:flex;align-items:center;gap:20px}.donut-chart svg{width:150px;flex-shrink:0}.donut-track{stroke:#efede7}.donut-center-value{font-size:20px;font-weight:700;fill:var(--ink)}.donut-center-label{font-size:10px;fill:var(--muted)}.donut-legend{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:12px}.donut-legend li{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2)}.donut-legend b{margin-left:auto;color:var(--ink)}.bar-compare{display:flex;flex-direction:column;gap:12px}.bar-compare-row{display:grid;grid-template-columns:160px 1fr;gap:14px;align-items:center}.bar-compare-meta span{display:block;font-size:12px;color:var(--muted)}.bar-compare-meta strong{font-size:16px}.bar-track{height:12px;background:#efede7;border-radius:999px;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:inherit}.bar-fill-cloud{background:linear-gradient(90deg,#b9bdce,#8a8fa3)}.bar-fill-self{background:linear-gradient(90deg,var(--teal),#35B8A3)}.bar-compare-badge{align-self:flex-start;background:var(--amber-soft);color:var(--amber);font-size:12px;font-weight:600;padding:4px 12px;border-radius:999px}.cost-overview-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}.cost-summary-cards{display:flex;gap:10px}.cost-summary-cards article{flex:1;background:var(--surface-2);border-radius:var(--radius-sm);padding:12px}.cost-summary-cards span{font-size:11px;color:var(--muted)}.cost-summary-cards strong{display:block;font-size:20px;margin-top:4px}.class-tabs{display:inline-flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px}.class-tabs button{padding:6px 12px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--ink-2);transition:background .14s ease,color .14s ease}.class-tabs button.is-active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}.course-hero{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.course-hero-copy h2{font-size:20px;font-weight:700;margin:4px 0 6px}.course-hero-copy p{margin:0 0 12px;font-size:12.5px;color:var(--ink-2)}.course-hero-side{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.course-hero-stat{display:flex;align-items:center;gap:8px;color:var(--ink-2)}.course-hero-stat strong{font-size:24px}.course-hero-stat span{font-size:12px;color:var(--muted)}.course-list{display:flex;flex-direction:column;gap:10px}.course-list article{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1.1fr);gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px 14px;transition:box-shadow .16s ease,transform .16s ease}.course-list article:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.course-list article.is-current{border-color:var(--brand);background:var(--brand-soft)}.course-list-main strong{font-size:13.5px}.course-list-main span{display:block;font-size:12px;color:var(--muted);margin-top:3px}.course-list-progress .progress-line{margin-bottom:5px}.course-list-progress small{font-size:11.5px;color:var(--muted)}.material-item{align-items:center}.student-profile-card{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.student-identity{display:flex;gap:14px;align-items:center}.student-avatar{width:52px;height:52px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:20px;font-weight:700;display:grid;place-items:center}.student-identity h2{font-size:20px;margin:0}.student-identity p{margin:3px 0 0;font-size:12.5px;color:var(--muted)}.student-score-block{text-align:right}.student-score-block span{font-size:12px;color:var(--muted)}.student-score-block strong{display:block;font-size:30px;font-weight:700}.student-score-block small{font-size:12px;color:var(--muted)}.question-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.question-grid article{border:1px solid var(--line);border-radius:12px;padding:12px}.question-grid article>span{font-size:11px;color:var(--muted)}.question-grid article strong{display:block;font-size:14px;margin:4px 0;color:var(--teal)}.question-grid article p{margin:0;font-size:11.5px;color:var(--muted)}.question-grid article.is-wrong{background:var(--amber-soft);border-color:#f3ddba}.question-grid article.is-wrong strong{color:var(--amber)}.weakness-list{display:flex;flex-direction:column;gap:14px;margin-top:12px}.weakness-list strong{font-size:13px}.weakness-list .progress-line{margin:6px 0 4px}.weakness-list small{font-size:11.5px;color:var(--muted)}.errorbook-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.errorbook-card{border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.errorbook-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.errorbook-head strong{font-size:15px}.errorbook-block span,.errorbook-resources>span{font-size:12px;color:var(--muted)}.errorbook-block p{margin:4px 0 0;font-size:12.5px;color:var(--ink-2)}.errorbook-resources .chip-row{margin-top:6px}.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.resource-grid article{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.resource-grid article strong{font-size:13px}.resource-grid article div span{display:block;font-size:11.5px;color:var(--muted);margin-top:3px}.resource-grid article small{font-size:11px;color:var(--muted)}.batch-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.batch-summary-grid article{background:var(--surface-2);border-radius:var(--radius-sm);padding:12px}.batch-summary-grid span{font-size:11px;color:var(--muted)}.batch-summary-grid strong{display:block;font-size:18px;margin-top:4px}.recognition-summary{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px}.recognition-summary span{font-size:12px;color:var(--muted)}.answer-sheet{background:#fcf8ee;border:1px solid #EAE0C8;border-radius:12px;padding:16px 18px}.sheet-head-row{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;color:var(--ink-2)}.sheet-file{margin-top:4px;color:var(--muted);font-size:11px}.sheet-body{position:relative;margin-top:12px;height:340px;border:1px solid #EAE0C8;border-radius:8px;background:repeating-linear-gradient(180deg,transparent 0 27px,#EFE6CE 27px 28px);overflow:hidden}.detection-box{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:2px solid;border-radius:6px;font-size:10px;line-height:1.25;text-align:center;padding:2px}.detection-box strong{font-size:10.5px}.detection-box.conf-high{border-color:var(--teal);background:#0e9f8a14;color:#0b7c6c}.detection-box.conf-mid{border-color:var(--amber);background:#d977061a;color:#9a5504}.detection-box.conf-low{border-color:var(--red);background:#dc44461a;color:#b03335}.detection-box.needs-review{border-style:dashed}.scanline{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--brand),transparent);box-shadow:0 0 14px #3b46c48c;animation:scan-y 1.6s ease-in-out infinite}@keyframes scan-y{0%{top:0}50%{top:calc(100% - 3px)}to{top:0}}.sheet-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:11px;color:var(--muted)}.sheet-legend span{display:inline-flex;align-items:center;gap:6px}.queue-timeline{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0;margin:0}.queue-timeline li{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;color:var(--muted);background:var(--surface-2)}.queue-timeline li span{width:20px;height:20px;border-radius:50%;background:#e8e5dc;color:var(--muted);font-size:11px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.queue-timeline li strong{font-size:12px;font-weight:600}.queue-timeline li.is-active{background:var(--brand-soft);border-color:#3b46c459;color:var(--brand)}.queue-timeline li.is-active span{background:var(--brand);color:#fff}.queue-summary-metrics{display:flex;gap:24px;margin:8px 0 12px}.queue-summary-metrics strong{display:block;font-size:28px}.queue-summary-metrics span{font-size:11px;color:var(--muted)}.queue-summary-card p,.migration-entry-card p{font-size:12.5px;color:var(--ink-2);margin:0 0 12px}.migration-entry-card h2{margin:4px 0 8px}.gpu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.gpu-card{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}.gpu-card-head{display:flex;align-items:center;gap:8px;color:var(--ink-2)}.gpu-card-head strong{font-size:13.5px;color:var(--ink)}.gpu-card-head span{margin-left:auto;font-size:12px;color:var(--muted)}.gpu-card-meta span{font-size:12px;color:var(--ink-2)}.gpu-card-meta small{display:block;font-size:11px;color:var(--muted);margin-top:2px}.infra-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.infra-summary-card{border:1px solid var(--line);border-radius:12px;padding:14px}.infra-summary-card h3{margin:4px 0 10px}.infra-summary-metrics{display:flex;gap:18px;flex-wrap:wrap}.infra-summary-metrics strong{display:block;font-size:18px}.infra-summary-metrics span{font-size:11px;color:var(--muted)}.infra-summary-card p{margin:8px 0 0;font-size:12px;color:var(--muted)}.latency-list{display:flex;flex-direction:column;gap:8px}.latency-list div{display:flex;justify-content:space-between;font-size:12.5px}.latency-list strong.is-warning{color:var(--amber)}.command-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px}.command-copy h2{font-size:20px;margin:6px 0 8px}.command-copy p{font-size:13px;color:var(--ink-2);margin:0 0 14px}.hero-badges{display:flex;gap:8px;flex-wrap:wrap}.hero-badges span{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px}.command-console{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:16px}.console-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;letter-spacing:.06em;color:var(--muted)}.console-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.console-grid span{font-size:11px;color:var(--muted)}.console-grid b{display:block;font-size:18px;margin-top:2px}.architecture-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.architecture-head h2{margin:4px 0 6px}.architecture-head p{margin:0;font-size:12.5px;color:var(--ink-2);max-width:640px}.architecture-mode-bar{display:inline-flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px}.architecture-mode-bar button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;color:var(--ink-2)}.architecture-mode-bar button.is-active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}.architecture-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.architecture-kpi-row article{background:var(--surface-2);border-radius:var(--radius-sm);padding:12px}.architecture-kpi-row span{font-size:11px;color:var(--muted)}.architecture-kpi-row strong{display:block;font-size:18px;margin:2px 0}.architecture-kpi-row small{font-size:11px;color:var(--muted)}.cloud-architecture-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.architecture-column{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:10px}.architecture-column-head strong{display:block;font-size:13px}.architecture-column-head span{font-size:10.5px;color:var(--muted)}.architecture-node-stack{display:flex;flex-direction:column;gap:8px}.architecture-node{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;text-align:left;display:flex;flex-direction:column;gap:3px;transition:box-shadow .14s ease,border-color .14s ease,opacity .14s ease}.architecture-node strong{font-size:12.5px}.architecture-node small{font-size:10.5px;color:var(--muted)}.architecture-node em{font-style:normal;font-size:11px;font-weight:600;color:var(--brand)}.architecture-node:not(.is-highlighted){opacity:.45}.architecture-node.is-selected{border-color:var(--brand);box-shadow:0 0 0 2px #3b46c426}.node-topline{display:flex;justify-content:space-between;align-items:center}.node-icon{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.node-status{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.node-healthy .node-icon{background:var(--teal-soft);color:var(--teal)}.node-warning .node-icon{background:var(--amber-soft);color:var(--amber)}.node-critical .node-icon{background:var(--red-soft);color:var(--red)}.node-migrating .node-icon{background:var(--violet-soft);color:var(--violet)}.architecture-console{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;margin-top:16px}.flow-console{border:1px solid var(--line);border-radius:12px;padding:14px}.console-title-row{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.console-title-row h3{margin:4px 0}.console-title-row p{margin:0;font-size:12px;color:var(--muted)}.console-title-row>strong{font-size:11.5px;color:var(--brand);white-space:nowrap}.flow-picker{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.flow-picker button{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);font-size:11.5px;color:var(--ink-2)}.flow-picker button.is-active{background:var(--brand-soft);border-color:transparent;color:var(--brand)}.flow-path{list-style:none;display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:0;margin:0 0 10px}.flow-path li{display:flex;gap:6px;align-items:center;color:var(--muted)}.flow-path li button{border:1px solid var(--line);border-radius:8px;padding:5px 9px;font-size:11.5px;display:flex;gap:6px;align-items:center;color:var(--ink-2)}.flow-path li button span{font-size:10px;color:var(--muted)}.flow-path li.is-selected button{border-color:var(--brand);color:var(--brand)}.flow-result{margin:0;font-size:12px;color:var(--muted)}.node-inspector{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:14px}.node-inspector-title{display:flex;gap:10px;align-items:center;margin:8px 0 12px}.node-inspector-title h3{margin:0}.node-inspector-title small{font-size:11px;color:var(--muted)}.node-inspector dl{margin:0}.node-inspector dl div{margin-bottom:10px}.node-inspector dt{font-size:11px;color:var(--muted)}.node-inspector dd{margin:2px 0 0;font-size:12.5px;color:var(--ink-2)}.cost-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px}.cost-panel h2{margin:4px 0 8px}.cost-panel p{font-size:12.5px;color:var(--ink-2);margin:0}.cost-summary-row{display:flex;gap:18px;margin-top:16px}.cost-summary-row span{font-size:11px;color:var(--muted)}.cost-summary-row strong{display:block;font-size:20px;margin-top:2px}.cost-table{display:flex;flex-direction:column;gap:8px}.cost-table article{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;display:grid;grid-template-columns:1fr auto auto;gap:4px 12px;align-items:baseline}.cost-table strong{font-size:13px}.cost-table span{font-size:12.5px;color:var(--ink-2)}.cost-table p{grid-column:1 / -1;margin:0;font-size:11.5px;color:var(--muted)}.automation-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.automation-main{display:flex;flex-direction:column;gap:18px}.automation-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px}.hero-chips{display:flex;gap:6px}.hero-chips span{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--brand-soft);color:var(--brand);padding:3px 8px;border-radius:999px}.automation-hero h2{font-size:20px;margin:10px 0 8px}.automation-hero p{font-size:12.5px;color:var(--ink-2);margin:0 0 14px}.automation-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.automation-metrics article{background:var(--surface-2);border-radius:var(--radius-sm);padding:12px}.automation-metrics span{font-size:10.5px;color:var(--muted)}.automation-metrics strong{display:block;font-size:22px;margin:2px 0}.automation-metrics small{font-size:10.5px;color:var(--muted)}.automation-topology{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.automation-topology article{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;background:var(--surface-2)}.automation-topology article.is-active{background:var(--surface);border-color:#3b46c466}.automation-topology strong{display:block;font-size:12.5px}.automation-topology article>span{font-size:11px;color:var(--muted)}.mini-progress{height:6px;background:#eae7de;border-radius:999px;margin-top:8px;overflow:hidden}.mini-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}.automation-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px}.runner-card{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:14px}.runner-card>span{font-size:11px;color:var(--muted)}.runner-card>strong{display:block;font-size:14px;margin:3px 0 10px}.runner-card dl{margin:0 0 12px}.runner-card dl div{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}.runner-card dt{color:var(--muted)}.runner-card dd{margin:0}.automation-progress{height:6px;background:#eae7de;border-radius:999px;overflow:hidden;margin-bottom:6px}.automation-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}.runner-card small{font-size:11px;color:var(--muted)}.step-board{display:flex;flex-direction:column;gap:14px}.demo-output{background:var(--violet-soft);border:1px solid #E4DCF6;border-radius:12px;padding:14px}.demo-output>span{font-size:10px;letter-spacing:.08em;color:var(--muted)}.demo-output>strong{display:block;font-size:16px;margin:4px 0 10px}.demo-output-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.demo-output-metrics article{background:var(--surface);border-radius:8px;padding:8px}.demo-output-metrics span{font-size:10px;color:var(--muted)}.demo-output-metrics strong{display:block;font-size:16px}.demo-output p{margin:6px 0 0;font-size:11px;color:var(--muted)}.automation-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.automation-steps button{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;text-align:left;background:var(--surface);display:flex;flex-direction:column;gap:6px;transition:border-color .14s ease,box-shadow .14s ease}.automation-steps button:hover{box-shadow:var(--shadow-sm)}.automation-steps button.is-active{border-color:var(--brand);box-shadow:0 0 0 2px #3b46c41f}.automation-steps button>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.automation-steps strong{font-size:12.5px}.automation-steps small{font-size:10.5px;color:var(--muted)}.automation-steps p{margin:0;font-size:11px;color:var(--muted)}.automation-rail{display:flex;flex-direction:column;gap:14px}.rail-panel{padding:14px}.rail-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:var(--ink-2)}.rail-title h2{font-size:14px;margin:0}.runtime-list{display:flex;flex-direction:column;gap:8px}.runtime-list article{display:flex;align-items:center;gap:8px;font-size:12.5px}.runtime-list article span{flex:1}.review-tags{display:flex;flex-direction:column;gap:6px}.review-tags span{font-size:12px;color:var(--muted)}.lane-bars{display:flex;flex-direction:column;gap:10px}.lane-bars label{display:grid;grid-template-columns:1fr auto;gap:4px 8px;font-size:12px}.lane-bars i{grid-column:1 / -1;height:6px;background:#eae7de;border-radius:999px;display:block;overflow:hidden}.lane-bars em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}.attention-card{background:var(--amber-soft);border:1px solid #F3DDBA;border-radius:12px;padding:14px;display:flex;gap:10px;color:#8a5200}.attention-card strong{font-size:13px}.attention-card p{margin:3px 0 0;font-size:12px}.toast-host{position:fixed;top:68px;right:24px;z-index:100;display:flex;flex-direction:column;gap:8px}.toast{display:flex;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:var(--radius-sm);padding:10px 14px;box-shadow:var(--shadow-md);font-size:12.5px;color:var(--ink);animation:toast-in .18s ease-out}.toast svg{color:var(--teal);flex-shrink:0}@keyframes toast-in{0%{opacity:0;transform:translate(14px)}}@media (max-width: 1180px){.kpi-grid,.architecture-kpi-row,.automation-topology,.question-grid,.batch-summary-grid,.cloud-architecture-map{grid-template-columns:repeat(2,minmax(0,1fr))}.split-grid,.split-grid.wide-left,.command-hero,.automation-hero,.architecture-console,.cost-panel,.cost-overview-grid,.automation-grid,.automation-layout{grid-template-columns:minmax(0,1fr)}}.role-result-panel{border-color:color-mix(in srgb,var(--teal) 34%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--teal-soft) 72%,transparent),transparent 48%),var(--surface)}.role-result-panel .panel-header p{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.role-result-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid color-mix(in srgb,var(--teal) 24%,var(--line));border-radius:var(--radius-sm);background:#ffffffc7}.role-result-hero>div:first-child{min-width:0}.role-result-hero span,.role-result-hero p{color:var(--muted);font-size:11.5px}.role-result-hero h3{margin:4px 0 5px;font-size:18px}.role-result-hero p{margin:0;line-height:1.5}.role-result-score{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.role-result-score strong{color:var(--teal);font-size:28px;letter-spacing:-.04em}.role-result-score span{display:inline-flex;align-items:center;gap:5px;color:var(--teal);font-weight:650}.role-result-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.role-result-evidence article{min-width:0;display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.role-result-evidence span,.role-result-evidence small{color:var(--muted);font-size:11px}.role-result-evidence strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.role-result-evidence small{overflow-wrap:anywhere}.role-result-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.role-result-footer>span,.role-result-loading,.role-result-empty{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11.5px}.role-result-empty{width:100%;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm)}.role-result-empty p,.role-result-loading{margin:0}.inline-error{margin:0 0 12px;padding:9px 11px;border-radius:var(--radius-sm);background:var(--red-soft);color:var(--red);font-size:12px}.compatibility-banner{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--amber-soft) 65%,var(--surface));color:var(--muted);font-size:11.5px;line-height:1.45}.compatibility-banner strong{flex:0 0 auto;color:var(--amber)}@media (max-width: 760px){.role-result-hero,.role-result-footer,.compatibility-banner{align-items:stretch;flex-direction:column}.role-result-score{align-items:flex-start}.role-result-evidence{grid-template-columns:minmax(0,1fr)}.role-result-footer .btn{width:100%}}.learning-feedback-panel,.correction-review-panel{border-color:color-mix(in srgb,var(--violet) 28%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--violet-soft) 58%,transparent),transparent 46%),var(--surface)}.learning-feedback-panel .panel-header p,.correction-review-panel .panel-header p{max-width:780px;margin:5px 0 0;color:var(--muted);font-size:12px}.teaching-facts-panel{border-color:color-mix(in srgb,var(--blue) 28%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--blue-soft) 58%,transparent),transparent 46%),var(--surface)}.teaching-facts-panel .panel-header p{max-width:780px;margin:5px 0 0;color:var(--muted);font-size:12px}.panel-chip-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font:inherit}.panel-chip-button:disabled{cursor:wait;opacity:.62}.teaching-fact-block+.teaching-fact-block{margin-top:18px}.teaching-fact-title{display:flex;align-items:center;gap:7px;margin-bottom:9px;color:var(--ink-2);font-size:13px}.learning-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.learning-summary-grid article{min-width:0;display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffc7}.learning-summary-grid span,.learning-summary-grid small{color:var(--muted);font-size:11px}.learning-summary-grid strong{color:var(--violet);font-size:21px}.learning-item-list,.correction-review-list{display:grid;gap:10px}.learning-item-card,.correction-review-list>article{padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.learning-item-head,.correction-review-list>article{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.learning-item-head span,.correction-review-list article span{color:var(--muted);font-size:11px}.learning-item-head h3{margin:3px 0 0;font-size:14px}.learning-answer-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.learning-answer-compare>div{display:flex;flex-direction:column;gap:3px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.learning-answer-compare span{color:var(--muted);font-size:10.5px}.learning-correction-form{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr) auto;align-items:end;gap:9px;margin-top:10px}.learning-correction-form label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:10.5px}.learning-correction-form input,.learning-correction-form textarea{width:100%;min-height:34px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;outline:none;resize:vertical;color:var(--ink);background:var(--surface);font:inherit;font-size:12px}.learning-correction-form input:focus,.learning-correction-form textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.learning-correction{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.learning-correction>div{display:flex;align-items:center;gap:6px}.learning-correction p{margin:5px 0 0;color:var(--ink-2);font-size:11.5px}.learning-correction small,.learning-evidence-foot{display:block;margin-top:6px;color:var(--muted);font-size:10.5px}.learning-correction.status-approved{border-color:color-mix(in srgb,var(--teal) 35%,var(--line));background:var(--teal-soft)}.learning-correction.status-pending{border-color:color-mix(in srgb,var(--amber) 32%,var(--line));background:var(--amber-soft)}.learning-readonly-note{display:flex;align-items:center;gap:7px;margin-top:10px;padding:10px 12px;border:1px dashed var(--line-strong);border-radius:8px;color:var(--muted);font-size:11.5px}.correction-review-list article>div:first-child{min-width:0}.correction-review-list article strong,.correction-review-list article p{display:block;margin:4px 0 0;font-size:12px}.correction-review-list article p{color:var(--ink-2)}@media (max-width: 900px){.learning-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-correction-form{grid-template-columns:minmax(0,1fr)}}@media (max-width: 560px){.learning-summary-grid,.learning-answer-compare{grid-template-columns:minmax(0,1fr)}.learning-item-head,.correction-review-list>article{flex-direction:column}}@media (max-width: 720px){.teacher-header-actions{width:100%;justify-content:flex-start}.analysis-grid,.parent-weekly-grid,.teaching-flow-facts,.agent-governance-body{grid-template-columns:minmax(0,1fr)}.teaching-flow-stages,.agent-governance-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-flow-actions,.agent-governance-actions{flex-wrap:wrap}.modal-overlay{padding:10px}.modal-card{width:100%;max-height:calc(100vh - 20px);overflow-y:auto}.demo-player{right:10px;bottom:10px;left:10px;gap:8px;max-width:none;padding:9px 10px;border-radius:16px;transform:none}.demo-player-center{align-items:flex-start}.demo-player-narration{font-size:11.5px}.demo-player-hint{display:none}}@media (max-width: 420px){.teaching-flow-stages,.agent-governance-stages{grid-template-columns:minmax(0,1fr)}.demo-speed{display:none}}@media (max-width: 720px){.workspace{display:block}.sidebar{position:relative;z-index:35;top:auto;height:auto;gap:10px;overflow:visible;padding:12px 12px 8px;border-right:0;border-bottom:1px solid var(--line)}.brand-block{padding:0}.brand-mark{width:32px;height:32px;border-radius:9px;font-size:12px}.brand-block strong{font-size:14px}.brand-block small,.sidebar-run,.sidebar-note,.sidebar-foot{display:none}.sidebar-meta{position:absolute;top:15px;right:12px;max-width:54%;justify-content:flex-end;padding:0}.sidebar-meta span:first-child{overflow:hidden;max-width:150px;text-overflow:ellipsis;white-space:nowrap}.surface-nav{flex-direction:row;gap:5px;margin:0 -12px;padding:1px 12px 4px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.surface-nav::-webkit-scrollbar{display:none}.surface-nav button{flex:0 0 auto;gap:6px;min-height:38px;padding:7px 9px;border-left:0;border-bottom:3px solid transparent}.surface-nav button.is-active{border-left-color:transparent;border-bottom-color:var(--brand)}.surface-nav button small{display:none}.surface-nav button strong{font-size:12px;white-space:nowrap}.nav-divider{flex:0 0 1px;width:1px;height:28px;margin:5px 2px}.topbar{height:50px;gap:8px;padding:0 12px}.topbar-title{min-width:0}.topbar-title strong{display:block;overflow:hidden;max-width:116px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{gap:5px}.foundation-chip{max-width:118px;min-height:24px;overflow:hidden;padding:2px 7px;font-size:10px;text-overflow:ellipsis}.topbar-actions .btn-ghost{width:32px;height:32px;justify-content:center;padding:0}.quick-demo-label,.topbar-user>span:last-child{display:none}.notify-panel{position:fixed;top:54px;right:10px;left:10px;width:auto;max-height:calc(100vh - 68px);overflow-y:auto}.surface-main{padding:16px 12px 84px}.view-stack{gap:14px}.page-header{align-items:flex-start}.page-header h1{font-size:24px;line-height:1.2}.page-header-actions,.teacher-header-actions{width:100%;justify-content:flex-start}.class-tabs{max-width:100%;overflow-x:auto}.class-tabs button{flex:0 0 auto;white-space:nowrap}.panel{padding:14px}.panel-header,.panel-header-chips{flex-wrap:wrap}.kpi-grid,.architecture-kpi-row,.automation-topology,.question-grid,.batch-summary-grid,.cloud-architecture-map,.automation-metrics,.teaching-flow-facts,.agent-governance-body,.analysis-grid,.parent-weekly-grid,.course-list article,.bar-compare-row{grid-template-columns:minmax(0,1fr)}.teaching-flow-stages,.agent-governance-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-flow-actions,.agent-governance-actions,.cost-summary-cards,.cost-summary-row{flex-wrap:wrap}.data-table{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.campus-table .table-head,.campus-table article,.video-table .table-head,.video-table article,.exam-table .table-head,.exam-table article,.student-record-table .table-head,.student-record-table article,.p6-task-table .table-head,.p6-task-table article,.p6-student-table .table-head,.p6-student-table article,.recognition-queue-table .table-head,.recognition-queue-table article,.ledger-table .table-head,.ledger-table article{min-width:620px}.modal-overlay{padding:10px}.modal-card{width:100%;max-height:calc(100vh - 20px);overflow-y:auto}.demo-player{right:10px;bottom:10px;left:10px;gap:8px;max-width:none;padding:9px 10px;border-radius:16px;transform:none}.demo-player-center{align-items:flex-start}.demo-player-narration{font-size:11.5px}.demo-player-hint{display:none}}@media (max-width: 420px){.sidebar-meta span:first-child,.topbar-title,.demo-speed{display:none}.teaching-flow-stages,.agent-governance-stages{grid-template-columns:minmax(0,1fr)}.foundation-chip{max-width:132px}}.count-up{font-variant-numeric:tabular-nums}.panel-header-chips{display:flex;align-items:center;gap:8px}.demo-player{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:110;display:flex;align-items:center;gap:18px;max-width:min(920px,calc(100vw - 48px));padding:10px 18px;background:var(--ink);color:#fff;border-radius:999px;box-shadow:var(--shadow-md);animation:demo-player-in .32s cubic-bezier(.2,.9,.3,1.2)}@keyframes demo-player-in{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}.demo-player-left,.demo-player-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.demo-player-step{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:#ffffffbf;min-width:34px;text-align:center}.demo-player-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;color:#fff;background:#ffffff1f;transition:background .12s ease-out}.demo-player-btn:hover{background:#ffffff3d}.demo-player-narration{margin:0;font-size:13px;line-height:1.45;color:#ffffffeb}.demo-player-center{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;flex:1}.demo-player-hint{font-size:10px;line-height:1.4;color:#ffffff7a;white-space:nowrap}.demo-speed{display:flex;border:1px solid rgba(255,255,255,.22);border-radius:999px;overflow:hidden}.demo-speed button{padding:3px 10px;font-size:11.5px;font-weight:700;color:#ffffffb3;transition:background .12s ease-out,color .12s ease-out}.demo-speed button.is-active{background:#fff;color:var(--ink)}.demo-player-exit{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;color:#fff;background:#ffffff1f;transition:background .12s ease-out}.demo-player-exit:hover{background:#ffffff3d}.demo-spotlight{outline:2px solid var(--brand);outline-offset:3px;animation:spotlight-pulse 1.2s ease-in-out infinite}@keyframes spotlight-pulse{0%,to{box-shadow:0 0 #3b46c473}50%{box-shadow:0 0 0 9px #3b46c400}}.demo-cascade{opacity:0;animation:cascade-in .48s ease-out forwards}@keyframes cascade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.detection-box.box-hidden{opacity:0}.detection-box.box-reveal{opacity:0;animation:box-reveal-in .42s ease-out forwards}@keyframes box-reveal-in{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.review-boot{animation:review-boot-in .56s ease-out}@keyframes review-boot-in{0%{box-shadow:0 0 #d9770600}35%{box-shadow:0 0 0 4px #d9770659;background:var(--amber-soft)}to{box-shadow:0 0 #d9770600}}.row-flash{animation:row-flash-in 1.1s ease-out}@keyframes row-flash-in{0%{background:var(--brand-soft)}60%{background:var(--brand-soft)}to{background:transparent}}.ledger-done strong:after{content:"✓";margin-left:6px;color:var(--teal);font-weight:700;opacity:0;animation:ledger-check .36s ease-out forwards;animation-delay:var(--ledger-delay, 0ms)}@keyframes ledger-check{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.topology-boot article{animation:topology-pulse .64s ease-out}.topology-boot article:nth-child(1){animation-delay:0ms}.topology-boot article:nth-child(2){animation-delay:.16s}.topology-boot article:nth-child(3){animation-delay:.32s}.topology-boot article:nth-child(4){animation-delay:.48s}@keyframes topology-pulse{0%{box-shadow:0 0 #3b46c400}40%{box-shadow:0 0 0 4px #3b46c44d;border-color:var(--brand)}to{box-shadow:0 0 #3b46c400}}.status-pill{animation:pill-pop .3s ease-out}@keyframes pill-pop{0%{transform:scale(1)}45%{transform:scale(1.14)}to{transform:scale(1)}}.draw-on polyline{animation:draw-line .9s ease-out forwards}@keyframes draw-line{to{stroke-dashoffset:0}}.draw-on path{opacity:0;animation:draw-area-fade .6s ease-out .45s forwards}@keyframes draw-area-fade{to{opacity:1}}@media (prefers-reduced-motion: reduce){.scanline,.demo-spotlight,.status-pill,.topology-boot article,.row-flash,.review-boot,.demo-player{animation:none}.demo-cascade,.detection-box.box-reveal,.draw-on path{opacity:1;animation:none}.draw-on polyline{stroke-dashoffset:0;animation:none}.ledger-done strong:after{opacity:1;animation:none}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;background:#1c20336b;display:flex;align-items:center;justify-content:center;padding:24px;animation:modal-fade .18s ease-out}@keyframes modal-fade{0%{opacity:0}}.modal-card{width:min(560px,100%);max-height:calc(100vh - 96px);overflow-y:auto;background:var(--surface);border-radius:18px;box-shadow:var(--shadow-md);padding:20px 22px;animation:modal-pop .22s cubic-bezier(.2,.9,.3,1.15)}@keyframes modal-pop{0%{opacity:0;transform:translateY(14px) scale(.97)}}.modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.modal-head h2{margin:0;font-size:17px}.modal-head p{margin:3px 0 0;font-size:12px;color:var(--muted)}.modal-step-dots{display:flex;gap:5px;margin-left:auto;padding-top:5px}.modal-step-dots i{width:7px;height:7px;border-radius:999px;background:var(--line-strong);transition:background .16s ease-out}.modal-step-dots i.is-active{background:var(--brand)}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line)}.modal-close:hover{background:var(--brand-soft);color:var(--brand)}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.wizard-paper-list{display:flex;flex-direction:column;gap:10px}.wizard-paper-card{display:flex;flex-direction:column;gap:3px;text-align:left;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .14s ease-out,background .14s ease-out}.wizard-paper-card strong{font-size:13.5px}.wizard-paper-card span{font-size:12px;color:var(--ink-2)}.wizard-paper-card small{font-size:11.5px;color:var(--muted)}.wizard-paper-card.is-selected{border-color:var(--brand);background:var(--brand-soft)}.wizard-class-list{display:flex;flex-direction:column;gap:10px}.wizard-class-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;font-size:13.5px}.wizard-class-item small{margin-left:auto;color:var(--muted);font-size:11.5px}.wizard-class-item.is-selected{border-color:var(--brand);background:var(--brand-soft)}.wizard-settings{display:flex;flex-direction:column;gap:14px}.wizard-field{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13.5px}.wizard-field>span{display:inline-flex;align-items:center;gap:7px;color:var(--ink-2)}.wizard-field input[type=date]{font:inherit;color:var(--ink);padding:6px 10px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface)}.wizard-toggle{width:42px;height:24px;border-radius:999px;background:var(--line-strong);position:relative;transition:background .16s ease-out}.wizard-toggle i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:var(--shadow-sm);transition:left .16s ease-out}.wizard-toggle.is-on{background:var(--teal)}.wizard-toggle.is-on i{left:21px}.wizard-hint{margin:0;font-size:12px;color:var(--muted)}.wizard-summary dl{margin:0;display:flex;flex-direction:column;gap:10px}.wizard-summary dl>div{display:flex;gap:14px;font-size:13px}.wizard-summary dt{width:72px;flex-shrink:0;color:var(--muted)}.wizard-summary dd{margin:0;color:var(--ink)}.teacher-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.teacher-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:999px;width:fit-content}.teacher-tabs button{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--ink-2);transition:background .14s ease-out,color .14s ease-out}.teacher-tabs button.is-active{background:var(--brand);color:#fff}.analysis-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px;align-items:start}.analysis-grid h3{margin:0 0 10px;font-size:13px;color:var(--ink-2)}.histogram-chart svg{width:100%;height:auto;display:block}.histogram-chart rect{fill:var(--brand);opacity:.88}.histogram-chart .hist-value{font-size:11px;font-weight:700;fill:var(--ink-2)}.hist-bar{transform-box:fill-box;transform-origin:bottom center;animation:hist-rise .52s ease-out both}@keyframes hist-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.radar-chart svg{width:100%;max-width:340px;height:auto;display:block;margin:0 auto}.radar-ring{fill:none;stroke:var(--line)}.radar-axis{stroke:var(--line)}.radar-label{font-size:11px;fill:var(--ink-2)}.radar-area.radar-class{fill:#3b46c429}.radar-area.radar-grade{fill:#0e9f8a14;stroke:var(--teal);stroke-width:1.4;stroke-dasharray:4 4}.radar-class-line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linejoin:round}.radar-draw{fill:none;stroke:var(--brand);stroke-width:2.2;stroke-linejoin:round;animation:draw-line .9s ease-out forwards}.radar-dot-class{fill:var(--brand);stroke:#fff;stroke-width:1.5}.radar-dot-grade{fill:var(--teal);stroke:#fff;stroke-width:1.5}.avg-compare-list{display:flex;flex-direction:column;gap:12px}.avg-compare-row{display:grid;grid-template-columns:90px 1fr 52px;align-items:center;gap:12px;font-size:13px}.avg-compare-row strong{text-align:right;font-variant-numeric:tabular-nums}.avg-compare-bar{height:10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);overflow:hidden}.avg-compare-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--teal))}.avg-compare-row.is-highlight strong{color:var(--brand)}.parent-child-card{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.parent-child-meta{display:flex;gap:8px;flex-wrap:wrap}.parent-push-card{display:flex;gap:0;padding:0;overflow:hidden}.wechat-bar{width:52px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#07c160;color:#fff}.parent-push-body{padding:16px 18px;flex:1}.wechat-tag{font-size:11px;letter-spacing:.08em;color:#07c160;font-weight:700}.parent-push-body h2{margin:4px 0 8px;font-size:17px}.parent-push-score{display:flex;align-items:baseline;gap:12px;margin:0 0 12px}.parent-push-score strong{font-size:26px;font-variant-numeric:tabular-nums}.parent-push-score span{font-size:12.5px;color:var(--ink-2)}.wechat-slide-in{animation:wechat-in .48s cubic-bezier(.2,.9,.3,1.1)}@keyframes wechat-in{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.parent-weekly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.parent-weekly-grid article{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.parent-weekly-grid span{font-size:11.5px;color:var(--muted)}.parent-weekly-grid strong{font-size:16px;font-variant-numeric:tabular-nums}.parent-comment{margin:0;padding:14px 16px;background:var(--surface-2);border-left:3px solid var(--brand);border-radius:10px}.parent-comment p{margin:0 0 8px;font-size:13px;line-height:1.7;color:var(--ink)}.parent-comment footer{font-size:12px;color:var(--muted);text-align:right}.parent-notify-item{align-items:center}.parent-notify-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--brand-soft);color:var(--brand);flex-shrink:0}.parent-notify-item time{margin-left:auto;font-size:11.5px;color:var(--muted);flex-shrink:0}.parent-notify-item.is-read{opacity:.58}.unread-dot{width:8px;height:8px;border-radius:999px;background:var(--red);flex-shrink:0}.ops-alert-item{align-items:flex-start}.ops-alert-item.is-resolved{opacity:.68}.ops-alert-assignee{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:11.5px;color:var(--teal)}.errorbook-foot{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);display:flex;justify-content:flex-end}.correction-status{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;border-radius:999px;font-size:11.5px;font-weight:700}.correction-pending{background:var(--amber-soft);color:var(--amber);animation:correction-blink .9s ease-in-out infinite}@keyframes correction-blink{0%,to{opacity:1}50%{opacity:.55}}.correction-approved{background:var(--teal-soft);color:var(--teal)}.teaching-flow-panel{border-color:color-mix(in srgb,var(--teal) 28%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--teal-soft) 58%,transparent),transparent 44%),var(--surface)}.teaching-flow-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px}.teaching-flow-stages article{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffbf;color:var(--muted)}.teaching-flow-stages article.is-complete{border-color:color-mix(in srgb,var(--teal) 34%,var(--line));background:var(--teal-soft);color:var(--teal)}.teaching-flow-stages article span{overflow:hidden;color:var(--ink-2);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.teaching-flow-stages article strong{grid-column:2;font-size:10.5px;font-weight:600}.teaching-flow-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.teaching-flow-facts article{min-width:0;display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.teaching-flow-facts span,.teaching-flow-facts small,.teaching-evidence-summary{color:var(--muted);font-size:11px}.teaching-flow-facts strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.teaching-flow-empty{display:flex;align-items:center;gap:9px;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--muted);font-size:12px}.teaching-flow-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.teaching-flow-error{margin:10px 0 0;padding:8px 10px;border-radius:8px;background:var(--red-soft);color:var(--red);font-size:12px}.public-readonly-seal{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--teal) 30%,var(--line));border-radius:var(--radius-sm);background:var(--teal-soft);color:#087566;font-size:11.5px;font-weight:650}.agent-governance-panel{border-color:color-mix(in srgb,var(--brand) 32%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--brand-soft) 64%,transparent),transparent 46%),var(--surface)}.agent-governance-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px}.agent-governance-stages article{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffbf;color:var(--muted)}.agent-governance-stages article.is-complete{border-color:color-mix(in srgb,var(--brand) 36%,var(--line));background:var(--brand-soft);color:var(--brand)}.agent-governance-stages article span{overflow:hidden;color:var(--ink-2);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.agent-governance-stages article strong{grid-column:2;font-size:10.5px;font-weight:600}.agent-governance-body{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.agent-governance-body article{min-width:0;display:flex;flex-direction:column;gap:5px;min-height:142px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.agent-governance-body article>span,.agent-governance-body article small,.agent-evidence-summary{color:var(--muted);font-size:11px}.agent-governance-body article>strong{font-size:13px;line-height:1.35}.agent-governance-body article p{margin:0;color:var(--ink-2);font-size:11.5px;line-height:1.55}.agent-governance-body article small{margin-top:auto;overflow-wrap:anywhere}.agent-source-card div{display:flex;align-items:center;gap:6px;margin-top:auto;color:var(--brand)}.agent-source-card code{overflow:hidden;color:var(--ink-2);font-size:10.5px;text-overflow:ellipsis}.agent-governance-empty{display:flex;align-items:center;gap:9px;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--muted);font-size:12px}.agent-governance-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.spin{animation:teaching-spin .8s linear infinite}@keyframes teaching-spin{to{transform:rotate(360deg)}}.donut-spin{animation:donut-in .7s ease-out;transform-origin:center}@keyframes donut-in{0%{opacity:0;transform:rotate(-14deg) scale(.92)}to{opacity:1;transform:rotate(0) scale(1)}}@media (prefers-reduced-motion: reduce){.modal-overlay,.modal-card,.wechat-slide-in,.donut-spin,.correction-pending,.hist-bar,.spin{animation:none}.radar-draw{stroke-dashoffset:0;animation:none}}@media (max-width: 1180px){.analysis-grid,.parent-weekly-grid,.teaching-flow-facts,.agent-governance-body{grid-template-columns:minmax(0,1fr)}.teaching-flow-stages,.agent-governance-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}
