/*
 * Nakamura Head Office design tokens.
 * Ported from the Claude Design handoff (nakamura-ho design system: colors.css, spacing.css, typography.css, fonts.css).
 * Shared across web pages built from that design — not specific to any single page.
 * The Google Fonts (Quicksand, Poppins, Cormorant Garamond, Noto Sans JP) referenced below are
 * loaded via <link> in web.layouts.auth, not re-imported here.
 */

:root{
  /* ---- Base palette ---- */
  --nk-green-900:#22350f;
  --nk-green-800:#2e4715;
  --nk-green-700:#3b5b1c;
  --nk-green-600:#4a7223;
  --nk-green-500:#5c8a2e;
  --nk-green-100:#dbe8c6;
  --nk-green-50:#eef4e1;

  --nk-maroon-900:#4f1211;
  --nk-maroon-800:#5e1514;
  --nk-maroon-700:#681817;
  --nk-maroon-600:#7a1c1c;
  --nk-maroon-500:#8a2422;
  --nk-maroon-100:#e7cccb;
  --nk-maroon-50:#f6e9e8;

  --nk-forest-900:#1e2212;
  --nk-forest-800:#292f19;
  --nk-forest-700:#2f3124;
  --nk-forest-600:#3a3e28;
  --nk-forest-500:#4c5236;
  --nk-forest-100:#d5dac6;

  --nk-sage-500:#a9bd77;
  --nk-sage-400:#c9d6a2;
  --nk-sage-300:#dfe7c2;
  --nk-sage-100:#eef2df;

  --nk-cream-50:#faf8ef;
  --nk-cream-100:#f7f5e9;
  --nk-cream-200:#f4f1e4;
  --nk-cream-300:#ece7d6;
  --nk-cream-400:#ddd6c1;

  --nk-ink-900:#26261e;
  --nk-ink-700:#4a4a40;
  --nk-ink-500:#6e6e60;
  --nk-ink-300:#9a9a8b;
  --nk-white:#ffffff;

  --nk-sidebar:#2b2721;
  --nk-gold:#b08a3e;

  /* ---- Semantic aliases ---- */
  --color-brand:var(--nk-green-600);
  --color-brand-strong:var(--nk-green-800);
  --color-brand-soft:var(--nk-green-50);
  --color-accent:var(--nk-maroon-600);
  --color-accent-strong:var(--nk-maroon-800);
  --color-accent-soft:var(--nk-maroon-50);

  --surface-page:var(--nk-cream-200);
  --surface-card:var(--nk-white);
  --surface-raised:var(--nk-cream-50);
  --surface-sunken:var(--nk-cream-100);
  --surface-inverse:var(--nk-forest-800);
  --surface-brand:var(--nk-green-600);
  --surface-accent:var(--nk-maroon-600);
  --surface-sidebar:var(--nk-sidebar);

  --text-strong:var(--nk-ink-900);
  --text-body:var(--nk-ink-700);
  --text-muted:var(--nk-ink-500);
  --text-faint:var(--nk-ink-300);
  --text-on-brand:var(--nk-cream-50);
  --text-on-accent:var(--nk-cream-50);
  --text-brand:var(--nk-green-700);
  --text-accent:var(--nk-maroon-600);

  --border-hairline:var(--nk-cream-400);
  --border-strong:var(--nk-forest-100);
  --border-focus:var(--nk-green-500);

  /* ---- Status ---- */
  --status-success:#2f9e44;
  --status-success-soft:#e3f5e8;
  --status-warning:#e08a1e;
  --status-warning-soft:#fbeed3;
  --status-danger:#db3b3b;
  --status-danger-soft:#fce3e3;
  --status-info:#2b83c4;
  --status-info-soft:#ddeefb;

  /* ---- Type ---- */
  --font-display:'Quicksand','Poppins',system-ui,sans-serif;
  --font-heading:'Poppins',system-ui,sans-serif;
  --font-body:'Poppins',system-ui,sans-serif;
  --font-serif:'Cormorant Garamond',Georgia,serif;
  --font-jp:'Noto Sans JP',sans-serif;

  --fs-display:44px;
  --fs-h1:32px;
  --fs-h2:26px;
  --fs-h3:21px;
  --fs-h4:17px;
  --fs-body:14px;
  --fs-body-sm:13px;
  --fs-caption:12px;
  --fs-micro:11px;

  --lh-tight:1.15;
  --lh-snug:1.3;
  --lh-normal:1.5;
  --lh-relaxed:1.65;

  --fw-light:300;
  --fw-regular:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;

  --ls-tagline:0.32em;
  --ls-eyebrow:0.14em;
  --ls-tight:-0.01em;

  /* ---- Spacing / radii / shadows / motion ---- */
  --sp-0:0px;
  --sp-1:4px;
  --sp-2:8px;
  --sp-3:12px;
  --sp-4:16px;
  --sp-5:20px;
  --sp-6:24px;
  --sp-8:32px;
  --sp-10:40px;
  --sp-12:48px;
  --sp-16:64px;
  --sp-20:80px;

  --radius-xs:4px;
  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:18px;
  --radius-xl:24px;
  --radius-pill:999px;

  --border-w:1px;
  --border-w-strong:2px;

  --shadow-xs:0 1px 2px rgba(38,38,30,0.06);
  --shadow-sm:0 2px 6px rgba(38,38,30,0.07);
  --shadow-md:0 6px 18px rgba(38,38,30,0.09);
  --shadow-lg:0 16px 40px rgba(38,38,30,0.12);
  --shadow-brand:0 8px 24px rgba(74,114,35,0.22);

  --ease-standard:cubic-bezier(0.4,0,0.2,1);
  --ease-out:cubic-bezier(0.16,1,0.3,1);
  --dur-fast:120ms;
  --dur-base:200ms;
  --dur-slow:320ms;

  --container-max:1280px;
  --sidebar-w:264px;
  --topbar-h:64px;
}
