/* =====================================================
   RHEINGAU GUIDE – Custom CSS (Minimal)
   Nur was Tailwind nicht kann:
   x-cloak, Leaflet-Overrides, Keyframes, SVG-Patterns
   ===================================================== */

/* ── Alpine.js ──────────────────────────────────────── */
[x-cloak] { display: none !important; }

/* ── Leaflet Map Overrides ──────────────────────────── */
.leaflet-popup-content-wrapper {
  border-radius: 12px !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 4px 16px rgba(15,76,92,0.10) !important;
  font-family: 'Fira Sans Condensed', sans-serif !important;
  padding: 0 !important;
  overflow: hidden;
}

.leaflet-popup-content { margin: 0 !important; }
.leaflet-popup-tip-container { display: none !important; }
.leaflet-container { font-family: 'Fira Sans Condensed', sans-serif !important; }

/* ── Animationen ─────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}
.fade-up { animation: fadeUp 0.3s ease both; }

@keyframes heartbeat {
  0%, 100% { transform: scale(1); }
  14%  { transform: scale(1.2); }
  28%  { transform: scale(1); }
  42%  { transform: scale(1.15); }
  56%  { transform: scale(1); }
}
.heartbeat { animation: heartbeat 2.4s ease infinite; }

/* ── Kategorie Badge-Farben ──────────────────────────── */
.badge--weinwanderung { background: #7BA3A1; color: #fff; }
.badge--weinprobe     { background: #0f4c5c; color: #fff; }
.badge--dinner        { background: #0f4c5c; color: #fff; }
.badge--weinmarkt     { background: #AABFBB; color: #1f2937; }
.badge--kultur        { background: #4D5C68; color: #fff; }
.badge--erlebnis      { background: #C8BAA6; color: #1f2937; }
.badge--abend         { background: #0f4c5c; color: #fff; }
.badge--default       { background: #f4f4f5; color: #374151; }

/* ── Utility ─────────────────────────────────────────── */
.sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
