/* chequers-matching-green — generated by tools/generate-tokens.mjs from
   clients/chequers-matching-green/contract.tokens.json. DO NOT EDIT: change the contract
   and regenerate. `node tools/generate-tokens.mjs chequers-matching-green --check` fails
   when this file and the contract disagree. */

:root {
  /* Brand palette: private. Only the roles below may use these. */
  --_ink:                   #1B1B1B;
  --_ink-soft:              #484746;
  --_slate:                 #54595F;
  --_edge:                  #7D7B77;
  --_cream:                 #F5F1E9;
  --_white:                 #FFFFFF;
  --_red:                   #8E2B28;
  --_red-deep:              #6E1F1D;
  --_sage:                  #B0BCA5;
  --_yellow:                #FEE06E;
  --_peach:                 #F0A076;

  /* fg */
  --fg-strong:              var(--_ink);
  --fg-medium:              var(--_ink);
  --fg-secondary:           var(--_ink-soft);
  --fg-muted:               var(--_ink-soft);
  --fg-on-dark:             var(--_white);
  --fg-on-dark-soft:        var(--_cream);
  --fg-on-accent:           var(--_white);
  --fg-on-accent-soft:      var(--_cream);
  --fg-eyebrow:             var(--_ink);
  --fg-emphasis-on-dark:    var(--_yellow);
  --fg-link:                var(--_ink);
  --fg-link-on-dark:        var(--_cream);
  --fg-on-badge:            var(--_ink);
  --fg-link-hover:          var(--_red);
  --fg-caption:             var(--_ink-soft);
  --fg-cite:                var(--_ink-soft);
  --fg-quote:               var(--_ink);
  --fg-nav-current:         var(--_ink);
  --fg-nav-ancestor:        var(--_ink);
  --fg-label:               var(--_ink);
  --fg-placeholder:         var(--_ink-soft);

  /* field */
  --field-bg:               var(--_white);
  --field-fg:               var(--_ink);
  --field-border:           var(--_edge);
  --field-border-focus:     var(--_ink);
  --field-radius:           0px;

  /* link */
  --link-rule:              var(--_ink);

  /* surface */
  --surface-page:           var(--_cream);
  --surface-raised:         var(--_white);
  --surface-sunken:         var(--_sage);
  --surface-inverse:        var(--_ink);
  --surface-inverse-raised: #2A2A2A;
  --surface-accent:         var(--_red);
  --surface-marker:         var(--_sage);
  --surface-badge:          var(--_yellow);
  --surface-table-header:   var(--_sage);
  --surface-selected:       var(--_sage);
  --surface-code:           var(--_white);
  --surface-tint:           var(--_yellow);

  /* ground */
  --ground-text:            var(--fg-medium);

  /* action */
  --action-primary-bg:      var(--_red);
  --action-primary-fg:      var(--_white);
  --action-on-dark-bg:      var(--_cream);
  --action-on-dark-fg:      var(--_ink);
  --action-on-accent-bg:    var(--_white);
  --action-on-accent-fg:    var(--_ink);
  --action-ghost-border:    var(--_cream);
  --action-ghost-fg:        var(--_cream);
  --action-primary-bg-hover: var(--_red-deep);
  --action-primary-fg-hover: var(--_white);
  --action-on-dark-bg-hover: var(--_white);
  --action-on-accent-bg-hover: var(--_cream);
  --action-radius:          0px;
  --action-border-width:    3px;

  /* border */
  --border-faint:           var(--_sage);
  --border-card:            var(--_edge);
  --border-soft:            var(--_sage);
  --border-on-dark:         rgba(245, 241, 233, 0.3);
  --border-accent:          var(--_red);
  --border-accent-on-dark:  var(--_cream);
  --border-quote:           var(--_red);
  --border-table:           var(--_edge);
  --border-selected:        var(--_ink);

  /* focus */
  --focus-ring:             var(--_ink);
  --focus-ring-width:       3px;
  --focus-ring-offset:      0px;

  /* motion */
  --motion-base:            200ms;

  /* ease */
  --ease-standard:          cubic-bezier(0.25, 0.1, 0.25, 1);

  /* tracking */
  --tracking-tight:         0;
  --tracking-wide:          2px;

  /* font */
  --font-body:              "Roboto Mono", ui-monospace, Menlo, Consolas, monospace;
  --font-heading:           "Helvetica Now Display", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-mono:              "Roboto Mono", ui-monospace, Menlo, Consolas, monospace;

  /* hairline */
  --hairline:               1px;

  /* radius */
  --radius-sm:              0px;
  --radius-md:              0px;
  --radius-lg:              0px;
  --radius-pill:            9999px;
  --radius-xs:              0px;

  /* shadow */
  --shadow-card-tinted:     none;
  --shadow-card-sm:         none;
  --shadow-card-md:         none;
  --shadow-card-lg:         none;
  --shadow-image:           none;

  /* t */
  --t-hero:                 1.5rem;
  --t-section:              1.25rem;
  --t-h3:                   1.125rem;
  --t-title:                1.25rem;
  --t-card-title:           1.125rem;
  --t-lead:                 1rem;
  --t-body:                 0.875rem;
  --t-small:                0.8125rem;
  --t-eyebrow:              0.75rem;
  --t-label:                0.875rem;
  --t-tag:                  0.75rem;

  /* lh */
  --lh-tight:               1;
  --lh-snug:                1.2;
  --lh-normal:              1.5;
  --lh-relaxed:             1.8;
  --lh-flush:               1;

  /* fw */
  --fw-regular:             400;
  --fw-semi:                600;
  --fw-bold:                700;
  --fw-medium:              500;

  /* space */
  --space-0:                0;
  --space-1:                0.25rem;
  --space-2:                0.5rem;
  --space-3:                0.75rem;
  --space-4:                1rem;
  --space-5:                1.25rem;
  --space-6:                1.5rem;
  --space-7:                2rem;
  --space-8:                2.5rem;
  --space-9:                3rem;
  --space-10:               4rem;
  --space-11:               5rem;
  --space-12:               7rem;

  /* measure */
  --measure-site:           85.375rem;
  --measure-banner:         85.375rem;
  --measure-content:        calc(var(--measure-banner) - var(--gutter) - var(--measure-banner) * 0.27 - var(--sidebar-gap));
  --measure-prose:          48rem;

  /* gutter */
  --gutter:                 1.25rem;
  --gutter-page-edge:       0.625rem;

  /* breakpoint */
  --breakpoint-mobile:      48em;
  --breakpoint-sidebar:     62em;

  /* sidebar */
  --sidebar-width:          27%;
  --sidebar-gap:            2.5rem;

  /* banner */
  --banner-padding-start:   var(--space-4);
  --banner-padding-end:     var(--space-4);

  /* card */
  --card-radius:            0px;
  --card-border-width:      0px;

  /* image */
  --image-radius:           0px;

  /* header */
  --header-height:          176px;
}

body:not(.has-sidebar) { --measure-content: 48rem; }

.c-ground--sunken { background: var(--surface-sunken); }

.c-ground--raised {
  background: var(--surface-raised);
  --ground-text:        var(--_ink);
  color: var(--ground-text);
}

.c-ground--inverse {
  background: var(--surface-inverse);
  --ground-text:        var(--_white);
  --fg-strong:          var(--_white);
  --fg-medium:          var(--_white);
  --fg-secondary:       var(--_cream);
  --fg-muted:           var(--_cream);
  --fg-eyebrow:         var(--_cream);
  --fg-link:            var(--_cream);
  --border-faint:       rgba(245, 241, 233, 0.3);
  --border-card:        rgba(245, 241, 233, 0.3);
  --surface-raised:     var(--surface-inverse-raised);
  --focus-ring:         var(--_cream);
  --shadow-card-tinted: none;
  color: var(--ground-text);
}

.c-ground--accent {
  background: var(--surface-accent);
  --ground-text:        var(--_white);
  --fg-strong:          var(--_white);
  --fg-medium:          var(--_white);
  --fg-secondary:       var(--_cream);
  --fg-muted:           var(--_cream);
  --fg-eyebrow:         var(--_cream);
  --fg-link:            var(--_white);
  --focus-ring:         var(--_white);
  --shadow-card-tinted: none;
  color: var(--ground-text);
}

.c-ground--tint {
  background: var(--surface-tint);
  --ground-text:        var(--_ink);
  --fg-strong:          var(--_ink);
  --fg-medium:          var(--_ink);
  --fg-muted:           var(--_ink);
  --fg-eyebrow:         var(--_ink);
  --fg-link:            var(--_ink);
  --border-faint:       var(--_ink);
  color: var(--ground-text);
}

.c-ground--page {
  background: var(--surface-page);
  --ground-text:        var(--_ink);
  --fg-strong:          var(--_ink);
  --fg-medium:          var(--_ink);
  --fg-secondary:       var(--_ink-soft);
  --fg-muted:           var(--_ink-soft);
  --fg-eyebrow:         var(--_ink);
  --fg-link:            var(--_ink);
  --border-faint:       var(--_sage);
  --border-card:        var(--_edge);
  --surface-raised:     var(--_white);
  --focus-ring:         var(--_ink);
  --shadow-card-tinted: none;
  color: var(--ground-text);
}
