/* zerocon brand tokens. Generated file, do not hand edit.
 *
 * Source of truth: components/brand/mark.ts (artwork colours), extended by
 * brand/build/palette.py. Documented in brand/zerocon-brand-guidelines.pdf.
 *
 * Both ramps are generated in OKLCH so the lightness steps are perceptually
 * even, and both pass through the logo's own colours exactly:
 *   orange-600, orange-700   the mark's two gradient stops
 *   orange-900               the mark's contact shadow
 *   steel-700                the wordmark's light stop
 *   steel-950                the wordmark's dark stop (BRAND_INK)
 */

:root {
  /* brand ramps */
  --brand-orange-50: #FEF3ED;
  --brand-orange-100: #FFE5D6;
  --brand-orange-200: #FFCBAE;
  --brand-orange-300: #FEA87A;
  --brand-orange-400: #F38041;
  --brand-orange-500: #E6691D;
  --brand-orange-600: #D45A0A;
  --brand-orange-700: #A84700;
  --brand-orange-800: #7E330A;
  --brand-orange-900: #57200C;

  --brand-steel-50: #F2F6FB;
  --brand-steel-100: #E5ECF5;
  --brand-steel-200: #D0DBE9;
  --brand-steel-300: #B4C3D6;
  --brand-steel-400: #8A9DB4;
  --brand-steel-500: #62768F;
  --brand-steel-600: #50657E;
  --brand-steel-700: #40536A;
  --brand-steel-800: #27374A;
  --brand-steel-900: #132030;
  --brand-steel-950: #07111F;

  /* grounds */
  --brand-paper: #F7F7F5;
  --brand-void: #000000;

  /* functional */
  --brand-success: #278A47;
  --brand-success-tint: #E0F7E4;
  --brand-warning: #DE9D16;
  --brand-warning-tint: #FEEFD8;
  --brand-danger: #CC3333;
  --brand-danger-tint: #FEEAE7;
  --brand-info: #337AB0;
  --brand-info-tint: #E4F2FE;

  /* the mark's gradient, never re-angled or re-stopped */
  --brand-mark-gradient: linear-gradient(135deg, #D45A0A, #A84700);
}

/* Semantic tokens, light. --primary is Deep Ember rather than Zero Orange
 * because a token that fills buttons has to carry white text: white on
 * #A84700 is 5.89:1 and passes AA,
 * white on #D45A0A is only 3.99:1
 * and fails. */
:root {
  --background: #F7F7F5;
  --foreground: #07111F;
  --card: #FFFFFF;
  --card-foreground: #07111F;
  --popover: #FFFFFF;
  --popover-foreground: #07111F;
  --primary: #A84700;
  --primary-foreground: #FFFFFF;
  --secondary: #E5ECF5;
  --secondary-foreground: #132030;
  --muted: #E5ECF5;
  --muted-foreground: #40536A;
  --accent: #D45A0A;
  --accent-foreground: #FFFFFF;
  --destructive: #CC3333;
  --border: #D0DBE9;
  --input: #D0DBE9;
  --ring: #D45A0A;
}

/* Semantic tokens, dark. Text moves up the ramp, surfaces move to Void. */
.dark {
  --background: #000000;
  --foreground: #F7F7F5;
  --card: #07111F;
  --card-foreground: #F7F7F5;
  --popover: #07111F;
  --popover-foreground: #F7F7F5;
  --primary: #F38041;
  --primary-foreground: #07111F;
  --secondary: #132030;
  --secondary-foreground: #F7F7F5;
  --muted: #132030;
  --muted-foreground: #8A9DB4;
  --accent: #F38041;
  --accent-foreground: #07111F;
  --destructive: #CC3333;
  --border: #27374A;
  --input: #27374A;
  --ring: #F38041;
}
