/* GENERATED by scripts/generate-design-tokens.mjs — do not edit.
   Source: data/design-tokens/cw.tokens.json (layers.semanticAliases + layers.material
   + the button contract's geometry from base/delivery).

   The platform palette and material, emitted for the five static landing
   hosts that cannot load globals.css. Loaded first on every landing, so
   network-tokens.css can reference these instead of copying their values —
   change a colour in the JSON and the whole network moves with the platform.
   Drift is caught by `npm run tokens:check`. */

:root {
  --cw-sem-calm-bg: #faefe0;
  --cw-sem-calm-surface: #fff8ef;
  --cw-sem-calm-surface-muted: #f3e4d0;
  --cw-sem-method-ink: #203126;
  --cw-sem-guide-primary: #456b58;
  --cw-sem-guide-strong: #203126;
  --cw-sem-embodied: #7a9b78;
  --cw-sem-progress: #edc693;
  --cw-sem-warmth: #e5ae65;
  --cw-sem-warmth-strong: #c8913f;
  --cw-sem-on-warmth: #203126;
  --cw-sem-boundary: #b76045;
  --cw-sem-trust: #4a6577;
  --cw-sem-dosha-vata: var(--cw-sem-trust);
  --cw-sem-dosha-pitta: var(--cw-sem-warmth-strong);
  --cw-sem-dosha-kapha: var(--cw-sem-embodied);
  --cw-sem-muted-ink: #48544c;
  --cw-sem-state-success: var(--cw-sem-guide-primary);
  --cw-sem-state-running: var(--cw-sem-trust);
  --cw-sem-state-pending: var(--cw-sem-warmth-strong);
  --cw-sem-state-failed: var(--cw-sem-boundary);
  --cw-sem-texture-arcs: repeating-radial-gradient(circle at 78% 22%, color-mix(in srgb, var(--cw-sem-guide-primary) 42%, transparent) 0 1px, transparent 1px 14px);
  --cw-sem-texture-rings: repeating-radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--cw-sem-guide-primary) 34%, transparent) 0 1px, transparent 1px 22px);
  --cw-mat-surface: color-mix(in srgb, var(--cw-sem-calm-surface) 94%, var(--cw-sem-warmth) 6%);
  --cw-mat-surface-night: color-mix(in srgb, #1a2a20 94%, var(--cw-sem-warmth) 6%);
  --cw-mat-surface-sunk: color-mix(in srgb, var(--cw-sem-calm-surface-muted) 62%, var(--cw-mat-surface) 38%);
  --cw-mat-tint: color-mix(in srgb, var(--cw-mat-surface) 76%, transparent);
  --cw-mat-tint-hover: color-mix(in srgb, var(--cw-mat-surface) 84%, transparent);
  --cw-mat-tint-media: color-mix(in srgb, var(--cw-mat-surface) 82%, transparent);
  --cw-mat-tint-chrome: color-mix(in srgb, var(--cw-mat-surface) 30%, transparent);
  --cw-mat-tint-floor: 76%;
  --cw-mat-tint-media-floor: 82%;
  --cw-mat-tint-chrome-floor: 30%;
  --cw-mat-blur: 20px;
  --cw-mat-saturate: 1.08;
  --cw-mat-filter: blur(var(--cw-mat-blur)) saturate(var(--cw-mat-saturate));
  --cw-mat-blur-media: 34px;
  --cw-mat-saturate-media: 1.24;
  --cw-mat-filter-media: blur(var(--cw-mat-blur-media)) saturate(var(--cw-mat-saturate-media));
  --cw-mat-stroke: color-mix(in srgb, #ffffff 55%, transparent);
  --cw-mat-stroke-inner: color-mix(in srgb, #16211a 8%, transparent);
  --cw-mat-stroke-control: color-mix(in srgb, #16211a 52%, transparent);
  --cw-mat-scrim-ink: #171817;
  --cw-mat-hover-bg: color-mix(in srgb, var(--cw-platform-text) 6%, transparent);
  --cw-mat-hover-stroke: color-mix(in srgb, var(--cw-platform-text) 14%, var(--cw-platform-border));
  --cw-mat-active-bg: color-mix(in srgb, var(--cw-platform-text) 10%, transparent);
  --cw-mat-active-stroke: color-mix(in srgb, var(--cw-platform-text) 22%, var(--cw-platform-border));
  --cw-mat-active-shadow: 0 0 0 1px color-mix(in srgb, var(--cw-platform-text) 12%, transparent);
  --cw-mat-scrim: color-mix(in srgb, var(--cw-mat-scrim-ink) 38%, transparent);
  --cw-mat-scroll-thumb: color-mix(in srgb, var(--cw-platform-text) 22%, transparent);
  --cw-mat-scroll-thumb-hover: color-mix(in srgb, var(--cw-platform-text) 34%, transparent);
  --cw-mat-scroll-track: transparent;
  --cw-mat-meter-track: color-mix(in srgb, var(--cw-platform-border) 72%, var(--cw-platform-surface) 28%);
  --cw-mat-shadow-soft: 0 1px 2px rgba(35, 29, 20, 0.05), 0 10px 28px rgba(35, 29, 20, 0.07);
  --cw-mat-shadow-raised: 0 2px 6px rgba(35, 29, 20, 0.07), 0 24px 56px rgba(35, 29, 20, 0.12);
  --cw-mat-shadow-chrome: 0 1px 2px rgba(35, 29, 20, 0.06), 0 14px 34px rgba(35, 29, 20, 0.10);
  --cw-mat-shadow-deep: 0 3px 8px rgba(24, 20, 14, 0.09), 0 32px 64px rgba(24, 20, 14, 0.16);
  --cw-mat-tone-support: color-mix(in srgb, var(--cw-mat-surface) 88%, var(--cw-sem-calm-surface-muted) 12%);
  --cw-mat-tone-proof: color-mix(in srgb, var(--cw-mat-surface) 62%, var(--cw-sem-calm-surface-muted) 38%);
  --cw-mat-tone-boundary: color-mix(in srgb, var(--cw-mat-surface) 90%, var(--cw-sem-boundary) 10%);
  --cw-mat-tone-icon: color-mix(in srgb, var(--cw-mat-surface) 91%, var(--cw-sem-warmth) 9%);
  --cw-mat-grain-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
  --cw-mat-inverse-bg: linear-gradient(165deg, #182a20, #2c4635);
  --cw-mat-inverse-glass: color-mix(in srgb, #ffffff 8%, transparent);
  --cw-mat-inverse-control: color-mix(in srgb, #16211a 34%, transparent);
  --cw-mat-inverse-control-hover: color-mix(in srgb, #16211a 44%, transparent);
  --cw-mat-inverse-stroke: color-mix(in srgb, #ffffff 18%, transparent);
  --cw-mat-inverse-text: #faefe0;
  --cw-mat-inverse-text-muted: color-mix(in srgb, #faefe0 78%, transparent);
  --cw-radius-md: 16px;
  --cw-radius-btn: var(--cw-radius-md);
  --ds-touch-target-min: 3rem;
  --ds-button-min-height: var(--ds-touch-target-min);
  --ds-button-padding-inline: 1.15rem;
  --ds-button-radius: var(--cw-radius-btn);
  --ds-button-font-weight: 700;
  --ds-button-font-size: 1rem;
  --ds-button-gap: 0.5rem;
  --ds-button-lift: -1px;
  --cw-max-width: 1160px;
  --cw-page-gutter: clamp(20px, 5vw, 40px);
  --cw-bar-pad: 0.8rem;
  --cw-bar-inset: var(--cw-page-gutter);
}

[data-cw-theme="dark"] {
  --cw-mat-surface: var(--cw-mat-surface-night);
  --cw-mat-surface-night: color-mix(in srgb, #232322 94%, var(--cw-sem-warmth) 6%);
  --cw-mat-surface-sunk: color-mix(in srgb, #191918 62%, var(--cw-mat-surface) 38%);
  --cw-mat-tint: color-mix(in srgb, var(--cw-mat-surface) 76%, transparent);
  --cw-mat-tint-hover: color-mix(in srgb, var(--cw-mat-surface) 84%, transparent);
  --cw-mat-tint-media: color-mix(in srgb, var(--cw-mat-surface) 82%, transparent);
  --cw-mat-tint-chrome: color-mix(in srgb, var(--cw-mat-surface) 30%, transparent);
  --cw-mat-tint-floor: 76%;
  --cw-mat-tint-media-floor: 82%;
  --cw-mat-tint-chrome-floor: 30%;
  --cw-mat-blur: 20px;
  --cw-mat-saturate: 1.08;
  --cw-mat-filter: blur(var(--cw-mat-blur)) saturate(var(--cw-mat-saturate));
  --cw-mat-blur-media: 34px;
  --cw-mat-saturate-media: 1.24;
  --cw-mat-filter-media: blur(var(--cw-mat-blur-media)) saturate(var(--cw-mat-saturate-media));
  --cw-mat-stroke: color-mix(in srgb, #ffffff 14%, transparent);
  --cw-mat-stroke-inner: color-mix(in srgb, #ffffff 4%, transparent);
  --cw-mat-stroke-control: color-mix(in srgb, #faefe0 42%, transparent);
  --cw-mat-scrim-ink: #171817;
  --cw-mat-hover-bg: color-mix(in srgb, var(--cw-platform-text) 6%, transparent);
  --cw-mat-hover-stroke: color-mix(in srgb, var(--cw-platform-text) 14%, var(--cw-platform-border));
  --cw-mat-active-bg: color-mix(in srgb, var(--cw-platform-text) 10%, transparent);
  --cw-mat-active-stroke: color-mix(in srgb, var(--cw-platform-text) 22%, var(--cw-platform-border));
  --cw-mat-active-shadow: 0 0 0 1px color-mix(in srgb, var(--cw-platform-text) 12%, transparent);
  --cw-mat-scrim: color-mix(in srgb, var(--cw-mat-scrim-ink) 62%, transparent);
  --cw-mat-scroll-thumb: color-mix(in srgb, var(--cw-platform-text) 22%, transparent);
  --cw-mat-scroll-thumb-hover: color-mix(in srgb, var(--cw-platform-text) 34%, transparent);
  --cw-mat-scroll-track: transparent;
  --cw-mat-meter-track: color-mix(in srgb, var(--cw-platform-border) 72%, var(--cw-platform-surface) 28%);
  --cw-mat-shadow-soft: 0 1px 2px rgba(0, 0, 0, 0.3), 0 12px 32px rgba(0, 0, 0, 0.35);
  --cw-mat-shadow-raised: 0 2px 6px rgba(0, 0, 0, 0.35), 0 28px 60px rgba(0, 0, 0, 0.5);
  --cw-mat-shadow-chrome: 0 1px 2px rgba(0, 0, 0, 0.18), 0 14px 34px rgba(0, 0, 0, 0.22);
  --cw-mat-shadow-deep: 0 3px 8px rgba(0, 0, 0, 0.4), 0 32px 68px rgba(0, 0, 0, 0.55);
  --cw-mat-tone-support: color-mix(in srgb, var(--cw-mat-surface) 95%, #faefe0 5%);
  --cw-mat-tone-proof: color-mix(in srgb, var(--cw-mat-surface) 90%, #faefe0 10%);
  --cw-mat-tone-boundary: color-mix(in srgb, var(--cw-mat-surface) 84%, var(--cw-sem-boundary) 16%);
  --cw-mat-tone-icon: color-mix(in srgb, var(--cw-mat-surface) 86%, var(--cw-sem-warmth) 14%);
  --cw-mat-grain-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.16 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
  --cw-mat-inverse-bg: linear-gradient(165deg, #182a20, #2c4635);
  --cw-mat-inverse-glass: color-mix(in srgb, #ffffff 8%, transparent);
  --cw-mat-inverse-control: color-mix(in srgb, #16211a 34%, transparent);
  --cw-mat-inverse-control-hover: color-mix(in srgb, #16211a 44%, transparent);
  --cw-mat-inverse-stroke: color-mix(in srgb, #ffffff 22%, transparent);
  --cw-mat-inverse-text: #faefe0;
  --cw-mat-inverse-text-muted: color-mix(in srgb, #faefe0 78%, transparent);
}
