/* ==========================================================================
   Haven — shared design tokens
   The one place the palette and type scale live. Linked by the landing page,
   the waitlist, the admin page and the member portal, so the product and the
   marketing site cannot drift apart.
   ========================================================================== */

:root {
  --cream: #FAF7F2;
  --ink: #1C1A16;
  --green: #2F5D50;
  --green-hover: #2A5348;
  --warm-gray: #7A7568;
  --muted: #A39C8E;
  --rule: #E4DCCD;
  --rule-light: #EDE7DC;
  --terracotta: #C8724A;
  --on-green-body: #C9DAD3;
  --on-green-label: #9DBAAF;
  --on-green-list: #E4EDE9;
  --green-hairline: rgba(250, 247, 242, 0.16);

  --serif: 'Instrument Serif', Georgia, serif;
  --sans: 'Instrument Sans', system-ui, sans-serif;

  --gutter: 56px;
  --column: 1240px;
}

/* Portal-only additions. Same family, extended where the app needs surfaces
   and states a landing page never has. */
:root {
  --surface: #FFFDF9;          /* raised cards on the cream ground */
  --surface-sunk: #FBF8F3;     /* the current month, quietly emphasised */
  --tab-active: #F1EDE5;
  --rule-faint: #F2ECE2;
  --shadow-card: 0 1px 2px rgba(28, 26, 22, 0.04);
  --shadow-float: 0 8px 24px rgba(47, 93, 80, 0.32);
}
