.exam-page .exam-layout{grid-template:"topbar topbar""question palette"minmax(0,1fr)"bottombar bottombar"/minmax(0,1fr) 18.5rem}.exam-page .exam-topbar{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.exam-topbar-start,.exam-topbar-end{align-items:center;gap:12px;min-width:0;display:flex}.exam-topbar-start{flex:auto}.exam-topbar-end{flex:none}.exam-counter{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);min-height:36px;color:var(--color-text);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;padding:7px 10px;font-size:.875rem;line-height:1.3;display:inline-flex}.exam-counter strong{font-size:1rem;font-weight:700}.exam-counter-word,.exam-counter-of{color:var(--color-text-secondary)}.exam-counter.is-button{min-height:44px;font:inherit;cursor:pointer;align-items:center;padding:0 12px 0 10px;font-size:.9rem}.exam-counter.is-button svg{color:var(--color-text-secondary);flex:none;margin-right:4px}.exam-counter.is-button:hover{border-color:var(--color-primary)}.exam-counter.is-button[aria-expanded=true]{border-color:var(--color-primary);background:var(--color-primary-pale)}.exam-title{min-width:0;max-width:320px;color:var(--color-text);font-size:.95rem;font-weight:600}.exam-connection{color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.exam-page .exam-connection .status-dot{animation:none!important}.exam-page .exam-save-status{letter-spacing:normal;min-width:48px;font-size:.8rem;font-weight:700}.exam-page .exam-timer{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-2);min-width:0;color:var(--color-text);align-items:center;gap:10px;padding:5px 14px 5px 7px;transition:background-color .4s,border-color .4s;display:flex}.exam-timer-ring{width:40px;height:40px;color:var(--color-text-secondary);flex:0 0 40px;place-items:center;display:grid;position:relative}.exam-timer-track{position:absolute;inset:0;transform:rotate(-90deg)}.exam-timer-track circle+circle{transition:stroke-dashoffset 1s linear,stroke .4s}.exam-timer-glyph{color:var(--color-text-secondary);flex:none;display:none}.exam-timer-text{line-height:1.15;display:grid}.exam-page .exam-timer-label{color:var(--color-text-secondary);letter-spacing:normal;opacity:1;font-size:.75rem;font-weight:600}.exam-page .exam-timer-value{min-width:0;color:var(--color-text);font-family:var(--font-body);letter-spacing:normal;text-align:left;font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.exam-page .exam-timer-value.warning,.exam-page .exam-timer-value.critical{animation:none}.exam-page .exam-timer.warning{border-color:var(--color-warning);background:var(--color-warning-light)}.exam-page .exam-timer.warning .exam-timer-value{color:var(--color-warning)}.exam-page .exam-timer.critical{border-color:var(--color-danger);background:var(--color-danger-light)}.exam-page .exam-timer.critical .exam-timer-value{color:var(--color-danger)}.exam-tools-wrap{align-items:center;display:flex;position:relative}.exam-tools{align-items:center;gap:8px;display:flex}.exam-tools[hidden]{display:none!important}.exam-tool-row{align-items:center;gap:8px;display:flex}.exam-tool-label{display:none}.exam-page .exam-tools .btn{min-height:44px}.exam-page .exam-tool{gap:8px}.exam-page .exam-zoom-controls{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text-secondary);font:600 .8rem var(--font-body);font-variant-numeric:tabular-nums;align-items:center;gap:0;padding:0;display:inline-flex}.exam-page .exam-zoom-button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--color-text);font:700 .95rem var(--font-body);cursor:pointer;background:0 0;border:0}.exam-page .exam-zoom-button:hover:not(:disabled){background:var(--color-surface-3)}.exam-page .exam-zoom-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.exam-page .exam-zoom-value{text-align:center;min-width:3.2em;display:inline-block}.exam-page .exam-theme-toggle{border-color:var(--color-border);width:44px;height:44px}.exam-page .exam-theme-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:none}.exam-more-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;place-items:center;padding:0;display:inline-grid}.exam-more-btn:hover,.exam-more-btn[aria-expanded=true]{border-color:var(--color-primary);background:var(--color-primary-pale)}.exam-page :is(.exam-counter.is-button,.exam-more-btn,.exam-palette-close,.palette-btn,.exam-palette-submit,.mcq-option,.exam-clear-answer,.exam-submit-numbers button):focus-visible{outline-offset:2px;box-shadow:none;outline:2px solid var(--color-primary)!important}.exam-page .question-header{border-left:0!important}.exam-page .question-number{color:var(--color-text);font-family:var(--font-body);letter-spacing:normal;font-variant-numeric:tabular-nums;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.exam-page .question-number:focus{outline:none}.exam-page .question-number:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.question-heading{align-items:baseline;gap:4px var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.question-meta{color:var(--color-text-muted);font-size:.85rem}.answer-hint{margin:var(--space-4) 0 var(--space-2);color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.exam-question-subject{border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);min-height:24px;color:var(--color-text);align-items:center;padding:2px 8px;font-size:.8rem;font-weight:600;display:inline-flex}.exam-page .mcq-option{width:100%;min-height:52px;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.exam-page .mcq-option.selected{border-color:var(--color-primary)!important;background:var(--color-primary-pale)!important;box-shadow:none!important}.exam-page .mcq-option-key{font-family:var(--font-body);letter-spacing:normal;font-size:.95rem;font-weight:700;border-radius:50%!important}.exam-page .mcq-option-multi .mcq-option-key{border-radius:var(--radius-xs)!important}.exam-page .mcq-option.selected .mcq-option-key{color:var(--color-on-primary)!important;background:var(--color-primary)!important;border-color:var(--color-primary)!important}.exam-answer{justify-items:start;display:grid}.exam-answer .mcq-options{width:100%}.exam-page .exam-clear-answer{min-height:44px;margin-top:10px}.exam-page .exam-bottombar .btn{min-height:44px}.exam-bar-actions{align-items:center;gap:8px;min-width:0;display:flex}.exam-page .exam-bar-tool{gap:6px;min-width:44px}.exam-page #mark-review-btn[aria-pressed=true]{border:1px solid var(--color-warning)!important;background:var(--color-warning-light)!important}.exam-page #mark-review-btn[aria-pressed=true] svg{fill:currentColor}.exam-page .exam-palette{flex-direction:column;gap:16px;display:flex;padding:20px!important}.exam-palette-head{gap:2px;display:grid;position:relative}.exam-palette-title{color:var(--color-text);font-family:var(--font-body);margin:0;font-size:1rem;font-weight:700;line-height:1.3}.exam-page .exam-palette-summary{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:.85rem;line-height:1.4}.exam-palette-close{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid;position:absolute;top:-10px;right:-8px}.exam-palette-close:hover{background:var(--color-surface-2);color:var(--color-text)}.exam-page .exam-palette .palette-grid{grid-template-columns:repeat(5,44px);gap:8px;width:auto;display:grid}.exam-page .exam-palette .palette-btn{aspect-ratio:auto;width:44px;min-width:44px;height:44px;min-height:44px;font:600 .95rem var(--font-body);font-variant-numeric:tabular-nums;flex:none;place-items:center;padding:0;display:grid;position:relative;border:1px solid var(--color-border-strong)!important;border-radius:var(--radius-xs)!important;box-shadow:none!important;transform:none!important}.exam-page .exam-palette .palette-btn:hover:not(:disabled){border-color:var(--color-primary)!important}.exam-page .exam-palette .palette-btn.current{border:2px solid var(--color-primary)!important;box-shadow:inset 0 -3px 0 var(--color-primary)!important}.exam-page :is(.palette-btn,.palette-legend-cell)[data-state=not-visited]{background:var(--q-not-visited);color:var(--color-text-secondary)}.exam-page :is(.palette-btn,.palette-legend-cell)[data-state=visited]{background:var(--q-visited);color:var(--color-info)}.exam-page :is(.palette-btn,.palette-legend-cell)[data-state=answered]{background:var(--q-answered);color:var(--color-success)}.exam-page :is(.palette-btn,.palette-legend-cell)[data-state=marked]{background:var(--q-marked);color:var(--color-text)}.exam-page :is(.palette-btn,.palette-legend-cell)[data-state=answered-marked]{background:var(--q-answered-marked);color:var(--color-text)}.palette-mark{box-sizing:border-box;border:1.5px solid;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;right:4px}[data-state=visited]>.palette-mark:before,[data-state=marked]>.palette-mark:before{content:"";background:currentColor;border-radius:999px 0 0 999px;width:50%;position:absolute;top:0;bottom:0;left:0}[data-state=answered]>.palette-mark,[data-state=answered-marked]>.palette-mark{background:currentColor}.exam-page :is(.palette-btn,.palette-legend-cell):is([data-state=marked],[data-state=answered-marked]):after{content:"";background:var(--color-warning);clip-path:polygon(0 0,100% 0,0 100%);width:13px;height:13px;position:absolute;top:0;left:0}.exam-page .exam-palette .palette-legend{border-top:1px solid var(--color-border-light);gap:8px;margin:0;padding:14px 0 0;font-size:.8rem;list-style:none;display:grid!important}.exam-page .palette-legend-item{color:var(--color-text-secondary);align-items:center;gap:10px;font-size:.8rem;line-height:1.3;display:flex}.palette-legend-cell{border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);flex:none;width:26px;height:26px;position:relative}.palette-legend-cell .palette-mark{width:8px;height:8px;top:3px;right:3px}.exam-page .palette-legend-cell:is([data-state=marked],[data-state=answered-marked]):after{width:10px;height:10px}.exam-page .exam-palette-submit{width:100%;min-height:44px;margin-top:auto}.overlay-content.exam-submit-dialog{text-align:left;flex-direction:column;gap:0;width:100%;max-width:32rem;max-height:calc(100dvh - 32px);padding:0;display:flex;overflow:hidden}.exam-submit-dialog h2{color:var(--color-text);margin:0;padding:22px 24px 14px;font-size:1.25rem;line-height:1.3}.exam-submit-body{overscroll-behavior:contain;gap:14px;min-height:0;padding:0 24px 16px;display:grid;overflow-y:auto}.exam-submit-summary{border-top:1px solid var(--color-border);margin:0;display:grid}.exam-submit-summary>div{border-bottom:1px solid var(--color-border-light);grid-template-columns:10rem minmax(0,1fr);align-items:start;gap:6px 12px;padding:10px 0;display:grid}.exam-submit-summary dt{color:var(--color-text-secondary);padding-top:2px;font-size:.9rem;font-weight:600;line-height:1.4}.exam-submit-summary dd{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:.95rem;line-height:1.4}.exam-submit-summary dd strong,.exam-submit-time{font-weight:700}.exam-submit-none{color:var(--color-text-secondary)}.exam-submit-numbers{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.exam-submit-numbers :is(button,span){border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--color-surface-2);min-width:44px;height:44px;color:var(--color-text);font:700 .95rem var(--font-body);font-variant-numeric:tabular-nums;place-items:center;padding:0 8px;display:grid}.exam-submit-numbers button{cursor:pointer}.exam-submit-numbers button:hover{border-color:var(--color-primary)}.exam-submit-numbers button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.exam-submit-note{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.5}.exam-submit-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 24px 20px;display:flex}.exam-submit-dialog .exam-submit-actions .btn{flex:10rem;min-height:44px}.overlay-content.exam-submit-dialog.is-preview{max-height:none;animation:none}.exam-page .exam-notice-card{text-align:left;max-width:28rem}.exam-page .exam-notice-card h2{margin:0 0 var(--space-3)}.exam-page .exam-notice-card p{margin:0 0 var(--space-5);color:var(--color-text-secondary);line-height:1.55}.exam-reconnecting{color:var(--color-text-secondary);align-items:center;gap:10px;font-size:.9rem;display:inline-flex}.exam-reconnecting:before{content:"";background:var(--color-warning);border-radius:50%;width:10px;height:10px}.integrity-toast{box-sizing:border-box;border:2px solid var(--color-warning);border-radius:var(--radius-lg);background:var(--color-surface);width:max-content;max-width:min(380px,100vw - 32px);box-shadow:var(--shadow-xl);padding:14px 18px;position:fixed;top:16px;left:auto;right:16px}.integrity-toast.is-last{border-color:var(--color-danger)}.integrity-toast-row{align-items:flex-start;gap:12px;display:flex}.integrity-toast-row>svg{color:var(--color-warning);flex:none;margin-top:2px}.integrity-toast.is-last .integrity-toast-row>svg{color:var(--color-danger)}.integrity-toast-title{color:var(--color-text);margin:0 0 4px;font-weight:700}.integrity-toast-text{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.5}@media (max-width:1023px){.exam-page{--exam-bar-h:56px}.exam-page .exam-layout{grid-template:"topbar""question"minmax(0,1fr)"bottombar"/minmax(0,1fr)}.exam-page .exam-topbar{height:var(--exam-bar-h);min-height:var(--exam-bar-h);gap:8px;padding:0 12px!important}.exam-topbar-start,.exam-topbar-end{gap:8px}.exam-topbar-start{flex:auto}.exam-page .exam-timer{gap:8px;padding:4px 10px 4px 6px}.exam-topbar-end>.exam-tools-wrap{order:5}.exam-page .exam-palette:not(.is-panel){display:none}.exam-page .exam-tools.is-menu{z-index:80;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:max-content;min-width:248px;box-shadow:var(--shadow-lg);flex-direction:column;align-items:stretch;gap:4px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.exam-page .exam-tools.is-menu .exam-tool{border-color:#0000;justify-content:flex-start;width:100%}.exam-page .exam-tools.is-menu .exam-tool:hover{border-color:var(--color-border)}.exam-tools.is-menu .exam-tool-row{border-top:1px solid var(--color-border-light);justify-content:space-between;min-height:48px;padding:2px 0 2px 12px}.exam-tools.is-menu .exam-tool-label{color:var(--color-text);font-size:.875rem;font-weight:600;display:block}.exam-page .exam-palette.is-panel{display:none}.exam-page .exam-palette.is-panel.is-open{top:var(--exam-bar-h);z-index:60;max-height:calc(100dvh - var(--exam-bar-h) - 24px);box-shadow:var(--shadow-lg);display:flex;position:fixed;left:0;right:0;overflow-y:auto;border:0!important;border-bottom:1px solid var(--color-border-strong)!important;background:var(--color-surface)!important}.exam-palette-backdrop{inset:var(--exam-bar-h) 0 0 0;z-index:59;background:var(--overlay-scrim);position:fixed}.exam-page .exam-palette.is-panel .palette-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));max-width:640px}.exam-page .exam-palette.is-panel .palette-btn{width:100%}.exam-page .exam-palette.is-panel .palette-legend{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.exam-page .exam-palette.is-panel .exam-palette-submit{max-width:640px}}@media (max-width:767px){.exam-page .exam-title,.exam-page .exam-topbar .tutorial-flag{display:none}.exam-counter-word,.exam-page .exam-connection>span:not(.status-dot){clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.exam-page .exam-save-status{text-align:left;min-width:0}.exam-timer-ring{display:none}.exam-page .exam-timer-glyph{display:block}.exam-page .exam-timer-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.exam-page .exam-timer{min-height:44px;padding:0 10px}.exam-page .exam-timer-value{font-size:1.15rem}.exam-page .exam-main{padding:12px!important}.exam-page .exam-bottombar{flex-wrap:nowrap;gap:8px;min-height:56px;padding:6px 8px!important}.exam-page .exam-bottombar .btn{min-height:44px;padding:8px 12px}.exam-page .exam-bottombar .exam-bar-tool{justify-content:center;width:44px;padding:0!important}.exam-bar-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.exam-bar-actions{flex:auto;justify-content:flex-end}.exam-page .question-header{gap:8px 12px;padding:10px 12px!important}.exam-page .question-header .btn{min-height:44px}.exam-submit-summary>div{grid-template-columns:minmax(0,1fr);gap:6px}.exam-submit-dialog h2{padding:18px 18px 12px}.exam-submit-body{padding:0 18px 14px}.exam-submit-actions{padding:12px 18px 16px}}@media (max-width:420px){.exam-bar-label-wide{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.exam-page .exam-timer,.exam-timer-track circle+circle{transition:none}}
