.gp-apuracao{--gp-accent:#176638;--gp-line:#dce5df;--gp-ink:#172e24;background:#fff;color:var(--gp-ink);border:1px solid var(--gp-line);border-radius:18px;padding:clamp(16px,3vw,30px);margin:24px 0;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.5;min-height:320px;box-shadow:0 8px 30px #163c2110;box-sizing:border-box}.gp-apuracao *{box-sizing:border-box}.gp-apuracao [hidden]{display:none!important}.gp-apuracao h2,.gp-apuracao h3,.gp-apuracao p{color:inherit}.gp-apuracao h2{font-size:clamp(27px,4vw,40px);line-height:1.15;letter-spacing:-.04em;margin:8px 0}.gp-apuracao h3{font-size:clamp(24px,3vw,32px);line-height:1.2;margin:4px 0 16px;overflow-wrap:normal}.gp-apuracao p{margin:12px 0}.gp-apuracao .gp-kicker{font-size:11px;font-weight:800;letter-spacing:.08em;color:#466152}.gp-apuracao .gp-panel-head{display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid var(--gp-line);padding-bottom:22px}.gp-apuracao .gp-panel-head p{color:#50645a;font-size:14px}.gp-apuracao .gp-app-actions{display:flex;gap:8px;flex-direction:column}.gp-apuracao button{cursor:pointer;font:inherit}.gp-apuracao [data-gp-install],.gp-apuracao [data-gp-refresh]{min-height:44px;padding:10px 16px;border:1px solid var(--gp-accent);border-radius:8px;background:var(--gp-accent);color:#fff;font-size:13px;font-weight:750;white-space:nowrap}.gp-apuracao [data-gp-refresh]{background:#fff;color:var(--gp-accent)}.gp-apuracao .gp-places{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:24px 0}.gp-apuracao .gp-place{min-height:82px;text-align:left;padding:13px;border:1px solid var(--gp-line);border-radius:10px;background:#f7faf8;color:var(--gp-ink);transition:background .15s}.gp-apuracao .gp-place strong,.gp-apuracao .gp-place span{display:block}.gp-apuracao .gp-place strong{font-size:14px;line-height:1.3}.gp-apuracao .gp-place span{font-size:11px;color:#50645a;margin-top:5px}.gp-apuracao .gp-place:hover{border-color:var(--gp-accent)}.gp-apuracao .gp-place[aria-pressed=true]{background:var(--gp-accent);border-color:var(--gp-accent);color:#fff;box-shadow:0 3px 8px #17663825}.gp-apuracao .gp-place[aria-pressed=true] span{color:#fff}.gp-apuracao button:disabled{opacity:.6;cursor:wait}.gp-apuracao .gp-filter-box{border:1px solid var(--gp-line);border-radius:10px;background:#f7faf8}.gp-apuracao .gp-filter-box summary{cursor:pointer;font-size:14px;font-weight:700;padding:15px}.gp-apuracao .gp-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 15px 18px}.gp-apuracao label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;min-width:0}.gp-apuracao select,.gp-apuracao input{font:inherit;font-size:16px;width:100%;min-height:46px;border:1px solid #a9bcb0;border-radius:7px;background:#fff;color:var(--gp-ink);padding:10px}.gp-apuracao :focus-visible{outline:3px solid #2670b6;outline-offset:3px}.gp-apuracao .gp-result{padding-top:14px;min-width:0}.gp-apuracao progress{width:100%;height:12px;accent-color:var(--gp-accent);border:0;border-radius:12px;overflow:hidden}.gp-apuracao progress::-webkit-progress-bar{background:#e7eee9}.gp-apuracao progress::-webkit-progress-value{background:var(--gp-accent)}.gp-apuracao .gp-state{display:inline-block;font-size:12px;font-weight:750;background:#eaf4ee;padding:6px 10px;border-radius:6px}.gp-apuracao [data-status=waiting] .gp-state{background:#fff4d8;color:#70500a}.gp-apuracao .gp-notice,.gp-apuracao .gp-install-help{background:#fff4d8;border-left:4px solid #a56d00;padding:12px 15px;border-radius:5px;font-size:13px;color:#614709}.gp-apuracao .gp-time,.gp-apuracao .gp-source{font-size:12px;color:#50645a;line-height:1.7}.gp-apuracao .gp-source{border-top:1px solid var(--gp-line);padding-top:16px;margin-top:24px}.gp-apuracao .gp-message{min-height:22px;font-size:13px;color:#50645a}.gp-apuracao .gp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.gp-apuracao .gp-stats>div{background:#f2f7f4;border:1px solid var(--gp-line);border-radius:10px;padding:16px;min-width:0}.gp-apuracao .gp-stats strong,.gp-apuracao .gp-stats span{display:block}.gp-apuracao .gp-stats strong{font-size:24px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.gp-apuracao .gp-stats span{font-size:12px;color:#50645a;margin-top:4px}.gp-apuracao .gp-candidates{list-style:none;margin:0;padding:0;max-height:720px;overflow:auto}.gp-apuracao .gp-candidates li{display:flex;gap:16px;align-items:center;padding:18px 12px 23px;border-bottom:1px solid var(--gp-line);position:relative}.gp-apuracao .gp-candidates li:after{content:'';position:absolute;bottom:8px;left:12px;width:var(--gp-vote);max-width:calc(100% - 24px);height:3px;background:var(--gp-accent);border-radius:3px}.gp-apuracao .gp-candidates img{border-radius:50%;object-fit:cover;width:52px;height:52px;flex-shrink:0;background:#eaf4ee}.gp-apuracao .gp-candidate-info{flex:1;min-width:0}.gp-apuracao .gp-candidate-info>*{display:block;word-break:normal;overflow-wrap:normal}.gp-apuracao .gp-candidate-info strong{font-size:16px;line-height:1.35}.gp-apuracao .gp-candidate-info span,.gp-apuracao small{font-size:12px;color:#50645a}.gp-apuracao .gp-candidate-info .gp-elected{color:#176638;font-weight:750}.gp-apuracao .gp-votes{text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.gp-apuracao .gp-votes>*{display:block}.gp-apuracao .gp-votes strong{font-size:22px}.gp-apuracao .gp-votes span{font-size:12px;color:#50645a}.gp-apuracao a{color:#175da5;text-decoration:underline;text-underline-offset:3px}.gp-election-page{width:calc(100% - 32px);max-width:1180px;margin:28px auto 48px;box-sizing:border-box}.gp-election-page .gp-election-intro{padding:24px 0;color:#172e24}.gp-election-page .gp-election-intro h1{color:inherit;font-size:clamp(30px,5vw,48px);line-height:1.1;margin:8px 0 14px;letter-spacing:-.04em}.gp-election-page .gp-election-intro p{margin:8px 0 16px}.gp-election-page .gp-election-eyebrow{font-size:12px;font-weight:750;color:#176638}.gp-election-page .gp-election-back{color:#175da5;text-decoration:underline}.gp-election-page .gp-election-back:focus-visible{outline:3px solid #2670b6;outline-offset:3px}@media(max-width:950px){.gp-apuracao .gp-places{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.gp-apuracao{border-radius:12px;padding:16px}.gp-apuracao .gp-panel-head{flex-direction:column;align-items:stretch;gap:12px}.gp-apuracao .gp-app-actions{flex-direction:column}.gp-apuracao .gp-places,.gp-apuracao .gp-controls,.gp-apuracao .gp-stats{grid-template-columns:minmax(0,1fr)}.gp-apuracao .gp-place{min-height:62px;padding:12px 15px}.gp-apuracao .gp-place strong{font-size:16px}.gp-apuracao .gp-stats>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.gp-apuracao .gp-stats span{margin:0}.gp-apuracao .gp-candidates li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px 12px}.gp-apuracao .gp-candidates li:not(:has(img)){grid-template-columns:minmax(0,1fr)}.gp-apuracao .gp-candidates img{width:48px;height:48px}.gp-apuracao .gp-votes{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:12px}.gp-apuracao .gp-candidates{max-height:none;overflow:visible}.gp-election-page{margin-top:16px}.gp-election-page .gp-election-intro{padding:10px 0}}
