#election-panel #regional-panel{margin-top:36px;padding:28px;border:1px solid #dce3ee;border-radius:18px;background:#fff;color:#01123f}
#election-panel #regional-panel h2{font-size:28px;margin:10px 0}
#election-panel .region-controls{display:flex;align-items:end;gap:16px;margin:22px 0}
#election-panel .region-controls label{display:grid;gap:6px;font-size:13px}
#election-panel .region-controls select{padding:10px;border:1px solid #abbacd;border-radius:8px;min-width:210px;background:#fff}
#election-panel .regional-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start}
#election-panel .map-canvas svg{width:100%;height:auto;max-height:540px;display:block}
#election-panel .map-canvas path{stroke:#fff;stroke-width:1.5;cursor:pointer;transition:opacity .15s}
#election-panel .map-canvas path:hover,#election-panel .map-canvas path:focus,#election-panel .map-canvas path[aria-pressed=true]{stroke:#01123f;stroke-width:3;outline:none}
#election-panel .region-details{padding:18px;background:#f2f6fc;border-radius:12px}
#election-panel .regional-totals>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #dce3ee}
#election-panel .regional-totals dd{margin:0;font-weight:bold}
#election-panel .regional-ranking{padding-left:22px;font-size:12px}
#election-panel .regional-ranking li{padding:7px 0}
#election-panel .regional-ranking strong{display:block;font-size:13px}
#election-panel .map-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;margin:20px 0}
#election-panel .legend-item{display:flex;align-items:center;gap:5px}
#election-panel .legend-item i{display:inline-block;width:12px;height:12px;border-radius:50%}
#election-panel .state-list{display:flex;gap:7px;flex-wrap:wrap}
#election-panel .state-list button{font-size:11px;padding:8px 10px}
#election-panel .state-list button[aria-pressed=true]{background:#01123f;color:white}
#election-panel .map-method,#election-panel .map-status,#election-panel .profile-source{font-size:12px;line-height:1.6}
#election-panel .candidate-profile{margin-top:8px;font-size:12px;padding:5px 8px;color:#0062fd;background:#eef4ff;border:0}
#election-panel #candidate-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100vw - 28px));max-height:85dvh;overflow:auto;padding:28px;border:0;border-radius:18px;box-sizing:border-box;color:#01123f;background:#fff}
#election-panel #candidate-dialog::backdrop{background:#01123fb0}
#election-panel .profile-close{float:right}
#election-panel .profile-photo{width:100px;height:120px;object-fit:contain;background:#f1f4f9;border-radius:8px;margin:10px 0}
#election-panel .profile-fields{display:grid;grid-template-columns:1fr 1.5fr;gap:9px 16px;font-size:13px;clear:both}
#election-panel .profile-fields dt{color:#52627c}
#election-panel .profile-fields dd{margin:0;overflow-wrap:anywhere;font-weight:600}
@media(max-width:700px){#election-panel #regional-panel{padding:17px}#election-panel .regional-layout{grid-template-columns:1fr}#election-panel .region-controls{flex-wrap:wrap}#election-panel .region-controls select{min-width:180px}#election-panel #candidate-dialog{padding:18px}#election-panel .profile-fields{grid-template-columns:1fr 1.3fr}#election-panel #regional-panel h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){#election-panel .map-canvas path{transition:none}}

#scarpa360-portal-estudo[data-theme=dark] #election-panel :is(#regional-panel,#candidate-dialog){background:var(--s360-paper,#101a2c);color:var(--navy);border-color:var(--line)}
#scarpa360-portal-estudo[data-theme=dark] #election-panel :is(.region-details,.profile-photo){background:var(--soft)}
#scarpa360-portal-estudo[data-theme=dark] #election-panel .regional-totals>div{border-color:var(--line)}
#scarpa360-portal-estudo[data-theme=dark] #election-panel .profile-fields dt{color:var(--muted)}
#scarpa360-portal-estudo[data-theme=dark] #election-panel .candidate-profile{color:var(--blue);background:var(--soft)}
#scarpa360-portal-estudo[data-theme=dark] #election-panel .state-list button[aria-pressed=true]{background:var(--blue);color:#080f20}
#scarpa360-portal-estudo[data-theme=dark] #election-panel .map-canvas path:is(:hover,:focus,[aria-pressed=true]){stroke:#f0f4ff}
