*,:before,:after{box-sizing:border-box;margin:0;padding:0}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light);background-clip:content-box}::-webkit-scrollbar-corner{background:0 0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:1rem;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);letter-spacing:-.015em;font-weight:700;line-height:1.2}h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:750}h4{font-size:1.125rem}h5{font-size:1rem}h6{font-size:.875rem}p{color:var(--color-text-secondary);line-height:1.7}a{color:var(--color-primary-light);transition:var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary)}:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.skip-link{top:var(--space-2);left:var(--space-2);z-index:calc(var(--z-toast) + 10);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);padding:10px 16px;font-size:.95rem;font-weight:650;line-height:1.2;text-decoration:none;position:fixed}.skip-link:hover{color:var(--color-on-primary)}.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;overflow:hidden}#content:focus{outline:none}code,pre,kbd,samp{font-family:var(--font-code);font-size:.875em}pre{background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);overflow-x:auto}.container{width:100%;max-width:1200px;padding:0 var(--space-6);margin:0 auto}.card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;transition:var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:2px solid #0000;font-size:.9rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-accent{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-outline{color:var(--color-primary);border-color:var(--color-primary);background:0 0}.btn-outline:hover:not(:disabled){background:var(--color-primary-pale);transform:translateY(-1px)}.btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-bg-dark);color:var(--color-text)}.btn-danger{background:var(--color-danger);color:var(--color-on-primary);border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 86%, var(--color-text))}.btn-success{background:var(--color-success);color:var(--color-on-primary);border-color:var(--color-success)}.btn-lg{padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);font-size:1rem}.btn-sm{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:.8rem}.btn-xs{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:.75rem}.btn-loading{color:#0000;pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;position:absolute}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{color:var(--color-text);font-size:.875rem;font-weight:600}.form-label.required:after{content:" *";color:var(--color-danger)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);color:var(--color-text);background:var(--color-surface);transition:var(--transition-fast);outline-offset:2px;outline:2px solid #0000;font-size:.9375rem}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-placeholder)}.form-input.error,.form-textarea.error{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger) 18%, transparent)}.form-hint{color:var(--color-text-muted);font-size:.8rem}.form-textarea{resize:vertical;min-height:120px;line-height:1.6}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-xs);letter-spacing:normal;white-space:nowrap;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-primary{background:var(--color-primary-pale);color:var(--color-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.badge-info{background:var(--color-info-light);color:var(--color-info)}.badge-gray{background:var(--color-bg-dark);color:var(--color-text-secondary)}.badge-accent{background:var(--color-accent-light);color:var(--color-accent-hover)}.nav{z-index:var(--z-sticky);background:var(--color-surface);border-bottom:1px solid var(--color-border-light);height:64px;box-shadow:var(--shadow-xs);align-items:center;display:flex;position:sticky;top:0}.nav-brand{align-items:center;gap:var(--space-3);text-decoration:none;display:flex}.nav-brand-logo{border-radius:var(--radius-md);background:var(--color-primary);width:40px;height:40px;color:var(--color-on-primary);font-family:var(--font-heading);flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;display:flex}.nav-brand-text{flex-direction:column;display:flex}.nav-brand-name{font-family:var(--font-heading);color:var(--color-primary);font-size:1.1rem;font-weight:700;line-height:1}.exam-layout{grid-template:"topbar topbar""question palette"1fr"bottombar bottombar"/1fr 280px;gap:0;min-height:calc(100vh - 64px);display:grid}.exam-topbar{z-index:30;background:var(--color-surface);color:var(--color-text);padding:var(--space-3) var(--space-6);justify-content:space-between;align-items:center;gap:8px var(--space-3);border-bottom:1px solid var(--color-border);flex-wrap:wrap;grid-area:topbar;display:flex;position:sticky;top:0}.exam-topbar>.flex{min-width:0}.exam-topbar>.flex:last-child{flex-wrap:wrap;justify-content:flex-end}.exam-main{padding:var(--space-8);grid-area:question;overflow-y:auto}.exam-palette{background:var(--color-surface);border-left:1px solid var(--color-border);padding:var(--space-6);grid-area:palette;max-height:calc(100vh - 124px);position:sticky;top:56px;overflow-y:auto}.exam-bottombar{background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);grid-area:bottombar;display:flex}.exam-timer{align-items:center;gap:var(--space-3);background:var(--color-surface-2);border-radius:var(--radius-md);padding:var(--space-2) var(--space-5);display:flex}.exam-timer-value{font-family:var(--font-mono);letter-spacing:2px;color:var(--color-text);text-align:center;min-width:80px;font-size:1.4rem;font-weight:600}.exam-timer-value.warning{color:var(--color-warning)}.exam-timer-value.critical{color:var(--color-danger)}.exam-timer-label{opacity:.7;letter-spacing:0;font-size:.75rem}.question-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);overflow:hidden}.question-header{padding:var(--space-4) var(--space-6);background:var(--color-primary-pale);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.question-number{font-family:var(--font-heading);color:var(--color-primary);font-size:1rem;font-weight:700}.question-body{padding:var(--space-6)}.question-text{color:var(--color-text);font-size:1.05rem;line-height:1.7;font-family:var(--font-body)}.question-image-viewer{margin:var(--space-5) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-dark);overflow:hidden}.question-image-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);background:var(--color-surface);padding:9px 12px;font-size:.78rem;font-weight:700;display:flex}.question-image-controls{align-items:center;gap:5px;display:inline-flex}.question-image-controls button{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:28px;color:var(--color-text);background:var(--color-surface-2);font:700 .7rem var(--font-body);cursor:pointer;padding:5px 8px}.question-image-controls button:disabled{cursor:not-allowed;opacity:.45}.question-image-canvas{text-align:center;max-height:min(62vh,620px);padding:14px;overflow:auto}.question-image-canvas img{border-radius:var(--radius-md);min-width:240px;max-width:none;margin:0 auto;display:block}.mcq-options{gap:var(--space-3);margin-top:var(--space-6);flex-direction:column;display:flex}.mcq-option{align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);background:var(--color-surface);display:flex;position:relative;overflow:hidden}.mcq-option:before{content:none}.mcq-option:hover{border-color:var(--color-primary-light);background:var(--color-primary-pale);transform:translate(2px)}.mcq-option.correct{border-color:var(--color-success);background:var(--color-success-light)}.mcq-option.wrong{border-color:var(--color-danger);background:var(--color-danger-light)}.mcq-option-key{border-radius:var(--radius-sm);background:var(--color-bg-dark);border:2px solid var(--color-border);width:32px;height:32px;color:var(--color-text-secondary);transition:var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex}.mcq-option.selected .mcq-option-key{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.mcq-option-text{color:var(--color-text);padding-top:4px;font-size:.9375rem;line-height:1.6}.palette-grid{gap:var(--space-2);grid-template-columns:repeat(5,1fr);display:grid}.palette-btn{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex;position:relative}.palette-btn:hover{transform:scale(1.1)}.palette-btn[data-state=not-visited]{background:var(--q-not-visited);color:var(--color-text-secondary)}.palette-btn[data-state=visited]{background:var(--q-visited);color:var(--color-info)}.palette-btn[data-state=answered]{background:var(--q-answered);color:var(--color-success)}.palette-btn[data-state=marked]{background:var(--q-marked);color:var(--color-text)}.palette-btn[data-state=answered-marked]{background:var(--q-answered-marked);color:var(--color-text)}.palette-legend{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-light);flex-direction:column;display:flex}.palette-legend-item{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:.75rem;display:flex}.palette-legend-dot{border-radius:var(--radius-sm);flex-shrink:0;width:14px;height:14px}.overlay{z-index:var(--z-overlay);padding:var(--space-6);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay-backdrop{background:var(--overlay-scrim);-webkit-backdrop-filter:blur(2px);position:absolute;inset:0}.overlay-content{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:480px;max-height:calc(100dvh - 2 * var(--space-6));padding:var(--space-10);text-align:start;animation:.2s modal-enter;position:relative;overflow-y:auto}@media (max-width:560px){.overlay{padding:var(--space-4)}.overlay-content{padding:var(--space-6);border-radius:var(--radius-lg);max-height:calc(100dvh - 2 * var(--space-4))}}.connectivity-overlay{background:color-mix(in srgb, var(--color-bg) 92%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.connectivity-content{color:var(--color-text);text-align:center}.warning-overlay-content{border:2px solid var(--color-warning);animation:.5s pulse-warning}.stats-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-6);align-items:flex-start;gap:var(--space-4);box-shadow:var(--shadow-xs);transition:var(--transition-normal);display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.4rem;display:flex}.stat-value{font-family:var(--font-heading);color:var(--color-text);font-size:1.875rem;font-weight:600;line-height:1}.stat-label{color:var(--color-text-muted);margin-top:var(--space-1);font-size:.8125rem;font-weight:500}.table-container{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.table{border-collapse:collapse;width:100%}.table thead th{padding:var(--space-4) var(--space-6);background:var(--color-bg-dark);letter-spacing:0;color:var(--color-text-secondary);text-align:left;border-bottom:2px solid var(--color-border);white-space:nowrap;font-size:.8rem;font-weight:700}.table tbody tr{border-bottom:1px solid var(--color-border-light);transition:var(--transition-fast)}.table tbody tr:last-child{border-bottom:none}.table tbody td{padding:var(--space-4) var(--space-6);color:var(--color-text);vertical-align:middle;font-size:.9rem}@media (max-width:1023px){.table-container.table-stack{overflow-x:visible}.table-stack .table{min-width:0}.table-stack .table thead{display:none}.table-stack .table tbody tr{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border-light);display:block}.table-stack .table tbody td{justify-content:space-between;align-items:center;gap:var(--space-4);text-align:right;border:none;padding:7px 0;font-size:.85rem;display:flex}.table-stack .table tbody td:before{content:attr(data-label);letter-spacing:0;color:var(--color-text-secondary);text-align:left;flex-shrink:0;font-size:.7rem;font-weight:700}.table-stack .table tbody td[data-label=Actions]{flex-wrap:wrap;justify-content:flex-end}.table-stack .table tbody td[data-label=Actions]:before{display:none}.table-stack .table tbody td>.flex{flex-wrap:wrap;justify-content:flex-end}.table-stack .table tbody td[colspan]:before{display:none}.table-stack .table tbody td[colspan]{text-align:center;justify-content:center}}.status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.status-dot.active{background:var(--color-success);box-shadow:0 0 0 3px var(--color-success-light);animation:2s infinite pulse-green}.status-dot.paused{background:var(--color-warning);box-shadow:0 0 0 3px var(--color-warning-light)}.status-dot.submitted{background:var(--color-info)}.status-dot.flagged{background:var(--color-danger);animation:1s infinite pulse-red}.status-dot.offline{background:var(--color-text-muted)}.toast{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-4) var(--space-5);align-items:flex-start;gap:var(--space-3);animation:.3s slide-in-right;display:flex}.toast.success{border-left-color:var(--color-success)}.toast.error{border-left-color:var(--color-danger)}.toast.warning{border-left-color:var(--color-warning)}.empty-state{text-align:start;padding:var(--space-4) 0;color:var(--color-text-muted)}.empty-state-icon{display:none}.empty-state-title{font-family:var(--font-body);letter-spacing:0;color:var(--color-text);font-size:.95rem;font-weight:700;line-height:1.4}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-green{0%,to{box-shadow:0 0 0 3px var(--color-success-light)}50%{box-shadow:0 0 0 6px var(--color-success-light)}}@keyframes pulse-red{0%,to{opacity:1}50%{opacity:.4}}@keyframes pulse-critical{0%,to{color:var(--color-danger)}50%{color:color-mix(in srgb, var(--color-danger) 55%, var(--color-surface))}}@keyframes pulse-warning{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}@keyframes modal-enter{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-up{animation:.35s both fade-up}.animate-fade-in{animation:.25s both fade-in}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}input.visually-hidden:focus-visible+label{outline:2px solid var(--color-primary);outline-offset:2px}label:has(>input.visually-hidden:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.flex{display:flex}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.grid-2{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-danger{color:var(--color-danger)}.rounded{border-radius:var(--radius-md)}.border{border:1px solid var(--color-border)}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:1023px){.exam-layout{grid-template-columns:1fr;grid-template-areas:"topbar""palette""question""bottombar"}.exam-palette{border-left:none;border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);max-height:none;position:static}.grid-2{grid-template-columns:1fr}}@media (min-width:768px) and (max-width:1023px){.exam-palette{padding:10px 16px;overflow:auto hidden}.exam-palette>h4,.exam-palette-summary,.exam-palette .palette-legend{display:none}.palette-grid{gap:8px;width:max-content;display:flex}.palette-btn{aspect-ratio:auto;flex:0 0 40px;width:40px;height:40px}}@media (max-width:767px){.exam-topbar{padding:var(--space-3) var(--space-4);gap:var(--space-2);flex-wrap:wrap}.exam-main{padding:var(--space-4)}.exam-bottombar{padding:var(--space-3) var(--space-4)}.container{padding:0 var(--space-4)}.stats-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr)}.stat-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-4);flex-direction:column}.stat-icon{width:38px;height:38px}.stat-value{font-size:1.45rem}.stat-label{font-size:.75rem}.palette-grid{grid-template-columns:repeat(6,1fr)}.table-container{overflow-x:auto}.table{min-width:600px}.exam-bottombar{flex-wrap:wrap}.exam-bottombar>.flex{justify-content:flex-end;width:100%}.exam-topbar .truncate{max-width:min(44vw,240px)}}@media (max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.palette-grid{grid-template-columns:repeat(5,1fr)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:.9rem}}@media print{.nav,.exam-bottombar,.exam-palette{display:none}body{background:#fff}.card{box-shadow:none;border:1px solid #ddd}}html,body{min-height:100%}body{background:var(--color-bg);transition:background-color .35s,color .25s;overflow-x:hidden}::selection{background:color-mix(in srgb, var(--color-primary) 22%, transparent);color:var(--color-text)}.app-shell{min-height:100vh;background:var(--color-bg)!important}.nav-brand-logo{background:var(--color-primary);width:42px;height:42px;box-shadow:none;isolation:isolate;border-radius:11px;position:relative}.nav-brand-name{color:var(--color-text);letter-spacing:-.04em}.container{max-width:1240px}.card,.table-container,.overlay-content{background:color-mix(in srgb, var(--color-surface) 94%, transparent);border-color:color-mix(in srgb, var(--color-border) 78%, transparent)}.card{box-shadow:var(--shadow-sm)}.stat-card{background:color-mix(in srgb, var(--color-surface) 94%, transparent);border-color:color-mix(in srgb, var(--color-border) 76%, transparent);padding:22px;position:relative;overflow:hidden}.stat-card:after{content:"";background:color-mix(in srgb, var(--color-primary) 8%, transparent);border-radius:50%;width:92px;height:92px;transition:transform .3s;position:absolute;bottom:-48px;right:-35px}.stat-card:hover:after{transform:scale(1.8)}.stat-value{letter-spacing:-.02em}.btn{border-radius:var(--radius-xl);letter-spacing:.005em;min-height:40px}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);box-shadow:none}.btn-outline:hover:not(:disabled){background:var(--color-primary-pale);color:var(--color-primary-hover)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:color-mix(in srgb, var(--color-primary) 36%, var(--color-border))}.badge{border:1px solid color-mix(in srgb, currentColor 12%, transparent);font-weight:700}.badge-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.dashboard-heading{border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-primary) 14%, var(--color-border));box-shadow:var(--shadow-xs);padding:26px 28px}.dashboard-heading h1{font-size:clamp(1.7rem,3vw,2.25rem)}.test-card{isolation:isolate}.table thead th{background:color-mix(in srgb, var(--color-primary) 7%, var(--color-bg-dark));color:var(--color-text-secondary)}@keyframes signal-rise{0%{opacity:.65;transform:scaleY(.55)}to{opacity:1;transform:scaleY(1)}}@keyframes float-orbit{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow!important}@keyframes spin{0%,to{opacity:1}50%{opacity:.35}}@keyframes fade-up{0%{opacity:0}to{opacity:1}}@keyframes modal-enter{0%{opacity:0}to{opacity:1}}@keyframes slide-in-right{0%{opacity:0}to{opacity:1}}@keyframes omr-settle{0%{opacity:0}to{opacity:1}}@keyframes signal-rise{0%{opacity:.65}to{opacity:1}}@keyframes shake{0%,to{transform:none}}@keyframes pulse-warning{0%,to{transform:none}}@keyframes float-orbit{0%,to{transform:none}}@keyframes pulse-green{0%,to{box-shadow:0 0 0 3px var(--color-success-light)}}.btn-loading:after,.loader,.omr-spinner,.slip-spinner,.submit-progress-mark{animation-duration:1.6s!important;animation-timing-function:ease-in-out!important}}@media (max-width:767px){.nav{height:64px}.nav-brand-logo{border-radius:var(--radius-xl);width:38px;height:38px}.nav-brand-text{display:none}.dashboard-heading{padding:22px}}.metric-card{align-items:center;min-height:112px}.metric-card-clickable{width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer;appearance:none}.metric-card-clickable:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-border))}.metric-card-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.metric-card-clickable:active{transform:translateY(0)}.metric-card .stat-icon{color:var(--metric-color);background:var(--metric-bg)!important}.metric-card .stat-value{color:var(--color-text)!important}.metric-card-primary{--metric-color:var(--color-primary);--metric-bg:var(--color-primary-pale)}.metric-card-accent{--metric-color:var(--color-accent-hover);--metric-bg:var(--color-accent-light)}.metric-card-success{--metric-color:var(--color-success);--metric-bg:var(--color-success-light)}.metric-card-warning{--metric-color:var(--color-warning);--metric-bg:var(--color-warning-light)}.metric-card-danger{--metric-color:var(--color-danger);--metric-bg:var(--color-danger-light)}.metric-card-info{--metric-color:var(--color-info);--metric-bg:var(--color-info-light)}.meta-item{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.8rem;font-weight:600;line-height:1.4;display:inline-flex}.meta-item svg{color:var(--color-text-muted);flex:none}.notice{border-radius:var(--radius-md);border:1px solid #0000;align-items:flex-start;gap:10px;padding:13px 15px;font-size:.84rem;line-height:1.5;display:flex}.notice svg{flex:none;margin-top:2px}.notice-danger{color:var(--color-danger);background:var(--color-danger-light);border-color:color-mix(in srgb, var(--color-danger) 42%, transparent)}.notice-warning{color:var(--color-warning);background:var(--color-warning-light);border-color:color-mix(in srgb, var(--color-warning) 42%, transparent)}.notice-success{color:var(--color-success);background:var(--color-success-light);border-color:color-mix(in srgb, var(--color-success) 42%, transparent)}.notice-info{color:var(--color-info);background:var(--color-info-light);border-color:color-mix(in srgb, var(--color-info) 42%, transparent)}.empty-state{flex-direction:column;align-items:flex-start;max-width:none;margin:0;display:flex}.empty-state-title{margin:0}.empty-state p{max-width:62ch;margin:2px 0 0;line-height:1.5}.empty-state-action{margin-top:var(--space-3)}.inline-icon-button{align-items:center;gap:7px;display:inline-flex}.exam-zoom-controls{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-surface-2);font:600 .8rem var(--font-body);font-variant-numeric:tabular-nums;align-items:center;gap:2px;padding:0;display:inline-flex}.exam-zoom-button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--color-text);font:inherit;cursor:pointer;background:0 0;border:0}.exam-zoom-button:hover:not(:disabled){background:var(--color-surface-3)}.exam-zoom-button:disabled{cursor:not-allowed;opacity:.42}.exam-main{font-size:var(--exam-question-scale,1rem)}.exam-main .question-text{font-size:1.05em}.exam-main .mcq-option-text{font-size:.9375em}.exam-main .form-textarea{font-size:1em}.palette-btn:disabled{cursor:not-allowed;opacity:.55}.exam-overlay-icon{width:62px;height:62px;margin:0 auto var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:var(--color-warning);background:var(--color-surface-2);place-items:center;display:grid}.class-overview-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(108px,1fr));display:grid}.class-overview-card{padding:var(--space-4) var(--space-3);text-align:center}.class-overview-card.is-clickable{cursor:pointer;transition:transform .12s,box-shadow .12s,border-color .12s}.class-overview-card.is-clickable:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary);transform:translateY(-2px)}.class-overview-card.is-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.class-overview-icon{width:34px;height:34px;margin:0 auto var(--space-2);border-radius:var(--radius-xl);color:var(--color-primary);background:var(--color-primary-pale);place-items:center;display:grid}@media (max-width:380px){.class-overview-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.exam-zoom-controls span{display:none}.exam-zoom-controls{gap:2px}.exam-bottombar>.flex{justify-content:space-between}.exam-bottombar .btn{min-height:40px}}.test-builder-shell,.result-page{min-height:100vh}.result-main{gap:22px;padding-top:34px;padding-bottom:72px;display:grid}.result-main>.btn{justify-self:start}.result-hero{border:1px solid color-mix(in srgb, var(--color-primary) 18%, var(--color-border));border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);justify-content:space-between;align-items:flex-end;gap:24px;padding:clamp(24px,5vw,46px);display:flex}.result-hero h1{color:var(--color-text);margin-top:8px;font-size:clamp(1.75rem,4vw,2.65rem)}.result-hero p{color:var(--color-text-secondary);margin-top:8px}.result-score{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-2);text-align:center;min-width:150px;padding:17px 20px}.result-score span{color:var(--color-text-muted);letter-spacing:0;font-size:.72rem;font-weight:700;display:block}.result-score strong{font:800 clamp(2rem, 5vw, 3.35rem) var(--font-heading);margin-top:4px;display:block}.result-review{border:1px solid var(--color-border-light);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-xs);gap:18px;padding:clamp(20px,4vw,30px);display:grid}.result-answer-list{gap:12px;display:grid}.result-answer{border:1px solid var(--color-border-light);border-radius:var(--radius-xl);background:var(--color-surface-2);gap:12px;padding:17px;display:grid}.result-answer-meta{color:var(--color-text-muted);font:700 .76rem var(--font-body);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.result-answer-meta>span:first-child{color:var(--color-primary)}.result-choice{color:var(--color-text-secondary);font-size:.86rem}.test-builder-main{padding-top:38px;padding-bottom:80px}.builder-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;margin-bottom:18px;font-size:.8rem;font-weight:600;display:flex}.builder-breadcrumb a{color:var(--color-primary)}.builder-heading{border:1px solid color-mix(in srgb, var(--color-primary) 15%, var(--color-border));border-radius:var(--radius-xl);background:var(--color-surface);justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;padding:30px;display:flex}.builder-heading h1{margin-top:8px;font-size:clamp(1.8rem,4vw,2.6rem)}.builder-heading p{margin-top:8px}.builder-stepper{flex:none;align-items:center;gap:10px;display:flex}.builder-stepper span,.builder-stepper button{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:31px;height:31px;color:var(--color-text-muted);background:var(--color-surface);align-items:center;gap:7px;padding:0 10px;font-family:inherit;font-size:.75rem;font-weight:600;display:inline-flex}.builder-stepper button{cursor:pointer;transition:border-color .15s,color .15s,background .15s}.builder-stepper button:disabled{cursor:default}.builder-stepper button:not(:disabled):not(.active):hover{border-color:var(--color-primary);color:var(--color-primary)}.builder-stepper span.active,.builder-stepper button.active{border-color:var(--color-primary);color:var(--color-on-primary);background:var(--color-primary)}.builder-stepper span.complete,.builder-stepper button.complete{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.builder-stepper i{background:var(--color-border);width:28px;height:1px}.builder-stepper small{font-size:.75rem;font-weight:700}.builder-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.builder-panel{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-surface) 94%, transparent);box-shadow:var(--shadow-xs);flex-direction:column;gap:18px;padding:26px;display:flex}.builder-panel-wide{grid-column:1/-1}.builder-advanced{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-surface) 94%, transparent);box-shadow:var(--shadow-xs)}.builder-advanced-summary{cursor:pointer;align-items:center;gap:11px;padding:22px 26px;list-style:none;display:flex}.builder-advanced-summary::-webkit-details-marker{display:none}.builder-advanced-summary>svg{color:var(--color-primary);flex:none}.builder-advanced-summary h2{margin:0;font-size:1.05rem}.builder-advanced-summary small{color:var(--color-text-muted);margin-top:3px;font-size:.82rem;line-height:1.45;display:block}.builder-advanced-summary:hover{background:color-mix(in srgb, var(--color-primary) 4%, transparent);border-radius:var(--radius-lg)}.builder-advanced-chevron{color:var(--color-text-muted);margin-left:auto;transition:transform .2s;display:inline-flex}.builder-advanced[open] .builder-advanced-chevron{transform:rotate(180deg)}.builder-advanced-body{flex-direction:column;gap:18px;padding:4px 26px 24px;display:flex}@media (max-width:640px){.builder-advanced-summary{padding:18px 20px}.builder-advanced-body{padding:4px 20px 20px}}.builder-panel-heading{align-items:flex-start;gap:11px;display:flex}.builder-panel-heading>svg{color:var(--color-primary);flex:none;margin-top:2px}.builder-panel-heading h2{font-size:1.12rem}.builder-panel-heading p{margin-top:3px;font-size:.82rem;line-height:1.5}.builder-two-column{grid-template-columns:1fr 1fr;gap:14px;display:grid}.setting-toggle{cursor:pointer;border-top:1px solid var(--color-border-light);grid-template-columns:42px 1fr;align-items:center;gap:12px;padding:14px 0;display:grid}.setting-toggle input{opacity:0;width:1px;height:1px;position:absolute}.setting-switch{border-radius:var(--radius-full);background:var(--color-border);width:40px;height:23px;transition:background .2s;position:relative}.setting-switch:after{content:"";width:17px;height:17px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.setting-toggle input:checked+.setting-switch{background:var(--color-primary)}.setting-toggle input:checked+.setting-switch:after{transform:translate(17px)}.setting-toggle input:focus-visible+.setting-switch{outline:3px solid color-mix(in srgb, var(--color-primary) 25%, transparent);outline-offset:3px}.setting-toggle strong,.setting-toggle small{display:block}.setting-toggle strong{color:var(--color-text);font-size:.9rem}.setting-toggle small{color:var(--color-text-muted);margin-top:3px;font-size:.76rem;line-height:1.45}.builder-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;display:flex}.builder-import-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:20px;display:grid}.import-mode-tabs{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-dark);width:max-content;max-width:100%;padding:3px;display:flex;overflow-x:auto}.import-mode-tabs button{border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font:700 .73rem var(--font-body);background:0 0;border:0;padding:7px 11px}.import-mode-tabs button[aria-selected=true]{color:var(--color-on-primary);background:var(--color-primary)}.file-dropzone{border:1.5px dashed color-mix(in srgb, var(--color-primary) 38%, var(--color-border));border-radius:var(--radius-xl);min-height:190px;color:var(--color-text-secondary);background:color-mix(in srgb, var(--color-primary) 4%, transparent);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;transition:border-color .2s,background .2s;display:flex}.file-dropzone:hover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.file-dropzone input{opacity:0;width:1px;height:1px;position:absolute}.file-dropzone svg{color:var(--color-primary)}.file-dropzone strong{color:var(--color-text);font-size:.9rem}.file-dropzone span{max-width:270px;color:var(--color-text-muted);font-size:.76rem;line-height:1.45}.question-image-upload{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-2);gap:10px;padding:14px;display:grid}.question-image-upload strong{color:var(--color-text);font-size:.86rem}.question-image-upload p{color:var(--color-text-muted);margin-top:3px;font-size:.75rem;line-height:1.45}.question-image-upload label{justify-self:start}.question-image-upload input{opacity:0;width:1px;height:1px;position:absolute}.question-image-upload-preview{border:1px solid var(--color-border);border-radius:var(--radius-xl);object-fit:contain;max-width:100%;max-height:220px}.question-image-url{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-surface);align-items:center;gap:8px;min-width:0;padding:7px;display:flex}.question-image-url code{min-width:0;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.question-image-url .btn{flex:none}.paste-import{flex-direction:column;gap:10px;display:flex}.mcq-multi-hint{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.mcq-option-multi .mcq-option-key{border-radius:var(--radius-sm)}.paste-import textarea{min-height:210px;font-family:var(--font-mono);white-space:pre;font-size:.76rem;line-height:1.5}.builder-errors{border:1px solid color-mix(in srgb, var(--color-danger) 40%, transparent);border-radius:var(--radius-xl);color:var(--color-danger);background:var(--color-danger-light);padding:14px;font-size:.78rem}.builder-errors ul{max-height:190px;margin:8px 0 0 17px;overflow:auto}.builder-errors li+li{margin-top:4px}.builder-preview-panel{min-height:420px}.import-summary{border:1px solid var(--color-border-light);border-radius:var(--radius-xl);grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.import-summary span{color:var(--color-text-muted);text-align:center;padding:10px 12px;font-size:.72rem}.import-summary span+span{border-left:1px solid var(--color-border-light)}.import-summary strong{color:var(--color-text);font-family:var(--font-heading);margin-bottom:2px;font-size:1.1rem;display:block}.question-paper-preview{gap:12px;max-height:560px;padding:2px;display:grid;overflow:auto}.question-paper-card{border:1px solid var(--color-border-light);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--color-surface) 94%, var(--color-primary));box-shadow:0 1px 0 color-mix(in srgb, var(--color-text) 5%, transparent);overflow:hidden}.question-paper-card-header,.question-paper-card-footer{justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;display:flex}.question-paper-card-header{border-bottom:1px solid var(--color-border-light)}.question-paper-card-header strong{color:var(--color-text);font-size:.86rem}.question-paper-meta{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.question-paper-section{color:var(--color-text-muted);font-size:.75rem}.question-paper-meta .badge{letter-spacing:0}.question-paper-section{letter-spacing:0;margin:12px 13px -5px}.question-paper-text{color:var(--color-text);white-space:pre-wrap;margin:13px;font-size:.9rem;line-height:1.6}.question-paper-card .question-image-upload-preview{max-width:calc(100% - 26px);margin:0 13px 13px;display:block}.question-paper-options{color:var(--color-text-secondary);gap:7px;margin:0 13px 13px 33px;font-size:.85rem;line-height:1.45;display:grid}.question-paper-options li{padding-left:4px}.question-paper-card-footer{border-top:1px solid var(--color-border-light);background:color-mix(in srgb, var(--color-bg-dark) 68%, transparent);justify-content:flex-start}.question-paper-answer{border-radius:var(--radius-md);color:var(--color-success);background:color-mix(in srgb, var(--color-success) 10%, transparent);align-items:center;gap:6px;margin:0 13px 13px;padding:10px;font-size:.82rem;display:flex}.import-confirm{color:var(--color-text-secondary);cursor:pointer;align-items:flex-start;gap:9px;font-size:.8rem;line-height:1.45;display:flex}.import-confirm input{width:16px;height:16px;accent-color:var(--color-primary);margin-top:1px}.test-builder-loading{min-height:100vh;color:var(--color-text-muted);background:var(--color-bg);align-content:center;place-items:center;gap:14px;display:grid}.loader{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}@media (max-width:900px){.builder-grid,.builder-import-layout{grid-template-columns:1fr}.builder-panel-wide{grid-column:auto}.builder-two-column{grid-template-columns:1fr}.builder-heading{flex-direction:column;align-items:flex-start}.builder-stepper{width:100%}}@media (max-width:640px){.test-builder-main{padding-top:24px;padding-bottom:50px}.builder-heading{flex-direction:column;align-items:flex-start;padding:22px}.builder-stepper{width:100%}.builder-two-column{grid-template-columns:1fr}.builder-panel{padding:20px}.builder-actions{flex-direction:column-reverse;align-items:stretch}.builder-actions .btn{width:100%}.result-main{padding-top:22px;padding-bottom:48px}.result-hero{flex-direction:column;align-items:flex-start}.result-score{width:100%}}@media (max-width:767px){.exam-layout{min-height:calc(100dvh - 64px)}.exam-bottombar{z-index:20;box-shadow:0 -1px 0 var(--color-border);position:sticky;bottom:0}.question-header,.question-image-toolbar{flex-wrap:wrap;align-items:flex-start}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body,.app-shell{background:var(--color-bg)!important}body{overflow-x:hidden}.nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);height:64px;box-shadow:none}.nav-brand-logo{border-radius:var(--radius-sm);background:var(--color-primary);width:32px;height:32px;box-shadow:none}.nav-brand-logo:after,.stat-card:after,.test-card-live:after{content:none}.nav-brand-name{letter-spacing:-.01em}.card,.table-container,.overlay-content,.builder-panel,.result-review{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card:hover,.stat-card:hover{border-color:var(--color-border);box-shadow:none;transform:none}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:0;padding:18px}.stat-icon,.class-overview-icon{border-radius:var(--radius-sm);box-shadow:none}.stat-label{letter-spacing:0;font-size:.75rem;font-weight:700}.btn{border-radius:var(--radius-sm);min-height:38px;box-shadow:none;letter-spacing:0}.btn-primary,.btn-primary:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);box-shadow:none;transform:none}.btn-accent{background:var(--color-primary);border-color:var(--color-primary)}.btn-outline{border-color:var(--color-primary);color:var(--color-primary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-dark)}.form-input,.form-select,.form-textarea{background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-sm)}.dashboard-heading,.builder-heading{border:0;border-bottom:1px solid var(--color-border);box-shadow:none;background:0 0;border-radius:0;padding:0 0 18px}.workspace-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.workspace-back-link{color:var(--color-text-secondary)}.workspace-back-link:hover{color:var(--color-primary)}.test-workspace-summary .meta-item{color:var(--color-text-secondary)}.exam-action-notice{justify-content:space-between;align-items:center;gap:12px;display:flex}.stat-label,.result-score span{letter-spacing:0;text-transform:none}@media (max-width:640px){.workspace-heading{flex-direction:column}.workspace-heading .btn{width:100%}.test-workspace-summary>.flex>.text-sm{width:100%;text-align:left!important}.exam-action-notice{flex-direction:column;align-items:flex-start}}.dashboard-heading h1,.builder-heading h1{letter-spacing:-.025em;font-size:clamp(1.45rem,3vw,2rem)}.result-hero{border-radius:var(--radius-md);box-shadow:none;border:0;background:var(--color-surface)!important}.test-card-live{box-shadow:none}.table thead th{background:var(--color-bg-dark)}.result-score,.file-dropzone,.question-image-upload,.import-summary{border-radius:var(--radius-sm)}.animate-fade-up,.animate-fade-in{animation:none}.dashboard-heading,.builder-heading{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:20px 22px}@media (max-width:767px){.exam-page{height:100dvh;overflow:hidden;min-height:100dvh!important}.exam-layout{grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden}.exam-topbar,.exam-main,.exam-bottombar,.exam-palette{min-width:0}.exam-topbar{flex-wrap:wrap;row-gap:6px;padding:8px 12px}.exam-topbar>.flex{min-width:0}.exam-topbar>.flex:first-child{flex:auto}.exam-topbar>.flex:last-child{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;gap:6px;min-width:0}.exam-palette{padding:8px 12px;overflow:auto hidden}.exam-palette>h4,.exam-palette-summary,.exam-palette .palette-legend{display:none}.palette-grid{gap:6px;width:max-content;display:flex}.palette-btn{aspect-ratio:auto;flex:0 0 34px;width:34px;height:34px}.exam-main{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:12px;overflow-y:auto}.question-card{min-height:100%}.question-body{padding:16px}.question-image-canvas{max-height:min(42dvh,460px)}.exam-bottombar{min-height:56px;box-shadow:0 -1px 0 var(--color-border);flex-wrap:nowrap;gap:8px;padding:8px 10px;position:static}.exam-bottombar>.flex{flex:auto;justify-content:flex-end;gap:8px;width:auto;min-width:0}.exam-bottombar .btn{white-space:nowrap;flex-shrink:0;min-height:36px;padding:8px 10px}.question-header{flex-wrap:wrap;gap:8px}.question-text,.mcq-option-text{overflow-wrap:anywhere}.question-card,.question-body,.mcq-options,.mcq-option{min-width:0;max-width:100%}.exam-timer{flex-shrink:1;min-width:0}.exam-timer-value{min-width:0}}@media (max-width:430px){#mark-review-btn .btn-label{display:none}#mark-review-btn{padding:8px}}@media (max-width:480px){.exam-topbar>.flex:first-child .truncate,.exam-topbar>.flex:last-child>.flex:not(.exam-zoom-controls):not(.exam-timer) span,.exam-timer-label{display:none}.exam-timer{gap:4px;padding:5px 7px}.exam-timer-value{letter-spacing:1px;min-width:64px;font-size:1rem}}.preview-subjective-label{color:var(--color-text-muted);margin-bottom:var(--space-2);font-size:.78rem;font-weight:700;display:block}.omr-auth{isolation:isolate;background:var(--paper);min-height:100dvh;color:var(--ink);place-items:center;padding:clamp(16px,4vw,44px);display:grid;position:relative;overflow:hidden}.omr-grid{z-index:0;opacity:.7;background-image:none;background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 42%,#000,#0000 88%);mask-image:radial-gradient(80% 70% at 50% 42%,#000,#0000 88%)}.omr-sheet{z-index:1;background:var(--sheet);border:1px solid var(--rule);width:min(100%,528px);box-shadow:0 1px 0 0 var(--rule) inset;padding:clamp(26px,4.5vw,40px);animation:.5s cubic-bezier(.2,.8,.2,1) both omr-settle;position:relative}.omr-sheet:before{content:"";border:1px solid var(--rule-soft);pointer-events:none;position:absolute;inset:7px}@keyframes omr-settle{0%{opacity:0;transform:translateY(10px)}}.omr-masthead{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;gap:14px;padding-bottom:16px;display:flex}.omr-brandblock{background:var(--ink);color:var(--sheet);font:800 .82rem/1 var(--font-heading);letter-spacing:.02em;padding:6px 11px;display:inline-block}.omr-mast-right{align-items:center;gap:12px;display:flex}.omr-stamp{border:1.5px solid var(--mark);border-radius:var(--radius-xs);color:var(--mark);font:800 .75rem/1 var(--font-body);letter-spacing:0;opacity:.9;padding:4px 9px;transform:rotate(-4deg)}.omr-title h1{font:800 clamp(1.7rem, 4.5vw, 2.15rem)/1.02 var(--font-heading);letter-spacing:-.02em;text-wrap:balance;color:var(--ink);margin:0}.omr-title p{max-width:42ch;font:400 .9rem/1.55 var(--font-body);color:var(--ink-soft);margin:8px 0 0}.omr-bubbles span{border:1.5px solid var(--rule);width:22px;height:22px;font:700 .58rem/1 var(--font-mono);color:var(--ink-soft);border-radius:50%;place-items:center;display:grid}.omr-bubbles span.is-filled{border-color:var(--mark);color:var(--sheet);background:var(--mark)}.omr-form{flex-direction:column;gap:20px;display:flex}.omr-field{flex-direction:column;gap:7px;display:flex;position:relative}.omr-field>label{font:700 .82rem/1.3 var(--font-body);letter-spacing:normal;color:var(--ink-soft)}.omr-field input{border:0;border-bottom:1.5px solid var(--rule);width:100%;color:var(--ink);font:500 1rem var(--font-body);background:0 0;padding:9px 2px;transition:border-color .2s}.omr-field input::placeholder{color:var(--color-placeholder)}.omr-field input:focus{outline:2px solid #0000}.omr-field:after{content:"";background:var(--mark);transform-origin:0;width:100%;height:2px;transition:transform .28s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.omr-field:focus-within:after{transform:scaleX(1)}.omr-submit{cursor:pointer;min-height:50px;color:var(--sheet);background:var(--ink);font:800 .98rem var(--font-heading);letter-spacing:.01em;box-shadow:0 3px 0 0 var(--mark);border:0;justify-content:center;align-items:center;gap:9px;margin-top:4px;transition:transform .14s,box-shadow .14s;display:inline-flex;position:relative}.omr-submit:hover:not(:disabled){box-shadow:0 5px 0 0 var(--mark);transform:translateY(-2px)}.omr-submit:active:not(:disabled){box-shadow:0 2px 0 0 var(--mark);transform:translateY(1px)}.omr-submit:disabled{cursor:default;opacity:.7}.omr-submit svg{transition:transform .2s}.omr-submit:hover:not(:disabled) svg{transform:translate(3px)}.omr-spinner{border:2.5px solid color-mix(in srgb, var(--sheet) 35%, transparent);border-top-color:var(--sheet);border-radius:50%;width:19px;height:19px;animation:.7s linear infinite spin}.omr-foot{border-top:1px dashed var(--rule);justify-content:space-between;align-items:flex-end;gap:16px;margin-top:26px;padding-top:16px;display:flex}.omr-foot-note{max-width:40ch;font:400 .68rem/1.5 var(--font-body);color:var(--ink-soft);align-items:flex-start;gap:7px;display:flex}.omr-foot-note svg{flex:none;margin-top:2px}.omr-barcode{background-image:repeating-linear-gradient(90deg, var(--ink) 0 1px, transparent 1px 3px, var(--ink) 3px 5px, transparent 5px 6px, var(--ink) 6px 9px, transparent 9px 12px, var(--ink) 12px 13px, transparent 13px 16px);opacity:.8;flex:none;width:96px;height:26px}.omr-pagefoot{z-index:1;font:500 .82rem/1.5 var(--font-body);letter-spacing:normal;color:var(--ink-soft);margin-top:20px;position:relative}@media (max-width:480px){.omr-masthead{flex-wrap:wrap}.omr-foot{flex-direction:column;align-items:flex-start;gap:12px}}:is(.omr-admin,.omr-workspace){isolation:isolate;background:var(--paper);color:var(--ink);position:relative}:is(.omr-admin,.omr-workspace):before{content:"";z-index:0;pointer-events:none;opacity:.5;background-image:none;background-size:26px 26px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}:is(.omr-admin,.omr-workspace)>.container{z-index:1;position:relative}:is(.omr-admin,.omr-workspace) .nav{background:var(--sheet);border-bottom:2px solid var(--ink);box-shadow:none}:is(.omr-admin,.omr-workspace) .nav-brand-logo{background:var(--ink);color:var(--sheet);box-shadow:none;border-radius:0}:is(.omr-admin,.omr-workspace) .nav-brand-name{color:var(--ink)}:is(.omr-admin,.omr-workspace) h1,:is(.omr-admin,.omr-workspace) h2{font-family:var(--font-heading);color:var(--ink);letter-spacing:-.02em}:is(.omr-admin,.omr-workspace) .text-secondary{color:var(--ink-soft)}:is(.omr-admin,.omr-workspace) .text-muted{color:color-mix(in srgb, var(--ink-soft) 82%, transparent)}:is(.omr-admin,.omr-workspace) .btn{font-family:var(--font-heading);border-radius:0}:is(.omr-admin,.omr-workspace) .btn-primary{background:var(--ink);border-color:var(--ink);color:var(--sheet);box-shadow:0 3px 0 0 var(--mark);transition:transform .14s,box-shadow .14s}:is(.omr-admin,.omr-workspace) .btn-primary:hover:not(:disabled){background:var(--ink);box-shadow:0 5px 0 0 var(--mark);transform:translateY(-2px)}:is(.omr-admin,.omr-workspace) .btn-primary:active:not(:disabled){box-shadow:0 2px 0 0 var(--mark);transform:translateY(1px)}:is(.omr-admin,.omr-workspace) .btn-outline{border:1.5px solid var(--ink);color:var(--ink);background:0 0}:is(.omr-admin,.omr-workspace) .btn-outline:hover:not(:disabled){background:var(--ink);color:var(--sheet)}:is(.omr-admin,.omr-workspace) .btn-ghost{color:var(--ink-soft);background:0 0}:is(.omr-admin,.omr-workspace) .btn-ghost:hover:not(:disabled){background:var(--mark-soft);color:var(--ink)}:is(.omr-admin,.omr-workspace) .btn-danger{background:var(--mark);border-color:var(--mark);color:var(--color-on-primary)}:is(.omr-admin,.omr-workspace) .btn-danger:hover:not(:disabled){background:color-mix(in srgb, var(--mark) 86%, black)}:is(.omr-admin,.omr-workspace) .btn-success{border:1.5px solid var(--ink);color:var(--ink);background:0 0}:is(.omr-admin,.omr-workspace) .btn-success:hover:not(:disabled){background:var(--ink);color:var(--sheet)}:is(.omr-admin,.omr-workspace) .badge{letter-spacing:0;background:0 0;border:1px solid;border-radius:0;padding:3px 7px;font-size:.62rem;font-weight:700}:is(.omr-admin,.omr-workspace) .badge-primary,:is(.omr-admin,.omr-workspace) .badge-info,:is(.omr-admin,.omr-workspace) .badge-gray{color:var(--ink-soft)}:is(.omr-admin,.omr-workspace) .table-container{background:var(--sheet);border:1px solid var(--rule);box-shadow:none;border-radius:0}:is(.omr-admin,.omr-workspace) .table thead th{background:var(--sheet);color:var(--ink-soft);letter-spacing:normal;border-bottom:2px solid var(--ink);font-size:.78rem}:is(.omr-admin,.omr-workspace) .table tbody tr{border-bottom:1px solid var(--rule-soft)}:is(.omr-admin,.omr-workspace) .table tbody tr:hover{background:var(--mark-soft)}:is(.omr-admin,.omr-workspace) .table tbody td{color:var(--ink)}:is(.omr-admin,.omr-workspace) .card,:is(.omr-admin,.omr-workspace) .stat-card{background:var(--sheet);border:1px solid var(--rule);box-shadow:none;border-radius:0}:is(.omr-admin,.omr-workspace) .stat-card:after{display:none}:is(.omr-admin,.omr-workspace) .stat-card:hover{box-shadow:none;border-color:var(--rule);transform:none}:is(.omr-admin,.omr-workspace) .stat-value{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--ink)!important}:is(.omr-admin,.omr-workspace) .stat-label{font-family:var(--font-body);color:var(--ink-soft);letter-spacing:0}:is(.omr-admin,.omr-workspace) .metric-card .stat-icon{box-shadow:none;border-radius:0;color:var(--ink)!important;background:var(--rule-soft)!important}:is(.omr-admin,.omr-workspace) .metric-card-clickable:hover{border-color:var(--ink)}:is(.omr-admin,.omr-workspace) .metric-card-clickable:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}:is(.omr-admin,.omr-workspace) .class-overview-card{background:var(--sheet);border:1px solid var(--rule);border-radius:0}:is(.omr-admin,.omr-workspace) .class-overview-card.is-clickable:hover{border-color:var(--ink);box-shadow:0 3px 0 0 var(--mark);transform:translateY(-2px)}:is(.omr-admin,.omr-workspace) .class-overview-icon{background:var(--mark-soft);color:var(--mark);box-shadow:none;border-radius:0}:is(.omr-admin,.omr-workspace) .form-input,:is(.omr-admin,.omr-workspace) .form-select{background:var(--sheet);border:1px solid var(--rule);color:var(--ink);border-radius:0}:is(.omr-admin,.omr-workspace) .form-input:hover,:is(.omr-admin,.omr-workspace) .form-select:hover{border-color:color-mix(in srgb, var(--ink) 40%, var(--rule))}:is(.omr-admin,.omr-workspace) .form-input:focus,:is(.omr-admin,.omr-workspace) .form-select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:2px solid #0000}:is(.omr-admin,.omr-workspace) .form-label{letter-spacing:normal;color:var(--ink-soft);font-size:.82rem}:is(.omr-admin,.omr-workspace) .overlay-content{background:var(--sheet);border:1px solid var(--ink);box-shadow:var(--shadow-xl);border-radius:0}html{max-width:100%;overflow-x:hidden}img,video,canvas{max-width:100%}.builder-grid,.builder-import-layout,.builder-two-column,.grid-2,.stats-grid,.class-overview-grid,.import-summary,.builder-grid>*,.builder-import-layout>*,.builder-two-column>*,.grid-2>*,.stats-grid>*,.builder-panel,.card,.test-card,.container{min-width:0}@media (max-width:900px){.builder-grid,.builder-import-layout,.builder-two-column{grid-template-columns:minmax(0,1fr)}}.form-input,.form-select,.form-textarea{min-width:0;max-width:100%}input[type=datetime-local],input[type=date],input[type=time]{width:100%}@media (max-width:560px){#builder-signout-btn span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary)!important;box-shadow:var(--focus-ring)!important}.metric-card-clickable:focus-visible,.class-overview-card.is-clickable:focus-visible,.setting-toggle input:focus-visible+.setting-switch{outline-offset:2px;outline:2px solid var(--focus-color)!important}.palette-btn.current{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 24%, transparent)!important}.mcq-option.selected{border-color:var(--color-primary)!important;background:var(--color-primary-pale)!important}.mcq-option.selected .mcq-option-key{color:var(--color-on-primary)!important;background:var(--color-primary)!important;border-color:var(--color-primary)!important}.builder-panel-heading>svg{color:var(--color-text-muted)!important}.result-hero{background:var(--color-surface)!important;border-color:var(--color-border)!important;box-shadow:none!important}.builder-heading{background:var(--color-surface)!important;border-color:var(--color-border)!important}.app-shell{background-image:none;background-size:26px 26px;background-attachment:fixed;background-color:var(--color-bg)!important}.nav-brand-name{font-family:var(--font-heading);letter-spacing:-.02em}.card,.builder-panel,.stat-card,.metric-card,.table-container,.result-answer{background:var(--color-surface)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-xs)!important}.card:hover{box-shadow:var(--shadow-sm)!important;border-color:var(--color-border-strong)!important;transform:none!important}.stat-card:after{display:none!important}.stat-label{letter-spacing:0}.form-input{border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important;background:var(--color-surface)!important}.form-input:focus{border-color:var(--color-primary)!important;box-shadow:var(--focus-ring)!important}.form-select,.form-textarea{border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important;background:var(--color-surface)!important}.form-select:focus,.form-textarea:focus{border-color:var(--color-primary)!important;box-shadow:var(--focus-ring)!important}.dashboard-heading,.builder-heading h1,.result-hero h1,.card h2,.card h3{font-family:var(--font-heading);letter-spacing:-.02em}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);box-shadow:none}@media (max-width:1023px){.table-stack .table tbody td{flex-wrap:wrap;row-gap:2px;min-width:0;white-space:normal!important}.table-stack .table tbody td:before{max-width:46%}.table-stack .table tbody td>*{overflow-wrap:anywhere;min-width:0;max-width:100%}.table-stack .table tbody td .truncate{text-overflow:ellipsis;overflow:hidden}.table-stack .table tbody td[data-label=Actions]{gap:6px}.table-stack .table tbody td[data-label=Actions]>.flex{justify-content:flex-end;flex-wrap:wrap!important}.table-stack .table tbody td[data-label=Actions] .btn{flex:0 auto}}@media (max-width:640px){.card>.flex.items-start.justify-between{align-items:stretch;gap:var(--space-4);flex-direction:column}.card>.flex.items-start.justify-between>.flex:last-child{flex-wrap:wrap;width:100%}.card>.flex.items-start.justify-between>.flex:last-child .btn{flex:auto;justify-content:center}}@media (max-width:480px){.exam-bottombar{gap:6px;padding:8px 10px}.exam-bottombar .btn-label{display:none}.exam-bottombar>.flex{gap:6px}.exam-bottombar .btn{white-space:nowrap;flex:0 auto;min-width:0;padding:8px 10px}}.dashboard-heading,.builder-heading,.workspace-heading,.result-hero{background:var(--color-surface)!important;border:1px solid color-mix(in srgb, var(--color-primary) 14%, var(--color-border))!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-xs)!important;color:var(--color-text)!important}.dashboard-heading,.builder-heading,.result-hero{padding:clamp(22px,3vw,28px)!important}.result-score{background:var(--color-surface-2)!important;border-color:color-mix(in srgb, var(--color-primary) 18%, var(--color-border))!important}.result-score span{color:var(--color-text-muted)!important}.result-score strong{color:var(--color-text)!important}.admin-class-filter{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}@media (max-width:640px){.dashboard-heading,.builder-heading,.workspace-heading,.result-hero{padding:20px!important}.admin-class-filter{align-items:stretch!important}.admin-class-filter>div{flex-wrap:wrap;width:100%}.admin-class-filter>div:last-child .btn{flex:auto;justify-content:center}}.profile-detail-grid,.profile-form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-detail-grid>div{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.profile-detail-grid span{color:var(--color-text-muted);letter-spacing:0;margin-bottom:4px;font-size:.72rem;font-weight:700;display:block}.profile-detail-grid strong{overflow-wrap:anywhere;color:var(--color-text);display:block}.profile-photo-row{align-items:center;gap:var(--space-4);display:flex}.profile-photo-large{border:1px solid var(--color-border);background:var(--color-primary-pale);width:88px;height:88px;color:var(--color-primary);border-radius:50%;flex:none;place-items:center;font-size:1.75rem;font-weight:600;display:grid;overflow:hidden}.profile-photo-large img{object-fit:cover;width:100%;height:100%}@media (max-width:560px){.profile-detail-grid,.profile-form-grid{grid-template-columns:1fr}.profile-photo-row{align-items:flex-start}}.card,.table-container,.question-card,.stat-card,.metric-card,.overlay-content,.class-overview-card{border-radius:var(--radius-sm)!important;box-shadow:none!important;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;-webkit-backdrop-filter:none!important}.dashboard-heading,.builder-heading,.workspace-heading,.result-hero{background:var(--color-surface)!important;border:1px solid var(--color-border)!important;border-top:2px solid var(--color-primary)!important;border-radius:var(--radius-sm)!important;box-shadow:none!important;color:var(--color-text)!important}.dashboard-heading h1,.builder-heading h1,.workspace-heading h1,.result-hero h1{color:var(--color-text)!important}.dashboard-heading p,.builder-heading p,.workspace-heading p,.result-hero p{color:var(--color-text-secondary)!important}.card:hover,.stat-card:hover,.metric-card:hover,.class-overview-card:hover,.btn:hover,.btn-primary:hover:not(:disabled),.btn-accent:hover:not(:disabled),.btn-outline:hover:not(:disabled),.btn-danger:hover:not(:disabled),.mcq-option:hover,.palette-btn:hover,.metric-card-clickable:hover{transform:none!important}.card:hover,.stat-card:hover,.metric-card:hover,.class-overview-card:hover{box-shadow:none!important;background:var(--color-surface-2)!important}.stat-card:before,.stat-card:after{display:none!important}.nav{background:var(--color-surface)!important;border-bottom:2px solid var(--color-primary)!important;box-shadow:none!important}.nav-brand-logo,.btn{border-radius:var(--radius-sm)!important;box-shadow:none!important}.btn-primary{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--color-on-primary)!important}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.btn-outline,.btn-ghost{color:var(--color-text)!important;border-color:var(--color-border)!important;background:0 0!important}.btn-ghost{border-color:#0000!important}.btn-accent{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--color-on-primary)!important}.btn-accent:hover:not(:disabled){background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.btn-danger{color:var(--color-danger)!important;border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border))!important;background:0 0!important}.btn-danger:hover:not(:disabled){background:var(--color-danger)!important;color:var(--color-on-primary)!important}.badge{letter-spacing:0;padding:3px 9px 3px 8px;font-size:.66rem;border-radius:var(--radius-sm)!important}.stat-icon{border-radius:var(--radius-sm)!important}.stat-card{border-top:1px solid var(--color-border)!important}.table-container{border-radius:var(--radius-sm)!important}.table thead th{background:var(--color-surface-2)!important;border-bottom:2px solid var(--color-primary)!important}.table tbody tr:nth-child(2n){background:var(--color-surface-2)}.table tbody tr:hover{background:var(--color-primary-pale)!important}.palette-btn{border-radius:var(--radius-sm)!important}.exam-timer-value{font-family:var(--font-body);letter-spacing:normal;font-variant-numeric:tabular-nums}.toast{border-radius:var(--radius-sm)!important}.btn-accent,.btn-success{color:var(--color-on-primary)!important}.builder-stepper span.active,.builder-stepper button.active{color:var(--color-bg)!important}@media (max-width:767px){.palette-btn{flex:0 0 40px!important;width:40px!important;height:40px!important}}.stat-icon,.metric-card .stat-icon,.empty-state-icon,.class-overview-icon{box-shadow:none!important;background:0 0!important;border:none!important}.builder-stepper span,.builder-stepper button,.import-mode-tabs,.import-mode-tabs button{border-radius:var(--radius-sm)!important}.import-mode-tabs button[aria-selected=true]{background:var(--color-primary)!important;color:var(--color-bg)!important}.class-overview-card.is-clickable:hover{border-color:var(--color-primary)!important;background:var(--color-surface-2)!important}:is(.omr-admin,.omr-workspace) .metric-card .stat-icon,:is(.omr-admin,.omr-workspace) .metric-card-danger .stat-icon,:is(.omr-admin,.omr-workspace) .stat-card .stat-icon,:is(.omr-admin,.omr-workspace) .class-overview-icon,.stat-icon,.metric-card .stat-icon,.empty-state-icon,.class-overview-icon{box-shadow:none!important;background:0 0!important;border:none!important}.result-score,.result-answer,.exam-overlay-icon,.exam-zoom-button,.question-image-controls button,.question-image-canvas img,.mcq-option-multi .mcq-option-key{border-radius:var(--radius-sm)!important}.app-shell.omr-workspace:before{display:none!important}.omr-auth{min-height:100dvh;padding:clamp(20px, 5vw, 52px) var(--space-4);background-color:var(--color-bg);color:var(--color-text);background-image:none;background-size:28px 28px}.omr-sheet:before,.omr-bubbles,.omr-barcode{display:none!important}.omr-sheet{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:min(100%,470px);box-shadow:0 1px 0 0 var(--rule) inset;padding:clamp(24px,5vw,38px)}.omr-masthead{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light)}.omr-brandblock{color:var(--color-primary);letter-spacing:-.01em;background:0 0;padding:0;font-size:.95rem}.omr-mast-right{gap:var(--space-2)}.omr-stamp{border:1px solid var(--color-accent-light);border-radius:var(--radius-sm);background:var(--color-accent-light);color:var(--color-accent-hover);font-family:var(--font-body);letter-spacing:.02em;text-transform:none;opacity:1;padding:5px 8px;font-size:.75rem;transform:none}.omr-title{padding:var(--space-6) 0 var(--space-5)}.omr-title h1{color:var(--color-text);font-size:clamp(1.65rem,4.5vw,2rem)}.omr-title p{color:var(--color-text-secondary)}.omr-form{gap:var(--space-4)}.omr-field{gap:var(--space-2)}.omr-field>label{color:var(--color-text-secondary);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:.82rem}.omr-field input,.omr-field select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);min-height:44px;color:var(--color-text);font:500 .96rem var(--font-body);padding:10px 12px}.omr-field input:focus,.omr-field select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:2px solid #0000}.omr-field:after{display:none}.omr-submit{min-height:46px;margin-top:var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary);box-shadow:none;font-family:var(--font-body);letter-spacing:0;font-size:.95rem}.omr-submit:after{display:none}.omr-submit:hover:not(:disabled){background:var(--color-primary-hover)}.omr-pagefoot{color:var(--color-text-secondary)}.omr-foot{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.omr-pagefoot{font-family:var(--font-body);letter-spacing:0}.app-shell,.omr-auth{background-image:none!important;background-size:26px 26px!important}.omr-auth .omr-grid{opacity:.34;pointer-events:none;background-image:none;background-size:26px 26px;display:block!important}.omr-auth .omr-sheet,.omr-auth .omr-pagefoot{z-index:1;position:relative}@media (max-width:460px){.omr-auth{padding-inline:var(--space-3)}.omr-sheet{padding:var(--space-5)}}@supports (overflow:clip){html,body{overflow:clip visible}}@supports not (overflow:clip){html{overflow-x:hidden}body{overflow-x:visible}}html{scroll-padding-top:calc(var(--nav-h) + 12px)}.nav{min-height:var(--nav-h);transition:box-shadow .18s;height:auto!important}.nav-sentinel{pointer-events:none;height:24px;margin-bottom:-24px}.nav[data-condensed=true]{min-height:var(--nav-h-condensed);box-shadow:0 1px 0 0 var(--color-border)!important}.nav-brand-logo{transition:transform .18s}.nav[data-condensed=true] .nav-brand-logo{transform:scale(.75)}.nav[data-condensed=true] .nav-brand-name{font-size:1rem}.nav-brand{flex:0 auto;min-width:0}.nav-brand-text{min-width:0}.nav-brand-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:767px){.nav-brand-text{display:flex!important}.nav-brand-name{font-size:.92rem}}:is(.omr-admin,.omr-workspace):before{display:none!important}:is(.omr-admin,.omr-workspace){isolation:auto}.app-shell{background-attachment:scroll!important}.form-select{appearance:none!important;background-color:var(--color-surface)!important;border-radius:var(--radius-md)!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' fill='none' stroke='%235B6572' stroke-width='1.6' stroke-linecap='square'/%3E%3C/svg%3E")!important;background-position:right 11px center!important;background-repeat:no-repeat!important;background-size:11px 7px!important;padding-right:32px!important}html[data-theme=dark] .form-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' fill='none' stroke='%239BA398' stroke-width='1.6' stroke-linecap='square'/%3E%3C/svg%3E")!important}.form-select:disabled{opacity:.6;cursor:not-allowed;background-color:color-mix(in srgb, var(--color-border) 22%, var(--color-surface))!important}.omr-field select{border:0;border-bottom:1.5px solid var(--rule);appearance:none;width:100%;color:var(--ink);font:500 1rem var(--font-body);background-color:#0000;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' fill='none' stroke='%235B6572' stroke-width='1.6' stroke-linecap='square'/%3E%3C/svg%3E");background-position:right 2px center;background-repeat:no-repeat;background-size:11px 7px;border-radius:0;padding:9px 26px 9px 2px;transition:border-color .2s}.omr-field select:focus{outline:2px solid #0000}html[data-theme=dark] .omr-field select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' fill='none' stroke='%239BA398' stroke-width='1.6' stroke-linecap='square'/%3E%3C/svg%3E")}.omr-field select option{background-color:var(--sheet);color:var(--ink)}.omr-bubbles{gap:9px;padding:4px 0 24px;display:flex!important}.omr-bubbles span[data-opt]{border-color:var(--omr-c);color:var(--omr-c);font-weight:700;transition:background-color .2s,border-color .2s,color .2s}:is(.omr-admin,.omr-workspace)>.container{z-index:auto}@media (max-width:767px){.nav[data-condensed=true] .nav-brand-name{font-size:.86rem}}:is(.omr-admin,.omr-workspace) .badge-danger,:is(.omr-admin,.omr-workspace) .metric-card-danger .stat-icon{color:var(--color-danger)!important}.slip-shell{padding-bottom:var(--space-16)}.slip{background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius-sm);width:min(100% - 32px,470px);box-shadow:0 1px 0 0 var(--rule) inset;color:var(--ink);margin:clamp(20px,5vw,44px) auto 0;padding:clamp(22px,4.5vw,34px)}.slip-title-row{padding:0 0 4px}.slip-title-row h1{font:800 clamp(1.45rem, 4vw, 1.8rem)/1.05 var(--font-heading);letter-spacing:-.02em;color:var(--ink);margin:0}.slip-title-row p{font:400 .86rem/1.5 var(--font-body);color:var(--ink-soft);margin:7px 0 0}.slip-field{padding:18px 0 4px;position:relative}.slip-field>label,.slip-label{font:700 .82rem/1.3 var(--font-body);letter-spacing:normal;color:var(--color-text-secondary);margin-bottom:8px;display:block}.slip-field input[type=text]{border:0;border-bottom:1px solid var(--color-border-strong);width:100%;color:var(--ink);font:500 1.05rem var(--font-body);background:0 0;border-radius:0;padding:8px 2px}.slip-field input[type=text]:focus{outline:none}.slip-field input[type=text]::placeholder{color:var(--color-placeholder);opacity:1}.slip-rule{background:var(--color-primary);transform-origin:0;width:100%;height:2px;position:absolute;bottom:4px;left:0;transform:scaleX(0)}.slip-field:focus-within .slip-rule,.slip-field[data-inked=true] .slip-rule{transform:scaleX(1)}.slip-field[data-inked=true] input[type=text]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.slip-chips{flex-wrap:wrap;gap:7px;display:flex}.slip-chip{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--sheet);min-height:36px;color:var(--ink);font:600 .82rem var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:7px 11px;position:relative}.slip-chip:disabled{opacity:.45;cursor:not-allowed}.slip-chip:hover:not([aria-pressed=true]):not(:disabled){border-color:color-mix(in srgb, var(--ink) 35%, var(--rule))}.slip-chip[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.slip-pencil{border-top:1px dashed var(--rule);flex-direction:column;margin-top:22px;padding-top:14px;display:flex}.slip-line{border:0;border-bottom:1px solid var(--rule-soft);text-align:left;cursor:pointer;width:100%;font:400 .875rem/1.4 var(--font-body);color:var(--color-text-secondary);-webkit-tap-highlight-color:transparent;background:0 0;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 2px;display:flex}.slip-line:last-child{border-bottom:0}.slip-line:hover{color:var(--ink)}.slip-line-key{letter-spacing:normal;flex:none;font-size:.82rem}.slip-line-value{text-align:right;color:var(--ink);font-variant-numeric:tabular-nums;flex:auto}.slip-line[data-ink=true] .slip-line-value{color:var(--color-text);font-weight:700}.slip-line-editor{border-bottom:1px solid var(--rule-soft);padding:10px 2px 14px}.slip-ink{border-radius:var(--radius-md);background:var(--color-primary);width:100%;min-height:50px;color:var(--color-on-primary);font:700 1rem var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;justify-content:center;align-items:center;gap:9px;margin-top:24px;display:inline-flex}.slip-ink:hover:not(:disabled){background:var(--color-primary-hover)}.slip-ink:disabled{opacity:.45;cursor:not-allowed}.slip-spinner{border:2.5px solid color-mix(in srgb, var(--color-on-primary) 35%, transparent);border-top-color:var(--color-on-primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.slip-foot{border-top:1px dashed var(--rule);font:400 .8rem/1.5 var(--font-body);color:var(--color-text-secondary);margin-top:18px;padding-top:14px}@media (prefers-reduced-motion:no-preference){.slip-rule{transition:transform .28s cubic-bezier(.2,.8,.2,1)}.slip-chip{transition:background-color .14s,border-color .14s,color .14s,transform .12s}.slip-chip:active{transform:translateY(1px)}.slip-line{transition:color .14s}.slip-ink{transition:background-color .14s,transform .14s}.slip-ink:active:not(:disabled){transform:translateY(1px)}}@media (max-width:560px){.slip{padding:20px 18px}}.omr-bubbles span[data-opt=a]{--omr-c:var(--tone-0)}.omr-bubbles span[data-opt=b]{--omr-c:var(--tone-1)}.omr-bubbles span[data-opt=c]{--omr-c:var(--tone-2)}.omr-bubbles span[data-opt=d]{--omr-c:var(--tone-3)}html[data-omr-mark="0"] .omr-bubbles span[data-opt=a],html[data-omr-mark="1"] .omr-bubbles span[data-opt=b],html[data-omr-mark="2"] .omr-bubbles span[data-opt=c],html[data-omr-mark="3"] .omr-bubbles span[data-opt=d],html:not([data-omr-mark]) .omr-bubbles span[data-opt=c]{border-color:var(--omr-c);background-color:var(--omr-c);color:var(--color-surface)}.app-shell,.omr-auth{background-image:none!important;background-position:0 0!important;background-repeat:repeat!important;background-size:104px 104px,104px 104px,26px 26px,26px 26px!important}.omr-auth .omr-grid{display:none!important}.nav-brand{margin-right:auto}.portal-nav-links{align-items:center;gap:var(--space-2);min-width:0;display:flex}@media (max-width:840px){.nav-brand{flex:0 auto;min-width:0}.portal-nav-links{border-top:1px solid var(--rule-soft,var(--color-border-light));flex:1 0 100%;order:3;gap:6px;margin:8px 0 0;padding-top:8px}.portal-nav-links>.flex{display:contents}.portal-nav-links .btn{white-space:nowrap;flex:0 auto;justify-content:center;min-width:0}.portal-nav-links .btn span{text-overflow:ellipsis;overflow:hidden}@media (max-width:560px){.portal-nav-links .btn{flex:1 1 0}}}@media (max-width:400px){.nav-brand-name{font-size:.88rem;display:block!important}}.import-mode-tabs{flex-wrap:wrap;gap:2px 4px;width:100%;padding:6px;overflow:visible;background:var(--color-surface)!important}.import-mode-tabs button{padding:8px 12px 8px 29px;transition:color .14s;position:relative;color:var(--ink-soft,var(--color-text-secondary))!important;box-shadow:none!important;background:0 0!important}.import-mode-tabs button:before{content:"";opacity:.5;border:1.5px solid;border-radius:50%;width:11px;height:11px;margin-top:-6px;transition:background-color .14s,border-color .14s,opacity .14s;position:absolute;top:50%;left:10px}.import-mode-tabs button:hover{color:var(--ink,var(--color-text))!important}.import-mode-tabs button:hover:before{opacity:.85}.import-mode-tabs button[aria-selected=true]{font-weight:700;color:var(--ink,var(--color-text))!important;background:0 0!important}.import-mode-tabs button[aria-selected=true]:before{border-color:var(--color-primary);background:var(--color-primary);opacity:1}@media (prefers-reduced-motion:reduce){.import-mode-tabs button,.import-mode-tabs button:before{transition:none}}.omr-brandblock{align-items:center;gap:10px;font-weight:700;display:inline-flex}:is(.omr-admin,.omr-workspace) .metric-card .stat-value{color:var(--color-text)!important}:is(.omr-admin,.omr-workspace) .metric-card .stat-icon{color:var(--metric-color,var(--color-text-secondary))!important;box-shadow:none!important;background:0 0!important;border:0!important}:is(.omr-admin,.omr-workspace) .metric-card .stat-label{color:var(--color-text-secondary)}:is(.omr-admin,.omr-workspace) .badge-primary{color:var(--color-primary)!important}:is(.omr-admin,.omr-workspace) .badge-info{color:var(--color-info)!important}:is(.omr-admin,.omr-workspace) .badge-success{color:var(--color-success)!important}:is(.omr-admin,.omr-workspace) .badge-warning{color:var(--color-warning)!important}:is(.omr-admin,.omr-workspace) .badge-danger{color:var(--color-danger)!important}:is(.omr-admin,.omr-workspace) .badge-gray{color:var(--color-text-secondary)!important}.badge{border:1px solid color-mix(in srgb, currentColor 38%, transparent)!important;background:0 0!important}.palette-btn[data-state=not-visited]{color:var(--color-text-secondary)!important}.palette-btn[data-state=visited],.palette-btn[data-state=answered],.palette-btn[data-state=marked],.palette-btn[data-state=answered-marked]{font-weight:600}@media (max-width:1023px){.exam-palette .palette-legend{flex-wrap:wrap;gap:4px 12px;font-size:.75rem;display:flex!important}}.metric-card-primary{--metric-color:var(--color-primary)!important}.metric-card-accent{--metric-color:var(--color-accent)!important}.metric-card-success{--metric-color:var(--color-success)!important}.metric-card-warning{--metric-color:var(--color-warning)!important}.metric-card-danger{--metric-color:var(--color-danger)!important}.metric-card-info{--metric-color:var(--color-info)!important}h2{font-size:clamp(1.25rem,2.2vw,1.5rem)}h3{font-size:clamp(1.05rem,1.8vw,1.2rem)}.card h2,.builder-panel h2,.result-review h2,.notice h2{font-size:1.15rem}.card h3,.builder-panel h3,.result-review h3{font-size:1rem}.overlay-content h2{font-size:1.35rem}.btn:disabled,.omr-submit:disabled,.slip-ink:disabled{cursor:not-allowed;opacity:.45!important}@media (min-width:768px){.exam-layout{min-height:100dvh}.exam-bottombar{z-index:20;position:sticky;bottom:0}}.palette-legend{flex-flow:wrap;gap:6px 14px}.exam-palette .palette-legend{flex-direction:row}.exam-topbar .btn-outline,.exam-topbar .btn-ghost{color:inherit!important;border-color:color-mix(in srgb, currentColor 40%, transparent)!important;background:0 0!important}.exam-topbar .btn-outline:hover:not(:disabled),.exam-topbar .btn-ghost:hover:not(:disabled){background:color-mix(in srgb, currentColor 12%, transparent)!important}html:not([data-theme=dark]) .exam-topbar .btn-primary{background:var(--color-bg)!important;border-color:var(--color-bg)!important;color:var(--color-primary)!important}.exam-topbar .badge{color:inherit!important}.btn-success,:is(.omr-admin,.omr-workspace) .btn-success{background:var(--color-success)!important;border-color:var(--color-success)!important;color:var(--color-bg)!important}.btn-success:hover:not(:disabled),:is(.omr-admin,.omr-workspace) .btn-success:hover:not(:disabled){background:color-mix(in srgb, var(--color-success) 86%, black)!important;border-color:color-mix(in srgb, var(--color-success) 86%, black)!important;color:var(--color-bg)!important}.result-score{text-align:left;flex-direction:column-reverse;min-width:150px;display:flex;padding:var(--space-4) var(--space-5)!important;background:var(--color-surface-2)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-sm)!important}.result-score span{letter-spacing:0;margin-top:6px;font-size:.78rem;font-weight:500;color:var(--color-text-muted)!important}.result-score strong{font:800 1.875rem/1 var(--font-heading);font-variant-numeric:tabular-nums;margin:0;color:var(--color-text)!important}.omr-stamp{letter-spacing:0;font-size:.75rem;border:1px solid color-mix(in srgb, currentColor 38%, transparent)!important;border-radius:var(--radius-sm)!important;color:var(--color-text-secondary)!important;background:0 0!important}@media (min-width:900px){.stats-grid:has(>:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}}.class-overview-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.class-overview-card{text-align:left;display:block;padding:var(--space-4) var(--space-5)!important}.class-overview-icon{width:auto;height:auto;color:var(--color-text-secondary);grid-row:1/3;margin:0}@media (max-width:380px){.class-overview-grid{grid-template-columns:1fr}}.qs-editor-wrap{gap:var(--space-3);display:grid}.qs-editor-hint{color:var(--color-text-secondary);font:600 .78rem var(--font-body);align-items:center;gap:8px;display:flex}.qs-editor-hint svg{color:var(--color-text-muted);flex:none}.qs-editor{position:relative}.qs-editor .qs-text{width:100%;min-height:3.2em;color:inherit;font:inherit;line-height:inherit;resize:vertical;background:0 0;border:0;border-bottom:1.5px dashed #0000;border-radius:0;outline:none;margin:0;padding:2px 0;transition:border-color .15s;display:block}.qs-editor .qs-text:hover,.qs-editor .qs-text:focus{border-bottom-color:var(--color-border)}.qs-editor .qs-text:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.qs-editor .qs-text::placeholder{color:var(--color-text-muted);font-style:italic}.qs-editor .mcq-option{cursor:default}.qs-editor .mcq-option:hover{transform:none}.qs-editor .qs-option{min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:none;flex:auto;padding:0}.qs-editor .qs-option::placeholder{color:var(--color-text-muted);font-style:italic}.qs-editor .qs-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.qs-editor .mcq-option-key{cursor:pointer;font:inherit;font-weight:600;transition:background-color .12s,color .12s,border-color .12s}.qs-editor .mcq-option-key:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.qs-editor .mcq-option:not(.selected) .mcq-option-key:hover{border-color:var(--color-accent);color:var(--color-accent)}.qs-correct-stamp{flex:none;margin-left:auto}.qs-option-remove{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;opacity:0;background:0 0;border:0;flex:none;place-items:center;margin-left:6px;transition:opacity .12s,color .12s;display:grid}.qs-editor .mcq-option:hover .qs-option-remove,.qs-editor .mcq-option:focus-within .qs-option-remove{opacity:1}.qs-option-remove:hover{color:var(--color-danger)}.qs-editor .qs-add-option{width:100%;color:var(--color-text-secondary);cursor:pointer;font:inherit;text-align:left;background:0 0!important;border-style:dashed!important}.qs-editor .qs-add-option .mcq-option-key{cursor:inherit}.qs-editor .qs-add-option:hover:not(:disabled){color:var(--color-text);border-color:var(--color-accent)!important}.qs-editor .qs-add-option:disabled{opacity:.45;cursor:not-allowed}.qs-badge-input,.qs-badge-select,.qs-badge-field{font:inherit;cursor:text}.qs-badge-input{outline:none;min-width:7ch;max-width:22ch}.qs-badge-input::placeholder{color:var(--color-placeholder);font-weight:600}.qs-badge-input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.qs-badge-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.75 6 6.25 11 1.75' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='square'/%3E%3C/svg%3E")!important;background-position:right 6px center!important;background-repeat:no-repeat!important;background-size:9px 6px!important;padding-right:20px!important}.qs-badge-field{align-items:center;gap:3px;display:inline-flex}.qs-badge-field input{border:0;border-bottom:1px solid color-mix(in srgb, currentColor 45%, transparent);width:4ch;color:inherit;font:inherit;text-align:center;-moz-appearance:textfield;background:0 0;border-radius:0;outline:none;padding:0;font-weight:600}.qs-badge-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qs-badge-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qs-badge-field input:focus{border-bottom-color:currentColor}.qs-badge-field input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.qs-image-drop{width:100%;margin:var(--space-3) 0;border:1.5px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font:600 .82rem var(--font-body);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:10px;padding:12px 14px;transition:border-color .15s,color .15s;display:flex}.qs-image-drop:hover{border-color:var(--color-accent);color:var(--color-text)}.qs-image-drop.is-busy{cursor:progress;opacity:.7}.qs-image-drop input{opacity:0;width:1px;height:1px;position:absolute}.qs-image-replace{cursor:pointer}.qs-image-replace input{opacity:0;width:1px;height:1px;position:absolute}:is(.file-dropzone,.question-image-upload .btn,.qs-image-drop,.qs-image-replace):has(input:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.qs-student-field{margin-top:var(--space-4);gap:6px;display:grid}.qs-student-field-label{font:700 .62rem var(--font-mono);letter-spacing:0;color:var(--color-text-muted)}.qs-student-field-box{border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);background:var(--color-surface-2);padding:10px 12px;font-style:italic;display:block}.qs-student-field-box--tall{min-height:84px}.qs-numeric{gap:var(--space-3);display:grid}.qs-key-row{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.qs-key-row label{gap:4px;display:grid}.qs-key-row label>span{font:700 .62rem var(--font-mono);letter-spacing:0;color:var(--color-success)}@media (max-width:480px){.qs-key-row{grid-template-columns:1fr}}.qs-solution{margin-top:var(--space-4);border-top:1px solid var(--color-border-light);padding-top:var(--space-3)}.qs-solution summary{cursor:pointer;font:600 .8rem var(--font-body);color:var(--color-text-secondary);list-style:none}.qs-solution summary::-webkit-details-marker{display:none}.qs-solution summary:before{content:"▸";content:"▸" / "";width:1.1em;transition:transform .12s;display:inline-block}.qs-solution[open] summary:before{transform:rotate(90deg)}.qs-solution textarea{margin-top:var(--space-2)}.qs-editor-foot{justify-content:flex-end;align-items:center;gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}.qs-editor-foot .form-hint{margin-right:auto}.answer-photo-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.answer-photo-actions .btn{cursor:pointer}@media print{html,body{background:#fff!important}.app-shell,.omr-auth{background-color:#fff!important;background-image:none!important}.omr-grid,:is(.omr-admin,.omr-workspace):before,.nav,.nav-sentinel,.exam-topbar,.exam-bottombar,.exam-palette{display:none!important}}.form-select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-color:var(--color-surface)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}html[data-theme=dark] .form-select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.form-select option{background-color:var(--color-surface)!important;color:var(--color-text)!important}.form-select option:checked{background-color:var(--color-accent)!important;color:var(--color-on-primary)!important}.qs-badge-select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-color:var(--color-surface-2)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}.qs-badge-select option{background-color:var(--color-surface)!important;color:var(--color-text)!important}.qs-badge-select option:checked{background-color:var(--color-accent)!important;color:var(--color-on-primary)!important}:is(.omr-admin,.omr-workspace) .form-select:disabled,:is(.omr-admin,.omr-workspace) .form-input:disabled{opacity:.72;background-color:var(--color-surface-2)!important;border-color:var(--color-border-light)!important;color:var(--color-text-muted)!important}.omr-auth{align-items:start;overflow:clip visible}.omr-sheet{margin-inline:auto}.registration-class-picker{position:relative}.registration-class-trigger{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);width:100%;min-height:44px;color:var(--color-text);cursor:pointer;font:500 .96rem var(--font-body);text-align:left;padding:10px 12px;display:flex}.registration-class-trigger:hover:not(:disabled),.registration-class-trigger:focus-visible{border-color:var(--color-primary-light);box-shadow:0 0 0 3px var(--color-primary-pale);outline:0}.registration-class-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.registration-class-trigger:disabled{cursor:not-allowed;opacity:.65}.registration-class-caret{color:var(--color-text-secondary);font-size:1.2rem;line-height:1}.registration-class-menu{z-index:50;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);max-height:min(320px,100dvh - 120px);box-shadow:var(--shadow-md);padding:5px;position:absolute;bottom:calc(100% + 7px);left:0;right:0;overflow-y:auto}.registration-class-menu button{justify-content:space-between;align-items:center;gap:var(--space-3);border-radius:calc(var(--radius-sm) - 2px);width:100%;min-height:40px;color:var(--color-text);cursor:pointer;font:500 .92rem var(--font-body);text-align:left;background:0 0;border:0;padding:9px 10px;display:flex}.registration-class-menu button:hover,.registration-class-menu button:focus-visible,.registration-class-menu button.selected{background:var(--color-primary-pale);color:var(--color-primary);outline:0}.registration-class-menu button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (min-height:720px){.omr-auth{align-items:center}}.exam-page{height:100dvh;overflow:hidden;min-height:100dvh!important}.exam-layout{grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden}.exam-topbar,.exam-bottombar{position:relative;top:auto;bottom:auto}.exam-main{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0}.exam-palette{overscroll-behavior:contain;min-height:0;max-height:none;position:relative;top:auto}.exam-save-status{min-width:58px;color:var(--color-text-muted);text-align:center;font-size:.75rem;font-weight:700}.exam-save-status.saving{color:var(--color-warning)}@media (max-width:1023px){.exam-layout{grid-template-rows:auto auto minmax(0,1fr) auto}.exam-palette{padding:8px 12px;overflow:auto hidden}.exam-palette>h4,.exam-palette-summary,.exam-palette .palette-legend{display:none}.exam-palette .palette-grid{gap:6px;width:max-content;display:flex}.exam-palette .palette-btn{aspect-ratio:auto;flex:0 0 34px;width:34px;height:34px}}.omr-workspace{background-color:var(--color-bg);background-image:none!important;background-position:0 0!important;background-size:128px 128px,128px 128px,32px 32px,32px 32px!important}.app-shell.omr-workspace{background-color:var(--color-bg);background-image:none!important;background-size:128px 128px,128px 128px,32px 32px,32px 32px!important}.omr-workspace:before{display:none}.omr-workspace .nav{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.omr-workspace .nav-brand-logo{border-radius:var(--radius-sm)}.omr-workspace .form-label,.omr-workspace .badge,.omr-workspace .stat-label{font-family:var(--font-body);letter-spacing:0;text-transform:none}.omr-workspace .card,.omr-workspace .stat-card,.omr-workspace .builder-panel,.omr-workspace .builder-advanced,.omr-workspace .table-container,.omr-workspace .question-card,.omr-workspace .file-dropzone,.omr-workspace .question-image-upload{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:none}.omr-workspace .card:hover,.omr-workspace .stat-card:hover{border-color:var(--color-border);box-shadow:none;transform:none}.omr-workspace .btn{border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:600}.omr-workspace .btn-primary,.omr-workspace .btn-primary:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);box-shadow:none;transform:none}.omr-workspace .btn-outline{border-color:var(--color-border);color:var(--color-text)}.omr-workspace .btn-outline:hover:not(:disabled){background:var(--color-bg-dark);color:var(--color-text)}.omr-workspace .badge{border-radius:var(--radius-xs);background:var(--color-bg-dark);border-color:#0000;padding:3px 6px;font-size:.68rem}.omr-workspace .form-input,.omr-workspace .form-select,.omr-workspace .form-textarea{border-radius:var(--radius-sm);background:var(--color-surface)}.omr-workspace .form-input:focus,.omr-workspace .form-select:focus,.omr-workspace .form-textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.omr-workspace .builder-heading{border-bottom:1px solid var(--color-border);background:0 0;padding-bottom:16px}.omr-workspace .question-card{background:var(--color-surface)}.omr-workspace .question-header{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);min-height:48px;padding:12px 16px}.omr-workspace .question-body{padding:16px}.omr-workspace .question-number{color:var(--color-text);font-size:.95rem}.omr-workspace .question-image-viewer{border-radius:var(--radius-sm);background:var(--color-bg-dark);margin:14px 0}.omr-workspace .question-image-canvas{padding:10px}.omr-workspace .question-image-canvas img{border-radius:var(--radius-xs)}.omr-workspace .setting-toggle{grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px}.omr-workspace .setting-toggle input[type=checkbox]{opacity:1;width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;margin:2px 0 0;position:static}.omr-workspace .setting-toggle input[type=checkbox]:disabled{cursor:not-allowed}.omr-workspace .setting-switch{display:none}.test-builder-shell>.nav{isolation:isolate;position:sticky;overflow:clip;z-index:1100!important;background:var(--color-surface)!important}.test-builder-shell>.nav .nav-brand-text{justify-content:center;line-height:1.1;flex-direction:column!important;display:flex!important}.test-builder-shell>.nav .nav-brand-name{line-height:1.1;display:block!important}.test-builder-shell .builder-import-layout{grid-template-columns:minmax(330px,.88fr) minmax(0,1.12fr)}.test-builder-shell .builder-panel,.test-builder-shell .builder-advanced{background:color-mix(in srgb, var(--color-surface) 97%, transparent);border-color:color-mix(in srgb, var(--color-primary) 18%, var(--color-border))}.test-builder-shell .file-dropzone{background:color-mix(in srgb, var(--color-surface) 88%, var(--color-primary-pale));min-height:238px}.test-builder-shell .question-paper-card{background:var(--color-surface)}.test-builder-shell .question-paper-card-footer{background:var(--color-surface-2)}@media (max-width:1100px){.test-builder-shell .builder-import-layout{grid-template-columns:minmax(0,1fr)}.test-builder-shell .builder-actions{justify-content:flex-start}}@media (max-width:720px){.test-builder-shell .nav-brand-sub{display:none}.test-builder-shell .builder-panel{padding:18px}.test-builder-shell .file-dropzone{min-height:180px}}.test-builder-shell .builder-panel,.test-builder-shell .builder-advanced{background:var(--color-surface)!important;border:1px solid var(--color-border)!important;box-shadow:none!important}.test-builder-shell .builder-heading{background:var(--color-surface)!important;border:1px solid var(--color-border)!important}.test-builder-shell .form-label{color:var(--color-text-secondary);font-size:.78rem;font-weight:700}.test-builder-shell .form-input,.test-builder-shell .form-select,.test-builder-shell .form-textarea{box-sizing:border-box;min-height:48px;border:1px solid var(--color-border-strong)!important;border-radius:var(--radius-sm)!important;background-color:var(--color-surface)!important;color:var(--color-text)!important;padding:12px 14px!important}.test-builder-shell .form-textarea{min-height:126px}.test-builder-shell .form-input:hover,.test-builder-shell .form-select:hover,.test-builder-shell .form-textarea:hover{border-color:var(--color-primary)!important}.test-builder-shell .form-input:focus,.test-builder-shell .form-select:focus,.test-builder-shell .form-textarea:focus{border-color:var(--color-primary)!important;box-shadow:var(--focus-ring)!important}.test-builder-shell .form-input:disabled,.test-builder-shell .form-select:disabled,.test-builder-shell .form-textarea:disabled{opacity:1!important;background-color:var(--color-surface-2)!important;border-color:var(--color-border)!important;color:var(--color-text-muted)!important}.test-builder-shell .notice-info{background:var(--color-primary-pale)!important;border-color:color-mix(in srgb, var(--color-primary) 35%, transparent)!important;color:var(--color-text)!important}.test-builder-shell>.nav{background-color:var(--color-surface)!important;border-bottom:1px solid var(--color-border)!important;height:72px!important;min-height:72px!important;box-shadow:none!important;background-image:none!important;position:relative!important;top:auto!important;overflow:visible!important}.test-builder-shell .test-builder-main{background-image:none!important}.test-builder-shell .builder-heading,.test-builder-shell .builder-panel,.test-builder-shell .builder-advanced,.test-builder-shell .file-dropzone,.test-builder-shell .question-paper-card,.test-builder-shell .question-card{opacity:1!important;background-image:none!important}.test-builder-shell .builder-heading{background-color:var(--color-surface)!important;padding:24px!important}.test-builder-shell .builder-panel,.test-builder-shell .builder-advanced{background-color:var(--color-surface)!important}.test-builder-shell .file-dropzone{background-color:var(--color-surface-2)!important}@media (max-width:720px){.test-builder-shell>.nav{height:60px!important;min-height:60px!important}}.nav-brand-logo{place-items:center;overflow:hidden;color:#0000!important;box-shadow:none!important;background:0 0!important;border:0!important;display:grid!important}.nav-brand-emblem{object-fit:contain;width:100%;height:100%;display:block}:is(.omr-admin,.omr-workspace)>.nav{z-index:1100;isolation:isolate;position:sticky;top:0;background-color:var(--color-surface)!important;opacity:1!important;border-bottom:1px solid var(--color-border)!important;box-shadow:none!important;background-image:none!important}:is(.omr-admin,.omr-workspace) .dashboard-heading,:is(.omr-admin,.omr-workspace) .builder-heading,:is(.omr-admin,.omr-workspace) .workspace-heading,:is(.omr-admin,.omr-workspace) .result-hero,:is(.omr-admin,.omr-workspace) .card,:is(.omr-admin,.omr-workspace) .stat-card,:is(.omr-admin,.omr-workspace) .metric-card,:is(.omr-admin,.omr-workspace) .table-container,:is(.omr-admin,.omr-workspace) .class-overview-card{background-color:var(--color-surface)!important;opacity:1!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-lg)!important;box-shadow:none!important;background-image:none!important}:is(.omr-admin,.omr-workspace) .dashboard-heading,:is(.omr-admin,.omr-workspace) .builder-heading,:is(.omr-admin,.omr-workspace) .workspace-heading,:is(.omr-admin,.omr-workspace) .result-hero{padding:clamp(20px,3vw,28px)!important}:is(.omr-admin,.omr-workspace)>.nav{background:var(--color-surface)!important;background-color:var(--color-surface)!important;opacity:1!important;background-image:none!important}:is(.omr-admin,.omr-workspace) .dashboard-heading.account-profile-heading{border:0!important;border-bottom:1px solid var(--color-border-strong)!important;box-shadow:none!important;background:0 0!important;border-radius:0!important}:is(.omr-admin,.omr-workspace) .dashboard-heading.account-profile-heading .eyebrow{color:var(--color-primary)!important}.result-review-guidance{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-surface-2);display:flex}.result-review-guidance>div{gap:3px;display:grid}.result-review-guidance span:not(.badge){color:var(--color-text-secondary);font-size:.86rem}.result-solution,.result-checked-copy{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);display:grid}.result-appeal-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light);color:var(--color-text-secondary);font-size:.82rem;display:flex}.marking-review-list{gap:var(--space-3);display:grid}.marking-review-card{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-2);display:grid}@media (max-width:640px){.result-review-guidance,.result-appeal-row{flex-direction:column;align-items:flex-start}.result-appeal-row .btn{justify-content:center;width:100%}}.omr-auth--hall{place-content:center;align-items:center;column-gap:clamp(32px,6vw,88px);row-gap:var(--space-6);grid-template-columns:minmax(0,560px) minmax(0,470px);grid-template-areas:"hall sheet""foot foot";display:grid!important}.omr-auth--hall .hall{grid-area:hall;justify-self:stretch;width:100%}.omr-auth--hall .omr-sheet{grid-area:sheet;justify-self:center;width:min(100%,470px);margin:0}.omr-auth--hall .omr-pagefoot{grid-area:foot;justify-self:center;margin-top:0}.hall{--hall-frame:#6b5638;--hall-slate:#203a2f;--hall-flap:transparent;--hall-flap-lo:transparent;--hall-seam:#e9f0e624;--hall-letter:#eef2ea;--hall-dim:#a8b9ad;--hall-live:#a3e2b3;--hall-soon:#f1d27a;min-width:0;color:var(--color-text)}html[data-theme=dark] .hall{--hall-frame:#5b4a31;--hall-slate:#25443a}.hall-head{justify-content:space-between;align-items:flex-end;gap:var(--space-5);margin-bottom:var(--space-5);display:flex}.hall-title{font:600 clamp(1.3rem, 2.4vw, 1.6rem) / 1.15 var(--font-heading);letter-spacing:-.01em;color:var(--color-text);margin:0 0 4px}.hall-who{color:var(--color-text);margin:0 0 2px;font-size:.95rem;line-height:1.4}.hall-date{color:var(--color-text-secondary);margin:0;font-size:.9rem}.hall-note{margin:var(--space-4) 0 0;color:var(--color-text-secondary);font-size:.86rem}.hall-clock{flex:none;width:clamp(64px,8vw,92px);height:auto;overflow:visible}.hall-clock-face{fill:var(--color-surface);stroke:var(--color-text);stroke-width:2.5px}.hall-clock-tick{stroke:var(--color-text-muted);stroke-width:1px}.hall-clock-tick-major{stroke:var(--color-text);stroke-width:2px}.hall-clock-hand{stroke:var(--color-text);stroke-linecap:square}.hall-clock-hour{stroke-width:4px}.hall-clock-minute{stroke-width:3px}.hall-clock-second{stroke:var(--color-accent);stroke-width:1.4px;transition:transform .22s cubic-bezier(.3,1.8,.5,1)}.hall-clock-pin{fill:var(--color-accent)}.hall-clock.is-still .hall-clock-second{transition:none}.hall-board{--row-h:44px;--row-gap:5px;--cols:4.6rem minmax(0, 1fr) 7.2rem 5.2rem;border:6px solid var(--hall-frame);border-radius:var(--radius-md);background:var(--hall-slate);font-family:var(--font-body);color:var(--hall-letter);padding:14px 14px 12px}.hall-board-legend,.hall-board-foot{grid-template-columns:var(--cols);color:var(--hall-dim);column-gap:12px;padding:0 12px;font-size:.8rem;display:grid}.hall-board-legend{margin-bottom:10px}.hall-board-foot{border-top:1px solid var(--hall-seam);grid-template-columns:1fr auto;margin-top:8px;padding-top:8px}.hall-board-stamp{font-variant-numeric:tabular-nums}.hall-rows{gap:var(--row-gap);margin:0;padding:0;list-style:none;display:grid}.hall-row{height:var(--row-h);perspective:520px;position:relative}.hall-row:after{content:"";z-index:6;top:auto;left:0;right:0;bottom:calc(var(--row-gap) / -2);background:var(--hall-seam);pointer-events:none;height:1px;position:absolute}.hall-flap{background:var(--hall-flap);backface-visibility:hidden;height:50%;position:absolute;left:0;right:0;overflow:hidden}.hall-flap-top{border-radius:var(--radius-xs) var(--radius-xs) 0 0;top:0}.hall-flap-bottom{border-radius:0 0 var(--radius-xs) var(--radius-xs);background:var(--hall-flap-lo);-webkit-user-select:none;user-select:none;bottom:0}.hall-row-text{grid-template-columns:var(--cols);height:var(--row-h);letter-spacing:0;white-space:nowrap;align-items:center;column-gap:12px;padding:0 12px;font-size:.98rem;font-weight:500;line-height:1;display:grid;position:absolute;left:0;right:0}.hall-flap-top .hall-row-text{top:-2px}.hall-flap-bottom .hall-row-text{bottom:2px}.hall-cell{text-overflow:ellipsis;min-width:0;overflow:hidden}.hall-time{font-variant-numeric:tabular-nums;color:var(--hall-letter)}.hall-paper{font-weight:500}.hall-row-text .hall-paper{-webkit-line-clamp:2;white-space:normal;overflow-wrap:break-word;-webkit-box-orient:vertical;line-height:1.15;display:-webkit-box}.hall-class{color:var(--hall-dim)}.hall-status{color:var(--hall-dim);text-align:right}.hall-status.is-live{color:var(--hall-live);font-weight:600}.hall-status.is-upcoming{color:var(--hall-soon)}.hall-status.is-closed{color:var(--hall-dim);opacity:.7}.hall-status.is-paused{color:var(--hall-soon)}.hall-board-legend .hall-status{text-align:right}.hall-flap-turn-down{z-index:5;transform-origin:50% 100%;animation:hall-turn-down .3s ease-in calc(var(--i,0) * 70ms) both}.hall-flap-turn-up{z-index:5;transform-origin:50% 0;animation:hall-turn-up .3s ease-out calc(var(--i,0) * 70ms + .3s) both;transform:rotateX(90deg)}@keyframes hall-turn-down{0%{filter:brightness();transform:rotateX(0)}to{filter:brightness(.55);transform:rotateX(-90deg)}}@keyframes hall-turn-up{0%{filter:brightness(.55);transform:rotateX(90deg)}to{filter:brightness();transform:rotateX(0)}}@media (max-width:1100px){.hall-board{--cols:4.6rem minmax(0, 1fr) 6.8rem 5rem}}@media (max-width:900px){.omr-auth--hall{row-gap:var(--space-6);grid-template-columns:minmax(0,470px);grid-template-areas:"hall""sheet""foot";align-content:start;padding-top:clamp(20px,5vw,40px)}.omr-auth--hall .hall{justify-self:center;width:min(100%,470px)}.hall-head{margin-bottom:var(--space-4);align-items:center}.hall-clock{width:60px}.hall-board{--row-h:40px}.hall-row-text{font-size:.86rem}.hall-row:nth-child(n+6){display:none}}@media (max-width:460px){.hall-title{font-size:1.2rem}.hall-date-tz,.hall-note{display:none}.hall-board{--cols:4rem minmax(0, 1fr) 4rem;--row-h:38px;padding:8px 8px 6px}.hall-row:nth-child(n+5),.hall-class{display:none}.hall-row-text{column-gap:8px;padding:0 8px;font-size:.8rem}.hall-board-legend,.hall-board-foot{padding-inline:8px}}@media (prefers-reduced-motion:reduce){.hall-flap-turn-down,.hall-flap-turn-up{animation:none}.hall-flap-turn-down{transform:rotateX(-90deg)}.hall-flap-turn-up{transform:rotateX(0)}}@media print{.hall{display:none!important}.omr-auth--hall{display:block!important}}.tab-list{max-width:100%;margin-bottom:var(--space-6);flex-wrap:wrap;gap:2px;display:inline-flex;border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important;background:var(--color-surface-2)!important;padding:3px!important}.tab-list::-webkit-scrollbar{display:none}.tab-list .btn{white-space:nowrap;flex:none;font-size:.875rem;font-weight:500;border-radius:var(--radius-sm)!important;min-height:32px!important;box-shadow:none!important;color:var(--color-text-secondary)!important;background:0 0!important;border:0!important;margin:0!important;padding:6px 12px!important}.tab-list .btn:hover:not(:disabled){background:var(--color-surface-3)!important;color:var(--color-text)!important}.tab-list .btn[aria-selected=true],.tab-list .btn[aria-current=page]{background:var(--color-surface)!important;color:var(--color-text)!important;box-shadow:var(--shadow-sm)!important}.tab-list .btn:focus-visible{outline:none;box-shadow:var(--focus-ring)!important}@media (max-width:640px){.tab-list{width:100%;display:flex}}
