/* PolityIQ / glass edition. Party colours remain owned by the election data. */
body[data-piq-design]{--studio-ink:#173b43;--studio-muted:#567079;--studio-border:rgba(145,175,184,.32);--studio-panel:rgba(255,255,255,.58);--studio-shadow:0 12px 35px #2544590a,inset 0 1px #ffffffb8;background:radial-gradient(ellipse at 2% 3%,#ffd9c17a,transparent 33%),radial-gradient(ellipse at 100% 8%,#aee4df88,transparent 36%),radial-gradient(ellipse at 50% 65%,#d7dbf64d,transparent 45%),#f1f5f4;background-attachment:fixed}
body[data-piq-design] :is(.panel,.race-card,.municipality,.coverage-stats>div,.about-grid>div,.poll-average,.poll-context,.ft-highlight,.poll-archive,.pa-notes,.fp-panel,.outlook-card,.us-card,.br-card){background:var(--studio-panel);border:1px solid var(--studio-border);border-radius:16px;box-shadow:var(--studio-shadow);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}
body[data-piq-design] :is(.masthead,.in-header,.top){background:rgba(248,252,251,.7);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%)}
body[data-piq-design] .masthead .edition{padding-top:9px;padding-bottom:8px;font-size:9px}body[data-piq-design] .mast-row{padding-top:12px;padding-bottom:13px}body[data-piq-design] .wordmark{font-size:clamp(38px,5vw,66px)}body[data-piq-design] .navigation{min-height:44px}body[data-piq-design] .piq-preferences{background:#e4ece77a;backdrop-filter:blur(12px)}body[data-piq-design] .piq-preferences-inner{padding-top:4px;padding-bottom:4px}body[data-piq-design] .piq-preferences select{padding-top:3px;padding-bottom:3px}
body[data-piq-design] :is(button,a,input,select,summary):focus-visible{outline:3px solid #188d94;outline-offset:4px}
body[data-piq-design] summary{cursor:pointer}body[data-piq-design] .studio-disclosure{border:1px solid var(--studio-border);border-radius:14px;padding:16px 20px;background:var(--studio-panel);box-shadow:var(--studio-shadow);margin:18px 0;backdrop-filter:blur(18px)}
body[data-piq-design] .studio-disclosure>summary{font-size:13px;font-weight:750;color:var(--studio-ink);line-height:1.6}body[data-piq-design] .studio-disclosure>summary>span{float:right;font-size:10px;font-weight:500;color:var(--studio-muted);margin-left:12px}body[data-piq-design] .studio-disclosure[open]>summary{margin-bottom:18px}
/* Compact visual homepage. */
body.studio-home .lead-grid.atlas-stage{grid-template-columns:1fr 1.08fr .55fr;gap:14px;padding:12px 0 22px}body.studio-home .lead-grid .lead{padding:26px;background:var(--studio-panel);border-color:var(--studio-border);box-shadow:var(--studio-shadow)}body.studio-home .lead-grid .lead h1{font-size:clamp(36px,3.9vw,56px);margin:16px 0 12px}body.studio-home .lead-grid .lead .dek{font-size:13px;line-height:1.55}body.studio-home .lead-grid .lead .action{font-size:11px;padding:12px 14px;margin-top:17px}body.studio-home .lead-grid .lead-note{font-size:9px;padding-top:18px}body.studio-home .lead-grid .agenda{padding:20px 16px;background:#eff2fc73}body.studio-home .lead-grid .agenda .agenda-item{padding:14px 0}body.studio-home .lead-grid .map-feature{min-height:320px}body.studio-home .home-cycle-number{font-size:112px}body.studio-home .home-cycle-number span{font-size:10px}body.studio-home .atlas-art{opacity:.23}
.world-desks{margin:4px 0 24px}.desk-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:13px}.desk-heading h2{font-size:clamp(23px,2.5vw,32px);letter-spacing:-1px;margin:5px 0 0}.desk-heading>span{font:10px system-ui;color:var(--studio-muted)}.world-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.world-card{position:relative;display:block;border-radius:17px;overflow:hidden;min-height:218px;background:#153f46;box-shadow:0 8px 30px #173c4317;color:#fff;text-decoration:none;border:1px solid #ffffff80;isolation:isolate}.world-card>img,.world-card>svg{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .5s}.world-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#10283113 30%,#092a3b66);z-index:0}.world-card:hover>img,.world-card:hover>svg{transform:scale(1.045)}.country-code{position:absolute;top:13px;left:13px;z-index:1;background:#112f4a69;color:white;border:1px solid #ffffff4f;border-radius:30px;padding:6px 10px;font:9px system-ui;letter-spacing:.12em;backdrop-filter:blur(12px)}.world-card-label{position:absolute;z-index:1;bottom:10px;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#153d4f8f;border:1px solid #ffffff4a;border-radius:11px;backdrop-filter:blur(16px);padding:12px;color:white}.world-card-label b{display:block;font:700 21px/1.2 Georgia,serif;letter-spacing:-.4px}.world-card-label small{display:block;font:10px/1.4 system-ui;color:#e8f3f4;margin-top:5px}.world-card-label i{font-style:normal;font-size:25px;color:#f4b896}.world-card:hover .world-card-label{background:#123549b8}
body.studio-home .find-section{padding:20px 24px;border:1px solid var(--studio-border);border-radius:15px;background:#ffffff66;gap:24px;margin:20px 0;backdrop-filter:blur(18px)}body.studio-home .find-section h2{font-size:30px}body.studio-home .find-section .kicker{font-size:9px}body.studio-home .find-content form{background:#ffffffb8;border-radius:9px}body.studio-home .find-content input{font-size:13px}body.studio-home .search-hint{font-size:10px;margin-top:9px}
.desk-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.desk-shortcuts a{padding:17px;background:var(--studio-panel);border:1px solid var(--studio-border);box-shadow:var(--studio-shadow);border-radius:12px;text-decoration:none}.desk-shortcuts span{display:block;font:9px system-ui;letter-spacing:.1em;color:var(--studio-muted);margin-bottom:9px}.desk-shortcuts b{font-size:13px;color:var(--studio-ink)}.desk-shortcuts a:hover{border-color:#399a9a;background:#fff9}.city-shortcuts{display:flex;flex-wrap:wrap;gap:12px}.city-shortcuts a{padding:10px;border:1px solid var(--studio-border);border-radius:8px;font-size:12px}
body.studio-home .past-elections{padding:20px 0;margin:0}body.studio-home .past-elections-heading p{display:none}body.studio-home .past-elections-heading h2{font-size:27px}body.studio-home .past-election-list article{padding:16px;border-radius:13px;background:var(--studio-panel)}body.studio-home .past-election-list article>p{display:none}body.studio-home .past-status{font-size:9px}body.studio-home .tools-section{padding:25px 0;margin:0;gap:30px}body.studio-home .tools-section h2{font-size:33px}body.studio-home .tools-section>div>p{font-size:12px}body.studio-home .tool-list>a{padding:16px 0}body.studio-home .tool-list h3{font-size:17px}body.studio-home .tool-list p{font-size:11px}body.studio-home .coverage-notes{display:block;padding:18px 20px;margin:20px 0}body.studio-home .coverage-notes>div{padding-top:15px}body.studio-home .coverage-notes p{font-size:12px;max-width:900px}
/* Atlas pages share the same visual grammar, without changing map geometry. */
body.atlas-page main{max-width:1440px;padding:0 clamp(16px,3.6vw,60px)}body.atlas-page .hero{grid-template-columns:1fr 1fr;min-height:0;padding:25px 0 22px;gap:28px}body.atlas-page .hero h1{font-size:clamp(35px,4.3vw,60px);line-height:1.05;letter-spacing:-2px;margin:12px 0;font-family:Manrope,'DM Sans',system-ui,sans-serif}body.atlas-page .hero p{font-size:13px;line-height:1.6;margin:12px 0 18px;max-width:470px}body.atlas-page .hero .primary{padding:12px 16px;font-size:11px}body.atlas-page .hero .secondary{font-size:11px}.country-art{position:relative;margin:0;height:258px;border-radius:19px;overflow:hidden;background:#124b50;border:1px solid #fff9;box-shadow:0 15px 35px #234b4f1c;isolation:isolate}.country-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 49%}.country-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0b34423d,transparent 40%,#0b344255)}.country-art figcaption{position:absolute;z-index:1;top:15px;left:17px;right:17px;color:white;display:flex;justify-content:space-between;gap:15px;text-shadow:0 1px 8px #123;font:8px/1.4 system-ui;letter-spacing:.14em}.country-art figcaption small{font-size:8px;letter-spacing:.02em;white-space:nowrap}.art-metrics{position:absolute;bottom:12px;left:12px;right:12px;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);padding:13px;background:#123e50a6;border:1px solid #ffffff66;border-radius:12px;backdrop-filter:blur(18px);color:#fff;font:9px/1.4 system-ui}.art-metrics span{padding:0 10px;border-right:1px solid #ffffff33}.art-metrics span:last-child{border:0}.art-metrics b{display:block;font-size:18px;line-height:1.2;margin-bottom:4px;letter-spacing:-.5px;color:white}
body.atlas-page :is(.workspace,.glass,.map-panel,.standings,.riding-panel,.candidate-panel,.poll-card,.coverage-strip,.seat-tally,.india-map-panel,.overview-stat,.coverage-banner){background:var(--studio-panel);border:1px solid #ffffffa6;box-shadow:var(--studio-shadow);backdrop-filter:blur(18px);border-radius:14px}body.atlas-page .eyebrow{font-size:9px;margin-bottom:8px}body.atlas-page .top{padding-top:13px;padding-bottom:13px}body.atlas-page .top nav{gap:18px}body.atlas-page .section-top{margin:26px 0 15px}body.atlas-page .section-top h2{font-size:23px}body.canada-atlas .coverage-banner{padding:11px 15px;font-size:10px}body.canada-atlas .regions{gap:5px;margin-bottom:13px}body.canada-atlas .region{padding:10px 7px}body.canada-atlas .workspace{padding:18px}body.canada-atlas .workspace-top h2{font-size:27px}body.canada-atlas .years{margin-top:12px}body.canada-atlas .years button{padding:7px 12px;font-size:11px}body.canada-atlas .record-note{margin:5px 0 12px;padding:8px 11px;font-size:10px}body.canada-atlas .map-panel .map-stage{background:radial-gradient(ellipse at 40% 45%,#c5e7e52e,transparent 70%)}body.canada-atlas .panel-top{padding:16px}body.canada-atlas .party-row{padding:12px 0}body.canada-atlas .party-mark{width:52px;height:38px;flex-shrink:0;border:1px solid #d4e1e2;border-radius:8px;padding:5px}body.canada-atlas .party-mark img{width:100%;height:100%;object-fit:contain;display:block}body.canada-atlas .summary-note{font-size:10px}body.canada-atlas .coverage{padding:30px 0}body.canada-atlas .coverage h2{font-size:26px}body.canada-atlas .coverage>p{font-size:11px;line-height:1.7;max-width:1000px}body.canada-atlas .poll-table-wrap{max-height:420px;overflow:auto}body.canada-atlas .coverage-grid{margin-top:12px}body.canada-atlas .chart-note{font-size:10px}
body.india-atlas .in-header{padding:13px clamp(16px,3.6vw,60px)}body.india-atlas .india-section-nav{padding:12px 0 0;margin:0}body.india-atlas .india-section-nav a{font-size:10px;padding:8px 11px}body.india-atlas .coverage-strip>div{padding:12px 16px;gap:4px}body.india-atlas .coverage-strip strong{font-size:20px}body.india-atlas .intro{margin:24px 0 12px}body.india-atlas .intro h2{font-size:28px;margin:5px 0}body.india-atlas .intro p{font-size:12px}body.india-atlas .explorer{padding:17px}body.india-atlas .filters{gap:12px}body.india-atlas .india-map-heading h3{font-size:24px}body.india-atlas .election-overview{gap:8px;margin-bottom:13px}body.india-atlas .overview-stat{padding:12px 16px}body.india-atlas .overview-stat strong{font-size:27px}body.india-atlas .source-banner{font-size:10px;line-height:1.6}body.india-atlas .map-stage .seat-tally{max-height:520px}body.india-atlas .state-coverage-grid{max-height:400px;overflow:auto;padding:3px;scrollbar-width:thin}body.india-atlas .state-coverage-card{min-height:94px}body.india-atlas .coverage{margin:30px 0}body.india-atlas .coverage h2{font-size:29px}body.india-atlas .coverage>p{font-size:12px;max-width:950px}body.india-atlas .map-legend-item img{background:white;padding:3px;border-radius:5px;width:26px;height:26px}body.india-atlas .seat-tally-row img{width:30px;height:30px;padding:3px;flex:none}body.india-atlas .in-party img{width:27px;height:27px;flex:none}
/* Unavailable media remain legible; no made-up party artwork or portraits. */
.piq-media-fallback{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;padding:5px;border:1px solid #9fb6bf;border-radius:7px;background:#edf2f0;color:#294c58;font:700 10px/1.2 system-ui;text-align:center}.poll-party-line>.piq-media-fallback{width:56px;height:56px;border-radius:50%}body[data-piq-design] .poll-official-logo{background:#fff;border-radius:6px;padding:4px;min-height:30px}body[data-piq-design] .poll-leader-photo{object-fit:cover;object-position:center 23%;background:#dfe9e7}body[data-piq-design] :is(.poll-hero,.fp-hero,.page-hero){padding-top:28px;padding-bottom:24px}body[data-piq-design] :is(.poll-hero,.fp-hero) h1{font-size:clamp(37px,4.5vw,64px)}
html[data-resolved-theme=dark] body[data-piq-design]{--studio-ink:#e8f2ef;--studio-muted:#a8bfc2;--studio-border:#93b5c833;--studio-panel:#152f3eaa;--studio-shadow:0 12px 35px #0002,inset 0 1px #ffffff10;background:radial-gradient(ellipse at 100% 0,#164b5477,transparent 50%),radial-gradient(ellipse at 5% 45%,#3b294e55,transparent 45%),#0c1c29!important;color:#e8f2ef}
html[data-resolved-theme=dark] body[data-piq-design] :is(.masthead,.in-header,.top,.piq-preferences){background:#152f3ebd;color:#e8f2ef}html[data-resolved-theme=dark] body[data-piq-design] :is(.lead-grid .lead,.lead-grid .agenda,.past-election-list article,.find-section,.workspace,.glass,.map-panel,.standings,.riding-panel,.candidate-panel,.poll-card,.coverage-strip,.seat-tally,.india-map-panel,.overview-stat,.coverage-banner){background:var(--studio-panel);color:#e8f2ef;border-color:var(--studio-border)}html[data-resolved-theme=dark] body[data-piq-design] :is(.hero h1,.hero h2,.brand,.workspace h2,.section-top h2,.india-map-heading h3,.intro h2,.coverage h2,.overview-stat strong,.seat-tally h3,.seat-tally-row,.world-desks h2,.tools-section h2,.tool-list h3,.find-section h2,.past-elections h2,.past-elections h3){color:#e8f2ef}html[data-resolved-theme=dark] body[data-piq-design] :is(.hero p,.intro p,.coverage>p,.lead .dek,.lead-note,.overview-stat span,.coverage-strip small,.coverage-strip span,.seat-tally .detail-note){color:#afc5c7}html[data-resolved-theme=dark] body[data-piq-design] .state-coverage-card{background:#173541aa;color:#e8f2ef;border-color:#54747b}html[data-resolved-theme=dark] body[data-piq-design] .state-coverage-card :is(span,small){color:#afc5c7}
@media(max-width:1000px){body.studio-home .lead-grid.atlas-stage{grid-template-columns:1fr 1fr}body.studio-home .lead-grid .agenda{grid-column:1/-1;display:flex;align-items:center;gap:20px;padding:13px 18px}body.studio-home .agenda>.text-link{margin-left:auto}body.studio-home .agenda .agenda-item{border:0;padding:0!important}body.studio-home .agenda .agenda-item p{display:none}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-card{min-height:210px}.desk-shortcuts{grid-template-columns:1fr 1fr}body.atlas-page .top nav{gap:12px}body.atlas-page .top .edition{display:none}body.atlas-page .hero{gap:20px}body.atlas-page .hero h1{font-size:38px}.country-art{height:245px}.art-metrics{padding:11px 5px}.art-metrics b{font-size:16px}}
@media(max-width:700px){body[data-piq-design] .mast-row{padding-top:11px;padding-bottom:11px}body[data-piq-design] .wordmark{font-size:46px}body[data-piq-design] .navigation{overflow:visible}body.studio-home .lead-grid.atlas-stage{grid-template-columns:1fr;gap:10px;padding-top:10px}body.studio-home .lead-grid .lead{padding:20px;min-height:0}body.studio-home .lead-grid .lead h1{font-size:42px;max-width:420px;margin-top:12px}body.studio-home .lead-grid .lead .dek{font-size:12px;max-width:400px}body.studio-home .lead-grid .lead-note{padding-top:15px}body.studio-home .lead-grid .map-feature{min-height:205px;max-height:230px}body.studio-home .home-cycle-number{font-size:90px}body.studio-home .lead-grid .agenda{grid-column:auto;gap:12px;flex-wrap:wrap}body.studio-home .agenda>.section-label{font-size:8px}body.studio-home .agenda .calendar-day{font-size:24px}body.studio-home .agenda .agenda-item h3{font-size:13px}.desk-heading h2{font-size:25px}.desk-heading>span{display:none}.world-grid{gap:9px}.world-card{min-height:190px;border-radius:13px}.world-card-label{padding:9px;bottom:7px;left:7px;right:7px;gap:3px;border-radius:9px}.world-card-label b{font-size:19px}.world-card-label small{font-size:9px}.world-card-label i{font-size:19px}.country-code{font-size:8px;top:10px;left:10px}.desk-shortcuts a{padding:13px}.desk-shortcuts b{font-size:12px}body.studio-home .find-section{display:block;padding:17px}body.studio-home .find-section h2{font-size:27px;margin-bottom:14px}body.studio-home .find-content input{min-width:0;font-size:12px}body.studio-home .find-content button{font-size:11px;padding:10px}body.studio-home .tools-section{gap:15px}body.studio-home .past-election-list{gap:8px}body.studio-home .past-election-list article{padding:13px}body.studio-home .past-election-list h3{font-size:19px}body[data-piq-design] .studio-disclosure{padding:14px}body[data-piq-design] .studio-disclosure>summary>span{float:none;display:block;margin:5px 0 0 15px}
body.atlas-page .hero{grid-template-columns:1fr;gap:17px;padding:22px 0 16px}body.atlas-page .hero h1{font-size:41px;letter-spacing:-1.8px}body.atlas-page .hero p{font-size:12px;margin:10px 0 15px}.country-art{height:205px}.country-art figcaption{top:12px;font-size:7px}.country-art figcaption small{font-size:7px}.art-metrics{padding:10px 4px;font-size:8px}.art-metrics b{font-size:16px}.art-metrics span{padding:0 8px}body.atlas-page .top{position:relative;flex-wrap:wrap;gap:10px}body.atlas-page .top nav{width:100%;flex:none;overflow-x:auto;font-size:10px;white-space:nowrap;padding-bottom:3px}body.atlas-page .top .brand{font-size:28px}body.canada-atlas .coverage-banner{flex-wrap:wrap;gap:7px;font-size:9px}body.canada-atlas .coverage-banner span:nth-of-type(2){flex-basis:80%}body.canada-atlas .coverage-banner>a{margin-left:14px}body.canada-atlas .workspace{padding:12px}body.canada-atlas .map-layout{grid-template-columns:1fr}body.canada-atlas .details-layout{grid-template-columns:1fr}body.canada-atlas .map-stage{height:340px}body.canada-atlas .party-mark{width:48px;height:36px}body.canada-atlas .region-title{font-size:25px}body.india-atlas .edition{display:none}body.india-atlas .in-header nav{gap:15px;font-size:11px}body.india-atlas .india-section-nav{overflow-x:auto;white-space:nowrap;display:flex;gap:6px;padding-bottom:5px}body.india-atlas .india-section-nav a{flex:none}body.india-atlas .coverage-strip{grid-template-columns:1fr 1fr}body.india-atlas .coverage-strip>div{padding:11px 13px}body.india-atlas .coverage-strip strong{font-size:18px}body.india-atlas .coverage-strip small{font-size:9px}body.india-atlas .explorer{padding:11px}body.india-atlas .intro{margin-top:20px}body.india-atlas .election-overview .overview-stat{padding:10px 8px}body.india-atlas .overview-stat strong{font-size:23px}body.india-atlas .map-stage .seat-tally{max-height:290px}body.india-atlas .state-coverage-grid{max-height:350px}body.india-atlas .seat-tally-row img{width:24px;height:24px}
}
@media(prefers-reduced-motion:no-preference){.country-art>img{animation:studio-reveal .7s ease-out both}.world-card{animation:studio-reveal .6s ease-out both}.world-card:nth-child(2){animation-delay:.06s}.world-card:nth-child(3){animation-delay:.12s}.world-card:nth-child(4){animation-delay:.18s}@keyframes studio-reveal{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){body[data-piq-design] *,body[data-piq-design] *:before,body[data-piq-design] *:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
@media(forced-colors:active){body[data-piq-design] :is(.studio-disclosure,.world-card-label,.country-art,.panel,.workspace,.glass){background:Canvas;border:1px solid CanvasText;backdrop-filter:none;box-shadow:none;color:CanvasText}}

.congress-visual{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;width:100%;height:100%;min-height:200px;padding:25px;flex:1}.congress-badge{font:10px system-ui;letter-spacing:.13em;background:#0e2c4b88;border:1px solid #ffffff6b;border-radius:30px;padding:8px 12px;color:white;backdrop-filter:blur(12px)}.congress-visual>div{display:grid;grid-template-columns:auto auto 1px auto auto;gap:10px;align-items:center;background:#102d49a6;backdrop-filter:blur(18px);border:1px solid #ffffff55;border-radius:12px;padding:12px 16px;width:100%;color:white}.congress-visual b{font-size:29px;font-weight:600;letter-spacing:-1px}.congress-visual>div>span{font-size:9px;line-height:1.4}.congress-visual i{height:28px;background:#ffffff55;margin:0 5px}.congress-visual b:nth-of-type(2){color:#f5c2a4}@media(max-width:700px){.congress-visual{padding:15px;min-height:135px}.congress-visual>div{padding:9px 13px;max-width:340px}.congress-visual b{font-size:25px}}
/* Finish the same compact treatment on the federal and US desks. */
body[data-piq-design] a.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}body[data-piq-design] a.skip:focus{position:fixed;top:8px;left:8px;z-index:9999;padding:12px 18px;background:white;color:#153f46;border-radius:8px}
body[data-piq-design] .polling-desk{padding-top:25px}body[data-piq-design] .poll-heading{padding-bottom:22px;gap:20px}body[data-piq-design] .poll-heading h1{font-size:clamp(39px,5vw,68px);margin:12px 0 14px}body[data-piq-design] .poll-heading p{font-size:13px}body[data-piq-design] .average-grid{gap:16px;padding:22px 0}body[data-piq-design] :is(.average-main,.average-notes,.outlook-chamber-card,.us-briefing-card,.outlook-map-card){background:var(--studio-panel);border:1px solid var(--studio-border);border-radius:15px;padding:22px;box-shadow:var(--studio-shadow);backdrop-filter:blur(18px)}body[data-piq-design] .average-notes h2{font-size:27px;margin:15px 0}body[data-piq-design] .average-notes p{font-size:12px;line-height:1.65}body[data-piq-design] .average-title{margin-top:15px}body[data-piq-design] .average-bars{gap:15px}body[data-piq-design] .average-main>.poll-fine{font-size:10px;margin-top:16px}
body.us-election.civic-editorial[data-piq-design] .wrap{padding-top:22px}body.us-election.civic-editorial[data-piq-design] .us-cover{min-height:360px;padding:30px;gap:24px;align-items:center}body.us-election.civic-editorial[data-piq-design] .us-cover h1{font-size:clamp(54px,5.8vw,79px);margin:15px 0}body.us-election.civic-editorial[data-piq-design] .us-cover p{font-size:13px;max-width:460px;line-height:1.65}body.us-election[data-piq-design] .us-cover-aside{align-self:center;padding:20px;min-height:0;height:auto}body.us-election[data-piq-design] .us-cover-year{font-size:75px}body.us-election[data-piq-design] .us-cover-links{margin-top:18px;gap:18px}body.us-election[data-piq-design] .us-cover-links a{font-size:10px;gap:20px}body.us-election[data-piq-design] .midterm-spotlight{padding:30px 0}body.us-election[data-piq-design] .midterm-spotlight h2{font-size:clamp(32px,3.5vw,46px)}
html[data-resolved-theme=dark] body[data-piq-design] :is(.average-main,.average-notes,.outlook-chamber-card,.us-briefing-card,.outlook-map-card){background:var(--studio-panel);color:var(--studio-ink)}
@media(max-width:700px){body[data-piq-design] .average-grid{grid-template-columns:1fr;gap:12px}body[data-piq-design] :is(.average-main,.average-notes){padding:16px}body[data-piq-design] .average-title{gap:10px}body[data-piq-design] .average-title h2{font-size:28px}body[data-piq-design] .average-title>span{font-size:9px}body[data-piq-design] .poll-heading{align-items:start}body[data-piq-design] .poll-edition{padding-left:13px;font-size:9px}body[data-piq-design] .poll-edition strong{font-size:17px}body.us-election.civic-editorial[data-piq-design] .us-cover{min-height:0;padding:23px 20px}body.us-election.civic-editorial[data-piq-design] .us-cover h1{font-size:56px}body.us-election[data-piq-design] .us-cover-aside{margin-top:22px;display:grid;grid-template-columns:.6fr 1fr;gap:15px;padding:15px}body.us-election[data-piq-design] .us-cover-year{font-size:50px}body.us-election[data-piq-design] .us-cover-edition{display:block}body.us-election[data-piq-design] .us-cover-edition-label{font-size:7px}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units strong{font-size:24px}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units>div{padding:0 5px}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units span{font-size:6px}body.us-election.civic-editorial[data-piq-design] .us-cover .election-countdown{padding:0;border:0}}
body.us-election.civic-editorial[data-piq-design] .us-cover .election-countdown{flex:0 0 auto!important;height:auto;min-height:0;padding:16px 0 0!important}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units{margin:12px 0}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units strong{font-size:32px}@media(max-width:700px){body.us-election.civic-editorial[data-piq-design] .us-cover .election-countdown{padding:0!important}body.us-election.civic-editorial[data-piq-design] .us-cover .countdown-units strong{font-size:24px}}
/* Liquid glass / shared publication surfaces. Keep data marks and photographs sharp. */
body[data-piq-design]{--liquid-surface:linear-gradient(135deg,#ffffff9c,#ffffff52 55%,#e5f5fa69);--liquid-edge:#ffffffc4;--liquid-shadow:inset 0 1px 0 #ffffffd9,inset 0 -1px 0 #a2bcc61a,0 12px 32px #2747560d}
body[data-piq-design] :is(.br-national,.br-detail,.br-map-panel,.br-poll-summary,.br-scenario-controls,.br-scenario-result,.br-poll-card,.bl-panel,.bl-stage,.bl-timeline,.night-card,.ward-panel,.race-panel,.poll-context,.contender,.featured-result,.on-night,.on-night-cards>article,.midterm-card,.midterm-race-card,.midterm-cards>article,.us-briefing-card,.outlook-joint,.outlook-chamber-card,.fp-summary,.fp-map-panel,.ft-highlight,.method-card,.source-card,.about-grid>article,.state-coverage-card,.party-directory-card,.coverage-card,.overview-stat,.map-panel,.standings,.candidate-panel,.riding-panel,.poll-card,.average-main,.average-notes){background-color:rgba(255,255,255,.45);background-image:var(--liquid-surface);border:1px solid var(--liquid-edge);border-radius:16px;box-shadow:var(--liquid-shadow);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%)}
body[data-piq-design] :is(.br-candidate-card,.bl-candidate){background-image:linear-gradient(130deg,#ffffffa3,#ffffff3b);box-shadow:inset 0 1px #ffffffcf,0 8px 26px #203c4b0b;backdrop-filter:blur(14px);border-radius:12px}
/* The header needs its own elevated stacking layer: blur alone creates a low layer. */
body[data-piq-design]>:is(header.masthead,header.in-header,header.shell){position:relative;z-index:200;isolation:isolate;overflow:visible}
body[data-piq-design]>:is(header.top,.site-header){z-index:200;isolation:isolate;overflow:visible}
body[data-piq-design]>main{position:relative;z-index:0}
body[data-piq-design] .navigation{position:relative;z-index:20;overflow:visible}
body[data-piq-design] .navigation details{z-index:1}body[data-piq-design] .navigation details[open]{z-index:30}
body[data-piq-design] .navigation .dropdown{z-index:50;background:#edf5f3f5;background-image:linear-gradient(135deg,#fffffff2,#e9f3f0ef);border:1px solid #afc5c6;border-radius:0 0 14px 14px;box-shadow:0 18px 45px #143c4a2e,inset 0 1px #fff;backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%);max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;color:#173b43}
body[data-piq-design] .navigation .dropdown a{line-height:1.45;gap:16px}body[data-piq-design] .navigation .dropdown a:hover{background:#ffffffa3;border-radius:5px}
/* Logo, name and seat tally occupy independent columns at every width. */
body.canada-atlas[data-piq-design] .party-row{display:grid;grid-template-columns:54px minmax(0,1fr) minmax(28px,max-content);gap:12px;align-items:center;padding:14px 16px;min-width:0}
body.canada-atlas[data-piq-design] .party-row>div{min-width:0}body.canada-atlas[data-piq-design] .party-row b{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.45;font-size:11px}
body.canada-atlas[data-piq-design] .party-row small{line-height:1.5;margin-top:5px;font-size:9px}
body.canada-atlas[data-piq-design] .party-row .party-mark{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:54px;max-width:54px;height:40px;padding:6px;margin:0;font-size:9px;overflow:hidden;border-radius:8px}
body.canada-atlas[data-piq-design] .party-mark img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block;flex:none}
body.canada-atlas[data-piq-design] .party-row .party-seats{white-space:nowrap;font-size:24px;line-height:1.15;font-variant-numeric:tabular-nums;padding-left:2px}
body.canada-atlas[data-piq-design] .standings{min-width:0}body.canada-atlas[data-piq-design] #party-standings{min-width:0}
html[data-resolved-theme=dark] body[data-piq-design]{--liquid-surface:linear-gradient(135deg,#345b6b40,#142c3a65 60%,#31425b33);--liquid-edge:#97bec733;--liquid-shadow:inset 0 1px #ffffff14,0 12px 32px #0003}
html[data-resolved-theme=dark] body[data-piq-design] :is(.br-national,.br-detail,.br-map-panel,.br-poll-summary,.br-scenario-controls,.br-scenario-result,.bl-panel,.bl-stage,.bl-timeline,.night-card,.ward-panel,.race-panel,.poll-context,.contender,.featured-result,.on-night,.on-night-cards>article,.midterm-card,.midterm-race-card,.midterm-cards>article,.outlook-joint,.ft-highlight,.method-card,.source-card,.coverage-card){background-color:#142c3aa6;color:var(--studio-ink);border-color:var(--liquid-edge)}
html[data-resolved-theme=dark] body[data-piq-design] .navigation .dropdown{background:#18333ff5;background-image:linear-gradient(135deg,#234552f5,#132b37f5);color:#e7f0ed;border-color:#60828a}
html[data-resolved-theme=dark] body[data-piq-design] .navigation .dropdown a:hover{background:#52788833}
html[data-resolved-theme=dark] body[data-piq-design] :is(.br-candidate-card,.bl-candidate){background-color:#17313d;background-image:linear-gradient(130deg,#29495488,#17313d55);color:#e7f0ed}
@media(max-width:700px){body[data-piq-design] .navigation .dropdown{min-width:0;width:min(310px,calc(100vw - 36px));max-height:calc(100dvh - 110px);padding:12px 16px}body.canada-atlas[data-piq-design] .party-row{grid-template-columns:48px minmax(0,1fr) minmax(26px,max-content);gap:10px;padding:12px 13px}body.canada-atlas[data-piq-design] .party-row .party-mark{width:48px;max-width:48px;height:38px;padding:5px}body.canada-atlas[data-piq-design] .party-row .party-seats{font-size:22px}}
@supports not (backdrop-filter:blur(1px)){body[data-piq-design]{--liquid-surface:linear-gradient(135deg,#f9fcfb,#e9f2f2)}html[data-resolved-theme=dark] body[data-piq-design]{--liquid-surface:linear-gradient(135deg,#203d4a,#142a36)}}
@media(forced-colors:active){body[data-piq-design] .navigation .dropdown,body[data-piq-design] .party-row .party-mark{background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none;backdrop-filter:none}}
body.brazil-election[data-result-mode=archive] .br-live-dot{animation:none!important;box-shadow:none!important;background:#467c65}
body[data-piq-design] :is(.br-map-wrap,.br-watch,.br-poll-chart,.br-scenario-grid>div,.br-sources>div>article){background:var(--liquid-surface);border:1px solid var(--liquid-edge);box-shadow:var(--liquid-shadow);backdrop-filter:blur(18px);border-radius:16px}
body.brazil-election[data-piq-design] .br-countdown{background:linear-gradient(135deg,#165847d9,#173c48c4);border:1px solid #ffffff8a;border-radius:17px;box-shadow:inset 0 1px #ffffff55,0 14px 35px #193e3e1a;backdrop-filter:blur(24px) saturate(140%)}
/* Lighter text tones in dark mode; party bars retain their original colours. */
html[data-resolved-theme=dark] body.brazil-election[data-piq-design] .br-candidate-grid>article:first-child .br-candidate-tally strong{color:#9cc9ff!important}
html[data-resolved-theme=dark] body.brazil-election[data-piq-design] .br-candidate-grid>article:last-child .br-candidate-tally strong{color:#ffb3bc!important}
html[data-resolved-theme=dark] body.brazil-election[data-piq-design] .br-candidate-status{color:#e1edf0!important}

/* Shared red brand and compact, keyboard-accessible desk navigation. */
:root{--piq-brand-red:#df2438}
body[data-piq-design] .wordmark-iq,body[data-piq-design] .brand-iq,body[data-piq-design] .piq-brand-iq,body[data-piq-design] .brand>span,body[data-piq-design] .bl-brand>span{color:var(--piq-brand-red)!important}
.piq-global-nav{position:relative;display:flex!important;align-items:center;gap:5px;flex-wrap:wrap;padding:8px 0!important;overflow:visible!important;z-index:210}
.piq-global-nav>a,.piq-global-nav summary{display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px!important;font:600 11px system-ui;cursor:pointer;border-radius:9px;text-decoration:none;white-space:nowrap}
.piq-global-nav details{position:relative;overflow:visible!important}.piq-global-nav summary{list-style:none}.piq-global-nav summary::-webkit-details-marker{display:none}.piq-global-nav details[data-current-country] summary{background:#df243810;color:#c82235}
.piq-global-nav .dropdown{position:absolute!important;top:100%;left:0;min-width:235px;max-height:min(70vh,560px);overflow:auto!important;padding:8px!important;border:1px solid #c2d1d899;border-radius:13px;background:#f8fbfaf5!important;backdrop-filter:blur(25px);box-shadow:0 18px 40px #183e4525;z-index:220!important;display:grid!important;gap:2px}
.piq-global-nav details:not([open])>.dropdown{display:none!important}.piq-global-nav .dropdown>a{display:block;min-height:39px;padding:11px 12px;font:500 11px system-ui;color:#193e46;text-decoration:none;border-radius:7px}.piq-global-nav a:hover,.piq-global-nav summary:hover{background:#df24380b}.piq-global-nav [aria-current=page]{color:#c82235!important;background:#df243812;font-weight:700!important}
.piq-desk-nav-wrap{position:relative;z-index:20;width:min(1380px,calc(100% - 40px));margin:0 auto 10px}.piq-desk-nav{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin;border-bottom:1px solid #91adb62b;padding:7px 0}.piq-desk-nav a{flex:none;min-height:38px;display:flex;align-items:center;padding:8px 12px;border:1px solid #b8cdd54d;border-radius:9px;background:#ffffff60;text-decoration:none;color:#476770;font:600 10px system-ui}.piq-desk-nav a[aria-current=page]{color:#c82235;background:#df243812;border-color:#df243834}.piq-desk-nav .piq-back-world{border-color:transparent;background:none}.elected-label{color:#147760;font-weight:750}.night-card>strong{font-size:clamp(23px,3vw,36px)!important;line-height:1.2!important}
.canada-desk-hub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 22px}.canada-desk-hub a{padding:15px 17px;background:#ffffff73;border:1px solid #a9c4d24d;border-radius:13px;text-decoration:none}.canada-desk-hub b{display:block;color:#224f5b;font:700 12px system-ui}.canada-desk-hub span{display:block;color:#66818b;font:10px/1.6 system-ui;margin-top:5px}
html[data-resolved-theme=dark] .piq-global-nav .dropdown{background:#17313df7!important;border-color:#63828d66}html[data-resolved-theme=dark] .piq-global-nav .dropdown a{color:#d4e5e8}html[data-resolved-theme=dark] .piq-desk-nav a,html[data-resolved-theme=dark] .canada-desk-hub a{background:#25424c75;color:#d2e4e9;border-color:#7594a044}html[data-resolved-theme=dark] .canada-desk-hub b{color:#e3eff2}html[data-resolved-theme=dark] .canada-desk-hub span{color:#b2c7ce}
@media(max-width:700px){.piq-global-nav{gap:2px!important}.piq-global-nav>a,.piq-global-nav summary{min-height:44px;font-size:10px;padding:8px 9px!important}.piq-global-nav .dropdown{min-width:210px;max-width:calc(100vw - 36px)}.piq-global-nav details:nth-of-type(n+3) .dropdown{left:auto;right:0}.piq-desk-nav-wrap{width:calc(100% - 24px);margin-bottom:5px}.piq-desk-nav a{min-height:44px;font-size:10px}.canada-desk-hub{grid-template-columns:1fr 1fr;gap:7px}.canada-desk-hub a{padding:13px}.canada-desk-hub b{font-size:11px}}
