/* ============================================================
   RESPONSIVE — Mobile (max-width: 767.98px)
   ============================================================ */

@media (max-width: 767.98px) {

    /* Navbar: collapse into burger */
    nav .navbar-nav .nav-item a.nav-link {
        padding: 0.75rem 1rem;
    }

    /* Breadcrumb: smaller font, allow wrapping */
    .breadcrumb {
        font-size: 0.85rem;
        padding: 0.4rem 0.6rem;
    }

    /* Tournament summary: info boxes stack vertically */
    .tournament-info-box .row > [class*="col-"] {
        padding-bottom: 0.75rem;
        margin-bottom: 0.5rem;
    }

    .tournament-info-box .row > [class*="col-"]:last-child {
        margin-bottom: 0;
    }

    /* Pair box players: always two per row, avatar smaller */
    .player-avatar .avatar-box {
        /*height: 44px;*/
        /*width: 44px;*/
        /*margin-left: 0.5rem;*/
    }

    .player-avatar .nickname {
        padding-top: 0.5rem;
        font-size: 0.8rem;
    }

    /* Rotation table: horizontal scroll handled by .rotation-scroll */
    .rotation-content .simple-title-row,
    .rotation-content .rotation-table {
        min-width: 750px;
    }

    /* Events table: ensure scroll container works on mobile */
    .events-box .table-scroll-container {
        overflow-x: auto;
    }

    .events-box .table-log {
        min-width: 500px;
    }

    /* Deal game: sections stack vertically */
    .reloaded-game-box-title [class*="col-"] {
        border-right: none !important;
    }

    .game-bids-box,
    .game-distribution-box {
        border-right: none;
    }

    /* Deal game controls: scrollable row of inputs */
    .play-reloaded-game-box-content > .play-reloaded-game-box-content {
        overflow-x: auto;
    }

    .play-reloaded-game-box-content .row.m-0 {
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 0;
        padding-bottom: 4px;
    }

    /* Ranking: single column, scroll on ranking-deal rows */
    .ranking-deal-scroll {
        overflow-x: auto;
    }

    /* Chatroom messages height: reduce on mobile */
    .reloaded-chatroom-box .chatroom .messages {
        height: 200px;
    }

    .tournament-summary .reloaded-chatroom-box .chatroom .messages {
        height: 300px;
    }

    /* Table warning icon: reposition relative to breadcrumb */
    .table-warning {
        position: static !important;
        display: inline-block;
        font-size: 1.8rem;
        margin-left: 0.5rem;
        vertical-align: middle;
    }

    /* Pair box unsubscribe button: always visible on touch */
    .btn-unsubscribe-pair {
        opacity: 0.7;
    }

    /* Leaderboard buttons: full width on mobile */
    .leaderboard-btn {
        padding-top: 12px;
        font-size: 0.8rem;
    }

    /* Bids box: allow wrap instead of overflow on mobile */
    .bids-box {
        flex-wrap: wrap;
    }

    /* Bridge compass: scale down slightly */
    .game-distribution-box .bridge-container .bridge-compass {
        width: 90px;
        height: 90px;
    }

    .game-distribution-box .bridge-container .bridge-compass .compass-grid {
        grid-template-columns: repeat(3, 26px);
        grid-template-rows: repeat(3, 26px);
    }

    .game-distribution-box .bridge-container .bridge-compass .compass-seat {
        width: 26px;
        height: 26px;
    }
}
