/* ============================================================
 * Oculis Design Tokens — Sumi (墨) + Maiki (間気)
 *
 * 단일 source. 페이지/컴포넌트 CSS 에서는 :root 재정의 금지.
 * [MAIKI_TOKENS_V1] 복구 2026-05-19
 * ============================================================ */

:root {
  /* Surface */
  --surface-0:      #FFFFFF;
  --surface-1:      #FAFAF7;
  --surface-2:      #F2F1EC;
  --surface-3:      #1A1612;
  --bg-base:        #FAFAF7;

  /* Hairline */
  --hairline:       #1A1612;
  --hairline-w:     1px;
  --hairline-2w:    1.5px;
  --hairline-soft:  #E0DFD9;
  --border-soft:    #E0DFD9;
  --border-strong:  #1A1612;

  /* Ink */
  --ink-100:        #E8E4DE;
  --ink-200:        #C8C4BE;
  --ink-300:        #B0ACA6;
  --ink-400:        #8A8680;
  --ink-500:        #6A6660;
  --ink-600:        #4A4640;
  --ink-700:        #2A2620;
  --ink-900:        #1A1612;
  --oculis-ink:     #1A1612;
  --mark-mask:      #1A1612;

  /* Pigments */
  --pigment-red:    #C73E1D;
  --pigment-yellow: #D4A92C;
  --pigment-blue:   #2A4858;

  /* Brand */
  --brand:           #1A1612;
  --on-brand:        #FAFAF7;
  --brand-mark-gold: #D4A92C;
  --accent:          #D4A92C;
  --primary-soft:    #F2F1EC;

  /* Status */
  --warn:    var(--pigment-yellow);
  --danger:  var(--pigment-red);
  --success: var(--pigment-blue);

  /* Oculis Legacy */
  --oculis-green:        #1A3A2A;
  --oculis-green-deep:   #14302C;
  --oculis-green-mid:    #1F4838;
  --oculis-green-bright: #285846;
  --oculis-green-light:  #3A8A6E;
  --oculis-green-ghost:  rgba(26, 58, 42, 0.04);
  --oculis-gold-soft:    rgba(212, 169, 44, 0.15);

  /* Spacing */
  --space-1:  4px;
  --space-2:  8px;
  --space-3: 16px;
  --space-4: 24px;
  --space-5: 32px;
  --space-6: 48px;
  --space-7: 64px;
  --space-8: 96px;

  /* Radius */
  --r-sm:  0px;
  --r-md:  2px;
  --r-lg:  4px;

  /* Elevation */
  --elev-0: none;
  --elev-1: none;
  --elev-2: none;
  --elev-3: 0 24px 64px rgba(10, 10, 11, 0.18),
            0 2px 4px  rgba(10, 10, 11, 0.08);
  --shadow-sm: none;
  --shadow-md: none;

  /* Motion */
  --dur-1:    120ms;
  --dur-2:    200ms;
  --dur-3:    320ms;
  --dur-4:    480ms;
  --ease:     cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in:  cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);

  /* Typography */
  --font-body:    'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif;
  --font-display: 'Playfair Display', 'Bodoni Moda', 'Bodoni 72', Didot, Georgia, serif;
  --font-mono:    'JetBrains Mono', 'Menlo', 'Consolas', monospace;
  --font-sans:    var(--font-body);

  --w-regular: 400;
  --w-medium:  500;
  --w-bold:    700;
  --w-black:   900;

  --text-xs: 11px;
  --text-sm: 12.5px;
  --text-md: 14px;
  --text-lg: 17px;

  --track-tight:  -0.02em;
  --track-normal: 0;
  --track-wide:   0.12em;

  /* Maiki — 페이지 워시 */
  --paper-base:      #FAFAF7;
  --paper-dawn:      #FAF6EE;
  --paper-library:   #F4EFE3;
  --paper-twilight:  #EDF0F4;
  --paper-mist:      #EEF1EE;
  --paper-moonlight: #F0F2F4;
  --paper-haze:      #EFE9DD;  /* 따뜻한 안개 — 안심 영역 (VDR 불확실 / 직원홈 첫 진입 / 회계 잠금 등) [SUMI_MAIKI_63_INK_WARM] */

  /* Row temperature */
  --row-neutral:         #F7F7F4;
  --row-warm-soft:       #F7F4EE;
  --row-ochre:           #F7F0E3;
  --row-ochre-deep:      #F5E9D8;
  --row-vermillion-soft: #F5E2D5;
  --row-twilight:        #E8EEF2;
  --row-closed:          #F0F0EE;

  /* Tone (그룹 가족) */
  --tone-dawn:         #C9B985;
  --tone-dawn-faint:   #E5DFC8;
  --tone-dawn-stroke:  #B89E5C;
  --tone-dawn-deep:    #9F8854;

  --tone-twilight:         #8A9AA8;
  --tone-twilight-faint:   #C8D0D8;
  --tone-twilight-stroke:  #7888A0;
  --tone-twilight-deep:    #5F6F7E;

  --tone-library:         #B0B89A;
  --tone-library-faint:   #D8DCC8;
  --tone-library-stroke:  #98A084;
  --tone-library-deep:    #7E8A6E;

  /* Hover wash */
  --hover-dawn:      #E5D5A0;
  --hover-twilight:  #B8C2CE;
  --hover-library:   #CDC59C;

  /* Service color fallback */
  --service-color: var(--brand);
  --proj-color:    var(--brand);
  --tmpl-color:    var(--brand);
}
