/* Leituras territoriais: identidade e controles herdados da interface publicada. */
.perfil-navegacao { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; padding:1rem 0; margin-bottom:1.25rem; border-bottom:1px solid var(--borda-forte); }
.perfil-navegacao a { padding:.45rem .2rem; }
.perfil-navegacao a[aria-current="page"] { font-weight:800; color:var(--tinta); text-decoration-thickness:3px; text-underline-offset:.4rem; }
.perfil-filtros { display:flex; flex-wrap:wrap; align-items:end; gap:1rem; margin:1.5rem 0 2rem; }
.perfil-filtros label { display:flex; flex-direction:column; gap:.4rem; max-width:100%; font-weight:700; }
.perfil-filtros select { max-width:100%; width:15rem; min-height:2.75rem; }
.perfil-leituras p { max-width:75ch; }
.perfil-leituras section { margin:2rem 0; }
.perfil-leituras details { margin:.65rem 0; }
.perfil-leituras summary { cursor:pointer; font-weight:700; }
.perfil-tabela { overflow-x:auto; max-width:100%; }
.perfil-tabela table { min-width:45rem; width:100%; }
.perfil-tabela th, .perfil-tabela td { vertical-align:top; padding:.8rem; }
.perfil-tabela caption { text-align:left; padding:.8rem 0; font-weight:700; }
.perfil-unidades { list-style:none; padding:0; }
.perfil-unidades > li { padding:1.2rem 0; border-bottom:1px solid var(--borda-forte); }
.perfil-unidades h4 { font-size:1.1rem; margin:0; }
.perfil-mapa { height:28rem; margin:1rem 0; background:var(--acento-claro); border:1px solid var(--borda-forte); }
.perfil-mapa[hidden] { display:none; }
.perfil-leituras .perfil-mapa { background:#ebf1f5; }
.perfil-leituras :focus-visible, .perfil-navegacao :focus-visible { outline:3px solid var(--foco); outline-offset:3px; }
@media(max-width:600px) { .perfil-filtros label, .perfil-filtros select { width:100%; } .perfil-mapa { height:22rem; } }

.perfil-leituras button { min-height:2.75rem; padding:.65rem 1.1rem; border:1px solid var(--acento); border-radius:var(--raio); background:var(--acento); color:var(--superficie); font:inherit; font-weight:700; cursor:pointer; }
.perfil-leituras button:hover { background:var(--noite); }
.perfil-leituras button:disabled { cursor:default; background:var(--tinta-suave); border-color:var(--tinta-suave); }
.perfil-pergunta { font-size:1.2rem; font-weight:700; text-wrap:balance; }
.perfil-resumo { padding-top:1rem; border-top:1px solid var(--borda-forte); }
.perfil-resumo h2, .perfil-grafico h3 { text-wrap:balance; }
.perfil-grafico { margin:1.5rem 0 2rem; max-width:60rem; padding:1.25rem 0; border-top:1px solid var(--borda-forte); border-bottom:1px solid var(--borda-forte); }
.perfil-grafico h3 { margin:0 0 .5rem; }
.perfil-barras { list-style:none; padding:0; margin:1.5rem 0; }
.perfil-barras li { display:grid; grid-template-columns:minmax(10rem, 20rem) minmax(4rem, 1fr) 3rem; align-items:center; gap:1rem; margin:1rem 0; }
.perfil-barra-rotulo { overflow-wrap:anywhere; }
.perfil-barra-trilho { height:1.1rem; background:var(--acento-claro); border-inline-start:1px solid var(--tinta); }
.perfil-barra-trilho > span { display:block; height:100%; background:var(--acento); }
.perfil-barras strong { font-variant-numeric:tabular-nums; text-align:right; }
.perfil-barra-percentual { display:block; color:var(--suave); font-size:.85rem; font-weight:400; white-space:nowrap; }
.perfil-grafico-fonte { font-size:.95rem; }
.perfil-decisao { max-width:75ch; }
.perfil-detalhes, .perfil-cobertura { padding:1rem 0; border-top:1px solid var(--borda-forte); }
.perfil-exportacao { margin:1rem 0; }
.perfil-introducao-com-mapa { display:grid; grid-template-columns:minmax(0,1fr) 19rem; align-items:center; gap:2rem; }
.perfil-minimapa { margin:0; max-width:320px; }
.perfil-minimapa-svg { display:block; width:100%; max-width:320px; height:auto; }
.perfil-minimapa-svg path { fill:#e3e5e3; stroke:#677674; stroke-width:.5; }
.perfil-minimapa-svg path[data-regiao="1"] { fill:#bdd3e6; stroke:var(--acento); stroke-width:.7; }
.perfil-minimapa-svg path[data-selecionado="1"] { fill:#005a92; stroke:#00294d; stroke-width:1.5; }
.perfil-minimapa figcaption { font-size:.9rem; max-width:18rem; }
.perfil-minimapa-legenda { display:flex; flex-direction:column; margin:.5rem 0; }
@media(max-width:700px) { .perfil-introducao-com-mapa { grid-template-columns:1fr; gap:1rem; } .perfil-minimapa { max-width:280px; } .perfil-minimapa figcaption { max-width:100%; } }
@media(max-width:600px) { .perfil-barras li { grid-template-columns:minmax(0, 1fr) 3rem; gap:.5rem; } .perfil-barra-rotulo { grid-column:1 / -1; } .perfil-grafico { margin-inline:0; } }
