/*Write your custom style or CSS code here*/

/* Always Fixed Header */
.tt-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    background: var(--white);
    border-bottom: 1px solid var(--border-color);
    box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.06);
    padding: 0.25rem 0 !important;
}

[data-bs-theme="dark"] .tt-header {
    background: var(--header-bg);
    border-color: var(--border-color) !important;
}

/* Remove animation from affix if it still gets applied or inherited */
.affix {
    animation: none !important;
}

/* Add space for fixed header */
body {
    padding-top: 72px; /* Adjust based on header height */
}

/* Ensure breadcrumb and page header are below the header */
.tt-page-header {
    position: relative;
    z-index: 1;
}

/* Common Utilities */
.gap-1 { gap: 0.25rem !important; }
.gap-2 { gap: 0.5rem !important; }
.gap-3 { gap: 1rem !important; }
.gap-4 { gap: 1.5rem !important; }

/* Dark Mode Global Overrides */
[data-bs-theme="dark"] body {
  background-color: var(--body-bg);
  color: var(--body-color);
}

[data-bs-theme="dark"] .card {
  background-color: var(--card-bg);
  border-color: var(--border-color);
  box-shadow: var(--shadow-sm) !important;
}

[data-bs-theme="dark"] .card-header {
  background-color: var(--header-bg);
  border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .table {
  color: var(--body-color) !important;
  border-color: var(--border-color) !important;
}

[data-bs-theme="dark"] .table > :not(caption) > * > * {
    background-color: transparent !important;
    color: inherit !important;
}

[data-bs-theme="dark"] .table thead th {
  background-color: var(--header-bg);
  color: var(--heading-color);
  border-color: var(--border-color);
}

[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select,
[data-bs-theme="dark"] .input-group-text {
  background-color: var(--input-bg);
  border-color: var(--border-color);
  color: var(--body-color);
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
  background-color: var(--input-bg);
  border-color: var(--primary);
  color: var(--body-color);
  box-shadow: 0 0 0 0.25rem rgba(197, 160, 70, 0.25);
}

[data-bs-theme="dark"] .bg-white {
  background-color: var(--card-bg) !important;
}

[data-bs-theme="dark"] .bg-light {
  background-color: var(--header-bg) !important;
}

[data-bs-theme="dark"] .text-dark {
  color: var(--heading-color) !important;
}

[data-bs-theme="dark"] .text-muted {
  color: var(--text-muted) !important;
}

[data-bs-theme="dark"] .border {
  border-color: var(--border-color) !important;
}

[data-bs-theme="dark"] .modal-content {
  background-color: var(--card-bg);
  border-color: var(--border-color);
}

[data-bs-theme="dark"] .dropdown-menu {
  background-color: var(--card-bg);
  border-color: var(--border-color);
  box-shadow: var(--shadow-lg);
}

[data-bs-theme="dark"] .dropdown-item {
  color: var(--body-color);
}

[data-bs-theme="dark"] .dropdown-item:hover {
  background-color: var(--header-bg);
  color: var(--heading-color);
}

[data-bs-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* Component Specific Overrides */
[data-bs-theme="dark"] .tt-page-header {
  background: var(--body-bg) !important;
  border-bottom: 1px solid var(--border-color);
}

[data-bs-theme="dark"] .tt-page-header h1,
[data-bs-theme="dark"] .tt-page-header .text-dark {
  color: var(--heading-color) !important;
}

[data-bs-theme="dark"] .breadcrumb-item a {
  color: var(--primary) !important;
}

[data-bs-theme="dark"] .breadcrumb-item.active {
  color: var(--text-muted) !important;
}

[data-bs-theme="dark"] .breadcrumb-item + .breadcrumb-item::before {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .tt-breadcrumb {
    background-color: transparent !important;
}

[data-bs-theme="dark"] .tt-breadcrumb .breadcrumb {
    background-color: var(--input-bg) !important;
    border: 1px solid var(--border-color);
    border-radius: var(--custom-radius);
}

/* Fix for potential decorative corners */
[data-bs-theme="dark"] .tt-breadcrumb [class*="triangle"],
[data-bs-theme="dark"] .tt-breadcrumb::before,
[data-bs-theme="dark"] .tt-breadcrumb::after,
[data-bs-theme="dark"] .tt-page-header-info::before,
[data-bs-theme="dark"] .tt-page-header-info::after {
    border-color: var(--primary) !important;
    opacity: 0.5;
}

[data-bs-theme="dark"] .list-group-item {
  background-color: var(--card-bg);
  border-color: var(--border-color);
  color: var(--body-color);
}

[data-bs-theme="dark"] .list-group-item-action:hover {
  background-color: var(--header-bg);
  color: var(--heading-color);
}

[data-bs-theme="dark"] .navbar-nav li a {
  color: var(--body-color);
}

[data-bs-theme="dark"] .navbar-nav li a:hover {
  color: var(--primary);
}

[data-bs-theme="dark"] .dropdown-toggle::after {
    border-top-color: var(--text-muted);
}

[data-bs-theme="dark"] .panel-sidebar {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
}

[data-bs-theme="dark"] .panel-sidebar .card-header {
    background-color: var(--header-bg);
    border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .panel-sidebar .panel-title {
    color: var(--heading-color);
}

/* Pagination & Tables */
[data-bs-theme="dark"] .pagination .page-link {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    color: var(--primary);
}

[data-bs-theme="dark"] .pagination .page-link:hover {
    background-color: var(--header-bg);
    border-color: var(--primary);
}

[data-bs-theme="dark"] .pagination .page-item.active .page-link {
    background-color: var(--primary);
    border-color: var(--primary);
    color: white;
}

[data-bs-theme="dark"] .pagination .page-item.disabled .page-link {
    background-color: var(--header-bg);
    border-color: var(--border-color);
    color: var(--text-muted);
}

[data-bs-theme="dark"] .dataTables_info {
    color: var(--text-muted) !important;
}

/* Global Scrollbar Refinement for Dark Mode */
[data-bs-theme="dark"] *::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[data-bs-theme="dark"] *::-webkit-scrollbar-track {
    background: var(--body-bg);
}

[data-bs-theme="dark"] *::-webkit-scrollbar-thumb {
    background: var(--gray);
    border-radius: 10px;
    border: 2px solid var(--body-bg);
}

[data-bs-theme="dark"] *::-webkit-scrollbar-thumb:hover {
    background: var(--text-muted);
}

/* Global Button Refinements */
[data-bs-theme="dark"] .btn-default {
    background-color: var(--input-bg);
    border-color: var(--border-color);
    color: var(--body-color);
}

[data-bs-theme="dark"] .btn-default:hover {
    background-color: var(--header-bg);
    border-color: var(--primary);
    color: var(--heading-color);
}

/* Sidebar Active State Harmony */
[data-bs-theme="dark"] .list-group-item.active {
    background-color: var(--primary-light) !important;
    border-color: var(--primary) !important;
    color: var(--primary) !important;
    font-weight: 600;
}

/* Store & Plan Card Refinements */
[data-bs-theme="dark"] .tt-single-product,
[data-bs-theme="dark"] .tt-custom-radius,
[data-bs-theme="dark"] .skeleton-card {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    color: var(--body-color);
}

[data-bs-theme="dark"] .item-card:hover,
[data-bs-theme="dark"] .package-card:hover,
[data-bs-theme="dark"] .tt-single-product:hover {
    border-color: var(--primary) !important;
    background-color: var(--header-bg) !important;
}

[data-bs-theme="dark"] .package-title,
[data-bs-theme="dark"] .item-title {
    color: var(--heading-color) !important;
}

/* Store Toggles (Pills) */
[data-bs-theme="dark"] .view-toggle-pill,
[data-bs-theme="dark"] .billing-cycle-toggle .btn-group {
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
}

[data-bs-theme="dark"] .toggle-btn,
[data-bs-theme="dark"] .billing-cycle-toggle .btn-outline-primary {
    color: var(--text-muted) !important;
    border: none !important;
}

[data-bs-theme="dark"] .toggle-btn.active,
[data-bs-theme="dark"] .billing-cycle-toggle .btn-primary {
    background-color: var(--primary-dark) !important;
    color: white !important;
    box-shadow: var(--shadow-sm) !important;
}

/* Feature Lists & Badges */
[data-bs-theme="dark"] .qty-badge,
[data-bs-theme="dark"] .selection-indicator i {
    background-color: var(--primary-light) !important;
    color: var(--primary) !important;
}

[data-bs-theme="dark"] .best-seller-badge {
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-darker) 100%) !important;
}

[data-bs-theme="dark"] .tt-group-features-list li,
[data-bs-theme="dark"] .package-items-list li {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .tt-group-head {
    color: var(--primary) !important;
    border-bottom-color: var(--border-color) !important;
}

/* Dropdown & Filter Refinements */
[data-bs-theme="dark"] .dropdown-trigger,
[data-bs-theme="dark"] .dropdown-menu-custom {
    background-color: var(--input-bg) !important;
    border-color: var(--border-color) !important;
    color: var(--heading-color) !important;
}

[data-bs-theme="dark"] .trigger-text,
[data-bs-theme="dark"] .trigger-arrow,
[data-bs-theme="dark"] .dropdown-item-custom {
    color: var(--body-color) !important;
}

[data-bs-theme="dark"] .dropdown-item-custom:hover {
    background-color: var(--header-bg) !important;
    color: var(--primary) !important;
}

[data-bs-theme="dark"] .dropdown-item-custom.active {
    background-color: var(--primary-light) !important;
    color: var(--primary) !important;
}

/* Pagination Harmony */
[data-bs-theme="dark"] .pagination .page-link {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    color: var(--body-color);
}

[data-bs-theme="dark"] .pagination .page-item.active .page-link {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    color: white !important;
}

[data-bs-theme="dark"] .pagination .page-item.disabled .page-link {
    background-color: var(--body-bg);
    border-color: var(--border-color);
    color: var(--text-muted);
}

[data-bs-theme="dark"] .pagination .page-link:hover {
    background-color: var(--header-bg);
    color: var(--primary);
}


/* Global Dark Mode Overrides for Project Lifecycle and Components */
[data-bs-theme="dark"] .bg-soft-primary {
    background-color: rgba(69, 101, 246, 0.15) !important;
    color: #8da2fb !important;
}

[data-bs-theme="dark"] .bg-soft-warning {
    background-color: rgba(241, 180, 76, 0.15) !important;
    color: #fadb9d !important;
}

[data-bs-theme="dark"] .bg-soft-info {
    background-color: rgba(80, 165, 241, 0.15) !important;
    color: #a3d1f8 !important;
}

[data-bs-theme="dark"] .bg-soft-success {
    background-color: rgba(52, 195, 143, 0.15) !important;
    color: #92e6c5 !important;
}

[data-bs-theme="dark"] .bg-soft-danger {
    background-color: rgba(244, 106, 106, 0.15) !important;
    color: #faa4a4 !important;
}

[data-bs-theme="dark"] .nav-tabs {
    border-bottom-color: var(--border-color) !important;
}

[data-bs-theme="dark"] .nav-tabs .nav-link {
    color: #94a3b8;
    border: 1px solid transparent;
}

[data-bs-theme="dark"] .nav-tabs .nav-link:hover {
    border-color: var(--border-color) var(--border-color) transparent;
}

[data-bs-theme="dark"] .nav-tabs .nav-link.active {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) var(--border-color) var(--card-bg) !important;
    color: var(--primary) !important;
}

/* Chat & Messaging */
[data-bs-theme="dark"] .message-bubble {
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .client-message .message-bubble {
    background-color: #1e293b !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .admin-message .message-bubble {
    background-color: rgba(69, 101, 246, 0.1) !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .chat-messages-container,
[data-bs-theme="dark"] .chat-container {
    background-color: #0f172a !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .feedback-input-wrapper textarea,
[data-bs-theme="dark"] .modern-input-wrapper {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

/* Assets & Cards */
[data-bs-theme="dark"] .asset-card,
[data-bs-theme="dark"] .deliverable-card {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .asset-card:hover,
[data-bs-theme="dark"] .deliverable-card:hover {
    border-color: var(--primary) !important;
    background-color: #262f3f !important;
}

[data-bs-theme="dark"] .file-icon-avatar {
    background-color: #0f172a !important;
}

[data-bs-theme="dark"] .lock-overlay {
    background: rgba(15, 23, 42, 0.7) !important;
}

[data-bs-theme="dark"] .bg-light,
[data-bs-theme="dark"] .bg-faded {
    background-color: #1e293b !important;
}

[data-bs-theme="dark"] .text-dark {
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .card-header {
    border-bottom-color: #334155 !important;
}

/* Breadcrumb & Header Refinements */
[data-bs-theme="dark"] .tt-breadcrumb,
[data-bs-theme="dark"] .tt-breadcrumb ol {
    background-color: transparent !important;
}

[data-bs-theme="dark"] .tt-triangle-right {
    border-bottom-color: #0f172a !important;
}

[data-bs-theme="dark"] .tt-page-header-info h1 {
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .tt-page-header.bg-gradient {
    background: linear-gradient(279.3deg, #0f172a 30.98%, #1e293b 70.6%) !important;
}

/* Store Plan Cards */
[data-bs-theme="dark"] .tt-single-product {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .tt-single-product:hover {
    border-color: var(--primary) !important;
    background-color: #262f3f !important;
}

[data-bs-theme="dark"] .tt-product-name h5 {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .tt-product-price .price {
    color: var(--primary) !important;
}

[data-bs-theme="dark"] .tt-group-featured-wrap {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .tt-group-features-list li {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .text-muted {
    color: var(--text-muted) !important;
    opacity: 1 !important;
}

[data-bs-theme="dark"] .text-body {
    color: var(--body-color) !important;
}

[data-bs-theme="dark"] .text-dark {
    color: var(--heading-color) !important;
}

/* Project Specific Refinements */
[data-bs-theme="dark"] .proposal-card.locked {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .lock-overlay {
    background: rgba(15, 23, 42, 0.6) !important;
}

[data-bs-theme="dark"] .lock-icon {
    background: #334155 !important;
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .badge-soft-secondary {
    background-color: #334155 !important;
    color: #cbd5e1 !important;
    border-color: #475569 !important;
}

/* Custom Scrollbars */
[data-bs-theme="dark"] ::-webkit-scrollbar-track {
    background: #0f172a;
}
[data-bs-theme="dark"] ::-webkit-scrollbar-thumb {
    background: #334155;
}
[data-bs-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #475569;
}
