.raika-sport-page {
    position: relative;
    width: 100%;
    min-height: calc(100vh - 118px);
    min-height: calc(100dvh - 118px);
    display: flex;
    overflow: hidden;
    border: 1px solid rgba(162, 174, 189, .13);
    border-radius: 16px;
    background: #0c1015;
}

.raika-sport-frame {
    width: 100%;
    min-height: calc(100vh - 118px);
    min-height: calc(100dvh - 118px);
    border: 0;
    background: #0c1015;
    opacity: 1;
    transition: opacity .18s ease;
}

.raika-sport-frame.hidden {
    display: block !important;
    opacity: 0;
    pointer-events: none;
}

.raika-sport-state {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 24px;
    text-align: center;
    color: #e9edf2;
    background: #0c1015;
}

.raika-sport-state.hidden {
    display: none !important;
}

.raika-sport-state strong {
    font-size: 18px;
    font-weight: 700;
}

@media (max-width: 767px) {
    html:has(.raika-sport-page),
    body:has(.raika-sport-page) {
        --raika-sport-mobile-top-space: 64px;
        --raika-sport-mobile-bottom-space: calc(74px + env(safe-area-inset-bottom, 0px));
        height: 100vh;
        height: 100dvh;
        min-height: 100vh;
        min-height: 100dvh;
        overflow: hidden;
        background: #090d0f;
    }

    body:has(.raika-sport-page) .raika-app-content {
        height: calc(100vh - var(--raika-sport-mobile-top-space)) !important;
        height: calc(100dvh - var(--raika-sport-mobile-top-space)) !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: #090d0f;
    }

    .raika-sport-page {
        align-items: flex-start;
        height: calc(100dvh - var(--raika-sport-mobile-top-space));
        min-height: calc(100dvh - var(--raika-sport-mobile-top-space));
        max-height: calc(100dvh - var(--raika-sport-mobile-top-space));
        border: 0;
        border-radius: 0;
        overflow: hidden;
        background: #090d0f;
    }

    .raika-sport-frame {
        flex: 0 0 auto;
        height: calc(100dvh - var(--raika-sport-mobile-top-space) - var(--raika-sport-mobile-bottom-space));
        min-height: calc(100dvh - var(--raika-sport-mobile-top-space) - var(--raika-sport-mobile-bottom-space));
        max-height: calc(100dvh - var(--raika-sport-mobile-top-space) - var(--raika-sport-mobile-bottom-space));
        border-inline: 0;
        border-bottom: 0;
        border-radius: 0;
        overscroll-behavior: contain;
    }
}

.raika-sport-state .loading-spinner {
    color: #9da9b8;
}

.raika-sport-state .btn {
    color: #eef2f6;
    border-color: rgba(162, 174, 189, .16);
    background: #242b34;
    box-shadow: none;
}

.raika-sport-state .btn:hover {
    border-color: rgba(162, 174, 189, .26);
    background: #2b333d;
}
