@import url('/assets/elecciones-publico-902e868a9972735d.css');
:root{--ed-paper:#FCFBF8;--ed-ink:#1B302B;--ed-secondary:#54635D;--ed-rule:#D8E0D9;--ed-accent:#146454;--ed-soft:#E3EEE7;--ed-track:#DDE7DF;--ed-serif:Georgia,'Times New Roman',serif;--ed-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--bg:var(--ed-paper);--bg2:var(--ed-paper);--bg3:var(--ed-soft);--border:var(--ed-rule);--border-light:var(--ed-rule);--text:var(--ed-ink);--text2:var(--ed-secondary);--text3:var(--ed-secondary);--accent:var(--ed-accent);color-scheme:light}@media(prefers-color-scheme:dark){:root{--ed-paper:#18211E;--ed-ink:#E8EEE9;--ed-secondary:#B7C4BD;--ed-rule:#394B43;--ed-accent:#85CFB2;--ed-soft:#2D4137;--ed-track:#334B3D;--bg:var(--ed-paper);--bg2:var(--ed-paper);--bg3:var(--ed-soft);--border:var(--ed-rule);--border-light:var(--ed-rule);--text:var(--ed-ink);--text2:var(--ed-secondary);--text3:var(--ed-secondary);--accent:var(--ed-accent);color-scheme:dark}html,body{background:var(--ed-paper);color:var(--ed-ink)}.article{background:var(--ed-paper)}.topnav{background:var(--ed-paper)}}.topnav{background:var(--ed-paper)}
/* Identidad editorial compartida: papel, tinta, verde y titulares en serif. */
body{background:var(--ed-paper);color:var(--ed-ink)}
.municipios-publicos{box-sizing:border-box;max-width:var(--ancho-pagina,1600px);margin:auto;padding:40px var(--margen-pagina,24px) 64px;font:16px/1.65 var(--ed-sans)}
.municipios-publicos>*{max-width:1000px}
.municipios-publicos h1{font:400 clamp(32px,4.3vw,52px)/1.12 var(--ed-serif);letter-spacing:-1px;margin:14px 0 24px;text-wrap:balance}
.municipios-publicos h2{font:400 clamp(24px,2.5vw,32px)/1.2 var(--ed-serif);margin:0 0 20px}
.municipios-publicos header{padding:24px 0 32px;border-bottom:1px solid var(--ed-rule)}
.municipios-publicos section{padding:32px 0;border-bottom:1px solid var(--ed-rule)}
.mun-entrada{font-size:clamp(18px,1.7vw,21px);line-height:1.6}
.mun-kicker,.mun-nota,.mun-ruta,.mun-buscador label,#estado-busqueda{font-size:13px;color:var(--ed-secondary)}
.mun-kicker{letter-spacing:.08em;text-transform:uppercase}
.municipios-publicos a{color:var(--ed-accent);text-underline-offset:3px}
.municipios-publicos p{margin:12px 0}
.mun-tabla{overflow-x:auto}
.mun-tabla table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.mun-tabla caption{text-align:left;color:var(--ed-secondary);font-size:13px;margin-bottom:12px}
.mun-tabla th,.mun-tabla td{padding:10px 8px;border-bottom:1px solid var(--ed-rule);text-align:right}
.mun-tabla th:first-child{text-align:left;overflow-wrap:anywhere;width:55%}
.mun-tabla th{font-weight:500}.mun-tabla thead th{font-size:12px;color:var(--ed-secondary)}
.mun-tabla abbr{text-decoration:none}.mun-tabla abbr[title]{cursor:help}
.municipios-publicos details{border-top:1px solid var(--ed-rule);padding:16px 0}
.municipios-publicos summary{cursor:pointer;font-size:18px;color:var(--ed-accent)}
.mun-lista{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.mun-lista li{min-width:0;padding:12px 0;border-bottom:1px solid var(--ed-rule);overflow-wrap:anywhere}
.mun-lista li span{display:block;font-size:12px;color:var(--ed-secondary)}
.mun-buscador label{display:block;margin-bottom:8px}
#buscar-municipio{box-sizing:border-box;width:100%;max-width:600px;padding:14px;border:1px solid var(--ed-rule);border-radius:3px;font:inherit;background:var(--ed-paper);color:var(--ed-ink)}
.municipios-publicos :focus-visible,.mun-saltar:focus{outline:2px solid var(--ed-accent);outline-offset:4px}
.mun-saltar{position:absolute;top:-100px;left:16px;background:var(--ed-paper);color:var(--ed-ink);z-index:1000;padding:12px}.mun-saltar:focus{top:12px}
@media(max-width:760px){.municipios-publicos{padding:24px 18px 40px}.mun-lista{grid-template-columns:1fr}.mun-tabla table{font-size:14px}.mun-tabla th,.mun-tabla td{padding:10px 4px}.municipios-publicos section{padding:26px 0}}
/* Listados: municipio o provincia y población comparten fila, sin separadores. */
.mun-lista-fila li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border:0;padding:7px 0}
.mun-lista-fila li a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mun-lista-fila li span{flex-shrink:0;font-size:13px;white-space:nowrap}
.mun-saltos{display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px 0;font-size:14px}
.mun-grafico-votos{margin:24px 0}
.mun-grafico-votos figcaption{font-size:14px;color:var(--ed-secondary);margin:0 0 20px}
.mun-barras,.mun-comp-filas{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.mun-barra-cabecera,.mun-comp-cabecera{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:7px;font-size:14px}
.mun-candidatura{font-weight:600;overflow-wrap:anywhere;min-width:0}
.mun-barra-cifra{flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.mun-barra-cifra strong{font-weight:600}
.mun-barra-cifra small{display:inline-block;min-width:70px;text-align:right;font-size:12px;color:var(--ed-secondary)}
.mun-barra-pista,.mun-comp-pista{display:block;background:var(--ed-soft);border-radius:2px;overflow:hidden;height:14px}
.mun-barra-pista>span,.mun-comp-pista>span{display:block;height:100%;border-radius:2px}
.mun-escala{display:flex;justify-content:space-between;color:var(--ed-secondary);font-size:11px;font-variant-numeric:tabular-nums;margin:0 0 14px}
.municipios-publicos .mun-resto{margin:20px 0 0;padding:12px 0;border:0}
.municipios-publicos .mun-resto summary{font:14px/1.5 var(--ed-sans)}
.municipios-publicos .mun-resto[open] summary{margin-bottom:20px}
.mun-tabla-completa{margin-top:24px}
.mun-controles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:24px 0}
.mun-controles[hidden]{display:none}
.mun-controles label{font-size:13px;color:var(--ed-secondary);min-width:0}
.mun-controles select{display:block;width:100%;margin-top:7px;min-width:0;padding:10px 12px;background:var(--ed-paper);color:var(--ed-ink);border:1px solid var(--ed-rule);border-radius:3px;font:14px/1.5 var(--ed-sans)}
.mun-comp-estado{font-size:13px;color:var(--ed-secondary)}
.mun-comp-leyenda{list-style:none;display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0;padding:0;font-size:13px}
.mun-comp-leyenda li{display:flex;align-items:center;gap:8px}
.mun-comp-leyenda li>span{display:inline-block;width:25px;height:10px}
.mun-serie-a{background:var(--ed-accent)}
.mun-serie-b{background:repeating-linear-gradient(135deg,var(--ed-secondary) 0,var(--ed-secondary) 2px,var(--ed-soft) 2px,var(--ed-soft) 4px)}
.mun-comp-fila{padding:7px 0}
.mun-comp-cambio{flex-shrink:0;font-size:12px;color:var(--ed-secondary);font-variant-numeric:tabular-nums}
.mun-comp-serie{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:12px;margin-top:7px}
.mun-comp-pista{height:12px}
.mun-comp-valor{text-align:right;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.mun-comparacion{scroll-margin-top:90px}
@media(max-width:500px){.mun-controles{grid-template-columns:1fr}.mun-comp-serie{grid-template-columns:minmax(0,1fr) 94px;gap:8px}.mun-barra-cifra small{min-width:63px}.mun-comp-cabecera{gap:10px}.mun-lista-fila li{gap:12px}.mun-lista-fila li span{font-size:12px}}

.municipios-publicos p.mun-comp-nombre-anterior{font-size:12px;color:var(--ed-secondary);margin:0 0 10px;line-height:1.5}
.mun-resumen-lista{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0}
.mun-resumen-eleccion{min-width:0;padding-top:14px;border-top:2px solid var(--ed-rule)}
.municipios-publicos .mun-resumen-eleccion h3{font:600 15px/1.5 var(--ed-sans);margin:0 0 14px}
.mun-resumen-eleccion p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.mun-resumen-eleccion .mun-nota{font-size:12px;margin-bottom:4px}
.mun-resumen-ganador{margin-top:0!important}
.mun-enlace-prevision{font-size:15px;line-height:1.7;margin:24px 0!important}
.mun-claves{font-size:15px;line-height:1.7;margin:12px 0}
.mun-faq h3{font-size:17px;margin:20px 0 6px}
.mun-proyeccion-titular{font-size:17px;line-height:1.6}
.mun-proyeccion-bloque th span{font-weight:400;color:var(--ed-secondary);font-size:13px}
.mun-comp-fila .mun-serie-a{background:var(--mun-color,var(--ed-accent))}
.mun-comp-fila .mun-serie-b{background:repeating-linear-gradient(135deg,var(--mun-color,var(--ed-secondary)) 0,var(--mun-color,var(--ed-secondary)) 2px,var(--ed-soft) 2px,var(--ed-soft) 4px)}
@media(max-width:760px){.mun-resumen-lista{grid-template-columns:1fr;gap:20px}.mun-resumen-eleccion{padding-top:12px}}
.mun-comp-leyenda .mun-serie-a{background:var(--ed-secondary)}
/* Contrato v3: cuatro cifras, perfil y series estáticas con mejora progresiva. */
.municipios-publicos{min-width:0;overflow-wrap:anywhere}
.municipios-publicos *{box-sizing:border-box}
.municipios-publicos [hidden]{display:none!important}
.mun-titular{font:400 clamp(21px,2.5vw,29px)/1.4 var(--ed-serif)}
.mun-cifras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0}
.mun-cifras>div{padding-top:12px;border-top:2px solid var(--ed-rule)}
.mun-cifras p{font-size:12px;color:var(--ed-secondary)}
.mun-cifras strong{font-size:15px;font-weight:600}
.mun-mapa{float:right;width:180px;max-width:40%;margin:0 0 12px 20px}
.mun-perfil{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mun-tarjeta{min-width:0;padding-top:12px;border-top:1px solid var(--ed-rule)}
.mun-tarjeta h3{font-size:16px;font-weight:600;margin:0}
.mun-tarjeta p{font-size:13px}
.mun-tarjeta .mun-valor{font:400 24px/1.3 var(--ed-serif);margin:12px 0}
.mun-tarjeta summary{font-size:13px}
.mun-tabla{max-width:100%;min-width:0}
.tabla-scroll table{min-width:620px}
.tabla-scroll th:first-child{width:auto;min-width:140px}
.mun-serie{margin:20px 0;min-width:0;max-width:100%}
.mun-serie-desplazable{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.mun-serie svg{display:block;width:100%;min-width:var(--mun-serie-ancho,900px);height:320px;max-height:none;color:var(--ed-secondary)}
.mun-serie .mun-eje-serie text{font:13px var(--ed-sans);fill:currentColor;text-anchor:end}
.mun-serie figcaption{font-size:14px}
.mun-leyenda-serie{display:flex;gap:8px 18px;flex-wrap:wrap;list-style:none;padding:0;font-size:12px}
.mun-leyenda-serie li{display:flex;align-items:center;gap:6px}
.mun-leyenda-serie span{display:inline-block;width:16px;height:3px}
.mun-serie .mun-leyenda-serie{display:flex;flex-wrap:wrap;justify-content:flex-start;list-style:none;width:auto;max-width:100%;margin:12px 0 0;padding:0}
.mun-serie .mun-leyenda-serie li{flex:0 1 auto;min-width:0;max-width:100%;margin:0;padding:0;overflow-wrap:anywhere}
.mun-serie .mun-leyenda-serie span{flex:0 0 16px}
.mun-distribucion{width:100%;height:26px;color:var(--ed-secondary)}
.mun-chispa{width:100%;max-width:200px;height:50px;color:var(--ed-accent)}
.mun-pestanas{display:flex;gap:8px;flex-wrap:wrap;padding-top:20px}
.mun-pestanas button,.mun-copiar-cita{font:inherit;cursor:pointer;border:1px solid var(--ed-rule);background:var(--ed-paper);color:var(--ed-accent);padding:8px 14px}
.mun-pestanas button[aria-selected=true]{color:var(--ed-paper);background:var(--ed-accent)}
.mun-panel{scroll-margin-top:85px}
.mun-faq summary h3{display:inline;font-size:15px;margin:0}
.mun-faq details{padding:10px 0}
#consultas summary h2{display:inline;margin:0}
@media(min-width:1100px){body:has(.mun-elecciones) .municipios-publicos>*{max-width:1100px}.mun-perfil{grid-template-columns:repeat(4,minmax(0,1fr))}.mun-tarjeta p{line-height:1.5}body:has(.mun-elecciones) .municipios-publicos section{padding:16px 0}body:has(.mun-elecciones) .municipios-publicos p{margin:9px 0}#distintivo{font-size:15px}.mun-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.mun-faq h2{grid-column:1/-1}.mun-faq summary h3{font-size:14px}}
@media(max-width:899px){.mun-cifras{grid-template-columns:repeat(2,minmax(0,1fr))}.mun-perfil{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:899px){.mun-serie-ayuda{display:block}}
@media(max-width:500px){.mun-perfil{grid-template-columns:1fr}.mun-mapa{width:110px}.mun-cifras{gap:12px}.mun-cifras strong{font-size:14px}}
/* Mapas de navegación: cada recinto es un enlace; el listado sigue debajo. */
.municipios-publicos .mun-navmapa{float:none;display:block;width:auto;max-width:1000px;margin:0 0 32px;padding:0;border:0}
.mun-navmapa svg{display:block;width:100%;height:auto;max-height:78vh}
.mun-navmapa a path,.mun-navmapa a circle{fill:var(--c,color-mix(in srgb,var(--ed-ink) 12%,var(--ed-paper)));stroke:var(--ed-paper);stroke-width:.6;vector-effect:non-scaling-stroke;transition:opacity .12s}
.mun-navmapa a:hover path,.mun-navmapa a:hover circle,.mun-navmapa a:focus-visible path,.mun-navmapa a:focus-visible circle{opacity:.6;stroke:var(--ed-ink);stroke-width:1.5}
.mun-navmapa a:focus-visible{outline:none}
.mun-navmapa .mun-navmapa-fondo{fill:color-mix(in srgb,var(--ed-ink) 7%,var(--ed-paper))}
.mun-navmapa .mun-navmapa-recuadro{fill:none;stroke:var(--ed-rule);stroke-width:1;vector-effect:non-scaling-stroke}
.mun-navmapa figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin-top:10px;font-size:13px;color:var(--ed-secondary)}
.mun-navmapa-nombre{font-weight:500;color:var(--ed-ink);min-height:1.65em}
.mun-navmapa-leyenda{flex-basis:100%}
.mun-navmapa-leyenda p{margin:4px 0 8px}
.mun-navmapa-leyenda ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px}
.mun-navmapa-leyenda li{display:flex;align-items:center;gap:6px;color:var(--ed-ink)}
.mun-navmapa-leyenda li span{color:var(--ed-secondary);font-variant-numeric:tabular-nums}
.mun-navmapa-leyenda i{display:inline-block;width:12px;height:12px;border-radius:2px}
.mun-navmapa-leyenda i.mun-navmapa-sin{background:color-mix(in srgb,var(--ed-ink) 12%,var(--ed-paper))}
