/* =============================================
   ESTILOS PERSONALIZADOS SIDEBAR
   ============================================= */

/* Color de fondo del sidebar */
.vertical-menu {
    background-color: #0F172A !important;
}

/* Color de los enlaces del menú */
#sidebar-menu ul li a {
    color: #94a3b8 !important;
}

#sidebar-menu ul li a:hover {
    color: #ffffff !important;
}

#sidebar-menu ul li a i {
    color: #94a3b8 !important;
}

#sidebar-menu ul li a:hover i {
    color: #ffffff !important;
}

/* Color del título del menú */
.menu-title {
    color: #64748b !important;
}

/* Color de los elementos activos */
.mm-active {
    color: #3d8ef8 !important;
}

.mm-active > a {
    color: #3d8ef8 !important;
    background-color: rgba(61, 142, 248, 0.1) !important;
    border-radius: 6px;
}

.mm-active > a i {
    color: #3d8ef8 !important;
}

/* Estilo para el enlace activo específico */
#sidebar-menu ul li a.active {
    color: #ffffff !important;
    background-color: rgba(61, 142, 248, 0.15) !important;
    border-left: 3px solid #3d8ef8;
    font-weight: 500;
}

#sidebar-menu ul li a.active i {
    color: #3d8ef8 !important;
}

/* Estilo para submenú activo */
#sidebar-menu .sub-menu li a.active {
    color: #3d8ef8 !important;
    background-color: rgba(61, 142, 248, 0.12) !important;
    border-left: 3px solid #3d8ef8;
    padding-left: 20px;
}

/* Animación suave para el toggle del sidebar */
.vertical-menu {
    transition: all 0.3s ease-in-out;
}

.main-content {
    transition: margin-left 0.3s ease-in-out;
}

.navbar-brand-box {
    transition: width 0.3s ease-in-out;
    background: #0F172A !important;
}

/* Ajuste del logo box con el nuevo color */
.navbar-brand-box {
    transition: width 0.3s ease-in-out;
    background: #0F172A !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.navbar-brand-box .logo img {
    transition: all 0.3s ease-in-out;
}

/* Estado colapsado del sidebar (modo compacto) */
body.vertical-collpsed .vertical-menu {
    width: 70px !important;
}

body.vertical-collpsed .main-content {
    margin-left: 70px !important;
}

body.vertical-collpsed .navbar-brand-box {
    width: 70px !important;
}

body.vertical-collpsed .logo span.logo-lg {
    display: none;
}

body.vertical-collpsed .logo span.logo-sm {
    display: block;
}

/* Ocultar texto en modo colapsado */
body.vertical-collpsed #sidebar-menu ul li a span {
    display: none;
}

body.vertical-collpsed .menu-title {
    display: none;
}

body.vertical-collpsed #sidebar-menu ul li a {
    text-align: center;
    padding: 0.875rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
}

body.vertical-collpsed #sidebar-menu ul li a i {
    margin: 0;
    font-size: 1.4rem;
    min-width: auto;
}

/* Hover en modo colapsado con fondo */
body.vertical-collpsed #sidebar-menu ul li a:hover {
    background-color: #64748b !important;
    border-radius: 0;
    color: #ffffff !important;
}

body.vertical-collpsed #sidebar-menu ul li a:hover i {
    color: #ffffff !important;
}

/* Item activo en modo colapsado */
body.vertical-collpsed #sidebar-menu ul li.mm-active > a {
    background-color: #64748b !important;
    border-radius: 0;
    color: #ffffff !important;
}

body.vertical-collpsed #sidebar-menu ul li.mm-active > a i {
    color: #ffffff !important;
}

/* Estilos para submenú desplegable */
#sidebar-menu ul li ul.sub-menu {
    background-color: #0F172A !important;
}

#sidebar-menu ul li ul.sub-menu li a {
    color: #ffffff !important;
    background-color: #0F172A !important;
}

#sidebar-menu ul li ul.sub-menu li a:hover {
    color: #ffffff !important;
    background-color: #475569 !important;
}

.dropdown-menu-lg .notification-item {
    white-space: normal;
}

.dropdown-menu-lg .notification-item .notification-message {
    max-width: 24rem;
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

/* Item padre con submenú cuando está expandido */
#sidebar-menu ul li.mm-active.has-arrow > a {
    color: #821717 !important;
    background-color: #64748b !important;
}

#sidebar-menu ul li.mm-active.has-arrow > a i {
    color: #ffffff !important;
}

/* Item con submenú en hover */
#sidebar-menu ul li a.has-arrow:hover {
    color: #ffffff !important;
    background-color: #475569 !important;
}

#sidebar-menu ul li a.has-arrow:hover i {
    color: #ffffff !important;
}

.acciones-cuenta-toolbar {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
    margin-left: auto;
    width: 100%;
}

.acciones-cuenta-toolbar .btn,
.acciones-cuenta-toolbar .btn-group {
    flex-shrink: 0;
}

.acciones-cuenta-columna {
    white-space: nowrap;
    text-align: right !important;
    vertical-align: middle !important;
    padding-right: 0.75rem !important;
    padding-left: 0.25rem !important;
}

.acciones-cuenta-toolbar .btn.dropdown-toggle::after {
    display: none;
}

.acciones-cuenta-toolbar .btn-icon {
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 rgba(0,0,0,0);
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.acciones-cuenta-toolbar .btn-icon:hover {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
    transform: translateY(-1px);
}

.acciones-cuenta-toolbar .btn-icon i {
    font-size: 1.1rem;
}

.acciones-cuenta-dropdown {
    display: inline-flex;
}

.acciones-cuenta-dropdown .dropdown-menu {
    min-width: 220px;
    padding: 0.35rem 0;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18);
    border-radius: 0.75rem;
    right: 0;
    left: auto;
}

.acciones-cuenta-menu {
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
}

.acciones-cuenta-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.45rem 1rem;
    font-size: 0.9rem;
}

.acciones-cuenta-menu .dropdown-item:hover {
    background-color: rgba(61, 142, 248, 0.08);
}

.acciones-cuenta-menu .dropdown-item-icon {
    font-size: 1.05rem;
    width: 1.25rem;
    text-align: center;
}

.acciones-cuenta-menu .dropdown-item span {
    flex: 1;
}

.acciones-cuenta-menu .dropdown-divider.dropdown-compact-separator {
    margin: 0.35rem 0 0.9rem;
}

.dropdown-menu {
    z-index: 9999;
}

.table-responsive {
    overflow: visible !important;
}

.btn-soft-primary {
    color: #3d8ef8;
    background-color: rgba(61, 142, 248, 0.12);
    border: none;
}

.btn-soft-primary:hover,
.btn-soft-primary:focus {
    color: #0f172a;
    background-color: rgba(61, 142, 248, 0.24);
}

.cuentas-cobro-table-responsive {
    overflow: visible !important;
}

.cuentas-cobro-table-responsive .dropdown-menu,
.dataTables_wrapper .acciones-cuenta-dropdown .dropdown-menu {
    z-index: 9999;
}

/* =============================================
   BADGES PERSONALIZADOS
   ============================================= */

/*   .badge {
    font-size: 0.85rem !important;
    padding: 0.5em 0.85em !important;
    font-weight: 500 !important;
}
*/