@font-face{font-family:ExamSolv Noto Nastaliq Urdu;src:url(/fonts/NotoNastaliqUrdu-Regular.ttf)format("truetype");font-display:block;font-style:normal;font-weight:400 900}@font-face{font-family:ExamSolv Amiri;src:url(/fonts/amiri.ttf)format("truetype");font-display:block;font-style:normal;font-weight:400 900}:root{--primary-50:#eef2ff;--primary-100:#e0e7ff;--primary-200:#c7d2fe;--primary-300:#a5b4fc;--primary-400:#818cf8;--primary-500:#6366f1;--primary-600:#4f46e5;--primary-700:#4338ca;--primary-800:#3730a3;--primary-900:#312e81;--accent-400:#22d3ee;--accent-500:#06b6d4;--accent-600:#0891b2;--success-50:#f0fdfa;--success-100:#ccfbf1;--success-200:#99f6e4;--success-500:#14b8a6;--success-600:#0d9488;--success-700:#0f766e;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-200:#fde68a;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#92400e;--danger-50:#fff7ed;--danger-100:#ffedd5;--danger-200:#fed7aa;--danger-500:#f97316;--danger-600:#ea580c;--danger-700:#c2410c;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--gray-950:#020617;--surface-bg:#f8fafc;--surface-card:#fff;--surface-elevated:#fff;--surface-overlay:#0f172a99;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-inverse:#fff;--border-light:#e2e8f0;--border-medium:#cbd5e1;--bg-primary:#fff;--bg-secondary:#f1f5f9;--surface-hover:#f8fafc;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014,0 4px 6px -4px #0000000a;--shadow-xl:0 20px 25px -5px #00000014,0 8px 10px -6px #0000000a;--shadow-glow:0 0 30px #6366f126;--shadow-glow-accent:0 0 30px #06b6d426;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.4s cubic-bezier(.4,0,.2,1);--transition-spring:.5s cubic-bezier(.34,1.56,.64,1);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-urdu:"ExamSolv Noto Nastaliq Urdu","Noto Nastaliq Urdu",serif;--font-urdu-pdf:"ExamSolv Noto Nastaliq Urdu","Noto Nastaliq Urdu",serif;--font-arabic:"ExamSolv Amiri",Amiri,"Noto Naskh Arabic",serif;--font-hindi:"Nirmala UI",Mangal,sans-serif;--font-report-latin:"KaTeX_Main","Times New Roman",serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--report-urdu-line-height:1.95;--result-urdu-line-height:1.9;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625}[data-theme=dark]{--primary-50:#6366f114;--primary-100:#6366f126;--primary-200:#6366f1;--primary-300:#818cf8;--primary-400:#a5b4fc;--primary-500:#818cf8;--primary-600:#a5b4fc;--primary-700:#c7d2fe;--success-50:#14b8a61a;--success-100:#14b8a633;--success-200:#2dd4bf4d;--success-500:#2dd4bf;--success-600:#5eead4;--success-700:#99f6e4;--success-300:#5eead4;--warning-50:#f59e0b1a;--warning-100:#f59e0b33;--warning-200:#fbbf2447;--warning-500:#fbbf24;--warning-600:#fcd34d;--warning-700:#fde68a;--danger-50:#f973161a;--danger-100:#f9731633;--danger-200:#fb923c47;--danger-500:#fb923c;--danger-600:#fdba74;--danger-700:#fed7aa;--gray-50:#0f172a;--gray-100:#1e293b;--gray-200:#334155;--gray-300:#475569;--gray-400:#64748b;--gray-500:#94a3b8;--gray-600:#cbd5e1;--gray-700:#e2e8f0;--gray-800:#f1f5f9;--gray-900:#f8fafc;--surface-bg:#0b1120;--surface-card:#1e293b;--surface-elevated:#1e293b;--surface-overlay:#000000b3;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-inverse:#0f172a;--border-light:#334155;--border-medium:#475569;--bg-primary:#1e293b;--bg-secondary:#334155;--surface-hover:#334155;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #0006,0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -4px #0000004d;--shadow-xl:0 20px 25px -5px #0006,0 8px 10px -6px #0000004d;--shadow-glow:0 0 30px #818cf833;--shadow-glow-accent:0 0 30px #22d3ee33}[data-theme=dark] .app-header{background:#0b1120d9}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .form-textarea,[data-theme=dark] select.form-input{background:var(--gray-100);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus,[data-theme=dark] .form-textarea:focus{border-color:var(--primary-500)}[data-theme=dark] .card,[data-theme=dark] .stat-card{background:var(--surface-card)}[data-theme=dark] .upload-zone{background:var(--gray-100);border-color:var(--border-light)}[data-theme=dark] .upload-zone--active{border-color:var(--primary-500);background:#6366f114}[data-theme=dark] .btn--secondary{background:var(--gray-200);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] .btn--ghost{color:var(--text-secondary)}[data-theme=dark] .btn--ghost:hover{background:var(--gray-200);color:var(--text-primary)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--gray-300)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}[data-theme=dark] .card--glass{background:#1e293bcc;border-color:#33415580}[data-theme=dark] .hero,[data-theme=dark] .features,[data-theme=dark] .pricing{background:var(--surface-bg)}[data-theme=dark] .feature-card,[data-theme=dark] .review-card{background:var(--surface-card)}[data-theme=dark] .review-card__avatar{background:var(--primary-900);color:var(--primary-300)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--surface-bg);min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.app-header{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border-light);background:#fffc;position:sticky;top:0}.app-header__inner{max-width:1200px;padding:0 var(--space-8);justify-content:space-between;align-items:center;height:64px;margin:0 auto;display:flex}.app-header__logo{align-items:center;gap:var(--space-3);font-size:var(--text-xl);color:var(--primary-600);letter-spacing:-.02em;font-weight:800;text-decoration:none;display:flex}.app-header__logo-icon{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.app-header__nav{align-items:center;gap:var(--space-2);display:flex}.app-header__nav-link{padding:var(--space-2)var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);font-weight:500;text-decoration:none}.app-header__nav-link:hover{color:var(--primary-600);background:var(--primary-50)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--primary{background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;box-shadow:var(--shadow-md),0 0 0 0 #6366f100}.btn--primary:hover:not(:disabled){box-shadow:var(--shadow-lg),0 0 20px #6366f14d;transform:translateY(-1px)}.btn--secondary{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-xs)}.btn--secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--border-medium);box-shadow:var(--shadow-sm)}.btn--ghost{color:var(--text-secondary);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--gray-100);color:var(--text-primary)}.btn--danger{background:var(--danger-500);color:#fff}.btn--danger:hover:not(:disabled){background:var(--danger-600);box-shadow:var(--shadow-md),0 0 20px #ef444433}.btn--lg{padding:var(--space-4)var(--space-8);font-size:var(--text-base);border-radius:var(--radius-xl)}.btn--sm{padding:var(--space-2)var(--space-4);font-size:var(--text-xs);border-radius:var(--radius-md)}.btn--full{width:100%}.btn--icon{padding:var(--space-3)}.card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-base);overflow:hidden}.card--hover:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-200);transform:translateY(-2px)}.card--glass{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);background:#ffffffb3;border:1px solid #ffffff4d}.card__body{padding:var(--space-6)}.card__header{padding:var(--space-6);border-bottom:1px solid var(--border-light)}.card__footer{padding:var(--space-4)var(--space-6);border-top:1px solid var(--border-light);background:var(--gray-50)}.upload-zone{border:2px dashed var(--gray-300);border-radius:var(--radius-xl);padding:var(--space-10)var(--space-8);text-align:center;cursor:pointer;transition:all var(--transition-base);background:var(--gray-50);flex-direction:column;justify-content:center;align-items:center;min-height:200px;display:flex;position:relative}.upload-zone:hover{border-color:var(--primary-400);background:var(--primary-50)}.upload-zone--active{border-color:var(--primary-500);background:var(--primary-50);box-shadow:var(--shadow-glow);border-style:solid}.upload-zone--filled{border-color:var(--success-500);background:var(--success-50);border-style:solid}.upload-zone__icon{width:48px;height:48px;margin-bottom:var(--space-4);color:var(--gray-400);transition:color var(--transition-fast)}.upload-zone:hover .upload-zone__icon{color:var(--primary-500)}.upload-zone--filled .upload-zone__icon{color:var(--success-500)}.upload-zone__title{font-size:var(--text-base);color:var(--text-primary);margin-bottom:var(--space-1);overflow-wrap:anywhere;max-width:100%;font-weight:600}.cookie-consent{z-index:10000;gap:var(--space-5);width:100%;padding:var(--space-4)max(var(--space-6),calc((100vw - 1180px)/2));padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));border-top:1px solid var(--border-light);background:var(--surface-card);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -14px 40px #0f172a24}.cookie-consent h2{margin:0 0 var(--space-1);font-size:var(--text-base);color:var(--text-primary);font-weight:800}.cookie-consent p{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.6}.cookie-consent__actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;min-width:min(420px,100%);display:flex}.cookie-consent__choices{gap:var(--space-2);margin-top:var(--space-4);display:grid}.cookie-consent__choices label{gap:var(--space-2);font-size:var(--text-sm);color:var(--text-primary);grid-template-columns:auto 1fr;align-items:start;font-weight:700;display:grid}.cookie-consent__choices span{font-size:var(--text-xs);color:var(--text-tertiary);grid-column:2;margin-top:-4px;font-weight:400}.cookie-settings-button{right:var(--space-4);bottom:max(var(--space-4),env(safe-area-inset-bottom));z-index:9999;padding:var(--space-2)var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-secondary);box-shadow:var(--shadow-md);font-size:var(--text-xs);cursor:pointer;font-weight:700;position:fixed}@media (max-width:700px){.cookie-consent{gap:var(--space-3);padding:var(--space-4);padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));grid-template-columns:1fr;align-items:stretch}.cookie-consent__actions{grid-template-columns:1fr;justify-content:stretch;min-width:0;display:grid}.cookie-consent__actions .btn{justify-content:center;width:100%;min-height:42px}.cookie-consent__choices label{grid-template-columns:22px 1fr}}.upload-zone__subtitle{font-size:var(--text-sm);color:var(--text-tertiary);overflow-wrap:anywhere;max-width:100%}.upload-zone__input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-zone__files{gap:var(--space-1);margin-top:var(--space-3);flex-direction:column;width:100%;display:flex}.upload-zone__file-item{font-size:var(--text-xs);color:var(--success-700);overflow-wrap:anywhere;max-width:100%;font-weight:500}.upload-zone__file-row{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.upload-zone__file-remove{border-radius:var(--radius-full);background:color-mix(in srgb,var(--danger-500)10%,transparent);width:22px;height:22px;color:var(--danger-600);cursor:pointer;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.upload-zone--compact{padding:var(--space-4)var(--space-3)}.upload-zone--compact .upload-zone__title{font-size:var(--text-sm)}.upload-zone--compact .upload-zone__subtitle{font-size:var(--text-xs)}.upload-zone--compact .upload-zone__files{max-height:84px;overflow:auto}.mobile-upload-source{display:none}.mobile-upload-field{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;padding:var(--space-2)var(--space-2)var(--space-2)var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-sm);display:flex}.mobile-upload-field__summary{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:flex}.mobile-upload-field__icon{border-radius:var(--radius-md);background:var(--primary-50);width:40px;height:40px;color:var(--primary-600);flex:none;justify-content:center;align-items:center;display:inline-flex}.mobile-upload-field__text{min-width:0}.mobile-upload-field__label{color:var(--text-primary);font-size:var(--text-sm);overflow-wrap:anywhere;text-wrap:pretty;font-weight:800;line-height:1.3}.mobile-upload-field__helper{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;margin-top:2px;font-weight:600;line-height:1.35}.mobile-upload-field__actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.mobile-upload-field__icon-button{border:1px solid var(--border-light);border-radius:var(--radius-md);background:color-mix(in srgb,var(--gray-50)84%,var(--surface-card));width:44px;height:44px;color:var(--primary-600);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.mobile-upload-field__icon-button:hover:not(:disabled){border-color:var(--primary-300);background:var(--primary-50);color:var(--primary-700)}.mobile-upload-field__icon-button:active:not(:disabled){transform:translateY(1px)}.mobile-upload-field__icon-button:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.mobile-upload-field__icon-button:disabled{cursor:not-allowed;opacity:.56}.mobile-attachment-sheet{z-index:9990;padding:var(--space-4);padding-right:max(var(--space-4),env(safe-area-inset-right,0px));padding-bottom:max(var(--space-4),env(safe-area-inset-bottom,0px));padding-left:max(var(--space-4),env(safe-area-inset-left,0px));justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-attachment-sheet__backdrop{cursor:pointer;animation:mobile-attachment-backdrop-in var(--transition-fast)ease-out;background:#0f172a94;border:0;position:absolute;inset:0}.mobile-attachment-sheet__panel{z-index:1;width:min(100%,440px);max-height:min(78dvh,560px);padding:var(--space-3)var(--space-3)calc(var(--space-3) + env(safe-area-inset-bottom,0px));border:1px solid var(--border-light);border-radius:var(--radius-xl)var(--radius-xl)var(--radius-lg)var(--radius-lg);background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-xl);animation:.19s cubic-bezier(.22,1,.36,1) mobile-attachment-sheet-in;position:relative;overflow:auto}.mobile-attachment-sheet__handle{width:42px;height:4px;margin:0 auto var(--space-3);border-radius:var(--radius-full);background:var(--border-medium)}.mobile-attachment-sheet__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-1)var(--space-3);display:flex}.mobile-attachment-sheet__header h2{color:var(--text-primary);font-size:var(--text-base);margin:0;font-weight:800;line-height:1.3}.mobile-attachment-sheet__close{border:1px solid var(--border-light);border-radius:var(--radius-md);background:color-mix(in srgb,var(--gray-50)84%,var(--surface-card));width:44px;height:44px;color:var(--text-secondary);cursor:pointer;flex:none;justify-content:center;align-items:center;display:inline-flex}.mobile-attachment-sheet__options{gap:var(--space-2);display:grid}.mobile-attachment-sheet__option{align-items:center;gap:var(--space-3);width:100%;min-width:0;min-height:60px;padding:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast);display:flex}.mobile-attachment-sheet__option:hover:not(:disabled),.mobile-attachment-sheet__option:focus-visible{border-color:var(--primary-300);background:var(--primary-50)}.mobile-attachment-sheet__option:focus-visible,.mobile-attachment-sheet__close:focus-visible,.mobile-attachment-sheet__backdrop:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.mobile-attachment-sheet__option:active:not(:disabled){transform:translateY(1px)}.mobile-attachment-sheet__option:disabled{cursor:not-allowed;opacity:.56}.mobile-attachment-sheet__option-icon{border-radius:var(--radius-md);background:var(--primary-50);width:44px;height:44px;color:var(--primary-600);flex:none;justify-content:center;align-items:center;display:inline-flex}.mobile-attachment-sheet__option span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.mobile-attachment-sheet__option strong{color:var(--text-primary);font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:800;line-height:1.25}.mobile-attachment-sheet__option small{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;font-weight:600;line-height:1.35}@keyframes mobile-attachment-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes mobile-attachment-sheet-in{0%{opacity:.92;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.mobile-upload-shell{min-width:0;max-width:100%;display:none}.upload-zone-desktop-frame{display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mobile-upload-source__summary,.mobile-upload-source__actions,.mobile-upload-source__button{min-width:0;max-width:100%}.mobile-upload-source__summary{align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:color-mix(in srgb,var(--gray-50)82%,var(--surface-card));display:flex}.mobile-upload-source__summary-icon{color:var(--primary-500);flex:none;margin-top:2px}.mobile-upload-source--filled .mobile-upload-source__summary-icon{color:var(--success-500)}.mobile-upload-source__title{color:var(--text-primary);font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:800;line-height:1.35}.mobile-upload-source__hint{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;margin-top:2px;line-height:1.45}.mobile-upload-source__files{margin-top:var(--space-2);flex-direction:column;gap:4px;display:flex}.mobile-upload-source__file,.mobile-upload-source__file-row{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.4}.mobile-upload-source__file-row{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.mobile-upload-source__actions{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.mobile-upload-source__button{align-items:center;gap:var(--space-2);width:100%;min-height:64px;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);display:flex}.mobile-upload-source__button:hover{border-color:var(--primary-300);background:var(--primary-50)}.mobile-upload-source__button:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.mobile-upload-source__button:active{transform:translateY(1px)}.mobile-upload-source__button svg{color:var(--primary-500);flex:none}.mobile-upload-source__button span{flex-direction:column;gap:2px;min-width:0;max-width:100%;display:flex}.mobile-upload-source__button strong{font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:800;line-height:1.2}.mobile-upload-source__button small{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;line-height:1.35}.mobile-upload-source__clear{justify-content:center;width:100%}.mobile-upload-source__native-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.mobile-upload-review{gap:var(--space-3);width:100%;min-width:0;max-width:100%;display:grid}.mobile-upload-review__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:color-mix(in srgb,var(--primary-500)7%,var(--surface-card));display:flex}.mobile-upload-review__eyebrow{color:var(--primary-600);font-size:var(--text-xs);text-transform:uppercase;font-weight:800}.mobile-upload-review__header h3{color:var(--text-primary);font-size:var(--text-base);overflow-wrap:anywhere;margin:2px 0;font-weight:800;line-height:1.25}.mobile-upload-review__header p{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;margin:0;font-weight:600}.mobile-upload-review__list{gap:var(--space-2);width:100%;min-width:0;padding-bottom:calc(72px + max(var(--space-4),env(safe-area-inset-bottom,0px)));display:grid}.mobile-upload-review__list--no-sticky{padding-bottom:0}.mobile-upload-review__item{gap:var(--space-2);width:100%;max-width:100%;padding:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);grid-template-columns:76px minmax(0,1fr);min-width:0;display:grid}.mobile-upload-review__preview{aspect-ratio:3/4;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--gray-50);justify-content:center;align-items:center;width:76px;min-width:0;max-width:100%;display:flex;position:relative;overflow:hidden}.mobile-upload-review__preview img{object-fit:cover;width:100%;height:100%}.mobile-upload-review__pdf-icon{color:var(--primary-600);font-size:var(--text-xs);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-weight:900;display:flex}.mobile-upload-review__body{min-width:0;max-width:100%}.mobile-upload-review__item-topline{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--text-xs);flex-wrap:wrap;font-weight:800;display:flex}.mobile-upload-review__item-topline span{overflow-wrap:anywhere;min-width:0}.mobile-upload-review__filename{color:var(--text-primary);font-size:var(--text-xs);-webkit-line-clamp:2;overflow-wrap:anywhere;word-break:break-word;unicode-bidi:plaintext;-webkit-box-orient:vertical;margin-top:4px;font-weight:800;line-height:1.35;display:-webkit-box;overflow:hidden}.mobile-upload-review__meta{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;margin-top:3px;font-weight:600}.mobile-upload-review__error{margin-top:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--danger-50);color:var(--danger-600);font-size:var(--text-xs);overflow-wrap:anywhere;font-weight:700;line-height:1.4}.mobile-upload-reliability{gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5;display:grid}.mobile-upload-reliability h3{color:var(--text-primary);font-size:var(--text-base);margin:0 0 2px;line-height:1.25}.mobile-upload-reliability p{margin:0}.mobile-upload-reliability--restore{border-color:var(--primary-200);background:color-mix(in srgb,var(--primary-500)7%,var(--surface-card))}.mobile-upload-reliability--offline{border-color:var(--warning-200);background:var(--warning-50);color:var(--warning-700);font-weight:700}.mobile-upload-reliability--notice{background:var(--gray-50)}.mobile-upload-reliability__actions{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mobile-upload-reliability__actions .btn{justify-content:center;min-height:44px}.mobile-upload-validation{gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--danger-200);border-radius:var(--radius-md);background:var(--danger-50);color:var(--danger-700);display:grid}.mobile-upload-validation__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.mobile-upload-validation__header h3{color:var(--danger-700);font-size:var(--text-sm);margin:0 0 2px;font-weight:800;line-height:1.3}.mobile-upload-validation__header p{color:var(--danger-700);font-size:var(--text-xs);margin:0;line-height:1.45}.mobile-upload-validation__header .btn{flex:none;min-height:44px}.mobile-upload-validation__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.mobile-upload-validation__list li{min-width:0;padding:var(--space-2);border:1px solid var(--danger-100);border-radius:var(--radius-sm);background:var(--surface-card);gap:3px;display:grid}.mobile-upload-validation__list span,.mobile-upload-validation__list strong,.mobile-upload-validation__list small{overflow-wrap:anywhere;unicode-bidi:plaintext;min-width:0}.mobile-upload-validation__list span{color:var(--text-primary);font-size:var(--text-xs);font-weight:800}.mobile-upload-validation__list strong{color:var(--danger-700);font-size:var(--text-xs);line-height:1.35}.mobile-upload-validation__list small{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.35}.mobile-upload-progress{gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--primary-100);border-radius:var(--radius-md);background:color-mix(in srgb,var(--primary-500)6%,var(--surface-card));display:grid}.mobile-upload-progress__topline{justify-content:space-between;gap:var(--space-3);color:var(--text-secondary);font-size:var(--text-xs);flex-wrap:wrap;font-weight:800;line-height:1.35;display:flex}.mobile-upload-progress__topline span{overflow-wrap:anywhere;min-width:0}.mobile-upload-progress__bar,.mobile-upload-review__item-progress{border-radius:var(--radius-full);background:var(--gray-100);width:100%;height:7px;overflow:hidden}.mobile-upload-progress__bar span,.mobile-upload-review__item-progress span{border-radius:inherit;background:var(--primary-500);height:100%;display:block}.mobile-upload-progress__failure{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--danger-600);font-size:var(--text-xs);flex-wrap:wrap;min-width:0;font-weight:800;display:flex}.mobile-upload-progress__failure span{overflow-wrap:anywhere;min-width:0}.mobile-upload-progress__failure .btn{min-height:44px}.check-inline-progress{width:100%;height:6px;margin-top:var(--space-2);border-radius:var(--radius-full);background:var(--gray-100);overflow:hidden}.check-inline-progress__fill{border-radius:inherit;transform-origin:0;width:100%;height:100%;transition:transform .3s;display:block}@media (prefers-reduced-motion:reduce){.mobile-upload-field__icon-button,.mobile-attachment-sheet__backdrop,.mobile-attachment-sheet__panel,.mobile-attachment-sheet__option{transition-duration:.01ms!important;animation-duration:.01ms!important}.check-inline-progress__fill{transition:none}}.mobile-upload-review__status{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-2);color:var(--text-tertiary);font-size:var(--text-xs);text-transform:none;flex-wrap:wrap;min-width:0;font-weight:800;display:flex}.mobile-upload-review__status span{overflow-wrap:anywhere;min-width:0}.mobile-upload-review__status--preparing,.mobile-upload-review__status--uploading{color:var(--primary-600)}.mobile-upload-review__status--ready{color:var(--text-secondary)}.mobile-upload-review__status--uploaded{color:var(--success-600)}.mobile-upload-review__status--failed{color:var(--danger-600)}.mobile-upload-review__status--cancelled{color:var(--warning-700)}.mobile-upload-review__item-progress{height:5px;margin-top:var(--space-2)}.mobile-upload-review__controls{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:6px;min-width:0;display:grid}.mobile-upload-review__controls button{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--gray-50)84%,var(--surface-card));min-width:0;min-height:40px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.mobile-upload-review__control-label{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mobile-upload-review__controls button:hover:not(:disabled){border-color:var(--primary-200);background:var(--primary-50);color:var(--text-primary)}.mobile-upload-review__controls button:active:not(:disabled){transform:translateY(1px)}.mobile-upload-review__controls button:disabled{cursor:not-allowed;opacity:.55}.mobile-upload-review__controls button:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.mobile-upload-review__add-more{margin-top:var(--space-1)}.mobile-upload-review__sticky-action{z-index:20;gap:var(--space-2);padding:var(--space-2)0 max(var(--space-2),env(safe-area-inset-bottom));background:linear-gradient(to top,var(--surface-bg)78%,transparent);display:grid;position:sticky;bottom:0}.mobile-upload-review__sticky-action .btn{justify-content:center;width:100%;min-height:48px}.mobile-upload-review-modal{z-index:10000;color:#fff;background:#020617eb;flex-direction:column;display:flex;position:fixed;inset:0}.mobile-upload-review-modal__bar{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:calc(env(safe-area-inset-top,0px) + var(--space-4))var(--space-4)var(--space-3);border-bottom:1px solid #ffffff1f;display:flex}.mobile-upload-review-modal__title-group{flex-direction:column;gap:2px;min-width:0;display:flex}.mobile-upload-review-modal__title-group h2{color:#fff;font-size:var(--text-base);overflow-wrap:anywhere;unicode-bidi:plaintext;outline:none;margin:0;line-height:1.3}.mobile-upload-review-modal__title-group p{color:#e2e8f0c7;font-size:var(--text-xs);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.4}.mobile-upload-review-modal__icon-button{border-radius:var(--radius-lg);color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.mobile-upload-review-modal__icon-button:focus-visible,.mobile-upload-review-modal__actions button:focus-visible,.mobile-upload-review-modal__confirm .btn:focus-visible{outline:2px solid var(--primary-300);outline-offset:2px}.mobile-upload-review-modal__body{min-height:0;padding:var(--space-4);flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.mobile-upload-review-modal__body img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;height:auto}.mobile-upload-review-modal__body iframe{border-radius:var(--radius-md);background:#fff;border:0;width:100%;height:100%;min-height:70vh}.mobile-upload-review-modal__confirm{gap:var(--space-2);padding:var(--space-3)var(--space-4);border-top:1px solid var(--danger-500);background:var(--danger-700);color:var(--danger-50);font-size:var(--text-sm);font-weight:800;line-height:1.45;display:grid}.mobile-upload-review-modal__confirm span{overflow-wrap:anywhere;unicode-bidi:plaintext}.mobile-upload-review-modal__confirm div{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mobile-upload-review-modal__confirm .btn{white-space:normal;min-height:44px}.mobile-upload-review-modal__actions{gap:var(--space-2);padding:var(--space-3)var(--space-4)calc(env(safe-area-inset-bottom,0px) + var(--space-4));background:#0f172af5;border-top:1px solid #ffffff1f;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.mobile-upload-review-modal__actions button{min-width:0;min-height:44px;padding:var(--space-2);border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-xs);white-space:normal;background:#ffffff14;border:1px solid #ffffff29;justify-content:center;align-items:center;gap:6px;font-weight:800;line-height:1.2;display:inline-flex}.mobile-upload-review-modal__actions button:disabled{cursor:not-allowed;opacity:.5}@media (prefers-reduced-motion:reduce){.mobile-upload-review-modal,.mobile-upload-review-modal *,.mobile-upload-review-modal :before,.mobile-upload-review-modal :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.mobile-capture-session{z-index:10000;color:#fff;background:linear-gradient(#080d18fa,#0f172af5);flex-direction:column;width:100%;min-width:0;max-width:100vw;min-height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.mobile-capture-session__bar{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:calc(env(safe-area-inset-top,0px) + var(--space-4))var(--space-4)var(--space-3);border-bottom:1px solid #ffffff1f;display:flex}.mobile-capture-session__bar>div{min-width:0}.mobile-capture-session__eyebrow{color:#93c5fdf5;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0;font-weight:800}.mobile-capture-session__bar h2{color:#fff;font-size:var(--text-xl);outline:none;margin:2px 0;line-height:1.18}.mobile-capture-session__bar p{color:#e2e8f0c7;font-size:var(--text-sm);overflow-wrap:anywhere;margin:0;line-height:1.45}.mobile-capture-session__icon-button{border-radius:var(--radius-lg);color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.mobile-capture-session__icon-button:focus-visible,.mobile-capture-session__actions .btn:focus-visible{outline-offset:2px;outline:2px solid #93c5fdfa}.mobile-capture-session__icon-button:disabled{cursor:not-allowed;opacity:.55}.mobile-capture-session__body{gap:var(--space-2);min-height:0;padding:var(--space-4);padding-bottom:var(--space-3);flex:1;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;overflow:hidden auto}.mobile-capture-session__count{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);color:#eff6fff5;font-size:var(--text-sm);background:#1e40af38;border:1px solid #93c5fd38;flex-wrap:wrap;font-weight:800;display:flex}.mobile-capture-session__count span{min-width:0}.mobile-capture-session__error{padding:var(--space-3);border-radius:var(--radius-lg);color:#fee2e2;font-size:var(--text-sm);background:#7f1d1db8;border:1px solid #fca5a557;line-height:1.5}.mobile-capture-session__preview{border-radius:var(--radius-xl);background:#0206179e;border:1px solid #ffffff21;justify-content:center;align-items:center;min-height:220px;max-height:min(50dvh,480px);display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #0f172a47}.mobile-capture-session__preview img{object-fit:contain;width:100%;height:100%}.mobile-capture-session__placeholder{justify-content:center;align-items:center;gap:var(--space-3);width:100%;min-height:220px;padding:var(--space-6);color:#e2e8f0d6;text-align:center;font-size:var(--text-sm);flex-direction:column;line-height:1.5;display:flex}.mobile-capture-session__status{color:#e2e8f0e0;min-height:22px;font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.5}.mobile-capture-session__actions{gap:var(--space-3);padding:var(--space-3)var(--space-4)calc(env(safe-area-inset-bottom,0px) + var(--space-4));background:#0f172af5;border-top:1px solid #ffffff1f;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mobile-capture-session__actions .btn{white-space:normal;justify-content:center;width:100%;min-width:0;min-height:48px}.mobile-capture-session__actions .btn:disabled{cursor:not-allowed;opacity:.55}.stepper{padding:var(--space-6)0;justify-content:center;align-items:center;gap:0;display:flex}.stepper__step{align-items:center;gap:var(--space-3);display:flex}.stepper__circle{border-radius:var(--radius-full);width:40px;height:40px;font-size:var(--text-sm);border:2px solid var(--gray-300);color:var(--gray-400);background:var(--surface-card);transition:all var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.stepper__circle--active{border-color:var(--primary-500);background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;box-shadow:0 0 20px #6366f14d}.stepper__circle--completed{border-color:var(--success-500);background:var(--success-500);color:#fff}.stepper__label{font-size:var(--text-sm);color:var(--gray-400);transition:color var(--transition-fast);font-weight:600}.stepper__label--active{color:var(--primary-600)}.stepper__label--completed{color:var(--success-600)}.stepper__connector{background:var(--gray-200);width:80px;height:2px;margin:0 var(--space-4);border-radius:var(--radius-full);flex-shrink:0;overflow:hidden}.stepper__connector--completed{background:var(--success-500)}.badge{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;font-weight:700;display:inline-flex}.badge--primary{background:var(--primary-100);color:var(--primary-700)}.badge--success{background:var(--success-100);color:var(--success-700)}.badge--warning{background:var(--warning-100);color:var(--warning-600)}.badge--danger{background:var(--danger-100);color:var(--danger-600)}.badge--neutral{background:var(--gray-100);color:var(--gray-600)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.form-label__hint{color:var(--text-tertiary);margin-left:var(--space-2);font-weight:400}.form-input,.form-select,.input{padding:var(--space-3)var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);transition:all var(--transition-fast);outline:none;width:100%}.form-input:focus,.form-select:focus,.input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #6366f11a}.form-select{appearance:none;padding-right:var(--space-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.score-ring{aspect-ratio:1;flex:none;justify-content:center;align-items:center;max-width:100%;display:inline-flex;position:relative}.score-ring__svg{transform:rotate(-90deg)}.score-ring__track{fill:none;stroke:var(--gray-200)}.score-ring__fill{fill:none;stroke-linecap:round;transition:stroke-dashoffset 1.5s cubic-bezier(.4,0,.2,1)}.score-ring__text{text-align:center;position:absolute}.score-ring__value{font-size:var(--text-3xl);color:var(--text-primary);font-weight:900;line-height:1}.score-ring__label{font-size:var(--text-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;max-width:88px;margin:var(--space-1)auto 0;overflow-wrap:anywhere;font-weight:500;line-height:1.25}.question-result{padding:var(--space-5)var(--space-6);border-bottom:1px solid var(--border-light);transition:background var(--transition-fast)}.question-result:last-child{border-bottom:none}.question-result:hover{background:var(--gray-50)}.question-result__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.question-result__number{font-size:var(--text-sm);color:var(--text-primary);font-weight:700}.question-result__marks{font-size:var(--text-xs);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);flex-shrink:0;font-weight:700}.question-result__marks--full{background:var(--success-100);color:var(--success-700)}.question-result__marks--partial{background:var(--warning-100);color:var(--warning-600)}.question-result__marks--zero{background:var(--danger-100);color:var(--danger-600)}.question-result__feedback{gap:var(--space-3);flex-direction:column;display:flex}.question-result__feedback-row{align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);line-height:var(--leading-relaxed);display:flex}.question-result__feedback-icon{flex-shrink:0;width:18px;height:18px;margin-top:2px}.question-result__feedback-text{color:var(--text-secondary)}.assessment-result-language-surface{max-width:100%;font-family:var(--font-sans);text-align:left;line-height:var(--leading-normal);letter-spacing:normal;word-spacing:normal;font-kerning:normal;font-feature-settings:normal;font-variation-settings:normal;text-rendering:optimizeLegibility;direction:ltr}.assessment-result-language-surface[lang=en]{font-family:var(--font-sans);text-align:left;direction:ltr}.assessment-result-language-surface[lang=ur-PK]{font-family:var(--font-urdu);text-align:right;line-height:var(--result-urdu-line-height);direction:rtl}.assessment-result-ui-label,.assessment-result-language-surface [lang=en]{font-family:var(--font-sans);text-align:left;letter-spacing:normal;word-spacing:normal;direction:ltr;unicode-bidi:isolate}.result-section-heading{align-items:center;gap:var(--space-2);min-width:0;line-height:1.35;display:flex}.result-section-heading__icon{flex:none}.result-section-heading__text{overflow-wrap:break-word;word-break:normal;min-width:0}.assessment-rich-text{overflow-wrap:break-word;word-break:normal;white-space:pre-wrap;max-width:100%;line-height:inherit}.assessment-rich-text[lang=en]{font-family:var(--font-sans);text-align:left;direction:ltr}.assessment-rich-text[lang=ur-PK]{font-family:var(--font-urdu);text-align:right;line-height:var(--result-urdu-line-height);direction:rtl}.report-math-inline,.report-math-display{max-width:100%;color:var(--text-primary);overflow-wrap:normal;text-align:left;direction:ltr;unicode-bidi:isolate;font-family:KaTeX_Main,KaTeX_Math,serif}.report-technical-isolate{text-align:left;white-space:break-spaces;overflow-wrap:anywhere;word-break:normal;font-family:var(--font-report-latin);letter-spacing:normal;word-spacing:normal;font-kerning:normal;direction:ltr;unicode-bidi:isolate}.report-math-inline{vertical-align:-.08em;white-space:nowrap;padding:0 .08em;display:inline-block}.report-math-display{width:100%;margin:var(--space-3)0;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-elevated);text-align:center;-webkit-overflow-scrolling:touch;display:block;overflow:auto hidden}.report-math-display .katex-display{margin:0}.report-math-display .katex{white-space:normal;max-width:100%}.report-math-inline .katex{font-size:1em}.report-math-fallback{font-family:Cambria Math,STIX Two Math,Times New Roman,serif;line-height:1.5}@media print{.report-math-display{break-inside:avoid;background:0 0;overflow:visible}}.student-report-preview-page{min-width:0;padding:var(--space-6);background:var(--surface-bg)}.student-report-preview-toolbar{width:min(1120px,100%);margin:0 auto var(--space-4);justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.student-report-preview-toolbar__link,.student-report-preview-toolbar__button{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border-light);background:var(--surface-card);color:var(--text-primary);font-size:var(--text-sm);box-shadow:var(--shadow-xs);font-weight:700;text-decoration:none;display:inline-flex}.student-report-preview-toolbar__button{cursor:pointer}.student-report-preview-toolbar__link:focus-visible,.student-report-preview-toolbar__button:focus-visible{outline-offset:2px;outline:3px solid #6366f159}.student-report-preview-state{width:min(720px,100%);min-height:180px;margin:var(--space-10)auto;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-6);border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--surface-card);color:var(--text-secondary);text-align:center;display:flex}.student-report-preview-state--error{color:#9a3412;background:#fff7ed;border-color:#f9731659}.student-report-internal-print-page{min-width:0;padding:var(--space-6);background:#fff}.student-report-pdf-header{width:min(1120px,100%);margin:0 auto var(--space-3);color:var(--text-secondary);font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.4}.student-report-pdf-header strong{color:var(--text-primary)}.student-report-pdf-footer{display:none}.student-evaluation-report{--report-ink:#0f172a;--report-muted:#475569;--report-soft:#64748b;--report-border:#dbe3ef;--report-sheet:#fff;--report-wash:#f8fafc;--report-primary:#4338ca;--report-primary-soft:#eef2ff;--report-success:#0f766e;--report-success-soft:#ccfbf1;--report-warning:#92400e;--report-warning-soft:#fef3c7;--report-danger:#c2410c;--report-danger-soft:#ffedd5;--report-info:#0369a1;--report-info-soft:#e0f2fe;border:1px solid var(--report-border);border-radius:var(--radius-xl);background:var(--report-sheet);width:min(1120px,100%);color:var(--report-ink);box-shadow:var(--shadow-sm);font-family:var(--font-report-latin);font-size:var(--text-base);letter-spacing:normal;word-spacing:normal;font-kerning:normal;font-feature-settings:normal;font-variation-settings:normal;text-rendering:optimizeLegibility;overflow-wrap:break-word;word-break:normal;margin:0 auto;padding:clamp(1rem,2.5vw,2rem);line-height:1.62}.student-evaluation-report *,.student-evaluation-report :before,.student-evaluation-report :after{box-sizing:border-box;min-width:0}.student-evaluation-report[dir=rtl]{line-height:var(--report-urdu-line-height);text-align:right}.student-evaluation-report[lang=en]{font-family:var(--font-report-latin);text-align:left;direction:ltr}.student-evaluation-report[lang=ur-PK]{font-family:var(--font-urdu);text-align:right;line-height:var(--report-urdu-line-height);direction:rtl}.student-evaluation-report:lang(ur),.assessment-result-language-surface:lang(ur){font-family:var(--font-urdu)}.student-evaluation-report:lang(ar),.assessment-result-language-surface:lang(ar){font-family:var(--font-arabic)}.student-evaluation-report:lang(hi),.assessment-result-language-surface:lang(hi){font-family:var(--font-hindi)}[data-theme=dark] .student-evaluation-report{--report-ink:#f1f5f9;--report-muted:#cbd5e1;--report-soft:#94a3b8;--report-border:#475569;--report-sheet:#1e293b;--report-wash:#0f172a;--report-primary:#c7d2fe;--report-primary-soft:#6366f12e;--report-success:#99f6e4;--report-success-soft:#14b8a62e;--report-warning:#fde68a;--report-warning-soft:#f59e0b29;--report-danger:#fed7aa;--report-danger-soft:#f9731629;--report-info:#bae6fd;--report-info-soft:#0ea5e929;box-shadow:var(--shadow-md)}.language-selector{width:min(100%,25rem);position:relative}.student-report-language-toolbar{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);padding-block:var(--space-3);border-block:1px solid var(--border-light);display:flex}.student-report-language-toolbar>div:first-child{gap:var(--space-1);max-width:65ch;display:grid}.student-report-language-toolbar strong{color:var(--text-primary);font-size:var(--text-sm)}.student-report-language-toolbar span{color:var(--text-secondary);font-size:var(--text-xs)}@media (max-width:760px){.student-report-language-toolbar{flex-direction:column}.student-report-language-toolbar .language-selector{width:100%}}.language-selector__trigger,.language-selector__list [role=option]{border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--surface-card);width:100%;min-height:44px;color:var(--text-primary);cursor:pointer}.language-selector__trigger{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);text-align:start;grid-template-columns:minmax(0,1fr) auto auto;display:grid}.language-selector__trigger>span:first-child,.language-selector__names{min-width:0;display:grid}.language-selector small{color:var(--text-tertiary)}.language-selector__badge,.language-selector__capabilities span{background:var(--gray-100);color:var(--text-secondary);white-space:nowrap;border-radius:999px;padding:.15rem .45rem;font-size:.7rem}.language-selector__badge--verified{background:var(--success-100);color:var(--success-700)}.language-selector__panel{margin-top:var(--space-2);border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-lg);padding:var(--space-2)}.language-selector__search{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex}.language-selector__search input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:0;flex:1}.language-selector__list{max-height:17.5rem;margin:var(--space-2)0 0;overscroll-behavior:contain;padding:0;list-style:none;display:grid;overflow-y:auto}.language-selector__list li.is-active,.language-selector__list [role=option]:hover,.language-selector__list [role=option]:focus-visible{border-color:var(--primary-400);background:var(--primary-50);outline:none}.language-selector__list [role=option]{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:var(--space-2);text-align:start;grid-template-columns:1.25rem minmax(0,1fr) auto;display:grid}.language-selector__check{color:var(--primary-600)}.language-selector__capabilities{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:flex}.language-selector__empty{padding:var(--space-4);color:var(--text-secondary);text-align:center}@media (max-width:430px){.language-selector,.language-selector__trigger{width:100%}.language-selector__list [role=option]{grid-template-columns:1.25rem minmax(0,1fr)}.language-selector__capabilities{grid-column:2;justify-content:flex-start}.student-evaluation-report:lang(ur) .student-report-brand__text h1,.student-evaluation-report:lang(ar) .student-report-brand__text h1{overflow-wrap:anywhere;max-width:100%;font-size:clamp(1.25rem,7vw,1.75rem)}}.student-evaluation-report h1,.student-evaluation-report h2,.student-evaluation-report h3,.student-evaluation-report h4,.student-evaluation-report h5,.student-evaluation-report p,.student-evaluation-report dl,.student-evaluation-report ul,.student-evaluation-report ol,.student-evaluation-report table{margin:0}.student-evaluation-report h1,.student-evaluation-report h2,.student-evaluation-report h3,.student-evaluation-report h4,.student-evaluation-report h5{color:var(--report-ink);letter-spacing:0;text-wrap:balance}.student-report-header{justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:2px solid var(--report-border);display:flex}.student-report-brand{align-items:flex-start;gap:var(--space-3);display:flex}.student-report-brand__logo{border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-primary-soft);width:56px;height:56px;color:var(--report-primary);flex:0 0 56px;place-items:center;display:grid;overflow:hidden}.student-report-brand__logo img{object-fit:contain;width:100%;height:100%}.student-report-brand__text{gap:.15rem;display:grid}.student-report-brand__text h1{font-size:var(--text-2xl);font-weight:800;line-height:1.2}.student-report-brand__text p,.student-report-section__heading p,.student-report-performance__intro p,.student-report-empty-text,.student-report-inline-note{color:var(--report-muted);font-size:var(--text-sm)}.student-report-brand__eyebrow,.student-report-section-label{color:var(--report-soft);font-size:var(--text-xs);text-transform:uppercase;font-weight:800}.student-report-header__status,.student-report-question__badges{justify-content:flex-end;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.student-report-language{border:1px solid var(--report-border);border-radius:var(--radius-full);min-height:28px;color:var(--report-muted);font-size:var(--text-xs);align-items:center;padding:.2rem .55rem;font-weight:800;display:inline-flex}.student-report-badge{border-radius:var(--radius-full);min-height:28px;font-size:var(--text-xs);white-space:normal;border:1px solid;align-items:center;gap:.35rem;padding:.2rem .6rem;font-weight:800;line-height:1.25;display:inline-flex}.student-report-badge--success{color:var(--report-success);background:var(--report-success-soft)}.student-report-badge--warning{color:var(--report-warning);background:var(--report-warning-soft)}.student-report-badge--danger{color:var(--report-danger);background:var(--report-danger-soft)}.student-report-badge--info{color:var(--report-info);background:var(--report-info-soft)}.student-report-badge--neutral{color:var(--report-muted);background:var(--report-wash)}.student-report-title-row,.student-report-identity,.student-report-performance{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-wash);display:flex}.student-report-title-row{align-items:center}.student-report-title-row h2,.student-report-identity h2,.student-report-performance h2{font-size:var(--text-xl);font-weight:800}.student-report-identity{align-items:flex-start}.student-report-identity__grid,.student-report-performance__metrics{gap:var(--space-3);display:grid}.student-report-identity__grid{grid-template-columns:repeat(2,minmax(150px,1fr));width:min(650px,100%)}.student-report-identity__grid div,.student-report-metric{padding:var(--space-3);border:1px solid var(--report-border);border-radius:var(--radius-md);background:var(--report-sheet)}.student-report-identity dt,.student-report-metric dt{color:var(--report-soft);font-size:var(--text-xs);font-weight:800}.student-report-identity dd,.student-report-metric dd{color:var(--report-ink);margin:0;font-weight:800}.student-report-metric dd{font-size:var(--text-2xl);line-height:1.2}.student-report-metric p{color:var(--report-muted);font-size:var(--text-sm)}.student-report-performance{align-items:stretch}.student-report-performance__intro{align-items:flex-start;gap:var(--space-3);max-width:310px;display:flex}.student-report-performance__intro svg{color:var(--report-primary);flex:none;margin-top:.2rem}.student-report-performance__metrics{flex:1;grid-template-columns:repeat(3,minmax(120px,1fr))}.student-evaluation-report--capture .student-report-performance{flex-direction:column}.student-evaluation-report--capture .student-report-performance__intro{max-width:none}.student-evaluation-report--capture .student-report-performance__metrics{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.student-report-notices{gap:var(--space-3);margin-top:var(--space-4);display:grid}.student-report-draft-notice{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:2px solid var(--report-warning);border-radius:var(--radius-lg);background:var(--report-warning-soft);color:var(--report-warning);display:flex}.student-report-draft-notice>svg{flex:none;margin-top:.15rem}.student-report-draft-notice h2{font-size:var(--text-lg)}.student-report-draft-notice h3{margin-top:var(--space-3);font-size:var(--text-sm)}.student-report-draft-notice ul{gap:var(--space-1)var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;padding-inline-start:1.2rem;display:flex}.student-report-notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);border:1px solid;display:flex}.student-report-notice h2{font-size:var(--text-base);font-weight:800}.student-report-notice p{color:inherit;font-size:var(--text-sm)}.student-report-notice--success{color:var(--report-success);background:var(--report-success-soft)}.student-report-notice--warning{color:var(--report-warning);background:var(--report-warning-soft)}.student-report-notice--info{color:var(--report-info);background:var(--report-info-soft)}.student-report-section{margin-top:var(--space-6)}.student-report-section__heading{margin-bottom:var(--space-3);gap:.2rem;display:grid}.student-report-section__heading h2{font-size:var(--text-xl);font-weight:800}.student-report-snapshot,.student-report-overall,.student-report-empty-state{padding:var(--space-4);border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-wash)}.student-report-snapshot{color:var(--report-ink);font-size:var(--text-base);font-weight:650}.student-report-insight-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-report-insight-panel{padding:var(--space-4);border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-sheet)}.student-report-insight-panel h3,.student-report-overall h3{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:1rem;font-weight:800;display:flex}.student-report-insight-panel h3 svg{color:var(--report-primary)}.student-report-insight-panel ul,.student-report-action-list,.student-report-question-list,.student-report-loss-list,.student-report-overall ul,.student-report-rubric-list,.student-report-evidence-quotes ul,.student-report-deductions ul,.student-report-evidence-list ul,.student-report-limitation-list ul{padding:0;list-style:none}.student-report-insight-panel li,.student-report-action-list li,.student-report-rubric-list li,.student-report-evidence-quotes li,.student-report-deductions li{padding:var(--space-3)0;border-top:1px solid var(--report-border);gap:.2rem;display:grid}.student-report-insight-panel li:first-child,.student-report-action-list li:first-child,.student-report-rubric-list li:first-child,.student-report-evidence-quotes li:first-child,.student-report-deductions li:first-child{border-top:0;padding-top:0}.student-report-action-list{gap:var(--space-3);display:grid}.student-report-subheading,.student-report-performance-table-group>h3,.student-report-action-summary h3{font-size:var(--text-base);font-weight:800;margin-bottom:var(--space-2)!important}.student-report-action-summary{gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-wash);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-report-action-summary ul{margin:0;padding-inline-start:1.2rem}.student-report-performance-table-group+.student-report-performance-table-group{margin-top:var(--space-4)}.student-report-performance-table-group>p{margin-bottom:var(--space-2);color:var(--report-muted);font-size:var(--text-sm)}.student-report-action-list li{padding:var(--space-3);border:1px solid var(--report-border);border-radius:var(--radius-md);grid-template-columns:minmax(120px,auto) 1fr;align-items:start}.student-report-action-priority{border-radius:var(--radius-full);width:fit-content;font-size:var(--text-xs);padding:.2rem .5rem;font-weight:800;display:inline-flex}.student-report-action-priority--high{color:var(--report-danger);background:var(--report-danger-soft)}.student-report-action-priority--medium{color:var(--report-warning);background:var(--report-warning-soft)}.student-report-action-priority--low{color:var(--report-info);background:var(--report-info-soft)}.student-report-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.student-report-table{border-collapse:collapse;border:1px solid var(--report-border);border-radius:var(--radius-md);width:100%;min-width:680px;font-size:var(--text-sm);overflow:hidden}.student-report-table caption{text-align:start;color:var(--report-soft);font-size:var(--text-xs);padding-bottom:var(--space-2);font-weight:800}.student-report-table th,.student-report-table td{padding:var(--space-3);border-bottom:1px solid var(--report-border);text-align:start;vertical-align:top}.student-report-table thead th{background:var(--report-wash);color:var(--report-muted);font-size:var(--text-xs);font-weight:800}.student-report-progress{gap:.35rem;min-width:130px;display:grid}.student-report-progress__track{border-radius:var(--radius-full);background:#e2e8f0;width:100%;height:8px;display:block;position:relative;overflow:hidden}.student-report-progress__fill{border-radius:inherit;background:var(--report-primary);transform:scaleX(var(--report-progress-scale,0));transform-origin:0;display:block;position:absolute;inset:0}.student-evaluation-report[dir=rtl] .student-report-progress__fill{transform-origin:100%}.student-report-loss-list,.student-report-question-list{gap:var(--space-4);display:grid}.student-report-loss-item,.student-report-question{border:1px solid var(--report-border);border-radius:var(--radius-lg);background:var(--report-sheet)}.student-report-question--focused .student-report-question__body{gap:var(--space-2);padding:var(--space-3)var(--space-4)}.student-report-correct-summary{padding:var(--space-3)var(--space-4);border:1px solid var(--report-border);border-radius:var(--radius-md);background:var(--report-success-soft);color:var(--report-success);margin-bottom:var(--space-3)!important}.student-report-loss-item{gap:var(--space-3);padding:var(--space-4);display:grid}.student-report-loss-item__top,.student-report-question__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.student-report-loss-item h3,.student-report-question h3{font-size:var(--text-lg);font-weight:850}.student-report-question__header{padding:var(--space-4);border-bottom:1px solid var(--report-border);background:var(--report-wash)}.student-report-question__topic{color:var(--report-muted);font-size:.88rem}.student-report-question__marks{border-radius:var(--radius-full);background:var(--report-ink);color:#fff;min-height:28px;font-size:var(--text-sm);justify-content:center;align-items:center;padding:.2rem .6rem;font-weight:850;display:inline-flex}.student-report-question__body{gap:var(--space-3);padding:var(--space-4);display:grid}.student-report-question__panel{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--report-border);border-radius:var(--radius-md);background:#fff;display:grid}.student-report-question__panel h4,.student-report-evidence-list h4,.student-report-evidence-quotes h5,.student-report-deductions h5{color:var(--report-muted);font-size:var(--text-sm);font-weight:850}.student-report-question__panel--notice{background:#fffbeb;border-color:#f59e0b73}.student-report-full-answer{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--report-border);display:grid}.student-report-evaluation-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-report-evidence-list{gap:var(--space-2);display:grid}.student-report-evidence-list li,.student-report-overall li{color:var(--report-muted);padding-inline-start:1.15rem;position:relative}.student-report-evidence-list li:before,.student-report-overall li:before{content:"";inset-inline-start:0;border-radius:var(--radius-full);background:currentColor;width:.38rem;height:.38rem;position:absolute;top:.72em}.student-report-improvement,.student-report-review-note,.student-report-limitation-list{align-items:flex-start;gap:var(--space-2);color:var(--report-muted);display:flex}.student-report-improvement svg{color:var(--report-info);flex:none;margin-top:.2rem}.student-report-review-note,.student-report-limitation-list{color:var(--report-warning);font-size:var(--text-sm)}.student-report-rubric-list,.student-report-evidence-quotes,.student-report-deductions{gap:var(--space-2);display:grid}.student-report-rubric-list li{grid-template-columns:auto 1fr;align-items:start}.student-report-deductions li strong{color:var(--report-danger)}.student-report-deductions li span{color:var(--report-muted);font-size:var(--text-sm)}.student-report-overall{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-report-footer{gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-5);border-top:2px solid var(--report-border);display:grid}.student-report-signatures{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-report-signatures div{gap:var(--space-2);display:grid}.student-report-signatures span{border-bottom:1px solid var(--report-ink);height:42px;display:block}.student-report-signatures p,.student-report-footer__meta{color:var(--report-muted);font-size:var(--text-sm)}.student-report-footer__meta{gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;display:flex}.student-report-rich-text{white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;max-width:100%;line-height:inherit;display:inline}.student-report-rich-text[lang=en]{font-family:var(--font-report-latin);text-align:left;direction:ltr}.student-report-rich-text[lang=ur-PK]{font-family:var(--font-urdu);text-align:right;line-height:var(--report-urdu-line-height);direction:rtl}.student-report-rich-text--muted{color:var(--report-muted);font-size:var(--text-sm)}.student-report-rich-text--strong{color:var(--report-ink);font-weight:700}.student-report-rich-text .report-math-display{background:var(--report-wash)}.legacy-student-report{--legacy-report-ink:#111827;--legacy-report-muted:#4b5563;--legacy-report-line:#cbd5e1;--legacy-report-soft-line:#e5e7eb;--legacy-report-wash:#f8fafc;width:min(100%,210mm);color:var(--legacy-report-ink);border:1px solid var(--legacy-report-line);font-family:var(--font-report-latin);text-rendering:optimizeLegibility;font-synthesis:none;background:#fff;margin:0 auto;padding:16mm 18mm;font-size:10.5pt;line-height:1.48}.legacy-student-report:lang(ur){font-family:var(--font-urdu-pdf);font-size:11pt;line-height:1.95}.legacy-student-report:lang(ar){font-family:var(--font-arabic);font-size:11pt;line-height:1.78}.legacy-student-report *{box-sizing:border-box}.legacy-report-header{border-bottom:1.5pt solid var(--legacy-report-ink);grid-template-columns:minmax(0,1fr) minmax(56mm,.7fr);align-items:start;gap:10mm;padding-bottom:7mm;display:grid}.legacy-report-school{align-items:flex-start;gap:4mm;display:flex}.legacy-report-school img{object-fit:contain;flex:none;width:18mm;height:18mm}.legacy-report-school p,.legacy-report-title p{color:var(--legacy-report-muted);margin:0 0 2mm;font-size:8.5pt}.legacy-report-school h1,.legacy-report-title h2{color:var(--legacy-report-ink);margin:0;font-size:16pt;font-weight:700;line-height:1.2}.legacy-report-school span{color:var(--legacy-report-muted);margin-top:2mm;font-size:8.5pt;line-height:1.35;display:block}.legacy-report-title{text-align:end}.legacy-report-section,.legacy-report-summary{margin-top:7mm}.legacy-report-section>h2,.legacy-report-summary>h2{border-bottom:1px solid var(--legacy-report-line);color:var(--legacy-report-ink);margin:0 0 3mm;padding-bottom:1.5mm;font-size:12pt;font-weight:700;line-height:1.25}.legacy-report-definition-grid{border-top:1px solid var(--legacy-report-soft-line);border-inline-start:1px solid var(--legacy-report-soft-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.legacy-report-definition-grid div{border-inline-end:1px solid var(--legacy-report-soft-line);border-bottom:1px solid var(--legacy-report-soft-line);grid-template-columns:minmax(28mm,.42fr) minmax(0,1fr);min-height:9mm;display:grid}.legacy-report-definition-grid dt,.legacy-report-definition-grid dd{overflow-wrap:anywhere;margin:0;padding:2mm 2.5mm}.legacy-report-definition-grid dt{color:var(--legacy-report-muted);background:var(--legacy-report-wash);font-weight:700}.legacy-report-definition-grid dd{color:var(--legacy-report-ink)}.legacy-report-summary .legacy-report-definition-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.legacy-report-summary .legacy-report-definition-grid div{grid-template-columns:1fr}.legacy-report-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:6mm;margin-top:5mm;display:grid}.legacy-report-subsection h3,.legacy-report-followup h3,.legacy-report-question-panel h4,.legacy-report-evidence h5,.legacy-report-followup h5{color:var(--legacy-report-ink);margin:0 0 2mm;font-size:9.5pt;font-weight:700;line-height:1.3}.legacy-report-list{margin:0;padding-inline-start:5mm}.legacy-report-list li+li{margin-top:1.5mm}.legacy-report-muted{color:var(--legacy-report-muted);display:block}.legacy-report-question-list{gap:5mm;display:grid}.legacy-report-question{border-top:1px solid var(--legacy-report-line);padding-top:4mm}.legacy-report-question-header{justify-content:space-between;align-items:flex-start;gap:5mm;margin-bottom:3mm;display:flex}.legacy-report-question-header h3{flex-wrap:wrap;align-items:baseline;gap:3mm;margin:0;font-size:10.5pt;line-height:1.3;display:flex}.legacy-report-question-header h3 span,.legacy-report-question-header p{color:var(--legacy-report-muted);font-size:8.5pt;font-weight:400}.legacy-report-question-header p{margin:1mm 0 0}.legacy-report-question-score{color:var(--legacy-report-muted);white-space:nowrap;justify-items:end;gap:1mm;font-size:8.5pt;display:grid}.legacy-report-question-score .legacy-report-technical{color:var(--legacy-report-ink);font-size:10pt;font-weight:700}.legacy-report-question-panel{margin-top:3mm}.legacy-report-followup,.legacy-report-evidence{border-inline-start:2px solid var(--legacy-report-soft-line);margin-top:3mm;padding-inline-start:4mm}.legacy-report-rich-text{white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;max-width:100%;line-height:inherit;display:inline}.legacy-report-rich-text[lang=ur-PK]{font-family:var(--font-urdu-pdf);text-align:right;line-height:var(--report-urdu-line-height);direction:rtl}.legacy-report-rich-text[lang=ar]{font-family:var(--font-arabic);text-align:right;direction:rtl}.legacy-report-rich-text .report-math-inline,.legacy-report-rich-text .report-math-display,.legacy-report-rich-text .katex{direction:ltr;unicode-bidi:isolate;font-family:KaTeX_Main,KaTeX_Math,serif}.legacy-report-technical{font-family:var(--font-report-latin);direction:ltr;unicode-bidi:isolate}.legacy-report-objective{margin-top:3mm}.legacy-report-objective-header{gap:3mm;margin-bottom:3mm;display:grid}.legacy-report-objective-header h3{color:var(--legacy-report-ink);flex-wrap:wrap;align-items:baseline;gap:2mm;margin:0;font-size:10.5pt;font-weight:700;line-height:1.3;display:flex}.legacy-report-objective-header h3 span{color:var(--legacy-report-muted);font-size:8.5pt;font-weight:600}.legacy-report-objective-stats{border-top:1px solid var(--legacy-report-soft-line);border-inline-start:1px solid var(--legacy-report-soft-line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.legacy-report-objective-stat{border-inline-end:1px solid var(--legacy-report-soft-line);border-bottom:1px solid var(--legacy-report-soft-line);gap:.5mm;min-height:10mm;padding:2mm 2.5mm;display:grid}.legacy-report-objective-stat dt{color:var(--legacy-report-muted);font-size:8pt;font-weight:700}.legacy-report-objective-stat dd{color:var(--legacy-report-ink);margin:0;font-size:14pt;font-weight:800;line-height:1.1}.legacy-report-objective-stat--correct dd{color:#0f766e}.legacy-report-objective-stat--wrong dd{color:#b45309}.legacy-report-objective-stat--unanswered dd{color:#64748b}.legacy-report-objective-table-wrap{max-width:100%;overflow-x:auto}.legacy-report-objective-table{border-collapse:collapse;table-layout:fixed;border-top:1px solid var(--legacy-report-line);direction:ltr;width:100%;min-width:132mm;font-size:9pt;line-height:1.35}.legacy-report-objective-table th,.legacy-report-objective-table td{border-bottom:1px solid var(--legacy-report-soft-line);text-align:start;vertical-align:middle;padding:2mm 2.5mm}.legacy-report-objective-table th{color:var(--legacy-report-muted);background:var(--legacy-report-wash);font-size:8pt;font-weight:800}.legacy-report-objective-table th:first-child,.legacy-report-objective-table td:first-child{width:14mm}.legacy-report-objective-table th:nth-child(4),.legacy-report-objective-table td:nth-child(4),.legacy-report-objective-table th:nth-child(5),.legacy-report-objective-table td:nth-child(5){width:26mm}.legacy-report-objective-status{white-space:nowrap;font-weight:800}.legacy-report-objective-status--correct{color:#0f766e}.legacy-report-objective-status--incorrect,.legacy-report-objective-status--partially-correct{color:#b45309}.legacy-report-objective-status--not-attempted{color:#64748b}.legacy-report-objective+.legacy-report-question-list{margin-top:5mm}.legacy-report-signatures{grid-template-columns:repeat(2,minmax(0,1fr));gap:12mm;margin-top:13mm;display:grid}.legacy-report-signatures div{min-height:14mm}.legacy-report-signatures span{border-bottom:1px solid var(--legacy-report-ink);display:block}.legacy-report-signatures p{color:var(--legacy-report-muted);margin:2mm 0 0;font-size:8.5pt}@media (max-width:760px){.legacy-student-report{border-inline:0;padding:18px}.legacy-report-header,.legacy-report-two-column,.legacy-report-signatures{grid-template-columns:1fr}.legacy-report-title{text-align:start}.legacy-report-definition-grid,.legacy-report-summary .legacy-report-definition-grid{grid-template-columns:1fr}.legacy-report-objective-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-report-question-header{display:grid}.legacy-report-question-score{justify-items:start}}.report-keep-together{break-inside:avoid;page-break-inside:avoid}.report-allow-split{break-inside:auto;page-break-inside:auto}.report-page-break-before{break-before:page;page-break-before:always}.report-print-only{display:none!important}@media (max-width:760px){.student-report-preview-page{padding:var(--space-3)}.student-evaluation-report{padding:var(--space-4)}.student-report-header,.student-report-identity,.student-report-performance,.student-report-title-row,.student-report-loss-item__top,.student-report-question__header{flex-direction:column}.student-report-header__status,.student-report-question__badges{justify-content:flex-start}.student-report-identity__grid,.student-report-performance__metrics,.student-report-insight-grid,.student-report-evaluation-grid,.student-report-overall,.student-report-signatures,.student-report-action-summary{grid-template-columns:1fr}.student-report-performance__intro{max-width:none}.student-report-table{min-width:0}.student-report-table thead{display:none}.student-report-table,.student-report-table tbody,.student-report-table tr,.student-report-table th,.student-report-table td{width:100%;display:block}.student-report-table tr{border-bottom:1px solid var(--report-border)}.student-report-table th,.student-report-table td{border-bottom:0}.student-report-action-list li,.student-report-rubric-list li{grid-template-columns:1fr}}@media (max-width:430px){.student-evaluation-report{border-radius:var(--radius-lg);padding:var(--space-3)}.student-report-brand__logo{flex-basis:48px;width:48px;height:48px}.student-report-brand__text h1,.student-report-title-row h2,.student-report-identity h2{font-size:var(--text-lg)}.student-report-question__body,.student-report-question__header,.student-report-loss-item{padding:var(--space-3)}}@media (max-width:390px){.student-report-preview-toolbar__link,.student-report-preview-toolbar__button{justify-content:center;width:100%}}@media (max-width:360px){.result-section-heading{align-items:flex-start}.result-section-heading__text{line-height:1.35}.student-report-brand{flex-direction:column}.student-report-badge,.student-report-language,.student-report-question__marks{justify-content:center;width:100%}}@page{size:A4;margin:16mm 14mm 18mm}@media print{*,:before,:after{caret-color:#0000!important;transition:none!important;animation:none!important}:is(body:has(.student-evaluation-report),body:has(.legacy-student-report)){background:#fff!important}.report-screen-only,.cookie-consent,.cookie-settings-button,.portal>aside,.queue-panel,.QueuePanel{display:none!important}.student-report-preview-page,.student-report-internal-print-page{background:#fff!important;padding:0!important}.student-report-pdf-footer{z-index:1;font-size:9pt;line-height:1.2;display:block;position:fixed;bottom:7mm;right:14mm;color:#475569!important}.student-report-pdf-footer:after{content:counter(page)" / " counter(pages)}.student-evaluation-report{print-color-adjust:exact;-webkit-print-color-adjust:exact;orphans:3;widows:3;font-synthesis:none;text-rendering:optimizeLegibility;color:#0f172a!important;width:100%!important;max-width:none!important;box-shadow:none!important;font-family:var(--font-report-latin)!important;background:#fff!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;font-size:10.5pt!important;line-height:1.48!important}.student-evaluation-report:lang(ur){font-family:var(--font-urdu-pdf)!important;font-size:11pt!important;line-height:2.05!important}.student-evaluation-report:lang(ar){font-family:var(--font-arabic)!important;font-size:11pt!important;line-height:1.85!important}.student-evaluation-report:lang(hi){font-family:var(--font-hindi)!important;font-size:10.75pt!important;line-height:1.72!important}.student-evaluation-report:lang(en),.student-evaluation-report:lang(es),.student-evaluation-report:lang(fr){font-family:var(--font-report-latin)!important}.legacy-student-report{print-color-adjust:exact;-webkit-print-color-adjust:exact;orphans:3;widows:3;width:100%!important;max-width:none!important;box-shadow:none!important;color:#111827!important;background:#fff!important;border:0!important;margin:0!important;padding:0!important}.legacy-student-report:lang(ur){font-family:var(--font-urdu-pdf)!important;font-size:11pt!important;line-height:1.95!important}.legacy-student-report:lang(ar){font-family:var(--font-arabic)!important;font-size:11pt!important;line-height:1.78!important}.legacy-report-header,.legacy-report-section>h2,.legacy-report-summary>h2{break-after:avoid;page-break-after:avoid}.legacy-report-definition-grid div,.legacy-report-question,.legacy-report-question-header,.legacy-report-subsection,.legacy-report-objective-header,.legacy-report-signatures div{break-inside:avoid;page-break-inside:avoid}.legacy-report-objective-table thead{display:table-header-group}.legacy-report-objective-table tr{break-inside:avoid;page-break-inside:avoid}.student-evaluation-report .katex,.student-evaluation-report .report-math-inline,.student-evaluation-report .report-math-display{direction:ltr!important;unicode-bidi:isolate!important;font-family:KaTeX_Main,KaTeX_Math,serif!important}.student-evaluation-report *{color-adjust:exact;print-color-adjust:exact;-webkit-print-color-adjust:exact}.student-evaluation-report h1,.student-evaluation-report h2,.student-evaluation-report h3,.student-evaluation-report h4,.student-evaluation-report h5{text-wrap:pretty;color:#0f172a!important}.student-evaluation-report p,.student-evaluation-report li,.student-evaluation-report dd,.student-evaluation-report td,.student-evaluation-report th,.student-report-rich-text{color:#1e293b!important}.student-report-brand__logo,.student-report-metric,.student-report-notice,.student-report-insight-panel,.student-report-loss-item,.student-report-question,.student-report-question__panel,.student-report-action-list li,.student-report-performance,.student-report-overall,.student-report-table,.student-report-table th,.student-report-table td{box-shadow:none!important;background:#fff!important;border-color:#cbd5e1!important}.student-report-draft-notice{background:#fff!important;border-color:#92400e!important}.student-evaluation-report[data-report-variant=parent] .student-report-section{margin-top:12pt}.student-evaluation-report[data-report-variant=parent] .student-report-title-row,.student-evaluation-report[data-report-variant=parent] .student-report-identity,.student-evaluation-report[data-report-variant=parent] .student-report-performance,.student-evaluation-report[data-report-variant=parent] .student-report-snapshot,.student-evaluation-report[data-report-variant=parent] .student-report-insight-panel,.student-evaluation-report[data-report-variant=parent] .student-report-action-summary{padding:9pt!important}.student-evaluation-report[data-report-variant=parent] .student-report-table th,.student-evaluation-report[data-report-variant=parent] .student-report-table td{padding:6pt!important}.student-evaluation-report[data-report-variant=parent] .student-report-question--focused{break-inside:avoid;page-break-inside:avoid}.student-report-badge,.student-report-language,.student-report-action-priority{color:#0f172a!important;background:#fff!important;border:1px solid #cbd5e1!important}.student-report-progress__track{background:#e2e8f0!important;border:1px solid #cbd5e1!important}.student-report-progress__fill{background:#334155!important}.student-report-pdf-header,.student-report-pdf-footer,.student-report-section-label,.student-report-empty-text,.student-report-inline-note{color:#475569!important}.student-report-section__heading,.student-report-question__header{break-after:avoid;page-break-after:avoid}.student-report-section,.student-report-question,.student-report-loss-item,.student-report-insight-panel,.student-report-metric,.student-report-notice,.student-report-table tr,.student-report-rubric-list li,.student-report-evidence-quotes li,.student-report-deductions li{box-shadow:none!important}.student-report-table-wrap{overflow:visible!important}.student-report-table{min-width:0}.student-report-rich-text,.student-report-rich-text *{overflow:visible!important}.student-report-rich-text .report-math-display{background:0 0!important;overflow:visible!important}.report-print-only{display:initial!important}}.suggestion-sheet{gap:var(--space-6);display:grid}.suggestion-sheet__section{gap:var(--space-3);flex-direction:column;display:flex}.suggestion-sheet__title{font-size:var(--text-base);color:var(--text-primary);align-items:center;gap:var(--space-2);font-weight:700;display:flex}.suggestion-sheet__list{gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.suggestion-sheet__item{align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-3)var(--space-4);background:var(--gray-50);border-radius:var(--radius-lg);line-height:var(--leading-relaxed);display:flex}.suggestion-sheet__item-icon{flex-shrink:0;margin-top:2px}.hero{padding:var(--space-20)var(--space-8);text-align:center;background:linear-gradient(135deg,var(--gray-950)0%,var(--primary-900)50%,var(--gray-950)100%);color:#fff;justify-content:center;align-items:center;min-height:80vh;display:flex;position:relative;overflow:hidden}.hero__bg-glow{filter:blur(120px);opacity:.3;pointer-events:none;border-radius:50%;width:600px;height:600px;position:absolute}.hero__bg-glow--1{background:var(--primary-500);top:-200px;left:-100px}.hero__bg-glow--2{background:var(--accent-500);bottom:-200px;right:-100px}.hero__content{z-index:1;max-width:800px;margin:0 auto;position:relative}.hero__badge{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--primary-200);margin-bottom:var(--space-8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff26;font-weight:600;display:inline-flex}.hero__title{letter-spacing:-.03em;margin-bottom:var(--space-6);font-size:clamp(2.5rem,5vw,4rem);font-weight:900;line-height:1.1}.hero__title-gradient{background:linear-gradient(135deg,var(--primary-300),var(--accent-400));color:#0000;-webkit-background-clip:text;background-clip:text}.hero__description{font-size:var(--text-lg);color:#ffffffa6;max-width:560px;margin:0 auto var(--space-10);line-height:var(--leading-relaxed)}.hero__actions{justify-content:center;align-items:center;gap:var(--space-4);display:flex}.hero__cta{padding:var(--space-4)var(--space-8);font-size:var(--text-base);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:var(--space-2);border:none;font-weight:700;text-decoration:none;display:inline-flex}.hero__cta--primary{background:linear-gradient(135deg,var(--primary-400),var(--primary-600));color:#fff;box-shadow:0 0 30px #6366f166}.hero__cta--primary:hover{transform:translateY(-2px);box-shadow:0 0 40px #6366f199}.hero__cta--secondary{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26}.hero__cta--secondary:hover{background:#ffffff26}.home-walkthrough-section{padding:var(--space-12)var(--space-8)var(--space-16);background:var(--surface-bg)}.home-walkthrough-section__inner{max-width:1200px;margin:0 auto}.home-walkthrough-section__header{text-align:center;max-width:720px;margin:0 auto var(--space-8)}.home-walkthrough-section__eyebrow{margin-bottom:var(--space-3);color:var(--primary-600);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.home-walkthrough-section__title{margin-bottom:var(--space-3);color:var(--text-primary);font-size:var(--text-3xl);font-weight:850;line-height:var(--leading-tight)}.home-walkthrough-section__subtitle{color:var(--text-secondary);font-size:var(--text-base);line-height:var(--leading-relaxed)}.home-walkthrough-desktop{display:block}.home-walkthrough-mobile{display:none}.home-walkthrough-banner{aspect-ratio:16/9;border:1px solid var(--border-light);border-radius:var(--radius-2xl);width:100%;height:auto;box-shadow:var(--shadow-xl);background:#f8fafc;display:block;overflow:hidden}.mobile-home-walkthrough-banner{aspect-ratio:430/932;border:1px solid var(--border-light);border-radius:var(--radius-2xl);width:100%;height:auto;box-shadow:var(--shadow-xl);background:#f8fafc;display:block;overflow:hidden}@media (max-width:768px){.home-walkthrough-section{padding:var(--space-8)var(--space-4)var(--space-12)}.home-walkthrough-desktop{display:none}.home-walkthrough-mobile{max-width:430px;margin:0 auto;display:block}}.features{padding:var(--space-20)var(--space-8);max-width:1200px;margin:0 auto}.features__header{text-align:center;margin-bottom:var(--space-16)}.features__title{font-size:var(--text-3xl);color:var(--text-primary);margin-bottom:var(--space-4);font-weight:800}.features__subtitle{font-size:var(--text-lg);color:var(--text-secondary);max-width:500px;margin:0 auto}.features__grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.feature-card{padding:var(--space-8);border-radius:var(--radius-2xl);background:var(--surface-card);border:1px solid var(--border-light);transition:all var(--transition-base)}.feature-card:hover{box-shadow:var(--shadow-xl);border-color:var(--primary-200);transform:translateY(-4px)}.feature-card__icon{border-radius:var(--radius-lg);width:48px;height:48px;margin-bottom:var(--space-5);color:#fff;font-size:var(--text-xl);justify-content:center;align-items:center;display:flex}.feature-card__icon--primary{background:linear-gradient(135deg,var(--primary-500),var(--primary-700))}.feature-card__icon--accent{background:linear-gradient(135deg,var(--accent-500),var(--accent-600))}.feature-card__icon--success{background:linear-gradient(135deg,var(--success-500),var(--success-700))}.feature-card__title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-2);font-weight:700}.feature-card__description{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.wizard{max-width:900px;padding:var(--space-8);margin:0 auto}.wizard__step-content{animation:.4s forwards fadeSlideUp}.save-session-panel{width:min(100%,720px);margin:0 auto}.save-session-panel__header{text-align:center;margin-bottom:var(--space-8)}.save-session-panel__icon{border-radius:var(--radius-2xl);background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;width:64px;height:64px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.save-session-panel__title{font-size:var(--text-2xl);margin:0 0 var(--space-2);color:var(--text-primary);font-weight:800}.save-session-panel__subtitle{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:480px;margin:0 auto}.save-session-summary{gap:var(--space-3);padding:var(--space-4);background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--text-sm);margin-bottom:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.save-session-summary__item{gap:4px;min-width:0;line-height:1.45;display:flex}.save-session-summary__item strong{flex:none}.save-session-summary__item span{overflow-wrap:anywhere;min-width:0}.save-session-summary__item--wide{grid-column:1/-1}.save-session-panel__error{align-items:flex-start;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--danger-50);border:1px solid var(--danger-100);border-radius:var(--radius-lg);color:var(--danger-600);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:var(--space-6);display:flex}.save-session-panel__error svg{flex:none;margin-top:2px}.save-session-actions{gap:var(--space-3);grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.35fr);display:grid}.save-session-actions .btn{white-space:normal;width:100%;min-width:0;min-height:48px;line-height:1.25}.new-session-demo-card{width:min(100%,760px);margin:0 auto var(--space-6);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);background:#ffffffeb;overflow:hidden}.create-session-walkthrough-svg{aspect-ratio:16/10;width:100%;height:auto;display:block}.svg-walkthrough-overlay{z-index:1200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a70;justify-content:center;align-items:center;padding:clamp(10px,2vw,24px);display:flex;position:fixed;inset:0}.svg-walkthrough-overlay__card{--walkthrough-max-width:1120px;--walkthrough-aspect:16/9;width:min(var(--walkthrough-max-width),calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);aspect-ratio:var(--walkthrough-aspect);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);background:#f8fafcfa;position:relative;overflow:hidden}.svg-walkthrough-overlay--create-session .svg-walkthrough-overlay__card{--walkthrough-max-width:980px;--walkthrough-aspect:16/10}.svg-walkthrough-overlay--session-queue .svg-walkthrough-overlay__card{--walkthrough-max-width:1180px;--walkthrough-aspect:16/9}.svg-walkthrough-overlay--mobile-autoscan .svg-walkthrough-overlay__card{--walkthrough-max-width:430px;--walkthrough-aspect:430/932}.svg-walkthrough-overlay--mobile-autoscan{display:none}.svg-walkthrough-overlay__body{background:#f8fafc;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.svg-walkthrough-overlay__close{top:max(12px,env(safe-area-inset-top));z-index:5;border:1px solid var(--border-light);border-radius:var(--radius-lg);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-sm);background:#fffffff0;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:12px}.svg-walkthrough-overlay__close:hover{color:var(--text-primary);border-color:var(--primary-200);background:var(--primary-50)}.svg-walkthrough-overlay__close-menu{top:max(58px,calc(env(safe-area-inset-top) + 48px));z-index:6;width:min(330px,100% - 24px);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:#fffffffa;position:absolute;right:12px}.svg-walkthrough-overlay__close-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.create-session-demo-overlay__desktop,.create-session-demo-overlay__mobile,.mobile-create-session-walkthrough-svg,.session-queue-walkthrough-svg,.mobile-autoscan-walkthrough-svg{width:100%;height:100%}.create-session-demo-overlay__desktop,.create-session-demo-overlay__mobile{display:flex}.create-session-demo-overlay__mobile{display:none}.session-queue-walkthrough-svg,.mobile-autoscan-walkthrough-svg{display:block}.saved-session-actions .btn{white-space:normal;min-width:0;line-height:1.25}.saved-session-queue__title,.saved-session-queue__student,.saved-session-queue__status,.saved-session-graded__student,.saved-session-graded__score{flex-wrap:wrap;min-width:0}.saved-session-queue__student span,.saved-session-queue__status span,.saved-session-graded__student span,.saved-session-graded__score span{overflow-wrap:anywhere}@media (max-width:768px){.svg-walkthrough-overlay{padding:8px}.svg-walkthrough-overlay__card{aspect-ratio:auto;width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.svg-walkthrough-overlay--create-session .svg-walkthrough-overlay__card,.svg-walkthrough-overlay--mobile-autoscan .svg-walkthrough-overlay__card{width:min(430px,100vw - 16px)}.svg-walkthrough-overlay--session-queue{display:none}.svg-walkthrough-overlay--mobile-autoscan{display:flex}.create-session-demo-overlay__desktop{display:none}.create-session-demo-overlay__mobile{display:flex}.saved-session-student-grid{grid-template-columns:1fr!important}.saved-session-variant-selector,.saved-session-actions,.saved-session-queue__header,.saved-session-queue__controls,.saved-session-queue__row,.saved-session-graded__header,.saved-session-graded__row{flex-wrap:wrap}.saved-session-actions,.saved-session-queue__header,.saved-session-queue__row,.saved-session-graded__header,.saved-session-graded__row{gap:var(--space-3);flex-direction:column;align-items:stretch!important}.saved-session-actions .btn,.saved-session-queue__controls .btn{justify-content:center;width:100%}.saved-session-queue__student,.saved-session-queue__status,.saved-session-graded__student,.saved-session-graded__score{justify-content:flex-start;width:100%}}.loading-spinner{justify-content:center;align-items:center;animation:1s linear infinite spin;display:inline-flex}.loading-pulse{justify-content:center;align-items:center;gap:var(--space-6);padding:var(--space-16);text-align:center;flex-direction:column;display:flex}.loading-pulse__dots{gap:var(--space-2);display:flex}.loading-pulse__dot{border-radius:var(--radius-full);background:var(--primary-500);width:12px;height:12px;animation:1.4s ease-in-out infinite pulse-dot}.loading-pulse__dot:nth-child(2){animation-delay:.2s}.loading-pulse__dot:nth-child(3){animation-delay:.4s}.loading-pulse__text{font-size:var(--text-lg);color:var(--text-secondary);font-weight:600}.loading-pulse__subtext{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:calc(-1*var(--space-4))}.skeleton-line,.skeleton-block{background:linear-gradient(90deg,var(--gray-100),var(--gray-200),var(--gray-100));border-radius:var(--radius-md);background-size:220% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-block--icon{border-radius:var(--radius-xl);flex-shrink:0;width:52px;height:52px}.session-card--skeleton{pointer-events:none}.progress-skeleton-card{border:1px solid var(--border-light);background:var(--surface-card);border-radius:var(--radius-xl);padding:var(--space-5);margin-top:var(--space-4);box-shadow:var(--shadow-sm)}.progress-skeleton-card__grid{gap:var(--space-3);display:grid}.progress-skeleton-card__grid--2{grid-template-columns:1.2fr .8fr}.confirm-dialog-backdrop{z-index:80;padding:var(--space-6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02061794;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog-card{border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--surface-elevated);width:min(440px,100%);color:var(--text-primary);box-shadow:var(--shadow-xl);padding:var(--space-6);animation:fadeSlideUp var(--transition-base)both;position:relative}.confirm-dialog-close{top:var(--space-3);right:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;display:inline-flex;position:absolute}.confirm-dialog-close:hover{color:var(--text-primary);border-color:var(--border-medium)}.confirm-dialog-icon{border-radius:var(--radius-lg);width:48px;height:48px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:inline-flex}.confirm-dialog-icon--danger{color:var(--danger-600);background:var(--danger-50);border:1px solid var(--danger-100)}.confirm-dialog-title{margin:0 0 var(--space-2);font-size:var(--text-xl);font-weight:800}.confirm-dialog-text{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}.confirm-dialog-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);display:flex}.feature-locked-card{align-items:flex-start;gap:var(--space-4);width:100%;padding:var(--space-6);border:1px solid var(--warning-100);border-radius:var(--radius-lg);background:var(--warning-50);color:var(--text-primary);display:flex}.feature-locked-card--compact{padding:var(--space-4)}.feature-locked-card__icon{border-radius:var(--radius-md);background:var(--surface-card);width:44px;height:44px;color:var(--warning-600);border:1px solid var(--warning-100);flex:none;justify-content:center;align-items:center;display:inline-flex}.feature-locked-card--compact .feature-locked-card__icon{width:34px;height:34px}.feature-locked-card__body{flex:auto;min-width:0}.feature-locked-card__body h2{margin:0 0 var(--space-2);font-size:var(--text-base);font-weight:900;line-height:1.35}.feature-locked-card__body p{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6}.feature-locked-card__current{font-weight:700;color:var(--warning-700)!important}.feature-locked-card__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.upgrade-required-modal{max-width:620px;padding:var(--space-4)}.upgrade-required-modal .feature-locked-card{padding:var(--space-6)var(--space-4)var(--space-4);background:0 0;border:0}.container{max-width:1200px;padding:0 var(--space-8);margin:0 auto}.results-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.results-header__info{gap:var(--space-1);flex-direction:column;display:flex}.results-header__title{font-size:var(--text-2xl);color:var(--text-primary);font-weight:800}.results-header__subtitle{font-size:var(--text-sm);color:var(--text-secondary)}.score-bar{background:var(--gray-200);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.score-bar__fill{border-radius:var(--radius-full);height:100%;transition:width 1.5s cubic-bezier(.4,0,.2,1)}.score-bar__fill--high{background:linear-gradient(90deg,var(--success-500),var(--success-600))}.score-bar__fill--medium{background:linear-gradient(90deg,var(--warning-500),var(--warning-600))}.score-bar__fill--low{background:linear-gradient(90deg,var(--danger-500),var(--danger-600))}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:.4;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.7}}@keyframes skeleton-shimmer{0%{background-position:180% 0}to{background-position:-180% 0}}.landing-section{padding:var(--space-16)var(--space-6)}.landing-section--alt{background:var(--gray-50)}.landing-section__inner{max-width:1100px;margin:0 auto}.landing-section__title{font-size:var(--text-2xl);text-align:center;margin-bottom:var(--space-2);font-weight:800}.landing-section__subtitle{text-align:center;color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-10);max-width:600px;margin-left:auto;margin-right:auto}.pricing-grid{gap:var(--space-5);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.pricing-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);padding:var(--space-6);transition:all var(--transition-base);flex-direction:column;display:flex;position:relative}.pricing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.pricing-card--popular{border-color:var(--primary-400);box-shadow:0 0 0 2px var(--primary-100)}.pricing-card__badge{background:var(--primary-500);color:#fff;font-size:var(--text-xs);border-radius:var(--radius-full);padding:4px 16px;font-weight:700;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-card__header{text-align:center;margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--border-light)}.pricing-card__name{font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:700}.pricing-card__price{font-size:var(--text-3xl);color:var(--text-primary);font-weight:800}.pricing-card__price span{font-size:var(--text-sm);color:var(--text-tertiary);font-weight:500}.pricing-card__desc{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1)}.pricing-card__features{margin:0 0 var(--space-6);gap:var(--space-3);flex-direction:column;flex:1;padding:0;list-style:none;display:flex}.pricing-card__features li{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.pricing-card__features li svg{color:var(--success-500);flex-shrink:0}.payg-card{align-items:center;gap:var(--space-6);padding:var(--space-6);background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);display:flex}.demo-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.demo-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);padding:var(--space-6);text-align:center}.reviews-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.review-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);padding:var(--space-6);gap:var(--space-3);transition:all var(--transition-base);flex-direction:column;display:flex}.review-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.review-card__stars{gap:2px;display:flex}.review-card__text{font-size:var(--text-sm);color:var(--text-secondary);flex:1;margin:0;line-height:1.6}.review-card__author{align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.review-card__avatar{border-radius:var(--radius-full);background:var(--primary-100);width:40px;height:40px;color:var(--primary-700);font-weight:700;font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.review-card__name{font-weight:600;font-size:var(--text-sm);color:var(--text-primary)}.review-card__role{font-size:var(--text-xs);color:var(--text-tertiary)}.support-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.support-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);padding:var(--space-6);text-align:center}.blog-page{max-width:900px;padding:var(--space-8)var(--space-6);margin:0 auto}.blog-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);transition:all var(--transition-base);overflow:hidden}.blog-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.blog-card__cover{object-fit:cover;background:var(--gray-100);width:100%;height:200px}.blog-card__body{padding:var(--space-5)}.blog-card__tag{font-size:var(--text-xs);color:var(--primary-600);background:var(--primary-50);border-radius:var(--radius-full);margin-bottom:var(--space-2);padding:2px 10px;font-weight:600;display:inline-block}.blog-card__title{font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:700;line-height:1.3}.blog-card__title a{color:var(--text-primary);text-decoration:none}.blog-card__title a:hover{color:var(--primary-500)}.blog-card__excerpt{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-3);line-height:1.6}.blog-card__meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-tertiary);display:flex}.blog-article{max-width:760px;padding:var(--space-8)var(--space-6);margin:0 auto}.blog-article__content{line-height:1.8;font-size:var(--text-base);color:var(--text-primary)}.blog-article__content h2{font-size:var(--text-xl);margin:var(--space-8)0 var(--space-3);font-weight:700}.blog-article__content h3{font-size:var(--text-lg);margin:var(--space-6)0 var(--space-2);font-weight:600}.blog-article__content p{margin-bottom:var(--space-4)}.blog-article__content ul,.blog-article__content ol{padding-left:var(--space-6);margin-bottom:var(--space-4)}.blog-article__content li{margin-bottom:var(--space-2)}.blog-article__content blockquote{border-left:3px solid var(--primary-400);padding-left:var(--space-4);color:var(--text-secondary);margin:var(--space-4)0;font-style:italic}.blog-article__content pre{background:var(--gray-900);color:var(--gray-100);padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);margin-bottom:var(--space-4);overflow-x:auto}.blog-article__content code{background:var(--gray-100);border-radius:var(--radius-sm);padding:2px 6px;font-size:.9em}.blog-article__content pre code{background:0 0;padding:0}.blog-article__content img{border-radius:var(--radius-lg);max-width:100%;margin:var(--space-4)0}.blog-article__content .table-wrapper{margin:var(--space-6)0;border-radius:var(--radius-xl);border:1px solid var(--border-light);overflow-x:auto}.blog-article__content .blog-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.blog-article__content .blog-table th{background:var(--primary-50);color:var(--primary-800);text-align:left;border-bottom:2px solid var(--primary-100);white-space:nowrap;padding:10px 16px;font-weight:700}.blog-article__content .blog-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);vertical-align:top;padding:9px 16px}.blog-article__content .blog-table tr:last-child td{border-bottom:none}.blog-article__content .blog-table tr:hover td{background:var(--surface-hover)}[data-theme=dark] .blog-article__content .blog-table th{background:var(--gray-800);color:var(--primary-300);border-bottom-color:var(--gray-700)}[data-theme=dark] .blog-article__content .blog-table td{border-bottom-color:var(--gray-700)}.blog-article__content .blog-figure{margin:var(--space-6)0;text-align:center}.blog-article__content .blog-figure img{margin:0 0 var(--space-2);object-fit:cover;width:100%;max-height:500px}.blog-article__content .blog-figure figcaption{font-size:var(--text-xs);color:var(--text-tertiary);font-style:italic}.blog-article__content .callout{border-radius:var(--radius-xl);padding:var(--space-4)var(--space-5);margin:var(--space-6)0;border-left:4px solid}.blog-article__content .callout--note{background:var(--primary-50);border-color:var(--primary-400)}.blog-article__content .callout--tip{border-color:var(--success-500);background:#f0fdf4}.blog-article__content .callout--warning{border-color:var(--warning-500);background:#fffbeb}.blog-article__content .callout--info{background:#eff6ff;border-color:#3b82f6}.blog-article__content .callout__title{font-weight:700;font-size:var(--text-sm);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.blog-article__content .callout--note .callout__title{color:var(--primary-700)}.blog-article__content .callout--tip .callout__title{color:var(--success-700)}.blog-article__content .callout--warning .callout__title{color:var(--warning-700)}.blog-article__content .callout--info .callout__title{color:#1d4ed8}.blog-article__content .callout__body{font-size:var(--text-sm);line-height:1.7}[data-theme=dark] .blog-article__content .callout--note{background:#6366f114}[data-theme=dark] .blog-article__content .callout--tip{background:#22c55e14}[data-theme=dark] .blog-article__content .callout--warning{background:#eab30814}[data-theme=dark] .blog-article__content .callout--info{background:#3b82f614}.blog-article__content mark{color:var(--gray-900);background:#fde68a;border-radius:3px;padding:1px 3px}[data-theme=dark] .blog-article__content mark{color:#fde68a;background:#78350f}.blog-article__content .article-hr{border:none;border-top:2px solid var(--border-light);margin:var(--space-8)0}.blog-article__content .code-block{position:relative}.blog-article__content .code-block .code-lang{font-size:10px;font-family:var(--font-mono);color:var(--gray-400);text-transform:uppercase;letter-spacing:.1em;position:absolute;top:8px;right:12px}.blog-article__content h4{font-size:var(--text-base);margin:var(--space-4)0 var(--space-2);font-weight:700}.blog-article__content h2,.blog-article__content h3,.blog-article__content h4{scroll-margin-top:80px}.blog-admin{max-width:800px;padding:var(--space-8)var(--space-6);margin:0 auto}@media (max-width:768px){.hero{padding:var(--space-12)var(--space-6);min-height:auto}.hero__actions{flex-direction:column}.stepper__label{display:none}.stepper__connector{width:40px}.wizard,.card__body,.question-result{padding:var(--space-4)}.features__grid,.pricing-grid{grid-template-columns:1fr}.payg-card{text-align:center;flex-direction:column}.landing-section{padding:var(--space-10)var(--space-4)}.landing-section__title{font-size:var(--text-xl)}}.portal{min-height:100vh;display:flex}.portal__main{width:calc(100% - 260px);min-width:0;max-width:calc(100% - 260px);padding:var(--space-8);transition:margin-left var(--transition-base),width var(--transition-base),max-width var(--transition-base);flex:none;margin-left:260px}.portal__main>*{min-width:0}.sidebar--collapsed~.portal__main{width:calc(100% - 72px);max-width:calc(100% - 72px);margin-left:72px}.sidebar{background:var(--gray-950);color:#fff;z-index:200;width:260px;transition:width var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar--collapsed{width:72px}.sidebar__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5)var(--space-4);border-bottom:1px solid #ffffff14;min-height:64px;display:flex;position:relative}.sidebar__header-actions{align-items:center;gap:var(--space-2);flex:none;min-width:0;margin-left:auto;display:flex}.sidebar__logo{align-items:center;gap:var(--space-3);color:#fff;font-weight:800;font-size:var(--text-base);white-space:nowrap;text-decoration:none;display:flex;overflow:hidden}.sidebar__logo-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.sidebar__logo-text{opacity:1;transition:opacity var(--transition-fast)}.sidebar--collapsed .sidebar__logo-text{opacity:0;width:0}.sidebar__collapse-btn{border-radius:var(--radius-md);width:28px;height:28px;color:var(--gray-400);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0f;border:1px solid #ffffff14;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-notifications{flex:none;justify-content:center;align-items:center;display:flex;position:relative}.sidebar-notifications--mobile-floating{display:none}.sidebar-notifications__trigger{border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--surface-elevated);width:36px;height:36px;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);justify-content:center;align-items:center;display:inline-flex;position:relative}.sidebar-notifications__trigger:hover,.sidebar-notifications__trigger--open{background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-700);box-shadow:0 0 0 3px var(--primary-100),var(--shadow-md)}.sidebar-notifications__trigger:focus-visible{outline:2px solid var(--primary-500);outline-offset:3px}.sidebar-notifications__trigger:active{transform:translateY(1px)}.sidebar-notifications__badge{border-radius:var(--radius-full);background:var(--danger-500);color:#fff;text-align:center;min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface-card),var(--shadow-sm);border:1px solid #ffffffe6;padding:0 5px;font-size:10px;font-weight:800;line-height:18px;position:absolute;top:-6px;right:-6px}.sidebar-notifications__menu{z-index:420;border:1px solid var(--border-light);border-radius:var(--radius-xl);background:var(--surface-card);width:min(380px,100vw - 32px);max-height:min(68vh,540px);color:var(--text-primary);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;position:fixed;overflow:hidden}.sidebar-notifications__backdrop{display:none}.sidebar-notifications__menu-header,.sidebar-notifications__menu-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);display:flex}.sidebar-notifications__menu-header{border-bottom:1px solid var(--border-light)}.sidebar-notifications__header-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:inline-flex}.sidebar-notifications__menu-header>div{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-notifications__menu-header strong{font-size:var(--text-sm)}.sidebar-notifications__menu-header span{color:var(--text-tertiary);font-size:var(--text-xs)}.sidebar-notifications__menu-body{gap:var(--space-2);min-height:0;padding:var(--space-3);flex-direction:column;display:flex;overflow:auto}.sidebar-notifications__empty{justify-content:center;align-items:center;gap:var(--space-2);min-height:120px;color:var(--text-tertiary);font-size:var(--text-sm);text-align:center;display:flex}.sidebar-notifications__item{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);display:flex}.sidebar-notifications__item--unread{background:var(--primary-50);border-color:var(--primary-100)}.sidebar-notifications__item-copy{min-width:0}.sidebar-notifications__item-copy strong{font-size:var(--text-sm);margin-bottom:4px;display:block}.sidebar-notifications__item-copy p{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere;margin:0 0 6px;line-height:1.55}.sidebar-notifications__item-copy span{color:var(--text-tertiary);font-size:11px}.sidebar-notifications__dot{background:var(--primary-500);border-radius:50%;flex:none;width:8px;height:8px;margin-top:5px}.sidebar-notifications__item-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.sidebar-notifications__action,.sidebar-notifications__footer-link{color:var(--primary-600);font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-weight:700;text-decoration:none;display:inline-flex}.sidebar-notifications__mini-action,.sidebar-notifications__close{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.sidebar-notifications__mini-action{min-height:26px;padding:5px 8px}.sidebar-notifications__mini-action:hover,.sidebar-notifications__close:hover{color:var(--primary-600);border-color:var(--primary-200);background:var(--primary-50)}.sidebar-notifications__mini-action--danger:hover{color:var(--danger-600);border-color:var(--danger-100);background:var(--danger-50)}.sidebar-notifications__mini-action:disabled{cursor:not-allowed;opacity:.55}.sidebar-notifications__close{width:30px;height:30px;padding:0}.sidebar-notifications__action:disabled{cursor:not-allowed;opacity:.55}.sidebar-notifications__menu-footer{border-top:1px solid var(--border-light)}.dashboard-notifications-list{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-notification-card{justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);display:flex}.dashboard-notification-card--unread{background:var(--primary-50);border-color:var(--primary-100)}.dashboard-notification-card__copy{min-width:0}.dashboard-notification-card__meta{align-items:flex-end;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--text-xs);white-space:nowrap;flex-direction:column;flex:none;display:flex}.notification-preferences-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.notification-preference-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);cursor:pointer;display:flex}.notification-preference-row input{flex:none;margin-top:3px}.notification-preference-row span{flex-direction:column;gap:3px;min-width:0;display:flex}.notification-preference-row strong{color:var(--text-primary);font-size:var(--text-sm)}.notification-preference-row small{color:var(--text-tertiary);font-size:var(--text-xs);line-height:1.45}@media (max-width:640px){.sidebar-notifications__backdrop{z-index:410;cursor:default;background:#0f172a8c;border:0;display:block;position:fixed;inset:0}.sidebar-notifications__menu{border-radius:var(--radius-xl)var(--radius-xl)0 0;border-left:0;border-right:0;max-height:min(78vh,640px);width:100%!important;inset:auto 0 0!important}.sidebar-notifications__menu-header,.sidebar-notifications__menu-footer{padding:var(--space-4);flex-wrap:wrap;align-items:flex-start}.sidebar-notifications__item,.sidebar-notifications__item-actions{gap:var(--space-2)}.dashboard-notification-card{flex-direction:column}.dashboard-notification-card__meta{white-space:normal;flex-flow:wrap;align-items:flex-start}}.sidebar__collapse-btn:hover{color:#fff;background:#ffffff1f}.sidebar--collapsed .sidebar__header{justify-content:flex-start;gap:var(--space-3);padding:var(--space-4)var(--space-2);flex-direction:column;min-height:118px}.sidebar--collapsed .sidebar__logo{justify-content:center;width:100%}.sidebar--collapsed .sidebar__header-actions{justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;width:100%;margin-left:0}.sidebar--collapsed .sidebar__collapse-btn{position:static;transform:none}.sidebar--collapsed .sidebar-notifications{width:100%}.sidebar--collapsed .sidebar-notifications__badge{top:-4px;right:-4px}.sidebar__nav{padding:var(--space-4)var(--space-3);gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sidebar__link{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--gray-400);transition:all var(--transition-fast);white-space:nowrap;cursor:pointer;text-align:left;width:100%;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;text-decoration:none;display:flex;overflow:hidden}.sidebar__link:hover{color:#fff;background:#ffffff0f}.sidebar__link--locked{color:var(--gray-500)}.sidebar__link--locked:hover{color:#fff;background:#f59e0b1a}.sidebar__link--active{color:#fff;background:#6366f126;font-weight:600}.sidebar__link--active .sidebar__link-icon{color:var(--primary-400)}.sidebar__link--danger:hover{color:var(--danger-500);background:#ef44441a}.sidebar__link-icon{flex-shrink:0;width:18px;height:18px}.sidebar__link-label{opacity:1;transition:opacity var(--transition-fast)}.sidebar__link-label--with-lock{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-width:0;display:flex}.sidebar__lock-badge{border-radius:var(--radius-full);color:var(--warning-500);text-transform:uppercase;letter-spacing:.04em;background:#f59e0b1f;align-items:center;gap:3px;padding:2px 6px;font-size:10px;font-weight:800;display:inline-flex}.sidebar--collapsed .sidebar__link-label{opacity:0;width:0}.sidebar--collapsed .sidebar__link{padding:var(--space-3);justify-content:center}.sidebar__footer{padding:var(--space-4)var(--space-3);border-top:1px solid #ffffff14}.sidebar__user{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);margin-bottom:var(--space-2);display:flex;overflow:hidden}.sidebar__user-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-500),var(--accent-500));width:32px;height:32px;font-size:var(--text-sm);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar__user-email{font-size:var(--text-xs);color:var(--gray-400);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-mobile-toggle{top:var(--space-4);left:var(--space-4);z-index:300;border-radius:var(--radius-lg);background:var(--gray-950);color:#fff;cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-lg);border:none;justify-content:center;align-items:center;display:none;position:fixed}.dashboard-page,.dashboard-shell-page{width:100%;min-width:0;max-width:none}.settings-collapsible-card{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-6);overflow:hidden}.settings-collapsible-card__trigger{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:64px;padding:var(--space-5)var(--space-6);color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:0;display:flex}.settings-collapsible-card__trigger:hover{background:var(--gray-50)}.settings-collapsible-card__trigger:focus-visible{outline:2px solid var(--primary-500);outline-offset:-2px}.settings-collapsible-card__title-group{align-items:center;gap:var(--space-3);min-width:0;display:flex}.settings-collapsible-card__icon{border-radius:var(--radius-md);background:var(--primary-50);width:32px;height:32px;color:var(--primary-600);flex:0 0 32px;justify-content:center;align-items:center;display:inline-flex}.settings-collapsible-card__title{font-size:var(--text-base);font-weight:700;line-height:1.2;display:block}.settings-collapsible-card__summary{color:var(--text-secondary);font-size:var(--text-xs);margin-top:2px;line-height:1.4;display:block}.settings-collapsible-card__chevron{color:var(--text-tertiary);flex:none;transition:transform .18s,color .18s}.settings-collapsible-card__chevron[data-open=true]{color:var(--primary-600);transform:rotate(180deg)}.settings-collapsible-card__content{min-width:0;padding:0 var(--space-6)var(--space-6);border-top:1px solid var(--border-light)}.settings-collapsible-card__content[hidden]{display:none}.sidebar-overlay{z-index:150;background:#00000080;display:none;position:fixed;inset:0}@media (max-width:768px){.settings-collapsible-card{border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.settings-collapsible-card__trigger{min-height:60px;padding:var(--space-4);gap:var(--space-3)}.settings-collapsible-card__content{padding:0 var(--space-4)var(--space-4)}.settings-collapsible-card__title{font-size:var(--text-sm)}.settings-collapsible-card__summary{max-width:34ch}.sidebar-mobile-toggle{display:flex}.sidebar{transition:transform var(--transition-base);transform:translate(-100%)}.sidebar--mobile-open{transform:translate(0)}.sidebar--mobile-open~.sidebar-overlay,.sidebar-overlay{display:block}.portal__main{width:100%;max-width:100%;padding:var(--space-6)var(--space-4);padding-top:calc(var(--space-6) + 56px);margin-left:0}.sidebar--collapsed~.portal__main{width:100%;max-width:100%;margin-left:0}.sidebar__collapse-btn,.sidebar__header-actions,.sidebar-notifications--desktop{display:none}.sidebar-notifications--mobile-floating{top:var(--space-4);right:var(--space-4);z-index:320;display:flex;position:fixed}.sidebar-notifications--mobile-floating .sidebar-notifications__trigger{border-radius:var(--radius-lg);width:44px;height:44px;box-shadow:var(--shadow-lg)}.sidebar-notifications--mobile-floating .sidebar-notifications__badge{top:-4px;right:-4px}.sidebar-notifications__menu{max-height:min(78vh,640px)}}.stat-card{padding:var(--space-6);background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card__icon{border-radius:var(--radius-lg);width:44px;height:44px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.stat-card__value{font-size:var(--text-2xl);margin-bottom:var(--space-1);font-weight:800}.stat-card__label{font-size:var(--text-sm);color:var(--text-tertiary)}@media (max-width:1024px){.hero{padding:var(--space-12)var(--space-6);min-height:60vh}.hero__title{font-size:var(--text-3xl)}.hero__subtitle{font-size:var(--text-sm)}.stepper__connector{width:40px;margin:0 var(--space-2)}.stepper__label{font-size:var(--text-xs)}}@media (max-width:768px){.container{padding-left:var(--space-4)!important;padding-right:var(--space-4)!important}.hero{padding:var(--space-8)var(--space-4);min-height:auto}.hero__title{font-size:var(--text-2xl)}.hero__subtitle{font-size:var(--text-sm)}.hero__actions{gap:var(--space-3);flex-direction:column}.hero__actions .btn{width:100%}.app-header__inner{padding:0 var(--space-4);height:56px}.app-header__nav-link{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.app-header__logo{font-size:var(--text-lg);gap:var(--space-2)}.app-header__logo-icon{width:30px;height:30px}.card__body,.card__header{padding:var(--space-4)}.card__footer{padding:var(--space-3)var(--space-4)}.stepper{gap:var(--space-2);padding:var(--space-4)0;flex-wrap:wrap}.stepper__connector{width:20px;margin:0 var(--space-1)}.stepper__circle{width:32px;height:32px;font-size:var(--text-xs)}.stepper__label{display:none}.wizard{padding:var(--space-5)var(--space-4)}.save-session-panel__header{margin-bottom:var(--space-6)}.save-session-panel__icon{border-radius:var(--radius-xl);width:52px;height:52px;margin-bottom:var(--space-3)}.save-session-panel__title{font-size:var(--text-xl)}.save-session-summary{gap:var(--space-2);padding:var(--space-4);grid-template-columns:1fr}.save-session-summary__item{gap:var(--space-2);grid-template-columns:minmax(78px,auto) minmax(0,1fr);display:grid}.save-session-actions{grid-template-columns:1fr}.save-session-actions .btn{min-height:46px;padding:var(--space-3)var(--space-4);font-size:var(--text-sm)}.upload-zone{padding:var(--space-6)var(--space-4);min-height:140px}.upload-zone__icon{width:36px;height:36px}.upload-zone__title{font-size:var(--text-sm)}.btn--lg{padding:var(--space-3)var(--space-6);font-size:var(--text-sm)}.question-result{padding:var(--space-4)}.question-result__header{gap:var(--space-2);flex-direction:column}.score-ring__value{font-size:var(--text-2xl)}.score-ring{width:min(128px,52vw)!important;height:min(128px,52vw)!important}.score-ring__label{letter-spacing:0;max-width:74px;font-size:10px}.stat-card{padding:var(--space-4)}.stat-card__value{font-size:var(--text-xl)}.stat-card__icon{width:36px;height:36px;margin-bottom:var(--space-3)}.suggestion-sheet__item{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.badge{padding:2px var(--space-2);font-size:.65rem}}@media (max-width:480px){body{font-size:var(--text-sm)}.hero{padding:var(--space-6)var(--space-3)}.hero__title{font-size:var(--text-xl)}.hero__bg-glow{width:300px;height:300px}.app-header__inner{padding:0 var(--space-3)}.app-header__nav{gap:var(--space-1)}.app-header__nav-link{padding:var(--space-1)var(--space-2)}.card{border-radius:var(--radius-lg)}.card__body,.card__header{padding:var(--space-3)}.upload-zone{padding:var(--space-4)var(--space-3);min-height:100px}.btn{padding:var(--space-2)var(--space-4);font-size:var(--text-xs)}.btn--lg{padding:var(--space-3)var(--space-4);font-size:var(--text-sm)}.stepper__connector{display:none}.stepper__circle{width:28px;height:28px}.score-ring__value{font-size:var(--text-xl)}}.sessions-filter-bar{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.sessions-filter-bar__search{flex:1;min-width:200px;position:relative}.sessions-filter-bar__controls{gap:var(--space-2);align-items:center;display:flex}.session-cards-grid{gap:var(--space-4);flex-direction:column;display:flex}.session-card__body{align-items:center;gap:var(--space-5);padding:var(--space-5);display:flex}.session-card__icon-wrap{border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.session-card__info{flex:1;min-width:0}.session-card__title{font-weight:700;font-size:var(--text-base);margin-bottom:var(--space-1)}.session-card__meta{gap:var(--space-4);font-size:var(--text-xs);color:var(--text-tertiary);flex-wrap:wrap;display:flex}.session-card__meta-item{align-items:center;gap:4px;display:flex}.session-card__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.eval-filter-bar{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.eval-filter-bar__search{flex:1;min-width:200px;position:relative}.eval-filter-bar__controls{gap:var(--space-2);align-items:center;display:flex}@media (max-width:768px){.sessions-filter-bar,.eval-filter-bar{flex-direction:column}.sessions-filter-bar__controls,.eval-filter-bar__controls{flex-wrap:wrap}.sessions-filter-bar__controls .input,.eval-filter-bar__controls .input{min-width:0;width:100%!important}.session-card__body{align-items:stretch;gap:var(--space-4);padding:var(--space-4);flex-direction:column}.session-card__icon-wrap{align-self:flex-start;width:44px;height:44px}.session-card__meta{gap:var(--space-2)var(--space-3)}.session-card__actions{padding-top:var(--space-3);border-top:1px solid var(--border-light);justify-content:flex-end}.confirm-dialog-backdrop{padding:var(--space-4);align-items:flex-end}.confirm-dialog-card{padding:var(--space-5)}.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-actions .btn{justify-content:center;width:100%}.progress-skeleton-card__grid--2{grid-template-columns:1fr}}@media (hover:none) and (pointer:coarse){.btn{min-width:44px;min-height:44px}.form-input,.form-select,.input,select{min-height:44px;font-size:16px}.card--hover:hover{box-shadow:var(--shadow-sm);transform:none}.btn--primary:hover:not(:disabled),.stat-card:hover{transform:none}}@supports (padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.sidebar{padding-bottom:max(var(--space-4),env(safe-area-inset-bottom))}}.grid-2col{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.grid-3col{gap:var(--space-4);grid-template-columns:1fr 1fr 1fr;display:grid}.obj-session-type-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.obj-session-type-grid>button{min-height:72px;box-shadow:var(--shadow-sm);flex-direction:column;justify-content:center;align-items:center;display:flex}@media (max-width:768px){.grid-2col,.grid-3col{grid-template-columns:1fr}.obj-session-type-grid{gap:var(--space-3);grid-template-columns:1fr}}@media (max-width:480px){.grid-2col,.grid-3col{gap:var(--space-3)}.obj-session-type-grid>button{min-height:60px}}.portal__main{overflow-x:hidden}@media (max-width:768px){.portal__main>div{max-width:100%;overflow-x:hidden}.demo-grid,.support-grid{grid-template-columns:1fr}.help-features-grid{grid-template-columns:1fr!important}}@media (max-width:480px){.settings-collapsible-card__trigger,.settings-collapsible-card__title-group{align-items:flex-start}.settings-collapsible-card__icon{flex-basis:28px;width:28px;height:28px}.settings-collapsible-card__summary{overflow-wrap:anywhere;max-width:none}.app-header__nav-link:not(:nth-last-child(-n+2)){display:none}.hero__cta{text-align:center;justify-content:center;width:100%}}@media (max-width:768px){.score-ring{width:min(132px,52vw)!important;height:min(132px,52vw)!important}.score-ring__svg{width:100%!important;height:100%!important}.wizard__step-content{max-width:100%!important}}.grid-resp-2col{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.grid-resp-3col{gap:var(--space-2);grid-template-columns:1fr 1fr 1fr;display:grid}.grid-resp-2col-md{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}@media (max-width:640px){.grid-resp-2col,.grid-resp-2col-md,.grid-resp-3col{grid-template-columns:1fr}.session-save-actions{flex-direction:column}.session-save-actions>*{justify-content:center;width:100%}.results-score-header{flex-direction:column-reverse;align-items:flex-start}.results-score-header .score-ring{align-self:center}}@media (max-width:480px){.session-summary-grid{grid-template-columns:1fr!important}.share-btn-grid{grid-template-columns:1fr 1fr!important}.auth-type-grid{grid-template-columns:1fr!important}}.answer-key-edit-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.answer-key-edit-table>div{min-width:560px}.mobile-nav{display:none;position:relative}.mobile-nav__toggle{cursor:pointer;width:44px;height:44px;color:inherit;border-radius:var(--radius-md);transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-nav__toggle:hover{background:#ffffff1a}.mobile-nav__dropdown{top:calc(100% + var(--space-2));background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-2);z-index:1000;gap:var(--space-1);flex-direction:column;min-width:200px;display:flex;position:absolute;right:0;box-shadow:0 8px 32px #0000001f}.mobile-nav__item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-3);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-sm);transition:background var(--transition-fast);font-weight:500;text-decoration:none;display:flex}.mobile-nav__item:hover{background:var(--bg-secondary)}.mobile-nav__item .app-header__nav-link{justify-content:center;min-width:28px;padding:0}.mobile-nav__item--active{background:var(--primary-50);color:var(--primary-600)}.mobile-nav__item--active:hover{background:var(--primary-100)}.mobile-nav__divider{background:var(--border-light);height:1px;margin:var(--space-1)0}@media (max-width:768px){.app-header--home .app-header__nav{display:none}.app-header--home .mobile-nav{align-items:center;display:flex}}.obj-format-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.obj-format-grid>button{box-sizing:border-box;width:100%;min-height:72px}@media (max-width:540px){.obj-format-grid{grid-template-columns:repeat(2,1fr)}}.grade-select-card-wrap{position:relative}.grade-select-card{border:1.5px solid var(--border-light);text-align:left;cursor:pointer;width:100%;min-height:56px;color:var(--text-primary);background:var(--surface-card);border-radius:10px;flex-direction:column;gap:4px;padding:12px 44px 12px 16px;transition:border-color .15s,background .15s,transform .15s;display:flex}.grade-select-card:hover{border-color:var(--primary-300);transform:translateY(-1px)}.grade-select-card[aria-pressed=true]{border-color:var(--primary-500);background:var(--primary-50)}.grade-select-card__name{font-weight:700}.grade-select-card__hint{color:var(--text-tertiary);font-size:.78rem;line-height:1.35}.grade-select-card__delete{position:absolute;top:10px;right:10px}.school-settings-page{min-width:0;max-width:100%;overflow-x:hidden}.school-settings-page>*{min-width:0}.school-settings-page .card,.school-settings-page .card__header,.school-settings-page .card__body,.school-settings-page .grid-2col,.school-settings-page .grid-3col,.school-settings-page fieldset{min-width:0;max-width:100%}.school-settings-page .card__header>*,.school-settings-page .card__body>*{min-width:0}.school-settings-page .form-input,.school-settings-page .btn{max-width:100%}.school-settings-page__section-note{overflow-wrap:anywhere;max-width:100%}.school-settings-page__grade-inputs{min-width:0;max-width:100%}.roster-table{border-collapse:collapse;width:100%;font-size:var(--text-xs)}.roster-table th,.roster-table td{border-bottom:1px solid var(--border-light);text-align:left;white-space:nowrap;padding:8px 10px}.roster-table th{color:var(--text-secondary);background:var(--gray-50);font-weight:700}.roster-table__row--error{background:var(--danger-50);color:var(--danger-700)}.roster-editor{gap:var(--space-4);flex-direction:column;min-width:0;max-width:100%;display:flex}.roster-editor__toolbar{gap:var(--space-2);flex-wrap:wrap;align-items:center;max-width:100%;display:flex}.roster-editor__toolbar .form-input{flex:260px;min-width:180px}.roster-editor__toolbar .btn{white-space:normal;flex:none;max-width:100%}.roster-table-scroll{border:1px solid var(--border-light);border-radius:var(--radius-lg);overscroll-behavior:contain;scrollbar-gutter:stable both-edges;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;width:100%;min-width:0;max-width:100%;max-height:min(68vh,780px);overflow:auto}.roster-table-scroll .roster-table th{z-index:1;position:sticky;top:0}.roster-table-scroll .roster-table{min-width:100%}.roster-editor-table{table-layout:fixed;width:max(100%,900px);min-width:900px}.roster-editor-table th,.roster-editor-table td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}.roster-editor-table th:first-child,.roster-editor-table td:first-child{text-align:center;width:44px}.roster-editor-table th:nth-child(2),.roster-editor-table td:nth-child(2){width:90px}.roster-editor-table th:nth-child(3),.roster-editor-table td:nth-child(3){width:160px}.roster-editor-table th:nth-child(4),.roster-editor-table td:nth-child(4){width:220px}.roster-editor-table th:nth-child(5),.roster-editor-table td:nth-child(5){width:160px}.roster-editor-table th:nth-child(6),.roster-editor-table td:nth-child(6){width:140px}.roster-editor-table th:nth-child(7),.roster-editor-table td:nth-child(7){width:80px}.roster-editor-table th:nth-child(8),.roster-editor-table td:nth-child(8){width:112px}.roster-editor-table .form-input{width:100%;min-width:0;max-width:100%;font-size:var(--text-xs)}.subjects-editor-grid,.subjects-editor-list,.subjects-editor-row{min-width:0;max-width:100%}.subjects-editor-row>*,.subjects-editor-row .form-input{min-width:0}@media (max-width:540px){.roster-editor__toolbar .form-input,.roster-editor__toolbar .btn{flex:100%;justify-content:center;width:100%}}@media (max-width:768px){.school-settings-page{overflow-x:clip}.school-settings-page .card{max-width:100%}.school-settings-page .card__header,.school-settings-page .card__body{overflow-x:hidden}.school-settings-page__grade-inputs{flex-direction:column}.school-settings-page__grade-inputs .btn,.school-settings-page__grade-inputs .form-input{width:100%;min-width:0}.roster-editor__toolbar{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.roster-editor__toolbar .form-input,.roster-editor__toolbar .btn{width:100%;min-width:0}.roster-table-scroll{max-width:100%;margin-inline:0}.roster-editor-table{width:max(100%,760px);min-width:760px}.roster-editor-table th,.roster-editor-table td{padding:8px}.roster-editor-table th:nth-child(2),.roster-editor-table td:nth-child(2){width:84px}.roster-editor-table th:nth-child(3),.roster-editor-table td:nth-child(3){width:150px}.roster-editor-table th:nth-child(4),.roster-editor-table td:nth-child(4){width:190px}.roster-editor-table th:nth-child(5),.roster-editor-table td:nth-child(5){width:150px}.roster-editor-table th:nth-child(6),.roster-editor-table td:nth-child(6){width:120px}.roster-editor-table th:nth-child(8),.roster-editor-table td:nth-child(8){width:96px}.roster-editor-table .form-input{padding:var(--space-2)var(--space-3);font-size:var(--text-xs)}.subjects-editor-grid{grid-template-columns:minmax(0,1fr)}.subjects-editor-row{grid-template-columns:minmax(0,1fr) auto}}.roster-import-modal{width:min(92vw,860px);max-width:860px}.roster-import-file-input{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.roster-import-upload-card{align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-4);border:1.5px dashed var(--border-medium);border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-card)92%,var(--primary-500)8%),var(--surface-card));color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s;display:flex}.roster-import-upload-card:hover:not(:disabled){border-color:var(--primary-400);transform:translateY(-1px)}.roster-import-upload-card:disabled{cursor:not-allowed;opacity:.75}.roster-import-upload-card__icon{border-radius:var(--radius-lg);background:var(--primary-50);width:44px;height:44px;color:var(--primary-600);flex:none;justify-content:center;align-items:center;display:inline-flex}.roster-import-upload-card__body{flex-direction:column;gap:4px;min-width:0;display:flex}.roster-import-upload-card__body strong{font-size:var(--text-sm);overflow-wrap:anywhere}.roster-import-upload-card__body span{color:var(--text-tertiary);font-size:var(--text-xs);line-height:1.45}.roster-import-helper{margin-top:var(--space-2);color:var(--text-tertiary);font-size:var(--text-xs)}.roster-import-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.roster-import-status{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.45}.roster-import-status--success{background:var(--success-50);color:var(--success-600);border:1px solid var(--success-100)}.roster-import-status--warning{background:var(--warning-50);color:var(--warning-700);border:1px solid var(--warning-100)}.roster-import-summary{margin-bottom:var(--space-2);padding:var(--space-2)var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-size:var(--text-xs);position:sticky;left:0}.class-mode-panel{gap:var(--space-4);flex-direction:column;width:100%;min-width:0;display:flex;overflow:hidden}.class-mode-panel__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--gray-50);display:flex}.class-mode-panel__header h3{font-size:var(--text-base);margin:0 0 4px;font-weight:800}.class-mode-panel__header p{color:var(--text-tertiary);font-size:var(--text-sm);margin:0;line-height:1.45}.class-mode-variant{font-size:var(--text-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.class-mode-variant button{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);min-width:32px;min-height:30px;color:var(--text-secondary);cursor:pointer;font-weight:800}.class-mode-variant button.is-active{border-color:var(--primary-500);background:var(--primary-50);color:var(--primary-700)}.class-mode-empty{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--warning-100);border-radius:var(--radius-lg);background:var(--warning-50);color:var(--warning-700);font-size:var(--text-sm);display:flex}.class-mode-empty p{margin:0}.class-mode-toolbar{gap:var(--space-2);flex-wrap:wrap;align-items:center;min-width:0;max-width:100%;display:flex}.class-mode-toolbar .form-input{min-width:0}.class-mode-toolbar .form-input:first-child{flex:280px}.class-mode-toolbar select.form-input{flex:0 190px}.class-mode-toolbar .btn{white-space:normal;flex:none;max-width:100%}.class-mode-table-wrap{border:1px solid var(--border-light);border-radius:var(--radius-lg);overscroll-behavior:contain;touch-action:pan-x pan-y;scrollbar-gutter:stable both-edges;width:100%;min-width:0;max-width:100%;max-height:min(70vh,820px);overflow:auto}.class-mode-table-scrollbar{max-width:100%;height:14px;margin-bottom:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--gray-50);scrollbar-gutter:stable;display:none;overflow:auto hidden}.class-mode-table-scrollbar__inner{height:1px}.class-mode-table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:860px;font-size:var(--text-xs)}.class-mode-table th,.class-mode-table td{border-bottom:1px solid var(--border-light);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:10px 12px}.class-mode-table th:first-child,.class-mode-table td:first-child{text-align:center;width:54px}.class-mode-table th:nth-child(2),.class-mode-table td:nth-child(2){width:90px}.class-mode-table th:nth-child(3),.class-mode-table td:nth-child(3){width:160px}.class-mode-table th:nth-child(4),.class-mode-table td:nth-child(4){width:210px}.class-mode-table th:nth-child(5),.class-mode-table td:nth-child(5){width:240px}.class-mode-table th:nth-child(6),.class-mode-table td:nth-child(6){width:120px}.class-mode-table th:nth-child(7),.class-mode-table td:nth-child(7){width:130px}.class-mode-table th{background:var(--gray-50);color:var(--text-secondary);z-index:2;font-weight:800;position:sticky;top:0}.class-mode-table tbody tr:last-child td{border-bottom:0}.class-mode-contact,.class-mode-upload-stack,.class-mode-file-list,.class-mode-row-actions,.class-mode-upload-group{flex-direction:column;gap:6px;min-width:0;display:flex}.class-mode-upload-group__label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:700}.class-mode-upload-meta{border-radius:var(--radius-md);background:color-mix(in srgb,var(--primary-500)8%,var(--surface-card));color:var(--text-secondary);padding:6px 8px;font-size:11px;line-height:1.45}.class-mode-file-summary{color:var(--text-secondary);font-size:11px;font-weight:700}.class-mode-file-chip-grid{flex-wrap:wrap;gap:6px;max-height:78px;padding-right:2px;display:flex;overflow:auto}.class-mode-file-chip{border:1px solid var(--border-light);border-radius:var(--radius-full);background:color-mix(in srgb,var(--gray-50)86%,var(--surface-card));align-items:center;gap:6px;max-width:100%;padding:4px 8px;display:flex}.class-mode-file-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:160px;color:var(--text-secondary);font-size:11px;font-weight:600;overflow:hidden}.class-mode-file-chip__remove{border-radius:var(--radius-full);width:18px;height:18px;color:var(--danger-600);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.class-mode-status-block{flex-direction:column;gap:6px;min-width:0;display:flex}.class-mode-student-cards{display:none}.class-mode-contact span,.class-mode-file-list span,.class-mode-status-message{color:var(--text-tertiary);overflow-wrap:anywhere}.class-mode-upload-button{border:1px dashed var(--border-medium);border-radius:var(--radius-md);background:var(--surface-card);min-height:32px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-weight:700;display:inline-flex}.class-mode-notify-panel{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);display:flex}.class-mode-notify-panel__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.class-mode-notify-panel__copy strong{font-size:var(--text-sm);color:var(--text-primary)}.class-mode-notify-panel__copy span{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.5}.class-mode-notify-panel__controls{gap:var(--space-2);flex-wrap:wrap;flex:0 460px;justify-content:flex-end;display:flex}.class-mode-delivery-choice{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;width:100%;display:flex}.class-mode-delivery-choice__option{border:1px solid var(--border-light);border-radius:var(--radius-md);background:color-mix(in srgb,var(--gray-50)82%,var(--surface-card));min-height:38px;color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:inline-flex}.class-mode-delivery-choice__option input{margin:0}.class-mode-notify-panel__controls .form-input{flex:150px;min-width:0}.class-mode-notify-panel__controls .btn{flex:none}.class-mode-summary-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(142px,1fr));display:grid}.class-mode-summary-card{min-width:0;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--gray-50);flex-direction:column;gap:4px;display:flex}.class-mode-summary-card span{color:var(--text-secondary);font-size:var(--text-xs);font-weight:700}.class-mode-summary-card strong{color:var(--text-primary);font-size:var(--text-xl);line-height:1}.class-mode-notify-panel__feedback{margin-top:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:700}.class-mode-notify-panel__feedback--success{background:var(--success-50);color:var(--success-600)}.class-mode-notify-panel__feedback--warning{background:var(--warning-50);color:var(--warning-700)}.class-mode-notify-panel__feedback--error{background:var(--danger-50);color:var(--danger-600)}.class-mode-notify-panel__details{margin-top:var(--space-2);flex-direction:column;gap:6px;display:flex}.class-mode-notify-panel__detail{justify-content:space-between;gap:var(--space-2);color:var(--text-tertiary);font-size:11px;display:flex}.class-mode-notify-panel__detail a{color:var(--primary-600);font-weight:700;text-decoration:none}.class-mode-upload-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.class-mode-status{border-radius:var(--radius-full);background:var(--gray-100);min-height:24px;color:var(--text-secondary);text-transform:capitalize;align-items:center;padding:3px 8px;font-weight:800;display:inline-flex}.class-mode-status--ready,.class-mode-status--evaluated,.class-mode-status--completed,.class-mode-status--finalized{background:var(--success-50);color:var(--success-600)}.class-mode-status--queued,.class-mode-status--paused,.class-mode-status--evaluating,.class-mode-status--processing,.class-mode-status--review_needed{background:var(--warning-50);color:var(--warning-700)}.class-mode-status--failed,.class-mode-status--skipped{background:var(--danger-50);color:var(--danger-600)}@media (max-width:540px){.roster-import-upload-card{flex-direction:column}.roster-import-actions .btn{justify-content:center;width:100%}.class-mode-panel__header,.class-mode-empty{flex-direction:column}.class-mode-toolbar{flex-direction:column;align-items:stretch}.class-mode-toolbar .form-input,.class-mode-toolbar select.form-input,.class-mode-toolbar .btn{flex:auto;justify-content:center;width:100%}.class-mode-notify-panel{flex-direction:column}.class-mode-notify-panel__controls{flex:auto;width:100%}.class-mode-notify-panel__controls .form-input,.class-mode-notify-panel__controls .btn{flex:100%;justify-content:center;width:100%}}@media (max-width:380px){.mobile-upload-field{gap:var(--space-2);padding-left:var(--space-2)}.mobile-upload-field__summary{gap:var(--space-2)}.mobile-upload-field__icon{width:36px;height:36px}.mobile-upload-field__actions{gap:6px}.mobile-attachment-sheet{padding:var(--space-2);padding-bottom:max(var(--space-2),env(safe-area-inset-bottom,0px))}.mobile-upload-source__actions,.mobile-upload-review-modal__actions,.mobile-upload-reliability__actions,.mobile-upload-review-modal__confirm div{grid-template-columns:1fr}.mobile-upload-validation__header{flex-direction:column}.mobile-upload-validation__header .btn{justify-content:center;width:100%}.mobile-upload-review__item{grid-template-columns:72px minmax(0,1fr)}.mobile-upload-review__preview{width:72px}.mobile-upload-progress__topline{flex-direction:column;gap:4px}.mobile-capture-session__preview,.mobile-capture-session__placeholder{min-height:188px}}@media (max-width:430px){.mobile-upload-field,.mobile-attachment-sheet__panel{max-width:100%}.mobile-upload-source__actions{gap:var(--space-2)}.mobile-upload-source__button{padding:var(--space-2);align-items:flex-start}.mobile-upload-shell,.mobile-upload-source,.mobile-upload-review{overflow-x:clip}}@media (max-width:1024px){.upload-zone-desktop-frame{display:none}.mobile-upload-shell{width:100%;display:block}.mobile-upload-source{gap:var(--space-3);width:100%;min-width:0;display:grid}.class-mode-table-scrollbar{display:none!important}.class-mode-table-wrap--desktop{display:none}.class-mode-student-cards{gap:var(--space-3);overscroll-behavior:contain;max-height:min(68vh,720px);padding-right:2px;display:grid;overflow:auto}.class-mode-student-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface-card);flex-direction:column;min-width:0;display:flex;overflow:hidden}.class-mode-student-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.class-mode-student-card__checkbox{font-size:var(--text-xs);color:var(--text-secondary);flex:none;align-items:center;gap:8px;font-weight:700;display:inline-flex}.class-mode-student-card__identity{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.class-mode-student-card__identity strong,.class-mode-student-card__identity span{overflow-wrap:anywhere}.class-mode-student-card__identity span{font-size:var(--text-xs);color:var(--text-tertiary)}.class-mode-student-card__grid{gap:var(--space-3);min-width:0;display:grid}.class-mode-student-card__field{flex-direction:column;gap:8px;min-width:0;display:flex}.class-mode-student-card__field-label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:700}.class-mode-mobile-uploads{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.class-mode-upload-group--card .mobile-autoscan-launcher{width:100%}.class-mode-row-actions--mobile .btn{justify-content:center;width:100%}}
