/* ------------------------------------------------------------------
   PSBD theme tokens - "Refined Slate"

   Single source of truth for the application's colours. To re-theme
   the whole app, change the values below; every layout links this file
   and inline styles carry the literal as a var() fallback.

   Status colours are deliberately NOT part of the theme - they carry
   meaning (stop / go / warn), not branding, so they stay fixed.
   ------------------------------------------------------------------ */

:root {
    /* chrome - header bars, footers, side panels */
    --theme-primary: #1E293B;
    --theme-primary-hover: #334155;

    /* primary action - login / save / submit buttons, links */
    --theme-accent: #2563EB;
    --theme-accent-hover: #1D4ED8;

    /* neutrals */
    --theme-bg: #f4f6f9;
    --theme-card: #ffffff;
    --theme-text: #1f2937;
    --theme-muted: #6b7280;
    --theme-border: #e5e7eb;

    /* status - fixed across every theme */
    --theme-success: #1B5E20;
    --theme-danger: #B71C1C;
    --theme-warning: #E68A00;
    --theme-info: #00707A;
}

/* Utility classes. The literal is repeated before the var() so the
   colour still applies in a browser without custom-property support -
   that browser simply ignores the second declaration. */
.theme-brand-bg {
    background-color: #1E293B;
    background-color: var(--theme-primary);
    color: #ffffff;
}

.theme-accent-bg {
    background-color: #2563EB;
    background-color: var(--theme-accent);
    color: #ffffff;
}

    .theme-accent-bg:hover {
        background-color: #1D4ED8;
        background-color: var(--theme-accent-hover);
    }
