/* =========================================================
   Ventas — pantalla completa y adaptación móvil/tablet
   Cargar al final del head (después de ventas*.css)
   ========================================================= */

.ventas-page {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

@media (max-width: 1200px) {
    .ventas-page {
        min-height: 100dvh;
    }

    .menu-superior {
        flex-wrap: wrap;
        gap: 10px;
    }

    .menu-right {
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .saldo-top-wrap {
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}

@media (max-width: 900px) {
    .ventas-page {
        padding-top: 6px;
        gap: 6px;
        min-height: 100dvh;
    }

    .menu-superior {
        margin: 0 8px;
        padding: 10px 12px;
        border-radius: 14px;
    }

    .menu-left,
    .menu-right {
        flex-wrap: wrap;
        gap: 8px;
        width: 100%;
    }

    .menu-left {
        justify-content: flex-start;
    }

    .menu-right {
        justify-content: stretch;
        align-items: stretch;
    }

    .menu-btn {
        font-size: 0.95rem;
        padding: 9px 12px;
    }

    .menu-dropdown-panel {
        left: 0;
        right: auto;
        min-width: min(92vw, 280px);
        max-width: calc(100vw - 24px);
    }

    .saldo-top-wrap {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .saldo-top-wrap > .saldo-actual {
        width: 100%;
        justify-content: space-between;
    }

    .saldo-lcr-mini {
        transform: none;
        transform-origin: initial;
        min-width: 0;
        width: 100%;
    }

    .ventas-contenido {
        flex-wrap: wrap !important;
        overflow-x: hidden !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        gap: 12px !important;
    }

    .ventas-izquierda,
    .col-prohibidos,
    .panel-noticias {
        flex: 1 1 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (max-width: 700px) {
    .menu-superior {
        margin: 0 6px;
        padding: 8px 10px;
    }

    .menu-left {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }

    .menu-dropdown-wrap {
        width: 100%;
        min-width: 0;
    }

    .menu-btn {
        width: 100%;
        justify-content: center;
        font-size: 0.9rem;
        padding: 10px 8px;
    }

    .menu-right {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .juego-pill {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
}

/* Pantallas grandes: usar todo el ancho sin desbordar */
@media (min-width: 1600px) {
    .ventas-page .ventas-contenido.ventas-contenido-compacto {
        max-width: min(96vw, 1680px);
        margin-left: auto;
        margin-right: auto;
    }
}

html.sl-mobile .ventas-page,
html.sl-tablet .ventas-page {
    padding-left: env(safe-area-inset-left, 0);
    padding-right: env(safe-area-inset-right, 0);
    padding-bottom: env(safe-area-inset-bottom, 0);
}
