:root{color-scheme:dark;--bg:#07111f;--surface:rgba(17,30,48,.72);--surface-strong:rgba(20,35,55,.87);--border:rgba(178,210,243,.13);--text:#eff7ff;--muted:#8ea6bd;--cyan:#66d8eb;--blue:#4f89ff;--orange:#ff915e;--green:#72deae;--shadow:0 24px 65px rgba(0,5,16,.25)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;overflow-x:hidden}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
[hidden]{display:none!important}
a{color:inherit}
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 75% -10%,rgba(38,84,135,.35),transparent 42%),radial-gradient(ellipse at -15% 65%,rgba(6,84,106,.29),transparent 45%),linear-gradient(145deg,#07111f,#0a1626 48%,#06111d)}
.ambient:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(162,214,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(162,214,255,.026) 1px,transparent 1px);background-size:50px 50px;mask-image:linear-gradient(to bottom,#000,transparent 84%)}
.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55;animation:float 17s ease-in-out infinite alternate}
.orb-one{width:460px;height:460px;top:-210px;right:12%;background:radial-gradient(circle,rgba(37,124,213,.28),transparent 69%)}
.orb-two{width:490px;height:490px;top:40%;left:-260px;background:radial-gradient(circle,rgba(13,173,182,.16),transparent 70%);animation-delay:-9s}
.orb-three{width:360px;height:360px;bottom:-180px;right:-120px;background:radial-gradient(circle,rgba(255,117,79,.1),transparent 71%);animation-delay:-5s}
@keyframes float{to{transform:translate3d(40px,-36px,0) scale(1.13)}}
.app-shell{max-width:1520px;margin:0 auto;padding:20px max(22px,env(safe-area-inset-right)) 22px max(22px,env(safe-area-inset-left))}
.glass{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.app-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:18px;padding:13px 20px 13px 24px;position:relative;overflow:hidden}
.app-header:before{content:"";position:absolute;top:0;left:13%;width:45%;height:1px;background:linear-gradient(90deg,transparent,rgba(125,208,249,.6),transparent)}
.header-brand,.header-actions{display:flex;align-items:center;min-width:0}
.header-brand{gap:20px}.header-brand img{width:144px;max-height:42px;object-fit:contain}.header-divider{height:28px;width:1px;background:var(--border)}.header-period{font-size:11px;letter-spacing:.14em;font-weight:650;color:#9fb9d4;white-space:nowrap}.header-period b{color:#f5fbff}
.header-actions{gap:10px}.clock{font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:#a9bfd4;font-weight:700;margin-right:8px}.connection{display:flex;align-items:center;gap:8px;border:1px solid rgba(103,213,175,.22);background:rgba(33,111,85,.14);color:#9deac2;border-radius:50px;min-width:133px;justify-content:center;padding:8px 10px;font-size:11px;font-weight:700;white-space:nowrap}.connection-dot,.control-caption-dot,.source-line-dot{height:7px;width:7px;display:inline-block;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(113,222,174,.1),0 0 12px rgba(113,222,174,.6)}.connection.is-waiting{color:#dfc08d;border-color:rgba(225,170,92,.25);background:rgba(117,78,30,.15)}.connection.is-waiting .connection-dot{background:#ffbf78;box-shadow:0 0 0 4px rgba(255,191,120,.09)}.connection.is-error{color:#ffaba5;border-color:rgba(251,105,113,.3);background:rgba(121,42,51,.17)}.connection.is-error .connection-dot{background:#ff8089;box-shadow:none}.connection.is-live .connection-dot{animation:live-pulse 2.1s ease-in-out infinite}
@keyframes live-pulse{50%{box-shadow:0 0 0 7px rgba(113,222,174,.03),0 0 16px rgba(113,222,174,.65)}}
.icon-action{height:38px;min-width:38px;padding:0 10px;border-radius:11px;border:1px solid var(--border);color:#c9dced;background:rgba(255,255,255,.045);display:flex;align-items:center;justify-content:center;gap:6px;font-size:22px;transition:transform .25s,border-color .25s,background .25s}.icon-action:hover{transform:translateY(-2px);border-color:rgba(113,204,255,.38);background:rgba(81,145,198,.16)}.icon-action[aria-pressed="true"]{color:var(--cyan);border-color:rgba(102,216,235,.43)}.sound-icon{font-size:18px}.sound-label{font-size:11px;white-space:nowrap;font-weight:700}.refresh-action{background:rgba(69,132,211,.18);color:#cde7ff}.refresh-action.loading span{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.intro{display:flex;justify-content:space-between;align-items:center;min-height:215px;padding:34px 8px 26px;position:relative;overflow:hidden}.intro-copy{position:relative;z-index:1}.eyebrow,.section-kicker,.control-caption{font-size:10px;font-weight:800;letter-spacing:.17em;color:#7aa5c8}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow-line{width:23px;height:2px;background:var(--orange);box-shadow:0 0 12px rgba(255,145,94,.5)}.eyebrow-year{color:#e8a785}.intro h1{font-size:clamp(36px,5vw,64px);line-height:1.04;letter-spacing:-.05em;margin:15px 0 10px;font-weight:780}.intro h1 em{font-style:normal;background:linear-gradient(110deg,#9ae9f1,#64aaff);background-clip:text;color:transparent}.intro p{color:#9ab0c5;font-size:14px;line-height:1.55;max-width:550px;margin:0}.intro-mark{height:150px;width:225px;flex:none;position:relative;margin-right:35px;opacity:.82}.mark-grid{position:absolute;inset:0;border:1px solid rgba(111,178,230,.18);border-radius:26px;transform:rotate(-11deg);background:linear-gradient(140deg,rgba(119,190,241,.09),transparent 65%)}.mark-text{position:absolute;right:15px;top:-23px;font-size:140px;font-weight:850;line-height:1;letter-spacing:-.13em;color:transparent;-webkit-text-stroke:1px rgba(147,201,244,.24);text-shadow:0 0 35px rgba(62,130,192,.19)}.mark-caption{position:absolute;left:30px;bottom:20px;font-size:9px;letter-spacing:.18em;line-height:1.7;color:#91afcb;font-weight:800}
.notice,.demo-banner{border-radius:13px;margin:0 0 15px;padding:13px 17px;font-size:12px}.notice{background:rgba(29,104,130,.22);border:1px solid rgba(104,213,235,.3);color:#b0f1f7}.notice.winner-notice{background:rgba(26,111,71,.25);border-color:rgba(114,222,174,.45);color:#b9f5d6}.demo-banner{display:flex;align-items:center;gap:12px;background:rgba(255,177,91,.12);color:#f3ce9e;border:1px solid rgba(255,177,91,.3)}.demo-symbol{color:#ffbc69;font-size:22px}
.controls{padding:18px 20px 18px;border-radius:20px;animation:rise .65s .05s both}.controls-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.control-caption{display:flex;align-items:center;gap:10px;color:#8faecb}.control-caption-dot{width:5px;height:5px;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.source-line{display:flex;align-items:center;gap:9px;color:#7d9cb8;font-size:11px}.source-line-dot{height:5px;width:5px;background:#8ea5bb;box-shadow:none}
.office-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.office-tabs button{min-height:48px;border:1px solid rgba(144,181,218,.11);border-radius:12px;color:#9eb4c9;background:rgba(255,255,255,.035);display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:700;white-space:nowrap;transition:all .27s}.office-tabs button:hover{border-color:rgba(122,190,231,.35);background:rgba(80,129,185,.12);color:#e8f4ff}.office-tabs button[aria-pressed="true"]{background:linear-gradient(130deg,rgba(67,139,220,.35),rgba(39,151,186,.18));border-color:rgba(100,191,237,.54);color:#f1fbff;box-shadow:inset 0 1px rgba(255,255,255,.13),0 0 22px rgba(36,130,204,.12)}.tab-icon{font-size:18px;color:#72bfd9;line-height:1}.office-tabs button[aria-pressed="true"] .tab-icon{color:#9ee9f1}
.scope-controls{display:flex;align-items:end;gap:12px;margin-top:15px}.scope-buttons{display:flex;gap:5px;padding:4px;border-radius:12px;border:1px solid var(--border);background:rgba(5,16,29,.4);min-height:42px}.scope-buttons button{border:0;background:none;border-radius:8px;padding:0 14px;color:#859eb5;font-size:12px;font-weight:700;white-space:nowrap}.scope-buttons button[aria-pressed="true"]{background:#173653;color:#d7f5ff;box-shadow:0 2px 8px rgba(0,0,0,.15)}.scope-buttons.single button:not([aria-pressed="true"]){display:none}.select-field{min-width:170px;flex:1;max-width:340px;display:flex;flex-direction:column;gap:6px}.select-field span{font-size:9px;letter-spacing:.15em;font-weight:800;color:#7899b5}.select-field select{width:100%;height:42px;border-radius:11px;background:#10263c;color:#e9f6ff;border:1px solid rgba(156,198,232,.2);padding:0 12px}.select-field select:disabled{color:#6e879d;background:#0d1d2e}.turn-field{max-width:175px}
.turn-field{display:flex;flex-direction:column;gap:6px;flex:0 0 142px}.turn-caption{font-size:9px;letter-spacing:.15em;font-weight:800;color:#7899b5}.quick-turn{display:flex;gap:3px;height:42px;padding:3px;border-radius:11px;border:1px solid rgba(156,198,232,.2);background:#10263c}.quick-turn button{flex:1;border:0;border-radius:8px;background:transparent;color:#91acc2;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.quick-turn button[aria-pressed="true"]{background:#2077a8;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22)}.quick-turn button:disabled{opacity:.35;cursor:not-allowed}.connection.is-counted{color:#f1c38d}.status-chip.is-counted{border-color:rgba(255,193,123,.27);background:rgba(169,114,47,.12);color:#f1c38d}
@media(max-width:600px){.connection.is-counted #connection-label:after{content:"100%"}}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.85fr);gap:14px;margin-top:16px}.feature,.progress-card,.totals-card,.ranking-card,.trend-card,.seats-card{border-radius:20px}.feature{padding:22px 23px 16px;display:flex;flex-direction:column;min-height:392px;position:relative;overflow:hidden;animation:rise .65s .12s both}.feature:after{content:"";position:absolute;right:-80px;top:-100px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(70,150,231,.1),transparent 71%);pointer-events:none}.section-heading,.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.section-heading h2,.panel-heading h2{margin:6px 0 0;font-size:22px;line-height:1.13;letter-spacing:-.025em}.status-chip{display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid rgba(255,193,123,.27);border-radius:20px;background:rgba(169,114,47,.12);color:#f1c38d;font-size:10px;font-weight:750;padding:7px 10px}.status-chip i{height:6px;width:6px;background:currentColor;border-radius:50%}.status-chip.is-live{border-color:rgba(113,222,174,.28);background:rgba(43,124,85,.13);color:#99e8be}.status-chip.is-final{border-color:rgba(110,184,255,.3);background:rgba(44,113,181,.15);color:#acd4ff}
.feature-content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px;position:relative;z-index:1}.featured-candidate{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 16px;border-radius:16px;background:linear-gradient(110deg,rgba(51,112,172,.2),rgba(255,255,255,.025));border:1px solid rgba(131,183,230,.16);position:relative;overflow:hidden}.featured-candidate.first{background:linear-gradient(110deg,rgba(42,132,189,.3),rgba(41,97,166,.1) 70%,rgba(255,255,255,.025));border-color:rgba(107,201,234,.38);box-shadow:0 0 35px rgba(20,113,190,.1)}.featured-candidate:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#6fcadd}.featured-candidate.second:before{background:#fb9f72}.featured-rank{font-size:20px;font-weight:800;color:#79cce8;text-align:center}.featured-candidate.second .featured-rank{color:#f1af86}.featured-main{min-width:0}.featured-identity{display:flex;align-items:center;gap:9px;min-width:0}.featured-identity img,.featured-identity .party-fallback{width:27px;height:27px;object-fit:contain;border-radius:5px;flex:none}.featured-identity h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;margin:0;letter-spacing:-.02em}.featured-party{font-size:10px;color:#90acc4;margin:6px 0 7px 36px}.featured-bar{height:4px;background:rgba(156,188,213,.13);border-radius:9px;margin-left:36px;overflow:hidden}.featured-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,#2d8cc8,#81d7e7);border-radius:9px;transition:width 1s ease}.featured-candidate.second .featured-bar span{background:linear-gradient(90deg,#ef805a,#ffc090)}.featured-numbers{text-align:right;padding-left:12px}.featured-numbers strong{display:block;font-size:22px;letter-spacing:-.04em;white-space:nowrap}.featured-numbers small{display:block;font-size:12px;font-weight:700;color:#82dcea;margin-top:4px}.featured-candidate.second .featured-numbers small{color:#f5ac85}
.feature-wait{text-align:left;padding:28px 18px;max-width:600px}.feature-wait-icon{display:grid;place-items:center;width:65px;height:65px;border-radius:18px;background:linear-gradient(135deg,rgba(45,159,203,.3),rgba(61,112,190,.1));border:1px solid rgba(117,198,233,.25);color:#9ce4ef;font-size:34px;margin-bottom:19px;box-shadow:0 0 26px rgba(35,145,192,.13)}.feature-wait h3{font-size:23px;letter-spacing:-.03em;margin:0 0 9px}.feature-wait p{color:#95abc0;line-height:1.55;font-size:13px;margin:0}.feature-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid rgba(171,204,232,.12);padding-top:13px;margin-top:12px;font-size:10px;color:#87a3bc;position:relative;z-index:1}.feature-foot span:last-child{text-align:right}
.overview-aside{display:grid;grid-template-rows:auto 1fr;gap:14px;min-width:0}.progress-card,.totals-card{padding:20px 22px;animation:rise .65s .18s both}.progress-wrap{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:13px}.progress-ring{--progress:0%;width:138px;height:138px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(#79d9ec 0 var(--progress),rgba(146,188,219,.11) var(--progress) 100%);box-shadow:0 0 28px rgba(48,168,220,.13);transition:background 1s}.progress-ring-inner{height:115px;width:115px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0e2237;border:1px solid rgba(128,197,232,.13)}.progress-ring-inner strong{font-size:29px;letter-spacing:-.06em}.progress-ring-inner span{font-size:11px;color:#8aa7bd;margin-top:1px}.progress-detail{display:flex;flex-direction:column;gap:5px;min-width:0}.progress-detail span{font-size:10px;color:#79a4c2;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.progress-detail strong{font-size:18px;white-space:nowrap}.progress-detail small{font-size:11px;color:#7f9ab3;line-height:1.35}.totals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.total-item{min-width:0;border:1px solid rgba(166,200,230,.09);background:rgba(4,18,34,.27);border-radius:12px;padding:11px 12px}.total-item span{font-size:10px;color:#86a4be;white-space:nowrap}.total-item strong{display:block;margin-top:5px;font-size:18px;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.total-item.accent strong{color:#8bdfee}
.below-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px;margin-top:14px;align-items:start}.ranking-card,.trend-card{padding:21px 22px;min-height:400px;animation:rise .65s .25s both}.panel-heading h2{font-size:20px}.ranking-count,.trend-count{border-radius:30px;padding:7px 10px;background:rgba(105,157,207,.12);border:1px solid rgba(119,176,224,.13);font-size:10px;color:#9fc3df;font-weight:750;white-space:nowrap}.ranking-tools{display:flex;gap:8px;margin:17px 0 8px}.search-field{display:flex;align-items:center;gap:8px;flex:1;min-width:0;border:1px solid rgba(164,196,226,.18);border-radius:10px;background:rgba(3,17,30,.35);color:#789bbb;padding:0 10px}.search-field>span{font-size:23px;line-height:1}.search-field input{width:100%;min-width:0;height:39px;outline:none;color:#e2efff;background:none;border:0;font-size:12px}.search-field input::placeholder{color:#6688a6}.favorite-toggle{min-width:105px;border-radius:10px;border:1px solid rgba(171,204,233,.17);background:rgba(255,255,255,.04);color:#a6bacb;font-size:12px;font-weight:750}.favorite-toggle[aria-pressed="true"]{color:#ffd488;border-color:rgba(251,191,94,.36);background:rgba(180,113,41,.13)}
.ranking-list{min-height:180px}.candidate-row{display:grid;grid-template-columns:32px 32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 3px;border-bottom:1px solid rgba(173,204,231,.095);animation:row-in .45s both}.candidate-row:last-child{border-bottom:0}@keyframes row-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.candidate-place{font-size:12px;font-weight:800;color:#87a5bf;text-align:center}.candidate-row:nth-child(1) .candidate-place{color:#8fdbeb}.candidate-row:nth-child(2) .candidate-place{color:#f8b58e}.candidate-logo,.party-fallback{height:30px;width:30px;object-fit:contain;border-radius:6px;background:rgba(255,255,255,.08)}.party-fallback{display:grid;place-items:center;color:#bad9ed;font-size:10px;font-weight:800}.candidate-info{min-width:0}.candidate-info strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-info small{display:block;color:#7998b3;font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-votes{text-align:right;min-width:90px}.candidate-votes strong{display:block;font-size:14px;letter-spacing:-.015em;font-variant-numeric:tabular-nums}.candidate-votes small{display:block;font-size:10px;color:#84cade;margin-top:3px}.favorite-star{grid-column:1;grid-row:1;padding:0;background:none;border:0;color:#7188a0;font-size:22px;line-height:1}.favorite-star.is-favorite{color:#ffc46a}.candidate-row{grid-template-columns:26px 28px 30px minmax(0,1fr) auto}.candidate-row .candidate-place{grid-column:2}.candidate-row .candidate-logo,.candidate-row .party-fallback{grid-column:3}.candidate-row .candidate-info{grid-column:4}.candidate-row .candidate-votes{grid-column:5}.ranking-empty{padding:42px 12px;text-align:center;color:#83a1ba}.ranking-empty h3{color:#d4e8f8;font-size:15px;margin-bottom:7px}.ranking-empty p{font-size:12px;line-height:1.5;max-width:360px;margin:0 auto}.show-more{width:100%;border:1px solid rgba(132,186,221,.16);background:rgba(79,139,198,.08);color:#9fd4ec;border-radius:10px;margin-top:14px;padding:11px;font-weight:750;font-size:12px}.show-more:hover{background:rgba(79,139,198,.18)}
.trend-card{overflow:hidden}.trend-content{min-height:266px}.trend-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;text-align:center;padding:20px}.trend-empty-icon{width:64px;height:64px;border-radius:18px;border:1px solid rgba(119,188,230,.19);background:rgba(45,107,169,.12);color:#7fd5eb;display:grid;place-items:center;font-size:33px;margin-bottom:15px}.trend-empty h3{font-size:15px;margin:0 0 6px}.trend-empty p{color:#7f9eb9;font-size:12px;line-height:1.5;max-width:260px;margin:0}.trend-svg{display:block;width:100%;height:auto;margin-top:29px;overflow:visible}.trend-svg .grid-line{stroke:rgba(163,198,229,.12);stroke-width:1}.trend-svg .axis-text{fill:#7392ab;font-size:11px;font-family:Inter,"Segoe UI",Arial,sans-serif}.trend-legend{display:flex;flex-wrap:wrap;gap:12px 17px;margin:11px 0 0}.trend-legend-item{display:flex;align-items:center;gap:7px;font-size:10px;color:#a4bad0;max-width:45%}.trend-legend-item i{width:7px;height:7px;border-radius:50%;flex:none}.trend-legend-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trend-foot{font-size:10px;color:#7392aa;margin:18px 0 0;line-height:1.45}
.seats-card{margin-top:14px;padding:20px 22px}.seats-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:17px}.seat-item{display:flex;align-items:center;gap:10px;border:1px solid rgba(168,200,226,.1);background:rgba(5,20,34,.24);padding:10px 12px;border-radius:11px}.seat-item img,.seat-item .party-fallback{height:27px;width:27px;object-fit:contain}.seat-item-name{min-width:0;flex:1;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-item strong{font-size:14px;color:#8fdded}.seats-card p{color:#7593ac;font-size:10px;margin:17px 0 0}.seats-empty{color:#859fb6;font-size:12px;margin:17px 0}
.app-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#617f99;font-size:10px;padding:24px 3px 4px}.app-footer a{text-decoration:none;color:#8ccde5;white-space:nowrap}.app-footer a:hover{text-decoration:underline}
.just-updated .feature,.just-updated .progress-card{animation:updated-glow 1.2s ease}@keyframes updated-glow{40%{border-color:rgba(119,226,231,.63);box-shadow:0 0 34px rgba(84,190,224,.22)}}@keyframes rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1120px){.header-brand img{width:126px}.header-period{font-size:10px}.sound-label{display:none}.overview-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr)}.featured-numbers strong{font-size:18px}.progress-wrap{gap:12px}.progress-ring{height:119px;width:119px}.progress-ring-inner{height:98px;width:98px}.progress-ring-inner strong{font-size:25px}.app-footer span:last-child{display:none}}
@media(max-width:840px){.app-shell{padding:12px 14px 24px}.app-header{min-height:68px;padding:11px 14px}.header-brand{gap:12px}.header-brand img{width:116px}.clock{display:none}.intro{min-height:175px;padding:25px 4px 20px}.intro-mark{margin-right:0;transform:scale(.75);transform-origin:right center}.overview-grid,.below-grid{grid-template-columns:1fr}.overview-aside{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.feature{min-height:355px}.progress-wrap{margin-top:22px}.trend-card,.ranking-card{min-height:0}.office-tabs{gap:6px}.office-tabs button{font-size:11px}}
@media(max-width:600px){.app-shell{padding:8px 10px 22px}.app-header{border-radius:14px}.header-brand img{width:112px}.header-divider,.header-period{display:none}.header-actions{gap:6px}.connection{min-width:0;padding:7px 9px}.connection #connection-label{font-size:0}.connection #connection-label:after{content:"AO VIVO";font-size:9px}.connection.is-waiting #connection-label:after{content:"AGUARDA"}.connection.is-error #connection-label:after{content:"ERRO"}.icon-action{min-width:34px;height:34px;padding:0 7px;font-size:19px}.intro{min-height:162px;padding:25px 5px 17px}.intro h1{font-size:40px;margin:11px 0 9px}.intro p{font-size:12px;max-width:370px}.intro-mark{display:none}.eyebrow{font-size:9px}.controls{border-radius:16px;padding:15px 12px}.controls-top{margin-bottom:10px}.source-line{display:none}.office-tabs{display:flex;overflow-x:auto;scrollbar-width:none;padding-bottom:3px}.office-tabs::-webkit-scrollbar{display:none}.office-tabs button{flex:0 0 auto;min-height:43px;padding:0 12px}.scope-controls{flex-wrap:wrap;margin-top:11px;gap:10px}.scope-buttons{width:100%}.scope-buttons button{flex:1}.select-field{flex:1;min-width:160px;max-width:none}.turn-field{min-width:112px;flex:0 0 120px}.overview-grid{gap:10px;margin-top:10px}.feature,.progress-card,.totals-card,.ranking-card,.trend-card,.seats-card{border-radius:16px}.feature{padding:18px 15px 13px;min-height:360px}.section-heading h2{font-size:19px}.status-chip{font-size:9px}.featured-candidate{grid-template-columns:29px minmax(0,1fr);gap:7px;padding:11px}.featured-rank{font-size:17px}.featured-identity h3{font-size:14px}.featured-identity img,.featured-identity .party-fallback{height:22px;width:22px}.featured-party,.featured-bar{margin-left:31px}.featured-numbers{grid-column:2;text-align:left;padding-left:31px;display:flex;align-items:baseline;gap:10px}.featured-numbers strong{font-size:19px}.featured-numbers small{margin:0}.overview-aside{gap:10px}.progress-card,.totals-card{padding:15px 13px}.progress-wrap{flex-direction:column;gap:10px;margin-top:12px}.progress-ring{height:112px;width:112px}.progress-ring-inner{height:92px;width:92px}.progress-detail{text-align:center}.progress-detail strong{font-size:14px}.progress-detail small{font-size:9px}.totals-grid{gap:6px}.total-item{padding:9px 7px}.total-item span{font-size:9px}.total-item strong{font-size:13px}.below-grid{gap:10px;margin-top:10px}.ranking-card,.trend-card,.seats-card{padding:18px 14px}.panel-heading h2{font-size:18px}.candidate-row{gap:6px}.candidate-info strong{font-size:12px}.candidate-votes{min-width:74px}.candidate-votes strong{font-size:12px}.app-footer{flex-direction:column;align-items:flex-start;gap:7px;font-size:9px}.seats-list{grid-template-columns:1fr}}
@media(max-width:390px){.connection{display:none}.header-brand img{width:105px}.feature-foot{flex-direction:column;align-items:flex-start}.feature-foot span:last-child{text-align:left}.progress-card,.totals-card{padding:14px 10px}.totals-grid{grid-template-columns:1fr}.total-item{padding:8px 9px}.total-item strong{margin-top:2px}}
.winner-banner{border:1px solid rgba(113,222,174,.38);border-radius:12px;background:rgba(39,135,91,.16);color:#b9f4d4;font-size:12px;font-weight:750;padding:11px 13px;line-height:1.4}
.overview-aside{display:flex;min-height:0}
.summary-combined{flex:1;min-height:0;padding:20px 22px;border-radius:20px;display:flex;flex-direction:column;justify-content:space-evenly;gap:12px;animation:rise .65s .18s both}
.summary-progress,.summary-votes{min-height:0}
.summary-votes{border-top:1px solid rgba(171,204,232,.12);padding-top:12px}
.featured-candidate:before,.featured-candidate.second:before{background:var(--party-color,#6fcadd)}
.featured-bar span,.featured-candidate.second .featured-bar span{background:var(--party-color,#6fcadd)}
.featured-party{line-height:1.3}
.feature-candidate-outcome{font-weight:750;color:#c9e6f3}
.just-updated .summary-combined{animation:updated-glow 1.2s ease}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
