/* Messages MyPadel: opt-in de présentation, sans remplacer les callbacks SweetAlert. */
.swal2-container.mp-dialog-container {
    padding: max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    overscroll-behavior: contain;
}
.swal2-popup.mp-dialog:not(.mp-dialog--toast) {
    --swal2-confirm-button-background-color: var(--primary, #4464e8);
    --swal2-cancel-button-background-color: #eef1f6;
    box-sizing: border-box;
    min-width: 0;
    max-width: min(100%, calc(100vw - 32px));
    max-height: calc(100dvh - max(16px, env(safe-area-inset-top)) - max(16px, env(safe-area-inset-bottom)));
    padding: 20px 0 18px;
    overflow-x: hidden;
    overflow-y: auto;
    border: 1px solid var(--border-color, #dfe5ee);
    border-radius: 18px;
    background: #fff;
    color: var(--text-main, #172033);
    font-family: inherit;
    font-size: 1rem;
    box-shadow: 0 18px 55px rgba(15, 23, 42, .18);
}
.swal2-popup.mp-dialog--simple { width: 400px !important; }
.mp-dialog:not(.mp-dialog--toast) .swal2-icon {
    width: 5em;
    height: 5em;
    margin: 0 auto 12px;
    border-width: .1875rem;
    /* Géométrie native en em: 42px + deux bordures3px = icône48px. */
    font-size: .525rem;
}
.mp-dialog:not(.mp-dialog--toast) .swal2-title {
    min-width: 0;
    margin: 0;
    padding: 0 24px;
    color: var(--text-main, #172033);
    font-family: inherit;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.mp-dialog:not(.mp-dialog--toast) .swal2-html-container {
    min-width: 0;
    margin: 12px 24px 0;
    padding: 0;
    color: var(--text-muted, #64748b);
    font-size: .9375rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.mp-dialog--simple .swal2-html-container {
    max-height: max(80px, calc(100dvh - 240px));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.mp-dialog--form .swal2-html-container {
    max-height: max(100px, calc(100dvh - 220px));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}
.mp-dialog:not(.mp-dialog--toast) .swal2-actions {
    width: auto;
    max-width: calc(100% - 32px);
    margin: 18px auto 0;
    padding: 0;
    gap: 8px;
    flex-wrap: wrap;
}
.mp-dialog:not(.mp-dialog--toast) .swal2-styled {
    box-sizing: border-box;
    min-height: 44px;
    min-width: 80px;
    margin: 0;
    padding: 10px 18px;
    border: 0;
    border-radius: 999px;
    font-family: inherit;
    font-size: .875rem;
    font-weight: 650;
    line-height: 1.4;
    white-space: normal;
}
/* A cor inline explícita de uma ação destrutiva conserva a prioridade. */
.mp-dialog .swal2-styled.swal2-confirm { background-color: var(--swal2-confirm-button-background-color, var(--primary, #4464e8)); color: #fff; }
.mp-dialog .swal2-styled.swal2-cancel { background-color: var(--swal2-cancel-button-background-color, #eef1f6); color: var(--text-main, #172033); }
.mp-dialog .swal2-styled.swal2-cancel[style*="background-color"] { color: #fff; }
.mp-dialog .swal2-styled:focus-visible,
.mp-dialog .swal2-close:focus-visible { outline: 3px solid var(--primary, #4464e8); outline-offset: 3px; }
.mp-dialog:not(.mp-dialog--toast) .swal2-close {
    width: 44px;
    height: 44px;
    margin: 0;
    border-radius: 12px;
    color: var(--text-muted, #64748b);
    font-size: 1.5rem;
}
.mp-dialog:not(.mp-dialog--toast) .swal2-input,
.mp-dialog:not(.mp-dialog--toast) .swal2-select,
.mp-dialog:not(.mp-dialog--toast) .swal2-textarea {
    box-sizing: border-box;
    min-height: 44px;
    max-width: calc(100% - 48px);
    margin: 14px 24px 0;
    border: 1px solid var(--border-color, #dfe5ee);
    border-radius: 12px;
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.5;
}
.mp-dialog .swal2-input-label { margin: 12px 24px 0; font-size: .875rem; line-height: 1.5; }
.mp-dialog .swal2-validation-message { margin-top: 12px; padding: 10px 16px; font-size: .875rem; line-height: 1.4; }
.mp-dialog:not(.mp-dialog--toast) .swal2-footer { margin: 16px 0 0; padding: 12px 24px 0; font-size: .875rem; line-height: 1.5; }
.mp-dialog--toast { font-family: inherit; border-radius: 12px; }
@media (max-width: 480px) {
    .swal2-popup.mp-dialog:not(.mp-dialog--toast) { padding-top: 18px; border-radius: 16px; }
    .mp-dialog:not(.mp-dialog--toast) .swal2-title { padding-inline: 18px; font-size: 1.125rem; }
    .mp-dialog:not(.mp-dialog--toast) .swal2-html-container { margin-inline: 18px; font-size: .875rem; }
    .mp-dialog--form .swal2-html-container input:not([type=checkbox]):not([type=radio]),
    .mp-dialog--form .swal2-html-container select,
    .mp-dialog--form .swal2-html-container textarea { min-height: 44px; font-size: 1rem; }
    .mp-dialog--form .swal2-html-container button { min-height: 44px; }
    .mp-dialog:not(.mp-dialog--toast) .swal2-input,
    .mp-dialog:not(.mp-dialog--toast) .swal2-select,
    .mp-dialog:not(.mp-dialog--toast) .swal2-textarea { max-width: calc(100% - 36px); margin-inline: 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .mp-dialog, .mp-dialog * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
