/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-sm:.875rem;--text-lg:1.125rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--color-app-canvas:#f5f7fa;--color-app-surface:#fff;--color-app-surface-subtle:#f8fafc;--color-app-surface-raised:#fff;--color-app-text:#172033;--color-app-text-secondary:#5f6b7d;--color-app-text-tertiary:#8993a3;--color-app-border:#e2e7ee;--color-app-border-strong:#cbd3df;--color-app-primary:#246bfd;--color-app-primary-hover:#1558df;--color-app-primary-soft:#edf3ff;--color-app-success:#138a61;--color-app-success-soft:#eaf8f2;--color-app-warning:#a86407;--color-app-warning-soft:#fff5df;--color-app-danger:#bd3f48;--color-app-danger-soft:#fff0f1;--color-app-info:#2563a9;--color-app-info-soft:#eef6ff;--color-sidebar-bg:#141b27;--color-sidebar-text:#eef2f8;--color-sidebar-muted:#919bad;--color-sidebar-active:#273349;--color-classroom-panel:oklch(29% .035 258/.82);--color-classroom-panel-soft:oklch(35% .04 258/.68);--color-classroom-line:oklch(94% .025 226/.56);--color-classroom-text:oklch(97% .018 226);--color-classroom-muted:oklch(87% .028 246/.76);--color-classroom-accent:oklch(79% .14 203);--color-classroom-primary:oklch(62% .19 257);--color-classroom-primary-ink:oklch(98% .012 235);--color-classroom-danger:oklch(58% .16 24);--color-classroom-success:oklch(77% .15 164);--color-classroom-warning:oklch(78% .14 76);--color-classroom-ink:oklch(25% .035 258);--color-classroom-paper:oklch(98% .012 235/.94);--font-classroom-display:"PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-classroom-body:Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-classroom-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg-sm:1.25rem;--space-lg:1.5rem;--space-xl-sm:2rem;--space-xl:2.5rem;--space-2xl:4rem;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.75rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--rule-classroom:1px solid var(--color-classroom-line);--radius-classroom-control:.75rem;--radius-classroom-panel:1.25rem;--radius-control:8px;--radius-card:12px;--radius-container:16px;--shadow-card:0 1px 2px #151f300a, 0 8px 24px #151f300d;--shadow-overlay:0 20px 60px #0e17262e;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600;--glass:#3d4e6f85;--glass-strong:#233353c7;--glass-line:#eff9ff9e;--white:#f4fbff;--cyan:#74f3ff;--blue:#4a86ff;--ink:#16233b}*{box-sizing:border-box}html,body{width:100%;min-height:100%}body{color:var(--white);background:#172847;margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;overflow:hidden}button,input,select{font:inherit}button{color:inherit}.classroom-app{background:#1a3158;width:100%;min-width:0;height:100dvh;min-height:0;overflow:hidden}.classroom-stage{isolation:isolate;background:#d9d9d2;width:100%;height:100%;position:relative;overflow:hidden}.classroom-photo{z-index:0;object-fit:cover;object-position:center;filter:saturate(.84)contrast(.96)brightness(.96);-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.classroom-color-wash{z-index:1;pointer-events:none;mix-blend-mode:multiply;background:radial-gradient(circle at 50% 55%,#0000 25%,#1b3d7e14 72%,#1c3e8040 100%),linear-gradient(#527dd533,#688dd50a 48%,#3666d43b);position:absolute;inset:0}.live2d-canvas{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.glass-panel{border:1px solid var(--glass-line);background:linear-gradient(145deg, #ffffff2e, #37486e3d), var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.2);box-shadow:inset 0 1px #ffffff57,0 14px 34px #162c5938}.top-online{z-index:12;letter-spacing:.02em;border-radius:31px 31px 18px;align-items:center;gap:13px;min-width:244px;height:66px;padding:0 22px;font-size:18px;display:flex;position:absolute;top:3.2%;left:2%}.top-online svg{fill:#ffffffe6;stroke:#fff;stroke-width:1.5px;width:29px;height:29px;margin-left:auto}.status-dot{background:#4de2bd;border-radius:50%;width:13px;height:13px;box-shadow:0 0 12px #39f5c4}.status-dot.warning{background:#ffbd5c;box-shadow:0 0 12px #ff9c39}.voice-status{z-index:12;border-radius:18px;grid-template-columns:34px 1fr 6px;align-items:center;gap:10px;width:270px;min-height:58px;padding:10px 13px;display:grid;position:absolute;top:11.2%;left:2.2%}.voice-status svg{fill:none;stroke:#fff;stroke-width:1.8px;width:25px}.voice-status strong,.voice-status span{display:block}.voice-status strong{font-size:13px}.voice-status span{color:#f1f8ffb8;text-overflow:ellipsis;white-space:nowrap;max-width:185px;margin-top:2px;font-size:10px;overflow:hidden}.voice-status>i{width:5px;height:calc(8px + var(--voice-level,0) * 29px);background:linear-gradient(#7ff3ff,#46e4be);border-radius:4px;align-self:end;max-height:37px;transition:height 70ms linear;box-shadow:0 0 10px #5cf4eba6}.class-title{z-index:11;color:#dffbff;letter-spacing:.14em;text-shadow:0 0 14px #5de3ff52;border-top:0;border-radius:0 0 42px 42px;justify-content:center;align-items:center;gap:30px;width:clamp(460px,38vw,680px);height:104px;font-size:clamp(24px,2.25vw,38px);display:flex;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.class-title span{background:#68f2ff;border-radius:50%;width:11px;height:11px;box-shadow:0 0 12px #5be7ff}.class-timer{z-index:12;border-radius:31px;width:254px;height:164px;padding:20px 30px 16px;position:absolute;top:2.7%;right:2.2%}.class-timer>div{align-items:center;gap:11px;font-size:17px;font-weight:700;display:flex}.class-timer svg{fill:none;stroke:#fff;stroke-width:2px;width:28px}.class-timer>strong{color:#b9f6ff;letter-spacing:.05em;text-shadow:0 0 17px #51e1ff94;margin-top:7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:54px;font-weight:400;line-height:1;display:block}.pause-button{z-index:14;cursor:pointer;background:#b93c49;border:2px solid #ffffffad;border-radius:50%;place-items:center;width:46px;height:46px;display:grid;position:absolute;top:4.7%;right:3.1%;box-shadow:0 6px 18px #70142857}.pause-button svg{fill:none;stroke:#fff;stroke-width:2.5px;width:25px}.class-toolbar{z-index:14;border-radius:28px;flex-direction:column;gap:6px;width:102px;padding:13px 8px 12px;display:flex;position:absolute;top:25.5%;left:2%}.toolbar-title{text-align:center;letter-spacing:.08em;border-bottom:1px solid #ffffff61;padding:0 4px 10px;font-size:15px;font-weight:700;display:block}.class-toolbar button{cursor:pointer;background:0 0;border:0;border-radius:15px;padding:8px 0 7px;transition:background .18s,transform .18s}.class-toolbar button:hover,.class-toolbar button.active{background:#75b4ff38;transform:translateY(-1px)}.class-toolbar button i{background:linear-gradient(145deg,#ffffff80,#dcecff33);border:1px solid #ffffffb8;border-radius:50%;place-items:center;width:50px;height:50px;margin:auto;display:grid;box-shadow:inset 0 0 9px #ffffff73}.class-toolbar button svg{fill:none;stroke:#fff;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:31px;height:31px}.class-toolbar button>span{letter-spacing:.04em;margin-top:5px;font-size:14px;display:block}.side-drawer{z-index:20;background:#243454c7;border-radius:25px;width:350px;padding:20px;position:absolute;top:20%;bottom:11%;left:9.1%;overflow:auto}.side-drawer>header{border-bottom:1px solid #fff3;justify-content:space-between;align-items:flex-start;padding-bottom:15px;display:flex}.side-drawer h2{margin:2px 0 0;font-size:24px}.side-drawer small{color:#eef7ffa3}.side-drawer header button{cursor:pointer;background:#ffffff14;border:1px solid #ffffff4d;border-radius:50%;width:32px;height:32px;font-size:23px}.drawer-students{gap:10px;margin-top:16px;display:grid}.drawer-students button{text-align:left;cursor:pointer;background:#ffffff14;border:1px solid #ffffff24;border-radius:15px;grid-template-columns:10px 1fr auto;align-items:center;gap:11px;padding:13px;display:grid}.drawer-students button>span{border-radius:50%;width:9px;height:9px;box-shadow:0 0 8px}.drawer-students strong,.drawer-students small{display:block}.drawer-students em{color:#8df4ff;font-size:12px;font-style:normal}.drawer-metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0;display:grid}.drawer-metrics div{text-align:center;background:#ffffff17;border-radius:13px;padding:12px 6px}.drawer-metrics strong,.drawer-metrics span{display:block}.drawer-metrics strong{color:#9cf7ff;font-size:24px}.drawer-metrics span{color:#ffffffad;font-size:11px}.drawer-log article{border-top:1px solid #ffffff1f;grid-template-columns:68px 1fr;gap:9px;padding:10px 0;display:grid}.drawer-log time{color:#8fe6ff;font-size:10px}.drawer-log p{color:#fffc;margin:0;font-size:12px;line-height:1.5}.interrupt-speech-button{color:#f3f8ff;cursor:pointer;background:#517cc361;border:1px solid #ffffff40;border-radius:10px;width:100%;margin:10px 0;padding:9px;font-size:11px}.drawer-course{padding-top:18px}.drawer-course strong,.drawer-course span{display:block}.drawer-course strong{font-size:20px}.drawer-course span{color:#8ff5ff;margin-top:5px}.drawer-course p{color:#ffffffb3;line-height:1.7}.drawer-course button{cursor:pointer;background:#598dff59;border:1px solid #ffffff4d;border-radius:10px;padding:9px 13px}.drawer-knowledge article{border-bottom:1px solid #ffffff21;padding:14px 0}.drawer-knowledge strong{font-size:13px}.drawer-knowledge p{color:#ffffffa6;margin:7px 0 0;font-size:12px;line-height:1.6}.student-ui-layer{z-index:5;pointer-events:none;position:absolute;inset:0}.student-overlay{pointer-events:none;width:28%;height:68%;position:absolute}.student-overlay.front_left{z-index:2;top:28%;left:14.5%}.student-overlay.front_center{z-index:2;top:28%;left:36%}.student-overlay.front_right{z-index:2;top:28%;right:14.5%}.student-overlay.back_left{z-index:1;width:23%;height:55%;top:23%;left:22%}.student-overlay.back_center{z-index:1;width:23%;height:55%;top:21%;left:38.5%}.student-overlay.back_right{z-index:1;width:23%;height:55%;top:23%;right:22%}.student-click-target{pointer-events:auto;cursor:pointer;background:0 0;border:0;position:absolute;inset:0 7%}.student-click-target:disabled{cursor:default}.student-name-tag{top:var(--name-anchor-y,43%);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#435674a1;border:1px solid #ffffffbf;border-radius:18px;align-items:center;gap:8px;min-width:112px;height:36px;padding:0 11px;display:flex;position:absolute;box-shadow:0 7px 17px #192b4b2e}.student-overlay.front_left .student-name-tag,.student-overlay.back_left .student-name-tag{left:-5%}.student-overlay.front_center .student-name-tag,.student-overlay.back_center .student-name-tag{left:50%;transform:translate(-50%)}.student-overlay.front_right .student-name-tag,.student-overlay.back_right .student-name-tag{right:-5%}.student-state-chip{color:#192840;background:#f2faffde;border-radius:10px;padding:5px 9px;font-size:11px;font-weight:700;position:absolute;top:46%}.student-overlay.front_left .student-state-chip,.student-overlay.back_left .student-state-chip{left:-1%}.student-overlay.front_center .student-state-chip,.student-overlay.back_center .student-state-chip{left:50%;transform:translate(-50%)}.student-overlay.front_right .student-state-chip,.student-overlay.back_right .student-state-chip{right:-1%}.student-speech{top:var(--bubble-anchor-y,8%);color:#24324b;background:#f9fdffeb;border:1px solid #ffffffc2;border-radius:18px 18px 18px 5px;width:min(290px,85%);padding:12px 15px;font-size:13px;font-weight:650;line-height:1.55;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #23315233}.student-speech.warning{color:#803e24;background:#ffebd8f0}.state-handRaised .student-name-tag,.state-called .student-name-tag,.state-thinking .student-name-tag,.state-answering .student-name-tag,.state-questioning .student-name-tag{box-shadow:0 0 0 4px var(--student-accent), 0 8px 22px #192b4b33}@supports (color:color-mix(in lab, red, red)){.state-handRaised .student-name-tag,.state-called .student-name-tag,.state-thinking .student-name-tag,.state-answering .student-name-tag,.state-questioning .student-name-tag{box-shadow:0 0 0 4px color-mix(in srgb, var(--student-accent) 24%, transparent), 0 8px 22px #192b4b33}}.end-class-button,.start-class-button{color:#fff;cursor:pointer;background:linear-gradient(#6698ff,#3f78f2);border:0;box-shadow:0 12px 25px #2f5dc752,inset 0 1px #ffffff59}.end-class-button{z-index:14;border-radius:38px;justify-content:center;align-items:center;gap:14px;min-width:224px;height:74px;font-size:24px;font-weight:800;display:flex;position:absolute;bottom:6.2%;left:50%;transform:translate(-50%)}.end-class-button svg{fill:#fff;stroke:#fff;width:35px;height:35px}.network-warning{z-index:25;color:#fff1d4;background:#713a21db;border:1px solid #ffcb83b3;border-radius:12px;padding:10px 15px;font-size:12px;position:absolute;bottom:3%;right:2.5%;box-shadow:0 8px 18px #44241a3d}.transcript-panel{z-index:13;background:#203050b8;border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;width:clamp(278px,18vw,350px);display:grid;position:absolute;top:20.5%;bottom:15%;right:2.2%;overflow:hidden}.transcript-panel>header{border-bottom:1px solid #ffffff2b;justify-content:space-between;align-items:center;gap:12px;padding:15px 16px 12px;display:flex}.transcript-panel>header small,.transcript-panel>header strong{display:block}.transcript-panel>header small{color:#8eeaff;letter-spacing:.15em;font-size:8px;font-weight:900}.transcript-panel>header strong{margin-top:2px;font-size:16px}.transcript-panel>header button{color:#e9fbff;cursor:pointer;background:#5e8fd645;border:1px solid #ffffff45;border-radius:10px;padding:7px 10px;font-size:10px;font-weight:800}.transcript-panel>header button:disabled{opacity:.4;cursor:default}.transcript-list{scroll-behavior:smooth;min-height:0;padding:5px 14px 14px;overflow:auto}.transcript-list article{border-bottom:1px solid #ffffff1c;padding:11px 0 10px}.transcript-list article>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.transcript-list article strong{color:#91f2ff;font-size:11px}.transcript-list article.student strong{color:#8ff0c9}.transcript-list article.live{background:#4688bf2e;border:1px solid #75e7ff3b;border-radius:12px;margin:5px -7px 0;padding:10px 7px 12px}.transcript-list article.live strong:before{content:"";background:#79ecff;border-radius:50%;width:6px;height:6px;margin-right:6px;animation:1.2s ease-in-out infinite live-transcript-pulse;display:inline-block;box-shadow:0 0 0 4px #79ecff1f}.transcript-list article time{color:#ebf5ff78;font-size:9px}.transcript-list article p{color:#f7fbffe6;overflow-wrap:anywhere;margin:5px 0 0;font-size:12px;line-height:1.55}.live-transcript-caret{vertical-align:-.12em;background:#83efff;border-radius:1px;width:2px;height:1.05em;margin-left:3px;animation:.8s step-end infinite live-transcript-caret;display:inline-block}.transcript-empty{color:#eef7ff91;text-align:center;margin:20px 3px;font-size:11px;line-height:1.7}.transcript-panel>footer{color:#edf7ff8c;text-align:right;border-top:1px solid #ffffff24;padding:9px 15px 11px;font-size:9px}@keyframes live-transcript-pulse{50%{opacity:.42;transform:scale(.78)}}@keyframes live-transcript-caret{50%{opacity:0}}.setup-overlay{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e325840;place-items:center;padding:8vh 8vw 5vh;display:grid;position:absolute;inset:0}.setup-dialog{width:min(1080px,78vw);max-height:83vh;color:var(--ink);background:#f4f9ffed;border-radius:28px;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;overflow:hidden;box-shadow:0 28px 90px #14274c61}.setup-dialog>header{border-bottom:1px solid #2f4e7b1f;justify-content:space-between;align-items:center;padding:22px 28px 18px;display:flex}.setup-dialog h1,.report-dialog h1{color:#1d365d;letter-spacing:-.02em;margin:3px 0 0;font-size:30px}.setup-dialog small,.report-dialog small{color:#6680a4;letter-spacing:.1em;font-weight:800}.model-ready{color:#647895;align-items:center;gap:8px;font-size:13px;display:flex}.model-ready span{background:#d49363;border-radius:50%;width:9px;height:9px}.model-ready span.ready{background:#35c69f;box-shadow:0 0 0 5px #35c69f1f}.setup-dialog>nav{gap:5px;padding:10px 28px 0;display:flex}.setup-dialog>nav button{color:#607594;cursor:pointer;background:0 0;border:0;border-radius:11px 11px 0 0;padding:10px 16px;font-size:13px;font-weight:750}.setup-dialog>nav button:disabled{opacity:.48;cursor:default}.setup-content{background:#deeafa57;min-height:0;padding:18px 28px 22px;overflow:auto}.voice-ready-card{text-align:center;align-content:center;place-items:center;gap:8px;min-height:300px;display:grid}.voice-ready-card svg{color:#fff;background:linear-gradient(135deg,#4b7ed2,#74a9ee);border-radius:50%;width:46px;height:46px;padding:11px;animation:1.8s ease-in-out infinite voice-ready-pulse;box-shadow:0 10px 30px #3d6fbe4d}.voice-ready-card h2{color:#244873;margin:2px 0;font-size:26px}.voice-ready-card p{color:#71849d;margin:0;font-size:11px}.voice-ready-card strong{color:#426893;background:#ffffffb8;border-radius:11px;min-height:34px;margin-top:14px;padding:9px 14px;font-size:12px}@keyframes voice-ready-pulse{50%{box-shadow:0 10px 34px #3d6fbe75,0 0 0 8px #538be017}}.student-config-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.student-config-card{background:#ffffffb8;border:1px solid #35578721;border-radius:18px;grid-template-columns:116px 1fr;gap:15px;min-width:0;padding:14px;display:grid}.formal-model-preview{color:#27456f;background:radial-gradient(circle at 62% 22%,#6aebffcc,#0000 9%),linear-gradient(160deg,#c9dcf8,#f7fafc 62%);border:1px solid #5780be29;border-radius:13px;flex-direction:column;justify-content:flex-end;width:116px;height:150px;padding:14px 10px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffb3}.formal-model-preview:before{content:"";border:7px solid #416daf80;border-radius:50% 50% 42% 42%;width:54px;height:54px;margin:0 auto 17px;box-shadow:0 34px 0 13px #416daf40}.formal-model-preview span{color:#4d7cbc;letter-spacing:.12em;font-size:10px;font-weight:900}.formal-model-preview strong{margin-top:3px;font-size:13px}.formal-model-preview small{color:#7186a4;margin-top:3px;font-size:9px}.student-config-fields{gap:9px;display:grid}.setup-form{gap:16px;display:grid}.setup-form.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.student-config-fields label,.setup-form label{gap:5px;min-width:0;display:grid}.student-config-fields label>span,.setup-form label>span,.objective-card>span{color:#657993;font-size:11px;font-weight:700}.student-config-fields input,.student-config-fields select,.setup-form input,.setup-form select{color:#1f3556;background:#f9fcffe6;border:1px solid #34558329;border-radius:9px;outline:none;width:100%;min-width:0;height:38px;padding:0 10px}.student-config-fields input:focus,.setup-form input:focus,.setup-form select:focus{border-color:#5c8ee5;box-shadow:0 0 0 3px #5186e21f}.student-config-fields input[type=range]{height:28px;padding:0}.field-row{grid-template-columns:.8fr 1.2fr;gap:8px;display:grid}.objective-card{background:#ffffffb3;border:1px solid #35578721;border-radius:14px;min-height:100px;padding:16px}.objective-card strong{color:#2f61a9;margin-top:10px;font-size:28px;display:block}.objective-card p{color:#405671;margin:7px 0 0;font-size:13px;line-height:1.6}.setup-admin-link{color:#fff;background:#4779c6;border-radius:9px;margin-top:10px;padding:7px 10px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.setup-dialog>footer{border-top:1px solid #2f4e7b1f;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:16px 28px 20px;display:grid}.setup-dialog>footer p{color:#6a7f9b;margin:0;font-size:11px;line-height:1.5}.reset-button{color:#5d7290;cursor:pointer;background:#fff;border:1px solid #30518029;border-radius:10px;padding:10px 13px}.start-class-button{border-radius:24px;min-width:202px;height:48px;padding:0 22px;font-size:14px;font-weight:800}.start-class-button:hover{transform:translateY(-2px)}.start-class-button:disabled{opacity:.5;cursor:wait;transform:none}.ceremony-banner{z-index:35;text-align:center;border-radius:24px;width:320px;padding:22px;position:absolute;top:37%;left:50%;transform:translate(-50%)}.ceremony-banner strong,.ceremony-banner span{display:block}.ceremony-banner strong{color:#a6f7ff;font-size:36px}.ceremony-banner span{margin-top:7px;font-size:18px}.report-dialog{width:min(600px,70vw);color:var(--ink);text-align:center;background:#f7fbfff0;border-radius:28px;padding:34px}.report-dialog .report-metrics{grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0;display:grid}.report-dialog p{background:#eaf2ff;border-radius:15px;margin:0;padding:17px}.report-dialog p strong,.report-dialog p span{display:block}.report-dialog p strong{color:#386fce;font-size:32px}.report-dialog p span{color:#6a7e99;font-size:12px}.report-actions{justify-content:center;align-items:center;gap:12px;display:flex}.download-transcript-button{color:#3563a9;cursor:pointer;background:#edf4ff;border:1px solid #3963a32e;border-radius:24px;height:48px;padding:0 20px;font-size:13px;font-weight:800}.download-transcript-button:disabled{opacity:.45;cursor:default}.report-link-button{color:#fff;background:#4c7fd0;border-radius:24px;align-items:center;height:48px;padding:0 20px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.admin-settings-page{color:#20324e;background:radial-gradient(circle at 84% 8%,#5bbeee33,#0000 25%),linear-gradient(135deg,#eaf3fb 0%,#f7f9fc 48%,#edf4fa 100%);height:100vh;overflow:auto}.admin-topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8fbfedb;border-bottom:1px solid #3e5b821f;justify-content:space-between;align-items:center;height:74px;padding:0 max(32px,50vw - 620px);display:flex;position:sticky;top:0;box-shadow:0 8px 30px #2a487012}.admin-brand{align-items:center;gap:12px;display:flex}.admin-brand>span{color:#fff;background:linear-gradient(145deg,#3a79d8,#2a55aa);border-radius:13px;place-items:center;width:42px;height:42px;font-size:13px;font-weight:900;display:grid;box-shadow:0 8px 18px #305dac40}.admin-brand strong,.admin-brand small{display:block}.admin-brand strong{color:#20385d;font-size:16px}.admin-brand small{color:#8090a8;letter-spacing:.08em;margin-top:2px;font-size:10px}.admin-topbar nav{gap:9px;display:flex}.admin-topbar nav a{color:#4f6687;background:#ffffffbf;border:1px solid #3c619624;border-radius:11px;padding:9px 14px;font-size:12px;font-weight:700;text-decoration:none}.admin-topbar nav a:last-child{color:#fff;background:#376bc1}.admin-settings-shell{width:min(1180px,100vw - 48px);margin:0 auto;padding:42px 0 70px}.admin-hero{grid-template-columns:1fr auto;align-items:end;gap:30px;margin-bottom:25px;display:grid}.admin-hero small{color:#5480bd;letter-spacing:.19em;font-size:10px;font-weight:900}.admin-hero h1{color:#1f3e68;letter-spacing:-.04em;margin:8px 0 5px;font-size:38px}.admin-hero p{color:#62748d;max-width:720px;margin:0;font-size:14px;line-height:1.75}.admin-overall-status{background:#ffffffb8;border:1px solid #4565951f;border-radius:17px;grid-template-columns:11px 1fr;column-gap:10px;min-width:160px;padding:16px 18px;display:grid;box-shadow:0 13px 32px #2d4e7a14}.admin-overall-status i{background:#e1a444;border-radius:50%;width:10px;height:10px;margin-top:4px;box-shadow:0 0 0 5px #e1a44421}.admin-overall-status.ready i{background:#29bd94;box-shadow:0 0 0 5px #29bd9421}.admin-overall-status span,.admin-overall-status strong{grid-column:2}.admin-overall-status span{color:#8494a8;font-size:10px}.admin-overall-status strong{color:#294a72;margin-top:2px;font-size:16px}.admin-connect-card{background:#ffffffb8;border:1px solid #4166991f;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:18px;padding:17px 20px;display:grid;box-shadow:0 13px 38px #2d4d7912}.admin-connect-card label>span{color:#607691;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.admin-connect-card label>div{gap:8px;display:flex}.admin-connect-card input{color:#203858;background:#f9fbfd;border:1px solid #365b8f2b;border-radius:10px;outline:0;flex:1;height:40px;padding:0 12px}.admin-connect-card button{color:#fff;cursor:pointer;background:#527dc0;border:0;border-radius:10px;padding:0 17px}.admin-connect-card p{color:#8492a4;margin:0 0 4px;font-size:11px}.admin-alert{border-radius:13px;align-items:center;gap:12px;margin-bottom:18px;padding:13px 17px;font-size:12px;display:flex}.admin-alert strong{flex:none}.admin-alert.error{color:#8b4d3b;background:#fff1e9;border:1px solid #cb67492e}.admin-alert.success{color:#26785f;background:#eafaf4;border:1px solid #2aa27c2e}.admin-settings-form{gap:16px;display:grid}.admin-provider-card{background:#ffffffdb;border:1px solid #385c8e1c;border-radius:22px;padding:25px 27px 27px;box-shadow:0 18px 45px #2b497414}.admin-provider-card>header{border-bottom:1px solid #3b5b881a;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding-bottom:20px;display:grid}.provider-index{color:#376bb8;background:#e8f1fd;border-radius:14px;place-items:center;width:46px;height:46px;font-size:13px;font-weight:900;display:grid}.admin-provider-card h2{color:#263f64;margin:0;font-size:19px}.admin-provider-card header p{color:#8694a6;margin:4px 0 0;font-size:11px}.admin-service-badge{color:#936924;background:#fff6df;border-radius:16px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:800;display:flex}.admin-service-badge i{background:#e3a53f;border-radius:50%;width:7px;height:7px}.admin-service-badge.ready{color:#24745c;background:#e6f8f1}.admin-service-badge.ready i{background:#2cbd92}.admin-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px;display:grid}.admin-field-grid label{gap:7px;min-width:0;display:grid}.admin-field-grid label.wide{grid-column:1/-1}.admin-field-grid label>span{color:#5c708b;font-size:11px;font-weight:800}.admin-field-grid input,.admin-field-grid textarea{color:#203653;background:#f8fafc;border:1px solid #3a5d8e29;border-radius:11px;outline:0;width:100%;transition:border-color .18s,box-shadow .18s,background .18s}.admin-field-grid input{height:43px;padding:0 12px}.admin-field-grid textarea{resize:vertical;padding:11px 12px;line-height:1.55}.admin-field-grid input:focus,.admin-field-grid textarea:focus{background:#fff;border-color:#5f8bd0;box-shadow:0 0 0 3px #4d7ec71c}.admin-field-grid input::placeholder,.admin-field-grid textarea::placeholder{color:#a5afbd}.admin-form-footer{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2f7fceb;border:1px solid #4c6b9726;border-radius:17px;justify-content:space-between;align-items:center;padding:16px 18px;display:flex;position:sticky;bottom:18px;box-shadow:0 16px 40px #2545702e}.admin-form-footer strong,.admin-form-footer span{display:block}.admin-form-footer strong{color:#365577;font-size:12px}.admin-form-footer span{color:#8090a3;margin-top:3px;font-size:10px}.admin-form-footer button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#437acb,#315ead);border:0;border-radius:12px;min-width:190px;height:44px;font-weight:800;box-shadow:0 9px 20px #305da83b}.admin-form-footer button:disabled,.admin-connect-card button:disabled{opacity:.55;cursor:wait}@media (width<=760px){.admin-topbar{padding:0 17px}.admin-brand small,.admin-topbar nav a:first-child{display:none}.admin-settings-shell{width:min(100% - 26px,1180px);padding-top:25px}.admin-hero{grid-template-columns:1fr;align-items:start}.admin-hero h1{font-size:31px}.admin-overall-status{width:100%}.admin-connect-card{grid-template-columns:1fr;gap:10px}.admin-provider-card{padding:19px 16px 21px}.admin-provider-card>header{grid-template-columns:42px 1fr}.admin-provider-card .admin-service-badge{grid-column:2;justify-self:start}.admin-field-grid{grid-template-columns:1fr}.admin-field-grid label.wide{grid-column:auto}.admin-form-footer{gap:15px;bottom:8px}.admin-form-footer>div{display:none}.admin-form-footer button{width:100%}}@media (width<=1250px),(height<=760px){.top-online{min-width:205px;height:54px;font-size:15px}.voice-status{width:230px;top:11%}.class-title{width:420px;height:80px;font-size:25px}.class-timer{width:220px;height:132px;padding:15px 24px}.class-timer>strong{font-size:43px}.pause-button{width:40px;height:40px;top:4.2%}.class-toolbar{width:90px;top:23%}.class-toolbar button i{width:42px;height:42px}.class-toolbar button svg{width:25px}.class-toolbar button>span{font-size:12px}.side-drawer{top:18%;left:10.5%}.transcript-panel{width:250px;top:23%;bottom:14%}.end-class-button{min-width:190px;height:60px;font-size:20px}.setup-dialog{width:min(1000px,82vw);max-height:86vh}.setup-dialog>header{padding:16px 22px 13px}.setup-content{padding:13px 22px 16px}.formal-model-preview{height:126px}}.portal-page,.auth-page,.console-page,.content-editor-page,.report-page{color:#203653;background:#f0f4f9;min-height:100vh;overflow:auto}.primary-action{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4a82dc,#315fba);border:0;border-radius:12px;min-height:44px;padding:0 22px;font-weight:800;box-shadow:0 9px 24px #3662b138}.primary-action.compact{min-height:38px;padding:0 16px;font-size:12px}.primary-action:disabled{opacity:.5;cursor:not-allowed}.page-loading{color:#71839b;place-items:center;min-height:75vh;display:grid}.form-error,.console-alert{color:#8a493c;background:#fff0eb;border-radius:12px;padding:12px 15px;font-size:12px}.console-alert.success{color:#236e5c;background:#e6f7f1}.status-pill{color:#7f6532;white-space:nowrap;background:#fff2cf;border-radius:999px;width:fit-content;padding:5px 9px;font-size:10px;font-style:normal;font-weight:800}.status-published,.status-completed,.status-running{color:#167056;background:#ddf6ed}.status-failed,.status-archived{color:#9a4e48;background:#fae3e0}.auth-page{background:radial-gradient(circle at 65% 20%,#eff7ff 0,#0000 34%),linear-gradient(145deg,#e9eff7,#f9fbfd);place-items:center;display:grid}.auth-card{background:#ffffffe6;border:1px solid #405d831f;border-radius:28px;width:min(460px,100vw - 32px);padding:42px;box-shadow:0 30px 80px #24426a24}.auth-mark{color:#fff;background:#3769bc;border-radius:17px;place-items:center;width:54px;height:54px;margin-bottom:24px;font-size:25px;font-weight:900;display:grid}.auth-card>small,.management-header small,.portal-section header small,.portal-hero small,.report-title small,.content-editor-page>header small{color:#4d78bc;letter-spacing:.16em;font-size:10px;font-weight:900}.auth-card h1{color:#1f385d;margin:8px 0;font-size:30px}.auth-card>p{color:#7b8a9d;margin:0 0 23px;font-size:13px;line-height:1.7}.auth-card form,.drawer-form{gap:14px;display:grid}.auth-card label,.drawer-form label{color:#5e718a;gap:7px;font-size:11px;font-weight:800;display:grid}.auth-card .field-hint{color:#8995a5;font-size:10px;font-weight:500;line-height:1.45}.auth-card input,.drawer-form input,.drawer-form select,.drawer-form textarea{color:#203653;background:#f8fafc;border:1px solid #dce4ee;border-radius:10px;outline:0;width:100%;min-height:42px;padding:9px 11px}.auth-card input:focus,.drawer-form input:focus,.drawer-form select:focus,.drawer-form textarea:focus{background:#fff;border-color:#6292dc;box-shadow:0 0 0 3px #5083d01a}.inline-field{gap:8px;display:flex}.inline-field input{flex:1}.inline-field button{color:#3e68aa;cursor:pointer;background:#e8f0fb;border:0;border-radius:10px;width:68px}.portal-topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fafcfee0;border-bottom:1px solid #3a57801a;justify-content:space-between;align-items:center;height:78px;padding:0 4vw;display:flex}.portal-brand{align-items:center;gap:12px;display:flex}.portal-brand>span{color:#fff;background:#3869b9;border-radius:13px;place-items:center;width:41px;height:41px;font-weight:900;display:grid}.portal-brand strong,.portal-brand small{display:block}.portal-brand strong{color:#223d65}.portal-brand small{color:#8b99ab;letter-spacing:.08em;margin-top:3px;font-size:9px}.portal-topbar nav{align-items:center;gap:18px;display:flex}.portal-topbar nav a{color:#57718f;font-size:12px;text-decoration:none}.user-chip{color:#3b5778;background:#e8f0f9;border-radius:19px;align-items:center;gap:8px;padding:8px 13px;font-size:11px;font-weight:800;display:flex}.user-chip i,.online-dot{background:#2bc499;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #2bc4991f}.portal-shell{width:min(1320px,100% - 8vw);margin:auto;padding:44px 0 80px}.portal-hero{color:#fff;background:radial-gradient(circle at 78% 15%,#74f3ff4d,#0000 31%),linear-gradient(135deg,#294b83,#487ac2);border-radius:30px;grid-template-columns:1fr 200px;align-items:center;min-height:260px;padding:45px 52px;display:grid;box-shadow:0 25px 60px #2a4a7d33}.portal-hero small{color:#8ce9f4}.portal-hero h1{max-width:680px;margin:10px 0 14px;font-size:clamp(30px,4vw,48px)}.portal-hero p{color:#edf7ffc7;max-width:730px;margin:0;font-size:14px;line-height:1.8}.hero-stat{background:#ffffff1a;border:1px solid #ffffff40;border-radius:25px;align-content:center;place-items:center;height:160px;display:grid}.hero-stat strong{font-size:55px}.hero-stat span{color:#ffffffb8;font-size:12px}.portal-section{margin-top:42px}.portal-section>header{justify-content:space-between;align-items:end;margin-bottom:17px;display:flex}.portal-section h2{color:#263f64;margin:4px 0 0;font-size:24px}.portal-section header>span,.portal-section header>a{color:#8190a3;font-size:11px;text-decoration:none}.template-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;display:grid}.template-card{background:#fff;border:1px solid #34537d1a;border-radius:20px;overflow:hidden;box-shadow:0 13px 40px #304c7112}.template-cover{color:#fff;background:linear-gradient(125deg,#8bb1dc,#4c76b5);justify-content:space-between;height:92px;padding:16px;display:flex}.template-cover span{opacity:.55;font:700 28px ui-monospace,monospace}.template-cover em{background:#ffffff2e;border-radius:9px;height:fit-content;padding:5px 8px;font-size:10px;font-style:normal}.template-card>div:last-child{padding:18px}.template-card small{color:#8291a5;font-size:10px}.template-card h3{color:#29476e;min-height:46px;margin:7px 0;font-size:17px}.template-card p{color:#7a899c;min-height:50px;font-size:11px;line-height:1.6}.template-card a{color:#3e70bd;justify-content:space-between;font-size:11px;font-weight:900;text-decoration:none;display:flex}.record-list{background:#fff;border:1px solid #37547d1a;border-radius:17px;overflow:hidden}.record-list a{color:#75859a;border-bottom:1px solid #edf1f6;grid-template-columns:120px 1fr auto;gap:14px;padding:15px 20px;font-size:11px;text-decoration:none;display:grid}.record-list a:last-child{border:0}.record-list strong{color:#314e73}.record-list em{color:#3e72bf;font-style:normal}.empty-state{color:#8795a7;text-align:center;padding:30px}.console-page{--console-accent:#0a7aff;--console-accent-pressed:#0064d8;--console-bg:#f4f5f7;--console-surface:#ffffffd1;--console-surface-solid:#fbfbfc;--console-line:#1e2a3a1a;--console-text:#20242b;--console-muted:#6e7682;--console-faint:#9299a3;--console-radius:18px;--console-shadow:0 1px 2px #1018280a, 0 14px 36px #1018280d;height:100dvh;color:var(--console-text);background:var(--console-bg);font-optical-sizing:auto;grid-template-columns:248px minmax(0,1fr);gap:12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif;display:grid;overflow:hidden}.console-sidebar{color:#f5f7fa;-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:#1d2128f5;border:1px solid #ffffff14;border-radius:22px;flex-direction:column;height:calc(100dvh - 24px);margin:12px 0 12px 12px;padding:18px 12px 14px;display:flex;overflow:hidden;box-shadow:0 18px 48px #0e131b2e}.console-logo{color:inherit;align-items:center;gap:11px;padding:3px 8px 18px;text-decoration:none;display:flex}.console-logo>span{color:#fff;background:var(--console-accent);border-radius:11px;place-items:center;width:38px;height:38px;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff29}.console-logo strong,.console-logo small{display:block}.console-logo strong{letter-spacing:-.01em;font-size:15px}.console-logo small{color:#9299a5;margin-top:3px;font-size:11px}.console-sidebar nav{scrollbar-width:none;flex:1;overflow:auto}.console-sidebar nav::-webkit-scrollbar{width:0;height:0;display:none}.console-sidebar nav section>small{color:#7f8793;padding:0 11px;font-size:11px;font-weight:600}.console-sidebar nav button{color:#b9bec7;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;width:100%;min-height:40px;margin-top:3px;padding:0 11px;font-size:13px;transition:color .14s ease-out,background-color .14s ease-out,transform 80ms ease-out;display:flex}.console-sidebar nav button:hover{color:#fff;background:#ffffff12}.console-sidebar nav button:active{transform:scale(.985)}.console-sidebar nav button.active{color:#fff;background:#ffffff1f}.console-sidebar nav button i{background:0 0;border-radius:50%;width:6px;height:6px}.console-sidebar nav button.active i{background:#55a7ff;box-shadow:0 0 0 4px #55a7ff21}.console-sidebar footer{color:#aeb4bd;border-top:1px solid #ffffff14;padding:14px 10px 0;font-size:11px}.console-sidebar footer .online-dot,.console-sidebar footer .offline-dot{margin-right:8px;display:inline-block}.offline-dot{background:#ff9f0a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #ff9f0a1f}.console-sidebar footer small{color:#777f8a;text-overflow:ellipsis;margin-top:5px;font-size:10px;display:block;overflow:hidden}.console-main{scroll-behavior:smooth;min-width:0;height:100dvh;overflow:auto}.console-topbar{z-index:30;border-bottom:1px solid var(--console-line);-webkit-backdrop-filter:blur(22px)saturate(145%);backdrop-filter:blur(22px)saturate(145%);background:#f4f5f7d1;justify-content:space-between;align-items:center;height:76px;padding:0 36px;display:flex;position:sticky;top:0}.console-topbar small{color:var(--console-muted);font-size:11px}.console-topbar h1{color:var(--console-text);letter-spacing:-.02em;margin:4px 0 0;font-size:21px;font-weight:680}.console-topbar nav{align-items:center;gap:8px;display:flex}.console-topbar nav a{color:#4f5865;border-radius:9px;align-items:center;min-height:34px;padding:0 11px;font-size:12px;text-decoration:none;transition:background-color .14s ease-out,transform 80ms ease-out;display:inline-flex}.console-topbar nav a:active{transform:scale(.97)}.console-topbar nav span{color:#3e4652;box-shadow:inset 0 0 0 1px var(--console-line);background:#ffffffb8;border-radius:10px;margin-left:4px;padding:7px 11px;font-size:11px;font-weight:650}.console-main>.console-alert{z-index:220;width:min(440px,100vw - 40px);margin:0;animation:.18s cubic-bezier(.2,.7,.2,1) console-toast-in;position:fixed;top:88px;right:28px;box-shadow:0 16px 44px #151c2729}.console-content{width:min(1380px,100% - 72px);margin:auto;padding:34px 0 72px}.management-header{justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px;display:flex}.management-header-actions-only{justify-content:flex-end;align-items:center;margin-bottom:16px}.management-header h2{color:var(--console-text);letter-spacing:-.025em;margin:0 0 7px;font-size:29px;font-weight:700}.management-header p{max-width:780px;color:var(--console-muted);margin:0;font-size:13px;line-height:1.65}.header-actions{gap:8px;display:flex}.header-actions>button{border:1px solid var(--console-line);color:#3e4652;cursor:pointer;background:#ffffffb8;border-radius:10px;min-height:38px;padding:0 15px}.console-page .primary-action{background:var(--console-accent);border-radius:10px;box-shadow:0 5px 16px #0a7aff2e}.console-page .primary-action:hover{background:#1682ff}.console-page .primary-action:active{background:var(--console-accent-pressed);transform:scale(.985)}.console-page button:focus-visible,.console-page a:focus-visible,.console-page input:focus-visible,.console-page select:focus-visible,.console-page textarea:focus-visible{outline-offset:2px;outline:3px solid #0a7aff47}.metric-grid{border:1px solid var(--console-line);border-radius:var(--console-radius);background:var(--console-surface);box-shadow:var(--console-shadow);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.metric-grid article{border-right:1px solid var(--console-line);min-width:0;padding:22px 24px}.metric-grid article:last-child{border-right:0}.metric-grid small,.metric-grid strong,.metric-grid span{display:block}.metric-grid small{color:var(--console-muted);font-size:12px}.metric-grid strong{color:var(--console-text);letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:8px 0 4px;font-size:34px;font-weight:680}.metric-grid span{color:var(--console-faint);font-size:11px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.console-panel,.rubric-card{border:1px solid var(--console-line);border-radius:var(--console-radius);background:var(--console-surface);box-shadow:var(--console-shadow);padding:22px}.console-panel>header,.rubric-card>header{justify-content:space-between;gap:18px;margin-bottom:15px;display:flex}.console-panel h3,.console-panel h2,.rubric-card h3{color:var(--console-text);margin:0;font-size:15px}.console-panel header span,.rubric-card header p{color:var(--console-muted);margin:3px 0 0;font-size:11px}.service-table>div{border-bottom:1px solid var(--console-line);color:var(--console-muted);font-variant-numeric:tabular-nums;grid-template-columns:80px repeat(3,1fr);gap:8px;padding:12px 0;font-size:11px;display:grid}.service-table em{color:#a05d16;font-style:normal}.mini-list a{border-bottom:1px solid var(--console-line);color:var(--console-muted);grid-template-columns:1fr auto auto;gap:10px;padding:11px 0;font-size:11px;text-decoration:none;display:grid}.mini-list strong{color:var(--console-text)}.data-table{border:1px solid var(--console-line);border-radius:var(--console-radius);background:var(--console-surface);box-shadow:var(--console-shadow);overflow:auto}.data-table-head,.data-table-row{grid-auto-columns:minmax(100px,1fr);grid-auto-flow:column;align-items:center;gap:13px;min-width:760px;padding:0 19px;display:grid}.data-table-head{min-height:44px;color:var(--console-muted);background:#1e2a3a09;font-size:11px;font-weight:650}.data-table-row{border-top:1px solid var(--console-line);color:#4f5864;font-variant-numeric:tabular-nums;min-height:56px;font-size:12px;transition:background-color .12s ease-out}.data-table-row:hover{background:#0a7aff09}.data-table-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-actions{align-items:center;gap:10px;display:flex}.row-actions a,.row-actions button{color:#066edc;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:11px;font-weight:650;text-decoration:none}.row-actions a:active,.row-actions button:active{opacity:.55}.content-summary{border:1px solid var(--console-line);background:var(--console-surface);border-radius:15px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px;display:grid;overflow:hidden}.content-summary article{border-right:1px solid var(--console-line);gap:5px;min-width:0;padding:15px;display:grid}.content-summary article:last-child{border-right:0}.content-summary strong{color:var(--console-text);font-size:12px}.content-summary span,.content-summary em{color:var(--console-muted);font-size:11px;font-style:normal}.rubric-card{margin-bottom:14px}.rubric-bars{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px;display:grid}.rubric-bars>div{color:var(--console-muted);grid-template-columns:130px 1fr 25px;align-items:center;gap:9px;font-size:11px;display:grid}.rubric-bars i,.score-grid article>i{background:#e6e8ec;border-radius:5px;height:6px;overflow:hidden}.rubric-bars b,.score-grid article>i b{border-radius:inherit;background:var(--console-accent);height:100%;display:block}.subsection-title{color:var(--console-text);margin:30px 0 13px;font-size:15px}.task-config-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.task-config-grid article{border:1px solid var(--console-line);background:var(--console-surface);border-radius:14px;gap:6px;padding:16px;display:grid}.task-config-grid small{color:#066edc;font-size:11px;font-weight:650}.task-config-grid strong{color:var(--console-text);font-size:12px}.task-config-grid span,.task-config-grid em{color:var(--console-muted);font-size:11px;font-style:normal}.provider-console-form{gap:14px;display:grid}.provider-console-form>section{border:1px solid var(--console-line);border-radius:var(--console-radius);background:var(--console-surface);padding:22px}.provider-console-form>section>header{justify-content:space-between;align-items:center;display:flex}.provider-console-form header>div{align-items:center;gap:12px;display:flex}.provider-console-form header b{color:#066edc;background:#0a7aff17;border-radius:10px;place-items:center;width:35px;height:35px;font-size:11px;display:grid}.provider-console-form h3{color:var(--console-text);margin:0}.provider-console-form .section-helper{color:var(--console-muted);margin:12px 0 0;font-size:12px;line-height:1.7}.provider-save{justify-self:end}.import-form{align-items:center;gap:12px;display:flex}.import-form input{color:#4f5864;flex:1;font-size:11px}.sync-row{grid-template-columns:1fr auto;gap:3px;display:grid}.sync-row strong,.sync-row span{display:block}.sync-row span,.sync-row p{color:var(--console-muted);font-size:11px}.sync-row p{grid-column:1/-1}.task-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.task-editor-grid>form{border:1px solid var(--console-line);background:var(--console-surface);border-radius:15px;gap:14px;padding:20px;display:grid}.task-editor-grid header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.task-editor-grid header div{gap:3px;display:grid}.task-editor-grid header small{color:#066edc;font-size:11px;font-weight:650}.task-editor-grid header strong{color:var(--console-text);font-size:13px}.task-editor-grid header>span{color:var(--console-muted);font-size:11px}.task-editor-grid label{color:#59616d;gap:6px;font-size:11px;font-weight:650;display:grid}.task-editor-grid input,.task-editor-grid select{border:1px solid var(--console-line);width:100%;height:40px;color:var(--console-text);background:#ffffffc2;border-radius:9px;outline:0;padding:0 10px}.task-editor-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.task-editor-grid button{justify-self:end}.score-grid article>p{white-space:pre-line}.import-review-list{gap:9px;display:grid}.import-review-list article{border:1px solid var(--console-line);background:var(--console-surface);border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:14px 16px;display:grid}.import-review-list article>div{gap:4px;min-width:0;display:grid}.import-review-list strong{color:var(--console-text);font-size:12px}.import-review-list span{color:var(--console-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.import-review-list em{color:var(--console-muted);font-size:11px;font-style:normal}.import-review-list nav{gap:6px;display:flex}.import-review-list button{border:1px solid var(--console-line);color:#066edc;cursor:pointer;background:#ffffffbd;border-radius:8px;padding:7px 10px;font-size:11px}.subsection-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:30px 0 13px;display:flex}.subsection-heading h3{color:var(--console-text);margin:0 0 4px;font-size:15px}.subsection-heading p{color:var(--console-muted);margin:0;font-size:11px}.subsection-heading label{color:var(--console-muted);align-items:center;gap:8px;font-size:11px;display:flex}.subsection-heading select{border:1px solid var(--console-line);height:34px;color:var(--console-text);background:#fff;border-radius:8px;padding:0 28px 0 10px}.paginated-data-table{position:relative}.paginated-data-table .data-table{border-radius:var(--console-radius) var(--console-radius) 0 0;box-shadow:none}.paginated-data-table .data-table-head,.paginated-data-table .data-table-row{min-width:940px}.table-pagination{border:1px solid var(--console-line);border-radius:0 0 var(--console-radius) var(--console-radius);min-height:52px;color:var(--console-muted);background:#fff;border-top:0;justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;font-size:11px;display:flex}.table-pagination nav{gap:6px;display:flex}.table-pagination button,.console-inline-error button{border:1px solid var(--console-line);color:#066edc;cursor:pointer;background:#fff;border-radius:8px;min-height:32px;padding:0 11px;font-size:11px}.table-pagination button:disabled{color:#aab2be;cursor:default;background:#f5f7f9}.table-empty{border:1px solid var(--console-line);color:var(--console-muted);text-align:center;background:#fff;border-top:0;padding:28px;font-size:12px}.console-inline-error{color:#9f322b;background:#fff5f4;border:1px solid #bb43392e;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:10px 12px;font-size:11px;display:flex}.row-actions .danger-action{color:#b23a34}.operations-grid{border:1px solid var(--console-line);border-radius:var(--console-radius);background:var(--console-surface);box-shadow:var(--console-shadow);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.operations-grid>section{border-right:1px solid var(--console-line);align-items:flex-end;gap:16px;min-height:160px;padding:19px;display:flex;position:relative}.operations-grid>section:last-child{border-right:0}.operations-grid>section>small{color:var(--console-muted);align-self:flex-start;font-size:11px;font-weight:650;position:absolute}.operations-grid section>div{gap:4px;display:grid}.operations-grid section>div strong{color:var(--console-text);font-variant-numeric:tabular-nums;font-size:20px}.operations-grid section>div span,.operations-grid section>p{color:var(--console-muted);font-size:11px}.operations-grid .score-trend{align-items:flex-end}.score-trend>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:105px;display:flex!important}.score-trend i{background:var(--console-accent);border-radius:5px 5px 2px 2px;width:100%;max-width:19px;min-height:4px}.score-trend div span{margin-top:4px}.drawer-backdrop{z-index:140;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15191f47;justify-content:flex-end;animation:.16s ease-out drawer-backdrop-in;display:flex;position:fixed;inset:0}.editor-drawer{width:min(570px,94vw);height:100%;color:var(--console-text);transform-origin:100%;-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);background:#f9f9faf5;padding:30px;animation:.22s cubic-bezier(.2,.75,.25,1) drawer-enter;overflow:auto;box-shadow:-18px 0 58px #0c121c2e}.editor-drawer>header{justify-content:space-between;margin-bottom:26px;display:flex}.editor-drawer h2{color:var(--console-text);letter-spacing:-.02em;margin:5px 0 0;font-size:23px}.editor-drawer header small{color:var(--console-muted);font-size:11px}.editor-drawer header button{color:#59616d;cursor:pointer;background:#1e2a3a12;border:0;border-radius:50%;width:34px;height:34px;font-size:20px;line-height:1;transition:background-color .12s ease-out,transform 80ms ease-out}.editor-drawer header button:hover{background:#1e2a3a1f}.editor-drawer header button:active{transform:scale(.92)}.drawer-form.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-form .wide{grid-column:1/-1}.form-note{color:var(--console-muted);font-size:11px;line-height:1.65}.form-note.error{color:#b42318}.student-selector{gap:7px;display:grid}.student-selector>span{color:#59616d;font-size:12px;font-weight:650}.student-selector label{border:1px solid var(--console-line);background:#ffffffb8;border-radius:10px;grid-template-columns:auto 1fr auto;gap:8px;padding:10px;display:grid}.student-selector input{width:auto;min-height:0}.student-selector small{color:var(--console-muted)}.content-editor-page{padding:36px 5vw 80px}.content-editor-page>header{justify-content:space-between;align-items:end;display:flex}.content-editor-page>header a{color:#5679a5;margin-bottom:22px;font-size:11px;text-decoration:none;display:block}.content-editor-page h1{color:#29476d;margin:6px 0}.content-editor-page header p{color:#8391a2;margin:0;font-size:11px}.editor-tabs{gap:5px;margin:30px 0 15px;display:flex}.editor-tabs button{color:#687b92;cursor:pointer;background:#e5ebf2;border:0;border-radius:10px;padding:10px 13px;font-size:10px}.editor-tabs button.active{color:#fff;background:#456fa9}.editor-tabs b{opacity:.7;margin-left:7px}.lesson-editor-grid{grid-template-columns:1.25fr .75fr;gap:16px;display:grid}.lesson-content-list{max-height:65vh;overflow:auto}.lesson-content-list article{border-top:1px solid #edf1f5;padding:12px 0}.lesson-content-list strong{color:#3b5879;font-size:11px}.lesson-content-list p{color:#7f8e9f;margin:5px 0 0;font-size:10px;line-height:1.6}.report-topbar{background:#fff;border-bottom:1px solid #dce4ee;justify-content:space-between;align-items:center;height:70px;padding:0 5vw;display:flex}.report-topbar a,.report-topbar button{color:#53739e;font-size:11px;text-decoration:none}.report-topbar>div{gap:13px;display:flex}.report-topbar button{cursor:pointer;background:0 0;border:0}.report-shell{width:min(1100px,100% - 8vw);margin:auto;padding:45px 0 80px}.report-title h1{color:#253f63;margin:8px 0;font-size:34px}.report-title p{color:#7a899c;max-width:780px;font-size:12px;line-height:1.7}.score-hero{color:#fff;background:linear-gradient(135deg,#345e9d,#5a8bd0);border-radius:22px;justify-content:space-between;align-items:center;margin:28px 0 18px;padding:26px 32px;display:flex}.score-hero strong{font-size:58px}.score-hero span{color:#ffffffa8}.score-hero p{color:#fffc;text-align:right;font-size:11px}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.score-grid article{background:#fff;border:1px solid #dfe7f0;border-radius:15px;padding:17px}.score-grid article header{color:#47617f;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:10px;display:grid}.score-grid article header>span{color:#80a0c7}.score-grid article>i{margin:12px 0;display:block}.score-grid article p{color:#7b899b;margin:0;font-size:10px;line-height:1.55}.report-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px;display:grid}.report-columns section,.report-pending{background:#fff;border:1px solid #dfe7f0;border-radius:17px;padding:22px}.report-columns small{color:#5882ba;font-size:9px;font-weight:900}.report-columns h2{color:#314e71;font-size:16px}.report-columns p,.report-pending p{color:#74859a;font-size:10px;line-height:1.6}.report-disclaimer{color:#7b8999;background:#e8edf3;border-radius:11px;margin-top:22px;padding:13px;font-size:9px}.history-grid{gap:10px;display:grid}.history-grid a{color:#8290a1;background:#fff;border:1px solid #dfe7f0;border-radius:14px;grid-template-columns:190px 1fr 1fr auto;align-items:center;gap:15px;padding:17px 20px;font-size:10px;text-decoration:none;display:grid}.history-grid strong{color:#345170;font-size:12px}.history-grid em{color:#4775b2;font-style:normal}.behavior-metrics{background:#fff;border:1px solid #dfe7f0;border-radius:17px;margin-top:18px;padding:22px}.behavior-metrics>header{justify-content:space-between;align-items:end;gap:16px;margin-bottom:15px;display:flex}.behavior-metrics>header small{color:#6487b5;font-size:9px;font-weight:900}.behavior-metrics>header h2{color:#314e71;margin:4px 0 0;font-size:16px}.behavior-metrics>header>span{color:#8997a8;font-size:9px}.behavior-metrics>div{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.behavior-metrics article{background:#f1f5fa;border-radius:12px;gap:5px;min-width:0;padding:13px;display:grid}.behavior-metrics article strong{color:#315376;text-overflow:ellipsis;font-size:18px;overflow:hidden}.behavior-metrics article span{color:#8090a3;font-size:9px}.report-comments{background:#fff;border:1px solid #dfe7f0;border-radius:17px;margin-top:18px;padding:22px}.report-comments>header{justify-content:space-between;display:flex}.report-comments h2{color:#314e71;margin:4px 0 15px}.report-comments small,.report-comments header span{color:#6487b5;font-size:9px;font-weight:900}.report-comments form{gap:9px;margin-bottom:15px;display:grid}.report-comments textarea{resize:vertical;border:1px solid #dce5ef;border-radius:11px;outline:0;padding:11px}.report-comments form button{justify-self:end}.report-comments article{border-top:1px solid #edf1f5;padding:11px 0}.report-comments article p{color:#50657e;margin:0 0 5px;font-size:11px;line-height:1.65}.report-comments time{color:#94a0af;font-size:9px}.portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:25px;display:grid}.portrait-wide{grid-column:1/-1}.portrait-bars>div{color:#61758d;grid-template-columns:100px 1fr 34px;align-items:center;gap:10px;margin:12px 0;font-size:10px;display:grid}.portrait-bars i{background:#e8eef5;border-radius:6px;height:7px;overflow:hidden}.portrait-bars i b{border-radius:inherit;background:linear-gradient(90deg,#5688d0,#50b9cb);height:100%;display:block}.portrait-tags{gap:9px;display:grid}.portrait-tags.horizontal{grid-template-columns:repeat(3,minmax(0,1fr))}.portrait-tags>div{background:#f0f5fa;border-radius:11px;padding:12px}.portrait-tags strong,.portrait-tags span{display:block}.portrait-tags strong{color:#365473;font-size:11px}.portrait-tags span{color:#8492a3;margin-top:4px;font-size:9px}.portrait-tags .portrait-label-hidden{opacity:.58}.portrait-tags nav{gap:6px;margin-top:10px;display:flex}.portrait-tags nav button{color:#53739e;cursor:pointer;background:#fff;border:1px solid #cfdae8;border-radius:8px;padding:6px 8px;font-size:9px}.portrait-wide footer{color:#8a97a7;margin-top:15px;font-size:9px}.instructor-hero{background:radial-gradient(circle at 78% 15%,#ffda933d,#0000 31%),linear-gradient(135deg,#354f73,#5e789e)}.instructor-trainee-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.instructor-trainee-grid>article{background:#fff;border:1px solid #dfe7f0;border-radius:16px;padding:18px 20px}.instructor-trainee-grid article header{justify-content:space-between;align-items:center;gap:16px;display:flex}.instructor-trainee-grid article header div{gap:4px;display:grid}.instructor-trainee-grid article strong{color:#345170;font-size:14px}.instructor-trainee-grid article span{color:#8290a1;font-size:10px}.instructor-trainee-grid article a{color:#4775b2;font-size:10px;text-decoration:none}.mini-score-trend{border-bottom:1px solid #e7edf5;align-items:end;gap:6px;height:58px;margin-top:18px;display:flex}.mini-score-trend i{background:linear-gradient(#72a8eb,#4676b7);border-radius:5px 5px 0 0;width:10px;max-height:100%}.mini-score-trend span{align-self:center}.prompt-preview-panel{background:#fff;border:1px solid #dce5ef;border-radius:16px;padding:20px}.prompt-preview-panel>form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.prompt-preview-panel>form label{color:#74859a;gap:6px;font-size:10px;display:grid}.prompt-preview-panel>form .wide{grid-column:1/-1}.prompt-preview-panel input,.prompt-preview-panel select{color:#365473;background:#f8fafc;border:1px solid #d7e1ec;border-radius:9px;width:100%;padding:10px 11px}.prompt-block-list{gap:10px;margin-top:18px;display:grid}.prompt-block-list>header{color:#6f8298;justify-content:space-between;font-size:10px;display:flex}.prompt-block-list article{background:#f8fafc;border:1px solid #e1e8f0;border-radius:12px;padding:14px}.prompt-block-list article small,.prompt-block-list article span{color:#7790ae;font-size:9px}.prompt-block-list pre{white-space:pre-wrap;color:#344f70;max-height:240px;font:10px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.prompt-explainer{background:#f5f8ff;border:1px solid #c7d7fe;border-radius:12px;margin-bottom:22px;padding:16px 18px}.prompt-explainer strong{color:#1849a9;font-size:13px}.prompt-explainer p,.subsection-description{color:var(--console-muted);margin:6px 0 0;font-size:12px;line-height:1.65}.subsection-description{margin:-10px 0 14px}.prompt-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.prompt-stage-grid article{border:1px solid var(--console-line);background:var(--console-surface);border-radius:13px;padding:17px}.prompt-stage-grid article>header{grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.prompt-stage-grid header>span{color:#175cd3;background:#eff4ff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:750;display:grid}.prompt-stage-grid header div{gap:2px;display:grid}.prompt-stage-grid header strong{color:var(--console-text);font-size:12px}.prompt-stage-grid header small{color:var(--console-muted);font-size:10px}.prompt-stage-grid header em{color:#475467;background:#f2f4f7;border-radius:999px;padding:4px 7px;font-size:9px;font-style:normal}.prompt-stage-grid header em.llm{color:#175cd3;background:#eff4ff}.prompt-stage-grid article>p{min-height:38px;color:var(--console-muted);margin:14px 0;font-size:11px;line-height:1.6}.prompt-stage-grid dl{gap:8px;margin:0;display:grid}.prompt-stage-grid dl div{grid-template-columns:72px 1fr;gap:8px;display:grid}.prompt-stage-grid dt{color:#667085;font-size:10px;font-weight:700}.prompt-stage-grid dd{color:#475467;margin:0;font-size:10px;line-height:1.5}.prompt-stage-grid article>button{color:#175cd3;cursor:pointer;background:0 0;border:0;margin-top:13px;padding:0;font-size:11px}.prompt-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px;display:grid}.prompt-detail dl div{background:#f2f4f7;border-radius:9px;padding:11px}.prompt-detail dt{color:#667085;font-size:10px}.prompt-detail dd{color:#344054;margin:4px 0 0;font-size:12px}.prompt-detail pre{color:#344054;white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid #e4e7ec;border-radius:10px;max-height:56vh;margin:0 0 16px;padding:16px;font:11px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.drawer-description{color:var(--console-muted);margin:-8px 0 8px;font-size:12px;line-height:1.6}.drawer-form label small{color:var(--console-muted);font-size:10px;font-weight:400;line-height:1.5}@keyframes drawer-enter{0%{opacity:0;transform:translate(34px)scale(.995)}}@keyframes drawer-backdrop-in{0%{opacity:0}}@keyframes console-toast-in{0%{opacity:0;transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.editor-drawer,.drawer-backdrop,.console-main>.console-alert,.voice-ready-card svg{animation:none}.console-main{scroll-behavior:auto}.console-page *,.console-page :before,.console-page :after{transition-duration:.01ms!important}}@media (prefers-reduced-transparency:reduce){.console-sidebar{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1d2128}.console-topbar,.editor-drawer{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f4f5f7}.drawer-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast:more){.console-page{--console-line:#1118273d;--console-muted:#4f5660}.console-sidebar nav button.active{outline-offset:-2px;outline:2px solid #ffffffb8}}@media (width<=1050px){.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.console-page{grid-template-columns:220px minmax(0,1fr)}.console-content{width:min(1380px,100% - 48px)}.content-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.content-summary article:nth-child(3n){border-right:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid article:nth-child(2n){border-right:0}.metric-grid article:nth-child(-n+2){border-bottom:1px solid var(--console-line)}.operations-grid,.account-control-grid,.prompt-stage-grid{grid-template-columns:1fr}.operations-grid>section{border-right:0;border-bottom:1px solid var(--console-line)}.operations-grid>section:last-child{border-bottom:0}.task-editor-grid{grid-template-columns:1fr}.task-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-editor-grid,.portrait-tags.horizontal{grid-template-columns:1fr}.behavior-metrics>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.portal-topbar nav>a,.portal-topbar .user-chip{display:none}.portal-shell{width:calc(100% - 28px)}.portal-hero{grid-template-columns:1fr;padding:30px}.hero-stat{display:none}.template-grid,.dashboard-grid,.score-grid,.report-columns,.portrait-grid,.instructor-trainee-grid{grid-template-columns:1fr}.portrait-wide{grid-column:auto}.console-page{height:auto;min-height:100dvh;display:block;overflow:visible}.console-sidebar{z-index:40;border:0;border-radius:0;width:100%;height:auto;margin:0;padding:10px 12px;position:relative;box-shadow:0 4px 20px #0e131b24}.console-logo{padding:2px 4px 9px}.console-logo>span{border-radius:9px;width:32px;height:32px}.console-logo strong{font-size:14px}.console-logo small{display:none}.console-sidebar nav{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.console-sidebar nav::-webkit-scrollbar{display:none}.console-sidebar nav section{flex:none;gap:4px;margin:0;display:flex}.console-sidebar nav section>small{display:none}.console-sidebar nav button{flex:none;width:auto;min-height:36px;margin:0;font-size:12px}.console-sidebar nav button i,.console-sidebar footer{display:none}.console-main{height:auto;overflow:visible}.console-topbar{height:66px;padding:0 16px;position:static}.console-topbar small,.console-topbar nav a:first-child,.console-topbar nav span{display:none}.console-content{width:calc(100% - 28px);padding:25px 0 52px}.management-header{flex-direction:column;align-items:flex-start;gap:16px}.management-header h2{font-size:25px}.header-actions{flex-wrap:wrap;width:100%}.header-actions>button,.management-header>.primary-action{flex:1}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid article{padding:17px}.content-summary{grid-template-columns:1fr 1fr}.content-summary article:nth-child(3n){border-right:1px solid var(--console-line)}.content-summary article:nth-child(2n){border-right:0}.rubric-bars,.drawer-form.grid{grid-template-columns:1fr}.drawer-form .wide{grid-column:auto}.editor-drawer{width:100%;padding:24px 18px}.history-grid a,.record-list a{grid-template-columns:1fr}.behavior-metrics>header{flex-direction:column;align-items:start;gap:5px}.behavior-metrics>div{grid-template-columns:repeat(2,minmax(0,1fr))}.console-main>.console-alert{width:calc(100% - 28px);box-shadow:none;margin:14px auto 0;position:relative;top:auto;right:auto}}html,body{overflow-x:clip}.classroom-app{width:100%;min-width:0;height:100dvh;min-height:0;font-family:var(--font-classroom-body)}.classroom-stage{--scene-top:6rem;--scene-right:1.5rem;--scene-bottom:5.5rem;--scene-left:7.75rem;min-width:0;min-height:0}.classroom-stage .glass-panel{border:var(--rule-classroom);background:var(--color-classroom-panel-soft);box-shadow:0 .5rem 1.5rem var(--color-classroom-ink)}@supports (color:color-mix(in lab, red, red)){.classroom-stage .glass-panel{box-shadow:0 .5rem 1.5rem color-mix(in oklch, var(--color-classroom-ink) 20%, transparent)}}.classroom-stage .glass-panel{-webkit-backdrop-filter:blur(1rem)saturate(1.08)}.classroom-scene{z-index:var(--z-base);inset:var(--scene-top) var(--scene-right) var(--scene-bottom) var(--scene-left);min-width:0;min-height:0;position:absolute;overflow:hidden}.live2d-canvas,.student-ui-layer{width:100%;height:100%;inset:0}.classroom-status-stack{z-index:var(--z-raised);gap:var(--space-xs);width:16.25rem;display:grid;position:absolute;top:1.125rem;left:1.125rem}.top-online,.voice-status{width:100%;min-width:0;position:static}.top-online{height:3.25rem;padding-inline:var(--space-md);border-radius:var(--radius-classroom-panel);gap:var(--space-sm);font-size:var(--text-sm)}.top-online svg{width:1.5rem;height:1.5rem}.status-dot{width:.625rem;height:.625rem;box-shadow:none}.voice-status{min-height:3.75rem;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-classroom-panel);grid-template-columns:1.75rem minmax(0,1fr) .25rem}.voice-status>i{height:2rem;transform:scaleY(calc(.22 + var(--voice-level,0) * .78));transform-origin:bottom;transition:transform var(--dur-micro) var(--ease-out)}.voice-status svg{width:1.375rem}.voice-status span{max-width:none;color:var(--color-classroom-muted)}.class-title{z-index:var(--z-raised);gap:var(--space-md);border:var(--rule-classroom);border-radius:var(--radius-classroom-panel);width:clamp(20rem,31vw,31rem);height:4rem;color:var(--color-classroom-text);font-family:var(--font-classroom-display);letter-spacing:.06em;text-shadow:none;overflow-wrap:anywhere;min-width:0;font-size:clamp(1.125rem,1.65vw,1.65rem);top:1rem}.class-title span{width:.375rem;height:.375rem;box-shadow:none;background:var(--color-classroom-accent)}.class-timer{z-index:var(--z-raised);width:14.5rem;height:5.25rem;padding:var(--space-sm) 4rem var(--space-sm) var(--space-md);border-radius:var(--radius-classroom-panel);top:1.125rem;right:1.125rem}.class-timer>div{gap:var(--space-xs);font-size:var(--text-sm)}.class-timer svg{width:1.25rem}.class-timer>strong{margin-top:var(--space-2xs);color:var(--color-classroom-accent);font-family:var(--font-classroom-mono);letter-spacing:.04em;text-shadow:none;font-size:clamp(1.75rem,2.4vw,2.35rem)}.pause-button{top:50%;right:var(--space-sm);border:var(--rule-classroom);background:var(--color-classroom-danger);width:2.5rem;height:2.5rem;box-shadow:none;transition:transform var(--dur-micro) var(--ease-out), opacity var(--dur-micro) var(--ease-out);transform:translateY(-50%)}.pause-button:active{transform:translateY(-50%)scale(.97)}.class-toolbar{z-index:var(--z-raised);width:5rem;padding:var(--space-sm) var(--space-xs);gap:var(--space-2xs);border-radius:var(--radius-classroom-panel);top:50%;left:1.125rem;transform:translateY(-50%)}.toolbar-title{padding:0 0 var(--space-xs);letter-spacing:.02em;font-size:.75rem}.class-toolbar button{min-height:3.5rem;padding:var(--space-xs) 0;border-radius:var(--radius-classroom-control);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out)}@supports (color:color-mix(in lab, red, red)){.class-toolbar button:hover,.class-toolbar button.active{background:color-mix(in oklch, var(--color-classroom-primary) 28%, transparent)}}.class-toolbar button:hover,.class-toolbar button.active{transform:none}.class-toolbar button:active{transform:scale(.98)}.class-toolbar button i{background:var(--color-classroom-text);border:0;width:2.25rem;height:2.25rem}@supports (color:color-mix(in lab, red, red)){.class-toolbar button i{background:color-mix(in oklch, var(--color-classroom-text) 14%, transparent)}}.class-toolbar button i{box-shadow:none}.class-toolbar button svg{width:1.375rem;height:1.375rem}.class-toolbar button>span{margin-top:var(--space-2xs);letter-spacing:0;white-space:nowrap;font-size:.6875rem}.side-drawer{z-index:var(--z-dropdown);width:21.25rem;padding:var(--space-lg);border-radius:var(--radius-classroom-panel);background:var(--color-classroom-panel);animation:classroom-panel-enter var(--dur-short) var(--ease-out);top:7.25rem;bottom:5.5rem;left:6.5rem}.side-drawer h2{font-size:var(--text-lg)}.side-drawer header button,.transcript-actions button{min-width:2.25rem;min-height:2.25rem}.transcript-toggle{z-index:var(--z-raised);min-height:2.25rem;padding-inline:var(--space-sm);border-radius:var(--radius-classroom-control);color:var(--color-classroom-text);white-space:nowrap;cursor:pointer;font-size:.6875rem;font-weight:750;position:absolute;top:7.25rem;right:1.125rem}.transcript-panel{z-index:var(--z-raised);border-radius:var(--radius-classroom-panel);background:var(--color-classroom-panel);width:18.5rem;animation:classroom-panel-enter var(--dur-short) var(--ease-out);top:10rem;bottom:5.5rem;right:1.125rem}.transcript-panel>header{padding:var(--space-sm) var(--space-md)}.transcript-panel>header small{color:var(--color-classroom-accent);letter-spacing:.08em;font-size:.625rem}.transcript-actions{gap:var(--space-2xs);display:flex}.transcript-actions button{padding:0 var(--space-xs)}.transcript-actions button:last-child{font-size:var(--text-lg);padding:0}.transcript-list{padding:var(--space-xs) var(--space-md) var(--space-sm);scroll-behavior:auto}.transcript-list article.live strong:before{animation-timing-function:var(--ease-in-out)}.student-overlay{width:28%;height:78%}.student-overlay.front_left{top:20%;left:11%}.student-overlay.front_center{top:20%;left:36%}.student-overlay.front_right{top:20%;right:11%}.student-overlay.back_left{width:24%;height:64%;top:14%;left:17%}.student-overlay.back_center{width:24%;height:64%;top:12.5%;left:38%}.student-overlay.back_right{width:24%;height:64%;top:14%;right:17%}.student-click-target{inset:0 3%}.student-meta{top:var(--meta-anchor-y,68%);justify-content:center;align-items:center;gap:var(--space-2xs);white-space:nowrap;display:flex;position:absolute;left:50%;transform:translate(-50%)}.student-name-tag{min-width:0;height:1.75rem;padding-inline:var(--space-xs);gap:var(--space-xs);border:var(--rule-classroom);border-radius:var(--radius-classroom-control);background:var(--color-classroom-panel);box-shadow:none;-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);position:static}.student-overlay.front_left .student-name-tag,.student-overlay.back_left .student-name-tag,.student-overlay.front_center .student-name-tag,.student-overlay.back_center .student-name-tag,.student-overlay.front_right .student-name-tag,.student-overlay.back_right .student-name-tag{inset:auto;transform:none}.student-name-tag strong{font-size:.75rem}.student-state-chip{padding:var(--space-2xs) var(--space-xs);border:var(--rule-classroom);border-radius:var(--radius-classroom-control);color:var(--color-classroom-ink);background:var(--color-classroom-paper);font-size:.625rem;position:static}.student-overlay.front_left .student-state-chip,.student-overlay.back_left .student-state-chip,.student-overlay.front_center .student-state-chip,.student-overlay.back_center .student-state-chip,.student-overlay.front_right .student-state-chip,.student-overlay.back_right .student-state-chip{inset:auto;transform:none}.student-speech{top:var(--bubble-anchor-y,8%);width:min(13.75rem,92%);padding:var(--space-xs) var(--space-sm);border-radius:.875rem .875rem .875rem .25rem;font-size:.75rem;line-height:1.45}.classroom-command-bar{z-index:var(--z-raised);min-height:3.5rem;padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);align-items:center;gap:var(--space-md);border-radius:var(--radius-classroom-panel);display:flex;position:absolute;bottom:1.125rem;left:50%;transform:translate(-50%)}.classroom-command-bar>span{align-items:center;gap:var(--space-xs);color:var(--color-classroom-muted);white-space:nowrap;font-size:.75rem;font-weight:700;display:flex}.classroom-command-bar>span i{background:var(--color-classroom-success);border-radius:50%;width:.5rem;height:.5rem}.classroom-command-bar>span i.paused{background:var(--color-classroom-warning)}.end-class-button{min-width:8.75rem;height:2.5rem;padding-inline:var(--space-md);border-radius:var(--radius-classroom-control);color:var(--color-classroom-primary-ink);background:var(--color-classroom-danger);box-shadow:none;font-size:.875rem;position:static;transform:none}.end-class-button svg{width:1.25rem;height:1.25rem}.end-class-button:hover,.start-class-button:hover{filter:none;transform:translateY(-1px)}.end-class-button:active,.start-class-button:active{transform:scale(.98)}.network-warning{z-index:var(--z-dropdown);border-color:var(--color-classroom-warning);border-radius:var(--radius-classroom-control);max-width:18.5rem;color:var(--color-classroom-text);background:var(--color-classroom-danger);bottom:1.125rem;right:1.125rem}@supports (color:color-mix(in lab, red, red)){.network-warning{background:color-mix(in oklch, var(--color-classroom-danger) 76%, var(--color-classroom-panel))}}.network-warning{box-shadow:none}.setup-overlay{z-index:var(--z-modal);padding:clamp(var(--space-xs), 5vh, var(--space-xl)) clamp(var(--space-xs), 5vw, var(--space-2xl))}.setup-dialog{border-radius:var(--radius-classroom-panel);background:var(--color-classroom-paper);width:min(67.5rem,100% - 2rem);max-height:min(52rem,100dvh - 2rem);box-shadow:0 1.5rem 4rem var(--color-classroom-ink)}@supports (color:color-mix(in lab, red, red)){.setup-dialog{box-shadow:0 1.5rem 4rem color-mix(in oklch, var(--color-classroom-ink) 30%, transparent)}}.setup-dialog h1{overflow-wrap:anywhere;min-width:0;font-size:clamp(1.5rem,2.4vw,2rem)}.setup-progress{padding:var(--space-sm) var(--space-xl);gap:var(--space-xs);border-block:1px solid var(--color-classroom-ink);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}@supports (color:color-mix(in lab, red, red)){.setup-progress{border-block:1px solid color-mix(in oklch, var(--color-classroom-ink) 10%, transparent)}}.setup-progress{list-style:none}.setup-progress li{align-items:center;gap:var(--space-xs);color:var(--color-classroom-ink);display:flex}@supports (color:color-mix(in lab, red, red)){.setup-progress li{color:color-mix(in oklch, var(--color-classroom-ink) 48%, transparent)}}.setup-progress li{font-size:.75rem;font-weight:700}.setup-progress li span{border:1px solid;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;display:grid}.setup-progress li.complete{color:var(--color-classroom-success)}@supports (color:color-mix(in lab, red, red)){.setup-progress li.complete{color:color-mix(in oklch, var(--color-classroom-success) 80%, var(--color-classroom-ink))}}.setup-dialog>footer{grid-template-columns:auto minmax(0,1fr) auto}.setup-next-step{min-width:0}.setup-next-step strong,.setup-next-step span{display:block}.setup-next-step strong{color:var(--color-classroom-ink);font-size:.75rem}.setup-next-step span{margin-top:var(--space-2xs);color:var(--color-classroom-ink)}@supports (color:color-mix(in lab, red, red)){.setup-next-step span{color:color-mix(in oklch, var(--color-classroom-ink) 62%, transparent)}}.setup-next-step span{font-size:.6875rem}.start-class-button{border-radius:var(--radius-classroom-control);min-width:13.75rem;color:var(--color-classroom-primary-ink);background:var(--color-classroom-primary);box-shadow:none;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out), opacity var(--dur-micro) var(--ease-out)}.voice-ready-card svg{animation:none}.classroom-stage button:focus-visible{outline:.1875rem solid var(--color-classroom-accent);outline-offset:.1875rem}.classroom-stage button:disabled{opacity:.5;cursor:not-allowed;transform:none}.classroom-stage button:active{opacity:.92}.classroom-stage button,.classroom-stage a{white-space:nowrap}@keyframes classroom-panel-enter{0%{opacity:0;transform:translateY(.375rem)}}@media (width<=80rem),(height<=47.5rem){.classroom-stage{--scene-top:5.5rem;--scene-left:6.5rem;--scene-bottom:4.75rem}.classroom-stage.has-transcript{--scene-right:16.75rem}.classroom-stage.has-side-drawer{--scene-left:25rem}.classroom-stage.has-side-drawer.has-transcript{--scene-right:1.125rem}.classroom-status-stack{width:13.75rem;top:.75rem;left:.75rem}.top-online{height:2.75rem;font-size:.75rem}.voice-status{min-height:3rem}.class-title{width:clamp(18rem,30vw,24rem);height:3.25rem;font-size:1.125rem;top:.75rem}.class-timer{width:12.5rem;height:4.5rem;top:.75rem;right:.75rem}.class-timer>strong{font-size:1.75rem}.class-toolbar{width:4.5rem;left:.75rem}.side-drawer{width:18rem;padding:var(--space-md);top:6.5rem;bottom:4.75rem;left:5.75rem}.has-side-drawer .transcript-panel,.has-side-drawer .transcript-toggle{display:none}.transcript-toggle{top:5.75rem;right:.75rem}.transcript-panel{width:15rem;top:8.5rem;bottom:4.75rem;right:.75rem}.classroom-command-bar{bottom:.75rem}.network-warning{max-width:15rem;bottom:.75rem;right:.75rem}.setup-dialog>header{padding:var(--space-md) var(--space-lg) var(--space-sm)}.setup-dialog>nav,.setup-progress{padding-inline:var(--space-lg)}.setup-content,.setup-dialog>footer{padding:var(--space-sm) var(--space-lg) var(--space-md)}}@media (width<=60rem){.classroom-stage{--scene-left:5.5rem}.classroom-stage.has-transcript{--scene-right:14.75rem}.classroom-stage.has-side-drawer{--scene-left:22.5rem}.classroom-status-stack{width:12.5rem}.class-title{width:19rem}.class-timer{width:11.5rem}.class-toolbar{width:4rem;padding-inline:var(--space-2xs)}.toolbar-title{display:none}.side-drawer{width:16.5rem;left:5rem}.transcript-panel{width:13rem}.student-name-tag strong{font-size:.6875rem}.student-state-chip{display:none}}@media (width<=48rem){.classroom-stage{--scene-top:6.75rem;--scene-right:.5rem;--scene-bottom:9.75rem;--scene-left:.5rem}.classroom-stage.has-transcript,.classroom-stage.has-side-drawer{--scene-right:.5rem;--scene-left:.5rem}.classroom-status-stack{width:calc(100% - 12rem);top:.5rem;left:.5rem}.top-online{display:none}.voice-status{min-height:3rem}.voice-status span{display:none}.class-title{width:calc(100% - 1rem);height:2.5rem;font-size:.9375rem;top:3.75rem}.class-title span{display:none}.class-timer{width:10.5rem;height:3rem;padding:var(--space-2xs) var(--space-xl) var(--space-2xs) var(--space-sm);top:.5rem;right:.5rem}.class-timer>div span{display:none}.class-timer>strong{margin:0;font-size:1.375rem}.pause-button{right:var(--space-2xs);width:2.25rem;height:2.25rem}.class-toolbar{width:auto;min-height:4rem;padding:var(--space-2xs);flex-direction:row;inset:auto .5rem .5rem;transform:none}.class-toolbar button{flex:1;min-width:0;min-height:3.5rem}.class-toolbar button i{width:1.75rem;height:1.75rem}.class-toolbar button svg{width:1.125rem;height:1.125rem}.class-toolbar button>span{font-size:.625rem}.classroom-command-bar{justify-content:space-between;min-height:3.25rem;bottom:4.875rem;left:.5rem;right:.5rem;transform:none}.end-class-button{min-width:7.5rem}.transcript-toggle{top:4rem;right:.75rem}.side-drawer,.transcript-panel{z-index:22;width:auto;inset:6.75rem .5rem 9.75rem}.has-side-drawer .transcript-panel,.has-side-drawer .transcript-toggle{display:none}.network-warning{max-width:none;bottom:9.75rem;left:.5rem;right:.5rem}.student-overlay{width:32%}.student-overlay.front_left{left:6%}.student-overlay.front_center{left:34%}.student-overlay.front_right{right:6%}.student-name-tag{height:1.5rem;padding-inline:var(--space-2xs)}.student-speech{width:min(9rem,96%);padding:var(--space-2xs) var(--space-xs);font-size:.6875rem}.setup-overlay{padding:var(--space-xs)}.setup-dialog{width:100%;max-height:calc(100dvh - 1rem)}.setup-dialog>header{padding:var(--space-md);align-items:flex-start}.setup-dialog h1{font-size:1.25rem}.model-ready{font-size:.6875rem}.setup-dialog>nav{padding-inline:var(--space-sm);overflow-x:auto}.setup-dialog>nav button{padding-inline:var(--space-sm);white-space:nowrap}.setup-progress{padding:var(--space-xs) var(--space-md)}.setup-progress li{font-size:0}.setup-progress li span{font-size:.6875rem}.setup-content{padding:var(--space-sm)}.student-config-grid,.setup-form.two-columns,.student-config-card{grid-template-columns:1fr}.formal-model-preview{display:none}.setup-dialog>footer{gap:var(--space-sm);padding:var(--space-sm);grid-template-columns:1fr}.setup-dialog>footer .reset-button{display:none}.start-class-button{width:100%;min-width:0}}@media (prefers-reduced-motion:reduce){.side-drawer,.transcript-panel{animation:none}.classroom-stage *,.classroom-stage :before,.classroom-stage :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency:reduce){.classroom-stage .glass-panel,.student-name-tag{background:var(--color-classroom-panel);-webkit-backdrop-filter:none}.setup-dialog{background:var(--color-classroom-paper)}}.assessor-room-strip{justify-content:space-between;align-items:center;gap:24px;padding:22px 24px;display:flex}.assessor-room-strip h2{color:#172033;margin:10px 0 4px;font-size:22px}.assessor-room-strip p{color:#667085;margin:0}.assessor-service-list{align-items:center;gap:18px;display:flex}.assessor-service-list span{color:#475467;white-space:nowrap;align-items:center;gap:7px;font-size:13px;display:inline-flex}.assessor-service-list i{background:#d92d20;border-radius:50%;width:8px;height:8px}.assessor-service-list .ready i{background:#12b76a}.assessor-service-list .error{color:#b42318}.assessor-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin-top:16px;display:grid}.assessor-selector{padding:24px}.assessor-selector>header,.assessor-recent>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.assessor-selector>header small{color:#246bfd;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.assessor-selector h2,.assessor-guidance h2,.assessor-recent h2{color:#172033;margin:0;font-size:18px}.assessor-selector>header>span,.assessor-recent header p{color:#667085;margin:2px 0 0;font-size:13px}.assessor-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.assessor-form-grid label{color:#344054;gap:8px;font-size:13px;font-weight:650;display:grid}.assessor-form-grid select{color:#172033;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d0d5dd;border-radius:8px;padding:0 38px 0 12px}.assessor-form-grid select:focus-visible{border-color:#246bfd;outline:3px solid #246bfd29}.assessor-form-grid small{color:#667085;font-size:12px;font-weight:400}.assessor-summary{background:#e4e7ec;border:1px solid #e4e7ec;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:22px;display:grid;overflow:hidden}.assessor-summary>div{background:#f9fafb;min-width:0;padding:16px}.assessor-summary small,.assessor-summary span{color:#667085;font-size:12px;display:block}.assessor-summary strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;margin:7px 0 4px;font-size:15px;display:block;overflow:hidden}.assessor-selector>footer{border-top:1px solid #eaecf0;justify-content:space-between;align-items:center;gap:24px;margin-top:22px;padding-top:20px;display:flex}.assessor-selector>footer div{gap:4px;display:grid}.assessor-selector>footer strong{color:#344054;font-size:13px}.assessor-selector>footer span{color:#667085;font-size:12px}.ui-button.disabled,.ui-button[aria-disabled=true]{pointer-events:none;opacity:.45}.assessor-guidance{padding:22px}.assessor-guidance ol{gap:18px;margin:22px 0;padding:0;list-style:none;display:grid}.assessor-guidance li{gap:12px;display:flex}.assessor-guidance li>i{color:#175cd3;background:#eff4ff;border:1px solid #b2ccff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:12px;font-style:normal;font-weight:700;display:grid}.assessor-guidance li span{gap:3px;display:grid}.assessor-guidance li strong{color:#344054;font-size:13px}.assessor-guidance li small,.assessor-guidance>p{color:#667085;font-size:12px;line-height:1.55}.assessor-guidance>p{border-top:1px solid #eaecf0;margin:0;padding-top:18px}.assessor-recent{margin-top:16px;padding:22px 24px}.assessor-recent>div{border-top:1px solid #eaecf0;margin-top:16px}.assessor-recent>div>a{color:inherit;border-bottom:1px solid #eaecf0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:15px 2px;text-decoration:none;display:grid}.assessor-recent a span{gap:4px;display:grid}.assessor-recent a strong{color:#344054;font-size:14px}.assessor-recent a small{color:#667085;font-size:12px}.assessor-recent a em{color:#175cd3;background:#eff4ff;border-radius:999px;padding:4px 9px;font-size:12px;font-style:normal}.assessor-recent a b{color:#246bfd;font-size:13px}@media (width<=1050px){.assessor-room-strip,.assessor-selector>header,.assessor-selector>footer{flex-direction:column;align-items:flex-start}.assessor-service-list{flex-wrap:wrap}.assessor-workspace{grid-template-columns:1fr}}@media (width<=720px){.assessor-form-grid,.assessor-summary{grid-template-columns:1fr}.assessor-recent>div>a{grid-template-columns:minmax(0,1fr) auto}.assessor-recent a b{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}.classroom-stage .student-ui-layer .student-overlay .desk-nameplate{height:24px;padding:0 var(--space-xs);justify-content:center;align-items:center;gap:var(--space-2xs);border:1px solid color-mix(in oklch,var(--color-classroom-line) 36%,transparent);color:var(--color-classroom-text);background:var(--color-classroom-panel);box-shadow:0 3px 9px color-mix(in oklch,var(--color-classroom-ink) 16%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:6px;flex-direction:row;top:0;bottom:auto;left:0}.classroom-stage .student-ui-layer .student-overlay .desk-nameplate .student-label-name{white-space:nowrap;flex:none;min-width:max-content;font-size:11px;font-weight:650;line-height:16px}.classroom-stage .student-ui-layer .student-overlay .desk-nameplate .student-state-chip{min-width:max-content;color:var(--student-state-color,var(--color-classroom-success));white-space:nowrap;background:0 0;border:0;flex:none;align-items:center;gap:3px;padding:0;font-size:9px;font-weight:500;line-height:14px;display:inline-flex}.classroom-stage .student-ui-layer .student-overlay .desk-nameplate .student-status-dot{width:5px;height:5px;box-shadow:0 0 0 1px color-mix(in srgb,currentColor 16%,transparent);background:currentColor;border-radius:50%;flex:none}.classroom-stage .student-ui-layer .student-overlay.state-error .desk-nameplate{--student-state-color:var(--color-classroom-danger);border-color:color-mix(in srgb,var(--color-classroom-danger) 55%,transparent)}.classroom-stage .student-ui-layer .student-overlay.state-distracted .desk-nameplate{--student-state-color:var(--color-classroom-warning)}.classroom-stage .student-ui-layer .student-overlay.state-handRaised .desk-nameplate,.classroom-stage .student-ui-layer .student-overlay.state-called .desk-nameplate,.classroom-stage .student-ui-layer .student-overlay.state-thinking .desk-nameplate,.classroom-stage .student-ui-layer .student-overlay.state-answering .desk-nameplate,.classroom-stage .student-ui-layer .student-overlay.state-questioning .desk-nameplate{--student-state-color:var(--color-classroom-accent);border-color:color-mix(in srgb,var(--color-classroom-accent) 55%,transparent)}.classroom-stage .student-click-target:focus-visible{outline:2px solid var(--color-classroom-accent);outline-offset:2px;border-radius:8px}.classroom-stage .student-click-target{inset:0 22%}.classroom-stage .student-click-target:active:not(:disabled){background:var(--color-classroom-panel-soft);opacity:.15}@media (hover:hover){.classroom-stage .student-ui-layer .student-overlay:has(.student-click-target:hover:not(:disabled)) .desk-nameplate{border-color:var(--color-classroom-accent)}}.console-refresh-status{color:var(--color-app-text-secondary);padding:8px 24px;font-size:13px}body{color:var(--color-app-text);background:var(--color-app-canvas)}.app-content,.console-main,.client-subject-list,.client-course-list,.client-student-list{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent;-webkit-overflow-scrolling:touch;touch-action:pan-y}.app-content.is-scrolling,.console-main.is-scrolling,.client-subject-list.is-scrolling,.client-course-list.is-scrolling,.client-student-list.is-scrolling{scrollbar-color:#5f6f849e transparent}.app-content::-webkit-scrollbar{width:8px;height:8px}.console-main::-webkit-scrollbar{width:8px;height:8px}.client-subject-list::-webkit-scrollbar{width:8px;height:8px}.client-course-list::-webkit-scrollbar{width:8px;height:8px}.client-student-list::-webkit-scrollbar{width:8px;height:8px}.app-content::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:999px}.console-main::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:999px}.client-subject-list::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:999px}.client-course-list::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:999px}.client-student-list::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:999px}.app-content.is-scrolling::-webkit-scrollbar-thumb{background:#5f6f849e padding-box padding-box}.console-main.is-scrolling::-webkit-scrollbar-thumb{background:#5f6f849e padding-box padding-box}.client-subject-list.is-scrolling::-webkit-scrollbar-thumb{background:#5f6f849e padding-box padding-box}.client-course-list.is-scrolling::-webkit-scrollbar-thumb{background:#5f6f849e padding-box padding-box}.client-student-list.is-scrolling::-webkit-scrollbar-thumb{background:#5f6f849e padding-box padding-box}.auth-v1{min-height:100dvh;color:var(--color-app-text);background:var(--color-app-canvas);grid-template-columns:minmax(400px,.9fr) minmax(480px,1.1fr);display:grid;overflow:auto}.auth-story{color:#fff;background:#172033;flex-direction:column;justify-content:space-between;min-height:100dvh;padding:clamp(42px,7vw,90px);display:flex}.auth-story-mark{background:var(--color-app-primary);border-radius:10px;place-items:center;width:42px;height:42px;font-size:18px;font-weight:750;display:grid}.auth-story h2{letter-spacing:-.05em;margin:0;font-size:clamp(38px,4.2vw,64px);line-height:1.18}.auth-story p{color:#aeb8c8;max-width:510px;margin:22px 0 0;font-size:15px;line-height:1.8}.auth-story footer{color:#98a4b7;flex-wrap:wrap;gap:18px;font-size:11px;display:flex}.auth-story footer span+span{border-left:1px solid #344055;padding-left:18px}.auth-card-v1{width:min(440px,100% - 48px);box-shadow:none;background:0 0;border:0;border-radius:0;margin:auto;padding:0}.auth-product{align-items:center;gap:10px;margin-bottom:58px;display:flex}.auth-product span{color:#fff;background:var(--color-app-primary);border-radius:8px;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.auth-product strong{font-size:14px}.auth-card-v1 h1{color:var(--color-app-text);letter-spacing:-.04em;margin:0;font-size:31px}.auth-card-v1>p{color:var(--color-app-text-secondary);margin:9px 0 28px;font-size:13px}.auth-card-v1 form{gap:17px}.auth-card-v1 label{color:var(--color-app-text-secondary);font-size:12px}.auth-card-v1 input{border-color:var(--color-app-border);border-radius:var(--radius-control);background:#fff;min-height:44px}.auth-card-v1 .inline-field button{border:1px solid var(--color-app-border-strong);border-radius:var(--radius-control);color:var(--color-app-text-secondary);background:#fff;padding:0 13px}.auth-submit{width:100%;margin-top:7px}.auth-help{color:var(--color-app-text-tertiary);text-align:center;margin-top:24px;font-size:11px}.app-frame{min-height:100dvh;color:var(--color-app-text);background:var(--color-app-canvas);grid-template-columns:240px minmax(0,1fr);display:grid}.app-sidebar{height:100dvh;color:var(--color-sidebar-text);background:var(--color-sidebar-bg);flex-direction:column;padding:20px 16px 16px;display:flex;position:sticky;top:0;overflow:hidden}.app-logo{height:40px;color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.app-logo>span{color:#fff;background:var(--color-app-primary);border-radius:10px;place-items:center;width:40px;height:40px;font-size:18px;font-weight:760;display:grid}.app-logo strong{letter-spacing:-.02em;font-size:16px}.app-sidebar nav{gap:6px;margin-top:28px;display:grid}.app-sidebar nav a{height:44px;color:var(--color-sidebar-muted);transition:color var(--dur-micro), background var(--dur-micro), transform var(--dur-micro);border-radius:8px;align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:520;text-decoration:none;display:flex}.app-sidebar nav a:hover{color:#fff;background:#ffffff0e}.app-sidebar nav a:active{transform:scale(.985)}.app-sidebar nav a.active{color:#fff;background:var(--color-sidebar-active)}.app-sidebar nav svg{flex:none}.app-sidebar footer{grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:10px;min-width:0;margin-top:auto;padding:0;display:grid}.app-avatar{color:#172033;background:#eef2f8;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:grid}.app-sidebar footer strong,.app-sidebar footer span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-sidebar footer strong{font-size:12px}.app-sidebar footer span{color:var(--color-sidebar-muted);margin-top:2px;font-size:10px}.app-sidebar footer button{width:32px;height:32px;color:var(--color-sidebar-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.app-sidebar footer button:hover{color:#fff;background:#ffffff12}.app-workspace{min-width:0;height:100dvh;overflow:hidden}.app-topbar{border-bottom:1px solid var(--color-app-border);background:var(--color-app-surface-raised);justify-content:space-between;align-items:center;gap:24px;height:96px;padding:0 32px;display:flex}.app-topbar h1{color:var(--color-app-text);letter-spacing:-.025em;margin:0;font-size:24px;font-weight:700}.app-topbar p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:13px}.app-topbar-actions{align-items:center;gap:8px;display:flex}.app-content{width:100%;height:calc(100dvh - 96px);padding:28px 32px 32px;overflow:auto}.ui-button{border:1px solid var(--color-app-border-strong);border-radius:var(--radius-control);min-height:40px;color:var(--color-app-text);background:var(--color-app-surface);cursor:pointer;transition:background var(--dur-micro), border-color var(--dur-micro), transform var(--dur-micro);justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.ui-button:hover{background:var(--color-app-surface-subtle);border-color:#b8c2d0}.ui-button:active{transform:scale(.985)}.ui-button.primary{color:#fff;border-color:var(--color-app-primary);background:var(--color-app-primary)}.ui-button.primary:hover{background:var(--color-app-primary-hover)}.ui-button.quiet{color:var(--color-app-text-secondary);background:0 0;border-color:#0000}.ui-button.danger{color:var(--color-app-danger)}.ui-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.ui-card{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:var(--color-app-surface);box-shadow:var(--shadow-card)}.ui-section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:14px;display:flex}.ui-section-heading h2{letter-spacing:-.015em;margin:0;font-size:17px}.ui-section-heading p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:12px}.status-tag{width:fit-content;color:var(--color-app-text-secondary);white-space:nowrap;background:#eef1f5;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:650}.status-tag.success{color:var(--color-app-success);background:var(--color-app-success-soft)}.status-tag.warning{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.status-tag.danger{color:var(--color-app-danger);background:var(--color-app-danger-soft)}.status-tag.info{color:var(--color-app-info);background:var(--color-app-info-soft)}.app-empty{text-align:center;border:1px dashed var(--color-app-border-strong);border-radius:var(--radius-card);background:#ffffff73;align-content:center;place-items:center;min-height:180px;padding:32px;display:grid}.app-empty strong{font-size:15px}.app-empty p{max-width:420px;color:var(--color-app-text-secondary);margin:7px 0 0;font-size:12px;line-height:1.65}.app-alert{border-radius:var(--radius-control);color:var(--color-app-danger);background:var(--color-app-danger-soft);border:1px solid #f2c5c9;margin-bottom:16px;padding:12px 14px;font-size:12px}.dashboard-resume{border-radius:var(--radius-container);background:var(--color-app-primary-soft);min-height:156px;box-shadow:none;justify-content:space-between;align-items:center;gap:32px;padding:24px 24px 24px 28px;display:flex}.dashboard-resume>div{min-width:0}.dashboard-resume>div>span{color:var(--color-app-primary);font-size:12px;font-weight:650}.dashboard-resume h2{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin:8px 0;font-size:24px;overflow:hidden}.dashboard-resume p{color:var(--color-app-text-secondary);margin:0;font-size:13px}.dashboard-resume nav{flex:none;gap:10px;display:flex}.dashboard-resume-empty{background:#fff}.dashboard-workbench{grid-template-columns:minmax(0,752px) minmax(300px,360px);justify-content:space-between;gap:24px;height:644px;margin-top:24px;display:grid}.dashboard-left-column{min-width:0}.dashboard-section-title{justify-content:space-between;align-items:center;height:40px;display:flex}.dashboard-section-title h2{margin:0;font-size:18px}.dashboard-section-title a{color:var(--color-app-primary);font-size:13px;font-weight:600;text-decoration:none}.dashboard-task-stack{gap:12px;display:grid}.dashboard-task-card{min-height:142px;box-shadow:none;justify-content:space-between;align-items:center;gap:24px;padding:20px 18px 20px 20px;display:flex}.dashboard-task-card>div{min-width:0}.dashboard-task-card>div>span{color:var(--color-app-primary);font-size:12px;font-weight:650}.dashboard-task-card h3{text-overflow:ellipsis;white-space:nowrap;margin:7px 0;font-size:17px;overflow:hidden}.dashboard-task-card p{color:var(--color-app-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;overflow:hidden}.dashboard-task-card aside{flex:none;justify-items:end;gap:16px;display:grid}.dashboard-task-card aside a{color:var(--color-app-primary);font-size:13px;font-weight:650;text-decoration:none}.dashboard-recommendation-title{margin-top:16px}.dashboard-course-card{min-height:220px;box-shadow:none;grid-template-columns:minmax(220px,.9fr) minmax(240px,1.1fr);gap:20px;padding:18px;display:grid}.dashboard-course-card>div>span{color:var(--color-app-primary);font-size:12px;font-weight:600}.dashboard-course-card h3{margin:12px 0;font-size:19px}.dashboard-course-card>div>div{border-radius:var(--radius-control);background:var(--color-app-surface-subtle);gap:5px;padding:10px;display:grid}.dashboard-course-card small{color:var(--color-app-text-tertiary);font-size:11px}.dashboard-course-card strong{font-size:13px}.dashboard-course-card footer{border-left:1px solid var(--color-app-border);flex-direction:column;justify-content:center;align-items:flex-start;padding-left:20px;display:flex}.dashboard-course-card footer p{color:var(--color-app-text-secondary);margin:0 0 18px;font-size:12px;line-height:1.65}.dashboard-course-card footer button{color:var(--color-app-primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:650}.dashboard-course-card footer button:disabled{opacity:.45}.dashboard-compact-empty{min-height:142px;padding:22px}.dashboard-right-column{align-content:start;gap:12px;display:grid}.dashboard-side-card{box-shadow:none;padding:20px}.dashboard-side-card h2{margin:0;font-size:16px}.dashboard-side-card dl{gap:13px;margin:14px 0 0;display:grid}.dashboard-side-card dl div{justify-content:space-between;align-items:center;display:flex}.dashboard-side-card dt{color:var(--color-app-text-secondary);font-size:13px}.dashboard-side-card dd{border-radius:999px;margin:0;padding:4px 8px;font-size:11px;font-weight:650}.dashboard-side-card dd.ready{color:var(--color-app-success);background:var(--color-app-success-soft)}.dashboard-side-card dd.pending{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.dashboard-focus-card header{justify-content:space-between;align-items:center;display:flex}.dashboard-focus-card header a{color:var(--color-app-primary);font-size:11px;text-decoration:none}.dashboard-focus-card>p{color:var(--color-app-text-tertiary);margin:8px 0 14px;font-size:12px}.dashboard-focus-card>div:not(.compact-empty){border-radius:var(--radius-control);background:var(--color-app-surface-subtle);justify-content:space-between;align-items:center;min-height:54px;margin-top:8px;padding:0 12px;display:flex}.dashboard-focus-card span strong,.dashboard-focus-card span small{display:block}.dashboard-focus-card span strong{font-size:13px}.dashboard-focus-card span small{color:var(--color-app-text-tertiary);margin-top:3px;font-size:11px}.dashboard-focus-card em{font-family:var(--font-classroom-mono);font-size:24px;font-style:normal}.dashboard-recent-report>strong{text-overflow:ellipsis;white-space:nowrap;margin-top:16px;font-size:14px;display:block;overflow:hidden}.dashboard-recent-report>div{justify-content:space-between;align-items:center;gap:12px;min-height:54px;display:flex}.dashboard-recent-report em{font-family:var(--font-classroom-mono);font-size:34px;font-style:normal}.dashboard-recent-report span{color:var(--color-app-text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dashboard-recent-report>a{color:var(--color-app-primary);font-size:12px;font-weight:650;text-decoration:none}.dashboard-intro{border:1px solid var(--color-app-border);border-radius:var(--radius-container);background:var(--color-app-surface);justify-content:space-between;align-items:center;gap:32px;margin-bottom:28px;padding:24px 26px;display:flex}.dashboard-date{color:var(--color-app-primary);font-size:12px;font-weight:650}.dashboard-intro h2{letter-spacing:-.035em;margin:7px 0 6px;font-size:clamp(22px,2.3vw,30px)}.dashboard-intro p{color:var(--color-app-text-secondary);margin:0;font-size:13px}.readiness-card{border-radius:var(--radius-control);min-width:285px;color:var(--color-app-warning);background:var(--color-app-warning-soft);align-items:center;gap:11px;padding:13px 14px;display:flex}.readiness-card.ready{color:var(--color-app-success);background:var(--color-app-success-soft)}.readiness-card>i{width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, currentColor 13%, transparent);background:currentColor;border-radius:50%}.readiness-card strong,.readiness-card span{display:block}.readiness-card strong{font-size:12px}.readiness-card span{color:var(--color-app-text-secondary);margin-top:3px;font-size:10px}.trainee-dashboard-grid{grid-template-columns:minmax(0,1fr) 300px;gap:24px;display:grid}.dashboard-main{min-width:0}.dashboard-aside{align-content:start;gap:14px;display:grid}.task-list{gap:10px;display:grid}.task-row{grid-template-columns:112px minmax(0,1fr) 150px auto;align-items:center;gap:18px;min-height:124px;padding:18px;display:grid}.task-status-line{border-right:1px solid var(--color-app-border);flex-direction:column;justify-content:center;align-self:stretch;align-items:flex-start;gap:8px;padding-right:14px;display:flex}.task-status-line>span:last-child{color:var(--color-app-text-tertiary);font-size:10px}.task-copy h3{margin:0 0 6px;font-size:15px}.task-copy p{color:var(--color-app-text-secondary);margin:0;font-size:11px}.task-copy small{color:var(--color-app-text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:10px;display:block;overflow:hidden}.task-progress span,.task-progress time{color:var(--color-app-text-secondary);font-size:10px;display:block}.task-progress>i{background:#edf0f4;border-radius:3px;width:100%;height:5px;margin:7px 0;display:block;overflow:hidden}.task-progress>i b{background:var(--color-app-primary);height:100%;display:block}.recommendation-card,.ability-card{padding:18px}.recommendation-card header,.ability-card header{justify-content:space-between;align-items:center;display:flex}.recommendation-card h2,.ability-card h2{margin:0;font-size:14px}.recommendation-card h3{margin:20px 0 7px;font-size:18px}.recommendation-card p{color:var(--color-app-text-secondary);margin:0 0 14px;font-size:11px;line-height:1.65}.recommendation-card .ui-button{width:100%;margin-top:16px}.focus-tags{flex-wrap:wrap;gap:6px;display:flex}.focus-tags span{color:var(--color-app-info);background:var(--color-app-info-soft);border-radius:6px;padding:5px 7px;font-size:10px}.ability-card header a{color:var(--color-app-primary);font-size:10px;text-decoration:none}.ability-card>div:not(.compact-empty){border-top:1px solid var(--color-app-border);justify-content:space-between;margin-top:12px;padding-top:12px;display:flex}.ability-card>div span{font-size:11px}.ability-card>div small{color:var(--color-app-text-tertiary);font-size:10px}.compact-empty{color:var(--color-app-text-tertiary);text-align:center;padding:24px 0 8px;font-size:11px}.recent-section{margin-top:32px}.recent-table{overflow:hidden}.recent-table a{border-top:1px solid var(--color-app-border);min-height:54px;color:var(--color-app-text-secondary);grid-template-columns:120px minmax(160px,1fr) minmax(160px,.8fr) 90px 44px;align-items:center;gap:14px;padding:0 18px;font-size:11px;text-decoration:none;display:grid}.recent-table a:first-child{border-top:0}.recent-table a:hover{background:var(--color-app-surface-subtle)}.recent-table strong{color:var(--color-app-text)}.recent-table em{color:var(--color-app-info);font-style:normal}.recent-table b{color:var(--color-app-primary);text-align:right;font-size:10px}.catalog-heading{justify-content:space-between;align-items:flex-start;gap:24px;min-height:48px;display:flex}.catalog-heading h2{margin:0;font-size:20px;line-height:28px}.catalog-heading p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:12px}.catalog-heading>.status-tag{margin-top:6px}.catalog-filter-card{box-shadow:none;margin-top:12px;padding:16px}.catalog-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.catalog-tabs{min-width:0;display:flex;overflow-x:auto}.catalog-tabs button{border:0;border-bottom:1px solid var(--color-app-border);min-width:112px;height:40px;color:var(--color-app-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:0 12px 10px}.catalog-tabs button:hover{color:var(--color-app-text)}.catalog-tabs button.active{color:var(--color-app-primary);border-bottom:2px solid var(--color-app-primary);font-weight:650}.catalog-search{border:1px solid var(--color-app-border);border-radius:var(--radius-control);background:#fff;flex:none;align-items:center;gap:8px;width:280px;height:40px;padding:0 10px;display:flex}.catalog-search>span{color:var(--color-app-text-tertiary);font-size:19px;line-height:1;transform:rotate(-20deg)}.catalog-search input{min-width:0;color:var(--color-app-text);background:0 0;border:0;outline:0;flex:1;font-size:13px}.catalog-summary{border-radius:var(--radius-control);background:var(--color-app-surface-subtle);border:0;align-items:center;gap:12px;margin-top:14px;padding:10px 12px;display:flex}.catalog-summary strong{color:var(--color-app-primary);font-family:var(--font-classroom-mono);font-size:20px}.catalog-summary span{color:var(--color-app-text);margin-left:5px;font-size:12px}.catalog-summary p{border-left:1px solid var(--color-app-border);color:var(--color-app-text-tertiary);margin:0;padding-left:12px;font-size:12px}.catalog-grid-heading{min-height:42px;color:var(--color-app-text-tertiary);justify-content:space-between;align-items:center;margin-top:12px;font-size:12px;display:flex}.catalog-grid-heading strong{color:var(--color-app-text);font-weight:550}.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.course-card{min-height:296px;box-shadow:none;flex-direction:column;padding:20px 20px 18px;display:flex}.course-card>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.course-meta span{color:var(--color-app-primary);font-size:12px;font-weight:550}.course-card h2{margin:14px 0 4px;font-size:20px;line-height:28px}.course-card>p{color:var(--color-app-text-secondary);margin:0;font-size:12px}.course-card>section{border-radius:var(--radius-control);background:var(--color-app-surface-subtle);align-content:start;gap:5px;height:80px;margin-top:14px;padding:12px;display:grid;overflow:hidden}.course-card>section small{color:var(--color-app-text-tertiary);font-size:12px;font-weight:550}.course-card>section span{color:var(--color-app-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.course-card footer{border-top:1px solid var(--color-app-border);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.course-card footer>div{flex-wrap:wrap;gap:5px;display:flex}.course-card footer>div span{color:var(--color-app-text-tertiary);font-size:11px}.course-card footer>div span+span:before{content:"·";margin-right:5px}.course-card footer .ui-button{min-width:94px}.course-empty{grid-column:1/-1}.instructor-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px;display:grid}.instructor-stats article{padding:18px;display:grid}.instructor-stats span{font-family:var(--font-classroom-mono);font-size:28px;font-weight:650}.instructor-stats span.attention{color:var(--color-app-primary)}.instructor-stats small{color:var(--color-app-text-tertiary);margin-top:3px;font-size:10px}.instructor-layout{grid-template-columns:minmax(0,1fr) 310px;gap:24px;display:grid}.review-list{overflow:hidden}.review-list>a{border-top:1px solid var(--color-app-border);min-height:70px;color:inherit;grid-template-columns:38px minmax(0,1fr) 72px 50px;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:grid}.review-list>a:first-child{border-top:0}.review-list>a:hover{background:var(--color-app-surface-subtle)}.record-avatar,.trainee-avatar{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-weight:700;display:grid}.record-avatar{width:36px;height:36px;font-size:12px}.review-list strong,.review-list span{display:block}.review-list strong{font-size:12px}.review-list span{color:var(--color-app-text-tertiary);margin-top:3px;font-size:10px}.review-list em{color:var(--color-app-text-secondary);font-size:11px;font-style:normal}.review-list b{color:var(--color-app-primary);text-align:right;font-size:10px}.instructor-task-stack{gap:9px;display:grid}.instructor-task-stack article{padding:15px}.instructor-task-stack header{justify-content:space-between;align-items:center;display:flex}.instructor-task-stack header small{color:var(--color-app-text-tertiary)}.instructor-task-stack article>strong{margin-top:14px;font-size:12px;display:block}.instructor-task-stack p{color:var(--color-app-text-secondary);margin:5px 0 0;font-size:10px}.task-management-list{overflow:hidden}.task-management-list>header,.task-management-list>article{border-top:1px solid var(--color-app-border);grid-template-columns:minmax(220px,1.5fr) 120px 90px 110px 90px 60px;align-items:center;gap:14px;min-height:60px;padding:0 18px;display:grid}.task-management-list>header{min-height:42px;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);border-top:0;font-size:10px}.task-management-list>article>div strong,.task-management-list>article>div small{display:block}.task-management-list>article>div strong{font-size:12px}.task-management-list>article>div small{color:var(--color-app-text-tertiary);margin-top:3px;font-size:10px}.task-management-list>article>span,.task-management-list time{color:var(--color-app-text-secondary);font-size:11px}.task-management-list .ui-button{min-height:32px;padding:0 8px}.trainee-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.trainee-directory>article{text-align:center;padding:22px}.trainee-avatar{width:54px;height:54px;margin:0 auto;font-size:17px}.trainee-directory h2{margin:14px 0 3px;font-size:16px}.trainee-directory>article>p{color:var(--color-app-text-tertiary);margin:0;font-size:10px}.trainee-directory dl{border-block:1px solid var(--color-app-border);grid-template-columns:repeat(2,1fr);margin:20px 0;padding:14px 0;display:grid}.trainee-directory dl div+div{border-left:1px solid var(--color-app-border)}.trainee-directory dt{color:var(--color-app-text-tertiary);font-size:10px}.trainee-directory dd{font-family:var(--font-classroom-mono);margin:5px 0 0;font-size:18px}.trainee-directory nav{justify-content:center;gap:6px;display:flex}.modal-backdrop{z-index:var(--z-modal);background:#0c121d70;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow:auto}.app-modal{border-radius:var(--radius-container);width:min(620px,100%);max-height:calc(100dvh - 56px);box-shadow:var(--shadow-overlay);background:#fff;overflow:auto}.app-modal>header{z-index:2;border-bottom:1px solid var(--color-app-border);background:#fff;justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex;position:sticky;top:0}.app-modal h2{margin:0;font-size:18px}.app-modal header p{color:var(--color-app-text-secondary);margin:5px 0 0;font-size:11px}.app-modal header button{border-radius:var(--radius-control);width:32px;height:32px;color:var(--color-app-text-secondary);cursor:pointer;background:0 0;border:0;font-size:20px}.app-modal form{gap:16px;padding:22px;display:grid}.app-modal form>label,.form-two label{color:var(--color-app-text-secondary);gap:7px;font-size:11px;font-weight:650;display:grid}.app-modal input,.app-modal select,.app-modal textarea{border:1px solid var(--color-app-border);border-radius:var(--radius-control);width:100%;min-height:40px;color:var(--color-app-text);background:#fff;padding:8px 10px}.app-modal textarea{resize:vertical}.form-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.checkbox-list{border:1px solid var(--color-app-border);border-radius:var(--radius-control);flex-wrap:wrap;gap:7px;padding:10px;display:flex}.checkbox-list label{background:var(--color-app-surface-subtle);color:var(--color-app-text);border-radius:6px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;font-weight:500;display:flex}.checkbox-list input{width:14px;min-height:0}.app-modal form>footer{justify-content:flex-end;gap:8px;padding-top:6px;display:flex}.trainee-detail-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px;display:grid}.trainee-detail-summary>*{color:inherit;padding:18px;text-decoration:none}.trainee-detail-summary span,.trainee-detail-summary strong{display:block}.trainee-detail-summary span{color:var(--color-app-text-tertiary);font-size:10px}.trainee-detail-summary strong{margin-top:9px;font-size:22px}.trainee-detail-summary a strong{color:var(--color-app-primary);font-size:12px}.trainee-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.detail-list{overflow:hidden}.detail-list>article,.detail-list>a{border-top:1px solid var(--color-app-border);min-height:62px;color:inherit;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 15px;text-decoration:none;display:grid}.detail-list>:first-child{border-top:0}.detail-list strong,.detail-list div span{display:block}.detail-list strong{font-size:11px}.detail-list div span{color:var(--color-app-text-tertiary);margin-top:3px;font-size:10px}.detail-list em{color:var(--color-app-text-secondary);font-size:10px;font-style:normal}.detail-list b{color:var(--color-app-primary);font-size:10px}.history-filters{box-shadow:none;margin-bottom:20px;padding:16px}.history-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.history-toolbar>div{flex-wrap:wrap;gap:4px;display:flex}.history-toolbar button{height:40px;color:var(--color-app-text-secondary);cursor:pointer;background:0 0;border:0;padding:0 18px;position:relative}.history-toolbar button:after{content:"";background:var(--color-app-border);height:1px;position:absolute;bottom:0;left:0;right:0}.history-toolbar button.active{color:var(--color-app-primary);font-weight:650}.history-toolbar button.active:after{background:var(--color-app-primary);height:2px}.history-search{border:1px solid var(--color-app-border);border-radius:var(--radius-control);width:300px;height:40px;color:var(--color-app-text-tertiary);background:#fff;align-items:center;gap:8px;padding:0 10px;display:flex}.history-search input{width:100%;height:100%;color:var(--color-app-text);font:inherit;background:0 0;border:0;outline:0;padding:0}.history-snapshot-note,.history-state-note{border-radius:var(--radius-control);color:var(--color-app-info);background:var(--color-app-info-soft);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.history-snapshot-note{min-height:64px;margin-top:14px}.history-snapshot-note>b,.history-state-note>b{color:#fff;width:22px;height:22px;font-family:var(--font-classroom-mono);background:currentColor;border-radius:50%;flex:none;place-items:center;font-size:12px;display:grid}.history-snapshot-note>b:first-letter,.history-state-note>b:first-letter{color:#fff}.history-snapshot-note span,.history-state-note span{gap:4px;display:grid}.history-snapshot-note strong,.history-state-note strong{font-size:12px}.history-snapshot-note small,.history-state-note small{color:var(--color-app-text-secondary);font-size:11px;line-height:1.5}.history-table{box-shadow:none;overflow-x:auto}.history-table-title{justify-content:space-between;align-items:center;min-width:850px;height:64px;padding:0 20px;display:flex}.history-table-title strong{font-size:16px}.history-table-title span{color:var(--color-app-text-tertiary);font-family:var(--font-classroom-mono);font-size:11px}.history-table>header,.history-table>a{border-top:1px solid var(--color-app-border);min-width:850px;min-height:56px;color:var(--color-app-text-secondary);grid-template-columns:125px 110px minmax(260px,1fr) 110px 90px 90px;align-items:center;gap:12px;padding:0 20px;font-size:12px;text-decoration:none;display:grid}.history-table>header{min-height:44px;color:var(--color-app-text-secondary);background:var(--color-app-surface-subtle);border:0;font-size:11px;font-weight:600}.history-table>a:hover{background:var(--color-app-surface-subtle)}.history-table strong{color:var(--color-app-text)}.history-course{min-width:0}.history-course strong,.history-course small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.history-course small{color:var(--color-app-text-tertiary);margin-top:3px;font-size:10px}.history-table em{color:var(--color-app-text-secondary);font-style:normal}.history-table b{color:var(--color-app-primary);font-size:11px}.history-table>.app-empty{min-width:0}.history-guidance{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.history-state-note{min-height:64px}.history-state-note.warning{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.profile-summary{grid-template-columns:repeat(3,130px) minmax(0,1fr);align-items:center;gap:18px;margin-bottom:22px;padding:20px;display:grid}.profile-summary>div{border-right:1px solid var(--color-app-border);padding-right:18px}.profile-summary span,.profile-summary strong{display:block}.profile-summary span{color:var(--color-app-text-tertiary);font-size:10px}.profile-summary strong{font-family:var(--font-classroom-mono);margin-top:5px;font-size:24px}.profile-summary p{color:var(--color-app-text-secondary);margin:0;font-size:11px;line-height:1.65}.profile-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:16px;display:grid}.profile-ability,.profile-style,.observation-section{padding:20px}.profile-ability>header,.profile-style>header,.observation-section>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.profile-ability h2,.profile-style h2,.observation-section h2{margin:0;font-size:15px}.profile-ability header p,.observation-section header p{color:var(--color-app-text-tertiary);margin:4px 0 0;font-size:10px}.profile-style header>span{color:var(--color-app-text-tertiary);font-size:10px}.profile-ability article{margin-top:14px}.profile-ability article>div{justify-content:space-between;margin-bottom:7px;display:flex}.profile-ability article strong,.profile-ability article span{font-size:11px}.profile-ability article span{color:var(--color-app-text-secondary);font-family:var(--font-classroom-mono)}.profile-ability article>i{background:#edf0f4;border-radius:4px;height:7px;display:block;overflow:hidden}.profile-ability article>i b{border-radius:inherit;background:var(--color-app-primary);height:100%;display:block}.profile-style>article{border-top:1px solid var(--color-app-border);padding:12px 0}.profile-style>article:first-of-type{border-top:0}.profile-style article strong,.profile-style article span{display:block}.profile-style article strong{font-size:12px}.profile-style article span{color:var(--color-app-text-tertiary);margin-top:4px;font-size:10px}.observation-section{margin-top:16px}.observation-section>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.observation-section article{border:1px solid var(--color-app-border);border-radius:var(--radius-control);background:var(--color-app-surface-subtle);padding:14px}.observation-section article.hidden{opacity:.55}.observation-section article strong,.observation-section article>span{display:block}.observation-section article>span{color:var(--color-app-text-tertiary);margin-top:5px;font-size:9px;line-height:1.55}.observation-section nav{gap:5px;margin-top:10px;display:flex}.observation-section .ui-button{min-height:30px;padding:0 7px;font-size:9px}.observation-section>footer{border-top:1px solid var(--color-app-border);color:var(--color-app-text-tertiary);margin-top:16px;padding-top:14px;font-size:9px}.report-overview{grid-template-columns:150px minmax(0,1fr) 250px;align-items:center;gap:28px;padding:24px;display:grid}.report-score{align-items:baseline;display:flex}.report-score strong{font-family:var(--font-classroom-mono);font-size:54px;line-height:1}.report-score span{color:var(--color-app-text-tertiary);margin-left:4px}.report-overview p{color:var(--color-app-text-secondary);margin:0;font-size:10px}.report-overview dl{border-left:1px solid var(--color-app-border);margin:0;padding-left:20px}.report-overview dl div{grid-template-columns:70px 1fr;gap:8px;padding:6px 0;display:grid}.report-overview dt{color:var(--color-app-text-tertiary);font-size:9px}.report-overview dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;overflow:hidden}.report-section{margin-top:26px}.report-score-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.report-score-list article{padding:17px}.report-score-list header{justify-content:space-between;gap:18px;display:flex}.report-score-list h3{margin:0;font-size:12px}.report-score-list header p{color:var(--color-app-text-secondary);margin:5px 0 0;font-size:9px;line-height:1.55}.report-score-list header>strong{font-family:var(--font-classroom-mono);flex:none;font-size:14px}.report-score-list article>i{background:#edf0f4;border-radius:3px;height:5px;margin:14px 0;display:block;overflow:hidden}.report-score-list article>i b{background:var(--color-app-primary);height:100%;display:block}.report-score-list details{border-top:1px solid var(--color-app-border);padding-top:10px}.report-score-list summary{color:var(--color-app-primary);cursor:pointer;font-size:9px}.report-score-list blockquote{background:var(--color-app-primary-soft);border-left:2px solid #b9cffd;margin:9px 0 0;padding:9px 10px}.report-score-list blockquote p{margin:0;font-size:9px;line-height:1.6}.report-score-list blockquote footer{color:var(--color-app-text-tertiary);margin-top:5px;font-size:8px}.behavior-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.behavior-grid article{text-align:center;padding:16px}.behavior-grid strong,.behavior-grid span{display:block}.behavior-grid strong{font-family:var(--font-classroom-mono);font-size:20px}.behavior-grid span{color:var(--color-app-text-tertiary);margin-top:7px;font-size:9px}.report-advice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:26px;display:grid}.report-advice-grid article{padding:18px}.report-advice-grid h2{margin:0 0 14px;font-size:13px}.report-advice-grid p{color:var(--color-app-text-secondary);margin:8px 0;padding-left:12px;font-size:10px;line-height:1.65;position:relative}.report-advice-grid p:before{content:"—";color:var(--color-app-primary);position:absolute;left:0}.report-advice-grid span{color:var(--color-app-text-tertiary);font-size:10px}.report-state{text-align:center;align-content:center;place-items:center;min-height:340px;padding:44px;display:grid}.report-state h2{margin:20px 0 8px}.report-state p{max-width:520px;color:var(--color-app-text-secondary);margin:0 0 20px;font-size:12px;line-height:1.7}.report-comments-v1{margin-top:26px;padding:20px}.report-comments-v1>header{justify-content:space-between;display:flex}.report-comments-v1 h2{margin:0;font-size:14px}.report-comments-v1 header p{color:var(--color-app-text-tertiary);margin:4px 0 0;font-size:10px}.report-comments-v1 header>span{color:var(--color-app-text-tertiary);font-size:10px}.report-comments-v1 form{gap:8px;margin:18px 0;display:grid}.report-comments-v1 textarea{border:1px solid var(--color-app-border);border-radius:var(--radius-control);resize:vertical;width:100%;padding:11px}.report-comments-v1 form button{justify-self:end}.report-comments-v1>div>article{border-top:1px solid var(--color-app-border);padding:13px 0}.report-comments-v1 article p{margin:0;font-size:11px;line-height:1.7}.report-comments-v1 article time{color:var(--color-app-text-tertiary);margin-top:5px;font-size:9px;display:block}.audio-retention{border-radius:var(--radius-control);background:var(--color-app-warning-soft);border:1px solid #f1d5a1;justify-content:space-between;align-items:center;margin-top:14px;padding:13px 15px;display:flex}.audio-retention strong,.audio-retention span{display:block}.audio-retention strong{font-size:11px}.audio-retention span{color:var(--color-app-text-secondary);margin-top:3px;font-size:9px}.report-note{color:var(--color-app-text-tertiary);margin-top:18px;font-size:9px;line-height:1.65}.console-page{--console-accent:var(--color-app-primary);--console-bg:var(--color-app-canvas);--console-surface:var(--color-app-surface);--console-line:var(--color-app-border);--console-text:var(--color-app-text);--console-muted:var(--color-app-text-secondary);--console-faint:var(--color-app-text-tertiary);--console-radius:var(--radius-card);--console-shadow:var(--shadow-card);background:var(--color-app-canvas);grid-template-columns:224px minmax(0,1fr);gap:0}.console-sidebar{background:var(--color-sidebar-bg);height:100dvh;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;margin:0;padding:18px 12px 14px}.console-logo{padding-bottom:16px}.console-logo>span{background:var(--color-app-primary);width:32px;height:32px;box-shadow:none;border-radius:9px}.console-logo small{color:var(--color-sidebar-muted);font-size:10px}.console-sidebar nav section>small{color:#707b8d;letter-spacing:.08em;font-size:9px}.console-sidebar nav a{border-radius:var(--radius-control);width:100%;min-height:38px;color:var(--color-sidebar-muted);transition:color var(--dur-micro), background var(--dur-micro), transform var(--dur-micro);justify-content:space-between;align-items:center;margin-top:2px;padding:0 10px;font-size:12px;text-decoration:none;display:flex}.console-sidebar nav a:hover{color:#fff;background:#ffffff0e}.console-sidebar nav a:active{transform:scale(.985)}.console-sidebar nav a.active{color:#fff;background:var(--color-sidebar-active)}.console-sidebar nav a i{background:0 0;border-radius:50%;width:5px;height:5px}.console-sidebar nav a.active i{background:#76a2ff}.console-sidebar footer{color:var(--color-sidebar-muted)}.console-main{background:var(--color-app-canvas)}.console-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;height:64px;padding:0 32px}.console-topbar small{font-size:9px}.console-topbar h1{margin-top:2px;font-size:17px}.console-topbar nav a{border-radius:var(--radius-control)}.console-topbar nav span{border-radius:var(--radius-control);box-shadow:inset 0 0 0 1px var(--color-app-border);background:#fff}.management-header{align-items:center;margin-bottom:20px}.management-header h2{margin-bottom:6px;font-size:24px}.management-header p{font-size:11px}.metric-grid,.console-panel,.rubric-card,.data-table,.provider-console-form>section{border-radius:var(--radius-card);box-shadow:var(--shadow-card);background:#fff}.metric-grid article{padding:18px 20px}.metric-grid strong{font-size:28px}.data-table-head{background:var(--color-app-surface-subtle)}.editor-drawer{border-radius:var(--radius-container) 0 0 var(--radius-container)}.drawer-backdrop{background:#0c121d61}.subject-filter-panel{box-shadow:var(--shadow-card);margin-bottom:18px;padding:18px}.subject-filter-panel>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.subject-filter-panel>header h3{color:var(--color-app-text);margin:0;font-size:15px}.subject-filter-panel>header p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:11px}.subject-filter-panel>header>button{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:34px;color:var(--color-app-text-secondary);cursor:pointer;font:inherit;background:#fff;padding:0 12px;font-size:11px}.subject-filter-panel>header>button b{color:var(--color-app-text);font-family:var(--font-classroom-mono);margin-left:6px}.subject-filter-panel>header>button.active{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-color:#2f67f652}.subject-filter-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.subject-filter-grid>button{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-width:0;min-height:104px;color:var(--color-app-text-secondary);cursor:pointer;text-align:left;transition:border-color var(--dur-micro), background-color var(--dur-micro), transform var(--dur-micro);background:#fff;align-content:space-between;gap:7px;padding:13px 14px;display:grid}.subject-filter-grid>button:hover{background:var(--color-app-surface-subtle);border-color:#2f67f657}.subject-filter-grid>button:active{transform:scale(.99)}.subject-filter-grid>button.selected{border-color:var(--color-app-primary);background:var(--color-app-primary-soft);box-shadow:inset 0 0 0 1px var(--color-app-primary)}.subject-filter-grid>button>span{align-items:center;gap:8px;min-width:0;display:flex}.subject-filter-grid>button i{border:1px solid var(--color-app-border-strong);color:#fff;background:#fff;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;font-size:11px;font-style:normal;display:grid}.subject-filter-grid>button.selected i{border-color:var(--color-app-primary);background:var(--color-app-primary)}.subject-filter-grid>button strong{color:var(--color-app-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.subject-filter-grid>button small{font-size:10px}.subject-filter-grid>button footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.subject-filter-grid>button em{color:var(--color-app-text-secondary);font-size:10px;font-style:normal}.subject-filter-grid .status-pill{padding:3px 7px;font-size:9px}.subject-filter-result{border-top:1px solid var(--color-app-border);min-height:34px;color:var(--color-app-text-secondary);align-items:center;gap:12px;margin-top:14px;padding-top:12px;font-size:10px;display:flex}.subject-filter-result strong{color:var(--color-app-text);margin-left:auto;font-size:11px}.subject-filter-result button{color:var(--color-app-primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:10px}.model-preview-workbench{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px;height:min(690px,100dvh - 150px);display:grid}.model-preview-stage{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background-color:#eef2f7;background-image:linear-gradient(45deg,#5a697e0e 25%,#0000 25%),linear-gradient(-45deg,#5a697e0e 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#5a697e0e 75%),linear-gradient(-45deg,#0000 75%,#5a697e0e 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px;min-height:520px;position:relative;overflow:hidden}.model-preview-stage:after{content:"";background:linear-gradient(90deg,#0000,#4e5c6f33,#0000);height:1px;position:absolute;bottom:4%;left:8%;right:8%}.model-preview-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.model-preview-state{z-index:2;color:var(--color-app-text-secondary);text-align:center;background:#f4f7fbc2;align-content:center;place-items:center;gap:7px;display:grid;position:absolute;inset:0}.model-preview-state i{color:#fff;background:var(--color-app-danger);border-radius:50%;place-items:center;width:28px;height:28px;font-style:normal;display:grid}.model-preview-state strong{color:var(--color-app-text);font-size:13px}.model-preview-state span{max-width:320px;font-size:10px;line-height:1.6}.model-preview-console{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;flex-direction:column;min-height:0;padding:18px;display:flex}.model-preview-console header h3{margin:14px 0 6px;font-size:17px}.model-preview-console header p{min-height:34px;color:var(--color-app-text-secondary);margin:0;font-size:10px;line-height:1.65}.model-preview-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px;display:grid}.model-preview-motion-grid button{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:38px;color:var(--color-app-text);background:var(--color-app-surface-subtle);cursor:pointer;font:inherit;transition:border-color var(--dur-micro), background-color var(--dur-micro), transform var(--dur-micro);padding:0 10px;font-size:11px}.model-preview-motion-grid button:hover:not(:disabled){color:var(--color-app-primary);background:var(--color-app-primary-soft);border-color:#2f67f666}.model-preview-motion-grid button:active:not(:disabled){transform:scale(.98)}.model-preview-motion-grid button:disabled{cursor:wait;opacity:.5}.model-preview-console>footer{border-radius:var(--radius-control);color:var(--color-app-primary);background:var(--color-app-primary-soft);gap:5px;margin-top:auto;padding:13px;display:grid}.model-preview-console>footer strong{font-size:10px}.model-preview-console>footer span{color:var(--color-app-text-secondary);font-size:9px;line-height:1.6}.model-form-section{border-bottom:1px solid var(--color-app-border);gap:4px;margin-top:4px;padding:12px 0 8px;display:grid}.model-form-section:not(:first-child){margin-top:12px}.model-form-section strong{color:var(--color-app-text);font-size:12px}.model-form-section span{color:var(--color-app-text-secondary);font-size:9px;line-height:1.55}@media (width<=900px){.model-preview-workbench{grid-template-columns:1fr;height:auto}.model-preview-stage{min-height:460px}.model-preview-console>footer{margin-top:18px}}.mobile-classroom-blocker{display:none}.classroom-stage{--scene-top:5.5rem;--scene-right:1rem;--scene-bottom:4.75rem;--scene-left:6rem;color:var(--color-classroom-text)}.classroom-stage.has-transcript{--scene-right:19.75rem}.classroom-stage.has-side-drawer{--scene-left:27.5rem}.classroom-stage .glass-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141d2cdb;border-color:#e6f0fc38;box-shadow:0 8px 26px #070d1833}.classroom-color-wash{mix-blend-mode:multiply;background:linear-gradient(#182a4817,#182a4805 55%,#111e3421)}.classroom-status-stack{width:232px;color:var(--color-classroom-text);gap:6px;top:12px;left:12px}.top-online{border-radius:10px;height:42px;font-size:12px}.voice-status{border-radius:10px;min-height:48px}.class-title{border-radius:12px;width:clamp(280px,28vw,430px);height:48px;font-size:clamp(15px,1.45vw,22px);top:12px}.class-timer{width:202px;height:72px;color:var(--color-classroom-text);border-radius:12px;top:12px;right:12px}.class-toolbar{width:68px;color:var(--color-classroom-text);border-radius:12px;padding:8px 6px;left:12px}.class-toolbar button{min-height:52px;color:inherit;border-radius:8px}.class-toolbar button:hover,.class-toolbar button.active{background:#4a86ff47}.side-drawer{width:330px;color:var(--color-classroom-text);border-radius:12px;padding:20px;top:96px;bottom:68px;left:92px}.transcript-toggle{color:var(--color-classroom-text);border-radius:8px;top:94px;right:12px}.transcript-panel{width:286px;color:var(--color-classroom-text);border-radius:12px;top:134px;bottom:68px;right:12px}.transcript-panel button{color:inherit}.classroom-command-bar{border-radius:12px;bottom:12px}.end-class-button,.network-warning{border-radius:8px}.student-meta{gap:4px;top:auto;bottom:0}.student-name-tag{height:24px;color:var(--color-classroom-text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#131c2ae0;border-color:#e0edfb47;border-radius:6px;padding-inline:7px}.student-name-tag strong{color:inherit;font-size:10px}.student-state-chip{border-radius:6px;padding:4px 6px;font-size:9px}.student-speech{border-radius:10px 10px 10px 3px}.setup-overlay{background:var(--color-app-canvas);-webkit-backdrop-filter:none;backdrop-filter:none;padding:24px}.classroom-stage .setup-dialog{border:1px solid var(--color-app-border);width:min(1040px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--color-app-text);box-shadow:var(--shadow-overlay);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-radius:16px}.setup-dialog>header{border-color:var(--color-app-border)}.setup-dialog h1{color:var(--color-app-text);font-size:25px}.setup-dialog small{color:var(--color-app-text-tertiary);letter-spacing:0}.setup-dialog>nav{border-bottom:1px solid var(--color-app-border)}.setup-dialog>nav button{color:var(--color-app-text-secondary);border-radius:8px 8px 0 0}.setup-dialog>nav button.active{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.setup-progress{border-color:var(--color-app-border)}.setup-progress li{color:var(--color-app-text-tertiary)}.setup-progress li.active{color:var(--color-app-primary)}.setup-dialog>footer{border-color:var(--color-app-border)}.start-class-button{background:var(--color-app-primary);border-radius:8px}.reset-button{border-radius:8px}.formal-model-preview,.objective-card,.student-config-card{border-radius:10px}.report-dialog{border-radius:16px}.preflight-overlay{z-index:120;color:var(--color-app-text);background:var(--color-app-canvas);grid-template-columns:240px minmax(0,1fr);display:grid;position:fixed;inset:0}.preflight-sidebar.app-sidebar{width:auto;height:100dvh;position:static}.preflight-sidebar footer{grid-template-columns:32px minmax(0,1fr)}.preflight-account{min-width:0}.preflight-account strong,.preflight-account span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.preflight-account strong{font-size:12px}.preflight-account span{color:var(--color-sidebar-muted);margin-top:2px;font-size:10px}.preflight-workspace{min-width:0;height:100dvh;overflow:hidden}.preflight-topbar{flex:none}.preflight-body{background:var(--color-app-canvas);flex-direction:column;gap:20px;height:calc(100dvh - 96px);padding:28px 32px 32px;display:flex;overflow:auto}.preflight-course-card{min-height:160px;box-shadow:none;flex-direction:column;flex:none;justify-content:space-between;padding:20px;display:flex}.preflight-course-summary{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.preflight-course-summary>div{min-width:0}.preflight-course-summary>div>span{color:var(--color-app-primary);font-size:12px;font-weight:650}.preflight-course-summary h2{text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:20px;line-height:28px;overflow:hidden}.preflight-course-summary p{color:var(--color-app-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.preflight-course-summary aside{flex:none;gap:7px;display:flex}.preflight-steps{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0 0;padding:0;list-style:none;display:grid}.preflight-steps li{min-width:0;color:var(--color-app-text-secondary);align-items:center;gap:10px;display:flex;position:relative}.preflight-steps li:not(:last-child):after{z-index:0;content:"";background:var(--color-app-border);width:calc(100% - 112px);height:1px;position:absolute;top:14px;right:16px}.preflight-steps li.complete:not(:last-child):after{background:var(--color-app-success)}.preflight-steps i{z-index:1;width:28px;height:28px;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);border-radius:50%;flex:none;place-items:center;font-size:11px;font-style:normal;display:grid;position:relative}.preflight-steps li.active i{color:#fff;background:var(--color-app-primary)}.preflight-steps li.complete i{color:#fff;background:var(--color-app-success)}.preflight-steps div{gap:1px;min-width:0;display:grid}.preflight-steps strong,.preflight-steps span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:16px;overflow:hidden}.preflight-steps strong{color:var(--color-app-text);font-weight:650}.preflight-steps span{color:var(--color-app-text-tertiary)}.preflight-grid{grid-template-columns:minmax(0,1fr) minmax(340px,386px);align-items:stretch;gap:20px;min-height:648px;display:grid}.preflight-config-card,.preflight-readiness-card{min-width:0;box-shadow:none;padding:20px}.preflight-config-card>header,.preflight-readiness-card>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.preflight-config-card h2,.preflight-readiness-card h2{margin:0;font-size:20px;line-height:28px}.preflight-config-card header p,.preflight-readiness-card header p{color:var(--color-app-text-secondary);margin:3px 0 0;font-size:12px;line-height:16px}.preflight-students{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.preflight-student-card{border:1px solid var(--color-app-border);background:#fff;border-radius:10px;flex-direction:column;justify-content:space-between;min-width:0;height:148px;padding:14px;display:flex}.preflight-student-card>header{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.preflight-student-avatar{width:36px;height:36px;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-size:12px;font-weight:650;display:grid}.preflight-student-card header div:nth-child(2){min-width:0}.preflight-student-card header strong,.preflight-student-card header span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.preflight-student-card header strong{font-size:12px}.preflight-student-card header span:not(.status-tag){color:var(--color-app-text-tertiary);margin-top:2px;font-size:11px}.preflight-student-card>div:last-child{background:var(--color-app-surface-subtle);border-radius:8px;align-content:center;gap:5px;min-width:0;height:60px;padding:10px;display:grid;overflow:hidden}.preflight-student-card>div:last-child strong,.preflight-student-card>div:last-child span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.preflight-student-card>div:last-child strong{font-weight:550}.preflight-student-card>div:last-child span{color:var(--color-app-text-secondary)}.preflight-parameter-heading{justify-content:space-between;align-items:center;gap:16px;margin:18px 0 10px;display:flex}.preflight-parameter-heading strong,.preflight-parameter-heading span{font-size:12px}.preflight-parameter-heading span{color:var(--color-app-text-tertiary)}.preflight-parameters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.preflight-parameters label,.preflight-device-select{min-width:0;color:var(--color-app-text);gap:6px;font-size:12px;font-weight:600;display:grid}.preflight-parameters select,.preflight-device-select select{border:1px solid var(--color-app-border);border-radius:var(--radius-control);width:100%;height:40px;color:var(--color-app-text);font:inherit;background:#fff;padding:0 34px 0 12px}.preflight-parameters select:disabled,.preflight-device-select select:disabled{color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle)}.preflight-parameters small,.preflight-device-select small{color:var(--color-app-text-tertiary);font-size:10px;font-weight:400;line-height:14px}.preflight-info{min-height:64px;color:var(--color-app-info);background:var(--color-app-info-soft);border-radius:8px;align-items:flex-start;gap:12px;margin-top:14px;padding:12px 16px;display:flex}.preflight-info>i{color:#fff;background:var(--color-app-info);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:12px;font-style:normal;font-weight:700;display:grid}.preflight-info strong{font-size:12px;display:block}.preflight-info p{color:var(--color-app-text-secondary);margin:3px 0 0;font-size:11px;line-height:16px}.preflight-device-select{margin-top:18px}.preflight-services{background:var(--color-app-surface-subtle);border-radius:8px;margin-top:14px;padding:6px 12px}.preflight-services>div{border-top:1px solid var(--color-app-border);justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex}.preflight-services>div:first-child{border-top:0}.preflight-services>div>div{gap:1px;min-width:0;display:grid}.preflight-services strong,.preflight-services div span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.preflight-services div span{color:var(--color-app-text-tertiary)}.preflight-services>div>.status-tag{flex:none}.preflight-error{color:var(--color-app-danger);background:var(--color-app-danger-soft);border:1px solid #f2c5c9;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:11px;line-height:16px}.preflight-waiting-room{background:var(--color-app-primary-soft);border-radius:10px;flex-direction:column;min-height:130px;margin-top:14px;padding:14px;display:flex}.preflight-waiting-room.prepared{background:var(--color-app-success-soft)}.preflight-waiting-room>strong{font-size:12px}.preflight-waiting-room>p{color:var(--color-app-text-secondary);margin:7px 0 10px;font-size:11px;line-height:16px}.preflight-waiting-room>div{justify-content:flex-end;gap:8px;margin-top:auto;display:flex}.preflight-reset{color:var(--color-app-text-tertiary);cursor:pointer;background:0 0;border:0;margin:12px auto 0;font-size:11px;display:block}.preflight-reset:hover{color:var(--color-app-text-secondary)}.classroom-stage{height:100dvh;color:var(--color-classroom-text);background:var(--color-classroom-ink);grid-template-rows:64px minmax(0,1fr) 76px;gap:12px;padding:16px;display:grid;overflow:hidden}.classroom-stage.setup-mode{padding:0;display:block}.classroom-stage.setup-mode .classroom-live-grid{width:100%;height:100%;display:block}.classroom-stage.setup-mode .classroom-scene{border:0;border-radius:0;width:100%;height:100%}.classroom-status-header{border-radius:16px;grid-template-columns:minmax(250px,390px) minmax(260px,1fr) minmax(280px,390px);align-items:center;gap:16px;min-width:0;height:64px;padding:0 16px;display:grid;position:static}.classroom-presence{align-items:center;gap:10px;min-width:0;display:flex}.classroom-presence>strong,.classroom-presence>em{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.classroom-presence>strong{font-weight:550}.classroom-presence>em{color:var(--color-classroom-muted);font-style:normal}.classroom-presence>i{background:var(--color-classroom-line);flex:none;width:1px;height:20px}.voice-dot{background:var(--color-classroom-accent);border-radius:50%;flex:none;width:7px;height:7px}.voice-dot.error{background:var(--color-classroom-danger)}.voice-dot.suspended{background:var(--color-classroom-warning)}.classroom-heading{justify-items:center;gap:1px;min-width:0;display:grid}.classroom-heading strong,.classroom-heading span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.classroom-heading strong{font-size:20px;line-height:28px}.classroom-heading span{color:var(--color-classroom-muted);font-size:12px;line-height:16px}.classroom-header-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.classroom-header-actions>div{justify-items:end;display:grid}.classroom-header-actions>div span{color:var(--color-classroom-muted);font-size:11px}.classroom-header-actions>div strong{color:var(--color-classroom-accent);font-family:var(--font-classroom-mono);letter-spacing:.03em;font-size:28px;line-height:32px}.classroom-header-actions .pause-button{flex:none;width:40px;height:40px;position:static;transform:none}.classroom-header-actions .pause-button:active{transform:scale(.97)}.header-transcript-button{border:var(--rule-classroom);min-height:36px;color:var(--color-classroom-text);background:var(--color-classroom-panel-soft);cursor:pointer;border-radius:8px;padding:0 11px;font-size:11px}.classroom-live-grid{grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;min-height:0;display:grid;overflow:hidden}.classroom-stage.has-transcript:not(.has-side-drawer) .classroom-live-grid{grid-template-columns:minmax(0,1fr) 360px}.classroom-stage.has-side-drawer .classroom-live-grid{grid-template-columns:330px minmax(0,1fr)}.classroom-scene{border:var(--rule-classroom);background:#cfdbe2;border-radius:16px;width:auto;min-width:0;height:auto;min-height:0;position:relative;inset:auto;overflow:hidden}.classroom-scene .classroom-photo{border-radius:inherit;filter:none}.classroom-scene .classroom-color-wash{border-radius:inherit;mix-blend-mode:normal;background:0 0}.classroom-stage-badge{z-index:8;max-width:min(310px,42%);min-height:30px;color:var(--color-classroom-text);background:var(--color-classroom-panel);text-overflow:ellipsis;white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:7px 10px;font-size:11px;line-height:16px;display:flex;position:absolute;top:14px;overflow:hidden}.classroom-stage-badge span{background:var(--color-classroom-success);border-radius:50%;flex:none;width:7px;height:7px}.classroom-stage-badge.model{left:14px}.classroom-stage-badge.event{right:14px}.classroom-stage-badge.event span{background:var(--color-classroom-warning)}.classroom-live-grid .transcript-panel,.classroom-live-grid .side-drawer{border-radius:16px;width:auto;min-width:0;height:100%;min-height:0;position:static;inset:auto;transform:none}.classroom-live-grid .transcript-panel{background:var(--color-classroom-ink);grid-template-rows:72px minmax(0,1fr) 44px;display:grid}.classroom-live-grid .transcript-panel>header{padding:0 18px}.classroom-live-grid .transcript-panel>header small{color:var(--color-classroom-accent)}.classroom-live-grid .transcript-actions{align-items:center}.classroom-live-grid .transcript-actions>span{color:var(--color-classroom-muted);align-items:center;gap:7px;font-size:10px;display:flex}.classroom-live-grid .transcript-actions>span i{background:var(--color-classroom-success);border-radius:50%;width:7px;height:7px}.classroom-live-grid .transcript-actions button{min-width:30px;min-height:30px;color:var(--color-classroom-muted);background:0 0;border:0;font-size:20px}.classroom-live-grid .transcript-list{padding:6px 18px 18px}.classroom-live-grid .transcript-list article{padding:10px 0}.classroom-live-grid .transcript-list article p{font-size:13px;line-height:1.55}.classroom-live-grid .transcript-panel>footer{text-align:left;justify-content:space-between;align-items:center;padding:0 18px;display:flex}.classroom-live-grid .transcript-panel>footer button{color:var(--color-classroom-accent);cursor:pointer;background:0 0;border:0;font-size:11px}.classroom-live-grid .transcript-panel>footer button:disabled{opacity:.4}.classroom-live-grid .side-drawer{background:var(--color-classroom-panel);animation:classroom-panel-enter .16s var(--ease-out);padding:20px;overflow:auto}.classroom-live-grid .side-drawer h2{font-size:18px}.classroom-live-grid .side-drawer>header button,.classroom-live-grid .drawer-students button,.classroom-live-grid .drawer-metrics div{border-radius:8px}.classroom-footer-grid{grid-template-columns:minmax(224px,284px) minmax(360px,1fr) minmax(260px,360px);gap:12px;min-width:0;height:76px;display:grid}.classroom-footer-grid .class-toolbar{border-radius:16px;flex-direction:row;align-items:center;gap:6px;width:auto;height:76px;padding:12px;display:flex;position:static;transform:none}.classroom-footer-grid .class-toolbar button{border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:40px;padding:0 8px;display:flex}.classroom-footer-grid .class-toolbar button svg{flex:none;width:18px;height:18px}.classroom-footer-grid .class-toolbar button>span{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;overflow:hidden}.classroom-footer-grid .classroom-command-bar{background:var(--color-classroom-ink);border-radius:16px;justify-content:space-between;width:auto;height:76px;min-height:0;padding:0 14px 0 20px;position:static;transform:none}.classroom-command-bar>span{grid-template-columns:8px minmax(0,1fr);column-gap:10px;min-width:0;display:grid}.classroom-command-bar>span i{grid-row:1/3;align-self:center}.classroom-command-bar>span small{color:var(--color-classroom-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;overflow:hidden}.classroom-footer-grid .end-class-button{min-width:100px;height:40px;color:var(--color-classroom-ink);background:#fff;flex:none}.classroom-save-status{border-radius:16px;align-items:center;gap:10px;height:76px;padding:0 14px;display:flex}.classroom-save-status>span{background:var(--color-classroom-success);border-radius:50%;flex:none;width:9px;height:9px}.classroom-save-status div{gap:2px;min-width:0;display:grid}.classroom-save-status strong,.classroom-save-status small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.classroom-save-status strong{font-size:12px}.classroom-save-status small{color:var(--color-classroom-muted);font-size:10px}.classroom-stage .student-meta{top:0;bottom:auto;left:0}.classroom-stage .network-warning{max-width:360px;bottom:96px;right:388px}.classroom-stage .student-ui-layer .student-overlay .desk-nameplate{pointer-events:none;will-change:transform;min-width:0;max-width:none;transition:transform 90ms linear;display:inline-flex}.classroom-stage .student-speech{text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:7px;width:auto;max-width:116px;padding:6px 9px;font-size:10px;line-height:14px;top:auto;bottom:36px;overflow:hidden}.app-sidebar footer .app-account-open{text-align:left;width:auto;min-width:0;height:auto;padding:3px 2px;display:block}.app-sidebar footer .app-account-open:hover{background:0 0}.classroom-wizard-steps{border-radius:var(--radius-control);background:var(--color-app-surface-subtle);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.classroom-wizard-steps button{min-height:52px;color:var(--color-app-text-tertiary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:7px 8px;display:flex}.classroom-wizard-steps button:hover{color:var(--color-app-text);background:#fff}.classroom-wizard-steps button.active{color:var(--color-app-primary);box-shadow:var(--shadow-card);background:#fff}.classroom-wizard-steps button.complete{color:var(--color-app-success)}.classroom-default-toggle{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:48px;color:var(--color-app-text);background:var(--color-app-surface-subtle);cursor:pointer;align-items:flex-start;gap:9px;padding:10px 12px;display:flex!important}.classroom-default-toggle input{width:16px;height:16px;accent-color:var(--color-app-primary);flex:none;margin:2px 0 0}.classroom-default-toggle>span{gap:2px;min-width:0;display:grid}.classroom-default-toggle strong{font-size:11px;font-weight:650}.classroom-default-toggle small{color:var(--color-app-text-tertiary);font-size:10px;line-height:14px}.classroom-wizard-steps i{border:1px solid;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:9px;font-style:normal;display:grid}.classroom-wizard-steps span{font-size:10px;font-weight:650}.classroom-wizard-panel{display:none}.classroom-wizard-panel.active{animation:.16s cubic-bezier(.2,.7,.2,1) both app-panel-in;display:block}.classroom-wizard-panel>.drawer-form{padding:2px 0}.publish-checklist{border:1px solid var(--color-app-border);border-radius:var(--radius-control);background:var(--color-app-surface-subtle);margin-top:18px;padding:16px}.publish-checklist h3{margin:0 0 12px;font-size:12px}.publish-checklist>div{border-top:1px solid var(--color-app-border);align-items:center;gap:9px;min-height:34px;font-size:10px;display:flex}.publish-checklist>div:first-of-type{border-top:0}.publish-checklist i{border-radius:50%;place-items:center;width:19px;height:19px;font-size:9px;font-style:normal;display:grid}.publish-checklist .pass i{color:var(--color-app-success);background:var(--color-app-success-soft)}.publish-checklist .pending i{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.publish-checklist p{color:var(--color-app-text-tertiary);margin:12px 0 0;font-size:9px;line-height:1.6}.classroom-wizard-actions{border-top:1px solid var(--color-app-border);grid-template-columns:110px 1fr 110px;align-items:center;gap:10px;padding-top:14px;display:grid}.classroom-wizard-actions>span{color:var(--color-app-text-tertiary);text-align:center;font-size:9px}.classroom-wizard-actions>button{border-radius:var(--radius-control);min-height:36px}.classroom-wizard-actions>button:not(.primary-action){border:1px solid var(--color-app-border);color:var(--color-app-text-secondary);background:#fff}.classroom-wizard-actions>button:disabled{opacity:.42;cursor:not-allowed}.account-modal{width:min(440px,100%)}.account-modal form footer{justify-content:flex-end;gap:8px;display:flex}.account-success{border-radius:var(--radius-control);color:var(--color-app-success);background:var(--color-app-success-soft);border:1px solid #bfe3d1;padding:11px 13px;font-size:11px}@keyframes app-panel-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.history-snapshot-note>b,.history-state-note>b{color:#fff;background:var(--color-app-info)}.history-state-note.warning>b{background:var(--color-app-warning)}.history-table.trainee>.history-table-title{min-width:720px}.history-table.trainee>header,.history-table.trainee>a{grid-template-columns:125px minmax(280px,1fr) 110px 90px 90px;min-width:720px}.report-overview{min-height:156px;box-shadow:none;grid-template-columns:132px minmax(0,1fr) 280px;gap:24px;padding:20px}.report-score{height:116px;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;display:flex}.report-score strong{font-size:40px;line-height:48px}.report-score span{margin:0;font-size:12px}.report-overview h2{margin:8px 0;font-size:20px;line-height:28px}.report-overview p{font-size:12px;line-height:16px}.report-overview dl{align-content:center;gap:8px;min-width:0;height:110px;padding-left:20px;display:grid}.report-overview dl div{grid-template-columns:66px minmax(0,1fr);padding:0}.report-overview dt,.report-overview dd{font-size:12px}.report-main-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;margin-top:20px;display:grid}.report-evidence-column{min-width:0}.report-main-grid .report-section{margin-top:0}.report-main-grid .ui-section-heading{align-items:center}.report-main-grid .ui-section-heading h2{font-size:20px;line-height:28px}.report-main-grid .ui-section-heading p{font-size:12px}.report-score-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.report-score-list article{min-height:184px;box-shadow:none;flex-direction:column;padding:16px;display:flex}.report-score-list header{align-items:center}.report-score-list h3{font-size:12px;font-weight:650}.report-score-list header>strong{color:var(--color-app-primary);font-size:12px}.report-rationale{min-height:32px;color:var(--color-app-text-secondary);margin:10px 0;font-size:12px;line-height:16px}.report-score-list blockquote{background:var(--color-app-primary-soft);border:0;border-radius:8px;min-height:78px;margin:auto 0 0;padding:10px}.report-score-list blockquote p{font-size:12px;line-height:16px}.report-score-list blockquote footer{font-size:11px}.report-score-list details{border:0;margin-top:8px;padding-top:0}.report-score-list summary{font-size:11px}.report-no-evidence{min-height:54px;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);border-radius:8px;place-items:center;margin-top:auto;padding:10px;font-size:11px;display:grid}.report-score-list article{min-height:132px}.report-score-meta{align-items:center;gap:9px;margin-left:auto;display:flex}.report-score-meta>strong{color:var(--color-app-primary);font-family:var(--font-classroom-mono);white-space:nowrap;font-size:12px}.report-rationale{line-height:1.75}.report-inline-citation{vertical-align:baseline;margin:0 1px;font-size:.72em;line-height:0;position:relative;top:-.2em}.report-inline-citation button{min-width:18px;color:var(--color-app-primary);font-family:var(--font-classroom-mono);font-size:inherit;cursor:help;background:0 0;border:0;border-radius:3px;margin:0;padding:1px 2px;font-weight:700;line-height:1}.report-inline-citation button:hover,.report-inline-citation button:focus-visible{color:#174da8;background:var(--color-app-primary-soft);outline-offset:1px;outline:2px solid #2563eb33}.report-citation-tooltip-layer{z-index:1000;border:1px solid var(--color-app-border);color:var(--color-app-text-secondary);background:var(--color-app-surface);font-family:var(--font-app);pointer-events:none;animation:report-tooltip-in .12s var(--ease-out);border-radius:8px;gap:5px;padding:12px 14px;font-size:12px;font-weight:400;line-height:18px;display:grid;position:fixed;box-shadow:0 16px 42px #0f1f3d33}.report-citation-tooltip-layer strong{color:var(--color-app-text);font-size:11px}.report-citation-tooltip-layer>span{overflow-wrap:anywhere}.report-citation-tooltip-layer:before{content:"";border-radius:inherit;box-shadow:inset 3px 0 0 var(--color-app-primary);pointer-events:none;position:absolute;inset:0}@keyframes report-tooltip-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.report-behavior{margin-top:14px!important}.report-behavior .ui-section-heading{margin-bottom:10px}.behavior-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.behavior-grid article{min-height:72px;box-shadow:none;place-content:center;padding:10px;display:grid}.behavior-grid strong{font-size:15px}.behavior-grid span{margin-top:4px;font-size:10px}.report-visual-note{border-radius:var(--radius-control);min-height:64px;color:var(--color-app-info);background:var(--color-app-info-soft);align-items:flex-start;gap:12px;margin-top:12px;padding:12px 16px;display:flex}.report-visual-note>b{color:#fff;background:var(--color-app-info);width:22px;height:22px;font-family:var(--font-classroom-mono);border-radius:50%;flex:none;place-items:center;font-size:12px;display:grid}.report-visual-note>span{gap:4px;display:grid}.report-visual-note strong{font-size:12px}.report-visual-note small{color:var(--color-app-text-secondary);font-size:11px;line-height:16px}.report-guidance{min-width:0;box-shadow:none;padding:16px}.report-guidance>header h2{margin:0;font-size:20px;line-height:28px}.report-guidance>header p{color:var(--color-app-text-secondary);margin:3px 0 14px;font-size:12px}.report-guidance>section:not(.report-comments-v1){border-radius:9px;min-height:118px;margin-top:10px;padding:12px}.report-guidance>section h3{margin:0 0 8px;font-size:12px}.report-guidance>section p{color:var(--color-app-text-secondary);margin:5px 0;font-size:12px;line-height:16px}.report-guidance>section p:before{content:"•";margin-right:6px}.report-guidance>section span{color:var(--color-app-text-tertiary);font-size:11px}.report-guidance .strength{background:var(--color-app-success-soft)}.report-guidance .improvement{background:var(--color-app-warning-soft)}.report-guidance .next{background:var(--color-app-primary-soft)}.report-guidance .report-comments-v1{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);border-radius:9px;margin-top:10px;padding:12px}.report-guidance .report-comments-v1 h2{font-size:12px}.report-guidance .report-comments-v1 header p{font-size:10px;line-height:15px}.report-guidance .report-comments-v1 form{margin:12px 0}.report-guidance .compact-empty{color:var(--color-app-text-tertiary);padding:14px 0;font-size:11px}.report-comments-standalone{margin-top:20px;padding:20px}.report-comments-standalone .report-comments-v1{margin:0;padding:0}.profile-summary-v2{min-height:142px;box-shadow:none;padding:18px 20px 16px}.profile-summary-v2>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.profile-summary-v2 h2{margin:0;font-size:20px;line-height:30px}.profile-summary-v2 header p{color:var(--color-app-text-secondary);margin:2px 0 0;font-size:12px}.profile-summary-v2>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.profile-summary-v2 article{background:var(--color-app-surface-subtle);border-radius:8px;align-items:center;gap:14px;height:42px;padding:0 12px;display:flex}.profile-summary-v2 article strong{min-width:34px;font-family:var(--font-classroom-mono);font-size:18px}.profile-summary-v2 article span{color:var(--color-app-text-secondary);font-size:12px}.profile-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:16px;margin-top:14px}.profile-ability,.profile-style{min-height:372px;box-shadow:none;padding:18px 20px}.profile-ability>header,.profile-style>header{margin-bottom:16px}.profile-ability h2,.profile-style h2{font-size:18px;line-height:26px}.profile-ability header p,.profile-style header p{color:var(--color-app-text-secondary);margin:2px 0 0;font-size:12px}.profile-ability article{grid-template-columns:190px minmax(140px,1fr) 42px;align-items:center;gap:14px;min-height:45px;margin:0;display:grid}.profile-ability article>strong{font-size:13px}.profile-ability article>i{height:10px;margin:0}.profile-ability article>span{color:var(--color-app-text);font-family:var(--font-classroom-mono);text-align:right;font-size:13px}.profile-style>article{background:var(--color-app-surface-subtle);border:0;border-radius:10px;min-height:100px;padding:14px}.profile-style>article+article{margin-top:12px}.profile-style article header{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-style article header strong{font-size:15px}.profile-style article small{color:var(--color-app-text-secondary);margin-top:5px;font-size:11px;display:block}.profile-style article p{color:var(--color-app-text-secondary);margin:8px 0 0;font-size:12px}.profile-style>footer{color:var(--color-app-warning);background:var(--color-app-warning-soft);border-radius:8px;margin-top:14px;padding:11px 14px;font-size:11px}.observation-section{min-height:318px;box-shadow:none;margin-top:14px;padding:18px 20px 14px}.observation-section>header{margin-bottom:14px}.observation-section h2{font-size:18px;line-height:26px}.observation-section header p{font-size:12px}.observation-section>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.observation-section article{background:var(--color-app-surface-subtle);border:0;border-radius:10px;min-height:142px;padding:14px}.observation-section article strong,.observation-section article b,.observation-section article>span{display:block}.observation-section article strong{font-size:14px}.observation-section article b{color:var(--color-app-primary);margin-top:7px;font-size:11px}.observation-section article>span{margin-top:5px;font-size:10px}.observation-section article p{color:var(--color-app-text-secondary);margin:9px 0 0;font-size:11px;line-height:1.55}.observation-section>footer{background:var(--color-app-primary-soft);border:0;border-radius:8px;align-items:flex-start;gap:14px;min-height:58px;margin-top:14px;padding:10px 14px;display:flex}.observation-section>footer strong{color:var(--color-app-primary);flex:none;font-size:11px}.observation-section>footer span{color:var(--color-app-text-secondary);font-size:11px;line-height:17px}.instructor-greeting{justify-content:space-between;align-items:flex-start;gap:20px;min-height:58px;margin-bottom:12px;display:flex}.instructor-greeting h2{margin:0;font-size:22px;line-height:32px}.instructor-greeting p{color:var(--color-app-text-secondary);margin:2px 0 0;font-size:13px}.instructor-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.instructor-stats article{min-height:108px;box-shadow:none;align-content:start;padding:14px 16px}.instructor-stats span{font-size:28px;line-height:38px}.instructor-stats strong{margin-top:0;font-size:13px}.instructor-stats small{margin-top:4px;font-size:10px;line-height:16px}.instructor-layout{grid-template-columns:minmax(0,1fr) minmax(320px,396px);gap:14px}.instructor-panel{min-height:306px;box-shadow:none;padding:16px}.instructor-panel .ui-section-heading{margin:0 0 10px}.instructor-panel .ui-section-heading h2{font-size:18px}.instructor-panel .ui-section-heading p{font-size:11px}.instructor-panel .review-list>a{border:0;border-radius:9px;grid-template-columns:40px minmax(0,1fr) 72px 44px;min-height:58px;padding:8px 10px}.instructor-panel .review-list>a+a{margin-top:6px}.instructor-panel .review-list>a:nth-child(odd){background:var(--color-app-surface-subtle)}.instructor-panel .review-list strong{font-size:12px}.instructor-panel .review-list span{font-size:10px}.instructor-focus-list{gap:8px;display:grid}.instructor-focus-list>a{min-height:64px;color:inherit;background:var(--color-app-surface-subtle);border-radius:9px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}.instructor-focus-list span strong,.instructor-focus-list span small{display:block}.instructor-focus-list span strong{font-size:12px}.instructor-focus-list span small{color:var(--color-app-text-secondary);margin-top:5px;font-size:10px}.instructor-focus-list b{color:var(--color-app-primary);font-size:10px}.instructor-panel>footer{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:8px;margin-top:12px;padding:11px 12px;font-size:10px}.instructor-active-tasks{min-height:188px;box-shadow:none;margin-top:14px;padding:16px 18px}.instructor-active-tasks .ui-section-heading{margin-bottom:8px}.instructor-active-tasks article{border-top:1px solid var(--color-app-border);grid-template-columns:minmax(180px,1.25fr) minmax(90px,.65fr) minmax(110px,.75fr) 110px minmax(150px,1fr) 44px;align-items:center;gap:14px;min-height:52px;font-size:11px;display:grid}.instructor-active-tasks article strong{font-size:12px}.instructor-active-tasks article span,.instructor-active-tasks article time{color:var(--color-app-text-secondary)}.instructor-active-tasks article i{background:#e8edf5;border-radius:4px;height:8px;overflow:hidden}.instructor-active-tasks article i b{border-radius:inherit;background:var(--color-app-primary);height:100%;display:block}.instructor-active-tasks article em{font-style:normal;font-weight:650}.task-editor-steps{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;height:64px;margin:-2px 0 14px;padding:0 20px;list-style:none;display:grid}.task-editor-steps li{color:var(--color-app-text-secondary);align-items:center;gap:12px;font-size:12px;display:flex;position:relative}.task-editor-steps li:not(:last-child):after{content:"";background:var(--color-app-border);flex:1;height:2px;margin-left:auto;margin-right:20px}.task-editor-steps b{width:32px;height:32px;color:var(--color-app-text-tertiary);background:#eef1f5;border-radius:50%;flex:none;place-items:center;display:grid}.task-editor-steps li.active b{color:#fff;background:var(--color-app-primary)}.task-editor-steps li.complete b{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.task-editor-steps li.complete:not(:last-child):after{background:var(--color-app-primary-soft)}.task-editor-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.task-editor-form{box-shadow:none;padding:18px 20px}.task-editor-form>header h2,.task-publish-review h2,.task-state-guide h2{margin:0;font-size:18px}.task-editor-form>header p,.task-publish-review header p{color:var(--color-app-text-secondary);margin:3px 0 0;font-size:11px;line-height:17px}.task-editor-form fieldset{border:0;margin:20px 0 0;padding:0}.task-editor-form legend{width:100%;color:var(--color-app-text);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:650;display:flex}.task-editor-form legend em{color:var(--color-app-success);background:var(--color-app-success-soft);border-radius:999px;padding:5px 10px;font-size:10px;font-style:normal}.task-editor-form label>span{color:var(--color-app-text-secondary);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.task-editor-form input,.task-editor-form select,.task-editor-form textarea{border:1px solid var(--color-app-border);border-radius:var(--radius-control);width:100%;min-height:40px;color:var(--color-app-text);font:inherit;background:#fff;padding:9px 11px}.task-editor-form textarea{resize:vertical}.task-trainee-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.task-trainee-grid>label{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);cursor:pointer;border-radius:9px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-height:50px;padding:8px 10px;display:grid}.task-trainee-grid>label.selected{background:var(--color-app-primary-soft);border-color:#b9cffd}.task-trainee-grid input{opacity:0;width:1px;height:1px;position:absolute}.task-trainee-grid label>b{width:32px;height:32px;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-size:11px;display:grid}.task-trainee-grid label>span{min-width:0;margin:0}.task-trainee-grid strong,.task-trainee-grid small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-trainee-grid strong{color:var(--color-app-text);font-size:11px}.task-trainee-grid small{color:var(--color-app-text-tertiary);margin-top:3px;font-size:9px}.task-template-snapshot{background:var(--color-app-primary-soft);border-radius:9px;gap:5px;min-height:80px;margin-top:10px;padding:12px 14px;display:grid}.task-template-snapshot strong{font-size:12px}.task-template-snapshot span{color:var(--color-app-text-secondary);font-size:10px}.task-template-snapshot small{color:var(--color-app-primary);font-size:10px}.task-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;display:grid}.task-metric-grid label{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:0 10px;display:flex}.task-metric-grid label.selected{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-color:#c9d9fc}.task-metric-grid input{width:16px;min-height:16px;padding:0}.task-metric-grid label>span{color:inherit;margin:0;font-size:11px}.task-requirement-grid{grid-template-columns:minmax(180px,1fr) 140px 210px;gap:12px;margin-top:12px;display:grid}.task-editor-layout>aside{gap:16px;display:grid}.task-publish-review,.task-state-guide{box-shadow:none;padding:18px 16px}.task-publish-review>div:not(.task-permission-note){background:var(--color-app-surface-subtle);border-radius:8px;align-items:center;gap:10px;min-height:48px;margin-top:10px;padding:7px 10px;display:flex}.task-publish-review>div>b{border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:10px;display:grid}.task-publish-review>div.pass>b{color:var(--color-app-success);background:var(--color-app-success-soft)}.task-publish-review>div.pending>b{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.task-publish-review>div span{gap:2px;min-width:0;display:grid}.task-publish-review>div small{color:var(--color-app-text-tertiary);font-size:9px}.task-publish-review>div strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.task-permission-note{min-height:58px;color:var(--color-app-warning);background:var(--color-app-warning-soft);border-radius:8px;gap:4px;margin:14px 0;padding:10px 12px;display:grid}.task-permission-note strong{font-size:10px}.task-permission-note span{color:var(--color-app-text-secondary);font-size:10px}.task-publish-review>.ui-button{width:100%}.task-state-guide p{color:var(--color-app-text-secondary);margin:12px 0;font-size:10px}.task-state-guide p b{font-family:var(--font-classroom-mono)}.task-state-guide footer{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:7px;padding:7px 10px;font-size:10px}.console-page{grid-template-columns:240px minmax(0,1fr)}.console-sidebar{border:0;border-radius:0;width:240px;height:100dvh;margin:0;padding:20px 16px 16px}.console-logo{gap:10px;height:40px;padding:0}.console-logo>span{border-radius:10px;width:40px;height:40px;font-size:18px}.console-logo strong{font-size:16px}.console-sidebar nav{margin-top:18px}.console-sidebar nav section{margin-top:8px}.console-sidebar nav section>small{color:#707b8d;letter-spacing:.08em;padding:0 12px;font-size:9px}.console-sidebar nav a{border-radius:8px;min-height:34px;margin-top:1px;padding:0 12px;font-size:11px}.console-sidebar footer{border-top:1px solid #ffffff14;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:12px 0 0;display:grid}.console-sidebar footer>b{width:32px;height:32px;color:var(--color-app-text);background:#eef2f8;border-radius:50%;place-items:center;font-size:11px;display:grid}.console-sidebar footer>span{min-width:0}.console-sidebar footer strong,.console-sidebar footer small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.console-sidebar footer strong{color:var(--color-sidebar-text);font-size:11px}.console-sidebar footer small{margin-top:2px;font-size:9px}.console-sidebar .console-sidebar-logout{min-width:52px;height:32px;color:var(--color-sidebar-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:0 7px;font-size:9px;display:inline-flex}.console-sidebar .console-sidebar-logout svg{width:15px;height:15px}.console-sidebar .console-sidebar-logout span{display:inline}.console-sidebar .console-sidebar-logout:hover{color:#fff;background:#ffffff12}.console-sidebar .console-sidebar-logout:disabled{opacity:.5;cursor:wait}.console-mobile-logout{display:none}.console-topbar{border-bottom:1px solid var(--color-app-border);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;height:96px;padding:0 32px}.console-topbar h1{margin:0;font-size:24px;font-weight:700}.console-topbar p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:13px}.console-topbar nav a{border-radius:var(--radius-control);border:1px solid #0000;min-height:40px;padding:0 14px}.console-topbar nav a:hover{background:var(--color-app-surface-subtle)}.console-topbar nav .console-primary-link{color:#fff;border-color:var(--color-app-primary);background:var(--color-app-primary);font-weight:650}.console-topbar nav .console-primary-link:hover{background:var(--color-app-primary-hover)}.console-content{width:100%;padding:28px 32px 64px}.admin-overview-v2{max-width:1280px;margin:0 auto}.admin-system-health{min-height:66px;box-shadow:none;align-items:center;gap:12px;padding:0 18px;display:flex}.admin-system-health>b{width:28px;height:28px;color:var(--color-app-success);background:var(--color-app-success-soft);border-radius:50%;flex:none;place-items:center;font-size:12px;display:grid}.admin-system-health>span{gap:3px;min-width:0;display:grid}.admin-system-health>span strong{font-size:13px}.admin-system-health>span small{color:var(--color-app-text-secondary);font-size:10px}.admin-system-health>em{margin-left:auto;font-style:normal}.device-binding-field{gap:8px;min-width:0;display:grid}.device-binding-heading{min-height:20px;color:var(--color-app-text-secondary);justify-content:space-between;align-items:baseline;gap:12px;font-size:11px;font-weight:650;display:flex}.device-binding-heading>strong{color:var(--color-app-primary);font-size:10px;font-weight:650}.device-binding-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-app-border-strong) transparent;gap:7px;max-height:272px;padding:2px;display:grid;overflow-y:auto}.device-binding-option{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-width:0;min-height:62px;color:var(--color-app-text);cursor:pointer;transition:border-color var(--dur-micro), background-color var(--dur-micro), box-shadow var(--dur-micro);background:#fff;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;display:grid;position:relative}.device-binding-option:hover{border-color:var(--color-app-border-strong);background:var(--color-app-surface-subtle)}.device-binding-option:focus-within{border-color:var(--color-app-primary);box-shadow:0 0 0 3px #2f67f61f}.device-binding-option.selected{border-color:var(--color-app-primary);background:var(--color-app-primary-soft);box-shadow:inset 0 0 0 1px #2f67f62e}.device-binding-option.disabled{color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);cursor:not-allowed;opacity:.72}.device-binding-option.disabled:hover{border-color:var(--color-app-border);background:var(--color-app-surface-subtle)}.device-binding-option>input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;position:absolute;overflow:hidden;width:1px!important;height:1px!important;min-height:1px!important;padding:0!important}.device-binding-check{border:1px solid var(--color-app-border-strong);color:#fff;background:#fff;border-radius:5px;place-items:center;width:18px;height:18px;font-size:11px;font-weight:750;line-height:1;display:grid}.device-binding-option.selected .device-binding-check{border-color:var(--color-app-primary);background:var(--color-app-primary)}.device-binding-option-copy{gap:3px;min-width:0;display:grid}.device-binding-option-copy strong,.device-binding-option-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.device-binding-option-copy strong{color:var(--color-app-text);font-size:11px;font-weight:650}.device-binding-option-copy small{color:var(--color-app-text-secondary);font-size:10px}.device-binding-statuses{flex-wrap:wrap;justify-content:flex-end;gap:4px;min-width:0;display:flex}.device-binding-statuses .status-tag{padding:3px 7px;font-size:9px}.device-binding-help{color:var(--color-app-text-tertiary);font-size:10px;font-weight:400;line-height:1.5}.device-binding-empty{margin:0}@media (width<=480px){.device-binding-option{grid-template-columns:20px minmax(0,1fr)}.device-binding-statuses{grid-column:2;justify-content:flex-start}}.admin-overview-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.admin-overview-metrics article{min-height:102px;box-shadow:none;align-content:start;padding:14px 17px;display:grid}.admin-overview-metrics strong{font-family:var(--font-classroom-mono);font-size:27px;line-height:38px}.admin-overview-metrics span{font-size:13px;font-weight:650}.admin-overview-metrics small{color:var(--color-app-text-secondary);margin-top:3px;font-size:10px}.admin-readiness-grid{grid-template-columns:minmax(0,1fr) minmax(320px,396px);gap:16px;margin-top:20px;display:grid}.admin-readiness,.admin-pending{min-height:388px;box-shadow:none;padding:18px 16px}.admin-readiness header,.admin-pending header,.admin-service-health header,.admin-recent-audit header{margin-bottom:12px}.admin-readiness h2,.admin-pending h2,.admin-service-health h2,.admin-recent-audit h2{margin:0;font-size:18px}.admin-readiness header p,.admin-pending header p,.admin-service-health header p,.admin-recent-audit header p{color:var(--color-app-text-secondary);margin:3px 0 0;font-size:11px}.admin-readiness>div{background:var(--color-app-surface-subtle);border-radius:8px;grid-template-columns:150px 110px minmax(0,1fr) 72px;align-items:center;gap:12px;min-height:46px;margin-top:8px;padding:0 14px;display:grid}.admin-readiness>div strong{font-size:11px}.admin-readiness>div span,.admin-readiness>div small{color:var(--color-app-text-secondary);font-size:10px}.admin-readiness>div em{font-style:normal}.admin-pending>a{min-height:54px;color:inherit;background:var(--color-app-surface-subtle);border-radius:8px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:10px;padding:0 12px;text-decoration:none;display:grid}.admin-pending>a>b{width:32px;height:32px;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-size:11px;display:grid}.admin-pending>a>b.warning{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.admin-pending>a span strong,.admin-pending>a span small{display:block}.admin-pending>a span strong{font-size:11px}.admin-pending>a span small{color:var(--color-app-text-secondary);margin-top:3px;font-size:9px}.admin-pending>a em{color:var(--color-app-primary);font-size:10px;font-style:normal}.admin-pending>footer{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:7px;margin-top:14px;padding:6px 10px;font-size:9px}.admin-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.admin-service-health,.admin-recent-audit{min-height:260px;box-shadow:none;padding:16px 18px}.admin-service-health>div{grid-template-columns:86px minmax(0,1fr) 72px 60px;align-items:center;gap:10px;min-height:38px;display:grid}.admin-service-health>div strong{font-size:10px}.admin-service-health>div span,.admin-service-health>div small{color:var(--color-app-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.admin-service-health>div em{font-style:normal}.admin-recent-audit>div{border-top:1px solid var(--color-app-border);grid-template-columns:90px minmax(0,1fr) 140px;align-items:center;gap:12px;min-height:38px;display:grid}.admin-recent-audit>div strong{font-size:9px}.admin-recent-audit>div span,.admin-recent-audit>div time{color:var(--color-app-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.admin-recent-audit>div time{text-align:right}.editor-drawer.wide-drawer{background:var(--color-app-canvas);flex-direction:column;width:min(1100px,100vw - 240px);padding:24px;display:flex;overflow:hidden}.editor-drawer.wide-drawer>header{flex:none;margin-bottom:18px}.classroom-wizard-form{flex:auto;grid-template-columns:176px minmax(0,1fr) 258px;align-items:stretch;gap:14px;min-height:0;display:grid}.classroom-wizard-form .classroom-wizard-steps{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;flex-direction:column;justify-content:flex-start;gap:4px;padding:8px;display:flex}.classroom-wizard-form .classroom-wizard-steps button{flex:none;min-height:64px;padding:10px}.classroom-wizard-form .classroom-wizard-steps button.active{background:var(--color-app-primary-soft);box-shadow:none}.classroom-wizard-form .classroom-wizard-steps button:hover{background:var(--color-app-surface-subtle)}.classroom-wizard-form .classroom-wizard-steps button.active:hover{background:var(--color-app-primary-soft)}.classroom-wizard-form .classroom-wizard-steps span{min-width:0;color:var(--color-app-text);font-size:11px}.classroom-wizard-form .classroom-wizard-steps span small{color:var(--color-app-text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;font-weight:450;display:block;overflow:hidden}.classroom-wizard-main{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.classroom-wizard-main .classroom-wizard-panel{min-height:0;padding:22px;overflow:auto}.classroom-wizard-panel>header{margin-bottom:20px}.classroom-wizard-panel>header>span{color:var(--color-app-primary);letter-spacing:.04em;font-size:9px;font-weight:700}.classroom-wizard-panel>header h3{color:var(--color-app-text);margin:5px 0 4px;font-size:18px}.classroom-wizard-panel>header p{color:var(--color-app-text-secondary);margin:0;font-size:10px;line-height:1.6}.classroom-wizard-main .classroom-wizard-actions{margin:0 22px;padding:14px 0 18px}.classroom-wizard-review{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;align-self:start;min-width:0;padding:18px 15px}.classroom-wizard-review h3{margin:0;font-size:15px}.classroom-wizard-review header p{color:var(--color-app-text-secondary);margin:4px 0 12px;font-size:9px}.classroom-wizard-review>div{border-top:1px solid var(--color-app-border);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:8px 6px;display:grid}.classroom-wizard-review>div i{border-radius:50%;place-items:center;width:20px;height:20px;font-size:9px;font-style:normal;display:grid}.classroom-wizard-review>div span{color:var(--color-app-text-secondary);font-size:9px;line-height:1.45}.classroom-wizard-review>div.pass i{color:var(--color-app-success);background:var(--color-app-success-soft)}.classroom-wizard-review>div.pending i{color:var(--color-app-warning);background:var(--color-app-warning-soft)}.classroom-wizard-review footer{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:8px;gap:3px;margin-top:12px;padding:10px;display:grid}.classroom-wizard-review footer strong{font-family:var(--font-classroom-mono);font-size:11px}.classroom-wizard-review footer span{font-size:9px}.classroom-seat-preview{border:1px solid var(--color-app-border);perspective:700px;background:linear-gradient(#eef4f8 0 47%,#d9d5ca 47% 100%);border-radius:12px;grid-template-rows:82px 100px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;column-gap:16px;height:222px;margin-bottom:18px;padding:18px 26px 16px;display:grid;overflow:hidden}.classroom-seat-preview>div{min-width:0;height:64px;color:var(--color-app-text-tertiary);transform-origin:bottom;background:#ffffffbd;border:1px solid #6e7e912e;border-radius:8px;grid-template-rows:1fr 1fr;grid-template-columns:28px minmax(0,1fr);align-items:center;column-gap:7px;padding:6px 8px 7px;display:grid;box-shadow:0 5px 12px #2d3a4514}.classroom-seat-preview>div.back{opacity:.88;grid-row:1;height:54px;transform:scale(.84)rotateX(-2deg)}.classroom-seat-preview>div.front{grid-row:2}.classroom-seat-preview>div.front_left,.classroom-seat-preview>div.back_left{grid-column:1}.classroom-seat-preview>div.front_center,.classroom-seat-preview>div.back_center{grid-column:2}.classroom-seat-preview>div.front_right,.classroom-seat-preview>div.back_right{grid-column:3}.classroom-seat-preview>div b{width:28px;height:28px;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);border-radius:50%;grid-row:1/3;place-items:center;font-size:10px;display:grid}.classroom-seat-preview>div small{font-size:8px}.classroom-seat-preview>div span{text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.classroom-seat-preview>div.occupied{color:var(--color-app-primary);background:#eef4ffeb;border-color:#b9cffd}.classroom-seat-preview>div.occupied b{color:#fff;background:var(--color-app-primary)}.classroom-snapshot-note{color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:9px;gap:5px;margin-top:18px;padding:14px;display:grid}.classroom-snapshot-note strong{font-size:11px}.classroom-snapshot-note span{color:var(--color-app-text-secondary);font-size:9px;line-height:1.55}.student-card-editor{flex:auto;grid-template-columns:176px minmax(0,1fr) 258px;align-items:stretch;gap:14px;min-height:0;display:grid}.student-card-tabs{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;flex-direction:column;gap:4px;padding:8px;display:flex}.student-card-tabs button{min-height:64px;color:var(--color-app-text-secondary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:10px;display:grid}.student-card-tabs button:hover{background:var(--color-app-surface-subtle)}.student-card-tabs button.active{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.student-card-tabs i{border:1px solid;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;font-style:normal;display:grid}.student-card-tabs span{min-width:0;color:var(--color-app-text);font-size:11px;font-weight:650}.student-card-tabs small{color:var(--color-app-text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;font-weight:450;display:block;overflow:hidden}.student-card-main{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.student-card-section{min-height:0;padding:22px;animation:.16s cubic-bezier(.2,.7,.2,1) both app-panel-in;overflow:auto}.student-card-section>header{margin-bottom:18px}.student-card-section>header>span{color:var(--color-app-primary);letter-spacing:.04em;font-size:9px;font-weight:700}.student-card-section>header h3{margin:5px 0 4px;font-size:18px}.student-card-section>header p{color:var(--color-app-text-secondary);margin:0;font-size:10px;line-height:1.6}.student-card-section .drawer-form{padding:0}.student-card-section .drawer-form label>span,.student-dialogue-list label>span,.student-ai-assistant label>span{color:var(--color-app-text-secondary);margin-bottom:6px;font-size:10px;font-weight:650;display:block}.student-card-section input,.student-card-section select,.student-card-section textarea,.student-ai-assistant textarea{border:1px solid var(--color-app-border);border-radius:var(--radius-control);width:100%;min-height:40px;color:var(--color-app-text);font:inherit;background:#fff;padding:9px 11px}.student-card-section textarea,.student-ai-assistant textarea{resize:vertical;line-height:1.55}.student-card-actions{border-top:1px solid var(--color-app-border);justify-content:space-between;align-items:center;gap:18px;min-height:66px;padding:13px 22px;display:flex}.student-card-actions span{color:var(--color-app-text-tertiary);font-size:9px}.student-ai-assistant{border:1px solid var(--color-app-border);border-radius:var(--radius-card);background:#fff;align-self:start;gap:14px;min-width:0;padding:16px;display:grid}.student-ai-assistant>header{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;display:grid}.student-ai-assistant>header i{color:#fff;background:var(--color-app-primary);border-radius:9px;place-items:center;width:32px;height:32px;font-size:10px;font-style:normal;font-weight:800;display:grid}.student-ai-assistant h3{margin:0;font-size:13px}.student-ai-assistant header p{color:var(--color-app-text-tertiary);margin:3px 0 0;font-size:8px}.student-ai-principles{background:var(--color-app-surface-subtle);border-radius:8px;gap:7px;padding:10px 11px;display:grid}.student-ai-principles strong{font-size:10px}.student-ai-principles span{color:var(--color-app-text-secondary);font-size:9px}.student-ai-principles span:before{content:"✓";color:var(--color-app-success);margin-right:6px}.student-ai-assistant>label{display:block}.student-ai-assistant>.ui-button{width:100%}.student-ai-assistant>p{color:var(--color-app-text-tertiary);margin:0;font-size:8px;line-height:1.55}.student-ai-success{color:var(--color-app-success);background:var(--color-app-success-soft);border-radius:8px;padding:9px 10px;font-size:9px}.student-dialogue-list{gap:12px;display:grid}.student-dialogue-list article{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;display:grid}.student-dialogue-list article>header{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.student-dialogue-list article>header strong{font-size:11px}.student-dialogue-list article>header button{color:var(--color-app-danger);cursor:pointer;background:0 0;border:0;font-size:9px}.student-dialogue-list article label:nth-of-type(2),.student-dialogue-list article label:nth-of-type(3){grid-column:1/-1}.student-add-example{width:100%;min-height:42px;color:var(--color-app-primary);background:var(--color-app-primary-soft);cursor:pointer;border:1px dashed #b8c6d8;border-radius:9px;margin-top:12px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #246bfd38}@media (width<=1023px){.classroom-app{height:auto;min-height:100dvh;color:var(--color-app-text);background:var(--color-app-canvas);overflow:auto}.classroom-app>.classroom-stage{display:none}.mobile-classroom-blocker{text-align:center;align-content:center;place-items:center;min-height:100dvh;padding:32px;display:grid}.mobile-classroom-blocker h1{margin:22px 0 8px;font-size:25px}.mobile-classroom-blocker p{max-width:480px;color:var(--color-app-text-secondary);margin:0 0 22px;font-size:13px;line-height:1.75}}@media (width>=1024px) and (width<=1199px){.preflight-overlay{grid-template-columns:208px minmax(0,1fr)}.preflight-body{padding-inline:24px}.preflight-grid{grid-template-columns:1fr}.preflight-readiness-card{min-height:0}.editor-drawer.wide-drawer{width:100vw}.classroom-wizard-form,.student-card-editor{grid-template-columns:164px minmax(0,1fr) 230px}.report-main-grid,.task-editor-layout,.admin-readiness-grid{grid-template-columns:minmax(0,1fr) 300px}}@media (width>=1200px) and (height<=950px){.preflight-body{gap:16px;padding:20px 28px 24px}.preflight-course-card{min-height:144px;padding:16px 18px}.preflight-steps{margin-top:10px}.preflight-grid{gap:16px;min-height:590px}.preflight-config-card,.preflight-readiness-card{padding:16px}.preflight-config-card h2,.preflight-readiness-card h2{font-size:18px;line-height:24px}.preflight-students{gap:12px;margin-top:12px}.preflight-student-card{height:128px;padding:12px}.preflight-student-card>div:last-child{height:50px;padding:8px}.preflight-parameter-heading{margin:12px 0 8px}.preflight-parameters{gap:8px 14px}.preflight-parameters select,.preflight-device-select select{height:38px}.preflight-info{min-height:56px;margin-top:10px;padding-block:10px}.preflight-device-select{margin-top:12px}.preflight-services{margin-top:10px}.preflight-services>div{min-height:44px}.preflight-waiting-room{min-height:112px;margin-top:10px;padding:12px}.preflight-waiting-room>p{margin-block:5px 7px}}@media (width<=860px){.auth-v1{display:block}.auth-story{display:none}.auth-card-v1{flex-direction:column;justify-content:center;min-height:100dvh;padding:48px 0;display:flex}.auth-product{margin-bottom:48px}.app-frame{padding-bottom:66px;display:block}.app-sidebar{z-index:200;width:100%;height:66px;padding:5px 10px max(5px, env(safe-area-inset-bottom));border-top:1px solid var(--color-app-border);color:var(--color-app-text-secondary);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;display:block;position:fixed;top:auto;bottom:0}.app-logo,.app-sidebar footer{display:none}.app-sidebar nav{justify-content:space-around;height:100%;margin:0;display:flex}.app-sidebar nav a{flex-direction:column;justify-content:center;gap:2px;min-width:64px;height:52px;padding:4px 7px;font-size:10px}.app-sidebar nav a.active,.app-sidebar nav a:hover{color:var(--color-app-primary);background:0 0}.app-sidebar nav svg{width:19px;height:19px}.app-workspace{height:auto;overflow:visible}.app-topbar{height:64px;min-height:64px;padding:12px 18px}.app-topbar h1{font-size:18px}.app-topbar p{display:none}.app-content{width:100%;height:auto;padding:22px 16px 40px;overflow:visible}.dashboard-resume{min-height:0;padding:20px;display:block}.dashboard-resume h2{white-space:normal;font-size:20px}.dashboard-resume nav{margin-top:18px}.dashboard-workbench{height:auto;display:block}.dashboard-task-card{display:block}.dashboard-task-card aside{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.dashboard-course-card{display:block}.dashboard-course-card footer{border-top:1px solid var(--color-app-border);border-left:0;margin-top:18px;padding:18px 0 0}.dashboard-right-column{margin-top:20px}.dashboard-intro{padding:20px;display:block}.readiness-card{min-width:0;margin-top:18px}.trainee-dashboard-grid{display:block}.dashboard-aside{margin-top:20px}.task-row{grid-template-columns:1fr;gap:12px}.task-status-line{border-right:0;border-bottom:1px solid var(--color-app-border);flex-direction:row;justify-content:flex-start;padding:0 0 12px}.recent-table a{grid-template-columns:1fr auto;padding:14px}.recent-table a span,.recent-table a time,.recent-table a b{display:none}.catalog-toolbar{display:block}.catalog-search{width:100%;margin-top:12px}.course-grid{grid-template-columns:1fr}.catalog-summary p{display:none}.instructor-stats{grid-template-columns:repeat(2,1fr)}.instructor-layout{display:block}.instructor-layout aside{margin-top:24px}.task-management-list{overflow-x:auto}.task-management-list>header,.task-management-list>article{min-width:850px}.trainee-directory,.form-two{grid-template-columns:1fr}.modal-backdrop{padding:12px}.trainee-detail-summary{grid-template-columns:repeat(2,1fr)}.trainee-detail-grid{grid-template-columns:1fr}.history-toolbar{display:block}.history-toolbar input{width:100%;margin-top:10px}.profile-summary{grid-template-columns:repeat(3,1fr)}.profile-summary>div{padding-right:8px}.profile-summary p{grid-column:1/-1}.profile-grid,.observation-section>div{grid-template-columns:1fr}.report-overview{grid-template-columns:1fr;gap:18px}.report-overview dl{border-top:1px solid var(--color-app-border);border-left:0;padding:14px 0 0}.report-score-list{grid-template-columns:1fr}.behavior-grid{grid-template-columns:repeat(2,1fr)}.report-advice-grid{grid-template-columns:1fr}.app-topbar-actions .ui-button:nth-child(n+2){display:none}.history-search{width:100%;margin-top:10px}.history-guidance,.report-main-grid,.task-editor-layout,.admin-readiness-grid,.admin-bottom-grid{grid-template-columns:1fr}.profile-summary-v2>div,.admin-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.task-trainee-grid,.task-requirement-grid{grid-template-columns:1fr}.task-editor-steps{overflow-x:auto}.task-editor-steps ol{min-width:680px}.instructor-active-tasks{overflow-x:auto}.instructor-active-tasks>article{min-width:760px}.console-sidebar nav a{flex:none;width:auto;min-height:36px;margin:0}.console-sidebar nav a i{display:none}.console-mobile-logout{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:36px;color:var(--color-app-text-secondary);font:inherit;cursor:pointer;background:#fff;align-items:center;padding:0 12px;font-size:11px;display:inline-flex}.editor-drawer.wide-drawer{width:100%;padding:18px;overflow:auto}.classroom-wizard-form,.student-card-editor{display:block}.classroom-wizard-form .classroom-wizard-steps{grid-template-columns:repeat(4,minmax(142px,1fr));margin-bottom:12px;display:grid;overflow-x:auto}.classroom-wizard-main{min-height:560px}.classroom-wizard-review{margin-top:12px}.classroom-seat-preview{column-gap:7px;padding-inline:10px}.student-card-tabs{grid-template-columns:repeat(5,minmax(142px,1fr));margin-bottom:12px;display:grid;overflow-x:auto}.student-card-main{min-height:620px}.student-ai-assistant{margin-top:12px}.student-dialogue-list article{grid-template-columns:1fr}.student-dialogue-list article>*{grid-column:1!important}}@media (width>=861px) and (width<=1280px){.trainee-dashboard-grid{grid-template-columns:1fr}.dashboard-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.task-row{grid-template-columns:100px 1fr auto}.task-progress{display:none}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-workbench{grid-template-columns:1fr;height:auto}.dashboard-right-column{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-side-card{min-width:0}.dashboard-course-card{min-height:190px}.admin-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-readiness>div{grid-template-columns:120px 80px minmax(0,1fr) 70px}.profile-summary-v2>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.report-validity-warning{border-radius:var(--radius-control);background:var(--color-app-warning-soft);border:1px solid #efd49c;align-items:flex-start;gap:12px;margin-top:12px;padding:13px 16px;display:flex}.report-validity-warning strong{flex:none;font-size:12px}.report-validity-warning span{color:var(--color-app-text-secondary);font-size:12px;line-height:18px}.report-storyline{box-shadow:none;margin-top:20px;padding:24px}.report-storyline>header{justify-content:space-between;align-items:center;gap:24px;display:flex}.report-storyline>header h2{margin:0;font-size:20px;line-height:28px}.report-storyline>header p{color:var(--color-app-text-secondary);margin:4px 0 0;font-size:12px;line-height:18px}.report-storyline>header nav{flex:none;gap:6px;display:flex}.report-storyline>header nav button{min-height:36px;color:var(--color-app-text-secondary);background:var(--color-app-surface-subtle);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:0 13px;font-size:12px}.report-storyline>header nav button:hover{border-color:var(--color-app-border);color:var(--color-app-text)}.report-storyline>header nav button.active{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.report-storyline-layout{grid-template-columns:minmax(0,1fr) 276px;align-items:start;gap:16px;margin-top:20px;display:grid}.storyline-list{gap:12px;min-width:0;display:grid}.storyline-item{grid-template-columns:20px minmax(0,1fr);min-width:0;display:grid;position:relative}.storyline-item:after{content:"";background:var(--color-app-border);width:1px;position:absolute;top:21px;bottom:-18px;left:7px}.storyline-item:last-child:after{display:none}.storyline-item>i{z-index:1;outline:1px solid var(--color-app-primary);background:var(--color-app-primary);box-sizing:content-box;border:3px solid #fff;border-radius:50%;width:11px;height:11px;margin-top:17px;position:relative}.storyline-item.event>i{outline-color:var(--color-app-info);background:var(--color-app-info)}.storyline-item.risk>i{outline-color:var(--color-app-warning);background:var(--color-app-warning)}.storyline-card{border:1px solid var(--color-app-border);background:var(--color-app-surface);border-radius:10px;min-width:0;padding:16px}.storyline-card>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.storyline-card>header>div{align-items:center;gap:8px;display:flex}.storyline-card>header time{font-family:var(--font-classroom-mono);font-size:12px;font-weight:650}.storyline-card>header span,.storyline-card>header b,.storyline-card>header em{border-radius:6px;padding:3px 7px;font-size:10px;font-style:normal;font-weight:600}.storyline-card>header span{color:var(--color-app-text-secondary);background:var(--color-app-surface-subtle)}.storyline-card>header b{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.storyline-item.event .storyline-card>header b{color:var(--color-app-info);background:var(--color-app-info-soft)}.storyline-item.risk .storyline-card>header b{color:#9a5d00;background:var(--color-app-warning-soft)}.storyline-card>header em{color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle)}.storyline-card>small{color:var(--color-app-text-secondary);margin-top:12px;font-size:11px;display:block}.storyline-card>h3{white-space:pre-wrap;margin:6px 0 0;font-size:15px;font-weight:580;line-height:23px}.storyline-meta{color:var(--color-app-text-tertiary);margin:9px 0 0;font-size:11px;line-height:17px}.storyline-event-criteria{background:var(--color-app-info-soft);border-radius:8px;gap:7px;margin:12px 0 0;padding:12px;display:grid}.storyline-event-criteria div{grid-template-columns:66px minmax(0,1fr);gap:8px;display:grid}.storyline-event-criteria dt{color:var(--color-app-info);font-size:11px;font-weight:650}.storyline-event-criteria dd{color:var(--color-app-text-secondary);margin:0;font-size:11px;line-height:17px}.storyline-finding{border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;margin-top:12px;padding:11px 12px;display:grid}.storyline-finding strong,.storyline-finding span{font-size:11px}.storyline-finding span{line-height:17px}.storyline-finding.positive{color:#1a684b;background:var(--color-app-success-soft)}.storyline-finding.risk{color:#87540b;background:var(--color-app-warning-soft)}.storyline-comments{margin-top:12px}.storyline-comments>article{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);border-radius:8px;padding:10px 12px}.storyline-comments>article+article{margin-top:6px}.storyline-comments article strong{font-size:11px}.storyline-comments article p{margin:4px 0;font-size:11px;line-height:17px}.storyline-comments article time{color:var(--color-app-text-tertiary);font-size:10px}.storyline-comment-trigger{min-height:34px;color:var(--color-app-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.storyline-no-comment{color:var(--color-app-text-tertiary);font-size:10px}.storyline-comments form{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);border-radius:8px;gap:8px;padding:10px;display:grid}.storyline-comments textarea{border:1px solid var(--color-app-border);resize:vertical;width:100%;color:var(--color-app-text);font:inherit;background:#fff;border-radius:7px;padding:9px 10px;font-size:11px;line-height:17px}.storyline-comments form>div{justify-content:flex-end;gap:6px;display:flex}.report-storyline-layout>aside{gap:10px;display:grid}.storyline-summary{border-radius:9px;padding:15px}.storyline-summary span,.storyline-summary strong{display:block}.storyline-summary span{font-size:11px;font-weight:650}.storyline-summary strong{font-family:var(--font-classroom-mono);margin-top:9px;font-size:23px}.storyline-summary p{color:var(--color-app-text-secondary);margin:9px 0 0;font-size:11px;line-height:17px}.storyline-summary.info{color:var(--color-app-primary);background:var(--color-app-primary-soft)}.storyline-summary.success{color:#1a684b;background:var(--color-app-success-soft)}.storyline-summary.warning{color:#87540b;background:var(--color-app-warning-soft)}@media (width<=1100px){.report-storyline>header{flex-direction:column;align-items:flex-start}.report-storyline-layout{grid-template-columns:1fr}.report-storyline-layout>aside{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.report-storyline{padding:16px}.report-storyline>header nav{width:100%;overflow-x:auto}.report-storyline>header nav button{flex:none}.report-storyline-layout>aside{grid-template-columns:1fr}.storyline-card>header{align-items:flex-start}.storyline-card>header>div{flex-wrap:wrap;align-items:flex-start}.storyline-event-criteria div,.storyline-finding{grid-template-columns:1fr;gap:3px}}.client-entry-page{width:100%;min-width:64rem;height:100dvh;color:var(--color-app-text);background:#eef3f7;font-family:PingFang SC,Microsoft YaHei UI,system-ui,sans-serif;overflow:hidden}.client-entry-page:before{content:"";pointer-events:none;background:linear-gradient(#ffffffc7,#eef3f7f0),url(/classroom/classroom-background-shadow.png) 50%/cover;position:fixed;inset:0}.client-entry-loading,.client-login-panel{z-index:1;width:min(28rem,100% - 4rem);margin:0 auto;position:relative;top:50%;transform:translateY(-50%)}.client-entry-loading{justify-items:center;gap:.5rem;display:grid}.client-entry-loading i,.client-login-panel>i{color:#fff;background:var(--color-app-primary);border-radius:.75rem;place-items:center;width:3.25rem;height:3.25rem;font-size:1.25rem;font-style:normal;font-weight:750;display:grid}.client-entry-loading strong{margin-top:.5rem;font-size:1.25rem}.client-entry-loading span{color:var(--color-app-text-secondary);font-size:.8125rem}.client-login-panel{box-shadow:var(--shadow-overlay);background:#fffffff0;border:1px solid #c4cfdcb8;border-radius:1rem;padding:2.25rem}.client-login-panel>i{margin-bottom:1.5rem}.client-login-panel>span{color:var(--color-app-primary);font-size:.75rem;font-weight:700}.client-login-panel h1{margin:.5rem 0;font-size:1.75rem}.client-login-panel>p{color:var(--color-app-text-secondary);margin:0 0 1.5rem;font-size:.8125rem;line-height:1.7}.client-login-panel form{gap:.875rem;display:grid}.client-login-panel label{color:var(--color-app-text-secondary);gap:.375rem;font-size:.75rem;font-weight:650;display:grid}.client-login-panel input{border:1px solid var(--color-app-border-strong);width:100%;height:2.75rem;color:var(--color-app-text);background:#fff;border-radius:.5rem;padding:0 .75rem}.client-login-panel button,.client-selection-footer>button{color:#fff;background:var(--color-app-primary);min-height:2.75rem;font:inherit;cursor:pointer;border:0;border-radius:.5rem;font-size:.8125rem;font-weight:700}.client-login-panel button:disabled,.client-selection-footer>button:disabled{opacity:.45;cursor:default}.client-entry-error{color:var(--color-app-danger);background:var(--color-app-danger-soft);border:1px solid #efc7ca;border-radius:.5rem;padding:.75rem .875rem;font-size:.75rem;line-height:1.5}.client-entry-header{z-index:2;-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#ffffffe0;border-bottom:1px solid #cbd3dfc2;justify-content:space-between;align-items:center;height:4.5rem;padding:0 2rem;display:flex;position:relative}.client-entry-header>div{align-items:center;gap:.75rem;display:flex}.client-entry-header>div>i{color:#fff;background:var(--color-app-primary);border-radius:.625rem;place-items:center;width:2.25rem;height:2.25rem;font-size:1rem;font-style:normal;font-weight:750;display:grid}.client-entry-header>div>span{gap:.125rem;display:grid}.client-entry-header strong{font-size:.875rem}.client-entry-header small{color:var(--color-app-text-tertiary);font-size:.625rem}.client-user-chip{color:var(--color-app-text-secondary);background:var(--color-app-surface-subtle);border-radius:999px;padding:.5rem .75rem;font-size:.6875rem}.client-selection-shell{z-index:1;background:#fffffff0;border:1px solid #cbd3dfc2;border-radius:1rem;grid-template-rows:auto auto minmax(0,1fr) auto;gap:1rem;width:min(82rem,100% - 4rem);height:calc(100dvh - 6.5rem);margin:1rem auto;padding:1.5rem 1.75rem;display:grid;position:relative;box-shadow:0 1.25rem 4rem #1f31491f}.client-selection-shell>header>span{color:var(--color-app-primary);font-size:.6875rem;font-weight:700}.client-selection-shell>header h1{margin:.25rem 0;font-size:1.625rem}.client-selection-shell>header p{color:var(--color-app-text-secondary);margin:0;font-size:.75rem}.client-selection-grid{grid-template-columns:.72fr 1.1fr 1.1fr;gap:1rem;min-height:0;display:grid}.client-selection-step{border:1px solid var(--color-app-border);background:var(--color-app-surface-subtle);border-radius:.75rem;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;padding:1rem;display:grid}.client-selection-step>header{align-items:center;gap:.625rem;padding-bottom:.75rem;display:flex}.client-selection-step>header>i{width:1.75rem;height:1.75rem;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-size:.6875rem;font-style:normal;font-weight:750;display:grid}.client-selection-step>header>div{gap:.125rem;display:grid}.client-selection-step>header strong{font-size:.8125rem}.client-selection-step>header span{color:var(--color-app-text-tertiary);font-size:.625rem}.client-subject-list,.client-course-list,.client-student-list{overscroll-behavior:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;touch-action:pan-y;align-content:start;gap:.5rem;min-height:0;display:grid;overflow:hidden auto}.client-subject-list button,.client-course-list button,.client-student-list button{min-width:0;color:var(--color-app-text);font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:.625rem}.client-subject-list button{grid-template-rows:auto auto;grid-template-columns:2rem minmax(0,1fr);align-items:center;column-gap:.625rem;min-height:4.125rem;padding:.625rem;display:grid}.client-subject-list button>span{width:2rem;height:2rem;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:.5rem;grid-row:1/3;place-items:center;font-size:.75rem;font-weight:750;display:grid}.client-subject-list strong,.client-course-list strong,.client-student-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.client-subject-list small,.client-course-list small,.client-student-list small{color:var(--color-app-text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;overflow:hidden}.client-course-list button{align-content:center;gap:.25rem;min-height:4.375rem;padding:.625rem .75rem;display:grid}.client-course-list button>span{color:var(--color-app-primary);font-size:.625rem;font-weight:650}.client-template-heading{align-items:center;gap:.375rem;min-width:0;display:flex}.client-template-heading strong{flex:1;min-width:0}.client-template-heading em{color:#176f52;background:#dcf5ea;border-radius:.25rem;flex:none;padding:.125rem .3125rem;font-size:.5625rem;font-style:normal;font-weight:750}.client-student-list button{grid-template-columns:2rem minmax(0,1fr) 1.5rem;align-items:center;gap:.625rem;min-height:3.75rem;padding:.5rem .625rem;display:grid}.client-student-list button>span{width:2rem;height:2rem;color:var(--color-app-primary);background:var(--color-app-primary-soft);border-radius:50%;place-items:center;font-size:.6875rem;font-weight:750;display:grid}.client-student-list button>div{gap:.1875rem;min-width:0;display:grid}.client-student-list button>i{border:1px solid var(--color-app-border-strong);width:1.375rem;height:1.375rem;color:var(--color-app-text-tertiary);border-radius:50%;place-items:center;font-size:.6875rem;font-style:normal;display:grid}.client-subject-list button.active,.client-course-list button.active,.client-student-list button.active{background:var(--color-app-primary-soft);border-color:#b8cdfa}.client-student-list button.active>i{color:#fff;border-color:var(--color-app-primary);background:var(--color-app-primary)}.client-selection-footer{border-top:1px solid var(--color-app-border);align-items:center;gap:1rem;min-height:4.75rem;padding-top:1rem;display:flex}.client-selection-summary{flex:1;gap:.125rem;min-width:0;display:grid}.client-selection-summary>span,.client-selection-actions label>span{color:var(--color-app-text-tertiary);font-size:.625rem}.client-selection-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.client-selection-summary small{color:var(--color-app-text-secondary);font-size:.6875rem}.client-selection-actions{align-items:flex-end;gap:1rem;display:flex}.client-selection-actions label{gap:.25rem;width:12rem;display:grid}.client-selection-actions select{border:1px solid var(--color-app-border-strong);height:2.5rem;color:var(--color-app-text);background:#fff;border-radius:.5rem;padding:0 .625rem;font-size:.75rem}.client-selection-actions>button{color:#fff;background:var(--color-app-primary);min-width:9rem;height:2.5rem;font:inherit;cursor:pointer;border:0;border-radius:.5rem;font-size:.8125rem;font-weight:700}.client-selection-actions>button:disabled{opacity:.45;cursor:default}.client-selection-shell{grid-template-areas:"heading""alert""selection""actions";overflow:hidden}.client-selection-shell>header{grid-area:heading}.client-selection-shell>.client-entry-error{grid-area:alert}.client-selection-grid{grid-area:selection;overflow:hidden}.client-selection-step{overflow:hidden}.client-selection-footer{background:#fffffff5;grid-area:actions}.client-mode .classroom-stage{grid-template-rows:4.5rem minmax(0,1fr);gap:.75rem;padding:.75rem}.client-mode .classroom-status-header{grid-template-columns:minmax(0,1fr) auto;height:4.5rem}.client-mode .classroom-presence{display:none}.client-mode .classroom-heading{justify-items:start}.client-mode .classroom-header-actions>div strong{font-size:1.75rem}.client-mode .classroom-scene{border-radius:.75rem}.client-mode .student-speech{display:none}.client-mode .client-end-class{color:#fff;background:var(--color-classroom-danger);min-height:2.5rem;font:inherit;cursor:pointer;border:1px solid #ffffff80;border-radius:.5rem;align-items:center;gap:.375rem;padding:0 .875rem;font-size:.75rem;font-weight:650;display:inline-flex}.client-mode .client-end-class svg{width:1rem;height:1rem}.client-mode .network-warning{bottom:1.5rem;right:1.5rem}.client-mode .student-meta{bottom:.75rem}.classroom-stage .report-dialog h1{color:#f7fbff;text-shadow:0 1px 2px #00000038}.classroom-stage .report-dialog>small{color:#b9d2f5}.client-report-notice{max-width:30rem;line-height:1.65;color:#d8e6f8!important;background:0 0!important;margin:.75rem auto 0!important;padding:0!important;font-size:.75rem!important}.client-mode .report-dialog .report-metrics{margin-top:1.25rem}.client-mode .report-actions .start-class-button{color:#fff;min-width:13rem}.client-classroom-preflight{z-index:120;color:#fff;-webkit-backdrop-filter:blur(.55rem)saturate(.86);backdrop-filter:blur(.55rem)saturate(.86);background:#111f3133;grid-template-rows:auto 1fr auto;padding:1.25rem 1.5rem 1.5rem;display:grid;position:fixed;inset:0}.client-classroom-preflight:before{z-index:-1;content:"";background:linear-gradient(#0a192b2e,#0a192b73);position:absolute;inset:0}.client-classroom-preflight>header{align-items:center;gap:.75rem;display:flex}.client-classroom-preflight>header>a{color:#fff;background:#125fc6e6;border-radius:.625rem;place-items:center;width:2.5rem;height:2.5rem;font-size:1rem;font-weight:750;text-decoration:none;display:grid}.client-classroom-preflight>header>div{gap:.125rem;display:grid}.client-classroom-preflight>header span,.client-classroom-preflight>header em{color:#ffffffb8;font-size:.6875rem;font-style:normal}.client-classroom-preflight>header strong{font-size:.875rem}.client-classroom-preflight>header em{background:#0c1b2e57;border:1px solid #ffffff40;border-radius:999px;margin-left:auto;padding:.5rem .75rem}.client-classroom-preflight>section{text-align:center;-webkit-backdrop-filter:blur(1.25rem);backdrop-filter:blur(1.25rem);background:#12223594;border:1px solid #ffffff5c;border-radius:1rem;place-self:center;width:min(34rem,100% - 3rem);padding:2.25rem;box-shadow:0 1.5rem 4.5rem #08121f47}.client-readiness-status{color:#ffffffc2;align-items:center;gap:.5rem;font-size:.6875rem;display:inline-flex}.client-readiness-status>i{background:var(--color-classroom-warning);border-radius:50%;width:.5rem;height:.5rem}.client-readiness-status.ready>i{background:var(--color-classroom-success)}.client-classroom-preflight h1{letter-spacing:0;margin:1rem 0 .625rem;font-size:2rem}.client-classroom-preflight h1 strong{color:var(--color-classroom-accent)}.client-classroom-preflight section>p{color:#ffffffb3;min-height:2.75rem;margin:0 auto 1.25rem;font-size:.8125rem;line-height:1.7}.client-selected-students{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.client-selected-students>span{color:#ffffffd6;background:#ffffff1a;border-radius:999px;align-items:center;gap:.375rem;min-height:2rem;padding:.25rem .625rem .25rem .25rem;font-size:.6875rem;display:inline-flex}.client-selected-students b{color:#17345a;background:#dcecff;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-size:.625rem;display:grid}.client-classroom-preflight section>footer{justify-content:center;gap:.625rem;margin-top:1.5rem;display:flex}.client-classroom-preflight section button{min-height:2.75rem;font:inherit;cursor:pointer;border-radius:.5rem;padding:0 1.125rem;font-size:.75rem;font-weight:700}.client-device-check{color:#fff;background:#ffffff14;border:1px solid #ffffff52}.client-enter-waiting{color:#fff;background:var(--color-app-primary);border:0;min-width:9rem}.client-classroom-preflight section button:disabled{opacity:.45;cursor:default}.client-preflight-error{color:#ffdadd;background:#69131b85;border:1px solid #ffb1b580;border-radius:.5rem;margin-top:1rem;padding:.625rem .75rem;font-size:.6875rem;line-height:1.5}.client-classroom-preflight>small{color:#ffffff9e;place-self:end center;font-size:.6875rem}.session-conflict-backdrop{z-index:220;-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);background:#08121fad;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.session-conflict-dialog{color:#17263a;background:#f8fbff;border:1px solid #ffffff38;border-radius:.875rem;width:min(31rem,100%);padding:2rem;box-shadow:0 1.5rem 4rem #030c1861}.session-conflict-dialog>span{color:#bb5b16;font-size:.75rem;font-weight:750}.session-conflict-dialog h2{letter-spacing:0;margin:.5rem 0 .625rem;font-size:1.5rem}.session-conflict-dialog>p{color:#52657d;margin:0;font-size:.875rem;line-height:1.7}.session-conflict-dialog dl{border-block:1px solid #dce4ee;margin:1.25rem 0;padding-block:.25rem}.session-conflict-dialog dl>div{grid-template-columns:5rem 1fr;align-items:center;gap:.75rem;min-height:2.75rem;display:grid}.session-conflict-dialog dt{color:#78899d;font-size:.75rem}.session-conflict-dialog dd{color:#24384f;margin:0;font-size:.8125rem;font-weight:650}.session-conflict-dialog footer{justify-content:flex-end;gap:.625rem;display:flex}.session-conflict-dialog button{color:#29405a;min-height:2.75rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd6e3;border-radius:.5rem;padding:0 1rem;font-size:.75rem;font-weight:700}.session-conflict-dialog button.primary{color:#fff;background:#1769cf;border-color:#1769cf}.session-conflict-dialog button:disabled{opacity:.55;cursor:default}.session-conflict-error{color:#8f2028;background:#fff0f1;border:1px solid #f0b7bb;border-radius:.5rem;margin-bottom:1rem;padding:.625rem .75rem;font-size:.75rem;line-height:1.5}@media (height<=760px){.client-selection-shell{padding-block:1rem}.client-selection-shell>header h1{font-size:1.375rem}.client-selection-grid{gap:.75rem}.client-classroom-preflight>section{padding:1.5rem 2rem}.client-classroom-preflight h1{font-size:1.75rem}}.client-ops-page{max-width:1280px;margin:0 auto}.client-ops-summary{min-height:82px;box-shadow:none;grid-template-columns:repeat(3,120px) minmax(0,1fr);align-items:center;margin-top:1rem;padding:0 1rem;display:grid}.client-ops-summary>div{border-right:1px solid var(--color-app-border);align-content:center;min-height:50px;padding:0 1rem;display:grid}.client-ops-summary>div b{font-family:var(--font-classroom-mono);font-size:1.375rem}.client-ops-summary>div span{color:var(--color-app-text-secondary);font-size:.625rem}.client-ops-summary>aside{gap:.25rem;padding-left:1.25rem;display:grid}.client-ops-summary>aside strong{font-size:.75rem}.client-ops-summary>aside span{color:var(--color-app-text-secondary);font-size:.625rem;line-height:1.5}.client-device-panel{box-shadow:none;margin-top:1rem;padding:1rem}.client-device-panel>header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.client-device-panel>header h3,.client-release-panel h3,.recording-integration-panel h3{margin:0;font-size:1rem}.client-device-panel>header p,.client-release-panel header p,.recording-integration-panel>p{color:var(--color-app-text-secondary);margin:.1875rem 0 0;font-size:.625rem;line-height:1.5}.client-device-panel>header form{gap:.375rem;display:flex}.client-device-panel input,.client-device-panel select,.client-release-panel input,.client-release-panel select,.client-release-panel textarea{border:1px solid var(--color-app-border);min-height:2.25rem;color:var(--color-app-text);font:inherit;background:#fff;border-radius:.5rem;padding:.4375rem .625rem;font-size:.6875rem}.client-device-panel>header input{width:13rem}.client-device-panel>header button{border:1px solid var(--color-app-border);min-height:2.25rem;color:var(--color-app-text-secondary);font:inherit;cursor:pointer;background:#fff;border-radius:.5rem;padding:0 .75rem;font-size:.6875rem}.client-device-table{margin-top:.875rem;overflow-x:auto}.client-device-table>header,.client-device-table>article{grid-template-columns:minmax(160px,1.25fr) minmax(130px,.85fr) 105px 90px minmax(250px,1.3fr);align-items:center;gap:.75rem;min-width:58rem;display:grid}.client-device-table>header{min-height:2.25rem;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);padding:0 .75rem;font-size:.625rem}.client-device-table>article{border-bottom:1px solid var(--color-app-border);min-height:4.5rem;padding:.625rem .75rem}.client-device-table article>span{gap:.1875rem;min-width:0;display:grid}.client-device-table article strong,.client-device-table article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-device-table article strong{font-size:.6875rem}.client-device-table article small,.client-device-table article time{color:var(--color-app-text-tertiary);font-size:.5625rem;font-style:normal}.client-device-table article>nav{flex-wrap:wrap;gap:.25rem;display:flex}.client-device-table article>nav button,.client-maintenance-actions button{border:1px solid var(--color-app-border);min-height:1.75rem;color:var(--color-app-text-secondary);font:inherit;cursor:pointer;background:#fff;border-radius:.375rem;padding:0 .5rem;font-size:.5625rem}.client-device-table article>nav button:disabled{opacity:.45}.client-device-panel>.table-pagination{margin-top:.75rem}.client-release-history{box-shadow:none;margin-top:1rem;padding:1rem}.client-release-history>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.client-release-history>header h3{margin:0;font-size:1rem}.client-release-history>header p{color:var(--color-app-text-secondary);margin:.1875rem 0 0;font-size:.625rem;line-height:1.5}.client-release-history>header>span{color:var(--color-app-primary);background:var(--color-app-primary-soft);white-space:nowrap;border-radius:999px;padding:.3125rem .5rem;font-size:.625rem;font-weight:700}.client-release-table{margin-top:.875rem;overflow-x:auto}.client-release-table>header,.client-release-table>article{grid-template-columns:minmax(125px,.75fr) minmax(110px,.65fr) minmax(260px,1.8fr) minmax(130px,.85fr) 92px;align-items:center;gap:.75rem;min-width:54rem;display:grid}.client-release-table>header{min-height:2.25rem;color:var(--color-app-text-tertiary);background:var(--color-app-surface-subtle);padding:0 .75rem;font-size:.625rem}.client-release-table>article{border-bottom:1px solid var(--color-app-border);min-height:4.25rem;padding:.625rem .75rem}.client-release-table article>span{gap:.1875rem;min-width:0;display:grid}.client-release-table article strong,.client-release-table article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-release-table article strong{font-size:.6875rem}.client-release-table article small,.client-release-table article time{color:var(--color-app-text-tertiary);font-size:.5625rem;font-style:normal}.client-release-table article>a{border:1px solid var(--color-app-primary);min-height:1.875rem;color:var(--color-app-primary);background:#fff;border-radius:.375rem;justify-content:center;align-items:center;font-size:.5625rem;font-weight:700;text-decoration:none;display:inline-flex}.client-release-history>.table-pagination{margin-top:.75rem}.client-ops-bottom{grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);gap:1rem;margin-top:1rem;display:grid}.client-release-panel,.recording-integration-panel{box-shadow:none;padding:1rem}.client-release-panel form{grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem;margin-top:.875rem;display:grid}.client-release-panel label{gap:.3125rem;min-width:0;display:grid}.client-release-panel label>span{color:var(--color-app-text-secondary);font-size:.625rem;font-weight:650}.client-release-panel label.wide{grid-column:1/-1}.client-release-panel textarea{resize:vertical}.client-force-update{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.client-force-update input{min-height:1rem}.client-release-panel form>.primary-action{justify-self:end;min-width:7.5rem}.recording-integration-panel>header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.recording-integration-panel>p{margin:.75rem 0}.recording-integration-panel>div{border-top:1px solid var(--color-app-border);min-height:2.25rem;color:var(--color-app-text-secondary);align-items:center;gap:.5rem;font-size:.625rem;display:flex}.recording-integration-panel>div b{color:var(--color-app-text-tertiary)}.client-maintenance-actions{flex-wrap:wrap;gap:.375rem;display:flex}.client-maintenance-actions .danger-action{color:var(--color-app-danger);background:var(--color-app-danger-soft);border-color:#efc7ca}.client-log-list{gap:.5rem;display:grid}.client-log-list>a{border:1px solid var(--color-app-border);min-height:3.5rem;color:inherit;background:var(--color-app-surface-subtle);border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.625rem .75rem;text-decoration:none;display:flex}.client-log-list>a span{gap:.25rem;min-width:0;display:grid}.client-log-list strong{font-size:.6875rem}.client-log-list small,.client-log-list time{color:var(--color-app-text-tertiary);font-size:.5625rem}@media (width<=1120px){.client-ops-summary{grid-template-columns:repeat(3,1fr)}.client-ops-summary>aside{border-top:1px solid var(--color-app-border);grid-column:1/-1;padding:.75rem 1rem}.client-ops-bottom{grid-template-columns:1fr}}.client-ops-toast{z-index:300;color:#1d684d;background:#f2fbf6;border:1px solid #bfe3d1;border-radius:9px;max-width:min(420px,100vw - 56px);padding:12px 16px;font-size:12px;line-height:1.5;animation:.18s ease-out client-toast-enter;position:fixed;top:82px;right:28px;box-shadow:0 14px 34px #14362a24}.client-log-toolbar{color:var(--color-app-text-tertiary);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:11px;display:flex}.client-log-toolbar button{border:1px solid var(--color-app-border);min-height:30px;color:var(--color-app-text-secondary);font:inherit;cursor:pointer;background:#fff;border-radius:7px;padding:0 10px;font-size:11px}.client-log-toolbar button:disabled{opacity:.55;cursor:default}@keyframes client-toast-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.import-textbook-meta{color:var(--color-app-primary);margin:.25rem 0;font-size:.5625rem;line-height:1.5;display:block}.table-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.table-toolbar input,.table-toolbar select{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:36px;color:var(--color-app-text);font:inherit;background:#fff;padding:0 10px;font-size:11px}.table-toolbar input{flex:280px;min-width:260px}.table-toolbar button{border:1px solid var(--color-app-border);border-radius:var(--radius-control);min-height:36px;color:var(--color-app-text-secondary);font:inherit;cursor:pointer;background:#fff;padding:0 12px;font-size:11px}.table-toolbar button:hover{color:var(--color-app-primary);border-color:#2f67f657}.external-report-shell{background:var(--color-app-background,#f4f6f8);min-height:100vh;color:var(--color-app-text,#203653)}.external-report-header{border-bottom:1px solid var(--color-app-border,#e0e5eb);background:#fff;align-items:center;gap:16px;padding:20px max(24px,50vw - 640px);display:flex}.external-report-mark{color:#fff;background:#1954b8;border-radius:8px;flex:none;place-items:center;width:40px;height:40px;font-size:20px;font-weight:700;display:grid}.external-report-header span{color:var(--color-app-text-secondary,#617087);font-size:12px}.external-report-header h1{margin:2px 0;font-size:20px}.external-report-header p{color:var(--color-app-text-secondary,#617087);margin:0;font-size:12px}.external-report-content{max-width:1280px;margin:0 auto;padding:24px}.external-access-page{background:#f4f6f8;place-items:center;min-height:100vh;padding:24px;display:grid}.external-access-panel{background:#fff;border:1px solid #e0e5eb;border-radius:8px;width:min(100%,440px);padding:36px}.external-access-panel h1{margin:22px 0 8px;font-size:22px}.external-access-panel p{color:#617087;margin:0;line-height:1.7}@media (width<=640px){.external-report-header,.external-report-content{padding:16px}.external-access-panel{padding:24px}}
