/**
 * RDCONNECT CUSTOM CSS
 * UN SEUL FICHIER pour tous les ajustements custom
 * Basé sur le template YNEX - N'override que le strict nécessaire
 */

/* ===== COULEURS RDCONNECT ===== */
:root {
    --primary-rgb: 8, 145, 178; /* #0891b2 - Cyan RDConnect */
    --primary-color: rgb(8, 145, 178);
    --primary01: rgba(8, 145, 178, 0.1);
    --primary03: rgba(8, 145, 178, 0.3);
    --primary05: rgba(8, 145, 178, 0.5);
    --primary08: rgba(8, 145, 178, 0.8);
}

/* ===== SIDEBAR HEADER - Logo zone ===== */
.main-sidebar-header {
    background: #ffffff !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* ===== SCROLLBAR CUSTOM (cyan) ===== */
.main-sidebar::-webkit-scrollbar {
    width: 6px;
}

.main-sidebar::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.05);
    border-radius: 10px;
}

.main-sidebar::-webkit-scrollbar-thumb {
    background: rgba(8, 145, 178, 0.5);
    border-radius: 10px;
    transition: background 0.3s ease;
}

.main-sidebar::-webkit-scrollbar-thumb:hover {
    background: rgba(8, 145, 178, 0.8);
}

/* ===== SUPPRESSION DES BORDURES NOIRES ===== */
.app-sidebar,
.main-sidebar,
.main-sidebar-header,
.side-menu__item,
.slide {
    border-color: transparent !important;
}

/* Bordure subtile uniquement sur sidebar container */
.app-sidebar {
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,.075) !important;
    border-right: 1px solid rgba(0,0,0,.05) !important;
}

/* ===== BADGES (garde seulement les compteurs numériques) ===== */
/* Les badges texte (PRO, NEW, etc.) sont supprimés dans le HTML */

/* ===== RESPONSIVE MOBILE ===== */
@media (max-width: 991.98px) {
    /* Sur mobile, sidebar fermée par défaut */
    .app-sidebar {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }
    
    /* Sidebar ouverte sur mobile */
    [data-toggled="open"] .app-sidebar {
        transform: translateX(0);
    }
}

/* ===== FIN RDCONNECT CUSTOM CSS ===== */

/* ========================================
   GRID.JS - Thème RDConnect (Cyan #0891b2)
   ======================================== */

/* En-tête du tableau */
.gridjs-th {
    background-color: #0891b2 !important;
    color: white !important;
    font-weight: 600 !important;
    border-color: #0e7490 !important;
}

.gridjs-th:hover {
    background-color: #0e7490 !important;
}

/* Boutons de tri */
.gridjs-sort {
    color: white !important;
}

.gridjs-sort:hover {
    color: #ecfeff !important;
}

/* Lignes du tableau */
.gridjs-tr:hover {
    background-color: #ecfeff !important;
}

.gridjs-td {
    padding: 12px !important;
    vertical-align: middle !important;
}

/* Pagination */
.gridjs-pagination {
    padding: 15px 0 !important;
}

.gridjs-pagination .gridjs-currentPage {
    background-color: #0891b2 !important;
    border-color: #0891b2 !important;
    color: white !important;
}

.gridjs-pagination button:hover:not([disabled]) {
    background-color: #ecfeff !important;
    border-color: #0891b2 !important;
    color: #0891b2 !important;
}

.gridjs-pagination button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Barre de recherche */
.gridjs-search-input {
    border: 1px solid #0891b2 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
}

.gridjs-search-input:focus {
    outline: none !important;
    border-color: #0e7490 !important;
    box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.1) !important;
}

/* Container */
.gridjs-container {
    border-radius: 8px !important;
    overflow: hidden !important;
}

.gridjs-wrapper {
    border-radius: 8px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .gridjs-td {
        font-size: 0.875rem !important;
        padding: 8px !important;
    }
    
    .gridjs-th {
        font-size: 0.875rem !important;
        padding: 10px 8px !important;
    }
}

/* Boutons d'action dans le tableau */
.gridjs-td .btn-group {
    display: flex !important;
    gap: 4px !important;
}

.gridjs-td .btn-sm {
    padding: 4px 8px !important;
    font-size: 0.875rem !important;
}

/* Badges de statut */
.gridjs-td .badge {
    font-size: 0.75rem !important;
    padding: 4px 8px !important;
    font-weight: 500 !important;
}

/* Alignement des cellules */
.gridjs-td-text-center {
    text-align: center !important;
}

.gridjs-td-text-right {
    text-align: right !important;
}

/* État de chargement */
.gridjs-loading {
    background-color: #f9fafb !important;
}

/* Message "Aucun résultat" */
.gridjs-notfound {
    padding: 40px !important;
    text-align: center !important;
    color: #64748b !important;
}

