/* GENERATED FILE — DO NOT EDIT.
 *
 * Written by docs/design-system/tools/emit_tokens.py from
 * docs/design-system/tokens.json (version 1.9).
 * Regenerate with:  python3 docs/design-system/tools/emit_tokens.py
 * Checked by:       python3 docs/design-system/tools/verify_tokens.py
 *                   (1. FRESHNESS, 12. ROUND-TRIP-CSS) in the zrodla-prawdy job.
 *
 * Rules for using these values on the web: docs/design-system/WEB_GUIDELINES.md.
 *
 * Themes. Light values sit on :root. Dark values apply under
 * prefers-color-scheme: dark unless the page forces data-theme="light", and
 * always under data-theme="dark". There is no pure black anywhere below: the
 * darkest surface is surface.bg #0E0E10.
 *
 * Colours with alpha are #RRGGBBAA with 8-bit alpha, round(a * 255) — the same
 * byte Kotlin and Swift carry, so 0.44 -> 70 and 0.62 -> 9E.
 *
 * Type sizes are rem against a 16px root, so they grow with the user's text
 * size. Letter spacing is in em. Line height is a unitless multiplier: the
 * interline the native apps render with the system font, measured, not chosen
 * (tokens.json $meta.lineHeightRule). There is no font family here, by rule:
 * the page uses font-family: system-ui, sans-serif, the same system font as the
 * apps (tokens.json $meta.fontFamilyRule).
 *
 * Not emitted, by design:
 *   navigation — app chrome — tab bar, quick-log layer, collapsing header,
 *     pager. The web has none of it.
 *   chart — geometry of the native charts (D1, D13, D6). The web draws no
 *     chart; the two chart colours are emitted with the other colours.
 *   motion — no web consumer yet. A shape is not emitted before its consumer
 *     (ADR-002 principle 6, decision 3.8).
 *   elevation — shadows belong to sheets and the sticky header, neither of
 *     which the web has. Emitted with the first web component that casts one.
 *   type.tabLabel — design-only: it exists because the canvas draws the tab
 *     bar. The web has no tab bar.
 */

:root {
  color-scheme: light dark;
  --ask4-scrim: #0E0E1070;
  --ask4-surface-bg: #FFFFFF;
  --ask4-surface-default: #F5F5F7;
  --ask4-surface-raised: #EBEBEF;
  --ask4-surface-overlay: #FFFFFF;
  --ask4-surface-viewfinder: #0E0E10;
  --ask4-ink-primary: #0E0E10;
  --ask4-ink-secondary: #5B5B62;
  /* WYLACZNIE elementy nietekstowe: uchwyty arkuszy, obrysy ikon, wypelnienia */
  /* dekoracyjne. 3.42:1 nie wystarcza dla zadnego rozmiaru tekstu w tym systemie */
  /* (najmniejszy to label.m 13px). Dla tekstu drugorzednego uzyj ink.secondary. */
  --ask4-ink-muted: #82828C;
  --ask4-border-subtle: #DEDEE4;
  --ask4-border-strong: #84848E;
  --ask4-macro-protein-text: #8F2F44;
  --ask4-macro-protein-fill: #AF3A52;
  --ask4-macro-carbs-text: #8A5E08;
  --ask4-macro-carbs-fill: #B57A14;
  --ask4-macro-fats-text: #24558F;
  --ask4-macro-fats-fill: #2E6CB5;
  --ask4-macro-calories-text: #0E0E10;
  --ask4-macro-calories-fill: #0E0E10;
  --ask4-accent-text: #0B6E5C;
  --ask4-accent-fill: #12836E;
  /* awaria sieci/platnosci/walidacji. NIE przekroczenie celu. */
  --ask4-state-error: #B3261E;
  /* STAN KONTROLKI, nie rejestr komunikatu. Jedyne dozwolone uzycie: stan `logged` */
  /* przycisku zapisu w D14 MealPlanCard — wypelnienie state.success, etykieta */
  /* surface.bg, glif ptaszka. System nadal NIE MA rejestru sukcesu w tabeli 1.8 i */
  /* nie wolno tego koloru uzyc w zadnym komunikacie ani w zadnej serii danych. Do */
  /* wersji 1.5.1 ten token nie mial roli w ogole i byl kandydatem do usuniecia. */
  --ask4-state-success: #1F6D3B;
  /* TOR wskaznika nieokreslonego NA PRZYCISKU WYPELNIONYM ink.primary — stan `busy` */
  /* kontrolki A6, dzis stan `logging` w D14 MealPlanCard. Glowica bierze surface.bg */
  /* (czyli on-ink), tor bierze ten token. NIE JEST to przygaszenie przez */
  /* przezroczystosc: opacity jako mechanizm stanu jest zakazane (tokens 1.2, */
  /* action.disabled). */
  --ask4-state-indeterminate-track: #6C6C74;
  --ask4-action-disabled-fill: #EBEBEF;
  --ask4-action-disabled-label: #5B5B62;
  --ask4-action-destructive-label: #B3261E;
  --ask4-action-destructive-fill: transparent;
  --ask4-action-destructive-border: #B3261E;
  --ask4-message-advisory-fill: #EBEBEF;
  --ask4-message-advisory-label: #0E0E10;
  --ask4-skeleton-base: #EBEBEF;
  --ask4-chart-gridline: #EBEBEF;
  --ask4-chart-band: #EBEBEF;
  --ask4-radius-s: 14px;
  --ask4-radius-m: 18px;
  --ask4-radius-l: 24px;
  --ask4-radius-pill: 999px;
  --ask4-space-grid: 4px;
  --ask4-space-4: 4px;
  --ask4-space-8: 8px;
  --ask4-space-12: 12px;
  --ask4-space-16: 16px;
  --ask4-space-20: 20px;
  --ask4-space-24: 24px;
  --ask4-space-32: 32px;
  --ask4-space-48: 48px;
  --ask4-space-screen-margin: 20px;
  --ask4-touch-min: 44px;
  --ask4-type-display-xl-size: 2.5rem;
  --ask4-type-display-xl-weight: 700;
  --ask4-type-display-xl-tracking: -0.02em;
  --ask4-type-display-xl-transform: none;
  --ask4-type-display-xl-line-height: 1.19;
  --ask4-type-display-l-size: 1.875rem;
  --ask4-type-display-l-weight: 700;
  --ask4-type-display-l-tracking: -0.01em;
  --ask4-type-display-l-transform: uppercase;
  --ask4-type-display-l-line-height: 1.19;
  --ask4-type-title-m-size: 1.25rem;
  --ask4-type-title-m-weight: 600;
  --ask4-type-title-m-tracking: -0.005em;
  --ask4-type-title-m-transform: none;
  --ask4-type-title-m-line-height: 1.19;
  --ask4-type-body-l-size: 1.0625rem;
  --ask4-type-body-l-weight: 400;
  --ask4-type-body-l-tracking: 0;
  --ask4-type-body-l-transform: none;
  --ask4-type-body-l-line-height: 1.19;
  --ask4-type-body-m-size: 0.9375rem;
  --ask4-type-body-m-weight: 400;
  --ask4-type-body-m-tracking: 0;
  --ask4-type-body-m-transform: none;
  --ask4-type-body-m-line-height: 1.19;
  --ask4-type-label-l-size: 0.9375rem;
  --ask4-type-label-l-weight: 500;
  --ask4-type-label-l-tracking: 0;
  --ask4-type-label-l-transform: none;
  --ask4-type-label-l-line-height: 1.19;
  --ask4-type-label-m-size: 0.8125rem;
  --ask4-type-label-m-weight: 500;
  --ask4-type-label-m-tracking: 0.01em;
  --ask4-type-label-m-transform: none;
  --ask4-type-label-m-line-height: 1.19;
  --ask4-type-overline-size: 0.8125rem;
  --ask4-type-overline-weight: 600;
  --ask4-type-overline-tracking: 0.1em;
  --ask4-type-overline-transform: uppercase;
  --ask4-type-overline-line-height: 1.19;
  --ask4-type-numeric-variant: tabular-nums;
  --ask4-skeleton-on: var(--ask4-surface-default);
  --ask4-focus-ring-color: var(--ask4-accent-fill);
  --ask4-focus-ring-width: 2px;
  --ask4-focus-ring-offset: 2px;
}

:root[data-theme="light"] {
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --ask4-scrim: #0E0E109E;
    --ask4-surface-bg: #0E0E10;
    --ask4-surface-default: #17171A;
    --ask4-surface-raised: #202024;
    --ask4-surface-overlay: #2A2A2F;
    --ask4-surface-viewfinder: #0E0E10;
    --ask4-ink-primary: #F7F7F8;
    --ask4-ink-secondary: #A8A8B0;
    --ask4-ink-muted: #74747C;
    --ask4-border-subtle: #2E2E34;
    --ask4-border-strong: #74747C;
    --ask4-macro-protein-text: #F26B80;
    --ask4-macro-protein-fill: #D9455C;
    --ask4-macro-carbs-text: #E3A62A;
    --ask4-macro-carbs-fill: #BE871C;
    --ask4-macro-fats-text: #6BA5EE;
    --ask4-macro-fats-fill: #3F82D6;
    --ask4-macro-calories-text: #F7F7F8;
    --ask4-macro-calories-fill: #F7F7F8;
    --ask4-accent-text: #2FC0A2;
    --ask4-accent-fill: #22A88F;
    --ask4-state-error: #F2726A;
    --ask4-state-success: #4BB36E;
    --ask4-state-indeterminate-track: #84848C;
    --ask4-action-disabled-fill: #202024;
    --ask4-action-disabled-label: #A8A8B0;
    --ask4-action-destructive-label: #F2726A;
    --ask4-action-destructive-fill: transparent;
    --ask4-action-destructive-border: #F2726A;
    --ask4-message-advisory-fill: #202024;
    --ask4-message-advisory-label: #F7F7F8;
    --ask4-skeleton-base: #202024;
    --ask4-chart-gridline: #202024;
    --ask4-chart-band: #202024;
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --ask4-scrim: #0E0E109E;
  --ask4-surface-bg: #0E0E10;
  --ask4-surface-default: #17171A;
  --ask4-surface-raised: #202024;
  --ask4-surface-overlay: #2A2A2F;
  --ask4-surface-viewfinder: #0E0E10;
  --ask4-ink-primary: #F7F7F8;
  --ask4-ink-secondary: #A8A8B0;
  --ask4-ink-muted: #74747C;
  --ask4-border-subtle: #2E2E34;
  --ask4-border-strong: #74747C;
  --ask4-macro-protein-text: #F26B80;
  --ask4-macro-protein-fill: #D9455C;
  --ask4-macro-carbs-text: #E3A62A;
  --ask4-macro-carbs-fill: #BE871C;
  --ask4-macro-fats-text: #6BA5EE;
  --ask4-macro-fats-fill: #3F82D6;
  --ask4-macro-calories-text: #F7F7F8;
  --ask4-macro-calories-fill: #F7F7F8;
  --ask4-accent-text: #2FC0A2;
  --ask4-accent-fill: #22A88F;
  --ask4-state-error: #F2726A;
  --ask4-state-success: #4BB36E;
  --ask4-state-indeterminate-track: #84848C;
  --ask4-action-disabled-fill: #202024;
  --ask4-action-disabled-label: #A8A8B0;
  --ask4-action-destructive-label: #F2726A;
  --ask4-action-destructive-fill: transparent;
  --ask4-action-destructive-border: #F2726A;
  --ask4-message-advisory-fill: #202024;
  --ask4-message-advisory-label: #F7F7F8;
  --ask4-skeleton-base: #202024;
  --ask4-chart-gridline: #202024;
  --ask4-chart-band: #202024;
}
