/* exams.css — the Nigerian exam pages (/exams/*), generated by tools/seo/pages_exams.py.
   Builds on seo.css tokens; loaded after it. Keep it small: every exam page links it. */
.exams .hero{padding:56px 0 52px}
.exams .hero h1{font-size:clamp(32px,5.4vw,58px)}
.exams .band{padding:56px 0}
@media(max-width:480px){.exams .wrap,.exams .crumbs,.exams .nav-in{padding-left:16px;padding-right:16px}.exams .band{padding:40px 0}}
.exams .light h2,.exams .faq h2{color:var(--ink)}
.exams .sec{max-width:820px;margin:0 auto}
.exams .sec h2{font-size:clamp(24px,3.6vw,36px);margin:0 0 14px}
.exams .sec h3{font-size:21px;color:var(--ink);margin:22px 0 8px}
.exams .sec p,.exams .sec li{font-size:16.5px;line-height:1.65}
.exams .sec a:not(.btn){color:#7a5514}
.exams .sec ul{padding-left:20px}
.facts{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.facts li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.src{display:block;font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere;word-break:break-word}
.tag{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:2px 7px;margin-left:6px;vertical-align:middle}
.tag.off{background:#e6f2ec;color:#21664a}
.tag.est{background:#fbf0dc;color:#7a5514}
.tag.sec2{background:#eceaf5;color:#4a4580}
.subjgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:0;margin:0;list-style:none}
.subjgrid li{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:15.5px}
.subjgrid li a{font-weight:600;text-decoration:none;color:var(--ink)}
.subjgrid li a:hover{text-decoration:underline}
.subjgrid .m{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.subjgrid .m a{font-weight:400;color:#7a5514;text-decoration:underline;text-underline-offset:2px}
.examcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.examcards .card h3 a{text-decoration:none;color:var(--ink)}
.examcards .card .lvl{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7a5514;margin:0 0 8px}
.q{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 18px 12px;margin:0 0 16px}
.q .qn{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);margin:0 0 6px}
.q .stem{font-size:17px;color:var(--ink);margin:0 0 12px;white-space:pre-line}
.q ol{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}
.q .opt{width:100%;text-align:left;font:inherit;font-size:16px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;color:var(--text);min-height:44px}
.q .opt:hover{border-color:var(--lamp)}
.q .opt:focus-visible,.cbt button:focus-visible,.cbt input:focus-visible+span{outline:3px solid #8a631c;outline-offset:2px}
.q .opt .l{font-family:"IBM Plex Mono",monospace;font-weight:500;margin-right:8px}
.q .opt.right{background:#e6f2ec;border-color:#2f7d5b}
.q .opt.wrong{background:#fbe9e7;border-color:#b3412f}
.q .fb{min-height:1.4em;font-size:15px;margin:0 0 6px}
.q details{border-top:1px dashed var(--line);padding-top:8px}
.q summary{cursor:pointer;color:#7a5514;font-size:15px;min-height:32px}
.q .ans{margin:8px 0 4px;color:var(--ink)}
.q .exp{margin:0 0 6px;color:#4d5266;font-size:15.5px}
.q .lab{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);margin:6px 0 0}
.toplist{columns:2;column-gap:28px;padding-left:20px}
@media(max-width:620px){.toplist{columns:1}}
.toplist li{break-inside:avoid;margin-bottom:4px}
.note{font-size:14px;color:var(--muted)}
.ctabox{background:var(--ink);color:#e9ecf6;border-radius:16px;padding:24px;text-align:center;margin:28px 0 0}
.ctabox p{color:#c3c8de;margin:0 0 14px}
table.dates{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);font-size:15.5px}
table.dates th,table.dates td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
table.dates th{background:var(--paper-2);font-size:13px}
/* CBT demo */
.cbt{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;color:var(--text)}
.cbt .bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}
.cbt .timer{font-family:"IBM Plex Mono",monospace;font-size:20px;color:var(--ink)}
.cbt .timer.low{color:#b3412f}
.cbt .qbox .stem{font-size:17px;color:var(--ink);white-space:pre-line;margin:0 0 12px}
.cbt .qbox .subj{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);margin:0 0 6px}
.cbt label.o{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0 0 8px;cursor:pointer;min-height:44px}
.cbt label.o input{margin-top:4px}
.cbt .nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.cbt .b{font:inherit;font-size:15px;border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:10px 14px;cursor:pointer;color:var(--ink);min-height:44px}
.cbt .b.pri{background:var(--lamp);border-color:var(--lamp);color:#22150a}
.cbt .grid20{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-top:6px}
@media(max-width:520px){.cbt .grid20{grid-template-columns:repeat(5,1fr)}}
.cbt .grid20 button{font:inherit;font-size:14px;min-height:40px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;color:var(--ink)}
.cbt .grid20 button.done{background:#e6f2ec;border-color:#2f7d5b}
.cbt .grid20 button.flag{box-shadow:inset 0 -4px 0 #d9822b}
.cbt .grid20 button.cur{outline:2px solid var(--ink)}
.cbt .res .q{margin-top:12px}
.cbt [hidden]{display:none!important}
.exams .sec .note a,.exams .sec p a{overflow-wrap:anywhere}
@media(max-width:520px){table.dates{table-layout:fixed}table.dates th,table.dates td{padding:8px;font-size:14px;overflow-wrap:anywhere}}
