.mobile-interstitial[hidden],
.mobile-interstitial [hidden] {
    display: none !important;
}

.mobile-interstitial {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    padding:
        max(20px, env(safe-area-inset-top))
        max(18px, env(safe-area-inset-right))
        max(20px, env(safe-area-inset-bottom))
        max(18px, env(safe-area-inset-left));
    background: rgba(12, 15, 24, 0.72);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}

body.mobile-interstitial-open {
    overflow: hidden;
    overscroll-behavior: none;
}

.mobile-interstitial__card {
    position: relative;
    width: min(88vw, 360px, 56dvh);
    aspect-ratio: 4 / 5;
    max-height: 70dvh;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 18px;
    background: #11131a;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
    isolation: isolate;
}

.mobile-interstitial__label,
.mobile-interstitial__countdown,
.mobile-interstitial__close {
    position: absolute;
    top: 12px;
    z-index: 3;
    min-height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(10, 12, 18, 0.78);
    color: #fff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.mobile-interstitial__label {
    left: 12px;
    display: inline-flex;
    align-items: center;
    padding: 0 12px;
    border-radius: 999px;
    font: 700 11px/1 "DM Sans", sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.mobile-interstitial__countdown {
    right: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    padding: 0 10px;
    border-radius: 999px;
    font: 700 13px/1 "DM Sans", sans-serif;
}

.mobile-interstitial__close {
    right: 12px;
    width: 40px;
    height: 40px;
    min-height: 40px;
    padding: 0;
    border-radius: 50%;
    cursor: pointer;
    font: 400 28px/1 Arial, sans-serif;
    appearance: none;
    -webkit-appearance: none;
}

.mobile-interstitial__close:focus-visible,
.mobile-interstitial__link:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 3px;
}

.mobile-interstitial__link,
.mobile-interstitial__media,
.mobile-interstitial__media img,
.mobile-interstitial__media video {
    display: block;
    width: 100%;
    height: 100%;
}

.mobile-interstitial__link {
    color: inherit;
    text-decoration: none;
}

.mobile-interstitial__media {
    background: #11131a;
}

.mobile-interstitial__media img,
.mobile-interstitial__media video {
    object-fit: contain;
    object-position: center;
    background: #11131a;
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
    .mobile-interstitial {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-interstitial {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}
