/*
 * @file AI Practice brand CSS served by the CDN (the --theme-* variables + self-hosted @font-face faces).
 * @description Brand artifact loaded by every AI Practice browser surface. The `@font-face` and `--theme-*`
 * blocks between the `GENERATED:*` markers are DERIVED from the `brand/theme.yaml` beside this file — this
 * environment's own authored brand: edit it there and run `pnpm --filter @apps/theming generate:brand`; the
 * drift check (brand-generation.test.ts) fails if these regions go stale. Everything OUTSIDE the markers is
 * hand-owned. The `@font-face` region is intentionally EMPTY: this test customer self-hosts no face and renders in
 * the platform UI stack (see the `fonts:` note in brand/theme.yaml). The hand-owned `--riseup-*` block below
 * carries the Rise-Up product accents (KPI series, rank medals, podium tints), which are sourced from the
 * customer stylesheet rather than from the Rise-Up component styles — this test customer provisions the `riseup`
 * surface, so it has to declare them.
 */

/* GENERATED:brand-fonts — do not edit by hand; run `pnpm --filter @apps/theming generate:brand` */
/* GENERATED:brand-fonts:end */

:root {
    /* GENERATED:brand-vars — do not edit by hand; run `pnpm --filter @apps/theming generate:brand` */
    --theme-font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
    --theme-serif-font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
    --theme-primary: #0284c7;
    --theme-primary-hover: #026a9f;
    --theme-primary-light: #67b5dd;
    --theme-primary-light-shadow: rgba(2, 132, 199, 0.6);
    --theme-primary-extra-light: #e1f0f8;
    --theme-secondary: #0ea5e9;
    --theme-secondary-soft: #cfedfb;
    --theme-secondary-light: #6ec9f2;
    --theme-secondary-light-shadow: rgba(14, 165, 233, 0.6);
    --theme-secondary-shadow: rgba(14, 165, 233, 0.79);
    --theme-secondary-extra-light: #e2f4fc;
    --theme-background: #f8fafc;
    --theme-surface: #ffffff;
    --theme-surface-muted: #f0f1f3;
    --theme-border: #d7dade;
    --theme-text: #0f172a;
    --theme-text-muted: #475569;
    --theme-text-strong: #0a101d;
    --theme-text-inverse: #ffffff;
    --theme-shadow: rgba(2, 132, 199, 0.18);
    --theme-subtle-shadow: rgba(14, 165, 233, 0.25);
    --theme-subtle-border: #caebfa;
    --theme-success: #15803d;
    --theme-error: #b91c1c;
    --theme-warning: #b45309;
    --theme-rail: #e6edf1;
    --theme-rail-text: #0284c7;
    --theme-rail-active: #0369a1;
    --theme-rail-active-text: #e6edf1;
    /* GENERATED:brand-vars:end */

    /* Rise-Up product accents — sourced here (not in components), derived from this brand wherever the
       colour is chrome rather than product artwork. */
    /* KPI graph — current-day series (the brand accent). */
    --riseup-kpi-graph-current: var(--theme-primary);
    /* KPI graph — comparison-day series (the muted slate, so the two series never read as one hue). */
    --riseup-kpi-graph-comparison: var(--theme-text-muted);
    /* KPI row current-value cell tint. */
    --riseup-current-tint: var(--theme-primary-extra-light);
    /* Comparison tint — the KPI comparison cell + the comparison period chip. */
    --riseup-comparison-tint: var(--theme-secondary-extra-light);
    /* Comparison period-chip border. */
    --riseup-comparison-border: var(--theme-subtle-border);
    /* Period-chip base border (neutral hairline). */
    --riseup-chip-border: var(--theme-border);
    /* Positive KPI delta — the semantic success token, not the brand accent. */
    --riseup-delta-up: var(--theme-success);
    /* Negative KPI delta — the semantic error token. */
    --riseup-delta-down: var(--theme-error);
    /* Rank medal — neutral badge + ranks beyond the podium. */
    --riseup-medal-neutral: var(--theme-secondary-light);
    /* Rank medals are product artwork, not brand: gold/silver/bronze must read as metals in any palette. */
    --riseup-medal-gold: #d9a521;
    --riseup-medal-silver: #9aa4b2;
    --riseup-medal-bronze: #b0703c;
    /* Dashboard headline money icon (gold). */
    --riseup-headline-icon: #d9a521;
    /* Challenges page accent badge — the semantic warning token. */
    --riseup-challenge-accent: var(--theme-warning);
    /* Podium row/card tints — each medal colour at 0.12 alpha. */
    --riseup-background-gold: rgba(217, 165, 33, 0.12);
    --riseup-background-silver: rgba(154, 164, 178, 0.12);
    --riseup-background-bronze: rgba(176, 112, 60, 0.12);
    /* Off-podium / default rank tint — the primary light colour (--theme-primary-light) at 0.12 alpha. */
    --theme-primary-light-background: rgba(103, 181, 221, 0.12);
}
