:root{--bg:#f3f5f4;--panel:#fff;--text:#17211d;--muted:#68736e;--line:#dde4e0;--primary:#176b4d;--primary2:#0f5139;--soft:#e8f3ee;--danger:#9b2c2c;--warn:#fff4d6;--shadow:0 10px 30px rgba(20,40,30,.08);--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.app{min-height:100vh;display:grid;grid-template-columns:258px 1fr}.sidebar{background:#10251d;color:#fff;padding:20px 14px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 18px}.brand div:last-child{display:flex;flex-direction:column}.brand span{font-size:11px;color:#a8b8b0}.brand-mark{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#2b9c73,#b7dfcf);display:grid;place-items:center;color:#10251d;font-weight:900;letter-spacing:-1px}.brand-mark.small{width:40px;height:40px;border-radius:12px;font-size:13px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#789388;padding:14px 12px 4px}.sidebar nav button{border:0;background:transparent;color:#c9d5cf;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer}.sidebar nav button:hover,.sidebar nav button.active{background:#1b3a2f;color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid #25483b;padding:16px 8px 4px;display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;color:#bdcbc5}.link-btn{border:0;background:transparent;color:#cfe7dc;cursor:pointer;padding:0}.link-dark{border:0;background:none;color:var(--primary);font-weight:750;cursor:pointer;padding:0}.main{padding:0 28px 44px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:23px 0 17px}.topbar h2{margin:0;font-size:25px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.global-search-wrap{position:relative;width:min(430px,43vw)}.global-search-wrap input{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff;outline:none}.global-search-wrap input:focus{border-color:#70a991;box-shadow:0 0 0 3px #dff0e9}.search-results{position:absolute;top:45px;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:30;overflow:auto;max-height:460px}.search-results button{width:100%;border:0;background:#fff;padding:10px 12px;text-align:left;cursor:pointer;border-bottom:1px solid #eef1ef}.search-results button:hover{background:#f6faf8}.search-results small{display:block;color:var(--muted);margin-top:2px}.view{display:none}.view.active{display:block}.warning,.notice{background:var(--warn);border:1px solid #eedb9b;padding:12px 14px;border-radius:12px;margin-bottom:16px;display:flex;gap:10px;align-items:center;font-size:12.5px;line-height:1.45}.notice{background:#eef6f2;border-color:#cfe1d8}.warning button{margin-left:auto}.cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.dashboard-cards{grid-template-columns:repeat(8,minmax(115px,1fr))}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 2px 10px rgba(0,0,0,.02)}.card{padding:16px}.metric .label{color:var(--muted);font-size:11.5px}.metric strong{display:block;font-size:25px;margin-top:5px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{padding:16px;overflow:hidden}.panel h3{margin:0 0 12px;font-size:15px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.top-gap{margin-top:16px}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:13px;flex-wrap:wrap}.toolbar .spacer,.ask-actions .spacer{flex:1}.toolbar input,.toolbar select{padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;min-width:170px}.toolbar .grow{min-width:320px;flex:1}.btn{border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:9px;cursor:pointer;font-weight:650;font-size:12.5px;color:var(--text);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:5px}.btn:hover{background:#f7f9f8}.btn.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.primary:hover{background:var(--primary2)}.btn.danger{color:var(--danger);border-color:#e5bcbc}.btn.small{padding:6px 8px;font-size:11.5px}.btn.wide{width:100%;padding:11px}.chip-btn{border:1px solid #cfe1d8;background:#f6faf8;color:#275f49;border-radius:999px;padding:7px 10px;font-size:11.5px;cursor:pointer}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:11px;background:#fff}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid #edf1ef;font-size:12px;vertical-align:middle}th{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:#66736d;background:#f9fbfa;position:sticky;top:0;z-index:1}tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.row-sub{display:block;color:var(--muted);margin-top:3px}.badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef3f0;color:#4d5f57;font-size:10.5px;white-space:nowrap}.badge.ok{background:#e1f3e9;color:#1d6c48}.badge.warn{background:#fff0d8;color:#8b5c11}.badge.off{background:#f2e7e7;color:#8b4545}.empty{padding:32px;text-align:center;color:var(--muted)}.network{font-weight:800;color:#225f47}.actions{display:flex;gap:6px}.help{font-size:12px;color:var(--muted);line-height:1.5}.danger-text{color:var(--danger)}
.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#d9eee5 0,transparent 28%),linear-gradient(135deg,#f6f9f7,#e9f0ed)}.login-card{width:min(420px,92vw);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.login-card .brand-mark{margin-bottom:18px}.login-card h1{margin:0}.login-card p{margin:7px 0 22px;color:var(--muted)}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;color:#4f5c56;margin-bottom:12px}label input,label select,label textarea{padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;outline:none;color:var(--text)}label textarea{min-height:86px;resize:vertical}.tall{min-height:190px!important}.login-card small{display:block;color:#8b948f;margin-top:14px;line-height:1.45}.modal{border:0;background:transparent;padding:0}.modal::backdrop{background:rgba(10,25,18,.42);backdrop-filter:blur(2px)}.modal-card{width:min(760px,94vw);max-height:90vh;overflow:auto;border:0;border-radius:16px;background:#fff;box-shadow:var(--shadow);padding:0}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.modal-head h3{margin:0}.icon-btn{border:0;background:#f1f4f2;width:32px;height:32px;border-radius:8px;font-size:20px;cursor:pointer}.modal #modal-body{padding:18px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:14px 18px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.form-grid .full{grid-column:1/-1}.checkline{display:flex;flex-direction:row;gap:8px;align-items:flex-start;color:#52605a;font-size:12px;margin:4px 0 12px}.checkline input{margin-top:2px}.section-title{font-weight:800;margin:4px 0 12px}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.detail-grid>div{background:#f7faf8;border:1px solid #e6ece9;border-radius:10px;padding:11px}.detail-grid span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase}.detail-grid strong{display:block;margin-top:4px}.meta-box{background:#f6f8f7;border:1px solid var(--line);padding:10px;border-radius:9px;font-size:12px}.note-read{white-space:pre-wrap;line-height:1.55}.import-box{border:1px dashed #a9b9b1;background:#fbfdfc;border-radius:13px;padding:20px}.import-box input[type=file]{display:block;margin:10px 0}.stats-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.stat-pill{background:#eef4f1;border-radius:9px;padding:8px 10px;font-size:12px}
.notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.note-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;display:flex;flex-direction:column;min-height:220px}.note-card h3{font-size:15px;margin:10px 0 7px}.note-card p{white-space:pre-wrap;line-height:1.5;font-size:12.5px;color:#33413b;max-height:140px;overflow:auto}.note-top{display:flex;justify-content:space-between;align-items:center}.note-top time,.note-meta,.note-author{font-size:10.5px;color:var(--muted)}.note-meta{margin-top:auto;padding-top:9px}.note-author{margin:6px 0 10px}
.election-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.year-switch{display:inline-flex;background:#e8efeb;border-radius:11px;padding:4px}.year-switch button,.tabs button{border:0;background:transparent;padding:8px 13px;border-radius:8px;cursor:pointer;font-weight:750}.year-switch button.active,.tabs button.active{background:#fff;color:var(--primary);box-shadow:0 1px 5px rgba(0,0,0,.08)}.election-kpis{display:flex;gap:10px;flex-wrap:wrap}.election-kpis span{background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-size:11px;color:var(--muted)}.election-kpis strong{font-size:15px;color:var(--text)}.tabs{display:inline-flex;background:#e9eeeb;border-radius:10px;padding:4px;margin:3px 0 14px}.bars{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:145px 1fr 70px;align-items:center;gap:8px;font-size:11.5px}.bar-row>div{height:8px;background:#edf2ef;border-radius:999px;overflow:hidden}.bar-row i{display:block;height:100%;background:var(--primary);border-radius:999px}.bar-row strong{text-align:right}
.ai-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px}.ai-main{padding:0;overflow:hidden}.ai-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.ai-head h3{margin:0 0 4px}.ai-head p{margin:0;font-size:11px;color:var(--muted)}.ai-status{font-size:11px;display:flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;background:#b7bfc0}.dot.on{background:#23a36d}.chat{height:430px;overflow:auto;padding:18px;background:linear-gradient(#fbfdfc,#f8fbf9)}.ai-empty{height:100%;display:grid;place-content:center;text-align:center;color:var(--muted);gap:6px}.ai-empty strong{color:var(--text)}.msg{max-width:78%;margin-bottom:12px}.msg>div{padding:10px 12px;border-radius:13px;font-size:13px;line-height:1.5;white-space:normal}.msg.user{margin-left:auto}.msg.user>div{background:#1c6c4e;color:white;border-bottom-right-radius:4px}.msg.assistant>div{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}.msg small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.quick-prompts{display:flex;gap:6px;overflow:auto;padding:10px 16px;border-top:1px solid var(--line)}.quick-prompts button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 9px;font-size:10.5px;cursor:pointer}.ask-box{padding:12px 16px 16px;border-top:1px solid var(--line)}.ask-box textarea{width:100%;min-height:76px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:11px;outline:none}.ask-actions{display:flex;gap:9px;align-items:center;margin-top:8px}.speak-toggle{display:flex;flex-direction:row;align-items:center;gap:5px;margin:0;font-size:11px;font-weight:500}.mic.listening{background:#fce9e9;border-color:#e7b0b0;color:#8e2828}.ai-side p{font-size:12px;line-height:1.55;color:var(--muted)}.rule-card{border:1px solid var(--line);background:#f8faf9;padding:11px;border-radius:10px;margin-top:10px}.rule-card strong{display:block;font-size:12px}.rule-card span{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.45}.audit-detail{max-width:440px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast{position:fixed;right:20px;bottom:20px;background:#10251d;color:#fff;padding:11px 14px;border-radius:10px;box-shadow:var(--shadow);z-index:100;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#8f2d2d}
@media(max-width:1250px){.dashboard-cards{grid-template-columns:repeat(4,1fr)}.notes-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1050px){.grid-2,.ai-layout{grid-template-columns:1fr}.ai-side{order:-1}.app{grid-template-columns:218px 1fr}.main{padding-left:20px;padding-right:20px}.detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app{display:block}.sidebar{position:static;height:auto;min-height:0}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}.nav-label{grid-column:1/-1}.sidebar-foot{margin-top:14px}.main{padding:0 14px 30px}.topbar{align-items:flex-start;flex-direction:column}.global-search-wrap{width:100%}.dashboard-cards{grid-template-columns:repeat(2,1fr)}.form-grid,.notes-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.detail-grid{grid-template-columns:1fr 1fr}.election-head{align-items:flex-start;flex-direction:column}.chat{height:360px}.msg{max-width:92%}}

.source-list{display:grid;gap:9px;margin-top:14px;max-height:420px;overflow:auto}.source-list>div{border-top:1px solid var(--line);padding-top:8px}.source-list strong{display:block;font-size:11px}.source-list span{display:block;color:var(--muted);font-size:10.5px;line-height:1.4;margin-top:2px}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-box{border:1px solid var(--line);background:#fafcfb;border-radius:11px;padding:10px}.profile-box h4{margin:0 0 8px;font-size:12px}.profile-box>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #edf1ef;padding:5px 0;font-size:10.5px}.profile-box>div:first-of-type{border-top:0}.profile-box strong{white-space:nowrap}.profile-box small{color:var(--muted);font-weight:500}
@media(max-width:760px){.profile-grid{grid-template-columns:1fr}}

.ai-warning{margin:12px 16px 0;padding:10px 12px;border:1px solid #e2bf71;background:#fff8e7;border-radius:10px;display:flex;flex-direction:column;gap:3px;font-size:11px;color:#6b5220}.ai-warning strong{font-size:12px}.intel-health{display:flex;gap:7px;flex-wrap:wrap;padding:10px 16px 0}.intel-health span{font-size:10px;border:1px solid var(--line);background:#f8faf9;border-radius:999px;padding:4px 7px}.intel-health .ok{color:#246848}
.assistant-action{margin-top:7px;padding:10px 11px;border:1px solid #d7e4dd;border-radius:10px;background:#f2f8f5;font-size:11.5px;line-height:1.45}.assistant-action strong{display:block}.assistant-action-buttons{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}.assistant-action.confirmed{background:#e7f6ed;border-color:#bddfc9}.assistant-action.cancelled{background:#f5f5f5;border-color:#ddd}.assistant-action small{display:block;margin-top:5px!important;color:#627169!important}
.assistant-report{margin-top:10px;padding:11px 12px;border:1px solid #b9d9ca;background:#f1f8f5;border-radius:11px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.assistant-report strong{color:#155c43}.assistant-report span{color:var(--muted);font-size:11px;flex:1;min-width:220px}

/* V12 — Rede permanente */
.inline-entry{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:8px;align-items:center}.inline-entry input,.inline-entry select{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fff}.rating{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef3f0;font-size:10.5px}.rating.r1,.rating.r2{background:#f3ecec;color:#7d4848}.rating.r3{background:#fff4d6;color:#7b611f}.rating.r4,.rating.r5{background:#e1f3e9;color:#1d6c48}.dashboard-cards{grid-template-columns:repeat(6,minmax(115px,1fr))}
@media(max-width:1250px){.dashboard-cards{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.inline-entry{grid-template-columns:1fr}.dashboard-cards{grid-template-columns:repeat(2,1fr)}}
.link-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.link-summary>div{border:1px solid var(--line);background:#f8faf9;border-radius:10px;padding:10px}.link-summary span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase}.link-summary strong{display:block;font-size:18px;margin-top:3px}.link-summary small{display:block;color:var(--muted);margin-top:4px;line-height:1.35}
@media(max-width:760px){.link-summary{grid-template-columns:repeat(2,1fr)}}

/* V13 — Memória, Rede, Pesquisa e Vault */
.v13-overview{margin-bottom:18px}.v13-overview .panel-head p{margin:4px 0 0}.v13-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.v13-metrics button{border:1px solid var(--line);background:#f8faf9;border-radius:10px;text-align:left;padding:10px;cursor:pointer}.v13-metrics span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase}.v13-metrics strong{font-size:20px;display:block;margin-top:4px}
.timeline-list{position:relative;display:grid;gap:0;padding-left:18px}.timeline-list:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:#d8e4de}.timeline-item{position:relative;padding:0 0 18px 18px}.timeline-dot{position:absolute;left:-16px;top:5px;width:11px;height:11px;border-radius:50%;background:var(--primary);border:2px solid var(--bg)}.timeline-item time{font-size:10px;color:var(--muted)}.timeline-item h3{font-size:13px;margin:3px 0}.timeline-item p{font-size:12px;color:#4b5b54;margin:3px 0;line-height:1.45}.timeline-item small{font-size:10px;color:var(--muted)}
.network-kpis{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.network-kpis>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 11px}.network-kpis span{font-size:9px;text-transform:uppercase;color:var(--muted);display:block}.network-kpis strong{font-size:17px}.network-canvas{min-height:520px;overflow:auto;background:radial-gradient(circle at 50% 50%,#f9fcfa,#f3f7f5);border:1px solid var(--line);border-radius:12px;margin-top:10px}.network-canvas svg{display:block;width:100%;min-width:760px;height:560px}.net-line{stroke:#c4d6ce;stroke-width:1;opacity:.65}.net-node circle{fill:#176b4d;stroke:#fff;stroke-width:2}.net-node text{font-size:9px;fill:#35463e}.network-canvas input{padding:8px}
.research-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.research-multi{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:10px;margin:0 0 12px}.research-multi legend{font-size:12px;font-weight:700;padding:0 5px}.analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analysis-card{border:1px solid var(--line);background:#f8faf9;border-radius:10px;padding:10px}.analysis-card span,.analysis-card small{display:block;color:var(--muted);font-size:10px}.analysis-card strong{display:block;font-size:20px;margin:3px 0}
.quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.quality-list{max-height:240px;overflow:auto;border-top:1px solid var(--line)}.quality-list>div{font-size:11px;padding:7px 0;border-bottom:1px solid #eef1ef}.empty.compact{padding:15px}.panel code{font-size:10px}
@media(max-width:1250px){.v13-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.v13-metrics,.analysis-grid,.quality-grid{grid-template-columns:1fr 1fr}.network-canvas{min-height:400px}.network-canvas svg{height:430px}}

/* V13.2 — identidade única e papéis */
.role-pills{display:flex;gap:6px;flex-wrap:wrap}.role-pill{display:inline-flex;align-items:center;border:1px solid #dfe5e3;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.3;background:#f7f9f8;color:#4b5754}.role-pill.lead{background:#edf7f3;border-color:#cce9dd;color:#1e644e}.role-pill.staff{background:#f2f4fb;border-color:#d9def2;color:#3f4f82}.role-pill.base{background:#f6f6f4;color:#62645f}.role-box{border:1px solid #e4e8e6;border-radius:14px;margin:10px 0;background:#fbfcfb;overflow:hidden}.role-head{display:flex!important;align-items:flex-start!important;gap:10px;padding:14px 16px;cursor:pointer}.role-head input{margin-top:3px}.role-head span{display:flex;flex-direction:column;gap:2px}.role-head small{font-weight:400;color:#68736f;line-height:1.35}.role-fields{padding:0 16px 16px;border-top:1px solid #edf0ef;margin-top:0}.role-fields.hidden{display:none!important}

/* V13.2.4 — ingestão CSV/XLSX + feedback visual */
.import-success-card{margin-top:14px;border:1px solid #b9ddc9;background:#eaf7ef;border-radius:12px;padding:13px 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.import-success-card strong{color:#175f41;font-size:13px}.import-success-card span{color:#48685a;font-size:12px;flex:1;min-width:220px}.import-success-card .btn{margin-left:auto}.import-reading{display:inline-flex;align-items:center;gap:7px;color:#53635c}.import-reading:before{content:'';width:10px;height:10px;border:2px solid #b7c8c0;border-top-color:#22664d;border-radius:50%;animation:importSpin .8s linear infinite}@keyframes importSpin{to{transform:rotate(360deg)}}
tr.import-new-row td{animation:importRowFlash 4.8s ease-out}@keyframes importRowFlash{0%,22%{background:#dff4e8}100%{background:transparent}}.btn:disabled{opacity:.65;cursor:wait}

/* V13.3 — Cadastro por voz */
.voice-import-panel{border:1px solid rgba(11,79,74,.22);box-shadow:0 12px 32px rgba(11,79,74,.07)}
.voice-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;align-items:start}
.voice-controls{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.voice-status{padding:12px 14px;border-radius:10px;background:#f4f6f5;color:#33413f;font-weight:600;margin:10px 0}.voice-status.recording{background:#fff0f0;color:#982c2c}.voice-status.processing{background:#fff8e8;color:#775b18}.voice-status.ok{background:#ecf7f3;color:#155c4c}.voice-status.error{background:#fff0f0;color:#982c2c}
.voice-live{display:flex;align-items:center;gap:8px;font-size:12px;color:#65716f}.voice-live #voice-live-dot{width:10px;height:10px;border-radius:50%;background:#b6c1bf}.voice-live #voice-live-dot.on{background:#c53333;box-shadow:0 0 0 5px rgba(197,51,51,.12);animation:voicePulse 1.3s infinite}@keyframes voicePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}
.voice-tip{margin-top:12px}.voice-preview{margin-top:18px}.voice-preview-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.voice-preview-head span{font-size:12px;color:#66716f}.voice-table input{min-width:120px;padding:7px 8px;font-size:12px}.voice-table td{vertical-align:top}.voice-table tr.voice-review{background:#fff9ea}.voice-preview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}@media(max-width:900px){.voice-grid{grid-template-columns:1fr}.voice-preview-head{align-items:flex-start;flex-direction:column}}
/* V13.3.2 — Cadastro por voz movido para Pessoas */
.modal-card.voice-modal-card{width:min(1500px,96vw)}
.voice-person-intro{margin-bottom:12px}
@media(max-width:780px){.modal-card.voice-modal-card{width:96vw}.voice-modal-card .voice-grid{grid-template-columns:1fr}.voice-modal-card .voice-table{min-width:1180px!important}}

/* V13.4 — Operador IA contextual no cadastro por voz */
.voice-ai-command{margin:12px 0 14px;padding:12px;border:1px solid #d8e0de;border-radius:12px;background:#f8fbfa;display:grid;gap:10px}
.voice-ai-command>div:first-child{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.voice-ai-command>div:first-child span{font-size:12px;color:#66716f}
.voice-ai-command-row{display:grid;grid-template-columns:1fr auto;gap:8px}.voice-ai-command-row input{min-width:0}
.voice-ai-result{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#eef7f4;border:1px solid #cfe3dc}.voice-ai-result-title{display:flex;justify-content:space-between;gap:10px;align-items:center}.voice-ai-result-title span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#47776a}.voice-ai-result p{margin:8px 0}.voice-ai-result details{margin-top:8px}.voice-ai-warnings{color:#76520d}
@media(max-width:780px){.voice-ai-command-row{grid-template-columns:1fr}.voice-ai-command-row .btn{width:100%}}

/* V13.5 — Copiloto Global */
.copilot-fab{position:fixed;right:22px;bottom:22px;z-index:80;border:0;border-radius:999px;background:#0b4f4a;color:#fff;padding:11px 15px;display:flex;align-items:center;gap:8px;box-shadow:0 12px 30px rgba(11,79,74,.28);cursor:pointer}.copilot-fab span{font-size:18px}.copilot-fab strong{font-size:12px}.copilot-backdrop{position:fixed;inset:0;background:rgba(19,32,29,.28);opacity:0;pointer-events:none;z-index:88;transition:.2s}.copilot-backdrop.open{opacity:1;pointer-events:auto}.copilot-drawer{position:fixed;top:0;right:0;height:100vh;width:min(480px,96vw);background:#fff;z-index:89;box-shadow:-18px 0 45px rgba(20,41,34,.2);transform:translateX(104%);transition:transform .24s ease;display:flex;flex-direction:column}.copilot-drawer.open{transform:translateX(0)}.copilot-head{padding:18px 18px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}.copilot-kicker{font-size:9px;font-weight:800;letter-spacing:.12em;color:#2c7460}.copilot-head h2{font-size:18px;margin:3px 0 2px}.copilot-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.4}.copilot-close{border:0;background:#f0f4f2;border-radius:50%;width:34px;height:34px;font-size:23px;cursor:pointer;color:#41514b}.copilot-context{padding:9px 18px;border-bottom:1px solid var(--line);background:#f8fbfa;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.copilot-context span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.copilot-context strong{font-size:11px;color:#1b5544}.copilot-context em{font-size:10px;font-style:normal;color:#7b6731;background:#fff6dc;border-radius:999px;padding:3px 7px}.copilot-chips{padding:10px 14px 4px;display:flex;gap:6px;flex-wrap:wrap}.copilot-chips button{border:1px solid #d8e4df;background:#f8fbfa;border-radius:999px;padding:6px 9px;font-size:10px;color:#31584c;cursor:pointer}.copilot-chat{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.copilot-empty{border:1px dashed #cbdad4;border-radius:14px;padding:16px;background:#fbfcfb}.copilot-empty strong{font-size:13px}.copilot-empty p{font-size:11px;line-height:1.5;color:var(--muted);margin:6px 0 0}.copilot-msg{max-width:92%;display:grid;gap:5px}.copilot-msg.user{align-self:flex-end}.copilot-msg.assistant{align-self:flex-start}.copilot-bubble{padding:10px 12px;border-radius:13px;background:#eef4f1;font-size:12px;line-height:1.48;color:#283b34}.copilot-msg.user .copilot-bubble{background:#0b4f4a;color:#fff}.copilot-msg small{font-size:9.5px;color:#7a8782;padding:0 4px}.copilot-proposal{border:1px solid #cbded6;background:#f4faf7;border-radius:12px;padding:10px;margin-top:2px}.copilot-proposal strong{display:block;font-size:11px;line-height:1.45;color:#164e3d}.copilot-proposal>div{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}.copilot-proposal.confirmed{background:#e9f6ee;border-color:#b9dfc8}.copilot-proposal.cancelled,.copilot-proposal.undone{background:#f5f5f5;border-color:#ddd}.copilot-confirmed{font-size:10px!important;color:#52635d;align-items:center;flex-wrap:wrap}.copilot-compose{padding:12px 14px 16px;border-top:1px solid var(--line);background:#fbfcfb}.copilot-compose textarea{width:100%;resize:none;min-height:62px;max-height:140px;padding:10px 11px;border:1px solid #ccd9d4;border-radius:11px;font:inherit;font-size:12px;line-height:1.4;background:#fff}.copilot-compose-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.copilot-compose small{display:block;margin-top:7px;color:#71807a;font-size:9.5px}.copilot-compose .btn.danger{background:#8e3434;color:#fff;border-color:#8e3434}
@media(max-width:700px){.copilot-fab{right:14px;bottom:14px;padding:10px 13px}.copilot-drawer{width:100vw}.copilot-backdrop{display:none}.copilot-chat{padding:11px}.copilot-msg{max-width:96%}}
.modal-copilot-launch{margin-left:auto;margin-right:6px;border:1px solid #cfe1da;background:#eef7f3;color:#175b45;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800;cursor:pointer}.modal-head:has(.modal-copilot-launch) h3{margin-right:auto}.modal .copilot-backdrop{position:fixed;inset:0}.modal .copilot-drawer{position:fixed}

/* V13.7 — Voice Realtime */
.voice-command-dock{position:fixed;right:22px;bottom:22px;z-index:82;display:flex;gap:9px;align-items:center}.voice-command-dock .copilot-fab{position:static;right:auto;bottom:auto}.voice-fab{border:0;border-radius:999px;background:#fff;color:#0b4f4a;padding:11px 15px;display:flex;align-items:center;gap:8px;box-shadow:0 12px 30px rgba(11,79,74,.22);cursor:pointer;border:1px solid #cfe1da;transition:.18s}.voice-fab span{font-size:17px}.voice-fab strong{font-size:12px}.voice-fab:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(11,79,74,.27)}.voice-fab.recording{background:#8e3434;color:#fff;border-color:#8e3434;animation:voicePulse 1.25s infinite}.voice-fab.processing{background:#eef7f3;color:#175b45;cursor:wait}.global-voice-status{position:fixed;right:22px;bottom:78px;z-index:83;max-width:min(430px,calc(100vw - 32px));background:#173f34;color:#fff;border-radius:12px;padding:9px 12px;font-size:11px;line-height:1.4;box-shadow:0 10px 28px rgba(18,49,40,.22);opacity:0;transform:translateY(5px);pointer-events:none;transition:.18s}.global-voice-status.show{opacity:1;transform:translateY(0)}.global-voice-status.recording{background:#7b2e2e}@keyframes voicePulse{0%,100%{box-shadow:0 0 0 0 rgba(142,52,52,.3),0 12px 30px rgba(11,79,74,.22)}50%{box-shadow:0 0 0 9px rgba(142,52,52,0),0 12px 30px rgba(11,79,74,.22)}}
#copilot-speech-toggle{margin-left:auto}.modal-copilot-launch{display:inline-flex;align-items:center;gap:5px}
@media(max-width:700px){.voice-command-dock{right:12px;bottom:12px;gap:7px}.voice-command-dock .copilot-fab,.voice-fab{padding:10px 12px}.voice-command-dock strong{display:none}.global-voice-status{right:12px;bottom:66px;max-width:calc(100vw - 24px)}}
/* V13.7 — conversa de voz contínua */
.voice-fab.live{background:#0b4f4a;color:#fff;border-color:#0b4f4a}.voice-fab.live:not(.recording):not(.processing){box-shadow:0 0 0 4px rgba(11,79,74,.10),0 12px 30px rgba(11,79,74,.25)}.global-voice-status.speaking{background:#174f62}.voice-live-badge{background:#dff4e8!important;color:#17633e!important;font-weight:800}.copilot-kicker{white-space:nowrap}
@media(max-width:700px){.voice-fab.live strong{display:none}}

/* V13.7.1 — speech output opt-in */
#copilot-speech-toggle{font-weight:700}
.voice-output-toggle{width:42px;height:42px;border-radius:999px;border:1px solid #cfe1da;background:#fff;color:#0b4f4a;cursor:pointer;box-shadow:0 10px 24px rgba(11,79,74,.15);font-size:16px}.voice-output-toggle.active{background:#174f62;color:#fff;border-color:#174f62}.voice-output-toggle:hover{transform:translateY(-1px)}
@media(max-width:700px){.voice-output-toggle{width:40px;height:40px}}

/* V13.7.2 recovery */
.login-error{margin:12px 0;padding:10px 12px;border:1px solid #e7aaaa;background:#fff1f1;color:#8b1e1e;border-radius:10px;font-size:14px;line-height:1.4}.login-error.hidden{display:none}


/* V13.8 — Painel operacional e transparência */
.dashboard-report-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;background:linear-gradient(135deg,#f8fbfa,#eef7f3)}.dashboard-report-head h3{font-size:21px;margin:2px 0 3px}.dashboard-report-head p,.chart-panel p{margin:3px 0 0;color:var(--muted);font-size:11.5px}.eyebrow{font-size:9.5px;font-weight:850;letter-spacing:.14em;color:#34715a}.dashboard-report-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.dashboard-report-actions select{padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:11.5px}.dashboard-kpis{grid-template-columns:repeat(8,minmax(105px,1fr));margin-bottom:14px}.dashboard-kpis .card{padding:13px}.dashboard-kpis .metric strong{font-size:22px}.analytics-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px}.analytics-grid .wide{min-width:0}.chart-panel{min-height:300px}.chart-panel .panel-head{align-items:flex-start;margin-bottom:10px}.svg-chart{width:100%;overflow:hidden}.svg-chart svg{width:100%;height:215px;display:block}.svg-chart .axis{stroke:#dfe8e4;stroke-width:1}.svg-chart .series-line{stroke:#0b4f4a;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.svg-chart .series-dot{fill:#fff;stroke:#0b4f4a;stroke-width:2}.chart-axis-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:-3px}.hbars{display:flex;flex-direction:column;gap:9px}.hbar-row{display:grid;grid-template-columns:minmax(90px,1.1fr) 2fr 34px;gap:8px;align-items:center;font-size:11px}.hbar-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar-row strong{text-align:right;font-size:11px}.hbar-track,.quality-track,.op-progress{height:8px;background:#edf3f0;border-radius:999px;overflow:hidden}.hbar-track i,.quality-track i,.op-progress i{display:block;height:100%;background:#2b8a68;border-radius:999px}.quality-bars{display:flex;flex-direction:column;gap:13px}.quality-row>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:5px}.quality-row small{display:block;color:var(--muted);font-size:9.5px;margin-top:4px}.mini-series{height:205px;display:flex;align-items:flex-end;gap:4px;padding:8px 2px 20px;border-bottom:1px solid #e7eeeb}.mini-col{height:100%;min-width:5px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.mini-bar{height:170px;width:100%;display:flex;align-items:flex-end;justify-content:center}.mini-bar i{display:block;width:min(16px,78%);background:#3f9677;border-radius:5px 5px 2px 2px;min-height:0}.mini-col span{font-size:8px;color:var(--muted)}.front-list{display:flex;flex-direction:column;gap:9px}.front-list>div{display:grid;grid-template-columns:110px 1fr auto;gap:8px;align-items:center;border-bottom:1px solid #eef2f0;padding:8px 0}.front-list span,.front-list small{font-size:10px;color:var(--muted)}.front-list strong{font-size:12px}.op-progress{width:120px;margin:5px 0 3px}.report-footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:9.5px;padding:12px 3px 0}.copilot-text-dock{position:fixed;right:22px;bottom:22px;z-index:82}.copilot-text-dock .copilot-fab{position:static;right:auto;bottom:auto}
@media(max-width:1280px){.dashboard-kpis{grid-template-columns:repeat(4,1fr)}.analytics-grid{grid-template-columns:1fr 1fr}.analytics-grid .wide{grid-column:1/-1}}@media(max-width:760px){.dashboard-report-head{align-items:flex-start;flex-direction:column}.dashboard-report-actions{width:100%}.dashboard-report-actions select{flex:1;min-width:120px}.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}.analytics-grid .wide{grid-column:auto}.front-list>div{grid-template-columns:1fr}.report-footer{flex-direction:column}.copilot-text-dock{right:12px;bottom:12px}}
@media print{body{background:#fff}.sidebar,.topbar,.warning,.copilot-text-dock,.copilot-drawer,.copilot-backdrop,.dashboard-report-actions,.dashboard-secondary{display:none!important}.app{display:block!important}.main{padding:0!important}.view{display:none!important}#view-dashboard{display:block!important}.panel,.card{box-shadow:none;break-inside:avoid}.analytics-grid{grid-template-columns:1fr 1fr!important}.dashboard-kpis{grid-template-columns:repeat(4,1fr)!important}.notice{border:1px solid #ddd;background:#fff}.report-footer{margin-top:12px}}

/* V13.8.2 — feedback conclusivo do cadastro por voz */
.voice-commit-progress{margin:14px 0;padding:14px;border:1px solid #d8e2de;background:#f7faf9;border-radius:12px}.voice-commit-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.voice-commit-progress-head strong{font-size:13px;color:#233d36}.voice-commit-progress-head span{font-size:12px;font-weight:800;color:#0b4f4a}.voice-progress-track{height:9px;background:#e2eae7;border-radius:999px;overflow:hidden}.voice-progress-track i{display:block;height:100%;background:#0b4f4a;border-radius:999px;transition:width .25s ease}.voice-commit-progress small{display:block;margin-top:7px;color:#6b7773;font-size:11px}.voice-result-card{margin:14px 0;padding:15px;border-radius:13px;display:flex;align-items:flex-start;gap:12px}.voice-result-card .voice-result-icon{width:34px;height:34px;flex:0 0 34px;border-radius:999px;display:grid;place-items:center;font-size:18px;font-weight:900}.voice-result-card>div:last-child{display:grid;gap:4px}.voice-result-card strong{font-size:14px}.voice-result-card span{font-size:13px}.voice-result-card small{font-size:11px;line-height:1.45}.voice-result-success{border:1px solid #b9ddc9;background:#eaf7ef;color:#175f41}.voice-result-success .voice-result-icon{background:#cfead9;color:#175f41}.voice-result-partial{border:1px solid #e5c97a;background:#fff8e6;color:#76520d}.voice-result-partial .voice-result-icon{background:#f3dfaa;color:#76520d}.voice-result-error{border:1px solid #e5bcbc;background:#fff0f0;color:#8a2d2d}.voice-result-error .voice-result-icon{background:#f0cccc;color:#8a2d2d}.voice-auto-close{font-weight:700;margin-top:2px}.voice-post-warnings{margin:8px 0 14px}

/* V13.8.2 — status do cadastro sempre visível dentro do modal */
.voice-import-result{position:sticky;top:0;z-index:8;background:#fff;padding-top:2px;margin-bottom:10px}
.voice-modal-card .voice-import-result:empty{display:none}
@media(max-width:700px){.voice-import-result{position:static}}

/* V13.8.4 — validação inteligente do cadastro por voz */
.voice-validation-summary{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.voice-validation-summary .badge{white-space:normal}.voice-table .badge.off{background:#fde8e7;color:#9c2620}.voice-table .badge.warn{white-space:normal;line-height:1.35}.voice-table tr.voice-review td{vertical-align:top}

/* V13.8.4 — alertas visíveis no top layer do dialog + revisão de duplicidade */
.modal-card{position:relative}
.modal-toast{position:sticky;top:0;z-index:120;margin:0 18px;padding:10px 12px;border-radius:10px;background:#173f34;color:#fff;box-shadow:0 10px 26px rgba(20,40,33,.22);opacity:0;transform:translateY(-4px);pointer-events:none;transition:.18s;font-size:12px;line-height:1.45}
.modal-toast.show{opacity:1;transform:none;margin-top:10px;margin-bottom:2px}
.modal-toast.error{background:#8f2d2d}
.person-duplicate-conflict{position:relative;z-index:30;border:1px solid #e5b3ad;background:#fff4f1;color:#5c2823;border-radius:12px;padding:13px 14px;margin-bottom:14px;box-shadow:0 8px 20px rgba(103,43,35,.08)}
.person-duplicate-conflict strong{display:block;font-size:13px;margin-bottom:5px}.person-duplicate-conflict p{margin:0;font-size:11.5px;line-height:1.5}.conflict-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}


/* V13.8.5 — confirmação contextual de arquivamento/exclusão */
.action-modal-card{max-width:620px;width:min(620px,94vw)}
.action-decision{display:grid;gap:14px}
.action-decision textarea{min-height:100px;resize:vertical}
.action-decision.danger-zone{border-top:4px solid #b5362f;padding-top:14px}
.modal-actions .btn.danger{margin-left:4px}
.context-create-btn{margin-top:10px}

/* V13.8.6 — Arquivados */
.archive-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
#archive-list .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#view-archives .table-wrap{background:#fff;border-radius:16px;border:1px solid var(--line,#dfe7e3)}


/* V13.8.7 — decisão humana de duplicidade */
.person-duplicate-conflict.conflict-warning{border-color:#e9c970;background:#fff9e8;color:#5c4a18}
.person-duplicate-conflict.conflict-danger{border-color:#e5a29a;background:#fff1ef;color:#6b2620}
.person-duplicate-conflict ul{margin:9px 0 0 18px;padding:0;font-size:11.5px;line-height:1.55}
.conflict-foot{display:block;margin-top:9px;opacity:.78;line-height:1.45}
.duplicate-inspect-dialog{border:0;padding:0;border-radius:16px;width:min(720px,calc(100vw - 28px));max-height:86vh;box-shadow:0 28px 80px rgba(0,0,0,.28);z-index:2147483647}
.duplicate-inspect-dialog::backdrop{background:rgba(15,25,24,.42)}
.duplicate-inspect-card{background:#fff;overflow:auto;max-height:86vh;border-radius:16px}
.duplicate-inspect-card .modal-head{position:sticky;top:0;background:#fff;z-index:2;padding:16px 18px;border-bottom:1px solid #e7e2d8;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.duplicate-inspect-card .modal-head strong{display:block;font-size:16px}.duplicate-inspect-card .modal-head span{display:block;font-size:11px;color:#6f746f;margin-top:3px}
.duplicate-inspect-body{padding:18px}


/* V13.8.8 — força-tarefa de cadastro + UX mobile autoexplicativa */
.registration-focus{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 14px;padding:16px 18px;border:1px solid #cfe0d8;border-radius:15px;background:linear-gradient(135deg,#f8fcfa,#edf7f2)}
.registration-focus h3{margin:2px 0 3px;font-size:22px}.registration-focus p{margin:0;color:var(--muted);font-size:12px}.registration-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.operational-main{box-shadow:0 8px 20px rgba(11,79,74,.16)}
.registration-toolbar .filter-action,#people-filter{background:#0b4f4a!important;color:#fff!important;border-color:#0b4f4a!important;font-weight:800}.registration-toolbar .filter-action:hover,#people-filter:hover{filter:brightness(1.08)}
#nav button{position:relative;transition:transform .12s ease,background .12s ease,border-color .12s ease}#nav button.active{font-weight:800}.nav-priority{font-weight:700}
@media(max-width:760px){
  .sidebar{padding-bottom:8px}.sidebar nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:8px!important}
  .sidebar nav .nav-label{grid-column:1/-1;margin:8px 2px 0;font-size:10px;opacity:.72}
  #nav button{min-height:48px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:11px!important;padding:10px 30px 10px 12px!important;text-align:left!important;background:rgba(255,255,255,.07)!important;color:#fff!important;box-shadow:0 3px 10px rgba(0,0,0,.08);font-size:13px!important}
  #nav button:after{content:'›';position:absolute;right:11px;top:50%;transform:translateY(-52%);font-size:22px;opacity:.8}
  #nav button.active{background:#fff!important;color:#0b4f4a!important;border-color:#fff!important;box-shadow:0 6px 16px rgba(0,0,0,.16)}
  #nav button.nav-priority:not(.active){background:rgba(255,255,255,.13)!important}
  .topbar{scroll-margin-top:8px}.main{padding-top:10px!important}.view{scroll-margin-top:10px}
  .registration-focus{align-items:stretch;flex-direction:column;padding:14px}.registration-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.registration-actions .btn{width:100%;min-height:46px;font-size:13px}
  .registration-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;align-items:stretch!important}.registration-toolbar>*{width:100%!important;max-width:none!important}.registration-toolbar .spacer{display:none!important}.registration-toolbar .btn,.registration-toolbar a.btn{min-height:44px;display:flex;align-items:center;justify-content:center}.registration-toolbar #people-filter{order:4;font-size:13px}
  .toolbar .btn{min-height:42px}.actions .btn,.table-wrap .btn{min-height:36px}
}

/* V13.8.8.1 — hotfix de carregamento Pessoas */
.operational-error{max-width:760px}.operational-error .top-gap{margin-top:14px}

/* ============================================================
   BASE SOURE V14 — CONSOLIDAÇÃO OPERACIONAL
   Navegação autoexplicativa + força-tarefa de cadastro
   ============================================================ */
#nav{display:flex;flex-direction:column;gap:7px;padding:10px 8px 14px}
#nav .nav-label{margin:14px 8px 4px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:800}
#nav .nav-module{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:11px 12px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(255,255,255,.065);color:#fff;text-align:left;cursor:pointer;box-shadow:0 1px 0 rgba(255,255,255,.03) inset;transition:transform .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease}
#nav .nav-module span{font-weight:800;font-size:14px;line-height:1.15}
#nav .nav-module small{font-size:10.5px;color:rgba(255,255,255,.62);line-height:1.2}
#nav .nav-module:hover,#nav .nav-module:focus-visible{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.32);transform:translateX(2px);outline:none}
#nav .nav-module.active{background:#f6fff9;color:#0b4f3b;border-color:#f6fff9;box-shadow:0 0 0 2px rgba(46,160,109,.28),0 5px 16px rgba(0,0,0,.18);transform:translateX(3px)}
#nav .nav-module.active small{color:#3c6b5b}
#nav .nav-module.active::before{content:'✓';position:absolute;margin-left:-5px;transform:translateX(-100%);font-weight:900;color:#70d4a8}
#nav .nav-module{position:relative}
#nav .nav-priority{border-color:rgba(112,212,168,.38)}

.btn.primary,.filter-action{background:#0e7a55!important;border-color:#0e7a55!important;color:#fff!important;font-weight:800}
.btn.primary:hover,.filter-action:hover{background:#096744!important;border-color:#096744!important}
.toolbar .btn,.registration-actions .btn{min-height:40px}

.v14-section-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:12px}
.v14-section-head h3{margin:0 0 4px}.v14-section-head p{margin:0;color:var(--muted,#66736d)}
.v14-mission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.v14-mission{border:1px solid #dce5e0;border-radius:12px;padding:15px;background:#fff;display:flex;flex-direction:column;gap:9px;min-height:150px}
.v14-mission.alert{border-color:#e4bc70;background:#fffaf0}.v14-mission.ok{border-color:#bcdcca;background:#f8fffb}
.v14-mission h4{margin:0;font-size:15px}.v14-mission .mission-count{font-size:30px;font-weight:900;line-height:1;color:#0e6b4d}.v14-mission p{margin:0;color:#66736d;font-size:12px;min-height:34px}.v14-mission .btn{margin-top:auto;align-self:flex-start}
.v14-quality-list{margin-top:14px}.v14-quality-item{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #edf1ef}.v14-quality-item:last-child{border-bottom:0}
.role-conflict-note{border:1px solid #e2a442;background:#fff8e8;border-radius:10px;padding:10px 12px;margin:8px 0;color:#70460c}
.employee-group-list .actions{white-space:nowrap}
.employee-group-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 16px}.employee-group-summary>div{border:1px solid #dce5e0;border-radius:10px;padding:10px}.employee-group-summary span{display:block;font-size:11px;color:#68756f}.employee-group-summary strong{font-size:20px}

@media(max-width:760px){
  #nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}
  #nav .nav-label{grid-column:1/-1;margin:12px 3px 2px}
  #nav .nav-module{min-height:64px;padding:10px 11px;border-width:1px}
  #nav .nav-module span{font-size:13px}
  #nav .nav-module small{font-size:9.5px}
  #nav .nav-module.active{transform:none;box-shadow:0 0 0 2px rgba(46,160,109,.35)}
  #nav .nav-module.active::before{display:none}
  .employee-group-summary{grid-template-columns:1fr}
}

/* V14.1.0 */
.v141-reportbar{margin-bottom:14px;border:1px solid var(--line,#d9e1e7);border-radius:14px;padding:12px 14px;background:var(--surface,#fff)}
.v141-reportbar span:first-child{display:flex;flex-direction:column;gap:2px}
.v141-reportbar small{opacity:.72}
.actions{display:flex;gap:6px;flex-wrap:wrap}
@media print{.sidebar,.topbar,.copilot-text-dock,.copilot-drawer,.copilot-backdrop{display:none!important}}

/* V14.2.0 — listas, qualidade e sobreposições */
.v142-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;border:1px solid var(--line,#d9e1e7);border-radius:16px;background:var(--surface,#fff);margin-bottom:14px}.v142-hero h3{margin:4px 0}.v142-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.v142-cases{display:grid;gap:10px}.v142-case{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px;border:1px solid var(--line,#d9e1e7);border-radius:14px;background:var(--surface,#fff)}.v142-case h4{margin:7px 0 3px}.v142-case p{margin:0 0 4px}.v142-entity-list{display:grid;gap:8px}.v142-entity{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line,#d9e1e7);border-radius:12px}.v142-entity span{margin-right:auto;opacity:.7}.v142-list-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.v142-list-card{border:1px solid var(--line,#d9e1e7);border-radius:12px;background:var(--surface,#fff);padding:11px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px}.v142-list-card:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.08)}.v142-rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v142-rel-grid>div{padding:10px;border:1px solid var(--line,#d9e1e7);border-radius:10px;display:flex;flex-direction:column}.v142-quality-summary{margin-bottom:14px;padding:14px;border:1px solid var(--line,#d9e1e7);border-radius:14px;background:var(--surface,#fff)}@media(max-width:760px){.v142-hero,.v142-case{flex-direction:column}.v142-rel-grid{grid-template-columns:1fr 1fr}}


/* ============================================================
   V14.3.0 — VISUAL OPERACIONAL, GRÁFICOS E FEEDBACK
   ============================================================ */
:root{--green:#12a36f;--green-dark:#087452;--blue:#2477e8;--blue-dark:#1657ad;--amber:#f3a51b;--red:#d94a45;--violet:#7557d9;--cyan:#15a7b8;--surface:#fff;--soft-blue:#eef5ff;--soft-green:#ebfaf4;--soft-amber:#fff7e7;--soft-violet:#f3f0ff}
.btn{border:1px solid #cfd9d4;background:#fff;color:#203029;border-radius:10px;padding:9px 13px;font-weight:750;cursor:pointer;box-shadow:0 2px 5px rgba(16,37,29,.07);transition:transform .12s ease,box-shadow .15s ease,filter .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(16,37,29,.12)}.btn:active{transform:translateY(1px) scale(.99)}
.btn.primary{background:linear-gradient(135deg,var(--green),var(--green-dark))!important;border-color:var(--green-dark)!important;color:#fff!important}.btn.info{background:linear-gradient(135deg,#3388f2,var(--blue-dark));border-color:var(--blue-dark);color:#fff}.btn.warn{background:linear-gradient(135deg,#ffbd42,#e18c08);border-color:#d98000;color:#432900}.btn.ai{background:linear-gradient(135deg,#8b6df0,#6042c6);border-color:#6042c6;color:#fff}.btn.danger{background:linear-gradient(135deg,#e65e58,#b9312c);color:#fff;border-color:#b9312c}
#nav .nav-module{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.045));border-color:rgba(255,255,255,.16)}#nav .nav-module:hover{background:linear-gradient(135deg,rgba(38,183,126,.26),rgba(47,111,224,.13));border-color:rgba(111,218,176,.48)}#nav .nav-module.active{background:linear-gradient(135deg,#fafffc,#e8fff4);color:#07543c;border-color:#77d4ad}.nav-label{color:#97c6b3!important}
.kpi{transition:transform .18s ease,box-shadow .18s ease}.kpi:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(27,68,50,.12)}
.v143-report-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;border-radius:18px;background:linear-gradient(135deg,#0c664c,#1a8060 54%,#256fd2);color:#fff;box-shadow:0 16px 36px rgba(13,96,72,.20);margin-bottom:16px}.v143-report-hero h2{margin:5px 0 7px}.v143-report-hero p{margin:0;opacity:.86;max-width:760px}.v143-integrity{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:8px;min-width:310px}.v143-integrity>div{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);padding:10px;border-radius:12px}.v143-integrity strong{display:block;font-size:24px}.v143-integrity span{font-size:10px;opacity:.8}
.v143-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v143-chart-card{background:#fff;border:1px solid #dce6e1;border-radius:16px;padding:16px;box-shadow:0 6px 18px rgba(15,55,38,.06)}.v143-chart-card:nth-child(3){grid-column:1/-1}.v143-chart-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.v143-chart-head h3{margin:0 0 3px}.v143-chart-head p{margin:0;font-size:11px;color:var(--muted)}.v143-bars{display:grid;gap:7px}.v143-bar-row{border:0;background:transparent;display:grid;grid-template-columns:minmax(120px,210px) 1fr 52px;gap:10px;align-items:center;padding:6px 4px;border-radius:9px;cursor:pointer;text-align:left}.v143-bar-row:hover{background:#f3f8f6}.v143-bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.v143-bar-track{height:12px;border-radius:999px;background:#edf2ef;overflow:hidden}.v143-bar-track i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--green),#41c894,var(--blue));transition:width .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--delay)}.v143-bar-row.animate .v143-bar-track i{width:var(--bar)}.v143-bar-row strong{text-align:right;color:#134e3d}.v143-report-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.v143-detail-summary{display:flex;align-items:baseline;gap:8px;padding:12px 14px;background:var(--soft-blue);border-radius:12px;margin-bottom:12px}.v143-detail-summary strong{font-size:28px;color:var(--blue-dark)}
.v143-dup-report{display:grid;gap:10px}.v143-dup-case{border:1px solid #ead8a8;background:#fffdfa;border-radius:14px;padding:12px}.v143-dup-case-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}.v143-dup-case-head strong{margin-right:auto}.v143-dup-person{display:grid;gap:3px;padding:10px 12px;border-radius:11px;background:#f7faf8;border:1px solid #e1e9e5;margin-top:6px}.v143-dup-person span{font-size:11px;color:#586761}.v143-case-title{padding:13px;border-radius:13px;background:var(--soft-amber);border:1px solid #f2d69b;margin-bottom:12px}.v143-case-title p{margin:7px 0 0}
.v143-import-box{display:grid;gap:12px}.v143-inline-progress{height:10px;background:#edf2ef;border-radius:99px;overflow:hidden}.v143-inline-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--blue));transition:width .25s ease}
.v143-success-overlay{position:fixed;inset:0;z-index:2147483647;display:grid;place-items:center;background:rgba(6,24,17,.62);backdrop-filter:blur(5px);opacity:0;transition:opacity .18s ease}.v143-success-overlay.show{opacity:1}.v143-success-card{width:min(620px,calc(100vw - 28px));background:#fff;border-radius:24px;padding:28px;text-align:center;box-shadow:0 34px 90px rgba(0,0,0,.34);transform:scale(.88) translateY(10px);animation:v143Pop .42s cubic-bezier(.17,.85,.32,1.18) forwards}.v143-check-wrap{width:92px;height:92px;margin:0 auto 10px}.v143-check-wrap svg{width:100%;height:100%;overflow:visible}.v143-check-wrap circle{fill:#eafbf4;stroke:#18a66f;stroke-width:4;stroke-dasharray:176;stroke-dashoffset:176;animation:v143Circle .55s .08s ease forwards}.v143-check-wrap path{fill:none;stroke:#119c69;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:54;stroke-dashoffset:54;animation:v143Check .38s .48s ease forwards}.v143-success-word{font-size:32px;font-weight:950;color:#0d9d68;letter-spacing:.05em}.v143-success-card p{color:#52635c;margin:7px 0 16px}.v143-success-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;margin:14px 0 18px}.v143-success-stats>div{background:#f3faf7;border:1px solid #d9efe5;border-radius:12px;padding:10px}.v143-success-stats strong{display:block;font-size:24px;color:#096c4e}.v143-success-stats span{font-size:10px;color:#60716a}.v143-success-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}@keyframes v143Pop{to{transform:scale(1) translateY(0)}}@keyframes v143Circle{to{stroke-dashoffset:0}}@keyframes v143Check{to{stroke-dashoffset:0}}
@media(max-width:860px){.v143-report-hero{align-items:stretch;flex-direction:column}.v143-integrity{min-width:0}.v143-report-grid{grid-template-columns:1fr}.v143-chart-card:nth-child(3){grid-column:auto}.v143-bar-row{grid-template-columns:minmax(100px,150px) 1fr 42px}}
@media(max-width:560px){.v143-integrity{grid-template-columns:1fr 1fr}.v143-bar-row{grid-template-columns:100px 1fr 38px;gap:6px}.v143-success-card{padding:22px 16px}.v143-success-word{font-size:27px}}


/* V14.3.1 — impressão tabular universal */
.v1431-print-btn{font-weight:800;box-shadow:0 7px 18px rgba(26,102,164,.16)}
.v1431-print-toolbar{justify-content:flex-end;margin-bottom:12px}
.v1431-print-preview .notice{margin-bottom:12px}
.v1431-print-section{display:flex;justify-content:space-between;gap:18px;padding:10px 12px;border:1px solid #d8e2dd;border-radius:10px;margin-top:8px;background:#f8fbf9}
.v1431-print-section strong{color:#173828}.v1431-print-section span{color:#65736b;font-size:12px}
@media(max-width:760px){.v1431-print-section{flex-direction:column;gap:3px}.v1431-print-btn{width:100%}}

/* V14.3.2 — Pessoa clicável dentro dos grupos */
.v1432-person-name{
  appearance:none;border:0;background:transparent;padding:2px 0;margin:0;
  color:#0b6b46;cursor:pointer;text-align:left;display:inline-flex;
  flex-direction:column;gap:2px;font:inherit;line-height:1.15;
}
.v1432-person-name strong{font-weight:800;color:#0a6040;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.v1432-person-name span{font-size:10px;color:#66766e;font-weight:600;opacity:.85}
.v1432-person-name:hover strong,.v1432-person-name:focus-visible strong{color:#0d8a5b;text-decoration-thickness:2px}
.v1432-person-name:focus-visible{outline:3px solid rgba(18,150,96,.22);outline-offset:4px;border-radius:5px}
#modal-body td.actions .btn{min-width:72px}

/* V14.3.3 — limpeza do grupo + impressão tabular */
.v1431-print-preview .notice.success{border-left:4px solid #159447;background:#f0faf4}
.v1431-print-section{border:1px solid #d7e4dc;border-radius:10px;padding:10px 12px;background:#fbfdfc}
#modal-actions .btn{min-height:40px}

/* V14.3.4 — PDF único + navegação individual reforçada */
.v1431-print-btn::before{content:"";display:none}
.v1434-person-name{min-width:0}
.v1434-person-name strong{color:#075f42;text-decoration:underline;text-decoration-thickness:1.5px}
.v1434-person-name span{font-size:10px;color:#497063}
.v1434-person-name:hover strong{color:#0a8b5e}


/* V14.3.5 — força/concentração da base por Liderança */
.v1435-lead-strength{margin:16px 0;padding:14px;border:1px solid #cfe7da;border-radius:16px;background:linear-gradient(135deg,#f7fcf9,#f6f9ff)}
.v1435-strength-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.v1435-strength-kpis>div{padding:12px;border:1px solid #dbe8e0;border-radius:13px;background:#fff;box-shadow:0 4px 14px rgba(27,63,45,.05)}
.v1435-strength-kpis span{display:block;font-size:11px;color:#65746d;margin-bottom:5px}.v1435-strength-kpis strong{font-size:17px;color:#173c2b}
.v1435-strength-kpis.compact strong{font-size:14px}.v1435-strength-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v1435-strength-grid section{padding:13px;border:1px solid #dce6e0;border-radius:14px;background:#fff}.v1435-strength-grid h3,.v1435-strength-grid h4{margin:0 0 10px;color:#1f4935}
.v1435-strength-row{display:grid;grid-template-columns:minmax(130px,1.15fr) minmax(90px,1fr) auto;gap:8px;align-items:center;padding:6px 0;font-size:12px}.v1435-strength-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1435-strength-row>i{height:8px;background:#e8efeb;border-radius:999px;overflow:hidden}.v1435-strength-row>i>em{display:block;height:100%;width:0;background:linear-gradient(90deg,#20a565,#3588d8);border-radius:999px;transition:width .55s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d)}.v1435-strength-row.animate>i>em{width:var(--w)}.v1435-strength-row>strong{min-width:64px;text-align:right;color:#173c2b}.v1435-strength-row small{font-weight:500;color:#748078}
@media(max-width:760px){.v1435-strength-kpis,.v1435-strength-grid{grid-template-columns:1fr}.v1435-strength-row{grid-template-columns:minmax(110px,1fr) minmax(75px,.9fr) auto}}

/* V14.3.7 — grupo canônico da Pessoa */
.v1437-person-link{border:0;background:transparent;padding:0;text-align:left;color:var(--ink,#10231b);cursor:pointer;display:flex;flex-direction:column;gap:2px;font:inherit}.v1437-person-link strong{text-decoration:underline;text-decoration-color:rgba(26,119,82,.35);text-underline-offset:3px}.v1437-person-link:hover strong{color:#0d8156;text-decoration-color:#0d8156}.v1437-person-link small{font-size:10px;opacity:.58;text-decoration:none}.v1437-group-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.v1437-group-hero>div{padding:12px;border:1px solid rgba(14,90,62,.14);border-radius:12px;background:linear-gradient(135deg,#f8fffb,#eef9f3)}.v1437-group-hero span{display:block;font-size:11px;opacity:.65;margin-bottom:5px}.v1437-group-hero strong{font-size:16px}.v1437-bars{display:grid;gap:8px}.v1437-bar-row>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px}.v1437-track{height:7px;border-radius:999px;background:#e8efe9;overflow:hidden;margin-top:4px}.v1437-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#17865a,#49b57e);border-radius:inherit;transition:width .55s ease}.v1437-track i.animate{width:var(--target)}.v1437-role-history{margin-top:14px;border-top:1px solid rgba(0,0,0,.08);padding-top:10px}.v1437-role-history summary{cursor:pointer;font-weight:700}.v1437-role-history div{font-size:12px;padding:5px 0;opacity:.78}.v1437-role-switch{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid rgba(86,74,210,.18);background:linear-gradient(135deg,#f7f6ff,#eef5ff);border-radius:14px;margin-bottom:14px}.v1437-role-switch>div{min-width:170px}.v1437-role-switch label{min-width:230px;flex:1}.v1437-role-switch select{width:100%}@media(max-width:760px){.v1437-group-hero{grid-template-columns:1fr 1fr}.v1437-role-switch{display:grid;grid-template-columns:1fr}.v1437-role-switch label{min-width:0}}

/* V14.3.7.1 — feedback de falha de carregamento */
.v14371-load-error{max-width:720px;margin:20px auto;padding:24px;border-left:5px solid #c2410c;background:#fff7ed}.v14371-load-error h3{margin-top:0}.v14371-load-error p{color:#7c2d12}


/* V14.3.8 — duplicidades com origem */
.v1438-dup-report{display:grid;gap:14px;margin-top:14px}
.v1438-dup-case{border:1px solid rgba(24,85,68,.18);background:#fff;border-radius:16px;padding:14px;box-shadow:0 8px 28px rgba(22,54,45,.07)}
.v1438-dup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}
.v1438-dup-head h4{margin:6px 0 2px;font-size:1.05rem}.v1438-dup-head p{margin:0;color:#56625d}
.v1438-name-link{border:0;background:transparent;padding:0;color:#0b6955;font:inherit;font-weight:800;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.v1438-name-link:hover{color:#0b4f84}
#modal-body .table-wrap{max-width:100%;overflow:auto}

/* V14.3.9 — força por local de votação */
.v1439-polling-card{grid-column:1/-1!important}
.v1439-strength-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.v1439-strength-grid>section{padding:13px;border:1px solid #dce6e0;border-radius:14px;background:#fff}
.v1439-strength-grid h3,.v1439-strength-grid h4{margin:0 0 10px;color:#1f4935}
.v1439-polling-bars{display:grid;gap:9px}
.v1439-polling-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(90px,1fr) auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(22,82,57,.08)}
.v1439-polling-label{display:flex;flex-direction:column;gap:2px}.v1439-polling-label span{font-size:10px;color:var(--muted,#6b7a72)}
.v1439-polling-row>strong{font-size:12px;color:#164f3b;text-align:right}.v1439-polling-row small{font-size:10px;font-weight:600;opacity:.65}
.v1439-group-hero{grid-template-columns:repeat(5,minmax(0,1fr))}.v1439-lead-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1050px){.v1439-strength-grid{grid-template-columns:1fr 1fr}.v1439-strength-grid>section:last-child{grid-column:1/-1}.v1439-group-hero{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.v1439-strength-grid{grid-template-columns:1fr}.v1439-strength-grid>section:last-child{grid-column:auto}.v1439-group-hero,.v1439-lead-kpis{grid-template-columns:1fr 1fr}.v1439-polling-row{grid-template-columns:1fr}.v1439-polling-row>strong{text-align:left}}


/* V14.4.0 — Eleições 2026 */
.election-office-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:14px;margin-top:14px}
.election-office-card .panel-head{align-items:flex-start}
.election-office-card .detail-grid{margin:10px 0 14px}
.election-section-turnout{margin:12px 0}
.election-section-turnout small{display:block;color:var(--muted,#67756f);margin-top:3px}
.notice.success{border-color:#a8d5c3;background:#f1faf6}
@media(max-width:760px){.election-office-grid{grid-template-columns:1fr}.election-kpis{flex-wrap:wrap}.tabs{overflow-x:auto;white-space:nowrap}}


/* ============================================================
   V14.6.0 — CANDIDATOS 2026 / CANDIDATE 360
   ============================================================ */
.focus-module-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}.focus-module-head h2{margin:3px 0 5px;font-size:26px}.focus-module-head p{margin:0;color:var(--muted);max-width:780px}.eyebrow{font-size:11px;letter-spacing:.08em;font-weight:800;color:var(--primary);text-transform:uppercase}.focus-candidate-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.focus-candidate-card{appearance:none;text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:15px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:.18s ease;color:inherit}.focus-candidate-card:hover{transform:translateY(-1px);border-color:#8bcbb5}.focus-candidate-card.active{border-color:var(--primary);box-shadow:0 0 0 2px rgba(19,145,105,.10);background:linear-gradient(135deg,#fff,#f0faf6)}.focus-candidate-card strong{font-size:19px}.focus-candidate-card b{font-size:17px;color:var(--primary);margin-top:5px}.focus-candidate-card small,.focus-candidate-office{color:var(--muted)}.focus-candidate-office{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.focus-tabs{margin-bottom:16px;overflow-x:auto;white-space:nowrap}.focus-scope-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.focus-scope-toolbar>div{display:flex;flex-direction:column}.focus-scope-toolbar span{color:var(--muted);font-size:12px}.focus-summary-hero{border-radius:18px;padding:20px 22px;background:linear-gradient(135deg,#0f7d5d,#1aa37c);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px}.focus-summary-hero h2{font-size:28px;margin:3px 0}.focus-summary-hero p{margin:0;opacity:.86}.focus-summary-hero .eyebrow{color:#d9fff1}.focus-total{text-align:right}.focus-total span,.focus-total small{display:block;opacity:.85}.focus-total strong{font-size:38px;line-height:1.05;display:block;margin:3px 0}.focus-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.focus-metric{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:13px 14px;min-height:88px}.focus-metric span{display:block;color:var(--muted);font-size:12px}.focus-metric strong{display:block;font-size:20px;margin-top:5px}.focus-metric small{display:block;color:var(--muted);margin-top:3px;font-size:11px}.focus-metrics-deep{grid-template-columns:repeat(5,minmax(0,1fr))}.focus-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.focus-chart{min-width:0}.focus-bars{display:flex;flex-direction:column;gap:8px}.focus-bar-row{display:grid;grid-template-columns:22px minmax(90px,1.2fr) minmax(90px,2fr) 48px;align-items:center;gap:7px;font-size:12px}.focus-bar-rank{color:var(--muted);text-align:right}.focus-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-bar-track{height:9px;background:#e8f0ed;border-radius:999px;overflow:hidden}.focus-bar-track i{display:block;height:100%;background:linear-gradient(90deg,#1aa37c,#68c6a7);border-radius:999px}.focus-bar-row strong{text-align:right;font-variant-numeric:tabular-nums}.focus-narrative p,.focus-report-text p{font-size:14px;line-height:1.65;margin:0}.focus-section-tools{margin-bottom:12px}.focus-highlight-list{display:grid;gap:10px}.focus-highlight-list>div{border-bottom:1px solid var(--line);padding:8px 0;display:grid;grid-template-columns:150px 1fr auto;gap:8px;align-items:center}.focus-highlight-list span{color:var(--muted);font-size:12px}.focus-highlight-list b{color:var(--primary)}.focus-report-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.focus-report-panel{max-width:1100px}.top-gap{margin-top:12px}
@media(max-width:1100px){.focus-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.focus-metrics-deep{grid-template-columns:repeat(3,minmax(0,1fr))}.focus-chart-grid{grid-template-columns:1fr}.focus-candidate-picker{grid-template-columns:1fr}}
@media(max-width:680px){.focus-module-head,.focus-summary-hero,.focus-scope-toolbar{flex-direction:column;align-items:stretch}.focus-total{text-align:left}.focus-metrics-grid,.focus-metrics-deep{grid-template-columns:1fr}.focus-bar-row{grid-template-columns:20px minmax(80px,1fr) minmax(70px,1.4fr) 44px}.focus-highlight-list>div{grid-template-columns:1fr}.focus-candidate-picker{gap:8px}}

/* V14.6.0 — Pós-Eleição 2026 / Base × Urna */
.pe-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.pe-head h2{margin:3px 0 5px}.pe-head p{margin:0;max-width:760px;color:var(--muted,#66756e)}.pe-head-actions{display:flex;gap:8px;flex-wrap:wrap}.pe-definition{margin-bottom:12px}.pe-candidates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0}.pe-candidate-btn{border:1px solid #d8e4de;background:#fff;border-radius:12px;padding:10px 12px;text-align:left;cursor:pointer;color:inherit}.pe-candidate-btn strong{display:block;font-size:14px}.pe-candidate-btn small{display:block;color:#74827b;margin-top:3px}.pe-candidate-btn.active{border-color:#168b68;background:#edf8f4;box-shadow:0 0 0 1px rgba(22,139,104,.08)}.pe-tabs{margin-bottom:14px}.pe-overview-grid{align-items:stretch}.pe-bar-row{margin:11px 0}.pe-bar-label{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:5px}.pe-bar-label span{color:#56665e}.pe-bar-track{height:9px;border-radius:999px;background:#e8efeb;overflow:hidden}.pe-bar-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1d9b75,#62b79d)}.pe-funnel-foot{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#6c7973;font-size:11px}.pe-metric-grid,.pe-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pe-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-metric{border:1px solid #dfe8e3;border-radius:10px;padding:9px;background:#fbfdfc}.pe-metric span,.pe-metric small{display:block;color:#718078;font-size:10px}.pe-metric strong{display:block;font-size:18px;margin:3px 0}.pe-candidate-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:12px 0}.pe-candidate-summary .panel-head>strong{font-size:18px}.pe-rule-stack{display:grid;gap:8px}.pe-rule-stack>div{display:grid;grid-template-columns:110px 1fr;gap:8px;border-bottom:1px solid #edf1ef;padding:8px 0}.pe-rule-stack span{color:#65736c}.pe-class{display:inline-block;padding:4px 7px;border-radius:999px;background:#eef4f1;color:#345248;font-size:10px;white-space:nowrap}.pe-territory-grid{align-items:start}.pe-report p{font-size:13px;line-height:1.55}.pe-report .notice{margin-top:16px}
@media(max-width:1100px){.pe-candidate-summary-grid{grid-template-columns:1fr}.pe-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-candidates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pe-head{display:block}.pe-head-actions{margin-top:10px}.pe-candidates{grid-template-columns:1fr 1fr}.pe-metric-grid,.pe-mini-grid{grid-template-columns:1fr 1fr}.pe-rule-stack>div{grid-template-columns:1fr}.pe-territory-grid{grid-template-columns:1fr}}
