<?php
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

// Detectar si estamos en admin o raíz
$in_admin = strpos($_SERVER['PHP_SELF'], '/admin/') !== false;
$base_path = $in_admin ? '../' : '';

// Ajustar require del db.php
require_once __DIR__ . '/db.php';
require_once __DIR__ . '/theme_only.php';

// Ajustar rutas de assets
$css_path = $base_path . 'css/';
$uploads_path = $base_path . 'uploads/';

// Obtener configuración básica
$db = new Database();
$config = $db->query("SELECT nombre_comercio, logo, favicon, color_principal, color_fondo_header FROM configuracion WHERE id = 1")->fetch(PDO::FETCH_ASSOC);

// Valores por defecto
if (!$config) {
    $config = [
        'nombre_comercio' => 'Mi Tienda',
        'logo' => 'default-logo.png',
        'favicon' => 'favicon.ico',  // Valor por defecto para el favicon
        'color_principal' => '#007bff',
        'color_fondo_header' => '#f8f9fa'  // Color por defecto
    ];
}
?>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="color-scheme" content="light dark">
    <title><?php echo htmlspecialchars($config['nombre_comercio']); ?></title>
    
    <?php
    // Modo oscuro
    require_once __DIR__ . '/dark_mode.php';
    echo getDarkModeStyles();
    ?>
    
    <!-- Favicon -->
    <link rel="icon" type="image/x-icon" href="<?php echo $uploads_path; ?>config/<?php echo htmlspecialchars($config['favicon']); ?>">
    
    <!-- Resto de los estilos -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <link rel="stylesheet" href="<?php echo $css_path; ?>styles.css">
    <?php echo getThemeCSS(); ?>
    <style>
        /* Estilos del navbar */
        .navbar, .navbar *, .btn-link {
            background-color: <?php echo htmlspecialchars($config['color_fondo_header']); ?> !important;
        }
        
        /* Botones y enlaces del navbar */
        .navbar .btn-link {
            color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Iconos en el navbar */
        .navbar .fas,
        .navbar .fa,
        .navbar .far,
        .navbar .fab {
            color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Mantener los iconos con el color principal al hacer hover */
        .navbar .btn-link:hover .fas,
        .navbar .btn-link:hover .fa,
        .navbar .btn-link:hover .far,
        .navbar .btn-link:hover .fab {
            color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            opacity: 0.8;
        }

        /* Botones y enlaces */
        .btn-link, 
        .btn-primary,
        .btn-secondary,
        .btn-success,
        .btn-danger,
        .btn-warning,
        .btn-info {
            color: var(--color-fondo) !important;
        }

        /* Hover estados para botones */
        .btn:hover {
            color: var(--color-fondo) !important;
            opacity: 0.9;
        }

        /* Botones con fondo del color principal */
        .btn-primary {
            background-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            color: var(--color-fondo) !important;
        }

        /* Color principal para elementos importantes */
        .text-primary,
        .card-header,
        h1, h2, h3, h4, h5, h6,
        .title,
        .section-title,
        .page-title,
        .legend-title,
        .form-label,          /* Agregado para etiquetas de formulario */
        .card-title,          /* Agregado para títulos de tarjetas */
        legend,              /* Agregado para leyendas de fieldset */
        label.fw-bold {      /* Agregado para labels en negrita */
            color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Fondos con color principal */
        .bg-primary,
        .btn-primary,
        .badge-primary {
            background-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Bordes con color principal */
        .border-primary {
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Hover estados */
        .btn-primary:hover,
        .btn-link:hover {
            opacity: 0.9;
        }

        /* Imagen del logo */
        .navbar-brand img {
            background: transparent !important;
        }

        /* Controles de formulario */
        .form-control:focus,
        .form-select:focus,
        .form-check-input:focus,
        .btn:focus,
        .input-group-text:focus {
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            box-shadow: 0 0 0 0.25rem <?php echo htmlspecialchars($config['color_principal']); ?>40 !important;
        }

        /* Color del borde en hover */
        .form-control:hover,
        .form-select:hover,
        .form-check-input:hover {
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Checkbox y radio cuando están seleccionados */
        .form-check-input:checked {
            background-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Input group con focus */
        .input-group:focus-within {
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Estilos para encabezados de tabla/grilla */
        .table thead th,
        .table-header,
        .grid-header,
        .table > :not(caption) > * > th {
            background-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            color: #fff !important;
            border-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
        }

        /* Estilo para tablas con tema principal */
        .table-primary thead th {
            background-color: <?php echo htmlspecialchars($config['color_principal']); ?> !important;
            color: #fff !important;
        }
    </style>
    
</head>
<body>
    <nav class="navbar navbar-expand-lg shadow-sm">
        <div class="container">
            <a class="navbar-brand p-0" href="<?php echo $base_path; ?>index.php">
                <img src="<?php echo $uploads_path; ?>config/<?php echo htmlspecialchars($config['logo']); ?>" 
                     alt="Logo" 
                     height="40">
            </a>
            <div class="d-flex gap-3">
                <a href="<?php echo $base_path; ?>index.php" class="btn btn-link">
                    <i class="fas fa-home"></i>
                </a>
                <a href="<?php echo $base_path; ?>admin/dashboard.php" class="btn btn-link">
                    <i class="fas fa-bars"></i>
                </a>
            </div>
        </div>
    </nav>
    <div class="container py-4">
