/* MM Express — design tokens for the Internal Admin control plane.

   Mirrors the brand design system (`design-system/tokens/*` — Claude Design
   project 598ec16c): navy base, smoke neutrals, a single tin accent, Yeseva One
   for display and Golos Text for body, UI and data.

   The fonts are served from this service instead of Google Fonts: the control
   plane answers with `Content-Security-Policy: default-src 'self'`, so any
   remote font would be blocked by the browser and silently fall back. */

@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/assets/fonts/golos-text-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/assets/fonts/golos-text-latin.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: 'Yeseva One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/yeseva-one-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Yeseva One';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/yeseva-one-latin.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;
}

:root {
  color-scheme: light;

  /* Brand base — the five client colours. */
  --navy-900: #16244F;
  --navy-700: #2C3C68;
  --smoke-050: #EFEEE9;
  --stone-200: #C6C3BC;
  --tin-400: #8892A8;

  /* Derived navy ramp for hover, press and overlays. */
  --navy-950: #0E1836;
  --navy-800: #1F2E58;
  --navy-600: #3A4B78;
  --navy-500: #4C5C88;

  /* Derived neutral ramp: smoke to stone to tin. */
  --smoke-000: #F7F6F2;
  --smoke-100: #E4E2DB;
  --stone-300: #B4B0A8;
  --stone-400: #9C988F;
  --tin-500: #6E7893;
  --tin-300: #A4ACBE;
  --tin-200: #C3C8D4;

  --accent: var(--tin-500);
  --accent-hover: #5C688A;

  /* Surfaces. */
  --surface-base: var(--smoke-050);
  --surface-raised: #FFFFFF;
  --surface-sunken: var(--smoke-100);
  --surface-inverse: var(--navy-900);
  --surface-inverse-2: var(--navy-700);

  /* Borders. */
  --border-subtle: #DCD9D2;
  --border-default: var(--stone-200);
  --border-strong: var(--stone-400);
  --border-on-dark: rgba(239, 238, 233, .16);

  /* Text on light. */
  --text-strong: var(--navy-900);
  --text-body: #26314F;
  --text-muted: var(--tin-500);
  --text-faint: var(--stone-400);
  --text-link: var(--navy-700);
  --text-link-hover: var(--navy-900);

  /* Text on navy. */
  --text-on-dark: var(--smoke-050);
  --text-on-dark-muted: var(--tin-300);
  --text-on-dark-faint: rgba(239, 238, 233, .55);

  /* Status semantics, muted to match the sober palette. */
  --status-success: #3F6E5C; --status-success-bg: #E3EBE6; --status-success-fg: #2C5344;
  --status-warning: #B07C3C; --status-warning-bg: #F1E9DC; --status-warning-fg: #7E561F;
  --status-danger: #A24A40; --status-danger-bg: #F0E1DE; --status-danger-fg: #7C332B;
  --status-info: var(--tin-500); --status-info-bg: #E5E7EC; --status-info-fg: var(--navy-700);
  --status-neutral: var(--stone-400); --status-neutral-bg: #E9E7E1; --status-neutral-fg: #55524B;

  /* Typography. */
  --font-display: 'Yeseva One', Georgia, 'Times New Roman', serif;
  --font-body: 'Golos Text', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  --fs-h1: 48px;
  --fs-h2: 36px;
  --fs-h3: 27px;
  --fs-h4: 21px;
  --fs-lead: 20px;
  --fs-body: 16px;
  --fs-body-sm: 14px;
  --fs-caption: 13px;
  --fs-overline: 12px;
  --lh-h2: 1.1;
  --lh-h3: 1.18;
  --lh-body: 1.6;
  --lh-body-sm: 1.55;
  --ls-overline: .14em;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* Spacing on a 4px grid. */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px;
  --space-12: 48px; --space-16: 64px;

  /* Radius, elevation, layout, motion. */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --shadow-1: 0 1px 2px rgba(22, 36, 79, .06), 0 1px 1px rgba(22, 36, 79, .04);
  --shadow-2: 0 2px 6px rgba(22, 36, 79, .08), 0 1px 2px rgba(22, 36, 79, .05);
  --shadow-3: 0 8px 20px rgba(22, 36, 79, .10), 0 2px 6px rgba(22, 36, 79, .06);
  --shadow-4: 0 18px 40px rgba(22, 36, 79, .14), 0 6px 14px rgba(22, 36, 79, .08);
  --ring-focus: 0 0 0 3px rgba(136, 146, 168, .45);
  --sidebar-width: 244px;
  --header-height: 68px;
  --ease-standard: cubic-bezier(.2, .6, .2, 1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
}
