/* App custom styles */

/* Global modern text font */
:root {
  --app-font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif;
  --app-font-serif-numeric: 'Merriweather', Georgia, 'Times New Roman', Times, serif;
}

body {
  font-family: var(--app-font-sans);
}

/* Serif numeric font utility: use Merriweather from Bunny Fonts for all numbers */
.numeric {
  font-family: var(--app-font-serif-numeric) !important;
  /* Prefer tabular, lining figures for statistical readability where supported */
  font-variant-numeric: lining-nums tabular-nums;
  /* Fallback for older engines */
  font-feature-settings: 'lnum' 1, 'tnum' 1;
}

.navbar-brand img {
    height: 1.2rem;
    border-radius: 1rem;
}

/* You can scope numbers inside badges specifically if needed */
.badge.numeric {
  letter-spacing: 0.02em; /* tiny spacing helps legibility for digits */
}

/* Color theme overrides using Bootstrap 5.3 CSS variables */

/***** LIGHT THEME *****/
[data-bs-theme="light"] {
  /* Base colors */
    --bs-body-bg: #f8fafc;           /* slate-50 */
  --bs-body-color: #0f172a;        /* slate-900 */
  --bs-border-color: #e2e8f0;      /* slate-200 */

  /* Brand & semantic palette (modern) */
  --bs-primary: #6366f1;           /* indigo-500 */
  --bs-primary-rgb: 99, 102, 241;
  --bs-secondary: #64748b;         /* slate-500 */
  --bs-secondary-rgb: 100, 116, 139;
  --bs-success: #10b981;           /* emerald-500 */
  --bs-success-rgb: 16, 185, 129;
  --bs-info: #06b6d4;              /* cyan-500 */
  --bs-info-rgb: 6, 182, 212;
  --bs-warning: #f59e0b;           /* amber-500 */
  --bs-warning-rgb: 245, 158, 11;
  --bs-danger: #ef4444;            /* rose/red-500 */
  --bs-danger-rgb: 239, 68, 68;

  /* Links */
  --bs-link-color: var(--bs-primary);
  --bs-link-hover-color: #4f46e5;  /* indigo-600 */

  /* Surfaces */
  --bs-tertiary-bg: #f1f5f9;       /* slate-100 */
}

/* Light mode: improve card separation with subtle shadow and explicit border */
[data-bs-theme="light"] .card {
    --bs-card-bg: #ffffff;
    --bs-card-border-color: #dbe2ea; /* slightly stronger border for light cards */
    border: 1px solid var(--bs-card-border-color) !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
}

[data-bs-theme="light"] .form-select {
    background-color: #fff;
}

/***** DARK THEME *****/
[data-bs-theme="dark"] {
  /* Brand & semantic palette (tuned for dark) */
  --bs-primary: #8b95ff;           /* lighter indigo for contrast */
  --bs-primary-rgb: 139, 149, 255;
  --bs-secondary: #94a3b8;         /* slate-400 */
  --bs-secondary-rgb: 148, 163, 184;
  --bs-success: #34d399;           /* emerald-400 */
  --bs-success-rgb: 52, 211, 153;
  --bs-info: #22d3ee;              /* cyan-400 */
  --bs-info-rgb: 34, 211, 238;
  --bs-warning: #fbbf24;           /* amber-400 */
  --bs-warning-rgb: 251, 191, 36;
  --bs-danger: #f87171;            /* red-400 */
  --bs-danger-rgb: 248, 113, 113;

  /* Links */
  --bs-link-color: var(--bs-primary);
  --bs-link-hover-color: #a5adff;

  /* Surfaces */
  --bs-card-bg: #0f172a;           /* slate-900 */
  --bs-tertiary-bg: #111827;       /* slate-900 slightly different */
}
