html.common-popup-modal-open,
body.common-popup-modal-open { overflow: hidden; }

.common-popup-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    z-index: 10;
    align-items: flex-end;
    justify-content: center;
}
.common-popup-modal-overlay.open { display: flex; }

.common-popup-modal {
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
    width: 100%;
    max-width: 480px;
    border-radius: 4px 4px 0 0;
    position: relative;
    max-height: 80vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
@media (min-width: 600px) {
    .common-popup-modal { border-radius: 4px; width: 90%; }
    .common-popup-modal-overlay { align-items: center; }
}

.common-popup-modal dl {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .25rem .75rem;
    font-size: .875em;
    margin: 0;
}
.common-popup-modal dt { font-weight: 600; }
.common-popup-modal dd { margin: 0; }

#common-popup-modal-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    color: inherit;
    line-height: 1;
}
#common-popup-modal-title-wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    flex-shrink: 0;
    justify-content: space-between;
    padding: 15px;
    border-bottom: 1px solid #e1e1e1;
    gap: 15px;
}
#common-popup-modal-content {
    padding: 15px;
    overflow-y: auto;
    overscroll-behavior: contain;
}
