/* --- TEMA CORPORACIÓN WEBER MAX --- */
:root {
    --weber-red: #E30613;        /* Rojo extraído del logo */
    --weber-red-hover: #bd040e;  /* Rojo oscuro para cuando pasas el mouse */
    --weber-black: #151515;      /* Negro del logo */
    --weber-black-hover: #000000;
    --whatsapp-green: #25D366;   /* Verde oficial de WhatsApp */
}

body { background-color: #f8f9fa; overflow-x: hidden; }
.hidden { display: none !important; }

/* --- PANEL DE ADMINISTRACIÓN (Sidebar) --- */
.sidebar { min-height: 100vh; background: var(--weber-black); color: white; border-right: 4px solid var(--weber-red); }
.sidebar a { color: #adb5bd; text-decoration: none; padding: 10px; display: block; border-radius: 5px; margin-bottom: 5px; transition: background 0.2s; }
.sidebar a:hover, .sidebar a.active { background: var(--weber-red); color: white; font-weight: bold; }
.admin-main-content h3, .admin-main-content h5 { color: var(--weber-black) !important; font-weight: 800; }

/* --- VITRINA DE PRODUCTOS --- */
.product-card { border-radius: 10px; transition: transform 0.2s; border: 1px solid rgba(0,0,0,0.05) !important; }
.product-card:hover { transform: translateY(-3px); box-shadow: 0 .5rem 1rem rgba(0, 0, 0, 0.15) !important; border-color: rgba(0, 0, 0, 0.3) !important; }
.product-card img { height: 200px; object-fit: contain; background-color: #ffffff; padding: 5px; cursor: pointer; border-radius: 10px 10px 0 0; }
.product-title { font-size: 1rem; margin-bottom: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.2; font-weight: bold; color: var(--weber-black); }

/* --- PRECIOS Y TEXTOS --- */
.price-regular { text-decoration: line-through; color: #6c757d; font-size: 0.9em; }
.price-sale { color: var(--weber-red) !important; font-weight: bold; font-size: 1.3em; }
.text-primary { color: var(--weber-red) !important; } /* Reemplaza textos azules por rojos */
.border-primary { border-color: var(--weber-red) !important; }

/* --- HEADER Y MENÚ DE CATEGORÍAS --- */
.store-header { background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,.08); padding: 15px 0; margin-bottom: 20px; border-bottom: 3px solid var(--weber-black); }
.category-scroll-container { display: flex; overflow-x: auto; gap: 10px; padding-bottom: 10px; scrollbar-width: none; -webkit-overflow-scrolling: touch; cursor: grab; }
.category-scroll-container:active { cursor: grabbing; }
.category-scroll-container::-webkit-scrollbar { display: none; }
.category-pill { white-space: nowrap; padding: 8px 18px; border-radius: 20px; background: #e9ecef; color: #495057; font-weight: bold; transition: all 0.2s; border: 1px solid #ced4da; user-select: none; cursor: pointer; }
.category-pill.active { background: var(--weber-black-hover) !important; color: white !important; border-color: var(--weber-black-hover) !important; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); }
.category-pill:hover:not(.active) { background: #dee2e6; color: var(--weber-black); }

/* --- BOTONES - REDISEÑO CORPORATIVO --- */
.btn-icon-round { width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 18px; padding: 0; transition: transform 0.2s; border: none; background: transparent; }
.btn-icon-round:hover { transform: scale(1.1); }

/* Icono del Carrito en el Header */
.store-header .btn-outline-warning { border-color: var(--weber-black); color: var(--weber-black); }
.store-header .btn-outline-warning:hover { background-color: var(--weber-black); color: white; }
.store-header .btn-outline-warning i { color: inherit !important; }
.badge.bg-danger { background-color: var(--weber-red) !important; }

/* Botones "Ver Detalles" (Negro Elegante) */
.product-card .btn-outline-success { color: var(--weber-red) !important; border-color: var(--weber-red-hover) !important; font-weight: bold; }
.product-card .btn-outline-success:hover { background-color: var(--weber-red) !important; color: white !important; }

/* Botones Principales (Agregar al Carrito, Guardar) */
.btn-success, .btn-primary { background-color: var(--weber-red) !important; border-color: var(--weber-red) !important; color: white !important; font-weight: bold; }
.btn-success:hover, .btn-primary:hover { background-color: var(--weber-red-hover) !important; border-color: var(--weber-red-hover) !important; }

/* Excepción: Botones de WhatsApp se mantienen verdes */
#btnHeaderWhatsapp { color: var(--whatsapp-green) !important; border-color: var(--whatsapp-green) !important; }
#btnHeaderWhatsapp:hover { background-color: var(--whatsapp-green) !important; color: white !important; }
button[onclick="procesarPagoWhatsApp()"] { background-color: var(--whatsapp-green) !important; border-color: var(--whatsapp-green) !important; }
button[onclick="procesarPagoWhatsApp()"]:hover { background-color: #1ea952 !important; }

/* --- ZONAS DE DRAG & DROP Y MODALES --- */
#modalProdImg { max-height: 300px; object-fit: contain; width: 100%; }
.pointer { cursor: pointer; }
.modal-backdrop.show { opacity: 0.85; background-color: var(--weber-black); }
.form-check-input:checked { background-color: var(--weber-red); border-color: var(--weber-red); }

/* Zonas de carga de imágenes (ahora con el foco Rojo Weber) */
.img-dropzone { border: 2px dashed #ced4da; border-radius: 8px; transition: all 0.3s ease; position: relative; overflow: hidden; height: 140px; display: flex; align-items: center; justify-content: center; background: #f8f9fa; cursor: pointer; }
.img-dropzone.active-zone { border-color: var(--weber-red); background-color: rgba(227, 6, 19, 0.05); box-shadow: 0 0 0 0.25rem rgba(227, 6, 19, 0.25); }
.img-dropzone:hover:not(.active-zone) { border-color: var(--weber-black); }
.img-dropzone img { max-height: 100%; max-width: 100%; object-fit: contain; z-index: 1; }
.img-dropzone .empty-text { z-index: 1; pointer-events: none; }
.img-actions { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); display: flex; align-items: center; justify-content: center; gap: 15px; opacity: 0; transition: opacity 0.2s ease; z-index: 2; }
.img-dropzone.has-image:hover .img-actions { opacity: 1; }
.img-dropzone.has-image .empty-text { display: none; }

/* --- TABLAS DE VENTAS --- */
.venta-card { border-left: 5px solid #6c757d; }
.venta-card.verificado { border-left-color: var(--weber-black); }
.venta-card.eliminado { border-left-color: var(--weber-red); opacity: 0.7; }
.border-primary.border-start.border-5 { border-color: var(--weber-red) !important; }

#loader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.95); z-index: 9999; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.spinner-border.text-primary { color: var(--weber-red) !important; }

/* RESPONSIVE */
@media (max-width: 768px) {
    #admin-sidebar { position: fixed; left: -260px; top: 0; z-index: 1050; transition: left 0.3s ease; height: 100vh; box-shadow: 2px 0 10px rgba(0,0,0,0.5); }
    #admin-sidebar.show-mobile { left: 0; }
    #admin-overlay { display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.5); z-index: 1040; }
    #admin-overlay.active { display: block; }
    .admin-main-content { width: 100vw !important; padding: 15px !important; }
}

@media (max-width: 576px) {
    .product-card img { height: 140px; } 
    .product-card .card-body { padding: 0.7rem; } 
    .product-title { font-size: 0.85rem; } 
    .price-sale { font-size: 1.05rem; } 
    .btn-sm-mobile { padding: 0.25rem 0.5rem; font-size: 0.875rem; border-radius: 0.2rem; } 
}