/*
 * Custom styling for SweetAlert2
 *
 * Load this file AFTER the official SweetAlert2 stylesheet.
 * The official SweetAlert2 stylesheet supplies the popup layout,
 * icons, animations, overlay and accessibility-related states.
 */

/* -------------------------------------------------------------------------
   Base popup
   ------------------------------------------------------------------------- */

.swal2-popup {
    box-sizing: border-box;
    width: 512px;
    max-width: calc(100vw - 30px);
    padding: 17px;
    border-radius: 5px;
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    text-align: center;
}

/* Original custom popup widths */
.swal2-popup.sweet-alert-extra-wide {
    width: 712px;
    max-width: calc(100vw - 30px);
}

.swal2-popup.sweet-alert-extra-wide2 {
    width: 734px;
    max-width: calc(100vw - 30px);
}

/* -------------------------------------------------------------------------
   Title and message
   ------------------------------------------------------------------------- */

.swal2-popup .swal2-title {
    margin: 25px 0;
    padding: 0;
    color: #575757;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    text-transform: none;
}

.swal2-popup .swal2-html-container {
    margin: 0;
    padding: 0;
    color: #797979;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    text-align: center;
    overflow-wrap: break-word;
}

/* -------------------------------------------------------------------------
   Input fields and validation
   ------------------------------------------------------------------------- */

.swal2-popup .swal2-input,
.swal2-popup .swal2-textarea,
.swal2-popup .swal2-select {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    border: 1px solid #d7d7d7;
    border-radius: 3px;
    font-size: 16px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06);
}

.swal2-popup .swal2-input:focus,
.swal2-popup .swal2-textarea:focus,
.swal2-popup .swal2-select:focus {
    border-color: #b4dbed;
    box-shadow: 0 0 3px #c4e6f5;
}

.swal2-popup .swal2-validation-message {
    margin: 0;
}

/* -------------------------------------------------------------------------
   Buttons
   ------------------------------------------------------------------------- */

.swal2-popup .swal2-actions {
    gap: 10px;
    margin: 26px auto 0;
    display:block !important;
}

.swal2-popup .swal2-styled {
    min-height: 42px;
    margin: 0;
    padding: 10px 32px;
    border: 0;
    border-radius: 2px;
    box-shadow: none;
    color: #fff;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.25;
    cursor: pointer;
    white-space: pre-line;
    height:auto;
    float:left;
    margin-top:5px !important;
}

.swal2-popup .swal2-styled:focus {
    box-shadow: 0 0 2px rgba(128, 179, 235, 0.5),
                inset 0 0 0 1px rgba(0, 0, 0, 0.05);
}

.swal2-popup .swal2-styled:disabled {
    opacity: 0.6;
    cursor: default;
}

.swal2-popup .swal2-cancel {
    background-color: #c1c1c1;
    float:right !important;
}

.swal2-popup .swal2-cancel:hover {
    background-color: #b9b9b9;
}

.swal2-popup .swal2-cancel:active {
    background-color: #a8a8a8;
}

/* -------------------------------------------------------------------------
   Custom popup types used by the JavaScript methods
   customClass: { popup: 'confirm' | 'error' | 'fadeout' }
   ------------------------------------------------------------------------- */

.swal2-popup.confirm,
.swal2-popup.error,
.swal2-popup.fadeout {
    border-radius: 0;
    box-shadow: 0 16px 36px 0 rgba(0, 0, 0, 0.36);
    font-family: FiraSans, Arial, Helvetica, sans-serif;
    text-align: left;
}

.swal2-popup.confirm .swal2-title,
.swal2-popup.error .swal2-title,
.swal2-popup.fadeout .swal2-title {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 600;
    text-align: left;
}

.swal2-popup.confirm .swal2-html-container,
.swal2-popup.error .swal2-html-container,
.swal2-popup.fadeout .swal2-html-container {
    text-align: left;
}

.swal2-popup.confirm .swal2-title {
    color: #ffa000;
}

.swal2-popup.error .swal2-title {
    color: #d81b60;
}

.swal2-popup.fadeout .swal2-title {
    color: #26c6da;
}

/* Keep the error message scrollable when it is long */
.swal2-popup.error .swal2-html-container {
    max-height: 300px;
    overflow-y: auto;
}

/* Fadeout notifications have no visible actions or validation message */
.swal2-popup.fadeout .swal2-actions,
.swal2-popup.fadeout .swal2-validation-message {
    display: none !important;
}

/* -------------------------------------------------------------------------
   Mobile and narrow screens
   SweetAlert2 handles centering and viewport positioning itself.
   These rules only adjust dimensions and spacing.
   ------------------------------------------------------------------------- */

@media (max-width: 540px) {
    .swal2-popup,
    .swal2-popup.sweet-alert-extra-wide,
    .swal2-popup.sweet-alert-extra-wide2 {
        width: calc(100vw - 30px);
        max-width: calc(100vw - 30px);
        padding: 20px 18px;
    }

    .swal2-popup .swal2-title {
        margin: 12px 0 16px;
        font-size: 22px;
        line-height: 1.3;
    }

    .swal2-popup .swal2-html-container {
        font-size: 15px;
        line-height: 1.5;
    }

    .swal2-popup .swal2-actions {
        display: flex;
        flex-direction: column-reverse;
        align-items: stretch;
        width: 100%;
        gap: 8px;
        margin-top: 20px;
    }

    .swal2-popup .swal2-styled {
        box-sizing: border-box;
        width: 100%;
        min-height: 44px;
        margin: 0;
        padding: 12px 16px;
        font-size: 15px;
    }

    .swal2-popup.confirm .swal2-title,
    .swal2-popup.error .swal2-title,
    .swal2-popup.fadeout .swal2-title {
        margin-top: 0;
        margin-bottom: 16px;
        font-size: 20px;
    }

    .swal2-popup.error .swal2-html-container {
        max-height: 50vh;
    }

    .swal2-container 
    {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        padding: 10px !important;
        overflow-y: auto !important;
    }

    /* De knoppen 'aanmelden definitief maken' en 'terug naar voorkeurslijst' zitten gevaarlijk dicht boven elkaar, dit geeft meer ruimte */
    .swal2-styled:nth-child(2) 
    {
        margin-top: 25px !important;
    } 

}
