/* ============================================================
   DOE-VAA — tema do portal público
   Derivado dos tokens do Governa PMVAA (tema.css)
   --p #004080 · --s #edb112 · Raleway + Source Sans 3
   Anti-dark: GOVERNA-ANTIDARK (only light + bg-image + fill-color)
   ============================================================ */
*{box-sizing:border-box;margin:0}
:root{
  --p:#004080;
  --s:#edb112;
  --azul-dk:color-mix(in srgb, #004080 76%, #0a1422);
  --bg:#f0f3f7;--card:#fff;
  --txt:#23344a;--txt2:#5f7185;--txt3:#8a99ab;
  --borda:#e3e9f0;--r:14px;
  --sombra:0 2px 10px rgba(20,35,60,.06);
  --sombra-h:0 10px 26px rgba(20,35,60,.14);
}
@supports not (color: color-mix(in srgb, red, blue)){
  :root{--azul-dk:#023263}
}
html{scroll-behavior:smooth}
body{
  font-family:'Source Sans 3','Segoe UI',system-ui,sans-serif;
  background:var(--bg);
  background-image:radial-gradient(#dfe6ee 1px,transparent 1px);
  background-size:22px 22px;
  color:var(--txt);font-size:15.5px;line-height:1.6;
}
h1,h2,h3,h4{font-family:'Raleway',sans-serif;font-weight:800}
a{color:var(--p)}
code{font-size:.92em;background:#eef2f6;border-radius:5px;padding:1px 6px}

/* ---- acessibilidade ---- */
.skip,.skip-link{position:absolute;left:-9999px;top:0;background:var(--p);color:#fff;-webkit-text-fill-color:#fff;padding:10px 18px;z-index:999;border-radius:0 0 8px 0;text-decoration:none}
.skip:focus,.skip-link:focus{left:0}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--s);outline-offset:2px;border-radius:3px}

/* ---- barra superior ---- */
.abar{background:var(--azul-dk)}
.abar-in{max-width:1120px;margin:0 auto;padding:6px 20px;display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap}
.abar a{background:none;border:1px solid rgba(255,255,255,.22);color:#cfdcec;-webkit-text-fill-color:#cfdcec;font-size:12px;font-weight:700;padding:4px 12px;border-radius:14px;text-decoration:none;font-family:inherit;transition:background .15s}
.abar a:hover{background:rgba(255,255,255,.14)}

/* ---- header ---- */
header.topo{background:var(--card);border-bottom:1px solid var(--borda)}
.topo-in{max-width:1120px;margin:0 auto;padding:20px;display:flex;align-items:center;gap:16px}
.brasao-img{flex:0 0 auto;height:64px}
.brasao-img img{height:64px;width:auto;object-fit:contain;display:block}
.t-tag{font-family:'Raleway';font-size:12.5px;color:var(--txt3);text-transform:uppercase;letter-spacing:.14em;font-weight:700}
.t-nome{font-family:'Raleway';font-size:27px;color:var(--p);line-height:1.1;font-weight:800;text-transform:uppercase}
.t-uf{font-family:'Raleway';font-size:11.5px;color:var(--s);text-transform:uppercase;letter-spacing:.18em;font-weight:800}
.topo-volta{margin-left:auto;font-size:13px;font-weight:700;color:var(--txt2);text-decoration:none;border:1.5px solid var(--borda);border-radius:20px;padding:8px 16px;white-space:nowrap;transition:all .14s}
.topo-volta:hover{border-color:var(--p);color:var(--p)}

/* ---- nav ---- */
nav.menu{background:var(--p);border-bottom:4px solid var(--s);position:sticky;top:0;z-index:90}
.menu-in{max-width:1120px;margin:0 auto;padding:0 12px;display:flex;flex-wrap:wrap}
.menu a{color:#fff;-webkit-text-fill-color:#fff;text-decoration:none;padding:14px 17px;font-family:'Raleway';font-weight:800;font-size:13.5px;text-transform:uppercase;letter-spacing:.03em;display:block}
.menu a:hover,.menu a[aria-current=page]{background:rgba(255,255,255,.1)}

/* ---- hero de busca (clone do exec-guiche do Governa) ---- */
.hero{background-color:var(--p);background-image:linear-gradient(160deg,var(--p) 0%,var(--azul-dk) 90%);position:relative;overflow:hidden}
.hero-marca{position:absolute;right:-70px;top:50%;transform:translateY(-50%);width:380px;height:380px;background:center/contain no-repeat;opacity:.16;pointer-events:none;mix-blend-mode:soft-light}
.hero-in{max-width:1120px;margin:0 auto;padding:52px 20px 58px;position:relative;z-index:1}
.hero h2{color:#fff;-webkit-text-fill-color:#fff;font-weight:800;font-size:clamp(1.55rem,3.4vw,2.4rem);max-width:640px;line-height:1.13;margin:0}
.hero h2 em{font-style:normal;color:var(--s);-webkit-text-fill-color:var(--s)}
.hero-sub{margin-top:10px;color:rgba(255,255,255,.72);-webkit-text-fill-color:rgba(255,255,255,.72);max-width:560px}
.hero-busca{margin-top:26px;display:flex;max-width:640px;background:#fff;border-radius:999px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.hero-busca input{flex:1;border:0;outline:0;font:inherit;font-size:1rem;padding:.72rem 1.2rem;border-radius:999px;background:transparent;color:#16232F;min-width:0}
.hero-busca button{border:0;background:var(--s);color:var(--azul-dk);-webkit-text-fill-color:var(--azul-dk);font-family:'Raleway';font-weight:800;font-size:.95rem;padding:.72rem 1.4rem;border-radius:999px;cursor:pointer;transition:filter .15s}
.hero-busca button:hover{filter:brightness(.92)}
.hero-atalhos{margin-top:13px;font-size:.82rem;color:rgba(255,255,255,.55);-webkit-text-fill-color:rgba(255,255,255,.55)}
.hero-atalhos a{color:rgba(255,255,255,.85);-webkit-text-fill-color:rgba(255,255,255,.85);text-decoration:underline;text-underline-offset:3px;margin-right:14px}
.hero-selo{display:inline-flex;align-items:center;gap:8px;margin-top:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:7px 18px;font-size:12.5px;font-weight:700;color:#cfdcec;-webkit-text-fill-color:#cfdcec;font-family:'Raleway';letter-spacing:.04em}
.hero-selo b{color:var(--s);-webkit-text-fill-color:var(--s)}
@media(max-width:860px){.hero-marca{display:none}}

/* ---- main / seções ---- */
main{max-width:1120px;margin:28px auto;padding:0 20px}
.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
.sec-h{display:flex;align-items:center;gap:12px;margin:26px 0 16px}
.sec-h::before{content:'';width:6px;height:26px;background:var(--s);border-radius:3px;flex:0 0 6px}
.sec-h h2,.sec-h h1{font-size:22px;color:var(--p)}
.sec-h::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,rgba(0,64,128,.22),transparent);min-width:20px}
.sec-h .vt{margin-left:14px;font-size:13px;font-weight:800;font-family:'Raleway';color:var(--s);text-decoration:none;white-space:nowrap}

/* ---- capa da edição em destaque ---- */
.capa{background:var(--card);border-radius:var(--r);box-shadow:var(--sombra);border-top:5px solid var(--s);overflow:hidden}
.capa-in{padding:28px 30px;display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.capa-num{flex:0 0 auto;text-align:center;padding-right:28px;border-right:1px solid var(--borda)}
.capa-num .lbl{font-family:'Raleway';font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--txt3)}
.capa-num .n{font-family:'Raleway';font-weight:900;font-size:68px;line-height:1;color:var(--p);letter-spacing:-.02em}
.capa-num .badge-hoje{display:inline-block;margin-top:8px;background:var(--s);color:#fff;-webkit-text-fill-color:#fff;font-family:'Raleway';font-weight:800;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:7px}
.capa-meta{flex:1;min-width:260px}
.capa-data{font-family:'Raleway';font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--s);margin-bottom:6px}
.capa-meta h3{font-size:22px;color:var(--txt);line-height:1.25;margin-bottom:10px}
.capa-res{color:var(--txt2);font-size:14.5px;margin-bottom:14px}
.capa-cad{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.capa-cad span{font-family:'Raleway';font-weight:800;font-size:12px;color:var(--p);border:1.5px solid #cdd7e2;border-radius:16px;padding:4px 13px;background:#fff}
.capa-acoes{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.capa-auth{display:flex;align-items:center;gap:10px;background:#f6f9fc;border-top:1px solid var(--borda);padding:12px 30px;font-size:13px;color:var(--txt2);flex-wrap:wrap}
.capa-auth .cad{width:30px;height:30px;border-radius:8px;background:var(--p);color:#fff;-webkit-text-fill-color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;flex:0 0 30px}
.capa-auth b{color:var(--txt)}
.capa-auth a{margin-left:auto;font-weight:800;font-family:'Raleway';font-size:12.5px;color:var(--s);text-decoration:none;white-space:nowrap}

/* ---- grade de edições ---- */
.ed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.ed-card{background:#fff;border:1px solid var(--borda);border-top:4px solid var(--s);border-radius:12px;padding:16px 18px;text-decoration:none;display:flex;flex-direction:column;gap:4px;transition:transform .15s,box-shadow .15s}
.ed-card:hover{transform:translateY(-3px);box-shadow:var(--sombra-h)}
.ed-card .lbl{font-family:'Raleway';font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--txt3)}
.ed-card .n{font-family:'Raleway';font-weight:900;font-size:30px;color:var(--p);line-height:1.1}
.ed-card .dt{font-size:13px;color:var(--txt2);font-weight:600}
.ed-card .mt{font-size:12.5px;color:var(--txt3)}
.ed-card .tag-acervo{align-self:flex-start;margin-top:6px;font-family:'Raleway';font-weight:800;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--txt2);background:#eef2f6;border-radius:6px;padding:3px 9px}
.ed-card .selo{margin-top:2px}

/* ---- widgets laterais ---- */
.widget{background:#fff;border:1px solid var(--borda);border-radius:12px;overflow:hidden;margin-bottom:16px}
.widget .wh{background:var(--p);color:#fff;-webkit-text-fill-color:#fff;font-family:'Raleway';font-weight:800;font-size:13px;letter-spacing:.05em;padding:11px 16px;text-transform:uppercase}
.widget .wb{padding:16px}
.widget .wb p{font-size:13.5px;color:var(--txt2);margin-bottom:12px}

/* calendário */
.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.cal-nav b{font-family:'Raleway';font-weight:800;font-size:14.5px;color:var(--p)}
.cal-nav a{text-decoration:none;font-weight:800;color:var(--txt3);font-size:16px;padding:2px 9px;border-radius:8px}
.cal-nav a:hover{background:#eef2f6;color:var(--p)}
table.cal{width:100%;border-collapse:collapse;table-layout:fixed}
.cal th{font-family:'Raleway';font-size:10.5px;font-weight:800;color:var(--txt3);text-transform:uppercase;padding:4px 0;text-align:center;border:0}
.cal td{text-align:center;padding:0;border:0}
.cal td span,.cal td a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;margin:2px auto;font-size:13px;border-radius:9px;color:var(--txt3);text-decoration:none;position:relative}
.cal td a{color:var(--txt);font-weight:700;background:#f4f7fa}
.cal td a::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:var(--s)}
.cal td a:hover{background:var(--p);color:#fff}
.cal td a.hoje{background:var(--s);color:#fff;font-weight:800}
.cal td a.hoje::after{background:#fff}
.cal-leg{margin-top:10px;font-size:12px;color:var(--txt3);display:flex;align-items:center;gap:6px}
.cal-leg i{width:7px;height:7px;border-radius:50%;background:var(--s);display:inline-block;flex:0 0 7px}

/* chips (anos / filtros) */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chips a{padding:6px 14px;border-radius:20px;border:1.5px solid #cdd7e2;background:#fff;font-family:'Raleway';font-weight:800;font-size:12.5px;color:var(--p);text-decoration:none;transition:all .14s}
.chips a.on,.chips a:hover{background:var(--p);border-color:var(--p);color:#fff}

/* stats */
.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.stats div{background:#f6f9fc;border-radius:10px;padding:12px;text-align:center}
.stats b{display:block;font-family:'Raleway';font-weight:900;font-size:21px;color:var(--p)}
.stats small{font-size:11px;color:var(--txt2);text-transform:uppercase;letter-spacing:.06em;font-family:'Raleway';font-weight:700}

/* ---- botões ---- */
.btn{display:inline-block;background:var(--s);color:#fff;-webkit-text-fill-color:#fff;border:0;border-radius:10px;padding:11px 24px;font-family:'Raleway';font-weight:800;font-size:14px;text-decoration:none;cursor:pointer;transition:filter .15s;text-align:center}
.btn:hover{filter:brightness(1.08)}
.btn.azul,.btn-primario{background:var(--p)}
.btn.ghost{background:#fff;color:var(--p);-webkit-text-fill-color:var(--p);border:1.5px solid #cdd7e2}
.btn.bloco{display:block;width:100%}

/* ---- formulários ---- */
input[type=text],input[type=search],input[type=date],input[type=number],select{border:1.5px solid var(--borda);border-radius:9px;padding:10px 13px;font-family:inherit;font-size:14px;color:var(--txt);background:#fff;outline:0;max-width:100%}
input:focus,select:focus{border-color:var(--p)}
label{font-family:'Raleway';font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--txt2)}

/* ---- COMPAT: classes das views internas ainda não portadas ---- */
.card{background:var(--card);border-radius:var(--r);padding:22px 24px;box-shadow:var(--sombra);margin-bottom:14px;border:1px solid var(--borda)}
.card-edicao{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:4px solid var(--s)}
.card-edicao .num{font-family:'Raleway';font-weight:900;font-size:21px;color:var(--p)}
.card-edicao .meta,.meta{font-size:13.5px;color:var(--txt2)}
.acoes{display:flex;gap:10px;flex-wrap:wrap}
.selo{display:inline-block;background:var(--p);color:#fff;-webkit-text-fill-color:#fff;border-radius:7px;font-size:11.5px;font-weight:800;padding:2px 10px;font-family:'Raleway';vertical-align:middle}
table{width:100%;border-collapse:collapse}
th{text-align:left;color:var(--p);font-family:'Raleway';border-bottom:2px solid var(--p);padding:9px 6px;font-size:13.5px}
td{padding:10px 6px;border-bottom:1px solid #eef2f6}

/* ---- paginação ---- */
.paginacao{margin-top:18px}
nav.pag{display:flex;gap:6px;justify-content:center;margin-top:20px;flex-wrap:wrap}
nav.pag a,nav.pag span{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:9px;border:1.5px solid #cdd7e2;background:#fff;font-family:'Raleway';font-weight:800;font-size:13px;color:var(--p);text-decoration:none;transition:all .14s}
nav.pag a:hover{background:var(--p);border-color:var(--p);color:#fff}
nav.pag span.on{background:var(--p);border-color:var(--p);color:#fff;-webkit-text-fill-color:#fff}
nav.pag span.off{color:var(--txt3);border-color:var(--borda)}

/* ---- footer ---- */
footer{background:var(--azul-dk);margin-top:44px;padding:30px 20px;border-top:4px solid var(--s)}
.foot-in{max-width:1120px;margin:0 auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;color:#cfdcec;-webkit-text-fill-color:#cfdcec;font-size:13px}
.foot-in strong,.foot-in b{color:#fff;-webkit-text-fill-color:#fff;font-family:'Raleway';display:block;margin-bottom:4px}
.foot-in a{color:var(--s);-webkit-text-fill-color:var(--s);text-decoration:none;font-weight:700}
.foot-in .icp{margin-top:10px;font-size:12px;color:#9db4cf;-webkit-text-fill-color:#9db4cf}

/* ---- responsivo ---- */
@media(max-width:900px){
  .home-grid{grid-template-columns:1fr}
  .capa-num{border-right:0;border-bottom:1px solid var(--borda);padding:0 0 16px;width:100%}
  .t-nome{font-size:20px}
  .capa-auth a{margin-left:0}
  .topo-volta{display:none}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  html{scroll-behavior:auto}
}

/* ============================================================
   FASE 2 — componentes das páginas internas
   ============================================================ */

/* breadcrumb */
.crumb{font-size:13px;color:var(--txt3);margin-bottom:14px}
.crumb a{color:var(--s);text-decoration:none;font-weight:700}

/* formulário de busca / verificação */
.form-busca{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.form-busca>div{display:flex;flex-direction:column;gap:5px}
.form-busca .campo-q{grid-column:1/-1}
.form-busca input[type=file]{border:1.5px dashed #cdd7e2;border-radius:9px;padding:9px 12px;font-size:13.5px;background:#f9fbfd}
@media(max-width:900px){.form-busca{grid-template-columns:repeat(2,minmax(0,1fr))}.form-busca .campo-q{grid-column:1/-1}}

/* resultado de busca (matéria) */
.res{border-left:4px solid var(--s)}
.res h4{font-size:16.5px;margin-bottom:4px}
.res h4 a{text-decoration:none;color:var(--p)}
.res h4 a:hover{text-decoration:underline;text-underline-offset:3px}
.res .res-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--txt3);margin-bottom:8px}
.res .res-meta span{background:#eef2f6;border-radius:6px;padding:2px 9px;font-family:'Raleway';font-weight:700;font-size:11.5px;color:var(--txt2)}
.res p{font-size:14px;color:var(--txt2)}
.res-total{margin:14px 0;color:var(--txt2);font-size:14px}
.res-total b{color:var(--p)}

/* página da edição: faixas de caderno e categorias */
.caderno-faixa{background:var(--p);color:#fff;-webkit-text-fill-color:#fff;font-family:'Raleway';font-weight:800;font-size:14.5px;letter-spacing:.05em;text-transform:uppercase;padding:11px 18px;border-radius:10px;border-left:5px solid var(--s);margin:26px 0 14px}
.categoria-sub{color:var(--p);font-size:16px;margin:16px 0 10px;display:flex;align-items:center;gap:8px}
.categoria-sub::before{content:'';width:4px;height:16px;background:var(--s);border-radius:2px;flex:0 0 4px}

/* conteúdo da matéria */
.materia-conteudo{margin-top:10px;line-height:1.7;overflow-x:auto;font-size:15px}
.materia-conteudo p{margin-bottom:.7em}
.materia-conteudo table{margin:.8em 0}
.materia-conteudo img{max-width:100%;height:auto}

/* aviso de retificação */
.aviso-retificacao{background:#fdf7e7;border-left:4px solid var(--s);border-radius:0 9px 9px 0;padding:10px 14px;font-size:13.5px;color:var(--txt2);margin:8px 0 12px}
.aviso-retificacao a{font-weight:700}

/* hash / autenticidade */
.hash-box{font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:12.5px;word-break:break-all;background:#eef2f6;border:1px solid var(--borda);border-radius:9px;padding:10px 13px;color:var(--txt);margin-top:4px}
.ok{color:#1a7f37;font-weight:700}
.erro{color:#b42318;font-weight:700}

/* snippet da busca no acervo */
mark{background:#fbe9b7;color:inherit;padding:0 3px;border-radius:3px;font-weight:700}
.res .trecho{font-size:14px;color:var(--txt2);line-height:1.65;margin-top:2px}

/* leitor de edicoes do acervo */
.leitor-nav{display:flex;justify-content:space-between;gap:10px;margin:18px 0 12px}
.leitor-nav a{font-family:'Raleway';font-weight:800;font-size:13px;color:var(--p);text-decoration:none;border:1.5px solid #cdd7e2;border-radius:20px;padding:7px 16px;background:#fff;transition:all .14s}
.leitor-nav a:hover{background:var(--p);border-color:var(--p);color:#fff}
.pdf-frame{width:100%;height:82vh;border:1px solid var(--borda);border-radius:12px;background:#fff;box-shadow:var(--sombra)}
.pdf-fallback{margin-top:10px;font-size:13px;color:var(--txt3)}

/* versao em texto do leitor */
.leitor-tabs{margin:16px 0 12px}
.texto-leitura{background:#fff;border:1px solid var(--borda);border-radius:12px;padding:28px 32px;box-shadow:var(--sombra);font-size:15px;line-height:1.75}
.texto-leitura p{margin-bottom:.85em}
.texto-leitura p:last-child{margin-bottom:0}
@media(max-width:900px){.texto-leitura{padding:20px 18px}}

/* abar estilo Governa: links à esquerda, acessibilidade à direita */
.abar-in{justify-content:space-between}
.abar-links,.abar-ac{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.abar button{background:none;border:1px solid rgba(255,255,255,.22);color:#cfdcec;-webkit-text-fill-color:#cfdcec;font-size:12px;font-weight:700;padding:4px 12px;border-radius:14px;cursor:pointer;font-family:inherit;transition:background .15s;display:inline-flex;align-items:center;gap:5px}
.abar button:hover{background:rgba(255,255,255,.14)}
@media(max-width:640px){.abar-links{display:none}}

/* alto contraste (padrão eMAG, ativado pelo botão da abar) */
html.contraste body{background:#000!important;background-image:none!important;color:#fff!important}
html.contraste .card,html.contraste .cartao,html.contraste .widget,html.contraste .ed-card,html.contraste .capa,html.contraste header.topo,html.contraste .texto-leitura,html.contraste .capa-auth,html.contraste .stats div{background:#0a0a0a!important;border-color:#555!important;color:#fff!important}
html.contraste h1,html.contraste h2,html.contraste h3,html.contraste h4,html.contraste .t-nome,html.contraste .capa-num .n,html.contraste .ed-card .n,html.contraste .capa-meta h3,html.contraste strong,html.contraste b{color:#fff!important}
html.contraste a{color:#ff0!important}
html.contraste .btn,html.contraste .hero-busca button{background:#ff0!important;color:#000!important;-webkit-text-fill-color:#000!important}
html.contraste .widget .wh,html.contraste .caderno-faixa{background:#000!important;color:#fff!important;border:1px solid #555}
html.contraste .chips a,html.contraste .capa-cad span{background:#000!important;color:#ff0!important;border-color:#555!important}
html.contraste .txt,html.contraste p,html.contraste .meta,html.contraste .dt,html.contraste .mt,html.contraste td{color:#eee!important}

/* ajustes de topo (paridade com o Governa): brasão maior, sociais, respiro do hero */
.brasao-img{height:88px}
.brasao-img img{height:88px}
.t-nome{font-size:30px}
.topo-soc{margin-left:auto;display:flex;gap:10px}
.topo-soc a{width:42px;height:42px;border:1px solid var(--borda);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--p);text-decoration:none;transition:.15s}
.topo-soc a svg{width:19px;height:19px}
.topo-soc a:hover{background:var(--p);color:#fff}
.hero{margin-top:26px}
@media(max-width:640px){.topo-soc{display:none}.t-nome{font-size:21px}.brasao-img,.brasao-img img{height:64px}}

/* rodape v2: bloco ICP + barra final */
.foot-icp{display:flex;gap:14px;align-items:center;max-width:420px;font-size:12.5px;line-height:1.55;color:#cfdcec;-webkit-text-fill-color:#cfdcec}
.foot-icp-logo{background:#fff;border-radius:8px;padding:6px 8px;display:flex;align-items:center;flex:0 0 auto}
.foot-icp-logo img{height:36px;width:auto;display:block}
.foot-bar{max-width:1120px;margin:22px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.15);text-align:center;font-size:12.5px;color:#9db4cf;-webkit-text-fill-color:#9db4cf}
.foot-bar a{color:var(--s);-webkit-text-fill-color:var(--s);text-decoration:none;font-weight:700}
.foot-bar a:hover{text-decoration:underline}

/* demonstrativos pre-formatados nas materias */
.materia-conteudo pre.doe-demo,pre.doe-demo{font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:12px;line-height:1.5;background:#f6f9fc;border:1px solid var(--borda);border-radius:9px;padding:14px 16px;overflow-x:auto;white-space:pre;margin:.8em 0}

/* materia: paragrafo comum justificado (override do left explicito do TipTap) */
.materia-conteudo p{text-align:justify}
.materia-conteudo p[style*="text-align: left"]{text-align:justify!important}
.materia-conteudo p[style*="text-align: center"]{text-align:center!important}
.materia-conteudo p[style*="text-align: right"]{text-align:right!important}

/* form: campos alinhados pela base (rotulos de alturas diferentes) e file input no tema */
.form-busca>div{justify-content:flex-end}
.form-busca input[type=file]::file-selector-button{background:var(--p);color:#fff;border:0;border-radius:8px;padding:8px 16px;font-family:'Raleway';font-weight:800;font-size:12.5px;cursor:pointer;margin-right:12px}
.form-busca input[type=file]::file-selector-button:hover{filter:brightness(1.15)}

/* ============================================================
   MOBILE FIX — sessão 14/07/2026
   Estouro lateral no celular (form-busca, imagens, tabelas)
   ============================================================ */

/* blindagem geral: nada rola na horizontal.
   overflow-x:clip (e não hidden) para NÃO quebrar o position:sticky do menu */
html,body{max-width:100%;overflow-x:clip}
@supports not (overflow-x:clip){html,body{overflow-x:hidden}}

/* mídia nunca ultrapassa o container */
img,svg,video,iframe,embed,object{max-width:100%}
img{height:auto}

/* itens de grid podem encolher (min-width:auto é a causa clássica de estouro) */
.form-busca>div{min-width:0}
.form-busca input,.form-busca select{width:100%;min-width:0}

/* telefone: formulário em coluna única + respiro reduzido */
@media(max-width:640px){
  .form-busca{grid-template-columns:1fr}
  main{padding:0 14px;margin:20px auto}
  .hero-in{padding:38px 16px 44px}
  .capa-in{padding:20px 18px}
  .capa-auth{padding:12px 18px}
  .card{padding:16px}
  .pdf-frame{height:70vh}
}

/* tabelas largas: rolagem interna em vez de estourar a página
   (exceto o calendário, que é compacto e usa table-layout:fixed) */
@media(max-width:900px){
  table:not(.cal){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* ===== PAREAMENTO GOVERNA (S4) — topo/abar/menu identicos ao portal ===== */
/* barra superior: links da esquerda em texto puro, hover sublinhado amarelo */
.abar-links a{border:0;padding:4px 10px;border-radius:6px;min-height:32px;display:inline-flex;align-items:center}
.abar-links a:hover{background:none;color:#fff;box-shadow:inset 0 -2px 0 var(--s,#f5a623)}
/* botoes de acessibilidade: icones amarelos, hover branco (detalhe Governa) */
.abar-ac button,.abar-ac a{min-height:32px;display:inline-flex;align-items:center;gap:5px;padding:6px 14px;background:none;border:1px solid rgba(255,255,255,.22);color:#cfdcec;-webkit-text-fill-color:#cfdcec;font-size:12px;font-weight:700;border-radius:14px;cursor:pointer;text-decoration:none;font-family:inherit;transition:background .15s}
.abar-ac button:hover,.abar-ac a:hover{background:rgba(255,255,255,.14)}
.abar-ac svg{flex:0 0 auto;opacity:.9;color:var(--s,#f5a623)}
.abar-ac button:hover svg,.abar-ac a:hover svg{color:#fff}
/* topo: proporcoes do Governa */
.topo-in{padding-top:16px;padding-bottom:16px}
.brasao-img{width:104px;flex:0 0 104px;height:80px;background:#fff;display:flex;align-items:center;justify-content:center}
.brasao-img img{height:80px;width:auto}
.t-tag{font-size:12px;letter-spacing:.15em;font-weight:700}
.t-nome{font-size:33px;line-height:1.02;letter-spacing:.03em}
.t-uf{font-size:12px;letter-spacing:.22em}
.topo-soc a{width:38px;height:38px;border-radius:9px}
.topo-soc a svg{width:18px;height:18px}
/* menu: altura e centralizacao do Governa */
.menu a{padding:15px 17px}
.menu-in{align-items:center;gap:18px}
@media(min-width:981px){.menu-in{justify-content:center}}
@media(max-width:640px){.t-nome{font-size:21px}.brasao-img{width:auto;flex:0 0 auto;height:64px}.brasao-img img{height:64px}}
/* ===== fim PAREAMENTO GOVERNA ===== */

/* ajuste fino: brasao um pouco maior (pareamento visual) */
.brasao-img{width:112px;flex:0 0 112px;height:92px}
.brasao-img img{height:92px}
@media(max-width:640px){.brasao-img{width:auto;flex:0 0 auto;height:64px}.brasao-img img{height:64px}}

/* ajuste fino v2: brasao 86px */
.brasao-img{width:108px;flex:0 0 108px;height:86px}
.brasao-img img{height:86px}
@media(max-width:640px){.brasao-img{width:auto;flex:0 0 auto;height:64px}.brasao-img img{height:64px}}

/* ===== MOBILE TOPO/MENU (S4) — barra compacta + menu hamburguer ===== */
.menu-burger{display:none;background:transparent;border:0;cursor:pointer;padding:14px 16px}
.menu-burger span{display:block;width:24px;height:2.5px;background:#fff;border-radius:2px;margin:5px 0;transition:.25s}
.menu.aberto .menu-burger span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.menu.aberto .menu-burger span:nth-child(2){opacity:0}
.menu.aberto .menu-burger span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
@media(max-width:640px){
  .abar-ac a[href*="acessibilidade"]{display:none}
  .abar-in{justify-content:center;gap:6px}
  .abar-ac{flex-wrap:nowrap;justify-content:center;gap:6px}
  .abar-ac button,.abar-ac a{font-size:11.5px;padding:4px 10px;min-height:28px}
}
@media(max-width:768px){
  nav.menu .menu-in{flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;gap:0;min-height:50px;position:relative}
  .menu-burger{display:block;position:absolute;top:0;right:0}
  .menu-in > a{display:none;border-top:1px solid rgba(255,255,255,.12);padding:14px 18px}
  .menu.aberto .menu-in > a{display:block}
  .menu.aberto .menu-in > a:first-of-type{margin-top:50px}
}
/* ===== fim MOBILE TOPO/MENU ===== */

/* DOE-ACERVO-WIDGET */
.ac-lin{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:5px 0;font-size:.9rem;text-decoration:none;color:inherit;}
                    a.ac-lin span{color:#1d4f8f;}
                    a.ac-lin:hover span{text-decoration:underline;}
                    .ac-lin b{font-weight:700;white-space:nowrap;}
                    .ac-tit{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5a6b7c;margin:10px 0 2px;}
                    .ac-tot{border-top:1px solid #e3e9f0;margin-top:6px;padding-top:8px;}
                    .ac-nota{font-size:.72rem;color:#5a6b7c;line-height:1.5;margin:8px 0 0;}
