/* public/backoffice/bo-tokens.css — the DemandInn tokens, BACK OFFICE ONLY.
   Loaded by /backoffice/index.html and /backoffice/modifiers.html after
   /shared/h1-tokens.css and after the page's own <style>, so the values below
   win over the page's old :root and every rule that reads a token follows.
   The till and the website never load this file; h1-tokens.css keeps its own
   values (the --cat-* tile stripes live there and stay there).
   Fonts are self-hosted from /backoffice/fonts/ (fontsource 5.3.0 woff2), so
   the CSP's font-src 'self' covers them and nothing external is fetched. */

/* DM Sans 400/500/600/700, latin + latin-ext (latin-ext carries € and the
   other currency signs; £ is in latin). */
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/dm-sans-latin-400-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/dm-sans-latin-500-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 600; font-display: swap;
  src: url(fonts/dm-sans-latin-600-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 700; font-display: swap;
  src: url(fonts/dm-sans-latin-700-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(fonts/dm-sans-latin-ext-400-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 500; font-display: swap;
  src: url(fonts/dm-sans-latin-ext-500-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 600; font-display: swap;
  src: url(fonts/dm-sans-latin-ext-600-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 700; font-display: swap;
  src: url(fonts/dm-sans-latin-ext-700-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
/* Fraunces, variable weight axis (100–900), latin + latin-ext. */
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(fonts/fraunces-latin-wght-normal.woff2) format("woff2-variations");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(fonts/fraunces-latin-ext-wght-normal.woff2) format("woff2-variations");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

:root {
  /* DemandInn */
  --forest: #12332A; --forest-2: #1C4538; --forest-3: #2A5646;
  --cream: #F6F2EA; --sand: #EAE3D4; --paper: #FBF9F4;
  --line: #E4E0D9; --line-2: #D5CFC2;
  --amber: #E9A23B; --amber-d: #9A6410; --amber-t: #FBE6BF;
  --green: #2E7D5B; --green-t: #DCEBE2; --sage: #C5D6CC; --mint: #8FD3B0;
  --ink: #12332A; --ink-2: #45524B; --muted: #6B766F;
  --red: #B5483A; --red-t: #F6E3DE;
  --serif: "Fraunces", Georgia, serif;
  --sans: "DM Sans", system-ui, sans-serif;
  --r: 16px;
  /* Two helpers the components need that the palette above does not name:
     the one white (input fills) and the table-row hover wash. */
  --white: #FFFFFF;
  --row-hover: #F3EFE5;

  /* THE OLD BACK-OFFICE NAMES, RE-POINTED. index.html's own :root (and
     modifiers.html's) still declare these; this file loads after them, so the
     1,000+ var() reads in the old rules take the DemandInn value without a
     single rule being touched. --brand / --accent / --brand-tint / --on-brand
     are NOT here: /shared/branding.js writes them on :root at runtime (the
     venue's own colours) and an inline style beats any stylesheet; the
     components file restyles the few chrome rules that read them. */
  --bg: var(--cream);
  --panel: var(--paper);
  --panel-soft: var(--sand);
  --line-strong: var(--line-2);
  --bronze: var(--amber-d);
  --pine: var(--forest);
  --pine-deep: var(--forest);
  --ok: var(--green);
  --danger: var(--red);
  --warn: var(--amber);
  --warn-ink: var(--amber-d);
  --ink-soft: var(--ink-2);
  --radius: var(--r);
  --shadow: 0 1px 2px rgba(18,51,42,.04), 0 8px 24px rgba(18,51,42,.05);
}

/* BASE */
body {
  font-family: var(--sans); font-size: 15px; line-height: 1.5;
  color: var(--ink); background: var(--cream);
}
h1, h2, h3, h4 { font-family: var(--serif); font-weight: 600; letter-spacing: -.01em; line-height: 1.12; }
:focus-visible { outline: 3px solid var(--amber); outline-offset: 2px; }
.num { font-variant-numeric: tabular-nums; }
.eyebrow { font-size: 12px; text-transform: uppercase; letter-spacing: .14em; font-weight: 700; color: var(--green); }
