/* Exam-only UI, loaded on demand. No library, animation, or homepage request. */
/* Monthly authoring uses the familiar lesson cards; overrides stay in this page. */
.monthly-admin.monthly-lesson-editor .monthly-upload-card{margin:0;min-width:0;}
.monthly-lesson-editor .lesson-upload-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;}
.monthly-lesson-editor .lesson-import-section,.monthly-lesson-editor .monthly-question-bank{margin-block:30px;}
.monthly-lesson-editor .admin-section-title h2{font-size:clamp(24px,3vw,36px);}
.monthly-lesson-editor .admin-section-title p{max-width:560px;font-size:13px;line-height:1.8;}
.monthly-method-body{padding:0 18px 18px;min-width:0;}
.monthly-method-body>p,.monthly-method-note{font-size:12px;color:var(--muted);line-height:1.8;}
.monthly-method-body .template-downloads{display:grid;gap:8px;}
.monthly-template-list{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px;}
.monthly-template-list a{font-size:11px;}
.monthly-lesson-editor .monthly-manual-option{margin:0 18px 18px;border-block-start:1px solid var(--line);padding-top:12px;}
.monthly-lesson-editor .monthly-manual-option>.form{margin-inline:0;}
.monthly-publishing{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;}
.monthly-publishing>div{flex:1 1 400px;min-width:0;}
.monthly-publishing p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.8;}
.monthly-publishing>span{font-size:13px;font-weight:700;}
.monthly-settings>form{padding:0 18px;}
.monthly-bank-tools{display:grid;grid-template-columns:2fr 1fr auto;align-items:end;gap:12px;margin-block:18px;}
.monthly-bank-tools label{display:grid;gap:8px;min-width:0;font-size:12px;color:var(--muted);font-weight:650;}
.monthly-bank-tools :is(input,select){min-width:0;width:100%;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);font:inherit;box-sizing:border-box;}
.monthly-bank-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--soft);}
.monthly-bank-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-inline-start:auto;}
.monthly-bank-bulk label,.monthly-confirm{font-size:12px;line-height:1.7;}
.monthly-bank-bulk input[type=checkbox],.monthly-confirm input[type=checkbox],.monthly-question-select input{width:18px;min-height:18px;height:18px;accent-color:#2166f3;vertical-align:middle;}
.monthly-bank-bulk button{min-height:44px;font-size:12px;}
.monthly-bank-bulk button:disabled{opacity:.5;cursor:not-allowed;}
.monthly-bank-status{font-size:12px;color:var(--muted);}
.monthly-admin.monthly-lesson-editor .monthly-bank-card{display:block;margin-block:14px;min-width:0;}
.monthly-lesson-editor .monthly-bank-card>.admin-question-reference{margin:12px 0;width:auto;flex-wrap:wrap;}
.monthly-lesson-editor .monthly-bank-card>.qa-answer-preview{display:block;margin-block:12px 0;}
.monthly-lesson-editor .monthly-bank-card>.qa-answer-preview>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;line-height:1.6;}
.monthly-bank-buttons button span{display:inline-grid;place-items:center;min-width:20px;margin-inline-start:6px;padding:2px 5px;border-radius:7px;background:var(--soft);box-sizing:border-box;}
.monthly-lesson-editor .monthly-bank-card>header{display:flex;align-items:center;gap:12px;}
.monthly-bank-card>header>div{flex:1;min-width:0;}
.monthly-bank-card h3{overflow-wrap:anywhere;line-height:1.7;}
.monthly-question-select{display:grid;place-items:center;flex:none;min-width:44px;min-height:44px;}
.monthly-question-image{display:block;width:auto;max-width:min(100%,360px);max-height:240px;object-fit:contain;margin:14px auto;}
.monthly-bank-editor .monthly-admin__question-form,.monthly-bank-editor>.form,.monthly-json-editor{margin:16px;}
.monthly-bank-editor>summary{flex-wrap:wrap;}
.monthly-bank-editor>summary small{white-space:normal;}
.monthly-json-editor>summary{font-size:12px;color:var(--muted);}
.monthly-lesson-editor :is(.method-icon,.monthly-bank-buttons button){transition:none;}
@media(max-width:700px){.monthly-lesson-editor .lesson-upload-methods{grid-template-columns:minmax(0,1fr);}.monthly-bank-tools{grid-template-columns:minmax(0,1fr);}.monthly-bank-buttons{margin-inline-start:0;}.monthly-bank-buttons button{flex:1 1 140px;}.monthly-method-body{padding-inline:14px;}.monthly-lesson-editor .upload-method-card>summary{padding:14px;gap:10px;}.monthly-bank-editor .monthly-admin__question-form,.monthly-bank-editor>.form,.monthly-json-editor{margin:12px;}}
.exam-hub-heading,.exam-route-heading,.exam-session-heading {
  position:relative;min-width:0;box-sizing:border-box;padding:24px clamp(16px,3vw,28px);border:1px solid var(--line);border-radius:20px;
  background:repeating-linear-gradient(0deg,transparent 0 18px,#2166f307 19px,transparent 20px),linear-gradient(125deg,color-mix(in srgb,#2166f3 9%,var(--card)),var(--card));
  box-shadow:0 3px 0 color-mix(in srgb,#2166f3 25%,var(--line)),0 10px 22px #1736500c;color:var(--heading);
}
.exam-hub-heading {max-width:980px;margin:12px auto 24px;text-align:center;}
.exam-hub-heading>span,.exam-route-heading>span,.exam-session-heading__kind {color:var(--zakkerha-logo-color,#2166f3);font-size:11px;font-weight:800;letter-spacing:.07em;}
.exam-hub-heading h2 {margin:6px 0 8px;font-size:clamp(22px,3vw,32px);line-height:1.45;overflow-wrap:anywhere;}
.exam-hub-heading p {margin:0;color:var(--muted);font-size:14px;line-height:1.8;}
.exam-hub-catalogue .grade-switcher {margin-block:0 26px;}
.exam-hub-catalogue .subject-card--exams {border-radius:20px;box-shadow:0 3px 0 color-mix(in srgb,var(--accent) 30%,var(--line)),0 10px 20px #1736500d;transition:none;}
.exam-hub-catalogue .subject-card--exams:hover {transform:none;}
.exam-hub-catalogue .subject-exam-label {background:#2166f3;color:#fff;border-color:#1756d2;box-shadow:0 2px 0 #154aa9;}
.exam-hub-catalogue .subject-exam-label small {color:#e4eeff;}
.subject-exam-types {display:block;color:var(--muted);font-size:11px;line-height:1.5;text-align:center;}
.exam-route-heading {margin-block:16px 24px;}
.exam-route-heading h2 {display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;}
.exam-grade {display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:650;direction:ltr;white-space:nowrap;}
.exam-route-heading p {line-height:1.8;}
.exam-route-jump {width:min(100%,980px);margin-block:0 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.exam-route-jump a {gap:9px;padding:12px;min-width:0;min-height:52px;line-height:1.5;text-align:center;}
.exam-route-jump a b {flex:none;font-size:11px;opacity:.65;direction:ltr;}
.exam-route-jump a[href="#monthly-exams"],.exam-route-card--monthly {--exam-border:#2166f3;--exam-tint:#2166f3;--exam-accent:#2166f3;--exam-ink:#1758c9;--exam-ink-dark:#aacbff;--exam-focus:#2166f3;}
.exam-route-card {min-height:128px;border-radius:18px;gap:16px;background:repeating-linear-gradient(0deg,transparent 0 18px,color-mix(in srgb,var(--exam-tint) 7%,transparent) 19px,transparent 20px),linear-gradient(125deg,color-mix(in srgb,var(--exam-tint) 12%,var(--card)),var(--card));box-shadow:0 3px 0 color-mix(in srgb,var(--exam-border) 38%,var(--line)),0 10px 20px #1736500d;transition:none;}
.exam-route-card::before {width:3px;}
a.exam-route-card:hover {transform:none;box-shadow:0 3px 0 var(--exam-border),0 10px 20px #1736500d;}
.exam-route-card__copy em {font-size:11px;line-height:1.7;}
.exam-route-section-title {margin-block:28px 16px;}
.exam-route-card.is-unavailable {opacity:.78;cursor:default;}
.exam-months {width:min(100%,980px);margin:0 auto 28px;scroll-margin-top:16px;}
.exam-months__heading {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px;}
.exam-months__eyebrow {font-size:10px;color:var(--muted);font-weight:750;letter-spacing:.06em;}
.exam-months__heading h2 {margin:4px 0 0;color:var(--heading);font-size:20px;}
.exam-months__badge {border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:11px;}
.exam-months .exam-route-grid {margin-bottom:0;}
.exam-months__empty {display:flex;align-items:center;gap:18px;border:1px dashed color-mix(in srgb,#2166f3 40%,var(--line));border-radius:18px;padding:20px;background:color-mix(in srgb,#2166f3 5%,var(--card));}
.exam-months__empty>span {display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:13px;background:#2166f3;color:#fff;font-size:23px;font-weight:800;}
.exam-months__empty h3 {margin:0 0 5px;font-size:17px;color:var(--heading);}
.exam-months__empty p {margin:0;color:var(--muted);font-size:13px;line-height:1.8;}
.exam-session-heading {display:flex;justify-content:space-between;align-items:center;gap:18px;margin-block:12px 24px;}
.exam-session-heading h2 {margin:5px 0;color:var(--heading);font-size:clamp(19px,2.5vw,26px);line-height:1.6;overflow-wrap:anywhere;}
.exam-session-heading p {display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0;color:var(--muted);font-size:12px;}
.exam-session-heading__facts {display:flex;flex-direction:column;gap:8px;flex:none;color:var(--muted);font-size:12px;}
.exam-session-heading__facts b {color:var(--heading);font-size:22px;}
.monthly-admin .admin-card {margin-block:20px;}
.monthly-admin__fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:end;margin-block:16px;}
.monthly-admin__fields label {display:grid;gap:7px;min-width:0;font-size:13px;font-weight:650;}
.monthly-admin [hidden] {display:none!important;}
.monthly-admin__fields :is(input,select,textarea) {box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);min-height:44px;padding:10px;font:inherit;}
.monthly-admin textarea {resize:vertical;}
.monthly-admin__wide {grid-column:1/-1;}
.monthly-admin textarea[name="questions_json"] {font:12px/1.7 Consolas,monospace;tab-size:2;text-align:left;}
.monthly-admin__fields input[type="checkbox"] {width:18px;min-height:18px;height:18px;margin:0;vertical-align:middle;}
.monthly-admin details>summary {cursor:pointer;line-height:1.7;}
.monthly-admin__question>details {margin:16px;}
.monthly-admin__fields small {font-size:11px;color:var(--muted);line-height:1.6;font-weight:400;}
.monthly-admin__models {display:grid;gap:12px;margin-top:20px;}
.monthly-admin__models>a {display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--soft);color:var(--text);text-decoration:none;}
.monthly-admin__models h3 {margin:7px 0 3px;font-size:17px;}
.monthly-admin__models p {margin:0;font-size:12px;color:var(--muted);}
.monthly-admin__models>a>strong {font-size:12px;}
.monthly-state {display:inline-block;padding:4px 9px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted);font-size:11px;font-weight:750;}
.monthly-state.is-published {background:#e0f5eb;color:#075d40;border-color:#96cbb6;}
.monthly-admin__error {border:1px solid #c83d60;border-radius:12px;padding:15px;background:var(--card);color:var(--text);line-height:1.8;}
.monthly-admin__question {border:1px solid var(--line);border-radius:14px;margin-block:12px;overflow:hidden;}
.monthly-admin__question>summary {display:flex;align-items:center;gap:10px;cursor:pointer;padding:14px;min-height:44px;box-sizing:border-box;background:var(--soft);}
.monthly-admin__question>summary>span {flex:none;font-size:12px;color:var(--muted);}
.monthly-admin__question>summary strong {flex:1;min-width:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere;}
.monthly-admin__question>summary small {flex:none;font-size:11px;}
.monthly-admin__question>form {margin:16px;}
.monthly-admin__question-form fieldset {border:1px solid var(--line);border-radius:14px;padding:14px;min-width:0;margin-block:16px;}
.monthly-admin__question-form legend {padding-inline:6px;font-size:13px;font-weight:750;}
.monthly-admin__question-form fieldset p {font-size:12px;color:var(--muted);}
.monthly-admin__choice-pair {display:grid;gap:7px;}
.monthly-admin :is(a,button,summary,input,select,textarea):focus-visible {outline:3px solid #2166f3;outline-offset:3px;}
@media(max-width:700px){
  .exam-route-jump {gap:7px;}
  .exam-route-jump a {flex-direction:column;gap:3px;font-size:11px;padding:9px 5px;}
  .exam-route-card {min-height:112px;padding:16px;}
  .exam-session-heading {align-items:start;flex-direction:column;gap:10px;padding:18px;}
  .exam-session-heading__facts {flex-direction:row;align-items:center;gap:15px;}
  .exam-months__empty {padding:16px;gap:12px;}
  .monthly-admin__fields {grid-template-columns:minmax(0,1fr);}
  .monthly-admin__models>a {align-items:start;flex-direction:column;}
}
