/*
    The default theme pack's L1 TOKEN LAYER — increments 3.13a/3.13b
    (docs/17-theme-and-ui-replaceability.md § 2 and § 4; decisions D234, D235 and D237).

    This file is the promoted HOME of the platform's design tokens. It is a platform-owned static asset
    under the platform's own static root, so it is base-path correct through the URL helper, works with
    JavaScript disabled, and needs no CDN, no build step and no Node runtime (D10, D122 rule 5).

    THE VISUAL LANGUAGE (3.13b). The owner signed off option (a) T1 — the hand-written token + component
    layer, no framework and no build step — with the *visual language refreshed* to a flat, compact,
    modern look (a system-UI type stack, hairline borders, a small radius, a tighter density and a
    single strong blue). That is a presentation change only: the pack is still the ONE declaration site
    of the tokens, the shared component sheet only CONSUMES them through var(), and no page markup
    changes (D73). WHAT STANDS is scoped: the seam (D234), the contract (D235) and the invariants
    (D10, D73, D122, D125) all hold. WHAT WAS SUPERSEDED is exactly one clause — the palette-and-
    "Segoe UI" clause of D235 rule 1: the owner's Q123 sign-off of 2026-09-27 replaced it, so this
    pack keeps neither the delivered palette nor "Segoe UI", by that decision and not by drift.

    MOTION IS THEME-OWNED (D237 rule 4). The durations and the easing below are L1 tokens; ONLY the L2
    component layer (components.css) consumes them, so any theme can tune or remove motion. Every
    animation the component layer applies collapses to effectively zero duration under
    prefers-reduced-motion (D237 rule 3, docs/17 invariant 7) — the collapse is written in
    components.css, next to the transitions it governs.

    A pack that ships only tokens is a legitimate theme (docs/17 § 4): the component layer
    (components.css), the optional shell-overrides/ and view-overrides/ folders and the theme.json
    identity manifest arrive with the packs that need them.
*/
:root {
    /* --- colour ------------------------------------------------------------------------------------- */
    --bg: #fafafa;
    --panel: #ffffff;
    --ink: #111827;
    --muted: #6b7280;
    --line: #e5e7eb;
    --accent: #2563eb;
    --accent-ink: #ffffff;
    --accent-soft: #eff6ff;
    --danger: #dc2626;
    --ok: #16a34a;
    --warn: #d97706;
    --ok-bg: #f0fdf4;
    --err-bg: #fef2f2;
    --warn-bg: #fffbeb;
    --warn-ink: #92400e;

    /* --- type --------------------------------------------------------------------------------------- */
    --font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --font-size: 14px;
    --font-size-sm: 12px;
    --line-height: 1.5;

    /* --- shape, space and depth --------------------------------------------------------------------- */
    --radius: 4px;
    --radius-sm: 2px;
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 24px;
    --shadow: 0 1px 2px rgb(17 24 39 / 6%);

    /* --- motion (L1) — durations and easing, consumed only by the component layer (D237 rule 4) ----- */
    --motion-fast: 120ms;
    --motion-base: 180ms;
    --motion-slow: 260ms;
    --motion-ease: cubic-bezier(0.2, 0.6, 0.2, 1);
}