/* ===== Sensitive Image Age Gate CSS ===== */

/* Wrapper per immagini sensibili */
.siag-wrap {
  position: relative;
  display: inline-block;
  max-width: 100%;
}

/* Sfocatura controllata via CSS var */
.siag-sensitive-img {
  filter: blur(var(--siag-blur, 18px));
  transition: filter .2s ease;
  pointer-events: auto;
}

/* Overlay testo (usiamo ::before sfondo e ::after testo) */
.siag-wrap[data-siag]:not(.siag-revealed)::before,
.siag-wrap[data-siag]:not(.siag-revealed)::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: 6px;
  content: "";
}
.siag-wrap[data-siag]:not(.siag-revealed)::before {
  background: rgba(0,0,0,.35);
}
.siag-wrap[data-siag]:not(.siag-revealed)::after {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font: 600 14px/1.3 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  padding: 12px;
  text-align: center;
  content: attr(data-overlay);
}

/* Stato rivelato: toglie blur */
.siag-revealed .siag-sensitive-img,
.siag-sensitive-img.siag-revealed {
  filter: none !important;
}

/* ===== Modal ===== */
#siag-modal { position: fixed; inset:0; z-index: 999999; display:none; }
#siag-modal.siag-open { display:block; }
#siag-backdrop { position:absolute; inset:0; background: rgba(0,0,0,.55); }
#siag-dialog {
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  background:#fff; width:min(92vw, 420px);
  border-radius:10px; box-shadow:0 10px 40px rgba(0,0,0,.25);
  padding:20px 18px 16px;
}
#siag-dialog h3 { margin:0 0 8px; font:700 18px/1.2 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
#siag-dialog p { margin:0 0 12px; color:#333; font:14px/1.45 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
#siag-form { display:grid; grid-template-columns:1fr 1fr 2fr; gap:8px; align-items:end; margin:12px 0; }
#siag-form label { font-size:12px; color:#555; }
#siag-form input { width:100%; padding:8px 10px; border:1px solid #d0d0d0; border-radius:6px; font-size:14px; }
#siag-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:8px; }
#siag-cancel, #siag-confirm { border:0; border-radius:8px; padding:10px 14px; font-weight:600; cursor:pointer; }
#siag-cancel { background:#eee; }
#siag-confirm { background:#111; color:#fff; }
#siag-error { color:#b00020; font-size:13px; min-height:18px; margin-top:6px; }
