/* v4 Wahlkreise-Karte — ein Bundesland als SVG, WK-farbig nach Sieger */

.v4-wk-karte-wrap{
  background:var(--gray-50);
  border:1px solid var(--gray-200);
  padding:1rem;
  margin:.8rem 0 1rem;
}
.v4-wk-karte-svg{
  width:100%;
  height:auto;
  max-height:520px;
  display:block;
}
.v4-wk-karte-path{
  transition:fill-opacity .12s ease, stroke .12s ease, stroke-width .12s ease;
}
.v4-wk-karte-path:hover{
  fill-opacity:1 !important;
  stroke:var(--black);
  stroke-width:1.6;
}
.v4-wk-karte-path.is-flip{
  stroke:#c02632;
  stroke-width:1.4;
  stroke-dasharray:3,2;
}
.v4-wk-karte-empty{
  font-family:var(--font-d);
  font-size:var(--fs-sm);
  color:var(--gray-500);
  text-align:center;
  padding:2rem;
}

.v4-wk-karte-legend{
  display:flex;
  gap:1rem;
  flex-wrap:wrap;
  align-items:center;
  margin-top:.6rem;
  padding-top:.6rem;
  border-top:1px solid var(--gray-200);
  font-family:var(--font-d);
  font-size:var(--fs-xxs);
  color:var(--gray-600);
}
.v4-wk-karte-legend-item{
  display:inline-flex;
  align-items:center;
  gap:.3rem;
}
.v4-wk-karte-legend-dot{
  display:inline-block;
  width:10px; height:10px;
  border-radius:50%;
}

/* Tooltip — dunkler Kasten, positioniert in body (position:absolute, fixed-style coords) */
.v4-wk-karte-tooltip{
  position:absolute;
  pointer-events:none;
  background:rgba(10,10,10,.95);
  color:#fff;
  padding:.6rem .75rem;
  font-family:var(--font-d);
  font-size:var(--fs-xs);
  line-height:1.4;
  border-radius:2px;
  z-index:1000;
  min-width:200px;
  max-width:280px;
  box-shadow:0 4px 16px rgba(0,0,0,.25);
}
.v4-wk-karte-tt-head{
  font-weight:700;
  margin-bottom:.4rem;
  padding-bottom:.35rem;
  border-bottom:1px solid rgba(255,255,255,.2);
}
.v4-wk-karte-tt-flip{
  display:inline-block;
  font-size:var(--fs-xxs);
  color:#ff6b6b;
  letter-spacing:.1em;
  margin-left:.4rem;
}
.v4-wk-karte-tt-row{
  display:grid;
  grid-template-columns:10px 1fr auto;
  gap:.4rem;
  align-items:baseline;
  padding:.1rem 0;
}
.v4-wk-karte-tt-dot{
  width:8px; height:8px; border-radius:50%;
  align-self:center;
}
.v4-wk-karte-tt-party{
  color:rgba(255,255,255,.88);
}
.v4-wk-karte-tt-pct{
  font-weight:700;
  font-variant-numeric:tabular-nums;
  text-align:right;
}
.v4-wk-karte-tt-foot{
  font-size:var(--fs-xxs);
  color:rgba(255,255,255,.6);
  margin-top:.35rem;
  padding-top:.3rem;
  border-top:1px solid rgba(255,255,255,.12);
}
