/* mthedu · páginas estáticas de questão, prova e assunto (geradas por scripts/gerar_paginas.mjs) */
:root{
  --bg:#FFFFFF; --surface:#FFFFFF; --sunken:#F1F3EE; --ink:#262A27; --muted:#5B625C; --line:#DDE2D9;
  --pen:#1F3FD1; --pen-ink:#FFFFFF; --pen-soft:#DFE4F8; --ok:#1E7A4C; --ok-soft:#DCEFE3;
  --f-tit:"Familjen Grotesk","Segoe UI",system-ui,sans-serif; --f:"Atkinson Hyperlegible","Segoe UI",system-ui,sans-serif;
}
:root[data-theme="dark"]{
  --bg:#0F1115; --surface:#171A20; --sunken:#1E222A; --ink:#E7E9EE; --muted:#9BA2B1; --line:#2A2F39;
  --pen:#8FA6FF; --pen-ink:#0F1115; --pen-soft:#1D2544; --ok:#4CC38A; --ok-soft:#13281D; color-scheme:dark}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--f);-webkit-font-smoothing:antialiased}
a{color:var(--pen)}
:focus-visible{outline:2px solid var(--pen);outline-offset:3px;border-radius:6px}
.wrap{max-width:820px;margin:0 auto;padding-inline:16px}
.topo{border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:5}
.topo .wrap{display:flex;align-items:center;gap:12px;padding-block:12px;max-width:1080px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}
.mark{width:32px;height:32px;border-radius:9px;background:var(--pen);color:var(--pen-ink);display:grid;place-items:center;font:700 20px/1 var(--f-tit);padding-bottom:2px}
.logo b{font:700 20px/1 var(--f-tit)}
.topo nav{display:flex;gap:2px}
.topo nav a{text-decoration:none;color:var(--muted);font-weight:700;font-size:15px;padding:8px 10px;border-radius:8px;white-space:nowrap}
.topo nav a:hover{background:var(--sunken);color:var(--ink)}
main{padding-block:20px 56px}
.migalha ol{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px;color:var(--muted)}
.migalha li+li::before{content:"›";margin-right:8px;color:var(--line)}
.migalha a{color:var(--muted);text-decoration:none}
.migalha a:hover{color:var(--pen)}
h1{font:700 clamp(26px,4.4vw,38px)/1.12 var(--f-tit);letter-spacing:-.02em;margin:0 0 10px}
h2{font:700 22px/1.2 var(--f-tit);margin:28px 0 12px}
.sub{color:var(--muted);margin:0 0 20px}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font:700 16px/1 var(--f);border-radius:10px;padding:14px 20px;border:1.5px solid var(--ink);color:var(--ink);background:transparent}
.btn.pri{background:var(--pen);border-color:var(--pen);color:var(--pen-ink)}
.questao .cab .fonte{margin:0 0 6px;font-size:14px;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;font-size:14px}
.tags a,.tags span{padding:4px 10px;border-radius:999px;background:var(--sunken);color:var(--muted);text-decoration:none}
.tags a{background:var(--pen-soft);color:var(--pen);font-weight:700}
.enunciado{font-size:17.5px}
.enunciado,.alts,.resolucao,.lista span,.gabarito{overflow-wrap:anywhere}
.enunciado p{margin:0 0 14px}
.enunciado img,.alts img,.resolucao img{display:block;max-width:100%;height:auto;margin:14px auto;padding:8px;background:#fff;border:1px solid var(--line);border-radius:10px}
.enunciado table,.resolucao table{border-collapse:collapse;margin:14px 0;font-size:15px;display:block;overflow-x:auto}
.enunciado td,.enunciado th,.resolucao td,.resolucao th{border:1px solid var(--line);padding:6px 10px}
.comando{border-left:3px solid var(--pen);padding-left:14px;font-weight:700;margin:16px 0}
.comando p{margin:0}
.alts{list-style:none;margin:18px 0 22px;padding:0;display:grid;gap:8px}
.alts li{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.alts .letra{flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font:700 14px/1 var(--f-tit);margin-top:1px}
.alts li div{min-width:0}
.alts p{margin:0}
.gabarito{margin:22px 0;border:1px solid var(--line);border-radius:14px;padding:4px 18px}
.gabarito summary{cursor:pointer;font-weight:700;padding:12px 0;color:var(--pen)}
.gabarito .resp{background:var(--ok-soft);color:var(--ok);padding:12px 14px;border-radius:10px;margin:4px 0 14px}
.gabarito .resp p{display:inline;margin:0}
.resolucao h2{margin-top:8px}
.navq{display:flex;justify-content:space-between;gap:12px;margin:24px 0 8px;font-size:15px}
.navq a{text-decoration:none;font-weight:700}
.lista{list-style:none;margin:20px 0;padding:0;border-top:1px solid var(--line)}
.lista li{border-bottom:1px solid var(--line)}
.lista a{display:block;padding:14px 4px;text-decoration:none;color:var(--ink)}
.lista a:hover b{color:var(--pen)}
.lista b{display:block;font-weight:700}
.lista span{display:block;color:var(--muted);font-size:15px;line-height:1.5;margin-top:2px}
.mais{font-weight:700}
.grade{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.grade a{display:block;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink)}
.grade a:hover{border-color:var(--pen)}
.grade b{display:block}
.grade span{font-size:14px;color:var(--muted)}
.rel{margin-top:36px}
.cta{margin-top:40px;background:var(--pen-soft);border-radius:18px;padding:24px}
.cta h2{margin:0 0 6px}
.cta p{margin:0 0 16px;color:var(--muted)}
.rodape{border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.rodape .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;padding-block:22px;max-width:1080px}
.rodape a{color:var(--muted);text-decoration:none}
mjx-container{overflow-x:auto;overflow-y:hidden;max-width:100%}
@media (max-width:560px){
  body{font-size:16.5px}
  .topo nav a.esconde{display:none}
  .alts li{padding:11px 12px}
  .btn{width:100%}
  .cta{padding:20px 16px}
}
