@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap");

:root {
  
  --primary-color: #4f46e5;

  
  --sidebar-bg: #1e293b;
  --sidebar-hover: #334155;

  
  --bg-color: #ffffff;

  
  --text-light: #f1f5f9;
  --text-muted: #94a3b8;
}

body {
  font-family: "Inter", sans-serif;
  background-color: var(--bg-color);
  overflow-x: hidden;
}

/* --- Dark Mode Variables --- */
[data-bs-theme="dark"] {
  --bg-color: #0f172a; 
  --sidebar-bg: #020617; 
  --card-bg: #1e293b; 
  --text-main: #f8fafc; 
  --text-muted: #94a3b8; 
  --border-color: #334155; 
}

/* --- Dark Mode Base Styles --- */
[data-bs-theme="dark"] body {
  background-color: var(--bg-color);
  color: var(--text-main);
}

/* --- Component Backgrounds & Borders --- */
[data-bs-theme="dark"] .card, 
[data-bs-theme="dark"] .stat-card,
[data-bs-theme="dark"] .chart-container,
[data-bs-theme="dark"] .navbar,
[data-bs-theme="dark"] .list-group-item,
[data-bs-theme="dark"] footer {
  background-color: var(--card-bg) !important;
  color: var(--text-main);
  border-color: var(--border-color) !important;
}

/* --- Text & Heading Colors --- */
[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4,
[data-bs-theme="dark"] h5,
[data-bs-theme="dark"] .fw-bold.text-dark {
  color: var(--text-main) !important;
}

[data-bs-theme="dark"] .text-muted,
[data-bs-theme="dark"] .text-secondary {
  color: var(--text-muted) !important;
}

/* --- Table Styles --- */
[data-bs-theme="dark"] .table {
  color: var(--text-main);
  border-color: var(--border-color);
}
[data-bs-theme="dark"] .table-light {
  background-color: #0f172a;
  color: var(--text-main);
}
[data-bs-theme="dark"] .table thead th {
  background-color: #0f172a;
  color: var(--text-muted);
  border-color: var(--border-color);
}
[data-bs-theme="dark"] .table-hover tbody tr:hover {
  background-color: #334155;
}

/* --- Utility Class Overrides --- */
[data-bs-theme="dark"] .text-dark {
  color: var(--text-main) !important;
}

[data-bs-theme="dark"] .bg-white {
  background-color: var(--card-bg) !important;
  color: var(--text-main);
}

[data-bs-theme="dark"] .bg-light {
  background-color: rgba(255, 255, 255, 0.05) !important;
  color: var(--text-main) !important;
  border-color: var(--border-color) !important;
}

/* GLOBAL SMOOTH TRANSITIONS */
body,
.card,
.navbar,
#sidebar-wrapper,
.list-group-item,
.stat-card,
h1,
h2,
h3,
h4,
h5 {
  
  transition: background-color 0.3s ease, color 0.3s ease,
    border-color 0.3s ease, box-shadow 0.3s ease;
}


[data-bs-theme="dark"] .navbar .rounded-circle.shadow-sm.me-2 {
  background-color: rgba(
    255,
    255,
    255,
    0.2
  ) !important; 
}

/* --- Form Control Styles --- */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
  background-color: #0f172a;
  border-color: #334155;
  color: #f8fafc;
}

[data-bs-theme="dark"] ::placeholder {
  color: #94a3b8 !important;
  opacity: 1;
}

/* --- Special Effects --- */
[data-bs-theme="dark"] .text-rgb {
  background: linear-gradient(
    90deg,
    #ff0000,
    #ff7300,
    #fffb00,
    #48ff00,
    #00ffd5,
    #002bff,
    #7a00ff,
    #ff00c8,
    #ff0000
  );
  
  background-size: 400%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: rgbFlow 10s linear infinite;
  filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.3));
}
