/* SITE 86 CABARET LARGE CAST — design tokens
   配色: ホワイト #FFFFFF / チャコール #25282D / ブルー #4169A8 / ライトグレー #E7E9ED
   書体: Inter + Noto Sans JP（いずれもシステムフォールバック必須）
   角丸は 0 / 4 / 8 / 12 / 16 のうち 4 / 8 の2値のみを使う（名簿UIのため角を大きくしない） */

:root {
  /* --- color --- */
  --c-paper: #FFFFFF;        /* ページ背景・カード面 */
  --c-paper-2: #F6F7F9;      /* セクション背景（1段沈める） */
  --c-paper-3: #EEF1F5;      /* 入力欄・入れ子面 */
  --c-ink: #25282D;          /* 主要文字（対 #FFFFFF 約 12.9:1） */
  --c-ink-2: #4B525C;        /* 見出し補助（対 #FFFFFF 約 7.7:1） */
  --c-muted: #5C646F;        /* 補助文字（対 #FFFFFF 約 6.2:1） */
  --c-blue: #4169A8;         /* アクセント1（対 #FFFFFF 約 5.6:1） */
  --c-blue-deep: #2F4E80;    /* 押下・ホバー（対 #FFFFFF 約 8.4:1） */
  --c-blue-tint: #EAF0F8;    /* 面（文字は必ず ink 系を載せる） */
  --c-grey: #E7E9ED;         /* 罫線・ライトグレー */
  --c-line: #DCE0E6;
  --c-line-strong: #B9C0CA;
  --c-ok: #1F7A52;           /* 営業中（対 #FFFFFF 約 4.9:1） */
  --c-alert: #B4262B;        /* エラー・休業（対 #FFFFFF 約 6.4:1） */
  --c-on-blue: #FFFFFF;

  /* --- typography --- */
  --f-sans: Inter, "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --f-num: Inter, "Segoe UI", system-ui, sans-serif;

  --fs-body: 1rem;         /* 16px */
  --fs-body-lg: 1.0625rem; /* 17px 長文 */
  --fs-note: 0.875rem;     /* 14px 注記の下限 */
  --fs-label: 0.9375rem;   /* 15px */
  --fs-h1: clamp(1.75rem, 1.35rem + 1.6vw, 2.5rem);
  --fs-h2: clamp(1.375rem, 1.18rem + 0.8vw, 1.875rem);
  --fs-h3: clamp(1.125rem, 1.05rem + 0.3vw, 1.3125rem);
  --fs-h4: 1.0625rem;
  --fs-eyebrow: 0.8125rem;  /* 13px 装飾英字ラベルのみ。同内容は必ず通常サイズで併記する */
  --fs-stat: clamp(1.75rem, 1.4rem + 1.4vw, 2.375rem);

  --lh-tight: 1.3;
  --lh-heading: 1.45;
  --lh-body: 1.75;
  --lh-dense: 1.5;

  --ls-nav: 0.02em;
  --ls-eyebrow: 0.16em;
  --ls-body: 0.01em;

  /* --- spacing --- */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;
  --sp-8: 64px;
  --section-y: clamp(44px, 5vw, 76px);

  /* --- layout --- */
  --container: 1200px;
  --container-narrow: 860px;
  --gutter: clamp(16px, 3.5vw, 28px);
  /* PCヘッダーは MASTER §6 の 64〜80px に収める（実測 72px） */
  --header-h: 72px;
  /* アンカー着地位置。ヘッダー実測高＋余白。767px以下は responsive.css で 84px へ */
  --anchor-offset: 92px;
  /* 固定CTA。バー全体 = 上罫線1px + padding 3px×2 + タップ領域 48px = 55px（48〜56px） */
  --cta-h: 55px;
  --cta-tap: 48px;
  --cta-pad: 3px;

  /* --- radius（4 / 8 の2値のみ） --- */
  --r-s: 4px;
  --r-m: 8px;

  /* --- shadow（2段階まで） --- */
  --sh-1: 0 1px 2px rgba(37, 40, 45, 0.08);
  --sh-2: 0 10px 30px rgba(37, 40, 45, 0.16);

  /* --- motion（1種類: fade+slide） --- */
  --dur: 180ms;
  --dur-slow: 360ms;
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  --z-header: 60;
  --z-sticky: 50;
  --z-cta: 70;
  --z-drawer: 90;
  --z-modal: 100;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur: 0ms;
    --dur-slow: 0ms;
  }
}
