.sm-popup{position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center;}
.sm-popup.is-open{display:flex;}
.sm-popup__backdrop{position:absolute; inset:0; background:var(--sm-popup-overlay, rgb(0 0 0 / 74%)); opacity:0; transition:opacity .2s ease;}
.sm-popup.is-open .sm-popup__backdrop{opacity:1;}
.sm-popup__dialog{
position:relative;
background:var(--sm-popup-bg, #fff);
width:var(--sm-popup-width-desktop, 458px);
max-width:calc(100vw - 32px);
max-height:calc(100vh - 32px);
border-radius:20px;
box-shadow:0 20px 60px rgba(0,0,0,.25);
transform:translateY(10px);
opacity:0;
transition:transform .2s ease, opacity .2s ease;
}
.sm-popup.is-open .sm-popup__dialog{transform:translateY(0); opacity:1;}
@media (max-width: 921px){
.sm-popup__dialog{ width:var(--sm-popup-width-mobile, 90%); }
.sm-popup__content{ padding: var(--sm-popup-pad-mobile, var(--sm-popup-pad-desktop, 24px)); }
}
.sm-popup__content{
padding: var(--sm-popup-pad-desktop, 24px);
overflow:auto; max-height:calc(100vh - 32px);
overscroll-behavior:contain; position:relative; z-index:1;
}
.sm-popup__content *{ box-sizing:border-box; max-width:100%; }
.sm-popup__content img, .sm-popup__content video, .sm-popup__content iframe{ max-width:100%; height:auto; } .sm-popup__close{
position:absolute; top:24px; right:24px;
width:24px; height:24px; border-radius:999px; border:none; cursor:pointer;
background:var(--sm-popup-close-bg, #000);
display:inline-flex; align-items:center; justify-content:center;
padding:0; line-height:1; z-index:10;
transition:background-color .15s ease;
}
.sm-popup__close:focus{ outline:none; }
.sm-popup__close:focus-visible{ outline:2px solid rgba(0,0,0,.28); outline-offset:2px; }
.sm-popup__x{ position:relative; width:14px; height:14px; display:block; }
.sm-popup__x:before, .sm-popup__x:after{
content:""; position:absolute; left:50%; top:50%; width:14px; height:2px;
background:var(--sm-popup-close-ico, #fff); transform-origin:center;
transition:background-color .15s ease;
}
.sm-popup__x:before{ transform:translate(-50%,-50%) rotate(45deg); }
.sm-popup__x:after{  transform:translate(-50%,-50%) rotate(-45deg); } .sm-popup__close:hover{ background:var(--sm-popup-close-bg-h, var(--sm-popup-close-bg, #000)); }
.sm-popup__close:hover .sm-popup__x:before,
.sm-popup__close:hover .sm-popup__x:after{ background:var(--sm-popup-close-ico-h, var(--sm-popup-close-ico, #fff)); }
html.sm-popup-open, body.sm-popup-open { overflow:hidden; } .sm-popup__backdrop{ z-index: 1; }
.sm-popup__dialog{ z-index: 2; }
.sm-popup__close{ z-index: 3; } .sm-popup__dialog:focus,
.sm-popup__dialog:focus-visible {
outline: none;
}