@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--ink:#183247;--navy:#102b3e;--forest:#326451;--gold:#b98a3e;--sand:#f2eadc;--paper:#faf8f3;--white:#fff;--muted:#687581;--line:#dedbd3;--danger:#a4493d;--shadow:0 18px 50px rgba(20,39,52,.08)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(16,43,62,.025) 1px,transparent 1px),linear-gradient(rgba(16,43,62,.025) 1px,transparent 1px);background-size:32px 32px}.svg-defs{position:absolute;width:0;height:0}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.shell{width:min(1080px,calc(100% - 36px));margin:auto;padding:38px 0 24px;position:relative}.shell.narrow{width:min(650px,calc(100% - 30px))}.brand{display:flex;align-items:center;gap:14px;margin-bottom:48px}.mark{width:48px;height:48px;border:1px solid #cab998;border-radius:50%;display:grid;place-items:center;color:var(--gold);background:#fff}.mark .icon{width:26px;height:26px}.brand h1{font:600 20px 'Playfair Display',serif;margin:1px 0}.brand p{margin:0;color:var(--muted);font-size:12px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--gold)}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:end;padding:55px 4vw 65px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hero h2{font:600 clamp(38px,6vw,66px)/1.05 'Playfair Display',serif;margin:16px 0 22px;letter-spacing:-.035em}.hero h2 em{color:var(--forest);font-weight:600}.hero>div>p{max-width:580px;color:var(--muted);line-height:1.7}.privacy{background:var(--navy);color:#fff;padding:30px;border-radius:4px;display:grid;grid-template-columns:auto 1fr;gap:8px 14px;box-shadow:var(--shadow)}.privacy .icon{grid-row:1/3;color:#d7b87c}.privacy strong{font-size:14px}.privacy span{font-size:12px;color:#b8c3ca}.choice{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:35px 4vw}.portal{border:1px solid var(--line);background:#fff;padding:25px;display:flex;align-items:center;gap:18px;text-align:left;color:var(--ink);cursor:pointer;transition:.2s}.portal:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:var(--shadow)}.portal>.icon{color:var(--gold);width:28px;height:28px}.portal span{display:flex;flex-direction:column;gap:5px;flex:1}.portal b{font:600 17px 'Playfair Display',serif}.portal small{color:var(--muted)}.portal i{font-style:normal;color:var(--gold);font-size:22px}footer{text-align:center;font-size:11px;color:#8a918f;padding:30px}.back{border:0;background:transparent;display:flex;align-items:center;gap:5px;color:var(--muted);cursor:pointer;padding:0;position:absolute;right:0;top:48px}.back .icon{width:17px}.card{background:var(--white);border:1px solid var(--line);padding:30px;box-shadow:0 8px 30px rgba(20,39,52,.035);margin-bottom:18px}.login h2,.card h2{font:600 26px 'Playfair Display',serif;margin:0 0 8px}.card h3{font:600 20px 'Playfair Display',serif;margin:0 0 16px}.card>p,.login>p{color:var(--muted);line-height:1.6;margin-top:0}.login form{display:grid;gap:15px;margin-top:25px}label{font-size:12px;font-weight:600;color:var(--muted);display:grid;gap:7px}input,select{width:100%;border:1px solid var(--line);background:#fff;color:var(--ink);padding:12px 13px;font:500 14px inherit;outline:0}input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(185,138,62,.1)}input.code{text-align:center;font-size:24px;letter-spacing:.25em;text-transform:uppercase}.primary,.secondary{border:0;padding:13px 18px;font:600 13px inherit;cursor:pointer;transition:.18s}.primary{background:var(--navy);color:#fff}.primary:hover{background:var(--forest)}.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}.secondary:hover{border-color:var(--gold)}.danger{color:var(--danger)}.note,.privacy-line{display:flex;gap:9px;align-items:center;background:#f4f7f5;color:var(--forest);padding:13px;margin-top:20px;font-size:11px}.note .icon,.privacy-line .icon{width:16px}.office-head{text-align:center;border-top:1px solid var(--line);padding-top:28px}.office-head span{font-size:10px;letter-spacing:.18em;color:var(--gold);font-weight:700}.office-head h2{font:600 30px 'Playfair Display',serif;margin:6px}.office-head p{font-size:12px;color:var(--muted);margin:0}.steps{display:flex;align-items:start;justify-content:center;margin:30px 0}.step{display:grid;justify-items:center;gap:7px;min-width:75px;color:#9aa2a5}.step b{display:grid;place-items:center;border:1px solid var(--line);width:30px;height:30px;border-radius:50%;font-size:11px;background:var(--paper)}.step span{font-size:10px}.step.active{color:var(--gold)}.step.active b{border-color:var(--gold);background:#fff8ec}.step.done{color:var(--forest)}.step.done b{background:var(--forest);color:white;border-color:var(--forest)}.steps>i{width:50px;height:1px;background:var(--line);margin-top:15px}.field-row{display:flex;gap:8px;margin:10px 0}.square{width:45px;border:1px solid var(--line);background:#fff;color:var(--gold);cursor:pointer}.square.remove{color:var(--danger)}.form-help{display:block;text-align:center;color:var(--muted);font-size:10px;margin-top:12px}.round{background:var(--sand);color:var(--gold);padding:10px 13px;margin:-12px -12px 25px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700;display:flex;justify-content:space-between}.ballot{display:grid;gap:9px;margin:20px 0}.ballot label{position:relative}.ballot input{position:absolute;opacity:0}.ballot span{border:1px solid var(--line);padding:15px 16px;color:var(--ink);font-size:14px;cursor:pointer}.ballot input:checked+span{border-color:var(--forest);background:#eef5f1;box-shadow:inset 4px 0 var(--forest)}.waiting{text-align:center;padding:50px 30px}.waiting>span{font-size:10px;color:#9aa2a5}.pulse{width:58px;height:58px;border-radius:50%;background:#eef5f1;color:var(--forest);display:grid;place-items:center;margin:0 auto 20px;animation:pulse 2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(50,100,81,.07)}}.admin-shell{max-width:1220px}.admin-grid{display:grid;grid-template-columns:220px 1fr;gap:36px;border-top:1px solid var(--line);padding-top:30px}.status{display:flex;gap:10px;align-items:start;padding:18px;background:#fff;border:1px solid var(--line);margin-bottom:15px}.live{width:7px;height:7px;border-radius:50%;background:#56a27c;margin-top:5px;box-shadow:0 0 0 4px #e8f2ed}.status div{display:flex;flex-direction:column}.status small{font-size:8px;letter-spacing:.14em;color:var(--muted)}.status b{font-size:12px;margin:4px 0}.status em{font-size:10px;color:var(--gold);font-style:normal}aside nav{display:grid}aside nav button{border:0;border-left:2px solid transparent;background:transparent;text-align:left;padding:11px 14px;color:var(--muted);cursor:pointer}aside nav button.active{border-color:var(--gold);color:var(--ink);font-weight:700;background:#f4efe5}.panel-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.panel-head h2{font:600 30px 'Playfair Display',serif;margin:5px 0}.panel-head p{color:var(--muted);margin:0;font-size:12px}.phase-pill,.chip{border:1px solid #c8dcd3;background:#edf5f1;color:var(--forest);padding:7px 10px;font-size:10px;font-weight:700}.settings{display:grid;grid-template-columns:2fr 100px auto;gap:12px;align-items:end}.office-list>div,.table>div{display:flex;align-items:center;gap:14px;border-bottom:1px solid #eeeae2;padding:12px 0}.office-list>div:last-child,.table>div:last-child{border:0}.office-list i{font:600 12px 'Playfair Display',serif;color:var(--gold)}.office-list span,.table span{display:flex;flex:1;flex-direction:column;gap:3px}.office-list b,.table b{font-size:13px}.office-list small,.table small{font-size:10px;color:var(--muted)}.x{border:0;background:none;color:var(--danger);font-size:20px;cursor:pointer}.control>.primary,.control>.secondary{width:100%;margin-top:12px}.metric{background:#f6f2e9;border-left:3px solid var(--gold);padding:20px;display:flex;flex-direction:column}.metric b{font:600 30px 'Playfair Display',serif}.metric b small{font:500 14px 'DM Sans',sans-serif;color:var(--muted)}.metric span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-head{display:flex;justify-content:space-between;gap:20px}.review-head h3{margin-bottom:4px}.review-head p{font-size:11px;color:var(--muted)}.mini{display:flex}.mini input{width:170px}.mini button{border:1px solid var(--line);background:#fff;color:var(--gold)}.candidate-list article{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eeeae2}.candidate-list article>div{display:flex;flex-direction:column}.candidate-list b{font-size:13px}.candidate-list small{font-size:10px;color:var(--muted)}.candidate-list select{padding:8px;font-size:11px}.inline-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.result-head span{font-size:9px;letter-spacing:.15em;color:var(--gold)}.result-head h3{margin-top:5px}.results>div{position:relative;display:flex;justify-content:space-between;padding:11px 8px;margin-bottom:4px;overflow:hidden}.results i{position:absolute;inset:0 auto 0 0;width:var(--w);background:#edf3ef;z-index:0}.results span,.results b{position:relative;z-index:1;font-size:12px}.elected{display:flex;gap:7px;flex-wrap:wrap}.elected span,.success{background:#eaf3ee;color:var(--forest);padding:8px 10px;font-size:11px}.add-form{display:grid;grid-template-columns:1fr auto;gap:10px}.add-form input[name=seats]{max-width:90px}.issued{background:#fff5dc;border:1px solid #e8cd91;padding:18px;margin-bottom:18px}.issued>strong{font-size:12px}.issued>div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #ecdcae}.issued code{font-size:16px;font-weight:700;letter-spacing:.12em}.chip{cursor:pointer}.chip.off{background:#f5eeee;color:var(--danger);border-color:#ead3d0}.audit>div{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid #eeeae2;padding:9px}.audit time{font-size:10px;color:var(--muted)}.audit b{font-size:11px}.final-office>span{font-size:10px;letter-spacing:.13em;color:var(--gold)}.final-office h3{margin:10px 0;font:600 18px 'Playfair Display',serif;color:var(--forest)}.final-office h3 small{font:500 10px 'DM Sans';color:var(--muted)}.empty{color:var(--muted);font-size:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--forest);color:#fff;padding:12px 20px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.error{background:var(--danger)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:760px){.shell{padding-top:24px}.brand{margin-bottom:30px}.back{top:32px}.hero{grid-template-columns:1fr;gap:25px;padding:38px 5px}.choice{grid-template-columns:1fr;padding:25px 0}.admin-grid{grid-template-columns:1fr}.admin-grid aside nav{display:flex;overflow:auto}.admin-grid aside nav button{border-left:0;border-bottom:2px solid transparent;white-space:nowrap}.admin-grid aside nav button.active{border-bottom-color:var(--gold)}.status{display:none}.settings{grid-template-columns:1fr}.candidate-list article{grid-template-columns:1fr 80px}.candidate-list select{grid-column:1/3}.review-head{display:block}.mini input{width:100%}.metrics{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}.panel-head{display:block}.phase-pill{display:inline-block;margin-top:12px}}

/* Interface corporativa contemporânea */
:root{--ink:#172b3a;--navy:#0b2638;--forest:#14735b;--gold:#b5863d;--sand:#f3f0e9;--paper:#f3f6f8;--muted:#697985;--line:#dce3e7;--shadow:0 16px 40px rgba(13,38,55,.08)}
body{font-family:'Inter',system-ui,sans-serif;background:linear-gradient(135deg,#f7f9fa 0%,#eef3f5 100%)}body:before{opacity:.35;background-size:40px 40px}.brand h1,.hero h2,.portal b,.login h2,.card h2,.card h3,.office-head h2,.panel-head h2,.metric b,.final-office h3{font-family:'Manrope',system-ui,sans-serif;letter-spacing:-.025em}.brand{padding:0 4px}.mark{border:0;background:linear-gradient(145deg,var(--navy),#17445d);color:#e3bf7d;box-shadow:0 9px 20px rgba(11,38,56,.18)}.hero{background:rgba(255,255,255,.62);border:1px solid rgba(220,227,231,.9);border-radius:18px;padding:64px clamp(30px,6vw,72px);box-shadow:var(--shadow)}.hero h2{font-size:clamp(38px,5vw,62px);font-weight:800}.privacy,.portal,.card,.status{border-radius:14px}.choice{padding-left:0;padding-right:0}.portal{box-shadow:0 7px 20px rgba(13,38,55,.045)}.primary,.secondary,input,select{border-radius:9px}.primary{background:linear-gradient(135deg,var(--navy),#17465e);box-shadow:0 7px 15px rgba(11,38,56,.12)}.admin-grid{grid-template-columns:240px 1fr;gap:28px}.admin-grid>aside{background:var(--navy);border-radius:16px;padding:14px;height:max-content;box-shadow:0 14px 35px rgba(11,38,56,.14)}.status{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.09);color:white}.status small,.status em{color:#aebdc5}aside nav button{color:#adbac2;border-radius:8px;border:0;margin:2px 0}aside nav button:hover{background:rgba(255,255,255,.06);color:white}aside nav button.active{background:white;color:var(--navy);border:0}.panel-head{padding:4px 2px}.phase-pill{border-radius:999px}.people-actions{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.2fr);gap:16px}.people-actions .card{margin:0}.people-actions .add-form{display:grid;grid-template-columns:1fr auto;align-items:end}.people-actions .add-form>div{display:grid;gap:10px}.section-label{display:block;color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.14em}.import-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}.upload-icon{width:44px;height:44px;border-radius:10px;background:#edf4f2;color:var(--forest);display:grid;place-items:center}.import-card>div:nth-child(2){display:flex;flex-direction:column;gap:4px}.import-card b{font-size:13px}.import-card small{font-size:10px;color:var(--muted)}.file-button{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);cursor:pointer;white-space:nowrap}.file-button input{position:absolute;opacity:0;width:1px;height:1px}.import-card>.primary{grid-column:1/4}.template-button{display:flex;align-items:center;gap:7px}.template-button .icon,.issued .secondary .icon{width:15px}.issued{border-radius:12px;margin-top:16px}.issued-title{display:flex!important;flex-direction:column;padding-top:0!important}.issued-title span{font-size:10px;color:#806a3d}.table-head{display:grid!important;grid-template-columns:1fr auto;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.12em}.table-head span:last-child{text-align:right}.locked-note{border:1px solid var(--line);background:white;padding:14px;border-radius:10px;color:var(--muted);font-size:11px}.chip:disabled{cursor:not-allowed;opacity:.65}.toast{border-radius:10px;box-shadow:0 12px 30px rgba(13,38,55,.2)}
@media(max-width:900px){.people-actions{grid-template-columns:1fr}.import-card{grid-template-columns:auto 1fr}.import-card .file-button{grid-column:1/3;text-align:center}.import-card>.primary{grid-column:1/3}}
@media(max-width:760px){.admin-grid>aside{padding:8px}.admin-grid{grid-template-columns:1fr}.panel-head .template-button{margin-top:14px}.hero{padding:38px 24px}.import-card{grid-template-columns:1fr}.upload-icon{display:none}.import-card .file-button,.import-card>.primary{grid-column:1}.people-actions .add-form{grid-template-columns:1fr}.admin-grid aside nav button.active{background:white;border:0}}

.context-bar{display:grid;grid-template-columns:minmax(220px,.8fr) 1px minmax(320px,1.2fr) auto;align-items:end;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin:-20px 0 24px;box-shadow:0 8px 24px rgba(13,38,55,.04)}.context-bar>div{display:grid;gap:4px}.context-bar>div>span{font-size:8px;letter-spacing:.14em;font-weight:700;color:var(--muted)}.context-bar select{border:0;padding:4px 24px 4px 0;font-weight:700;background-color:white;box-shadow:none}.context-bar>i{width:1px;height:35px;background:var(--line)}.context-status{font-size:9px;text-transform:uppercase;letter-spacing:.1em;padding:7px 10px;border-radius:999px;background:#edf5f1;color:var(--forest)}.context-status.finished{background:#eef1f4;color:#526370}.context-status.active{background:#e8f5ef;color:#087553}.org-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stack-form{display:grid;gap:10px;margin-top:14px}.org-grid dl{display:grid;grid-template-columns:1fr 1fr;margin:20px 0 0;gap:10px}.org-grid dl>div{background:#f5f7f8;border-radius:9px;padding:12px}.org-grid dt{font-size:9px;color:var(--muted);text-transform:uppercase}.org-grid dd{font:700 22px 'Manrope',sans-serif;margin:4px 0 0}.history-head{display:flex;justify-content:space-between;align-items:end;margin:28px 2px 12px}.history-head h3{font:700 18px 'Manrope',sans-serif;margin:0}.history-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.election-history{display:grid;gap:9px}.election-history .card{width:100%;display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;text-align:left;cursor:pointer;padding:18px 20px;margin:0;color:var(--ink)}.election-history .card:hover,.election-history .card.selected{border-color:#8db8aa;box-shadow:0 7px 20px rgba(20,115,91,.08)}.history-year{font:800 18px 'Manrope',sans-serif;color:var(--forest)}.election-history .card>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.election-history b{font-size:13px}.election-history small{font-size:10px;color:var(--muted)}.election-history em{font-size:10px;color:var(--gold);font-style:normal}dialog{width:min(440px,calc(100% - 32px));border:0;border-radius:16px;padding:0;box-shadow:0 25px 70px rgba(5,26,39,.3)}dialog::backdrop{background:rgba(5,26,39,.55);backdrop-filter:blur(3px)}dialog form{padding:30px;display:grid;gap:14px;position:relative}dialog h2{font:700 24px 'Manrope',sans-serif;margin:0 0 5px}.dialog-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:24px;color:var(--muted);cursor:pointer}
@media(max-width:760px){.context-bar{grid-template-columns:1fr;margin-top:0}.context-bar>i{display:none}.context-status{justify-self:start}.org-grid{grid-template-columns:1fr}.history-head{align-items:start;gap:15px}.election-history .card{grid-template-columns:50px 1fr}.election-history em{display:none}}

.context-bar{grid-template-columns:minmax(140px,.65fr) 1px minmax(150px,.75fr) 1px minmax(280px,1.25fr) auto;gap:14px}.church-manager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.church-manager .card{margin:0}.org-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;text-align:left;color:var(--ink);cursor:pointer;padding:15px}.org-card:hover,.org-card.selected{border-color:#8db8aa;box-shadow:0 7px 20px rgba(20,115,91,.08)}.org-avatar{width:38px;height:38px;border-radius:10px;background:#edf4f2;color:var(--forest);display:grid;place-items:center;font-size:10px;font-weight:800}.org-card>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.org-card b{font-size:12px}.org-card small{font-size:9px;color:var(--muted)}.org-card em{font-size:9px;color:var(--gold);font-style:normal}.new-org{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:15px}.new-org>span{color:var(--gold);display:grid}.new-org input{min-width:0}.selected-church{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:end;margin-top:18px}.selected-church dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.selected-church dl>div{background:#f5f7f8;border-radius:9px;padding:12px}.selected-church dt{font-size:9px;color:var(--muted);text-transform:uppercase}.selected-church dd{font:700 22px 'Manrope',sans-serif;margin:4px 0 0}
@media(max-width:1000px){.context-bar{grid-template-columns:1fr 1px 1fr}.context-bar>div:nth-of-type(3){grid-column:1/4}.context-status{grid-column:1/4;justify-self:start}}
@media(max-width:760px){.context-bar{grid-template-columns:1fr}.context-bar>div:nth-of-type(3),.context-status{grid-column:auto}.church-manager{grid-template-columns:1fr}.new-org{grid-template-columns:1fr}.new-org>span{display:none}.selected-church{grid-template-columns:1fr}}

/* Hierarquia organizacional */
.hierarchy-path{font-size:13px;color:var(--muted,#64748b);overflow-wrap:anywhere;margin:0 0 12px}
.hierarchy-manager{margin-bottom:24px}.hierarchy-manager details{border:1px solid #dce4e3;border-radius:12px;margin-bottom:12px;padding:16px}.hierarchy-manager summary{cursor:pointer;font-weight:700}.hierarchy-manager summary small{font-weight:400}.hierarchy-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin-top:16px}.hierarchy-form{display:flex;flex-direction:column;gap:12px;margin:0}.hierarchy-form label,.stack-form label,.new-org label{display:flex;flex-direction:column;gap:6px;min-width:0}.hierarchy-form select,.stack-form select,.new-org select{width:100%;min-width:0}.hierarchy-manager p{font-size:13px;color:#64748b}.context-bar>div{min-width:0}.context-bar select{max-width:100%}

/* Cadastro de congregação ocupa a largura da lista. */
.church-manager .new-org{grid-column:1 / -1;grid-template-columns:minmax(0,1fr) minmax(130px,180px) auto;align-items:end;gap:16px;padding:20px}
.new-org>.new-org-title{grid-column:1 / -1;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink)}
.new-org-title .icon{color:var(--gold)}
.new-org input,.new-org select{width:100%;min-width:0}
.new-org>button{white-space:nowrap;margin:0}
@media(max-width:1000px){.church-manager .new-org{grid-template-columns:minmax(0,1fr) 150px}.new-org>button{grid-column:1 / -1;justify-self:start}}
@media(max-width:560px){.church-manager .new-org{grid-template-columns:minmax(0,1fr);padding:16px}.new-org>button{width:100%;justify-self:stretch}}

/* Contexto administrativo: hierarquia separada dos campos de navegação. */
.organization-context{margin:0 0 30px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px rgba(13,38,55,.04);overflow:hidden}
.context-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 22px;background:#f8fafb;border-bottom:1px solid var(--line)}
.context-heading nav{min-width:0}.context-heading .context-status{flex-shrink:0;grid-column:auto}
.context-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px 0;list-style:none;margin:0;padding:0;color:var(--muted);font-size:12px;line-height:1.6}
.context-breadcrumb li{overflow-wrap:anywhere}.context-breadcrumb li+li:before{content:'\203A';display:inline-block;margin:0 10px;color:#91a5af}.context-breadcrumb li:last-child{color:var(--ink);font-weight:700}
.context-selectors{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.65fr);gap:20px;padding:20px 22px 22px}
.context-selectors label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--muted)}
.context-selectors select{width:100%;min-width:0;max-width:100%;height:46px;background-color:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 32px 10px 12px;color:var(--ink);font-size:13px;font-weight:600;letter-spacing:normal;text-overflow:ellipsis}
.context-selectors select:focus-visible{outline:2px solid var(--forest);outline-offset:2px}
@media(max-width:1000px){.context-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.context-selectors .context-election{grid-column:1 / -1}}
@media(max-width:560px){.context-heading{align-items:flex-start;padding:14px;gap:10px}.context-selectors{grid-template-columns:minmax(0,1fr);padding:16px 14px;gap:14px}.context-breadcrumb{font-size:11px}.context-breadcrumb li+li:before{margin:0 6px}}

.candidate-review-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px}
.candidate-review-heading h3{font-size:20px;margin:0 0 7px}.candidate-review-heading p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}
.candidate-count{flex-shrink:0;border-radius:999px;padding:7px 12px;background:#edf4f2;color:var(--forest);font-size:12px;font-weight:600}
.candidate-add{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:18px;background:#f7f9fa;border:1px solid var(--line);border-radius:12px;margin-bottom:20px}
.candidate-add label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:12px}.candidate-add input{width:100%;min-width:0;height:46px;background:white}
.candidate-add button{display:flex;align-items:center;justify-content:center;gap:7px;height:46px;margin:0;padding:0 18px}.candidate-add button .icon{width:18px;height:18px}
.candidate-empty{display:flex;align-items:center;gap:14px;padding:22px 18px;border:1px dashed var(--line);border-radius:12px}.candidate-empty>span{display:grid;place-items:center;background:#eef3f5;color:var(--muted);border-radius:12px;width:44px;height:44px;flex-shrink:0}.candidate-empty strong{font-size:14px}.candidate-empty p{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}
.candidate-review .candidate-list article{grid-template-columns:minmax(0,1fr) 160px;padding:16px 0}.candidate-review .candidate-list b{overflow-wrap:anywhere}.candidate-status-label{display:flex;flex-direction:column;gap:6px;font-size:10px;color:var(--muted)}.candidate-review select{width:100%;grid-column:auto;font-size:12px}
@media(max-width:560px){.candidate-review-heading{flex-direction:column;gap:12px}.candidate-add{grid-template-columns:minmax(0,1fr);padding:14px}.candidate-review .candidate-list article{grid-template-columns:minmax(0,1fr)}.candidate-empty{align-items:flex-start;padding:16px}}

.candidate-add select,.field-row select{width:100%;min-width:0;height:46px;background:#fff}.field-row select{flex:1}.member-import{display:grid;gap:14px}.member-import h3,.member-import p{margin:0}.member-import p{font-size:13px;color:var(--muted)}.member-import button{justify-self:start}

.schedule-settings{display:grid;grid-template-columns:minmax(0,1.4fr) 90px minmax(0,1fr);gap:16px;align-items:end}.schedule-heading,.schedule-summary{grid-column:1/-1}.schedule-heading h3{margin:0 0 6px}.schedule-heading p,.schedule-summary{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.schedule-settings label{min-width:0}.schedule-settings input{width:100%;min-width:0}.schedule-settings button{justify-self:start}@media(max-width:760px){.schedule-settings{grid-template-columns:minmax(0,1fr)}}

.test-banner{padding:12px 16px;margin:0 0 20px;border:1px solid #e8cd91;border-radius:10px;background:#fff5dc;color:#785314;font-size:12px;font-weight:700;letter-spacing:.04em}

.voter-access-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.voter-access-actions .secondary{padding:8px 12px;font-size:11px}

.help-entry{position:relative;width:min(1190px,calc(100% - 36px));margin:16px auto 0;text-align:right;font-size:12px}.help-entry a,.help-page a{color:var(--forest);text-underline-offset:3px}.help-page{max-width:1000px}.help-return{font-size:13px}.help-intro{margin:28px 0}.help-intro h1{font-family:Manrope,sans-serif;font-size:clamp(26px,4vw,38px);margin:10px 0}.help-intro p{color:var(--muted);line-height:1.6}.help-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.help-shortcuts a{padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;text-decoration:none;font-size:13px}.help-shortcuts a:hover{background:#edf4f2}.help-page section{scroll-margin-top:20px}.help-page h2{font-family:Manrope,sans-serif;font-size:23px}.help-page h3{font-size:16px;margin:0 0 8px}.help-page p,.help-page li{font-size:14px;line-height:1.75}.help-profiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.help-profiles p{color:var(--muted)}.help-steps{padding-left:24px}.help-steps>li{padding-left:8px;margin:0 0 24px}.help-steps>li::marker{font-weight:700;color:var(--forest)}.help-note,.help-example{background:#f4f7f8;border-radius:10px;padding:16px;font-size:13px;line-height:1.7}.help-example pre{margin-bottom:0;white-space:pre-wrap}.help-page details{padding:16px 0;border-bottom:1px solid var(--line)}.help-page summary{cursor:pointer;font-weight:600;line-height:1.5}.help-page details p{margin-bottom:0}.help-page a:focus-visible,.help-page summary:focus-visible{outline:2px solid var(--forest);outline-offset:4px}@media(max-width:760px){.help-profiles{grid-template-columns:1fr;gap:12px}.help-page .card{padding:22px}.help-shortcuts a{flex:1 1 180px}}

.admin-user-card summary{cursor:pointer;font-weight:700}.admin-user-card summary small{display:block;margin:8px 0 0;color:var(--muted);font-weight:400}.admin-user-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.admin-user-form label{min-width:0}.admin-user-form p,.admin-user-form fieldset,.admin-user-form h3{grid-column:1/-1}.admin-user-form p{font-size:12px;color:var(--muted)}.admin-church-permissions{border:1px solid var(--line);border-radius:10px;max-height:240px;overflow:auto;padding:16px}.admin-church-permissions label{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:12px}.admin-church-permissions input{width:auto}.admin-user-form button{justify-self:start}@media(max-width:600px){.admin-user-form{grid-template-columns:minmax(0,1fr)}}

#accept-invite[hidden]{display:none}.admin-user-form input[type=url]{width:100%;min-width:0}

.help-entry{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px}.help-page>.help-note{margin-bottom:24px}.help-page a{overflow-wrap:anywhere}

.installer-page{max-width:780px}.installer-steps{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:24px 0}.installer-steps li{padding:12px 18px;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.installer-steps [aria-current]{background:var(--forest);color:white}.installer-form{display:grid;gap:18px}.installer-form label{display:grid;gap:8px}.installer-form input,.installer-form select{width:100%;min-width:0}.installer-checks{padding-left:20px;line-height:2}.installer-error{padding:16px;border:1px solid #d29b95;border-radius:12px;background:#fff5f4;color:#8a2920}.installer-back{margin-top:16px}.installer-link{display:inline-block;text-decoration:none}.installer-page code{overflow-wrap:anywhere}

.backup-create{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.backup-create label{display:grid;gap:8px;flex:1 1 240px}.backup-item{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:20px 0;flex-wrap:wrap}.backup-item>div:first-child{min-width:0;flex:1 1 250px}.backup-item code{display:block;overflow-wrap:anywhere;margin-top:8px;font-size:11px}.backup-actions{display:flex;gap:10px;align-items:start}.backup-item p{color:var(--muted);font-size:13px}.backup-item summary{cursor:pointer;font-size:12px}
