/* Confirmación global reutilizable: inspirado en el estilo de consulta */
.confirm-overlay{
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, .48);
  backdrop-filter: blur(4px);
}
.confirm-overlay[hidden]{ display:none !important; }
.confirm-card{
  width: min(100%, 520px);
  background: #fff;
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 24px;
  box-shadow: 0 28px 80px rgba(15,23,42,.22);
  overflow: hidden;
}
.confirm-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:22px 24px 12px;
}
.confirm-title{
  font-weight:800;
  font-size:18px;
  letter-spacing:-.01em;
  color:#0f172a;
}
.confirm-sub{
  margin-top:4px;
  color:#64748b;
  font-size:13px;
}
.confirm-close{
  border:0;
  background:transparent;
  width:40px;
  height:40px;
  border-radius:999px;
  cursor:pointer;
  font-size:20px;
  color:#475569;
}
.confirm-close:hover{ background:#f8fafc; }
.confirm-body{ padding: 0 24px 8px; }
.confirm-text{
  margin:0;
  color:#0f172a;
  line-height:1.55;
}
.confirm-text strong{ color:#b45309; }
.confirm-actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  padding:18px 24px 24px;
}
@media (max-width: 640px){
  .confirm-overlay{ padding:16px; }
  .confirm-card{ border-radius:20px; }
  .confirm-head,.confirm-body,.confirm-actions{ padding-left:18px; padding-right:18px; }
  .confirm-actions{ flex-direction:column-reverse; }
  .confirm-actions .btn{ width:100%; }
}
