/* Maps page styles: focused, minimal, leveraging base.css components */

.page-hero {
  margin-top: var(--space-8);
  margin-bottom: var(--space-6);
  padding: var(--space-8) var(--space-6);
  background: radial-gradient(1200px 400px at 10% 10%, var(--color-secondary-glow), transparent),
              radial-gradient(1200px 400px at 90% 10%, var(--color-accent-glow), transparent);
  border: 1px solid var(--color-neutral-700);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-neon-cyan);
}

.page-hero .hero-inner {
  max-width: 960px;
}

.page-hero .hero-cta { display: flex; gap: var(--space-3); flex-wrap: wrap; }

/* Filters */
.filters-bar {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}

@media (min-width: 768px) {
  .filters-bar { grid-template-columns: 1.2fr 0.8fr 0.8fr auto; align-items: end; }
}

.form-actions { display: flex; justify-content: flex-start; }

/* Map cards */
.map-card { display: flex; flex-direction: column; height: 100%; }

.map-figure { border-radius: var(--radius-xl); overflow: hidden; border: 1px solid var(--color-neutral-700); }

.map-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: var(--color-neutral-900);
}

.map-meta { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-4); }

/* Minor spacing tweaks */
.card .card-header { margin-bottom: var(--space-3); }

/* Results helpers */
#no-results { margin-top: var(--space-4); }

/* Accessibility contrast adjustments for badges on dark backgrounds */
.badge-primary, .badge-secondary, .badge-success, .badge-warning, .badge-danger { filter: saturate(1.1); }
