/*
 * CTHub - CloudTree Customer Portal
 * Brand overrides for Bootstrap 5
 */

/* ========================================
   Brand Colours
   ======================================== */
:root {
    --ct-primary: #015501;
    --ct-primary-hover: #017201;
    --ct-accent: #008000;
    --ct-dark: #1a1a2e;
    --ct-light: #f8f9fa;
}

/* ========================================
   Typography
   ======================================== */
body {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #333;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'Montserrat', 'Roboto', sans-serif;
    font-weight: 600;
}

/* ========================================
   Brand Button & Background Utilities
   ======================================== */
.btn-cthub-primary {
    background-color: var(--ct-primary);
    border-color: var(--ct-primary);
    color: #fff;
}

.btn-cthub-primary:hover,
.btn-cthub-primary:focus {
    background-color: var(--ct-primary-hover);
    border-color: var(--ct-primary-hover);
    color: #fff;
}

.bg-cthub-primary {
    background-color: var(--ct-primary) !important;
}

.text-cthub-primary {
    color: var(--ct-primary) !important;
}

/* ========================================
   Navbar
   ======================================== */
.navbar-dark.bg-cthub-primary {
    background-color: var(--ct-primary) !important;
}

.navbar-brand {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    letter-spacing: 0.5px;
}

/* ========================================
   Sidebar
   ======================================== */
.sidebar {
    min-height: calc(100vh - 56px);
    border-right: 1px solid #dee2e6;
}

.sidebar .nav-link {
    color: #555;
    padding: 0.75rem 1rem;
    border-radius: 0;
    transition: background-color 0.15s, color 0.15s;
}

.sidebar .nav-link:hover {
    background-color: #e9ecef;
    color: var(--ct-primary);
}

.sidebar .nav-link.active {
    color: var(--ct-primary);
    font-weight: 600;
    background-color: rgba(1, 85, 1, 0.08);
    border-left: 3px solid var(--ct-primary);
}

.sidebar .nav-link i {
    width: 20px;
    text-align: center;
}

/* ========================================
   Cards
   ======================================== */
.card {
    border: none;
    border-radius: 0.5rem;
}

.card-header {
    background-color: var(--ct-light);
    border-bottom: 1px solid #dee2e6;
}

/* ========================================
   Footer
   ======================================== */
.footer {
    font-size: 0.85rem;
}

/* ========================================
   Responsive adjustments
   ======================================== */
@media (max-width: 767.98px) {
    .sidebar {
        min-height: auto;
        border-right: none;
        border-bottom: 1px solid #dee2e6;
    }
}
