/* starting point: the map legend and its filter */
[data-role="legend-filter"] { margin: 0 0 1rem; max-width: 30rem; }
[data-role="legend-filter"] label { display: block; font: 700 1rem/1.4 var(--mono); margin-bottom: 0.35rem; }
[data-role="legend-filter"] input {
  width: 100%; min-height: 48px; padding: 0.5rem 0.75rem; font: inherit; color: var(--ink);
  border: 2px solid var(--grey); border-radius: 8px; background: var(--canvas);
}
[data-role="legend-count"] { margin: 0.4rem 0 0; color: var(--grey); min-height: 1.6em; }
[data-role="legend"] { margin: 0; display: grid; gap: 0 2.5rem; }
[data-role="legend-entry"] { padding: 0.7rem 0; border-bottom: 1px solid var(--rule); }
[data-role="legend-entry"][hidden] { display: none; }
[data-role="legend-entry"] dt { font-weight: 700; }
[data-role="legend-entry"] dd { margin: 0.15rem 0 0; }
@media (min-width: 48rem) { [data-role="legend"] { grid-template-columns: 1fr 1fr; } }
