/* *****************************************************

    ** Custom Stylesheet **

    Any custom styling you want to apply should be
    defined here.

***************************************************** */

/* ============================================
   CUSTOM CSS WHMCS - COULEUR PRINCIPALE #235ba0
   ============================================ */

/* Variables de couleur */
:root {
    --primary-color: #235ba0;
    --primary-hover: #1a4378;
    --primary-active: #153660;
    --primary-light: #3a7bc8;
    --primary-soft: rgba(35, 91, 160, 0.1);
    --primary-gradient: linear-gradient(135deg, #235ba0 0%, #1a4378 100%);
}

/* ============================================
   1. BOUTONS PRINCIPAUX
   ============================================ */

/* Boutons primaires */
.btn-primary,
.btn.btn-primary,
a.btn-primary,
input[type="submit"].btn-primary,
input[type="button"].btn-primary,
button.btn-primary {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
    color: #ffffff !important;
    background-image: none !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
    background-color: #1a4378 !important;
    border-color: #1a4378 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 8px rgba(35, 91, 160, 0.3) !important;
}

/* Boutons par défaut qui deviennent primaires */
.btn-default,
.btn.btn-default {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
    color: #ffffff !important;
}

.btn-default:hover,
.btn-default:focus,
.btn-default:active {
    background-color: #1a4378 !important;
    border-color: #1a4378 !important;
    color: #ffffff !important;
}

/* Boutons de succès (optionnel - gardez vert ou changez) */
.btn-success {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

.btn-success:hover {
    background-color: #1a4378 !important;
    border-color: #1a4378 !important;
}

/* Boutons outline */
.btn-outline-primary {
    color: #235ba0 !important;
    border-color: #235ba0 !important;
}

.btn-outline-primary:hover {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
    color: #ffffff !important;
}

/* Boutons dans l'espace client */
.btn-action,
.btn-add-to-cart,
.btn-order-now,
.btn-checkout {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
    color: #ffffff !important;
}

.btn-action:hover,
.btn-add-to-cart:hover,
.btn-order-now:hover,
.btn-checkout:hover {
    background-color: #1a4378 !important;
    border-color: #1a4378 !important;
}

/* ============================================
   2. TITRES ET HEADINGS
   ============================================ */

/* Tous les titres h1 à h6 */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    color: #235ba0 !important;
}

/* Titres de page */
.page-header h1,
.header-lined h1,
.content-header h1 {
    color: #235ba0 !important;
}

/* Titres dans les panneaux */
.panel-heading,
.panel-title,
.card-header,
.card-title {
    color: #235ba0 !important;
}

/* Titres de section */
.section-title,
.sub-heading,
.section-heading {
    color: #235ba0 !important;
}

/* ============================================
   3. LIENS ET NAVIGATION
   ============================================ */

/* Liens principaux */
a {
    color: #235ba0;
}

a:hover,
a:focus {
    color: #1a4378;
}

/* Navigation principale */
.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li > a:focus,
.navbar-main .navbar-nav > .active > a,
.navbar-main .navbar-nav > .open > a {
    color: #235ba0 !important;
}

/* Breadcrumb */
.breadcrumb a {
    color: #235ba0;
}

/* Pagination */
.pagination > .active > a,
.pagination > .active > span {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

.pagination > li > a {
    color: #235ba0;
}

.pagination > li > a:hover {
    color: #1a4378;
    border-color: #235ba0;
}

/* ============================================
   4. NAVIGATION ET MENU
   ============================================ */

/* Menu principal */
.primary-navbar,
.navbar-main {
    border-top-color: #235ba0 !important;
}

/* Items de menu actifs */
.navbar-nav > .active > a,
.nav-pills > .active > a,
.nav-tabs > .active > a {
    background-color: #235ba0 !important;
    color: #ffffff !important;
}

/* Sidebar */
.sidebar .list-group-item.active {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Menu compte client */
.account-nav .nav-item.active .nav-link {
    color: #235ba0 !important;
    border-bottom-color: #235ba0 !important;
}

/* ============================================
   5. FORMULAIRES
   ============================================ */

/* Focus sur les inputs */
.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    border-color: #235ba0 !important;
    box-shadow: 0 0 0 0.2rem rgba(35, 91, 160, 0.25) !important;
}

/* Labels */
label {
    color: #235ba0;
}

/* Checkbox et radio personnalisés */
.custom-control-input:checked ~ .custom-control-label::before,
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Switch toggle */
.switch input:checked + .slider,
.bootstrap-switch .bootstrap-switch-handle-on {
    background-color: #235ba0 !important;
}

/* ============================================
   6. TABLEAUX
   ============================================ */

/* En-têtes de tableaux */
.table thead th,
.datatable thead th,
table.table > thead > tr > th {
    background-color: #235ba0 !important;
    color: #ffffff !important;
}

/* Lignes survolées */
.table-hover tbody tr:hover {
    background-color: rgba(35, 91, 160, 0.05) !important;
}

/* ============================================
   7. BADGES ET LABELS
   ============================================ */

/* Badges */
.badge-primary,
.label-primary {
    background-color: #235ba0 !important;
}

.badge-success,
.label-success {
    background-color: #235ba0 !important;
}

/* Tags */
.tag,
.label {
    background-color: #235ba0 !important;
    color: #ffffff !important;
}

/* ============================================
   8. ALERTES ET NOTIFICATIONS
   ============================================ */

/* Alertes info */
.alert-info {
    background-color: rgba(35, 91, 160, 0.1) !important;
    border-color: #235ba0 !important;
    color: #235ba0 !important;
}

/* Notification badges */
.notification-badge {
    background-color: #235ba0 !important;
}

/* ============================================
   9. ICÔNES ET ÉLÉMENTS SPÉCIAUX
   ============================================ */

/* Icônes principales */
.feature-icon,
.icon-primary {
    color: #235ba0 !important;
}

/* Progress bars */
.progress-bar {
    background-color: #235ba0 !important;
}

/* Tooltips */
.tooltip-inner {
    background-color: #235ba0 !important;
}

.tooltip.top .tooltip-arrow {
    border-top-color: #235ba0 !important;
}

/* ============================================
   10. PANNEAU CLIENT (CLIENT AREA)
   ============================================ */

/* Tiles du dashboard */
.tile:hover {
    border-color: #235ba0 !important;
}

.tile .highlight {
    background-color: #235ba0 !important;
}

/* Stats tiles */
.stat-block .stat-heading {
    color: #235ba0 !important;
}

/* Quick shortcuts */
.quick-nav .quick-nav-item:hover {
    background-color: rgba(35, 91, 160, 0.1) !important;
    border-color: #235ba0 !important;
}

/* ============================================
   11. PANIER ET COMMANDE
   ============================================ */

/* Boutons du panier */
.order-button,
.checkout-button,
.btn-continue-shopping {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Prix en vedette */
.price-highlight,
.featured-price {
    color: #235ba0 !important;
}

/* Steps de commande */
.order-steps .active {
    background-color: #235ba0 !important;
    color: #ffffff !important;
}

/* ============================================
   12. DOMAINES
   ============================================ */

/* Recherche de domaines */
.domain-checker .btn-check-domain,
.domain-search-button {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Disponibilité */
.domain-available {
    color: #235ba0 !important;
}

/* ============================================
   13. TICKETS DE SUPPORT
   ============================================ */

/* Status badges */
.ticket-status-open {
    background-color: #235ba0 !important;
}

/* Priorités */
.priority-high {
    border-left-color: #235ba0 !important;
}

/* ============================================
   14. FACTURATION
   ============================================ */

/* Statuts de facture */
.invoice-status.paid {
    background-color: #235ba0 !important;
}

/* Boutons de paiement */
.btn-pay-now,
.payment-button {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* ============================================
   15. ÉLÉMENTS SPÉCIFIQUES WHMCS
   ============================================ */

/* Navbar secondaire */
.secondary-navbar {
    background-color: rgba(35, 91, 160, 0.05) !important;
}

/* Footer links */
.footer a {
    color: #235ba0;
}

.footer a:hover {
    color: #1a4378;
}

/* Login form */
.login-container .btn,
.logincontainer input[type="submit"] {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Product groups */
.product-group-heading {
    background-color: #235ba0 !important;
    color: #ffffff !important;
}

/* Pricing tables */
.pricing-table .featured {
    border-color: #235ba0 !important;
}

.pricing-table .featured .pricing-title {
    background-color: #235ba0 !important;
}

/* ============================================
   16. RESPONSIVE & MOBILE
   ============================================ */

/* Mobile menu */
@media (max-width: 768px) {
    .navbar-toggle {
        border-color: #235ba0 !important;
    }
    
    .navbar-toggle .icon-bar {
        background-color: #235ba0 !important;
    }
    
    .mobile-menu-toggle:hover {
        color: #235ba0 !important;
    }
}

/* ============================================
   17. OVERRIDES IMPORTANTS
   ============================================ */

/* Force la couleur sur certains éléments têtus */
.btn-primary:not(.btn-danger):not(.btn-warning),
.btn-success:not(.btn-danger):not(.btn-warning) {
    background: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Liens dans les panneaux */
.panel-body a:not(.btn),
.card-body a:not(.btn) {
    color: #235ba0;
}

/* Titres de widgets */
.widget-title,
.widget-heading {
    color: #235ba0 !important;
}

/* ============================================
   18. ANIMATIONS ET TRANSITIONS
   ============================================ */

/* Transitions douces pour tous les boutons */
.btn,
button,
input[type="submit"],
input[type="button"] {
    transition: all 0.3s ease !important;
}

/* Effet de hover amélioré */
.btn:hover {
    transform: translateY(-2px);
}

/* ============================================
   19. CORRECTIFS SPÉCIFIQUES
   ============================================ */

/* Fix pour les boutons dans les modals */
.modal .btn-primary {
    background-color: #235ba0 !important;
    border-color: #235ba0 !important;
}

/* Fix pour les dropdowns */
.dropdown-menu > .active > a {
    background-color: #235ba0 !important;
}

/* Fix pour les tabs */
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    border-color: #235ba0 !important;
    border-bottom-color: #fff !important;
}

/* ============================================
   20. ÉLÉMENTS ADDITIONNELS
   ============================================ */

/* Spinners et loaders */
.spinner-border,
.loading-spinner {
    color: #235ba0 !important;
}

/* Selection de texte */
::selection {
    background: rgba(35, 91, 160, 0.2);
    color: #235ba0;
}

::-moz-selection {
    background: rgba(35, 91, 160, 0.2);
    color: #235ba0;
}

/* Scrollbar (Webkit) */
::-webkit-scrollbar-thumb {
    background: #235ba0;
}

::-webkit-scrollbar-thumb:hover {
    background: #1a4378;
}

/* ============================================
   FIN DU CUSTOM CSS
   ============================================ */

/* ============================================================
   DASHBOARD CLIENT AREA - MODERN CARDS
   ============================================================ */

/* Header */
.dashboard-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fff;
    padding: 25px 30px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 30px;
    border-left: 5px solid var(--primary-color);
}
.dashboard-welcome h2 {
    margin: 0 0 5px 0;
    font-size: 24px;
    font-weight: 700;
    color: #333 !important;
}
.dashboard-welcome p {
    margin: 0;
    color: #777;
    font-size: 15px;
}

/* Stats Cards */
.dashboard-stats {
    margin-bottom: 15px;
}
.stat-card {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 20px;
    transition: all 0.3s ease;
    text-decoration: none !important;
    border: 1px solid #f0f0f0;
}
.stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}
.stat-icon {
    width: 60px;
    height: 60px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #fff;
    margin-right: 15px;
}
.stat-icon.bg-primary { background: linear-gradient(135deg, #235ba0, #3a7bc8); }
.stat-icon.bg-success { background: linear-gradient(135deg, #28a745, #4cd137); }
.stat-icon.bg-danger { background: linear-gradient(135deg, #dc3545, #ff6b81); }
.stat-icon.bg-warning { background: linear-gradient(135deg, #ffc107, #feca57); }

.stat-content {
    display: flex;
    flex-direction: column;
}
.stat-value {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    line-height: 1.2;
}
.stat-name {
    font-size: 13px;
    color: #888;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-top: 5px;
}

/* Search Bar */
.dashboard-search {
    background: #fff;
    padding: 25px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 30px;
}
.dashboard-search .input-group-addon {
    background: #f8f9fa;
    border-color: #e9ecef;
    color: #aaa;
}
.dashboard-search .form-control {
    border-color: #e9ecef;
    box-shadow: none;
    height: 50px;
    font-size: 16px;
}
.dashboard-search .form-control:focus {
    border-color: var(--primary-color);
}
.dashboard-search .btn {
    height: 50px;
    padding: 0 25px;
    font-weight: 600;
}

/* Panels (Boxes) */
.panel-custom {
    border: none;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 30px;
    overflow: hidden;
}
.panel-custom .panel-heading {
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
    padding: 20px 25px;
}
.panel-custom .panel-title {
    font-size: 16px;
    font-weight: 700;
    color: #333 !important;
    display: flex;
    align-items: center;
}
.panel-custom .panel-title i {
    color: var(--primary-color);
    margin-right: 10px;
    font-size: 18px;
}
.panel-custom .panel-body {
    padding: 25px;
}
.panel-custom .list-group-item {
    border: none;
    border-bottom: 1px solid #f8f9fa;
    padding: 15px 25px;
    color: #555;
    transition: all 0.2s;
}
.panel-custom .list-group-item:last-child {
    border-bottom: none;
}
.panel-custom .list-group-item:hover {
    background: #f8f9fa;
    color: var(--primary-color);
    padding-left: 30px;
}
.panel-custom .list-group-item i {
    color: #aaa;
    margin-right: 10px;
    width: 20px;
    text-align: center;
}
.panel-custom .list-group-item:hover i {
    color: var(--primary-color);
}
.panel-custom .panel-footer {
    background: #fcfcfc;
    border-top: 1px solid #f0f0f0;
    padding: 15px 25px;
}

/* Responsive */
@media (max-width: 768px) {
    .dashboard-header {
        flex-direction: column;
        text-align: center;
        padding: 20px;
    }
    .dashboard-action {
        margin-top: 15px;
    }
}
