/* GENERATED — do not edit.
   Written by scripts/build-promo-tokens.mjs from src/design/tokens.ts,
   which is the only place a colour in this product is decided.
   scripts/check-tokens.mjs fails if this file and tokens.ts disagree.
   Dark is the default brand environment; light is data-theme="light". */
:root {
  color-scheme: dark;
  --bg: #071427;
  --card: #0C1C33;
  --card-border: #1E3352;
  --subtle-fill: #10223D;
  --hairline: #152946;
  --field-border: #56739A;
  --ink: #ECEAE6;
  --ink-fill: #CC9751;
  --on-ink: #071427;
  --on-gold: #071427;
  --navy-deeper: #030B16;
  --navy-mid: #0E2440;
  --navy-mid2: #0B1E36;
  --navy-mid3: #11294A;
  --navy-border: #1B3554;
  --navy-border2: #112842;
  --navy-border3: #24456A;
  --ivory: #ECEAE6;
  --ivory2: #E1DFDC;
  --ivory3: #E6E4E0;
  --muted-on-dark: #A3B2C4;
  --muted-on-dark2: #AEBBCB;
  --muted-on-dark3: #94A5B9;
  --muted-on-dark4: #91A1B5;
  --muted-on-dark5: #8D9DB2;
  --gold: #CC9751;
  --gold-deep: #DDB077;
  --gold-pale: #4A3A22;
  --blue: #8DBBE3;
  --scroll-thumb: #2A4061;
  --placeholder: #94A5B9;
  --lattice-node: #CC9751;
  --lattice-edge: #ECEAE6;
  --lattice-dust: #ECEAE6;
  --grey: #A9B5C4;
  --grey2: #A6B2C1;
  --grey3: #A3AFBE;
  --grey4: #9FABBA;
  --grey5: #B3BECB;
  --grey6: #C4CDD7;
  --grey7: #AAB6C6;
  --critical: #EE6B60;
  --critical-text: #F5A39B;
  --critical-bg: #3A1716;
  --critical-border: #6E2B27;
  --success: #45B28E;
  --success-text: #82D2B5;
  --success-bg: #0D2C24;
  --success-border: #1F5A47;
  --teal: #5FB3A3;
  --warning: #E0BC4A;
  --warning-text: #EBCB72;
  --warning-bg: #30270E;
  --warning-border: #6A5520;
  --purple: #A991D2;
  --purple-text: #C6B3E6;
  --purple-bg: #241B36;
  --purple-border: #4A3A6A;
  --info-bg: #0F2949;
  --info-border: #2D5786;
  --neutral-bg: #12233B;
  --neutral-border: #263C5C;
  --gold-tint: #211D18;
  --gold-tint-strong: #2C251B;
  --tone-critical: #F08177;
  --tone-critical-bg: #3A1716;
  --tone-high: #F0A562;
  --tone-high-bg: #36210E;
  --tone-medium: #E3C25A;
  --tone-medium-bg: #2F280D;
  --tone-good: #57BE9A;
  --tone-good-bg: #0D2C24;
  --tone-none: #9FABBA;
  --tone-none-bg: #15263F;

  --shadow-flat: none;
  --shadow-raised: 0 1px 2px rgba(0,0,0,.28);
  --shadow-overlay: 0 6px 18px rgba(0,0,0,.42);
  --shadow-modal: 0 20px 48px rgba(0,0,0,.55);

  --space-hair: 2px;
  --space-tight: 4px;
  --space-snug: 8px;
  --space-base: 12px;
  --space-cell: 16px;
  --space-card: 20px;
  --space-block: 24px;
  --space-section: 28px;
  --space-loose: 32px;
  --space-stage: 40px;
  --space-band: 56px;
  --control-app: 40px;
  --control-public: 48px;
  --radius-chip: 999px;
  --radius-pill: 999px;
  --radius-field: 12px;
  --radius-card: 18px;
  --radius-panel: 22px;
  --motion-fast: 150ms;
  --motion-base: 200ms;
  --motion-slow: 250ms;
  --motion-reveal: 480ms;
  --motion-rise: 800ms;
  --ease: cubic-bezier(.2,.7,.3,1);
  --type-display: clamp(30px, 5.4vw, 58px);
  --type-h1: clamp(24px, 3.4vw, 36px);
  --type-h2: 24px;
  --type-h3: 20px;
  --type-lede: clamp(15.5px, 1.9vw, 19px);
  --type-body: 17px;
  --type-small: 15px;
  --lh-display-ar: 1.25;
  --lh-h1-ar: 1.35;
  --lh-h2-ar: 1.45;
  --lh-h3-ar: 1.5;
  --lh-lede-ar: 1.75;
  --lh-body-ar: 1.7;
  --lh-small-ar: 1.6;
  --lh-display-en: 1.15;
  --lh-h1-en: 1.25;
  --lh-h2-en: 1.35;
  --lh-h3-en: 1.4;
  --lh-lede-en: 1.6;
  --lh-body-en: 1.6;
  --lh-small-en: 1.5;

  --fx-glass-tint: rgba(12,28,51,.55);
  --fx-glass-rim: rgba(225,223,220,.10);
  --fx-glass-blur: 14px;
  --fx-edge-gold: linear-gradient(135deg, #CC9751 0%, #EAD8BA 45%, #2B5C85 100%);
  --fx-edge-quiet: linear-gradient(135deg, #4A3A22 0%, #1E3352 55%, #2D5786 100%);
  --fx-glow-gold: radial-gradient(closest-side, rgba(204,151,81,.22), rgba(204,151,81,0));
  --fx-glow-blue: radial-gradient(closest-side, rgba(43,92,133,.16), rgba(43,92,133,0));
  --fx-lift-shadow: 0 14px 32px rgba(0,0,0,.42), 0 4px 10px rgba(0,0,0,.30);
  --fx-night-fade: linear-gradient(180deg, #030B16 0%, #0B1E36 45%, #071427 100%);
  --fx-glow-night: radial-gradient(closest-side, rgba(204,151,81,.34), rgba(204,151,81,0));
  --fx-poster-wash: radial-gradient(60% 55% at 50% 38%, rgba(74,58,34,.33) 0%, transparent 70%), radial-gradient(45% 40% at 22% 78%, rgba(15,41,73,.67) 0%, transparent 72%);
  --fx-glow-doors: radial-gradient(closest-side at 18% 30%, rgba(204,151,81,.22), rgba(204,151,81,0)), radial-gradient(closest-side at 82% 75%, rgba(43,92,133,.16), rgba(43,92,133,0));
}

:root[data-theme='light'] {
  color-scheme: light;
  --bg: #F6F4EF;
  --card: #FFFFFF;
  --card-border: #E7E2D7;
  --subtle-fill: #FAF8F4;
  --hairline: #F0ECE4;
  --field-border: #7A8597;
  --ink: #0A1C30;
  --ink-fill: #0A1C30;
  --on-ink: #ECEAE6;
  --on-gold: #04101E;
  --navy-deeper: #04101E;
  --navy-mid: #0E2440;
  --navy-mid2: #0B1E36;
  --navy-mid3: #11294A;
  --navy-border: #1B3554;
  --navy-border2: #112842;
  --navy-border3: #24456A;
  --ivory: #ECEAE6;
  --ivory2: #E1DFDC;
  --ivory3: #E6E4E0;
  --muted-on-dark: #A3B2C4;
  --muted-on-dark2: #AEBBCB;
  --muted-on-dark3: #94A5B9;
  --muted-on-dark4: #91A1B5;
  --muted-on-dark5: #8D9DB2;
  --gold: #CC9751;
  --gold-deep: #7D5427;
  --gold-pale: #EAD8BA;
  --blue: #2B5C85;
  --scroll-thumb: #C5CEDA;
  --placeholder: #64748B;
  --lattice-node: #7D5427;
  --lattice-edge: #0A1C30;
  --lattice-dust: #33475F;
  --grey: #475569;
  --grey2: #475569;
  --grey3: #475569;
  --grey4: #475569;
  --grey5: #475569;
  --grey6: #33475F;
  --grey7: #475569;
  --critical: #B3261E;
  --critical-text: #8C2C22;
  --critical-bg: #FCF0EE;
  --critical-border: #E3B7B1;
  --success: #1F7A5C;
  --success-text: #155C45;
  --success-bg: #E8F4EF;
  --success-border: #BFE0D2;
  --teal: #2A7364;
  --warning: #C9A227;
  --warning-text: #6B4E08;
  --warning-bg: #FDF3DC;
  --warning-border: #EBD6A0;
  --purple: #7A5A9B;
  --purple-text: #5B3E8C;
  --purple-bg: #F1EEF7;
  --purple-border: #DDD4EC;
  --info-bg: #EDF2F8;
  --info-border: #B9CBDF;
  --neutral-bg: #F1F4F8;
  --neutral-border: #E7E2D7;
  --gold-tint: #FBF5EC;
  --gold-tint-strong: #F5EBDA;
  --tone-critical: #B3261E;
  --tone-critical-bg: #FBECEA;
  --tone-high: #A5540C;
  --tone-high-bg: #FCF1E6;
  --tone-medium: #6E5600;
  --tone-medium-bg: #FAF4DE;
  --tone-good: #1F7A5C;
  --tone-good-bg: #E8F4EF;
  --tone-none: #475569;
  --tone-none-bg: #F1F0EC;
  --shadow-flat: none;
  --shadow-raised: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06);
  --shadow-overlay: 0 12px 32px -12px rgba(16,24,40,.16), 0 4px 8px -4px rgba(16,24,40,.06);
  --shadow-modal: 0 18px 44px rgba(6,20,38,.22), 0 6px 14px rgba(6,20,38,.12);
  --fx-glass-tint: rgba(255,255,255,.55);
  --fx-glass-rim: rgba(255,255,255,.75);
  --fx-glass-blur: 14px;
  --fx-edge-gold: linear-gradient(135deg, #CC9751 0%, #EAD8BA 45%, #2B5C85 100%);
  --fx-edge-quiet: linear-gradient(135deg, #EAD8BA 0%, #E4DED3 55%, #B9CBDF 100%);
  --fx-glow-gold: radial-gradient(closest-side, rgba(204,151,81,.22), rgba(204,151,81,0));
  --fx-glow-blue: radial-gradient(closest-side, rgba(43,92,133,.16), rgba(43,92,133,0));
  --fx-lift-shadow: 0 14px 32px rgba(10,28,48,.12), 0 4px 10px rgba(10,28,48,.06);
  --fx-night-fade: linear-gradient(180deg, #04101E 0%, #0B1E36 45%, #F4F1EC 100%);
  --fx-glow-night: radial-gradient(closest-side, rgba(204,151,81,.34), rgba(204,151,81,0));
  --fx-poster-wash: radial-gradient(60% 55% at 50% 38%, rgba(234,216,186,.33) 0%, transparent 70%), radial-gradient(45% 40% at 22% 78%, rgba(237,242,248,.67) 0%, transparent 72%);
  --fx-glow-doors: radial-gradient(closest-side at 18% 30%, rgba(204,151,81,.22), rgba(204,151,81,0)), radial-gradient(closest-side at 82% 75%, rgba(43,92,133,.16), rgba(43,92,133,0));
}

:root[data-theme='emerald'] {
  color-scheme: light;
  --bg: #FFFFFF;
  --card: #FFFFFF;
  --card-border: #E2E8E6;
  --subtle-fill: #F4F7F6;
  --hairline: #EDF2F0;
  --field-border: #73817E;
  --ink: #0F172A;
  --ink-fill: #0E6B5C;
  --on-ink: #FFFFFF;
  --on-gold: #FFFFFF;
  --navy-deeper: #0B2A25;
  --navy-mid: #0F3B33;
  --navy-mid2: #0D332C;
  --navy-mid3: #124238;
  --navy-border: #1E4F45;
  --navy-border2: #163F37;
  --navy-border3: #2A5E53;
  --ivory: #ECEAE6;
  --ivory2: #E1DFDC;
  --ivory3: #E6E4E0;
  --muted-on-dark: #A9C4BD;
  --muted-on-dark2: #B4CCC6;
  --muted-on-dark3: #9DBAB2;
  --muted-on-dark4: #9AB7AF;
  --muted-on-dark5: #96B3AB;
  --gold: #0E6B5C;
  --gold-deep: #0B5A4D;
  --gold-pale: #CFE5DF;
  --blue: #2B5C85;
  --scroll-thumb: #C3D0CC;
  --placeholder: #64748B;
  --lattice-node: #0E6B5C;
  --lattice-edge: #0F172A;
  --lattice-dust: #334155;
  --grey: #475569;
  --grey2: #475569;
  --grey3: #475569;
  --grey4: #475569;
  --grey5: #475569;
  --grey6: #334155;
  --grey7: #475569;
  --critical: #B3261E;
  --critical-text: #8C2C22;
  --critical-bg: #FCF0EE;
  --critical-border: #E3B7B1;
  --success: #1F7A5C;
  --success-text: #155C45;
  --success-bg: #E8F4EF;
  --success-border: #BFE0D2;
  --teal: #2A7364;
  --warning: #C9A227;
  --warning-text: #6B4E08;
  --warning-bg: #FDF3DC;
  --warning-border: #EBD6A0;
  --purple: #7A5A9B;
  --purple-text: #5B3E8C;
  --purple-bg: #F1EEF7;
  --purple-border: #DDD4EC;
  --info-bg: #EEF4F8;
  --info-border: #B9CBDF;
  --neutral-bg: #F2F5F4;
  --neutral-border: #E2E8E6;
  --gold-tint: #EEF6F3;
  --gold-tint-strong: #E1EFEA;
  --tone-critical: #B3261E;
  --tone-critical-bg: #FBECEA;
  --tone-high: #A5540C;
  --tone-high-bg: #FCF1E6;
  --tone-medium: #6E5600;
  --tone-medium-bg: #FAF4DE;
  --tone-good: #1F7A5C;
  --tone-good-bg: #E8F4EF;
  --tone-none: #475569;
  --tone-none-bg: #F1F4F3;
  --shadow-flat: none;
  --shadow-raised: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06);
  --shadow-overlay: 0 12px 32px -12px rgba(16,24,40,.16), 0 4px 8px -4px rgba(16,24,40,.06);
  --shadow-modal: 0 18px 44px rgba(6,20,38,.22), 0 6px 14px rgba(6,20,38,.12);
  --fx-glass-tint: rgba(255,255,255,.55);
  --fx-glass-rim: rgba(255,255,255,.75);
  --fx-glass-blur: 14px;
  --fx-edge-gold: linear-gradient(135deg, #CC9751 0%, #EAD8BA 45%, #2B5C85 100%);
  --fx-edge-quiet: linear-gradient(135deg, #EAD8BA 0%, #E4DED3 55%, #B9CBDF 100%);
  --fx-glow-gold: radial-gradient(closest-side, rgba(204,151,81,.22), rgba(204,151,81,0));
  --fx-glow-blue: radial-gradient(closest-side, rgba(43,92,133,.16), rgba(43,92,133,0));
  --fx-lift-shadow: 0 14px 32px rgba(10,28,48,.12), 0 4px 10px rgba(10,28,48,.06);
  --fx-night-fade: linear-gradient(180deg, #04101E 0%, #0B1E36 45%, #F4F1EC 100%);
  --fx-glow-night: radial-gradient(closest-side, rgba(204,151,81,.34), rgba(204,151,81,0));
  --fx-poster-wash: radial-gradient(60% 55% at 50% 38%, rgba(234,216,186,.33) 0%, transparent 70%), radial-gradient(45% 40% at 22% 78%, rgba(237,242,248,.67) 0%, transparent 72%);
  --fx-glow-doors: radial-gradient(closest-side at 18% 30%, rgba(204,151,81,.22), rgba(204,151,81,0)), radial-gradient(closest-side at 82% 75%, rgba(43,92,133,.16), rgba(43,92,133,0));
}

:root[data-theme='emerald-dark'], [data-tone='night'] {
  color-scheme: dark;
  --bg: #07110F;
  --card: #0D1A17;
  --card-border: #1E332D;
  --subtle-fill: #0F1F1B;
  --hairline: #172A25;
  --field-border: #52706A;
  --ink: #E6EFEC;
  --ink-fill: #34B394;
  --on-ink: #04120E;
  --on-gold: #04120E;
  --navy-deeper: #040C0A;
  --navy-mid: #0B211C;
  --navy-mid2: #09201B;
  --navy-mid3: #0E2A24;
  --navy-border: #1D3A33;
  --navy-border2: #16302A;
  --navy-border3: #26493F;
  --ivory: #E6EFEC;
  --ivory2: #DCE6E3;
  --ivory3: #E2EBE8;
  --muted-on-dark: #A3BAB4;
  --muted-on-dark2: #AEC3BE;
  --muted-on-dark3: #97AFA9;
  --muted-on-dark4: #94ACA6;
  --muted-on-dark5: #90A8A2;
  --gold: #3CC2A2;
  --gold-deep: #72D8BF;
  --gold-pale: #143C33;
  --blue: #8DBBE3;
  --scroll-thumb: #26433C;
  --placeholder: #8FA7A1;
  --lattice-node: #3CC2A2;
  --lattice-edge: #E6EFEC;
  --lattice-dust: #E6EFEC;
  --grey: #A7B8B4;
  --grey2: #A4B5B1;
  --grey3: #A1B2AE;
  --grey4: #9DAEAA;
  --grey5: #B2C1BE;
  --grey6: #C4D0CD;
  --grey7: #A9B9B5;
  --critical: #EE6B60;
  --critical-text: #F5A39B;
  --critical-bg: #3A1716;
  --critical-border: #6E2B27;
  --success: #45B28E;
  --success-text: #82D2B5;
  --success-bg: #0D2C24;
  --success-border: #1F5A47;
  --teal: #5FB3A3;
  --warning: #E0BC4A;
  --warning-text: #EBCB72;
  --warning-bg: #30270E;
  --warning-border: #6A5520;
  --purple: #A991D2;
  --purple-text: #C6B3E6;
  --purple-bg: #241B36;
  --purple-border: #4A3A6A;
  --info-bg: #0F2620;
  --info-border: #2B5C50;
  --neutral-bg: #12221E;
  --neutral-border: #233A34;
  --gold-tint: #0F2420;
  --gold-tint-strong: #132C26;
  --tone-critical: #F08177;
  --tone-critical-bg: #3A1716;
  --tone-high: #F0A562;
  --tone-high-bg: #36210E;
  --tone-medium: #E3C25A;
  --tone-medium-bg: #2F280D;
  --tone-good: #57BE9A;
  --tone-good-bg: #0D2C24;
  --tone-none: #9FABBA;
  --tone-none-bg: #13231F;
  --shadow-flat: none;
  --shadow-raised: 0 1px 2px rgba(0,0,0,.28);
  --shadow-overlay: 0 6px 18px rgba(0,0,0,.42);
  --shadow-modal: 0 20px 48px rgba(0,0,0,.55);
  --fx-glass-tint: rgba(12,28,51,.55);
  --fx-glass-rim: rgba(225,223,220,.10);
  --fx-glass-blur: 14px;
  --fx-edge-gold: linear-gradient(135deg, #CC9751 0%, #EAD8BA 45%, #2B5C85 100%);
  --fx-edge-quiet: linear-gradient(135deg, #4A3A22 0%, #1E3352 55%, #2D5786 100%);
  --fx-glow-gold: radial-gradient(closest-side, rgba(204,151,81,.22), rgba(204,151,81,0));
  --fx-glow-blue: radial-gradient(closest-side, rgba(43,92,133,.16), rgba(43,92,133,0));
  --fx-lift-shadow: 0 14px 32px rgba(0,0,0,.42), 0 4px 10px rgba(0,0,0,.30);
  --fx-night-fade: linear-gradient(180deg, #030B16 0%, #0B1E36 45%, #071427 100%);
  --fx-glow-night: radial-gradient(closest-side, rgba(204,151,81,.34), rgba(204,151,81,0));
  --fx-poster-wash: radial-gradient(60% 55% at 50% 38%, rgba(74,58,34,.33) 0%, transparent 70%), radial-gradient(45% 40% at 22% 78%, rgba(15,41,73,.67) 0%, transparent 72%);
  --fx-glow-doors: radial-gradient(closest-side at 18% 30%, rgba(204,151,81,.22), rgba(204,151,81,0)), radial-gradient(closest-side at 82% 75%, rgba(43,92,133,.16), rgba(43,92,133,0));
}
