*{box-sizing:border-box}html{min-height:100%}body{min-height:100%;color:var(--color-ink);background:var(--color-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Vazirmatn,Segoe UI,Tahoma,sans-serif;overflow-x:hidden}.school-shell{background:var(--color-bg-canvas);min-height:100vh;color:var(--color-text-primary)}.school-topbar{align-items:center;gap:var(--space-4);padding:var(--space-4) max(var(--space-4), calc((100vw - 1120px) / 2));border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;display:flex}.school-brand{align-items:center;gap:var(--space-3);min-width:0;color:inherit;display:inline-flex}.school-brand-mark{object-fit:contain;width:36px;height:36px}.school-brand strong{color:var(--color-text-primary);font-size:var(--font-size-md);display:block}.school-brand small{color:var(--color-text-secondary);font-size:var(--font-size-xs);display:block}.school-nav{justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:0;display:flex}.school-nav a{min-height:40px;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);align-items:center;display:inline-flex}.school-nav a:hover{color:var(--color-primary);background:var(--color-primary-soft)}.school-nav a.is-active{color:var(--color-primary);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 24%, transparent)}.school-nav .theme-toggle{margin-inline-start:auto}.school-admin-chip{min-width:132px;padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);gap:2px;display:grid}.school-admin-chip strong{color:var(--color-text-primary);font-size:var(--font-size-sm)}.school-admin-chip small{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.school-content{width:min(100%,1120px);padding:var(--space-6) var(--space-4);margin:0 auto}.school-page{gap:var(--space-6);display:grid}.school-page-header{max-width:720px}.school-page-header .section-kicker{margin-bottom:var(--space-2);display:block}.school-page-header h1{margin:0 0 var(--space-2);color:var(--color-text-primary);font-size:var(--font-size-3xl);line-height:var(--line-height-tight)}.school-page-header p{color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);margin:0}.school-stats,.school-card-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.school-stats .ui-card{gap:var(--space-1);padding:var(--space-4);display:grid}.school-stats .ui-card strong{color:var(--color-text-primary);font-size:var(--font-size-2xl)}.school-stats .ui-card span{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.school-dashboard-grid{gap:var(--space-5);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:start;display:grid}.school-actions{gap:var(--space-4);padding:var(--space-5);display:grid}.school-actions h2{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0}.school-actions>div{gap:var(--space-3);flex-wrap:wrap;display:flex}.school-inline-link{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.school-inline-link:hover{color:var(--color-primary-dark)}.school-card-grid .inline-action,.school-card-grid .school-inline-link{margin-top:var(--space-2)}.school-structure-card{gap:var(--space-4);padding:0;display:grid;overflow:hidden}.school-structure-card__header{justify-content:space-between;align-items:start;gap:var(--space-3);padding:var(--space-5);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-subtle);display:flex}.school-structure-card__header h2{margin:var(--space-1) 0 0;font-size:var(--font-size-lg);color:var(--color-text-primary)}.school-structure-tree{gap:var(--space-4);padding:var(--space-5);display:grid}.school-structure-node{align-items:center;gap:var(--space-2);width:fit-content;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);display:inline-flex}.school-structure-node--root{color:var(--color-primary);background:var(--color-primary-soft);font-weight:var(--font-weight-bold)}.school-structure-node--admin{color:var(--color-text-inverse);background:var(--color-primary)}.school-structure-branch{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-subtle);display:grid}.school-structure-branch h3{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--font-size-sm);margin:0;display:flex}.school-structure-teacher{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);display:grid}.school-structure-teacher__head{align-items:center;gap:var(--space-3);display:flex}.school-structure-teacher__head strong{color:var(--color-text-primary);font-size:var(--font-size-sm);flex:1}.school-structure-class{gap:var(--space-3);padding:var(--space-3);border-inline-start:2px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-bg-subtle);margin-inline-start:var(--space-6);display:grid}.school-structure-class__head{align-items:center;gap:var(--space-3);display:flex}.school-structure-class__head strong{color:var(--color-text-primary);font-size:var(--font-size-sm);display:block}.school-structure-class__head small{color:var(--color-text-secondary);font-size:var(--font-size-xs);display:block}.school-structure-class__head .school-inline-link{margin-inline-start:auto}.school-structure-students{gap:var(--space-2);flex-wrap:wrap;display:flex}.school-structure-student{min-height:32px;padding:0 var(--space-3);color:var(--color-text-secondary);border-radius:var(--radius-full);background:var(--color-primary-soft);font-size:var(--font-size-xs);align-items:center;gap:6px;display:inline-flex}.school-structure-student--orphan{background:var(--color-warning-soft);color:var(--color-warning)}.school-structure-empty,.school-structure-tree em{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:0;font-style:normal}.school-structure-branch--orphans .school-inline-link{width:fit-content}.school-onboarding{gap:var(--space-4);display:grid}.school-onboarding header h2{margin:var(--space-1) 0;font-size:var(--font-size-lg);color:var(--color-text-primary)}.school-onboarding header p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.school-onboarding__steps{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.school-onboarding__steps li{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);grid-template-columns:auto 1fr auto;align-items:center;display:grid}.school-onboarding__steps li.is-done{border-color:color-mix(in srgb, var(--color-success) 35%, var(--color-border-default));background:var(--color-success-soft)}.school-onboarding__steps li.is-next{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border-default));box-shadow:var(--shadow-sm)}.school-onboarding__icon{color:var(--color-text-muted);place-items:center;display:grid}.school-onboarding__steps li.is-done .school-onboarding__icon{color:var(--color-success)}.school-onboarding__steps li strong{color:var(--color-text-primary);font-size:var(--font-size-sm);display:block}.school-onboarding__steps li p{color:var(--color-text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-normal);margin:4px 0 0}.school-forms{gap:var(--space-4);display:grid}.school-forms__grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-form-card{gap:var(--space-4);display:grid}.school-form-card header h2{margin:0 0 var(--space-1);font-size:var(--font-size-lg);color:var(--color-text-primary)}.school-form-card header p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.school-form{gap:var(--space-3);display:grid}.school-members{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-members>section{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface);display:grid}.school-members h2{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0}.school-member{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);display:flex}.school-members form{gap:var(--space-3);padding-top:var(--space-3);display:grid}.school-empty{gap:var(--space-2);padding:var(--space-8);text-align:center;display:grid}.school-quick-setup{gap:var(--space-4);border:1px solid color-mix(in srgb, var(--color-primary) 28%, var(--color-border-default));background:color-mix(in srgb, var(--color-primary-soft) 55%, var(--color-bg-surface));display:grid}.school-quick-setup header h2{margin:var(--space-1) 0;font-size:var(--font-size-xl);color:var(--color-text-primary)}.school-quick-setup header p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.school-help-card{gap:var(--space-3);display:grid}.school-help-card h2{font-size:var(--font-size-lg);margin:0}.school-help-card ol{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0;padding-inline-start:var(--space-5)}.school-help-card p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.school-setup-page{min-height:100vh;padding:var(--space-6) var(--space-4) var(--space-10);background:var(--color-bg-canvas)}.school-setup-header{width:min(100%,560px);margin:0 auto var(--space-6);justify-content:space-between;align-items:center;display:flex}.school-setup-card{width:min(100%,560px);padding:var(--space-6);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);background:var(--color-bg-surface);box-shadow:var(--shadow-md);margin:0 auto}.school-setup-card h1{margin:var(--space-2) 0;font-size:var(--font-size-2xl);color:var(--color-text-primary)}.school-setup-card>p{margin:0 0 var(--space-5);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.school-setup-form{gap:var(--space-5);display:grid}.school-setup-section{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-subtle);display:grid}.school-setup-section h2{font-size:var(--font-size-md);color:var(--color-text-primary);margin:0}@media (max-width:900px){.school-topbar{justify-content:space-between}.school-nav{order:3;justify-content:flex-start;width:100%}.school-dashboard-grid,.school-forms__grid,.school-members{grid-template-columns:1fr}}@media (max-width:680px){.school-content{padding:var(--space-4)}.school-stats,.school-card-grid{grid-template-columns:1fr 1fr}.school-admin-chip{width:100%}.school-structure-class{margin-inline-start:var(--space-3)}}.platform-shell{background:var(--color-bg-canvas);min-height:100vh;color:var(--color-text-primary)}.platform-topbar{align-items:center;gap:var(--space-4);padding:var(--space-4) max(var(--space-4), calc((100vw - 1120px) / 2));border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;display:flex}.platform-nav{justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;display:flex}.platform-nav a{min-height:40px;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.platform-nav a:hover{color:var(--color-primary);background:var(--color-primary-soft)}.platform-content{width:min(100%,1120px);padding:var(--space-6) var(--space-4);margin:0 auto}.platform-page{gap:var(--space-6);display:grid}.platform-dashboard-grid{gap:var(--space-5);grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:start;display:grid}.platform-detail-grid{gap:var(--space-5);grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start;display:grid}.platform-form-card,.platform-list-card,.platform-credentials{gap:var(--space-4);padding:var(--space-5);display:grid}.platform-form-card header h2,.platform-list-card header h2,.platform-credentials h2{margin:0 0 var(--space-1);font-size:var(--font-size-lg);color:var(--color-text-primary)}.platform-form-card header p,.platform-credentials p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.platform-list-card header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.platform-list-card header span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.platform-school-list{gap:var(--space-2);display:grid}.platform-school-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:inherit;transition:border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);flex-wrap:wrap;display:flex}.platform-school-row:hover{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border-default));box-shadow:var(--shadow-sm)}.platform-school-row strong{color:var(--color-text-primary);font-size:var(--font-size-sm);display:block}.platform-school-row small{color:var(--color-text-secondary);font-size:var(--font-size-xs);display:block}.platform-school-row__meta{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.platform-school-row__meta .ok{color:var(--color-success);font-weight:var(--font-weight-semibold)}.platform-school-row__meta .bad{color:var(--color-danger);font-weight:var(--font-weight-semibold)}.platform-credentials dl{gap:var(--space-3);margin:0;display:grid}.platform-credentials dl div{gap:4px;display:grid}.platform-credentials dt{color:var(--color-text-muted);font-size:var(--font-size-xs)}.platform-credentials dd{color:var(--color-text-primary);font-size:var(--font-size-sm);word-break:break-all;margin:0}.platform-credentials .ok{color:var(--color-success);font-weight:var(--font-weight-semibold)}.platform-credentials .bad{color:var(--color-danger);font-weight:var(--font-weight-semibold)}.platform-credentials code{border-radius:var(--radius-sm);background:var(--color-bg-subtle);padding:2px 6px;font-family:ui-monospace,monospace}.platform-detail-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.platform-stats-inline{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.platform-jalali-date,.ui-jalali-date{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ui-jalali-date--datetime{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-jalali-date__preview,.platform-jalali-date .platform-stats-inline{color:var(--color-text-secondary);font-size:var(--font-size-sm);grid-column:1/-1;margin:0}.platform-email-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.platform-email-log-card{grid-column:1/-1}.platform-email-log-table{gap:var(--space-2);display:grid;overflow-x:auto}.platform-email-log-head,.platform-email-log-row{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-xs);grid-template-columns:minmax(110px,.9fr) minmax(140px,1.1fr) minmax(160px,1.4fr) minmax(70px,.6fr) minmax(120px,.9fr);align-items:center;display:grid}.platform-email-log-head{color:var(--color-text-muted);font-weight:var(--font-weight-semibold);background:var(--color-bg-subtle)}.platform-email-log-row{background:var(--color-bg-surface)}.platform-email-log-row code{word-break:break-all}.platform-email-dns-steps{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0;padding-right:1.1rem;line-height:1.7;display:grid}.platform-email-dns-steps a{color:var(--color-primary)}@media (max-width:900px){.platform-email-grid{grid-template-columns:1fr}.platform-email-log-head{display:none}.platform-email-log-row{gap:var(--space-2);grid-template-columns:1fr}}.platform-jalali-date .platform-stats-inline{grid-column:1/-1}.platform-mode-banner{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--color-primary) 35%, var(--color-border-default));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-primary-soft) 70%, var(--color-bg-surface));color:var(--color-text-primary);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.platform-mode-banner a{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.profile-user-chip{align-items:center;gap:var(--space-3);min-width:132px;padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:inherit;transition:border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);display:inline-flex}.profile-user-chip:hover{border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border-default));box-shadow:var(--shadow-sm)}.profile-user-chip__avatar{border-radius:var(--radius-full);background:var(--color-primary-soft);width:32px;height:32px;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);place-items:center;display:grid}.profile-user-chip__copy{gap:2px;display:grid}.profile-user-chip__copy strong{color:var(--color-text-primary);font-size:var(--font-size-sm)}.profile-user-chip__copy small{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.profile-page{gap:var(--space-6);display:grid}.profile-page-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.profile-logout-card{grid-column:1/-1}.sidebar-logout{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:40px;margin-top:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;background:0 0;display:inline-flex}.sidebar-logout:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border-default));background:var(--color-danger-soft,color-mix(in srgb, var(--color-danger) 8%, transparent))}@media (max-width:900px){.profile-page-grid{grid-template-columns:1fr}}.student-shell .app-content{width:min(100%,1120px);max-width:1120px}.student-page{gap:var(--space-6);color:var(--color-text-primary);display:grid}.student-page-heading{max-width:720px}.student-page-heading h1{align-items:center;gap:var(--space-2);margin:var(--space-2) 0;color:var(--color-text-primary);font-size:var(--font-size-3xl);line-height:var(--line-height-tight);display:flex}.student-page-heading p{color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);margin:0}.student-today-heading{justify-content:space-between;align-items:end;gap:var(--space-4);max-width:none;display:flex}.student-today-summary{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-today-summary span{padding:var(--space-4);color:var(--color-text-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);font-size:var(--font-size-sm)}.student-today-summary b{margin-bottom:var(--space-1);color:var(--color-text-primary);font-size:var(--font-size-xl);display:block}.student-today-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:start;display:grid}.student-side-stack{gap:var(--space-4);display:grid}.student-section{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:var(--shadow-sm);display:grid}.student-section>header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.student-section h2,.student-assignment-detail h2,.student-submit-card h2,.student-class-card h2{margin:var(--space-1) 0 0;color:var(--color-text-primary);font-size:var(--font-size-lg)}.student-assignment-grid{gap:var(--space-3);display:grid}.student-assignment-grid .assignment-card{padding:var(--space-4);border-color:var(--color-border-default);background:var(--color-bg-surface)}.student-shell .assignment-card .inline-action{margin-top:var(--space-3);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:inline-flex}.assignment-card-meta{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.assignment-card-meta span+span:before{content:"·";margin-inline-end:var(--space-2)}.student-compact-list{gap:var(--space-2);display:grid}.student-compact-list a{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg-subtle);font-size:var(--font-size-sm);display:flex}.student-feedback-preview{gap:var(--space-3);display:grid}.student-feedback-preview article{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.student-feedback-preview article:last-child{border-bottom:0;padding-bottom:0}.student-feedback-preview p,.student-submit-card p{margin:var(--space-2) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.student-filter-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.student-filter-list .ui-button{border-color:var(--color-border-default)}.student-back-link{align-items:center;gap:var(--space-1);width:fit-content;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:inline-flex}.student-detail-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;display:grid}.student-assignment-detail,.student-submit-card{gap:var(--space-5);display:grid}.student-submit-card form{gap:var(--space-4);display:grid}.student-detail-status{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.student-detail-meta{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.student-detail-meta div{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.student-detail-meta dt{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-xs);display:flex}.student-detail-meta dd{margin:var(--space-2) 0 0;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.student-assignment-detail section>p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.student-feedback-detail{padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-primary-soft)}.student-class-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-class-card{gap:var(--space-3);grid-template-columns:auto 1fr;align-items:center;display:grid}.student-class-card>svg{color:var(--color-primary)}.student-class-card p,.student-class-card>span{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.student-class-card>span{align-items:center;gap:var(--space-1);grid-column:1/-1;display:inline-flex}.student-skeleton-title{width:min(320px,80%);min-height:42px}.student-skeleton-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-skeleton-card{min-height:180px}.student-class-card small{color:var(--color-text-secondary);font-size:var(--font-size-xs);grid-column:1/-1}.student-class-card .ui-button{grid-column:1/-1;width:fit-content}.student-class-heading{align-items:center;gap:var(--space-3);display:flex}.student-class-heading h1{margin:var(--space-1) 0;color:var(--color-text-primary);font-size:var(--font-size-3xl)}.student-class-heading p,.student-compact-card p,.student-feedback-list p,.student-submission-list p,.student-question-list p,.student-notification p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.student-class-detail-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-compact-card{gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle);display:grid}.student-compact-card:last-child{border-bottom:0}.student-feedback-list,.student-submission-list,.student-question-list,.student-notification-list{gap:var(--space-4);display:grid}.student-feedback-list .product-card,.student-submission-list .product-card,.student-question-list .product-card{padding:var(--space-5)}.student-revision-note{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-warning-soft)}.student-question-create{gap:var(--space-4);padding:var(--space-5);display:grid}.student-question-create h2{font-size:var(--font-size-lg);margin:0}.student-question-form{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-question-form label:last-of-type,.student-question-form .ui-alert,.student-question-form .ui-button{grid-column:1/-1}.student-answer{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-primary-soft)}.student-notification{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);grid-template-columns:auto minmax(0,1fr);display:grid}.student-notification.unread{border-color:var(--color-primary);background:var(--color-primary-soft)}.student-notification-icon{color:var(--color-primary)}.student-list-heading{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.student-notification small{color:var(--color-text-secondary);font-size:var(--font-size-xs)}@media (max-width:768px){.student-today-grid,.student-detail-grid,.student-today-summary{grid-template-columns:1fr}}@media (max-width:680px){.student-shell .app-content{padding:var(--space-4)}.student-page{gap:var(--space-4)}.student-page-heading h1{font-size:var(--font-size-2xl)}.student-today-heading{flex-direction:column;align-items:stretch}.student-today-heading .ui-button{width:100%}.student-section,.student-assignment-detail,.student-submit-card{padding:var(--space-4)}.student-detail-meta,.student-class-grid,.student-class-detail-grid,.student-skeleton-grid,.student-question-form{grid-template-columns:1fr}.student-filter-list{padding-bottom:var(--space-1);flex-wrap:nowrap;overflow-x:auto}.student-filter-list .ui-button{flex:none}}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}::selection{color:#fff;background:var(--color-primary)}.app-shell{min-height:100vh;display:flex}.app-sidebar{color:#bdc7db;background:var(--color-ink-strong);flex-direction:column;flex:0 0 250px;width:250px;padding:26px 16px 18px;display:flex}.app-brand,.auth-brand{align-items:center;gap:10px;display:flex}.app-brand strong,.auth-brand strong{color:#fff;font-size:15px;display:block}.app-brand small{color:#74819e;font-size:10px;display:block}.brand-mark{object-fit:contain;flex:none;width:35px;height:35px;display:block}.sidebar-rule{background:#293552;height:1px;margin:27px 10px 24px}.sidebar-label{color:#6f7b99;margin:0 12px 10px;font-size:10px;font-weight:700}.app-nav{gap:4px;display:grid}.app-nav a{color:#a9b3c9;border-radius:7px;align-items:center;gap:11px;min-height:43px;padding:0 12px;font-size:12px;transition:all .16s;display:flex}.app-nav a span{color:#7684a5;text-align:center;width:18px;font-size:17px}.app-nav a:hover,.app-nav a.active{color:#fff;background:var(--color-primary)}.app-nav a.active span{color:#fff}.sidebar-bottom{margin-top:auto}.back-link{color:#8794ad;text-align:center;border:1px solid #2c3958;border-radius:7px;margin-bottom:18px;padding:11px;font-size:10px;display:block}.back-link:hover{color:#fff;border-color:var(--color-primary)}.profile-chip{color:#e6eafa;text-align:right;background:0 0;border:0;border-top:1px solid #293552;align-items:center;gap:8px;width:100%;padding:12px 7px 0;display:flex}.profile-chip>span{width:29px;height:29px;color:var(--color-ink-strong);background:#e6e9f5;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.profile-chip strong{font-size:10px}.profile-chip small{color:#7f8ca7;margin-right:auto;font-size:9px}.app-main{flex:1;min-width:0}.app-topbar{border-bottom:1px solid var(--color-line);background:#fff;justify-content:space-between;align-items:center;height:70px;padding:0 38px;display:flex}.breadcrumbs{color:#a0a9b9;gap:9px;font-size:11px;display:flex}.breadcrumbs b{color:#d2d7e0;font-weight:400}.breadcrumbs strong{color:var(--color-ink)}.topbar-tools{color:#7e899f;align-items:center;gap:7px;font-size:10px;display:flex}.topbar-tools button,.notification-button{color:#68748b;border:1px solid var(--color-line);background:#fff;border-radius:7px;place-items:center;width:34px;height:34px;margin-right:8px;display:grid}.online-dot{background:#54c58a;border-radius:50%;width:6px;height:6px}.app-content{max-width:1440px;margin:0 auto;padding:34px 40px 48px}.dashboard-page{width:100%}.page-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px;display:flex}.section-kicker{color:var(--color-primary);letter-spacing:.12em;font:700 9px Arial,sans-serif}.page-heading h1{color:var(--color-ink-strong);letter-spacing:-.045em;margin:8px 0 6px;font-size:27px}.page-heading p{color:var(--color-muted);margin:0;font-size:12px}.wave{color:#f0c84b;font-size:16px}.primary-button,.secondary-button{border-radius:var(--radius-md);justify-content:center;align-items:center;gap:9px;min-height:42px;padding:0 15px;font-size:11px;transition:all .16s;display:inline-flex}.primary-button{color:#fff;border:1px solid var(--color-primary);background:var(--color-primary)}.primary-button:hover{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}.primary-button:disabled{cursor:wait;opacity:.6}.secondary-button{color:#65718a;border:1px solid var(--color-line);background:#fff}.secondary-button:hover{color:var(--color-primary);background:var(--color-primary-soft);border-color:#d5d1ff}.primary-button.large,.secondary-button.large{min-height:48px;padding:0 18px;font-size:12px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:19px;display:grid}.stat-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);min-height:112px;box-shadow:var(--shadow-card);background:#fff;flex-direction:column;padding:16px;display:flex}.stat-card>span{color:var(--color-muted);font-size:10px}.stat-card strong{color:var(--color-ink-strong);letter-spacing:-.05em;margin:8px 0 2px;font-size:25px}.stat-card small{color:var(--color-faint);font-size:10px}.stat-card.success{border-color:#d8f0e3}.stat-card.success strong{color:var(--color-success)}.stat-card.warning{border-color:#f5e7bc}.stat-card.warning strong{color:var(--color-warning)}.dashboard-grid,.two-column,.detail-grid,.feedback-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px;display:grid}.panel,.form-card,.feedback-card,.empty-panel{border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff}.panel{padding:20px}.panel-heading,.form-card-heading,.feedback-card-top,.student-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-heading{margin-bottom:17px}.panel-heading h2,.form-card h2,.empty-panel h2{color:var(--color-ink-strong);letter-spacing:-.035em;margin:5px 0 0;font-size:17px}.panel-heading>a{color:var(--color-primary);font-size:10px}.muted-label{color:var(--color-faint);font-size:10px}.assignment-list{gap:10px;display:grid}.assignment-card{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;gap:13px;padding:15px;display:flex}.assignment-icon{width:36px;height:36px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:8px;flex:none;place-items:center;font-size:18px;display:grid}.assignment-body{flex:1;min-width:0}.assignment-topline{color:var(--color-faint);justify-content:space-between;align-items:center;gap:10px;font-size:10px;display:flex}.assignment-body h3{color:var(--color-ink-strong);margin:7px 0 3px;font-size:13px}.assignment-body p{color:var(--color-muted);margin:0 0 8px;font-size:10px;line-height:1.8}.inline-action{color:var(--color-primary);font-size:10px}.inline-action span{margin-right:4px}.status-badge{color:#68748b;white-space:nowrap;background:#f0f2f6;border-radius:5px;align-items:center;width:fit-content;padding:5px 7px;font-size:9px;display:inline-flex}.status-badge.success{color:var(--color-success);background:var(--color-success-soft)}.status-badge.warning{color:var(--color-warning);background:var(--color-warning-soft)}.status-badge.danger{color:var(--color-danger);background:var(--color-danger-soft)}.review-row,.review-table-row,.table-row{border-bottom:1px solid #f0f2f6;align-items:center;gap:10px;padding:12px 0;display:flex}.review-row:last-child,.review-table-row:last-child,.table-row:last-child{border-bottom:0}.review-row>span:nth-child(2),.review-student,.table-row>div{flex:1;min-width:0}.review-row strong,.review-table-row strong,.table-row strong{color:var(--color-ink);font-size:11px;display:block}.review-row small,.review-table-row small,.table-row small{color:var(--color-faint);margin-top:3px;font-size:9px;display:block}.review-row b{color:var(--color-primary)}.avatar,.large-avatar{color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.avatar{width:31px;height:31px;font-size:11px}.large-avatar{width:48px;height:48px;font-size:18px}.empty-copy{color:var(--color-muted);font-size:11px}.feedback-preview{border-bottom:1px solid #f0f2f6;padding:12px 0}.feedback-preview>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.feedback-preview strong{font-size:11px}.feedback-preview p{color:var(--color-muted);margin:8px 0 0;font-size:10px;line-height:1.9}.assignment-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.form-card{align-content:start;gap:8px;padding:20px;display:grid}.form-card-heading{margin-bottom:8px}.form-step{color:var(--color-success);font-size:10px}.form-card label,.feedback-form label,.login-form label{color:var(--color-ink);margin-top:5px;font-size:10px;font-weight:600}.form-card input,.form-card textarea,.form-card select,.feedback-form input,.feedback-form textarea,.login-form input{width:100%;color:var(--color-ink);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fbfcfe;outline:0;padding:11px 12px;font-size:11px}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.feedback-form input:focus,.feedback-form textarea:focus,.login-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #5147df1a}.form-card textarea,.feedback-form textarea{resize:vertical;min-height:100px}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-row>div{gap:7px;display:grid}.table-list,.review-table{display:grid}.table-row{gap:12px}.table-row .status-badge{margin-right:auto}.review-table-row{min-height:62px}.review-date{color:var(--color-faint);font-size:9px}.row-action{color:var(--color-primary);background:0 0;border:0;font-size:10px}.row-action.disabled{color:var(--color-faint);cursor:default}.feedback-grid{grid-template-columns:minmax(0,1fr) 330px}.submission-panel{min-height:340px}.student-heading{border-bottom:1px solid var(--color-line);justify-content:start;padding-bottom:18px}.student-heading>.status-badge{margin-right:auto}.student-heading h2{margin:0;font-size:16px}.student-heading p{color:var(--color-muted);margin:3px 0 0;font-size:10px}.submission-content{padding:25px 0}.submission-content p{color:var(--color-ink);margin:10px 0 0;font-size:13px;line-height:2}.existing-feedback{border-radius:var(--radius-md);background:var(--color-primary-soft);padding:14px}.existing-feedback span{color:var(--color-primary);font-size:10px}.existing-feedback p{color:var(--color-ink-soft);margin:8px 0 0;font-size:11px;line-height:1.9}.feedback-form{border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:#fff;align-content:start;gap:8px;padding:20px;display:grid}.submitted-note,.form-success,.form-error{border-radius:var(--radius-sm);margin:8px 0 0;padding:10px 12px;font-size:10px}.submitted-note{color:var(--color-warning);background:var(--color-warning-soft)}.success-note,.form-success{color:var(--color-success);background:var(--color-success-soft)}.form-error{color:var(--color-danger);background:var(--color-danger-soft)}.empty-panel{text-align:center;place-content:center;justify-items:center;gap:8px;min-height:270px;padding:25px;display:grid}.empty-panel p{color:var(--color-muted);margin:0;font-size:11px}.empty-panel.small{min-height:180px}.empty-icon{width:44px;height:44px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;font-size:22px;display:grid}.exam-panel{gap:12px}.landing-page{background:#fff;min-height:100vh;padding:0 7vw}.landing-nav{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;height:84px;display:flex}.landing-nav .app-brand strong{color:var(--color-ink-strong)}.landing-nav .app-brand small{color:var(--color-muted)}.landing-nav-note{color:var(--color-muted);font-size:11px}.landing-hero{grid-template-columns:1fr 1fr;align-items:center;gap:8vw;max-width:1200px;min-height:550px;margin:0 auto;display:grid}.landing-copy{max-width:510px}.landing-copy h1{color:var(--color-ink-strong);letter-spacing:-.065em;margin:15px 0;font-size:clamp(34px,5vw,62px);line-height:1.35}.landing-copy h1 em{color:var(--color-primary);font-style:normal}.landing-copy p{max-width:450px;color:var(--color-muted);font-size:14px;line-height:2.1}.landing-actions{gap:10px;margin-top:28px;display:flex}.landing-visual{place-items:center;height:350px;display:grid;position:relative}.visual-window{border:1px solid var(--color-line);width:min(390px,100%);height:260px;box-shadow:var(--shadow-float);background:#f6f8fb;border-radius:13px;display:flex;overflow:hidden;transform:rotate(-5deg)}.visual-sidebar{background:var(--color-ink-strong);align-content:start;justify-items:center;gap:18px;width:74px;padding:20px 10px;display:grid}.visual-logo{object-fit:contain;width:27px;height:27px;display:block}.visual-sidebar i{background:#53617f;border-radius:3px;width:26px;height:5px;display:block}.visual-sidebar i:first-of-type{background:var(--color-primary)}.visual-content{flex:1;padding:31px 23px}.visual-line{background:#cfd5e2;border-radius:4px;width:75%;height:8px;margin-bottom:10px;display:block}.visual-line.short{background:var(--color-primary);width:45%}.visual-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:27px;display:grid}.visual-stats b{border:1px solid var(--color-line);background:#fff;border-radius:7px;height:52px;display:block}.visual-list{gap:9px;margin-top:18px;display:grid}.visual-list span{background:#dce1eb;border-radius:4px;height:13px;display:block}.visual-list span:nth-child(2){width:82%}.visual-list span:nth-child(3){width:65%}.visual-orb{background:#f1c84b;border-radius:50%;width:12px;height:12px;position:absolute}.orb-one{top:38px;right:13%}.orb-two{background:var(--color-primary);bottom:35px;left:10%}.landing-roles{grid-template-columns:1fr 1fr;gap:16px;max-width:1200px;margin:0 auto;padding:20px 0 46px;display:grid}.landing-roles>div{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-canvas);padding:24px}.role-icon{width:34px;height:34px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:8px;place-items:center;font-weight:700;display:grid}.role-icon.student{color:var(--color-success);background:var(--color-success-soft)}.landing-roles h2{margin:16px 0 5px;font-size:16px}.landing-roles p{color:var(--color-muted);margin:0 0 14px;font-size:11px}.landing-roles a,.auth-switch{color:var(--color-primary);font-size:10px}.landing-footer{max-width:1200px;color:var(--color-faint);border-top:1px solid var(--color-line);margin:0 auto;padding:19px 0;font-size:10px}.auth-page{background:var(--color-canvas);grid-template-columns:minmax(0,440px) minmax(0,1fr);min-height:100vh;display:grid}.auth-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);width:min(100%,380px);box-shadow:var(--shadow-card);background:#fff;place-self:center;padding:35px}.auth-brand{margin-bottom:45px}.auth-brand strong{color:var(--color-ink-strong)}.auth-card h1{color:var(--color-ink-strong);margin:10px 0 6px;font-size:25px}.auth-subtitle{color:var(--color-muted);margin:0 0 25px;font-size:11px;line-height:1.9}.login-form{gap:8px;display:grid}.submit-button{width:100%;margin-top:10px}.demo-hint{color:var(--color-faint);text-align:center;margin:8px 0 0;font-size:9px}.auth-switch{text-align:center;margin-top:23px;display:block}.auth-aside{color:#d6dded;background:var(--color-ink-strong);align-content:center;justify-items:start;padding:12vw;display:grid}.aside-mark{width:52px;height:52px;color:var(--color-ink-strong);background:#f1c84b;border-radius:12px;place-items:center;font-size:22px;font-weight:800;display:grid}.auth-aside h2{color:#fff;letter-spacing:-.055em;margin:25px 0 10px;font-size:42px;line-height:1.45}.auth-aside h2 em{color:#9b94ff;font-style:normal}.auth-aside p{color:#8995af;font-size:13px}.notification-list{max-width:760px}.notification-row{border-bottom:1px solid #f0f2f6;gap:13px;padding:15px 0;display:flex}.notification-row:last-child{border-bottom:0}.notification-icon{width:30px;height:30px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;place-items:center;font-size:22px;line-height:10px;display:grid}.notification-row strong{font-size:12px}.notification-row p{color:var(--color-muted);margin:5px 0;font-size:10px}.notification-row small{color:var(--color-faint);font-size:9px}@media (max-width:900px){.app-sidebar{flex-basis:218px;width:218px}.app-content{padding:28px 22px 42px}.app-topbar{padding:0 22px}.stats-grid{grid-template-columns:repeat(2,1fr)}.landing-page{padding:0 5vw}.landing-hero{gap:4vw}.auth-aside{padding:8vw}}@media (max-width:680px){.app-shell{display:block}.app-sidebar{width:100%;height:64px;min-height:0;padding:12px 16px}.sidebar-rule,.sidebar-label,.app-nav,.sidebar-bottom{display:none}.app-topbar{height:54px;padding:0 16px}.topbar-tools{display:none}.app-content{padding:23px 14px 36px}.page-heading{flex-direction:column;align-items:stretch}.page-heading h1{font-size:23px}.dashboard-grid,.two-column,.detail-grid,.feedback-grid,.assignment-grid,.form-row{grid-template-columns:1fr}.landing-page{padding:0 16px}.landing-nav{height:70px}.landing-nav-note{display:none}.landing-hero{flex-direction:column-reverse;align-items:stretch;gap:10px;min-height:0;padding:45px 0 30px;display:flex}.landing-visual{height:250px}.landing-copy h1{font-size:42px}.landing-copy p{font-size:12px}.landing-actions{flex-direction:column}.landing-roles{grid-template-columns:1fr}.auth-page{padding:20px 14px;display:block}.auth-card{width:100%;padding:25px}.auth-brand{margin-bottom:35px}.auth-aside{display:none}.submission-panel{min-height:0}.student-heading{align-items:start}.student-heading>.status-badge{margin-right:0}}.app-sidebar{z-index:20;color:#475569;width:256px;box-shadow:none;background:#fff;border-left:1px solid #e2e8f0;flex:0 0 256px;padding:0;position:relative}.app-sidebar .app-brand strong{color:var(--color-primary);font-size:18px}.app-sidebar .app-brand small{color:#94a3b8}.app-sidebar .brand-mark{color:#fff;background:var(--color-primary);border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.app-sidebar .app-brand{gap:8px}.app-sidebar .app-brand strong{font-size:20px}.app-sidebar .app-brand small{display:none}.app-sidebar .brand-mark{width:auto;height:auto;color:var(--color-primary);background:0 0}.class-selector{color:#64748b;gap:6px;padding:20px 16px 4px;font-size:10px;font-weight:600;display:grid}.class-selector select{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;outline:0;width:100%;min-height:38px;padding:0 10px;font-size:11px}.class-selector select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.app-sidebar .app-nav{flex:1;gap:7px;padding:24px 16px}.app-sidebar .app-nav a{color:#475569;border-radius:8px;gap:12px;min-height:44px;padding:0 14px;font-size:12px;font-weight:500}.app-sidebar .app-nav a svg{color:#94a3b8}.app-sidebar .app-nav a:hover{color:#1e293b;background:#f8fafc}.app-sidebar .app-nav a.active{color:var(--color-primary);background:#eef2ff;font-weight:600}.app-sidebar .app-nav a.active svg{color:var(--color-primary)}.back-link{color:#64748b;border-color:#e2e8f0;margin-bottom:18px;padding:11px}.profile-chip{color:#334155;border-top-color:#e2e8f0}.profile-chip>span{color:var(--color-primary);background:#eef2ff}.profile-chip small{color:#94a3b8}.sidebar-close{display:none}.app-main{background:#f8fafc;position:relative}.app-topbar{z-index:40;background:0 0;border:0;height:40px;padding:0;position:absolute;top:70px;left:168px}.topbar-start,.topbar-tools{align-items:center;gap:12px;display:flex}.topbar-tools{color:#0000;gap:7px;font-size:0}.breadcrumbs,.mobile-menu-button{display:none}.notification-root{position:relative}.icon-button,.plain-icon-button{background:0 0;border:0;place-items:center;display:grid}.notification-trigger{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:50%;width:40px;height:40px;position:relative}.unread-dot{background:#ef4444;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:8px;right:8px}.notification-scrim{display:none}.notification-popover{z-index:80;width:420px;box-shadow:var(--shadow-modal);background:#fff;border:1px solid #e2e8f0;border-radius:12px;position:absolute;top:50px;left:0;overflow:hidden}.notification-popover header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.notification-popover h2{color:#1e293b;margin:0 0 3px;font-size:15px}.notification-popover header span{color:#94a3b8;font-size:10px}.plain-icon-button{color:#94a3b8;border-radius:7px;width:32px;height:32px}.plain-icon-button:hover{color:#334155;background:#f8fafc}.notification-tabs{border-bottom:1px solid #f1f5f9;gap:16px;padding:0 20px;display:flex}.notification-tabs button{color:#94a3b8;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 0 10px;font-size:10px}.notification-items{max-height:360px;overflow:auto}.notification-type-icon{width:32px;height:32px;color:var(--color-primary);background:#eef2ff;border-radius:8px;flex:none;place-items:center;display:grid}.notification-item strong{color:#334155;font-size:11px}.notification-item p{color:#64748b;margin:3px 0;font-size:10px;line-height:1.7}.notification-item small{color:#94a3b8;font-size:9px}.star-button{color:#cbd5e1;background:0 0;border:0;place-items:center;margin-right:auto;padding:4px;display:grid}.notification-empty{color:#94a3b8;text-align:center;padding:25px;font-size:11px}.notification-popover footer{color:#94a3b8;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.notification-popover footer a{color:var(--color-primary);font-size:10px}.mark-all-button{color:var(--color-primary);background:0 0;border:0;padding:4px 6px;font-size:10px}.notification-tabs button{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.page-heading{margin-bottom:32px}.page-heading h1{font-size:24px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.stat-card{border-radius:8px;min-height:136px;padding:20px}.stat-card>span{font-size:12px;font-weight:600}.stat-card strong{margin:14px 0 0;font-size:30px}.stat-card small{font-size:10px}.dashboard-grid{grid-template-columns:1fr 1fr;gap:24px}.panel,.form-card,.feedback-card,.empty-panel{border-radius:8px;box-shadow:0 1px 2px #0f172a0a}.panel{padding:0;overflow:hidden}.panel-heading{background:#f8fafca6;border-bottom:1px solid #e2e8f0;margin-bottom:0;padding:16px 20px}.panel-heading h2{font-size:15px}.assignment-list{gap:0}.assignment-card{border:0;border-bottom:1px solid #e2e8f0;border-radius:0;align-items:center;padding:16px 20px}.assignment-card:last-child{border-bottom:0}.assignment-icon{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;width:40px;height:40px}.assignment-body h3{font-size:12px}.assignment-body p{display:none}.assignment-topline{justify-content:flex-start;gap:8px}.inline-action{display:none}.side-panel{padding-bottom:12px}.side-panel .review-row{margin:0 20px}.side-panel .panel-heading{margin-bottom:0}.stat-card-top,.stat-card-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.stat-card-top i{width:32px;height:32px;color:var(--color-primary);background:#eef2ff;border-radius:6px;place-items:center;font-style:normal;display:grid}.stat-card-bottom em{color:var(--color-success);background:#f0fdf4;border:1px solid #dcfce7;border-radius:6px;padding:4px 7px;font-size:9px;font-style:normal}.stat-card.warning .stat-card-bottom em{color:var(--color-warning);background:#fffbeb;border-color:#fef3c7}.dashboard-page .stats-grid .stat-card>small{display:none}.row-separator{background:#cbd5e1;border-radius:50%;flex:none;width:3px;height:3px;display:inline-block}.teacher-assignment-row{border-bottom:1px solid #e2e8f0;align-items:center;gap:16px;padding:16px 20px;display:flex}.teacher-assignment-row:last-child{border-bottom:0}.teacher-type-icon{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex:none;place-items:center;width:40px;height:40px;display:grid}.teacher-assignment-copy{flex:1;min-width:0}.teacher-assignment-copy h3{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;margin:0 0 7px;font-size:13px;font-weight:600;overflow:hidden}.teacher-assignment-copy>div{color:#64748b;align-items:center;gap:8px;font-size:10px;display:flex}.teacher-assignment-copy b{color:#cbd5e1}.deadline{color:#475569;background:#f1f5f9;border-radius:5px;padding:3px 6px}.deadline.warning{color:#b45309;background:#fffbeb}.deadline.danger{color:#be123c;background:#fff1f2}.participation{flex:0 0 128px;width:128px}.participation>div{color:#64748b;justify-content:space-between;margin-bottom:7px;font-size:9px;display:flex}.participation b{color:#334155}.progress-track{background:#f1f5f9;border-radius:10px;width:100%;height:6px;display:block;overflow:hidden}.progress-track i{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.row-actions{gap:3px;display:flex}.row-actions button{color:#94a3b8;background:0 0;border:0;border-radius:6px;place-items:center;padding:6px;display:grid}.row-actions button:hover{color:var(--color-primary);background:#eef2ff}.row-mobile-link{display:none}.dashboard-stack{gap:24px;display:grid}.dashboard-bottom-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.panel-body{padding:4px 20px 14px}.feedback-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:10px;padding:13px 0;display:flex}.feedback-row:last-child{border-bottom:0}.feedback-row>div{flex:1;min-width:0}.feedback-row strong,.feedback-row small{display:block}.feedback-row strong{color:#334155;font-size:11px}.feedback-row small{color:#94a3b8;margin-top:3px;font-size:9px}.feedback-row p{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin:7px 0 0;font-size:10px;line-height:1.7;overflow:hidden}.danger-avatar{color:#be123c;background:#fff1f2}.dashboard-card-list{display:grid}.dashboard-card-row{border-bottom:1px solid #e2e8f0;gap:12px;padding:16px 20px;display:grid}.dashboard-card-row:last-child{border-bottom:0}.dashboard-row-head,.dashboard-row-foot,.dashboard-row-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-person{align-items:center;gap:12px;min-width:0;display:flex}.dashboard-person>div{min-width:0}.dashboard-person strong,.dashboard-person small{display:block}.dashboard-person strong{color:#1e293b;font-size:12px}.dashboard-person small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.dashboard-row-foot{color:#64748b;font-size:10px}.dashboard-row-foot>span,.dashboard-row-foot>a,.dashboard-row-actions>a{align-items:center;gap:6px;display:inline-flex}.dashboard-row-foot>a{color:var(--color-primary);border:1px solid var(--color-primary);border-radius:6px;padding:6px 9px;font-size:10px}.dashboard-row-actions>a{color:#64748b;border:1px solid #e2e8f0;border-radius:6px;flex:1;justify-content:center;min-height:32px;padding:6px 8px;font-size:9px}.dashboard-row-actions>a:hover{color:var(--color-primary);background:#eef2ff;border-color:#c7d2fe}.heading-actions{gap:8px;display:flex}.modal-layer{z-index:100;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;border:0;width:100%;height:100%;position:absolute;inset:0}.assignment-modal{width:min(100%,768px);max-height:90vh;box-shadow:var(--shadow-modal);background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden}.modal-header{background:#f8fafcb3;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.modal-header h2{color:#1e293b;margin:0;font-size:18px}.modal-body{gap:24px;padding:28px 32px;display:grid;overflow-y:auto}.modal-title-input{color:#1e293b;border:0;border-bottom:1px solid #e2e8f0;outline:0;padding:4px 0 10px;font-size:19px;font-weight:700}.modal-title-input:focus{border-color:var(--color-primary)}.modal-body>textarea{color:#475569;resize:vertical;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;outline:0;min-height:82px;padding:12px;font-size:12px}.modal-property-grid{border-top:1px solid #f1f5f9;grid-template-columns:1fr 1fr;gap:24px;padding-top:24px;display:grid}.modal-property-grid fieldset{border:0;align-content:start;gap:10px;min-width:0;padding:0;display:grid}.modal-property-grid legend{color:#64748b;margin-bottom:2px;font-size:11px;font-weight:600}.format-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice-button,.choice-chip,.toggle-choice button,.grading-grid button{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:8px;font-size:10px;display:flex}.choice-button.active,.choice-chip.active,.toggle-choice button.active,.grading-grid button.active{color:var(--color-primary);border-color:var(--color-primary);background:#eef2ff}.modal-property-grid select,.custom-deadline{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 10px;font-size:10px}.toggle-choice,.grading-grid{gap:8px;display:flex}.toggle-choice button,.grading-grid button{flex:1;min-height:36px;padding:6px}.specific-select{margin-top:2px}.deadline-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choice-chip{min-height:38px}.switch-row{color:#64748b;align-items:center;gap:8px;font-size:10px;display:flex}.switch-row input{accent-color:var(--color-primary)}.modal-footer{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:8px;padding:16px 32px;display:flex}.modal-footer .secondary-button,.modal-footer .primary-button{min-height:40px}.add-new-root{position:relative}.add-new-trigger{min-width:138px}.add-new-popover{z-index:50;width:190px;box-shadow:var(--shadow-modal);background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:4px;position:absolute;top:calc(100% + 8px);left:0}.add-new-popover .primary-button{color:#475569;background:0 0;border:0;justify-content:flex-start;width:100%;font-size:10px}.add-new-popover .primary-button:hover{color:var(--color-primary);background:#f8fafc}.add-new-popover>a{color:#475569;align-items:center;gap:9px;padding:11px;font-size:10px;display:flex}.add-new-popover>a:hover{color:var(--color-primary);background:#f8fafc}.mini-stat{min-width:126px;box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:6px;place-items:center;gap:4px;padding:11px 14px;display:grid}.mini-stat span{color:#64748b;font-size:9px}.mini-stat strong{color:#1e293b;font-size:20px}.mini-stat.warning strong,.mini-stat.warning span{color:#b45309}.assignment-toolbar{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px;padding:16px;display:flex}.filter-group{gap:12px;display:flex}.filter-group label{color:#64748b;gap:6px;min-width:145px;font-size:10px;display:grid}.filter-group select,.search-field input{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;outline:0;min-height:40px;padding:0 11px;font-size:11px}.search-field{width:250px;position:relative}.search-field svg{color:#94a3b8;position:absolute;top:12px;right:10px}.search-field input{width:100%;padding-right:34px}.filter-group select:focus,.search-field input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.assignment-manager-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.managed-assignment-list{gap:12px;display:grid}.managed-assignment{min-height:108px;box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:16px;padding:20px;display:flex;position:relative}.managed-type-icon{width:48px;height:48px;color:var(--color-primary);background:#eef2ff;border-radius:8px;flex:none;place-items:center;display:grid}.managed-copy{flex:1;min-width:0}.managed-copy h3{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:13px;overflow:hidden}.managed-copy>div{color:#64748b;gap:8px;font-size:10px;display:flex}.assignment-metrics{gap:18px;display:flex}.assignment-metrics span{text-align:center;gap:3px;min-width:54px;display:grid}.assignment-metrics b{color:#334155;font-size:13px}.assignment-metrics small{color:#94a3b8;font-size:9px}.managed-actions{gap:2px;display:flex}.managed-actions button{color:#94a3b8;background:0 0;border:0;border-radius:6px;place-items:center;padding:7px;display:grid}.managed-actions button:hover{color:var(--color-primary);background:#eef2ff}.menu-wrap{position:relative}.row-menu{z-index:10;width:145px;box-shadow:var(--shadow-modal);background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:4px;position:absolute;top:34px;left:0}.row-menu button{color:#475569;text-align:right;width:100%;padding:9px;font-size:10px;display:block}.row-menu button:hover{color:var(--color-primary);background:#f8fafc}.row-menu button:last-child{color:var(--color-danger)}.managed-progress{display:none}.confirm-modal{width:min(100%,448px);box-shadow:var(--shadow-modal);text-align:center;background:#fff;border-radius:8px;padding:32px;position:relative}.confirm-icon{width:56px;height:56px;color:var(--color-danger);background:var(--color-danger-soft);border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.confirm-modal h2{color:#1e293b;margin:0 0 10px;font-size:19px}.confirm-modal p{color:#64748b;margin:0 0 24px;font-size:11px;line-height:1.9}.confirm-modal>div{gap:8px;display:flex}.confirm-modal button{flex:1}.danger-button{color:#fff;border:1px solid var(--color-danger);background:var(--color-danger);border-radius:6px;min-height:40px;font-size:10px}.choice-chip.active{color:#fff;border-color:var(--color-primary);background:var(--color-primary)}.feedback-form{gap:10px;padding:20px;display:grid}.evaluator-heading{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:2px;padding-bottom:13px;display:flex}.evaluator-heading h2{margin:5px 0 0;font-size:15px}.secure-label{color:#15803d;font-size:9px}.decision-fieldset{border:0;gap:7px;margin:8px 0 2px;padding:0;display:grid}.decision-fieldset legend{color:#64748b;margin-bottom:2px;font-size:10px;font-weight:600}.decision-fieldset label,.switch-row{color:#475569;align-items:center;gap:7px;font-size:10px;display:flex}.decision-fieldset input{accent-color:var(--color-primary)}.revision-fields{background:#fff1f2;border:1px solid #fecdd3;border-radius:6px;gap:7px;padding:11px;display:grid}.file-label{color:#64748b;gap:6px;font-size:10px;display:grid}.file-label input{color:#64748b;padding:8px}.feedback-form select{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;outline:0;width:100%;min-height:40px;padding:0 10px;font-size:10px}.decision-option{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:7px;padding:10px;display:flex}.decision-option.active{color:#15803d;background:#f0fdf4;border-color:#86efac}.decision-option input{accent-color:var(--color-primary)}.feedback-thread{background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;gap:8px;margin:5px 0;padding:12px;display:grid}.feedback-thread header{color:#64748b;justify-content:space-between;align-items:center;font-size:10px;display:flex}.feedback-thread header span{color:#334155;align-items:center;gap:5px;font-weight:600;display:inline-flex}.feedback-thread header small{color:#94a3b8}.feedback-thread>p{color:#475569;background:#fff;border-radius:5px;margin:0;padding:8px;font-size:10px}.feedback-thread>div{gap:5px;display:flex}.feedback-thread input{border:1px solid #e2e8f0;border-radius:5px;outline:0;flex:1;min-width:0;min-height:33px;padding:0 8px;font-size:9px}.feedback-thread button{color:#fff;background:var(--color-primary);border:0;border-radius:5px;place-items:center;width:33px;display:grid}.file-label>span{color:var(--color-primary);background:#eef2ff;border:1px dashed #c7d2fe;border-radius:6px;align-items:center;gap:5px;padding:9px;font-size:10px;display:inline-flex}.file-label>input{display:none}.workspace-viewer{flex-direction:column;min-height:540px;display:flex}.workspace-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.workspace-header h2{color:#1e293b;margin:5px 0 0;font-size:16px}.viewer-actions{color:#94a3b8;align-items:center;gap:7px;font-size:10px;display:flex}.viewer-actions button,.viewer-footer button{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:5px;padding:6px 8px;font-size:10px;display:inline-flex}.viewer-actions button:hover,.viewer-footer button:hover{color:var(--color-primary);background:#eef2ff;border-color:#c7d2fe}.response-canvas{background:#f8fafc;flex:1;place-items:center;padding:32px;display:grid}.response-file{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:8px;align-content:center;justify-items:center;gap:8px;width:min(100%,520px);min-height:300px;padding:35px;display:grid}.file-preview-icon{width:56px;height:56px;color:var(--color-primary);background:#eef2ff;border-radius:12px;place-items:center;margin-bottom:8px;font-size:25px;display:grid}.response-file strong{color:#334155;font-size:13px}.response-file small{color:#94a3b8;font-size:10px}.response-file p{color:#475569;font-size:12px;line-height:2}.viewer-footer{color:#94a3b8;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:13px 20px;font-size:9px;display:flex}.viewer-footer div{gap:7px;display:flex}.response-note{color:#64748b;background:#f8fafc;border-radius:5px;padding:8px 10px;font-size:9px}.qa-modal{width:min(100%,880px);height:min(85vh,720px);box-shadow:var(--shadow-modal);background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden}.qa-modal>header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.qa-modal>header>div{align-items:center;gap:12px;display:flex}.qa-icon{width:40px;height:40px;color:var(--color-primary);background:#eef2ff;border-radius:8px;place-items:center;display:grid}.qa-modal h2{color:#1e293b;margin:0 0 4px;font-size:15px}.qa-modal header p{color:#64748b;margin:0;font-size:10px}.qa-modal>main{gap:16px;padding:24px;display:grid;overflow-y:auto}.qa-question{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.qa-question-head{justify-content:space-between;align-items:center;display:flex}.qa-question-head span{color:#334155;align-items:center;gap:7px;font-size:11px;font-weight:700;display:inline-flex}.qa-question-head small{color:#94a3b8;font-size:9px}.qa-question>p{color:#475569;margin:12px 0;font-size:11px;line-height:1.9}.qa-question>footer{border-top:1px solid #f1f5f9;padding-top:10px}.qa-question footer button{color:#64748b;background:0 0;border:0;align-items:center;gap:6px;padding:5px;font-size:10px;display:inline-flex}.qa-question footer button:hover{color:var(--color-primary)}.qa-reply{background:#eef2ff;border-right:2px solid #c7d2fe;border-radius:6px;margin:8px 24px 0 0;padding:12px}.qa-reply strong{color:#334155;font-size:10px}.qa-reply p{color:#475569;margin:5px 0 0;font-size:10px}.qa-reply-box{border:1px solid var(--color-primary);border-radius:7px;gap:8px;margin:10px 24px 0 0;padding:10px;display:grid}.qa-reply-box textarea{resize:vertical;border:0;outline:0;min-height:65px;padding:8px;font-size:10px}.qa-reply-box button{color:#fff;background:var(--color-primary);border:0;border-radius:5px;justify-content:center;align-items:center;gap:6px;width:fit-content;min-height:32px;padding:0 10px;font-size:9px;display:inline-flex}.review-summary{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;display:grid}.review-summary>div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:8px;padding:16px 20px;display:grid}.review-summary span{color:#64748b;font-size:10px}.review-summary strong{color:#1e293b;font-size:25px}.review-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;gap:16px;margin-bottom:16px;padding:16px;display:flex}.review-toolbar select{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;min-height:40px;padding:0 12px;font-size:10px}.review-card-list{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:1px;padding:0 20px;display:grid}.review-card{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;min-height:68px;display:flex}.review-card:last-child{border-bottom:0}.review-card .review-date{margin-right:auto}.review-assignment-list{gap:20px;padding-bottom:64px;display:grid}.review-assignment-card{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:minmax(0,1.4fr) auto auto auto;align-items:center;gap:20px;padding:20px;display:grid}.review-assignment-main{align-items:center;gap:20px;min-width:0;display:flex}.review-assignment-main>div{min-width:0}.review-assignment-main h2{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:18px;overflow:hidden}.review-assignment-meta{color:#64748b;flex-wrap:wrap;gap:14px;font-size:10px;display:flex}.review-icon-text{color:#059669;background:#ecfdf5}.review-icon-video{color:#9333ea;background:#faf5ff}.review-icon-audio{color:#2563eb;background:#eff6ff}.review-icon-image{color:#e11d48;background:#fff1f2}.review-assignment-metrics{background:#f8fafc;border:1px solid #f1f5f9;border-radius:6px;align-items:center;padding:6px;display:flex}.review-assignment-metrics span{text-align:center;gap:4px;min-width:76px;padding:5px 10px;display:grid}.review-assignment-metrics span+span{border-right:1px solid #e2e8f0}.review-assignment-metrics b{color:#1e293b;font-size:14px}.review-assignment-metrics small{color:#64748b;font-size:9px}.review-assignment-progress{width:150px}.review-assignment-progress>div{color:#64748b;justify-content:space-between;margin-bottom:8px;font-size:9px;display:flex}.review-assignment-progress b{color:#334155}.review-assignment-progress>i{background:#f1f5f9;border-radius:10px;height:6px;display:block;overflow:hidden}.review-assignment-progress em{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.delay-kpis{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px;display:grid}.delay-kpi{border:1px solid #e2e8f0;border-right:3px solid var(--color-primary);min-height:128px;box-shadow:var(--shadow-card);background:#fff;border-radius:8px;padding:20px}.delay-kpi.warning{border-right-color:#f59e0b}.delay-kpi.danger{border-right-color:#f43f5e}.delay-kpi>div{color:#64748b;justify-content:space-between;align-items:center;font-size:11px;display:flex}.delay-kpi i{width:34px;height:34px;color:var(--color-primary);background:#eef2ff;border-radius:8px;place-items:center;font-style:normal;display:grid}.delay-kpi.warning i{color:#d97706;background:#fffbeb}.delay-kpi.danger i{color:#e11d48;background:#fff1f2}.delay-kpi>strong{color:#1e293b;margin-top:14px;font-size:28px;display:block}.delay-kpi>strong small{color:#64748b;font-size:12px}.delay-filters{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.delay-filters .search-field{flex:1;max-width:310px}.delay-filters select{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;min-height:40px;padding:0 12px;font-size:10px}.delay-table{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;position:relative;overflow:hidden}.delay-table>header,.delay-table>article{grid-template-columns:70px 1.3fr 1fr 1.4fr 1fr 1.25fr;align-items:center;gap:12px;padding:14px 20px;font-size:10px;display:grid}.delay-table>header{color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-weight:600}.delay-table>article{color:#475569;border-bottom:1px solid #f1f5f9;min-height:76px}.delay-table>article:last-of-type{border-bottom:0}.delay-select{align-items:center;gap:8px;display:flex}.delay-select input{accent-color:var(--color-primary)}.delay-person{color:#334155;align-items:center;gap:9px;display:flex}.delay-person strong,.delay-table article>strong{font-size:10px}.delay-pill{color:#be123c;background:#fff1f2;border-radius:5px;width:fit-content;padding:5px 8px;font-size:9px}.delay-actions{gap:5px;display:flex}.delay-actions button{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:5px;align-items:center;gap:5px;padding:7px 8px;font-size:9px;display:inline-flex}.delay-actions button:hover{color:var(--color-primary);background:#eef2ff;border-color:#c7d2fe}.delay-actions button.reminded{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.delay-bulk-bar{color:#475569;background:#fff;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 20px;font-size:10px;display:flex;position:sticky;bottom:0}.delay-bulk-bar button{color:#fff;background:var(--color-primary);border:0;border-radius:5px;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:9px;display:inline-flex}.exam-builder{padding-bottom:104px}.exam-metadata,.question-card{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:24px}.exam-title{color:#1e293b;border:0;border-bottom:2px solid #0000;outline:0;width:100%;margin-bottom:22px;padding:0 0 10px;font-size:24px;font-weight:700}.exam-title:focus{border-color:var(--color-primary)}.exam-meta-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.exam-meta-grid label{color:#64748b;gap:8px;font-size:10px;font-weight:600;display:grid}.exam-meta-grid input,.exam-meta-grid select{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:6px;outline:0;min-height:42px;padding:0 10px;font-size:10px}.exam-meta-grid input:focus,.exam-meta-grid select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.exam-metadata-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:16px;display:flex}.question-list{gap:20px;margin-top:20px;display:grid}.question-card>header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:14px;display:flex}.question-card>header>div{color:#94a3b8;align-items:center;gap:10px;display:flex}.question-card>header strong{color:#1e293b;font-size:13px}.question-card>header span{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;padding:5px 8px;font-size:9px}.question-card>header input{border:1px solid #e2e8f0;border-radius:5px;width:95px;min-height:32px;padding:0 8px;font-size:10px}.question-card>header button{color:#94a3b8;background:0 0;border:0;place-items:center;padding:7px;display:grid}.question-card>header button:hover{color:var(--color-primary)}.question-card>header button:last-child:hover{color:var(--color-danger)}.question-card>textarea{color:#334155;resize:vertical;border:1px solid #e2e8f0;border-radius:6px;outline:0;width:100%;min-height:105px;padding:13px;font-size:11px;line-height:1.9}.question-card>textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.answer-options{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px;display:grid}.answer-options label{color:#64748b;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:10px;font-size:10px;display:flex}.answer-options input{accent-color:var(--color-primary)}.question-type-bar{z-index:45;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:stretch;gap:2px;width:min(95vw,720px);padding:8px;display:flex;position:fixed;bottom:24px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 10px 40px -10px #0f172a26}.question-type-bar button{color:#64748b;background:0 0;border:0;border-radius:6px;justify-items:center;gap:6px;min-width:78px;padding:8px;font-size:9px;display:grid}.question-type-bar button:hover{color:var(--color-primary);background:#f8fafc}.exam-toast{z-index:60;color:#166534;box-shadow:var(--shadow-float);background:#f0fdf4;border:1px solid #bbf7d0;border-radius:7px;align-items:center;gap:9px;padding:12px 15px;font-size:10px;display:flex;position:fixed;bottom:24px;right:24px}.exam-toast button{color:#64748b;background:0 0;border:0;padding:3px;display:grid}.two-column{grid-template-columns:minmax(0,1fr) 420px;gap:24px}.assignment-grid{grid-template-columns:1fr;gap:16px}.assignment-grid .assignment-card{border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:16px;padding:20px;display:grid}.assignment-grid .assignment-icon{width:48px;height:48px}.assignment-grid .assignment-body p{display:block}.assignment-grid .assignment-topline{justify-content:space-between}.form-card{padding:24px}.form-card h2{font-size:16px}.form-card textarea{min-height:112px}.review-table{padding:0 20px 10px}.review-table-row{gap:14px}.feedback-grid{grid-template-columns:minmax(0,5fr) minmax(320px,7fr);gap:32px}.detail-meta{color:#64748b;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 20px;font-size:10px;display:flex}.detail-panel{padding:0}.detail-panel h2,.detail-panel>p{margin-left:20px;margin-right:20px}.detail-panel h2{margin-top:24px;font-size:16px}.detail-panel>p{color:#475569;font-size:12px;line-height:2}.feedback-list{gap:16px;display:grid}.feedback-card{padding:20px}.feedback-card-top h2{margin:5px 0 0;font-size:15px}.feedback-card p{color:#475569;font-size:12px;line-height:2}.feedback-card small{color:#94a3b8;font-size:10px}@media (max-width:680px){.app-sidebar{width:min(82vw,320px);height:100vh;transition:transform .25s;position:fixed;inset:0 0 0 auto;transform:translate(100%);box-shadow:-12px 0 30px #0f172a1f}.app-sidebar.open{transform:translate(0)}.sidebar-scrim{z-index:19;background:var(--overlay);border:0;width:100%;height:100%;display:none;position:fixed;inset:0}.sidebar-scrim.open{display:block}.sidebar-brand-row{justify-content:space-between;padding:0 20px}.sidebar-close{color:#64748b;background:#f8fafc;border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.app-sidebar .app-nav{display:grid}.app-sidebar .sidebar-bottom{display:block}.app-topbar{height:40px;padding:0;top:16px;left:16px}.mobile-menu-button{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.breadcrumbs{font-size:10px}.topbar-tools{display:flex}.notification-popover{border-radius:24px 24px 12px 12px;width:auto;max-height:60vh;position:fixed;top:16px;left:14px;right:14px}.notification-scrim{z-index:79;background:var(--overlay);border:0;width:100%;height:100%;position:fixed;inset:0}.notification-popover{z-index:80}.notification-tabs{gap:10px;overflow:auto}.app-content{padding:24px 16px 40px}.page-heading{align-items:flex-start;gap:16px;margin-bottom:24px}.page-heading h1{font-size:21px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.stat-card{min-height:112px;padding:14px}.stat-card strong{font-size:24px}.dashboard-grid,.two-column,.detail-grid,.feedback-grid{grid-template-columns:1fr;gap:16px}.panel-heading,.assignment-card{padding:14px 16px}.assignment-grid .assignment-card{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:16px}.assignment-grid .assignment-icon{width:40px;height:40px}.review-table{padding:0 16px 8px}.review-table-row{flex-wrap:wrap}.review-date{margin-right:auto}.feedback-grid{gap:16px}.form-card,.feedback-form{padding:18px}.detail-meta{flex-direction:column;align-items:flex-start;gap:8px}.auth-page .topbar-tools{display:none}.teacher-assignment-row{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:16px;display:grid}.teacher-type-icon{width:40px;height:40px}.participation{grid-column:1/-1;width:auto}.row-actions{display:none}.row-mobile-link{color:var(--color-primary);grid-column:2;font-size:10px;display:block}.dashboard-bottom-grid{grid-template-columns:1fr;gap:16px}.stat-card-bottom em{display:none}.modal-layer{align-items:end;padding:0}.assignment-modal{border-radius:24px 24px 0 0;width:100%;max-height:95vh}.modal-header{padding:17px 20px}.modal-header h2{font-size:15px}.modal-body{gap:20px;padding:22px 20px}.modal-property-grid{grid-template-columns:1fr;gap:20px;padding-top:20px}.modal-footer{padding:14px 20px calc(14px + env(safe-area-inset-bottom));flex-direction:column}.modal-footer button{width:100%}.format-grid{gap:8px}.assignment-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding:12px}.filter-group{grid-template-columns:1fr 1fr;gap:8px;display:grid}.filter-group label{min-width:0}.filter-group label:first-child{grid-column:1/-1}.search-field{width:100%}.managed-assignment{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:16px;display:grid}.managed-type-icon{width:48px;height:48px}.managed-copy h3{font-size:12px}.assignment-metrics{border-top:1px solid #f1f5f9;grid-column:1/-1;justify-content:space-between;padding:12px 0}.managed-actions{position:absolute;top:15px;left:12px}.managed-progress{background:#f1f5f9;border-radius:8px;grid-column:1/-1;height:5px;display:block;overflow:hidden}.managed-progress span{border-radius:inherit;background:var(--color-primary);height:100%;display:block}.review-summary{gap:8px}.review-summary>div{padding:12px}.review-summary strong{font-size:20px}.review-toolbar{flex-direction:column;align-items:stretch}.review-toolbar .search-field,.review-toolbar select{width:100%}.review-card-list{padding:0 16px}.review-card{flex-wrap:wrap;padding:12px 0}.review-card .review-date{margin-right:auto}.review-card .row-action{width:100%;padding-right:43px}.delay-kpis{gap:8px}.delay-kpi{min-height:100px;padding:12px}.delay-kpi>div{gap:7px;font-size:9px;display:grid}.delay-kpi i{opacity:.2;position:absolute}.delay-kpi>strong{margin-top:8px;font-size:22px}.delay-filters{flex-direction:column;align-items:stretch;padding:12px}.delay-filters .search-field{width:100%;max-width:none}.delay-filters select{width:100%}.delay-table{overflow-x:auto}.delay-table>header,.delay-table>article{grid-template-columns:50px 1.2fr 1fr 1.4fr 1fr 1.25fr;min-width:780px;padding:12px 16px}.delay-bulk-bar{min-width:780px}.exam-metadata,.question-card{padding:16px}.exam-title{font-size:19px}.exam-meta-grid{grid-template-columns:1fr;gap:12px}.exam-metadata-actions{flex-direction:column}.exam-metadata-actions button{width:100%}.question-card>header{flex-direction:column;align-items:flex-start;gap:12px}.question-card>header>div:last-child{justify-content:flex-end;width:100%}.answer-options{grid-template-columns:1fr}.question-type-bar{width:auto;bottom:8px;left:8px;right:8px;transform:none}.exam-toast{bottom:92px;left:12px;right:12px}.qa-modal{border-radius:24px 24px 0 0;width:100%;height:92vh}.qa-modal>header{padding:14px 16px}.qa-modal>header>div{max-width:calc(100% - 38px)}.qa-modal h2{font-size:12px}.qa-modal header p{font-size:9px}.qa-modal>main{padding:16px}.qa-question{padding:13px}}html,body{width:100%;height:100%;overflow:hidden}.app-main{height:100vh;overflow:hidden auto}.sidebar-scrim{display:none}@media (min-width:681px){.app-content{padding:32px 32px 48px}.app-topbar{top:68px;left:187px}.teacher-dashboard-heading>div:first-child{margin-left:27px}.page-heading{align-items:center}.page-heading h1{margin:0 0 6px;line-height:1.35}.page-heading p{font-size:14px;line-height:1.42}.add-new-trigger{width:138px;min-height:56px;font-size:14px}.stats-grid .stat-card{height:auto;min-height:176px}.topbar-tools .notification-trigger{width:38px;height:38px}}@media (max-width:680px){.review-assignment-card{grid-template-columns:1fr;gap:14px;padding:16px}.review-assignment-main{gap:12px}.review-assignment-main h2{font-size:13px}.review-assignment-metrics{justify-content:space-between}.review-assignment-metrics span{flex:1;min-width:0}.review-assignment-progress{width:100%}.review-assignment-card>.row-action{justify-self:start}}@media (min-width:681px) and (max-width:1023px){.managed-assignment{grid-template-columns:48px minmax(0,1fr);align-items:start;display:grid}.assignment-metrics{border-top:1px solid #f1f5f9;grid-column:1/-1;justify-content:space-around;padding-top:12px}.managed-actions{position:absolute;top:18px;left:16px}.managed-actions span{display:none}.review-assignment-card{grid-template-columns:minmax(0,1fr) auto;gap:16px}.review-assignment-main{grid-column:1/-1}.review-assignment-metrics{grid-column:1}.review-assignment-progress{grid-column:2;align-self:center}.review-assignment-card>.row-action{grid-column:1/-1;justify-self:start}}@media (min-width:1024px){.managed-assignment{gap:20px;min-height:120px}.managed-type-icon{width:56px;height:56px}.managed-copy h3{font-size:18px}.managed-copy>div{font-size:11px}.assignment-metrics{background:#f8fafc;border:1px solid #f1f5f9;border-radius:6px;padding:6px}.assignment-metrics span{min-width:68px;padding:5px 8px}.assignment-metrics span+span{border-right:1px solid #e2e8f0}.managed-actions{gap:5px}.managed-actions button{background:#fff;border:1px solid #e2e8f0;min-height:38px;padding:7px 9px}.managed-actions button:nth-child(2){color:var(--color-primary);background:#eef2ff;border-color:#c7d2fe}}:where(button,a,input,textarea,select):focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ui-button{min-height:var(--control-height-md);justify-content:center;align-items:center;gap:var(--space-2);padding-inline:var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border:1px solid #0000;line-height:1;display:inline-flex}.ui-button--sm{min-height:var(--control-height-sm);padding-inline:var(--space-3);font-size:var(--font-size-xs)}.ui-button--lg{min-height:var(--control-height-lg);padding-inline:var(--space-5);font-size:var(--font-size-md)}.ui-button--primary{color:var(--color-text-inverse);background:var(--color-primary);border-color:var(--color-primary)}.ui-button--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.ui-button--secondary,.ui-button--outline{color:var(--color-text-secondary);background:var(--color-bg-surface);border-color:var(--color-border-default)}.ui-button--ghost{color:var(--color-text-secondary);background:0 0}.ui-button--danger{color:var(--color-text-inverse);background:var(--color-danger);border-color:var(--color-danger)}.ui-button:disabled{cursor:not-allowed;opacity:.55}.ui-icon-button{width:var(--control-height-md);height:var(--control-height-md);color:var(--color-text-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);place-items:center;padding:0;display:inline-grid}.ui-icon-button:hover{color:var(--color-primary);border-color:var(--color-primary)}.ui-spinner{border-radius:var(--radius-full);width:14px;height:14px;animation:ui-spin var(--motion-base) linear infinite;border:2px solid;border-left-color:#0000}.ui-field{gap:var(--space-2);color:var(--color-text-primary);font-size:var(--font-size-sm);display:grid}.ui-field__label{font-weight:var(--font-weight-semibold)}.ui-field__label b{color:var(--color-danger)}.ui-field__hint{color:var(--color-text-muted);font-size:var(--font-size-xs)}.ui-field__error{color:var(--color-danger);font-size:var(--font-size-xs)}.ui-input{width:100%;min-height:var(--control-height-md);padding-inline:var(--space-3);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-surface);font-size:var(--font-size-sm);outline:none}.ui-input:hover{border-color:var(--color-border-strong)}.ui-input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.ui-input.is-error{border-color:var(--color-danger)}.ui-textarea{min-height:96px;padding-block:var(--space-3);resize:vertical}.ui-card{padding:var(--space-5);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.ui-badge{border-radius:var(--radius-sm)}.ui-badge--info{color:var(--color-info);background:var(--color-info-soft)}.ds-preview{width:min(1040px,100%);min-height:100vh;color:var(--color-text-primary);margin:0 auto;padding:48px 24px 72px}.ds-preview h1{font-size:var(--font-size-2xl);margin:8px 0}.ds-preview h2{margin:0 0 var(--space-4);font-size:var(--font-size-lg)}.ds-preview>header>p{color:var(--color-text-secondary);margin:0}.ds-preview>section{padding:var(--space-5) 0;border-bottom:1px solid var(--color-border-default)}.ds-row{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.ds-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ds-fields{gap:var(--space-3);display:grid}.ds-icon-note{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:flex}@media (max-width:680px){.ds-preview{padding:32px 16px}.ds-grid{grid-template-columns:1fr}}.ui-alert,.ui-toast{align-items:center;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-bg-subtle);font-size:var(--font-size-sm);display:flex}.ui-alert--success,.ui-toast--success{color:var(--color-success);background:var(--color-success-soft)}.ui-alert--warning,.ui-toast--warning{color:var(--color-warning);background:var(--color-warning-soft)}.ui-alert--danger,.ui-toast--danger{color:var(--color-danger);background:var(--color-danger-soft)}.ui-alert--info,.ui-toast--info{color:var(--color-info);background:var(--color-info-soft)}.ui-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-bg-subtle), var(--color-border-default), var(--color-bg-subtle));background-size:200% 100%;min-height:1em;animation:1.2s infinite ui-shimmer;display:block}.ui-empty-state{justify-items:center;gap:var(--space-2);padding:var(--space-8);color:var(--color-text-secondary);text-align:center;display:grid}.ui-empty-state h2,.ui-empty-state p{margin:0}.ui-empty-state h2{color:var(--color-text-primary);font-size:var(--font-size-lg)}.ui-empty-state p{font-size:var(--font-size-sm)}.ui-choice,.ui-switch{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--font-size-sm);display:inline-flex}.ui-choice input{width:16px;height:16px;accent-color:var(--color-primary)}.ui-switch input{opacity:0;position:absolute}.ui-switch__track{border-radius:var(--radius-full);background:var(--color-border-strong);width:36px;height:20px;transition:background var(--motion-fast) var(--motion-ease);position:relative}.ui-switch__track:after{top:2px;content:"";border-radius:var(--radius-full);background:var(--color-bg-surface);width:16px;height:16px;transition:transform var(--motion-fast) var(--motion-ease);position:absolute;inset-inline-start:2px}.ui-switch input:checked+.ui-switch__track{background:var(--color-primary)}.ui-switch input:checked+.ui-switch__track:after{transform:translate(-16px)}.ui-tabs__list{gap:var(--space-1);border-bottom:1px solid var(--color-border-default);display:flex}.ui-tabs__list button{padding:var(--space-3);color:var(--color-text-secondary);background:0 0;border:0;border-bottom:2px solid #0000}.ui-tabs__list button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.ui-tabs__panel{padding-block:var(--space-4)}.ui-divider{border:0;border-top:1px solid var(--color-border-default)}.ui-pagination{justify-content:center;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:flex}.ui-pagination button{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-surface)}.ui-modal-layer{z-index:var(--z-modal);padding:var(--space-4);background:var(--overlay);place-items:center;display:grid;position:fixed;inset:0}.ui-modal{border-radius:var(--radius-xl);background:var(--color-bg-surface);width:min(100%,560px);max-height:min(90dvh,760px);box-shadow:var(--shadow-overlay);outline:none;overflow:auto}.ui-modal>header,.ui-modal>footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-default);display:flex}.ui-modal>footer{border-top:1px solid var(--color-border-default);border-bottom:0}.ui-modal h2{font-size:var(--font-size-lg);margin:0}.ui-modal header button{padding:var(--space-1);color:var(--color-text-secondary);background:0 0;border:0;place-items:center;display:grid}.ui-modal__body{padding:var(--space-5)}.ui-popover{display:inline-block;position:relative}.ui-popover__content{z-index:var(--z-popover);min-width:180px;padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);box-shadow:var(--shadow-md);position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-start:0}.ui-tooltip{display:inline-flex;position:relative}.ui-tooltip>[role=tooltip]{z-index:var(--z-popover);visibility:hidden;opacity:0;color:#fff;border-radius:var(--radius-sm);background:var(--color-ink-strong);width:max-content;max-width:200px;font-size:var(--font-size-xs);padding:6px 8px;position:absolute;inset-block-end:calc(100% + 6px);inset-inline-start:50%;transform:translate(50%)}.ui-tooltip:hover>[role=tooltip],.ui-tooltip:focus>[role=tooltip]{visibility:visible;opacity:1}.ui-avatar{width:36px;height:36px;color:var(--color-primary);border-radius:var(--radius-full);background:var(--color-primary-soft);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex:none;place-items:center;display:inline-grid}.ui-avatar--sm{width:28px;height:28px;font-size:var(--font-size-xs)}.ui-avatar--lg{width:48px;height:48px;font-size:var(--font-size-lg)}.ui-search{display:block;position:relative}.ui-search svg{color:var(--color-text-muted);position:absolute;inset-block-start:50%;inset-inline-start:var(--space-3);transform:translateY(-50%)}.ui-search input{width:100%;min-height:var(--control-height-md);padding-inline:38px var(--space-3);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);outline:0}.ui-search input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.ui-dropdown{display:inline-block;position:relative}.ui-dropdown__trigger{color:inherit;background:0 0;border:0;padding:0}.ui-dropdown__menu{z-index:var(--z-popover);min-width:180px;padding:var(--space-2);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface);box-shadow:var(--shadow-md);position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-start:0}.product-card{gap:var(--space-3);display:grid}.product-card header,.product-person{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.product-card h3,.product-card p{margin:0}.product-card h3{font-size:var(--font-size-md)}.product-card p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:4px}.product-card__metric,.product-metrics{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:inline-flex}.product-progress{gap:var(--space-2);display:grid}.product-progress>div{color:var(--color-text-secondary);font-size:var(--font-size-sm);justify-content:space-between;display:flex}.product-progress progress{width:100%;height:8px;accent-color:var(--color-primary)}.product-selector{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:grid}.product-selector select{min-height:var(--control-height-md);padding-inline:var(--space-3);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-surface)}.product-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.product-notification{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle);display:flex}.product-notification strong,.product-notification p{margin:0}.product-notification p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:4px}@keyframes ui-shimmer{to{background-position:-200% 0}}@keyframes ui-spin{to{transform:rotate(360deg)}}.admin-shell{background:var(--color-canvas);min-height:100vh;padding:42px 24px 64px;overflow:auto}.admin-page{width:min(1120px,100%);margin:0 auto}.admin-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;display:flex}.admin-heading h1{color:var(--color-ink-strong);margin:8px 0 5px;font-size:28px}.admin-heading p{color:var(--color-muted);margin:0;font-size:13px}.admin-heading-actions{align-items:center;gap:10px;display:flex}.admin-account{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);gap:3px;min-width:130px;padding:12px 15px;display:grid}.admin-account strong{color:var(--color-ink-strong);font-size:12px}.admin-account small{color:var(--color-muted);font-size:10px}.school-tree{margin-bottom:18px}.tree-root{border-right:2px solid var(--color-primary);background:var(--color-primary-soft);gap:12px;padding:16px;display:grid}.tree-root>strong{color:var(--color-primary);font-size:15px}.tree-admin{color:#fff;background:var(--color-primary);border-radius:6px;width:fit-content;padding:6px 9px;font-size:11px}.tree-branch{border-right:1px solid var(--color-border-strong);gap:10px;margin-right:18px;padding:12px 14px;display:grid}.tree-branch>strong{color:var(--color-ink-strong);font-size:12px}.tree-teacher{border:1px solid var(--color-line);background:var(--color-surface);border-radius:7px;gap:8px;padding:10px 12px;display:grid}.tree-teacher>b{color:var(--color-ink-soft);font-size:12px}.tree-class{border-right:2px solid var(--color-primary);background:var(--color-bg-subtle);gap:7px;margin-right:12px;padding:9px 12px;display:grid}.tree-class strong{color:var(--color-ink-soft);font-size:11px}.tree-class small{color:var(--color-muted);font-weight:400}.tree-students{flex-wrap:wrap;gap:6px;display:flex}.tree-students span,.tree-orphan{color:var(--color-ink-soft);background:var(--color-primary-soft);border-radius:4px;padding:4px 7px;font-size:10px}.tree-root em{color:var(--color-faint);font-size:10px;font-style:normal}.admin-message{min-height:20px;color:var(--color-danger);margin:0 0 8px;font-size:11px}.admin-message.success{color:var(--color-success)}.admin-forms{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-form{gap:10px;display:grid}.admin-form h2{color:var(--color-ink-strong);margin-bottom:4px}.admin-form input,.admin-form select{width:100%;min-height:40px;color:var(--color-ink);border:1px solid var(--color-line);background:var(--color-bg-subtle);border-radius:6px;outline:0;padding:0 11px;font-size:11px}.admin-form input:focus,.admin-form select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.admin-form button{justify-self:start}@media (max-width:680px){.admin-shell{padding:24px 16px 42px}.admin-heading{flex-direction:column;align-items:flex-start}.admin-heading h1{font-size:22px}.admin-forms{grid-template-columns:1fr}.tree-branch{margin-right:6px}.tree-class{margin-right:4px}}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}@keyframes parity-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes parity-fade-scale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes parity-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.notification-popover,.add-new-popover,.assignment-modal,.qa-modal,.confirm-modal{animation:parity-fade-scale var(--motion-base) var(--motion-ease) both;transform-origin:100% 0}.notification-item,.qa-question,.managed-assignment,.review-assignment-card{animation:parity-fade-up var(--motion-fast) var(--motion-ease) both}.sidebar-scrim,.notification-scrim,.modal-scrim{transition:opacity var(--motion-base) var(--motion-ease)}.app-nav a,.primary-button,.secondary-button,.choice-button,.choice-chip,.toggle-choice button,.grading-grid button,.delay-actions button,.row-actions button,.managed-actions button{transition:color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease)}.app-nav a:active,.primary-button:active,.secondary-button:active,.choice-button:active,.choice-chip:active{transform:translateY(1px)}.qa-reply-box{animation:parity-fade-up var(--motion-fast) var(--motion-ease) both}@media (max-width:767px){.app-shell{display:block}.app-sidebar{z-index:var(--z-shell);width:min(82vw,320px);height:100dvh;transition:transform var(--motion-slow) var(--motion-ease);position:fixed;inset:0 0 0 auto;transform:translate(100%)}.app-sidebar.open{transform:translate(0)}.app-sidebar .app-nav,.app-sidebar .sidebar-bottom{display:block}.app-sidebar .app-nav{display:grid}.sidebar-scrim{z-index:calc(var(--z-shell) - 1);visibility:hidden;opacity:0;background:var(--overlay);pointer-events:none;display:block;position:fixed;inset:0}.sidebar-scrim.open{visibility:visible;opacity:1;pointer-events:auto}.app-main{width:100%;min-height:100dvh}.app-topbar{z-index:var(--z-topbar);height:64px;padding:0 16px;position:relative;inset:auto}.mobile-menu-button{display:grid}.topbar-tools{display:flex}.notification-popover{transform-origin:100% 100%;width:min(92vw,420px);max-height:min(72dvh,640px);inset:auto 0 calc(100% + 8px) auto}.notification-popover,.assignment-modal,.qa-modal{animation-name:parity-slide-up}.notification-scrim{visibility:hidden;opacity:0;pointer-events:none;display:block}.notification-scrim.open{visibility:visible;opacity:1;pointer-events:auto}.modal-layer{align-items:end;padding:0}.assignment-modal,.qa-modal{transform-origin:bottom;border-radius:24px 24px 0 0;max-height:95dvh;animation-name:parity-fade-up}.delay-table{overflow:visible}.delay-table>header{display:none}.delay-table>article{grid-template-columns:auto 1fr;gap:10px 12px;min-width:0;padding:16px;display:grid}.delay-table>article>span:nth-child(3),.delay-table>article>strong,.delay-table>article>.delay-pill,.delay-table>article>.delay-actions{grid-column:2}.delay-actions{flex-wrap:wrap}.delay-bulk-bar{min-width:0;padding:12px 16px;position:sticky}}@media (min-width:768px){.app-sidebar{flex-basis:256px;width:256px}}@media (min-width:768px) and (max-width:1023px){.feedback-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.workspace-shell .app-main,.workspace-shell .workspace-content{width:100%}.workspace-content{max-width:none;padding:0}.modal-layer,.notification-popover,.qa-modal,.assignment-modal{overscroll-behavior:contain}.workspace-page{background:var(--color-canvas);min-height:100vh}.workspace-page-header{border-bottom:1px solid var(--color-line);background:var(--color-surface);grid-template-columns:1fr minmax(300px,1.5fr) 1fr;align-items:center;gap:24px;min-height:80px;padding:16px 32px;display:grid}.workspace-title{text-align:center}.workspace-title h1{color:var(--color-ink-strong);font-size:var(--font-size-lg);margin:2px 0}.workspace-title p,.workspace-title>span{color:var(--color-muted);font-size:var(--font-size-xs);margin:0}.workspace-title>span{display:block}.workspace-back{width:fit-content;color:var(--color-secondary);border:1px solid var(--color-line);border-radius:var(--radius-md);font-size:var(--font-size-sm);padding:10px 14px}.workspace-back:hover{color:var(--color-primary);background:var(--color-primary-soft);border-color:#c7d2fe}.workspace-navigation{justify-content:flex-end;gap:8px;display:flex}.workspace-nav-button{width:44px;height:44px;color:var(--color-secondary);border:1px solid var(--color-line);background:var(--color-surface);border-radius:50%;place-items:center;display:grid}.workspace-nav-button:hover{color:var(--color-primary);background:var(--color-primary-soft);border-color:#c7d2fe}.workspace-nav-button.disabled{pointer-events:none;opacity:.45}.workspace-grid{grid-template-columns:minmax(0,7fr) minmax(320px,5fr);gap:32px;max-width:1200px;margin:0 auto;padding:32px}.workspace-grid .workspace-viewer{min-height:calc(100vh - 144px)}.file-preview-video{color:#9333ea;background:#faf5ff}.file-preview-audio{color:#2563eb;background:var(--color-info-soft)}.file-preview-image{color:var(--color-danger);background:var(--color-danger-soft)}.file-preview-text{color:var(--color-success);background:var(--color-success-soft)}@media (max-width:1023px){.workspace-grid{grid-template-columns:1fr;max-width:760px}.workspace-grid .workspace-viewer{min-height:440px}}@media (max-width:639px){.workspace-page-header{grid-template-columns:auto 1fr auto;gap:10px;padding:12px 16px}.workspace-back{width:40px;height:40px;padding:0;font-size:0;overflow:hidden}.workspace-back:after{content:"←";place-items:center;width:100%;height:100%;font-size:16px;display:grid}.workspace-title h1{font-size:var(--font-size-md)}.workspace-title p,.workspace-title>span{font-size:10px}.workspace-navigation{gap:4px}.workspace-nav-button{width:40px;height:40px}.workspace-grid{flex-direction:column;gap:16px;padding:16px;display:flex}.workspace-grid .feedback-form{order:2}.notification-popover{border-radius:24px 24px 0 0;width:100%;max-height:60dvh;bottom:0;left:0;right:0}}.answer-options label:has(input[type=text]){grid-template-columns:auto minmax(0,1fr);display:grid}.answer-options label>input:not([type=radio]),.answer-options label input[type=text],.answer-options label input:not([type]){border:1px solid var(--color-line);border-radius:var(--radius-sm);min-width:0;font-size:var(--font-size-xs);padding:6px 8px}.question-answer-field,.question-upload{color:var(--color-secondary);font-size:var(--font-size-xs);gap:8px;display:grid}.question-answer-field input,.question-answer-input,.question-upload input{min-height:var(--control-height-md);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-canvas);padding:0 10px}.question-upload input{height:auto;padding:10px}.question-type-hint{color:var(--color-muted);border-radius:var(--radius-sm);background:var(--color-canvas);font-size:var(--font-size-xs);margin:0;padding:12px}.matching-options{gap:8px;display:grid}.matching-options>div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.matching-options input{min-height:var(--control-height-sm);border:1px solid var(--color-line);border-radius:var(--radius-sm);padding:0 8px}.delay-bulk-bar>div{flex-wrap:wrap;gap:8px;display:flex}.delay-bulk-bar>div button+button{color:var(--color-secondary);border:1px solid var(--color-line);background:var(--color-surface)}.row-actions a{color:#94a3b8;border-radius:6px;place-items:center;padding:6px;display:grid}.row-actions a:hover{color:var(--color-primary);background:#eef2ff}.row-actions button:disabled{cursor:default;opacity:.45}.student-exam-list{gap:16px;display:grid}.student-exam-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:20px;display:grid}.student-exam-card>div:first-child,.student-exam-meta span{align-items:center;gap:10px;display:flex}.student-exam-card .empty-icon{flex:none}.student-exam-card h2{color:var(--color-ink-strong);font-size:var(--font-size-lg);margin:0 0 4px}.student-exam-card p,.student-exam-meta{color:var(--color-muted);font-size:var(--font-size-xs);margin:0}.student-exam-meta{gap:8px;display:grid}@media (max-width:767px){.student-exam-card{grid-template-columns:1fr;gap:14px}.student-exam-card .primary-button{width:100%}}html,body{width:100%;height:auto;min-height:100%;overflow:hidden auto}.app-shell{height:100dvh;min-height:100dvh}.app-main{height:100dvh}.landing-page,.auth-page{min-height:100dvh}.landing-nav-actions{align-items:center;gap:16px;display:flex}.theme-toggle{width:40px;height:40px;color:var(--color-secondary);border:1px solid var(--color-line);background:var(--color-surface);border-radius:50%;flex:none;place-items:center;display:grid}.theme-toggle:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}.theme-icon-dark,html.dark .theme-icon-light{display:none}html.dark .theme-icon-dark{display:block}.auth-card{position:relative}.auth-card-tools{position:absolute;top:16px;left:16px}.topbar-tools .theme-toggle{width:38px;height:38px}html.dark body{color:var(--color-ink);background:var(--color-canvas)}html.dark .app-main,html.dark .landing-page,html.dark .auth-page,html.dark .workspace-page,html.dark .response-canvas,html.dark .visual-content{background:var(--color-canvas)}html.dark .app-sidebar{color:#cbd5e1;border-color:var(--color-line);background:#111827}html.dark .sidebar-brand-row,html.dark .app-topbar{border-color:var(--color-line);background:#111827}html.dark .app-sidebar .app-brand strong,html.dark .landing-nav .app-brand strong,html.dark .auth-brand strong,html.dark .page-heading h1,html.dark .stat-card strong,html.dark .panel-heading h2,html.dark .assignment-body h3,html.dark .dashboard-person strong,html.dark .managed-copy h3,html.dark .review-assignment-main h2,html.dark .student-exam-card h2,html.dark .workspace-title h1,html.dark .workspace-header h2,html.dark .modal-header h2,html.dark .qa-modal h2,html.dark .question-card>header strong,html.dark .exam-title,html.dark .auth-card h1,html.dark .landing-copy h1,html.dark .landing-roles h2{color:var(--color-ink-strong)}html.dark .app-sidebar .app-nav a.active{color:#c7d2fe;background:#312e81}html.dark .class-selector,html.dark .breadcrumbs,html.dark .topbar-tools,html.dark .panel-heading>a,html.dark .muted-label,html.dark .workspace-title p,html.dark .workspace-title>span,html.dark .workspace-back,html.dark .workspace-nav-button,html.dark .landing-nav-note,html.dark .landing-copy p,html.dark .landing-roles p,html.dark .landing-footer,html.dark .auth-subtitle,html.dark .demo-hint{color:var(--color-muted)}html.dark .class-selector select,html.dark .filter-group select,html.dark .search-field input,html.dark .feedback-form select,html.dark .modal-property-grid select,html.dark .custom-deadline,html.dark .exam-meta-grid input,html.dark .exam-meta-grid select,html.dark .admin-heading h1,html.dark .admin-form h2{color:var(--color-ink-strong)}html.dark .admin-form input,html.dark .admin-form select{color:var(--color-ink);border-color:var(--color-line);background:var(--color-bg-subtle)}html.dark .form-card input,html.dark .form-card textarea,html.dark .form-card select,html.dark .feedback-form input,html.dark .feedback-form textarea,html.dark .login-form input,html.dark .question-answer-field input,html.dark .question-answer-input,html.dark .question-upload input,html.dark .matching-options input,html.dark .answer-options label>input:not([type=radio]){color:var(--color-ink);border-color:var(--color-line);background:#0f172a}html.dark .class-selector select option,html.dark select option{color:var(--color-ink);background:#172033}html.dark .panel,html.dark .form-card,html.dark .feedback-card,html.dark .empty-panel,html.dark .stat-card,html.dark .assignment-card,html.dark .feedback-form,html.dark .managed-assignment,html.dark .review-assignment-card,html.dark .student-exam-card,html.dark .exam-metadata,html.dark .question-card,html.dark .workspace-page-header,html.dark .workspace-nav-button,html.dark .response-file,html.dark .assignment-modal,html.dark .confirm-modal,html.dark .notification-popover,html.dark .add-new-popover,html.dark .qa-modal,html.dark .qa-question{border-color:var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card)}html.dark .panel-heading,html.dark .modal-header,html.dark .qa-modal>header,html.dark .delay-table>header,html.dark .notification-item.unread,html.dark .question-card>header span{border-color:var(--color-line);background:#1e293b}html.dark .app-sidebar .app-brand small,html.dark .profile-chip small,html.dark .notification-item small,html.dark .notification-popover header span,html.dark .notification-empty,html.dark .review-assignment-meta,html.dark .assignment-metrics small,html.dark .student-exam-meta,html.dark .response-file small,html.dark .response-note,html.dark .question-card>header>div,html.dark .question-card>header span{color:var(--color-muted)}html.dark .back-link,html.dark .profile-chip,html.dark .notification-trigger,html.dark .plain-icon-button,html.dark .viewer-actions button,html.dark .viewer-footer button,html.dark .delay-actions button,html.dark .managed-actions button,html.dark .row-actions a,html.dark .row-actions button,html.dark .secondary-button,html.dark .workspace-back{color:var(--color-secondary);border-color:var(--color-line);background:0 0}html.dark .secondary-button:hover,html.dark .workspace-back:hover,html.dark .viewer-actions button:hover,html.dark .viewer-footer button:hover,html.dark .delay-actions button:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}html.dark .visual-window{border-color:var(--color-line);background:#172033}html.dark .visual-stats b,html.dark .landing-roles>div{border-color:var(--color-line);background:var(--color-surface)}html.dark .visual-line{background:#475569}html.dark .visual-list span{background:#334155}html.dark .auth-card{border-color:var(--color-line);background:var(--color-surface)}html.dark .auth-aside{background:#020617}html.dark .auth-aside p{color:var(--color-muted)}html.dark .status-badge,html.dark .deadline,html.dark .response-note,html.dark .question-type-hint,html.dark .delay-filters,html.dark .delay-table,html.dark .question-type-bar{color:var(--color-secondary);border-color:var(--color-line);background:#1e293b}html.dark .status-badge.success,html.dark .decision-option.active,html.dark .delay-actions button.reminded{color:var(--color-success);background:var(--color-success-soft);border-color:#166534}html.dark .status-badge.warning,html.dark .delay-pill{color:var(--color-warning);background:var(--color-warning-soft)}html.dark .status-badge.danger{color:var(--color-danger);background:var(--color-danger-soft)}html.dark .revision-fields{background:var(--color-danger-soft);border-color:#9f1239}.stat-card.success,.stat-card.warning{border-color:var(--color-line)}.stat-card.success strong,.stat-card.warning strong{color:var(--color-ink-strong)}.stat-card-top i{width:auto;height:auto;color:var(--color-primary);background:0 0;border-radius:0;padding:0}.teacher-heading-tools{align-items:center;gap:12px;display:flex}.teacher-heading-tools .notification-trigger,.teacher-heading-tools .theme-toggle{color:#64748b;width:40px;height:40px;box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0;border-radius:50%}.heading-online-dot{background:#22c55e;border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 1px #e2e8f0}.add-new-popover{width:min(100%,190px);min-width:180px;padding:0;left:0;overflow:hidden}.add-new-item{color:#475569;text-align:right;background:0 0;border:0;border-bottom:1px solid #f1f5f9;align-items:center;gap:9px;width:100%;padding:12px 16px;font-size:12px;font-weight:500;transition:all .16s;display:flex}.add-new-item:last-child{border-bottom:0}.add-new-item:hover{color:var(--color-primary);background:#f8fafc}.add-new-trigger .chevron-open{transform:rotate(180deg)}.add-new-trigger svg:last-child{transition:transform var(--motion-base) var(--motion-ease)}.panel-heading .panel-link{color:var(--color-primary);font-size:11px;font-weight:600}.teacher-assignment-row,.dashboard-card-row{transition:background-color .16s}.teacher-assignment-row:hover,.dashboard-card-row:hover{background:#f8fafccc}.dashboard-avatar{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex:none;place-items:center;width:36px;height:36px;font-size:10px;font-weight:600;display:grid}.deadline{border:1px solid #e2e8f0}.deadline.warning{border-color:#fef3c7}.deadline.danger{border-color:#ffe4e6}.dashboard-row-actions{gap:8px;display:flex}.delay-action-btn{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:6px 12px;font-size:10px;font-weight:600;transition:all .16s;display:inline-flex}.delay-action-btn:hover:not(:disabled){color:#334155;background:#f8fafc;border-color:#cbd5e1}.delay-action-btn.loading{color:var(--color-primary);background:#eef2ff;border-color:#c7d2fe}.delay-action-btn.success{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.delay-action-btn .spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:680px){.teacher-heading-tools{flex-wrap:wrap;justify-content:flex-end;gap:8px}.teacher-heading-tools .add-new-trigger{width:auto;min-height:40px;font-size:12px}.teacher-dashboard-heading>div:first-child{margin-left:0}}@media (prefers-reduced-motion:reduce){.delay-action-btn .spin{animation:none}}.teacher-app-nav{overflow-y:auto}.sidebar-class-wrap{margin-bottom:12px;position:relative}.sidebar-class-select{color:#334155;appearance:none;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;outline:0;width:100%;min-height:42px;padding:0 34px 0 12px;font-size:12px;font-weight:700}.nav-submenu{gap:4px;display:grid}.nav-submenu>a{position:relative}.nav-submenu>a.active-parent{color:var(--color-primary);background:#eef2ff;font-weight:600}.nav-sub-link{position:relative;min-height:38px!important;padding-left:14px!important;padding-right:40px!important;font-size:11px!important}.nav-active-dot{opacity:0;background:#cbd5e1;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.nav-active-dot.visible,.nav-sub-link.active .nav-active-dot{opacity:1;background:var(--color-primary)}.sidebar-role-switchers{border-bottom:1px solid #e2e8f0;gap:8px;margin-bottom:14px;padding-bottom:14px;display:grid}.role-switch-link{color:#64748b;background:#f1f5f9;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 12px;font-size:11px;font-weight:500;transition:all .16s;display:flex}.role-switch-link:hover{color:#1e293b;background:#e2e8f0}.add-new-desktop{display:inline-flex}.teacher-mobile-fab{display:none}.teacher-fab-trigger{color:#fff;background:var(--color-primary);border:0;border-radius:50%;place-items:center;width:56px;height:56px;transition:transform .16s;display:grid;box-shadow:0 8px 20px #4f46e566}.teacher-fab-trigger:active{transform:scale(.95)}.teacher-fab-menu{width:192px;box-shadow:var(--shadow-modal);transform-origin:100% 100%;animation:parity-fade-scale var(--motion-base) var(--motion-ease) both;background:#fff;border:1px solid #e2e8f0;border-radius:12px;position:absolute;bottom:calc(100% + 12px);right:0;overflow:hidden}.teacher-fab-item{color:#475569;text-align:right;background:0 0;border:0;border-bottom:1px solid #f1f5f9;width:100%;padding:14px 16px;font-size:12px;font-weight:500;transition:all .16s;display:block}.teacher-fab-item:last-child{border-bottom:0}.teacher-fab-item:hover{color:var(--color-primary);background:#f8fafc}.fab-icon-open{transition:transform var(--motion-base) var(--motion-ease);transform:rotate(45deg)}@media (max-width:680px){.add-new-desktop{display:none}.teacher-mobile-fab{z-index:45;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));display:block;position:fixed}.dashboard-page{padding-bottom:88px}}html.dark .sidebar-class-select{color:var(--color-ink);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .role-switch-link{color:var(--color-muted);background:var(--color-secondary-soft)}html.dark .role-switch-link:hover{color:var(--color-ink-strong);background:var(--color-line)}html.dark .teacher-fab-menu{border-color:var(--color-line);background:var(--color-surface)}html.dark .teacher-fab-item{color:var(--color-ink-soft);border-bottom-color:var(--color-line)}.dashboard-page .stat-card{gap:10px;padding:24px}.dashboard-page .stat-card-top,.dashboard-page .stat-card-bottom{gap:14px}.dashboard-page .stat-card-top>span{line-height:1.5}.dashboard-page .stat-card-bottom em{padding:5px 10px;font-size:10px;line-height:1.4}.dashboard-page .stat-card strong{line-height:1.15}.dashboard-page .panel-heading{padding:18px 24px}.dashboard-page .panel-heading h2{margin:0;line-height:1.45}.dashboard-page .panel-heading .panel-link{padding-inline:4px;line-height:1.45}.dashboard-page .empty-copy{margin:0;padding:20px 24px 24px;line-height:1.65}@media (min-width:681px){.dashboard-page .stats-grid .stat-card{justify-content:space-between}}html.dark .page-heading p,html.dark .stat-card>span{color:var(--color-muted)}html.dark .stat-card-bottom em{color:var(--color-success);background:var(--color-success-soft);border:1px solid #166534}html.dark .stat-card.warning .stat-card-bottom em{color:var(--color-warning);background:var(--color-warning-soft);border-color:#713f12}html.dark .teacher-heading-tools .notification-trigger,html.dark .teacher-heading-tools .theme-toggle{color:var(--color-muted);border-color:var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card)}html.dark .teacher-heading-tools .notification-trigger:hover,html.dark .teacher-heading-tools .theme-toggle:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}html.dark .heading-online-dot{border-color:var(--color-canvas);box-shadow:0 0 0 1px var(--color-line)}html.dark .teacher-assignment-copy h3{color:var(--color-ink-strong)}html.dark .teacher-assignment-copy>div{color:var(--color-muted)}html.dark .teacher-type-icon{color:var(--color-muted);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .teacher-assignment-row,html.dark .dashboard-card-row{border-bottom-color:var(--color-line)}html.dark .teacher-assignment-row:hover,html.dark .dashboard-card-row:hover{background:#1e293b80}html.dark .dashboard-avatar{color:var(--color-secondary);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .dashboard-person small,html.dark .dashboard-row-foot{color:var(--color-muted)}html.dark .panel-heading .panel-link{color:var(--color-primary)}html.dark .empty-copy{color:var(--color-muted)}html.dark .deadline{color:var(--color-secondary);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .deadline.warning{color:var(--color-warning);background:var(--color-warning-soft);border-color:#713f12}html.dark .deadline.danger{color:var(--color-danger);background:var(--color-danger-soft);border-color:#9f1239}html.dark .delay-action-btn{color:var(--color-secondary);border-color:var(--color-line);background:var(--color-surface)}html.dark .delay-action-btn:hover:not(:disabled){color:var(--color-ink);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .delay-action-btn.loading{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}html.dark .delay-action-btn.success{color:var(--color-success);background:var(--color-success-soft);border-color:#166534}.app-sidebar{width:var(--sidebar-width);flex-basis:var(--sidebar-width)}.sidebar-brand-row{min-height:64px;padding-inline:20px}.teacher-app-nav{gap:4px;padding:20px 16px}.sidebar-class-wrap{margin-bottom:8px}.sidebar-class-select{min-height:var(--shell-control-height);padding-inline:12px 34px;line-height:1.4}.app-sidebar .app-nav a{min-height:var(--shell-control-height);gap:10px;padding-inline:12px;line-height:1.4}.nav-submenu{gap:2px}.nav-sub-link{min-height:36px!important;padding-right:36px!important}.sidebar-bottom{padding:0 16px 16px}.back-link{min-height:var(--shell-control-height);place-items:center;margin-bottom:16px;padding:8px 12px;line-height:1.4;display:grid}.profile-chip{min-height:40px;padding-top:12px}.app-topbar{height:64px;top:32px;left:32px}.topbar-start,.topbar-tools{gap:8px}.topbar-tools .notification-trigger,.topbar-tools .theme-toggle{width:var(--shell-control-height);height:var(--shell-control-height)}.app-content{padding:32px}.teacher-dashboard-heading{min-height:var(--shell-action-height);align-items:center;gap:24px;margin-bottom:28px}.teacher-dashboard-heading>div:first-child{flex:1;min-width:0;margin-left:0}.teacher-dashboard-heading h1{max-width:100%;margin:0 0 6px;font-size:24px;line-height:1.45}.teacher-dashboard-heading p{font-size:12px;line-height:1.6}.teacher-heading-tools{flex:none;gap:8px}.teacher-heading-tools .notification-trigger,.teacher-heading-tools .theme-toggle{width:var(--shell-control-height);height:var(--shell-control-height)}.teacher-heading-tools .add-new-trigger{width:120px;min-width:120px;min-height:var(--shell-action-height);padding-inline:12px;font-size:12px}.heading-online-dot{width:8px;height:8px}.dashboard-page .stat-card{min-height:152px;padding:20px}.dashboard-page .dashboard-stack,.dashboard-page .dashboard-bottom-grid{gap:20px}html.dark .app-sidebar .app-nav a{color:var(--color-ink-soft)}html.dark .app-sidebar .app-nav a:hover{color:var(--color-ink-strong);background:var(--color-secondary-soft)}html.dark .app-sidebar .app-nav a.active,html.dark .nav-submenu>a.active-parent{color:var(--color-primary);background:var(--color-primary-soft)}html.dark .app-sidebar .app-nav a svg,html.dark .app-sidebar .app-nav a.active svg{color:var(--color-primary)}html.dark .app-main,html.dark .app-topbar{background:var(--color-canvas)}html.dark .profile-chip,html.dark .back-link{color:var(--color-ink-soft);border-color:var(--color-line)}html.dark .profile-chip>span{color:var(--color-primary);background:var(--color-primary-soft)}html.dark .mobile-menu-button{color:var(--color-secondary);border-color:var(--color-line);background:var(--color-surface)}@media (max-width:900px){.app-sidebar{flex-basis:240px;width:240px}.app-content{padding:28px 24px 40px}}@media (max-width:680px){.app-sidebar{flex-basis:auto;width:min(82vw,320px)}.app-topbar{height:40px;top:16px;left:16px}.app-content{padding:24px 16px 40px}.teacher-dashboard-heading{align-items:stretch;gap:16px;min-height:0}.teacher-heading-tools{justify-content:flex-start}.teacher-heading-tools .add-new-trigger{min-height:40px}.dashboard-page .stat-card{min-height:120px;padding:16px}}.app-sidebar{width:var(--sidebar-width);flex-direction:column;flex:0 0 var(--sidebar-width);min-height:0;color:var(--color-ink-soft);border-left:1px solid var(--color-line);background:var(--color-surface);display:flex}.sidebar-brand-row{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;min-height:64px;padding:0 16px;display:flex}.app-sidebar .app-brand{align-items:center;gap:10px;min-width:0;display:flex}.app-sidebar .brand-mark{color:#fff;background:var(--color-primary);border-radius:8px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.app-sidebar .app-brand strong{color:var(--color-ink-strong);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.app-nav{flex-direction:column;flex:1;gap:0;min-height:0;padding:12px 12px 8px;display:flex;overflow:auto}.sidebar-class-wrap{gap:6px;margin:0 0 12px;display:grid}.sidebar-class-label{color:var(--color-faint);padding-inline:4px;font-size:11px;font-weight:600}.sidebar-class-control{display:block;position:relative}.sidebar-class-select{width:100%;min-height:40px;color:var(--color-ink);border:1px solid var(--color-line);background:var(--color-canvas);appearance:none;border-radius:8px;outline:0;padding:0 12px 0 32px;font-size:13px;font-weight:600;line-height:1.4}.sidebar-class-select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.sidebar-class-chevron{color:var(--color-faint);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.sidebar-nav-list{gap:2px;display:grid}.app-sidebar .app-nav a.nav-item,.app-sidebar .app-nav a.nav-child,.app-sidebar .nav-item,.app-sidebar .nav-child{min-height:40px;color:var(--color-ink-soft);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);background:0 0;border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-size:13px;font-weight:500;line-height:1.4;display:flex;position:relative}.app-sidebar .nav-item svg{color:var(--color-faint);flex:0 0 18px}.app-sidebar .nav-item:hover,.app-sidebar .nav-child:hover{color:var(--color-ink-strong);background:var(--color-canvas)}.app-sidebar .nav-item:hover svg{color:var(--color-secondary)}.app-sidebar .app-nav a.nav-item.active,.app-sidebar .nav-item.active{color:var(--color-primary);background:var(--color-primary-soft);font-weight:600}.app-sidebar .nav-item.active svg{color:var(--color-primary)}.app-sidebar .nav-item.active:before,.app-sidebar .nav-child.active:before{content:"";background:var(--color-primary);border-radius:99px;width:3px;position:absolute;top:8px;bottom:8px;right:0}.nav-group{gap:2px;display:grid}.nav-children{border-right:1px solid var(--color-line);gap:2px;margin-right:21px;padding:2px 0 6px;display:grid}.app-sidebar .nav-child{min-height:36px;color:var(--color-muted);padding-right:16px;font-size:12px;font-weight:500}.app-sidebar button.nav-item{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:right;border:0}.app-sidebar .nav-toggle span{flex:1;min-width:0}.nav-chevron{color:var(--color-faint);transition:transform var(--motion-fast) var(--motion-ease);flex:0 0 16px}.nav-group.open .nav-chevron{transform:rotate(180deg)}.app-sidebar .nav-child{gap:10px}.app-sidebar .nav-child svg{color:var(--color-faint);flex:0 0 16px}.app-sidebar .nav-child.active{color:var(--color-primary);background:var(--color-primary-soft);font-weight:600}.app-sidebar .nav-child.active svg{color:var(--color-primary)}.sidebar-bottom{border-top:1px solid var(--color-line);gap:8px;margin-top:auto;padding:12px;display:grid}.sidebar-home,.app-sidebar .sidebar-home{min-height:40px;color:var(--color-muted);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-size:13px;font-weight:500;display:flex}.sidebar-home:hover{color:var(--color-ink-strong);background:var(--color-canvas)}.sidebar-user{width:100%;min-height:48px;color:var(--color-ink-soft);border:1px solid var(--color-line);background:var(--color-canvas);text-align:right;border-radius:10px;align-items:center;gap:10px;padding:8px;display:flex}.sidebar-user:hover{border-color:var(--color-primary);background:var(--color-primary-soft)}.sidebar-avatar{width:32px;height:32px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:8px;flex:0 0 32px;place-items:center;font-size:13px;font-weight:700;display:grid}.sidebar-user-copy{flex:1;gap:2px;min-width:0;display:grid}.sidebar-user-copy strong,.sidebar-user-copy small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-copy strong{color:var(--color-ink-strong);font-size:12px;font-weight:600}.sidebar-user-copy small{color:var(--color-muted);font-size:11px}.sidebar-user svg{color:var(--color-faint);flex:0 0 15px}html.dark .app-sidebar,html.dark .sidebar-brand-row{color:var(--color-ink-soft);border-color:var(--color-line);background:#111827}html.dark .app-sidebar .app-brand strong{color:var(--color-ink-strong)}html.dark .app-sidebar .app-nav a.nav-item,html.dark .app-sidebar .app-nav a.nav-child,html.dark .app-sidebar .nav-item,html.dark .app-sidebar .nav-child,html.dark .sidebar-home{color:#cbd5e1}html.dark .app-sidebar .nav-item svg,html.dark .sidebar-home svg,html.dark .sidebar-user svg{color:#94a3b8}html.dark .app-sidebar .nav-item:hover,html.dark .app-sidebar .nav-child:hover,html.dark .sidebar-home:hover{color:#f8fafc;background:#1e293b}html.dark .app-sidebar .app-nav a.nav-item.active,html.dark .app-sidebar .app-nav a.nav-child.active,html.dark .app-sidebar .nav-item.active,html.dark .app-sidebar .nav-child.active{color:#c7d2fe;background:#818cf829}html.dark .app-sidebar .nav-item.active svg{color:#a5b4fc}html.dark .nav-children{border-right-color:#334155}html.dark .sidebar-class-select{color:#e2e8f0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0f172a;border-color:#334155}html.dark .sidebar-bottom{border-top-color:#334155}html.dark .sidebar-user{color:#e2e8f0;background:#0f172a;border-color:#334155}html.dark .sidebar-user:hover{border-color:var(--color-primary);background:#818cf81f}html.dark .sidebar-avatar{color:#c7d2fe;background:#818cf829}@media (max-width:900px){.app-sidebar{flex-basis:240px;width:240px}}@media (max-width:680px){.app-sidebar{flex-basis:auto;width:min(82vw,320px)}}html.dark .assignment-toolbar,html.dark .mini-stat,html.dark .review-toolbar,html.dark .review-summary>div,html.dark .empty-panel{color:var(--color-ink);border-color:var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card)}html.dark .mini-stat span,html.dark .filter-group label,html.dark .muted-label{color:var(--color-muted)}html.dark .mini-stat.warning{border-color:#713f12}html.dark .mini-stat.warning strong,html.dark .mini-stat.warning span{color:var(--color-warning)}html.dark .empty-panel h2{color:var(--color-ink-strong)}html.dark .empty-panel p{color:var(--color-muted)}html.dark .topbar-tools .theme-toggle,html.dark .topbar-tools .notification-trigger,html.dark .topbar-tools button{color:var(--color-muted);border-color:var(--color-line);background:var(--color-surface)}html.dark .app-sidebar .nav-child svg{color:#94a3b8}html.dark .app-sidebar .nav-child.active svg,html.dark .app-sidebar .nav-toggle.active svg{color:#a5b4fc}html.dark .nav-chevron{color:#94a3b8}.notification-popover{border:1px solid var(--color-line);background:var(--color-surface);width:min(100vw - 32px,420px);box-shadow:var(--shadow-modal);animation:notif-pop var(--motion-base) var(--motion-ease);transform-origin:0 0;border-radius:12px;top:calc(100% + 8px);left:0;overflow:hidden}@keyframes notif-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.notification-popover header{border-bottom:1px solid var(--color-line);background:var(--color-canvas);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.notification-title-row{align-items:center;gap:8px;display:flex}.notification-popover h2{color:var(--color-ink-strong);margin:0;font-size:15px;font-weight:700}.notification-new-badge{color:#fff;background:var(--color-primary);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.notification-head-actions{align-items:center;gap:8px;display:flex}.mark-all-button{color:var(--color-primary);background:0 0;border:0;padding:0;font-size:11px;font-weight:700}.notification-tabs{border-bottom:1px solid var(--color-line);background:var(--color-surface);scrollbar-width:none;gap:4px;padding:0 12px;display:flex;overflow-x:auto}.notification-tabs::-webkit-scrollbar{display:none}.notification-tabs button{color:var(--color-muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:12px 10px 10px;font-size:11px;font-weight:600;display:inline-flex}.notification-tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.notification-items{background:var(--color-surface);max-height:360px;overflow:auto}.notification-item{border-bottom:1px solid var(--color-line);align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.notification-item:last-child{border-bottom:0}.notification-item.unread{background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.notification-type-icon{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.notification-item.kind-submitted .notification-type-icon{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.notification-item.kind-delayed .notification-type-icon{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.notification-item.kind-messages .notification-type-icon{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}.notification-copy{flex:1;min-width:0}.notification-item-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.notification-item strong{min-width:0;color:var(--color-ink-strong);font-size:13px;font-weight:700;line-height:1.45}.notification-item.unread strong{font-weight:800}.notification-item time,.notification-item small{color:var(--color-faint);white-space:nowrap;flex:none;font-size:10px;font-weight:600}.notification-item p{color:var(--color-muted);margin:0;font-size:12px;font-weight:500;line-height:1.7}.notification-status{flex:0 0 16px;justify-items:center;gap:8px;width:16px;padding-top:4px;display:grid}.unread-mark{background:var(--color-primary);border-radius:50%;width:8px;height:8px}.read-dot{width:8px;height:8px}.star-button{color:var(--color-faint);opacity:0;background:0 0;border:0;place-items:center;margin:0;padding:0;display:grid}.notification-item:hover .star-button,.star-button.active{opacity:1}.star-button.active{color:#eab308}.notification-empty{color:var(--color-faint);text-align:center;justify-items:center;gap:8px;padding:48px 20px;display:grid}.notification-empty p{margin:0;font-size:12px;font-weight:600}.notification-popover footer{border-top:1px solid var(--color-line);background:var(--color-canvas);padding:8px;display:block}.notification-popover footer a{width:100%;color:var(--color-secondary);text-align:center;border-radius:8px;padding:10px;font-size:11px;font-weight:700;display:block}.notification-popover footer a:hover{color:var(--color-ink-strong);background:color-mix(in srgb, var(--color-ink) 6%, transparent)}html.dark .notification-popover,html.dark .notification-tabs,html.dark .notification-items{border-color:var(--color-line);background:var(--color-surface)}html.dark .notification-popover header,html.dark .notification-popover footer{border-color:var(--color-line);background:#0f172a}html.dark .notification-item{border-bottom-color:var(--color-line)}html.dark .notification-item.unread{background:#818cf81f}html.dark .notification-item.kind-general .notification-type-icon{color:#93c5fd;background:#172554;border-color:#1e3a8a}html.dark .notification-item.kind-submitted .notification-type-icon{color:#86efac;background:#052e16;border-color:#166534}html.dark .notification-item.kind-delayed .notification-type-icon{color:#fda4af;background:#4c0519;border-color:#9f1239}html.dark .notification-item.kind-messages .notification-type-icon{color:#c4b5fd;background:#2e1065;border-color:#5b21b6}@media (min-width:681px){.notification-popover{width:420px}}@media (max-width:680px){.notification-popover{border-radius:16px;flex-direction:column;width:auto;max-height:70vh;display:flex;position:fixed;top:16px;left:14px;right:14px}.notification-items{flex:1}}@media (prefers-reduced-motion:reduce){.notification-popover{animation:none}}.teacher-dashboard-heading{min-height:44px;margin-bottom:24px}.teacher-dashboard-heading h1{font-size:24px;font-weight:600;line-height:1.4}.teacher-dashboard-heading p,.teacher-heading-tools,.dashboard-page .panel-link{font-weight:600}.teacher-heading-tools{gap:10px}.teacher-heading-tools .notification-trigger,.teacher-heading-tools .theme-toggle{border-radius:50%;width:38px;height:38px}.teacher-heading-tools .add-new-trigger{white-space:nowrap;border-radius:6px;width:auto;min-width:0;min-height:40px;padding:0 16px;font-size:14px;font-weight:600}.add-new-root{width:max-content}.add-new-popover{width:100%;min-width:0}.add-new-popover>.add-new-item{min-height:48px;padding:10px 14px;font-size:13.5px;font-weight:600;line-height:1}.dashboard-page .stats-grid{gap:16px;margin-bottom:24px}.dashboard-page .stat-card{min-height:128px;box-shadow:none;border-color:#e2e8f0;border-radius:8px;padding:16px}.dashboard-page .stat-card-top{align-items:center}.dashboard-page .stat-card-top>span{font-size:14px;font-weight:600}.dashboard-page .stat-card-bottom{justify-content:space-between;align-items:flex-end;margin-top:auto;display:flex}.dashboard-page .stat-card strong{margin:0;font-size:30px;font-weight:700}.dashboard-page .stat-card-bottom em,.status-badge,.deadline{border-radius:5px;padding:4px 8px;font-weight:600;line-height:1.45}.dashboard-page .stat-card-bottom em{font-size:10px}.dashboard-page .stat-card small{display:none}.dashboard-page .dashboard-stack,.dashboard-page .dashboard-bottom-grid{gap:16px}.dashboard-page .panel{box-shadow:none;border-color:#e2e8f0;border-radius:8px}.dashboard-page .panel-heading{min-height:54px;padding:14px 16px}.dashboard-page .panel-heading h2,.dashboard-page .teacher-assignment-copy h3,.dashboard-page .dashboard-card-row strong{font-weight:600}.dashboard-page .teacher-assignment-row,.dashboard-page .dashboard-card-row{padding:14px 16px}.progress-track{background:#f1f5f9;border-radius:999px;height:6px}.progress-track i{border-radius:inherit}.delay-action-btn,.row-actions a,.row-actions button{border-radius:6px;font-weight:600}html.dark .dashboard-page .stat-card,html.dark .dashboard-page .panel{border-color:#334155}html.dark .progress-track{background:#1e293b}html.dark .add-new-popover{background:#172033;border-color:#334155}html.dark .add-new-popover>.add-new-item{color:#e2e8f0;border-bottom-color:#334155}html.dark .add-new-popover>.add-new-item:hover,html.dark .add-new-popover>.add-new-item:focus-visible{color:#c7d2fe;background:#1e1b4b}.qa-layer .modal-scrim{z-index:0}.qa-layer .qa-modal{z-index:1}html.dark .assignment-modal{background:#172033}html.dark .assignment-modal .modal-header,html.dark .assignment-modal .modal-footer{background:#1e293b;border-color:#334155}html.dark .assignment-modal .modal-body{background:#172033}html.dark .assignment-modal .modal-title-input{color:#f8fafc;background:0 0;border-bottom-color:#334155}html.dark .assignment-modal .modal-title-input::placeholder,html.dark .assignment-modal textarea::placeholder{color:#64748b;opacity:1}html.dark .assignment-modal .modal-body>textarea,html.dark .assignment-modal .modal-property-grid select,html.dark .assignment-modal .custom-deadline{color:#e2e8f0;background:#0f172a;border-color:#334155}html.dark .assignment-modal .modal-property-grid{border-top-color:#334155}html.dark .assignment-modal .modal-property-grid legend,html.dark .assignment-modal .switch-row{color:#94a3b8}html.dark .assignment-modal .choice-button,html.dark .assignment-modal .choice-chip,html.dark .assignment-modal .toggle-choice button,html.dark .assignment-modal .grading-grid button{color:#cbd5e1;background:#0f172a;border-color:#334155}html.dark .assignment-modal .choice-button.active,html.dark .assignment-modal .choice-chip.active,html.dark .assignment-modal .toggle-choice button.active,html.dark .assignment-modal .grading-grid button.active{color:#c7d2fe;background:#312e81;border-color:#818cf8}html.dark .assignment-modal .secondary-button{color:#cbd5e1;background:#1e293b;border-color:#475569}html.dark .assignment-modal .plain-icon-button{color:#cbd5e1}html.dark .assignment-modal .plain-icon-button:hover{color:#fff;background:#334155}html.dark .app-main input:not([type=checkbox]):not([type=radio]):not([type=file]),html.dark .app-main textarea,html.dark .app-main select{color:#e2e8f0;background:#0f172a;border-color:#334155}html.dark .app-main input::placeholder,html.dark .app-main textarea::placeholder{color:#64748b;opacity:1}html.dark .app-main select option{color:#e2e8f0;background:#172033}html.dark .app-main label,html.dark .app-main legend{color:#94a3b8}html.dark .exam-metadata,html.dark .question-card{background:#172033;border-color:#334155;box-shadow:0 2px 8px #0003}html.dark .exam-title{background:0 0}html.dark .exam-metadata-actions,html.dark .question-card>header{border-color:#334155}html.dark .question-card>header span,html.dark .answer-options label{color:#94a3b8;background:#1e293b;border-color:#334155}html.dark .question-card>header button{color:#94a3b8}html.dark .question-card>header button:hover{color:#c7d2fe;background:#1e293b}html.dark .question-type-bar{background:#1e293b;border-color:#334155;box-shadow:0 12px 32px #00000057}html.dark .question-type-bar button{color:#94a3b8}html.dark .question-type-bar button:hover{color:#c7d2fe;background:#312e81}html.dark .exam-toast{color:#86efac;background:#052e16;border-color:#166534}@media (max-width:900px){.assignment-header-side{flex-wrap:wrap}.assignment-toolbar,.filter-group{flex-wrap:wrap;align-items:stretch}.assignment-toolbar-search{justify-content:space-between;width:100%}}@media (max-width:680px){.teacher-heading-tools .add-new-trigger{min-height:38px;padding-inline:12px;font-size:12px}.dashboard-page .stat-card{min-height:116px;padding:14px}.dashboard-page .stat-card-top>span{font-size:12px}}.brand-logo{flex:none;place-items:center;width:34px;height:38px;display:grid}.brand-logo img{object-fit:contain;grid-area:1/1;width:100%;height:100%;display:block}.brand-logo-dark{display:none!important}.app-sidebar .brand-logo{width:30px;height:34px}.app-sidebar .brand-logo-light{display:block!important}.app-sidebar .brand-logo-dark,html.dark .brand-logo-light{display:none!important}html.dark .brand-logo-dark{display:block!important}.app-content{width:min(100%, var(--content-max-width));max-width:var(--content-max-width)}.assignments-page-heading{align-items:center;gap:var(--space-6);margin-bottom:var(--space-10)}.assignments-page-heading h1{color:var(--color-ink);letter-spacing:normal;margin:0 0 4px;font-size:24px;font-weight:700;line-height:34px}.assignments-page-heading p{max-width:560px;color:var(--color-muted);font-size:14px;line-height:22px}.assignment-header-side{align-items:center;gap:var(--space-4);display:flex}.assignment-header-side .teacher-heading-tools{gap:var(--space-2)}.assignment-header-side .add-new-trigger{color:#fff;border-color:var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary);min-height:40px;padding-inline:16px;font-size:12px;font-weight:600}.mini-stat,.mini-stat.warning{min-width:130px;min-height:112px;color:var(--color-ink);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);gap:4px;padding:16px 24px}.mini-stat span{color:var(--color-muted);margin:0;font-size:12px;font-weight:600;line-height:18px}.mini-stat strong{color:var(--color-ink);font-size:24px;font-weight:700;line-height:30px}.mini-stat small{color:var(--color-faint);white-space:nowrap;font-size:10px;font-weight:400;line-height:16px}.mini-stat.warning{border-color:var(--color-line)}.mini-stat.warning span,.mini-stat.warning strong{color:var(--color-warning)}.teacher-assignment-manager .assignment-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);padding:16px;display:flex}.teacher-assignment-manager .filter-group{gap:var(--space-4);flex:1;min-width:0;display:flex}.teacher-assignment-manager .filter-group label{min-width:150px;display:block}.teacher-assignment-manager .filter-group label>span{display:none}.teacher-assignment-manager .filter-group select,.teacher-assignment-manager .assignment-toolbar .search-field input{min-height:40px;color:var(--color-ink-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-canvas);padding-inline:14px;font-size:14px;line-height:22px}.teacher-assignment-manager .assignment-toolbar-search{align-items:center;gap:var(--space-4);display:flex}.teacher-assignment-manager .assignment-toolbar-search>span{color:var(--color-muted);white-space:nowrap;font-size:14px;font-weight:500}.teacher-assignment-manager .assignment-toolbar-search>span b{color:var(--color-ink);font-weight:600}.teacher-assignment-manager .assignment-toolbar .search-field{width:250px}.teacher-assignment-manager .assignment-toolbar .search-field svg{color:var(--color-faint);left:12px;right:auto}.teacher-assignment-manager .assignment-toolbar .search-field input{padding-left:40px;padding-right:14px}.teacher-assignment-manager .managed-assignment-list{gap:var(--space-3);padding-bottom:64px;display:grid}.teacher-assignment-manager .managed-assignment{align-items:center;gap:var(--space-6);min-height:96px;color:var(--color-ink);border:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card);padding:20px;display:flex;border-radius:var(--radius-sm)!important}.teacher-assignment-manager .managed-type-icon{border-radius:var(--radius-md);border:1px solid #0000;flex:none;width:56px;height:56px}.teacher-assignment-manager .managed-type-icon svg{width:24px;height:24px}.teacher-assignment-manager .managed-type-icon.text{color:#059669;background:#ecfdf5;border-color:#d1fae5}.teacher-assignment-manager .managed-type-icon.video{color:#9333ea;background:#faf5ff;border-color:#f3e8ff}.teacher-assignment-manager .managed-type-icon.audio{color:var(--color-info);background:var(--color-info-soft);border-color:#dbeafe}.teacher-assignment-manager .managed-type-icon.image{color:var(--color-danger);background:var(--color-danger-soft);border-color:#ffe4e6}.teacher-assignment-manager .managed-copy{flex:1;min-width:0}.teacher-assignment-manager .managed-copy h3{color:var(--color-ink);margin:0 0 4px;font-size:18px;font-weight:700;line-height:22px}.teacher-assignment-manager .managed-assignment-meta{align-items:center;gap:var(--space-2);color:var(--color-muted);flex-wrap:wrap;font-size:12px;font-weight:500;line-height:19px;display:flex}.teacher-assignment-manager .managed-assignment-meta>span{background:var(--color-canvas);border:1px solid #f1f5f9;border-radius:5px;align-items:center;gap:4px;padding:4px 8px;display:inline-flex}.teacher-assignment-manager .row-separator{display:none}.teacher-assignment-manager .assignment-deadline{white-space:nowrap}.teacher-assignment-manager .assignment-metrics{border-radius:var(--radius-sm);background:var(--color-canvas);box-shadow:var(--shadow-card);direction:rtl;border:1px solid #f1f5f9;align-items:stretch;gap:0;padding:6px;display:flex}.teacher-assignment-manager .assignment-metrics span{text-align:center;flex-direction:column;justify-content:center;gap:4px;min-width:80px;padding:4px 10px;display:flex}.teacher-assignment-manager .assignment-metrics span+span{border-right:1px solid var(--color-line)}.teacher-assignment-manager .assignment-metrics small{color:var(--color-muted);font-size:10px;font-weight:600;line-height:18px}.teacher-assignment-manager .assignment-metrics b{color:var(--color-ink);font-size:14px;font-weight:700;line-height:22px}.teacher-assignment-manager .metric-publication b.published{color:var(--color-success)}.teacher-assignment-manager .metric-publication b.closed{color:var(--color-muted)}.teacher-assignment-manager .metric-publication b.draft{color:var(--color-warning)}.teacher-assignment-manager .assignment-metrics>span:last-child b{color:var(--color-primary)}.teacher-assignment-manager .managed-actions{align-items:center;gap:var(--space-2);display:flex}.teacher-assignment-manager .managed-qa-wrap{display:inline-flex;position:relative}.teacher-assignment-manager .managed-qa-button,.teacher-assignment-manager .managed-actions>button:not(.more-actions-button){border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:6px;min-height:42px;padding:10px 16px;font-size:14px;font-weight:500;line-height:18px;display:inline-flex}.teacher-assignment-manager .managed-qa-button{color:var(--color-ink-soft);border:1px solid var(--color-line);background:var(--color-surface)}.teacher-assignment-manager .managed-qa-button svg{color:var(--color-faint)}.teacher-assignment-manager .managed-actions>button:not(.more-actions-button){color:var(--color-primary);background:var(--color-primary-soft);border:1px solid #e0e7ff;font-weight:700}.teacher-assignment-manager .managed-qa-button:hover{background:var(--color-canvas);border-color:#cbd5e1}.teacher-assignment-manager .managed-actions>button:not(.more-actions-button):hover{background:#e0e7ff;border-color:#c7d2fe}.teacher-assignment-manager .managed-qa-badge{color:#fff;border-color:var(--color-surface);background:#f59e0b;min-width:16px;height:16px;font-size:9px;font-weight:700;top:-7px;right:-7px}.teacher-assignment-manager .menu-wrap{margin-inline-start:8px}.teacher-assignment-manager .more-actions-button{border-radius:var(--radius-sm);width:32px;min-height:42px;color:var(--color-muted)!important;background:0 0!important;border:0!important;padding:0!important}.teacher-assignment-manager .more-actions-button:hover{color:var(--color-primary)!important;background:var(--color-canvas)!important}.assignment-activity-button{width:40px;height:40px;color:var(--color-faint);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid;position:relative}.assignment-activity-button:hover{color:var(--color-muted);background:var(--color-secondary-soft)}.assignment-activity-button i{border:2px solid var(--color-canvas);background:#ef4444;border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:7px}html.dark .mini-stat,html.dark .mini-stat.warning,html.dark .teacher-assignment-manager .assignment-toolbar,html.dark .teacher-assignment-manager .managed-assignment{border-color:var(--color-line);background:var(--color-surface)}html.dark .mini-stat strong{color:var(--color-ink)}html.dark .teacher-assignment-manager .filter-group select,html.dark .teacher-assignment-manager .assignment-toolbar .search-field input,html.dark .teacher-assignment-manager .assignment-metrics,html.dark .teacher-assignment-manager .managed-assignment-meta>span{color:var(--color-ink);border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .teacher-assignment-manager .assignment-toolbar-search>span{color:var(--color-muted)}html.dark .teacher-assignment-manager .assignment-toolbar-search>span b{color:var(--color-ink)}html.dark .teacher-assignment-manager .assignment-metrics span+span{border-right-color:var(--color-line)}html.dark .teacher-assignment-manager .managed-qa-button{color:var(--color-ink);border-color:var(--color-line);background:var(--color-surface)}html.dark .teacher-assignment-manager .managed-actions>button:not(.more-actions-button){color:#c7d2fe;background:#312e81;border-color:#3730a3}html.dark .teacher-assignment-manager .managed-qa-badge{border-color:var(--color-surface)}@media (max-width:1024px){.assignment-header-side{flex-wrap:wrap}.teacher-assignment-manager .assignment-toolbar,.teacher-assignment-manager .filter-group{flex-wrap:wrap;align-items:stretch}.teacher-assignment-manager .assignment-toolbar-search{justify-content:space-between;width:100%}}@media (max-width:680px){.assignments-page-heading{margin-bottom:var(--space-6);flex-direction:column;align-items:flex-start}.assignment-header-side{justify-content:center;width:100%}.assignments-page-heading h1{font-size:21px;line-height:30px}.teacher-assignment-manager .assignment-toolbar-search{flex-direction:column;align-items:stretch}.teacher-assignment-manager .assignment-toolbar .search-field{width:100%}.teacher-assignment-manager .managed-assignment{grid-template-columns:56px minmax(0,1fr);display:grid}.teacher-assignment-manager .assignment-metrics{grid-column:1/-1;justify-content:space-between}.teacher-assignment-manager .managed-actions{grid-column:1/-1;position:static}}.teacher-shell .app-content{width:min(100%,1152px);max-width:1152px;padding:32px}.teacher-shell .dashboard-page>.page-heading{align-items:center;gap:24px;margin-bottom:32px}.teacher-shell .dashboard-page>.page-heading h1{color:var(--color-ink);letter-spacing:normal;margin:0 0 8px;font-size:24px;font-weight:700;line-height:32px}.teacher-shell .dashboard-page>.page-heading p{color:var(--color-muted);font-size:14px;line-height:22px}.teacher-shell .primary-button,.teacher-shell .secondary-button{border-radius:6px;min-height:40px;padding:10px 16px;font-size:14px;font-weight:500;line-height:20px}.teacher-shell .assignments-page-heading{margin-bottom:40px}.teacher-shell .assignment-header-side .add-new-trigger{min-height:40px;font-size:14px}.teacher-dashboard-page .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px}.teacher-dashboard-page .stat-card{border-color:var(--color-line);background:var(--color-surface);min-height:136px;box-shadow:var(--shadow-card);border-radius:8px;padding:20px}.teacher-dashboard-page .stat-card>span{color:var(--color-muted);font-size:14px;font-weight:600}.teacher-dashboard-page .stat-card strong{color:var(--color-ink);margin-top:14px;font-size:30px;font-weight:700;line-height:36px}.teacher-dashboard-page .dashboard-stack,.teacher-dashboard-page .dashboard-bottom-grid{gap:24px}.teacher-dashboard-page .panel{box-shadow:var(--shadow-card);border-radius:8px}.teacher-dashboard-page .panel-heading{background:color-mix(in srgb, var(--color-canvas) 65%, transparent);border-bottom-color:var(--color-line);padding:16px 20px}.teacher-dashboard-page .panel-heading h2{font-size:16px;font-weight:600}.teacher-dashboard-page .teacher-assignment-row,.teacher-dashboard-page .dashboard-card-row{padding:16px 20px}.teacher-shell .review-summary{gap:16px;margin-bottom:24px}.teacher-shell .review-summary>div{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);min-width:130px;box-shadow:var(--shadow-card);border-radius:6px;padding:16px 24px}.teacher-shell .review-summary span{font-size:12px;font-weight:600}.teacher-shell .review-summary strong{color:var(--color-ink);font-size:24px;font-weight:700;line-height:30px}.teacher-shell .review-toolbar{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:6px;gap:20px;margin-bottom:32px;padding:20px}.teacher-shell .review-toolbar select,.teacher-shell .review-toolbar .search-field input{min-height:40px;color:var(--color-ink-soft);border-color:var(--color-line);background:var(--color-canvas);border-radius:6px;padding:10px 16px;font-size:14px}.teacher-shell .review-assignment-list{gap:24px}.teacher-shell .review-assignment-card{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:6px;gap:24px;padding:20px}.teacher-shell .review-assignment-main{gap:24px}.teacher-shell .review-assignment-main h2{color:var(--color-ink);margin-bottom:4px;font-size:18px;font-weight:700}.teacher-shell .review-assignment-meta{gap:8px;font-size:12px}.teacher-shell .review-assignment-metrics{background:var(--color-canvas);border-color:#f1f5f9;border-radius:6px;padding:6px}.teacher-shell .review-assignment-metrics span{min-width:80px;padding:4px 10px}.teacher-shell .review-assignment-metrics small{font-size:10px;font-weight:600}.teacher-shell .review-assignment-metrics b{font-size:14px;font-weight:700}.teacher-shell .delay-kpis{gap:24px;margin-bottom:24px}.teacher-shell .delay-kpi{border:1px solid var(--color-line);background:var(--color-surface);min-height:128px;box-shadow:var(--shadow-card);border-right-width:1px;border-radius:12px;padding:24px}.teacher-shell .delay-kpi>div{color:var(--color-muted);font-size:14px;font-weight:500}.teacher-shell .delay-kpi i{border-radius:8px;width:40px;height:40px}.teacher-shell .delay-kpi>strong{color:var(--color-ink);margin-top:12px;font-size:30px;font-weight:700}.teacher-shell .delay-filters{border-color:var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:8px;gap:16px;margin-bottom:24px;padding:16px}.teacher-shell .delay-filters select,.teacher-shell .delay-filters .search-field input{min-height:40px;color:var(--color-ink-soft);border-color:var(--color-line);background:var(--color-canvas);border-radius:6px;padding:10px 16px;font-size:14px}.teacher-shell .delay-table{border-color:var(--color-line);background:var(--color-surface);border-radius:8px}.teacher-shell .delay-table>header,.teacher-shell .delay-table>article{padding:14px 20px;font-size:14px}.teacher-shell .delay-table>header{background:var(--color-canvas)}.teacher-shell .delay-actions{gap:8px}.teacher-shell .delay-actions button{border-radius:6px;min-width:130px;padding:6px 12px;font-size:12px;font-weight:700}.teacher-shell .dashboard-page:has(.exam-builder){max-width:896px;margin-inline:auto}.teacher-shell .exam-metadata,.teacher-shell .question-card{border-color:var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:8px;padding:24px}.teacher-shell .exam-title{color:var(--color-ink);margin-bottom:22px;font-size:24px;font-weight:700;line-height:32px}.teacher-shell .exam-meta-grid{gap:20px}.teacher-shell .exam-meta-grid label{color:var(--color-muted);gap:8px;font-size:12px;font-weight:700}.teacher-shell .exam-meta-grid input,.teacher-shell .exam-meta-grid select{min-height:42px;color:var(--color-ink-soft);border-color:var(--color-line);background:var(--color-surface);border-radius:6px;padding:10px 12px;font-size:14px}.teacher-shell .exam-metadata-actions{border-top-color:#f1f5f9;margin-top:22px;padding-top:16px}.teacher-shell .question-list{gap:20px;margin-top:20px}.teacher-shell .question-card>header{margin-bottom:16px;padding-bottom:16px}.teacher-shell .question-card>header strong{color:var(--color-ink);font-size:16px;font-weight:700}.teacher-shell .question-card>header span{border-radius:6px;padding:4px 10px;font-size:12px}.teacher-shell .question-card>textarea{min-height:100px;color:var(--color-ink-soft);border-color:var(--color-line);background:var(--color-surface);border-radius:6px;padding:14px;font-size:14px;line-height:1.75}.teacher-shell .answer-options label{border-color:var(--color-line);border-radius:6px;padding:10px 12px;font-size:14px}.teacher-shell .question-type-bar{z-index:45;border-color:var(--color-line);background:var(--color-surface);border-radius:8px}.teacher-shell .question-type-bar button{border-radius:6px;min-width:80px;padding:8px 12px;font-size:12px}.teacher-shell .managed-type-icon.exam-icon-written{color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 24%, var(--color-line));background:var(--color-primary-soft)}.teacher-shell .managed-type-icon.exam-icon-choice{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 24%, var(--color-line));background:var(--color-success-soft)}.teacher-shell .managed-type-icon.exam-icon-online{color:var(--color-info);border-color:color-mix(in srgb, var(--color-info) 24%, var(--color-line));background:var(--color-info-soft)}.teacher-shell .managed-type-icon.exam-icon-oral{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 24%, var(--color-line));background:var(--color-danger-soft)}.teacher-shell .row-action.is-urgent{color:var(--color-primary-dark);border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-line));border-radius:var(--radius-sm);background:var(--color-primary-soft);position:relative}.teacher-shell .row-action.is-urgent:after{content:"";border:2px solid var(--color-surface);border-radius:var(--radius-full);background:var(--color-warning);width:14px;height:14px;position:absolute;top:-6px;right:-6px}.teacher-shell .exam-grading-page{max-width:none;padding:0}.teacher-shell .exam-grading-page .exam-grading-page-top{padding:var(--space-4) var(--space-4) 0}.teacher-shell .exam-grading-workspace{min-height:calc(100dvh - 120px);color:var(--color-ink);background:var(--color-canvas);flex-direction:column;display:flex;position:relative}.teacher-shell .exam-grading-workspace.is-empty{min-height:auto;padding:var(--space-6)}.teacher-shell .exam-grading-mobile-header{padding:var(--space-4);border-bottom:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;display:flex}.teacher-shell .exam-grading-mobile-header h1{color:var(--color-ink-strong);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0}.teacher-shell .exam-grading-main{padding-bottom:calc(var(--space-12) + var(--space-8));flex:1;order:1;overflow-y:auto}.teacher-shell .exam-grading-main-inner{max-width:896px;padding:var(--space-4);margin-inline:auto}.teacher-shell .exam-grading-paper-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);flex-wrap:wrap;margin-bottom:0;display:flex}.teacher-shell .exam-grading-paper-header h2{color:var(--color-ink-strong);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0}.teacher-shell .exam-grading-paper-header p{margin:var(--space-1) 0 0;color:var(--color-muted);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.teacher-shell .exam-grading-success-badge{margin:0}.teacher-shell .exam-grading-error{margin:var(--space-3) 0 0}.teacher-shell .exam-grading-questions{gap:var(--space-4);margin-top:var(--space-6);display:grid}.teacher-shell .exam-grading-question-card{padding:var(--space-4) var(--space-6);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);flex-direction:column;gap:0;display:flex}.teacher-shell .exam-grading-score-column{padding-top:var(--space-4);margin-top:var(--space-4);border-top:1px solid var(--color-border-subtle);order:2}.teacher-shell .exam-grading-score-column .ui-field{gap:var(--space-2)}.teacher-shell .exam-grading-score-input{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);text-align:center}.teacher-shell .exam-grading-question-body{flex-direction:column;flex:1;order:1;display:flex}.teacher-shell .exam-grading-question-top{align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.teacher-shell .exam-grading-question-top span{padding:var(--space-1) var(--space-3);color:var(--color-secondary);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-secondary-soft);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-question-top small{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.teacher-shell .exam-grading-question-top em{padding:var(--space-1) var(--space-2);color:var(--color-secondary);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-secondary-soft);font-size:var(--font-size-xs);font-style:normal;font-weight:var(--font-weight-bold);margin-right:auto}.teacher-shell .exam-grading-question-body h3{margin:0 0 var(--space-2);color:var(--color-ink-strong);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);line-height:var(--line-height-relaxed)}.teacher-shell .exam-grading-answer-empty{margin-top:var(--space-4);padding:var(--space-4);color:var(--color-muted);border:1px dashed var(--color-line);border-radius:var(--radius-sm);background:var(--color-canvas);opacity:.75;font-size:var(--font-size-md);font-style:italic;font-weight:var(--font-weight-medium)}.teacher-shell .exam-grading-answer-options{gap:var(--space-3);margin-top:var(--space-4);display:grid}.teacher-shell .exam-grading-answer-option{padding:var(--space-4);color:var(--color-secondary);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.teacher-shell .exam-grading-answer-option.is-correct{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-line));background:var(--color-success-soft)}.teacher-shell .exam-grading-answer-option.is-wrong{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-line));background:var(--color-danger-soft)}.teacher-shell .exam-grading-answer-option.is-correct-missed{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-line));background:var(--color-success-soft);border-style:dashed}.teacher-shell .exam-grading-answer-matching{gap:var(--space-3);margin-top:var(--space-4);display:grid}.teacher-shell .exam-grading-match-row{gap:var(--space-4);display:flex}.teacher-shell .exam-grading-match-left,.teacher-shell .exam-grading-match-right{padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);text-align:center;flex:1}.teacher-shell .exam-grading-match-left{border-right-width:4px}.teacher-shell .exam-grading-match-left.is-correct{color:var(--color-success);border-color:var(--color-success);background:var(--color-success-soft)}.teacher-shell .exam-grading-match-left.is-wrong{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-soft)}.teacher-shell .exam-grading-match-right{color:var(--color-ink-soft);background:var(--color-surface)}.teacher-shell .exam-grading-answer-blanks{margin-top:var(--space-4);padding:var(--space-5);color:var(--color-ink-strong);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:2}.teacher-shell .exam-grading-answer-blanks mark{margin-inline:var(--space-2);padding:var(--space-2) var(--space-4);color:var(--color-ink-soft);border-bottom:2px solid var(--color-border-strong);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-secondary-soft);font-weight:var(--font-weight-bold);display:inline-block}.teacher-shell .exam-grading-answer-essay{margin-top:var(--space-4);padding:var(--space-5);color:var(--color-ink-soft);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);white-space:pre-wrap}.teacher-shell .exam-grading-answer-short{margin-top:var(--space-4);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-answer-audio,.teacher-shell .exam-grading-answer-file{align-items:center;gap:var(--space-4);width:100%;max-width:28rem;margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);display:flex}.teacher-shell .exam-grading-answer-audio>div{border-radius:var(--radius-sm);background:var(--color-secondary-soft);flex:1;height:8px;overflow:hidden}.teacher-shell .exam-grading-answer-audio>div i{border-radius:inherit;background:var(--color-border-strong);height:100%;display:block}.teacher-shell .exam-grading-answer-audio>span{color:var(--color-muted);font-family:ui-monospace,monospace;font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-file-icon{width:48px;height:48px;color:var(--color-text-muted);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-canvas);place-items:center;display:grid}.teacher-shell .exam-grading-answer-file div{flex:1;min-width:0}.teacher-shell .exam-grading-answer-file strong{color:var(--color-ink-soft);font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.teacher-shell .exam-grading-answer-file small{color:var(--color-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.teacher-shell .exam-grading-feedback-block{padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle);margin-top:auto}.teacher-shell .exam-grading-feedback-panel{opacity:0;max-height:0;transition:max-height var(--motion-slow) var(--motion-ease), opacity var(--motion-slow) var(--motion-ease), margin-top var(--motion-slow) var(--motion-ease);margin-top:0;overflow:hidden}.teacher-shell .exam-grading-feedback-panel.is-open{max-height:250px;margin-top:var(--space-3);opacity:1}.teacher-shell .exam-grading-sidebar-backdrop{z-index:40;background:var(--overlay);opacity:0;pointer-events:none;transition:opacity var(--motion-slow) var(--motion-ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:0;position:fixed;inset:0}.teacher-shell .exam-grading-sidebar-backdrop.is-open{opacity:1;pointer-events:auto}.teacher-shell .exam-grading-sidebar{inset-block:0;z-index:50;border-left:1px solid var(--color-line);background:var(--color-surface);width:288px;box-shadow:var(--shadow-float);transition:transform var(--motion-slow) var(--motion-ease);flex-direction:column;display:flex;position:fixed;right:0;overflow:hidden;transform:translate(100%)}.teacher-shell .exam-grading-sidebar.is-open{transform:translate(0)}.teacher-shell .exam-grading-sidebar-mobile-head{padding:var(--space-4);border-bottom:1px solid var(--color-line);background:var(--color-canvas);justify-content:space-between;align-items:center;display:flex}.teacher-shell .exam-grading-sidebar-mobile-head span{color:var(--color-ink-soft);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-sidebar-top{gap:var(--space-6);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-line);background:color-mix(in srgb, var(--color-canvas) 50%, transparent);display:grid}.teacher-shell .exam-grading-total-score p{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-total-score div{align-items:baseline;gap:var(--space-2);color:var(--color-primary);display:flex}.teacher-shell .exam-grading-total-score strong{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-total-score span{color:var(--color-text-muted);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-sidebar-desktop-actions{gap:var(--space-3);display:none}.teacher-shell .exam-grading-sidebar-desktop-actions nav{gap:var(--space-3);display:flex}.teacher-shell .exam-grading-sidebar-desktop-actions nav .ui-button{flex:1}.teacher-shell .exam-grading-submit{width:100%}.teacher-shell .exam-grading-submit.is-success{background:var(--color-success);border-color:var(--color-success)}.teacher-shell .exam-grading-students{padding:var(--space-3) var(--space-4) var(--space-6);scrollbar-width:none;flex:1;overflow-y:auto}.teacher-shell .exam-grading-students::-webkit-scrollbar{display:none}.teacher-shell .exam-grading-students h3{margin:0 0 var(--space-2);padding:0 var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.08em;text-transform:uppercase}.teacher-shell .exam-grading-student{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);color:var(--color-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);text-align:right;transition:background var(--motion-base) var(--motion-ease), color var(--motion-base) var(--motion-ease), border-color var(--motion-base) var(--motion-ease);background:0 0;border:0;border-right:4px solid #0000;display:flex}.teacher-shell .exam-grading-student:hover{background:var(--color-canvas)}.teacher-shell .exam-grading-student.is-active{color:var(--color-primary-dark);border-right-color:var(--color-primary);background:var(--color-primary-soft);font-weight:var(--font-weight-bold)}.teacher-shell .exam-grading-student em{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-style:normal;font-weight:var(--font-weight-bold);border:1px solid;display:inline-flex}.teacher-shell .exam-grading-student em.is-graded{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, var(--color-line));background:var(--color-success-soft)}.teacher-shell .exam-grading-student em.is-pending{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, var(--color-line));background:var(--color-warning-soft)}.teacher-shell .exam-grading-mobile-bar{z-index:30;align-items:center;gap:var(--space-3);padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom));border-top:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-float);display:flex;position:fixed;bottom:0;left:0;right:0}.teacher-shell .exam-grading-mobile-bar .ui-button--outline{width:48px;min-width:48px;padding-inline:0}.teacher-shell .exam-grading-mobile-bar .exam-grading-submit{flex:1}@media (min-width:768px){.teacher-shell .exam-grading-mobile-header,.teacher-shell .exam-grading-mobile-bar,.teacher-shell .exam-grading-sidebar-mobile-head,.teacher-shell .exam-grading-sidebar-backdrop{display:none}.teacher-shell .exam-grading-workspace{flex-direction:row-reverse;min-height:calc(100dvh - 96px);overflow:hidden}.teacher-shell .exam-grading-main{order:0;padding-bottom:0}.teacher-shell .exam-grading-main-inner{padding:var(--space-8)}.teacher-shell .exam-grading-paper-header h2{font-size:var(--font-size-2xl)}.teacher-shell .exam-grading-questions{gap:var(--space-6)}.teacher-shell .exam-grading-question-card{gap:var(--space-6);padding:var(--space-6);flex-direction:row}.teacher-shell .exam-grading-score-column{border-top:0;border-left:1px solid var(--color-border-subtle);width:128px;padding-top:0;padding-left:var(--space-6);order:1;margin-top:0}.teacher-shell .exam-grading-question-body h3{font-size:var(--font-size-lg)}.teacher-shell .exam-grading-sidebar{z-index:10;border-left:0;border-right:1px solid var(--color-line);width:25%;min-width:280px;max-width:360px;height:100%;box-shadow:var(--shadow-card);position:sticky;top:0;transform:none}.teacher-shell .exam-grading-sidebar-desktop-actions{display:grid}}.teacher-shell .assignment-modal{background:var(--color-surface);border-radius:12px;width:min(100%,768px)}.teacher-shell .modal-header{background:color-mix(in srgb, var(--color-canvas) 70%, transparent);padding:20px 32px}.teacher-shell .modal-body{padding:32px}.teacher-shell .modal-footer{padding:16px 32px}.qa-layer{z-index:1000}.qa-layer .qa-modal{border-color:var(--color-line);background:var(--color-canvas);border-radius:12px;width:min(100%,896px);height:min(85vh,720px)}.qa-layer .qa-modal>header{color:var(--color-ink);border-bottom-color:var(--color-line);background:var(--color-surface);padding:16px 32px}.qa-layer .qa-modal h2{color:var(--color-ink);font-size:16px;font-weight:700}.qa-layer .qa-question{border-color:var(--color-line);background:var(--color-surface);border-radius:12px;padding:20px}.teacher-shell .notification-popover{z-index:80;background:var(--color-surface);border-radius:8px;width:min(480px,100vw - 32px)}html.dark .teacher-shell .review-summary>div,html.dark .teacher-shell .review-toolbar,html.dark .teacher-shell .review-assignment-card,html.dark .teacher-shell .delay-kpi,html.dark .teacher-shell .delay-filters,html.dark .teacher-shell .delay-table,html.dark .teacher-shell .exam-metadata,html.dark .teacher-shell .question-card,html.dark .teacher-shell .exam-grading-paper-header,html.dark .teacher-shell .exam-grading-question-card,html.dark .teacher-shell .exam-grading-sidebar,html.dark .teacher-shell .exam-grading-mobile-header,html.dark .teacher-shell .exam-grading-mobile-bar,html.dark .qa-layer .qa-question,html.dark .qa-layer .qa-modal>header{border-color:var(--color-line);background:var(--color-surface)}html.dark .teacher-shell .review-toolbar select,html.dark .teacher-shell .review-toolbar .search-field input,html.dark .teacher-shell .delay-filters select,html.dark .teacher-shell .delay-filters .search-field input,html.dark .teacher-shell .review-assignment-metrics,html.dark .teacher-shell .exam-meta-grid input,html.dark .teacher-shell .exam-meta-grid select,html.dark .teacher-shell .question-card>textarea,html.dark .teacher-shell .exam-grading-answer-option,html.dark .teacher-shell .exam-grading-answer-essay,html.dark .teacher-shell .exam-grading-answer-blanks,html.dark .teacher-shell .exam-grading-match-right,html.dark .teacher-shell .exam-grading-answer-audio,html.dark .teacher-shell .exam-grading-answer-file,html.dark .teacher-shell .exam-grading-sidebar-top{color:var(--color-ink);border-color:var(--color-line);background:var(--color-secondary-soft)}@media (max-width:680px){.teacher-shell .app-content{padding:24px 16px 40px}.teacher-shell .dashboard-page>.page-heading{align-items:flex-start;margin-bottom:24px}.teacher-shell .dashboard-page>.page-heading h1{font-size:21px;line-height:30px}.teacher-dashboard-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.teacher-dashboard-page .stat-card{min-height:112px;padding:14px}.teacher-dashboard-page .stat-card>span{font-size:12px}.teacher-dashboard-page .stat-card strong{margin-top:8px;font-size:24px;line-height:30px}.teacher-shell .review-summary,.teacher-shell .delay-kpis{gap:12px}.teacher-shell .review-summary>div,.teacher-shell .delay-kpi{padding:16px}.teacher-shell .review-toolbar,.teacher-shell .delay-filters{flex-direction:column;align-items:stretch}.teacher-shell .review-toolbar select,.teacher-shell .delay-filters select{width:100%}.teacher-shell .exam-meta-grid{grid-template-columns:1fr;gap:12px}.teacher-shell .exam-metadata,.teacher-shell .question-card{padding:16px}.teacher-shell .exam-title{font-size:21px;line-height:30px}.teacher-shell .modal-body{padding:24px 20px}}.teacher-shell .workspace-page{max-width:1280px;margin-inline:auto}.teacher-shell .workspace-page-header{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);min-height:80px;padding:16px 32px}.teacher-shell .workspace-title h1{color:var(--color-ink);font-size:18px;font-weight:700}.teacher-shell .workspace-title p,.teacher-shell .workspace-title span{color:var(--color-muted);font-size:14px;font-weight:500}.teacher-shell .workspace-grid{gap:32px}.teacher-shell .workspace-viewer,.teacher-shell .feedback-form{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:6px}.teacher-shell .workspace-header{border-bottom-color:#f1f5f9;padding:24px 32px}.teacher-shell .workspace-header h2{color:var(--color-ink);font-size:18px;font-weight:700}.teacher-shell .response-canvas{background:var(--color-canvas);padding:32px}.teacher-shell .response-file{border-color:color-mix(in srgb, var(--color-line) 80%, transparent);background:var(--color-secondary-soft);border-radius:6px}.teacher-shell .viewer-footer{border-top-color:var(--color-line);padding:16px 32px;font-size:12px}.teacher-shell .feedback-form{gap:20px;padding:24px}.teacher-shell .feedback-form label,.teacher-shell .feedback-form legend{color:var(--color-muted);font-size:12px;font-weight:600}.teacher-shell .feedback-form input,.teacher-shell .feedback-form select,.teacher-shell .feedback-form textarea{color:var(--color-ink-soft);border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-canvas);border-radius:6px;padding:10px 16px;font-size:14px}.teacher-shell .evaluator-heading{border-bottom-color:#f1f5f9;padding-bottom:16px}.teacher-shell .evaluator-heading h2{color:var(--color-ink);font-size:16px;font-weight:700}.teacher-shell .decision-fieldset{gap:12px}.teacher-shell .decision-option{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-surface);border-radius:6px;gap:10px;padding:12px;font-size:14px}.teacher-shell .feedback-thread{border-color:color-mix(in srgb, var(--color-line) 60%, transparent);background:var(--color-canvas);border-radius:6px;gap:12px;padding:20px}.teacher-shell .feedback-thread header,.teacher-shell .feedback-thread>p{font-size:14px}.teacher-shell .notification-list{border-radius:8px;max-width:100%;padding:0}.teacher-shell .notification-row{border-bottom-color:#f1f5f9;gap:16px;padding:20px}.teacher-shell .notification-icon{border-radius:8px;width:40px;height:40px}.teacher-shell .notification-row strong{color:var(--color-ink);font-size:14px;font-weight:700}.teacher-shell .notification-row p{color:var(--color-muted);font-size:14px;line-height:22px}.teacher-shell .notification-row small{color:var(--color-faint);font-size:12px}html.dark .teacher-shell .workspace-page-header,html.dark .teacher-shell .workspace-viewer,html.dark .teacher-shell .feedback-form{border-color:var(--color-line);background:var(--color-surface)}html.dark .teacher-shell .response-canvas,html.dark .teacher-shell .response-file,html.dark .teacher-shell .feedback-thread{border-color:var(--color-line);background:var(--color-secondary-soft)}html.dark .teacher-shell .feedback-form input,html.dark .teacher-shell .feedback-form select,html.dark .teacher-shell .feedback-form textarea{color:var(--color-ink);border-color:var(--color-line);background:var(--color-secondary-soft)}@media (max-width:680px){.teacher-shell .workspace-page-header{min-height:64px;padding:12px 16px}.teacher-shell .workspace-grid{gap:16px}.teacher-shell .workspace-header,.teacher-shell .viewer-footer,.teacher-shell .response-canvas,.teacher-shell .feedback-form{padding:16px}}@media (min-width:681px){.teacher-shell .app-sidebar{flex-basis:204.8px;width:204.8px}.teacher-shell .sidebar-brand-row{min-height:65.6px;padding-inline:19.2px}.teacher-shell .app-content{padding:25.6px}.teacher-shell .app-nav a.nav-item,.teacher-shell .app-nav a.nav-child,.teacher-shell .app-nav button.nav-item{min-height:34.4px;padding-inline:12.8px;font-size:11.2px}.teacher-shell .app-nav .nav-toggle span{white-space:nowrap}.teacher-shell .dashboard-page>.page-heading{gap:19.2px;margin-bottom:25.6px}.teacher-shell .dashboard-page>.page-heading h1{margin-bottom:6.4px;font-size:19.2px;line-height:25.6px}.teacher-shell .dashboard-page>.page-heading p{font-size:11.2px;line-height:17.6px}.teacher-shell .primary-button,.teacher-shell .secondary-button{min-height:32px;padding:8px 12.8px;font-size:11.2px;line-height:16px}.teacher-shell .assignment-header-side{gap:12.8px}.teacher-shell .assignment-header-side .add-new-trigger{min-height:32px;padding-inline:12.8px;font-size:11.2px}.teacher-shell .mini-stat,.teacher-shell .mini-stat.warning{min-width:104px;min-height:89.6px;padding:12.8px 19.2px}.teacher-shell .mini-stat span{font-size:9.6px;line-height:14.4px}.teacher-shell .mini-stat strong{font-size:19.2px;line-height:24px}.teacher-shell .mini-stat small{font-size:8px;line-height:12.8px}.teacher-dashboard-page .stats-grid{gap:19.2px;margin-bottom:25.6px}.teacher-dashboard-page .stat-card{min-height:108.8px;padding:16px}.teacher-dashboard-page .stat-card>span{font-size:11.2px}.teacher-dashboard-page .stat-card strong{margin-top:11.2px;font-size:24px;line-height:28.8px}.teacher-dashboard-page .dashboard-stack,.teacher-dashboard-page .dashboard-bottom-grid{gap:19.2px}.teacher-dashboard-page .panel-heading,.teacher-dashboard-page .teacher-assignment-row,.teacher-dashboard-page .dashboard-card-row{padding:12.8px 16px}.teacher-dashboard-page .panel-heading h2{font-size:12.8px}.teacher-shell .teacher-assignment-manager .assignment-toolbar{gap:12.8px;margin-bottom:19.2px;padding:12.8px}.teacher-shell .teacher-assignment-manager .filter-group{gap:12.8px}.teacher-shell .teacher-assignment-manager .filter-group label{min-width:120px}.teacher-shell .teacher-assignment-manager .filter-group select,.teacher-shell .teacher-assignment-manager .assignment-toolbar .search-field input{min-height:32px;padding-inline:11.2px;font-size:11.2px;line-height:17.6px}.teacher-shell .teacher-assignment-manager .assignment-toolbar .search-field{width:200px}.teacher-shell .teacher-assignment-manager .assignment-toolbar .search-field input{padding-left:32px}.teacher-shell .teacher-assignment-manager .assignment-toolbar-search,.teacher-shell .teacher-assignment-manager .filter-group{gap:12.8px}.teacher-shell .teacher-assignment-manager .assignment-toolbar-search>span{font-size:11.2px}.teacher-shell .teacher-assignment-manager .managed-assignment-list{gap:9.6px;padding-bottom:51.2px}.teacher-shell .teacher-assignment-manager .managed-assignment{gap:19.2px;min-height:76.8px;padding:16px}.teacher-shell .teacher-assignment-manager .managed-type-icon{width:44.8px;height:44.8px}.teacher-shell .teacher-assignment-manager .managed-type-icon svg{width:19.2px;height:19.2px}.teacher-shell .teacher-assignment-manager .managed-copy h3{margin-bottom:3.2px;font-size:14.4px;line-height:17.6px}.teacher-shell .teacher-assignment-manager .managed-assignment-meta{gap:6.4px;font-size:9.6px;line-height:15.2px}.teacher-shell .teacher-assignment-manager .managed-assignment-meta>span{gap:3.2px;padding:3.2px 6.4px}.teacher-shell .teacher-assignment-manager .assignment-metrics{padding:4.8px}.teacher-shell .teacher-assignment-manager .assignment-metrics span{gap:3.2px;min-width:64px;padding:3.2px 8px}.teacher-shell .teacher-assignment-manager .assignment-metrics small{font-size:8px;line-height:14.4px}.teacher-shell .teacher-assignment-manager .assignment-metrics b{font-size:11.2px;line-height:17.6px}.teacher-shell .teacher-assignment-manager .managed-actions{gap:6.4px}.teacher-shell .teacher-assignment-manager .managed-qa-button,.teacher-shell .teacher-assignment-manager .managed-actions>button:not(.more-actions-button){gap:4.8px;min-height:33.6px;padding:8px 12.8px;font-size:11.2px;line-height:14.4px}.teacher-shell .teacher-assignment-manager .more-actions-button{width:25.6px;min-height:33.6px}.teacher-shell .review-summary{gap:12.8px;margin-bottom:19.2px}.teacher-shell .review-summary>div{min-width:104px;padding:12.8px 19.2px}.teacher-shell .review-summary span{font-size:9.6px}.teacher-shell .review-summary strong{font-size:19.2px;line-height:24px}.teacher-shell .review-toolbar{gap:16px;margin-bottom:25.6px;padding:16px}.teacher-shell .review-toolbar select,.teacher-shell .review-toolbar .search-field input{min-height:32px;padding:8px 12.8px;font-size:11.2px}.teacher-shell .review-assignment-list{gap:19.2px}.teacher-shell .review-assignment-card{gap:19.2px;padding:16px}.teacher-shell .review-assignment-main{gap:19.2px}.teacher-shell .review-assignment-main h2{font-size:14.4px}.teacher-shell .review-assignment-meta{font-size:9.6px}.teacher-shell .delay-kpis{gap:19.2px;margin-bottom:19.2px}.teacher-shell .delay-kpi{min-height:102.4px;padding:19.2px}.teacher-shell .delay-kpi>div{font-size:11.2px}.teacher-shell .delay-kpi i{width:32px;height:32px}.teacher-shell .delay-kpi>strong{margin-top:9.6px;font-size:24px}.teacher-shell .delay-filters{gap:12.8px;margin-bottom:19.2px;padding:12.8px}.teacher-shell .delay-filters select,.teacher-shell .delay-filters .search-field input{min-height:32px;padding:8px 12.8px;font-size:11.2px}.teacher-shell .delay-table>header,.teacher-shell .delay-table>article{padding:11.2px 16px;font-size:11.2px}.teacher-shell .dashboard-page:has(.exam-builder){max-width:716.8px}.teacher-shell .exam-metadata,.teacher-shell .question-card{padding:19.2px}.teacher-shell .exam-title{margin-bottom:17.6px;font-size:19.2px;line-height:25.6px}.teacher-shell .exam-meta-grid{gap:16px}.teacher-shell .exam-meta-grid label{gap:6.4px;font-size:9.6px}.teacher-shell .exam-meta-grid input,.teacher-shell .exam-meta-grid select{min-height:33.6px;padding:8px 9.6px;font-size:11.2px}.teacher-shell .question-list{gap:16px;margin-top:16px}.teacher-shell .question-card>textarea{min-height:80px;padding:11.2px;font-size:11.2px}.teacher-shell .workspace-page{max-width:1024px}.teacher-shell .workspace-page-header{min-height:64px;padding:12.8px 25.6px}.teacher-shell .workspace-grid{gap:25.6px}.teacher-shell .workspace-header{padding:19.2px 25.6px}.teacher-shell .workspace-header h2{font-size:14.4px}.teacher-shell .response-canvas{padding:25.6px}.teacher-shell .feedback-form{gap:16px;padding:19.2px}.teacher-shell .feedback-form label,.teacher-shell .feedback-form legend{font-size:9.6px}.teacher-shell .feedback-form input,.teacher-shell .feedback-form select,.teacher-shell .feedback-form textarea{padding:8px 12.8px;font-size:11.2px}.teacher-shell .assignment-modal{width:min(100%,614.4px)}.teacher-shell .modal-header{padding:16px 25.6px}.teacher-shell .modal-body{padding:25.6px}.teacher-shell .modal-footer{padding:12.8px 25.6px}.qa-layer .qa-modal{width:min(100%,716.8px)}.qa-layer .qa-modal>header{padding:12.8px 25.6px}.qa-layer .qa-question{padding:16px}.teacher-shell .notification-popover{width:min(384px,100vw - 32px)}}.sidebar-collapse-button{display:none}@media (min-width:681px){.teacher-shell .app-sidebar{transition:width .26s cubic-bezier(.22,1,.36,1),flex-basis .26s cubic-bezier(.22,1,.36,1);overflow:hidden}.teacher-shell .sidebar-collapse-button{width:28.8px;height:28.8px;color:var(--color-muted);border:1px solid var(--color-line);background:var(--color-surface);cursor:pointer;border-radius:6px;flex:0 0 28.8px;place-items:center;padding:0;transition:color .16s,border-color .16s,background-color .16s,transform .26s cubic-bezier(.22,1,.36,1);display:grid}.teacher-shell .sidebar-collapse-button:hover{color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 34%, var(--color-line));background:var(--color-primary-soft)}.teacher-shell .sidebar-class-wrap{transition:max-height .22s,margin .22s,opacity .16s,transform .22s;overflow:hidden}.teacher-shell .nav-children{opacity:0;border-right-color:#0000;grid-template-rows:0fr;gap:0;max-height:0;margin-right:0;padding:0;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1),max-height .24s cubic-bezier(.22,1,.36,1),margin .18s,padding .18s,opacity .15s,border-color .15s;display:grid;overflow:hidden}.teacher-shell .nav-children-inner{gap:2px;min-height:0;display:grid;overflow:hidden}.teacher-shell .nav-group.open .nav-children{opacity:1;border-right-color:var(--color-line);grid-template-rows:1fr;max-height:88px;margin-right:16.8px;padding:1.6px 0 4.8px}.teacher-shell.sidebar-collapsed .app-sidebar{flex-basis:56px;width:56px}.teacher-shell.sidebar-collapsed .sidebar-brand-row{justify-content:center;padding-inline:0}.teacher-shell.sidebar-collapsed .app-brand{opacity:0;pointer-events:none;width:0;transition:width .18s,opacity .12s,transform .18s;overflow:hidden;transform:scale(.92)}.teacher-shell .app-brand{transition:width .18s,opacity .14s,transform .18s}.teacher-shell.sidebar-collapsed .sidebar-collapse-button{transform:rotate(180deg)}.teacher-shell.sidebar-collapsed .app-nav{padding-inline:6.4px}.teacher-shell.sidebar-collapsed .sidebar-class-wrap{opacity:0;max-height:0;margin:0;transform:translateY(-6px)}.teacher-shell.sidebar-collapsed .app-sidebar .nav-item,.teacher-shell.sidebar-collapsed .app-sidebar .nav-child,.teacher-shell.sidebar-collapsed .app-sidebar .sidebar-home{justify-content:center;gap:0;padding-inline:0;font-size:0}.teacher-shell.sidebar-collapsed .app-sidebar .nav-item:before,.teacher-shell.sidebar-collapsed .app-sidebar .nav-child:before{display:none}.teacher-shell.sidebar-collapsed .app-sidebar .nav-toggle span,.teacher-shell.sidebar-collapsed .app-sidebar .nav-chevron{opacity:0;flex-basis:0;width:0;min-width:0;overflow:hidden}.teacher-shell.sidebar-collapsed .nav-children{opacity:0!important;border-right-color:#0000!important;max-height:0!important;margin:0!important;padding:0!important}.teacher-shell.sidebar-collapsed .sidebar-bottom{padding-inline:6.4px;gap:4px;padding-bottom:10px;overflow:hidden}.teacher-shell.sidebar-collapsed .sidebar-home{min-height:36px;padding:4px}.teacher-shell.sidebar-collapsed .sidebar-user{background:0 0;border-color:#0000;justify-content:center;gap:0;min-height:36px;padding:4px}.teacher-shell.sidebar-collapsed .sidebar-user-copy,.teacher-shell.sidebar-collapsed .sidebar-user>svg{display:none}.teacher-shell.sidebar-collapsed .sidebar-avatar{flex:0 0 28px;width:28px;height:28px;font-size:11px}.teacher-shell.sidebar-collapsed .sidebar-logout{justify-content:center;gap:0;min-height:36px;margin-top:0;padding:4px;font-size:0;line-height:0;overflow:hidden}.teacher-shell.sidebar-collapsed .sidebar-logout svg{flex-shrink:0;width:15px;height:15px}}@media (max-width:767px){.teacher-shell.app-shell{height:auto;min-height:100dvh;display:block}.teacher-shell .app-sidebar{z-index:var(--z-shell);width:min(82vw,320px);height:100dvh;transition:transform var(--motion-slow) var(--motion-ease);flex:none;position:fixed;inset:0 0 0 auto;transform:translate(100%)}.teacher-shell .app-sidebar.open{transform:translate(0)}.teacher-shell .app-main{width:100%;max-width:none;height:auto;min-height:100dvh}.teacher-shell .app-topbar{width:100%;height:56px;padding:0 var(--space-4);border-bottom:1px solid var(--color-line);background:var(--color-surface);position:relative;inset:auto}.teacher-shell .app-content{width:100%;max-width:none;padding:var(--space-4);padding-bottom:calc(120px + env(safe-area-inset-bottom,0px));margin:0}:is(.teacher-shell .dashboard-page,.teacher-shell .dashboard-page:has(.exam-builder),.teacher-shell .exam-builder-page){width:100%;max-width:none;margin:0}.teacher-shell .exam-builder{width:100%;max-width:none;padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.teacher-shell .exam-metadata,.teacher-shell .question-card,.teacher-shell .exam-metadata .ui-card{width:100%;max-width:none}.teacher-shell .exam-meta-grid,.teacher-shell .ui-jalali-date,.teacher-shell .ui-jalali-date--datetime,.teacher-shell .platform-jalali-date{grid-template-columns:1fr}.teacher-shell .exam-metadata-actions{flex-direction:column;align-items:stretch}.teacher-shell .exam-metadata-actions .ui-button,.teacher-shell .exam-metadata-actions .primary-button,.teacher-shell .exam-metadata-actions .secondary-button{width:100%}.teacher-shell .question-type-bar{z-index:45;right:var(--space-2);bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));left:var(--space-2);gap:var(--space-1);width:auto;max-width:none;padding:var(--space-2);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;position:fixed;overflow-x:auto;transform:none}.teacher-shell .question-type-bar::-webkit-scrollbar{display:none}.teacher-shell .question-type-bar button,.teacher-shell .question-type-bar .ui-button{flex:none;min-width:72px}.teacher-shell .exam-builder-page>.page-heading{margin-bottom:var(--space-4)}.teacher-shell .exam-builder-page>.page-heading h1{font-size:var(--font-size-xl)}.teacher-shell .exam-toast{right:var(--space-3);bottom:calc(88px + env(safe-area-inset-bottom,0px));left:var(--space-3)}}
