:root { --portal-alert-green:#047857; --portal-alert-green-dark:#065f46; --portal-alert-ink:#0f172a; }
.swal2-container { padding:1rem!important; backdrop-filter:blur(5px); }
.swal2-container.swal2-backdrop-show { background:rgba(15,23,42,.62)!important; }
.swal2-popup { width:min(100%,480px)!important; padding:2rem!important; border:1px solid #e2e8f0!important; border-radius:1rem!important; color:var(--portal-alert-ink)!important; background:#fff!important; box-shadow:0 25px 70px rgba(15,23,42,.28)!important; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important; }
.swal2-icon { width:4rem!important; height:4rem!important; margin:0 auto 1.2rem!important; }
.swal2-title { padding:0!important; color:var(--portal-alert-ink)!important; font-size:1.45rem!important; line-height:1.3!important; letter-spacing:-.025em; }
.swal2-html-container { margin:.8rem 0 0!important; color:#475569!important; font-size:.9rem!important; line-height:1.6!important; }
.swal2-html-container p { margin:0 0 .85rem; }
.swal2-actions { width:100%!important; gap:.65rem; margin:1.5rem 0 0!important; }
.swal2-styled { min-height:44px!important; margin:0!important; padding:.65rem 1.15rem!important; border:0!important; border-radius:.7rem!important; box-shadow:none!important; font-size:.82rem!important; font-weight:800!important; transition:transform .2s,box-shadow .2s!important; }
.swal2-styled:hover { transform:translateY(-1px); }
.swal2-confirm { background:linear-gradient(135deg,var(--portal-alert-green-dark),var(--portal-alert-green))!important; box-shadow:0 8px 20px rgba(4,120,87,.2)!important; }
.swal2-cancel,.swal2-deny { color:#334155!important; background:#e2e8f0!important; }
.swal2-input,.swal2-select,.swal2-textarea { width:100%!important; margin:1.25rem 0 0!important; border:1px solid #cbd5e1!important; border-radius:.7rem!important; box-shadow:none!important; }
.swal2-input { height:50px!important; font-size:1rem!important; }
.swal2-input:focus,.swal2-select:focus,.swal2-textarea:focus { border-color:#10b981!important; box-shadow:0 0 0 4px rgba(16,185,129,.13)!important; }
.swal2-validation-message { margin-top:.75rem!important; border-radius:.6rem!important; color:#991b1b!important; background:#fef2f2!important; font-size:.8rem!important; }
.swal2-loader { border-color:var(--portal-alert-green) transparent var(--portal-alert-green) transparent!important; }
.swal2-checkbox,.swal2-radio { align-items:center; gap:.5rem; color:#334155!important; font-size:.85rem!important; }
.swal2-progress-steps .swal2-progress-step,.swal2-progress-steps .swal2-progress-step-line { background:var(--portal-alert-green)!important; }
.swal2-close { color:#64748b!important; }
.swal2-close:focus,.swal2-styled:focus { box-shadow:0 0 0 4px rgba(16,185,129,.16)!important; }
@media (max-width:520px) { .swal2-popup { padding:1.35rem!important; } .swal2-actions { flex-direction:column; } .swal2-styled { width:100%; } }
