.alert-ticker{bottom:0;font-family:var(--font-primary);font-weight:900;position:fixed;width:100%;z-index:1000}.alert-ticker.integrated{position:relative}.alert-ticker__container{align-items:center;display:flex;padding:12px;text-decoration:none}.alert-ticker__container--red{background-color:var(--color-brand-secondary-lighter-1)}.alert-ticker__container--red .alert-ticker__pill{color:var(--color-brand-secondary-lighter-1)}.alert-ticker__container--yellow{background-color:var(--primary-yellow)}.alert-ticker__container--yellow .alert-ticker__pill,.alert-ticker__container--yellow .alert-ticker__text{color:var(--color-brand-black)}.alert-ticker__container--black{background-color:var(--color-brand-black)}.alert-ticker__container--black .alert-ticker__pill{color:var(--color-brand-black)}.alert-ticker__pill{background-color:var(--color-brand-white);border-radius:100vh;color:var(--color-brand-secondary-lighter-1);flex-shrink:0;font-size:11px;line-height:16px;margin-right:12px;padding:2px 8px}.alert-ticker__text-container{flex-grow:1;height:22px;overflow:hidden;position:relative;white-space:nowrap}.alert-ticker__text{color:var(--color-brand-white);font-size:16px;left:0;line-height:22px;max-inline-size:none;position:absolute}.alert-ticker__text--disable{opacity:0}.alert-ticker__animate-container{display:flex}.alert-ticker__animate-text{animation:ticker 30s linear 4s infinite;position:relative}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-100%)}}.banner-generals{--banner-check-width:6px;--banner-check-padding:3px;--banner-check-min-width:calc(var(--banner-check-width) + var(--banner-check-padding)*2);animation:frombottom .75s ease forwards;bottom:0;color:var(--typography_text_color);font-family:var(--font-family-base);font-size:11px;font-weight:900;left:0;line-height:16px;margin:0 auto;max-width:2000px;min-width:320px;position:fixed;right:0;width:100%;z-index:50}.banner-generals__content{background-color:var(--white);border-color:var(--divider_color);border-radius:4px 4px 0 0;border-style:solid;border-width:1px 1px 0;box-shadow:0 0 8px 0 var(--container_box_shadow_color);min-height:151px;position:relative;transition:transform .75s ease-in-out}.banner-generals__minimize{background-color:var(--white);border:solid var(--divider_color);border-radius:4px 4px 0 0;border-width:1px 1px 0;cursor:pointer;min-width:64px;padding:8px;position:absolute;right:16px;top:0;transform:translate3d(0,-100%,0)}.banner-generals__minimize-text{color:var(--other-win);font-family:var(--font-family-base);font-size:11px;font-weight:900;line-height:16px;margin-right:4px}.banner-generals__minimize-icon{fill:var(--other-win);height:7px;transition:rotate .75s ease-in-out;width:10px}.banner-generals__content--minimized{transform:translate3d(0,100%,0)}.banner-generals__content--minimized .banner-generals__minimize-icon{rotate:180deg}.banner-generals__upper{align-items:center;display:grid;gap:8px;grid-template-columns:auto auto;grid-template-rows:auto auto;padding:16px 16px 0;white-space:nowrap}.banner-generals__tabs ul{display:flex}.banner-generals__tab{background-color:var(--color-brand-white-1);border-radius:100vh;color:var(--typography_text_color);cursor:pointer;display:block;padding:4px 10px;text-decoration:none}.banner-generals__tab:not(:last-of-type){margin-right:8px}.banner-generals__tab--active,.banner-generals__tab:hover{background-color:var(--typography_text_color);color:var(--white)}.banner-generals__automated-text{color:var(--rep-win);grid-column:1/-1;grid-row:2;overflow:hidden;text-align:center;text-overflow:ellipsis}.banner-generals__watch{display:none;margin-left:auto}.banner-generals__watch a{background-color:var(--rep-win);border-radius:100vh;color:var(--white);padding:4px 10px;text-decoration:none}.banner-generals__lower{display:flex;padding:12px 0}.banner-generals__race-table-wrapper{display:flex;flex-grow:1;justify-content:center;overflow:hidden}.banner-generals__race-table-wrapper--animate{animation:cycletables 10s ease-in-out -.8s infinite}.banner-generals__my-races-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:7px 0}.banner-generals__my-races-empty-upper{font-size:16px;font-weight:900;line-height:22px;margin-bottom:4px}.banner-generals__my-races-empty-lower{align-items:center;display:flex;font-size:11px;font-weight:400;line-height:16px}.banner-generals__favorite{fill:var(--white);height:16px;margin:0 2px;stroke:var(--typography_text_color);stroke-width:1.5;width:16px}.banner-generals .banner-table{font-size:12px;font-weight:400;line-height:18px;padding:0 16px;scroll-snap-align:start}.banner-generals .banner-table:not(:last-of-type){border-right:1px solid var(--divider_color)}.banner-generals .banner-table a{color:var(--typography_text_color);display:inline-block;min-width:127px;text-decoration:none;vertical-align:top;white-space:nowrap;width:100%}.banner-generals .banner-header{display:flex;justify-content:space-between}.banner-generals .banner-label{font-weight:900;margin-right:4px;overflow:hidden;text-overflow:ellipsis}.banner-generals .banner-party{border-radius:50%;color:var(--white);display:inline-block;font-weight:900;height:18px;text-align:center;width:18px}.banner-generals .banner-check-container{align-items:center;border-radius:50%;display:flex;height:12px;justify-content:center;width:12px}.banner-generals .banner-check{fill:var(--white);height:var(--banner-check-width);width:var(--banner-check-width)}.banner-generals:has(.banner-generals__content--minimized){pointer-events:none}.banner-generals:has(.banner-generals__content--minimized) .banner-generals__minimize{pointer-events:auto}.banner-generals:has(.banner-generals__content--minimized) .alert-ticker{pointer-events:auto}.banner-generals:after{background-color:#fff;bottom:0;content:"";height:100px;position:fixed;transform:translate3d(0,100%,0);width:100%}.banner-race-table{flex-grow:1;overflow:hidden;width:100%}.banner-race-table__label{display:flex}.banner-race-table__label span{overflow:hidden;text-overflow:ellipsis}.banner-race-table__special{background-color:var(--other-win);border-radius:50%;box-sizing:border-box;color:var(--white);flex-shrink:0;height:18px;margin-left:4px;padding:2px 3px;text-align:center;width:18px}.banner-race-table__content{display:flex;flex-direction:column}.banner-race-table__candidate{display:flex;justify-content:space-between;margin-top:4px}.banner-race-table__party-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-race-table__party{margin-right:4px}.banner-race-table__percent-held{align-items:center;display:flex}.banner-race-table__check{margin-right:4px}.banner-bop{border-right:1px solid var(--divider_color)}.banner-bop__content{margin-top:4px}.banner-bop__candidate{align-items:center;display:flex;gap:4px}.banner-bop__candidate:last-of-type{margin-top:4px}.banner-bop__candidate .banner-bop__total{text-align:right}.banner-bop__pres-bar{flex:1;padding:0 4px}.banner-bop__bar-labels{display:flex;justify-content:space-between;margin-bottom:8px}.banner-bop__bar-label{align-items:center;display:flex}.banner-bop__bar-label.banner--dem>:not(:last-child){margin-right:4px}.banner-bop__bar-label.banner--rep{flex-direction:row-reverse}.banner-bop__bar-label.banner--rep>:not(:first-child){margin-right:4px}.banner-bop__total{font-weight:900}.banner-bop__check-container{display:flex;min-width:var(--banner-check-min-width)}.banner-bop .bar-chart__threshold-icon,.banner-bop .bar-chart__threshold:after,.banner-bop .bar-chart__threshold:before{display:none}.banner--dem .banner-bop__total{color:var(--dem-win)}.banner--dem .banner-check-container,.banner--dem .banner-party{background-color:var(--dem-win)}.banner--rep .banner-bop__total{color:var(--rep-win)}.banner--rep .banner-check-container,.banner--rep .banner-party{background-color:var(--rep-win)}.banner--ind .banner-check-container,.banner--ind .banner-party{background-color:var(--ind-win)}.banner--oth .banner-check-container,.banner--oth .banner-party{background-color:var(--other-win)}@keyframes cycletables{0%,to{opacity:0}8%,92%{opacity:1}}@keyframes frombottom{0%{transform:translateY(120%)}to{transform:translateY(0)}}@media screen and (min-width:375px){.banner-generals__watch{display:block}.banner-generals .banner-table a{min-width:154px}.banner-generals__my-races-empty-upper{font-size:18px;line-height:24px}.banner-generals__favorite{height:20px;margin:0 4px;width:20px}}@media screen and (min-width:768px){.banner-generals__content{min-height:127px}.banner-generals__upper{gap:16px;grid-template-columns:auto 1fr auto;grid-template-rows:1fr}.banner-generals__automated-text{grid-column:2;grid-row:1;text-align:left}.banner-generals__my-races-empty-lower{font-size:14px;line-height:20px}}
