/* ─── TARTEAUCITRON — TEMA SAYALUCA ─────────────────────────────────────────
   Override del CSS predefinito di tarteaucitron per adattarlo al tema del sito.
   Caricato dopo tarteaucitron.min.css in layout.html.twig.
   ─────────────────────────────────────────────────────────────────────────── */

/* ── Barra piccola (showAlertSmall) — visibile quando consenso già dato ────── */
#tarteaucitronAlertSmall {
  background: #1a1a1a !important;
  border-top: 1px solid #333 !important;
  border-left: 1px solid #333 !important;
  border-radius: 8px 0 0 0 !important;
  bottom: 0 !important;
  right: 0 !important;
  padding: 0 !important;
}

#tarteaucitronAlertSmall #tarteaucitronManager {
  background: #1a1a1a !important;
  border: none !important;
  color: #a1a1a1 !important;
  font-size: 11px !important;
  padding: 8px 14px !important;
  border-radius: 0 !important;
  cursor: pointer !important;
}

#tarteaucitronAlertSmall #tarteaucitronManager:hover {
  background: #222 !important;
  color: #FFD700 !important;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot {
  background-color: #333 !important;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotGreen {
  background-color: #FFD700 !important;
}

/* ── Font di base ── */
#tarteaucitronRoot * {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif !important;
  color: #ffffff;
}

/* ── Banner principale (barra in basso) ───────────────────────────────────── */
#tarteaucitronRoot #tarteaucitronAlertBig {
  background: #1a1a1a !important;
  border-top: 2px solid #FFD700 !important;
  padding: 16px 24px !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
  box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.6) !important;
}

#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert,
#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
  color: #e0e0e0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.5;
}

#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
  color: #ffffff !important;
  font-weight: 600 !important;
}

/* ── Bottone "Accetta tutto" ──────────────────────────────────────────────── */
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: #FFD700 !important;
  color: #111111 !important;
  border: none !important;
  border-radius: 0.5rem !important;
  padding: 0.55rem 1.25rem !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: opacity 0.2s !important;
  line-height: 1.4 !important;
  display: inline-block !important;
  margin: 0 4px !important;
}

#tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronAlertBig #tarteaucitronPersonalize2:hover {
  opacity: 0.88 !important;
}

/* ── Bottone "Rifiuta tutto" ──────────────────────────────────────────────── */
#tarteaucitronAlertBig #tarteaucitronCloseAlert {
  background: transparent !important;
  color: #a1a1a1 !important;
  border: 1.5px solid #444 !important;
  border-radius: 0.5rem !important;
  padding: 0.55rem 1.25rem !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: border-color 0.2s, color 0.2s !important;
  line-height: 1.4 !important;
  display: inline-block !important;
  margin: 0 4px !important;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
  border-color: #FFD700 !important;
  color: #FFD700 !important;
}

/* ── Link "Privacy Policy" nel banner ────────────────────────────────────── */
#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
  background: transparent !important;
  color: #FFD700 !important;
  border: none !important;
  padding: 0 !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  display: inline !important;
  margin: 0 4px !important;
}

/* ── Icona in basso a destra ─────────────────────────────────────────────── */
#tarteaucitronIcon #tarteaucitronManager,
#tarteaucitronAlertSmall #tarteaucitronManager {
  background: #1a1a1a !important;
  border: 1.5px solid #333 !important;
  border-radius: 8px 8px 0 0 !important;
  color: #a1a1a1 !important;
  font-size: 11px !important;
  padding: 6px 10px !important;
  transition: border-color 0.2s !important;
}

#tarteaucitronIcon #tarteaucitronManager:hover,
#tarteaucitronAlertSmall #tarteaucitronManager:hover {
  background: #222 !important;
  border-color: #FFD700 !important;
}

#tarteaucitronIcon #tarteaucitronManager,
#tarteaucitronAlertSmall #tarteaucitronManager {
  background-color: transparent !important;
  border: none !important;
}

#tarteaucitronAlertSmall {
  background: transparent !important;
}

/* ── Pannello dettagli (modale) ───────────────────────────────────────────── */
#tarteaucitronRoot div#tarteaucitron {
  background: #000000 !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

#tarteaucitron .tarteaucitronBorder {
  background: #111111 !important;
  border: 1px solid #333333 !important;
  border-top: 0 !important;
}

/* Titolo del pannello */
#tarteaucitronRoot .tarteaucitronH1 {
  color: #FFD700 !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
}

#tarteaucitronRoot .tarteaucitronH2 {
  color: #ffffff !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

#tarteaucitron .tarteaucitronH3 {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #ffffff !important;
}

/* Barra superiore della categoria (main line) */
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
  background: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-left: 4px solid #FFD700 !important;
  margin-top: 16px !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
  background: #1e1e1e !important;
}

/* Header categoria / titolo sezione */
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
#tarteaucitronRoot .asCatToggleBtn {
  background: #222222 !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

/* Singola riga servizio */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
  background: #161616 !important;
  border-left: 3px solid transparent !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine:hover {
  background: #1c1c1c !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
  border-color: #FFD700 !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
  border-color: #555 !important;
}

/* Testo nome servizio */
#tarteaucitron a,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName a,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a {
  color: #ffffff !important;
  font-size: 0.85rem !important;
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a {
  font-size: 1rem !important;
  font-weight: 700 !important;
}

.tarteaucitronName .tacCurrentStatus,
.tarteaucitronName .tarteaucitronReadmoreSeparator {
  color: #a1a1a1 !important;
}

/* ── Bottoni Consenti / Nega nelle righe servizio ─────────────────────────── */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
.tac_activate .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronDeny {
  border-radius: 0.4rem !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  padding: 5px 12px !important;
  cursor: pointer !important;
  border: none !important;
  transition: opacity 0.2s !important;
}

/* Bottone "Consenti" → oro */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitronRoot .tarteaucitronAllow,
.tac_activate .tarteaucitronAllow {
  background: #FFD700 !important;
  color: #111111 !important;
}

/* Bottone "Nega" → grigio scuro */
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronDeny {
  background: #2a2a2a !important;
  color: #a1a1a1 !important;
  border: 1px solid #444 !important;
}

/* Stato attivo: allow selezionato */
#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
  background: #FFD700 !important;
  color: #111111 !important;
  opacity: 1 !important;
}

/* Stato attivo: deny selezionato */
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
  background: #333 !important;
  color: #a1a1a1 !important;
  border-color: #555 !important;
  opacity: 1 !important;
}

/* Opacità per stato non-selezionato */
.tarteaucitronIsAllowed .tarteaucitronDeny,
.tarteaucitronIsDenied .tarteaucitronAllow {
  opacity: 0.35 !important;
}

/* ── Bottone "Salva" nel pannello ─────────────────────────────────────────── */
html body #tarteaucitronRoot button#tarteaucitronSaveButton {
  background: #FFD700 !important;
  color: #111111 !important;
  border: none !important;
  border-radius: 0.5rem !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  padding: 0.6rem 1.5rem !important;
  cursor: pointer !important;
  transition: opacity 0.2s !important;
}

html body #tarteaucitronRoot button#tarteaucitronSaveButton:hover {
  opacity: 0.88 !important;
}

/* ── Bottone "Chiudi pannello" ────────────────────────────────────────────── */
#tarteaucitron #tarteaucitronClosePanel,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie {
  background: #222 !important;
  color: #a1a1a1 !important;
  border: 1px solid #333 !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  border-radius: 0 0 4px 4px !important;
}

#tarteaucitronRoot button#tarteaucitronClosePanel {
  background: #222 !important;
  color: #a1a1a1 !important;
}

/* ── Barra progresso ─────────────────────────────────────────────────────── */
#tarteaucitronPercentage {
  background: #FFD700 !important;
  height: 3px !important;
}

/* ── Bordi e sezioni nel pannello ────────────────────────────────────────── */
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,
#tarteaucitron .tarteaucitronBorder,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
  border-color: #333333 !important;
}

div#tarteaucitronInfo {
  border-color: #333 !important;
  color: #a1a1a1 !important;
}

/* ── Disclaimer nel pannello ─────────────────────────────────────────────── */
#tarteaucitron #tarteaucitronDisclaimer {
  color: #a1a1a1 !important;
  font-size: 0.75rem !important;
}

/* ── Cookie list (small panel) ───────────────────────────────────────────── */
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
  background: #1a1a1a !important;
  border-color: #333 !important;
  color: #e0e0e0 !important;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle {
  background: #222 !important;
  border-bottom: 1px solid #333 !important;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain {
  background: rgba(255, 255, 255, 0.03) !important;
}

/* ── Dettaglio inline dei cookie ─────────────────────────────────────────── */
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle+[id^="tarteaucitronDetails"] {
  background: rgba(255, 255, 255, 0.04) !important;
  color: #a1a1a1 !important;
}

/* ── Focus accessibilità ─────────────────────────────────────────────────── */
#tarteaucitronRoot a:focus-visible,
#tarteaucitronRoot button:focus-visible {
  outline: 2px dashed #FFD700 !important;
  outline-offset: 2px !important;
}