/*
 * swal-modern.css — habillage moderne pour SweetAlert2.
 */

.swal2-container.swal2-backdrop-show {
    background: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.swal2-modern.swal2-popup {
    border-radius: 16px;
    padding: 18px 22px 18px 22px;
    box-shadow:
        0 25px 60px -15px rgba(15, 23, 42, 0.35),
        0 10px 25px -10px rgba(15, 23, 42, 0.2);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif;
    max-width: 420px;
}

/* Icône Swal — on réduit visuellement via transform pour ne pas casser
   le positionnement interne du X / check / etc. */
.swal2-modern .swal2-icon {
    transform: scale(0.7);
    transform-origin: center;
    margin: -8px auto -10px auto;  /* compense l'espace libéré par scale */
}

.swal2-modern .swal2-modern__title {
    font-size: 19px;
    font-weight: 700;
    color: #0f172a;
    margin: 8px 0 0 0;
    padding: 0;
}

.swal2-modern .swal2-modern__body {
    font-size: 14.5px;
    line-height: 1.5;
    color: #334155;
    margin: 6px 0 0 0;
    padding: 0;
}

.swal2-modern .swal2-actions {
    margin-top: 16px;
    gap: 8px;
}

.swal2-modern .swal2-modern__btn {
    border-radius: 10px !important;
    padding: 9px 22px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    margin: 0 !important;
    box-shadow: 0 4px 12px -2px rgba(15, 23, 42, 0.18) !important;
    transition: transform .15s ease, box-shadow .15s ease !important;
}
.swal2-modern .swal2-modern__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px -3px rgba(15, 23, 42, 0.28) !important;
}

/* Couleur de fond légère pour différencier le type */
.swal2-modern-error   { border-top: 4px solid #ef4444; }
.swal2-modern-warning { border-top: 4px solid #f59e0b; }
.swal2-modern-info    { border-top: 4px solid #3b82f6; }
.swal2-modern-success { border-top: 4px solid #22c55e; }

/* Animations */
@keyframes swal2-modern-show {
    0%   { opacity: 0; transform: translateY(20px) scale(.96); }
    100% { opacity: 1; transform: translateY(0)    scale(1); }
}
@keyframes swal2-modern-hide {
    0%   { opacity: 1; transform: scale(1); }
    100% { opacity: 0; transform: scale(.96); }
}
.swal2-modern-show { animation: swal2-modern-show .25s cubic-bezier(.21,.61,.35,1) both; }
.swal2-modern-hide { animation: swal2-modern-hide .18s ease both; }

/* Mobile */
@media (max-width: 480px) {
    .swal2-modern.swal2-popup {
        padding: 16px 16px 14px 16px;
        border-radius: 14px;
    }
    .swal2-modern .swal2-modern__title { font-size: 17px; }
    .swal2-modern .swal2-modern__body  { font-size: 13.5px; }
}
