/* ========================================
   NUDO GUÍA - COLORES DINÁMICOS
   Sistema CSS Variables para colores del usuario
   ======================================== */

:root {
    --primary-color: #0d6efd;
    --primary-color-rgb: 13, 110, 253;
    --primary-color-hover: #0b5ed7;
    --primary-color-active: #0a58ca;
    --primary-contrast: #ffffff;
    --primary-readable: #0d6efd;
}

/* Clases de Utilidad para Colores Dinámicos */
.text-primary-dynamic {
    color: var(--primary-color) !important;
}

.bg-primary-dynamic {
    background-color: var(--primary-color) !important;
}

.border-primary-dynamic {
    border-color: var(--primary-color) !important;
}

.btn-primary-dynamic {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: var(--primary-contrast) !important;
}

    .btn-primary-dynamic:hover {
        background-color: var(--primary-color-hover) !important;
        border-color: var(--primary-color-hover) !important;
    }

    .btn-primary-dynamic:active,
    .btn-primary-dynamic.active {
        background-color: var(--primary-color-active) !important;
        border-color: var(--primary-color-active) !important;
    }

/* Form Controls con Focus Dinámico */
.form-control:focus,
.form-select:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--primary-color-rgb), 0.25) !important;
}

/* Gradientes Dinámicos */
.bg-gradient-primary-dynamic {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-color-active) 100%) !important;
}

/* Navegación Sidebar */
.nav-pills .nav-link:hover:not(.disabled) {
    background-color: var(--primary-color) !important;
    color: var(--primary-contrast) !important;
}

.nav-pills .nav-link.active {
    background-color: var(--primary-color) !important;
    color: var(--primary-contrast) !important;
}

/* Outline con color primario legible sobre fondo blanco */
.btn-outline-primary-dynamic {
    border-color: var(--primary-readable) !important;
    color: var(--primary-readable) !important;
    background-color: transparent !important;
}

    .btn-outline-primary-dynamic:hover {
        background-color: var(--primary-readable) !important;
        color: var(--primary-contrast) !important;
    }

/* Dropdowns activos con color primario */
.dropdown-item:active {
    background-color: var(--primary-color) !important;
    color: var(--primary-contrast) !important;
}

/* Badge Counter Styles (Notification Bubbles) */
.badge-counter {
    min-width: 1.5rem;
    height: 1.5rem;
    line-height: 1;
    border-radius: 50% !important;
}

.badge-counter-sm {
    min-width: 1.2rem;
    height: 1.2rem;
    line-height: 1;
    font-size: 0.7rem;
    border-radius: 50% !important;
}

/* Fix for Responsive Tables with Dropdowns */
.table-responsive {
    overflow-x: auto !important;
    min-height: 18rem; /* Space for action menus */
    padding-bottom: 2rem;
}
