/*
 * Correzioni di nitidezza per il modulo Ricerca Immobili.
 * Annulla, solo dentro il modulo, gli effetti del tema (es. RealHomes) che rendono
 * il testo sfocato: ombre, filtri, trasformazioni, trasparenze e caratteri troppo sottili.
 * Viene caricato dopo i fogli del tema e dopo modulo.css.
 */

.rci,
.rci *:not(input):not(select):not(textarea) {
  text-shadow: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  backdrop-filter: none !important;
  opacity: 1 !important;
  -webkit-text-stroke: 0 !important;
}

/* Le animazioni di comparsa del tema lasciano spesso il blocco su coordinate
   non intere: il testo viene ridisegnato sfocato. */
.rci,
.rci .rci-modulo,
.rci .rci-form,
.rci .rci-campo {
  transform: none !important;
  -webkit-transform: none !important;
  animation: none !important;
  will-change: auto !important;
  backface-visibility: visible !important;
}

/* Fondo proprio: il modulo resta leggibile anche in una sezione scura del tema */
.rci {
  background: #fff !important;
  color: var(--rci-testo) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
.rci p, .rci span, .rci small, .rci legend, .rci label {
  letter-spacing: normal !important;
  text-transform: none !important;
}

.rci .rci-titolo {
  color: var(--rci-titoli) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.rci .rci-sottotitolo { color: var(--rci-testo) !important; }
.rci .rci-campo > label,
.rci .rci-campo > legend {
  color: var(--rci-titoli) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
}
.rci .rci-pillola,
.rci .rci-pillola > span:last-child,
.rci .rci-privacy > label,
.rci .rci-privacy label > span {
  color: var(--rci-titoli) !important;
  font-weight: 400 !important;
  font-size: 15px !important;
}
.rci .rci-pillola:has(input:checked),
.rci .rci-pillola:has(input:checked) > span:last-child { font-weight: 600 !important; }
.rci .rci-spuntino { color: transparent !important; }
.rci .rci-pillola:has(input:checked) .rci-spuntino { color: #fff !important; }
.rci .rci-privacy a { color: var(--rci-scuro) !important; }
.rci .rci-aiuto, .rci .rci-nota { color: var(--rci-tenue) !important; }
.rci .rci-obbl,
.rci .rci-privacy label .rci-obbl { color: var(--rci-accento) !important; }
.rci .rci-errore { color: #c62828 !important; }
.rci .rci-msg-errore { color: #8e1c16 !important; }
.rci .rci-ico, .rci .rci-grazie-icona { color: var(--rci-colore) !important; }
.rci .rci-testa-icona { color: #fff !important; }

/* Campi: il tema impone altezze, ombre e colori chiari sul testo digitato */
.rci input[type=text],
.rci input[type=email],
.rci input[type=tel],
.rci input[type=number],
.rci select,
.rci textarea {
  color: var(--rci-titoli) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  height: auto !important;
  line-height: 1.4 !important;
  text-shadow: none !important;
  opacity: 1 !important;
  border: 1px solid var(--rci-bordo) !important;
  border-radius: 12px !important;
}
.rci input:not([type=checkbox]):focus,
.rci select:focus,
.rci textarea:focus { border-color: var(--rci-colore) !important; }
.rci .rci-ha-errore input:not([type=checkbox]),
.rci .rci-ha-errore select,
.rci .rci-ha-errore textarea { border-color: #c62828 !important; }
.rci ::placeholder { color: #8a8a8a !important; opacity: 1 !important; }

/* Casella del consenso: alcuni temi la nascondono o la sostituiscono */
.rci .rci-privacy input[type=checkbox] {
  -webkit-appearance: checkbox !important;
  appearance: auto !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 18px !important;
  height: 18px !important;
  margin: 3px 0 0 !important;
  display: inline-block !important;
}
/* Caselle delle pillole: nascoste, lo stato si vede dal segno di spunta */
.rci .rci-pillola input[type=checkbox] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
}
.rci .rci-pillola::before, .rci .rci-pillola::after,
.rci .rci-spunta::before, .rci .rci-spunta::after { content: none !important; }

.rci .rci-pulsante {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  box-shadow: none !important;
  line-height: 1.2 !important;
  height: auto !important;
  border-radius: 50px !important;
}
