/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

/* Global Font - Afacad Flux */
html, body {
  font-family: "Afacad Flux", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Stili per Google PlaceAutocompleteElement (nuova API) */
/* NOTA: Il closed shadow DOM non permette ::part() selectors */
/* Usare solo CSS custom properties ufficiali di Google */
gmp-place-autocomplete {
  --gmpac-color-on-surface: #374151;
  --gmpac-color-outline: #d1d5db;
  --gmpac-color-primary: #16a34a;
  --gmpac-color-surface: white;
  --gmpac-border-radius: 0.5rem;

  /* Dimensioni esplicite */
  display: block;
  width: 100%;
  min-height: 42px;
}

/* Stili Google Places per il form venue (tema purple) */
[data-controller="venue-address-autocomplete"] gmp-place-autocomplete {
  --gmpac-color-primary: #9333ea; /* purple-600 */
  --gmpac-border-radius: 0.75rem; /* rounded-xl */
}

/* Hide scrollbar but keep functionality */
.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

/* Scroll indicator - gradient fade on right edge
 * Usage: Wrap scrollable content in a div with class "scroll-fade-indicator"
 * The parent should have overflow: hidden
 */
.scroll-fade-indicator {
  position: relative;
}
.scroll-fade-indicator::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 48px;
  height: 100%;
  background: linear-gradient(to left, white, transparent);
  pointer-events: none;
  z-index: 10;
}

/* Flash message animation */
@keyframes bounce-in {
  0% {
    opacity: 0;
    transform: scale(0.9) translateY(-10px);
  }
  50% {
    transform: scale(1.02) translateY(0);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
.animate-bounce-in {
  animation: bounce-in 0.4s ease-out forwards;
}
