/* ============================================================
   QUANTUM VAULT - THEME DARK GLOBAL
   Estilo profesional, coherente y reutilizable
   ============================================================ */

/* ------ Colores principales ------ */
:root {
    --qv-bg: #0f0f11;
    --qv-bg-alt: #18181b;
    --qv-card: #1d1d21;
    --qv-border: #2a2a2e;
    --qv-text: #e6e6e6;
    --qv-text-muted: #a1a1aa;
    --qv-primary: #6c63ff;          /* color violeta sci-fi */
    --qv-primary-hover: #5a53e6;
    --qv-success: #3ddc84;
    --qv-danger: #ff5f5f;
    --qv-warning: #ffc145;
}

/* ------ Fondo global ------ */
body {
    background-color: var(--qv-bg);
    color: var(--qv-text);
    font-family: "Inter", sans-serif;
}

/* ------ Tarjetas ------ */
.card {
    background-color: var(--qv-card) !important;
    border: 1px solid var(--qv-border);
    color: var(--qv-text);
    border-radius: 12px;
}

/* ------ Inputs ------ */
.form-control {
    background-color: #232327 !important;
    border: 1px solid var(--qv-border);
    color: var(--qv-text);
}

.form-control:focus {
    background-color: #2b2b30 !important;
    border-color: var(--qv-primary);
    color: #fff;
    box-shadow: none;
}

/* ------ Labels ------ */
label {
    color: var(--qv-text-muted) !important;
    font-weight: 500;
}

/* ------ Botones ------ */
.btn-primary {
    background-color: var(--qv-primary);
    border: none;
}

.btn-primary:hover {
    background-color: var(--qv-primary-hover);
}

/* ------ Links ------ */
a {
    color: var(--qv-primary);
    text-decoration: none;
}

a:hover {
    color: var(--qv-primary-hover);
    text-decoration: underline;
}

/* ------ Mensajes de error y éxito ------ */
.text-danger {
    color: var(--qv-danger) !important;
}

.text-success {
    color: var(--qv-success) !important;
}

/* ------ Cards especiales (dashboard futuro) ------ */
.qv-widget {
    background-color: var(--qv-card);
    padding: 20px;
    border-radius: 10px;
    border: 1px solid var(--qv-border);
    transition: 0.2s;
}

.qv-widget:hover {
    border-color: var(--qv-primary);
}

/* ------ Header global: moved to assets/css/style.css (consolidated) ------ */

/* ------ Grid general para dashboard ------ */
.qv-grid {
    display: grid;
    gap: 20px;
}

/* ------ Animaciones suaves ------ */
.qv-fade {
    animation: fadeIn 0.4s ease;
}

@keyframes fadeIn {
    from { opacity: 0; translate: 0 5px; }
    to { opacity: 1; translate: 0 0; }
}
