/*
  CM Election Predictions — House primary detail extras only.
  The shared card/map/results visual contract is owned by
  /assets/css/election-night-primary-detail-shared.css via .cmep-primary-detail-surface,
  #resultsCard, #resultsTitle, #resultsRefreshBtn, and #resultsMount.
*/

body.en-primary-house-detail{
  --cmep-call-d:var(--solid-d,#0076ba);
  --cmep-call-r:var(--solid-r,#ee220c);
  --cmep-call-o:#64748b;
}

/* House-only hero district overlay. */
body.en-primary-house-detail .state-hero .hero-district-fill-path{
  fill:#6b7280 !important;
  opacity:.48 !important;
  filter:drop-shadow(0 0 7px rgba(100,116,139,.22)) drop-shadow(0 1px 2px rgba(15,23,42,.18)) !important;
}
body.en-primary-house-detail .state-hero .hero-district-outline-path{
  fill:none !important;
  stroke:#111827 !important;
  stroke-width:1.95 !important;
  stroke-linejoin:round !important;
  stroke-linecap:round !important;
  opacity:.98 !important;
}
html[data-theme="dark"] body.en-primary-house-detail .state-hero .hero-district-fill-path,
html.dark body.en-primary-house-detail .state-hero .hero-district-fill-path,
body.dark.en-primary-house-detail .state-hero .hero-district-fill-path,
body.dark-mode.en-primary-house-detail .state-hero .hero-district-fill-path,
body.theme-dark.en-primary-house-detail .state-hero .hero-district-fill-path{
  fill:#929292 !important;
  opacity:.68 !important;
  filter:drop-shadow(0 0 9px rgba(146,146,146,.34)) drop-shadow(0 1px 2px rgba(0,0,0,.42)) !important;
}
html[data-theme="dark"] body.en-primary-house-detail .state-hero .hero-district-outline-path,
html.dark body.en-primary-house-detail .state-hero .hero-district-outline-path,
body.dark.en-primary-house-detail .state-hero .hero-district-outline-path,
body.dark-mode.en-primary-house-detail .state-hero .hero-district-outline-path,
body.theme-dark.en-primary-house-detail .state-hero .hero-district-outline-path{
  fill:none !important;
  stroke:#b8bec8 !important;
  opacity:1 !important;
  stroke-width:2.1 !important;
  filter:drop-shadow(0 0 8px rgba(184,190,200,.28)) !important;
}
@media (prefers-color-scheme:dark){
  html:not([data-theme="light"]) body.en-primary-house-detail .state-hero .hero-district-fill-path{
    fill:#929292 !important;
    opacity:.68 !important;
    filter:drop-shadow(0 0 9px rgba(146,146,146,.34)) drop-shadow(0 1px 2px rgba(0,0,0,.42)) !important;
  }
  html:not([data-theme="light"]) body.en-primary-house-detail .state-hero .hero-district-outline-path{
    fill:none !important;
    stroke:#b8bec8 !important;
    opacity:1 !important;
    stroke-width:2.1 !important;
    filter:drop-shadow(0 0 8px rgba(184,190,200,.28)) !important;
  }
}

/* House-only district tile projection rendering, used only if district tiles are present. */
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile)[data-cme-projected-tile]{
  position:relative !important;
  overflow:hidden !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(2,6,23,.20), inset 0 1px 0 rgba(255,255,255,.22) !important;
}
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile).called-d[data-cme-projected-tile]{
  background:linear-gradient(135deg, color-mix(in srgb, var(--cmep-call-d) 94%, #fff 6%), color-mix(in srgb, var(--cmep-call-d) 82%, #000 18%)) !important;
}
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile).called-r[data-cme-projected-tile]{
  background:linear-gradient(135deg, color-mix(in srgb, var(--cmep-call-r) 94%, #fff 6%), color-mix(in srgb, var(--cmep-call-r) 82%, #000 18%)) !important;
}
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile).called-o[data-cme-projected-tile],
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile)[data-cme-projected-tile]:not(.called-d):not(.called-r){
  background:linear-gradient(135deg, color-mix(in srgb, var(--cmep-call-o) 94%, #fff 6%), color-mix(in srgb, var(--cmep-call-o) 78%, #000 22%)) !important;
}
body.en-primary-house-detail #view-house :is(.house-district-tile,.district-tile)[data-cme-projected-tile] :is(.district-name,.district-meta,.district-submeta,.district-status){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body.en-primary-house-detail .cme-house-tile-glyph{
  display:inline-grid !important;
  place-items:center !important;
  width:1.5rem !important;
  height:1.5rem !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.22) !important;
  border:1px solid rgba(255,255,255,.40) !important;
  color:#fff !important;
  font-weight:950 !important;
  line-height:1 !important;
  margin-right:.45rem !important;
  flex:0 0 auto !important;
}
body.en-primary-house-detail .cme-house-tile-copy{ display:flex !important; flex-direction:column !important; gap:.13rem !important; min-width:0 !important; }
body.en-primary-house-detail .cme-house-tile-label,
body.en-primary-house-detail #view-house .cme-house-advancer-action{
  font-size:.68rem !important;
  line-height:1 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
  color:rgba(255,255,255,.82) !important;
}
body.en-primary-house-detail .cme-house-tile-name,
body.en-primary-house-detail #view-house .cme-house-advancer .cme-house-tile-name{
  font-weight:950 !important;
  letter-spacing:-.035em !important;
  line-height:1.05 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body.en-primary-house-detail .cme-house-name-part{ display:inline-block !important; white-space:nowrap !important; }
body.en-primary-house-detail #view-house .cme-house-tile-name-list{
  display:flex !important;
  flex-direction:column !important;
  gap:.35rem !important;
  min-width:0 !important;
}
body.en-primary-house-detail #view-house .cme-house-advancer{
  display:flex !important;
  align-items:baseline !important;
  gap:.35rem !important;
  min-width:0 !important;
}
