/* NB election super toolbar: shared editorial component, scoped styles. */
:root{--nbe-super-height:82px;--nbe-admin-height:0px;--nbe-super-blue:#005576;--nbe-super-menu-width:var(--nb-global-boxed-width,1380px)}
:root:has(body.admin-bar){--nbe-admin-height:32px}
html body.nbe-super-enabled .nb-header-stack{top:calc(var(--nbe-admin-height) + var(--nbe-super-height))!important}
html:has(body.nbe-super-enabled){scroll-padding-top:calc(var(--nbe-admin-height) + var(--nbe-super-height) + var(--nbe-header-height,160px))!important}
.nbe-super-reserve{height:var(--nbe-super-height);flex:0 0 var(--nbe-super-height);pointer-events:none}
html body .nbe-super{box-sizing:border-box;background:#fff;border:1px solid #d4e7ef;border-top:3px solid #005576;border-radius:16px 0 16px 0;box-shadow:0 5px 18px rgba(0,55,82,.09);color:#153746;font-family:Montserrat,"Segoe UI",Arial,sans-serif;text-align:left;line-height:1.25;margin:0 auto;width:min(calc(100% - 40px),var(--nbe-super-menu-width));isolation:isolate}
html body .nbe-super *{box-sizing:border-box}
html body .nbe-super--fixed{position:fixed;z-index:10000;top:var(--nbe-admin-height);left:var(--nbe-super-left,50%);width:var(--nbe-super-width,min(calc(100% - 40px),var(--nbe-super-menu-width)));transform:var(--nbe-super-transform,translateX(-50%));margin:0;height:var(--nbe-super-height)}
html body .nbe-super-inner{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr) 176px;align-items:center;gap:18px;padding:11px 20px;height:100%}
html body .nbe-super a{text-decoration:none!important;color:inherit!important;background:transparent;box-shadow:none}
html body .nbe-super a:focus-visible,html body .nbe-super button:focus-visible{outline:3px solid #2599d6!important;outline-offset:3px}
html body .nbe-super-brand{min-width:0}
html body .nbe-super-brand>a{display:flex;align-items:center;gap:9px;color:#005576!important;font-size:12px;font-weight:800;letter-spacing:.04em;line-height:1.15}
html body .nbe-super-brand>a b{display:block;font-size:23px;letter-spacing:-.035em;line-height:1.05;margin-top:1px}
html body .nbe-super-ballot{display:grid;place-items:center;flex:0 0 32px;width:32px;height:38px;border-radius:9px;background:#edf7fb;color:#005576}
html body .nbe-super-ballot svg{width:24px;height:24px}
html body .nbe-super-brand>small{display:flex;align-items:center;gap:5px;color:#52707f;font-size:10px;margin-top:7px;white-space:nowrap;letter-spacing:0}
html body .nbe-super-brand i{display:block;width:5px;height:5px;border-radius:50%;background:#087da9}
html body .nbe-super-race{min-width:0;border-left:1px solid #deebf1;padding-left:18px}
html body .nbe-super-race-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:5px}
html body .nbe-super-race-heading>a{display:inline-flex;align-items:center;gap:5px;color:#005576!important;font-size:11px;font-weight:800;white-space:nowrap}
html body .nbe-super-race-heading svg{width:13px;height:13px}
html body .nbe-super-race-heading>span{color:#647e8b;font-size:9px;white-space:nowrap}
html body .nbe-super-candidates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
html body .nbe-super-candidate{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;min-height:44px;border-radius:8px;transition:background-color .18s ease}
html body .nbe-super-candidate:hover{background:#f0f8fb}
html body .nbe-super-avatar{display:block;position:relative;flex:0 0 40px;width:40px;height:40px;overflow:hidden;border-radius:50%;background:#e4f0f5;color:#aac4d0;border:2px solid #fff;box-shadow:0 0 0 1px #d2e5ed}
html body .nbe-super-avatar>svg,html body .nbe-super-avatar>img{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;border:0;object-fit:cover;object-position:center 20%;border-radius:50%}
html body .nbe-super-copy{display:block;min-width:0}
html body .nbe-super-copy>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#163d4e;font-size:12px;font-weight:800;line-height:1.22}
html body .nbe-super-copy>small{display:block;color:#5b7582;font-size:9px;line-height:1.3;margin-top:3px}
html body .nbe-super-percentage{color:#005576;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.04em}
html body .nbe-super-meta{margin:5px 0 0!important;color:#5b7582;font-size:9px;line-height:1.2;min-height:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .nbe-super-action{text-align:center}
html body .nbe-super-cta{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:8px 11px;border:1px solid #005576;border-radius:9px;background:#005576!important;color:#fff!important;font-size:11px;font-weight:800;line-height:1.25;transition:background-color .18s ease}
html body .nbe-super-cta:hover{background:#087da9!important;border-color:#087da9}
html body .nbe-super-cta svg{flex:0 0 17px;width:17px;height:17px}
html body .nbe-super-action>small{display:block;font-size:9px;color:#617b88;margin-top:6px}
html body .nbe-super-tabs{display:none}
.nbe-super-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
html body.nbe-super-enabled .nb-header-stack .nb-site-header,html body.nbe-super-enabled .nb-header-stack .nb-global-nav-wrap{position:relative!important;top:auto!important}
/* At intermediate widths both races remain visible, with a compact heading row. */
@media(min-width:768px) and (max-width:1100px){
 :root{--nbe-super-height:112px}
 html body .nbe-super-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 18px;padding:7px 16px}
 html body .nbe-super-brand{grid-column:1;grid-row:1;display:flex;align-items:center;gap:12px}
 html body .nbe-super-brand>a{font-size:11px;gap:6px}
 html body .nbe-super-brand>a b{display:inline;font-size:15px;margin:0 0 0 4px}
 html body .nbe-super-ballot{height:24px;width:24px;flex-basis:24px}
 html body .nbe-super-ballot svg{width:19px;height:19px}
 html body .nbe-super-brand>small{margin:0;font-size:9px}
 html body .nbe-super-action{grid-column:2;grid-row:1;display:flex;justify-content:flex-end;align-items:center;gap:9px}
 html body .nbe-super-cta{min-height:30px;padding:6px 10px;font-size:10px}
 html body .nbe-super-action>small{margin:0;font-size:9px}
 html body .nbe-super-race{grid-row:2;border-left:0;padding-left:0}
 html body .nbe-super-race[data-nbe-race=governor]{border-left:1px solid #deebf1;padding-left:18px}
}
@media(max-width:767px){
 :root{--nbe-super-height:132px}
 :root:has(body.admin-bar){--nbe-admin-height:46px}
 html body .nbe-super{width:calc(100% - 16px);border-radius:13px 0 13px 0}
 html body .nbe-super-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:28px 28px minmax(0,1fr);gap:4px 7px;padding:6px 10px}
 html body .nbe-super-brand{grid-column:1;grid-row:1}
 html body .nbe-super-brand>a{gap:6px;font-size:10px;letter-spacing:.01em}
 html body .nbe-super-brand>a b{display:inline;font-size:14px;margin-left:3px}
 html body .nbe-super-ballot{width:22px;height:23px;flex-basis:22px;border-radius:6px}
 html body .nbe-super-ballot svg{width:18px;height:18px}
 html body .nbe-super-brand>small{display:none}
 html body .nbe-super-action{grid-column:2;grid-row:1}
 html body .nbe-super-cta{min-height:28px;max-width:160px;padding:5px 8px;border-radius:7px;font-size:9px;gap:5px}
 html body .nbe-super-cta svg{width:13px;height:13px;flex-basis:13px}
 html body .nbe-super-action>small{display:none}
 html body .nbe-super-tabs{grid-column:1/-1;grid-row:2;display:flex;gap:4px;border-bottom:1px solid #dfebf1;height:28px}
 html body .nbe-super-tabs>button{appearance:none;display:block;border:0;border-bottom:2px solid transparent;border-radius:0;margin:0;padding:2px 10px;background:transparent;color:#5b7582;font:700 11px/1.2 Montserrat,Arial,sans-serif;box-shadow:none;cursor:pointer;min-height:26px}
 html body .nbe-super-tabs>button[aria-selected=true]{color:#005576;border-bottom-color:#087da9;background:#f2f8fb;border-radius:5px 5px 0 0}
 html body .nbe-super-race{grid-row:3;grid-column:1/-1;border:0;padding:0}
 html body .nbe-super-race[data-active=false]{display:none}
 html body .nbe-super-race-heading{display:none}
 html body .nbe-super-candidates{gap:10px}
 html body .nbe-super-candidate{grid-template-columns:38px minmax(0,1fr) auto;gap:6px;min-height:43px}
 html body .nbe-super-avatar{width:36px;height:36px;flex-basis:36px}
 html body .nbe-super-copy>strong{font-size:11px}
 html body .nbe-super-copy>small{font-size:9px}
 html body .nbe-super-percentage{font-size:17px}
 html body .nbe-super-meta{font-size:9px;margin-top:5px!important}
 html body .nbe-super-race[hidden]{display:none!important}
}
@media(prefers-reduced-motion:reduce){html body .nbe-super *,html body.nbe-super-enabled .nb-header-stack{transition:none!important;animation:none!important}}

html body .nbe-super .nbe-super-cta,html body .nbe-super .nbe-super-cta span,html body .nbe-super .nbe-super-cta svg{color:#fff!important;-webkit-text-fill-color:#fff!important}

/* Position only: after the header/menu and before the top creative. */
html body .nbe-super--below-menu{position:relative;inset:auto;transform:none;height:var(--nbe-super-height);width:var(--nbe-super-width,min(calc(100% - 40px),var(--nbe-super-menu-width)));margin:12px auto 0}

/* Compact status on the office heading; original cards preserved. */
html body .nbe-super-inner{padding-block:8px}
html body .nbe-super-race-heading .nbe-super-meta{flex:1;min-width:0;text-align:center;margin:0!important;line-height:1.2;min-height:0}
html body .nbe-super-action>small{margin:0 0 5px}
@media(min-width:768px) and (max-width:1100px){html body .nbe-super-inner{padding-block:6px}html body .nbe-super-action>small{margin:0}}
@media(max-width:767px){html body .nbe-super-inner{padding-block:5px;grid-template-rows:28px 28px minmax(0,1fr)}html body .nbe-super-race-heading{display:flex;margin-bottom:3px}html body .nbe-super-race-heading>a,html body .nbe-super-race-heading>[data-nbe-state]{display:none}html body .nbe-super-race-heading .nbe-super-meta{text-align:left;font-size:9px}html body .nbe-super-action{display:flex;flex-direction:column-reverse;align-items:flex-end;gap:1px}html body .nbe-super-action>small{display:block;margin:0;font-size:8px}html body .nbe-super-action>.nbe-super-cta{min-height:23px;padding-block:4px}html body .nbe-super-avatar{width:32px;height:32px}html body .nbe-super-candidate{min-height:36px;grid-template-columns:34px minmax(0,1fr) auto}}

/* Keep the election bar with the sticky header, in the same position below its menu. */
html body .nb-header-stack>.nbe-super--below-menu{order:100!important;flex-shrink:0!important;margin:12px auto 0!important}
html:has(body.nbe-below-menu){scroll-padding-top:calc(var(--nbe-header-height,280px) + var(--nbe-admin-height,0px))!important}

html body.nbe-below-menu .nb-header-stack.nb-header-stack:has(>.nbe-super--below-menu){height:auto!important;min-height:0!important;max-height:none!important}
