/*
 * Guru design tokens v1.24.6. GENERATED by Guru.Branding/tools/build.py
 * from tokens/tokens.json. Do not edit in a product: change the source,
 * rebuild, and copy this file over the old one.
 *
 * Components use var(--gb-*) and never a literal colour.
 * Theme: follows the OS by default; <html data-theme="light|dark"> overrides.
 * Every colour is defined in all three places below. A colour defined only
 * inside the media query disappears when the query stops matching.
 *
 * Font: put fonts/lexend-variable.woff2 in a fonts/ folder BESIDE the
 * folder holding this file (css/guru-tokens.css + fonts/...). The URL is
 * relative, so it resolves under any path prefix (/addin/, /bsc/). Other
 * layout: add your own @font-face for 'Lexend' after this file; the later
 * rule wins. Self-hosted, so a strict CSP needs only font-src 'self'.
 */

@font-face {
  font-family: 'Lexend';
  src: url('../fonts/lexend-variable.woff2') format('woff2-variations'),
       url('../fonts/lexend-variable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --gb-font: 'Lexend', 'Segoe UI', system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
  --gb-font-mono: ui-monospace, 'Cascadia Mono', 'SF Mono', Menlo, Consolas, monospace;
  --gb-text-xs: 0.75rem;  /* 12px  Label: uppercase, 0.06em tracked, weight 600 */
  --gb-text-sm: 0.8125rem;  /* 13px  Caption: hints, small buttons, mono */
  --gb-text-base: 0.9375rem;  /* 15px  Body: prose, table cells, controls */
  --gb-text-md: 1.0625rem;  /* 17px  Lead */
  --gb-text-lg: 1.25rem;  /* 20px  Title: card titles, h3 */
  --gb-text-xl: 1.5rem;  /* 24px  Section: h2 */
  --gb-text-2xl: 1.875rem;  /* 30px  Headline: h1 */
  --gb-text-3xl: 2.25rem;  /* 36px  Figure: dashboard stat */
  --gb-text-4xl: 2.75rem;  /* 44px  Display: marketing hero, one per page */
  --gb-leading-tight: 1.15;
  --gb-leading-snug: 1.3;
  --gb-leading-body: 1.55;
  --gb-weight-body: 400;
  --gb-weight-medium: 500;
  --gb-weight-strong: 600;
  --gb-tracking-label: 0.06em;
  --gb-tracking-display: -0.02em;
  --gb-tracking-wordmark: -0.022em;
  --gb-space-1: 0.25rem;
  --gb-space-2: 0.5rem;
  --gb-space-3: 0.75rem;
  --gb-space-4: 1rem;
  --gb-space-5: 1.5rem;
  --gb-space-6: 2rem;
  --gb-space-7: 3rem;
  --gb-radius-sm: 6px;
  --gb-radius-md: 10px;
  --gb-radius-lg: 14px;
  --gb-radius-tab: 28px;
  --gb-radius-pill: 999px;
  --gb-control: 42px;
  --gb-control-sm: 32px;
  --gb-control-min-target: 24px;
  --gb-control-pad-y: 8px;
  --gb-control-input-pad-y: 9px;
  --gb-sidebar-width: 244px;
  --gb-topbar-height: 60px;
  --gb-content-max: 1680px;
  --gb-measure: 80ch;
  --gb-motion-fast: 120ms;
  --gb-motion-base: 200ms;
  --gb-motion-easing: cubic-bezier(0.2, 0, 0, 1);

  /* Light (default) */
  --gb-teal: #19827a;
  --gb-teal-600: #14675f;
  --gb-teal-700: #0f4f49;
  --gb-teal-300: #5fb3aa;
  --gb-teal-100: #dcefec;
  --gb-teal-050: #f0f8f6;
  --gb-ink: #101312;
  --gb-ink-800: #1b2220;
  --gb-ink-700: #2b3532;
  --gb-paper: #f6f8f8;
  --gb-surface: #ffffff;
  --gb-surface-sunken: #f0f3f3;
  --gb-border: #e2e8e7;
  --gb-border-strong: #cbd6d4;
  --gb-border-control: #7f8c89;
  --gb-text: #16201e;
  --gb-text-muted: #5a6663;
  --gb-text-subtle: #65716d;
  --gb-text-inverse: #f3f7f6;
  --gb-shell-bg: #101312;
  --gb-shell-raised: #1a201f;
  --gb-shell-border: #262e2c;
  --gb-shell-text: #f3f7f6;
  --gb-shell-muted: #9aa8a5;
  --gb-shell-link: #6cc0b6;
  --gb-on-teal: #ffffff;
  --gb-on-danger: #ffffff;
  --gb-success: #157a4e;
  --gb-success-bg: #e4f4ec;
  --gb-warning: #8a6413;
  --gb-warning-bg: #fdf3dd;
  --gb-danger: #b02422;
  --gb-danger-bg: #fce9e8;
  --gb-info: #1d5f96;
  --gb-info-bg: #e7f1fa;
  --gb-focus: #19827a;
  --gb-selection: #dcefec;
  --gb-scan-ground: #ffffff;
  --gb-scan-ink: #101312;
  --gb-cat-violet: #6b4fbb;
  --gb-cat-plum: #9b3d7c;
  --gb-cat-copper: #9c4a12;
  --gb-cat-slate: #55607a;
  --gb-cat-olive: #5e6a12;
  --gb-shadow-sm: 0 1px 2px rgb(16 19 18 / 6%);
  --gb-shadow-md: 0 1px 3px rgb(16 19 18 / 8%), 0 6px 16px -8px rgb(16 19 18 / 10%);
  --gb-shadow-lg: 0 12px 32px -12px rgb(16 19 18 / 22%);
  --gb-bg-hero: radial-gradient(circle at 88% 8%, rgb(25 130 122 / 12%) 0, transparent 34%), radial-gradient(circle at 6% 96%, rgb(25 130 122 / 8%) 0, transparent 28%), linear-gradient(135deg, #F0F8F6 0%, #E6F3F1 40%, #F6F8F8 100%);
  --gb-bg-auth: radial-gradient(ellipse at 15% 0%, rgb(47 163 148 / 26%) 0, transparent 55%), radial-gradient(ellipse at 100% 100%, rgb(25 130 122 / 22%) 0, transparent 50%), #101312;
  --gb-bg-pattern: radial-gradient(rgb(25 130 122 / 14%) 1.25px, transparent 1.5px) 0 0 / 24px 24px, #F6F8F8;
  --gb-logo-mark: #19827a;
  --gb-logo-word: #101312;
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --gb-teal: #33a89d;
    --gb-teal-600: #6cc0b6;
    --gb-teal-700: #8fd2c9;
    --gb-teal-300: #2b8f86;
    --gb-teal-100: #17302d;
    --gb-teal-050: #132523;
    --gb-ink: #eef4f3;
    --gb-ink-800: #dbe4e2;
    --gb-ink-700: #c3cfcd;
    --gb-paper: #0d1211;
    --gb-surface: #151c1b;
    --gb-surface-sunken: #1b2423;
    --gb-border: #293432;
    --gb-border-strong: #3b4846;
    --gb-border-control: #63726f;
    --gb-text: #e7eeed;
    --gb-text-muted: #a6b3b1;
    --gb-text-subtle: #859391;
    --gb-text-inverse: #f3f7f6;
    --gb-shell-bg: #080b0a;
    --gb-shell-raised: #131a19;
    --gb-shell-border: #1f2726;
    --gb-shell-text: #f3f7f6;
    --gb-shell-muted: #9aa8a5;
    --gb-shell-link: #6cc0b6;
    --gb-on-teal: #06100e;
    --gb-on-danger: #06100e;
    --gb-success: #5cc48d;
    --gb-success-bg: #14291f;
    --gb-warning: #e3b862;
    --gb-warning-bg: #2f2717;
    --gb-danger: #f2908c;
    --gb-danger-bg: #341f1f;
    --gb-info: #74b3e6;
    --gb-info-bg: #16232e;
    --gb-focus: #33a89d;
    --gb-selection: #1f4541;
    --gb-scan-ground: #ffffff;
    --gb-scan-ink: #101312;
    --gb-cat-violet: #b3a1ee;
    --gb-cat-plum: #e89bcb;
    --gb-cat-copper: #eba06b;
    --gb-cat-slate: #aab4c8;
    --gb-cat-olive: #b7c25e;
    --gb-shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);
    --gb-shadow-md: 0 1px 3px rgb(0 0 0 / 45%), 0 6px 16px -8px rgb(0 0 0 / 55%);
    --gb-shadow-lg: 0 12px 32px -12px rgb(0 0 0 / 70%);
    --gb-bg-hero: radial-gradient(circle at 88% 8%, rgb(47 163 148 / 20%) 0, transparent 34%), radial-gradient(circle at 6% 96%, rgb(47 163 148 / 14%) 0, transparent 28%), linear-gradient(135deg, #101312 0%, #1B2220 100%);
    --gb-bg-auth: radial-gradient(ellipse at 15% 0%, rgb(47 163 148 / 22%) 0, transparent 55%), radial-gradient(ellipse at 100% 100%, rgb(25 130 122 / 18%) 0, transparent 50%), #080B0A;
    --gb-bg-pattern: radial-gradient(rgb(47 163 148 / 16%) 1.25px, transparent 1.5px) 0 0 / 24px 24px, #0D1211;
    --gb-logo-mark: #2fa394;
    --gb-logo-word: #f3f7f6;
    color-scheme: dark;
  }
}

:root[data-theme="dark"] {
  --gb-teal: #33a89d;
  --gb-teal-600: #6cc0b6;
  --gb-teal-700: #8fd2c9;
  --gb-teal-300: #2b8f86;
  --gb-teal-100: #17302d;
  --gb-teal-050: #132523;
  --gb-ink: #eef4f3;
  --gb-ink-800: #dbe4e2;
  --gb-ink-700: #c3cfcd;
  --gb-paper: #0d1211;
  --gb-surface: #151c1b;
  --gb-surface-sunken: #1b2423;
  --gb-border: #293432;
  --gb-border-strong: #3b4846;
  --gb-border-control: #63726f;
  --gb-text: #e7eeed;
  --gb-text-muted: #a6b3b1;
  --gb-text-subtle: #859391;
  --gb-text-inverse: #f3f7f6;
  --gb-shell-bg: #080b0a;
  --gb-shell-raised: #131a19;
  --gb-shell-border: #1f2726;
  --gb-shell-text: #f3f7f6;
  --gb-shell-muted: #9aa8a5;
  --gb-shell-link: #6cc0b6;
  --gb-on-teal: #06100e;
  --gb-on-danger: #06100e;
  --gb-success: #5cc48d;
  --gb-success-bg: #14291f;
  --gb-warning: #e3b862;
  --gb-warning-bg: #2f2717;
  --gb-danger: #f2908c;
  --gb-danger-bg: #341f1f;
  --gb-info: #74b3e6;
  --gb-info-bg: #16232e;
  --gb-focus: #33a89d;
  --gb-selection: #1f4541;
  --gb-scan-ground: #ffffff;
  --gb-scan-ink: #101312;
  --gb-cat-violet: #b3a1ee;
  --gb-cat-plum: #e89bcb;
  --gb-cat-copper: #eba06b;
  --gb-cat-slate: #aab4c8;
  --gb-cat-olive: #b7c25e;
  --gb-shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);
  --gb-shadow-md: 0 1px 3px rgb(0 0 0 / 45%), 0 6px 16px -8px rgb(0 0 0 / 55%);
  --gb-shadow-lg: 0 12px 32px -12px rgb(0 0 0 / 70%);
  --gb-bg-hero: radial-gradient(circle at 88% 8%, rgb(47 163 148 / 20%) 0, transparent 34%), radial-gradient(circle at 6% 96%, rgb(47 163 148 / 14%) 0, transparent 28%), linear-gradient(135deg, #101312 0%, #1B2220 100%);
  --gb-bg-auth: radial-gradient(ellipse at 15% 0%, rgb(47 163 148 / 22%) 0, transparent 55%), radial-gradient(ellipse at 100% 100%, rgb(25 130 122 / 18%) 0, transparent 50%), #080B0A;
  --gb-bg-pattern: radial-gradient(rgb(47 163 148 / 16%) 1.25px, transparent 1.5px) 0 0 / 24px 24px, #0D1211;
  --gb-logo-mark: #2fa394;
  --gb-logo-word: #f3f7f6;
  color-scheme: dark;
}

/* Compact density (UI-06, TYP-04): Office task panes, and dense data-entry
   screens in a web app. data-density="compact" on <html> for a whole page,
   or on a form or screen container for just that part. */
:root[data-density="compact"], [data-density="compact"] {
  --gb-text-xs: 0.75rem;
  --gb-text-sm: 0.75rem;
  --gb-text-base: 0.875rem;
  --gb-text-md: 1rem;
  --gb-text-lg: 1.125rem;
  --gb-text-xl: 1.25rem;
  --gb-text-2xl: 1.5rem;
  --gb-text-3xl: 1.75rem;
  --gb-text-4xl: 2rem;
  --gb-control: 32px;
  --gb-control-sm: 28px;
  --gb-control-pad-y: 4px;
  --gb-control-input-pad-y: 5px;
}
