/* Añadidos propios de LIDIAUTO sobre el CSS original de la web. */

[hidden] { display: none !important; }
html.lidi-bloqueo, html.lidi-bloqueo body { overflow: hidden; }

/* ---- Sello VENDIDO cruzando la foto (petición de Juan) ---- */
.lidi-vendido {
  position: absolute;
  inset: 0;
  z-index: 25;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
  container-type: inline-size;
}
.lidi-vendido::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
}
.lidi-vendido span {
  position: relative;
  transform: rotate(-22deg);
  font-family: Inter, system-ui, sans-serif;
  font-weight: 800;
  font-size: 2.75rem;
  font-size: clamp(1.5rem, 12cqw, 5.5rem); /* cabe entero dentro de la foto, también en móvil */
  line-height: 1;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #dc2626;
  background: rgba(255, 255, 255, 0.92);
  border: 0.08em solid #dc2626;
  padding: 0.12em 0.45em 0.1em 0.55em;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  white-space: nowrap;
}

/* ---- Avisos tras enviar un formulario ---- */
.lidi-avisos {
  position: fixed;
  top: 6.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1100;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: min(92vw, 26rem);
  pointer-events: none;
}
.lidi-aviso {
  pointer-events: auto;
  background: #0c0c0c;
  color: #e8e4de;
  border: 1px solid rgba(255, 255, 255, 0.12);
  padding: 1rem 1.25rem;
  font-size: 0.875rem;
  line-height: 1.5;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
  animation: lidi-entrar 250ms ease-out;
}
.lidi-aviso.ok { border-left: 3px solid #10b981; }
.lidi-aviso.error { border-left: 3px solid #ef4444; }
.lidi-aviso a { text-decoration: underline; }
@keyframes lidi-entrar { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

/* ---- Textos legales ---- */
.prose-legal { color: hsl(var(--foreground)); padding-right: 1.5rem; }
.prose-legal h2 { font-size: 1.125rem; font-weight: 600; margin-bottom: 0.75rem; }
.prose-legal h3 { font-size: 0.95rem; font-weight: 600; margin: 1.25rem 0 0.35rem; }
.prose-legal p { font-size: 0.875rem; line-height: 1.7; color: hsl(var(--muted-foreground)); margin-bottom: 0.5rem; }

/* ---- Campos con error ---- */
.lidi-error { border-color: #ef4444 !important; }

/* ---- Deslizadores de los filtros (tirador invisible encima del original) ---- */
.lidi-rango { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; pointer-events: none; -webkit-appearance: none; appearance: none; background: transparent; }
.lidi-rango::-webkit-slider-thumb { pointer-events: auto; -webkit-appearance: none; width: 24px; height: 24px; cursor: pointer; }
.lidi-rango::-moz-range-thumb { pointer-events: auto; width: 24px; height: 24px; cursor: pointer; border: 0; }
