/* public/css/backend.css - DARK MODE THEME */

/* === VARIABLES DE COLOR === */
:root {
    --admin-bg: #1a1a1a;
    --admin-surface: #2a2a2a;
    --admin-primary: #ffffff;
    --admin-secondary: #a0a0a0;
    --admin-border: #444;
    --admin-accent-add: #3a5a40;
    --admin-accent-edit: #34495e;
    --admin-accent-delete: #9a2b2b;
    --admin-font: 'Inter', sans-serif; /* Usamos la misma fuente del frontend */
}

/* === ESTILOS GENERALES Y LOGIN === */
body {
    font-family: var(--admin-font);
    margin: 0;
    color: var(--admin-secondary);
}
body.login-body { background-color: var(--admin-bg); display: flex; justify-content: center; align-items: center; height: 100vh; }
.login-container { background: var(--admin-surface); padding: 2rem; border-radius: 8px; box-shadow: 0 0 20px rgba(0,0,0,0.5); width: 300px; text-align: center; border: 1px solid var(--admin-border); }
.login-container h1 { color: var(--admin-primary); }
.form-group { margin-bottom: 1rem; text-align: left; }
.form-group label { display: block; margin-bottom: 5px; color: var(--admin-secondary); }
.form-group input { width: 100%; padding: 10px; box-sizing: border-box; background-color: var(--admin-bg); border: 1px solid var(--admin-border); color: var(--admin-primary); border-radius: 4px; }
.btn { background-color: var(--admin-primary); color: var(--admin-bg); padding: 12px 15px; border: 1px solid var(--admin-primary); border-radius: 5px; cursor: pointer; width: 100%; font-weight: bold; text-transform: uppercase; transition: all 0.2s ease; }
.btn:hover { background-color: transparent; color: var(--admin-primary); }
.error { color: #ffadad; background: #4e2020; padding: 10px; border: 1px solid #c0392b; border-radius: 5px; margin-bottom: 1rem; }

/* === LAYOUT GENERAL DEL ADMIN === */
.admin-wrapper { display: flex; }
.sidebar { width: 220px; background: #000000; color: var(--admin-primary); min-height: 100vh; border-right: 1px solid var(--admin-border); }
.sidebar .logo-container { padding: 1.5rem; text-align: center; background: #111; }
.sidebar .logo-container img { max-width: 80%; height: auto; }
.sidebar nav ul { list-style: none; padding: 0; }
.sidebar nav a { color: var(--admin-secondary); text-decoration: none; display: block; padding: 1rem 1.5rem; border-bottom: 1px solid var(--admin-border); transition: all 0.2s ease; }
.sidebar nav a:hover, .sidebar nav a.active { background: var(--admin-surface); color: var(--admin-primary); }

.main-content { flex-grow: 1; background-color: var(--admin-bg); }
.admin-header { background: var(--admin-surface); padding: 1rem; border-bottom: 1px solid var(--admin-border); display: flex; justify-content: space-between; align-items: center; color: var(--admin-secondary); }
.admin-header a { color: var(--admin-primary); text-decoration: none; }
.content { padding: 2rem; }
.content h2 { color: var(--admin-primary); margin-top: 0; margin-bottom: 1.5rem; font-size: 1.8rem; }

/* === DASHBOARD === */
.dashboard-stats { display: flex; gap: 1.5rem; }
.stat-card { background: var(--admin-surface); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--admin-border); flex: 1; }
.stat-card h3 { margin-top: 0; color: var(--admin-secondary); }
.stat-card p { font-size: 2rem; font-weight: bold; margin: 0; color: var(--admin-primary); }

/* === TABLAS Y BOTONES DE ACCIÓN === */
.table { width: 100%; border-collapse: collapse; margin-top: 1.5rem; background: var(--admin-surface); border: 1px solid var(--admin-border); }
.table th, .table td { border-bottom: 1px solid var(--admin-border); padding: 1rem; text-align: left; }
.table th { background-color: #111; color: var(--admin-primary); text-transform: uppercase; font-size: 0.8em; letter-spacing: 1px; }
.product-thumbnail { width: 50px; height: 50px; object-fit: cover; border-radius: 4px; }
.btn-add { background-color: var(--admin-accent-add); color: white; text-decoration: none; padding: 10px 15px; border-radius: 5px; display: inline-block; border: none; }
.btn-edit, .btn-delete { color: white; text-decoration: none; padding: 6px 12px; border-radius: 4px; font-size: 0.9em; border: none; cursor: pointer; }
.btn-edit { background-color: var(--admin-accent-edit); }
.btn-delete { background-color: var(--admin-accent-delete); }
.btn-cancel { background-color: #7f8c8d; color: white; text-decoration: none; padding: 10px 15px; border-radius: 5px; display: inline-block; border: none; }

/* === FORMULARIOS === */
.form-admin { background: var(--admin-surface); padding: 2rem; border-radius: 8px; border: 1px solid var(--admin-border); }
.form-admin input[type="text"], .form-admin input[type="number"], .form-admin textarea, .form-admin select, .form-admin input[type="file"] {
    width: 100%;
    padding: 0.8rem;
    background-color: var(--admin-bg);
    border: 1px solid var(--admin-border);
    color: var(--admin-primary);
    border-radius: 4px;
    box-sizing: border-box;
}
.form-admin button[type="submit"] { width: auto; }