/* =========================================================
   CloudPDVPro / MPCConnectPro - SweetAlert2 Professional UI
   Global override. It works with existing Swal.fire calls.
   ========================================================= */
:root{
  --swal-mpc-navy:#06152d;
  --swal-mpc-navy-2:#0b2a55;
  --swal-mpc-blue:#2563eb;
  --swal-mpc-sky:#0ea5e9;
  --swal-mpc-green:#16a34a;
  --swal-mpc-red:#dc2626;
  --swal-mpc-orange:#f59e0b;
  --swal-mpc-text:#0b1730;
  --swal-mpc-muted:#66758c;
  --swal-mpc-border:#d9e6f7;
  --swal-mpc-soft:#f7faff;
}

.swal2-container.swal2-backdrop-show,
.swal2-container.mpc-swal-container.swal2-backdrop-show{
  background:rgba(3,10,24,.58) !important;
  backdrop-filter:blur(7px) saturate(120%);
  -webkit-backdrop-filter:blur(7px) saturate(120%);
}

.swal2-container{z-index:20000 !important;}

.swal2-popup,
.swal2-popup.mpc-swal-popup,
.swal2-popup.cloudpdv-swal{
  width:min(520px,calc(100vw - 34px)) !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:26px !important;
  border:1px solid rgba(216,230,248,.95) !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(14,165,233,.10), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
  box-shadow:0 32px 95px rgba(2,8,23,.34), 0 1px 0 rgba(255,255,255,.75) inset !important;
  color:var(--swal-mpc-text) !important;
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif !important;
}

.swal2-popup::before,
.swal2-popup.mpc-swal-popup::before,
.swal2-popup.cloudpdv-swal::before{
  content:"";
  display:block;
  height:7px;
  width:100%;
  background:linear-gradient(90deg,var(--swal-mpc-navy) 0%,var(--swal-mpc-blue) 52%,var(--swal-mpc-sky) 100%);
}

.swal2-icon,
.swal2-icon.mpc-swal-icon{
  width:74px !important;
  height:74px !important;
  margin:32px auto 10px !important;
  border-width:3px !important;
  transform:none !important;
  box-shadow:0 20px 40px rgba(37,99,235,.10) !important;
}

.swal2-icon .swal2-icon-content{font-size:42px !important;font-weight:600 !important;}
.swal2-icon.swal2-info,
.swal2-icon.swal2-question{
  border-color:#38bdf8 !important;
  color:#0ea5e9 !important;
  background:linear-gradient(180deg,#eff8ff,#ffffff) !important;
}
.swal2-icon.swal2-success{
  border-color:#22c55e !important;
  color:#16a34a !important;
  background:linear-gradient(180deg,#f0fdf4,#ffffff) !important;
}
.swal2-icon.swal2-warning{
  border-color:#f59e0b !important;
  color:#d97706 !important;
  background:linear-gradient(180deg,#fffbeb,#ffffff) !important;
}
.swal2-icon.swal2-error{
  border-color:#ef4444 !important;
  color:#dc2626 !important;
  background:linear-gradient(180deg,#fff1f2,#ffffff) !important;
}

.swal2-title,
.swal2-title.mpc-swal-title{
  color:var(--swal-mpc-text) !important;
  font-size:25px !important;
  line-height:1.18 !important;
  letter-spacing:-.035em !important;
  font-weight:760 !important;
  padding:12px 36px 0 !important;
  margin:0 !important;
}

.swal2-html-container,
.swal2-html-container.mpc-swal-html{
  color:var(--swal-mpc-muted) !important;
  font-size:15px !important;
  line-height:1.58 !important;
  margin:12px 36px 0 !important;
  padding:0 !important;
}
.swal2-html-container strong{color:#0f1f3d !important;font-weight:760 !important;}
.swal2-html-container p{margin-bottom:.65rem;}

.swal2-actions,
.swal2-actions.mpc-swal-actions{
  width:100% !important;
  margin:0 !important;
  padding:24px 36px 32px !important;
  gap:12px !important;
  justify-content:center !important;
}

.swal2-styled,
.swal2-styled.mpc-swal-btn,
.swal2-styled.cloudpdv-confirm,
.swal2-styled.cloudpdv-cancel,
.swal2-styled.cloudpdv-deny{
  min-height:46px !important;
  min-width:116px !important;
  padding:12px 22px !important;
  border-radius:15px !important;
  border:1px solid transparent !important;
  font-size:14px !important;
  font-weight:760 !important;
  letter-spacing:-.01em !important;
  box-shadow:none !important;
  outline:none !important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease !important;
}

.swal2-confirm,
.swal2-confirm.mpc-swal-confirm,
.swal2-styled.cloudpdv-confirm{
  color:#fff !important;
  background:linear-gradient(135deg,#2563eb 0%,#0ea5e9 100%) !important;
  border-color:rgba(37,99,235,.35) !important;
  box-shadow:0 14px 30px rgba(37,99,235,.30) !important;
}
.swal2-confirm:hover,
.swal2-confirm.mpc-swal-confirm:hover,
.swal2-styled.cloudpdv-confirm:hover{
  transform:translateY(-1px);
  filter:none !important;
  box-shadow:0 18px 38px rgba(37,99,235,.38) !important;
}

.swal2-cancel,
.swal2-cancel.mpc-swal-cancel,
.swal2-styled.cloudpdv-cancel{
  color:#20304f !important;
  background:#ffffff !important;
  border-color:#d7e4f5 !important;
  box-shadow:0 10px 24px rgba(15,35,75,.07) !important;
}
.swal2-cancel:hover,
.swal2-cancel.mpc-swal-cancel:hover,
.swal2-styled.cloudpdv-cancel:hover{
  transform:translateY(-1px);
  background:#f8fbff !important;
  border-color:#b9cce8 !important;
  filter:none !important;
}

.swal2-deny,
.swal2-deny.mpc-swal-deny,
.swal2-styled.cloudpdv-deny{
  color:#9a3412 !important;
  background:#fff7ed !important;
  border-color:#fed7aa !important;
  box-shadow:0 10px 24px rgba(234,88,12,.08) !important;
}
.swal2-deny:hover{background:#ffedd5 !important;filter:none !important;}

.swal2-input,
.swal2-select,
.swal2-textarea,
.swal2-input.mpc-swal-input,
.swal2-select.mpc-swal-input,
.swal2-textarea.mpc-swal-input{
  min-height:48px !important;
  border-radius:15px !important;
  border:1px solid #d7e4f5 !important;
  color:#0f172a !important;
  background:#fff !important;
  box-shadow:none !important;
}
.swal2-input:focus,
.swal2-select:focus,
.swal2-textarea:focus{
  border-color:#2563eb !important;
  box-shadow:0 0 0 4px rgba(37,99,235,.11) !important;
}

.swal2-validation-message,
.swal2-validation-message.mpc-swal-validation{
  margin:12px 36px 0 !important;
  border-radius:16px !important;
  background:#fff7ed !important;
  color:#9a3412 !important;
  border:1px solid #fed7aa !important;
  font-size:13px !important;
  font-weight:650 !important;
}

.swal2-close,
.swal2-close.mpc-swal-close{
  top:14px !important;
  right:16px !important;
  width:40px !important;
  height:40px !important;
  border-radius:13px !important;
  color:#64748b !important;
  transition:.16s ease !important;
}
.swal2-close:hover{color:#0f172a !important;background:#eef5ff !important;}
.swal2-loader{border-color:#2563eb transparent #2563eb transparent !important;}

.swal2-timer-progress-bar,
.swal2-timer-progress-bar.mpc-swal-timer{
  background:linear-gradient(90deg,#2563eb,#0ea5e9) !important;
}

/* Toasts */
.swal2-popup.swal2-toast,
.swal2-popup.mpc-swal-toast{
  width:min(430px,calc(100vw - 26px)) !important;
  padding:0 !important;
  border-radius:20px !important;
  background:#ffffff !important;
  box-shadow:0 18px 48px rgba(2,8,23,.24) !important;
}
.swal2-popup.swal2-toast::before,
.swal2-popup.mpc-swal-toast::before{height:5px !important;}
.swal2-toast .swal2-icon{width:36px !important;height:36px !important;margin:14px 8px 14px 16px !important;}
.swal2-toast .swal2-icon .swal2-icon-content{font-size:22px !important;}
.swal2-toast .swal2-title{font-size:14px !important;line-height:1.3 !important;padding:0 !important;margin:0 12px 0 0 !important;text-align:left !important;}
.swal2-toast .swal2-html-container{font-size:13px !important;margin:0 12px 0 0 !important;text-align:left !important;}
.swal2-toast .swal2-actions{padding:0 !important;}

/* Large report / receipt modal support */
.swal2-popup.swal-wide,
.swal2-popup.mpc-swal-wide{width:min(860px,calc(100vw - 34px)) !important;}
.swal2-popup.swal-extra-wide,
.swal2-popup.mpc-swal-extra-wide{width:min(1080px,calc(100vw - 34px)) !important;}

@media (max-width:576px){
  .swal2-popup{border-radius:22px !important;}
  .swal2-title{font-size:22px !important;padding-left:24px !important;padding-right:24px !important;}
  .swal2-html-container{margin-left:24px !important;margin-right:24px !important;}
  .swal2-actions{padding-left:24px !important;padding-right:24px !important;flex-direction:column-reverse !important;align-items:stretch !important;}
  .swal2-styled{width:100% !important;}
}
