/* Mobile / PWA — dopasowanie do ekranu (bez nakładki „obróć telefon”) */

@media (max-width: 1023px) and (orientation: landscape) and (pointer: coarse) {
    body:not(.lobby-page) {
        position: fixed;
        inset: 0;
        width: 100%;
        height: 100%;
        max-height: 100%;
        margin: 0;
        padding:
            env(safe-area-inset-top, 0px)
            env(safe-area-inset-right, 0px)
            env(safe-area-inset-bottom, 0px)
            env(safe-area-inset-left, 0px);
        box-sizing: border-box;
        overflow: hidden;
    }

    .game-page {
        position: relative;
        width: 100%;
        max-width: 100%;
        max-height: 100%;
        box-sizing: border-box;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }

    /* Ekran startowy — stała szerokość, bez kurczenia przy klawiaturze */
    html[data-page="lobby"] body.lobby-page {
        position: relative;
        inset: auto;
        width: 100%;
        height: auto;
        min-height: var(--lobby-lock-h, 100svh);
        max-height: var(--lobby-lock-h, none);
        overflow-x: hidden;
        overflow-y: auto;
    }

    html[data-page="lobby"]:not(.lobby-keyboard-focus) .lobby {
        position: fixed;
        left: 50%;
        transform: translateX(-50%);
        width: var(--lobby-box-w, min(400px, 72vw)) !important;
        min-width: var(--lobby-box-w, 300px) !important;
        max-width: var(--lobby-box-w, 400px) !important;
        flex-shrink: 0;
        box-sizing: border-box;
    }

    .game-container {
        flex: 1;
        min-height: 0;
    }

    .game-sidebar {
        min-height: 0;
        max-height: 100%;
        overflow: hidden;
    }

    .game-log {
        flex: 1;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

    .game-log__messages {
        flex: 1;
        min-height: 0;
    }

    .game-log__actions--mobile {
        flex-shrink: 0;
    }
}

/* Przycisk instalacji PWA */
.btn--install {
    margin-top: 10px;
    background: linear-gradient(180deg, #facc15 0%, #d97706 100%);
    color: #111827;
    border: 1px solid rgba(255, 255, 255, 0.28);
    box-shadow: 0 10px 24px rgba(250, 204, 21, 0.22);
    font-weight: 800;
}

.btn--install[hidden] {
    display: none !important;
}
