.modal__backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.5); opacity: 0; z-index: -1; pointer-events: none; transition: opacity0 .2s ease-in; } .modal__content { position: relative; width: auto; margin: 10px; transition: opacity 0.3s ease-in; display: flex; flex-direction: column; background-color: #fff; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 0.3rem; box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.3); } @media (min-width: 576px) { .modal__content { max-width: 500px; margin: 50px auto; } } .modal__show .modal__backdrop, .modal__show .modal__content { opacity: 1; z-index: 1050; pointer-events: auto; overflow-y: auto; } .modal__header { display: flex; align-items: center; justify-content: space-between; padding: 15px; border-bottom: 1px solid #eceeef; } .modal__title { margin-top: 0; margin-bottom: 0; line-height: 1.5; font-size: 1.25rem; font-weight: 500; } .modal__btn-close { float: right; font-family: sans-serif; font-size: 24px; font-weight: 700; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: 0.5; text-decoration: none; } .modal__btn-close:focus, .modal__btn-close:hover { color: #000; text-decoration: none; cursor: pointer; opacity: 0.75; } .modal__body { position: relative; flex: 1 1 auto; padding: 15px; overflow: auto; } .modal__footer { display: flex; align-items: center; justify-content: flex-end; padding: 1rem; border-top: 1px solid #e9ecef; border-bottom-right-radius: 0.3rem; border-bottom-left-radius: 0.3rem; }