/* ============================================================================
   Signal design tokens — THE single source of truth for the "dusk" brand.
   ----------------------------------------------------------------------------
   This file is the ONE place the Signal palette + type live. Every app that
   wears the Signal skin (chat / Open WebUI, the authentik login, the Signal
   web app) consumes THESE values through a thin, per-app
   "adapter" stylesheet that maps `--signal-*` onto that app's own variables.

   Edit a value here, then re-vendor + redeploy each consumer (see README.md).
   Do NOT add app-specific selectors or remaps here — those belong in adapters.

   WHY the `--signal-` prefix: these custom properties get injected into apps
   that already define their own `--accent`, `--paper`, `--font-*`, etc. The
   namespace guarantees we never collide with a host app's variables. The
   convention was set by the Signal web app's own theme.

   Source of the values: the Signal web app's dusk tokens
   (signal/web/src/app/globals.css). Keep in sync when the web app evolves.
   ============================================================================ */

:root {
    /* ---- Surfaces (deep navy-purple "paper") -------------------------------- */
    --signal-paper:        #0f1020;   /* page background                         */
    --signal-paper-raised: #1a1b2e;   /* lifted cards / panels / menus           */
    --signal-paper-inset:  #14152a;   /* slightly raised surface (inputs, rows)  */

    /* ---- Ink (pale lavender-white, never pure white) ------------------------ */
    --signal-ink:          #ece9f5;   /* primary text                            */
    --signal-ink-soft:     #b3aecb;   /* secondary text                          */
    --signal-ink-faint:    #8d89aa;   /* tertiary / meta text — lightened from
                                         #7c789a so it clears WCAG AA (4.5:1) on
                                         raised surfaces too, not just the base */

    /* ---- Hairlines / borders ------------------------------------------------ */
    --signal-rule:         #272844;   /* hairline borders                        */
    --signal-rule-strong:  #383a5e;   /* stronger borders                        */

    /* ---- Crimson brand accent ----------------------------------------------- */
    --signal-accent:        #c41e3a;  /* crimson brand (solid fills, buttons)    */
    --signal-accent-deep:   #e0485f;  /* brighter crimson for text/links on dark */
    --signal-accent-bright: #f3a3ab;  /* light crimson (on error/wine grounds)   */
    --signal-accent-tint:   #241a26;  /* deep wine wash (cool-warm bridge)       */
    --signal-gold:          #d8b25a;  /* secondary editorial accent (counters)   */

    /* ---- Misc tokens -------------------------------------------------------- */
    --signal-selection:    #3a2336;   /* text-selection highlight (deep wine)    */
    --signal-radius:       10px;      /* card / surface corner radius            */

    /* ---- Type stacks --------------------------------------------------------
       The web-font FILES are delivered per-consumer (next/font self-host for the
       Signal web app; self-hosted variable woff2 for commute-tracker; an @import
       for the CSS-injection apps — chat, authentik). These stacks name the
       families + fallbacks; an adapter is responsible for actually loading
       Source Serif 4 / Inter Tight. (The original Fraunces/Newsreader/Inter trio
       was retired when the Signal web app moved; synced here 2026-08-04.) */
    --signal-font-ui:      'Inter Tight', system-ui, -apple-system, "Segoe UI", sans-serif;
    --signal-font-display: 'Source Serif 4', Georgia, "Times New Roman", serif;
    --signal-font-read:    'Source Serif 4', Georgia, "Times New Roman", serif;
}
