/*
 * Kareebu Employer Portal Theme
 * Dark theme with yellow/lime primary buttons and purple accents
 */

:root {
    --kareebu-bg-dark: #1a1a1a;
    --kareebu-bg-card: #2d2d2d;
    --kareebu-bg-input: #3a3a3a;
    --kareebu-primary: #c8e600;
    --kareebu-primary-hover: #b5d000;
    --kareebu-accent: #9B59B6;
    --kareebu-accent-light: #a855c9;
    --kareebu-text: #ffffff;
    --kareebu-text-muted: #a0a0a0;
    --kareebu-border: #404040;
}

/* Body and main background */
body.dark-mode {
    background-color: var(--kareebu-bg-dark) !important;
}

/* Content wrapper */
.dark-mode .content-wrapper {
    background-color: var(--kareebu-bg-dark) !important;
}

/* Main sidebar */
.dark-mode .main-sidebar {
    background-color: var(--kareebu-bg-dark) !important;
}

.dark-mode .sidebar-dark-primary {
    background-color: var(--kareebu-bg-dark) !important;
}

/* Navbar - near black */
.dark-mode .main-header {
    background-color: #0d0d0d !important;
    border-bottom: 1px solid var(--kareebu-border);
}

.dark-mode .main-header.navbar-dark {
    background-color: #0d0d0d !important;
}

/* Brand link in navbar */
.dark-mode .brand-link {
    background-color: #0d0d0d !important;
    border-bottom: none !important;
}

/* Sidebar width fix - force full width */
.main-sidebar,
.main-sidebar.sidebar-focused,
.sidebar-mini .main-sidebar,
.sidebar-mini-md .main-sidebar,
.sidebar-mini-xs .main-sidebar {
    width: 250px !important;
    overflow: visible !important;
}

.main-sidebar .brand-link {
    width: 250px !important;
}

.content-wrapper,
.main-footer,
.main-header {
    margin-left: 250px !important;
}

/* Force sidebar text to be visible */
.nav-sidebar .nav-link p,
.sidebar-mini .nav-sidebar .nav-link p,
.sidebar-mini-md .nav-sidebar .nav-link p {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    margin-left: 0 !important;
    white-space: nowrap !important;
}

.sidebar {
    overflow-x: visible !important;
    overflow-y: auto !important;
}

/* Sidebar navigation links */
.dark-mode .nav-sidebar > .nav-item > .nav-link {
    color: var(--kareebu-text-muted);
    border-radius: 0;
    white-space: nowrap;
    overflow: visible;
    width: 100%;
}

.dark-mode .nav-sidebar > .nav-item > .nav-link:hover {
    background-color: var(--kareebu-bg-card);
    color: var(--kareebu-text);
}

/* Active menu item - purple accent */
.dark-mode .nav-sidebar > .nav-item > .nav-link.active {
    background-color: var(--kareebu-accent) !important;
    color: var(--kareebu-text) !important;
}

.dark-mode .sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active {
    background-color: var(--kareebu-accent) !important;
    color: var(--kareebu-text) !important;
}

/* Sidebar headers */
.dark-mode .nav-header {
    color: var(--kareebu-text-muted) !important;
    padding-left: 16px;
}

/* Cards */
.dark-mode .card {
    background-color: var(--kareebu-bg-card);
    border: 1px solid var(--kareebu-border);
    border-radius: 12px;
}

.dark-mode .card-header {
    background-color: transparent;
    border-bottom: 1px solid var(--kareebu-border);
}

/* Primary buttons - yellow/lime */
.dark-mode .btn-primary {
    background-color: var(--kareebu-primary) !important;
    border-color: var(--kareebu-primary) !important;
    color: #1a1a1a !important;
    font-weight: 600;
    border-radius: 25px;
    padding: 10px 24px;
}

.dark-mode .btn-primary:hover,
.dark-mode .btn-primary:focus {
    background-color: var(--kareebu-primary-hover) !important;
    border-color: var(--kareebu-primary-hover) !important;
    color: #1a1a1a !important;
}

/* Secondary/outline buttons */
.dark-mode .btn-secondary,
.dark-mode .btn-outline-secondary {
    background-color: transparent !important;
    border: 2px solid var(--kareebu-text-muted) !important;
    color: var(--kareebu-text) !important;
    border-radius: 25px;
    padding: 10px 24px;
}

.dark-mode .btn-secondary:hover,
.dark-mode .btn-outline-secondary:hover {
    background-color: var(--kareebu-bg-card) !important;
    border-color: var(--kareebu-text) !important;
}

/* Form inputs */
.dark-mode .form-control {
    background-color: var(--kareebu-bg-input) !important;
    border: 1px solid var(--kareebu-border) !important;
    color: var(--kareebu-text) !important;
    border-radius: 8px;
}

.dark-mode .form-control:focus {
    border-color: var(--kareebu-accent) !important;
    box-shadow: 0 0 0 0.2rem rgba(155, 89, 182, 0.25) !important;
}

.dark-mode .custom-select {
    background-color: var(--kareebu-bg-input) !important;
    border: 1px solid var(--kareebu-border) !important;
    color: var(--kareebu-text) !important;
    border-radius: 8px;
}

/* Input groups */
.dark-mode .input-group-text {
    background-color: var(--kareebu-bg-card);
    border-color: var(--kareebu-border);
    color: var(--kareebu-text-muted);
}

/* Tables */
.dark-mode .table {
    color: var(--kareebu-text);
}

.dark-mode .table-bordered {
    border-color: var(--kareebu-border);
}

.dark-mode .table-bordered td,
.dark-mode .table-bordered th {
    border-color: var(--kareebu-border);
}

.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.02);
}

/* Dropdown menus */
.dark-mode .dropdown-menu {
    background-color: var(--kareebu-bg-card);
    border: 1px solid var(--kareebu-border);
}

.dark-mode .dropdown-item {
    color: var(--kareebu-text);
}

.dark-mode .dropdown-item:hover {
    background-color: var(--kareebu-accent);
    color: var(--kareebu-text);
}

/* Login page specific */
.dark-mode .login-page,
.dark-mode .register-page {
    background-color: var(--kareebu-bg-dark) !important;
}

.dark-mode .login-box .card,
.dark-mode .register-box .card {
    background-color: var(--kareebu-bg-card);
    border-radius: 16px;
}

.dark-mode .login-card-body,
.dark-mode .register-card-body {
    background-color: var(--kareebu-bg-card);
}

/* Card outline colors */
.dark-mode .card-primary:not(.card-outline) > .card-header {
    background-color: var(--kareebu-accent);
}

.dark-mode .card-outline.card-primary {
    border-top-color: var(--kareebu-accent) !important;
}

/* Progress bars */
.dark-mode .progress {
    background-color: var(--kareebu-bg-input);
}

.dark-mode .progress-bar {
    background-color: var(--kareebu-primary);
}

/* Badges */
.dark-mode .badge-primary {
    background-color: var(--kareebu-primary);
    color: #1a1a1a;
}

/* Alerts */
.dark-mode .alert-primary {
    background-color: rgba(200, 230, 0, 0.1);
    border-color: var(--kareebu-primary);
    color: var(--kareebu-primary);
}

/* Small info cards */
.dark-mode .small-box {
    border-radius: 12px;
}

.dark-mode .small-box.bg-primary {
    background-color: var(--kareebu-accent) !important;
}

/* User panel in sidebar */
.dark-mode .user-panel {
    border-bottom: 1px solid var(--kareebu-border);
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.dark-mode .user-panel .info {
    color: var(--kareebu-text);
}

/* Logo adjustments for brand link */
.brand-link .brand-image {
    max-height: 40px;
    width: auto;
    margin-left: 0;
    margin-right: 8px;
}

.brand-link .brand-text {
    display: none;
}

/* Preloader */
.dark-mode .preloader {
    background-color: var(--kareebu-bg-dark) !important;
}

/* Remove preloader slide-up animation - just fade out */
.preloader {
    transition: opacity 0.4s ease !important;
}

.preloader.fade-out {
    opacity: 0 !important;
    pointer-events: none;
}

.preloader.hidden {
    display: none !important;
}

/* Scrollbar styling */
.dark-mode ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.dark-mode ::-webkit-scrollbar-track {
    background: var(--kareebu-bg-dark);
}

.dark-mode ::-webkit-scrollbar-thumb {
    background: var(--kareebu-border);
    border-radius: 4px;
}

.dark-mode ::-webkit-scrollbar-thumb:hover {
    background: var(--kareebu-text-muted);
}

/* Footer */
.dark-mode .main-footer {
    background-color: var(--kareebu-bg-card);
    border-top: 1px solid var(--kareebu-border);
    color: var(--kareebu-text-muted);
}

/* Links */
.dark-mode a {
    color: var(--kareebu-accent-light);
}

.dark-mode a:hover {
    color: var(--kareebu-primary);
}

/* Breadcrumb */
.dark-mode .breadcrumb {
    background-color: transparent;
}

.dark-mode .breadcrumb-item a {
    color: var(--kareebu-accent-light);
}

.dark-mode .breadcrumb-item.active {
    color: var(--kareebu-text-muted);
}

/* Nav tabs (dark mode) */
.dark-mode .nav-tabs {
    border-bottom-color: var(--kareebu-border);
}

.dark-mode .nav-tabs .nav-link {
    color: var(--kareebu-text-muted);
    border: 1px solid transparent;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.dark-mode .nav-tabs .nav-link:hover {
    border-color: var(--kareebu-border) var(--kareebu-border) transparent;
    color: var(--kareebu-text);
}

.dark-mode .nav-tabs .nav-link.active {
    background-color: var(--kareebu-bg-card);
    border-color: var(--kareebu-border) var(--kareebu-border) var(--kareebu-bg-card);
    color: var(--kareebu-text);
}

/* Candidate cards */
.candidate-card {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.candidate-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.candidate-card.hearted {
    border-left: 3px solid #e74c3c;
}
