:root{--green:#063c2b;--gold:#b88936;--cream:#fbf6e9;--ink:#182820}*{box-sizing:border-box}body{margin:0;background:#e7ebe8;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:22px;padding:16px 24px;flex-wrap:wrap;background:#fff;box-shadow:0 1px 10px #0001;font-size:14px}.toolbar a{color:var(--green)}.toolbar button{background:var(--green);border:0;border-radius:6px;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}.toolbar button:disabled{opacity:.5;cursor:wait}.toolbar p{width:100%;margin:0;font-size:12px;color:#56665b}.source{display:none}.page{width:210mm;height:297mm;margin:24px auto;position:relative;background:var(--cream);overflow:hidden;box-shadow:0 3px 20px #0002;break-after:page}.page:last-child{break-after:auto}.page-header{position:absolute;inset:0 0 auto;height:47mm;object-fit:fill;width:100%}.page-footer{position:absolute;bottom:0;left:0;width:100%;height:31mm;background:var(--green);color:#f5ddb1}.footer-line{display:flex;justify-content:space-between;padding:1mm 12mm;font-size:8pt}.body{position:absolute;top:54mm;bottom:38mm;left:14mm;right:14mm;display:grid;grid-template-columns:1fr 1fr;gap:9mm}.page.wide .body{display:block}.col{min-width:0;overflow:visible;height:100%;font-size:10.5pt;line-height:1.43;hyphens:auto;overflow-wrap:break-word}.col>*{max-width:100%;margin-top:0}.col p{margin:0 0 3.2mm;text-align:justify}.col h1{font-family:Georgia,serif;font-size:25pt;line-height:1.1;color:var(--green);margin:0 0 7mm}.col h2,.col h3,.col h4{font-size:14pt;line-height:1.2;color:var(--green);margin:5mm 0 3mm;break-after:avoid}.col h2:first-child{margin-top:0}.col img{display:block;max-width:100%;height:auto;max-height:160mm;object-fit:contain;margin:0 auto 4mm}.col figure{margin:0 0 4mm}.col figcaption{font-size:8pt;color:#647063;margin-top:2mm}.col a{color:inherit;text-decoration:none;word-break:break-word}.col blockquote{margin:4mm 0;padding:3mm 0 3mm 4mm;border-left:2px solid var(--gold);font-family:Georgia,serif;font-style:italic}.col ul,.col ol{padding-left:5mm}.col li{margin-bottom:3mm}.col table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:9.5pt;line-height:1.35;margin-bottom:6mm}.col th,.col td{padding:3mm 2mm;border:1px solid #d4c6a5;vertical-align:top;overflow-wrap:break-word;text-align:left}.col th{background:#e8dec5;color:var(--green)}.col tr:nth-child(even){background:#f3eddc}.col table p{margin:0;text-align:left;font-size:inherit}.timeline-item{border-left:2px solid var(--gold);padding:0 0 0 4mm;margin-bottom:4mm;break-inside:avoid}.timeline-item strong{display:block;color:var(--green);margin-bottom:1mm}.timeline-item p{margin:0;text-align:left}.sources .col{font-size:9.2pt;line-height:1.45}.sources .col p{text-align:left;margin-bottom:4mm}.expediente .col{font-size:9.5pt;line-height:1.4}.expediente .col h2{font-size:11.5pt;margin:4mm 0 2mm}.cover{background:var(--green);color:#f3ddb1}.cover .frame{position:absolute;inset:10mm;border:1px solid var(--gold);border-radius:7mm;padding:14mm 13mm;display:flex;flex-direction:column;align-items:center;text-align:center}.cover .eyebrow{font-size:10pt;letter-spacing:.16em;text-transform:uppercase;color:#d2a559}.cover h1{font:700 42pt/1.04 Georgia,serif;margin:18mm 0 5mm}.cover .project{font:20pt/1.25 Georgia,serif;margin:0 0 10mm}.cover .line{width:100%;height:1px;background:var(--gold);margin:5mm 0}.cover .name{font:700 27pt/1.15 Georgia,serif;margin:8mm 0 2mm}.cover .mandate{font-size:12pt;margin:2mm 0 8mm}.cover .quote{font:italic 15pt/1.4 Georgia,serif;margin:3mm 0 7mm}.cover .credits{font-size:11pt;line-height:1.6;margin-top:auto}.opening .body{display:block}.opening h1{font:700 32pt/1.12 Georgia,serif;color:var(--green);margin:0 0 8mm}.opening .profile{display:grid;grid-template-columns:1fr 67mm;gap:10mm}.opening .portrait{width:67mm;max-height:110mm;object-fit:contain;border:1px solid #cfc1a1}.opening .quote{font:italic 16pt/1.4 Georgia,serif;margin:0 0 9mm}.opening .facts{display:grid;grid-template-columns:1fr 1fr;gap:4mm}.fact{border-top:1px solid var(--gold);padding-top:3mm;font-size:11pt}.fact small{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:8pt;margin-bottom:2mm;color:#63715f}.opening .footnote{font-size:9pt;color:#63715f;margin-top:10mm;line-height:1.5}.backcover>img{width:100%;height:100%;object-fit:fill}#status.error{color:#9b2929}@page{size:A4;margin:0}@media print{html,body{margin:0!important;padding:0!important;width:210mm;background:#fff}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.toolbar,.source,noscript{display:none!important}.page{margin:0!important;box-shadow:none;break-inside:avoid}.page:not(:last-child){break-after:page}.page:last-child{break-after:auto}}
.cover h1,.cover .project,.cover .credits,.opening .footnote{white-space:pre-line}
.body{grid-template-rows:minmax(0,1fr)}.col{min-height:0}
.col th{overflow-wrap:normal;word-break:normal}.expediente .col{font-size:8.8pt;line-height:1.32}.expediente .col p{margin-bottom:2.5mm}.expediente .col h2{font-size:10.5pt;margin:3mm 0 2mm}
.expediente .col{font-size:8.4pt;line-height:1.28}.expediente .col p{margin-bottom:2.2mm}.expediente .col h2{font-size:10pt;margin:2.7mm 0 1.7mm}

/* Rodapé editorial em texto e vetores, sem imagem rasterizada. */
.page-footer{height:31mm;border-top:1mm solid var(--gold)}
.footer-editorial{height:23.5mm;display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:3mm;padding:2.2mm 7mm 1.5mm;align-items:center}
.footer-block{display:flex;gap:2.3mm;align-items:center;min-width:0;height:100%}
.footer-block+.footer-block{border-left:.3mm solid var(--gold);padding-left:3mm}
.footer-seal{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:11mm;height:11mm;border:.4mm solid var(--gold);border-radius:50%;color:#e1b35c;font:700 17pt/1 Georgia,serif}
.footer-seal svg{width:8mm;height:8mm}
.footer-copy{min-width:0}.footer-label{display:block;color:#e1b35c;font-size:7.5pt;font-weight:700;letter-spacing:.035em;text-transform:uppercase;margin-bottom:1mm}
.footer-title{display:block;color:#fff9eb;font-size:9pt;line-height:1.22;font-weight:700}
.footer-book .footer-title{font:700 15pt/1.02 Georgia,serif}
.footer-sub{display:block;color:#f1c66b;font:italic 9pt/1.18 Georgia,serif;margin-top:1.3mm}
.footer-line{height:6.5mm;align-items:center;border-top:.2mm solid #b8893666;padding:.8mm 12mm;font-size:8pt;color:#fff5df}

/* Cabeçalho editorial com texto real e símbolos vetoriais. */
.header-editorial{display:grid;grid-template-columns:24mm minmax(0,1fr) 24mm;gap:5mm;align-items:center;padding:4mm 8mm;background:var(--green);border-top:1mm solid var(--gold);border-bottom:1mm solid var(--gold);color:#edd2a0}
.header-symbol{width:23mm;height:25mm;color:#d5aa55}
.header-copy{text-align:center;min-width:0}
.header-title{font:700 27pt/1.02 Georgia,serif;color:#fff6e4;text-transform:uppercase}
.header-subtitle{font:700 10.5pt/1.25 Georgia,serif;text-transform:uppercase;letter-spacing:.04em;color:#e5b75d;margin-top:2.2mm}
.header-slogan{font:italic 11pt/1.2 Georgia,serif;color:#f3e4c7;margin-top:1.6mm}

/* Logo oficial preservado a partir do e-book fornecido. */
.header-editorial{grid-template-columns:32mm minmax(0,1fr) 24mm;gap:4mm;padding:3mm 8mm}
.header-legislative-logo{display:block;width:30mm;height:37mm;object-fit:contain;justify-self:center}

/* Realça as inscrições escuras do logo transparente sobre o verde do cabeçalho. */
.header-legislative-logo{filter:drop-shadow(0 0 .15mm #fff) drop-shadow(0 0 .15mm #fff)}
.mandate-item{background:#fffdf7;border-left:1mm solid var(--gold);padding:4mm 5mm;margin-bottom:4mm;break-inside:avoid}.mandate-item h2{font-size:13pt;margin:0 0 2mm}.mandate-item p{margin:1.5mm 0;text-align:left}.mandate-deceased{color:#922f21;font-weight:700}.gallery-photo{break-inside:avoid}.gallery .col img{max-height:140mm;max-width:174mm}.gallery .col figcaption{font-size:10pt;line-height:1.4;text-align:center;color:var(--green)}.photo-credit{display:block;margin-top:1mm;font-size:9pt}.archive-kicker{font-size:9pt!important;letter-spacing:.12em;color:#926b27;font-weight:700}.archive-item{break-inside:avoid;margin-bottom:6mm}.archive-item h2{margin:0 0 2mm}.archive-meta{font-size:9pt;color:#687466;text-align:left!important}.archive-crop{margin:3mm 0!important}.archive .col img{max-height:130mm;max-width:174mm;object-fit:contain}.archive-link{font-size:8pt;line-height:1.2;text-align:left!important;overflow-wrap:anywhere;margin-bottom:0!important}
.book-front .col{padding-top:25mm;font-size:13pt;line-height:1.5}.book-front .col h1{font-size:32pt;margin-bottom:20mm}.book-front .col p,.book-presentation .col p{text-align:left;margin-bottom:6mm}.book-presentation .col{font-size:12pt;line-height:1.6}.toc-row{display:grid;grid-template-columns:minmax(0,1fr) 17mm;gap:6mm;align-items:end;border-bottom:.2mm dotted #b6b7a6;padding:3.3mm 0;break-inside:avoid;font-size:12pt;line-height:1.35}.toc-number{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:var(--green)}.toc-chapter{font-size:14pt!important;margin-top:6mm!important}.book-chapter .col{display:flex;flex-direction:column;justify-content:center;text-align:center}.book-chapter .col h1{font:700 36pt/1.15 Georgia,serif}.book-chapter .col .eyebrow{font-size:10pt;text-transform:uppercase;letter-spacing:.12em;color:#986d25;text-align:center;margin-bottom:10mm}.book-count{font-size:12pt;color:#edd2a0;margin:3mm 0}

/* 1.2.4 — fotos por legislatura e ficha biográfica na edição PDF. */
.mandate-item{display:flex;align-items:center;gap:6mm}
.mandate-portrait{flex:0 0 28mm;width:28mm}
.col .mandate-portrait img{display:block;width:28mm;height:auto;max-height:42mm;object-fit:contain;margin:0;border-radius:1mm}
.mandate-copy{flex:1;min-width:0;overflow-wrap:anywhere}
.biographical-facts .col h2{font-size:10pt;margin:4mm 0 1.5mm}
.biographical-facts .col p{font-size:11pt;line-height:1.5;text-align:left;margin:0 0 4mm;white-space:normal}
.biographical-facts .col h2{border-top:1px solid #d4c6a5;padding-top:3mm}

/* 1.2.8: evita superfícies rasterizadas por filtro em cada página do livro. */
.header-legislative-logo{filter:none;background:#fbf6e9;border-radius:1mm}
.print-range{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
.print-range input{width:76px;padding:6px;border:1px solid #acb8af;border-radius:4px}

/* Localização de falhas de imagem, apenas na tela. */
.print-image-error{width:100%;border:1px solid #ab372c;background:#fff5f2;padding:12px;color:#80271e;overflow-wrap:anywhere}
.print-image-error[hidden]{display:none}
.print-image-error p{margin:0 0 10px;color:inherit;font-size:13px}
.print-image-error a{display:inline-block;margin-right:16px}
@media screen{.page.print-image-problem{outline:4px solid #b4382c;outline-offset:4px}}
@media print{.print-image-error{display:none!important}}
