/* ============================================
   [24] WoozModal — alert / confirm / prompt bonitos
   v2: z-index acima de qualquer camada, pointer-events forçados.
   ============================================ */
.wz-modal-overlay{
  position:fixed; inset:0;
  z-index: 2147483000 !important;
  pointer-events: auto !important;
  display:flex; align-items:center; justify-content:center;
  padding:20px;
  background:radial-gradient(circle at 50% 40%, rgba(99,102,241,.22), rgba(0,0,0,.72) 70%);
  backdrop-filter: blur(10px) saturate(140%);
  -webkit-backdrop-filter: blur(10px) saturate(140%);
  opacity:0; transition: opacity .18s ease;
}
.wz-modal-overlay.is-open{ opacity:1; }

.wz-modal{
  width:100%; max-width:420px;
  background: linear-gradient(180deg, rgba(24,26,40,.98), rgba(15,17,28,.98));
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  padding:22px 22px 18px;
  pointer-events: auto !important;
  box-shadow:
    0 30px 80px -20px rgba(0,0,0,.6),
    0 0 0 1px rgba(255,255,255,.03) inset,
    0 1px 0 rgba(255,255,255,.06) inset;
  color:#e6e8f0;
  transform: translateY(14px) scale(.97);
  opacity:0;
  transition: transform .22s cubic-bezier(.2,.9,.3,1.2), opacity .18s ease;
}
.wz-modal-overlay.is-open .wz-modal{ transform:none; opacity:1; }

.wz-modal-icon{
  width:46px; height:46px; border-radius:14px;
  display:flex; align-items:center; justify-content:center;
  margin-bottom:12px;
  background: linear-gradient(135deg, rgba(99,102,241,.25), rgba(236,72,153,.20));
  border:1px solid rgba(255,255,255,.08);
}
.wz-modal-icon svg{ width:24px; height:24px; stroke:#a5b4fc; }
.wz-modal.is-danger .wz-modal-icon{ background: linear-gradient(135deg, rgba(248,113,113,.28), rgba(236,72,153,.20)); }
.wz-modal.is-danger .wz-modal-icon svg{ stroke:#fca5a5; }

.wz-modal-title{ margin:0 0 4px; font-size:17px; font-weight:700; letter-spacing:-.01em; }
.wz-modal-body{ margin:0 0 16px; font-size:14px; line-height:1.5; color:#c7cbdb; }

.wz-modal-input{
  width:100%; box-sizing:border-box;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  padding:11px 13px;
  color:#fff; font-size:14px;
  margin-bottom:14px;
  outline:none;
  pointer-events: auto !important;
  touch-action: manipulation;
  transition: border-color .15s, background .15s;
}
.wz-modal-input:focus{ border-color:#6366f1; background:rgba(99,102,241,.08); }

.wz-modal-actions{ display:flex; gap:8px; justify-content:flex-end; flex-wrap:wrap; }
.wz-modal-btn{
  appearance:none; border:0; cursor:pointer; font-family:inherit;
  padding:10px 16px; border-radius:11px; font-size:14px; font-weight:600;
  pointer-events: auto !important;
  touch-action: manipulation;
  transition: transform .1s, filter .15s, background .15s;
}
.wz-modal-btn:active{ transform:scale(.97); }
.wz-modal-btn-secondary{ background:rgba(255,255,255,.06); color:#e6e8f0; border:1px solid rgba(255,255,255,.08); }
.wz-modal-btn-secondary:hover{ background:rgba(255,255,255,.10); }
.wz-modal-btn-primary{
  background: linear-gradient(135deg,#6366f1,#8b5cf6);
  color:#fff;
  box-shadow:0 6px 18px -6px rgba(99,102,241,.7);
}
.wz-modal-btn-primary:hover{ filter:brightness(1.08); }
.wz-modal-btn-danger{
  background: linear-gradient(135deg,#ef4444,#ec4899);
  color:#fff;
  box-shadow:0 6px 18px -6px rgba(239,68,68,.6);
}
.wz-modal-btn-danger:hover{ filter:brightness(1.08); }

@media (max-width:420px){
  .wz-modal-actions{ justify-content:stretch; }
  .wz-modal-btn{ flex:1; }
}
