.cz-popup-area h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.cz-popup-area .item{width:min(var(--popup-width,500px),calc(100vw - 30px));overflow:hidden;border:1px solid rgba(7,37,72,.18);border-radius:17px;background:#fff;box-shadow:0 20px 60px rgba(4,28,61,.25)}
.cz-popup-area .item-inner{font-size:14px;line-height:1.6}.cz-popup-area .item-inner img{display:block;max-width:100%;height:auto}.cz-popup-area .popup-title{margin:0;padding:16px 20px;border-bottom:1px solid #e7edf4;color:#0a2f61;font-size:17px;font-weight:800}
.cz-popup-area .popup-footer{display:flex;min-height:45px;border-top:1px solid #e6edf4;background:#fff}.cz-popup-area .popup-footer button{border:0;background:none;font-size:13px;font-weight:700;cursor:pointer}.cz-popup-area .popup-footer .reject{flex:1;padding:0 15px;text-align:left;color:#334c69}.cz-popup-area .popup-footer .close{width:80px;background:#082f64;color:#fff}
.cz-popup-basic{position:fixed;top:clamp(85px,11vh,140px);left:0;right:0;display:flex;flex-wrap:wrap;gap:var(--popup-gap,20px);padding:15px;pointer-events:none;z-index:20000}.cz-popup-basic .item{position:relative;pointer-events:auto}.cz-popup-basic.popup-layout-center{justify-content:center}.cz-popup-basic.popup-layout-left{justify-content:flex-start}.cz-popup-basic.popup-layout-right{justify-content:flex-end}.cz-popup-basic.popup-layout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));align-items:start}.cz-popup-basic.popup-layout-grid .item{width:100%}.cz-popup-basic.popup-layout-manual{display:block;position:absolute;top:0;padding:0}.cz-popup-basic.popup-layout-manual .item{position:absolute}
.cz-popup-slide{position:fixed;top:clamp(85px,11vh,140px);left:50%;z-index:30000;width:min(500px,calc(100vw - 30px));transform:translateX(-50%);overflow:hidden;border:1px solid rgba(7,37,72,.18);border-radius:17px;background:#fff;box-shadow:0 20px 60px rgba(4,28,61,.3)}.cz-popup-slide .item{width:100%;border:0;border-radius:0;box-shadow:none}.cz-popup-slide .popup-slide-control{position:absolute;top:12px;right:12px;display:flex;align-items:center;border-radius:30px;background:rgba(255,255,255,.92);box-shadow:0 5px 15px rgba(0,0,0,.12)}.cz-popup-slide .popup-slide-control button{width:36px;height:36px;border:0;background:none;color:#0878f9;font-size:27px}.cz-popup-slide .popup-slide-control .page{font-size:12px;font-weight:800;color:#284661}
.cz-popup-layer{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(3,22,47,.7);backdrop-filter:blur(5px)}.cz-popup-layer.is-active{display:flex}.cz-popup-layer .item{width:min(var(--popup-width,560px),var(--popup-mobile-width,92%))}
@media(max-width:768px){.cz-popup-basic{top:76px;padding:10px;gap:12px}.cz-popup-basic .item{width:var(--popup-mobile-width,92%);max-width:100%;margin-left:auto;margin-right:auto}.cz-popup-basic.popup-layout-left .item{margin-left:0}.cz-popup-basic.popup-layout-right .item{margin-right:0}.cz-popup-basic.popup-layout-grid{grid-template-columns:1fr}.cz-popup-basic.popup-layout-manual{position:fixed;top:76px;padding:10px}.cz-popup-basic.popup-layout-manual .item{position:relative!important;top:auto!important;left:auto!important}.cz-popup-slide{top:76px;width:92%}.cz-popup-layer{padding:12px}.cz-popup-area .popup-footer{min-height:48px}.cz-popup-area .popup-footer button{font-size:13px}}

/* 2026-08-14: keep popup media and controls inside every viewport */
.cz-popup-area .item,
.cz-popup-slide {
    box-sizing: border-box;
    max-width: calc(100vw - 30px);
    max-height: calc(100vh - 110px);
    max-height: calc(100dvh - 110px);
}
.cz-popup-area .item {
    display: flex;
    flex-direction: column;
}
.cz-popup-area .item-inner {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.cz-popup-area .item-inner * {
    box-sizing: border-box;
    max-width: 100%;
}
.cz-popup-area .item-inner img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
.cz-popup-area .popup-footer {
    position: relative;
    z-index: 5;
    flex: 0 0 auto;
    width: 100%;
}
.cz-popup-slide {
    display: flex;
    flex-direction: column;
}
.cz-popup-slide .item {
    min-height: 0;
}
.cz-popup-layer .item {
    max-height: calc(100vh - 40px);
    max-height: calc(100dvh - 40px);
}
.cz-popup-basic {
    max-height: calc(100vh - 95px);
    max-height: calc(100dvh - 95px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}

@media (max-width: 768px) {
    .cz-popup-basic {
        top: 70px;
        max-height: calc(100vh - 78px);
        max-height: calc(100dvh - 78px);
        padding: 8px 12px;
    }
    .cz-popup-basic .item,
    .cz-popup-basic.popup-layout-left .item,
    .cz-popup-basic.popup-layout-right .item,
    .cz-popup-slide,
    .cz-popup-layer .item {
        width: min(var(--popup-mobile-width, 92%), calc(100vw - 24px)) !important;
        max-width: calc(100vw - 24px) !important;
        max-height: calc(100vh - 86px) !important;
        max-height: calc(100dvh - 86px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .cz-popup-basic.popup-layout-manual {
        top: 70px;
        right: 0;
        bottom: auto;
        left: 0;
        max-height: calc(100vh - 78px);
        max-height: calc(100dvh - 78px);
        overflow-y: auto;
    }
    .cz-popup-slide {
        top: 70px;
    }
    .cz-popup-layer {
        padding: 12px;
    }
    .cz-popup-area .item-inner img {
        width: 100% !important;
        object-fit: contain;
    }
    .cz-popup-area .popup-footer {
        min-height: 54px;
    }
    .cz-popup-area .popup-footer button {
        min-height: 54px;
        font-size: 14px;
    }
    .cz-popup-area .popup-footer .close {
        width: 88px;
    }
}
