:root{font-family:Alexandria,sans-serif;color:#2b2528;background:#fbf7f4;font-synthesis:none;--primary: #a30d43;--primary-dark: #7d0a34;--primary-soft: #f8dce7;--navy: #2b2528;--muted: #7d6870;--border: #eadde0;--surface: #ffffff;--surface-soft: #fbf7f4;--success: #2b8a5f;--success-soft: #e8f5ee;--danger: #c4324f;--danger-soft: #fde7ed;--warning: #c58a18;--warning-soft: #fff3d7;--blue: #385f8f;--blue-soft: #e9f0fa;--shadow: 0 14px 42px rgba(77, 24, 43, .09);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 11px}[data-theme=dark]{color:#fff8f4;background:#180d13;--navy: #fff8f4;--muted: #d3b8c1;--border: #3d2630;--surface: #24151c;--surface-soft: #180d13;--primary-soft: #3b1525;--success-soft: #173d33;--danger-soft: #46212b;--warning-soft: #45361d;--blue-soft: #1f354f;--shadow: 0 12px 40px rgba(0, 0, 0, .16)}*{box-sizing:border-box}html{min-width:320px;background:var(--surface-soft)}body{margin:0;min-width:320px;min-height:100vh;background:var(--surface-soft)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}input::placeholder{color:#aaa8b7}button:focus-visible,a:focus-visible{outline:3px solid rgba(163,13,67,.28);outline-offset:2px}.button{min-height:46px;border:0;border-radius:12px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;transition:transform .16s,background .16s,box-shadow .16s}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button-primary{background:var(--primary);color:#fff;box-shadow:0 8px 20px #a30d4338}.button-primary:hover{background:var(--primary-dark)}.button-secondary{background:var(--surface);color:var(--navy);border:1px solid var(--border)}.button-ghost{color:var(--muted);background:transparent}.button-danger{background:var(--danger);color:#fff}.button-soft{background:var(--primary-soft);color:var(--primary)}.button-sm{min-height:38px;padding-inline:13px;font-size:13px}.button-lg{min-height:54px;padding-inline:26px;font-size:16px}.button-block{width:100%}.icon-button{width:44px;height:44px;border:1px solid transparent;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);background:transparent}.icon-button:hover{color:var(--primary);background:var(--primary-soft)}.brand{display:flex;align-items:center;gap:11px;color:var(--navy)}.brand-mark{width:52px;height:52px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;object-fit:cover;box-shadow:0 10px 24px #a30d4347}.brand-logo{padding:0;border:2px solid rgba(255,255,255,.92)}.brand strong{display:block;font-size:22px;letter-spacing:-.5px}.brand small{display:block;color:var(--muted);font-size:10px;margin-top:1px}.brand-compact>div:last-child{display:none}.admin-shell{min-height:100vh;padding-right:268px;transition:padding .25s}.admin-shell.sidebar-collapsed{padding-right:92px}.sidebar{width:268px;position:fixed;z-index:40;inset:0 0 0 auto;padding:22px 17px;background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;transition:width .25s,transform .25s}.sidebar-collapsed .sidebar{width:92px}.sidebar-top{height:58px;display:flex;align-items:center;justify-content:space-between;padding-inline:8px}.sidebar-nav{flex:1;padding-top:28px;display:flex;flex-direction:column;gap:6px}.nav-link{display:block;border-radius:12px}.nav-label{color:#aaa8b7;font-size:11px;padding:0 14px 9px}.nav-item{border:0;width:100%;min-height:47px;padding:0 14px;border-radius:12px;display:flex;align-items:center;gap:13px;color:var(--muted);background:transparent;font-size:13px;font-weight:600;white-space:nowrap}.nav-item:hover{background:var(--surface-soft);color:var(--navy)}.nav-item.active,.nav-link.active .nav-item{color:var(--primary);background:var(--primary-soft)}.nav-item .MuiListItemIcon-root{color:inherit;min-width:33px}.nav-item .MuiListItemText-primary{font-size:13px;font-weight:600}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .nav-item span,.sidebar-collapsed .collapse-button span{display:none}.sidebar-bottom{display:flex;flex-direction:column;gap:4px;padding-top:16px;border-top:1px solid var(--border)}.collapse-button{min-height:42px;border:0;background:transparent;color:#aaa8b7;display:flex;align-items:center;gap:12px;padding:0 14px}.sidebar-collapsed .collapse-button{justify-content:center;padding:0;transform:rotate(180deg)}.admin-main{min-width:0}.topbar{height:82px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);position:sticky;top:0;z-index:25;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar .MuiToolbar-root{width:100%;min-height:100%;display:flex;align-items:center;justify-content:space-between}.topbar-start,.topbar-actions,.profile-trigger,.student-profile{display:flex;align-items:center}.welcome strong{display:block;font-size:14px;color:var(--navy)}.welcome span{font-size:11px;color:var(--muted)}.topbar-actions{gap:8px}.profile-menu{position:relative}.profile-trigger{border:0;background:transparent;gap:9px;border-right:1px solid var(--border);margin-right:5px;padding-right:16px;color:var(--navy)}.profile-copy{text-align:right}.profile-copy strong{display:block;font-size:12px}.profile-copy small{display:block;color:var(--muted);font-size:10px}.avatar{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-weight:800}.profile-popover{position:absolute;top:calc(100% + 12px);left:0;width:190px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:7px;box-shadow:var(--shadow)}.profile-popover button{width:100%;border:0;background:transparent;padding:11px;display:flex;gap:9px;color:var(--navy);border-radius:9px}.profile-popover button:hover{background:var(--surface-soft)}.danger-text{color:var(--danger)!important}.page-content{padding:31px 34px 54px;max-width:1600px;margin-inline:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:25px}.page-heading h1{font-size:clamp(24px,3vw,31px);color:var(--navy);margin:5px 0 7px;letter-spacing:-.8px}.page-heading p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.8}.eyebrow{color:var(--primary);font-size:11px;font-weight:700}.back-link{border:0;background:transparent;color:var(--primary);padding:0;display:flex;align-items:center;gap:3px}.page-actions,.toolbar-actions{display:flex;gap:9px;flex-wrap:wrap}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stat-card{min-height:124px;padding:21px;display:flex;align-items:center;gap:15px}.stat-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;flex:0 0 auto}.tone-purple{background:var(--primary-soft);color:var(--primary)}.tone-green{background:var(--success-soft);color:var(--success)}.tone-blue{background:var(--blue-soft);color:var(--blue)}.tone-orange{background:var(--warning-soft);color:var(--warning)}.stat-card span{color:var(--muted);display:block;font-size:11px}.stat-card strong{color:var(--navy);display:block;font-size:25px;margin:4px 0 2px}.stat-card small{color:var(--success);font-size:9px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.85fr);gap:18px;margin-top:18px}.card-header{padding:21px 23px 16px;display:flex;justify-content:space-between;align-items:center;gap:14px}.card-header h2{font-size:16px;color:var(--navy);margin-bottom:4px}.card-header p{font-size:11px;color:var(--muted);margin:0}.card-body{padding:0 23px 23px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.toolbar-filters{flex:1;display:flex;gap:10px}.toolbar-filters select{max-width:190px}.search-field{min-height:46px;flex:1;max-width:380px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:0 13px;color:var(--muted)}.search-field .MuiOutlinedInput-notchedOutline{border:0}.search-field .MuiOutlinedInput-root{padding:0}.search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #a30d431f}.search-field input{border:0;padding:0;min-height:auto;box-shadow:none!important;background:transparent}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:right}th{color:#9997aa;font-size:10px;font-weight:600;padding:12px 14px;border-bottom:1px solid var(--border);white-space:nowrap}td{color:var(--navy);font-size:12px;padding:15px 14px;border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-soft)}.table-title{display:flex;align-items:center;gap:10px}.table-title strong{display:block;font-size:12px}.table-title small{color:var(--muted);font-size:9px;display:block;margin-top:3px}.item-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);flex:0 0 auto}.row-actions{display:flex;gap:3px;justify-content:flex-end}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:9px;font-weight:700;white-space:nowrap}.badge-neutral{color:var(--muted);background:var(--surface-soft)}.badge-success{color:var(--success);background:var(--success-soft)}.badge-danger{color:var(--danger);background:var(--danger-soft)}.badge-warning{color:var(--warning);background:var(--warning-soft)}.badge-purple{color:var(--primary);background:var(--primary-soft)}.badge-blue{color:var(--blue);background:var(--blue-soft)}.list-stack{display:flex;flex-direction:column}.list-item{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}.list-item:last-child{border-bottom:0}.list-item-main{flex:1;min-width:0}.list-item-main strong{display:block;font-size:12px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item-main span{color:var(--muted);font-size:9px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-card{min-height:105px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--navy)}.quick-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow)}.quick-card svg{color:var(--primary)}.quick-card strong{font-size:12px}.quick-card span{font-size:9px;color:var(--muted)}.chart-placeholder{height:200px;display:flex;align-items:flex-end;gap:13px;padding-top:25px;border-bottom:1px solid var(--border)}.chart-bar{flex:1;max-width:42px;min-width:15px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,var(--primary),#c75c7f);position:relative}.chart-bar span{position:absolute;bottom:-26px;right:50%;transform:translate(50%);color:var(--muted);font-size:8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field-label{color:var(--navy);font-size:11px;font-weight:600}.field .MuiFormHelperText-root{margin-inline:0}.field small{color:var(--muted);font-size:9px;line-height:1.6}.field-error{color:var(--danger)!important}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;right:14px;top:15px;color:var(--muted);pointer-events:none}.input-with-icon input{padding-right:43px}.password-wrap>svg{right:14px}.upload-zone{min-height:185px;margin-bottom:16px;border:1.5px dashed #c9c4e9;border-radius:18px;background:var(--primary-soft);color:var(--primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:relative;text-align:center}.upload-zone strong{color:var(--navy);font-size:13px}.upload-zone span{color:var(--muted);font-size:10px}.upload-zone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.muted-copy{color:var(--muted);font-size:11px;line-height:1.9}.bulk-bar{min-height:62px;margin-bottom:14px;padding:10px 16px;border-radius:15px;background:var(--navy);color:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:15px}.bulk-bar strong{font-size:11px}.bulk-bar>div{display:flex;gap:7px;flex-wrap:wrap}.table-check{width:18px;min-height:18px;accent-color:var(--primary)}.credential-cell{display:flex;align-items:center;gap:8px;direction:ltr}.credential-cell span,.credential-cell strong{font-size:10px}.credential-cell button{border:0;background:var(--primary-soft);color:var(--primary);width:29px;height:29px;border-radius:8px;display:grid;place-items:center}.inline-data{display:inline-flex;align-items:center;gap:6px}.wizard-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.wizard-steps{display:flex;flex-direction:column;gap:5px}.wizard-step{min-height:66px;padding:10px 12px;display:flex;align-items:center;gap:11px;color:var(--muted);border-radius:14px}.wizard-step>span{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.wizard-step small,.wizard-step strong{display:block}.wizard-step small{font-size:8px;margin-bottom:3px}.wizard-step strong{font-size:10px}.wizard-step.active{background:var(--primary-soft);color:var(--primary)}.wizard-step.active>span{background:var(--primary);color:#fff;border-color:var(--primary)}.wizard-step.done>span{background:var(--success-soft);color:var(--success);border-color:transparent}.wizard-card{padding:clamp(22px,4vw,34px);min-height:520px;display:flex;flex-direction:column}.section-heading{display:flex;align-items:center;gap:11px;margin-bottom:25px}.section-heading h2{color:var(--navy);font-size:18px;margin-bottom:5px}.section-heading p{color:var(--muted);font-size:10px;margin:0}.wizard-actions{margin-top:auto;padding-top:28px;display:flex;justify-content:space-between;border-top:1px solid var(--border)}.selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.selection-card{min-height:76px;padding:13px;border:1px solid var(--border);border-radius:14px;display:flex;align-items:center;gap:11px;background:var(--surface);cursor:pointer}.selection-card:hover,.selection-card.selected{border-color:var(--primary);background:var(--primary-soft)}.selection-card input{position:absolute;opacity:0;pointer-events:none}.selection-check{width:24px;height:24px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;color:transparent;background:var(--surface)}.selection-card.selected .selection-check{background:var(--primary);border-color:var(--primary);color:#fff}.selection-card strong{display:block;color:var(--navy);font-size:11px}.selection-card small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.review-hero{padding:20px;border:1px solid var(--border);border-radius:16px;display:flex;align-items:center;gap:13px}.review-hero>div:nth-child(2){flex:1}.review-hero h3{color:var(--navy);margin:0 0 5px;font-size:15px}.review-hero span{color:var(--muted);font-size:9px}.review-stats{margin:18px 0 25px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.review-stats>div{padding:16px 10px;border-radius:14px;background:var(--surface-soft);text-align:center}.review-stats strong,.review-stats span{display:block}.review-stats strong{color:var(--navy);font-size:15px}.review-stats span{color:var(--muted);font-size:8px;margin-top:4px}.detail-summary{display:grid;grid-template-columns:minmax(300px,1fr) repeat(3,145px);gap:12px;margin-bottom:18px}.summary-main{padding:18px 20px}.exam-title-row{height:100%;display:flex;align-items:center;gap:12px}.exam-title-row>div:nth-child(2){flex:1}.exam-title-row span,.exam-title-row strong{display:block}.exam-title-row>div>span{color:var(--muted);font-size:9px}.exam-title-row strong{color:var(--navy);font-size:12px;margin-top:4px}.mini-summary{padding:16px;display:grid;place-items:center;text-align:center}.mini-summary svg{color:var(--primary)}.mini-summary strong{color:var(--navy);font-size:18px;margin:4px 0 1px}.mini-summary span{color:var(--muted);font-size:8px}.tabs{display:flex;gap:4px;padding:5px;margin-bottom:16px;border:1px solid var(--border);border-radius:13px;background:var(--surface);overflow-x:auto}.tabs button{min-height:38px;border:0;border-radius:9px;padding:0 17px;color:var(--muted);background:transparent;white-space:nowrap;font-size:10px;font-weight:600}.tabs button.active{color:var(--primary);background:var(--primary-soft)}.tabs .MuiTab-root{min-height:38px;border-radius:9px;font-size:10px}.tabs .Mui-selected{color:var(--primary);background:var(--primary-soft)}.tabs .MuiTabs-indicator{display:none}.detail-card{padding:clamp(22px,4vw,30px)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.info-grid>div{padding:15px;border-radius:13px;background:var(--surface-soft)}.info-grid span,.info-grid strong{display:block}.info-grid span{color:var(--muted);font-size:8px;margin-bottom:5px}.info-grid strong{color:var(--navy);font-size:11px}.number-pill{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:var(--primary);background:var(--surface);font-size:10px;font-weight:700}.results-table-card{margin-top:18px}.settings-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:16px;align-items:start}.settings-grid>:first-child{grid-row:span 2}.api-status{display:flex;align-items:center;gap:10px;padding:15px;margin-bottom:16px;border-radius:13px;background:var(--surface-soft)}.api-status>span{width:9px;height:9px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 4px var(--warning-soft)}.api-status strong,.api-status small{display:block}.api-status strong{color:var(--navy);font-size:10px}.api-status small{color:var(--muted);font-size:8px;margin-top:4px;direction:ltr}.access-error{margin-top:13px;padding:10px 13px;border-radius:10px;background:#ffdce221;color:#ffd4dd;font-size:10px}.secure-note{margin-top:8px;display:flex;align-items:center;gap:7px;color:var(--success);font-size:9px}.result-date{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:8px}.score-row small{display:flex;align-items:center;gap:5px}.pending-result{display:flex;align-items:center;gap:8px;color:var(--warning);font-size:10px;font-weight:700}.student-empty{padding:45px;text-align:center;color:var(--muted)}.student-empty svg{color:var(--primary)}.student-empty h3{color:var(--navy);font-size:14px;margin:12px 0 5px}.student-empty p{font-size:10px}.error-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--surface-soft)}.error-page .card{max-width:550px;padding:48px;text-align:center}.error-code{color:var(--primary);font-size:12px;font-weight:700}.error-page h1{color:var(--navy);font-size:24px;margin:8px 0}.error-page p{color:var(--muted);font-size:11px;line-height:1.8;margin-bottom:22px}.levels-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.level-stat-card{padding:18px}.levels-toolbar{align-items:center}.level-table-link{display:flex!important;align-items:center;justify-content:flex-start!important;gap:10px;padding:6px;border-radius:12px;text-align:right!important}.level-table-link strong,.level-table-link small{display:block}.level-table-link small{color:var(--muted);font-size:9px;margin-top:3px}.level-state-card{min-height:220px;display:grid;place-items:center;align-content:center;gap:14px;padding:30px;color:var(--muted)}.levels-mobile-list{display:none;padding:0 16px 18px}.level-mobile-card{margin-bottom:12px}.level-mobile-card .MuiCardActionArea-root{padding:16px}.level-details-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px}.level-details-hero,.level-details-meta{padding:clamp(22px,4vw,32px)}.level-icon-large{width:76px;height:76px;display:grid;place-items:center;border-radius:24px;color:var(--primary);background:var(--primary-soft)}.field-full{grid-column:1 / -1}.modal-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;background:#1412258a;display:grid;place-items:center;padding:22px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{width:min(100%,620px);max-height:calc(100vh - 44px);overflow:auto;border-radius:24px;background:var(--surface);box-shadow:0 24px 70px #100d2840}.modal-sm{max-width:440px}.modal-lg{max-width:850px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 25px 16px;border-bottom:1px solid var(--border)}.modal-header h2{margin-bottom:5px;color:var(--navy);font-size:18px}.modal-header p{margin:0;color:var(--muted);font-size:10px}.modal-body{padding:23px 25px 25px}.modal-actions{margin-top:24px;padding-top:18px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:9px}.dialog-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--danger-soft);color:var(--danger);margin-bottom:12px}.empty-state{min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px}.empty-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:var(--primary);background:var(--primary-soft);margin-bottom:14px}.empty-state h3{color:var(--navy);font-size:15px;margin-bottom:6px}.empty-state p{color:var(--muted);font-size:11px;max-width:360px;line-height:1.8}.toast{position:fixed;z-index:200;left:24px;bottom:24px;min-height:52px;max-width:min(380px,calc(100vw - 32px));padding:0 15px;border:1px solid var(--border);background:var(--surface);color:var(--navy);border-radius:14px;box-shadow:0 16px 45px #14103729;display:flex;align-items:center;gap:10px;font-size:11px}.toast>svg{color:var(--success)}.toast button{margin-right:auto;border:0;background:transparent;color:var(--muted)}.progress{width:100%;height:8px;border-radius:999px;background:var(--border);overflow:hidden}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#d35e84);transition:width .35s}.skeleton-stack{display:grid;gap:10px}.skeleton{height:42px;border-radius:10px;background:linear-gradient(90deg,var(--surface-soft),var(--border),var(--surface-soft));background-size:200% 100%;animation:shimmer 1.3s infinite}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--surface)}.auth-visual{position:relative;overflow:hidden;padding:42px clamp(38px,6vw,90px);color:#fff;background:linear-gradient(145deg,#2b111b,#a30d43);display:flex;flex-direction:column}.auth-visual .brand{color:#fff;position:relative;z-index:2}.auth-visual .brand small{color:#ffffff8c}.visual-orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:520px;height:520px;top:-210px;left:-180px;background:radial-gradient(circle,#ffffff3d,#fff0)}.orb-two{width:450px;height:450px;bottom:-230px;right:-170px;background:radial-gradient(circle,#2b252861,#2b252800)}.auth-message{margin-block:auto;position:relative;z-index:2;max-width:550px}.auth-kicker{display:inline-flex;align-items:center;gap:7px;color:#c9c0ff;font-size:12px;margin-bottom:24px}.auth-message h1{font-size:clamp(35px,5vw,60px);line-height:1.35;letter-spacing:-2px;margin-bottom:22px}.auth-message h1 em{color:#ffd8e4;font-style:normal}.auth-message p{max-width:475px;color:#ffffff9e;line-height:2;font-size:13px}.floating-card{position:absolute;z-index:2;background:#ffffff1a;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:14px 17px;display:flex;align-items:center;gap:11px;color:#dcd6ff}.floating-card strong{display:block;color:#fff;font-size:15px}.floating-card span{font-size:9px;color:#ffffff8c}.card-score{bottom:10%;left:10%}.card-students{top:23%;left:8%}.auth-form-area{display:grid;place-items:center;padding:35px;background:var(--surface)}.login-card{width:min(100%,430px)}.login-card .brand{display:none;margin-bottom:42px}.login-card h2{color:var(--navy);font-size:28px;margin-bottom:9px}.login-card>p{color:var(--muted);font-size:12px;margin-bottom:29px;line-height:1.8}.login-form{display:grid;gap:16px}.password-wrap{position:relative}.password-wrap input{padding-left:48px}.password-wrap button{position:absolute;top:2px;left:3px}.login-switch{margin-top:24px;text-align:center;font-size:11px;color:var(--muted)}.login-switch a{color:var(--primary);font-weight:700}.demo-note{margin-top:24px;padding:13px 15px;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-size:10px;line-height:1.7}.student-shell{min-height:100vh;background:linear-gradient(180deg,#fff3f7,#fff 45%)}[data-theme=dark] .student-shell{background:var(--surface-soft)}.student-header{max-width:1200px;height:86px;margin-inline:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.student-profile{gap:10px}.student-name{text-align:left}.student-name strong{display:block;color:var(--navy);font-size:11px}.student-name small{display:block;color:var(--muted);font-size:8px;direction:ltr}.avatar-student{background:var(--success-soft);color:var(--success)}.student-content{max-width:1140px;margin-inline:auto;padding:34px 24px 70px}.student-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:stretch}.access-card{padding:clamp(25px,5vw,45px);background:linear-gradient(135deg,#2b111b,#a30d43);color:#fff;overflow:hidden;position:relative}.access-card:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-120px;top:-120px;box-shadow:0 0 0 42px #ffffff08,0 0 0 85px #ffffff05}.access-card>*{position:relative;z-index:1}.access-card h1{font-size:clamp(25px,4vw,37px);line-height:1.5;margin-bottom:10px}.access-card p{color:#ffffffad;font-size:11px;line-height:1.8}.code-form{display:flex;gap:10px;margin-top:27px;max-width:560px}.code-form input{min-height:57px;direction:ltr;text-align:center;letter-spacing:5px;text-transform:uppercase;font-weight:800;font-size:18px;background:#fffffff5;color:#292342;border:0}.code-form .button{min-height:57px;background:#fff2f6;color:var(--primary-dark);box-shadow:none}.student-side-card{padding:27px;display:flex;flex-direction:column;justify-content:center}.student-side-card .big-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--warning-soft);color:var(--warning);margin-bottom:18px}.student-side-card h2{color:var(--navy);font-size:17px}.student-side-card p{color:var(--muted);font-size:10px;line-height:1.9}.student-section{margin-top:30px}.student-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.student-section-title h2{font-size:18px;color:var(--navy);margin:0}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.result-card{padding:20px}.result-card-top{display:flex;justify-content:space-between;gap:10px}.result-card h3{color:var(--navy);font-size:13px;line-height:1.6;margin:12px 0 16px}.score-row{display:flex;align-items:end;justify-content:space-between}.score-number strong{font-size:27px;color:var(--primary)}.score-number span{color:var(--muted);font-size:11px}.score-row small{color:var(--muted);font-size:9px}.exam-page{min-height:100dvh;background:var(--surface-soft);padding-bottom:96px}.exam-topbar{height:76px;background:var(--surface);border-bottom:1px solid var(--border);padding:0 clamp(18px,4vw,48px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:15}.exam-meta{display:flex;align-items:center;gap:14px}.exam-meta h1{font-size:14px;color:var(--navy);margin:0}.exam-meta span{color:var(--muted);font-size:9px}.exam-timer{display:flex;align-items:center;gap:8px;color:var(--danger);font-weight:700;direction:ltr}.exam-wrap{max-width:820px;margin-inline:auto;padding:24px 20px}.exam-progress-copy{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-bottom:9px}.question-card{margin-top:10px;padding:clamp(10px,3vw,32px);text-align:center;display:flex;flex-direction:column;align-items:center}.question-number{color:var(--primary);font-size:11px;font-weight:700}.question-card h2{color:var(--navy);font-size:18px;margin:10px 0 16px}.number-stack{display:inline-flex;flex-direction:column;align-items:flex-end;min-width:150px;margin-bottom:28px;direction:ltr}.number-stack span{width:100%;text-align:right;font-size:31px;font-weight:700;line-height:1.5;color:var(--navy)}.number-stack span:last-child{border-bottom:3px solid var(--navy)}.answer-field{max-width:320px;margin-inline:auto}.answer-field input{height:62px;text-align:center;direction:ltr;font-size:22px;font-weight:800;border-width:2px}.numeric-keypad{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:4px}.keypad-display{min-width:220px;height:60px;display:flex;align-items:center;justify-content:center;border:2px solid var(--primary);border-radius:12px;background:var(--surface);font-size:30px;font-weight:800;direction:ltr;letter-spacing:2px;color:var(--navy)}.keypad-placeholder{color:var(--muted);font-weight:400;font-size:22px}.keypad-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(240px,80vw);gap:9px}.keypad-key{height:60px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);font-size:22px;font-weight:700;color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,transform .08s;-webkit-tap-highlight-color:transparent}.keypad-key:active{background:var(--primary);color:#fff;transform:scale(.93)}.keypad-key--del{background:#fff3f3;color:#d32f2f;border-color:#ffc0c0}.keypad-key--del:active{background:#d32f2f;color:#fff}.keypad-key--neg{background:#f3f6ff;color:var(--primary);font-size:24px}.keypad-key--neg:active{background:var(--primary);color:#fff}.keypad-key--dot{background:#f3f6ff;color:var(--navy);font-size:26px;font-weight:900}.keypad-key--dot:active{background:var(--navy);color:#fff}.keypad-key--clear{grid-column:3 / 4;height:60px;border-radius:12px;border:1.5px solid #ffc0c0;background:#fff3f3;color:#d32f2f;font-size:13px;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s;display:flex;align-items:center;justify-content:center}.keypad-key--clear:active{background:#d32f2f;color:#fff}.exam-actions{position:fixed;z-index:20;bottom:0;right:0;left:0;min-height:78px;padding:12px max(20px,env(safe-area-inset-left)) calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);display:flex;justify-content:center}.exam-actions>div{width:min(100%,780px);display:flex;justify-content:flex-end}.instructions-card,.result-view{max-width:730px;margin:45px auto;padding:clamp(25px,6vw,52px);text-align:center}.instructions-icon,.result-icon{width:76px;height:76px;margin:0 auto 20px;display:grid;place-items:center;border-radius:22px;background:var(--primary-soft);color:var(--primary)}.instructions-card h1,.result-view h1{color:var(--navy);font-size:clamp(24px,4vw,34px)}.instructions-card>p,.result-view>p{color:var(--muted);font-size:11px;line-height:1.9;max-width:520px;margin:0 auto 25px}.instruction-list{text-align:right;display:grid;gap:11px;margin:25px 0;padding:20px;border-radius:16px;background:var(--surface-soft)}.instruction-list span{color:var(--navy);font-size:11px;display:flex;align-items:center;gap:9px}.instruction-list svg{color:var(--success)}.result-score{font-size:58px;font-weight:800;color:var(--primary);line-height:1}.result-score small{font-size:19px;color:var(--muted)}.result-icon--pass{background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success)}.result-icon--fail{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.result-circle-wrap{display:flex;justify-content:center;margin:10px 0 18px}.result-circle{width:130px;height:130px}.result-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:420px;margin:0 auto 24px}.result-stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border-radius:14px;background:var(--surface-soft)}.result-stat strong{font-size:28px;font-weight:800;line-height:1}.result-stat span{font-size:10px;color:var(--muted);font-weight:600}.result-stat--correct{background:color-mix(in srgb,var(--success) 10%,transparent)}.result-stat--correct strong{color:var(--success)}.result-stat--wrong{background:color-mix(in srgb,var(--danger) 10%,transparent)}.result-stat--wrong strong{color:var(--danger)}.result-stat--total strong{color:var(--primary)}.result-hidden-note{color:var(--muted);font-size:11px;line-height:1.9;max-width:420px;margin:0 auto 24px}.result-rank{font-size:13px;color:var(--navy);margin-bottom:16px}.student-picker{display:flex;flex-direction:column}.student-picker-table{overflow-x:auto;border-radius:12px;border:1px solid var(--border)}.picker-table{width:100%;border-collapse:collapse;font-size:13px}.picker-table thead tr{background:var(--surface-soft)}.picker-table th{padding:10px 12px;text-align:right;font-weight:600;color:var(--muted);font-size:11px;border-bottom:1px solid var(--border);white-space:nowrap}.picker-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.picker-table tbody tr:last-child td{border-bottom:none}.picker-table tbody tr:hover{background:var(--surface-soft)}.picker-table tbody tr.picker-row--selected{background:var(--primary-soft)}.picker-table tbody tr.picker-row--selected:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}.mobile-menu,.mobile-only,.drawer-backdrop{display:none}@keyframes shimmer{to{background-position:-200% 0}}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.result-grid{grid-template-columns:repeat(2,1fr)}.detail-summary{grid-template-columns:repeat(3,1fr)}.summary-main{grid-column:1 / -1}}@media(max-width:780px){.admin-shell,.admin-shell.sidebar-collapsed{padding-right:0}.sidebar,.sidebar-collapsed .sidebar{width:min(290px,87vw);transform:translate(105%);box-shadow:-18px 0 50px #14112d29}.sidebar.is-open{transform:translate(0)}.sidebar-collapsed .nav-item{justify-content:flex-start;padding:0 14px}.sidebar-collapsed .nav-item span,.sidebar-collapsed .collapse-button span{display:inline}.collapse-button{display:none}.drawer-backdrop{position:fixed;display:block;z-index:35;top:0;right:0;bottom:0;left:0;background:#0f0d1f7a;opacity:0;pointer-events:none;transition:opacity .25s}.drawer-backdrop.is-open{opacity:1;pointer-events:auto}.mobile-menu,.mobile-only{display:inline-flex}.topbar{height:72px;padding:0 16px}.welcome span,.profile-copy,.profile-trigger>svg{display:none}.profile-trigger{border:0;margin:0;padding:0}.page-content{padding:23px 16px 45px}.page-header{align-items:flex-start;flex-direction:column;margin-bottom:20px}.page-actions{width:100%}.page-actions .button{flex:1}.toolbar{align-items:stretch;flex-direction:column}.toolbar-filters{flex-direction:column}.search-field,.toolbar-filters select{max-width:none;width:100%}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-form-area{min-height:100vh;padding:28px 22px}.login-card .brand{display:flex}.student-hero{grid-template-columns:1fr}.student-side-card{display:none}.result-grid,.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.modal-backdrop{align-items:end;padding:0}.modal{width:100%;max-height:92vh;border-radius:24px 24px 0 0}.quick-grid,.wizard-layout{grid-template-columns:1fr}.wizard-steps{flex-direction:row;overflow-x:auto}.wizard-step{min-width:58px;padding:8px;justify-content:center}.wizard-step>div{display:none}.selection-grid,.settings-grid{grid-template-columns:1fr}.settings-grid>:first-child{grid-row:auto}.levels-stats-grid,.level-details-grid{grid-template-columns:1fr}}@media(max-width:620px){.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:105px;padding:14px;display:block}.stat-icon{width:39px;height:39px;border-radius:12px;margin-bottom:9px}.stat-card strong{font-size:20px}.stat-card small{display:none}.card{border-radius:18px}.student-header{height:72px;padding:0 16px}.student-header .brand small,.student-name{display:none}.student-content{padding:20px 15px 50px}.access-card{border-radius:22px}.code-form{flex-direction:column}.code-form .button{width:100%}.table-wrap{overflow:visible}table,thead,tbody,tr,th,td{display:block}thead{display:none}tbody{display:grid;gap:11px}tbody tr{border:1px solid var(--border);border-radius:15px;padding:9px 13px;background:var(--surface)}tbody tr:hover{background:var(--surface)}td{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid var(--border);text-align:left}td:before{content:attr(data-label);color:var(--muted);font-size:9px;text-align:right}td:last-child{border-bottom:0}td .table-title{text-align:right}.row-actions{justify-content:flex-start}.modal-header,.modal-body{padding-inline:18px}.exam-topbar{height:52px}.exam-topbar .brand>div:last-child{display:none}.exam-meta h1{max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-page{padding-bottom:72px}.exam-wrap{padding:8px 12px}.exam-progress-copy{margin-bottom:5px}.question-card{margin-top:8px;padding:10px 14px}.question-number{font-size:10px}.numeric-keypad{gap:6px;margin-top:4px}.keypad-display{height:44px;font-size:22px;min-width:min(180px,55vw);border-radius:10px}.keypad-placeholder{font-size:17px}.keypad-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:min(220px,68vw);gap:6px}.keypad-key{height:50px;font-size:19px;border-radius:10px}.keypad-key--clear{height:50px;font-size:11px;border-radius:10px}.exam-actions{min-height:58px;padding:8px 16px calc(8px + env(safe-area-inset-bottom))}.exam-actions .button{font-size:13px;padding:0 18px;height:44px}.bulk-bar{align-items:flex-start;flex-direction:column}.detail-summary{grid-template-columns:repeat(3,1fr)}.summary-main{grid-column:1 / -1}.mini-summary{padding:11px 6px}.info-grid{grid-template-columns:1fr}.review-stats{gap:6px}.review-stats>div{padding-inline:5px}.levels-table-desktop{display:none}.levels-mobile-list{display:block}.levels-stats-grid{gap:10px}.level-stat-card{padding:14px}}@media(max-width:360px){.keypad-grid{width:min(196px,64vw);gap:5px}.keypad-key{height:44px;font-size:17px}.keypad-key--clear{height:44px;font-size:10px}.keypad-display{height:40px;font-size:19px}.question-card{padding:8px 10px}.exam-wrap{padding:6px 8px}}@media print{.sidebar,.topbar,.page-header,.toolbar,.tabs,.row-actions,.button,.icon-button{display:none!important}.admin-shell{padding:0!important}.page-content{padding:0}body{background:#fff;color:#000}.card{box-shadow:none;break-inside:avoid}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.question-grid{border-collapse:collapse;width:100%;min-width:560px;font-size:13px}.question-grid th{background:var(--primary);color:#fff;font-weight:700;text-align:center;padding:6px 4px;border:1px solid var(--border);border-radius:20px 20px 0 0;min-width:72px}.question-grid td{border:1px solid var(--border);padding:2px}.question-grid .answer-row td{background:color-mix(in srgb,var(--primary) 8%,transparent);border-top:2px solid var(--primary)}.grid-cell{width:100%;border:none;background:transparent;text-align:center;font-size:14px;font-family:inherit;padding:6px 2px;outline:none;color:var(--text);-moz-appearance:textfield}.grid-cell::-webkit-outer-spin-button,.grid-cell::-webkit-inner-spin-button{-webkit-appearance:none}.grid-cell:focus{background:color-mix(in srgb,var(--primary) 12%,transparent);border-radius:4px}.grid-cell--answer{font-weight:800;color:var(--primary)}.grid-cell--answer::placeholder{color:var(--muted)}.cell-inner{display:flex;align-items:center;gap:2px}.cell-op{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;font-size:11px;font-weight:800;border:none;font-family:inherit;cursor:pointer;transition:transform .1s;-webkit-user-select:none;user-select:none}.cell-op:active{transform:scale(.88)}.cell-op--ghost{visibility:hidden}.cell-op--eq{background:transparent;color:var(--muted);cursor:default;font-size:13px}.cell-op--plus{background:#e8f5e9;color:#2e7d32}.cell-op--minus{background:#fce4ec;color:#c62828}.cell-op--mult{background:#e3f2fd;color:#1565c0}.cell-op--div{background:#fff3e0;color:#e65100}[data-theme=dark] .cell-op--plus{background:#1b5e2055;color:#a5d6a7}[data-theme=dark] .cell-op--minus{background:#b71c1c44;color:#ef9a9a}[data-theme=dark] .cell-op--mult{background:#0d47a144;color:#90caf9}[data-theme=dark] .cell-op--div{background:#e6510033;color:#ffcc80}.grid-cell--auto{color:var(--primary);font-weight:800}.qbank-tabs-bar{display:flex;align-items:center;gap:0;padding:0 16px;border-bottom:1px solid var(--border);flex-wrap:wrap;min-height:52px}.qbank-lang-tabs{display:flex;align-items:stretch;gap:0;border-left:1px solid var(--border);margin-left:16px;padding-left:16px;height:52px}.qbank-lang-tab{display:flex;align-items:center;padding:0 18px;font-size:14px;font-weight:600;font-family:inherit;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;color:var(--muted);transition:color .15s,border-color .15s;white-space:nowrap;margin-bottom:-1px}.qbank-lang-tab:hover{color:var(--text)}.qbank-lang-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.qbank-level-chips{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap;padding:10px 0}.qbank-level-chip{padding:5px 14px;border-radius:20px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;border:1.5px solid var(--border);background:var(--surface);color:var(--text);transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.qbank-level-chip:hover{border-color:var(--primary);color:var(--primary)}.qbank-level-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.qbank-no-levels{font-size:13px;color:var(--muted)}.qbank-level-chip-wrap{display:flex;align-items:center;gap:2px}.qbank-level-chip-add{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s,border-color .15s;padding:0}.qbank-level-chip-add:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.sessions-list{display:flex;flex-direction:column;gap:24px;padding:4px 0}.session-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.grid-chunk{display:flex;flex-direction:column;gap:6px}.grid-chunk-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:2px 4px;border-right:3px solid var(--primary)}.range-input{width:56px!important;text-align:center}.toolbar-divider{width:1px;height:22px;background:var(--border);flex-shrink:0}.page-chips-label{font-size:12px;color:var(--muted);white-space:nowrap}.page-chip{min-width:34px;height:32px;padding:0 8px;border-radius:8px;border:1.5px solid var(--border);background:transparent;color:var(--text);font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:1px;transition:background .13s,border-color .13s,color .13s}.page-chip:hover{border-color:var(--primary);color:var(--primary)}.page-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.page-chip-table{font-size:10px;opacity:.8}.page-chip-count{font-size:10px;background:#0000001f;border-radius:10px;padding:0 5px;margin-right:3px}.page-chip.active .page-chip-count{background:#ffffff40}.page-anchors-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 4px 12px;border-bottom:1px solid var(--border);margin-bottom:8px}.qbank-level-chip-count{font-size:10px;background:#0000001f;border-radius:10px;padding:0 5px;margin-right:4px}.qbank-level-chip.active .qbank-level-chip-count{background:#ffffff40}.col-editing{background:var(--primary)!important;color:#fff!important}.td-editing{background:color-mix(in srgb,var(--primary) 8%,transparent)}.edit-badge{font-size:10px;margin-right:3px;opacity:.8}.col-selected{background:var(--success, #16a34a)!important;color:#fff!important}.td-selected{background:color-mix(in srgb,var(--success, #16a34a) 12%,transparent)}.select-badge{font-size:11px;margin-left:3px;font-weight:700}.col-highlight{background:#f59e0b!important;color:#fff!important}.td-highlight{background:color-mix(in srgb,#f59e0b 14%,transparent)}.range-select-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0 12px}.range-select-bar .range-input{width:72px!important}.range-select-label{font-size:13px;color:var(--text-2);white-space:nowrap}.session-grid-card{border:1px solid var(--border);border-radius:12px;overflow:hidden}.session-grid-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border);gap:12px;flex-wrap:wrap}.session-grid-title{display:flex;flex-direction:column;gap:2px}.session-grid-title strong{font-size:14px;font-weight:700}.session-grid-title small{font-size:12px;color:var(--muted)}.question-grid--view th{background:var(--primary);color:#fff;font-size:13px}.question-grid--view td{padding:0!important}.question-grid--student{min-width:unset!important;width:auto!important;border-collapse:separate;border-spacing:0}.question-grid--student td{border:none!important;min-width:clamp(80px,22vw,140px)}.question-grid--student .answer-row td{border-top:2px solid var(--primary)!important;background:color-mix(in srgb,var(--primary) 8%,transparent)}.question-grid--student .cell-inner--view{padding:clamp(2px,1vw,6px) clamp(6px,2.5vw,16px);gap:clamp(3px,1.5vw,8px)}.question-grid--student .cell-op{width:clamp(18px,4.5vw,28px);height:clamp(18px,4.5vw,28px);font-size:clamp(10px,2.8vw,15px);flex-shrink:0}.question-grid--student .view-num{font-size:clamp(16px,5vw,28px)!important;font-weight:800;min-width:clamp(22px,6vw,40px);text-align:center}.question-grid--student .view-num--answer{font-size:clamp(14px,4.5vw,24px)!important;color:var(--muted)}.cell-inner--view{display:flex;align-items:center;justify-content:center;gap:2px;padding:5px 4px}.view-num{font-size:13px;font-weight:500;min-width:28px;text-align:center;color:var(--text)}.session-grid-empty{padding:24px 16px;text-align:center;font-size:13px;color:var(--muted);font-style:italic}.view-num--answer{font-weight:800;color:var(--primary);font-size:14px}.grid-errors{background:color-mix(in srgb,var(--error, #d32f2f) 8%,transparent);border:1px solid var(--error, #d32f2f);border-radius:8px;padding:10px 14px;font-size:13px;color:var(--error, #d32f2f)}.grid-errors p{margin:2px 0}
