.iv-national-navcast-page {
  --iv-navcast-paper: var(--iv-paper, #f3efe6);
  --iv-navcast-ink: var(--iv-ink, #242220);
  --iv-navcast-muted: var(--iv-text-muted, #6e6a63);
  --iv-navcast-rule: color-mix(in srgb, var(--iv-navcast-ink) 22%, transparent);
  --iv-navcast-D: var(--iv-forecast-d-solid, #245c91);
  --iv-navcast-R: var(--iv-forecast-r-solid, #a62237);
  --iv-navcast-coalition: var(--iv-purple, #7952a2);
  --iv-navcast-other: var(--iv-data-gold, #a87d2c);
}
.iv-national-navcast-page a {
  text-decoration: none;
}
.iv-national-navcast-page :is(a, button, input, select):focus-visible {
  outline: none;
  box-shadow: none;
}
.iv-national-navcast-page :is(button, input, select):focus-visible {
  background: color-mix(
    in srgb,
    var(--iv-orange, #ef7621) 16%,
    var(--iv-navcast-paper)
  );
}
.iv-national-navcast-page a:focus-visible {
  color: var(--iv-orange, #ef7621);
}
.iv-national-navcast-page .iv-national-hero {
  padding-bottom: 30px;
}
.iv-national-navcast-page .iv-national-hero-grid {
  grid-template-columns: minmax(0, 1fr);
}
.iv-national-navcast-page .iv-national-section {
  scroll-margin-top: 70px;
}
.iv-national-navcast-page .iv-national-section-nav {
  position: relative;
}
.iv-navcast-mode {
  font:
    500 12px/1.5 "JetBrains Mono",
    monospace;
  margin: 20px 0 0;
}
.iv-navcast-status {
  margin-top: 20px;
  font:
    12px/1.6 "JetBrains Mono",
    monospace;
}
.iv-navcast-map-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: end;
  justify-content: space-between;
  margin: 24px 0 18px;
}
.iv-navcast-key {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  align-items: center;
  font:
    11px/1.5 "JetBrains Mono",
    monospace;
  max-width: 630px;
}
.iv-navcast-key > span {
  white-space: nowrap;
}
.iv-navcast-key
  :is(
    .iv-navcast-key-D,
    .iv-navcast-key-R,
    .iv-navcast-key-coalition,
    .iv-navcast-key-missing,
    .iv-navcast-key-off
  )::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
  margin-right: 5px;
  background: var(--key-color);
  border: 1px solid var(--iv-navcast-rule);
}
.iv-navcast-key-D {
  --key-color: var(--iv-navcast-D);
}
.iv-navcast-key-R {
  --key-color: var(--iv-navcast-R);
}
.iv-navcast-key-coalition {
  --key-color: var(--iv-navcast-coalition);
}
.iv-navcast-key-missing {
  --key-color: color-mix(
    in srgb,
    var(--iv-navcast-ink) 15%,
    var(--iv-navcast-paper)
  );
}
.iv-navcast-key .iv-navcast-key-off::before {
  background: repeating-linear-gradient(
    135deg,
    transparent 0 3px,
    var(--iv-navcast-rule) 3px 4px
  );
}
.iv-navcast-jump,
.iv-navcast-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px;
}
.iv-navcast-jump label,
.iv-navcast-filters label {
  display: grid;
  gap: 5px;
  font:
    11px/1.4 "JetBrains Mono",
    monospace;
}
.iv-national-navcast-page :is(input, select, button) {
  font-family: "JetBrains Mono", monospace;
}
.iv-navcast-jump :is(select, button),
.iv-navcast-filters :is(input, select),
.iv-navcast-status button,
#iv-navcast-races-more,
#iv-navcast-flips-more {
  min-height: 44px;
  border: 1px solid var(--iv-navcast-rule);
  border-radius: 0;
  background: transparent;
  color: inherit;
  padding: 8px 10px;
  font-size: 12px;
}
.iv-navcast-jump button {
  background: var(--iv-ink);
  color: var(--iv-paper);
  cursor: pointer;
}
.iv-navcast-jump button:disabled {
  opacity: 0.45;
  cursor: default;
}
.iv-navcast-jump select {
  max-width: 190px;
}
.iv-navcast-map-wrap {
  max-width: 940px;
  margin: 0 auto;
}
#iv-navcast-map {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.iv-navcast-tile-part {
  cursor: default;
}
a.iv-navcast-tile-part {
  cursor: pointer;
}
.iv-navcast-tile-part rect {
  stroke: var(--iv-navcast-paper);
  stroke-width: 1.2;
  fill: var(--tile-color);
}
.iv-navcast-tile-part:hover rect,
.iv-navcast-tile-part:focus-visible rect {
  opacity: 0.7;
}
.iv-navcast-tile-part:focus-visible {
  outline: none;
}
.iv-navcast-tile-part text {
  font:
    700 13px "JetBrains Mono",
    monospace;
  fill: var(--tile-ink, var(--iv-navcast-ink));
  pointer-events: none;
}
.iv-navcast-tile-name rect {
  fill: var(--iv-navcast-paper);
}
.iv-navcast-tile-name text {
  font:
    700 16px "JetBrains Mono",
    monospace;
  fill: var(--iv-navcast-ink);
}
.iv-navcast-tile-name {
  pointer-events: none;
}
.iv-navcast-tooltip {
  position: fixed;
  z-index: 10010;
  max-width: min(350px, calc(100vw - 24px));
  background: var(--iv-navcast-paper);
  color: var(--iv-navcast-ink);
  border: 1px solid var(--iv-navcast-ink);
  box-shadow: 3px 3px 0
    color-mix(in srgb, var(--iv-navcast-ink) 15%, transparent);
  padding: 12px 14px;
  pointer-events: none;
  font:
    11px/1.55 "JetBrains Mono",
    monospace;
}
.iv-navcast-tooltip strong {
  font-size: 13px;
  display: block;
  margin-bottom: 7px;
}
.iv-navcast-tooltip p {
  margin: 4px 0;
  font: inherit;
}
.iv-navcast-tooltip .iv-navcast-tooltip-note {
  margin-top: 8px;
  color: var(--iv-navcast-muted);
  font-size: 10px;
}
.iv-navcast-power-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 40px;
  margin-top: 22px;
}
.iv-navcast-power-grid h3 {
  font-size: 21px;
  margin: 0 0 12px;
}
.iv-navcast-power-grid ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.iv-navcast-power-grid li {
  border-top: 1px solid var(--iv-navcast-rule);
}
.iv-navcast-power-grid a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 13px 0;
  color: inherit;
  font:
    12px/1.5 "JetBrains Mono",
    monospace;
}
.iv-navcast-power-grid a span small {
  display: block;
  font: inherit;
  color: var(--iv-navcast-muted);
}
.iv-navcast-power-grid b {
  font-size: 17px;
  color: var(--outcome-color, var(--iv-navcast-ink));
}
.iv-navcast-empty {
  color: var(--iv-navcast-muted);
  font:
    12px/1.6 "JetBrains Mono",
    monospace;
  margin: 18px 0;
}
.iv-navcast-chart-wrap {
  overflow-x: auto;
  overscroll-behavior-x: contain;
}
.iv-navcast-chart-wrap svg {
  display: block;
  width: 100%;
  min-width: 650px;
}
.iv-navcast-chart-wrap text {
  fill: var(--iv-navcast-ink);
  font:
    12px "JetBrains Mono",
    monospace;
}
.iv-navcast-chart-wrap .iv-navcast-chart-line {
  stroke: var(--iv-navcast-rule);
  stroke-width: 1;
}
.iv-navcast-chart-wrap .iv-navcast-mark {
  fill: var(--outcome-color);
  stroke: var(--iv-navcast-paper);
  stroke-width: 1;
}
.iv-navcast-chart-wrap a:hover .iv-navcast-mark,
.iv-navcast-chart-wrap a:focus-visible .iv-navcast-mark {
  fill: var(--iv-orange, #ef7621);
}
.iv-navcast-chart-wrap a:focus-visible {
  outline: none;
}
.iv-navcast-close-list {
  margin-top: 20px;
}
.iv-navcast-race-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  font:
    12px/1.6 "JetBrains Mono",
    monospace;
}
.iv-navcast-list-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  column-gap: 24px;
  row-gap: 6px;
  padding: 12px 0;
  border-top: 1px solid var(--iv-navcast-rule);
}
.iv-navcast-list-row > div {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
}
.iv-navcast-race-list a {
  color: var(--iv-navcast-ink);
  font:
    600 15px/1.4 "IBM Plex Sans",
    sans-serif;
}
.iv-navcast-race-list a:hover {
  color: var(--iv-orange, #ef7621);
}
.iv-navcast-race-list small {
  font-size: 10px;
  color: var(--iv-navcast-muted);
}
.iv-navcast-list-row [data-label]::before {
  content: attr(data-label);
  color: var(--iv-navcast-muted);
  font-size: 10px;
}
.iv-navcast-metric {
  font-variant-numeric: tabular-nums;
}
.iv-navcast-call-status {
  color: var(--iv-navcast-muted);
}
.iv-navcast-odds-basis {
  flex-basis: auto;
}
@media (max-width: 620px) {
  .iv-navcast-list-row {
    column-gap: 16px;
    padding: 14px 0;
  }
  .iv-navcast-list-row .iv-navcast-race-title {
    flex-basis: 100%;
  }
}
.iv-navcast-flip-balance {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin: 20px 0;
  font:
    13px/1.5 "JetBrains Mono",
    monospace;
}
.iv-navcast-flip-balance strong {
  font-size: 24px;
}
.iv-navcast-shifts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 24px;
  margin-top: 28px;
}
.iv-navcast-shift h3 {
  font-size: 19px;
  margin: 0 0 12px;
}
.iv-navcast-shift a {
  display: block;
  color: inherit;
  padding: 8px 0;
  border-top: 1px solid var(--iv-navcast-rule);
  font:
    11px/1.65 "JetBrains Mono",
    monospace;
}
.iv-navcast-shift a > span {
  display: block;
  color: var(--iv-navcast-muted);
}
.iv-navcast-shift .iv-navcast-seat-row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--outcome-color);
}
.iv-navcast-seat-row b {
  font-weight: 500;
}
.iv-navcast-filters {
  margin: 24px 0;
}
.iv-navcast-filters label:first-child {
  flex: 1;
  min-width: 200px;
}
.iv-navcast-filters input {
  width: 100%;
  box-sizing: border-box;
  text-align: left;
}
.iv-navcast-gain-values {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 60px;
  margin: 22px 0;
  font:
    12px/1.6 "JetBrains Mono",
    monospace;
}
.iv-navcast-gain-values strong {
  display: block;
  font-size: 24px;
}
#iv-navcast-races-more,
#iv-navcast-flips-more {
  cursor: pointer;
  margin-top: 20px;
}
@media (max-width: 1000px) {
  .iv-navcast-shifts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  .iv-national-navcast-page .iv-national-hero-grid {
    grid-template-columns: 1fr;
  }
  .iv-navcast-key {
    gap: 10px 14px;
    font-size: 10px;
  }
  .iv-navcast-jump {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    width: 100%;
    gap: 10px;
  }
  .iv-navcast-jump select {
    width: 100%;
    max-width: none;
    min-width: 0;
  }
  .iv-navcast-jump button {
    grid-column: 1 / -1;
  }
  .iv-navcast-map-wrap {
    margin: 0;
    overflow-x: auto;
    overscroll-behavior-x: contain;
  }
  #iv-navcast-map {
    min-width: 650px;
  }
  .iv-navcast-map-wrap::before {
    content: "Swipe across the map or use the state selector above.";
    display: block;
    font:
      10px/1.5 "JetBrains Mono",
      monospace;
    margin-bottom: 12px;
  }
  .iv-navcast-power-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .iv-navcast-shifts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 18px;
  }
  .iv-navcast-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .iv-navcast-filters label:first-child {
    grid-column: 1/-1;
    min-width: 0;
  }
  .iv-navcast-filters label:last-child {
    grid-column: 1/-1;
  }
  .iv-navcast-filters select {
    width: 100%;
    min-width: 0;
  }
  .iv-navcast-table {
    min-width: 640px;
  }
  .iv-navcast-gain-values {
    gap: 22px;
  }
  .iv-navcast-gain-values strong {
    font-size: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .iv-national-navcast-page * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

.iv-navcast-key :is(.iv-navcast-key-majority, .iv-navcast-key-super)::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  vertical-align: -2px;
  margin-right: 5px;
  background: var(--key-color);
}
.iv-navcast-key-majority {
  --key-color: #999;
}
.iv-navcast-key-super {
  --key-color: #333;
}
.iv-navcast-key .iv-navcast-key-missing::before {
  border-radius: 5px;
}

.iv-navcast-tooltip {
  max-width: min(390px, calc(100vw - 24px));
  padding: 14px 16px;
  box-shadow: none;
}
.iv-navcast-tooltip strong {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 17px;
  line-height: 1.2;
  margin-bottom: 2px;
}
.iv-navcast-tooltip .iv-navcast-tooltip-office {
  margin: 0 0 12px;
  color: var(--iv-navcast-muted);
}
.iv-navcast-notifications {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 10020;
  width: min(360px, calc(100vw - 32px));
  max-height: 45vh;
  overflow-y: auto;
  display: grid;
  gap: 10px;
}
.iv-navcast-toast {
  padding: 16px;
  background: var(--iv-navcast-paper);
  color: var(--iv-navcast-ink);
  border: 1px solid var(--iv-navcast-rule);
}
.iv-navcast-toast p {
  margin: 0 0 10px;
  font:
    500 14px/1.45 "IBM Plex Sans",
    sans-serif;
}
.iv-navcast-toast button {
  border: 0;
  padding: 6px 0;
  min-height: 36px;
  background: transparent;
  color: var(--iv-navcast-ink);
  cursor: pointer;
  font:
    12px "JetBrains Mono",
    monospace;
}

.iv-navcast-shift .iv-navcast-seat-row {
  display: inline-flex;
  justify-content: flex-start;
  gap: 8px;
  margin-right: 16px;
}

/* Dense inline summaries retain full explanations in the race tooltip. */
.iv-navcast-race-list {
  font-size: 11px;
  line-height: 1.3;
}
.iv-navcast-list-row {
  column-gap: 12px;
  row-gap: 3px;
  padding: 7px 0;
}
.iv-navcast-list-row > div {
  gap: 4px;
}
.iv-navcast-race-list a {
  font-size: 13px;
  line-height: 1.3;
}
.iv-navcast-list-row [data-label]::before {
  font-size: 9px;
}
.iv-navcast-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.iv-navcast-tooltip {
  padding: 4px 6px;
  line-height: 1.2;
}
.iv-navcast-tooltip strong { font-size: 13px; margin-bottom: 0; }
.iv-navcast-tooltip .iv-navcast-tooltip-note { margin: 2px 0 0; }
.iv-navcast-tooltip .iv-navcast-tooltip-office {
  margin-bottom: 6px;
}
.iv-navcast-shift h3 {
  font-size: 16px;
  margin-bottom: 6px;
}
.iv-navcast-shift a {
  padding: 5px 0;
  line-height: 1.35;
}
.iv-navcast-shift .iv-navcast-seat-row {
  gap: 5px;
  margin-right: 10px;
}
.iv-navcast-shifts {
  gap: 18px;
}
@media (max-width: 620px) {
  .iv-navcast-list-row {
    column-gap: 10px;
    padding: 8px 0;
  }
  .iv-navcast-list-row .iv-navcast-race-title {
    flex-basis: auto;
  }
}

.iv-navcast-called-check {
  fill: none;
  stroke: #fff;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}
.iv-navcast-key-check {
  width: 14px;
  height: 14px;
  vertical-align: -2px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Each race is a content-sized chip; the collection wraps across the page. */
.iv-navcast-race-list { flex-direction: row; flex-wrap: wrap; align-items: flex-start; gap: 8px; }
.iv-navcast-list-row { display: inline-flex; flex: 0 1 auto; width: fit-content; max-width: 100%; box-sizing: border-box; border: 1px solid var(--iv-navcast-rule); border-radius: 8px; padding: 8px 10px; column-gap: 10px; row-gap: 4px; background: color-mix(in srgb,var(--iv-navcast-ink) 3%,var(--iv-navcast-paper)); }
.iv-navcast-list-row>div { gap: 4px; }
@media(max-width:620px) { .iv-navcast-list-row { padding: 8px 10px; column-gap: 10px; } }

/* Compact race blocks, matching the national forecast's wrapping summaries. */
.iv-navcast-race-list { gap: 8px 14px; }
.iv-navcast-list-row { display: inline-flex; flex-direction: column; flex: 0 1 calc(25% - 11px); width: calc(25% - 11px); gap: 3px; padding: 7px 0; border: 0; border-top: 1px solid var(--iv-navcast-rule); border-radius: 0; background: transparent; }
.iv-navcast-list-row>.iv-navcast-chip-top { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: baseline; width: 100%; gap: 8px; }
.iv-navcast-chip-top a { min-width: 0; overflow-wrap: anywhere; }
.iv-navcast-chip-top .iv-navcast-metric { flex-shrink: 0; font-weight: 500; }
.iv-navcast-list-row>.iv-navcast-chip-bottom { display: flex; gap: 3px 8px; }
.iv-navcast-chip-bottom b { font-weight: 500; }
.iv-navcast-list-row>.iv-navcast-chip-detail { display: flex; gap: 4px 10px; color: var(--iv-navcast-muted); font-size: 10px; }
@media(max-width:1000px) { .iv-navcast-list-row { flex-basis: calc(33.333% - 10px); width: calc(33.333% - 10px); } }
@media(max-width:700px) { .iv-navcast-list-row { flex-basis: calc(50% - 7px); width: calc(50% - 7px); padding: 7px 0; } }
@media(max-width:380px) { .iv-navcast-list-row { flex-basis: 100%; width: 100%; } }

#iv-navcast-flips .iv-navcast-list-row.is-called { background: color-mix(in srgb,var(--called-color) 12%,var(--iv-navcast-paper)); padding-left: 6px; padding-right: 6px; }

.iv-navcast-tooltip-odds {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(var(--tooltip-columns), auto);
  align-items: baseline;
  gap: 1px 6px;
  margin: 2px 0 0;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.iv-navcast-tooltip-columns,
.iv-navcast-tooltip-party {
  display: contents;
}
.iv-navcast-tooltip-columns span {
  color: var(--iv-navcast-muted);
  font-size: 9px;
}
.iv-navcast-tooltip-party b {
  font: inherit;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.iv-navcast-tooltip-odds span {
  text-align: right;
  white-space: nowrap;
}

#watch-form {
  display: grid;
  grid-template-columns: minmax(10rem, 14rem) minmax(14rem, 23rem);
  align-items: end;
  gap: 12px;
}
#watch-form label { min-width: 0; grid-column: auto; }
#watch-form select { width: 100%; min-width: 0; text-align: left; text-align-last: left; }
#watch-form select, #watch-search { height: 36px; min-height:36px; box-sizing: border-box; }
#watch-items button, #watch-status button {
  border: 1px solid var(--iv-navcast-ink);
  border-radius: 0;
  padding: 8px 14px;
  font: 500 12px/1.3 "JetBrains Mono", monospace;
  cursor: pointer;
}
#watch-items button, #watch-status button { background: transparent; color: var(--iv-navcast-ink); }
#watch-items button:hover, #watch-status button:hover { opacity: .8; }
#watch-status:empty { display: none; }
@media (max-width: 700px) {
  #watch-form { grid-template-columns: minmax(0, 1fr); }
  #watch-form label:first-child { min-width: 0; }
}
#watch-items section, #watch-bulk, #watch-options:not([hidden]) { display:flex; flex-wrap:wrap; align-items:center; gap:4px; }
#watch-items section { margin:10px 0; }
#watch-items h3 { flex-basis:100%; margin:0 0 3px; font-size:13px; }
#watch-items article, #watch-options button, #watch-bulk button {
  display:inline-flex; align-items:center; border:1px solid var(--iv-navcast-rule); border-radius:4px;
  font:500 11px/1.2 "JetBrains Mono",monospace; background:var(--iv-navcast-paper); color:var(--iv-navcast-ink);
}
#watch-items article a, #watch-options button, #watch-bulk button { padding:4px 6px; }
#watch-items article button { padding:2px 5px; border:0; border-left:1px solid var(--iv-navcast-rule); font-size:13px; }
#watch-bulk:not(:empty) { margin:8px 0; }
#watch-bulk button, #watch-options button { cursor:pointer; }
#watch-bulk button:disabled { opacity:.5; cursor:default; }
#watch-options:not([hidden]) { max-height:13rem; overflow:auto; padding:6px 0; }
#watch-options button[aria-pressed="true"], #watch-bulk button[aria-pressed="true"] { color:var(--iv-navcast-paper); background:var(--iv-navcast-ink); }

#race-explorer .iv-section-heading { margin-bottom:8px; }
#watch-form { margin:6px 0; gap:8px; }
#watch-form select, #watch-search { padding:5px 9px; font-size:13px; }
#watch-view:not([hidden]) { display:flex; flex-wrap:wrap; gap:5px 10px; align-items:end; margin:8px 0; }
#watch-view label, #watch-view .watch-office-field { display:grid; gap:5px; font:400 12px/1.4 "JetBrains Mono",monospace; }
#watch-view select { max-width:100%; height:36px; box-sizing:border-box; padding:5px 9px; font-size:13px; color:inherit; background:transparent; border:1px solid var(--iv-navcast-rule); }
#watch-items { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,172px),1fr)); align-items:start; gap:4px 8px; }
#watch-items article { display:block; border:0; border-top:1px solid var(--iv-navcast-ink); border-radius:0; padding:3px 0; min-width:0; }
#watch-items article header, .watch-candidate { display:flex; align-items:baseline; justify-content:space-between; gap:6px; }
#watch-items article header a { font-weight:700; padding:2px 0; }
#watch-items article dl { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px; margin:2px 0; padding:2px 0; }
#watch-items dt, #watch-items small { color:var(--iv-navcast-muted); font-size:10px; }
#watch-items dl > div { text-align:right; }
#watch-items dd { margin:2px 0 0; font-weight:700; }
#watch-items small, #watch-items article>strong { display:block; margin-bottom:4px; }
.watch-candidate { padding:1px 0; }
.watch-candidate[data-party="D"] { color:var(--iv-navcast-D); }
.watch-candidate[data-party="R"] { color:var(--iv-navcast-R); }

#watch-items article header b { margin-left:auto; }
#watch-items article header b[data-party="D"] { color:var(--iv-navcast-D); }
#watch-items article header b[data-party="R"] { color:var(--iv-navcast-R); }

#watch-view-office { display:flex; flex-wrap:wrap; gap:4px; margin:0; padding:0; border:0; min-width:0; max-width:100%; }
#watch-view-office button { height:36px; box-sizing:border-box; padding:5px 9px; font-size:13px; border:1px solid var(--iv-navcast-rule); background:transparent; color:inherit; cursor:pointer; }
#watch-view-office button[aria-pressed="true"] { background:var(--iv-navcast-ink); color:var(--iv-navcast-paper); }

@media (prefers-reduced-motion: no-preference) {
  .iv-navcast-reveal > rect { animation: iv-square-tile 1200ms ease-out var(--reveal-delay, 0ms) backwards; }
  @keyframes iv-square-tile { from { rx: 10px; } to { rx: 0px; } }
}
