/* Explanatory content stays outside the fixed-height Leaflet/Windy stack. */
.kh-basemap-control { display: flex; align-items: center; gap: .6rem; min-width: 0; }
.kh-basemap-control label { margin: 0; white-space: nowrap; }
.kh-basemap-control select { width: min(310px, 100%); min-width: 0; }
#kh-wind-stack.kh-wind-active:not(.kh-wind-syncing) .kh-basemap-label-pane { opacity: 0; }
#kh-map-card .kh-village-panel {
    display: block;
    position: relative;
    clear: both;
    width: 100%;
    min-width: 0;
    height: auto;
    box-sizing: border-box;
    background: rgba(255, 255, 255, .65);
    line-height: 1.65;
}
#kh-map-card .kh-village-panel h5 { margin: 0 0 .85rem; line-height: 1.4; }
#kh-map-card .kh-village-panel p { margin: 0 0 .85rem; }
#kh-map-card .kh-village-panel p,
#kh-map-card .kh-village-status { overflow-wrap: anywhere; }
#kh-map-card .kh-village-status { padding: .65rem .85rem; background: rgba(100, 116, 139, .08); border-radius: .5rem; }
#kh-map-card .kh-village-table { max-width: 100%; max-height: 300px; overflow: auto; overscroll-behavior: contain; }
#kh-map-card .kh-village-table table { width: 100%; min-width: 520px; margin: 0; }
#kh-map-card .kh-village-table th,
#kh-map-card .kh-village-table td { vertical-align: top; padding: .7rem .6rem; line-height: 1.5; }
#kh-map-card .kh-village-table th { font-size: .85rem; }
#kh-map-card .kh-village-table .btn-link { white-space: normal; text-align: left; }
#kh-map-card > .card-body > .kh-church-legend { line-height: 1.7; }
#kh-map-card > .card-body > #kh-church-status { line-height: 1.65; }
@media (max-width: 575px) {
    .kh-basemap-control { width: 100%; }
    .kh-basemap-control select { flex: 1; width: auto; }
    #kh-map-card .kh-village-panel { padding: 1rem !important; }
    #kh-map-card .kh-village-panel h5 { font-size: 1.1rem; }
}
