/**
  Blue / White / Grey palette for Tabler variables
  NOTE: "./color-adjustments.css" depends on this file.
*/
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap');

@charset "UTF-8";

/* ===== LIGHT THEME ===== */
:root, [data-bs-theme=light] {
    /* Greys (Slate-ish) */
    --tblr-gray: #475569;            /* 600 */
    --tblr-gray-dark: #0f172a;       /* 900 */
    --tblr-gray-100: #f1f5f9;
    --tblr-gray-200: #e2e8f0;
    --tblr-gray-300: #cbd5e1;
    --tblr-gray-400: #94a3b8;
    --tblr-gray-500: #64748b;
    --tblr-gray-600: #475569;
    --tblr-gray-700: #334155;
    --tblr-gray-800: #1f2937;
    --tblr-gray-900: #0f172a;

    /* Core brand */
    --tblr-primary: #3c97cd;         /* blue-600 */
    --tblr-secondary: #64748b;       /* gray-500 */
    --tblr-success: #16a34a;         /* green-600 */
    --tblr-info: #3b82f6;            /* blue-500 */
    --tblr-warning: #f59e0b;         /* amber-500 (kept for semantics) */
    --tblr-danger: #ef4444;          /* red-500 */
    --tblr-light: #f8fafc;
    --tblr-dark: #0f172a;
    --tblr-muted: #6b7280;           /* neutral-muted */
    --tblr-tabler: var(--tblr-primary);

    /* RGBs */
    --tblr-primary-rgb: 37, 99, 235;
    --tblr-secondary-rgb: 100, 116, 139;
    --tblr-success-rgb: 22, 163, 74;
    --tblr-info-rgb: 59, 130, 246;
    --tblr-warning-rgb: 245, 158, 11;
    --tblr-danger-rgb: 239, 68, 68;
    --tblr-light-rgb: 248, 250, 252;
    --tblr-dark-rgb: 15, 23, 42;
    --tblr-muted-rgb: 107, 114, 128;
    --tblr-tabler-rgb: var(--tblr-primary-rgb);

    /* Text emphasis */
    --tblr-primary-text-emphasis: #1e3a8a;   /* blue-900 */
    --tblr-secondary-text-emphasis: #334155; /* gray-700 */
    --tblr-success-text-emphasis: #14532d;
    --tblr-info-text-emphasis: #1e40af;      /* blue-800 */
    --tblr-warning-text-emphasis: #7c2d12;
    --tblr-danger-text-emphasis: #7f1d1d;
    --tblr-light-text-emphasis: #334155;
    --tblr-dark-text-emphasis: #334155;

    /* Subtle backgrounds/borders */
    --tblr-primary-bg-subtle: #dbeafe;       /* blue-100 */
    --tblr-secondary-bg-subtle: #f1f5f9;     /* gray-100 */
    --tblr-success-bg-subtle: #dcfce7;
    --tblr-info-bg-subtle: #e0f2fe;
    --tblr-warning-bg-subtle: #fef3c7;
    --tblr-danger-bg-subtle: #fee2e2;
    --tblr-light-bg-subtle: #f8fafc;
    --tblr-dark-bg-subtle: #cbd5e1;

    --tblr-primary-border-subtle: #93c5fd;   /* blue-300 */
    --tblr-secondary-border-subtle: #cbd5e1; /* gray-300 */
    --tblr-success-border-subtle: #86efac;
    --tblr-info-border-subtle: #93c5fd;
    --tblr-warning-border-subtle: #fde68a;
    --tblr-danger-border-subtle: #fca5a5;
    --tblr-light-border-subtle: #e2e8f0;
    --tblr-dark-border-subtle: #64748b;

    /* Base typography & surfaces */
    --tblr-body-font-size: 0.875rem;
    --tblr-body-font-weight: 400;
    --tblr-body-line-height: 1.4285714286;
    --tblr-body-color: #0f172a;      /* dark slate */
    --tblr-body-color-rgb: 15, 23, 42;
    --tblr-body-bg: #f8fafc;         /* very light */
    --tblr-body-bg-rgb: 248, 250, 252;

    --tblr-emphasis-color: #000;
    --tblr-emphasis-color-rgb: 0, 0, 0;
    --tblr-secondary-color: rgba(15, 23, 42, .75);
    --tblr-secondary-color-rgb: 15, 23, 42;
    --tblr-secondary-bg: #e2e8f0;
    --tblr-secondary-bg-rgb: 226, 232, 240;
    --tblr-tertiary-color: rgba(15, 23, 42, .5);
    --tblr-tertiary-color-rgb: 15, 23, 42;
    --tblr-tertiary-bg: #f1f5f9;
    --tblr-tertiary-bg-rgb: 241, 245, 249;

    /* Links */
    --tblr-link-color: var(--tblr-primary);
    --tblr-link-color-rgb: var(--tblr-primary-rgb);
    --tblr-link-hover-color: #1d4ed8;        /* blue-700 */
    --tblr-link-hover-color-rgb: 29, 78, 216;

    /* Borders / focus */
    --tblr-border-color: #e5e7eb;            /* gray-200/300 */
    --tblr-border-color-translucent: rgba(107, 114, 128, .16);
    --tblr-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .075);
    --tblr-focus-ring-width: 0.25rem;
    --tblr-focus-ring-opacity: 0.25;
    --tblr-focus-ring-color: rgba(var(--tblr-primary-rgb), .25);

    /* Forms */
    --tblr-form-valid-color: var(--tblr-success);
    --tblr-form-valid-border-color: var(--tblr-success);
    --tblr-form-invalid-color: var(--tblr-danger);
    --tblr-form-invalid-border-color: var(--tblr-danger);

    /* Misc */
    --tblr-danger-text: var(--tblr-danger);
    --tblr-navbar-border-color: transparent;
}

/* ===== DARK THEME ===== */
[data-bs-theme=dark] {
    /* Base surfaces */
    --tblr-body-color: #cbd5e1;               /* gray-300 */
    --tblr-body-color-rgb: 203, 213, 225;
    --tblr-body-bg: #0f172a;                  /* slate-900 */
    --tblr-body-bg-rgb: 15, 23, 42;
    --tblr-emphasis-color: #fff;
    --tblr-emphasis-color-rgb: 255, 255, 255;

    --tblr-secondary-color: rgba(203, 213, 225, .75);
    --tblr-secondary-color-rgb: 203, 213, 225;
    --tblr-secondary-bg: #111827;             /* gray-900 */
    --tblr-secondary-bg-rgb: 17, 24, 39;
    --tblr-tertiary-color: rgba(203, 213, 225, .5);
    --tblr-tertiary-color-rgb: 203, 213, 225;
    --tblr-tertiary-bg: #0b1220;              /* deep navy */

    /* Emphasis */
    --tblr-primary-text-emphasis: #93c5fd;    /* blue-300 */
    --tblr-secondary-text-emphasis: #cbd5e1;  /* gray-300 */
    --tblr-success-text-emphasis: #86efac;
    --tblr-info-text-emphasis: #93c5fd;
    --tblr-warning-text-emphasis: #fde68a;
    --tblr-danger-text-emphasis: #fca5a5;
    --tblr-light-text-emphasis: #e5e7eb;
    --tblr-dark-text-emphasis: #cbd5e1;

    /* Subtle backgrounds/borders */
    --tblr-primary-bg-subtle: #0b1a3a;        /* darkened blue */
    --tblr-secondary-bg-subtle: #0f172a;      /* slate-900 */
    --tblr-success-bg-subtle: #0a1f16;
    --tblr-info-bg-subtle: #0a1630;
    --tblr-warning-bg-subtle: #1f1605;
    --tblr-danger-bg-subtle: #2a0e10;
    --tblr-light-bg-subtle: #111827;
    --tblr-dark-bg-subtle: #0b1220;

    --tblr-primary-border-subtle: #1e3a8a;    /* blue-900 */
    --tblr-secondary-border-subtle: #374151;  /* gray-700 */
    --tblr-success-border-subtle: #14532d;
    --tblr-info-border-subtle: #1e3a8a;
    --tblr-warning-border-subtle: #92400e;
    --tblr-danger-border-subtle: #7f1d1d;
    --tblr-light-border-subtle: #1f2937;
    --tblr-dark-border-subtle: #111827;

    /* Links */
    --tblr-link-color: #60a5fa;               /* blue-400 */
    --tblr-link-hover-color: #93c5fd;         /* blue-300 */
    --tblr-link-color-rgb: 96, 165, 250;
    --tblr-link-hover-color-rgb: 147, 197, 253;

    /* Code, borders, forms */
    --tblr-code-color: #93c5fd;
    --tblr-border-color: #1f2937;             /* gray-800 */
    --tblr-border-color-translucent: var(--tblr-border-color);
    --tblr-form-valid-color: #86efac;
    --tblr-form-valid-border-color: #86efac;
    --tblr-form-invalid-color: #fca5a5;
    --tblr-form-invalid-border-color: #fca5a5;

    /* Surfaces / navbar */
    --tblr-bg-surface: #0b1220;
    --tblr-navbar-bg: var(--tblr-bg-surface);
    --tblr-dark-mode-border-color: #1e293b;
    --tblr-bg-main-color: #0f172a;
    --tblr-bg-forms: var(--tblr-dark-mode-border-color);
    --tblr-navbar-color: rgba(255, 255, 255, 0.72);
    --tblr-bg-surface-tertiary: #ffffff0a;

    /* Keep danger hook */
    --tblr-danger-text: var(--tblr-danger);

    /* Primary & companions in dark inherit from light */
    --tblr-primary: #3c97cd;
    --tblr-primary-rgb: 37, 99, 235;
    --tblr-secondary: #64748b;
    --tblr-secondary-rgb: 100, 116, 139;

    --tblr-navbar-border-color: transparent;
}

html, body {
    font-family: 'Quicksand', ui-sans-serif, system-ui, -apple-system,
    BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
