@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#18231f;font-synthesis:none;--ink:#18231f;--muted:#68736e;--green:#286b55;--green-dark:#173f34;--green-soft:#e9f2ed;--line:#dfe5e1;--surface:#fff;--orange:#dc8c46;--blue:#4b86a8;background:#f6f7f4;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f6f7f4;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #286b553b}.app-shell{min-height:100vh}.topbar{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-bottom:1px solid #e5e9e6;height:74px;position:sticky;top:0}.nav-container,.content-container,.footer-inner{width:min(1180px,100% - 40px);margin:0 auto}.nav-container{align-items:center;gap:48px;height:100%;display:flex}.brand{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;text-decoration:none;display:flex}.brand-mark{color:#eef8f3;background:var(--green-dark);border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #ffffff1a}.brand>span:last-child{flex-direction:column;line-height:1;display:flex}.brand strong{letter-spacing:-.7px;font:800 20px/1 Manrope,sans-serif}.brand small{color:#7b8580;text-transform:uppercase;letter-spacing:1.15px;margin-top:5px;font-size:9px}.main-nav{align-self:stretch;gap:4px;display:flex}.main-nav a{color:#616b66;cursor:pointer;background:0 0;border:0;padding:0 13px;font-size:14px;font-weight:600;position:relative}.main-nav a:hover{color:var(--ink)}.main-nav a.active{color:var(--green)}.main-nav a.active:after{content:"";background:var(--green);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:13px;right:13px}.nav-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.search-trigger{color:#69736e;cursor:pointer;background:#f9faf8;border:1px solid #dfe5e1;border-radius:10px;align-items:center;gap:8px;min-width:190px;height:39px;padding:0 8px 0 12px;display:flex}.search-trigger span{font-size:13px}kbd{color:#87908c;background:#fff;border:1px solid #dfe4e1;border-bottom-width:2px;border-radius:5px;padding:5px 6px;font:600 10px/1 DM Sans}.search-trigger kbd{margin-left:auto}.menu-button{background:0 0;border:0;padding:7px;display:none}.demo-notice{color:#dcebe5;background:#112f27;justify-content:center;align-items:center;gap:10px;min-height:35px;padding:7px 20px;font-size:12px;display:flex}.demo-notice span{align-items:center;gap:5px;font-weight:700;display:flex}.demo-notice p{color:#acc6bb;margin:0}.demo-notice.official{background:#143d31}.demo-notice.partial{color:#fff4df;background:#5b421e}.demo-notice.partial p{color:#e2c99f}.demo-notice.error{background:#70342d}.loading-state{color:#78847e;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:62vh;display:flex}.loading-state>span{border:3px solid #d9e4de;border-top-color:var(--green);border-radius:50%;width:30px;height:30px;animation:.75s linear infinite spin}.loading-state h2{color:var(--ink);margin:15px 0 4px;font-size:17px}.loading-state p{font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}.content-container{padding:60px 0 80px}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px;display:flex}.page-heading>div:first-child{max-width:700px}.eyebrow{color:var(--green);letter-spacing:1.55px;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:800;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{letter-spacing:-2.1px;color:#15241f;margin-bottom:14px;font-size:clamp(34px,4vw,52px);line-height:1.04}.page-heading p{color:var(--muted);margin:0;font-size:17px;line-height:1.6}.heading-actions{align-items:center;gap:10px;display:flex}.select-control{border:1px solid var(--line);color:#66716c;background:#fff;border-radius:11px;align-items:center;gap:8px;height:44px;padding:0 12px;display:flex;box-shadow:0 3px 10px #142a2206}.select-control span{font-size:12px}.select-control select{appearance:none;cursor:pointer;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-weight:700}.municipality-trigger{border:1px solid var(--line);min-width:230px;height:44px;color:var(--green);cursor:pointer;text-align:left;background:#fff;border-radius:11px;align-items:center;gap:9px;padding:0 11px;transition:all .18s;display:flex;box-shadow:0 3px 10px #142a2206}.municipality-trigger:hover{border-color:#aebfb6;transform:translateY(-1px)}.municipality-trigger:disabled{cursor:wait;opacity:.72;transform:none}.municipality-trigger span{flex-direction:column;flex:1;min-width:0;display:flex}.municipality-trigger small{color:#7a847f;font-size:9px;line-height:1.2}.municipality-trigger strong{text-overflow:ellipsis;white-space:nowrap;max-width:168px;color:var(--ink);font-size:11px;line-height:1.35;overflow:hidden}.is-spinning{animation:.75s linear infinite spin}.municipality-status{color:var(--green);background:#eff7f3;border:1px solid #cfe0d7;border-radius:11px;align-items:center;gap:11px;margin:-19px 0 18px;padding:12px 14px;display:flex}.municipality-status div{flex-direction:column;flex:1;min-width:0;display:flex}.municipality-status strong{color:#214d3d;font-size:11px}.municipality-status span{color:#60736b;margin-top:2px;font-size:10px}.municipality-status.error{color:#a34c41;background:#fff2f0;border-color:#edcfc9}.municipality-status.error strong{color:#863c34}.municipality-status button{color:currentColor;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;display:grid}.partial-year-badge{color:#986029;letter-spacing:.35px;text-transform:uppercase;vertical-align:middle;background:#fff0df;border-radius:99px;margin-left:8px;padding:3px 7px;font-size:8px;font-style:normal;font-weight:800;display:inline-flex}.export-button,.secondary-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 16px;font-size:13px;font-weight:700;transition:all .18s;display:inline-flex}.export-button:hover,.secondary-button:hover{border-color:#b8c9c0;transform:translateY(-1px)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:18px;display:grid}.stat-grid.three{grid-template-columns:repeat(3,1fr)}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:15px;gap:14px;min-width:0;padding:20px;display:flex;box-shadow:0 7px 24px #19312809}.metric-icon{border-radius:11px;flex:0 0 40px;place-items:center;height:40px;display:grid}.metric-icon.green{color:var(--green);background:#e9f2ed}.metric-icon.blue{color:#3e7695;background:#e9f1f5}.metric-icon.orange{color:#be7132;background:#fbefe3}.metric-icon.purple{color:#806694;background:#f0ecf4}.metric-icon.teal{color:#2e7d70;background:#e6f2f0}.metric-icon.red{color:#a2473b;background:#f9e5e2}.metric-card div:last-child{min-width:0}.metric-card p{color:#717b76;margin:0 0 5px;font-size:12px}.metric-card strong{letter-spacing:-.6px;white-space:nowrap;font:700 22px/1.2 Manrope;display:block}.metric-card span{color:#78827d;margin-top:6px;font-size:11px;display:block}.metric-card.unavailable strong{color:var(--muted);font-weight:600}.metric-card.unavailable .metric-icon{opacity:.65}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr);gap:18px;margin-bottom:60px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;padding:24px;box-shadow:0 7px 24px #19312809}.panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.panel-heading h3{letter-spacing:-.35px;margin-bottom:5px;font-size:17px}.panel-heading p{color:#7a847f;margin:0;font-size:12px}.text-link{color:var(--green);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:2px 0;font-size:12px;font-weight:700;display:inline-flex}.text-link:hover svg{transform:translate(2px)}.text-link svg{transition:transform .16s}.chart-summary{align-items:center;gap:9px;margin-top:22px;display:flex}.chart-summary strong{font:700 22px/1 Manrope}.chart-summary .positive{color:#287255;background:#eaf4ee;border-radius:99px;padding:4px 7px;font-size:11px;font-weight:700}.chart-summary small{color:#8a938f;font-size:11px}.area-chart-wrap{height:235px;margin-top:15px}.chart-tooltip{color:#fff;background:#132f27;border-radius:8px;padding:9px 11px;box-shadow:0 5px 18px #10282033}.chart-tooltip span{color:#aac3b9;margin-bottom:2px;font-size:10px;display:block}.chart-tooltip strong{font-size:12px}.category-content{grid-template-columns:185px 1fr;align-items:center;margin-top:18px;display:grid}.donut-wrap{height:190px;position:relative}.donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-center strong{font:700 16px/1 Manrope}.donut-center span{color:#828b87;margin-top:5px;font-size:10px}.legend-list{flex-direction:column;gap:12px;display:flex}.legend-row{grid-template-columns:8px 1fr 28px 62px;align-items:center;gap:7px;font-size:11px;display:grid}.legend-dot{border-radius:50%;width:7px;height:7px}.legend-row strong{font-size:11px}.legend-row small{color:#7a847f;text-align:right}.section-block{margin-top:58px}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.section-heading .eyebrow{margin-bottom:6px}.section-heading h2{letter-spacing:-1px;margin:0;font-size:27px}.section-heading>p{color:var(--muted);margin:0;font-size:13px}.contract-list{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden}.contract-row{border-bottom:1px solid #e8ece9;grid-template-columns:42px 1fr auto 28px;align-items:center;gap:14px;padding:18px 20px;display:grid}.contract-row:last-child{border-bottom:0}.contract-row:hover{background:#fbfcfa}.supplier-logo{color:#537166;background:#edf2ef;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.contract-main{min-width:0}.contract-title{align-items:center;gap:9px;display:flex}.contract-main h3{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;overflow:hidden}.contract-main p{color:#5f6965;white-space:nowrap;text-overflow:ellipsis;margin:5px 0;font-size:12px;overflow:hidden}.contract-main small{color:#8b9490;font-size:10px}.sanction-badge{color:#a45c28;white-space:nowrap;background:#fff0e3;border-radius:99px;align-items:center;gap:4px;padding:4px 6px;font-size:9px;font-weight:700;display:inline-flex}.sanction-badge.clear{color:#287053;background:#e8f3ed}.contract-value{text-align:right}.contract-value strong{font:700 13px/1.2 Manrope;display:block}.status{color:#6f7773;background:#eff1f0;border-radius:99px;margin-top:6px;padding:3px 7px;font-size:9px;font-weight:700;display:inline-flex}.status.current{color:#287053;background:#e8f3ed}.row-action{color:#83908a;cursor:pointer;background:0 0;border:0;padding:4px}.election-teaser{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:18px;padding:22px 24px;display:flex;box-shadow:0 7px 24px #19312809}.election-teaser .avatar{color:#fff;flex:none;place-items:center;display:grid}.election-teaser-info{flex:1;min-width:0}.election-teaser-info strong{letter-spacing:-.3px;align-items:center;gap:6px;font:700 17px/1.3 Manrope;display:flex}.election-teaser-info strong svg{color:var(--green);flex:none}.election-teaser-info span{color:var(--muted);margin-top:5px;font-size:12px;display:block}.election-teaser-stats{flex:none;gap:26px;display:flex}.election-teaser-stats div{text-align:right}.election-teaser-stats span{color:#7a847f;margin-bottom:4px;font-size:10px;display:block}.election-teaser-stats strong{font:700 15px Manrope}.info-callout{color:#fff;background:#183b31;border-radius:18px;grid-template-columns:48px 1fr auto;align-items:center;gap:20px;margin-top:64px;padding:30px 34px;display:grid;position:relative;overflow:hidden}.info-callout:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:180px;height:180px;position:absolute;right:80px}.callout-icon{background:#ffffff1c;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.info-callout .eyebrow{color:#89bea9;margin-bottom:5px}.info-callout h2{margin-bottom:5px;font-size:22px}.info-callout p{color:#bdd0c8;max-width:660px;margin:0;font-size:12px;line-height:1.55}.info-callout button{z-index:1;color:#fff;background:0 0;border-color:#ffffff4d;position:relative}.context-bar{color:#68736e;background:#eef3f0;border-radius:10px;align-items:center;gap:8px;min-height:42px;margin:-18px 0 18px;padding:10px 13px;font-size:11px;display:flex}.context-bar a{color:var(--green);align-items:center;gap:4px;margin-left:auto;font-weight:700;text-decoration:none;display:flex}.expenses-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);margin-top:18px;margin-bottom:20px}.line-legend{color:#707a75;justify-content:flex-end;gap:15px;font-size:10px;display:flex}.line-legend span{align-items:center;gap:5px;display:flex}.dot{border-radius:2px;width:7px;height:7px;display:inline-block}.dot.education{background:var(--green)}.dot.health{background:var(--orange)}.dot.urban{background:#8eb4c9}.bar-chart-wrap{color:#7d8581;height:280px;margin-top:15px;font-size:11px}.ranking-list{flex-direction:column;gap:19px;margin-top:24px;display:flex}.ranking-item{grid-template-columns:24px 1fr;align-items:center;gap:9px;display:grid}.ranking-item .rank{color:#a2aaa6;font:700 10px Manrope}.ranking-item p{justify-content:space-between;margin:0 0 7px;font-size:11px;display:flex}.ranking-item p strong{font-family:DM Sans;font-weight:600}.ranking-item p span{color:#77807c}.progress{background:#edf0ee;border-radius:99px;height:5px;overflow:hidden}.progress i{border-radius:99px;height:100%;display:block}.process-grid,.method-flow{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.process-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:21px}.process-card>span{color:var(--green);letter-spacing:1px;font:800 11px Manrope}.process-card h3{margin:14px 0 7px;font-size:15px}.process-card p{color:#737d78;margin:0;font-size:11px;line-height:1.55}.filters-row{justify-content:space-between;gap:16px;margin:22px 0 14px;display:flex}.table-search{border:1px solid var(--line);color:#7c8681;background:#fff;border-radius:11px;flex:1;align-items:center;gap:9px;max-width:530px;height:44px;padding:0 13px;display:flex}.table-search input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.segmented{background:#e9eeeb;border-radius:11px;align-items:center;padding:4px;display:flex}.segmented button{color:#66716c;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 13px;font-size:11px}.segmented button.active{color:var(--ink);background:#fff;font-weight:700;box-shadow:0 2px 7px #1a352b17}.contract-list.full .contract-row{padding-top:21px;padding-bottom:21px}.sanction-note{color:#7e5a3d;background:#fff7ef;border:1px solid #f0dcc9;border-radius:12px;gap:12px;margin-top:14px;padding:16px;display:flex}.sanction-note svg{flex:none}.sanction-note p{margin:0;font-size:11px;line-height:1.6}.empty-state{text-align:center;color:#77817c;padding:60px 20px}.empty-state h3{color:var(--ink);margin:12px 0 5px;font-size:16px}.empty-state p{margin:0;font-size:12px}.criteria-note{color:var(--green);background:#edf3ef;border:1px solid #d9e5de;border-radius:13px;grid-template-columns:38px 1fr auto;align-items:center;gap:13px;margin:-12px 0 22px;padding:17px 19px;display:grid}.criteria-note>svg{background:#dcebe3;border-radius:10px;width:38px;height:38px;padding:9px}.criteria-note strong{color:var(--ink);font-size:11px;display:block}.criteria-note p{color:#67736d;margin:3px 0 0;font-size:10px;line-height:1.5}.criteria-note a{color:var(--green);white-space:nowrap;align-items:center;gap:5px;font-size:10px;font-weight:700;text-decoration:none;display:flex}.national-tabs{scrollbar-width:thin;gap:7px;margin-bottom:10px;padding:2px 1px 11px;display:flex;overflow-x:auto}.national-tabs button{border:1px solid var(--line);color:#65706b;cursor:pointer;white-space:nowrap;background:#fff;border-radius:11px;align-items:center;gap:8px;min-width:126px;padding:11px 13px;font-size:10px;font-weight:700;display:flex}.national-tabs button span{color:#65736d;background:#edf1ef;border-radius:7px;place-items:center;width:28px;height:24px;font-size:9px;display:grid}.national-tabs button.active{border-color:var(--green);color:var(--green);box-shadow:0 0 0 2px #286b5514}.national-tabs button.active span{background:var(--green);color:#fff}.national-candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px;display:grid}.national-candidate{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;padding:22px}.national-card-head{grid-template-columns:52px 1fr auto;align-items:center;gap:13px;display:grid}.national-card-head .avatar{border-radius:14px;width:52px;height:52px}.national-card-head>div:nth-child(2){min-width:0}.national-card-head span{color:#79847f;text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:700;display:block}.national-card-head h2{letter-spacing:-.4px;white-space:nowrap;text-overflow:ellipsis;margin:4px 0 2px;font-size:17px;overflow:hidden}.national-card-head p{color:#8a938f;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:9px;overflow:hidden}.ballot-number{color:var(--green);background:#e8f2ed;border-radius:9px;padding:7px 9px;font:800 21px Manrope}.national-party{align-items:center;gap:8px;margin:18px 0 14px;display:flex}.national-party span{color:#fff;background:#173c31;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:800}.national-party p{color:#737d78;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:9px;overflow:hidden}.profile-details{border:1px solid #e5eae7;border-radius:10px;grid-template-columns:1fr 1fr;margin:0;display:grid;overflow:hidden}.profile-details>div{border-bottom:1px solid #e5eae7;padding:11px 12px}.profile-details>div:nth-child(odd){border-right:1px solid #e5eae7}.profile-details>div:nth-last-child(-n+2){border-bottom:0}.profile-details dt{color:#8a938f;margin-bottom:4px;font-size:8px}.profile-details dd{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:10px;font-weight:700;overflow:hidden}.legal-box{border:1px solid;border-radius:11px;margin-top:13px;overflow:hidden}.legal-box.clear{background:#f0f6f3;border-color:#d7e8df}.legal-box.has-records{background:#fff6ec;border-color:#efd7bf}.legal-title{align-items:center;gap:8px;padding:12px;display:flex}.legal-box.clear .legal-title>svg{color:var(--green)}.legal-box.has-records .legal-title>svg{color:#a86431}.legal-title div{flex-direction:column;display:flex}.legal-title strong{font-size:10px}.legal-title small{color:#748079;margin-top:2px;font-size:8px}.legal-record{background:#ffffff80;border-top:1px solid #835e3824;grid-template-columns:auto 1fr 20px;align-items:center;gap:8px;padding:10px 12px;display:grid}.legal-record>span{color:#fff;background:#9d6235;border-radius:5px;padding:4px 5px;font-size:8px;font-weight:800}.legal-record p{flex-direction:column;margin:0;display:flex}.legal-record p strong{font:600 9px DM Sans}.legal-record p small{color:#8b735f;margin-top:2px;font-size:8px}.legal-record a{color:#8a6242}.national-links{align-items:center;gap:16px;margin-top:14px;display:flex}.national-links a{color:var(--green);align-items:center;gap:5px;font-size:9px;font-weight:700;text-decoration:none;display:flex}.legal-disclaimer{color:#815b38;background:#fff7ec;border:1px solid #ead9c2;border-radius:13px;align-items:flex-start;gap:14px;margin-top:25px;padding:20px;display:flex}.legal-disclaimer>svg{flex:none}.legal-disclaimer h3{margin:0 0 5px;font-size:13px}.legal-disclaimer p{margin:0;font-size:10px;line-height:1.6}.election-summary{color:#fff;background:#173c31;border-radius:16px;grid-template-columns:1.4fr repeat(3,1fr);display:grid;overflow:hidden}.election-summary>div{border-left:1px solid #ffffff1a;flex-direction:column;justify-content:center;padding:20px 24px;display:flex}.election-summary>div:first-child{border-left:0;grid-template-columns:34px 1fr;column-gap:8px;display:grid}.election-summary>div:first-child svg{color:#8dc2ad;grid-row:1/3;align-self:center}.election-summary span{color:#aac6bb;margin-bottom:6px;font-size:10px}.election-summary strong{font:700 15px Manrope}.candidates-section{margin-top:48px}.candidate-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.candidate-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px;transition:all .18s}.candidate-card.selected{border-color:var(--green);box-shadow:0 0 0 2px #286b551f}.candidate-top{justify-content:space-between;align-items:flex-start;display:flex}.avatar{color:#fff;border-radius:16px;place-items:center;width:54px;height:54px;font:700 16px Manrope;display:grid}.candidate-status{color:#6d7672;background:#eef0ef;border-radius:99px;align-items:center;gap:4px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.candidate-status.elected{color:#266c51;background:#e7f3ec}.candidate-card>h3{letter-spacing:-.4px;margin:18px 0 4px;font-size:18px}.candidate-card>p{color:#68736e;margin:0;font-size:11px}.candidate-stats{border-top:1px solid #e8ece9;border-bottom:1px solid #e8ece9;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0;padding:16px 0;display:grid}.candidate-stats span{color:#818a86;margin-bottom:5px;font-size:9px;display:block}.candidate-stats strong{font:700 12px Manrope}.candidate-actions{justify-content:space-between;align-items:center;display:flex}.candidate-actions button,.candidate-actions a{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:700;text-decoration:none;display:flex}.candidate-actions label{color:#68726d;cursor:pointer;align-items:center;gap:6px;font-size:10px;display:flex}.candidate-actions input{accent-color:var(--green)}.party-section{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:55px;padding:29px}.party-section h2{margin:0 0 4px;font-size:24px}.party-section p{color:var(--muted);font-size:12px}.party-bar{border-radius:9px;height:37px;margin-top:27px;display:flex;overflow:hidden}.party-bar span{color:#fff;border-right:2px solid #fff;place-items:center;font-size:11px;font-weight:700;display:grid}.party-bar span:last-child{border:0}.party-labels{color:#6f7874;gap:22px;margin-top:14px;font-size:10px;display:flex}.party-labels span{align-items:center;gap:6px;display:flex}.party-labels i{border-radius:2px;width:7px;height:7px}.compare-bar{z-index:30;color:#fff;background:#122f27;border-radius:15px;justify-content:space-between;align-items:center;width:min(650px,100% - 32px);padding:12px 14px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 16px 44px #081f1747}.compare-bar>div{align-items:center;gap:10px;display:flex}.compare-bar>div>span{background:#2e6c57;border-radius:9px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.compare-bar p{flex-direction:column;margin:0;display:flex}.compare-bar strong{font-size:11px}.compare-bar small{color:#a9c0b7;margin-top:3px;font-size:9px}.compare-bar button{color:#163c31;cursor:pointer;background:#fff;border:0;border-radius:9px;align-items:center;gap:7px;padding:10px 13px;font-size:10px;font-weight:700;display:flex}.compare-bar button:disabled{opacity:.4;cursor:not-allowed}.sources-page .page-heading>div{max-width:760px}.source-intro{background:#e7f1ec;border:1px solid #d3e5dc;border-radius:15px;grid-template-columns:48px 1fr auto;align-items:center;gap:18px;margin-bottom:18px;padding:24px;display:grid}.source-intro>div:first-child{width:48px;height:48px;color:var(--green);background:#d6e9df;border-radius:13px;place-items:center;display:grid}.source-intro h2{margin-bottom:5px;font-size:17px}.source-intro p{color:#61716a;margin:0;font-size:11px;line-height:1.5}.source-intro>span{color:var(--green);background:#fff;border-radius:99px;align-items:center;gap:5px;padding:7px 10px;font-size:10px;font-weight:700;display:flex}.source-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.source-card{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:44px 1fr;column-gap:13px;padding:22px;display:grid}.source-icon{border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.source-icon.green{color:#286b55;background:#e6f1eb}.source-icon.blue{color:#4b86a8;background:#e7f0f5}.source-icon.orange{color:#c97835;background:#fbecde}.source-icon.purple{color:#806694;background:#eee9f3}.source-title span{color:#7c8681;letter-spacing:1px;font-size:9px;font-weight:800}.source-title h3{margin:3px 0 0;font-size:15px}.source-card>p{color:#69736e;grid-column:1/-1;margin:17px 0;font-size:11px;line-height:1.6}.source-card dl{border-top:1px solid #e7ebe8;border-bottom:1px solid #e7ebe8;grid-column:1/-1;grid-template-columns:1fr 1fr;margin:0;padding:14px 0;display:grid}.source-card dl>div+div{border-left:1px solid #e7ebe8;padding-left:17px}.source-card dt{color:#8a938f;font-size:9px}.source-card dd{margin:5px 0 0;font-size:11px;font-weight:700}.source-card button,.source-card .source-link{color:var(--green);cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:10px;font-weight:700;text-decoration:none;display:flex}.source-status{color:var(--green)}.source-status.unavailable,.source-status.credential_required{color:#a76431}.method-section{text-align:center;margin-top:65px}.method-section h2{margin-bottom:25px;font-size:27px}.method-flow{text-align:left}.method-flow .process-card{background:0 0}.neutrality{color:#fff;background:#173c31;border-radius:15px;align-items:center;gap:17px;margin-top:50px;padding:24px;display:flex}.neutrality>div:first-child{background:#ffffff1a;border-radius:12px;flex:none;place-items:center;width:45px;height:45px;display:grid}.neutrality h3{margin:0 0 5px;font-size:16px}.neutrality p{color:#b8cec5;margin:0;font-size:11px;line-height:1.6}.election-source a{color:#fff;white-space:nowrap;align-items:center;gap:5px;margin-left:auto;font-size:10px;font-weight:700;text-decoration:none;display:flex}.empty-state.unavailable{text-align:left;color:#815b38;background:#fff7ec;border:1px solid #ead9c2;border-radius:13px;grid-template-columns:40px 1fr auto;align-items:center;gap:16px;padding:18px 20px;display:grid}.empty-state.unavailable>svg{box-sizing:border-box;color:#a86431;background:#f3e3cd;border-radius:10px;width:40px;height:40px;padding:9px}.empty-state.unavailable h3{color:#6b4423;margin:0 0 3px;font-size:14px}.empty-state.unavailable p{color:#8a6b47;margin:0;font-size:11px;line-height:1.5}.empty-state.unavailable a{color:#a86431;white-space:nowrap;align-items:center;gap:5px;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.validation-section{margin-top:55px}.validation-badge{text-transform:uppercase;letter-spacing:.8px;border-radius:99px;padding:6px 10px;font-size:10px;font-weight:800}.validation-badge.passed{color:#246b50;background:#e5f2eb}.validation-badge.partial{color:#986029;background:#fff0df}.validation-badge.failed{color:#a2473b;background:#f9e5e2}.validation-list{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden}.validation-list>div{border-bottom:1px solid #e8ece9;align-items:flex-start;gap:11px;padding:15px 18px;display:flex}.validation-list>div:last-child{border:0}.validation-list>div.passed>svg{color:var(--green)}.validation-list>div.warning>svg{color:#b16c32}.validation-list p{flex-direction:column;margin:0;display:flex}.validation-list strong{font-size:11px}.validation-list span{color:#747e79;margin-top:3px;font-size:10px}.national-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:13px;margin:22px 0 14px;display:flex}.national-controls .table-search{max-width:430px}.national-controls .table-search button{color:#69736e;cursor:pointer;background:#eef1ef;border:0;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;display:grid}.sort-control{align-items:center;gap:9px;display:flex}.sort-control>span{color:#7a847f;white-space:nowrap;font-size:10px;font-weight:700}.sort-control .segmented button{font-size:10px}.order-note{color:#5d6b64;background:#eff3f1;border-radius:10px;margin:0 0 14px;padding:11px 13px 11px 33px;font-size:10px;line-height:1.6;position:relative}.order-note>svg{color:var(--green);position:absolute;top:12px;left:13px}.national-summary{margin-top:5px}.unpublished{color:#9aa39f;font-style:italic;font-weight:500}.ballot-number em{vertical-align:super;font-size:13px;font-style:normal}.assets-cell{grid-column:1/-1;border-right:0!important}.assets-track{background:#eef1ef;border-radius:99px;height:5px;margin-top:8px;overflow:hidden}.assets-track i{border-radius:inherit;background:linear-gradient(90deg,#82b59e,#286b55);height:100%;display:block}.assets-cell small{color:#8a938f;margin-top:5px;font-size:8px;display:block}.national-profile{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:26px;display:grid}.tally-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px}.tally-card header{align-items:center;gap:11px;margin-bottom:16px;display:flex}.tally-card header>span{background:var(--green-soft);width:36px;height:36px;color:var(--green);border-radius:10px;flex:none;place-items:center;display:grid}.tally-card header strong{font-size:13px;display:block}.tally-card header small{color:#7f8985;margin-top:3px;font-size:9px;display:block}.tally-card ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.tally-card li{grid-template-columns:minmax(70px,auto) minmax(50px,1fr) 22px;align-items:center;gap:10px;display:grid}.tally-card li>span{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.tally-track{background:#eef1ef;border-radius:99px;height:6px;overflow:hidden}.tally-track i{border-radius:inherit;background:linear-gradient(90deg,#82b59e,#286b55);height:100%;display:block}.tally-card li>b{text-align:right;font:700 11px Manrope}.documents-panel{background:#f4f8f6;border:1px solid #dbe4df;border-radius:15px;grid-template-columns:44px 1fr;align-items:flex-start;gap:15px;margin-top:26px;padding:21px;display:grid}.documents-panel>div:first-child{width:44px;height:44px;color:var(--green);background:#e2eee8;border-radius:12px;place-items:center;display:grid}.documents-panel>div>strong{margin-bottom:6px;font-size:13px;display:block}.documents-panel p{color:#5d6b64;margin:0;font-size:11px;line-height:1.65}.documents-links{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}.documents-links a{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:9px;align-items:center;gap:6px;padding:9px 12px;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.documents-links a:hover{border-color:#aebfb6}.panorama-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.panorama-grid article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:17px;box-shadow:0 6px 20px #19312808}.panorama-grid span{color:#7a847f;font-size:10px;font-weight:600;display:block}.panorama-grid strong{letter-spacing:-.6px;text-overflow:ellipsis;white-space:nowrap;margin:8px 0 5px;font:700 20px/1.15 Manrope;display:block;overflow:hidden}.panorama-grid small{color:#838d88;font-size:9px;line-height:1.45}.assets-chart ul{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.assets-chart li{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(120px,1fr) minmax(90px,1.6fr) 108px 104px;align-items:center;gap:12px;padding:11px 0;display:grid}.assets-chart li:last-child{border-bottom:0}.assets-name{flex-direction:column;min-width:0;font-size:11px;font-weight:700;display:flex}.assets-name small{color:#838d88;margin-top:3px;font-size:9px;font-weight:500}.assets-bar{background:#eef1ef;border-radius:99px;height:9px;overflow:hidden}.assets-bar i{border-radius:inherit;background:linear-gradient(90deg,#82b59e,#286b55);height:100%;display:block}.assets-chart b{text-align:right;font:700 11px Manrope}.assets-chart>ul>li>small{color:#838d88;text-align:right;font-size:9px}.assets-chart>ul>li>small.above{color:var(--green);font-weight:700}.doc-flags{flex-direction:column;gap:6px;margin:13px 0 0;padding:0;list-style:none;display:flex}.doc-flags li{color:#626d67;align-items:center;gap:8px;font-size:10px;display:flex}.doc-flags li span{border-radius:50%;flex:none;width:7px;height:7px}.doc-flags li.ok span{background:#3f8c6e}.doc-flags li.partial span{background:#dc8c46}.candidate-photo{object-fit:cover;object-position:center top;background:#eef1ef}.registry-block{margin-top:13px}.declared-channels{background:#fbfcfb;border:1px solid #e5eae7;border-radius:11px;margin-top:11px;padding:13px}.declared-channels>strong{color:#68726d;margin-bottom:9px;font-size:9px;font-weight:700;display:block}.declared-channels ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.declared-channels a{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:99px;align-items:center;gap:5px;padding:5px 9px;font-size:9px;font-weight:600;text-decoration:none;display:inline-flex}.declared-channels a:hover{border-color:#aebfb6}.declared-channels>small{color:#8a938f;margin-top:8px;font-size:8px;display:block}.registry-data{background:#fbfcfb;border:1px solid #e5eae7;border-radius:11px;grid-template-columns:1fr 1fr;gap:11px 14px;margin:0;padding:13px;display:grid}.registry-data>div:last-child{grid-column:1/-1}.registry-data dt{color:#8a938f;margin-bottom:3px;font-size:8px}.registry-data dd{margin:0;font-size:10px;font-weight:700}.card-actions{border-top:1px solid #edf0ee;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:13px;display:flex}.card-actions .text-link{font-size:10px}.compare-toggle{color:#68726d;cursor:pointer;align-items:center;gap:7px;font-size:10px;font-weight:600;display:flex}.compare-toggle input{accent-color:var(--green)}.national-candidate.selected{border-color:var(--green);box-shadow:0 0 0 2px #286b551f}.compare-bar-actions{align-items:center;gap:9px;display:flex}.compare-clear{color:#a9c0b7!important;background:0 0!important;border:1px solid #ffffff38!important}.compare-modal{background:#fff;border-radius:16px;flex-direction:column;width:min(880px,100%);max-height:82vh;display:flex;overflow:hidden;box-shadow:0 25px 80px #0a1e1747}.compare-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 16px;display:flex}.compare-modal-head h2{letter-spacing:-.7px;margin:0 0 5px;font-size:22px}.compare-modal-head p{color:#76817c;margin:0;font-size:11px}.compare-modal-head>button{color:#69736e;cursor:pointer;background:#f0f3f1;border:0;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.compare-scroll{overflow:auto}.compare-scroll table{border-collapse:collapse;width:100%}.compare-scroll th,.compare-scroll td{text-align:left;vertical-align:top;border-bottom:1px solid #edf0ee;padding:12px 16px;font-size:11px}.compare-scroll thead th{color:var(--ink);background:#f8faf9;font-size:10px;font-weight:800;position:sticky;top:0}.compare-scroll th[scope=row]{color:#7a847f;white-space:nowrap;font-size:10px;font-weight:600}.compare-scroll td{font-weight:700}.status-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.status-cards article{border:1px solid var(--line);background:#fff;border-radius:14px;gap:12px;padding:17px;display:flex}.status-cards article>svg{flex:none;margin-top:1px}.status-cards article.ok>svg{color:var(--green)}.status-cards article.warn>svg{color:#b5803c}.status-cards article.pending>svg{color:#8a938f}.status-cards strong{font-size:12px;display:block}.status-cards p{color:#6d7772;margin:5px 0 0;font-size:10px;line-height:1.5}.status-legend{background:#fff7ec;border:1px solid #ead9c2;border-radius:13px;margin-top:14px;padding:18px 20px}.status-legend h3{color:#7c5f3f;margin:0 0 10px;font-size:13px}.status-legend ul{color:#7c5f3f;margin:0 0 11px;padding-left:18px;font-size:11px;line-height:1.75}.status-legend p{color:#8a6b47;margin:0;font-size:10px;line-height:1.6}.documents-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:11px;display:grid}.documents-list a{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;text-decoration:none;display:flex}.documents-list a:hover{border-color:#aebfb6}.documents-list strong{font-size:12px;display:block}.documents-list small{color:#7d8782;margin-top:4px;font-size:9px;font-weight:500;display:block}.documents-meta{color:#7a847f;cursor:pointer;background:0 0;border:0;margin-top:13px;padding:0;font-size:10px;text-decoration:underline}.methodology-flow{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px;display:grid}.methodology-flow article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px}.method-source{background:var(--green-soft);color:var(--green);letter-spacing:.5px;border-radius:99px;margin-bottom:9px;padding:4px 8px;font-size:9px;font-weight:800;display:inline-block}.methodology-flow strong{margin-bottom:6px;font-size:12px;display:block}.methodology-flow p{color:#6d7772;margin:0;font-size:10px;line-height:1.6}.methodology-flow .nature-note{grid-column:1/-1}.election-gaps .limits-grid article>span{color:#a66931;background:#fff0df}@media (width<=720px){.assets-chart li{grid-template-columns:1fr auto;gap:6px 10px}.assets-chart .assets-bar{order:3;grid-column:1/-1}.assets-chart>ul>li>small{text-align:left;order:4;grid-column:1/-1}.registry-data{grid-template-columns:1fr}.compare-modal-head{padding:18px}.compare-bar-actions{gap:6px}.national-controls{flex-direction:column;align-items:stretch}.national-controls .table-search{max-width:none}.sort-control{flex-direction:column;align-items:flex-start}.sort-control .segmented{width:100%;overflow-x:auto}.sort-control .segmented button{white-space:nowrap}.documents-panel{grid-template-columns:1fr}.documents-links a{justify-content:center;width:100%}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.expenses-page{max-width:1240px}.expenses-layout{grid-template-columns:218px minmax(0,1fr);align-items:start;gap:34px;margin-top:26px;display:grid}.expenses-main{flex-direction:column;gap:54px;min-width:0;display:flex}.expense-section{scroll-margin-top:96px}.expense-section>.section-heading{margin-bottom:20px}.expense-section .stat-grid{margin-bottom:0}.section-nav{border-right:1px solid var(--line);min-width:0;padding:18px 6px 18px 0;position:sticky;top:92px}.section-nav-title{color:#8a938f;letter-spacing:1.15px;text-transform:uppercase;margin:0 0 12px 13px;font-size:9px;font-weight:800;display:block}.section-nav ul{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.section-nav a{color:#667169;border-radius:8px;padding:8px 12px;font-size:11.5px;font-weight:600;line-height:1.35;text-decoration:none;transition:all .15s;display:block;position:relative}.section-nav a:hover{color:var(--ink);background:#eff3f1}.section-nav a.active{background:var(--green-soft);color:var(--green);font-weight:800}.section-nav a.active:before{content:"";background:var(--green);border-radius:3px;width:3px;position:absolute;top:8px;bottom:8px;left:-7px}.budget-flow{grid-template-columns:minmax(0,1.5fr) minmax(260px,.75fr);align-items:start;gap:18px;display:grid}.flow-stages{flex-direction:column;display:flex}.flow-stage article{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:7px 1fr;gap:14px;padding:15px 17px;display:grid;box-shadow:0 6px 20px #19312808}.flow-bar{background:#eef1ef;border-radius:99px;position:relative;overflow:hidden}.flow-bar i{border-radius:inherit;height:var(--flow-width,100%);background:linear-gradient(#4d9177,#286b55);display:block;position:absolute;inset:0}.flow-body{flex-direction:column;min-width:0;display:flex}.flow-body span{color:#7a847f;letter-spacing:.7px;text-transform:uppercase;font-size:9px;font-weight:800}.flow-body strong{letter-spacing:-.6px;margin:5px 0 4px;font:700 21px/1.15 Manrope}.flow-body small{color:#79837e;font-size:10px;line-height:1.5}.flow-arrow{color:#7c9c8d;align-items:center;gap:6px;padding:7px 0 7px 24px;display:flex}.flow-arrow span{color:var(--green);font-size:10px;font-weight:800}.flow-pending{background:#fffaf2;border:1px solid #e5d9c4;border-radius:15px;padding:20px}.flow-pending-head{border-bottom:1px solid #eee0cb;padding-bottom:15px}.flow-pending-head .eyebrow{color:#a8752f;margin-bottom:6px}.flow-pending-head strong{color:#8a5a26;letter-spacing:-1px;font:700 25px/1 Manrope;display:block}.flow-pending-head small{color:#8b6f52;margin-top:7px;font-size:10px;line-height:1.5;display:block}.flow-pending dl{flex-direction:column;margin:0;display:flex}.flow-pending dl>div{border-bottom:1px solid #f0e5d4;padding:13px 0}.flow-pending dl>div:last-child{border-bottom:0;padding-bottom:0}.flow-pending dt{color:#8d7255;font-size:10px;font-weight:700}.flow-pending dd{color:#6d4f2c;margin:5px 0 0;font:700 14px Manrope}.flow-pending dd span{color:#9a8368;margin-top:3px;font:400 9px/1.4 DM Sans;display:block}.origin-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.origin-card{border:1px solid var(--line);background:#fff;border-radius:15px;gap:14px;padding:19px;display:flex;box-shadow:0 6px 20px #19312808}.origin-icon{background:var(--green-soft);width:40px;height:40px;color:var(--green);border-radius:11px;flex:none;place-items:center;display:grid}.origin-card.transfer .origin-icon{color:#3e7695;background:#e9f1f5}.origin-card>div{min-width:0}.origin-card p{color:#737d78;margin:0 0 5px;font-size:11px}.origin-card strong{letter-spacing:-.7px;font:700 22px/1.15 Manrope;display:block}.origin-card small{color:#79837e;margin-top:6px;font-size:10px;line-height:1.5;display:block}.origin-meter{background:#eef1ef;border-radius:99px;height:11px;margin:14px 0 20px;display:flex;overflow:hidden}.origin-meter i.own,.origin-track i.propria{background:linear-gradient(90deg,#4d9177,#286b55)}.origin-meter i.transfer,.origin-track i.transferencia{background:linear-gradient(90deg,#8ab4cb,#4b86a8)}.origin-list,.nature-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.origin-list li{border-bottom:1px solid #edf0ee;grid-template-columns:92px minmax(120px,1.15fr) minmax(70px,1fr) 86px 46px;align-items:center;gap:11px;padding:11px 0;display:grid}.origin-list li:last-child{border-bottom:0}.origin-tag{text-align:center;text-transform:uppercase;letter-spacing:.4px;border-radius:99px;padding:4px 7px;font-size:8px;font-weight:800}.origin-tag.propria{background:var(--green-soft);color:var(--green)}.origin-tag.transferencia{color:#3e7695;background:#e9f1f5}.origin-list strong{font-size:11px;font-weight:600}.origin-track,.nature-track{background:#eef1ef;border-radius:99px;height:7px;overflow:hidden}.origin-track i,.nature-track i{border-radius:inherit;height:100%;display:block}.origin-list b,.nature-list b{text-align:right;font:700 11px Manrope}.origin-list small,.nature-list small{color:#808a85;text-align:right;font-size:10px}.nature-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:20px;display:grid}.nature-summary article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px}.nature-summary span{color:#7a847f;font-size:10px;font-weight:700}.nature-summary strong{letter-spacing:-.6px;margin:7px 0 5px;font:700 21px/1 Manrope;display:block}.nature-summary small{color:#79837e;font-size:10px}.nature-list li{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(150px,1.1fr) minmax(80px,1fr) 92px 46px;align-items:center;gap:12px;padding:11px 0;display:grid}.nature-list li:last-child{border-bottom:0}.nature-label{align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.nature-label i{border-radius:2px;flex:none;width:8px;height:8px}.nature-label i.corrente,.nature-track i.corrente{background:#dc8c46}.nature-label i.capital,.nature-track i.capital{background:#286b55}.nature-note{color:#5d6b64;background:#eff3f1;border-radius:10px;margin:18px 0 0;padding:12px 14px 12px 34px;font-size:10px;line-height:1.6;position:relative}.nature-note>svg{color:var(--green);position:absolute;top:13px;left:14px}.function-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:13px;display:grid}.function-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:19px;box-shadow:0 6px 20px #19312808}.function-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.function-card h3{letter-spacing:-.2px;margin:0;font-size:14px}.function-card header span{color:#7e8883;margin-top:4px;font-size:9px;display:block}.function-card header strong{letter-spacing:-.4px;flex:none;font:700 15px Manrope}.function-meter{background:#eef1ef;border-radius:99px;height:6px;margin:14px 0;overflow:hidden}.function-meter i{border-radius:inherit;background:linear-gradient(90deg,#4d9177,#286b55);height:100%;display:block}.function-card dl{grid-template-columns:1fr 1fr;gap:10px 12px;margin:0;display:grid}.function-card dt{color:#8a938f;font-size:9px}.function-card dd{margin:3px 0 0;font:700 11px Manrope}.function-card footer{border-top:1px solid #edf0ee;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:15px;padding-top:13px;display:flex}.function-exec{background:var(--green-soft);color:var(--green);border-radius:99px;padding:4px 8px;font-size:9px;font-weight:800}.function-capita{color:#2adf84;align-items:center;gap:5px;padding:6px;font-size:9px;font-weight:600;display:flex}.function-toggle{border:1px solid var(--line);color:var(--green);cursor:pointer;background:#fff;border-radius:10px;margin-top:14px;padding:10px 15px;font-size:11px;font-weight:700}.function-toggle:hover{border-color:#aebfb6}.comparison-scroll{border:1px solid var(--line);background:#fff;border-radius:15px;overflow-x:auto}.period-comparison table{border-collapse:collapse;width:100%;min-width:520px}.period-comparison th,.period-comparison td{text-align:right;border-bottom:1px solid #edf0ee;padding:13px 16px;font-size:11px}.period-comparison thead th{color:#7a847f;letter-spacing:.5px;text-transform:uppercase;background:#f8faf9;font-size:9px;font-weight:800}.period-comparison th[scope=row]{text-align:left;font-weight:600}.period-comparison thead th:first-child{text-align:left}.period-comparison tbody tr:last-child th,.period-comparison tbody tr:last-child td{border-bottom:0}.period-comparison td{font-family:Manrope,sans-serif;font-weight:700}.variation{color:#6f7773;background:#eff1f0;border-radius:99px;min-width:62px;padding:4px 8px;font-size:10px;font-weight:800;display:inline-block}.variation.up{color:#24704f;background:#e8f3ed}.variation.down{color:#a2473b;background:#fbeae7}.restos-headline{border:1px solid var(--line);background:#fff;border-radius:15px;gap:14px;margin-bottom:14px;padding:20px;display:flex}.restos-headline p{color:#737d78;margin:0 0 5px;font-size:11px}.restos-headline strong{letter-spacing:-.8px;font:700 24px/1.1 Manrope;display:block}.restos-headline small{color:#79837e;margin-top:6px;font-size:10px;display:block}.restos-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:13px;display:grid}.restos-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:19px}.restos-card header h3{margin:0 0 5px;font-size:14px}.restos-card header p{color:#79837e;margin:0 0 14px;font-size:10px;line-height:1.5}.restos-card dl{flex-direction:column;margin:0;display:flex}.restos-card dl>div{border-bottom:1px solid #f0f3f1;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.restos-card dt{color:#79837e;font-size:10px}.restos-card dd{white-space:nowrap;margin:0;font:700 11px Manrope}.restos-card footer{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-top:13px;padding-top:13px;display:flex}.restos-card footer span{color:#79837e;font-size:10px;font-weight:700}.restos-card footer strong{color:var(--green);font:700 15px Manrope}.attention-list{flex-direction:column;gap:10px;display:flex}.attention-item{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:10px 1fr;gap:13px;padding:16px 18px;display:grid}.attention-dot{border-radius:50%;width:10px;height:10px;margin-top:5px}.attention-item.high .attention-dot{background:#c9553f}.attention-item.medium .attention-dot{background:#dc8c46}.attention-item.low .attention-dot{background:#4b86a8}.attention-item strong{letter-spacing:-.2px;font-size:13px;display:block}.attention-item p{color:#626d67;margin:6px 0 0;font-size:11px;line-height:1.6}.attention-item small{color:#8a938f;margin-top:8px;font-size:9px;font-style:italic;display:block}.attention-empty{color:var(--green);background:#f8faf9;border:1px dashed #cfdad4;border-radius:14px;align-items:center;gap:14px;padding:22px;display:flex}.attention-empty strong{color:var(--ink);font-size:13px}.attention-empty p{color:#6f7a74;margin:4px 0 0;font-size:11px}.attention-disclaimer{color:#7c5f3f;background:#fff7ec;border:1px solid #ead9c2;border-radius:13px;align-items:flex-start;gap:12px;margin-top:14px;padding:16px 18px;display:flex}.attention-disclaimer>svg{color:#a86431;flex:none;margin-top:1px}.attention-disclaimer p{margin:0;font-size:10.5px;line-height:1.65}.limits-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:13px;display:grid}.limits-grid article{background:#fbfcfb;border:1px dashed #d6ddd9;border-radius:14px;grid-template-columns:38px 1fr;gap:13px;padding:18px;display:grid}.limits-grid article>span{color:#6b7873;background:#eef1ef;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.limits-grid strong{margin-bottom:6px;font-size:12px;display:block}.limits-grid p{color:#6d7772;margin:0;font-size:10px;line-height:1.6}.limits-link{color:var(--green);align-items:center;gap:6px;margin-top:15px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.bimester-panel{margin-top:16px}.chart-footnote{color:#8a6a45;margin:12px 0 0;padding-left:20px;font-size:10px;line-height:1.55;position:relative}.chart-footnote>svg{color:#b5803c;position:absolute;top:2px;left:0}.bimester-empty{background:#fbfcfb;border:1px dashed #cfdad4;border-radius:13px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:16px;padding:20px;display:flex}.bimester-empty strong{font-size:13px;display:block}.bimester-empty p{color:#6f7a74;max-width:520px;margin:5px 0 0;font-size:10px;line-height:1.6}.bimester-empty .secondary-button{gap:8px;display:inline-flex}.bimester-error{color:#a2473b;align-items:center;gap:6px;width:100%;margin:0;font-size:10px;display:flex}.bimester-tabs{flex-wrap:wrap;gap:6px;margin:16px 0 20px;display:flex}.bimester-tabs button{border:1px solid var(--line);color:#66716c;cursor:pointer;background:#fff;border-radius:99px;padding:7px 13px;font-size:10px;font-weight:700}.bimester-tabs button.active{border-color:var(--green);background:var(--green-soft);color:var(--green)}.bimester-bars{align-items:flex-end;gap:10px;min-height:210px;display:flex}.bimester-bar{flex-direction:column;flex:1;align-items:center;gap:7px;min-width:0;display:flex}.bimester-value{color:#66716c;white-space:nowrap;font-size:9px;font-weight:700}.bimester-track{background:#f2f5f3;border-radius:7px;align-items:flex-end;width:100%;max-width:62px;height:150px;display:flex}.bimester-track i{background:linear-gradient(#4d9177,#286b55);border-radius:7px;width:100%;display:block}.bimester-label{color:#8a938f;font-size:9px}@media (width<=1080px){.expenses-layout{grid-template-columns:1fr;gap:0}.expenses-main{gap:46px}.section-nav{z-index:20;border-right:0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f6f7f4f2;margin:0 0 30px;padding:11px 0;position:sticky;top:65px}.section-nav-title{display:none}.section-nav ul{scrollbar-width:thin;flex-direction:row;gap:7px;padding-bottom:3px;overflow-x:auto}.section-nav li{flex:none}.section-nav a{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:99px;padding:8px 13px}.section-nav a.active:before{display:none}.budget-flow{grid-template-columns:1fr}}@media (width<=720px){.origin-split,.nature-summary{grid-template-columns:1fr}.origin-list li{grid-template-columns:1fr auto;gap:5px 10px;padding:13px 0}.origin-list .origin-tag{grid-row:1;justify-self:start}.origin-list strong,.origin-list .origin-track{grid-column:1/-1}.nature-list li{grid-template-columns:1fr auto;gap:6px 10px}.nature-list .nature-track{order:3;grid-column:1/-1}.function-grid{grid-template-columns:1fr}.flow-arrow{padding-left:14px}.bimester-bars{gap:5px}.bimester-value{font-size:7px}}.legal-page .page-heading>div{max-width:720px}.legal-meta{color:#7a847f;align-items:center;gap:6px;margin:-20px 0 26px;font-size:11px;display:flex}.legal-callout{background:#eef4f1;border:1px solid #d9e5de;border-radius:12px;align-items:flex-start;gap:11px;margin:0 0 30px;padding:15px 17px;display:flex}.legal-callout>svg{color:var(--green);flex:none;margin-top:1px}.legal-callout p{color:#3d5a4f;margin:0;font-size:12px;line-height:1.65}.legal-callout.amber{background:#fff7ec;border-color:#ead9c2}.legal-callout.amber>svg{color:#a86431}.legal-callout.amber p{color:#7c5f3f}.legal-toc{flex-wrap:wrap;gap:8px;margin-bottom:46px;display:flex}.legal-toc a{border:1px solid var(--line);color:#4a5551;background:#fff;border-radius:99px;padding:8px 13px;font-size:11px;font-weight:700;text-decoration:none}.legal-toc a:hover{color:var(--green);border-color:#aebfb6}.legal-group{margin-top:46px}.legal-group-head{border-bottom:1px solid var(--line);color:var(--green);align-items:center;gap:10px;margin-bottom:20px;padding-bottom:14px;display:flex}.legal-group-head h2{letter-spacing:-.6px;color:var(--ink);margin:0;font-size:24px}.legal-article{border:1px solid var(--line);background:#fff;border-radius:16px;padding:8px 28px}.legal-article section{border-bottom:1px solid #ecefed;padding:26px 0}.legal-article section:last-child{border-bottom:0}.legal-article h3{letter-spacing:-.3px;align-items:center;gap:12px;margin:0 0 12px;font-size:16px;display:flex}.legal-article h3 span{background:var(--green-soft);width:26px;height:26px;color:var(--green);border-radius:8px;flex:none;place-items:center;font:800 11px Manrope;display:grid}.legal-article p{color:#4d5652;margin:0 0 12px;font-size:13px;line-height:1.75}.legal-article p:last-child{margin-bottom:0}.legal-article ul{color:#4d5652;margin:0 0 12px;padding-left:20px;font-size:13px;line-height:1.75}.legal-article ul:last-child{margin-bottom:0}.legal-article code{background:#eef1ef;border-radius:5px;padding:1px 5px;font-size:11px}.legal-article .legal-callout{margin:6px 0 0}.legal-footer-note{border:1px solid var(--line);background:#f6f8f6;border-radius:15px;grid-template-columns:45px 1fr;align-items:flex-start;gap:15px;margin-top:55px;padding:24px;display:grid}.legal-footer-note>div:first-child{background:var(--green-soft);width:45px;height:45px;color:var(--green);border-radius:12px;place-items:center;display:grid}.legal-footer-note strong{color:var(--ink);margin-bottom:5px;font-size:13px;display:block}.legal-footer-note p{color:#67736d;margin:0;font-size:11px;line-height:1.6}.app-shell>footer{color:#fff;background:#101f1a}.footer-inner{align-items:center;gap:24px;min-height:112px;display:flex}.footer-brand{align-items:center;gap:9px;font:700 17px Manrope;display:flex}.brand-mark.small{background:#24463b;border-radius:9px;width:31px;height:31px}.footer-inner p{color:#80978e;flex:1;margin:0;font-size:10px}.footer-inner>div:last-child{gap:17px;display:flex}.footer-inner button,.footer-inner>div>a{color:#a8bbb4;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;text-decoration:none}.footer-inner button:hover,.footer-inner>div>a:hover{color:#fff}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a1b1585;justify-content:center;align-items:flex-start;padding:15vh 18px 18px;display:flex;position:fixed;inset:0}.search-modal{background:#fff;border-radius:16px;width:min(650px,100%);overflow:hidden;box-shadow:0 25px 80px #0a1e1747}.municipality-backdrop{padding-top:9vh}.municipality-modal{background:#fff;border-radius:18px;width:min(610px,100%);overflow:hidden;box-shadow:0 25px 80px #0a1e1747}.municipality-modal-head{justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 25px 19px;display:flex}.municipality-modal-head .eyebrow{margin-bottom:6px}.municipality-modal-head h2{color:var(--ink);letter-spacing:-.7px;margin:0 0 5px;font-size:23px}.municipality-modal-head p{color:#76817c;margin:0;font-size:11px}.municipality-modal-head>button{color:#69736e;cursor:pointer;background:#f0f3f1;border:0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.municipality-search{color:#76817c;background:#fbfcfb;border:1px solid #ccd8d2;border-radius:11px;align-items:center;gap:9px;height:46px;margin:0 25px 15px;padding:0 13px;display:flex}.municipality-search:focus-within{border-color:#7da492;box-shadow:0 0 0 3px #286b5514}.municipality-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:13px}.municipality-results{border-top:1px solid #edf0ee;min-height:215px;max-height:390px;padding:5px 13px 14px;overflow-y:auto}.municipality-option{color:#65716b;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0ee;border-radius:9px;align-items:center;gap:12px;width:100%;min-height:54px;padding:9px 12px;display:flex}.municipality-option:hover{color:var(--green);background:#f1f6f3}.municipality-option>span:first-child{flex-direction:column;flex:1;min-width:0;display:flex}.municipality-option strong{color:var(--ink);font-size:12px}.municipality-option small{color:#7b8580;margin-top:3px;font-size:9px}.current-municipality{color:var(--green);text-transform:uppercase;letter-spacing:.5px;background:#e5f2eb;border-radius:99px;padding:4px 7px;font-size:8px;font-weight:800}.municipality-list-state{color:#739083;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;display:flex}.municipality-list-state p{color:#78847e;margin:9px 0 0;font-size:11px}.municipality-list-state.error{color:#a34c41}.modal-input{color:#75807b;border-bottom:1px solid #e2e7e4;align-items:center;gap:10px;padding:15px 17px;display:flex}.modal-input input{color:var(--ink);border:0;outline:0;flex:1;font-size:14px}.modal-input button{color:#69736e;cursor:pointer;background:#f0f3f1;border:0;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.search-body{min-height:210px;max-height:390px;padding:8px;overflow-y:auto}.search-hint{text-align:center;color:#799087;padding:48px 20px}.search-hint h3{color:var(--ink);margin:10px 0 5px;font-size:15px}.search-hint p{color:#818b86;margin:0;font-size:11px}.search-result{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:38px 1fr auto 20px;align-items:center;gap:10px;width:100%;padding:10px;display:grid}.search-result:hover{background:#f3f6f4}.result-icon{width:38px;height:38px;color:var(--green);background:#e9f1ed;border-radius:9px;place-items:center;display:grid}.search-result div{flex-direction:column;min-width:0;display:flex}.search-result strong{font-size:12px}.search-result small{color:#7b8580;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:10px;overflow:hidden}.result-type{color:#78837e;background:#edf0ee;border-radius:99px;padding:4px 7px;font-size:9px}.modal-footer{background:#f8f9f7;border-top:1px solid #e4e8e5;justify-content:flex-end;gap:16px;padding:9px 14px;display:flex}.modal-footer span{color:#8a938f;font-size:9px}.modal-footer kbd{margin-right:2px;padding:3px 4px;font-size:8px}.toast{z-index:120;color:#fff;background:#173c31;border-radius:10px;align-items:center;gap:8px;padding:11px 15px;font-size:11px;font-weight:600;animation:.25s ease-out toastIn;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0c271d40}.toast svg{color:#9dd0bb}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (width<=1080px){.search-trigger{min-width:auto}.search-trigger span,.search-trigger kbd{display:none}}@media (width<=980px){.nav-container{gap:22px}.main-nav a{padding:0 8px;font-size:12px}.search-trigger{min-width:auto}.search-trigger span,.search-trigger kbd{display:none}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.expenses-grid{grid-template-columns:1fr}.category-content{grid-template-columns:240px 1fr}.candidate-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.nav-container,.content-container,.footer-inner{width:min(100% - 28px,1180px)}.topbar{height:65px}.brand-mark{width:34px;height:34px}.brand strong{font-size:18px}.brand small{display:none}.menu-button{display:grid}.main-nav{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;height:auto;padding:9px 14px 14px;display:none;position:absolute;top:64px;left:0;right:0;box-shadow:0 13px 22px #162d241a}.main-nav.is-open{display:flex}.main-nav a{text-align:left;border-radius:8px;padding:12px}.main-nav a.active{background:var(--green-soft)}.main-nav a.active:after{display:none}.search-trigger{justify-content:center;min-width:38px;padding:0}.demo-notice{padding:7px 14px}.demo-notice p{display:none}.content-container{padding:40px 0 60px}.page-heading{flex-direction:column;align-items:flex-start;margin-bottom:28px}h1{letter-spacing:-1.5px;font-size:36px}.page-heading p{font-size:14px}.heading-actions{flex-wrap:wrap;width:100%}.select-control,.export-button{flex:1}.municipality-trigger{width:100%;min-width:0}.municipality-trigger strong{max-width:none}.stat-grid,.stat-grid.three{grid-template-columns:1fr}.metric-card{padding:17px}.metric-card strong{font-size:20px}.panel{padding:18px}.dashboard-grid{margin-bottom:44px}.chart-summary{flex-wrap:wrap}.chart-summary small{width:100%}.area-chart-wrap{height:210px}.category-content{grid-template-columns:1fr}.donut-wrap{height:190px}.legend-list{padding:0 8px}.section-block{margin-top:43px}.section-heading{align-items:flex-start}.section-heading h2{font-size:23px}.section-heading>.text-link{font-size:0}.section-heading>.text-link svg{width:20px;height:20px}.section-heading>p{display:none}.contract-row{grid-template-columns:39px 1fr auto;gap:10px;padding:16px 13px}.supplier-logo{width:39px;height:39px}.contract-main small,.row-action{display:none}.contract-title{flex-direction:column;align-items:flex-start;gap:5px}.contract-main h3,.contract-main p{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.contract-value strong{font-size:11px}.empty-state.unavailable{grid-template-columns:34px 1fr;padding:16px}.empty-state.unavailable>svg{width:34px;height:34px}.empty-state.unavailable a{grid-column:1/-1;margin-left:50px}.info-callout{grid-template-columns:42px 1fr;padding:24px 20px}.info-callout .secondary-button{grid-column:1/-1}.callout-icon{width:42px;height:42px}.info-callout h2{font-size:19px}.election-teaser{flex-wrap:wrap}.election-teaser-stats{flex:0 0 100%;justify-content:flex-start;margin-top:6px;padding-left:70px}.election-teaser-stats div{text-align:left}.context-bar{flex-wrap:wrap;align-items:flex-start}.context-bar a{margin-left:24px}.process-grid,.method-flow{grid-template-columns:repeat(2,1fr)}.filters-row{flex-direction:column}.table-search{flex:none;max-width:none}.segmented{align-self:flex-start}.election-summary{grid-template-columns:repeat(3,1fr)}.election-summary>div:first-child{grid-column:1/-1}.election-summary>div{padding:16px 14px}.candidate-grid{grid-template-columns:1fr}.party-labels{flex-wrap:wrap;gap:10px 16px}.party-bar{height:32px}.compare-bar{bottom:12px}.criteria-note{grid-template-columns:38px 1fr}.criteria-note a{grid-column:1/-1;margin-left:51px}.national-candidate-grid{grid-template-columns:1fr}.national-card-head h2{white-space:normal}.national-tabs button{min-width:114px}.source-intro{grid-template-columns:42px 1fr}.source-intro>div:first-child{width:42px;height:42px}.source-intro>span{grid-column:1/-1;justify-self:start}.source-grid{grid-template-columns:1fr}.election-source{flex-wrap:wrap;align-items:flex-start}.election-source a{width:100%;margin-left:0}.footer-inner{flex-direction:column;align-items:flex-start;gap:15px;padding:28px 0}.footer-inner>div:last-child{flex-wrap:wrap}.legal-article{padding:4px 18px}.legal-article h3{font-size:15px}.legal-toc{margin-bottom:32px}.modal-backdrop{padding-top:8vh}.municipality-backdrop{padding-top:4vh}.municipality-modal-head{padding:20px 18px 16px}.municipality-search{margin:0 18px 13px}.municipality-results{max-height:58vh}}@media (width<=430px){.process-grid,.method-flow{grid-template-columns:1fr}.candidate-stats strong{font-size:11px}.profile-details{grid-template-columns:1fr}.profile-details>div:nth-child(odd){border-right:0}.profile-details>div:nth-last-child(2){border-bottom:1px solid #e5eae7}.contract-value{max-width:74px}.contract-value strong{white-space:nowrap}.compare-bar button{font-size:0}.compare-bar button svg{width:18px;height:18px}}.investments-page{max-width:1240px}.investments-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;display:flex}.investments-heading>div{max-width:760px}.investments-heading h1{margin-bottom:13px}.investments-heading p{color:var(--muted);margin:0;font-size:16px;line-height:1.6}.investments-heading>a{border:1px solid var(--line);height:42px;color:var(--green);background:#fff;border-radius:10px;flex:none;align-items:center;gap:7px;padding:0 14px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.investment-filters{background:#fff;border:1px solid #dce4df;border-radius:15px;margin-bottom:22px;padding:18px;position:relative;box-shadow:0 7px 24px #19312809}.filter-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:13px;display:flex}.filter-heading>span{color:var(--ink);align-items:center;gap:7px;font-size:12px;font-weight:800;display:flex}.filter-heading>span svg{color:var(--green)}.filter-heading small{color:#7a847f;font-size:10px}.filter-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.investment-filter{background:#fafbf9;border:1px solid #e0e6e2;border-radius:9px;flex-direction:column;justify-content:center;gap:3px;min-width:0;height:55px;padding:8px 10px;display:flex}.investment-filter span{color:#7b8580;letter-spacing:.45px;text-transform:uppercase;font-size:8px;font-weight:700}.investment-filter select{width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;outline:0;font-size:10px;font-weight:700}.clear-investment-filters{color:#718079;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-top:11px;padding:0;font-size:9px;font-weight:700;display:inline-flex}.clear-investment-filters:hover{color:var(--green)}.investment-scope{align-items:center;gap:7px;min-height:30px;margin-bottom:10px;font-size:10px;display:flex}.investment-scope span{color:#7c8781}.investment-scope strong{color:var(--green)}.investment-scope button{color:var(--green);cursor:pointer;background:#e9f2ed;border:0;border-radius:6px;margin-left:5px;padding:4px 7px;font-size:8px;font-weight:800}.investment-metrics{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.investment-metric{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:flex-start;gap:12px;min-width:0;padding:17px;display:flex;box-shadow:0 6px 20px #19312808}.investment-metric>span{width:37px;height:37px;color:var(--green);background:#e9f2ed;border-radius:10px;flex:none;place-items:center;display:grid}.investment-metric>div{min-width:0}.investment-metric p{color:#76817c;margin:0 0 4px;font-size:10px}.investment-metric strong{color:var(--ink);letter-spacing:-.5px;text-overflow:ellipsis;white-space:nowrap;font:700 20px/1.25 Manrope;display:block;overflow:hidden}.investment-metric small{color:#84908a;margin-top:5px;font-size:8px;display:block}.investment-metric.unavailable{background:#fffaf5;border-style:dashed}.investment-metric.unavailable>span{color:#a66931;background:#fff0df}.investment-metric.unavailable strong{color:#93612f;font-size:15px;line-height:1.65}.map-analysis-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr);gap:16px;margin-bottom:18px;display:grid}.investment-map-panel,.state-detail-panel,.investment-ranking-panel,.region-panel{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;box-shadow:0 7px 24px #19312809}.investment-map-panel{padding:22px}.investment-panel-head{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.investment-panel-head .eyebrow{margin-bottom:5px}.investment-panel-head h2{color:var(--ink);letter-spacing:-.5px;margin:0 0 5px;font-size:19px}.investment-panel-head p{color:#7c8781;margin:0;font-size:10px;line-height:1.5}.investment-panel-head>svg{color:#7ba38f}.brazil-map-shell{min-height:530px;margin-top:2px;position:relative}.brazil-map{width:100%;height:500px;display:block;overflow:visible}.state-shape{stroke:#fff;stroke-width:1.25px;cursor:pointer;transition:fill .16s,filter .16s,stroke-width .16s}.state-shape:hover,.state-shape:focus{filter:brightness(.92);stroke:#1f5e4a;stroke-width:2px;outline:none}.state-shape.selected{stroke:#d07d35;stroke-width:3px;filter:drop-shadow(0 2px 4px #33504440)}.state-label{fill:#193d31;pointer-events:none;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:#ffffffb8;stroke-width:2px;font:800 8px DM Sans}.map-scale{color:#87918c;align-items:center;gap:3px;font-size:8px;display:flex;position:absolute;bottom:3px;left:0}.map-scale i{width:24px;height:7px}.map-scale i:first-of-type{background:#b9d5c8}.map-scale i:nth-of-type(2){background:#82b59e}.map-scale i:nth-of-type(3){background:#4d9177}.map-scale i:nth-of-type(4){background:#28705a}.map-scale i:nth-of-type(5){background:#174c3c}.map-hover-card{background:#fffffff0;border:1px solid #dfe6e2;border-radius:10px;flex-direction:column;min-width:175px;padding:10px 12px;display:flex;position:absolute;bottom:0;right:0;box-shadow:0 8px 25px #19312814}.map-hover-card span{color:#76817b;text-transform:uppercase;letter-spacing:.5px;font-size:8px;font-weight:800}.map-hover-card strong{color:var(--ink);margin-top:3px;font:700 15px Manrope}.map-hover-card small{color:#87918c;margin-top:2px;font-size:8px}.state-detail-panel{overflow:hidden}.state-detail-head{color:#fff;background:#173f34;padding:23px}.state-detail-head span{color:#9ac0b0;letter-spacing:1px;text-transform:uppercase;font-size:8px;font-weight:800}.state-detail-head h2{letter-spacing:-.8px;margin:6px 0 5px;font-size:25px}.state-detail-head p{color:#b4cbc1;margin:0;font-size:9px;line-height:1.5}.state-detail-grid{grid-template-columns:1fr 1fr;display:grid}.state-detail-item{border-bottom:1px solid #e5eae7;border-right:1px solid #e5eae7;flex-direction:column;justify-content:center;min-width:0;min-height:89px;padding:15px;display:flex}.state-detail-item:nth-child(2n){border-right:0}.state-detail-item span{color:#7b8580;text-transform:uppercase;letter-spacing:.45px;font-size:8px}.state-detail-item strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font:700 13px Manrope;overflow:hidden}.state-detail-item small{color:#929b97;margin-top:3px;font-size:7px;line-height:1.25}.tax-mini-note{color:#9b6838;background:#fff5e9;border-radius:10px;align-items:flex-start;gap:9px;margin:16px;padding:12px;display:flex}.tax-mini-note p{flex-direction:column;margin:0;display:flex}.tax-mini-note strong{font-size:9px}.tax-mini-note span{margin-top:2px;font-size:8px;line-height:1.4}.investment-rankings{grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:18px;display:grid}.investment-ranking-panel,.region-panel{padding:22px}.state-ranking-list{flex-direction:column;margin-top:17px;display:flex}.state-ranking-list button{cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0ee;grid-template-columns:23px 27px minmax(70px,1fr) 85px 74px 15px;align-items:center;gap:7px;min-height:43px;display:grid}.state-ranking-list button:hover,.state-ranking-list button.active{background:#f1f6f3}.state-ranking-list button>span{color:#9aa39f;font-size:8px}.state-ranking-list button>strong{font-size:10px}.state-ranking-list button>div{background:#edf1ef;border-radius:99px;height:5px;overflow:hidden}.state-ranking-list button>div i{border-radius:inherit;background:var(--green);height:100%;display:block}.state-ranking-list button>b{text-align:right;font-size:9px}.state-ranking-list button>small{color:#7d8782;text-align:right;font-size:8px}.state-ranking-list button>svg{color:#9aa49f}.region-list{flex-direction:column;gap:17px;margin-top:19px;display:flex}.region-list button{cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.region-list button>span{justify-content:space-between;gap:12px;display:flex}.region-list strong{font-size:10px}.region-list b{color:var(--green);font-size:10px}.region-list button>div{background:#edf1ef;border-radius:99px;height:8px;margin:7px 0 5px;overflow:hidden}.region-list button>div i{border-radius:inherit;background:linear-gradient(90deg,#82b59e,#286b55);height:100%;display:block}.region-list small{color:#7d8782;font-size:8px}.unavailable-tax-panel{background:#fffaf4;border:1px dashed #e5c8a9;border-radius:14px;grid-template-columns:45px 1fr;align-items:flex-start;gap:15px;margin-bottom:18px;padding:22px;display:grid}.unavailable-tax-panel>div:first-child{color:#a66931;background:#fff0df;border-radius:12px;place-items:center;width:45px;height:45px;display:grid}.unavailable-tax-panel .eyebrow{color:#a66931;margin-bottom:5px}.unavailable-tax-panel h2{margin:0 0 5px;font-size:17px}.unavailable-tax-panel p{color:#746e67;margin:0;font-size:10px;line-height:1.6}.investment-methodology{color:var(--green);background:#eef4f1;border:1px solid #dbe4df;border-radius:12px;align-items:flex-start;gap:12px;padding:17px 19px;display:flex}.investment-methodology>div{flex:1;min-width:0}.investment-methodology strong{color:#214d3d;font-size:10px}.investment-methodology p{color:#60736b;margin:3px 0 0;font-size:9px;line-height:1.55}.investment-methodology code{font-size:8px}.investment-methodology a{color:var(--green);flex:none;align-items:center;gap:5px;font-size:9px;font-weight:800;text-decoration:none;display:flex}.investment-loading{min-height:70vh;color:var(--green);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.investment-loading>svg{animation:.75s linear infinite spin}.investment-loading h2{color:var(--ink);margin:14px 0 4px;font-size:18px}.investment-loading p{color:#7c8781;margin:0;font-size:10px}.investment-error{color:#a64e44;background:#fff4f2;border:1px solid #efd2cd;border-radius:15px;justify-content:center;align-items:center;gap:15px;min-height:240px;padding:30px;display:flex}.investment-error h2{color:#813c35;margin:0 0 5px;font-size:17px}.investment-error p{color:#775f5b;margin:0;font-size:10px}@media (width<=1120px){.filter-grid{grid-template-columns:repeat(3,1fr)}.map-analysis-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)}}@media (width<=900px){.investment-metrics{grid-template-columns:repeat(2,1fr)}.map-analysis-grid,.investment-rankings{grid-template-columns:1fr}.brazil-map-shell{min-height:500px}.brazil-map{height:470px}}@media (width<=720px){.investments-heading{flex-direction:column;align-items:flex-start}.investments-heading>a{justify-content:center;width:100%}.filter-grid{grid-template-columns:repeat(2,1fr)}.filter-heading{flex-direction:column;align-items:flex-start;gap:5px}.investment-map-panel,.investment-ranking-panel,.region-panel{padding:17px}.brazil-map-shell{min-height:440px}.brazil-map{height:410px}.investment-methodology{flex-wrap:wrap}.investment-methodology a{width:100%;margin-left:33px}}@media (width<=460px){.filter-grid,.investment-metrics{grid-template-columns:1fr}.investment-filter{height:52px}.brazil-map-shell{min-height:365px}.brazil-map{height:340px}.state-label{font-size:7px}.map-scale{display:none}.map-hover-card{margin-top:-5px;position:relative;bottom:auto;right:auto}.state-ranking-list button{grid-template-columns:22px 25px 1fr 74px 14px}.state-ranking-list button>small{display:none}.state-detail-item{min-height:82px;padding:12px}}.consent-banner{z-index:130;background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:14px;max-width:720px;margin:0 auto;padding:16px 18px;animation:.28s ease-out consentIn;display:flex;position:fixed;bottom:16px;left:16px;right:16px;box-shadow:0 16px 44px #0c271d2e}.consent-icon{background:var(--green-soft);width:34px;height:34px;color:var(--green);border-radius:10px;flex:none;place-items:center;display:grid}.consent-text{flex:auto;min-width:0}.consent-text strong{color:var(--ink);margin-bottom:4px;font-size:12px;display:block}.consent-text p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.consent-link{font:inherit;color:var(--green);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.consent-actions{flex:none;align-items:center;gap:8px;display:flex}.consent-actions button{cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:9px 16px;font-size:11px;font-weight:600}.consent-deny{background:var(--surface);color:var(--muted)}.consent-deny:hover{color:var(--ink);border-color:#c9d3cd}.consent-accept{background:var(--green);border-color:var(--green);color:#fff}.consent-accept:hover{background:var(--green-dark);border-color:var(--green-dark)}@keyframes consentIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.consent-banner{flex-wrap:wrap;gap:10px}.consent-actions{width:100%}.consent-actions button{flex:1 1 0}}.consent-status{border:1px solid var(--line);background:#fbfcfb;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:13px 15px;display:flex}.consent-status p{color:var(--muted);margin:0;font-size:11px}.consent-status strong{color:var(--ink)}.consent-status button{border:1px solid var(--green);background:var(--surface);color:var(--green);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:11px;font-weight:600}.consent-status button:hover{background:var(--green-soft)}.city-shortcuts{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.city-shortcuts>span{color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.city-shortcuts button{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 13px;font-size:11px;font-weight:600}.city-shortcuts button:hover:not(:disabled){border-color:var(--green);color:var(--green);background:var(--green-soft)}.city-shortcuts button:disabled{opacity:.5;cursor:default}.compare-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin:22px 0;padding:20px 22px}.compare-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.compare-head h2{color:var(--ink);margin:2px 0 0;font-size:17px}.compare-choices{flex-wrap:wrap;gap:8px;display:flex}.compare-choices button{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;padding:7px 14px;font-size:11px;font-weight:600}.compare-choices button:hover:not(:disabled):not(.active){border-color:var(--green);color:var(--green)}.compare-choices button.active:hover{background:var(--green-dark);border-color:var(--green-dark)}.compare-choices button.active{background:var(--green);border-color:var(--green);color:#fff}.compare-choices button:disabled{opacity:.5;cursor:default}.compare-hint{color:var(--muted);align-items:center;gap:7px;margin:14px 0 0;font-size:11px;display:flex}.compare-hint.error{color:#a8543a}.compare-table{border:1px solid var(--line);border-radius:12px;margin-top:16px;overflow:hidden}.compare-row{grid-template-columns:1.4fr 1fr 1fr;align-items:center;gap:10px;padding:11px 15px;font-size:12px;display:grid}.compare-row+.compare-row{border-top:1px solid var(--line)}.compare-row.head{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#f7f9f8;font-size:10.5px;font-weight:700}.compare-row>span:first-child{color:var(--muted)}.compare-row strong{color:var(--ink);font-size:13px}.scope-notice{background:#fff7ef;border:1px solid #f0dcc9;border-radius:12px;align-items:flex-start;gap:10px;margin:0 0 14px;padding:12px 14px;display:flex}.scope-notice svg{color:#a86431;flex:none;margin-top:1px}.scope-notice p{color:#7e5a3d;margin:0;font-size:11px;line-height:1.6}@media (width<=720px){.compare-row{grid-template-columns:1.2fr 1fr 1fr;gap:8px;padding:10px 12px;font-size:11px}.compare-row strong{font-size:11.5px}}.flow-lede{background:var(--green-soft);color:#2c5446;border:1px solid #d3e4db;border-radius:12px;margin:0 0 16px;padding:12px 15px;font-size:12px;line-height:1.6}.flow-lede strong{color:var(--green-dark)}.supplier-ranking{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.supplier-ranking li{flex-direction:column;gap:6px;display:flex}.supplier-line{align-items:baseline;gap:10px;display:flex}.supplier-rank{width:20px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:700}.supplier-name{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12.5px;font-weight:600;overflow:hidden}.supplier-value{color:var(--ink);font-variant-numeric:tabular-nums;flex:none;font-size:12.5px}.supplier-bar-track{background:#eef1ef;border-radius:4px;height:7px;overflow:hidden}.supplier-bar{background:var(--green);border-radius:4px;height:100%}.supplier-meta{color:var(--muted);flex-wrap:wrap;gap:12px;padding-left:30px;font-size:10.5px;display:flex}.supplier-meta span{align-items:center;gap:4px;display:inline-flex}.supplier-cnpj{font-variant-numeric:tabular-nums}.show-more{margin-top:18px}.work-list{flex-direction:column;gap:10px;display:flex}.work-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:16px;padding:14px 16px;display:flex}.work-main{flex:auto;min-width:0}.work-main>strong{color:var(--ink);margin-bottom:6px;font-size:12.5px;line-height:1.45;display:block}.work-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:10.5px;display:flex}.work-status{border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:10.5px;font-weight:600;display:inline-flex}.work-value{text-align:right;flex:none}.work-value strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:12.5px;display:block}.work-value small{color:var(--muted);font-size:10px}.work-source{color:var(--green);flex:none;font-size:10.5px;font-weight:600;text-decoration:none}.work-source:hover{text-decoration:underline}.source-note{color:var(--muted);margin:14px 0 0;font-size:10.5px;line-height:1.6}@media (width<=720px){.work-row{flex-wrap:wrap;gap:10px}.work-value{text-align:left}.supplier-meta{padding-left:0}}.main-nav a{align-items:center;text-decoration:none;display:inline-flex}
