.hb-intro-video {
    position: fixed; inset: 0; z-index: 2147483600;
    width: 100%; height: 100%; height: 100dvh;
    background: #05090e; color: #fff; overflow: hidden;
    font: 15px/1.5 system-ui, -apple-system, sans-serif;
    opacity: 1; transition: opacity 180ms ease;
    overscroll-behavior: none; touch-action: manipulation;
}
.hb-intro-video.is-closing { opacity: 0; pointer-events: none; }
.hb-intro-video video { display: block; width: 100%; height: 100%; object-fit: contain; }
.hb-intro-video-toolbar, .hb-intro-video-footer {
    position: absolute; left: 0; right: 0; display: flex;
    align-items: center; justify-content: space-between; gap: 16px;
    padding: 16px max(20px, env(safe-area-inset-right)) 16px max(20px, env(safe-area-inset-left));
}
.hb-intro-video-toolbar {
    top: 0; padding-top: max(16px, env(safe-area-inset-top));
    background: linear-gradient(#05090ed9, transparent);
}
.hb-intro-video-footer {
    bottom: 0; padding-bottom: max(16px, env(safe-area-inset-bottom));
    background: linear-gradient(transparent, #05090ed9);
}
.hb-intro-video-toolbar span { font-weight: 650; letter-spacing: .03em; }
.hb-intro-video button {
    appearance: none; border: 1px solid #ffffff60; border-radius: 999px;
    background: #14202dd9; color: #fff; padding: 10px 20px; min-height: 44px;
    font: inherit; cursor: pointer; flex-shrink: 0; box-shadow: none;
}
.hb-intro-video button:focus-visible { outline: 3px solid #a0d9e4; outline-offset: 4px; }
.hb-intro-video .hb-intro-video-play {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    padding: 15px 26px; white-space: nowrap;
}
.hb-intro-video [hidden] { display: none !important; }
.hb-intro-video [data-status] { font-size: 13px; color: #e0e6ed; }
@media (prefers-reduced-motion: reduce) { .hb-intro-video { transition: none; } }
