/* Port fiel do protótipo modelo04: estilos isolados para não alterar outros temas. */
.er4-prototype{display:block!important;width:100%;max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}body.er-modelo04-page{margin:0;background:#f2f4f8}
.er4-prototype,.er4-prototype h1,.er4-prototype h2,.er4-prototype h3,.er4-prototype button,.er4-prototype select,.er4-prototype input{font-family:Arial,Helvetica,sans-serif}.er4-prototype h2,.er4-prototype h3{font-weight:700}.er4-prototype button{line-height:1.5;text-transform:none;letter-spacing:normal}.er4-prototype img{max-width:100%}.er4-prototype ul,.er4-prototype ol{margin:0;padding:0;list-style:none}
.er4-prototype{--p-green:#173f38;--p-paper:#f6f5f0;--p-white:#fff;--p-ink:#202a28;--brand:var(--p-green);--surface:var(--p-white);--bg:var(--p-paper);--ink:var(--p-ink);--muted:#56645e;--line:#dce1da;--accent:#dceb93;--button-bg:var(--brand);--card-bg:var(--surface);font:18px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}
.er4-prototype *{box-sizing:border-box}
.er4-prototype{margin:0}
.er4-prototype.large{font-size:21px}
.er4-prototype[data-theme=blue]{--brand:#174d75;--accent:#d5e9f6}
.er4-prototype[data-theme=wine]{--brand:#782c47;--accent:#f7d8e2}
.er4-prototype button,.er4-prototype select,.er4-prototype input{font:inherit}
.er4-prototype button,.er4-prototype select{min-height:52px}
.er4-prototype button{cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--brand);border-radius:12px;padding:10px 16px;font-weight:700}
.er4-prototype button:hover{border-color:var(--brand)}
.er4-prototype a{color:var(--brand)}
.er4-prototype :focus-visible{outline:3px solid #9b5c00;outline-offset:4px}
.er4-prototype [hidden]{display:none!important}
.er4-prototype header{height:94px;max-width:1160px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:16px 24px}
.er4-prototype .brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:29px;font-weight:800;letter-spacing:-1px;line-height:1}
.er4-prototype .brandmark,.er4-prototype .app-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:var(--brand);color:var(--accent);font-size:36px}
.er4-prototype .brand-sub{display:block;font-size:10px;letter-spacing:2.3px;margin-top:7px}
.er4-prototype [data-er4-font]{border:0;background:transparent}
.er4-prototype .demo{background:#e8ebe4;text-align:center;font-size:12px;letter-spacing:1px;padding:9px;color:#35453d}
.er4-prototype .demo span{letter-spacing:0;margin-left:12px}
.er4-prototype main{max-width:1112px;margin:auto;padding:0 24px}
.er4-prototype .intro{display:flex;justify-content:space-between;align-items:center;padding:38px 0 30px}
.er4-prototype .eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:var(--brand);margin:0 0 12px}
.er4-prototype h1{font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-1.8px;margin:0;font-weight:750}
.er4-prototype h1 em{font-family:Georgia,serif;font-weight:400;color:var(--brand)}
.er4-prototype .intro-copy{color:var(--muted);margin:18px 0 0}
.er4-prototype .intro-art{width:260px;position:relative;text-align:center;color:var(--brand)}
.er4-prototype .intro-art>span{font-size:66px;letter-spacing:-6px;opacity:.14;font-weight:800}
.er4-prototype .ballot{position:absolute;left:110px;top:8px;background:var(--accent);border:6px solid var(--bg);border-radius:20px;transform:rotate(-12deg);font-size:45px;width:77px}
.er4-prototype .intro-art p{font-size:12px;margin:0}
.er4-prototype .choices{display:grid;grid-template-columns:1fr 1fr .8fr;gap:20px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:18px;margin-bottom:28px}
.er4-prototype .choices label>span{display:block;font-weight:700;font-size:15px;margin-bottom:8px}
.er4-prototype select{width:100%;padding:10px 32px 10px 14px;background:var(--bg);color:var(--ink);border:1px solid #bbc5bd;border-radius:9px}
.er4-prototype .layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px}
.er4-prototype .result-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin:0 0 18px}
.er4-prototype .result-head h2{font-size:30px;line-height:1.2;margin:0;letter-spacing:-.7px}
.er4-prototype .result-head p{margin:5px 0 0;color:var(--muted);font-size:15px}
.er4-prototype .year-tag{border:1px solid var(--line);padding:6px 10px;font-size:13px;border-radius:7px;white-space:nowrap}
.er4-prototype .progress{padding:16px 18px;background:#e9efe8;border-radius:12px;margin-bottom:20px;font-size:15px}
.er4-prototype .progress strong{color:var(--brand)}
.er4-prototype .track{height:6px;border-radius:9px;background:var(--brand);margin:10px 0}
.er4-prototype .progress p{margin:4px 0 0;font-size:13px}
.er4-prototype .candidates{display:grid;gap:14px}
.er4-prototype .candidate{background:var(--card-bg);border:1px solid var(--line);border-radius:17px;padding:22px;position:relative}
.er4-prototype .candidate.elected{border:2px solid var(--brand)}
.er4-prototype .identity{display:flex;align-items:center;gap:16px}
.er4-prototype .photo{width:70px;height:70px;border-radius:50%;object-fit:cover;object-position:top;background:#e9eee6;display:grid;place-items:center;color:var(--brand);font-weight:700}
.er4-prototype .candidate h3{font-size:23px;margin:0;line-height:1.2}
.er4-prototype .party{font-size:15px;color:var(--muted);margin:5px 0}
.er4-prototype .situation{display:inline-block;border-radius:6px;background:var(--brand);color:white;font-size:12px;font-weight:700;padding:3px 8px;margin-top:3px}
.er4-prototype .numbers{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:16px}
.er4-prototype .numbers strong{font-size:38px;letter-spacing:-1.5px;line-height:1.2}
.er4-prototype .numbers span{color:var(--muted);font-size:15px}
.er4-prototype .vote-bar{height:7px;background:#edf0eb;border-radius:5px;margin-top:12px;overflow:hidden}
.er4-prototype .vote-bar i{display:block;height:100%;background:var(--brand)}
.er4-prototype .candidate:not(.elected) .vote-bar i{background:#8b9b95}
.er4-prototype .explanation{font-size:14px;color:var(--muted);margin:18px 0}
.er4-prototype .ad{border:1px solid #e0d9c9;background:#eee9dd;padding:25px;color:#535646;border-radius:12px}
.er4-prototype .ad>span{font-size:10px;letter-spacing:1.3px;display:block}
.er4-prototype .ad strong{font:italic 29px/1.16 Georgia,serif;display:block;margin:16px 0}
.er4-prototype .ad p{font-size:14px;margin:0 0 14px}
.er4-prototype .ad small{font-size:11px}
.er4-prototype .ad-wide{margin:28px 0}
.er4-prototype .side-note{background:var(--brand);color:white;border-radius:18px;padding:28px}
.er4-prototype .side-note .eyebrow{color:var(--accent)}
.er4-prototype .side-note h2{font:32px/1.1 Georgia,serif}
.er4-prototype .side-note p{font-size:16px}
.er4-prototype .side-note button{width:100%;font-size:15px;background:var(--accent);border:0}
.er4-prototype .ad-square{min-height:300px;margin-top:24px}
.er4-prototype .install{display:flex;gap:18px;align-items:start;padding:24px 0}
.er4-prototype .app-icon{flex-shrink:0}
.er4-prototype .install h2{font-size:21px;margin:0}
.er4-prototype .install p{font-size:15px;color:var(--muted);margin:8px 0}
.er4-prototype .install button{font-size:15px}
.er4-prototype .small{font-size:13px!important}
.er4-prototype footer{padding:35px 0 115px;font-size:13px;color:var(--muted);line-height:1.8}
.er4-prototype footer details{margin-top:15px}
.er4-prototype footer select{max-width:180px;display:block}
.er4-prototype .bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:12px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);z-index:5}
.er4-prototype .bottom-nav button{width:160px;min-width:max-content;white-space:nowrap;word-break:normal;overflow-wrap:normal;min-height:62px;border:0;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);border-radius:12px}
.er4-prototype .bottom-nav button[aria-pressed=true]{background:#eaf0e6;color:var(--brand)}
.er4-prototype svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.er4-prototype .stat{padding:20px;border:1px solid var(--line);background:white;border-radius:14px;margin-bottom:12px}
.er4-prototype .stat strong{display:block;font-size:30px}
.er4-prototype .stat p{color:var(--muted);font-size:15px;margin:4px 0}
.er4-prototype .help details{border-bottom:1px solid var(--line);padding:18px 0}
.er4-prototype .help summary{font-size:19px;font-weight:700;cursor:pointer;min-height:48px}
.er4-prototype .help p{color:var(--muted)}
.er4-prototype .search{display:block;margin-bottom:18px}
.er4-prototype .search input{width:100%;min-height:52px;padding:12px;border:1px solid var(--line);border-radius:10px}
.er4-prototype .empty{background:white;border-radius:15px;padding:24px;border:1px solid var(--line)}
.er4-prototype dialog{border:0;border-radius:20px;max-width:480px;width:calc(100% - 32px);padding:28px;max-height:85dvh;overflow:auto}
.er4-prototype dialog::backdrop{background:#132c2bb3}
.er4-prototype dialog button{width:100%;background:var(--brand);color:white}
.er4-prototype [data-er4-connection]{padding:14px;background:#fff0ce;text-align:center;font-size:15px}
.er4-prototype .skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:10}
.er4-prototype .skip:focus{top:10px}
.er4-prototype [data-er4-content]{scroll-margin-top:15px}
.er4-prototype.large h3{font-size:27px}
.er4-prototype.large .party,.er4-prototype.large .numbers span,.er4-prototype.large .progress,.er4-prototype.large .result-head p{font-size:18px}
@media(max-width:760px){.er4-prototype header{height:78px;padding:12px 20px}
.er4-prototype .brand{font-size:25px}
.er4-prototype .brandmark{width:42px;height:42px;font-size:30px}
.er4-prototype [data-er4-font]{font-size:18px;padding:8px}
.er4-prototype [data-er4-font] span{display:block;font-size:11px}
.er4-prototype .demo{font-size:10px;letter-spacing:.7px}
.er4-prototype .demo span{display:block;margin:1px 0;font-size:11px}
.er4-prototype main{padding:0 18px}
.er4-prototype .intro{padding:26px 0 22px}
.er4-prototype .intro h1{font-size:32px;letter-spacing:-1px}
.er4-prototype .intro-art{display:none}
.er4-prototype .intro-copy{font-size:16px;margin-top:12px}
.er4-prototype .choices{grid-template-columns:1fr 1fr;gap:14px;padding:16px;margin-bottom:26px}
.er4-prototype .choices label:first-child{grid-column:1/-1}
.er4-prototype .choices label>span{font-size:14px}
.er4-prototype .choices select{font-size:16px;padding-left:10px}
.er4-prototype .layout{display:block}
.er4-prototype .desktop-side{display:none}
.er4-prototype .result-head h2{font-size:27px}
.er4-prototype .candidate{padding:18px}
.er4-prototype .numbers strong{font-size:36px}
.er4-prototype .numbers span{font-size:14px}
.er4-prototype .photo{width:62px;height:62px}
.er4-prototype .candidate h3{font-size:22px}
.er4-prototype .bottom-nav{gap:4px}
.er4-prototype .bottom-nav button{width:33.33%;min-width:0;font-size:13px;flex-direction:column;gap:4px;padding:7px 5px}
.er4-prototype .ad-wide{margin-top:24px}
.er4-prototype .install{gap:12px}
.er4-prototype .install h2{font-size:20px}
.er4-prototype .app-icon{width:42px;height:42px;font-size:30px}
.er4-prototype.large .choices{grid-template-columns:1fr}
.er4-prototype.large .choices select{font-size:20px}
.er4-prototype.large .numbers{align-items:start;flex-direction:column}
.er4-prototype.large .candidate h3{font-size:26px}
}
.er4-prototype .change-selection{width:100%;margin:0 0 18px;background:var(--surface);text-align:left;font-size:16px}
.er4-prototype .change-selection::after{content:'↑';float:right}
@media(max-width:760px){.er4-prototype header{height:70px}
.er4-prototype .intro{padding:18px 0}
.er4-prototype .intro h1{font-size:28px}
.er4-prototype .intro-copy{margin-top:8px}
.er4-prototype .choices{padding:14px;gap:10px}
.er4-prototype .demo{padding:6px}
.er4-prototype .progress{padding:13px 16px}
}
.er4-prototype{--p-green:#123f8b;--p-paper:#f2f4f8;--brand:#123f8b;--ink:#172237;--muted:#566276;--line:#dce2eb;--accent:#ffda69}
.er4-prototype[data-theme=green]{--brand:#173f38;--accent:#dceb93}
.er4-prototype[data-theme=blue]{--brand:#123f8b;--accent:#ffda69}
.er4-prototype header{max-width:none;padding:18px max(24px,calc((100vw - 1120px)/2));background:white;height:82px;border-bottom:1px solid var(--line)}
.er4-prototype .brand{font-size:27px;letter-spacing:-1px}
.er4-prototype .brandmark{border-radius:50%;width:40px;height:40px;background:var(--accent);color:var(--brand);font-size:26px;font-weight:900}
.er4-prototype .brand-sub{font-size:9px;letter-spacing:2px}
.er4-prototype .demo{background:#172237;color:white;padding:6px;font-size:11px}
.er4-prototype main{max-width:1168px}
.er4-prototype .intro{padding:26px 0 24px}
.er4-prototype .intro h1{font:800 42px/1.1 Arial,Helvetica,sans-serif;letter-spacing:-1.7px}
.er4-prototype .intro-copy{font-size:17px;margin-top:9px}
.er4-prototype .eyebrow{font-size:11px}
.er4-prototype .edition{font-weight:900;font-size:49px;line-height:1;color:var(--brand);text-align:right;letter-spacing:-2px}
.er4-prototype .edition small{display:block;font-size:9px;letter-spacing:1px;margin-top:10px}
.er4-prototype .office-shortcuts{display:flex;background:white;border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0;padding:7px;gap:8px}
.er4-prototype .office-shortcuts button{flex:1;border:0;border-radius:9px;min-height:56px;color:var(--muted)}
.er4-prototype .office-shortcuts button[aria-pressed=true]{background:var(--brand);color:white}
.er4-prototype .choices{border-radius:0 0 14px 14px;padding:16px 20px;grid-template-columns:1fr 1fr;margin-bottom:24px;border-top:0}
.er4-prototype .choices>label:first-child{display:none}
.er4-prototype .choices label>span{font-size:13px}
.er4-prototype .choices select{background:#f4f6fa;min-height:48px}
.er4-prototype .layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}
.er4-prototype .result-head{margin-bottom:13px}
.er4-prototype .result-head h2{font-size:29px}
.er4-prototype .year-tag{background:white;font-weight:700;border-radius:5px}
.er4-prototype .change-selection{min-height:44px;font-size:14px;padding:8px 14px;margin-bottom:14px;border-radius:8px}
.er4-prototype .progress{border:1px solid #ccd8ec;border-left:4px solid var(--brand);background:#eaf0fa;border-radius:7px;padding:12px 16px;margin-bottom:18px}
.er4-prototype .progress .track{display:none}
.er4-prototype .progress p{display:inline-block;margin:5px 12px 0 0;font-size:12px}
.er4-prototype .candidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.er4-prototype .candidate{padding:22px 18px;border-radius:10px;border-top:5px solid #9aa9bf}
.er4-prototype .candidate.elected{border:1px solid var(--line);border-top:5px solid var(--brand)}
.er4-prototype .identity{flex-direction:column;align-items:start;gap:13px}
.er4-prototype .photo{height:86px;width:86px;border:4px solid #f0f3f8}
.er4-prototype .candidate h3{font-size:22px}
.er4-prototype .party{font-size:14px}
.er4-prototype .numbers{display:block;margin-top:19px}
.er4-prototype .numbers strong{display:block;font-size:42px}
.er4-prototype .numbers span{display:block;font-size:14px;margin-top:6px}
.er4-prototype .situation{background:#e2eedf;color:#21502f}
.er4-prototype .vote-bar{margin-top:18px}
.er4-prototype .side-note{border-radius:12px;background:white;color:var(--ink);border:1px solid var(--line);border-top:5px solid var(--accent);padding:23px}
.er4-prototype .side-note .eyebrow{color:var(--brand)}
.er4-prototype .side-note h2{font:800 30px/1.1 Arial,Helvetica,sans-serif;letter-spacing:-1px}
.er4-prototype .side-note button{background:var(--brand);color:white}
.er4-prototype .ad{border-radius:8px;background:#f5ebd3;border-color:#e7d9b8}
.er4-prototype .ad strong{font:800 26px/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.5px}
.er4-prototype .ad-square{min-height:295px}
.er4-prototype .ad-wide{position:relative;padding:25px}
.er4-prototype .ad-wide strong{max-width:380px}
.er4-prototype .install{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;margin-top:25px}
.er4-prototype .bottom-nav{box-shadow:0 -3px 20px #17223709}
.er4-prototype .bottom-nav button[aria-pressed=true]{background:#eaf0fa}
.er4-prototype .stat{border-radius:9px;border-left:4px solid var(--brand)}
.er4-prototype .stat strong{color:var(--brand)}
@media(max-width:760px){.er4-prototype header{height:68px;padding:10px 17px}
.er4-prototype .brand{font-size:23px}
.er4-prototype .brand-sub{font-size:8px}
.er4-prototype .demo{font-size:9px}
.er4-prototype .demo span{display:inline;margin-left:8px;font-size:10px}
.er4-prototype main{padding:0 14px}
.er4-prototype .intro{padding:21px 2px 20px}
.er4-prototype .intro h1{font-size:29px;letter-spacing:-1.1px}
.er4-prototype .intro-copy{font-size:15px}
.er4-prototype .intro .eyebrow{font-size:10px;margin-bottom:8px}
.er4-prototype .edition{display:none}
.er4-prototype .office-shortcuts{gap:5px;padding:6px}
.er4-prototype .office-shortcuts button{padding:10px 5px;font-size:13px;min-height:52px;line-height:1.2}
.er4-prototype .choices{padding:11px 12px 14px;gap:12px;grid-template-columns:1.15fr 1fr;margin-bottom:22px}
.er4-prototype .choices label>span{font-size:12px;margin-bottom:5px}
.er4-prototype .choices select{font-size:15px;min-height:46px}
.er4-prototype .result-head h2{font-size:26px}
.er4-prototype .result-head p{font-size:14px}
.er4-prototype .change-selection{margin-bottom:12px}
.er4-prototype .progress{padding:10px 12px;font-size:14px}
.er4-prototype .progress p{font-size:11px}
.er4-prototype .candidates{grid-template-columns:1fr}
.er4-prototype .candidate{padding:17px 18px;border-radius:10px}
.er4-prototype .identity{flex-direction:row;align-items:center;gap:14px}
.er4-prototype .photo{width:70px;height:70px}
.er4-prototype .candidate h3{font-size:23px}
.er4-prototype .numbers{display:flex;align-items:baseline;justify-content:space-between;margin-top:15px}
.er4-prototype .numbers strong{font-size:39px}
.er4-prototype .numbers span{font-size:14px;margin:0}
.er4-prototype .vote-bar{margin-top:11px}
.er4-prototype .ad-wide{margin:22px 0}
.er4-prototype .bottom-nav button{font-size:13px}
.er4-prototype .install{padding:18px}
.er4-prototype .install h2{font-size:19px}
.er4-prototype.large .office-shortcuts{flex-wrap:wrap}
.er4-prototype.large .office-shortcuts button{font-size:18px;flex-basis:45%}
.er4-prototype.large .choices{grid-template-columns:1fr}
.er4-prototype.large .numbers{display:flex;flex-direction:column}
}

.er4-prototype .choices label:first-child{grid-column:auto}.er4-prototype .candidate{list-style:none;margin:0;min-width:0}.er4-prototype .candidate .er-badge--party{background:none;border:0;padding:0;color:inherit;font:inherit}.er4-prototype .candidate .er-votes__name{color:inherit;text-decoration:none}.er4-prototype .brand-logo{max-width:140px;max-height:40px;object-fit:contain}.er4-prototype .search span{display:block;font-size:14px;font-weight:700;margin-bottom:6px}.er4-prototype .results-main{min-width:0}.er4-prototype .ad-empty{min-height:180px}.er4-prototype .ad-square.ad-empty{min-height:295px}.er4-prototype .er-provenance{margin:0 0 18px;border-radius:7px;font-size:13px}.er4-prototype .er-live-region{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.er4-prototype [hidden]{display:none!important}

.er4-prototype .candidate{display:block}.er4-prototype main{font:inherit;color:inherit}.er4-prototype .numbers strong{font-weight:700}.er4-prototype .numbers span [data-er-vote-count]{display:inline;font:inherit;margin:0}.er4-prototype .candidate .er-votes__name{font-weight:700}.er4-prototype .photo.er-votes__avatar{padding:0;max-width:none}
/* O container genérico usa [data-er-instance]; esta regra restaura o documento aprovado. */
.er-results.er4-prototype[data-er-instance]{font:18px/1.5 Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink);container-type:normal}
.er-results.er4-prototype[data-er-instance].large{font-size:21px}
.er-results.er4-prototype main{font:inherit;color:inherit}
.er4-prototype .stat .stat-value{display:block;font-size:30px;font-weight:700;color:var(--brand)}
.er4-prototype .stat .stat-label{display:block;font-size:15px;color:var(--muted);margin:4px 0}
/* Inputs de prévia vêm antes do label; first-of-type preserva os dois filtros da referência. */
.er4-prototype .choices>label:first-of-type{display:none}
.er4-prototype.er4-ready .choices-submit{display:none}
.er4-prototype .office-shortcuts{flex-wrap:wrap}
@media(max-width:760px){.er4-prototype .office-shortcuts button{flex-basis:28%;min-width:0}.er4-prototype .brand{min-width:0;max-width:calc(100% - 74px)}.er4-prototype .brand>span:last-child{overflow-wrap:anywhere;font-size:clamp(15px,4.8vw,23px)}.er4-prototype .brand-sub{line-height:1.2;letter-spacing:1.5px}.er4-prototype [data-er4-font]{flex-shrink:0}}
.er4-prototype .vote-bar i{background:var(--bar-fill,var(--brand))}
.er4-prototype .ad-wide.ad-empty{min-height:221px}
.er4-prototype .ad-square.ad-empty{min-height:295px}
.er4-prototype .brandmark{flex-shrink:0}
.er4-prototype a.brand{color:var(--brand)}
.er4-prototype .candidate .situation:empty{display:none}
.er4-prototype .status-votes{display:block;width:fit-content;margin-top:5px;border:1px solid #e4c677;border-radius:6px;padding:3px 8px;background:#fff4d7;color:#704b00;font-size:12px;line-height:1.4;font-weight:700}
.er4-prototype .status-votes[hidden]{display:none!important}

/* Newspaper redefine inputs de busca como content-box após wp_head. */
.er4-prototype .search input{box-sizing:border-box;height:auto}
.er4-prototype .ad-empty>span{text-transform:uppercase}
/* Preserve a proporção da logo do portal, sem ícone ou texto duplicado. */
.er4-prototype .brand-logo{display:block;width:auto;height:auto;max-width:240px;max-height:60px;object-fit:contain;flex-shrink:1}
@media(max-width:760px){.er4-prototype .brand-logo{max-width:min(220px,100%);max-height:48px}}

/* A marca permanece visível; a seleção compacta só entra após os filtros completos. */
.er4-prototype{--er4-admin-offset:0px;--er4-header-height:82px;--er4-selection-height:0px}
.er4-prototype header[data-er4-header]{position:sticky;top:var(--er4-admin-offset);z-index:60;height:auto;min-height:82px;box-sizing:border-box;background:var(--surface);box-shadow:0 2px 8px #173f3810}
.er4-prototype .sticky-selection{position:fixed;top:calc(var(--er4-admin-offset) + var(--er4-header-height));left:var(--er4-sticky-left,0px);width:var(--er4-sticky-width,100%);z-index:59;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px max(24px,calc((100% - 1120px)/2));background:var(--brand);color:var(--surface);box-shadow:0 6px 12px #173f3820;border-radius:0 0 18px 18px}
.er4-prototype .sticky-selection button{display:grid;grid-template-columns:1fr auto;gap:0 8px;align-items:center;text-align:left;min-height:48px;min-width:0;padding:7px 12px;border:1px solid #ffffff50;background:transparent;color:var(--surface);border-radius:10px;line-height:1.25}
.er4-prototype .sticky-selection .selection-label{grid-column:1;font-size:11px;letter-spacing:.5px;opacity:.88}
.er4-prototype .sticky-selection strong{grid-column:1;font-size:16px;overflow-wrap:anywhere;line-height:1.35}
.er4-prototype .selection-chevron{grid-column:2;grid-row:1 / span 2;font-size:22px;color:var(--accent)}
.er4-prototype .sticky-selection button:hover{background:#ffffff12}
.er4-prototype .sticky-selection button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.er4-prototype [data-er4-selectors],.er4-prototype [data-er4-content],.er4-prototype [data-er4-panel],.er4-prototype .choices select{scroll-margin-top:calc(var(--er4-admin-offset) + var(--er4-header-height) + var(--er4-selection-height) + 16px)}
.er4-prototype.large .sticky-selection strong{font-size:19px}
@media(max-width:760px){
 .er4-prototype header[data-er4-header]{min-height:66px;padding:10px 16px}
 .er4-prototype .sticky-selection{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding:8px 14px;border-radius:0 0 14px 14px}
 .er4-prototype .sticky-selection button{padding:6px 10px;min-height:48px}
 .er4-prototype .sticky-selection strong{font-size:15px}
 .er4-prototype.large .sticky-selection strong{font-size:18px}
}
/* O overflow-x:hidden herdado de results.css criava um ancestral de rolagem
   e anulava position:sticky na página própria do modelo. */
body.er-modelo04-page .er4-prototype{overflow:visible!important}

/* Escolha no próprio ponto da leitura, sem levar o leitor ao início da página. */
.er4-prototype .selection-dialog{width:min(520px,calc(100% - 28px));max-width:520px;max-height:85vh;max-height:85dvh;overflow:auto;box-sizing:border-box;border:1px solid var(--line);border-radius:18px;padding:24px;color:var(--ink);background:var(--surface);box-shadow:0 16px 60px #173f3840;font:inherit}
.er4-prototype .selection-dialog::backdrop{background:#122c2870}
.er4-prototype .selection-dialog-head{display:flex;gap:12px;align-items:start;justify-content:space-between;margin-bottom:20px}
.er4-prototype .selection-dialog h2{font-size:25px;line-height:1.2;margin:0;color:var(--brand)}
.er4-prototype .selection-dialog-head button{width:auto;background:transparent;color:var(--brand);flex-shrink:0;min-height:44px;padding:8px 10px;font-size:14px}
.er4-prototype .selection-dialog label{display:block;margin-bottom:18px;font-weight:700}
.er4-prototype .selection-dialog label>span{display:block;margin-bottom:7px}
.er4-prototype .selection-dialog select{display:block;width:100%;min-height:52px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--bg);font:inherit}
.er4-prototype .selection-dialog select:disabled{opacity:.6}
.er4-prototype .selection-dialog p{font-size:15px;line-height:1.5;margin:12px 0 20px;color:var(--muted)}
.er4-prototype .selection-dialog .selection-apply{width:100%;background:var(--brand);color:var(--surface);border-color:var(--brand)}
@media(max-width:760px){.er4-prototype .selection-dialog{padding:18px}.er4-prototype .selection-dialog h2{font-size:23px}}

/* Modos de leitura usam os mesmos candidatos e a mesma atualização de votos. */
.er4-prototype .candidate-display{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}
.er4-prototype .candidate-display button{min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:var(--card-bg);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.er4-prototype .candidate-display button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff}
.er4-prototype .candidate-display button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.er4-prototype[data-er4-display-mode=list] .candidates{grid-template-columns:minmax(0,1fr)}
.er4-prototype[data-er4-display-mode=list] .candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 18px;padding:14px}
.er4-prototype[data-er4-display-mode=list] .identity{flex-direction:row;align-items:center;gap:12px;min-width:0}
.er4-prototype[data-er4-display-mode=list] .identity>div{min-width:0}
.er4-prototype[data-er4-display-mode=list] .photo{width:56px;height:56px;flex-shrink:0}
.er4-prototype[data-er4-display-mode=list] .candidate h3{font-size:18px;overflow-wrap:anywhere}
.er4-prototype[data-er4-display-mode=list] .numbers{margin:0;text-align:right;display:block}
.er4-prototype[data-er4-display-mode=list] .numbers strong{font-size:28px;letter-spacing:-.5px}
.er4-prototype[data-er4-display-mode=list] .numbers span{font-size:12px}
.er4-prototype[data-er4-display-mode=list] .vote-bar{grid-column:1/-1;margin-top:0}
.er4-prototype[data-er4-display-mode=thumbnails] .candidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.er4-prototype[data-er4-display-mode=thumbnails] .candidate{padding:14px 10px}
.er4-prototype[data-er4-display-mode=thumbnails] .identity{flex-direction:column;align-items:flex-start;gap:8px}
.er4-prototype[data-er4-display-mode=thumbnails] .photo{width:60px;height:60px}
.er4-prototype[data-er4-display-mode=thumbnails] .candidate h3{font-size:17px;overflow-wrap:anywhere}
.er4-prototype[data-er4-display-mode=thumbnails] .party{font-size:12px;overflow-wrap:anywhere}
.er4-prototype[data-er4-display-mode=thumbnails] .numbers{display:block;margin-top:12px}
.er4-prototype[data-er4-display-mode=thumbnails] .numbers strong{font-size:28px;letter-spacing:-.5px}
.er4-prototype[data-er4-display-mode=thumbnails] .numbers span{font-size:12px;margin-top:4px}
.er4-prototype[data-er4-display-mode=thumbnails] .situation{max-width:100%;box-sizing:border-box;font-size:11px;overflow-wrap:anywhere}
.er4-prototype[data-er4-display-mode=thumbnails] .candidates>.er-adslot,.er4-prototype[data-er4-display-mode=list] .candidates>.er-adslot{grid-column:1/-1}
.er4-prototype.large[data-er4-display-mode=thumbnails] .candidate h3{font-size:20px}
.er4-prototype.large[data-er4-display-mode=list] .candidate h3{font-size:22px}
@media(max-width:380px){.er4-prototype[data-er4-display-mode=list] .candidate{gap:10px}.er4-prototype[data-er4-display-mode=list] .photo{width:42px;height:42px}.er4-prototype[data-er4-display-mode=list] .numbers strong{font-size:23px}}
/* Temas de portal podem impor nowrap nos nomes e links dos candidatos. */
.er4-prototype[data-er4-display-mode=thumbnails] .identity>div,.er4-prototype[data-er4-display-mode=list] .identity>div{min-width:0;width:100%}
.er4-prototype[data-er4-display-mode=thumbnails] .candidate .er-votes__name,.er4-prototype[data-er4-display-mode=list] .candidate .er-votes__name,.er4-prototype[data-er4-display-mode=thumbnails] .candidate .er-votes__name a,.er4-prototype[data-er4-display-mode=list] .candidate .er-votes__name a{white-space:normal;overflow-wrap:anywhere}
/* Busca recolhida no cabeçalho, ao lado do controle de leitura. */
.er4-prototype header[data-er4-header]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
.er4-prototype header[data-er4-header] .brand{min-width:0;max-width:100%}
.er4-prototype .header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.er4-prototype .header-actions [data-er4-font]{min-height:44px;padding:8px;font-size:18px}
.er4-prototype .header-actions [data-er4-font] span{display:block;font-size:11px}
.er4-prototype .header-actions .search-toggle{display:grid;place-items:center;width:44px;min-height:44px;padding:10px;border:0;background:transparent;color:var(--brand)}
.er4-prototype .search-toggle svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.er4-prototype .header-search{grid-column:1/-1;width:100%;min-width:0}
.er4-prototype .header-search .search{margin:0}
.er4-prototype .header-search input{height:53px;min-height:53px;font-size:18px;background:var(--card-bg);color:var(--ink)}
.er4-prototype header[data-er4-header] .brand-logo{max-width:100%}
.er4-prototype .header-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}
.er4-prototype .header-search-form .search{min-width:0}
.er4-prototype .header-search-form .search-submit{min-height:53px;background:var(--brand);border-color:var(--brand);color:var(--surface);padding:10px 16px}
.er4-prototype .search-feedback{margin:8px 0 0;font-size:14px;color:var(--ink)}
.er4-prototype .search-feedback:empty{display:none}
.er4-prototype [data-er-votes]{scroll-margin-top:calc(var(--er4-admin-offset) + var(--er4-header-height) + var(--er4-selection-height) + 16px)}
/* O topo acomoda apenas o anúncio configurado, centralizado sem caixa decorativa. */
.er4-prototype .ad-top{display:flex;justify-content:center;align-items:center;max-width:1120px;width:calc(100% - 28px);margin:24px auto;padding:0;border:0;border-radius:0;background:transparent}
.er4-prototype .ad-top .er-adslot{width:100%;max-width:min(100%,calc(var(--er-ad-w,728) * 1px));margin:0 auto;text-align:center}
.er4-prototype .ad-top .er-ad{display:flex;justify-content:center;align-items:center;max-width:100%;margin:0 auto}
.er4-prototype .ad-top .er-ad>*{max-width:100%}
.er4-prototype .ad-top img,.er4-prototype .ad-top iframe{display:block;max-width:100%;margin-left:auto;margin-right:auto}
.er4-prototype .ad-top img{height:auto}

/* Todas as posições publicitárias do documento, inclusive o slot após o rodapé. */
.er4-prototype{padding-bottom:calc(94px + env(safe-area-inset-bottom,0px))!important}
.er4-prototype .ad{min-width:0}
.er4-prototype .er-adslot{display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%;min-width:0;box-sizing:border-box;text-align:center}
.er4-prototype .er-ad{display:flex;justify-content:center;align-items:center;width:100%;max-width:100%;min-width:0;margin-left:auto;margin-right:auto;text-align:center}
.er4-prototype .er-ad :is(div,ins,a){max-width:100%;min-width:0;box-sizing:border-box}
.er4-prototype .er-ad ins[data-revive-zoneid]{display:block;margin-left:auto;margin-right:auto;text-decoration:none}
.er4-prototype .er-ad a{display:block}
.er4-prototype .er-ad :is(img,iframe){display:block;max-width:100%;margin-left:auto;margin-right:auto}
.er4-prototype .er-ad img{height:auto}

/* O documento próprio não herda o ancestral de rolagem criado pelo tema.
   Clip contém o excesso horizontal sem deslocar o cabeçalho sticky. */
html:has(> body.er-modelo04-page),body.er-modelo04-page{overflow-x:clip!important;overflow-y:visible!important}

/* Blocos responsivos precisam de largura antes de o AdSense calcular o anúncio. */
.er4-prototype .er-adslot > ins.adsbygoogle,.er4-prototype .er-ad > ins.adsbygoogle{display:block;width:100%;align-self:stretch;flex:0 0 auto}
/* Os cargos mantêm aparência de botão mesmo quando não selecionados. */
.er4-prototype .office-shortcuts button{border:1px solid var(--line);background:#f1f5f9;color:var(--ink);box-shadow:0 2px 0 rgba(15,23,42,.08);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.er4-prototype .office-shortcuts button:hover{background:#e2e8f0;border-color:#94a3b8}
.er4-prototype .office-shortcuts button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:white;box-shadow:0 2px 5px rgba(15,23,42,.18)}
.er4-prototype .office-shortcuts button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}

/* App actions preserve touch targets and a quiet secondary share action. */
.er4-prototype .install button{min-height:44px;padding:8px 12px;margin-top:6px;border:1px solid var(--line);border-radius:8px;background:var(--brand);color:white}
.er4-prototype .install [data-er4-share]{background:white;color:var(--ink)}
.er4-prototype .install [data-er4-share-url]{max-width:100%;width:100%;min-height:44px;padding:8px;border:1px solid var(--line);border-radius:6px;box-sizing:border-box}
.er4-prototype .install button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
