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

:root {
  --primary-color: #FBC005;
  --primary-color-rgb: 251, 192, 5;
  --primary-deep: #CC992F;
  
  --secondary-color: #011F60;
  --accent-color: #CC992F;
  --text-light: #2d3748;
  --text-dark: #f7fafc;
  --bg-light: #ffffff;
  --bg-dark: #030E3B;
  --card-light: #f7fafc;
  --card-dark: #011F60;
  --success-color: #38a169;
  --warning-color: #dd6b20;
  
  --transition-speed: 0.3s;

  /* Theme-neutral variable defaults (Dark Mode values) */
  --navbar-bg: #0b0f19;
  --navbar-text: #ffffff;
  --card-bg: rgba(1, 31, 96, 0.45);
  --card-header-bg: rgba(3, 14, 59, 0.6);
  --input-bg: rgba(3, 14, 59, 0.7);
  --input-border: rgba(255, 255, 255, 0.12);
  --list-item-border: rgba(255, 255, 255, 0.06);

  --text-muted: #ffffff;
  --btn-close-filter: invert(1) grayscale(1) brightness(2);

  --alert-secondary-bg: rgba(255, 255, 255, 0.08);
  --alert-secondary-border: rgba(255, 255, 255, 0.15);
  --alert-secondary-text: #ffffff;

  --alert-primary-bg: rgba(251, 192, 5, 0.12);
  --alert-primary-border: rgba(251, 192, 5, 0.25);
  --alert-primary-text: #FBC005;

  --alert-warning-bg: rgba(221, 107, 32, 0.15);
  --alert-warning-border: rgba(221, 107, 32, 0.3);
  --alert-warning-text: #fbd38d;

  --alert-danger-bg: rgba(220, 53, 69, 0.18);
  --alert-danger-border: rgba(220, 53, 69, 0.3);
  --alert-danger-text: #ff8e98;

  --alert-success-bg: rgba(56, 161, 105, 0.18);
  --alert-success-border: rgba(56, 161, 105, 0.3);
  --alert-success-text: #9ae6b4;

  --alert-info-bg: rgba(0, 188, 212, 0.15);
  --alert-info-border: rgba(0, 188, 212, 0.3);
  --alert-info-text: #9eeaf9;

  --table-info-bg: rgba(0, 188, 212, 0.15);
  --table-info-text: #9eeaf9;
  --table-primary-bg: rgba(251, 192, 5, 0.15);
  --table-primary-text: #FBC005;
}

body.light-mode {
  --bg-dark: #f8fafc;
  --card-dark: #ffffff;
  --text-dark: #1e293b;
  --navbar-bg: #ffffff;
  --navbar-text: #1e293b;
  --card-bg: #ffffff;
  --card-header-bg: #f1f5f9;
  --input-bg: #ffffff;
  --input-border: #cbd5e1;
  --list-item-border: rgba(30, 41, 59, 0.1);

  --text-muted: #4b5563;
  --btn-close-filter: none;

  --alert-secondary-bg: #e2e3e5;
  --alert-secondary-border: #cbd5e1;
  --alert-secondary-text: #1e293b;

  --alert-primary-bg: #fff3cd;
  --alert-primary-border: #ffeeba;
  --alert-primary-text: #856404;

  --alert-warning-bg: #fff3cd;
  --alert-warning-border: #ffeeba;
  --alert-warning-text: #856404;

  --alert-danger-bg: #f8d7da;
  --alert-danger-border: #f5c6cb;
  --alert-danger-text: #721c24;

  --alert-success-bg: #d4edda;
  --alert-success-border: #c3e6cb;
  --alert-success-text: #155724;

  --alert-info-bg: #d1ecf1;
  --alert-info-border: #bee5eb;
  --alert-info-text: #0c5460;

  --table-info-bg: #d1ecf1;
  --table-info-text: #0c5460;
  --table-primary-bg: #fff3cd;
  --table-primary-text: #856404;
}

/* Global resets for the custom dark-theme */
body, input, button, select, textarea, .form-control, .input-group-text {
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

/* Custom scrollbars */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: var(--bg-dark);
}
::-webkit-scrollbar-thumb {
  background: var(--accent-color);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary-color);
}
