@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#191a1e;--paper:#f5f5f3;--line:#e9e9e6;--orange:#ff5a2d;--yellow:#ffd52d;--shadow:0 12px 36px #18191d0e;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--paper)}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:var(--ink);color:white;padding:24px 16px 20px;display:flex;flex-direction:column;z-index:500}.brand-lockup{display:flex;align-items:center;gap:10px;padding:0 10px 22px;border-bottom:1px solid #ffffff1a}.brand-lockup img{width:76px;height:48px;object-fit:contain;background:#fff;border-radius:6px}.brand-lockup div{display:flex;flex-direction:column}.brand-name{font:800 18px Manrope,sans-serif;letter-spacing:.09em}.brand-subtitle{color:var(--yellow);font-size:9px;font-weight:700;letter-spacing:.17em;margin-top:2px}.sidebar-caption{padding:25px 12px 11px;color:#808187;font-size:10px;font-weight:700;letter-spacing:.13em}.main-nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;border:0;border-radius:9px;background:transparent;color:#c9c9cb;text-align:left;padding:12px;font-size:13px}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:#303136;color:#fff;font-weight:700;box-shadow:inset 3px 0 var(--orange)}.nav-icon{width:20px;color:var(--yellow);font-size:17px;text-align:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff1a;padding:17px 6px 0;display:flex;align-items:center;justify-content:space-between}.sidebar-user{display:flex;align-items:center;gap:9px}.user-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--orange);font-weight:800}.sidebar-user div{display:grid;gap:2px}.sidebar-user strong{font-size:12px}.sidebar-user small{font-size:10px;color:#92939a}.text-button{border:0;background:none;color:#aaa;font-size:11px}
.main-content{margin-left:252px;min-height:100vh}.topbar{height:62px;background:#ffffffc9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 38px}.topbar-meta{display:flex;align-items:center;gap:16px;color:#686a70;font-size:11px}.live-indicator{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:700;letter-spacing:.1em;color:#5a5b60}.live-indicator i{width:7px;height:7px;background:#29ad72;border-radius:50%;box-shadow:0 0 0 3px #29ad721f}.topbar-divider{height:18px;width:1px;background:#dededb}.topbar-user{font-weight:600}.mobile-brand{display:none}.page-wrap{max-width:1600px;margin:auto;padding:32px 38px 24px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{margin:0 0 8px;color:#9c9da2;font-size:9px;font-weight:700;letter-spacing:.16em}.page-heading h1{font:800 32px/1.08 Manrope,sans-serif;letter-spacing:-.04em;margin:0}.lead{font-size:13px;color:#77797f;margin:9px 0 0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;border-radius:8px;font-size:11px;font-weight:700;border:1px solid transparent;transition:transform .15s,background .15s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:wait;transform:none}.button-dark{background:var(--ink);color:#fff}.button-dark span{color:var(--yellow);font-size:17px}.button-primary{background:var(--orange);color:#fff}.button-outline{border-color:#dededb;background:#fff;color:var(--ink)}.button-ghost{background:#fff;border-color:var(--line);color:var(--ink)}.button-full{width:100%;padding:13px}.notice{margin:0 0 17px;padding:12px 15px;border-radius:8px;font-size:12px;border:1px solid #cfe9da;background:#edf8f1;color:#206744}.notice.error{border-color:#f2c9bf;background:#fff1ed;color:#9d3219}.notice.info{border-color:#dfd7a0;background:#fff9d8;color:#72631c}.loading-line{margin:-4px 0 16px;display:flex;align-items:center;gap:9px;color:#72747a;font-size:11px}.loading-line[hidden],.notice[hidden]{display:none}.loading-line span{width:13px;height:13px;border:2px solid #ffc7b5;border-top-color:var(--orange);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.view-panel{display:none}.view-panel.active{display:block}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:33px}.metric-card{position:relative;min-height:126px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 18px;box-shadow:0 4px 16px #14141405;overflow:hidden}.metric-feature{background:var(--ink);color:#fff;border-color:var(--ink)}.metric-feature:after{content:"";position:absolute;width:90px;height:90px;border:1px solid #ffd52d2e;border-radius:50%;right:-27px;bottom:-48px;box-shadow:0 0 0 12px #ffd52d0a,0 0 0 28px #ffd52d06}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#93959a;font-size:8px;font-weight:700;letter-spacing:.12em}.metric-feature .metric-top{color:#bdbec1}.metric-mark{font:800 18px Manrope,sans-serif;color:var(--yellow)}.metric-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;font-size:12px;background:#f5f5f3}.metric-icon.orange{color:var(--orange);background:#fff1ec}.metric-icon.yellow{color:#a08b00;background:#fff9d9}.metric-value{font:800 27px/1.15 Manrope,sans-serif;letter-spacing:-.04em;margin-top:14px}.metric-value small{font:600 11px "DM Sans",sans-serif;color:#96979b;letter-spacing:0}.metric-foot{color:#94969b;font-size:10px;margin-top:5px}.metric-feature .metric-foot{color:#a9aaaf}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 14px}.section-head h2{font:800 19px/1.25 Manrope,sans-serif;letter-spacing:-.03em;margin:0}.section-head .muted{margin:7px 0 0;font-size:12px}.select-inline{display:flex;align-items:center;gap:8px;color:#77797f;font-size:10px}.select-inline select,.filter-bar select{border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 30px 9px 10px;font-size:11px;color:var(--ink);outline:none}.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:13px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:15px}.panel-heading h3{font:700 13px Manrope,sans-serif;margin:0}.panel-heading p{color:#93959a;font-size:10px;margin:5px 0 0}.panel-label,.table-badge,.reference-tag{border:1px solid #ededeb;border-radius:99px;padding:6px 8px;color:#92949a;font-size:8px;letter-spacing:.08em;font-weight:700;white-space:nowrap}.map-panel{padding-bottom:13px}#votes-map{height:296px;border-radius:8px;overflow:hidden;background:#eef1ef;isolation:isolate}.leaflet-container{font:12px "DM Sans",sans-serif;z-index:1}.leaflet-tooltip{border:0;border-radius:6px;box-shadow:0 6px 20px #0002;color:#333;font-size:11px;line-height:1.7}.map-legend{display:flex;gap:18px;align-items:center;padding-top:13px;font-size:9px;color:#707279}.map-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.official{background:var(--orange)}.legend-dot.manual{background:var(--yellow);border:1px solid #d6b400}.map-note{font-size:9px;color:#a0a1a5;margin:8px 0 0}.map-fallback{height:100%;display:grid;align-content:center;justify-items:center;gap:8px;padding:20px;text-align:center;color:#777}.map-fallback span{font-size:11px}
.city-comparison{display:grid;gap:14px}.city-stat{padding-bottom:12px;border-bottom:1px solid #f0f0ed}.city-stat:last-child{border-bottom:0;padding-bottom:0}.city-stat-head,.city-stat-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.city-stat-head strong{font:700 11px Manrope,sans-serif}.city-stat-head>span{font:700 12px Manrope,sans-serif}.city-stat-head small{font:500 9px "DM Sans",sans-serif;color:#999}.city-bars{display:grid;gap:5px;margin:9px 0 6px}.bar-track{height:6px;border-radius:99px;background:#f0f0ee;overflow:hidden}.bar-track-small{height:4px;background:#fff4ee}.bar-track i{display:block;height:100%;border-radius:inherit}.official-bar{background:#b9bbc0}.manual-bar{background:var(--orange)}.city-stat-foot{font-size:9px;color:#8d8f94}.city-stat-foot b{color:var(--orange);font-weight:700}.lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:13px;margin-top:13px}.zone-chart{display:grid;gap:7px}.zone-row{display:grid;grid-template-columns:132px minmax(45px,1fr) 50px;align-items:center;gap:10px;text-align:left;border:0;background:none;padding:5px 2px;border-radius:5px}.zone-row:hover{background:#faf7f4}.zone-label{display:grid;gap:2px;min-width:0}.zone-label b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zone-label small{color:#9b9ca0;font-size:8px}.zone-track{height:7px;border-radius:99px;background:#f2f2f0;overflow:hidden}.zone-track i{display:block;height:100%;background:linear-gradient(90deg,var(--orange),#ff9b42);border-radius:99px}.zone-value{text-align:right;font-size:9px;font-weight:700}.panel-accent{background:#fffdfa}.link-button{border:0;background:none;color:var(--orange);font-size:10px;font-weight:700;white-space:nowrap}.top-manual{display:grid}.no-manual{display:flex;align-items:center;gap:12px;padding:10px 0 18px}.no-manual>span{width:35px;height:35px;border-radius:10px;background:#fff0e9;color:var(--orange);display:grid;place-items:center}.no-manual div{display:grid;gap:4px}.no-manual strong{font-size:11px}.no-manual small{font-size:9px;color:#999}.top-manual-row{display:grid;grid-template-columns:105px 1fr auto;align-items:center;gap:4px 10px;text-align:left;padding:8px 1px;background:none;border:0;border-bottom:1px solid #f1eee8}.top-rank{font-size:10px;font-weight:700}.top-rank i{font-style:normal;color:#bbb}.top-place{font-size:9px;color:#888}.top-manual-row>strong{font:700 11px Manrope,sans-serif;color:var(--orange);text-align:right}.top-manual-row>strong small{font:500 8px "DM Sans",sans-serif}.top-official{grid-column:2/4;font-size:8px;color:#aaa}.integrity-note{display:flex;gap:8px;align-items:flex-start;background:#fff5e9;border-radius:7px;padding:10px;margin-top:12px}.integrity-note>span{display:grid;place-items:center;flex:0 0 15px;height:15px;border-radius:50%;background:#f2d790;color:#6d5a22;font-size:9px;font-weight:700}.integrity-note p{font-size:9px;line-height:1.45;color:#766b53;margin:0}
.page-footer{display:flex;justify-content:space-between;gap:15px;padding:21px 2px 4px;color:#a0a1a5;font-size:8px;letter-spacing:.05em}.filter-bar{display:flex;align-items:flex-end;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:13px}.filter-bar label{display:grid;gap:6px;color:#77797f;font-size:9px}.filter-bar select{min-width:155px}.filter-bar input,.manual-form input,.manual-form select{width:100%;border:1px solid #e5e5e2;border-radius:7px;padding:10px;font-size:11px;outline:none;background:#fff}.filter-bar input:focus,.manual-form input:focus,.manual-form select:focus{border-color:#f7a78e;box-shadow:0 0 0 3px #ff5b2e14}.search-field{flex:1}.filter-bar .button{padding:10px 18px}.table-panel{padding:0;overflow:hidden}.table-panel .panel-heading{padding:17px 18px 12px;margin:0}.table-scroll{overflow:auto;max-height:650px}table{border-collapse:collapse;width:100%;font-size:10px;white-space:nowrap}thead{position:sticky;top:0;background:#fbfbf9;z-index:2}th{text-align:left;padding:11px 12px;color:#8a8c91;font-size:8px;font-weight:700;letter-spacing:.05em;border-top:1px solid #f0f0ed;border-bottom:1px solid #ecece9}td{padding:10px 12px;border-bottom:1px solid #f0f0ed;color:#65676d}tbody tr:hover{background:#fffaf7}.table-city{font-weight:600;color:#36373c}.poll-place{max-width:250px;overflow:hidden;text-overflow:ellipsis}.official-cell{font-weight:700;color:#34353a}.manual-cell{font-weight:700;color:var(--orange)}.row-edit,.row-delete{border:0;background:#fff3ed;color:#cf4c26;border-radius:5px;padding:5px 8px;font-size:8px;font-weight:700}.row-delete{margin-left:5px;padding:4px 7px;font-size:13px}.row-actions{display:flex;align-items:center}.empty-state{text-align:center;color:#9a9ba0;padding:30px 15px!important;font-size:10px}
.manual-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:13px;margin-bottom:13px}.manual-form{display:grid;gap:11px}.manual-form label{display:grid;gap:6px;color:#696b71;font-size:9px;font-weight:600}.manual-form select,.manual-form input{padding:11px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-hint{font-size:9px;color:#96979b;margin:0}.reference-panel{display:flex;flex-direction:column;min-height:390px}.reference-image-link{display:block;flex:1;min-height:260px;background:#24252a;border-radius:8px;overflow:hidden}.reference-image-link img{width:100%;height:100%;max-height:360px;object-fit:contain;display:block}.reference-note{font-size:9px;line-height:1.55;color:#8a8c91;margin:9px 1px 0}.reference-tag{color:var(--orange);border-color:#f5d9ce}.manual-list-panel{margin-bottom:13px}.csv-upload-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 17px;border-top:1px solid #f0f0ed;border-bottom:1px solid #f0f0ed}.csv-upload-row>span{font-size:9px;color:#999}.csv-upload{display:flex;align-items:center;gap:9px}.file-input-label{position:relative;display:inline-flex;align-items:center;padding:9px 11px;border:1px dashed #dededb;border-radius:7px;color:#666;font-size:9px;font-weight:600;overflow:hidden}.file-input-label input{position:absolute;inset:0;opacity:0;cursor:pointer}.note-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis}.row-warning{background:#fffaf0}.status-review{color:#947521;font-size:8px}.privacy-strip{border:1px solid #f1dfba;border-radius:8px;background:#fffaf0;padding:13px 15px;color:#75694a;font-size:10px;line-height:1.5}
.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.source-card{display:flex;flex-direction:column;min-height:255px}.source-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#fff0e9;color:var(--orange);font-size:19px}.source-card .eyebrow{margin-top:18px;margin-bottom:6px}.source-card h3{font:700 14px Manrope,sans-serif;margin:0}.source-card p:not(.eyebrow){font-size:10px;line-height:1.6;color:#818389;margin:9px 0 16px}.source-card .button{align-self:flex-start;margin-top:auto}.source-foot{font-size:8px;color:#9b9da2;margin-top:12px;line-height:1.5}.text-link{margin-top:auto;color:var(--orange);font-size:10px;font-weight:700}.source-note{border-top:1px solid var(--line);margin-top:16px;padding:15px 3px;color:#888a8f;font-size:9px;line-height:1.7}
.setup-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 75% 20%,#ffe8d9 0,transparent 30%),linear-gradient(135deg,#f7f7f4,#eeefec)}.auth-card{width:min(100%,440px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 70px #191a1e12;padding:32px}.auth-logo{display:block;width:170px;height:98px;object-fit:contain;background:#fafafa;border-radius:8px;margin:0 auto 22px}.auth-card .eyebrow{text-align:center;color:var(--orange)}.auth-card h1{text-align:center;font:800 23px Manrope,sans-serif;margin:0}.auth-card>.muted{text-align:center;font-size:11px;line-height:1.6;margin:9px 0 21px;color:#83858a}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:6px;font-size:10px;font-weight:600;color:#65676c}.auth-form input{border:1px solid #e2e3e0;border-radius:7px;padding:11px;font-size:12px;outline:none}.auth-message{min-height:18px;font-size:10px;text-align:center;color:#168a5a}.error-text{color:#b43824}.auth-footnote{border-top:1px solid #eee;padding-top:14px;margin-bottom:0!important}.muted{color:#888a90}.small{font-size:9px!important}.error-detail{white-space:pre-wrap;overflow-wrap:anywhere;background:#faf1ed;color:#9d3b25;border-radius:7px;padding:10px;font:10px/1.5 monospace}
@media(max-width:1200px){.page-wrap{padding:28px 25px}.topbar{padding:0 25px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:1fr 1fr}.zone-row{grid-template-columns:112px minmax(35px,1fr) 44px}.panel-label{display:none}}
@media(max-width:900px){.sidebar{width:68px;padding:18px 8px}.brand-lockup{justify-content:center;padding:0 0 18px}.brand-lockup img{width:49px;height:38px}.brand-lockup div,.sidebar-caption,.nav-item:not(.active){display:flex}.main-nav{margin-top:15px}.nav-item{justify-content:center;padding:13px 5px;font-size:0}.nav-icon{font-size:18px}.nav-item.active{font-size:0}.sidebar-user div,.sidebar-bottom .text-button{display:none}.sidebar-bottom{justify-content:center}.main-content{margin-left:68px}.overview-grid,.lower-grid{grid-template-columns:1fr}.page-wrap{padding:25px 20px}.topbar{padding:0 20px}}
@media(max-width:600px){.sidebar{inset:auto 0 0;width:auto;height:60px;padding:5px 10px;flex-direction:row;align-items:center;justify-content:center}.brand-lockup,.sidebar-caption,.sidebar-bottom{display:none}.main-nav{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin:0}.nav-item,.nav-item.active{display:grid;justify-items:center;gap:2px;padding:6px 2px;font-size:8px;line-height:1.15;box-shadow:none;color:#bbb}.nav-item.active{color:#fff;background:#303136}.nav-icon{font-size:15px;height:18px}.main-content{margin-left:0;padding-bottom:60px}.topbar{height:52px;padding:0 16px;justify-content:space-between}.mobile-brand{display:block;font:800 10px Manrope,sans-serif;letter-spacing:.08em}.mobile-brand b{color:var(--orange)}.topbar-meta{gap:8px;font-size:9px}.live-indicator{font-size:7px}.topbar-user,.topbar-divider{display:none}.page-wrap{padding:22px 14px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:22px}.page-heading h1{font-size:27px}.lead{font-size:11px;line-height:1.5}.page-heading .button{align-self:stretch}.metric-grid{gap:8px;margin-bottom:28px}.metric-card{padding:13px;min-height:112px}.metric-top{font-size:7px}.metric-value{font-size:23px}.metric-foot{font-size:8px}.section-head{align-items:flex-start;flex-direction:column}.section-head h2{font-size:17px}.select-inline{align-self:stretch;justify-content:space-between}.select-inline select{flex:1}.panel{padding:14px}.panel-heading h3{font-size:12px}.panel-heading p{font-size:9px}#votes-map{height:260px}.map-legend{gap:11px;font-size:8px}.lower-grid{margin-top:9px}.zone-row{grid-template-columns:105px minmax(25px,1fr) 40px;gap:7px}.top-manual-row{grid-template-columns:95px 1fr auto;gap:4px 7px}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar label,.filter-bar select{min-width:0;width:100%}.filter-bar .search-field,.filter-bar .button{grid-column:1/3}.table-panel .panel-heading{padding:14px}.table-badge{display:none}.table-scroll{max-height:65vh}.manual-layout{grid-template-columns:1fr}.reference-panel{min-height:300px}.reference-image-link{min-height:230px}.csv-upload-row{align-items:flex-start;flex-direction:column}.source-grid{grid-template-columns:1fr}.source-card{min-height:220px}.page-footer{flex-direction:column;font-size:7px}.auth-card{padding:25px 20px}}
.ranking-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}.rank-summary-card{display:grid;gap:8px;padding:19px 20px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.rank-summary-card>span{font-size:9px;font-weight:700;letter-spacing:.11em;color:#888a90}.rank-summary-card>strong{font:800 25px/1.15 Manrope,sans-serif;letter-spacing:-.03em}.rank-summary-card>small{font-size:10px;color:#8a8b90}.rank-summary-highlight{background:var(--ink);color:white;border-color:var(--ink)}.rank-summary-highlight>span,.rank-summary-highlight>small{color:#b7b8bc}.rank-summary-highlight>strong{color:var(--yellow);font-size:20px}.ranking-controls{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(220px,1fr) auto;gap:13px;align-items:end;padding:17px 18px;border-bottom:1px solid var(--line)}.ranking-controls label{display:grid;gap:6px;color:#77797f;font-size:10px;font-weight:600}.ranking-controls select,.ranking-controls input{min-width:0;border:1px solid #e4e4e1;border-radius:7px;background:#fff;padding:10px 11px;color:var(--ink);font-size:11px;outline:none}.ranking-controls select:focus,.ranking-controls input:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff5a2d18}.rank-position{display:inline-flex;min-width:34px;justify-content:center;border-radius:6px;background:#f2f2ef;padding:5px 7px;color:#77797f;font-size:10px;font-weight:700}.share-pill{display:inline-block;border-radius:20px;background:#fff1e9;padding:5px 8px;color:#c04c29;font-size:10px;font-weight:700;white-space:nowrap}.ranking-footnote{padding:0 18px 14px;margin:0;color:#8a8b90;font-size:10px;line-height:1.55}.ranking-panel .table-scroll{max-height:70vh}
@media(max-width:900px){.ranking-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.rank-summary-highlight{grid-column:1/-1}.main-nav .nav-item:not(.active){display:flex;font-size:0;justify-content:center;padding:13px 5px}}
@media(max-width:600px){.main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.main-nav .nav-item:not(.active){display:grid;font-size:8px;justify-items:center;gap:2px;padding:6px 2px}.ranking-summary{grid-template-columns:1fr 1fr;gap:8px}.rank-summary-card{padding:13px}.rank-summary-card>strong{font-size:21px}.rank-summary-highlight>strong{font-size:17px}.ranking-controls{grid-template-columns:1fr 1fr;gap:9px;padding:12px}.ranking-controls label:first-child,.ranking-controls .table-badge{grid-column:1/-1}.ranking-controls select,.ranking-controls input{width:100%}.ranking-footnote{padding:0 12px 12px;font-size:9px}}
.ranking-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.reference-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex:1}
.reference-gallery .reference-image-link{position:relative;display:block;min-width:0;min-height:220px;flex:auto}
.reference-gallery .reference-image-link img{width:100%;height:100%;min-height:220px;max-height:360px;object-fit:contain;display:block}
.city-panel{display:flex;flex-direction:column;min-width:0}
.city-comparison-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(155px,.8fr);gap:8px;margin:-3px 0 12px}
.city-comparison-controls label{display:grid;gap:5px;color:#77797f;font-size:9px;font-weight:600}
.city-comparison-controls input,.city-comparison-controls select{min-width:0;width:100%;border:1px solid #e4e4e1;border-radius:7px;background:#fff;padding:9px 10px;color:var(--ink);font-size:10px;outline:none}
.city-comparison-controls input:focus,.city-comparison-controls select:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff5a2d18}
.city-comparison{display:grid;gap:10px;max-height:390px;overflow:auto;padding:1px 5px 1px 1px;overscroll-behavior:contain}
.city-stat{padding:0 0 9px;border-bottom:1px solid #f0f0ed}
.city-stat-head strong{font-size:10px}
.city-stat-head>span{font-size:11px;white-space:nowrap}
.city-bars{gap:4px;margin:6px 0 5px}
.bar-track{height:5px}
.bar-track-small{height:3px}
.city-stat-foot{font-size:8px}
.audit-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;margin:-11px 0 25px;padding:14px 16px;border:1px solid #f0dfb8;border-radius:10px;background:#fff9eb;color:#6f6244}
.audit-banner-copy strong{display:block;margin-bottom:4px;color:#574922;font-size:10px}
.audit-banner-copy p{margin:0;font-size:9px;line-height:1.55}
.audit-banner-stats{display:grid;gap:5px;min-width:118px}
.audit-banner-stats span{display:flex;justify-content:space-between;gap:8px;font-size:8px;white-space:nowrap}
.audit-banner-stats b{font-size:11px;color:#bf4e2b}
.map-panel .panel-label{display:inline-flex;align-self:flex-start;max-width:140px;text-align:center;white-space:normal;line-height:1.25}
#votes-map{height:350px}
@media(max-width:600px){.city-comparison-controls{grid-template-columns:1fr 1fr}.city-comparison{max-height:440px}.audit-banner{grid-template-columns:1fr;gap:10px;margin:-5px 0 22px;padding:12px}.audit-banner-stats{grid-template-columns:1fr 1fr}.map-panel .panel-label{max-width:95px;font-size:7px}#votes-map{height:270px}}
.reference-gallery .reference-image-link>span{position:absolute;inset:auto 0 0;background:#191a1ee8;color:#fff;padding:7px;font-size:8px;text-align:center}
.status-ok{color:#328364;font-size:8px;font-weight:700}
@media(max-width:900px){.ranking-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-gallery{grid-template-columns:1fr}.reference-gallery .reference-image-link,.reference-gallery .reference-image-link img{min-height:250px;max-height:320px}}
.manual-export-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.legend-dot.official{border:1px solid #df7653;border-radius:2px;background:linear-gradient(135deg,#f8d6c5,#e85a32)}
.legend-dot.manual{background:#ff5a2d;border:1px solid #332119}
.manual-page-head{align-items:center}
.manual-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.manual-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0 0 13px}
.manual-summary-card{display:grid;gap:7px;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}
.manual-summary-card>span{color:#888a90;font-size:8px;font-weight:700;letter-spacing:.1em}
.manual-summary-card>strong{color:var(--ink);font:800 24px/1 Manrope,sans-serif}
.manual-summary-card>small{color:#92949a;font-size:9px}
.manual-summary-review>strong{color:#a87918}
.manual-add-panel{padding:0;margin:0 0 13px;overflow:hidden}
.manual-add-panel>summary{display:flex;align-items:center;gap:11px;padding:13px 16px;cursor:pointer;list-style:none}
.manual-add-panel>summary::-webkit-details-marker{display:none}
.manual-add-plus{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#fff0e9;color:var(--orange);font-size:18px;font-weight:700}
.manual-add-panel>summary>span:nth-child(2){display:grid;gap:3px}
.manual-add-panel>summary strong{font:700 10px Manrope,sans-serif;color:var(--ink)}
.manual-add-panel>summary small{font-size:9px;color:#8d8f94}
.manual-add-summary-action{margin-left:auto;color:var(--orange);font-size:9px;font-weight:700}
.manual-form-compact{grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(90px,.65fr)) auto;align-items:end;gap:9px;padding:2px 16px 16px}
.manual-form-compact label{min-width:0}
.manual-form-compact select,.manual-form-compact input{min-width:0;padding:10px;font-size:10px}
.manual-form-compact .manual-note-field{grid-column:1/3}
.manual-form-compact button{min-height:37px;padding:9px 13px;white-space:nowrap}
.manual-filter-bar{display:grid;grid-template-columns:minmax(165px,1.1fr) minmax(90px,.55fr) minmax(170px,1.3fr) minmax(130px,.8fr) minmax(215px,1.5fr);gap:9px;align-items:end;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}
.manual-filter-bar label{display:grid;gap:5px;min-width:0;color:#77797f;font-size:8px;font-weight:700}
.manual-filter-bar input,.manual-filter-bar select{width:100%;min-width:0;border:1px solid #e4e4e1;border-radius:7px;background:#fff;padding:9px 10px;color:var(--ink);font-size:10px;outline:none}
.manual-filter-bar input:focus,.manual-filter-bar select:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff5a2d18}
.manual-list-tip{color:#c85b37;background:#fff5ef;border-color:#f4ded5}
.manual-table-scroll{max-height:68vh}
.manual-stepper{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid #eee8e3;border-radius:8px;background:#fff;white-space:nowrap}
.manual-stepper strong{min-width:30px;text-align:center;color:#c84f2b;font:800 12px Manrope,sans-serif}
.manual-adjust{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:#fff3ed;color:#c94e29;font:700 18px/1 "DM Sans",sans-serif;cursor:pointer;transition:background .15s,transform .15s}
.manual-adjust:hover:not(:disabled){background:#ffe4d8;transform:scale(1.04)}
.manual-adjust:disabled{cursor:not-allowed;opacity:.4}
.manual-minus{color:#606168;background:#f2f2f0}
.manual-minus:hover:not(:disabled){background:#e8e8e5}
.manual-review-sub{color:#a7a0a0;font-size:8px}
.manual-tools-panel{margin:0 0 13px;padding:0;overflow:hidden}
.manual-tools-panel>summary{padding:13px 16px;color:#6f7177;font-size:9px;font-weight:700;cursor:pointer;list-style:none}
.manual-tools-panel>summary::-webkit-details-marker{display:none}
.manual-tools-panel>summary:before{content:"＋";display:inline-grid;place-items:center;width:19px;height:19px;margin-right:8px;border-radius:5px;background:#f2f2ef;color:#7e8084}
.manual-tools-panel[open]>summary:before{content:"−"}
.manual-tools-content{padding:0 15px 15px}
.manual-tools-content .csv-upload-row{margin:0 -15px 12px}
.manual-tools-content .csv-upload-row>div{display:grid;gap:4px}
.manual-tools-content .csv-upload-row strong{font-size:9px;color:#55575c}
.manual-tools-content .csv-upload-row small{font-size:8px;color:#98999d}
.manual-tools-content .reference-panel{min-height:0}
.manual-tools-content .reference-image-link{min-height:180px}
@media(max-width:1000px){.manual-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.manual-search-field{grid-column:span 2}.manual-form-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.manual-form-compact .manual-note-field{grid-column:span 2}.manual-form-compact button{align-self:end}}
@media(max-width:600px){.manual-page-head{align-items:flex-start}.manual-head-actions{width:100%}.manual-head-actions .button{flex:1;justify-content:center}.manual-summary-grid{gap:6px}.manual-summary-card{padding:11px 9px;gap:5px}.manual-summary-card>span{font-size:6px;letter-spacing:.04em;line-height:1.3}.manual-summary-card>strong{font-size:19px}.manual-summary-card>small{font-size:7px;line-height:1.3}.manual-add-panel>summary{padding:11px}.manual-add-summary-action{font-size:8px}.manual-form-compact{grid-template-columns:1fr 1fr;padding:2px 11px 13px}.manual-form-compact label:first-child,.manual-form-compact .manual-note-field{grid-column:1/3}.manual-form-compact button{grid-column:1/3;width:100%}.manual-filter-bar{grid-template-columns:1fr 1fr;gap:8px;padding:10px}.manual-search-field{grid-column:1/3}.manual-filter-bar label:nth-child(5){grid-column:1/3}.manual-list-tip{display:none}.manual-table-scroll table{min-width:790px}.manual-tools-content{padding:0 10px 10px}.manual-tools-content .csv-upload-row{margin:0 -10px 10px}.manual-tools-content .csv-upload{gap:6px;flex-wrap:wrap}.manual-tools-content .reference-image-link{min-height:220px}}

.candidate-switch-label{display:flex;align-items:center;gap:8px;color:#85868b;font-size:9px;font-weight:700;white-space:nowrap}
.candidate-switch-label select{max-width:255px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 10px;color:var(--ink);font:700 10px Manrope,sans-serif}
.report-filters{grid-template-columns:minmax(200px,1fr) minmax(180px,.7fr) 1.6fr;align-items:end}
.report-filter-note{align-self:center;color:#85868b;font-size:9px}
.report-print-area{display:grid;gap:13px}
.report-title{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(115deg,#fff 50%,#fff6f1)}
.report-logo{width:92px;height:62px;object-fit:contain;flex:0 0 auto}
.report-title-copy{flex:1;margin-left:14px}
.report-title h2{margin:4px 0;font:800 22px/1.2 Manrope,sans-serif;color:var(--ink)}
.report-title p:last-child{margin:0;color:#81838a;font-size:10px}
.report-stamp{padding:8px 11px;border:1px solid #f0d7ca;border-radius:30px;color:#b95735;background:#fff;font-size:8px;font-weight:800;letter-spacing:.08em;white-space:nowrap}
.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.report-kpis article{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}
.report-kpis span{color:#888a90;font-size:8px;font-weight:700;letter-spacing:.08em}
.report-kpis strong{color:var(--ink);font:800 21px/1 Manrope,sans-serif}
.report-manual-panel{margin-bottom:0}
.report-disclaimer{margin:0;color:#77797f;font-size:9px;line-height:1.5}
.candidate-form{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(110px,.7fr) minmax(150px,1fr) minmax(100px,.6fr) auto;gap:10px;align-items:end;padding:0 16px 16px}
.candidate-form label,.document-upload-form label{display:grid;gap:5px;color:#74767d;font-size:9px;font-weight:700}
.candidate-form input,.candidate-form select,.document-upload-form input,.document-upload-form select{width:100%;min-width:0;border:1px solid #e4e4e1;border-radius:7px;background:#fff;padding:10px;color:var(--ink);font:500 10px "DM Sans",sans-serif}
.candidate-primary-tag{display:inline-block;margin-left:8px;padding:3px 6px;border-radius:10px;background:#fff0e9;color:#bf5634;font-size:7px;font-weight:700;vertical-align:middle}
.candidate-status,.document-batch-status{display:inline-flex;padding:5px 8px;border-radius:20px;font-size:8px;font-weight:700;white-space:nowrap}
.candidate-status.is-active,.document-batch-status.applied{background:#edf7f1;color:#328364}
.candidate-status.is-inactive,.document-batch-status.cancelled{background:#f1f1ef;color:#85868b}
.document-batch-status.pending{background:#fff5df;color:#a87512}
.candidate-toggle{border:1px solid #e7e3df;border-radius:6px;background:#fff;padding:7px 9px;color:#7d6258;font-size:8px;font-weight:700;cursor:pointer}
.candidate-toggle:hover{border-color:#e9b49e;color:#c6532e}
.document-privacy{margin:0 0 12px;line-height:1.55}
.document-upload-panel{padding:16px;margin-bottom:12px}
.document-upload-form{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(180px,1fr) minmax(190px,1fr) auto;gap:10px;align-items:end}
.document-file-field small{color:#92949a;font-size:8px;font-weight:400;line-height:1.4}
.document-help{margin:12px 0 0;color:#81838a;font-size:9px;line-height:1.5}
.document-progress{margin-top:15px;padding:12px;border:1px solid #f1dfd5;border-radius:8px;background:#fff8f4}
.document-progress-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:#80513f;font-size:9px}
.document-progress progress{width:100%;height:8px;accent-color:var(--orange)}
.document-stage,.document-preview,.document-history{margin-bottom:12px;overflow:hidden}
.document-stage .panel-heading,.document-preview .panel-heading,.document-history .panel-heading{padding:14px 16px}
.document-stage input[type=number],.document-after{width:115px;border:1px solid #e4e4e1;border-radius:6px;padding:8px;font:700 10px "DM Sans",sans-serif}
.document-stage-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:13px 16px;border-top:1px solid var(--line)}
.document-include{width:17px;height:17px;accent-color:var(--orange)}
.document-history-list{display:grid;padding:0 16px 12px}
.document-history-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #eee}
.document-history-row>div{display:grid;gap:4px;flex:1}
.document-history-row strong{font-size:9px;color:#4a4b50}
.document-history-row small{font-size:8px;color:#92949a}
.document-open{min-height:31px;padding:7px 10px;font-size:8px}
.change-history-panel{margin:0 0 12px;padding:0;overflow:hidden}
.change-history-panel>summary{padding:13px 16px;color:#6f7177;font-size:9px;font-weight:700;cursor:pointer;list-style:none}
.change-history-panel>summary::-webkit-details-marker{display:none}
.change-history-panel>summary:before{content:"↺";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:6px;background:#f2f2ef;color:#7e8084}
.change-history-panel .table-scroll{max-height:340px}
@media(max-width:900px){.candidate-form{grid-template-columns:repeat(2,minmax(0,1fr))}.document-upload-form{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filters{grid-template-columns:1fr 1fr}.report-filter-note{grid-column:1/3}}
@media(max-width:600px){.topbar-meta{gap:7px}.candidate-switch-label{align-items:flex-start;flex-direction:column;gap:3px;font-size:7px}.candidate-switch-label select{max-width:170px;padding:6px;font-size:8px}.report-title{align-items:flex-start;gap:5px;padding:11px}.report-logo{width:60px;height:45px}.report-title-copy{margin-left:4px}.report-title h2{font-size:15px}.report-stamp{font-size:6px;padding:6px}.report-kpis{gap:6px}.report-kpis article{padding:11px 9px}.report-kpis span{font-size:6px;line-height:1.3}.report-kpis strong{font-size:17px}.report-filters,.candidate-form,.document-upload-form{grid-template-columns:1fr}.report-filter-note{grid-column:auto}.document-upload-form .button{width:100%}.document-history-row{align-items:flex-start;flex-wrap:wrap}.document-history-row>div{min-width:60%}.document-history-row .document-open{margin-left:auto}.document-stage-actions{justify-content:stretch}.document-stage-actions .button{flex:1;justify-content:center}}
@page{size:letter portrait;margin:12mm}


/* Campaign metrics distinguish people counted from the two ballots each person may represent. */
.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.report-filters{grid-template-columns:minmax(190px,1.1fr) minmax(150px,1fr) minmax(130px,.7fr) minmax(160px,1fr)}
.report-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.report-sort-label[hidden],#report-sort-label[hidden]{display:none!important}
.report-section[hidden],#report-print-area .report-section[hidden]{display:none!important}
.report-summary-panel{padding:0 18px 17px}
.report-summary-copy{color:#62646a;font-size:11px;line-height:1.7;padding:2px 2px 8px}
.report-summary-copy p{margin:0 0 8px}
.report-summary-copy strong{color:#25262a}
.report-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.report-highlights>div,.report-audit-grid>div{display:grid;gap:6px;padding:11px 12px;border:1px solid #ece9e4;border-radius:8px;background:#fff}
.report-highlights span,.report-audit-grid span{font-size:8px;color:#898b90;font-weight:700;letter-spacing:.07em}
.report-highlights strong{font-size:11px;color:#3b3c41}
.report-highlights small{color:#94969b;font-size:9px}
.report-audit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 16px 14px}
.report-audit-grid strong{font:800 19px Manrope,sans-serif;color:#292a2f}
.manual-ballot-hint{display:block;margin-top:3px;text-align:center;color:#a3664d;font-size:8px;white-space:nowrap}
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filters{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-highlights{grid-template-columns:1fr}.report-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.report-filters{grid-template-columns:1fr}.report-highlights,.report-audit-grid{grid-template-columns:1fr 1fr}.manual-ballot-hint{font-size:7px}}
@media print{.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.report-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.report-filters{display:none!important}.report-section[hidden],#report-print-area .report-section[hidden]{display:none!important}.report-summary-panel{padding:0 3mm 3mm}.report-highlights{grid-template-columns:repeat(3,minmax(0,1fr))}.report-audit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.manual-ballot-hint{font-size:6pt}}

.report-generated{margin:4px 0 0!important;color:#999ba0!important;font-size:8px!important}
@media print{.report-generated{color:#333!important;font-size:7pt!important}}

/* Mapa interativo: controles, escalas e marcadores agrupados */
.map-panel-heading{align-items:center}.map-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:-2px 0 12px}.map-controls label{display:grid;gap:5px;color:#77797f;font-size:9px;font-weight:600}.map-controls select{min-width:225px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 32px 9px 10px;color:var(--ink);font-size:10px;outline:none}.map-controls select:focus{border-color:#f7a78e;box-shadow:0 0 0 3px #ff5b2e14}.map-controls #map-measure-wrap[hidden]{display:none}.map-panel #votes-map{height:370px}.map-legend{min-height:34px;flex-wrap:wrap;gap:9px 18px}.map-scale{display:grid;grid-template-columns:auto minmax(110px,1fr);align-items:center;gap:5px 9px;min-width:210px}.map-scale>b{font-size:9px;color:#55565b}.map-gradient{height:8px;border-radius:20px;background:linear-gradient(90deg,var(--map-gradient));grid-column:1/3;grid-row:2}.map-scale>span{grid-column:1/3;display:flex;justify-content:space-between;gap:8px;font-size:8px;color:#929399}.map-scale em{font-style:normal;color:#aaa}.map-cluster-key{font-size:8px;color:#8c8e93}.manual-bubble-icon,.manual-cluster-icon{background:transparent;border:0}.manual-bubble-icon span{width:var(--bubble-size);height:var(--bubble-size);display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;border:2px solid #fff;background:#ff5a2df2;color:white;box-shadow:0 3px 12px #49231655;text-shadow:0 1px 2px #7f260d;font-size:9px;font-weight:800;line-height:1}.manual-bubble-icon small{font-size:6px;font-weight:600;margin-top:2px}.manual-cluster-icon span{width:58px;height:46px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:2px solid #fff;border-radius:50%;background:#d84a28f2;color:#fff;box-shadow:0 3px 13px #49231655;font-size:11px;font-weight:800;line-height:1;text-shadow:0 1px 2px #7f260d}.manual-cluster-icon small{font-size:7px;font-weight:600;margin-top:2px}.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:transparent}.map-panel .leaflet-tooltip{font-size:10px}.map-panel .panel-label{max-width:160px}
@media(max-width:600px){.map-panel #votes-map{height:285px}.map-controls{display:grid;grid-template-columns:1fr}.map-controls label,.map-controls select{width:100%;min-width:0}.map-scale{min-width:190px}.map-panel .panel-label{max-width:115px}}

/* Apresentação, revisão e contagem rápida */
.page-heading-actions,.presentation-toolbar>div:last-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.candidate-comparison{margin:0 0 13px}.candidate-comparison-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.candidate-compare-card{border:1px solid var(--line);border-radius:10px;padding:15px;background:#fff}.candidate-compare-card>div:first-child{display:grid;gap:4px}.candidate-role{font-size:8px;text-transform:uppercase;color:#9a9ba0;font-weight:700;letter-spacing:.12em}.candidate-compare-card>div:first-child strong{font:800 17px Manrope,sans-serif}.candidate-compare-card>div:first-child small,.candidate-valid-share{font-size:9px;color:#919399}.candidate-compare-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0 10px}.candidate-compare-numbers span{display:grid;gap:4px}.candidate-compare-numbers small{font-size:8px;color:#98999d}.candidate-compare-numbers b{font:700 14px Manrope,sans-serif}.candidate-share-track,.presentation-bar{height:6px;border-radius:9px;background:#f0f0ee;overflow:hidden}.candidate-share-track i,.presentation-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#ff9b42)}.candidate-valid-share{display:block;margin-top:6px}.review-shortcut{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px;padding:13px 17px}.review-shortcut>div{display:flex;align-items:center;gap:12px}.review-shortcut-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff0e9;color:var(--orange);font-size:18px}.review-shortcut>div>span:last-child{display:grid;gap:4px}.review-shortcut strong{font:700 11px Manrope,sans-serif}.review-shortcut small{color:#929399;font-size:9px}.review-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:13px}.review-summary-card{display:grid;gap:8px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:10px}.review-summary-card span{font-size:8px;font-weight:700;letter-spacing:.1em;color:#96979b}.review-summary-card strong{font:800 24px Manrope,sans-serif}.review-filter-label{display:flex;align-items:center;gap:8px;color:#8c8d92;font-size:9px}.review-filter-label select{border:1px solid var(--line);border-radius:6px;padding:7px;background:#fff;color:var(--ink);font-size:10px}.review-edit{white-space:nowrap}
.quick-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:20px;background:#14151999;backdrop-filter:blur(3px)}.quick-modal[hidden]{display:none}.quick-dialog{width:min(540px,100%);max-height:min(92vh,760px);overflow:auto;padding:23px;background:#fff;border-radius:16px;box-shadow:0 24px 80px #0004}.quick-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.quick-dialog h2{margin:0;font:800 21px Manrope,sans-serif}.quick-close{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:23px;line-height:1;color:#777}.quick-fields{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:10px;margin-top:19px}.quick-fields label{display:grid;gap:6px;color:#77797f;font-size:10px;font-weight:700}.quick-fields input,.quick-fields select{width:100%;min-width:0;padding:11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:12px}.quick-counter{display:grid;grid-template-columns:76px 1fr 76px;align-items:center;gap:12px;margin:19px 0 12px}.quick-counter button{height:70px;border:0;border-radius:12px;background:#fff0e9;color:#c34625;font:500 38px/1 "DM Sans",sans-serif}.quick-counter button:last-child{background:var(--orange);color:white}.quick-counter button:disabled{opacity:.4}.quick-counter>div{display:grid;justify-items:center;gap:3px}.quick-counter>div strong{font:800 38px/1 Manrope,sans-serif}.quick-counter>div span{font-size:10px;color:#8c8d92}.quick-sync-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid var(--line);font-size:10px;color:#898a90}.quick-sync-row button{font-size:10px}.quick-recent{margin-top:13px}.quick-recent>strong{font:700 10px Manrope,sans-serif}.quick-recent>div{display:grid;gap:6px;margin-top:8px}.quick-recent>div>small{color:#9b9ca0;font-size:9px}.quick-recent-item{display:grid;grid-template-columns:1fr auto;gap:3px 10px;text-align:left;padding:9px 10px;border:1px solid #eeeeeb;border-radius:8px;background:#fff}.quick-recent-item strong{font-size:10px}.quick-recent-item span{font-size:8px;color:#929399}.quick-recent-item b{grid-column:2;grid-row:1/3;align-self:center;font:700 13px Manrope,sans-serif;color:var(--orange)}.quick-offline-note{margin:13px 0 0;color:#999ba0;font-size:9px;line-height:1.5}
body.presentation-active{overflow:hidden}body.presentation-active .app-shell{display:none!important}#presentation-mode{position:fixed;inset:0;z-index:1050;overflow:auto;background:#f4f4f1;padding:18px 24px 30px}#presentation-mode[hidden]{display:none}.presentation-toolbar{max-width:1200px;margin:0 auto 14px;display:flex;align-items:center;justify-content:space-between;gap:15px}.presentation-toolbar .brand-lockup{padding:0;border:0}.presentation-toolbar .brand-lockup img{width:76px;height:48px}.presentation-sheet{max-width:1200px;margin:0 auto;padding:28px 34px 18px;background:#fff;border:1px solid #e9e9e6;border-radius:14px;box-shadow:var(--shadow)}.presentation-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:17px;border-bottom:2px solid var(--ink)}.presentation-title h1{margin:0;font:800 30px/1.1 Manrope,sans-serif;letter-spacing:-.04em}.presentation-title p:last-child{margin:7px 0 0;color:#77797f;font-size:11px}.presentation-title>span{color:#87888e;font-size:10px}.presentation-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}.presentation-kpis article{display:grid;gap:5px;padding:13px;background:#f7f7f5;border:1px solid #eeeeeb;border-radius:8px}.presentation-kpis span{font-size:8px;color:#85868b;font-weight:700;letter-spacing:.09em}.presentation-kpis strong{font:800 22px Manrope,sans-serif}.presentation-kpis small{font-size:8px;color:#929399}.presentation-candidate-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.presentation-candidate-grid>article{padding:14px;border:1px solid var(--line);border-radius:9px}.presentation-candidate-grid>article>span{font-size:8px;color:#929399;text-transform:uppercase;font-weight:700;letter-spacing:.1em}.presentation-candidate-grid h2{margin:4px 0 2px;font:800 17px Manrope,sans-serif}.presentation-candidate-grid>article>small{font-size:8px;color:#929399}.presentation-candidate-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0 9px}.presentation-candidate-stats div{display:grid;gap:3px}.presentation-candidate-stats small{font-size:8px;color:#929399}.presentation-candidate-stats strong{font:700 13px Manrope,sans-serif}.presentation-bar{margin-bottom:7px}.presentation-bottom-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;margin-top:17px}.presentation-bottom-grid h2{font:700 12px Manrope,sans-serif;margin:0 0 9px}.presentation-bottom-grid>section>p{font-size:9px;line-height:1.6;color:#797b80}.presentation-city-row{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #f0f0ed}.presentation-city-row>span{font:700 9px Manrope,sans-serif;color:#a1a2a5}.presentation-city-row>div{display:grid;gap:3px}.presentation-city-row>div strong{font-size:9px}.presentation-city-row>div small{font-size:7px;color:#929399}.presentation-city-row>div i{height:4px;border-radius:8px;background:#f0f0ee;overflow:hidden}.presentation-city-row>div i b{display:block;height:100%;border-radius:inherit;background:var(--orange)}.presentation-city-row>strong{font:700 9px Manrope,sans-serif}.presentation-footer{display:flex;justify-content:space-between;gap:10px;margin-top:16px;padding-top:10px;border-top:1px solid var(--line);font-size:7px;color:#999ba0;letter-spacing:.06em}
@media(max-width:900px){.page-heading-actions{justify-content:flex-end}.candidate-comparison-cards{grid-template-columns:1fr}.presentation-sheet{padding:22px}.presentation-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.page-heading{align-items:flex-start;flex-direction:column}.page-heading-actions{width:100%;justify-content:flex-start}.page-heading-actions .button{flex:1;padding:9px 8px;font-size:9px}.candidate-compare-numbers b{font-size:12px}.review-shortcut{align-items:flex-start}.review-shortcut .button{padding:9px}.review-summary-grid{grid-template-columns:1fr}.quick-modal{padding:0;align-items:end}.quick-dialog{max-height:94vh;border-radius:18px 18px 0 0;padding:19px 16px calc(18px + env(safe-area-inset-bottom))}.quick-fields{grid-template-columns:1fr 1fr}.quick-fields label:first-child{grid-column:1/3}.quick-counter{grid-template-columns:64px 1fr 64px}.quick-counter button{height:64px}.presentation-toolbar{align-items:flex-start}.presentation-toolbar .brand-lockup{display:none}.presentation-toolbar>div:last-child{width:100%;justify-content:flex-end}.presentation-toolbar .button{font-size:9px;padding:9px}.presentation-sheet{padding:16px}.presentation-title h1{font-size:23px}.presentation-title>span{font-size:8px;text-align:right}.presentation-title p:last-child{font-size:9px}.presentation-kpis{gap:6px}.presentation-kpis article{padding:9px}.presentation-kpis strong{font-size:18px}.presentation-candidate-grid{grid-template-columns:1fr}.presentation-bottom-grid{grid-template-columns:1fr;gap:10px}.presentation-city-row{grid-template-columns:18px 1fr auto}}
@media print{body.presentation-active{overflow:visible;background:#fff!important}body.presentation-active .app-shell,body.presentation-active .quick-modal{display:none!important}body.presentation-active #presentation-mode{position:static;inset:auto;overflow:visible;padding:0;background:#fff;display:block!important}body.presentation-active .presentation-toolbar{display:none!important}body.presentation-active .presentation-sheet{max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}body.presentation-active .presentation-title h1{font-size:24pt}body.presentation-active .presentation-kpis{grid-template-columns:repeat(4,1fr)}body.presentation-active .presentation-kpis strong{font-size:16pt}body.presentation-active .presentation-candidate-grid{grid-template-columns:repeat(2,1fr)}body.presentation-active .presentation-bottom-grid{grid-template-columns:1.15fr .85fr}body.presentation-active .presentation-sheet,body.presentation-active .presentation-candidate-grid>article,body.presentation-active .presentation-kpis article{break-inside:avoid}body.presentation-active .presentation-footer{margin-top:8mm}}
@media(max-width:600px){.sidebar{height:66px}.main-content{padding-bottom:66px}.main-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.nav-item,.nav-item.active{min-width:0;padding:3px 1px;font-size:7px}.nav-icon{font-size:13px;height:15px}.page-heading-actions{align-items:stretch}.page-heading-actions .button{white-space:normal;line-height:1.2}}

/* Galeria completa das folhas usadas na contagem manual */
.manual-tools-panel[open]>.manual-tools-content{padding-bottom:16px}
.reference-panel{display:block;min-height:0;margin-top:14px}
.reference-panel>.panel-heading{align-items:flex-start}
.reference-panel>.panel-heading p{max-width:650px;line-height:1.5}
.reference-batch+.reference-batch{margin-top:20px;padding-top:16px;border-top:1px solid #efefec}
.reference-batch-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 9px}
.reference-batch-heading h4{margin:0;font:700 11px Manrope,sans-serif;color:#4d4f55}
.reference-batch-heading>span{color:#96979b;font-size:9px}
.reference-source-note{margin:0;padding:12px 14px;border:1px solid #ececea;border-radius:8px;background:#fafaf8;color:#77797f;font-size:10px;line-height:1.6}
.reference-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;flex:none}
.reference-gallery .reference-image-link{aspect-ratio:3/4;min-height:0;flex:none;background:#25262a;border-radius:8px}
.reference-gallery .reference-image-link img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;display:block}
.reference-gallery .reference-image-link>span{padding:8px 6px;font-size:9px}
@media(max-width:1050px){.reference-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.reference-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.reference-gallery .reference-image-link,.reference-gallery .reference-image-link img{min-height:0;max-height:none}}
@media(max-width:600px){.reference-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reference-gallery .reference-image-link,.reference-gallery .reference-image-link img{min-height:0;max-height:none}.reference-gallery .reference-image-link>span{font-size:8px}.reference-batch-heading h4{font-size:10px}}

.manual-sources-jump{margin:-4px 0 13px;padding:9px 12px;border:1px solid #f0e1d9;border-radius:8px;background:#fffaf7;font-size:10px}.manual-sources-jump a{color:#b64a2f;font-weight:700;text-decoration:none}.manual-sources-jump a:hover{text-decoration:underline}


.busy-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-content:center;justify-items:center;gap:13px;background:rgba(17,22,31,.38);backdrop-filter:blur(3px);color:#fff;font-size:14px}.busy-overlay[hidden]{display:none}.busy-spinner{width:34px;height:34px;border:3px solid rgba(255,255,255,.35);border-top-color:#ff6b36;border-radius:50%;animation:spin .7s linear infinite}.reports-inline,.manual-inline{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.school-filter-field{min-width:280px}.school-filter-control{display:flex;gap:7px}.school-filter-control input{min-width:0;flex:1}.school-filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.school-chip{border:1px solid #ffd0bd;background:#fff4ef;color:#9a3d1d;border-radius:99px;padding:5px 9px;font-size:10px;font-weight:700;cursor:pointer}.school-filter-field>small{display:block;color:var(--muted);font-weight:400;margin-top:5px}.users-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.5fr);gap:17px;align-items:start}.users-form-panel,.users-table-panel{padding:20px}.users-form{display:grid;gap:13px}.users-form label{display:grid;gap:6px;font-size:11px;font-weight:700}.users-form label small{font-weight:400;color:var(--muted)}.permission-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.permission-list h4{margin:0;padding:11px 12px;border-bottom:1px solid var(--line);font-size:12px}.permission-head,.permission-row{display:grid;grid-template-columns:1fr 62px 62px;align-items:center;gap:8px;padding:9px 11px}.permission-head{background:#f6f6f4;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800}.permission-row{border-top:1px solid #efefed;font-size:11px}.permission-row label{text-align:center}.permission-row input{accent-color:var(--orange)}.users-form-actions{display:flex;gap:8px}.user-fixed-label{display:block;color:var(--muted);font-size:9px;margin-top:3px}.users-table-panel .table-scroll{max-height:600px}.users-table-panel .button{padding:7px 9px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.users-layout{grid-template-columns:1fr}.school-filter-field{min-width:100%}.school-filter-control{flex-wrap:wrap}}
@media(max-width:600px){.permission-head,.permission-row{grid-template-columns:1fr 48px 48px;padding:8px}.school-filter-control .button{padding:9px}.reports-inline,.manual-inline{margin-top:24px;padding-top:20px}}

.busy-overlay[hidden],[data-edit-module][hidden]{display:none!important}

[hidden]{display:none!important}

/* Usuários, locais de votação e destaque da contagem própria */
#view-users{padding:0 2px 24px}.users-layout{gap:22px;margin-top:6px}.users-form-panel,.users-table-panel{padding:22px}.users-form-panel .panel-heading,.users-table-panel .panel-heading{margin-bottom:18px}.users-form{gap:16px}.users-form>label{font-size:12px}.users-form>label input{min-height:40px}.permission-list{margin-top:2px}.users-form-actions{padding-top:4px}.users-table-panel .table-scroll{max-height:620px}.candidate-own-count{padding:10px 12px;border:1px solid #ffdfd2;border-radius:9px;background:#fff7f3}.candidate-own-count b{color:var(--orange)!important}.candidate-own-count small:last-child{color:#d0532e!important}.city-mobilization{margin-top:6px}.city-mobilization>span{font-size:10px;color:#73757a}.city-mobilization>span b{font-size:12px}.city-mobilization .generated-votes-cell{font-size:10px;padding:4px 7px;border-radius:5px}.generated-votes-cell{background:#fff3ed;color:#b94322!important;font-weight:800}.section-search-bar{display:grid;grid-template-columns:minmax(160px,1fr) minmax(145px,.8fr) minmax(220px,1.5fr) auto;align-items:end}.polling-place-panel{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.8fr);align-items:center;gap:18px;margin-bottom:13px;padding:14px 16px}.polling-place-heading strong{font:700 11px Manrope,sans-serif}.polling-place-heading p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.school-filter-field{min-width:0}.school-filter-control{align-items:center}.school-filter-control .button{padding:9px 12px}.school-filter-field>small{display:block;color:var(--muted);font-size:9px;margin-top:6px}.section-search-bar .search-field{min-width:0}.zone-row{grid-template-columns:minmax(115px,132px) minmax(40px,1fr) minmax(76px,92px)}.zone-value{display:grid;gap:2px}.zone-value b{font-size:10px;color:var(--orange)}.zone-value small{font-size:8px;color:#8d8f94;font-weight:500}.report-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.candidate-compare-numbers{grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr)}.candidate-own-count{display:grid;gap:3px}.candidate-own-count b{font:800 21px Manrope,sans-serif}
@media(max-width:980px){.section-search-bar{grid-template-columns:1fr 1fr}.section-search-bar .search-field,.section-search-bar .button{grid-column:1/3}.polling-place-panel{grid-template-columns:1fr;gap:10px}.users-layout{grid-template-columns:1fr}}
@media(max-width:600px){#view-users{padding:0}.users-form-panel,.users-table-panel{padding:14px}.users-layout{gap:12px}.users-form-actions{flex-wrap:wrap}.users-form-actions .button{flex:1}.section-search-bar{grid-template-columns:1fr 1fr}.section-search-bar .search-field,.section-search-bar .button{grid-column:1/3}.school-filter-control{flex-wrap:nowrap}.school-filter-control .button{white-space:normal;line-height:1.2;padding:8px}.zone-row{grid-template-columns:95px minmax(24px,1fr) 72px;gap:7px}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate-compare-numbers{grid-template-columns:1fr}.city-stat-head>span{font-size:9px}}

/* Visão geral: números absolutos em vez de barras proporcionais */
.city-bars{display:none!important}
.city-stat-head>span{font-size:9px!important;font-weight:500!important;color:#929399!important}
.city-mobilization>span{font-size:10px;color:#73757a}
.city-mobilization>span b{font-size:15px}
.zone-row{grid-template-columns:minmax(0,1fr) minmax(126px,auto)!important;padding:8px 5px!important;border-bottom:1px solid #f0f0ed}
.zone-value{display:grid;gap:3px;text-align:right}
.zone-value b{font-size:11px;color:var(--orange)}
.zone-value small{font-size:8px;color:#8d8f94;font-weight:500}
@media(max-width:600px){.zone-row{grid-template-columns:minmax(84px,1fr) minmax(115px,auto)!important;gap:7px}.zone-value b{font-size:10px}}

/* Listas expansíveis, foco no registro escolhido e relatórios organizados */
.candidate-comparison-cards.single-candidate{grid-template-columns:minmax(0,1fr)}
.candidate-comparison-cards.single-candidate .candidate-compare-card{max-width:none}
.list-more-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:5px;padding:10px 11px;border:1px solid #eee8e3;border-radius:8px;background:#fffaf7;color:#77797f;text-align:left;font-size:9px}
.list-more-button strong{color:#c94e29;font-size:9px}
.top-manual-row{cursor:pointer;transition:background .15s,padding .15s}
.top-manual-row:hover{padding-left:7px;padding-right:7px;background:#fff9f5}
.manual-target-highlight{background:#fff1e9!important;outline:2px solid #ffb498;outline-offset:-2px;transition:background .3s}
.report-controls-panel{margin-bottom:13px;padding:15px 17px}
.report-controls-panel .report-filters{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.report-controls-panel .report-filter-note{margin:11px 1px 0;line-height:1.45}
@media(max-width:600px){.report-controls-panel{padding:12px}.report-controls-panel .report-filters{grid-template-columns:1fr}.report-controls-panel .report-filter-note{margin-top:9px}}
@media print{.report-controls-panel{display:none!important}#report-print-area[data-report-type="bundle"]>.report-section{break-inside:auto}#report-print-area[data-report-type="bundle"]>.report-section:not([data-report="executive"]){break-before:page}#report-print-area[data-report-type="bundle"]>.report-section .table-scroll{overflow:visible!important}}
#view-sections .table-scroll{max-height:none;overflow-x:auto;overflow-y:visible}
#view-sections .table-scroll table{min-width:930px}

/* Campo de local de votação no mesmo padrão das buscas */
.school-filter-control input{width:100%;min-width:0;min-height:38px;padding:10px 12px;border:1px solid #e5e5e2;border-radius:7px;background:#fff;color:var(--ink);font-size:11px;outline:none}
.school-filter-control input::placeholder{color:#9b9ca0}
.school-filter-control input:focus{border-color:#f7a78e;box-shadow:0 0 0 3px #ff5b2e14}
.school-filter-control .button{min-height:38px}

/* Controles do agrupamento de locais de votação */
.section-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.group-places-toggle{display:inline-flex;align-items:center;gap:7px;color:#64666c;font-size:10px;font-weight:600;white-space:nowrap;cursor:pointer}
.group-places-toggle input{width:15px;height:15px;margin:0;accent-color:var(--orange)}
@media(max-width:700px){.section-table-actions{justify-content:flex-start}.section-table-actions .table-badge{display:none}}
/* Impressão: Ctrl+P e o botão imprimem a tela ativa inteira, inclusive tabelas longas. */
@media print {
  @page { size: landscape; margin: 10mm; }
  html, body { height: auto !important; min-height: 0 !important; overflow: visible !important; background: #fff !important; color: #111 !important; }
  body:not(.presentation-active):not(.print-report-only) .sidebar,
  body:not(.presentation-active):not(.print-report-only) .topbar,
  body:not(.presentation-active):not(.print-report-only) .page-footer,
  body:not(.presentation-active):not(.print-report-only) .page-heading-actions,
  body:not(.presentation-active):not(.print-report-only) .notice,
  body:not(.presentation-active):not(.print-report-only) .loading-line,
  body:not(.presentation-active):not(.print-report-only) .nav-item,
  body:not(.presentation-active):not(.print-report-only) .report-controls-panel,
  body:not(.presentation-active):not(.print-report-only) .section-search-bar,
  body:not(.presentation-active):not(.print-report-only) .polling-place-panel,
  body:not(.presentation-active):not(.print-report-only) .ranking-controls,
  body:not(.presentation-active):not(.print-report-only) .city-comparison-controls,
  body:not(.presentation-active):not(.print-report-only) .map-controls,
  body:not(.presentation-active):not(.print-report-only) .group-places-toggle,
  body:not(.presentation-active):not(.print-report-only) #show-all-sections,
  body:not(.presentation-active):not(.print-report-only) .quick-modal,
  body:not(.presentation-active):not(.print-report-only) #busy-overlay { display: none !important; }
  body:not(.presentation-active):not(.print-report-only) button,
  body:not(.presentation-active):not(.print-report-only) .link-button,
  body:not(.presentation-active):not(.print-report-only) .text-button,
  body:not(.presentation-active):not(.print-report-only) a.button { display: none !important; }
  body:not(.presentation-active):not(.print-report-only) .app-shell,
  body:not(.presentation-active):not(.print-report-only) .main-content,
  body:not(.presentation-active):not(.print-report-only) .page-wrap { display: block !important; position: static !important; width: auto !important; max-width: none !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; box-shadow: none !important; }
  body:not(.presentation-active):not(.print-report-only) .page-heading { display: flex !important; margin: 0 0 5mm !important; padding: 0 0 4mm !important; border-bottom: 1px solid #bbb; }
  body:not(.presentation-active):not(.print-report-only) .view-panel { display: none !important; position: static !important; height: auto !important; min-height: 0 !important; overflow: visible !important; }
  body:not(.presentation-active):not(.print-report-only) .view-panel.active { display: block !important; }
  body:not(.presentation-active):not(.print-report-only) #view-ranking.active > .section-head { display: flex !important; }
  body:not(.presentation-active):not(.print-report-only) #view-ranking.active > .ranking-summary { display: grid !important; }
  body:not(.presentation-active):not(.print-report-only) #view-ranking.active > .ranking-panel,
  body:not(.presentation-active):not(.print-report-only) #view-ranking.active > #reports-content { display: block !important; }
  body:not(.presentation-active):not(.print-report-only) .section-head { display: flex !important; }
  body:not(.presentation-active):not(.print-report-only) .table-panel,
  body:not(.presentation-active):not(.print-report-only) .panel { overflow: visible !important; box-shadow: none !important; }
  body:not(.presentation-active):not(.print-report-only) .table-scroll,
  body:not(.presentation-active):not(.print-report-only) .manual-table-scroll { display: block !important; width: auto !important; height: auto !important; max-height: none !important; min-height: 0 !important; overflow: visible !important; overscroll-behavior: visible !important; }
  body:not(.presentation-active):not(.print-report-only) .city-comparison { max-height: none !important; overflow: visible !important; overscroll-behavior: visible !important; }
  body:not(.presentation-active):not(.print-report-only) .table-scroll table { width: 100% !important; min-width: 0 !important; white-space: normal !important; }
  body:not(.presentation-active):not(.print-report-only) table { break-inside: auto; }
  body:not(.presentation-active):not(.print-report-only) thead { position: static !important; display: table-header-group !important; }
  body:not(.presentation-active):not(.print-report-only) tfoot { display: table-footer-group !important; }
  body:not(.presentation-active):not(.print-report-only) tr { break-inside: avoid !important; page-break-inside: avoid !important; }
  body:not(.presentation-active):not(.print-report-only) th,
  body:not(.presentation-active):not(.print-report-only) td { max-width: none !important; overflow: visible !important; white-space: normal !important; text-overflow: clip !important; }
  body:not(.presentation-active):not(.print-report-only) .poll-place,
  body:not(.presentation-active):not(.print-report-only) .note-cell { max-width: none !important; overflow: visible !important; white-space: normal !important; text-overflow: clip !important; }
  body:not(.presentation-active):not(.print-report-only) td:last-child:has(button),
  body:not(.presentation-active):not(.print-report-only) th:empty { display: none !important; }
  body:not(.presentation-active):not(.print-report-only) .panel,
  body:not(.presentation-active):not(.print-report-only) .metric-card,
  body:not(.presentation-active):not(.print-report-only) th,
  body:not(.presentation-active):not(.print-report-only) td { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  body.print-report-only .sidebar,
  body.print-report-only .topbar,
  body.print-report-only .page-heading,
  body.print-report-only .page-footer,
  body.print-report-only .notice,
  body.print-report-only .loading-line,
  body.print-report-only .report-controls-panel,
  body.print-report-only #view-overview,
  body.print-report-only #view-sections,
  body.print-report-only #view-documents,
  body.print-report-only #view-candidates,
  body.print-report-only #view-source,
  body.print-report-only #view-review { display: none !important; }
  body.print-report-only .app-shell,
  body.print-report-only .main-content,
  body.print-report-only .page-wrap { display: block !important; position: static !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; box-shadow: none !important; }
  body.print-report-only .view-panel { display: none !important; }
  body.print-report-only #view-ranking.active { display: block !important; }
  body.print-report-only #view-ranking.active > :not(#reports-content) { display: none !important; }
  body.print-report-only #reports-content { display: block !important; }
  body.print-report-only #reports-content > .section-head { display: none !important; }
  body.print-report-only #report-print-area { display: grid !important; gap: 7mm; }
  body.print-report-only #report-print-area .table-scroll { max-height: none !important; overflow: visible !important; }
  body.print-report-only #report-print-area .table-scroll table { min-width: 0 !important; width: 100% !important; }
  body.print-report-only #report-print-area .report-title { padding: 0 0 4mm; border: 0; border-bottom: 2px solid #333; border-radius: 0; background: #fff; }
  body.print-report-only #report-print-area .report-title h2 { font-size: 18pt; color: #111; }
  body.print-report-only #report-print-area .report-title p:last-child,
  body.print-report-only #report-print-area .report-kpis span { color: #333; }
  body.print-report-only #report-print-area .report-kpis { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3mm; }
  body.print-report-only #report-print-area .report-kpis article { padding: 3mm; border: 1px solid #aaa; box-shadow: none; }
  body.print-report-only #report-print-area .report-kpis strong { font-size: 15pt; color: #111; }
  body.print-report-only #report-print-area .report-section { break-inside: auto; }
  body.print-report-only #report-print-area .report-manual-panel { break-before: page; }
  body.print-report-only #report-print-area tr { break-inside: avoid !important; page-break-inside: avoid !important; }
}
