:root{--color-neutral-900: #172033;--color-neutral-600: #58677d;--color-neutral-100: #f4f7fb;--color-primary: #3457d5;--color-success: #087443;--color-danger: #b42318;color:var(--color-neutral-900);background:var(--color-neutral-100);font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.app-shell{width:min(72rem,calc(100% - 2rem));margin:0 auto;padding:2rem 0 4rem}button{min-height:2.75rem;border:1px solid #cad4e2;border-radius:.7rem;padding:.65rem 1rem;color:inherit;background:#fff;font:inherit;font-weight:700;cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgb(52 87 213 / 40%);outline-offset:3px}.home-screen{display:grid;gap:1.5rem}.hero-card,.history-card{border:1px solid #dde5ef;border-radius:1.25rem;background:#fff;box-shadow:0 1rem 3rem #21304b14}.hero-card{padding:clamp(1.5rem,5vw,4rem);text-align:center}.hero-card h1{margin:.25rem 0 .75rem;font-size:clamp(2rem,6vw,3.75rem)}.hero-copy{max-width:42rem;margin:0 auto;color:#58677d}.eyebrow{margin:0;color:#3457d5;font-size:.75rem;font-weight:800;letter-spacing:.14em}.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;max-width:38rem;margin:2rem auto}.rule-grid div{display:grid;gap:.25rem;border:1px solid #e0e6ef;border-radius:.85rem;padding:1rem}.rule-grid span,.disclaimer,.empty-state{color:#68758a;font-size:.875rem}.primary-action,.danger-action{border-color:transparent;color:#fff;background:var(--color-primary)}.disclaimer{margin:1rem 0 0}.history-card{padding:clamp(1.25rem,3vw,2rem)}.section-heading,.dialog-actions,.row-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.section-heading h2{margin:.25rem 0 0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid #e4e9f1;padding:.9rem .75rem;text-align:left;white-space:nowrap}th{color:#68758a;font-size:.75rem;text-transform:uppercase}.text-button,.icon-button{border:0;color:#3457d5;background:transparent}.icon-button{min-width:2.75rem;padding:0;font-size:1.25rem}.danger-text,.status-fail{color:var(--color-danger)}.status-pass{color:var(--color-success)}.status-pass,.status-fail{font-weight:800}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#121c2d8c}.confirmation-dialog{width:min(28rem,100%);border-radius:1rem;padding:1.5rem;background:#fff;box-shadow:0 1.5rem 4rem #00000040}.danger-action{background:var(--color-danger)}.storage-warning{border:1px solid #f1c27d;border-radius:.75rem;padding:.75rem 1rem;background:#fff4df}.exam-screen{display:grid;gap:1.25rem}.exam-header{position:sticky;z-index:5;top:0;display:grid;grid-template-columns:1fr auto;gap:.75rem 1.5rem;border:1px solid #dde5ef;border-radius:1rem;padding:1rem 1.25rem;background:#fffffff5;box-shadow:0 .75rem 2rem #21304b14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.exam-header h1{margin:.15rem 0 0;font-size:1.25rem}.exam-metrics{display:flex;align-items:center;gap:1rem;color:#58677d;font-weight:700}.timer{color:var(--color-danger);font-size:1.45rem;font-variant-numeric:tabular-nums}.progress-track{grid-column:1 / -1;height:.35rem;overflow:hidden;border-radius:999px;background:#e7ecf3}.progress-track span{display:block;height:100%;border-radius:inherit;background:#3457d5}.exam-layout{display:grid;grid-template-columns:18rem minmax(0,1fr);gap:1.25rem;align-items:start}.question-navigator,.question-card{border:1px solid #dde5ef;border-radius:1rem;background:#fff;box-shadow:0 1rem 3rem #21304b0f}.question-navigator{padding:1rem}.question-navigator summary{margin-bottom:.85rem;font-weight:800;cursor:pointer}.question-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem}.question-number{min-width:0;min-height:2.35rem;padding:0;font-size:.8rem}.question-number.is-answered{border-color:#93dcc0;background:#e7f8f0}.question-number.is-current{border-color:#3457d5;color:#fff;background:#3457d5}.finish-action{width:100%;margin-top:.75rem;border-color:#e5a8a3;color:#b42318}.question-card{padding:clamp(1.25rem,4vw,2.5rem)}.question-meta{display:flex;justify-content:space-between;gap:1rem;color:#68758a;font-size:.8rem;font-weight:800;text-transform:uppercase}.question-card h2{margin:1rem 0 1.5rem;font-size:clamp(1.25rem,3vw,1.75rem);line-height:1.45}.answer-list{display:grid;gap:.75rem;border:0;margin:0;padding:0}.answer-option{display:grid;grid-template-columns:auto auto 1fr;gap:.75rem;align-items:start;border:1px solid #dce4ef;border-radius:.85rem;padding:1rem;cursor:pointer}.answer-option:has(input:checked){border-color:#7691ef;background:#f0f3ff}.answer-option input{width:1.15rem;height:1.15rem;margin-top:.15rem}.option-letter{color:#3457d5;font-weight:900}.question-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.75rem}button:disabled{cursor:not-allowed;opacity:.45}.results-screen,.review-list{display:grid;gap:1.25rem}.score-card,.review-section,.review-card{border:1px solid #dde5ef;border-radius:1rem;background:#fff;box-shadow:0 1rem 3rem #21304b0f}.score-card{padding:clamp(1.5rem,5vw,3rem);text-align:center}.score-card h1{margin:.25rem 0;color:var(--color-success)}.score-card.is-fail h1{color:var(--color-danger)}.score-value{margin-top:1rem;font-size:clamp(2.75rem,9vw,5rem);font-weight:900;line-height:1}.score-percentage{margin-top:.4rem;color:#58677d;font-size:1.4rem;font-weight:800}.timeout-label,.unanswered-label{color:#b54708;font-weight:800}.result-metrics{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem 1.5rem;margin:1.5rem 0;color:#58677d}.review-targets{margin:1.25rem 0;text-align:left}.review-targets h2{margin:0 0 .65rem;font-size:.95rem}.review-target-links{display:flex;flex-wrap:wrap;gap:.5rem}.review-target-link{border:1px solid var(--color-primary);border-radius:999px;padding:.35rem .7rem;color:var(--color-primary);font-weight:700;text-decoration:none}.review-target-link:hover,.review-target-link:focus-visible{background:var(--color-primary);color:#fff}.review-section{padding:clamp(1rem,4vw,2rem)}.review-card{scroll-margin-top:1.5rem;overflow:hidden;padding:clamp(1rem,4vw,1.75rem)}.review-card.is-correct{border-left:.35rem solid #12a56a}.review-card.is-incorrect{border-left:.35rem solid #d92d20}.review-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.question-index{margin:0;color:#68758a;font-size:.8rem;font-weight:900;text-transform:uppercase}.review-card h3{margin:.75rem 0 1.25rem;line-height:1.45}.review-options{display:grid;gap:.6rem}.review-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:start;border:1px solid #e1e7ef;border-radius:.75rem;padding:.85rem 1rem}.review-option.selected-correct,.review-option.missed-correct{border-color:#8ed9ba;background:#ecf9f3}.review-option.selected-wrong{border-color:#efa8a1;background:#fff1f0}.review-state{color:var(--color-success);font-size:.85rem}.selected-wrong .review-state{color:var(--color-danger)}.explanation{margin-top:1.25rem;border-radius:.75rem;padding:1rem;background:#f5f7fa}.explanation p{margin-bottom:0;white-space:pre-wrap}.missing-question{color:#58677d;background:#f8fafc}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:40rem){.table-wrap{overflow-x:visible}.table-wrap table,.table-wrap tbody{display:block}.table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.table-wrap tbody{display:grid;gap:.75rem}.table-wrap tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;border:1px solid #e1e7ef;border-radius:.85rem;padding:1rem}.table-wrap tbody td{display:grid;min-width:0;gap:.2rem;border:0;padding:0;white-space:normal}.table-wrap tbody td:before{color:#68758a;content:attr(data-label);font-size:.7rem;font-weight:800;text-transform:uppercase}.table-wrap tbody td:first-child,.table-wrap tbody .row-actions{grid-column:1 / -1}.table-wrap tbody .row-actions{display:flex;justify-content:flex-start;padding-top:.25rem}.table-wrap tbody .row-actions:before{content:none}.rule-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.exam-header{grid-template-columns:1fr}.exam-metrics{justify-content:space-between}.exam-layout{grid-template-columns:1fr}.question-meta{flex-direction:column;gap:.25rem}.review-option{grid-template-columns:auto 1fr}.review-state{grid-column:2}}
