/* tashPM design tokens.
   Light theme = Linear-inspired (off-white canvas, indigo accent).
   Dark  theme = Tactical (slate background, neon status accents). */

:root,
[data-theme="light"] {
    /* Surfaces */
    --color-bg:           #fafafb;
    --color-surface:      #ffffff;
    --color-surface-2:    #14151a;  /* near-black sidebar/rail */
    --color-surface-3:    #f3f3f5;  /* subtle row tint, code blocks */
    --color-overlay:      rgba(15, 16, 22, 0.45);
    --color-border:       #e6e7eb;
    --color-border-strong:#d4d6dc;

    /* Text */
    --color-text:         #1a1b22;
    --color-text-muted:   #6b6d78;
    --color-text-soft:    #9498a3;
    --color-text-on-dark: #f5f6f8;
    --color-text-on-accent:#ffffff;

    /* Accent (indigo) */
    --color-accent:        #5b5bd6;
    --color-accent-hover:  #4a4ac0;
    --color-accent-active: #3f3fa8;
    --color-accent-subtle: rgba(91, 91, 214, 0.10);
    --color-accent-ring:   rgba(91, 91, 214, 0.35);

    /* Semantic */
    --color-success: #15803d;
    --color-success-subtle: rgba(21, 128, 61, 0.10);
    --color-warning: #b45309;
    --color-warning-subtle: rgba(180, 83, 9, 0.10);
    --color-danger:  #b91c1c;
    --color-danger-subtle:  rgba(185, 28, 28, 0.10);
    --color-info:    #0369a1;
    --color-info-subtle:    rgba(3, 105, 161, 0.10);

    /* Priority bar colors (left border on cards) */
    --priority-low:      #9ca3af;
    --priority-medium:   #5b5bd6;
    --priority-high:     #d97706;
    --priority-critical: #dc2626;

    /* Radii */
    --radius-sm: 4px;
    --radius:    8px;
    --radius-lg: 12px;
    --radius-pill: 999px;

    /* Spacing scale */
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 24px;
    --space-6: 32px;
    --space-7: 48px;

    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(15, 16, 22, 0.05);
    --shadow:    0 4px 12px rgba(15, 16, 22, 0.08);
    --shadow-lg: 0 16px 40px rgba(15, 16, 22, 0.18);

    /* Typography */
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", "Roboto",
                 "Helvetica Neue", Arial, sans-serif;
    --font-mono: ui-monospace, "SF Mono", "Cascadia Mono", "Cascadia Code",
                 Menlo, Consolas, "Liberation Mono", monospace;
    --font-size-xs: 11px;
    --font-size-sm: 12.5px;
    --font-size:    14px;
    --font-size-md: 15px;
    --font-size-lg: 18px;

    /* Motion */
    --transition: 150ms ease;
    --transition-slow: 220ms ease;

    /* Layout */
    --sidebar-width: 248px;
    --topbar-height: 52px;
}

[data-theme="dark"] {
    color-scheme: dark;

    --color-bg:           #0d1117;
    --color-surface:      #161b22;
    --color-surface-2:    #0a0d12;
    --color-surface-3:    #1c222b;
    --color-overlay:      rgba(0, 0, 0, 0.6);
    --color-border:       #262d36;
    --color-border-strong:#384150;

    --color-text:         #e6edf3;
    --color-text-muted:   #8b949e;
    --color-text-soft:    #636b75;
    --color-text-on-dark: #e6edf3;
    --color-text-on-accent:#ffffff;

    --color-accent:        #7c7cf0;
    --color-accent-hover:  #9090f5;
    --color-accent-active: #6a6ae0;
    --color-accent-subtle: rgba(124, 124, 240, 0.15);
    --color-accent-ring:   rgba(124, 124, 240, 0.45);

    --color-success: #3fb950;
    --color-success-subtle: rgba(63, 185, 80, 0.15);
    --color-warning: #d29922;
    --color-warning-subtle: rgba(210, 153, 34, 0.15);
    --color-danger:  #f85149;
    --color-danger-subtle:  rgba(248, 81, 73, 0.15);
    --color-info:    #58a6ff;
    --color-info-subtle:    rgba(88, 166, 255, 0.15);

    --priority-low:      #6b7280;
    --priority-medium:   #7c7cf0;
    --priority-high:     #d29922;
    --priority-critical: #f85149;

    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow:    0 4px 12px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.6);
}

/* Bootstrap overrides via its CSS vars — keeps utility classes consistent. */
:root {
    --bs-body-bg: var(--color-bg);
    --bs-body-color: var(--color-text);
    --bs-emphasis-color: var(--color-text);
    --bs-secondary-color: var(--color-text-muted);
    --bs-tertiary-color: var(--color-text-soft);
    --bs-secondary-bg: var(--color-surface-3);
    --bs-tertiary-bg: var(--color-surface);
    --bs-body-font-family: var(--font-sans);
    --bs-body-font-size: var(--font-size);
    --bs-border-color: var(--color-border);
    --bs-border-color-translucent: var(--color-border);
    --bs-border-radius: var(--radius);
    --bs-primary: var(--color-accent);
    --bs-link-color: var(--color-accent);
    --bs-link-hover-color: var(--color-accent-hover);
}
