/* ============================
   TOP-EVENTS (top-events.html)
   ============================ */

   .lkp-top-events {
    margin-top: 40px;
    padding: 0 16px 20px;
  }
  
  .lkp-top-events-header {
    max-width: 1180px;
    margin: 0 auto 18px;
  }
  
  .lkp-top-events-header h2 {
    font-size: 1.6rem;
    margin-bottom: 4px;
  }
  
  .lkp-top-events-sub {
    font-size: 0.95rem;
    color: var(--lkp-text-muted);
  }
  
  .lkp-top-events-grid {
    max-width: 1180px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
  }
  
  /* Karten */
  
  .lkp-event-card {
    background: var(--lkp-surface);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--lkp-shadow-soft);
    display: flex;
    flex-direction: column;
  }
  
  .lkp-event-card-img {
    width: 100%;
    height: 150px;
    object-fit: cover;
  }
  
  .lkp-event-card-body {
    padding: 10px 14px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  
  .lkp-event-card-title {
    font-size: 1rem;
  }
  
  .lkp-event-card-meta {
    font-size: 0.85rem;
    color: var(--lkp-text-muted);
  }
  
  /* Badges */
  
  .lkp-event-card-badge {
    align-self: flex-start;
    margin-top: 4px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
  }
  
  /* einfache Farben – kannst du an deine Kategorien anpassen */
  .lkp-badge-kultur {
    background: #e0ecff;
    color: #1d4ed8;
  }
  
  .lkp-badge-party {
    background: #fee2e2;
    color: #b91c1c;
  }
  
  .lkp-badge-familie {
    background: #dcfce7;
    color: #166534;
  }
  
  .lkp-badge-markt {
    background: #fef3c7;
    color: #92400e;
  }
  .lkp-badge-sport {
    background: #ffd0d0;
    color: #63053d;
  }
  /* Responsiv */
  
  @media (max-width: 1024px) {
    .lkp-top-events-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  
  @media (max-width: 640px) {
    .lkp-top-events-grid {
      grid-template-columns: 1fr;
    }
  }
  