/* HanAnHua v158 — independent responsive captions for ALL map filters. */
.taiwan-map-final-stage .han-map-label-overlay{
  position:absolute;inset:0;z-index:9;overflow:hidden;pointer-events:none;
}
.taiwan-map-final-stage .han-map-label-lines{
  position:absolute;inset:0;width:100%;height:100%;pointer-events:none;
}
.taiwan-map-final-stage .han-map-label-lines line{
  stroke:#ffffff;stroke-width:2.8;stroke-linecap:round;
  paint-order:stroke;
  filter:drop-shadow(0 1px 1px rgba(8,35,53,.6));
}
.taiwan-map-final-stage .han-map-city-label{
  position:absolute;z-index:2;display:block;box-sizing:border-box;
  width:max-content;min-width:0;max-width:180px;
  padding:6px 10px 7px;
  border:2px solid rgba(255,255,255,.98);border-radius:10px;
  color:#153d5e;background:#fff;
  font-size:clamp(11px,1.0vw,15px);font-weight:900;
  font-family:inherit;line-height:1.12;letter-spacing:-.015em;
  box-shadow:0 3px 9px rgba(12,49,73,.22);
  white-space:normal;overflow-wrap:normal;word-break:normal;
  text-align:center;direction:ltr;pointer-events:none;
}
/* High specificity is required: partners-v150.css and the v109 bundle
   previously forced native labels back on with display:block!important.
   Keep ONLY the collision-aware overlay's label for each visible city. */
.taiwan-map-final-stage.han-map-labels-enhanced[data-active-map-filter] .taiwan-map-hotspots .taiwan-map-hotspot .map-city-label,
.taiwan-map-final-stage.han-map-labels-enhanced[data-active-map-filter="all"] .taiwan-map-hotspots .taiwan-map-hotspot.map-group-all .map-city-label,
.taiwan-map-final-stage.han-map-labels-enhanced .map-city-shared-label{
  display:none!important;
}
/* Popup must remain above captions, never behind them. */
.taiwan-map-final-stage .taiwan-map-tooltip{z-index:20;}
@media(max-width:700px){
  .taiwan-map-final-stage .han-map-city-label{
    padding:4px 7px 5px;border-width:1.5px;border-radius:7px;
    font-size:clamp(9px,1.7vw,11px);line-height:1.08;
  }
  .taiwan-map-final-stage .han-map-label-lines line{stroke-width:2;}
}
@media(max-width:400px){
  .taiwan-map-final-stage .han-map-city-label{padding:3px 5px 4px;font-size:9px;}
}
@media(prefers-reduced-motion:reduce){
  .taiwan-map-final-stage .han-map-city-label{transition:none;}
}
