/* Election data colours: party identity is separate from the brand accent. */
:root{--piq-us-dem:#2474d8;--piq-us-rep:#d34245;--piq-us-ind:#7255a4;--piq-fed-liberal:#d63232;--piq-fed-conservative:#2256a6;--piq-fed-ndp:#ed761b;--piq-fed-bloc:#2685a8;--piq-fed-green:#397b42;--piq-awaiting:#dce4dc}
/* Homepage projected median seats use the same blue/red as the US desk. */
.us-section .seatbar i:first-child{background:var(--piq-us-dem)}
.us-section .seatbar i:last-child{background:var(--piq-us-rep)}
.us-section .seat-values>span:first-child{color:#1b55a5}
.us-section .seat-values>span:last-child{color:#a72830}
/* Keep small labels and data readable: swatches and bars retain party colours. */
html:not([data-resolved-theme="dark"]) .fp-riding-row b{color:#1d302f}
html:not([data-resolved-theme="dark"]) .outlook-party{color:#223a53}
html:not([data-resolved-theme="dark"]) .br-candidate-status{color:#32483f}
/* Explicit textual statuses remain visible regardless of the colour of the border. */
.feed-status,.br-feed-status,.us-feed-status,.outlook-status{line-height:1.6}
@media(forced-colors:active){.us-section .seatbar i{forced-color-adjust:none}.us-section .seat-values>span{color:CanvasText!important}}
