/* =========================================================
   SITE 116 — CONCAFE EVENT & LIVE / デザイントークン
   配色: ブラック #111318 / ブルー #3C7CF0 / マゼンタ #D64E9E / ホワイト #F7F7FA
   書体: Oswald（見出し英字）＋ Noto Sans JP（本文・和文見出し）
   角丸: 8px に統一（0/4/8/12/16 のうち 8 を採用。混在させない）
   影  : 2段階まで。コントラスト実測値（sRGB相対輝度）をコメントに記載。
   ========================================================= */
:root {
  /* --- 基本色 --- */
  --c-black:     #111318;
  --c-raise:     #181b22;   /* カード */
  --c-sink:      #0c0e12;   /* ヘッダー・フッター・ドロワー */
  --c-inset:     #20242e;   /* 表のヘッダ・タブ非選択・入力欄 */
  --c-line:      #2a2e38;
  --c-line-strong: #3a3f4c;

  --c-white:     #f7f7fa;
  --c-blue:      #3c7cf0;
  --c-blue-lt:   #6fa1ff;
  --c-blue-dk:   #1f3d78;
  --c-magenta:   #d64e9e;
  --c-magenta-lt: #e97dbb;
  --c-magenta-dk: #5c2542;

  /* --- 用途色（コントラスト実測値。背景は既定で #111318） --- */
  --c-bg: var(--c-black);
  --c-bg-alt: #14161d;
  --c-bg-band: var(--c-raise);
  --c-surface: var(--c-raise);
  --c-ink:        var(--c-white);      /* 対 #111318 = 17.4:1 */
  --c-ink-muted:  #c7cbd6;             /* 対 #111318 = 11.5:1 */
  --c-ink-note:   #9aa0af;             /* 対 #111318 = 7.1:1（注記の下限） */
  --c-accent: var(--c-blue);           /* 対 #111318 = 4.7:1 */
  --c-accent-2: var(--c-magenta);      /* 対 #111318 = 4.8:1 */
  --c-link: var(--c-blue-lt);          /* 対 #111318 = 7.3:1 */
  --c-on-accent: #0b1020;              /* ブルー/マゼンタ地の文字 = 4.8〜4.9:1 */
  --c-focus: var(--c-blue-lt);
  --c-warn-bg: #2a2013;
  --c-warn-line: #7a5a2a;
  --c-warn-text: #e8b06b;
  --c-error: #ff9b9b;                  /* 対 #111318 ≈ 8.9:1 */
  --c-error-bg: #2a1414;

  /* --- 書体 --- */
  --f-display: "Oswald", "Segoe UI Semibold", "Hiragino Kaku Gothic ProN", sans-serif;
  --f-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", system-ui, sans-serif;

  /* --- 文字サイズ（14px 未満を作らない） --- */
  --fs-body: 1rem;         /* 16px */
  --fs-body-lg: 1.0625rem; /* 17px */
  --fs-note: 0.875rem;     /* 14px */
  --fs-label: 0.9375rem;   /* 15px */
  --fs-h1: clamp(1.875rem, 1.2rem + 2.6vw, 3rem);
  --fs-h2: clamp(1.375rem, 1.05rem + 1.3vw, 1.875rem);
  --fs-h3: clamp(1.125rem, 1rem + 0.5vw, 1.375rem);
  --fs-h4: 1.0625rem;
  --fs-deco: 0.875rem;     /* 14px: EVENT/CAST等の英字ラベル */

  /* --- 行間 --- */
  --lh-head: 1.25;
  --lh-body: 1.7;
  --lh-tight: 1.4;

  /* --- 余白 --- */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 88px;

  /* --- 幅 --- */
  --w-container: 1180px;
  --w-narrow: 820px;
  --gutter: 20px;

  /* --- 角丸（8px 統一） --- */
  --r: 8px;

  /* --- 影（2段階まで） --- */
  --sh-1: 0 1px 2px rgba(0, 0, 0, 0.4), 0 2px 10px rgba(0, 0, 0, 0.35);
  --sh-2: 0 12px 32px rgba(0, 0, 0, 0.55);

  /* --- 部品寸法 --- */
  --h-header: 76px;
  --h-ctabar: 60px;
  --tap: 44px;
}

html { font-size: 100%; }

body {
  background: var(--c-bg);
  color: var(--c-ink);
  font-family: var(--f-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  font-weight: 400;
  letter-spacing: 0.01em;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
  font-family: var(--f-display);
  line-height: var(--lh-head);
  font-weight: 600;
  letter-spacing: 0.01em;
}

strong { font-weight: 700; }

/* 数値・時刻・料金・カウントダウンは等幅数字で揃える */
.num, time, .price, .tel, .countdown__num { font-variant-numeric: tabular-nums; }
