.cachwir-modal {
    display: none;
}

.cachwir-modal-title {
    font-size: 18px;
    text-align: center;
    margin-bottom: 6px;
    font-family: 'WorkSans-SemiBold', serif;
}
.cachwir-modal-element {
    text-align: left;
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.cachwir-modal-element.bottom-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: space-around;
}

.cachwir-modal-overlay {
    position: fixed;
    z-index: 20000;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    padding: 10px 10px 0;
    text-align: center;
    background: rgba(112, 112, 112, 0.43);
}
.cachwir-modal-overlay:not(.modal-page-overlay) {
    height: 100vh !important;
    display: flex;
    justify-content: center;
    align-items: center;
}
/*body.has-ios-statusbar .cachwir-modal-overlay {*/
/*    height: calc(78vh - 20px);*/
/*}*/

/*body[page="home"] .cachwir-modal-overlay {*/
/*    height: 100vh;*/
/*}*/

/*body[page="journey"] .cachwir-modal-overlay,*/
/*body[page="notifications"] .cachwir-modal-overlay,*/
/*body[page="select_entities"] .cachwir-modal-overlay,*/
/*body[page="select_tour"] .cachwir-modal-overlay {*/
/*    height: 92vh;*/
/*}*/
/*body.has-ios-statusbar[page="journey"] .cachwir-modal-overlay,*/
/*body.has-ios-statusbar[page="notifications"] .cachwir-modal-overlay,*/
/*body.has-ios-statusbar[page="select_entities"] .cachwir-modal-overlay,*/
/*body.has-ios-statusbar[page="select_tour"] .cachwir-modal-overlay {*/
/*    height: calc(94vh - 20px);*/
/*}*/

.cachwir-modal-overlay > div, .cachwir-modal-overlay::after {
    vertical-align: top;
}
.cachwir-modal-overlay > .small-modal {
    margin-top: calc(8vh + 14px);
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}
.cachwir-modal-overlay::after {
    display: inline-block;

    height: 100%;
    margin-left: -0.05em;

    content: "";
}

.cachwir-modal-overlay > div {
    box-sizing: border-box;
    width: 100%;
    max-width: 500px;
    margin-bottom: 10px;
    padding: 35px;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    color: #2b2e38;
    background: #fff;
    display: inline-block;
    box-shadow: 0 0 12px #00000029;
    border: 1px solid #EBEBEB;
    border-radius: 12px;
}
.cachwir-modal-overlay > .menu-modal {
    display: flex;
    flex-direction: column;
    padding: 0;
}
.cachwir-modal-overlay > .menu-modal a {
    display: flex;
    height: 62px;
    width: 100%;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    gap: 20px;
}
.cachwir-modal-overlay > .menu-modal a.red {
    color: #A30000;
}
.cachwir-modal-overlay > .menu-modal a:not(:first-child) {
    border-top: 1px solid #EBEBEB;
}
.cachwir-modal-overlay > .menu-modal a img {
    width: 40px;
}
.cachwir-modal-overlay > .menu-modal a span {
    display: block;
}

.cachwir-modal-is-opening,
.cachwir-modal-is-closing {
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

.cachwir-modal-is-opening {
    -webkit-animation-name: cachwir-modal-opening-keyframes;
    animation-name: cachwir-modal-opening-keyframes;
}

.cachwir-modal-is-closing {
    -webkit-animation-name: cachwir-modal-closing-keyframes;
    animation-name: cachwir-modal-closing-keyframes;
}

/* Keyframes
   ========================================================================== */

@-webkit-keyframes cachwir-modal-opening-keyframes {
    from {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);

        opacity: 0;
    }
    to {
        -webkit-transform: none;
        transform: none;

        opacity: 1;
    }
}

@keyframes cachwir-modal-opening-keyframes {
    from {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);

        opacity: 0;
    }
    to {
        -webkit-transform: none;
        transform: none;

        opacity: 1;
    }
}

@-webkit-keyframes cachwir-modal-closing-keyframes {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);

        opacity: 1;
    }
    to {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);

        opacity: 0;
    }
}

@keyframes cachwir-modal-closing-keyframes {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);

        opacity: 1;
    }
    to {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);

        opacity: 0;
    }
}

/* MODAL PAGE, a modal made to stick inside #content and not look like a modal */
.cachwir-modal-overlay.modal-page-overlay
{
    position: fixed;
    z-index: 10;
    width: 100%;
    padding: 0;
    text-align: inherit;
}

.cachwir-modal-overlay.modal-page-overlay > div
{
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    max-width: none;
    margin-bottom: 0;
    padding: 0;
    color: inherit;
    background-color: inherit;
}

.language-menu-modal {
    width: 200px !important;
}
.language-menu-modal a:not(.cancel-button) {
    justify-content: flex-start !important;
    padding-left: 20px !important;
}

.cachwir-modal-overlay > .confirmation-modal {
    padding: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.confirmation-modal .confirmation-modal-content {
    padding: 35px;
}
.confirmation-modal .confirmation-modal-bottom {
    display: flex;
    width: 100%;
}