/* ==========================================================================
   Shared responsive "feed card" language.
   Extracted from assets/css/homepage.css (S1-06G event card) so it can be
   reused outside the homepage — currently: homepage mobile feed AND the
   mobile "Evenimente în Brăila" list (MOB-EVT-01), inclusiv varianta 2026
   poster + glass din renderHomeFeedEventCard(). Componenta rămâne unică,
   astfel încât toate suprafețele mobile primesc același markup și stil.

   Cardurile de eveniment și locație, împreună cu acțiunile lor, au aici un
   singur contract pentru telefon, tabletă și desktop. Promoția își păstrează
   componenta comună în promotions-list.css.
   ========================================================================== */

:root {
  --mobile-page-gutter: 12px;
  --mobile-card-radius: 22px;
  --mobile-chip-radius: 999px;
  --mobile-standard-gap: 12px;
}

/* FV.1/FV.2 — contractul vizual comun și caruselul media. */
.home-visual-card {
  --home-visual-accent: var(--primary-color, #6d4eea);
}

.home-visual-carousel {
  position: relative;
  min-width: 0;
  isolation: isolate;
}

.home-visual-carousel__track {
  display: flex;
  width: 100%;
  height: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y;
}

.home-visual-carousel__track::-webkit-scrollbar { display: none; }

.home-visual-carousel__slide {
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.home-visual-carousel__slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-visual-carousel__button {
  position: absolute;
  z-index: 7;
  top: 50%;
  display: none;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 50%;
  color: #fff;
  background: rgba(15,23,42,.62);
  box-shadow: 0 4px 14px rgba(15,23,42,.2);
  transform: translateY(-50%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.home-visual-carousel:hover .home-visual-carousel__button,
.home-visual-carousel:focus-within .home-visual-carousel__button { display: grid; }
.home-visual-carousel__button.is-prev { left: 8px; }
.home-visual-carousel__button.is-next { right: 8px; }
.home-visual-carousel__button .lucide { width: 18px; height: 18px; }

.home-visual-carousel__dots {
  position: absolute;
  z-index: 7;
  left: 50%;
  bottom: 9px;
  display: flex;
  gap: 5px;
  padding: 5px 7px;
  border-radius: 999px;
  background: rgba(15,23,42,.48);
  transform: translateX(-50%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.home-visual-carousel__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255,255,255,.55);
  transition: width 160ms ease, background-color 160ms ease;
}
.home-visual-carousel__dot.is-active { width: 14px; border-radius: 999px; background: #fff; }

.home-visual-reason {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  padding: 5px 9px;
  border: 1px solid rgba(255,255,255,.52);
  border-radius: 999px;
  color: #fff;
  background: rgba(76,29,149,.74);
  font-size: .68rem;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 4px 12px rgba(30,27,75,.14);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.home-visual-reason .lucide { width: 13px; height: 13px; }
.home-visual-reason--starting_soon { background: rgba(190,24,93,.82); }
.home-visual-reason--weekend { background: rgba(124,58,237,.82); }
.home-visual-reason--new { background: rgba(5,150,105,.84); }

.home-feed-place-media > .home-visual-reason {
  position: absolute;
  z-index: 7;
  top: 12px;
  bottom: auto;
  left: 12px;
  right: auto;
  max-width: calc(50% - 18px);
}

/* Motivele contextuale lasă liberă partea de sus a afișelor. */
.event-card__poster > .home-visual-reason {
  position: absolute;
  z-index: 7;
  top: auto;
  bottom: 10px;
  left: 10px;
  right: auto;
  max-width: calc(100% - 20px);
  white-space: nowrap;
}

/* Progresul caruselului stă deasupra etichetei, inclusiv pe postere înguste.
   SOLD OUT rămâne separat, în colțul de sus. */
.event-card__poster > .home-visual-reason:not([hidden]) ~ .home-visual-carousel__dots {
  bottom: 42px;
}

/* La locații, indicatorul caruselului stă deasupra benzii cu rating și
   program. Astfel nu poate acoperi numărul de recenzii pe ecranele înguste. */
.home-feed-place-media.has-media-footer .home-visual-carousel__dots {
  bottom: 52px;
}

@media (min-width: 0px) {
  .home-feed-card {
    position: relative;
    background: #ffffff;
    border-radius: 22px;
    padding: 8px;
    border: 2px solid transparent;
    box-shadow: 0 8px 24px rgba(20, 16, 40, 0.08);
  }
  /* Evenimente/locații promovate (is_featured/is_hype): bordură cu fade auriu
     (nu o linie solidă) — tehnica standard „gradient border": două straturi
     de fundal, unul alb tăiat la padding-box (interiorul cardului), unul
     gradient auriu tăiat la border-box (doar zona bordurii). Aceleași culori
     aur folosite deja pentru stelele de rating (.home-feed-star.filled). */
  /* Evenimente/locații/promoții promovate (is_featured/is_hype): bordură cu fade auriu rafinat și halo ambiental */
  .home-feed-card.is-promoted {
    border: 2px solid transparent !important;
    background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(135deg, rgba(253, 230, 138, 0.75), rgba(245, 166, 35, 0.55), rgba(217, 119, 6, 0.45), rgba(245, 166, 35, 0.55)) !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    box-shadow: 0 0 16px rgba(245, 166, 35, 0.22), 0 0 2px rgba(245, 166, 35, 0.35), 0 8px 24px rgba(20, 16, 40, 0.08) !important;
  }
  .home-feed-card-main {
    display: block;
    text-decoration: none;
    color: inherit;
  }
  .home-feed-card-main:focus-visible {
    outline: 2px solid var(--primary-color, #6366f1);
    outline-offset: 3px;
    border-radius: 14px;
  }
  .home-feed-promoted-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    flex: 0 0 auto;
    margin: 2px 0 0;
    padding: 4px 10px;
    border: 1px solid rgba(245, 158, 11, 0.35);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.94);
    color: #b45309;
    font-size: 0.61rem;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    box-shadow: 0 3px 10px rgba(180, 83, 9, 0.12);
  }
  /* La evenimente, marcajul comercial stă peste poster, nu lângă titlu. */
  .home-feed-card.home-feed-event .home-feed-poster-promoted {
    position: absolute;
    right: 8px;
    bottom: 8px;
    z-index: 4;
    margin: 0;
    border-color: rgba(245, 158, 11, 0.4);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 4px 14px rgba(120, 53, 15, 0.18);
    backdrop-filter: blur(10px) saturate(130%);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
  }
  .home-feed-title-row {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    min-width: 0;
  }

  /* Card locație cu imagine full-bleed pe lățimea cardului */
  .home-feed-card.home-feed-place {
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 20px !important;
    border: 1.5px solid var(--color-border, rgba(226, 232, 240, 0.8));
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
    background: #ffffff;
  }
  .home-feed-card.home-feed-place.is-promoted {
    border: 2px solid transparent !important;
    background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(135deg, rgba(253, 230, 138, 0.75), rgba(245, 166, 35, 0.55), rgba(217, 119, 6, 0.45), rgba(245, 166, 35, 0.55)) !important;
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
    box-shadow: 0 0 16px rgba(245, 166, 35, 0.25), 0 0 2px rgba(245, 166, 35, 0.35), 0 8px 24px rgba(20, 16, 40, 0.08) !important;
  }
  .home-feed-card.home-feed-place .home-feed-place-media {
    width: 100% !important;
    height: 215px !important;
    border-radius: 18px 18px 0 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #0f172a;
  }
  .home-feed-card.home-feed-place .home-feed-place-body {
    display: block;
    padding: 14px 16px 8px !important;
  }
  .home-feed-card.home-feed-place .home-feed-title {
    margin: 0 0 4px 0 !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
  }
  .home-feed-card.home-feed-place .home-feed-place-type-tag {
    margin: 0 0 6px 0 !important;
  }
  .home-feed-card.home-feed-place .home-feed-place-vibes {
    margin: 2px 0 0 !important;
  }
  .home-feed-card.home-feed-place .home-feed-place-desc {
    margin: 3px 0 0 !important;
  }
  .home-feed-card.home-feed-place .home-feed-actions {
    padding: 6px 14px 14px !important;
    margin: 0 !important;
  }

  .home-feed-card.home-feed-place .home-feed-title-row {
    align-items: center;
    margin-bottom: 4px;
  }
  .home-feed-card.home-feed-place .home-feed-title-row .home-feed-title {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0 !important;
  }
  .home-feed-title {
    margin: 10px 4px 0;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.25;
    color: #0f172a;
  }
  /* Categoria este metadată textuală, nu acțiune sau etichetă interactivă. */
  .home-feed-place-type-tag {
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: calc(100% - 8px);
    margin: 5px 4px 0;
    font-size: 0.72rem;
    font-weight: 750;
    text-transform: none;
    letter-spacing: 0;
    color: #4c1d95;
  }
  .home-feed-place-type-tag .lucide {
    flex: 0 0 auto;
  }
  .home-feed-place-type-text {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home-feed-place-type-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
  }
  .home-feed-place-type-item .lucide {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
  }
  .home-feed-place-vibes {
    display: block;
    min-width: 0;
    width: 100%;
    overflow: hidden;
    margin: 3px 4px 0;
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 550;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home-feed-place-desc.has-vibes {
    -webkit-line-clamp: 1;
  }
  /* Extrasul locației folosește contractul tipografic comun cu snippetul
     reviewului; marginile și numărul de rânduri rămân specifice cardului. */
  .home-feed-desc {
    margin: 5px 4px 0;
    font-family: var(--content-snippet-font-family);
    font-size: var(--content-snippet-font-size);
    font-weight: var(--content-snippet-font-weight);
    letter-spacing: var(--content-snippet-letter-spacing);
    line-height: var(--content-snippet-line-height);
    color: var(--color-text-secondary, #475569);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .home-feed-place-type-tag + .home-feed-desc {
    margin-top: 3px;
  }

  /* Card locație */
  .home-feed-place-media {
    position: relative;
    display: block;
    height: 210px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: inset 0 0 0 1px rgba(20, 16, 40, 0.05);
  }
  .home-feed-place-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
  }
  .home-feed-chip {
    position: absolute;
    top: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.72rem;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(20, 20, 20, 0.6);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.14);
  }
  .home-feed-chip .lucide {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
    color: #ffffff !important;
  }
  .home-feed-chip-context { right: 12px; }
  /* Bara de jos a fotografiei: rating în stânga, status în dreapta. Cele două
     pastile erau poziționate absolut, fiecare pe colțul ei — sub 390px lățime
     se atingeau, iar la 360px „Deschis acum" acoperea numărul de recenzii.
     Puse în același rând flex, spațiul se împarte, nu se suprapune. */
  .home-feed-media-footer {
    position: absolute;
    left: 14px;
    right: 12px;
    bottom: 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }
  .home-feed-rating {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    padding: 6px 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    background: rgba(31, 24, 55, 0.7);
    color: #ffffff;
    box-shadow: 0 3px 10px rgba(15, 12, 30, 0.22);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
  }
  /* Nota și stelele nu se comprimă niciodată; dacă spațiul se termină, doar
     numărul de recenzii se scurtează cu „…" (ultima plasă de siguranță, pentru
     texte neobișnuit de lungi). */
  .home-feed-rating-num {
    font-size: 1.1rem;
    font-weight: 800;
    line-height: 1;
    flex: 0 0 auto;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
  }
  .home-feed-stars {
    display: inline-flex;
    gap: 1px;
    flex: 0 0 auto;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4));
  }
  .home-feed-star { width: 14px; height: 14px; fill: rgba(255, 255, 255, 0.5); }
  .home-feed-star.filled { fill: #f5a623; }
  .home-feed-rating-count {
    font-size: 0.74rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.92);
    line-height: 1;
    text-shadow: none;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  /* Indicator "Deschis acum"/"Închis acum": glass închis (ca .home-feed-chip),
     nu o pastilă plată — gradient discret pe culoarea de stare + contur fin +
     glow colorat, plus un puls animat pe punct doar când e deschis (efect
     „live", oprit la prefers-reduced-motion mai jos). */
  .home-feed-open {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    /* Rămâne lipit de dreapta și când locația n-are rating (singurul copil). */
    margin-left: auto;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: #ffffff;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    backdrop-filter: blur(6px) saturate(160%);
    -webkit-backdrop-filter: blur(6px) saturate(160%);
  }
  .home-feed-open.is-open {
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.85), rgba(4, 120, 87, 0.85));
    box-shadow: 0 3px 12px rgba(22, 163, 74, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.2);
  }
  .home-feed-open.is-closed {
    background: linear-gradient(135deg, rgba(232, 134, 46, 0.85), rgba(194, 89, 24, 0.85));
    box-shadow: 0 3px 12px rgba(232, 134, 46, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.16);
  }
  .home-feed-open-dot {
    position: relative;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ffffff;
  }
  .home-feed-open.is-open .home-feed-open-dot::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #ffffff;
    animation: homeFeedOpenPulse 2.2s ease-out infinite;
  }
  @keyframes homeFeedOpenPulse {
    0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.55); opacity: 1; }
    70% { box-shadow: 0 0 0 7px rgba(255, 255, 255, 0); opacity: 0; }
    100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); opacity: 0; }
  }


  /* Rând de acțiuni (surori ale linkului principal) */
  .home-feed-actions {
    display: flex;
    gap: 6px;
    margin-top: 10px;
  }
  .home-feed-actions-group {
    flex: 1 1 0;
    display: flex;
    gap: 6px;
  }
  .home-feed-actions-group .home-feed-action {
    padding: 0 !important;
  }
  .home-feed-action {
    flex: 1 1 0;
    min-height: var(--touch-target-min, 44px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 8px;
    border-radius: 999px;
    border: 1px solid transparent;
    background:
      linear-gradient(#ffffff, #ffffff) padding-box,
      var(--gradient-brand-border, linear-gradient(115deg, rgba(79, 70, 229, 0.48), rgba(236, 72, 153, 0.48))) border-box;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
    color: #334155;
    text-decoration: none;
    overflow: visible;
  }
  .home-feed-action:not(.is-saved):not(.active):hover,
  .home-feed-action:not(.is-saved):not(.active):active {
    color: var(--color-brand-identity, #a21caf);
    background:
      linear-gradient(#fbf7fb, #fbf7fb) padding-box,
      var(--gradient-brand-border-strong, linear-gradient(115deg, rgba(79, 70, 229, 0.82), rgba(236, 72, 153, 0.82))) border-box;
  }
  .home-feed-action:not(.is-saved):not(.active):hover .lucide,
  .home-feed-action:not(.is-saved):not(.active):active .lucide {
    color: var(--color-brand-identity, #a21caf);
  }
  .home-feed-action .lucide { width: 16px; height: 16px; color: #475569; flex-shrink: 0; }
  .home-feed-action span {
    white-space: nowrap;
  }
  .home-feed-action:focus-visible {
    outline: 2px solid var(--color-brand-identity, #a21caf);
    outline-offset: 2px;
  }
  .home-save-btn.is-saved {
    background: rgba(99, 102, 241, 0.08);
    border-color: rgba(99, 102, 241, 0.25);
    color: var(--primary-color, #6366f1);
  }
  .home-save-btn.is-saved .lucide { fill: currentColor; color: var(--primary-color, #6366f1); }

  .home-feed-actions-group .home-save-label,
  .home-feed-actions-group .home-calendar-label {
    display: none;
  }

  /* Dacă sunt 4 butoane în total pe mobil (de exemplu, când există și butonul de Bilete), 
     ascundem etichetele text de la Salvează și Calendar ca să nu aglomerăm rândul */
  .home-feed-actions:has(> :nth-child(4)) .home-save-label,
  .home-feed-actions:has(> :nth-child(4)) .home-calendar-label {
    display: none !important;
  }

  .home-feed-pillar {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: 100%;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 999px;
  }
  .home-feed-pillar:not(.home-feed-pillar-category) {
    color: #475569;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
  }
  .home-feed-pillar .lucide { width: 12px; height: 12px; flex: 0 0 auto; }

  .home-feed-pillar-category {
    flex: 0 1 auto;
    min-width: 0;
    color: #ffffff;
    border: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
  }
  .home-feed-pillar-category .lucide { color: #ffffff; flex: 0 0 auto; }
  .home-feed-pillar-category-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .home-feed-participation-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.7rem;
    font-weight: 700;
    color: #ffffff;
    background: rgba(244, 63, 94, 0.9);
    padding: 4px 9px;
    border-radius: 999px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.14);
  }
  .home-feed-participation-badge .lucide {
    width: 12px;
    height: 12px;
    fill: currentColor;
  }
  .home-feed-poster-soldout {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(254, 202, 202, 0.45);
    background: rgba(153, 27, 27, 0.9);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
    color: #ffffff;
    font-size: 0.75rem;
    line-height: 1;
    font-weight: 800;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(127, 29, 29, 0.22);
  }
  .home-feed-poster-soldout .lucide {
    width: 13px;
    height: 13px;
    flex: 0 0 auto;
  }

  .home-feed-poster-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    font-size: 0.56rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: #ffffff !important;
    background: rgba(20, 20, 20, 0.6) !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    padding: 3px 7px;
    border-radius: 999px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.14);
  }
  .home-feed-meta-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.2;
    color: #475569;
  }
  .home-feed-meta-row > span { min-width: 0; }
  .home-feed-mi {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
    color: #64748b;
    margin-top: 1px;
  }

  .home-feed-event-date-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
  }
  .home-feed-event-date-label {
    display: inline-flex;
    align-items: center;
    min-height: 19px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #4f46e5;
    color: #ffffff;
    font-size: 0.67rem;
    font-weight: 850;
    letter-spacing: 0.035em;
    line-height: 1;
    text-transform: uppercase;
  }
  .home-feed-event-date-copy {
    display: block;
    min-width: 0;
    overflow-wrap: normal;
  }
  .home-feed-event-date-visual {
    display: inline;
  }
  .home-feed-event-date-copy .text-muted {
    color: #4b5563 !important;
  }

  /* „Încarcă mai multe" */
  .home-feed-loadmore-wrap {
    padding: 20px 12px 8px;
  }
  .home-feed-loadmore {
    width: 100%;
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 15px;
    border: 1px solid transparent;
    background:
      linear-gradient(#fbf7fb, #fbf7fb) padding-box,
      var(--gradient-brand-border, linear-gradient(115deg, rgba(79, 70, 229, 0.48), rgba(236, 72, 153, 0.48))) border-box;
    color: var(--color-brand-identity, #a21caf);
    font-size: 0.95rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
  }
  .home-feed-loadmore:hover,
  .home-feed-loadmore:active {
    background:
      linear-gradient(#f7eff8, #f7eff8) padding-box,
      var(--gradient-brand-border-strong, linear-gradient(115deg, rgba(79, 70, 229, 0.82), rgba(236, 72, 153, 0.82))) border-box;
  }
  .home-feed-loadmore .lucide { width: 18px; height: 18px; }
  .home-feed-loadmore.is-loading { opacity: 0.7; pointer-events: none; }
  .home-feed-loadmore:focus-visible {
    outline: 2px solid var(--color-brand-identity, #a21caf);
    outline-offset: 2px;
  }

  @media (forced-colors: active) {
    .home-feed-action,
    .home-feed-loadmore {
      border-color: ButtonText;
      background: Canvas;
      color: ButtonText;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-feed-card,
  .home-feed-loadmore {
    transition: none !important;
  }
}

/* Acțiunile folosesc același contract pe telefon, tabletă și desktop. */
.home-save-label,
.home-calendar-label {
  display: inline !important;
}
.home-feed-actions-group {
  flex: 2 1 0 !important;
  gap: 6px !important;
}
.home-feed-actions-group .home-feed-action {
  padding: 0 8px !important;
}

/* ==========================================================================
   Event card 2026: poster full-bleed + extensie glass colorată din poster.
   Modificatorul izolează redesignul de cardurile de locație și de rendererul
   desktop legacy; aceleași reguli servesc Acasă, Evenimente și etichete.
   ========================================================================== */
@media (min-width: 0px) {
  .home-feed-card.home-feed-event.event-card--2026 {
    display: flex;
    align-items: stretch;
    width: 100%;
    max-width: 680px;
    height: 296px;
    min-height: 296px;
    margin-inline: auto;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.88) !important;
    border-radius: 26px !important;
    background: rgba(255, 255, 255, 0.76) !important;
    background-image: none !important;
    transform: none !important;
    box-shadow:
      0 14px 34px rgba(30, 28, 67, 0.09),
      0 2px 8px rgba(30, 28, 67, 0.05),
      inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    isolation: isolate;
  }

  .home-feed-card.home-feed-event.event-card--2026.is-promoted {
    border: 1.5px solid transparent !important;
    background:
      linear-gradient(rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.96)) padding-box,
      linear-gradient(135deg, rgba(251, 191, 36, 0.95), rgba(245, 158, 11, 0.8), rgba(217, 119, 6, 0.65)) border-box !important;
    box-shadow:
      0 12px 30px rgba(245, 158, 11, 0.16),
      0 4px 12px rgba(30, 28, 67, 0.05),
      inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  }

  .event-card--2026 .event-card__poster {
    position: relative;
    z-index: 1;
    flex: 0 0 clamp(140px, 27.35vw, 210px);
    width: clamp(140px, 27.35vw, 210px) !important;
    max-width: 210px !important;
    min-width: 0;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    overflow: hidden;
    border-radius: 0 !important;
    background: #ffffff;
    box-shadow: none;
    -webkit-tap-highlight-color: transparent;
  }

  .event-card--2026 .event-card__poster > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    transition: filter 160ms ease;
  }

  .event-card--2026 .event-card__poster .home-visual-carousel__track,
  .event-card--2026 .event-card__poster .home-visual-carousel__slide,
  .event-card--2026 .event-card__poster .home-visual-carousel__slide > img {
    width: 100%;
    height: 100%;
  }

  .event-card--2026 .event-card__extension {
    position: relative;
    z-index: 2;
    flex: 1 1 auto;
    min-width: 0;
    height: 100%;
    margin-left: 0;
    overflow: hidden;
    isolation: isolate;
    border-radius: 0 25px 25px 0;
  }

  .event-card--2026 .event-card__ambient {
    position: absolute;
    z-index: 0;
    inset: -28px;
    width: calc(100% + 56px);
    height: calc(100% + 56px);
    object-fit: cover;
    object-position: center;
    filter: blur(28px) saturate(1.18);
    opacity: 0.27;
    transform: scale(1.12);
    pointer-events: none;
  }

  .event-card--2026 .event-card__glass {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block;
    background:
      linear-gradient(135deg, rgba(255, 255, 255, 0.90), rgba(255, 255, 255, 0.70) 52%, rgba(250, 248, 255, 0.80));
    -webkit-backdrop-filter: blur(20px) saturate(135%);
    backdrop-filter: blur(20px) saturate(135%);
    pointer-events: none;
  }

  .event-card--2026 .event-card__content {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 44px repeat(3, minmax(0, 1fr)) 44px;
    gap: 4px;
    align-items: stretch;
    min-width: 0;
    min-height: 0 !important;
    height: 100%;
    padding: 12px 14px 12px 12px !important;
  }

  .event-card--2026 .event-card__top {
    position: relative !important;
    inset: auto !important;
    z-index: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 44px;
    min-height: 44px;
    margin: 0;
  }

  .event-card--2026 .event-card__badges {
    display: flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
  }

  .event-card--2026 .home-feed-pillar-category {
    flex: 0 1 auto;
    width: fit-content;
    min-width: 0;
    max-width: 100%;
    min-height: 28px;
    padding: 6px 8px;
    gap: 4px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    box-shadow: 0 4px 12px rgba(30, 28, 67, 0.12);
    font-size: 0.67rem;
    font-weight: 700;
    /* Păstrează integral descendenții din categorii precum „Târguri”.
       Înălțimea de 26/28px a pastilei nu se schimbă. */
    line-height: 1.2;
  }

  .event-card--2026 .home-feed-pillar-category .lucide {
    width: 11px;
    height: 11px;
  }

  .event-card--2026 .home-feed-pillar-category-text {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .event-card--2026 .home-feed-participation-badge {
    flex: 0 0 auto;
    min-width: 29px;
    min-height: 28px;
    margin: 0;
    padding: 6px 7px;
    justify-content: center;
    gap: 3px;
    border: 1px solid rgba(122, 92, 218, 0.13);
    background: rgba(255, 255, 255, 0.68);
    color: #5b3fb8;
    box-shadow: 0 4px 12px rgba(30, 28, 67, 0.08);
    font-size: 0.68rem;
  }

  .event-card--2026 .home-feed-participation-badge .lucide {
    width: 12px;
    height: 12px;
    fill: none;
  }

  .event-card--2026 .event-card__favorite {
    width: 44px;
    height: 44px;
    min-width: 44px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(244, 63, 94, 0.25);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.85);
    color: #f43f5e;
    box-shadow: 0 4px 12px rgba(30, 28, 67, 0.08);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    cursor: pointer;
    transition: transform 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
  }

  .event-card--2026 .event-card__favorite .lucide {
    width: 20px;
    height: 20px;
    stroke-width: 2;
    color: #f43f5e;
    fill: none;
  }

  .event-card--2026 .event-card__favorite.is-saved {
    border: 1px solid transparent;
    background:
      linear-gradient(135deg, rgba(255, 242, 246, 0.84), rgba(255, 222, 230, 0.72)) padding-box,
      linear-gradient(135deg, rgba(244, 63, 94, 0.58), rgba(225, 29, 72, 0.48)) border-box;
    color: #e11d48;
    box-shadow:
      0 6px 16px rgba(225, 29, 72, 0.18),
      inset 0 1px 0 rgba(255, 255, 255, 0.72);
    -webkit-backdrop-filter: blur(14px) saturate(150%);
    backdrop-filter: blur(14px) saturate(150%);
  }

  .event-card--2026 .event-card__favorite.is-saved .lucide {
    color: #e11d48;
    fill: currentColor;
  }

  .event-card--2026 .event-card__favorite.is-loading {
    cursor: wait;
    opacity: 0.68;
  }

  .event-card--2026 .event-card__date {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: center;
    gap: 6px;
    align-self: stretch;
    height: auto;
    min-height: 0;
    max-height: none;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #34236f;
    font-size: 0.88rem;
    font-weight: 820;
    line-height: 1.28;
  }

  .event-card--2026 .event-card__date .home-feed-mi {
    width: 17px;
    height: 17px;
    margin-top: 1px;
    color: #6d4bc4;
  }

  .event-card--2026 .home-feed-event-date-content {
    display: block;
    width: 100%;
    min-width: 0;
    max-height: 2.56em;
    overflow: hidden;
    white-space: normal;
  }

  .event-card--2026 .home-feed-event-date-copy {
    display: block;
    width: 100%;
    min-width: 0;
  }

  .event-card--2026 .home-feed-event-date-visual {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .event-card--2026 .event-card__date-compact,
  .event-card--2026 .event-card__address--compact {
    display: none;
  }

  .event-card--2026 .event-card__date-desktop {
    display: block;
    max-height: 2.56em;
    overflow: hidden;
    white-space: normal;
  }

  .event-card--2026 .event-card__title {
    min-width: 0;
    align-self: stretch;
    height: auto;
    min-height: 0;
    max-height: none;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    /* Ancora limitează textul la două rânduri. Containerul exterior nu mai
       taie cerneala care depășește cutia de linie în WebKit. */
    overflow: visible;
    font-size: clamp(1rem, 3.28vw, 1.26rem) !important;
    /* Plus Jakarta Sans depășește cutia strânsă de 1.08 pe WebKit, iar
       overflow-ul necesar line-clamp-ului tăia `g`, `ș` și `ț`. */
    line-height: 25px !important;
    font-weight: 760 !important;
    letter-spacing: -0.025em;
  }

  .event-card--2026 .event-card__title a {
    display: -webkit-box;
    width: 100%;
    max-height: 100%;
    overflow: hidden;
    /* WebKit decupează descendenții ultimului rând chiar când dimensiunile
       layoutului sunt egale. Paddingul extinde zona de pictare a clampului. */
    padding-bottom: 4px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #171326;
    text-decoration: none;
  }

  .event-card--2026 .event-card__title a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
  }

  .event-card--2026 .event-card__favorite,
  .event-card--2026 .event-card__actions,
  .event-card--2026 .event-card__badges,
  .event-card--2026 .home-feed-poster-promoted {
    position: relative;
    z-index: 3;
  }

  .event-card--2026 .home-feed-poster-soldout {
    position: absolute;
    z-index: 4;
    top: 10px;
    right: auto;
    bottom: auto;
    left: 10px;
  }

  .event-card--2026 .event-card__details {
    min-width: 0;
    width: 100%;
    display: flex;
    align-self: stretch;
    align-items: center;
    height: auto;
    min-height: 0;
    max-height: none;
    overflow: hidden;
    padding: 0 !important;
  }

  .event-card--2026 .event-card__venue {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    min-width: 0;
    color: #403b4d;
  }

  .event-card--2026 .event-card__venue > .home-feed-mi {
    width: 14px;
    height: 14px;
    margin-top: 1px;
    color: #7159a8;
  }

  .event-card--2026 .event-card__venue-copy {
    display: grid;
    min-width: 0;
    width: 100%;
    overflow: hidden;
    /* Spațiu pentru virgulele diacriticelor din numele/adresa locației. */
    line-height: 1.28;
  }

  .event-card--2026 .event-card__venue-name,
  .event-card--2026 .event-card__address {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
  }

  .event-card--2026 .event-card__venue-name {
    -webkit-line-clamp: 1;
    font-size: 0.78rem;
    font-weight: 700;
  }

  .event-card--2026 .event-card__address {
    margin-top: 0;
    -webkit-line-clamp: 1;
    color: #6b6478;
    font-size: 0.64rem;
    font-weight: 520;
  }

  .event-card--2026 .event-card__address-full-desktop {
    display: -webkit-box;
    margin-top: 3px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: #6b6478;
    font-size: 0.7rem;
    font-weight: 560;
    line-height: 1.2;
    white-space: normal;
  }

  /* Regula comună `.event-card__address` este declarată după contractul
     compact/desktop și îi reseta accidental display-ul pe desktop. */
  .event-card--2026 .event-card__address.event-card__address--compact {
    display: none;
  }

  .event-card--2026 .event-card__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
    gap: 6px;
    width: 100%;
    grid-row: 5;
    align-self: end;
    height: 44px;
    margin: 0 !important;
    padding: 0 !important;
  }

  .event-card--2026 .event-card__actions .home-feed-action {
    min-width: 0;
    height: 44px;
    min-height: 44px;
    gap: 4px;
    padding: 0 5px;
    border-radius: 14px;
    font-size: 0.7rem;
    font-weight: 750;
    line-height: 1;
  }

  .event-card--2026 .event-card__actions .home-feed-action .lucide {
    width: 14px;
    height: 14px;
  }

  .event-card--2026 .event-card__calendar-button {
    border: 1px solid rgba(99, 102, 241, 0.22) !important;
    background: rgba(255, 255, 255, 0.75) !important;
    color: #4338ca !important;
    box-shadow: 0 2px 8px rgba(79, 70, 229, 0.05) !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }

  .event-card--2026 .event-card__participate-button,
  .event-card--2026 .event-card__participate-button:not(.active):active {
    border: 1.5px solid transparent !important;
    background:
      var(--participate-surface) padding-box,
      var(--participate-border) border-box !important;
    color: var(--participate-text) !important;
    box-shadow: var(--participate-shadow) !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }

  .event-card--2026 .event-card__participate-button:not(.active):hover {
    border-color: transparent !important;
    background:
      var(--participate-surface-hover) padding-box,
      var(--participate-border-hover) border-box !important;
    box-shadow: 0 7px 18px rgba(79, 70, 229, 0.2) !important;
  }

  .event-card--2026 .event-card__calendar-button .lucide,
  .event-card--2026 .event-card__participate-button:not(.active) .lucide,
  .event-card--2026 .event-card__participate-button:not(.active) .event-card__participate-icon {
    color: #4f46e5 !important;
  }

  .event-card--2026 .event-card__participate-button.active {
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    background: var(--participate-active-surface) !important;
    color: var(--participate-active-text) !important;
    box-shadow: var(--participate-active-shadow) !important;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  .event-card--2026 .event-card__participate-button.active .lucide {
    fill: none !important;
  }

  .event-card--2026 .event-card__participant-total {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 2px;
    min-width: 0;
  }

  .event-card--2026 .event-card__participant-total-icon {
    width: 13px !important;
    height: 13px !important;
    color: currentColor !important;
    fill: none !important;
  }

  .event-card--2026 .event-card__participant-count {
    flex: 0 0 auto;
    min-width: 1.2em;
    padding-right: 2px;
    font-size: 0.66rem;
    font-weight: 850;
    line-height: 1;
    text-align: center;
  }

  .event-card--2026 .event-card__participate-button[aria-busy="true"],
  .event-card--2026 .event-card__participate-button:disabled {
    cursor: wait;
    opacity: 0.72;
    filter: saturate(0.82);
  }

  .event-card--2026 .home-calendar-label,
  .event-card--2026 .home-participate-label {
    display: inline !important;
  }

  .event-card--2026 .home-feed-poster-promoted {
    left: 10px;
    right: auto;
    bottom: 10px;
    padding: 4px 10px;
    border: 1px solid rgba(245, 158, 11, 0.4);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 4px 14px rgba(120, 53, 15, 0.16);
    color: #b45309;
    font-size: 0.6rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  .event-card--2026 a:not(.event-card__poster):focus-visible,
  .event-card--2026 button:focus-visible {
    outline: 3px solid rgba(107, 78, 234, 0.44);
    outline-offset: -3px;
  }

  .event-card--2026 .event-card__poster:focus-visible {
    outline: none;
  }

  .event-card--2026 .event-card__poster:focus-visible > img {
    filter: brightness(0.9) saturate(0.94);
  }

}

/* Telefonul păstrează contractul aprobat înaintea unificării cu tableta:
   poster mai lat, înălțime compactă, dată prescurtată și Calendar icon-only. */
@media (max-width: 575.98px) {
  .home-feed-card.home-feed-event.event-card--2026 {
    height: clamp(220px, 58vw, 248px);
    min-height: 220px;
    border-radius: var(--mobile-card-radius) !important;
  }

  .event-card--2026 .event-card__poster {
    flex: 0 0 clamp(140px, 39vw, 175px);
    width: clamp(140px, 39vw, 175px) !important;
    max-width: 175px !important;
  }

  .event-card--2026 .event-card__extension {
    margin-left: 0;
    overflow: clip;
    border-radius: 0 22px 22px 0;
  }

  .event-card--2026 .event-card__ambient {
    inset: -34px -28px -34px 0;
    width: calc(100% + 28px);
    height: calc(100% + 68px);
    filter: blur(34px) saturate(1.14) contrast(1.01);
    opacity: 0.16;
    transform: scale(1.12);
  }

  .event-card--2026 .event-card__glass {
    background:
      linear-gradient(rgba(255, 255, 255, 0.84), rgba(255, 255, 255, 0.84)),
      radial-gradient(circle at 86% 86%, rgba(244, 63, 94, 0.15), transparent 36%),
      radial-gradient(circle at 96% 10%, rgba(99, 102, 241, 0.11), transparent 32%);
    -webkit-backdrop-filter: blur(18px) saturate(125%);
    backdrop-filter: blur(18px) saturate(125%);
  }

  .event-card--2026 .event-card__content {
    grid-template-rows: 44px repeat(4, minmax(0, 1fr)) 44px;
    gap: 0;
    padding: 6px 8px 6px 10px !important;
  }

  .event-card--2026 .event-card__top {
    grid-row: 1;
  }

  .event-card--2026 .home-feed-pillar-category {
    min-height: 26px;
    padding: 5px 7px;
    font-size: 0.72rem;
  }

  .event-card--2026 .event-card__date {
    grid-row: 2;
    align-self: stretch;
    height: auto;
    min-height: 0;
    max-height: none;
    font-size: 0.78rem;
  }

  .event-card--2026 .home-feed-event-date-content {
    max-height: 1.28em;
    white-space: nowrap;
  }

  .event-card--2026 .event-card__date-compact {
    display: block;
  }

  .event-card--2026 .event-card__date-desktop {
    display: none;
  }

  .event-card--2026 .event-card__title {
    grid-row: 3 / span 2;
    align-self: stretch;
    height: auto;
    max-height: none;
    font-size: clamp(1rem, 4.35vw, 1.125rem) !important;
    font-weight: 760 !important;
    line-height: 24px !important;
  }

  .event-card--2026 .event-card__details {
    grid-row: 5;
    align-self: stretch;
    align-items: center;
    height: auto;
    min-height: 0;
    max-height: none;
  }

  .event-card--2026 .event-card__venue {
    align-items: center;
  }

  .event-card--2026 .event-card__venue > .home-feed-mi {
    margin-top: 0;
  }

  .event-card--2026 .event-card__venue-name {
    font-size: 0.75rem;
  }

  .event-card--2026 .event-card__address.event-card__address--compact {
    display: -webkit-box;
    font-size: 0.69rem;
  }

  .event-card--2026 .event-card__address-full-desktop {
    display: none;
  }

  .event-card--2026 .event-card__actions {
    grid-row: 6;
    align-self: stretch;
    grid-template-columns: var(--touch-target-min, 44px) minmax(0, 1fr);
    gap: 6px;
    height: 44px;
    margin: 0 !important;
  }

  .event-card--2026 .event-card__calendar-button {
    width: var(--touch-target-min, 44px);
    padding-inline: 0;
    justify-self: start;
  }

  .event-card--2026 .home-calendar-label {
    display: none !important;
  }

  .event-card--2026 .event-card__actions .home-feed-action {
    min-height: 44px;
    height: 44px;
    border-radius: var(--mobile-chip-radius);
    -webkit-backdrop-filter: blur(12px) saturate(155%);
    backdrop-filter: blur(12px) saturate(155%);
  }

  .event-card--2026 .home-feed-poster-promoted {
    bottom: 8px;
    padding: 5px 8px;
  }
}

@media (max-width: 375.98px) {
  .event-card--2026 .home-feed-pillar-category {
    padding-inline: 4px;
    font-size: 0.7rem;
  }

  .event-card--2026 .home-feed-pillar-category .lucide {
    display: none;
  }
}

@media (max-width: 340px) {
  .home-participate-label,
  .home-save-label,
  .home-calendar-label {
    display: none !important;
  }

  .home-feed-actions .home-save-btn {
    flex: 0 0 var(--touch-target-min, 44px) !important;
    padding: 0 !important;
  }
}

/* Sub 390px, ratingul și starea locației revin la densitatea aprobată pentru
   a încăpea unul lângă altul fără suprapunere. */
@media (max-width: 389.98px) {
  .home-feed-media-footer {
    left: 12px;
    gap: 6px;
  }

  .home-feed-rating {
    gap: 5px;
    padding: 6px 8px;
  }

  .home-feed-rating-num {
    font-size: 0.98rem;
  }

  .home-feed-star {
    width: 12px;
    height: 12px;
  }

  .home-feed-rating-count {
    font-size: 0.7rem;
  }

  .home-feed-open {
    gap: 5px;
    padding: 6px 10px;
    font-size: 0.68rem;
  }
}


@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  @media (min-width: 0px) {
    .event-card--2026 .event-card__glass {
      background: rgba(249, 249, 253, 0.96);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .event-card--2026,
  .event-card--2026 *,
  .event-card--2026 *::before,
  .event-card--2026 *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
/* Comutatorul este o alegere de ordine, nu un filtru ascuns. */
.home-feed-mode {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin: 12px 0;
  padding: 5px;
  border: 1px solid #e6e3ef;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 24px rgba(31, 25, 65, 0.05);
}

.home-feed-mode__option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  padding: 9px 12px;
  border-radius: 13px;
  color: #686276;
  font-weight: 750;
  text-decoration: none;
}

.home-feed-mode__option .lucide { width: 17px; height: 17px; }

.home-feed-mode__option.is-active {
  color: #5737d6;
  background: #fff;
  box-shadow: 0 4px 14px rgba(59, 39, 134, 0.1);
}

.home-feed-mode.is-loading .home-feed-mode__option {
  pointer-events: none;
}

.home-feed-mode.is-loading .home-feed-mode__option:not(.is-active) {
  opacity: 0.58;
}

@media (max-width: 991.98px) {
  .home-feed-mode { margin: 12px; }
}
