.toast-host{position:fixed;top:16px;right:16px;z-index:2000;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:12px 14px;border-radius:var(--radius-lg, 12px);border-left:4px solid var(--toast-accent);background:var(--surface-card, #fff);box-shadow:var(--shadow-lg, 0 10px 30px rgba(15, 23, 42, .15))}.toast--success{--toast-accent: var(--color-success-dark, #15803d)}.toast--info{--toast-accent: var(--practiq-violet, #6d28d9)}.toast--warn{--toast-accent: var(--color-warning-dark, #b45309)}.toast--error{--toast-accent: var(--color-error-dark, #b91c1c)}.toast-icon{margin-top:2px;color:var(--toast-accent)}.toast-body{min-width:0}.toast-summary{margin:0;font-size:.9rem;font-weight:700;color:var(--text-heading, #0f172a);overflow-wrap:anywhere}.toast-detail{margin:2px 0 0;font-size:.85rem;line-height:1.4;color:var(--text-secondary, #475569);overflow-wrap:anywhere}.toast-close{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius-pill, 999px);background:transparent;color:var(--text-secondary, #475569);cursor:pointer}.toast-enter-active,.toast-leave-active{transition:opacity .18s ease,transform .18s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(12px)}@media(max-width:600px){.toast-host{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));left:16px;right:16px;width:auto}}:root{color-scheme:light;--font-body-family: "Lexend", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-ui-family: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--practiq-violet-50: #f5f3ff;--practiq-violet-100: #ede9fe;--practiq-violet-200: #ddd6fe;--practiq-violet-300: #c4b5fd;--practiq-violet-400: #a78bfa;--practiq-violet-500: #8b5cf6;--practiq-violet-600: #7c3aed;--practiq-violet-700: #6d28d9;--practiq-violet-800: #5b21b6;--practiq-violet-900: #4c1d95;--practiq-violet-950: #2e1065;--practiq-violet: #7c3aed;--practiq-violet-light: #8b5cf6;--practiq-violet-pale: #ede9fe;--practiq-violet-bg: #f5f3ff;--practiq-violet-dark: #5b21b6;--practiq-indigo: #6366f1;--practiq-indigo-soft: #c7d2fe;--practiq-violet-rgb: 124, 58, 237;--practiq-violet-light-rgb: 139, 92, 246;--practiq-indigo-rgb: 99, 102, 241;--color-success-rgb: 16, 185, 129;--color-error-rgb: 239, 68, 68;--color-warning-rgb: 245, 158, 11;--color-info-rgb: 59, 130, 246;--surface-card-rgb: 255, 255, 255;--surface-bg-rgb: 248, 250, 252;--surface-border-rgb: 148, 163, 184;--text-primary-rgb: 30, 41, 59;--practiq-footer-h: 140px;--color-success: #10b981;--color-success-bg: #ecfdf5;--color-success-dark: #047857;--color-error: #ef4444;--color-error-bg: #fef2f2;--color-error-dark: #b91c1c;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--color-warning-dark: #b45309;--color-warning-strong: #d97706;--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .1);--color-info-dark: #1d4ed8;--color-on-primary: #ffffff;--color-on-brand-panel: #ffffff;--surface-bg: #f8fafc;--surface-bg-soft: #f7f8ff;--surface-bg-cool: #f8fbff;--surface-bg-muted: #f6f8fc;--surface-card: #ffffff;--canvas-paper-bg: #f7f8ff;--canvas-paper-ink: #1e293b;--surface-hover: #f1f5f9;--surface-border: #e2e8f0;--surface-subtle: rgba(248, 250, 252, .9);--surface-elevated: rgba(var(--surface-card-rgb), .85);--surface-elevated-strong: rgba(var(--surface-card-rgb), .92);--surface-glass: rgba(var(--surface-card-rgb), .78);--surface-glass-border: rgba(var(--surface-card-rgb), .9);--surface-scrim: rgba(15, 23, 42, .34);--surface-overlay: rgba(0, 0, 0, .4);--surface-card-border: #e8ecf1;--border-color: var(--surface-border);--border-default: var(--surface-border);--border-subtle: var(--surface-border);--border-strong: #cbd5e1;--surface-base: var(--surface-bg);--surface-ground: var(--surface-card);--fill-error-subtle: var(--color-error-bg);--green-600: var(--color-success);--red-500: var(--color-error);--red-600: var(--color-error-dark);--text-heading: #182136;--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--text-placeholder: #69778a;--text-brand-panel-muted: rgba(var(--surface-card-rgb), .8);--text-brand-panel-soft: rgba(var(--surface-card-rgb), .75);--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--font-hero: clamp(1.1rem, 2.5vw, 1.35rem);--font-section-title: 15px;--font-stat-value: 18px;--font-kicker: 11px;--font-label: 11px;--font-body: 13px;--font-caption: 12px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-card: 0 4px 14px rgba(93, 108, 146, .08);--shadow-card-lg: 0 8px 28px rgba(93, 108, 146, .08);--shadow-panel: 0 24px 52px rgba(93, 108, 146, .14);--shadow-soft: 0 20px 48px rgba(98, 112, 149, .1);--shadow-violet: 0 4px 14px rgba(124, 58, 237, .25);--shadow-violet-lg: 0 6px 20px rgba(124, 58, 237, .3);--shadow-indigo: 0 12px 22px rgba(99, 102, 241, .2);--shadow-auth-card: 0 1px 3px rgba(0, 0, 0, .04), 0 12px 40px rgba(100, 116, 139, .08);--shadow-illustration: 0 20px 40px rgba(0, 0, 0, .18);--elevation-flat-bg: var(--surface-bg);--elevation-tint-bg: var(--surface-elevated);--elevation-tint-shadow: var(--shadow-card);--elevation-panel-bg: var(--surface-card);--elevation-panel-shadow: var(--shadow-panel);--gradient-app-bg: radial-gradient(circle at top left, rgba(var(--practiq-violet-rgb), .12), transparent 16%), radial-gradient(circle at bottom right, rgba(var(--color-info-rgb), .12), transparent 18%), linear-gradient( 180deg, var(--surface-bg-cool) 0%, var(--surface-bg-soft) 42%, var(--surface-bg-muted) 100% );--gradient-auth-bg: radial-gradient(ellipse at 90% 10%, rgba(var(--practiq-violet-rgb), .06), transparent 50%), radial-gradient(ellipse at 10% 90%, rgba(var(--color-info-rgb), .06), transparent 50%), var(--surface-bg);--gradient-brand-panel: linear-gradient( 155deg, var(--practiq-violet-900) 0%, var(--practiq-violet-700) 40%, var(--practiq-indigo) 100% );--gradient-brand: linear-gradient(135deg, var(--practiq-violet-light), var(--practiq-indigo));--gradient-brand-soft: linear-gradient( 135deg, rgba(var(--practiq-violet-rgb), .12), rgba(var(--color-info-rgb), .12) );--gradient-brand-avatar: linear-gradient( 135deg, rgba(var(--practiq-violet-rgb), .18), rgba(var(--color-info-rgb), .2) );--gradient-mobile-topbar: linear-gradient( 180deg, rgba(var(--surface-bg-rgb), .96), rgba(var(--surface-bg-rgb), .76) 75%, transparent );--gradient-card-accent: radial-gradient(circle at top left, rgba(var(--practiq-violet-rgb), .12), transparent 28%), radial-gradient(circle at bottom right, rgba(var(--color-info-rgb), .1), transparent 22%), var(--surface-elevated);--gradient-fire-soft: linear-gradient( 135deg, rgba(251, 146, 60, .15), rgba(var(--color-error-rgb), .1) );--gradient-star-soft: linear-gradient( 135deg, rgba(250, 204, 21, .2), rgba(var(--practiq-violet-rgb), .1) );--gradient-goal-soft: linear-gradient( 135deg, rgba(var(--practiq-violet-rgb), .12), rgba(var(--color-info-rgb), .1) );--fill-primary-soft: rgba(var(--practiq-violet-rgb), .1);--fill-primary-subtle: rgba(var(--practiq-violet-rgb), .08);--fill-primary-faint: rgba(var(--practiq-violet-rgb), .06);--fill-success-subtle: rgba(var(--color-success-rgb), .08);--fill-warning-subtle: rgba(var(--color-warning-rgb), .08);--fill-border-muted: rgba(var(--surface-border-rgb), .2);--focus-ring-primary: 0 0 0 3px rgba(var(--practiq-violet-light-rgb), .12);--focus-ring-error: 0 0 0 3px rgba(var(--color-error-rgb), .12);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 16px;--radius-2xl: 20px;--radius-pill: 999px;--transition: all .2s ease;--transition-fast: all .15s ease;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px}:root[data-color-scheme=dark]{color-scheme:dark;--surface-bg: #0b0d12;--surface-bg-soft: #0e1016;--surface-bg-cool: #0d0f14;--surface-bg-muted: #0f1117;--surface-card: #1f2330;--surface-hover: #272c3b;--surface-border: #363b47;--surface-subtle: rgba(31, 35, 48, .9);--surface-card-border: #363b47;--border-strong: #454b58;--surface-card-rgb: 31, 35, 48;--surface-bg-rgb: 11, 13, 18;--surface-border-rgb: 54, 59, 71;--text-primary-rgb: 226, 232, 240;--text-heading: #f1f5f9;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--text-placeholder: #9aa7bb;--practiq-violet-bg: rgba(139, 92, 246, .14);--color-success-bg: rgba(16, 185, 129, .14);--color-error-bg: rgba(239, 68, 68, .14);--color-warning-bg: rgba(245, 158, 11, .14)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.surface-flat{background:var(--elevation-flat-bg)}.surface-card{background:var(--elevation-tint-bg);box-shadow:var(--elevation-tint-shadow)}.surface-panel{background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow)}:focus-visible{outline:3px solid rgba(var(--practiq-violet-light-rgb),.45);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html{font-family:var(--font-body-family);font-size:16px;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--gradient-app-bg);color:var(--text-primary);line-height:1.6}a{color:var(--practiq-violet);text-decoration:none}input,textarea,select{font-family:inherit;font-size:inherit}h1,h2,h3,h4,h5,h6,button,[class*=badge],[class*=chip],[class*=pill]{font-family:var(--font-ui-family)}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid rgba(var(--practiq-violet-rgb),.28);outline-offset:3px}:root[data-ui-theme=secondary],:root[data-ui-theme=serious]{font-family:var(--font-body-family);--radius-xs: 3px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 7px;--radius-xl: 8px;--radius-2xl: 10px;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 13px;--text-lg: 14px;--space-1: 3px;--space-2: 6px;--space-3: 10px;--space-4: 13px;--space-5: 16px;--space-6: 20px;--space-8: 26px;--practiq-violet: #4f46e5;--practiq-violet-rgb: 79, 70, 229;--practiq-violet-light: #4f46e5;--practiq-violet-dark: #3730a3;--gradient-brand: linear-gradient(135deg, #4f46e5, #4338ca);--gradient-brand-soft: rgba(79, 70, 229, .08);--gradient-app-bg: var(--surface-bg);--shadow-card: 0 1px 2px rgba(15, 23, 42, .06);--shadow-card-lg: 0 2px 6px rgba(15, 23, 42, .08);--shadow-violet: 0 1px 3px rgba(79, 70, 229, .18);--shadow-indigo: 0 1px 3px rgba(79, 70, 229, .18);--elevation-tint-shadow: 0 1px 2px rgba(15, 23, 42, .06)}:root[data-ui-theme=secondary] main article,:root[data-ui-theme=secondary] main [class*=card],:root[data-ui-theme=secondary] main [class*=panel],:root[data-ui-theme=secondary] main [class*=banner],:root[data-ui-theme=secondary] main [class*=shell],:root[data-ui-theme=secondary] main [class*=sheet]{border-radius:var(--radius-md)!important}:root[data-ui-theme=secondary] .sidebar,:root[data-ui-theme=secondary] .sidebar-brand,:root[data-ui-theme=secondary] .sidebar-nav,:root[data-ui-theme=secondary] .nav-item,:root[data-ui-theme=secondary] .nav-item--continue{border-radius:var(--radius-sm)!important}:root[data-ui-theme=secondary] .bell-btn,:root[data-ui-theme=secondary] .bell-panel,:root[data-ui-theme=secondary] .bell-item{border-radius:var(--radius-sm)!important}:root[data-ui-theme=secondary] .color-palette .swatch,:root[data-ui-theme=secondary] .color-palette .more-btn,:root[data-ui-theme=secondary] .color-palette .pop,:root[data-ui-theme=secondary] .color-palette .pop-swatch,:root[data-ui-theme=secondary] .color-palette .pop-custom{border-radius:var(--radius-xs)!important}:root[data-ui-theme=secondary] .stepper,:root[data-ui-theme=secondary] .stepper-dot,:root[data-ui-theme=secondary] .btn-back{border-radius:var(--radius-sm)!important}:root[data-ui-theme=secondary] .btn-back{border-radius:8px!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:10px 20px;border-radius:var(--radius-sm);font-size:var(--text-md);font-weight:700;cursor:pointer;border:none;transition:var(--transition);white-space:nowrap}.btn-primary{background:var(--practiq-violet);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){background:var(--practiq-violet-dark);box-shadow:var(--shadow-violet);transform:translateY(-1px)}.btn-secondary{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--surface-border)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.btn-danger{background:var(--color-error);color:var(--color-on-primary)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:6px 14px;font-size:13px}.card{background:var(--surface-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--surface-elevated-strong);padding:24px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.form-input{padding:10px 14px;border:1.5px solid var(--surface-border);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--surface-card);transition:var(--transition);outline:none;width:100%}.form-input:focus{border-color:var(--practiq-violet-light);box-shadow:var(--focus-ring-primary)}.form-input::placeholder{color:var(--text-placeholder)}.form-select{padding:10px 14px;border:1.5px solid var(--surface-border);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--surface-card);transition:var(--transition);outline:none;width:100%;cursor:pointer}.form-select:focus{border-color:var(--practiq-violet-light);box-shadow:var(--focus-ring-primary)}.form-textarea{padding:10px 14px;border:1.5px solid var(--surface-border);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--surface-card);transition:var(--transition);outline:none;width:100%;resize:vertical;min-height:80px;font-family:inherit}.form-textarea:focus{border-color:var(--practiq-violet-light);box-shadow:var(--focus-ring-primary)}.form-error{font-size:12px;color:var(--color-error);margin-top:4px}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-size:12px;font-weight:500}.badge-violet{background:var(--practiq-violet-pale);color:var(--practiq-violet)}.badge-green{background:var(--color-success-bg);color:var(--color-success)}.badge-red{background:var(--color-error-bg);color:var(--color-error)}.badge-yellow{background:var(--color-warning-bg);color:var(--color-warning)}.spinner{width:20px;height:20px;border:2px solid rgba(var(--surface-card-rgb),.3);border-top-color:var(--color-on-primary);border-radius:50%;animation:spin .7s linear infinite}.spinner-violet{border-color:rgba(var(--practiq-violet-rgb),.2);border-top-color:var(--practiq-violet)}@keyframes spin{to{transform:rotate(360deg)}}.progress-bar{height:8px;background:rgba(var(--surface-border-rgb),.35);border-radius:100px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--practiq-violet-dark),var(--practiq-violet));border-radius:100px;transition:width .5s ease;transform-origin:left;animation:progress-grow .7s cubic-bezier(.22,.61,.36,1)}@keyframes progress-grow{0%{transform:scaleX(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}}.anim-rise,.anim-stagger>*{animation:rise-in .38s cubic-bezier(.22,.61,.36,1) backwards}.anim-stagger>*:nth-child(1){animation-delay:0ms}.anim-stagger>*:nth-child(2){animation-delay:60ms}.anim-stagger>*:nth-child(3){animation-delay:.12s}.anim-stagger>*:nth-child(4){animation-delay:.18s}.anim-stagger>*:nth-child(5){animation-delay:.24s}.anim-stagger>*:nth-child(n+6){animation-delay:.3s}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-heading{color:var(--text-heading)}.text-violet{color:var(--practiq-violet)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.place-center{display:grid;place-items:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.w-full{width:100%}.text-center{text-align:center}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-right-enter-active,.slide-right-leave-active{transition:all .3s ease}.slide-right-enter-from,.slide-right-leave-to{transform:translate(100%);opacity:0}.page-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:22px 24px;border-radius:var(--radius-2xl);background:linear-gradient(115deg,var(--surface-elevated),var(--surface-card));border:1px solid var(--surface-elevated-strong);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-wrap:wrap;overflow:hidden}.page-header>*{position:relative;z-index:1}.page-kicker{margin-bottom:2px;color:var(--practiq-violet);font-size:var(--text-xs);font-weight:700;letter-spacing:.16em;text-transform:uppercase}.page-title{margin:0;color:var(--text-primary);font-size:clamp(1.55rem,2.5vw,2rem);font-weight:800}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.section-title{margin:0 0 4px;color:var(--text-primary);font-size:1rem;font-weight:800}.section-subtitle{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.empty-state{padding:48px 24px;border:1px dashed rgba(var(--surface-border-rgb),.3);border-radius:var(--radius-2xl);background:var(--surface-glass);text-align:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal-box{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:32px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-title{font-size:20px;font-weight:600;margin-bottom:20px;color:var(--text-primary)}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}@media(max-width:480px){.modal-actions{flex-direction:column-reverse}.modal-actions>*{width:100%}}body.assistant-modal-open .floating-button{opacity:0!important;pointer-events:none!important;transform:scale(.8)!important;transition:opacity .2s ease,transform .2s ease!important}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(var(--surface-border-rgb),.12)}.modal-close{width:34px;height:34px;border-radius:var(--radius-sm);border:none;background:rgba(var(--surface-bg-rgb),.9);color:var(--text-secondary);cursor:pointer;display:grid;place-items:center;transition:background .15s}.modal-close:hover{background:rgba(var(--color-error-rgb),.08);color:var(--color-error)}.modal-body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.input-wrap{position:relative}.field-input{width:100%;padding:11px 40px 11px 14px;border-radius:var(--radius-md);border:1.5px solid rgba(var(--surface-border-rgb),.25);font-size:var(--text-md);background:rgba(var(--surface-bg-rgb),.8);color:var(--text-primary);outline:none;box-sizing:border-box;transition:border-color .15s}.field-input:focus{border-color:rgba(var(--practiq-violet-rgb),.4);background:var(--surface-card)}.eye-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:none;color:var(--text-secondary);cursor:pointer;padding:4px;font-size:var(--text-md)}.strength-hints{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 10px}.strength-hints li{font-size:var(--text-xs);color:var(--text-muted);display:flex;align-items:center;gap:4px}.strength-hints li:before{content:"✗";font-size:10px}.strength-hints li.ok{color:var(--color-success-dark)}.strength-hints li.ok:before{content:"✓"}.field-error{font-size:var(--text-sm);color:var(--color-error);margin:0}.form-alert{font-size:var(--text-base);border-radius:var(--radius-sm);padding:10px 14px;margin:0}.form-alert--error{color:var(--color-error);background:rgba(var(--color-error-rgb),.06)}.form-alert--success{color:var(--color-success-dark);background:rgba(var(--color-success-rgb),.08);display:flex;align-items:center;gap:8px}.btn-gradient{padding:12px;border-radius:var(--radius-md);border:none;background:var(--gradient-brand);color:var(--color-on-primary);font-size:var(--text-md);font-weight:700;cursor:pointer;transition:opacity .15s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-gradient:disabled{opacity:.5;cursor:not-allowed}.btn-gradient:not(:disabled):hover{opacity:.9}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}@media(max-width:1024px){.grid-3{grid-template-columns:repeat(2,1fr)}.btn{padding:9px 16px}.card{padding:20px}.modal-box{padding:24px}}@media(max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.card{padding:16px}.modal-box{padding:20px;max-width:100%;border-radius:var(--radius-lg)}.modal-title{font-size:17px}.btn{font-size:var(--text-base)}.badge{font-size:var(--text-xs);padding:2px 8px}}@media(max-width:820px){.modal-overlay,.modal-backdrop{padding:0;align-items:flex-end}.modal-box{max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:95dvh}}@media(max-width:600px){.grid-auto{grid-template-columns:1fr}.btn{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.spinner,.spinner-violet,.pi-spin{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}@font-face{font-family:primeicons;font-display:block;src:url(/assets/primeicons-DMOk5skT.eot);src:url(/assets/primeicons-DMOk5skT.eot?#iefix) format("embedded-opentype"),url(/assets/primeicons-C6QP2o4f.woff2) format("woff2"),url(/assets/primeicons-WjwUDZjB.woff) format("woff"),url(/assets/primeicons-MpK4pl85.ttf) format("truetype"),url(/assets/primeicons-Dr5RGzOO.svg?#primeicons) format("svg");font-weight:400;font-style:normal}.pi{font-family:primeicons;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.pi:before{--webkit-backface-visibility:hidden;backface-visibility:hidden}.pi-fw{width:1.28571429em;text-align:center}.pi-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@media(prefers-reduced-motion:reduce){.pi-spin{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.pi-folder-plus:before{content:""}.pi-receipt:before{content:""}.pi-asterisk:before{content:""}.pi-face-smile:before{content:""}.pi-pinterest:before{content:""}.pi-expand:before{content:""}.pi-pen-to-square:before{content:""}.pi-wave-pulse:before{content:""}.pi-turkish-lira:before{content:""}.pi-spinner-dotted:before{content:""}.pi-crown:before{content:""}.pi-pause-circle:before{content:""}.pi-warehouse:before{content:""}.pi-objects-column:before{content:""}.pi-clipboard:before{content:""}.pi-play-circle:before{content:""}.pi-venus:before{content:""}.pi-cart-minus:before{content:""}.pi-file-plus:before{content:""}.pi-microchip:before{content:""}.pi-twitch:before{content:""}.pi-building-columns:before{content:""}.pi-file-check:before{content:""}.pi-microchip-ai:before{content:""}.pi-trophy:before{content:""}.pi-barcode:before{content:""}.pi-file-arrow-up:before{content:""}.pi-mars:before{content:""}.pi-tiktok:before{content:""}.pi-arrow-up-right-and-arrow-down-left-from-center:before{content:""}.pi-ethereum:before{content:""}.pi-list-check:before{content:""}.pi-thumbtack:before{content:""}.pi-arrow-down-left-and-arrow-up-right-to-center:before{content:""}.pi-equals:before{content:""}.pi-lightbulb:before{content:""}.pi-star-half:before{content:""}.pi-address-book:before{content:""}.pi-chart-scatter:before{content:""}.pi-indian-rupee:before{content:""}.pi-star-half-fill:before{content:""}.pi-cart-arrow-down:before{content:""}.pi-calendar-clock:before{content:""}.pi-sort-up-fill:before{content:""}.pi-sparkles:before{content:""}.pi-bullseye:before{content:""}.pi-sort-down-fill:before{content:""}.pi-graduation-cap:before{content:""}.pi-hammer:before{content:""}.pi-bell-slash:before{content:""}.pi-gauge:before{content:""}.pi-shop:before{content:""}.pi-headphones:before{content:""}.pi-eraser:before{content:""}.pi-stopwatch:before{content:""}.pi-verified:before{content:""}.pi-delete-left:before{content:""}.pi-hourglass:before{content:""}.pi-truck:before{content:""}.pi-wrench:before{content:""}.pi-microphone:before{content:""}.pi-megaphone:before{content:""}.pi-arrow-right-arrow-left:before{content:""}.pi-bitcoin:before{content:""}.pi-file-edit:before{content:""}.pi-language:before{content:""}.pi-file-export:before{content:""}.pi-file-import:before{content:""}.pi-file-word:before{content:""}.pi-gift:before{content:""}.pi-cart-plus:before{content:""}.pi-thumbs-down-fill:before{content:""}.pi-thumbs-up-fill:before{content:""}.pi-arrows-alt:before{content:""}.pi-calculator:before{content:""}.pi-sort-alt-slash:before{content:""}.pi-arrows-h:before{content:""}.pi-arrows-v:before{content:""}.pi-pound:before{content:""}.pi-prime:before{content:""}.pi-chart-pie:before{content:""}.pi-reddit:before{content:""}.pi-code:before{content:""}.pi-sync:before{content:""}.pi-shopping-bag:before{content:""}.pi-server:before{content:""}.pi-database:before{content:""}.pi-hashtag:before{content:""}.pi-bookmark-fill:before{content:""}.pi-filter-fill:before{content:""}.pi-heart-fill:before{content:""}.pi-flag-fill:before{content:""}.pi-circle:before{content:""}.pi-circle-fill:before{content:""}.pi-bolt:before{content:""}.pi-history:before{content:""}.pi-box:before{content:""}.pi-at:before{content:""}.pi-arrow-up-right:before{content:""}.pi-arrow-up-left:before{content:""}.pi-arrow-down-left:before{content:""}.pi-arrow-down-right:before{content:""}.pi-telegram:before{content:""}.pi-stop-circle:before{content:""}.pi-stop:before{content:""}.pi-whatsapp:before{content:""}.pi-building:before{content:""}.pi-qrcode:before{content:""}.pi-car:before{content:""}.pi-instagram:before{content:""}.pi-linkedin:before{content:""}.pi-send:before{content:""}.pi-slack:before{content:""}.pi-sun:before{content:""}.pi-moon:before{content:""}.pi-vimeo:before{content:""}.pi-youtube:before{content:""}.pi-flag:before{content:""}.pi-wallet:before{content:""}.pi-map:before{content:""}.pi-link:before{content:""}.pi-credit-card:before{content:""}.pi-discord:before{content:""}.pi-percentage:before{content:""}.pi-euro:before{content:""}.pi-book:before{content:""}.pi-shield:before{content:""}.pi-paypal:before{content:""}.pi-amazon:before{content:""}.pi-phone:before{content:""}.pi-filter-slash:before{content:""}.pi-facebook:before{content:""}.pi-github:before{content:""}.pi-twitter:before{content:""}.pi-step-backward-alt:before{content:""}.pi-step-forward-alt:before{content:""}.pi-forward:before{content:""}.pi-backward:before{content:""}.pi-fast-backward:before{content:""}.pi-fast-forward:before{content:""}.pi-pause:before{content:""}.pi-play:before{content:""}.pi-compass:before{content:""}.pi-id-card:before{content:""}.pi-ticket:before{content:""}.pi-file-o:before{content:""}.pi-reply:before{content:""}.pi-directions-alt:before{content:""}.pi-directions:before{content:""}.pi-thumbs-up:before{content:""}.pi-thumbs-down:before{content:""}.pi-sort-numeric-down-alt:before{content:""}.pi-sort-numeric-up-alt:before{content:""}.pi-sort-alpha-down-alt:before{content:""}.pi-sort-alpha-up-alt:before{content:""}.pi-sort-numeric-down:before{content:""}.pi-sort-numeric-up:before{content:""}.pi-sort-alpha-down:before{content:""}.pi-sort-alpha-up:before{content:""}.pi-sort-alt:before{content:""}.pi-sort-amount-up:before{content:""}.pi-sort-amount-down:before{content:""}.pi-sort-amount-down-alt:before{content:""}.pi-sort-amount-up-alt:before{content:""}.pi-palette:before{content:""}.pi-undo:before{content:""}.pi-desktop:before{content:""}.pi-sliders-v:before{content:""}.pi-sliders-h:before{content:""}.pi-search-plus:before{content:""}.pi-search-minus:before{content:""}.pi-file-excel:before{content:""}.pi-file-pdf:before{content:""}.pi-check-square:before{content:""}.pi-chart-line:before{content:""}.pi-user-edit:before{content:""}.pi-exclamation-circle:before{content:""}.pi-android:before{content:""}.pi-google:before{content:""}.pi-apple:before{content:""}.pi-microsoft:before{content:""}.pi-heart:before{content:""}.pi-mobile:before{content:""}.pi-tablet:before{content:""}.pi-key:before{content:""}.pi-shopping-cart:before{content:""}.pi-comments:before{content:""}.pi-comment:before{content:""}.pi-briefcase:before{content:""}.pi-bell:before{content:""}.pi-paperclip:before{content:""}.pi-share-alt:before{content:""}.pi-envelope:before{content:""}.pi-volume-down:before{content:""}.pi-volume-up:before{content:""}.pi-volume-off:before{content:""}.pi-eject:before{content:""}.pi-money-bill:before{content:""}.pi-images:before{content:""}.pi-image:before{content:""}.pi-sign-in:before{content:""}.pi-sign-out:before{content:""}.pi-wifi:before{content:""}.pi-sitemap:before{content:""}.pi-chart-bar:before{content:""}.pi-camera:before{content:""}.pi-dollar:before{content:""}.pi-lock-open:before{content:""}.pi-table:before{content:""}.pi-map-marker:before{content:""}.pi-list:before{content:""}.pi-eye-slash:before{content:""}.pi-eye:before{content:""}.pi-folder-open:before{content:""}.pi-folder:before{content:""}.pi-video:before{content:""}.pi-inbox:before{content:""}.pi-lock:before{content:""}.pi-unlock:before{content:""}.pi-tags:before{content:""}.pi-tag:before{content:""}.pi-power-off:before{content:""}.pi-save:before{content:""}.pi-question-circle:before{content:""}.pi-question:before{content:""}.pi-copy:before{content:""}.pi-file:before{content:""}.pi-clone:before{content:""}.pi-calendar-times:before{content:""}.pi-calendar-minus:before{content:""}.pi-calendar-plus:before{content:""}.pi-ellipsis-v:before{content:""}.pi-ellipsis-h:before{content:""}.pi-bookmark:before{content:""}.pi-globe:before{content:""}.pi-replay:before{content:""}.pi-filter:before{content:""}.pi-print:before{content:""}.pi-align-right:before{content:""}.pi-align-left:before{content:""}.pi-align-center:before{content:""}.pi-align-justify:before{content:""}.pi-cog:before{content:""}.pi-cloud-download:before{content:""}.pi-cloud-upload:before{content:""}.pi-cloud:before{content:""}.pi-pencil:before{content:""}.pi-users:before{content:""}.pi-clock:before{content:""}.pi-user-minus:before{content:""}.pi-user-plus:before{content:""}.pi-trash:before{content:""}.pi-external-link:before{content:""}.pi-window-maximize:before{content:""}.pi-window-minimize:before{content:""}.pi-refresh:before{content:""}.pi-user:before{content:""}.pi-exclamation-triangle:before{content:""}.pi-calendar:before{content:""}.pi-chevron-circle-left:before{content:""}.pi-chevron-circle-down:before{content:""}.pi-chevron-circle-right:before{content:""}.pi-chevron-circle-up:before{content:""}.pi-angle-double-down:before{content:""}.pi-angle-double-left:before{content:""}.pi-angle-double-right:before{content:""}.pi-angle-double-up:before{content:""}.pi-angle-down:before{content:""}.pi-angle-left:before{content:""}.pi-angle-right:before{content:""}.pi-angle-up:before{content:""}.pi-upload:before{content:""}.pi-download:before{content:""}.pi-ban:before{content:""}.pi-star-fill:before{content:""}.pi-star:before{content:""}.pi-chevron-left:before{content:""}.pi-chevron-right:before{content:""}.pi-chevron-down:before{content:""}.pi-chevron-up:before{content:""}.pi-caret-left:before{content:""}.pi-caret-right:before{content:""}.pi-caret-down:before{content:""}.pi-caret-up:before{content:""}.pi-search:before{content:""}.pi-check:before{content:""}.pi-check-circle:before{content:""}.pi-times:before{content:""}.pi-times-circle:before{content:""}.pi-plus:before{content:""}.pi-plus-circle:before{content:""}.pi-minus:before{content:""}.pi-minus-circle:before{content:""}.pi-circle-on:before{content:""}.pi-circle-off:before{content:""}.pi-sort-down:before{content:""}.pi-sort-up:before{content:""}.pi-sort:before{content:""}.pi-step-backward:before{content:""}.pi-step-forward:before{content:""}.pi-th-large:before{content:""}.pi-arrow-down:before{content:""}.pi-arrow-left:before{content:""}.pi-arrow-right:before{content:""}.pi-arrow-up:before{content:""}.pi-bars:before{content:""}.pi-arrow-circle-down:before{content:""}.pi-arrow-circle-left:before{content:""}.pi-arrow-circle-right:before{content:""}.pi-arrow-circle-up:before{content:""}.pi-info:before{content:""}.pi-info-circle:before{content:""}.pi-home:before{content:""}.pi-spinner:before{content:""}:root[data-ui-theme=teacher]{--brand-50: #f5f3ff;--brand-100: #ebe7ff;--brand-200: #d9d2fb;--brand-300: #b7a9f6;--brand-400: #8d7bea;--brand-500: #6557dc;--brand-600: #5546c6;--brand-700: #4535a4;--brand-800: #342879;--brand-900: #241c54;--on-brand: #ffffff;--deep-800: #2b2550;--canvas: #fafaff;--surface: #ffffff;--surface-sunken: #f3f1ff;--line: #e7e7ef;--line-control: #9aa2b4;--ink: #1b1e2e;--ink-soft: #3b4154;--ink-muted: #5b6479;--success: #0f7a5f;--success-soft: #e3f4ee;--success-solid: #18866b;--warning: #8a5a0c;--warning-soft: #fdf3da;--warning-solid: #a86b10;--danger: #b3453f;--danger-soft: #fbe4e2;--danger-solid: #b3453f;--color-success-rgb: 24, 134, 107;--color-warning-rgb: 168, 107, 16;--color-error-rgb: 179, 69, 63;--info: #1d4ed8;--info-soft: #eff6ff;--info-solid: #3b82f6;--scrim: rgba(15, 23, 42, .45);--focus: var(--brand-600);--space-10: 40px;--space-12: 48px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .06);--shadow-sm: 0 4px 14px rgba(93, 108, 146, .08);--shadow-lg: 0 24px 52px rgba(93, 108, 146, .14);--sidebar-w: 256px;--topbar-h: 56px;--tabbar-h: 68px;--content-max: 1120px;--touch: 44px;--font-ui: var(--font-ui-family);--font-body: var(--font-body-family)}:root[data-ui-theme=teacher]{font-family:var(--font-body-family);--practiq-violet-50: var(--brand-50);--practiq-violet-100: var(--brand-100);--practiq-violet-200: var(--brand-200);--practiq-violet-300: var(--brand-300);--practiq-violet-400: var(--brand-400);--practiq-violet-500: var(--brand-500);--practiq-violet-600: var(--brand-600);--practiq-violet-700: var(--brand-700);--practiq-violet-800: var(--brand-800);--practiq-violet-900: var(--brand-900);--practiq-violet-950: #2e1065;--practiq-violet: var(--brand-600);--practiq-violet-light: var(--brand-500);--practiq-violet-dark: var(--brand-800);--practiq-violet-pale: var(--brand-50);--practiq-violet-bg: var(--brand-50);--practiq-indigo: #6366f1;--practiq-indigo-soft: #c7d2fe;--practiq-violet-rgb: 85, 70, 198;--practiq-violet-light-rgb: 101, 87, 220;--practiq-indigo-rgb: 99, 102, 241;--surface-bg: var(--canvas);--surface-bg-soft: var(--canvas);--surface-bg-cool: var(--canvas);--surface-bg-muted: var(--canvas);--surface-card: var(--surface);--surface-hover: var(--surface-sunken);--surface-border: var(--line);--surface-card-border: var(--line);--surface-subtle: var(--surface-sunken);--surface-elevated: var(--surface);--surface-elevated-strong: var(--line);--surface-glass: var(--surface);--surface-glass-border: var(--line);--surface-scrim: var(--scrim);--surface-overlay: var(--scrim);--border-strong: var(--line-control);--surface-bg-rgb: 250, 250, 255;--surface-border-rgb: 200, 205, 219;--text-heading: var(--ink);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--text-muted: var(--ink-muted);--color-success: var(--success-solid);--color-success-bg: var(--success-soft);--color-success-dark: var(--success);--color-warning: var(--warning-solid);--color-warning-bg: var(--warning-soft);--color-warning-dark: var(--warning);--color-warning-strong: var(--warning);--color-error: var(--danger);--color-error-bg: var(--danger-soft);--color-error-dark: var(--danger);--color-info: var(--info-solid);--color-info-bg: var(--info-soft);--color-info-dark: var(--info);--color-on-primary: var(--on-brand);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 16px;--radius-2xl: 20px;--shadow-sm: var(--shadow-xs);--shadow-md: 0 4px 14px rgba(93, 108, 146, .08);--shadow-card: 0 4px 14px rgba(93, 108, 146, .08);--shadow-card-lg: 0 16px 35px rgba(57, 49, 104, .12);--shadow-panel: var(--shadow-lg);--shadow-soft: 0 4px 14px rgba(93, 108, 146, .08);--shadow-violet: 0 4px 14px rgba(85, 70, 198, .25);--shadow-violet-lg: 0 6px 20px rgba(85, 70, 198, .3);--shadow-indigo: 0 12px 22px rgba(99, 102, 241, .2);--gradient-app-bg: var(--canvas);--gradient-brand: linear-gradient(135deg, var(--brand-500), var(--practiq-indigo));--gradient-brand-panel: var(--brand-800);--gradient-brand-soft: var(--brand-50);--gradient-brand-avatar: var(--brand-100);--gradient-card-accent: var(--surface);--gradient-mobile-topbar: var(--surface);--fill-primary-soft: var(--brand-50);--fill-primary-subtle: var(--brand-50);--fill-primary-faint: var(--surface-sunken);--focus-ring-primary: 0 0 0 2px var(--brand-200)}:root[data-ui-theme=teacher] body,:root[data-ui-theme=teacher]{background:var(--canvas);color:var(--ink)}:root[data-ui-theme=teacher] :focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-ui-theme=teacher] .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font:900 13.5px/20px var(--font-ui);white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}:root[data-ui-theme=teacher] .btn:focus-visible,:root[data-ui-theme=teacher] .icon-btn:focus-visible,:root[data-ui-theme=teacher] .tab:focus-visible,:root[data-ui-theme=teacher] .nav-item:focus-visible,:root[data-ui-theme=teacher] .tab-item:focus-visible,:root[data-ui-theme=teacher] .input:focus-visible,:root[data-ui-theme=teacher] .select:focus-visible,:root[data-ui-theme=teacher] .textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:root[data-ui-theme=teacher] .btn-primary{background:var(--brand-500);color:var(--on-brand);transition:background-color .15s,box-shadow .18s ease}:root[data-ui-theme=teacher] .btn-primary:hover:not(:disabled){background:var(--brand-600)}:root[data-ui-theme=teacher] .btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}:root[data-ui-theme=teacher] .btn-secondary:hover:not(:disabled){background:var(--surface-sunken);box-shadow:var(--shadow-xs)}:root[data-ui-theme=teacher] .btn-ghost{background:transparent;color:var(--ink-soft)}:root[data-ui-theme=teacher] .btn-ghost:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink);box-shadow:var(--shadow-xs)}:root[data-ui-theme=teacher] .btn-danger{background:var(--danger);color:var(--on-brand)}:root[data-ui-theme=teacher] .btn-sm{min-height:32px;padding:0 var(--space-3);font-size:13px}:root[data-ui-theme=teacher] .btn:disabled{opacity:.5;cursor:not-allowed}:root[data-ui-theme=teacher] .icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:var(--radius-md);background:transparent;color:var(--ink-soft);cursor:pointer}:root[data-ui-theme=teacher] .icon-btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink);box-shadow:var(--shadow-xs)}:root[data-ui-theme=teacher] .badge{display:inline-flex;align-items:center;gap:var(--space-1);min-height:22px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-soft);font:700 12px/16px var(--font-ui);white-space:nowrap}:root[data-ui-theme=teacher] .badge-brand,:root[data-ui-theme=teacher] .badge-violet{background:var(--brand-50);color:var(--brand-800)}:root[data-ui-theme=teacher] .badge-success,:root[data-ui-theme=teacher] .badge-green{background:var(--success-soft);color:var(--success)}:root[data-ui-theme=teacher] .badge-warning,:root[data-ui-theme=teacher] .badge-yellow{background:var(--warning-soft);color:var(--warning)}:root[data-ui-theme=teacher] .badge-danger,:root[data-ui-theme=teacher] .badge-red{background:var(--danger-soft);color:var(--danger)}:root[data-ui-theme=teacher] .badge-info{background:var(--info-soft);color:var(--info)}:root[data-ui-theme=teacher] .subject-badge:before{content:"";width:8px;height:8px;border-radius:var(--radius-pill);background:var(--subject, var(--ink-muted))}:root[data-ui-theme=teacher] .avatar{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius-pill);background:var(--brand-100);color:var(--brand-900);font:800 15px/1 var(--font-ui)}:root[data-ui-theme=teacher] .card{padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}:root[data-ui-theme=teacher] .page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4) var(--space-6);margin:0 0 var(--space-6);padding:0;background:none;border:0;box-shadow:none}:root[data-ui-theme=teacher] .page-header__left{min-width:0}:root[data-ui-theme=teacher] .page-header__right,:root[data-ui-theme=teacher] .page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}:root[data-ui-theme=teacher] .page-heading-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}:root[data-ui-theme=teacher] .page-kicker{margin:0 0 var(--space-1);font:900 11px/14px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--brand-700)}:root[data-ui-theme=teacher] .page-title{margin:0;font:900 28px/1.06 var(--font-ui);letter-spacing:-.035em;color:var(--ink)}:root[data-ui-theme=teacher] .page-header h1{margin:0;font:900 clamp(24px,3vw,28px)/1.06 var(--font-ui);letter-spacing:-.035em;color:var(--ink)}:root[data-ui-theme=teacher] .dashboard .page-header h1{font-size:30px}:root[data-ui-theme=teacher] .text-accent{color:var(--brand-600)}:root[data-ui-theme=teacher] .page-intro,:root[data-ui-theme=teacher] .page-subtitle,:root[data-ui-theme=teacher] .page-sub{max-width:62ch;margin:var(--space-1) 0 0;font:400 13.5px/1.55 var(--font-body);color:var(--ink-muted)}:root[data-ui-theme=teacher] .content-section{margin:0 0 var(--space-8);padding:0;background:none;border:0;box-shadow:none}:root[data-ui-theme=teacher] .section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0 0 var(--space-3);padding:0;border:0}:root[data-ui-theme=teacher] .section-title-row{display:flex;align-items:center;gap:var(--space-2)}:root[data-ui-theme=teacher] .section-title{margin:0;font:900 19px/1.2 var(--font-ui);letter-spacing:-.03em;color:var(--ink)}:root[data-ui-theme=teacher] .section-subtitle{margin:2px 0 0;font:400 13px/20px var(--font-body);color:var(--ink-soft)}:root[data-ui-theme=teacher] .section-count{display:inline-grid;place-items:center;min-width:24px;height:22px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-soft);font:800 12px/1 var(--font-ui)}:root[data-ui-theme=teacher] .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}:root[data-ui-theme=teacher] .notice{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font:600 14px/20px var(--font-body);color:var(--ink)}:root[data-ui-theme=teacher] .notice>i{font-size:18px}:root[data-ui-theme=teacher] .notice__text{flex:1;min-width:0}:root[data-ui-theme=teacher] .notice--warning{background:var(--warning-soft)}:root[data-ui-theme=teacher] .notice--warning>i{color:var(--warning)}:root[data-ui-theme=teacher] .notice--info{background:var(--info-soft)}:root[data-ui-theme=teacher] .notice--info>i{color:var(--info)}:root[data-ui-theme=teacher] .notice--danger{background:var(--danger-soft)}:root[data-ui-theme=teacher] .notice--danger>i{color:var(--danger)}:root[data-ui-theme=teacher] .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin:0 0 var(--space-8)}:root[data-ui-theme=teacher] .stat-tile{display:flex;align-items:center;gap:var(--space-3);min-width:0;margin:0;padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);color:inherit;text-align:left;font:inherit;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}:root[data-ui-theme=teacher] button.stat-tile{cursor:pointer}:root[data-ui-theme=teacher] button.stat-tile:hover{border-color:var(--brand-200);box-shadow:var(--shadow-card-lg);transform:translateY(-2px)}:root[data-ui-theme=teacher] .stat-tile__icon{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius-md);background:var(--brand-50);color:var(--brand-800);font-size:18px}:root[data-ui-theme=teacher] .stat-tile__icon--info{background:var(--info-soft);color:var(--info)}:root[data-ui-theme=teacher] .stat-tile__icon--success{background:var(--success-soft);color:var(--success)}:root[data-ui-theme=teacher] .stat-tile__icon--warning{background:var(--warning-soft);color:var(--warning)}:root[data-ui-theme=teacher] .stat-tile__body{display:flex;flex-direction:column;min-width:0}:root[data-ui-theme=teacher] .stat-tile__value{font:800 28px/32px var(--font-ui);letter-spacing:-.02em;color:var(--ink)}:root[data-ui-theme=teacher] .stat-tile__label{font:400 13px/20px var(--font-body);color:var(--ink-soft)}:root[data-ui-theme=teacher] .stat-tile__go{margin-left:auto;color:var(--ink-muted)}:root[data-ui-theme=teacher] .grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px}:root[data-ui-theme=teacher] .course-card{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:12px;color:inherit;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}:root[data-ui-theme=teacher] .course-card:hover{border-color:var(--brand-200);box-shadow:0 12px 26px #3931681a;transform:translateY(-3px)}:root[data-ui-theme=teacher] .course-card__top{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}:root[data-ui-theme=teacher] .course-title{margin:var(--space-1) 0 0;font:900 16px/21px var(--font-ui);letter-spacing:-.02em;color:var(--ink)}:root[data-ui-theme=teacher] .course-desc{margin:0;font:400 13px/20px var(--font-body);color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:root[data-ui-theme=teacher] .course-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--line)}:root[data-ui-theme=teacher] .course-date{display:inline-flex;align-items:center;gap:6px;font:400 12px/16px var(--font-body);color:var(--ink-muted)}:root[data-ui-theme=teacher] .course-cta{display:inline-flex;align-items:center;gap:var(--space-1);font:900 13px/20px var(--font-ui);color:var(--brand-600)}:root[data-ui-theme=teacher] .row-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}:root[data-ui-theme=teacher] .row-list__head,:root[data-ui-theme=teacher] .row-item{display:grid;grid-template-columns:40px minmax(0,1.4fr) minmax(0,1.6fr) minmax(0,1fr) 20px;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4)}:root[data-ui-theme=teacher] .row-list__head{background:var(--surface-sunken);font:700 12px/16px var(--font-ui);color:var(--ink-soft);letter-spacing:.02em}:root[data-ui-theme=teacher] .row-item{min-height:64px;border-top:1px solid var(--line);color:inherit;text-decoration:none}:root[data-ui-theme=teacher] .row-list__head+.row-item{border-top:0}:root[data-ui-theme=teacher] .row-item:hover{background:var(--surface-sunken)}:root[data-ui-theme=teacher] .row-item__name{min-width:0;font:600 14px/22px var(--font-body);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .row-item__meta{min-width:0;font:400 13px/20px var(--font-body);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .row-item__tags{display:flex;flex-wrap:wrap;gap:var(--space-1)}:root[data-ui-theme=teacher] .row-item__go{color:var(--ink-muted)}:root[data-ui-theme=teacher] .row-item.course-row{grid-template-columns:minmax(240px,1.05fr) minmax(180px,1.35fr) 118px 20px;column-gap:var(--space-5)}:root[data-ui-theme=teacher] .row-item.student-row{grid-template-columns:40px minmax(0,1fr) 100px 20px}:root[data-ui-theme=teacher] .course-row__main{display:flex;min-width:0;flex-direction:column;gap:var(--space-1)}:root[data-ui-theme=teacher] .course-row__badges{display:flex;flex-wrap:wrap;gap:var(--space-1)}:root[data-ui-theme=teacher] .course-row__desc{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .field,:root[data-ui-theme=teacher] .form-group{display:flex;flex-direction:column;gap:6px;margin:0 0 var(--space-4)}:root[data-ui-theme=teacher] .field-label,:root[data-ui-theme=teacher] .form-label{font:700 13px/16px var(--font-ui);color:var(--ink-soft)}:root[data-ui-theme=teacher] .field-hint{font:400 12px/16px var(--font-body);color:var(--ink-muted)}:root[data-ui-theme=teacher] .field-error,:root[data-ui-theme=teacher] .form-error{font:400 12px/16px var(--font-body);color:var(--danger)}:root[data-ui-theme=teacher] .input,:root[data-ui-theme=teacher] .select,:root[data-ui-theme=teacher] .textarea,:root[data-ui-theme=teacher] .form-input,:root[data-ui-theme=teacher] .form-select,:root[data-ui-theme=teacher] .form-textarea{width:100%;min-height:40px;padding:0 var(--space-3);background:var(--surface);color:var(--ink);border:1px solid var(--line-control);border-radius:var(--radius-md);font:400 14px/20px var(--font-body)}:root[data-ui-theme=teacher] .textarea,:root[data-ui-theme=teacher] .form-textarea{padding:var(--space-2) var(--space-3);min-height:88px;resize:vertical}:root[data-ui-theme=teacher] .input::placeholder,:root[data-ui-theme=teacher] .form-input::placeholder,:root[data-ui-theme=teacher] .textarea::placeholder{color:var(--ink-muted)}:root[data-ui-theme=teacher] .input:focus,:root[data-ui-theme=teacher] .select:focus,:root[data-ui-theme=teacher] .textarea:focus,:root[data-ui-theme=teacher] .form-input:focus,:root[data-ui-theme=teacher] .form-select:focus,:root[data-ui-theme=teacher] .form-textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--brand-600)}:root[data-ui-theme=teacher] .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}:root[data-ui-theme=teacher] .search{position:relative;display:block;min-width:220px}:root[data-ui-theme=teacher] .search>i{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--ink-muted);pointer-events:none}:root[data-ui-theme=teacher] .search .input{padding-left:36px}:root[data-ui-theme=teacher] .tabs{display:flex;gap:var(--space-1);margin:0 0 var(--space-5);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}:root[data-ui-theme=teacher] .tabs::-webkit-scrollbar{display:none}:root[data-ui-theme=teacher] .tab{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;margin-bottom:-1px;padding:0 var(--space-4);background:none;border:0;border-bottom:2px solid transparent;font:900 14px/20px var(--font-ui);color:var(--ink-soft);white-space:nowrap;cursor:pointer}:root[data-ui-theme=teacher] .tab:hover{color:var(--ink)}:root[data-ui-theme=teacher] .tab-active{color:var(--brand-800);border-bottom-color:var(--brand-600)}:root[data-ui-theme=teacher] .segmented{display:inline-flex;gap:2px;padding:3px;background:var(--surface-sunken);border-radius:var(--radius-md)}:root[data-ui-theme=teacher] .segmented button{display:grid;place-items:center;min-width:36px;min-height:32px;padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer}:root[data-ui-theme=teacher] .segmented button.is-active{background:var(--surface);color:var(--brand-800);box-shadow:var(--shadow-xs)}:root[data-ui-theme=teacher] .progress{height:8px;background:var(--surface-sunken);border-radius:var(--radius-pill);overflow:hidden}:root[data-ui-theme=teacher] .progress>span{display:block;height:100%;background:var(--brand-600);border-radius:var(--radius-pill)}:root[data-ui-theme=teacher] .empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--line-control);border-radius:var(--radius-lg)}:root[data-ui-theme=teacher] .empty-state__icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:var(--space-2);border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--brand-50),var(--brand-100));box-shadow:0 0 0 6px rgba(var(--practiq-violet-rgb),.04);color:var(--brand-800);font-size:22px}:root[data-ui-theme=teacher] .empty-state h3{font:900 16px/22px var(--font-ui);color:var(--ink)}:root[data-ui-theme=teacher] .empty-state p{max-width:42ch;margin:0 0 var(--space-3);font:400 13px/20px var(--font-body);color:var(--ink-soft)}:root[data-ui-theme=teacher] .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--space-6);background:var(--scrim)}:root[data-ui-theme=teacher] .modal-box{width:100%;max-width:520px;max-height:calc(100dvh - 48px);overflow-y:auto;padding:var(--space-6);background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}:root[data-ui-theme=teacher] .modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-5)}:root[data-ui-theme=teacher] .modal-title{margin:0;font:900 19px/24px var(--font-ui);color:var(--ink)}:root[data-ui-theme=teacher] .modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6)}:root[data-ui-theme=teacher] .app-shell{min-height:100dvh;background:var(--canvas);color:var(--ink);font-family:var(--font-body)}:root[data-ui-theme=teacher] .sidebar{position:fixed;top:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;width:var(--sidebar-w);padding:var(--space-4) var(--space-3) var(--space-3);background:var(--surface);border-right:1px solid var(--line)}:root[data-ui-theme=teacher] .sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) var(--space-2) var(--space-3)}:root[data-ui-theme=teacher] .sidebar-logo{display:block;width:112px;height:auto}:root[data-ui-theme=teacher] .close-btn{display:none}:root[data-ui-theme=teacher] .school-context{position:relative;z-index:1;margin:0 0 var(--space-2)}:root[data-ui-theme=teacher] .school-switch{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--canvas);cursor:pointer;text-align:left;font-family:var(--font-body);transition:background-color .15s,border-color .15s}:root[data-ui-theme=teacher] .school-switch:hover{background:var(--surface-sunken);border-color:var(--brand-200)}:root[data-ui-theme=teacher] .school-switch__avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:var(--deep-800);color:var(--on-brand);font:900 12px/1 var(--font-ui)}:root[data-ui-theme=teacher] .school-switch__text{min-width:0;flex:1}:root[data-ui-theme=teacher] .school-switch__name{display:block;overflow:hidden;font-size:12.5px;font-weight:600;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .school-switch__meta{display:block;font-size:10.5px;color:var(--ink-muted)}:root[data-ui-theme=teacher] .school-switch__icon{font-size:11px;color:var(--ink-muted)}:root[data-ui-theme=teacher] .school-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;width:300px;max-width:calc(100vw - 32px);max-height:min(70dvh,480px);overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);z-index:20}:root[data-ui-theme=teacher] .school-popover__header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 8px;font:900 10.5px/14px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}:root[data-ui-theme=teacher] .school-popover__rename-toggle{display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-muted);cursor:pointer}:root[data-ui-theme=teacher] .school-popover__rename-toggle:hover{background:var(--surface-sunken);color:var(--brand-700)}:root[data-ui-theme=teacher] .school-popover__rename{padding:0 8px 8px}:root[data-ui-theme=teacher] .school-popover__rename input{width:100%;min-height:36px;padding:0 var(--space-2);background:var(--surface);color:var(--ink);border:1px solid var(--line-control);border-radius:var(--radius-sm);font:400 13px/20px var(--font-body)}:root[data-ui-theme=teacher] .school-option{display:flex;align-items:center;gap:10px;width:100%;padding:9px 8px;border:0;border-radius:9px;background:transparent;cursor:pointer;text-align:left;font-family:var(--font-body)}:root[data-ui-theme=teacher] .school-option:hover{background:var(--canvas)}:root[data-ui-theme=teacher] .school-option__avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:var(--surface-sunken);color:var(--brand-700);font:900 12px/1 var(--font-ui)}:root[data-ui-theme=teacher] .school-option__text{flex:1;min-width:0}:root[data-ui-theme=teacher] .school-option__name{display:block;overflow:hidden;font-size:13px;font-weight:600;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .school-option__meta{display:block;overflow:hidden;font-size:11px;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .school-option i.pi-check{font-size:12px;color:var(--brand-500)}:root[data-ui-theme=teacher] .school-popover__hint{margin:6px 8px 4px;padding-top:8px;border-top:1px solid var(--line);font-size:11.5px;line-height:1.45;color:var(--ink-muted)}:root[data-ui-theme=teacher] .sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;overflow-y:auto;padding:0 0 var(--space-3);scrollbar-width:thin}:root[data-ui-theme=teacher] .nav-section-label{padding:var(--space-4) var(--space-3) var(--space-1);font:900 10.5px/14px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}:root[data-ui-theme=teacher] .nav-section-label:first-child{padding-top:var(--space-2)}:root[data-ui-theme=teacher] .nav-item{display:flex;align-items:center;gap:var(--space-3);min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-soft);text-decoration:none;font:600 13.5px/20px var(--font-body);transition:background-color .15s,color .15s}:root[data-ui-theme=teacher] .nav-item i{width:20px;font-size:16px;text-align:center;color:var(--ink-muted)}:root[data-ui-theme=teacher] .nav-item:hover{background:var(--surface-sunken);color:var(--ink)}:root[data-ui-theme=teacher] .nav-item-active,:root[data-ui-theme=teacher] .nav-item-active:hover{background:var(--surface-sunken);color:var(--brand-700);box-shadow:inset 2px 0 0 var(--brand-500)}:root[data-ui-theme=teacher] .nav-item-active i{color:var(--brand-700)}:root[data-ui-theme=teacher] .nav-badge{margin-left:auto;min-width:22px;padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--warning-soft);color:var(--warning);font:800 12px/18px var(--font-ui);text-align:center}:root[data-ui-theme=teacher] .sidebar-footer{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0 0;border-top:1px solid var(--line)}:root[data-ui-theme=teacher] .user-info{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:0 var(--space-2)}:root[data-ui-theme=teacher] .user-details{min-width:0}:root[data-ui-theme=teacher] .user-name{overflow:hidden;font:600 13px/20px var(--font-body);color:var(--ink);text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .user-role{font:400 12px/16px var(--font-body);color:var(--ink-muted)}:root[data-ui-theme=teacher] .footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1)}:root[data-ui-theme=teacher] .footer-actions .btn{justify-content:flex-start;padding:0 var(--space-2);font-size:13px}:root[data-ui-theme=teacher] .main-content{margin-left:var(--sidebar-w);min-width:0}:root[data-ui-theme=teacher] .app-content{max-width:calc(var(--content-max) + 68px);margin:0 auto;padding:30px 34px 64px}:root[data-ui-theme=teacher] .mobile-topbar,:root[data-ui-theme=teacher] .app-tabbar,:root[data-ui-theme=teacher] .drawer-backdrop{display:none}@media(max-width:1023px){:root[data-ui-theme=teacher] .sidebar{top:auto;right:0;bottom:0;width:100%;max-height:min(86dvh,780px);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-right:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-lg);transform:translateY(100%);transition:transform .22s ease;z-index:60}:root[data-ui-theme=teacher] .sidebar:before{content:"";display:block;flex:0 0 auto;width:38px;height:4px;margin:0 auto var(--space-3);border-radius:var(--radius-pill);background:var(--line)}:root[data-ui-theme=teacher] .sidebar--open{transform:none}:root[data-ui-theme=teacher] .sidebar-brand,:root[data-ui-theme=teacher] .sidebar:not(.sidebar--context) .school-context,:root[data-ui-theme=teacher] .sidebar--context .sidebar-nav,:root[data-ui-theme=teacher] .sidebar--context .sidebar-footer{display:none}:root[data-ui-theme=teacher] .sidebar--context .school-context{overflow-y:auto}:root[data-ui-theme=teacher] .sidebar--context .school-popover{position:static;width:100%;max-width:none;margin-top:var(--space-2);box-shadow:none}:root[data-ui-theme=teacher] .close-btn{display:inline-grid}:root[data-ui-theme=teacher] .drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--scrim)}:root[data-ui-theme=teacher] .drawer-backdrop.is-open{display:block}:root[data-ui-theme=teacher] .main-content{margin-left:0;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}:root[data-ui-theme=teacher] .app-content{padding:var(--space-4) var(--space-4) var(--space-6)}:root[data-ui-theme=teacher] .mobile-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:var(--space-3);height:var(--topbar-h);padding:0 var(--space-4);background:var(--surface);border-bottom:1px solid var(--line)}:root[data-ui-theme=teacher] .topbar-brand{display:flex;flex:1;align-items:center;gap:var(--space-3);min-width:0}:root[data-ui-theme=teacher] .topbar-logo{display:block;width:76px;height:auto}:root[data-ui-theme=teacher] .topbar-school{min-width:0;flex:1;display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-1) var(--space-3);background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius-md);font:700 13px/20px var(--font-ui);color:var(--ink);cursor:pointer;text-align:left}:root[data-ui-theme=teacher] .topbar-school__label{display:block;color:var(--ink-muted);font-size:10px;text-transform:uppercase}:root[data-ui-theme=teacher] .topbar-school__text{min-width:0;flex:1}:root[data-ui-theme=teacher] .topbar-school__name{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-ui-theme=teacher] .topbar-btn{display:inline-grid;place-items:center;width:44px;height:44px;margin-left:-10px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--ink-soft);cursor:pointer}:root[data-ui-theme=teacher] .topbar-avatar{width:36px;height:36px;font-size:14px}:root[data-ui-theme=teacher] .app-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(var(--tabs, 4),minmax(0,1fr));height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow-sm)}:root[data-ui-theme=teacher] .tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:44px;padding:0;background:none;border:0;color:var(--ink-muted);text-decoration:none;font:700 11px/14px var(--font-ui);cursor:pointer}:root[data-ui-theme=teacher] .tab-item__icon{position:relative;display:grid;place-items:center;width:56px;height:28px;border-radius:var(--radius-pill);font-size:18px}:root[data-ui-theme=teacher] .tab-item__dot{position:absolute;top:0;right:10px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-pill);background:var(--warning);color:var(--on-brand);font:800 10px/16px var(--font-ui);text-align:center}:root[data-ui-theme=teacher] .tab-item-active{color:var(--brand-800)}:root[data-ui-theme=teacher] .tab-item-active .tab-item__icon{background:var(--brand-50);color:var(--brand-600)}:root[data-ui-theme=teacher] .page-header{align-items:stretch;margin-bottom:var(--space-5)}:root[data-ui-theme=teacher] .page-header__right,:root[data-ui-theme=teacher] .page-actions{width:100%}:root[data-ui-theme=teacher] .page-header__right .btn,:root[data-ui-theme=teacher] .page-actions .btn{flex:1 1 0}:root[data-ui-theme=teacher] .page-title{font-size:24px;line-height:30px}:root[data-ui-theme=teacher] .content-section{margin-bottom:var(--space-6)}:root[data-ui-theme=teacher] .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-6)}:root[data-ui-theme=teacher] .stat-tile{padding:var(--space-3)}:root[data-ui-theme=teacher] .stat-tile__value{font-size:22px;line-height:26px}:root[data-ui-theme=teacher] .grid-cards{grid-template-columns:1fr;gap:var(--space-3)}:root[data-ui-theme=teacher] .card{padding:var(--space-4)}:root[data-ui-theme=teacher] .btn{min-height:44px}:root[data-ui-theme=teacher] .btn-sm{min-height:40px}:root[data-ui-theme=teacher] .icon-btn{width:44px;height:44px}:root[data-ui-theme=teacher] .input,:root[data-ui-theme=teacher] .select,:root[data-ui-theme=teacher] .textarea,:root[data-ui-theme=teacher] .form-input,:root[data-ui-theme=teacher] .form-select,:root[data-ui-theme=teacher] .form-textarea{min-height:44px;font-size:16px}:root[data-ui-theme=teacher] .segmented button{min-height:36px;min-width:40px}:root[data-ui-theme=teacher] .form-row{grid-template-columns:1fr;gap:0}:root[data-ui-theme=teacher] .search{min-width:0;flex:1 1 100%}:root[data-ui-theme=teacher] .row-list__head{display:none}:root[data-ui-theme=teacher] .row-item{grid-template-columns:40px minmax(0,1fr) 20px;gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4);min-height:64px}:root[data-ui-theme=teacher] .row-item .avatar{grid-row:1 / span 3}:root[data-ui-theme=teacher] .row-item__meta{grid-column:2}:root[data-ui-theme=teacher] .row-item__tags{grid-column:2;margin-top:var(--space-1)}:root[data-ui-theme=teacher] .row-item__go{grid-column:3;grid-row:1 / span 3}:root[data-ui-theme=teacher] .row-item.course-row{grid-template-columns:minmax(0,1fr) 20px;gap:var(--space-2)}:root[data-ui-theme=teacher] .row-item.student-row{grid-template-columns:40px minmax(0,1fr) 20px}:root[data-ui-theme=teacher] .course-row__desc,:root[data-ui-theme=teacher] .course-row__date{display:none}:root[data-ui-theme=teacher] .course-row .row-item__go{grid-column:2;grid-row:1}}@media(max-width:820px){:root[data-ui-theme=teacher] .modal-overlay{place-items:end stretch;padding:0}:root[data-ui-theme=teacher] .modal-box{position:relative;max-width:none;max-height:92dvh;padding:var(--space-6) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0}:root[data-ui-theme=teacher] .modal-box:before{content:"";position:absolute;top:var(--space-2);left:50%;width:36px;height:4px;margin-left:-18px;border-radius:var(--radius-pill);background:var(--line-control)}:root[data-ui-theme=teacher] .modal-actions{flex-direction:column-reverse}:root[data-ui-theme=teacher] .modal-actions>*{width:100%}}@media(prefers-reduced-motion:reduce){:root[data-ui-theme=teacher] .sidebar,:root[data-ui-theme=teacher] .btn,:root[data-ui-theme=teacher] .nav-item,:root[data-ui-theme=teacher] .course-card{transition:none}}:root[data-ui-theme=teacher] .main-content{min-width:0}@media(max-width:1023px){:root[data-ui-theme=teacher]{overflow-x:hidden}:root[data-ui-theme=teacher] .app-shell,:root[data-ui-theme=teacher] .main-content,:root[data-ui-theme=teacher] .app-content{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:clip}:root[data-ui-theme=teacher] .dashboard,:root[data-ui-theme=teacher] .course-detail,:root[data-ui-theme=teacher] .courses-page,:root[data-ui-theme=teacher] .reviews-page,:root[data-ui-theme=teacher] .review-dashboard,:root[data-ui-theme=teacher] .strategy-dashboard,:root[data-ui-theme=teacher] .sp-page,:root[data-ui-theme=teacher] .admin-shell,:root[data-ui-theme=teacher] .ac-root,:root[data-ui-theme=teacher] .editor-shell{width:100%;max-width:none!important;padding-left:0!important;padding-right:0!important}:root[data-ui-theme=teacher] .course-header,:root[data-ui-theme=teacher] .sp-header,:root[data-ui-theme=teacher] .editor-header,:root[data-ui-theme=teacher] .grade-header,:root[data-ui-theme=teacher] .toolbar-card,:root[data-ui-theme=teacher] .action-row,:root[data-ui-theme=teacher] .filter-row{flex-wrap:wrap}:root[data-ui-theme=teacher] .grade-header__actions,:root[data-ui-theme=teacher] .toolbar-actions,:root[data-ui-theme=teacher] .header-actions{width:100%;flex-wrap:wrap}:root[data-ui-theme=teacher] .tab-bar,:root[data-ui-theme=teacher] .grade-sidebar,:root[data-ui-theme=teacher] .pages-sidebar{max-width:100%;overscroll-behavior-x:contain}:root[data-ui-theme=teacher] .ac-layout,:root[data-ui-theme=teacher] .grade-sidebar,:root[data-ui-theme=teacher] .grade-content{width:100%;min-width:0;box-sizing:border-box}:root[data-ui-theme=teacher] input:not([type=checkbox]):not([type=radio]),:root[data-ui-theme=teacher] select,:root[data-ui-theme=teacher] textarea{font-size:16px}}@media(max-width:600px){:root[data-ui-theme=teacher] .course-header,:root[data-ui-theme=teacher] .sp-header,:root[data-ui-theme=teacher] .editor-header,:root[data-ui-theme=teacher] .grade-header{padding:16px!important;align-items:stretch!important}:root[data-ui-theme=teacher] .grade-header__actions .btn,:root[data-ui-theme=teacher] .toolbar-actions .btn,:root[data-ui-theme=teacher] .header-actions .btn{flex:1 1 140px;justify-content:center}:root[data-ui-theme=teacher] .summary-row,:root[data-ui-theme=teacher] .courses-grid,:root[data-ui-theme=teacher] .strategy-grid,:root[data-ui-theme=teacher] .submissions-grid,:root[data-ui-theme=teacher] .progress-grid,:root[data-ui-theme=teacher] .notebooks-grid{grid-template-columns:1fr!important}:root[data-ui-theme=teacher] .tab-content,:root[data-ui-theme=teacher] .detail-card,:root[data-ui-theme=teacher] .toolbar-card{padding:14px!important}}:root[data-ui-theme=teacher] .topbar-avatar{border:0;cursor:pointer}:root[data-ui-theme=teacher] .icon-btn.close-btn{flex:0 0 auto}:root[data-ui-theme=teacher] .dashboard{max-width:none!important;padding:0!important}:root[data-ui-theme=teacher] .page-header{overflow:visible;-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-ui-theme=teacher] .app-content>:is(.ac-root,.plans-shell,.schools-shell,.admin-shell,.reviews-page,.course-detail,.editor-shell,.review-dashboard,.school-users,.strategy-dashboard,.sp-page,.courses-page,.subscription-shell,.page){width:100%;max-width:none!important;margin:0!important;padding:0!important;min-height:0!important;background:none!important;box-sizing:border-box}:root[data-ui-theme=teacher] .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}@media(max-width:1023px){:root[data-ui-theme=teacher] .sidebar:not(.sidebar--open){box-shadow:none;visibility:hidden;transition:transform .22s ease,visibility 0s .22s}}
