/* Species distribution map panel — inline card + fullscreen viewer. */

.species-map-card { margin: 12px 14px; background: var(--sand-100); border: 1px solid rgba(0,0,0,0.05); border-radius: var(--radius-lg); overflow: hidden; }
.species-map-head { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px 8px; gap: 10px; }
.species-map-title { font-family: 'Fraunces', Georgia, serif; font-size: 0.95rem; font-weight: 600; color: var(--text-primary); }
.species-map-sub { font-size: 0.72rem; color: var(--text-muted); margin-top: 1px; }
.species-map-expand { flex: none; width: 32px; height: 32px; border: 1px solid var(--sand-border); background: #fff; border-radius: var(--radius-sm); cursor: pointer; color: var(--text-secondary); font-size: 0.95rem; }
.species-map-mini { height: 190px; cursor: pointer; background: var(--sand-200); }
.species-map-mini .leaflet-control-container { display: none; }
.species-map-attrib { padding: 7px 14px 11px; font-size: 0.68rem; color: var(--text-muted); line-height: 1.4; }
.species-map-fs { position: fixed; inset: 0; z-index: 9000; background: #fff; display: flex; flex-direction: column; }
.species-map-fs-bar { flex: none; display: flex; align-items: center; gap: 12px; padding: 11px 15px; border-bottom: 1px solid var(--sand-300); background: var(--sand-100); }
.species-map-fs-title { flex: 1; min-width: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 600; }
.species-map-fs-close { flex: none; width: 34px; height: 34px; border: 1px solid var(--sand-border); background: #fff; border-radius: var(--radius-sm); cursor: pointer; font-size: 1.15rem; }
.species-map-fs-wrap { flex: 1; min-height: 0; position: relative; }
.species-map-scrub { flex: none; border-top: 1px solid var(--sand-300); background: var(--sand-100); padding: 10px 15px 13px; }
.species-map-scrub-label { font-family: 'Fraunces', Georgia, serif; font-weight: 600; font-size: 0.95rem; margin-bottom: 7px; }
.species-map-months { display: flex; gap: 3px; }
.species-map-months button { flex: 1; min-width: 0; padding: 6px 0; border: 1px solid var(--sand-border); background: #fff; border-radius: 5px; font: inherit; font-size: 0.68rem; cursor: pointer; color: var(--text-secondary); }
.species-map-months button.on { background: var(--forest-600); border-color: var(--forest-600); color: #fff; font-weight: 600; }

/* Month swap in flight: the tiles come from GBIF's per-request adhoc endpoint
   (~1.3s cold), so the strip goes quiet and the label says so rather than the
   tap looking ignored. The previous month's tiles stay on screen until the new
   ones paint, so the map never blanks. */
.species-map-months[data-busy="1"] button { opacity: 0.55; cursor: progress; }
.species-map-months[data-busy="1"] button.on { opacity: 1; }
