/* Proveiro — folha A4, cabeçalho, questões no papel e matemática (usado na tela e na impressão) */
/* ---------- matemática ---------- */
.fr{display:inline-flex;flex-direction:column;align-items:center;vertical-align:middle;line-height:1.15;margin:0 .12em;font-size:.92em}
.fr>span:first-child{border-bottom:1.5px solid currentColor;padding:0 .2em .06em}
.fr>span:last-child{padding:.06em .2em 0}
.rt{white-space:nowrap}.rt .rr{border-top:1.5px solid currentColor;padding:0 .12em;margin-left:.02em}
sup.sq{font-size:.7em}
.tex{font-family:'Source Serif 4',Georgia,serif}
.tex i{font-style:italic}


/* ---------- folha A4 ---------- */
.folha{width:210mm;height:297mm;background:#fff;color:#111;box-shadow:0 4px 22px rgb(0 0 0 / .18);position:relative;box-sizing:border-box;overflow:hidden;font-family:'Source Serif 4',Georgia,serif;font-size:var(--fs,11pt);line-height:1.38;flex:none}
.folha.sobre{outline:3px dashed var(--primary);outline-offset:-3px}
.folha .cols{display:flex;gap:var(--gap,8mm);align-items:flex-start;position:relative}
.folha .col{flex:none;position:relative}
.folha.sep .cols .col+.col::before{content:"";position:absolute;left:calc(var(--gap,8mm) / -2);top:0;bottom:0;border-left:.3mm solid #999}
.folha .rodape{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;font:600 7.5pt/1 Archivo,Arial,sans-serif;color:#555;padding:0 var(--m,12mm)}
.folha .selo-prof{position:absolute;top:3mm;right:var(--m,12mm);font:800 7pt/1 Archivo,Arial,sans-serif;letter-spacing:.08em;color:#fff;background:#111;padding:1.2mm 2.4mm;border-radius:1mm}
.folha .vazia{border:.5mm dashed #aaa;border-radius:3mm;color:#888;text-align:center;font:600 10pt/1.5 Archivo,Arial,sans-serif;padding:34mm 10mm;margin-top:6mm}

/* questão no papel */
.qw{position:relative;margin-bottom:var(--gapq,5mm);break-inside:avoid}
.qw[draggable=true]{cursor:default}
.qw:hover{outline:1.5px dashed #6a60e6;outline-offset:2mm;border-radius:1mm}
.qw.drop-antes::before,.qw.drop-depois::after{content:"";position:absolute;left:-2mm;right:-2mm;height:1.2mm;background:#382EAE;border-radius:1mm;z-index:5}
.qw.drop-antes::before{top:-3mm}.qw.drop-depois::after{bottom:-3.2mm}
.qw.arrastando{opacity:.4}
.q-ferr{position:absolute;top:-2mm;right:-1mm;display:none;gap:1mm;z-index:6;background:#fff;border:1px solid #bbb;border-radius:2mm;padding:.6mm;box-shadow:0 2px 8px rgb(0 0 0 / .15)}
.qw:hover .q-ferr{display:flex}
.q-ferr button{font:700 9pt/1 Archivo,Arial,sans-serif;border:0;background:none;cursor:pointer;color:#333;padding:1mm 1.6mm;border-radius:1mm}
.q-ferr button:hover{background:#eee}
.q-ferr button.x:hover{background:#fde4e4;color:#b00}
.q{display:grid;grid-template-columns:auto 1fr;column-gap:.5em;margin:0}
.q-n{font:800 .92em/1.38 Archivo,Arial,sans-serif;white-space:nowrap}
.q-corpo{min-width:0}
.q-pts{font:700 .78em Archivo,Arial,sans-serif;color:#444;margin-right:.3em;white-space:nowrap}
.q-enun{text-align:left;hyphens:auto}
.q-enun p{margin:.2em 0}
.q-fig{margin:2.2mm 0;text-align:center}
.q-fig figcaption{font:600 .78em Archivo,Arial,sans-serif;color:#444;margin-top:1mm}
.q-fig .fig-svg,.q-fig .fig-img{display:block;margin:0 auto}
.q-fig .fig-svgw svg{max-width:100%;height:auto}
.fig-tab{border-collapse:collapse;margin:0 auto;font-size:.92em}
.fig-tab th,.fig-tab td{border:.3mm solid #222;padding:.7mm 2.4mm;text-align:center}
.fig-tab th{background:#eee;font-family:Archivo,Arial,sans-serif;font-size:.9em}
.fig-erro{color:#b00;font:600 9pt Archivo,Arial,sans-serif;border:1px dashed #b00;padding:2mm}
.q-alts{list-style:none;margin:1.6mm 0 0;padding:0}
.q-alts li{margin:.5mm 0;display:flex;gap:.45em;align-items:baseline}
.q-alts li:has(img){align-items:center;margin:1mm 0}
.q-alts li b{font-family:Archivo,Arial,sans-serif;font-size:.9em;flex:none}
.q-alts li>span{min-width:0}
.q-alts.alt-2{display:grid;grid-template-columns:1fr 1fr;column-gap:4mm}
.q-alts.alt-linha{display:flex;flex-wrap:wrap;column-gap:5mm}
.q-alts.alt-linha li{margin-right:2mm}
.q-alts.alt-1{display:block}
.q-alts li img{max-width:100%;height:auto;display:block}
.q-pergunta{margin-top:1.4mm}
.pb{display:block;height:.45em}
.q-alts li.certa,.q-afs li.certa{background:#e6e6e6;border-radius:1mm;font-weight:600}
.q-afs{list-style:none;margin:1.6mm 0 0;padding:0}
.q-afs li{display:flex;gap:.55em;align-items:baseline;margin:.8mm 0}
.q-afs .par{font-family:Archivo,Arial,sans-serif;font-weight:700;white-space:nowrap;flex:none}
.q-afs .val{font:800 .86em Archivo,Arial,sans-serif;flex:none;min-width:1.7em;border:.3mm solid #222;border-radius:1mm;text-align:center;padding:0 .3em}
.q-afs.soma li{align-items:baseline}
.soma-box{margin-top:2.2mm;display:flex;align-items:center;gap:2mm;font:700 .9em Archivo,Arial,sans-serif;justify-content:flex-end}
.cxs{display:inline-block;width:7mm;height:7mm;border:.35mm solid #111;border-radius:1mm}
.r{color:#b00}
.q-assoc{display:grid;grid-template-columns:1fr 1fr;column-gap:6mm;margin-top:1.6mm}
.q-assoc ul,.q-assoc ol{list-style:none;margin:0;padding:0}
.q-assoc li{margin:1mm 0;display:flex;gap:.5em;align-items:baseline}
.q-assoc .par{font-family:Archivo,Arial,sans-serif;font-weight:700;white-space:nowrap}
.q-assoc ol li b{font-family:Archivo,Arial,sans-serif}
.linhas{margin-top:2mm;height:calc(var(--n) * 7.5mm);background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(7.5mm - .3mm),#777 calc(7.5mm - .3mm),#777 7.5mm)}
.espaco{margin-top:1mm}
.quadric{margin-top:2mm;border:.35mm solid #444;background-image:linear-gradient(#ccc .2mm,transparent .2mm),linear-gradient(90deg,#ccc .2mm,transparent .2mm);background-size:5mm 5mm;background-color:#fff}
.q-res{margin-top:2mm;padding:1.6mm 2.4mm;border-left:.8mm solid #555;background:#f1f1f1;font-size:.9em}

/* cabeçalho — modelo "caixas" (inspirado no modelo enviado) */
.cab{margin-bottom:5mm;font-family:Archivo,Arial,sans-serif;color:#111;cursor:pointer}
.cab .tit{display:flex;align-items:center;gap:4mm;margin-bottom:2.4mm}
.cab .tit img{max-height:13mm;max-width:30mm;object-fit:contain}
.cab .tit .tt{flex:1;min-width:0}
.cab .tit h3{margin:0;font-size:13.5pt;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.01em}
.cab .tit .st{font-size:8.6pt;font-weight:600;color:#444;margin-top:.6mm}
.cab .tit .ver{font-size:15pt;font-weight:800;border:.5mm solid #111;border-radius:2mm;padding:0 3mm;line-height:10mm;height:10mm}
.cab-cx{border:.55mm solid #111;border-radius:3.2mm;padding:2.2mm 2.6mm}
.cab-cx .lin{display:flex}
.cab-cx .lin+.lin{border-top:.25mm solid #111;margin-top:1.8mm;padding-top:1.8mm}
.cab-cx .cel{padding:0 2mm;flex:var(--w,1) 1 0;min-width:0}
.cab-cx .cel:first-child{padding-left:0}.cab-cx .cel:last-child{padding-right:0}
.cab-cx .cel+.cel{border-left:.25mm solid #111}
.cab-cx .lb{font-size:7.2pt;font-weight:800;text-transform:uppercase;letter-spacing:.02em;margin-bottom:.9mm}
.cab-cx .cx{height:6.4mm;border:.25mm solid #bbb;border-radius:1.3mm;background:#fafafa;display:flex;align-items:center;padding:0 2mm;font-size:9pt;font-weight:600;white-space:nowrap;overflow:hidden}
.cab-cx .cx.nota{justify-content:flex-end;color:#888;font-size:8pt}
.cab-cx .dt{display:flex;align-items:center;gap:1.2mm}
.cab-cx .dt .cx{flex:1;justify-content:center;padding:0;display:flex}
.cab-cx .dt b{font-weight:800}
.cab .cel:hover .cx,.cab-ln .cel:hover{outline:1.5px dashed #6a60e6}
.cab-ln{display:flex;flex-wrap:wrap;gap:3.2mm 5mm;font-size:9.5pt;border-top:.5mm solid #111;border-bottom:.5mm solid #111;padding:2.6mm 0}
.cab-ln .cel{display:flex;align-items:baseline;gap:1.6mm;flex:var(--w,1) 1 0;min-width:var(--mw,28mm)}
.cab-ln .lb{font-weight:800;font-size:8pt;text-transform:uppercase;white-space:nowrap}
.cab-ln .ln{flex:1;border-bottom:.3mm solid #111;min-height:4.8mm;padding:0 1mm;font-weight:600;white-space:nowrap;overflow:hidden}
.cab-ln .dt{display:inline-flex;gap:1mm;align-items:baseline}
.cab-ln .dt .ln{min-width:7mm;text-align:center}
.cab-cp{display:flex;flex-wrap:wrap;gap:2mm 4mm;align-items:center;border:.4mm solid #111;border-radius:2mm;padding:2mm 3mm;font-size:8.6pt}
.cab-cp .cel{display:flex;align-items:baseline;gap:1.4mm;flex:var(--w,1) 1 0}
.cab-cp .lb{font-weight:800;font-size:7.4pt;text-transform:uppercase}
.cab-cp .ln{flex:1;border-bottom:.25mm solid #111;min-height:4.4mm;padding:0 1mm;font-weight:600;white-space:nowrap;overflow:hidden}
.cab .instr{margin-top:2.4mm;font:600 8.6pt/1.4 'Source Serif 4',Georgia,serif;color:#222;border-left:.8mm solid #111;padding-left:2.4mm}
.cab .instr p{margin:0}

/* gabarito (folha do professor) */
.gab h4{font:800 12pt Archivo,Arial,sans-serif;margin:0 0 3mm;text-transform:uppercase}
.gab-tab{width:100%;border-collapse:collapse;font:600 9pt Archivo,Arial,sans-serif;margin-bottom:5mm}
.gab-tab td,.gab-tab th{border:.3mm solid #222;padding:1mm 1.8mm;text-align:center}
.gab-tab th{background:#eee}
.gab-it{display:grid;grid-template-columns:auto 1fr;gap:0 2mm;margin-bottom:3.4mm;font-size:.92em}
.gab-n{font:800 1em Archivo,Arial,sans-serif}
.gab-r{font-family:Archivo,Arial,sans-serif}
.gab-s{margin-top:.8mm;color:#222}


/* questões do ENEM em imagem */
.q-imgq .q-img{display:block;margin:0 0 2mm;height:auto}
.q-imgq .q-base{margin-bottom:3mm}
.q-gabimg{margin-top:1.5mm;font:600 .85em Archivo,Arial,sans-serif;color:#b00}
.q-imgq .q-pts{margin:0 0 1.2mm}
