/* =========================================================
   Consulta Totales + Consulta Sorteos — móvil compacto
   Demo y Luis — cargar al final del <head>
   ========================================================= */

@media (max-width: 900px) {

    /* ---------- CONSULTA TOTALES ---------- */
    .cg-shell {
        padding: 10px 10px 14px !important;
        min-height: 0 !important;
    }

    .cg-header {
        margin-bottom: 10px !important;
    }

    .cg-sub {
        font-size: 0.82rem !important;
        line-height: 1.35 !important;
    }

    .cg-filters {
        min-height: 0 !important;
        flex: 0 0 auto !important;
        padding: 12px !important;
        gap: 10px !important;
    }

    .cg-filters-row {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        align-items: stretch !important;
    }

    .cg-field {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        gap: 5px !important;
    }

    .cg-vendedor-wrap {
        max-width: 100% !important;
    }

    .cg-vendedor-selected-info {
        margin-top: 4px !important;
        padding: 10px !important;
    }

    .cg-btn {
        width: 100% !important;
        min-height: 48px !important;
    }

    /* ---------- CONSULTA SORTEOS ---------- */
    .cb-shell {
        padding: 10px !important;
        min-height: 0 !important;
    }

    .cb-header {
        padding: 12px 14px !important;
        margin-bottom: 0 !important;
    }

    .cb-title {
        font-size: 1.15rem !important;
    }

    .cb-filters {
        margin-top: 10px !important;
        padding: 12px !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
    }

    .cb-filters-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .cb-field,
    .cb-field-modo,
    .cb-field-juego,
    .cb-field-fecha,
    .cb-field-vend,
    .cb-field-sorteos,
    .cb-field-listero,
    .cb-field-listero-vend {
        display: flex !important;
        flex-direction: column !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        gap: 4px !important;
        margin: 0 !important;
    }

    .cb-label {
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.2 !important;
    }

    .cb-select,
    .cb-date,
    .cb-vend-input,
    .cb-combo-input {
        min-height: 44px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    .cb-date-wrap {
        position: relative !important;
        width: 100% !important;
    }

    .cb-date-wrap .cb-date {
        width: 100% !important;
        padding-right: 52px !important;
    }

    .cb-date-icon-box,
    .cb-field-fecha .cb-date-icon-box {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        width: 44px !important;
        height: 100% !important;
        transform: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .cb-combo {
        position: relative !important;
        width: 100% !important;
    }

    .cb-combo-arrow {
        top: 50% !important;
        right: 8px !important;
        transform: translateY(-50%) !important;
    }

    .cb-vend-hint,
    .cb-vend-hint-strong {
        margin-top: 6px !important;
    }

    .cb-actions {
        width: 100% !important;
        margin-top: 4px !important;
        gap: 8px !important;
    }

    .cb-actions .cb-btn {
        flex: 1 1 auto !important;
        min-height: 48px !important;
    }

    .cb-combo-dropdown {
        max-width: calc(100vw - 28px) !important;
        left: 0 !important;
        right: 0 !important;
    }

    /* Botón Ver lista en tabla */
    .cb-icon {
        min-width: 44px !important;
        min-height: 44px !important;
        padding: 8px 10px !important;
        font-size: 1.1rem !important;
        touch-action: manipulation !important;
        cursor: pointer !important;
        position: relative !important;
        z-index: 2 !important;
    }

    /* Modal lista — forzar visible en Android */
    .cb-modal-overlay {
        position: fixed !important;
        inset: 0 !important;
        display: block !important;
        z-index: 30000 !important;
        background: rgba(0, 0, 0, 0.55) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .cb-modal-lista {
        position: fixed !important;
        inset: 8px !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        z-index: 30010 !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 16px) !important;
        margin: 0 !important;
        transform: none !important;
        pointer-events: auto !important;
        overflow: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .cb-modal-wrap {
        zoom: 1 !important;
        transform: none !important;
        max-width: 100% !important;
    }

    .cb-modal-close {
        min-width: 44px !important;
        min-height: 44px !important;
        z-index: 30020 !important;
    }

    body:has(.cb-modal-overlay) {
        overflow: hidden;
    }
}

@media (max-width: 480px) {
    .cb-modal-top-chips {
        grid-template-columns: 1fr !important;
    }

    .cg-chips {
        grid-template-columns: 1fr !important;
    }
}
