.electoral-coalition-panel{margin:18px 0 24px;padding:22px}.electoral-coalition-panel>.panel-heading{display:flex;align-items:center;justify-content:space-between}.electoral-coalition-panel h2{margin:7px 0}.electoral-coalition-panel>p,.coalition-footnote{color:#737b72;font-size:13px;line-height:1.6}.electoral-coalition-panel fieldset{border:1px solid #e3e8e1;border-radius:10px;margin:14px 0;padding:12px}.electoral-coalition-panel legend{font-size:12px;font-weight:800;color:#465548;padding:0 6px}.coalition-check-grid{display:flex;flex-wrap:wrap;gap:8px 15px}.coalition-check-grid label{display:flex;align-items:center;gap:7px;font-size:13px;color:#364136}.coalition-check-grid input{accent-color:#46654d}.coalition-check-grid i,.inline-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--party)}.coalition-check-grid small{color:#788075}.coalition-mode-label{display:inline-grid;gap:5px;margin:0 10px 12px 0;font-size:11px;font-weight:800;color:#5a635a}.coalition-mode-label select,.coalition-seat-list select{border:1px solid #dce1d8;border-radius:7px;background:#fff;padding:8px;font:500 13px "DM Sans",sans-serif;color:#30382f}.electoral-coalition-list{display:grid;gap:10px;margin-top:14px}.coalition-empty{font-size:13px;color:#7a8179}.electoral-coalition-card{border:1px solid #e2e7e0;border-radius:10px;padding:13px;background:#fbfcfa}.electoral-coalition-card>header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.electoral-coalition-card>header>div{display:grid;gap:3px}.electoral-coalition-card>header strong{font-size:15px}.electoral-coalition-card>header small{font-size:11px;color:#737b72}.coalition-district{border-top:1px solid #e9ece8;padding:9px 2px}.coalition-district summary{cursor:pointer;font-weight:700;font-size:13px}.coalition-district summary small{font-weight:500;color:#737b72}.coalition-seat-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:7px;padding:10px 0}.coalition-seat-list label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#677066}.coalition-seat-list select{min-width:100px;padding:6px}.coalition-footnote{display:block;margin-top:12px}.final-debate-content{width:min(900px,calc(100% - 64px));margin:0 auto;padding:64px 0 90px}.final-debate-content>h1{font:800 clamp(38px,6vw,64px)/1.05 Manrope,sans-serif;letter-spacing:-2.5px;margin:22px 0 12px}.final-debate-content>h1 em{font-style:normal;color:#597460}.final-debate-content>.setup-intro,.final-debate-content>p,.debate-result>p{color:#6f776e;font-size:15px;line-height:1.7;max-width:720px}.debate-strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}.debate-strategy{display:grid;gap:10px;text-align:left;border:1px solid #e0e6de;background:#fff;border-radius:13px;padding:20px;cursor:pointer;color:#273229}.debate-strategy:hover{border-color:#78917a;box-shadow:0 8px 20px #233a2910}.debate-strategy strong{font-size:18px}.debate-strategy small{color:#72796f;font-size:13px;line-height:1.5}.debate-strategy b{font-size:13px;color:#7a8179}.debate-strategy b.positive{color:#347248}.debate-strategy b.negative{color:#aa4b43}.debate-result{margin-top:30px;border:1px solid #e0e6de;border-radius:14px;padding:24px;background:#fff}.debate-result h2{font-size:24px;margin:9px 0}.debate-result .campaign-primary{margin-top:10px}
.election-coalition-note{display:grid;gap:5px;border:1px solid #e3e8e1;border-radius:9px;background:#f8faf7;padding:12px 14px;margin:14px 0;color:#4c594c;font-size:12px}.election-coalition-note>strong{font-size:12px}.election-coalition-note>small{font-size:11px;color:#737b72;line-height:1.5}
@media(max-width:760px){.electoral-coalition-panel{padding:15px}.coalition-check-grid{display:grid;grid-template-columns:1fr 1fr}.coalition-check-grid label{font-size:12px}.final-debate-content{width:calc(100% - 32px);padding-top:36px}.debate-strategy-grid{grid-template-columns:1fr}.coalition-seat-list{grid-template-columns:1fr 1fr}}
