/* Sistema gráfico: Fundamentos.dc.html + Graficos.dc.html, 15 oct. 2026. */
.hemicycle-tool{--chamber-line:#DDD8CE;--chamber-paper:#F5F2EA;--chamber-text:#171717;--chamber-secondary:#5E5A54;--chamber-accent:#0F5C6E;--chamber-selected:#E2EDEF;--chamber-control:#8A847A;--chamber-serif:var(--font-editorial,"Literata",Georgia,serif);--chamber-sans:var(--font-ui,"Libre Franklin",system-ui,sans-serif);color:var(--chamber-text);font-family:var(--chamber-sans)}
.hemicycle-tool h2{font-family:var(--chamber-serif);text-wrap:balance}.hemicycle-tool p{font-family:var(--chamber-sans)}
.chamber-table-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.chamber-table-actions a{font-size:14px;text-decoration:underline;text-underline-offset:3px}
#hemicycle-controls{border-top:1px solid var(--chamber-text);border-bottom:1px solid var(--chamber-line);padding:24px 0}
#hemicycle-controls fieldset{border:0;padding:0;margin:0;min-width:0}.chamber-control-legend{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
.hemicycle-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:24px;align-items:end}.hemicycle-controls label{margin:0;min-width:0}.hemicycle-controls label>span{font-size:13px;line-height:16px;letter-spacing:.08em}.hemicycle-controls select{width:100%;min-width:0;min-height:48px;font:500 16px/24px var(--chamber-sans);padding:12px;border:1px solid var(--chamber-control);border-radius:2px;background:#FFFEFA;color:var(--chamber-text)}.hemicycle-controls button{min-height:48px;white-space:nowrap;font:600 16px/24px var(--chamber-sans);border-radius:2px}.chamber-swap{font-size:20px;line-height:1}.chamber-swap span{font-size:14px}
.chamber-options{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0 16px;font-size:16px}.chamber-options label{display:flex;align-items:center;gap:12px;min-height:44px;font-size:16px;line-height:24px;font-weight:600;margin:0;cursor:pointer}.chamber-options input,.hemicycle-table input{appearance:auto;width:20px;height:20px;min-width:20px;margin:0;padding:0;accent-color:var(--chamber-accent)}.chamber-options a{font-size:14px;text-decoration:underline;text-underline-offset:3px}.chamber-options label a{margin-left:12px;color:var(--chamber-secondary)}
.chamber-presets{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.chamber-presets>span{font-size:13px;line-height:20px;margin-right:4px;color:var(--chamber-secondary)}.hemicycle-tool .chamber-presets button{min-height:44px;border:1px solid var(--chamber-control);border-radius:2px;padding:8px 12px;background:transparent;color:var(--chamber-text);font:500 14px/20px var(--chamber-sans)}.hemicycle-tool .chamber-presets button:hover{background:var(--chamber-paper)}.chamber-status{font-size:14px;line-height:20px;min-height:20px;margin:12px 0 8px}.hemicycle-tool button:disabled{color:var(--chamber-secondary);background:#EDEAE3;border-color:var(--chamber-control);opacity:1;cursor:default}
.hemicycle-tool :is(button,select,input,a,summary):focus-visible{outline:2px solid var(--chamber-accent);outline-offset:3px}
.chamber-reading-key{margin:32px 0 24px;display:grid;gap:12px}.chamber-reading-key .eyebrow{font:700 13px/16px var(--chamber-sans);letter-spacing:.08em;margin:0;color:var(--chamber-secondary)}.chamber-reading-key h2{font-size:32px;line-height:38px;margin:0}.chamber-reading-key>p:not(.eyebrow){font-size:15px;line-height:22px;margin:0;color:var(--chamber-secondary)}.chamber-reading-key .chamber-grouping-note{max-width:900px;border-left:2px solid var(--chamber-control);padding-left:16px}.chamber-grouping-note strong{font-weight:600;color:var(--chamber-text)}.chamber-grouping-note a{text-decoration:underline;text-underline-offset:3px}
.hemicycle-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:24px 0 0;scroll-margin-top:24px}.hemicycle-panel{min-width:0;margin:0;padding:16px 24px 24px 0}.hemicycle-panel+.hemicycle-panel{border-left:1px solid var(--chamber-line);padding-left:24px;padding-right:0}.hemicycle-panel>header{display:block;border:0;padding:0;margin:0;max-width:none}.hemicycle-panel .eyebrow{font:700 13px/16px var(--chamber-sans);letter-spacing:.08em;color:var(--chamber-secondary);margin:0 0 12px}.hemicycle-panel h2{font-size:26px;line-height:32px;font-weight:700;margin:0 0 8px;letter-spacing:0}.hemicycle-panel header>p:last-child{font-size:14px;line-height:20px;color:var(--chamber-secondary);margin:0}
.compared-chamber{display:block;width:100%;height:auto;overflow:visible;margin:24px 0 12px}.compared-chamber circle{stroke:#FFFEFA;stroke-width:.5}.compared-chamber circle[fill="#deded7"]{fill:#DDD8CE}.chamber-majority-line{stroke:var(--chamber-text);stroke-width:1.5;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.chamber-center-number{font:400 56px/1 var(--chamber-serif);fill:var(--chamber-text);font-variant-numeric:tabular-nums}.chamber-center-label{font:700 13px/16px var(--chamber-sans);letter-spacing:.08em;fill:var(--chamber-text)}.chamber-majority-label{font:400 14px/20px var(--chamber-sans);fill:var(--chamber-secondary)}.chamber-coalition{border-top:1px solid var(--chamber-line);padding-top:16px;min-height:76px}.chamber-coalition p{font-size:15px;line-height:22px;color:var(--chamber-text);font-weight:600;margin:0 0 8px}.chamber-leader{font-size:14px;line-height:20px;color:var(--chamber-secondary)}.chamber-leader strong{font-weight:500;color:var(--chamber-text)}.chamber-panel-source{font-size:14px;line-height:20px;margin:16px 0 0;color:var(--chamber-secondary);overflow-wrap:anywhere}.chamber-panel-source a{text-decoration:underline;text-underline-offset:3px}.chamber-progress{position:relative;height:6px;background:#DDD8CE;margin:16px 0 8px}.chamber-progress span{display:block;height:100%;background:var(--chamber-text)}.chamber-progress i{position:absolute;left:50.285714%;top:-5px;width:0;height:16px;border-left:1.5px dashed var(--chamber-text)}
.hemicycle-selection{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--chamber-paper);border-top:1px solid var(--chamber-text);padding:24px;margin:24px 0 48px}.hemicycle-selection .eyebrow{font:700 13px/16px var(--chamber-sans);letter-spacing:.08em;color:var(--chamber-secondary);margin:0 0 12px}.hemicycle-selection h2{font-size:32px;line-height:38px;margin:0 0 12px}.hemicycle-selection p:last-child{font-size:16px;line-height:24px;margin:0;max-width:730px}.hemicycle-net{text-align:right;flex-shrink:0}.hemicycle-net strong{font:400 56px/1 var(--chamber-serif);display:block;color:var(--chamber-text);font-variant-numeric:tabular-nums}.hemicycle-net span{font-size:14px;line-height:20px;display:block;color:var(--chamber-secondary);margin-top:8px}
.hemicycle-table-section{margin:0 0 48px;scroll-margin-top:24px}.hemicycle-table-section .section-head h2{font-size:32px;line-height:38px}.hemicycle-table-section .quiet{max-width:900px;font-size:15px;line-height:22px;color:var(--chamber-secondary)}.hemicycle-table-section .result-table{overflow-x:auto;max-width:100%}.hemicycle-table{min-width:640px;font-family:var(--chamber-sans);font-variant-numeric:tabular-nums}.hemicycle-table caption{font-size:14px;line-height:20px;font-weight:400;color:var(--chamber-secondary)}.hemicycle-table thead th{font-size:13px;line-height:20px;background:var(--chamber-paper);font-weight:600}.hemicycle-table td,.hemicycle-table th{padding:16px 12px;border-color:var(--chamber-line)}.hemicycle-table tbody th{background:transparent;font-size:16px;line-height:24px;width:38%;font-weight:500}.hemicycle-table tbody label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;min-height:24px;font-size:15px;line-height:22px;cursor:pointer}.hemicycle-table tbody td{font-size:16px;line-height:24px}.hemicycle-table td:first-child{width:52px}.hemicycle-table td:nth-child(3),.hemicycle-table td:nth-child(4),.hemicycle-table thead th:nth-child(3),.hemicycle-table thead th:nth-child(4){text-align:right}.chamber-swatch{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0}.chamber-group-tag{flex-basis:100%;padding-left:20px;font-size:13px;line-height:20px;font-weight:400;color:var(--chamber-secondary)}.hemicycle-table .chamber-row-selected{background:var(--chamber-selected)}.hemicycle-table .chamber-row-selected th{box-shadow:inset 2px 0 var(--chamber-accent);font-weight:700}.hemicycle-table tfoot th{background:transparent}.hemicycle-table tfoot th,.hemicycle-table tfoot td{border-top:1px solid var(--chamber-text);font-weight:700;font-size:16px;line-height:24px}.hemicycle-table tfoot td:nth-child(2){text-align:right}
.chamber-difference{width:128px;text-align:right}.chamber-difference>span:first-child{display:block;min-width:36px}.chamber-difference-bar{display:block;height:3px;width:72px;background:#EDEAE3;margin:8px 0 0 auto}.chamber-difference-bar i,.chamber-difference-bar .loss{display:block;height:100%;background:var(--chamber-text)}.hemicycle-method{margin-top:32px}.hemicycle-method>h2{font-size:32px;line-height:38px}.hemicycle-method p,.hemicycle-method li{font-size:15px;line-height:24px}.hemicycle-method a{text-decoration:underline;text-underline-offset:3px}.chamber-source-detail{padding:16px 0;border-top:1px solid var(--chamber-line)}.chamber-source-detail summary{font:600 16px/24px var(--chamber-sans);cursor:pointer}.chamber-source-detail ul{padding-left:24px}.chamber-more{display:flex;flex-wrap:wrap;gap:16px 32px;font-size:15px;line-height:24px;padding:24px 0;border-top:1px solid var(--chamber-line)}
@media(max-width:1023px){.hemicycle-controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px}.hemicycle-controls #chamber-share{grid-column:1/-1;justify-self:start}.chamber-swap span{display:none}.hemicycle-controls .chamber-swap{padding:8px 12px}.chamber-options{align-items:start;flex-direction:column;gap:12px}.hemicycle-panel{padding-right:16px}.hemicycle-panel+.hemicycle-panel{padding-left:16px}.hemicycle-panel h2{font-size:24px;line-height:30px}.hemicycle-table-section .section-head{align-items:start;gap:16px}.hemicycle-table-section .section-head h2{font-size:28px;line-height:34px}.hemicycle-table-section .section-head button{font-size:14px;padding:8px 12px}}
@media(max-width:599px){.hemicycle-controls{grid-template-columns:minmax(0,1fr) auto;gap:16px 12px}.hemicycle-controls label[for="chamber-election-a"]{grid-column:1}.hemicycle-controls label[for="chamber-election-b"]{grid-column:1;grid-row:2}.hemicycle-controls .chamber-swap{grid-column:2;grid-row:1/3;align-self:center}.hemicycle-controls select{font-size:16px}.hemicycle-controls #chamber-share{grid-row:3}.hemicycle-pair{grid-template-columns:1fr}.hemicycle-panel,.hemicycle-panel+.hemicycle-panel{padding:24px 0;border-left:0}.hemicycle-panel+.hemicycle-panel{border-top:1px solid var(--chamber-line)}.hemicycle-panel h2{font-size:26px;line-height:32px}.compared-chamber{margin-top:16px}.hemicycle-selection{display:block;padding:24px 16px;margin-top:16px}.hemicycle-selection h2{font-size:26px;line-height:32px}.hemicycle-net{text-align:left;margin-top:24px}.hemicycle-net strong{font-size:44px}.chamber-presets{gap:8px}.chamber-presets>span{flex-basis:100%;margin-bottom:4px}.hemicycle-tool .chamber-presets button{font-size:14px;padding:8px}.chamber-options label{align-items:start;font-size:16px;line-height:24px}.chamber-options label a{display:block;margin-left:0}.hemicycle-table-section .section-head{flex-direction:column}.hemicycle-table-section .section-head h2{margin-bottom:0}.hemicycle-method>h2,.chamber-reading-key h2{font-size:26px;line-height:32px}.chamber-reading-key{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.hemicycle-tool *{scroll-behavior:auto;transition:none;animation:none}}
