/* AUTO-GENERATED by Birko.DesignTokens from tokens.json. DO NOT EDIT.
   Change a value in tokens.json, then: dotnet run --project Birko.DesignTokens -- generate
   A hand-edit here is silently deleted by the next generate — that has happened twice, and both
   times the lost edit was a real fix (see Birko.DesignTokens/CLAUDE.md). */

/* ── Finstat theme ─────────────────────────────────────────────────────────────
   Opt-in theme reproducing the Finstat web app's brand look. Extracted from
   Finstat's LESS design tokens (finstat/DevContent/less/, catalogued in
   finstat/LESS_TOKENS.md): brand green primary, warm-grey surfaces, Roboto,
   blue focus, and Finstat's signature flat / square corners (its
   `@border-radius-*` are all 0). Values are Finstat's own hexes; `-light` tints
   and darker hover shades are derived (Finstat had no token for those slots).

   Link AFTER tokens.css:
     <link rel="stylesheet" href="css/tokens.css" />
     <link rel="stylesheet" href="css/themes/finstat.css" />
   Activate with `data-theme="finstat"`; register it in the switcher with
   `registerThemes([BUILTIN_THEMES.finstat])` from birko-web-shell. ── */
[data-theme="finstat"] {
  /* Brand green is primary; Finstat hovers *lighter* green (@clr-green-hover),
     not darker — kept faithful. White text reads on the green active state. */
  --b-color-primary: #25ba7a;        /* @clr-green */
  --b-color-primary-hover: #33db93;  /* @clr-green-hover */
  --b-color-primary-light: #d7f3e6;  /* derived light tint */
  --b-color-primary-text: #18794f;
  --b-color-secondary: #736f6f;      /* @clr-bg-gray-light */
  --b-color-secondary-hover: #4c4949;/* @clr-bg-gray-dark */

  --b-color-success: #25ba7a;        /* @clr-green */
  --b-color-success-light: #d7f3e6;  /* derived */
  --b-color-success-text: #18794f;
  --b-color-warning: #fab921;        /* @clr-yellow */
  --b-rating-color: #a77400;         /* b-rating fill: the brand yellow is 1.7:1 on white; this clears 3:1 on --b-bg and --b-bg-secondary (TASK-579) */
  --b-color-warning-light: #fdf0cf;  /* derived */
  --b-color-warning-text: #8b6712;
  --b-color-danger: #f26d4f;         /* @clr-red */
  /* Text-only red, darkened from @clr-red which measures 2.65:1 on --b-bg-secondary — well below AA for
     small text. #b3391a gives 5.34:1 there and 5.14:1 on --b-bg-tertiary. Same deliberate palette
     deviation as --b-text-secondary above: the fills keep the brand red. */
  --b-color-danger-text: #b3391a;
  --b-color-danger-hover: #e05335;   /* derived (darken) */
  --b-color-danger-light: #fcdfd7;   /* derived */
  --b-color-info: #54b9e8;           /* @clr-blue */
  --b-color-info-light: #d7eef9;     /* derived */
  --b-color-info-text: #33708c;

  /* Surfaces — white cards on Finstat's warm-grey page background */
  --b-bg: #ffffff;                   /* @clr-bg-white */
  --b-bg-secondary: #f3f2f0;         /* @clr-bg-default (page bg) */
  --b-bg-tertiary: #edeef0;          /* @clr-bg-white-darker */
  --b-bg-elevated: #ffffff;

  /* Tooltip — Finstat's dark charcoal on white */
  --b-tooltip-bg: #434040;           /* @clr-dark */
  --b-tooltip-text: #ffffff;
  --b-tooltip-border: #4c4949;       /* @clr-bg-gray-dark */

  --b-text: #434040;                 /* @clr-text-dark */
  /* Darkened from the brand's @clr-text-dark-dim (#807a7a), which measured 3.77:1 on --b-bg-secondary and
     3.63:1 on --b-bg-tertiary — below WCAG AA's 4.5:1 for the small text that uses it (field labels and the
     `description` help row). #6e6868 is the smallest step in the same warm grey that clears AA on all three
     surface tokens: 5.46 on --b-bg, 4.88 on --b-bg-secondary, 4.71 on --b-bg-tertiary. A deliberate
     deviation from the Finstat palette, taken because the token carries text that must be readable. */
  --b-text-secondary: #6e6868;       /* @clr-text-dark-dim, darkened for AA */
  /* @clr-text-gray — 2.4:1 on --b-bg-secondary. Decorative only (icons, placeholders); do NOT use it for
     text that has to be read. `.field .help` deliberately uses --b-text-secondary instead. */
  --b-text-muted: #6d6a6a;           /* @clr-text-gray */
  --b-text-inverse: #ffffff;
  --b-text-on-primary: #2b2929;
  --b-text-on-success: #2b2929;
  --b-text-on-warning: #2b2929;
  --b-text-on-danger: #2b2929;
  --b-text-on-info: #2b2929;

  --b-border: #e6e5e5;               /* @clr-gray */
  --b-border-hover: #cfcccc;         /* derived */
  --b-border-focus: #54b9e8;         /* @input-border-focus (@clr-bg-blue) */

  /* Finstat is flat / square — @border-radius-base|large|small are all 0px.
     --b-radius-full kept for circular avatars / switch thumbs. */
  --b-radius-sm: 0;
  --b-radius: 0;
  --b-radius-lg: 0;
  --b-radius-xl: 0;

  /* @ff-normal for body, @ff-heading ("Roboto Condensed") for titles */
  --b-font: "Roboto", Arial, Helvetica, sans-serif;
  --b-font-heading: "Roboto Condensed", "Roboto", Tahoma, Arial, sans-serif;

  /* Finstat's signature dark table-header band + warm-yellow row hover */
  --b-table-header-bg: #434040;             /* @table-header-bg (@clr-bg-dark) */
  --b-table-header-text: #ffffff;           /* @table-header-color */
  --b-table-header-text-hover: #ffffff;
  --b-row-hover-bg: rgba(253, 222, 129, 0.3); /* @clr-hover */

  /* Shadows — panels are flat in Finstat; depth comes from @box-shadow
     (0 5px 10px) and the strong dropdown shadow (0 20px 70px -25px).
     lg no longer maps 1:1 to @box-shadow-preset (0 5px 15px -5px / 0.15). That value measured
     WEAKER than md on both depth and spread, so the scale ran sm < base < md > lg < xl and a
     consumer reaching for the next rung up got a shallower shadow. --b-shadow-* is a monotonic
     depth ladder before it is a brand mapping; where the two conflict the ladder wins. md and xl
     still map 1:1 — xl only looked weak against a peak-pixel measure, being wide and diffuse. */
  --b-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.08);
  --b-shadow: 0 2px 5px rgba(0, 0, 0, 0.12);
  --b-shadow-md: 0 5px 10px rgba(0, 0, 0, 0.2);        /* @box-shadow */
  --b-shadow-lg: 0 10px 24px -6px rgba(0, 0, 0, 0.22);  /* was @box-shadow-preset — see note */
  --b-shadow-xl: 0 20px 70px -25px rgba(0, 0, 0, 0.3); /* @box-shadow-dropdown */

  /* Blue focus glow (Finstat focuses inputs with @clr-bg-blue) */
  --b-focus-ring: 0 0 0 3px rgba(84, 185, 232, 0.3);
  --b-focus-ring-danger: 0 0 0 3px rgba(242, 109, 79, 0.25);
}
