       :root {
            /* Tema claro - Colores cálidos */
            --primary-color: #ff6b35;
            --secondary-color: #f7931e;
            --accent-color: #ffbe0b;
            --cart-color:#73D216;
            --warm-bg: #fff8f0;
            --card-bg: #ffffff;
            --text-primary: #2c3e50;
            --text-secondary: #7f8c8d;
            --border-color: #e9ecef;
        }

        [data-theme="dark"] {
            /* Tema oscuro - Colores cálidos */
            --primary-color: #ff7849;
            --secondary-color: #ffa726;
            --accent-color: #ffca28;
            --cart-color:#4E9A06;
            --warm-bg: #1a1a1a;
            --card-bg: #2d2d2d;
            --text-primary: #f8f9fa;
            --text-secondary: #adb5bd;
            --border-color: #495057;
        }

        body {
            background-color: var(--warm-bg);
            color: var(--text-primary);
            transition: all 0.3s ease;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

        .navbar-brand img {
            max-height: 50px;
            width: auto;
        }

        .logo-placeholder {
            background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            height: 60px;
            border-radius: 8px;
            font-weight: bold;
            font-size: 1.2rem;
        }
        
        .logo-img {
            max-height: 60px;
            width: auto;
            object-fit: contain;
            transition: all 0.3s ease;
        }

        .logo-img:hover {
            transform: scale(1.05);
        }

        /* Responsive para móviles */
        @media (max-width: 768px) {
            .logo-img {
                max-height: 45px;
            }
        }

        /* Layout principal */
        .store-container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 20px;
        }

        .products-section {
            margin-bottom: 30px;
        }

        .detail-section {
            background: var(--card-bg);
            border-radius: 12px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
            padding: 20px;
            border: 1px solid var(--border-color);
        }

        /* Categorías */
        .category-bar {
            margin-bottom: 20px;
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
        }

        .category-btn {
            background: var(--card-bg);
            border: 2px solid var(--border-color);
            color: var(--text-primary);
            padding: 8px 16px;
            border-radius: 25px;
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .category-btn:hover {
            background: var(--primary-color);
            color: white;
            border-color: var(--primary-color);
        }

        .category-btn.active {
            background: var(--primary-color);
            color: white;
            border-color: var(--primary-color);
        }

        /* Área de productos */
        .products-area {
            max-height: 60vh;
            overflow-y: auto;
            padding: 10px;
            background: var(--warm-bg);
            border-radius: 12px;
        }

        /* Cards de productos */
        .product-card {
            background: var(--card-bg);
            border: 1px solid var(--border-color);
            border-radius: 12px;
            transition: all 0.3s ease;
            cursor: pointer;
            height: 100%;
            overflow: hidden;
        }

        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 25px rgba(255, 107, 53, 0.2);
            border-color: var(--primary-color);
        }

        .product-card img {
            height: 200px;
            object-fit: contain;
            width: 100%;
        }


/* Productos más compactos en móviles */
@media (max-width: 768px) {
    .product-card img {
        height: 120px;
        object-fit: contain;
    }
    
    .product-card .card-body {
        padding: 8px;
    }
    
    .product-name {
        font-size: 0.9rem;
        margin-bottom: 4px;
    }
    
    .product-description {
        font-size: 0.75rem;
        height: 30px;
        margin-bottom: 6px;
    }
    
    .product-price {
        font-size: 1rem;
    }
}

        .product-card .card-body {
            padding: 15px;
        }

        .product-name {
            font-weight: 600;
            color: var(--text-primary);
            margin-bottom: 8px;
            font-size: 1.1rem;
        }

        .product-description {
            color: var(--text-secondary);
            font-size: 0.9rem;
            margin-bottom: 10px;
            height: 40px;
            overflow: hidden;
        }

        .product-price {
            font-size: 1.3rem;
            font-weight: bold;
            color: var(--primary-color);
        }

        /* Badge contador */
        .badge-counter {
            background: var(--accent-color) !important;
            color: #2c3e50 !important;
            font-weight: bold;
            border: 2px solid white;
        }

/* Tabla detalle */
.detail-table {
    background: var(--card-bg);
    border-radius: 8px;
    overflow: hidden;
    font-size: 0.9rem;
}

.detail-table th {
    background: var(--primary-color);
    color: white;
    border: none;
    padding: 8px 4px;
    font-size: 0.85rem;
}

.detail-table td {
    border-color: var(--border-color);
    padding: 6px 4px;
    color: var(--text-primary);
    font-size: 0.85rem;
}

/* Optimización específica para móviles */
@media (max-width: 768px) {
    .detail-table {
        font-size: 0.8rem;
    }
    
    .detail-table th {
        padding: 6px 2px;
        font-size: 0.75rem;
    }
    
    .detail-table td {
        padding: 4px 2px;
        font-size: 0.75rem;
    }
    
    /* Hacer más compactos los controles de cantidad */
    .btn-group-sm .btn {
        padding: 2px 6px;
        font-size: 0.7rem;
    }
    
    .qty-input {
        width: 50px !important;
        font-size: 0.75rem;
        padding: 2px 4px;
    }
    
    /* Texto más corto en mobile */
    .detail-table th:first-child {
        width: 35%;
    }
    
    .detail-table th:nth-child(2) {
        width: 25%;
    }
    
    .detail-table th:nth-child(3),
    .detail-table th:nth-child(4) {
        width: 18%;
    }
    
    .detail-table th:last-child {
        width: 4%;
    }
}

        .detail-table tfoot th {
            background: var(--secondary-color);
        }

        /* Botones flotantes */
        .floating-buttons {
            position: fixed;
            right: 20px;
            top: 20px;
            display: flex;
            flex-direction: column;
            gap: 10px;
            z-index: 1000;
        }

        .btn-floating {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            box-shadow: 0 4px 12px rgba(0,0,0,0.3);
            transition: all 0.3s ease;
            border: none;
        }

        .btn-floating:hover {
            transform: scale(1.1);
        }

        .btn-cart {
            background: var(--cart-color);
            color: white;
        }

        .btn-theme {
            background: var(--secondary-color);
            color: white;
        }

        /* Modal personalizado */
        .modal-content {
            background: var(--card-bg);
            border: 1px solid var(--border-color);
        }

        .modal-header {
            background: var(--primary-color);
            color: white;
            border-bottom: none;
        }

        .modal-title {
            color: white;
        }

        .btn-close {
            filter: brightness(0) invert(1);
        }

        /* Formulario en modal */
        .form-control {
            background: var(--card-bg);
            border-color: var(--border-color);
            color: var(--text-primary);
        }

        .form-control:focus {
            border-color: var(--primary-color);
            box-shadow: 0 0 0 0.2rem rgba(255, 107, 53, 0.25);
        }

        /* Botones personalizados */
        .btn-primary {
            background: var(--primary-color);
            border-color: var(--primary-color);
        }

        .btn-primary:hover {
            background: var(--secondary-color);
            border-color: var(--secondary-color);
        }

        .btn-success {
            background: #28a745;
            border-color: #28a745;
        }

        /* Responsive */
        @media (max-width: 768px) {
            .store-container {
                padding: 10px;
            }
            
            .products-area {
                max-height: 50vh;
            }
            
            .floating-buttons {
                right: 15px;
                bottom: 15px;
            }
            
            .btn-floating {
                width: 50px;
                height: 50px;
                font-size: 1.2rem;
            }
        }

        /* Animaciones */
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .product-card {
            animation: fadeIn 0.5s ease forwards;
        }

        /* Scrollbar personalizada */
        .products-area::-webkit-scrollbar {
            width: 8px;
        }

        .products-area::-webkit-scrollbar-track {
            background: var(--border-color);
            border-radius: 4px;
        }

        .products-area::-webkit-scrollbar-thumb {
            background: var(--primary-color);
            border-radius: 4px;
        }

#btn-send-order {
    min-width: 200px;
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
    transition: all 0.3s ease;
}

#btn-send-order:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(40, 167, 69, 0.4);
}

@media (max-width: 768px) {
    #btn-send-order {
        min-width: 100%;
        font-size: 1rem;
        padding: 12px;
        margin-top: 15px;
    }
}