/* MANGo Night Cut tokens (r3327, Nov 3 2026). Generated by build_handoff.py; edit there, not here.
   Navy is the brand ground. Money screens are always paper (white), in both themes: see README "Money rule".
   Contrast, measured with the WCAG 2 formula (instrument negative-tested: #999 on white = 2.85, fails):
           cream on navy-900    16.24:1  (needs 4.5:1)  Text on navy
            mist on navy-900    11.41:1  (needs 4.5:1)  Secondary text on navy
          mist-2 on navy-800     8.41:1  (needs 4.5:1)  Placeholder in a navy field
        navy-900 on cream       16.24:1  (needs 4.5:1)  Button label, navy ground (cream button)
           paper on man-navy    12.11:1  (needs 4.5:1)  Button label, paper ground (navy button)
             ink on paper       17.43:1  (needs 4.5:1)  Text on paper
           ink-2 on paper        8.86:1  (needs 4.5:1)  Secondary text on paper
            lime on navy-900     7.51:1  (needs 3:1)  Mark skin on navy (shape)
            gold on navy-900    10.41:1  (needs 3:1)  Flesh, bar fill (shape)
            leaf on navy-900     4.35:1  (needs 3:1)  Bar step 1 (shape)
           mango on navy-900     7.10:1  (needs 3:1)  Bar step 4 (shape)
    edge-on-navy on navy-900     5.92:1  (needs 3:1)  Field and track edge (shape)
    edge-on-navy on navy-800     5.09:1  (needs 3:1)  Track edge on track (shape)
           olive on paper        4.71:1  (needs 3:1)  Mark skin on paper, light theme (shape)
        navy-900 on gold-light  12.68:1  (needs 3:1)  Cube top face edge on navy (shape)
   edge-on-paper on paper        3.46:1  (needs 3:1)  Field edge on paper (shape)
        navy-900 on gold        10.41:1  (needs 3:1)  Score lines on flesh (shape)
*/
:root {
  --mg-navy-900: #001840;
  --mg-navy-800: #0B2456;
  --mg-navy-700: #22345E;
  --mg-man-navy: #003080;
  --mg-gold: #FDBE02;
  --mg-gold-light: #FFD94A;
  --mg-lime: #A5B300;
  --mg-olive: #6F7A00;
  --mg-leaf: #7A8600;
  --mg-mango: #F28C28;
  --mg-cream: #FFF6E5;
  --mg-mist: #C9D1E6;
  --mg-mist-2: #B9C2D9;
  --mg-edge-on-navy: #8A96B8;
  --mg-paper: #FFFFFF;
  --mg-ink: #001840;
  --mg-ink-2: #3D4A66;
  --mg-edge-on-paper: #7D8AA8;
  --mg-line-on-paper: #D9DEE8;
  --mg-font: "Instrument Sans", system-ui, sans-serif;   /* self-hosted, already in mvp/ds/fonts */
  --mg-radius: 6px; --mg-radius-pill: 999px;
  --mg-dur-score: 280ms; --mg-dur-turn: 520ms; --mg-dur-settle: 420ms; --mg-dur-bar: 360ms; --mg-dur-fade: 150ms;
  --mg-ease-out: cubic-bezier(.2, .8, .2, 1);         /* score lines, bar */
  --mg-ease-pop: cubic-bezier(.2, .9, .25, 1.15);      /* the turn: small overshoot, one time only */
  --mg-ease-inout: cubic-bezier(.45, 0, .2, 1);        /* settle into the five sizes */
}
/* Brand theme (default, "dark"): navy ground */
:root, [data-theme="dark"] {
  --mg-ground: var(--mg-navy-900); --mg-text: var(--mg-cream); --mg-text-2: var(--mg-mist);
  --mg-field-bg: var(--mg-navy-800); --mg-field-edge: var(--mg-edge-on-navy); --mg-field-placeholder: var(--mg-mist-2);
  --mg-action-bg: var(--mg-cream); --mg-action-text: var(--mg-navy-900); --mg-hairline: var(--mg-navy-700);
  --mg-mark-skin: var(--mg-lime); --mg-mark-flesh: var(--mg-gold); --mg-mark-score: var(--mg-navy-900);
}
/* Light theme: paper ground, navy ink, navy-skin mark */
[data-theme="light"] {
  --mg-ground: var(--mg-paper); --mg-text: var(--mg-ink); --mg-text-2: var(--mg-ink-2);
  --mg-field-bg: var(--mg-paper); --mg-field-edge: var(--mg-edge-on-paper); --mg-field-placeholder: var(--mg-ink-2);
  --mg-action-bg: var(--mg-man-navy); --mg-action-text: var(--mg-paper); --mg-hairline: var(--mg-line-on-paper);
  --mg-mark-skin: var(--mg-olive); --mg-mark-flesh: var(--mg-gold); --mg-mark-score: var(--mg-navy-900);
}
/* Money surfaces: identical in both themes. Ad preview and approval, price, checkout and card entry, receipt. */
.mg-money {
  --mg-ground: var(--mg-paper); --mg-text: var(--mg-ink); --mg-text-2: var(--mg-ink-2);
  --mg-field-bg: var(--mg-paper); --mg-field-edge: var(--mg-edge-on-paper); --mg-field-placeholder: var(--mg-ink-2);
  --mg-action-bg: var(--mg-man-navy); --mg-action-text: var(--mg-paper); --mg-hairline: var(--mg-line-on-paper);
  --mg-mark-skin: var(--mg-olive); --mg-mark-flesh: var(--mg-gold); --mg-mark-score: var(--mg-navy-900);
  background: var(--mg-paper); color: var(--mg-ink);
}
