/* ==========================================================================
   Nexum — design tokens that the admin does not expose

   Two kinds of variable exist in this theme, and they live in two places.

   The ones an admin can change — colours, radii, font sizes, the weights in
   Design → Typography — are built in PHP (whmp_nx_color_vars() and
   whmp_nx_structure_vars() in the addon's functions.php) and printed as an
   inline :root in every page's <head>. That is what makes a palette change
   take effect on the next page load.

   The ones below cannot be changed from the admin and have no reason to be:
   they are the theme's internal constants. Keeping them out of the PHP array
   keeps that array to things an admin actually sees a control for, and keeps
   these in a file where they read as CSS.

   This mirrors how Lagom splits its own tokens: base values in
   core/styles/*/assets/css/vars/, with the ones it exposes in the admin
   carrying an inline metadata comment (name:/group:/type:) and the derived
   ones — its components.css has 460 variables and not one is exposed —
   carrying none.

   LOAD ORDER — CHECKED AGAINST THE RENDERED PAGE, NOT ASSUMED. includes/
   head.tpl links this file before nexum.css, so the rules that consume these
   tokens come after them. But the addon's inline block, <style
   id="whmp-ts-vars"> (functions.php ~2568), is printed EARLIER in the <head>
   than any of these <link>s — before them, not after:

       <style id="whmp-ts-vars">   admin values
       nexum-vars.css              this file
       nexum.css                   the rules that consume them

   Two :root blocks at equal specificity mean the LAST one wins, so a token
   defined in both places resolves to the value in THIS file and the admin
   control silently stops working. That is the opposite of what you would
   expect, and it is why nothing here may share a name with anything in
   whmp_nx_color_vars() or whmp_nx_structure_vars().

   So: this file is only for tokens with no admin control. To promote one to
   an admin setting later, ADD it to the PHP array and DELETE it from here --
   leaving it in both is what breaks it.
   ========================================================================== */

:root {

    /* ---- Motion --------------------------------------------------------
       Three durations, from 426 hardcoded copies of the same few numbers
       across nexum.css. Each keeps the value it replaced, so nothing moves
       differently than it did -- the point is that "the theme's normal
       transition" is now one place rather than 324.

       The easing is part of the token. Splitting duration from easing would
       mean two variables per transition at every call site, and every one of
       these was already `<time> ease`.

       Not included: `animation` shorthands. `animation: nxPageFade .3s ease`
       and `animation-delay: .18s` use the same numbers but are keyframe
       timings, not state transitions -- they stay literal, since a token
       named --nx-transition has no business in an animation. */
    --nx-transition:      0.15s ease;   /* the default: hovers, focus, colour and background changes */
    --nx-transition-slow: 0.2s ease;    /* larger movements -- panels, slide-outs */
    --nx-transition-fast: 0.12s ease;   /* small, high-frequency feedback */

    /* ---- Status tones ---------------------------------------------------
       Greens, reds and ambers that are NOT the admin's semantic colours.

       The palette in Design → Colours owns --nx-success, --nx-warning,
       --nx-danger and --nx-info; anything that should follow a palette change
       uses those and is not repeated here. These are the fixed tones the
       theme draws next to them -- the green a paid figure is printed in, the
       amber on a warning icon -- and none of them equals its semantic
       counterpart, so folding them into one would change the colour on screen
       rather than just tidy the file.

       Named -alt for that reason: an alternative tone in the same family, not
       a second opinion about what "success" means. If one of these should
       ever become customisable, it moves to the PHP array and comes OUT of
       this file -- see the load-order note above for why keeping it in both
       silently breaks the control.

       No var() fallbacks on these: they resolve from this stylesheet, and if
       this file failed to load then nexum.css (same directory) did too, so
       the page has no styling at all and a fallback colour saves nothing.
       Contrast --nx-danger, which is built in PHP and can genuinely be absent
       when the addon is inactive -- its call sites do carry a fallback. */
    --nx-success-alt:     #12b76a;   /* the brighter green on figures and check marks */
    --nx-danger-alt:      #ef4444;   /* the red used for destructive hovers */
    --nx-warning-alt:     #f79009;   /* the amber on warning icons and bars */
    --nx-violet:          #7c5cff;   /* the one accent outside the palette families */

}
