/* The Parallax 디자인 토큰 — 피그마 "Hi-Fi · 01 디자인 시스템" 색 변수와 같은 값.
   이름 규칙: 피그마 변수 "text/primary" → CSS "--text-primary" */

:root {
  /* 브랜드 */
  --brand-navy: #1f2a36;
  --brand-navy-soft: #3a4656;
  --brand-gold: #c9a227;
  --brand-gold-soft: #fbf6e6;

  /* 글자 */
  --text-primary: #1e1e1e;
  --text-secondary: #6b6b6b;
  --text-tertiary: #9e9e9e;
  --text-on-dark: #ffffff;
  --text-link: #1f2a36;
  --text-accent: #1f2a36;

  /* 배경 (페이지 전체는 흰색 하나, 회색 면은 작은 요소에만) */
  --bg-page: #ffffff;
  --bg-paper: #f4f3ef;
  --bg-sunken: #ececec;
  --bg-avatar: #1e1e1e;

  /* 선 */
  --border-default: #d9d9d9;
  --border-strong: #1e1e1e;
  --border-accent: #1f2a36;

  /* 상태 */
  --state-success: #2e7d32;
  --state-warning: #b26a00;
  --state-danger: #b3261e;
  --state-info: #2f6fdb;
  --state-success-soft: #e8f3ea;
  --state-warning-soft: #fff3e0;
  --state-danger-soft: #fbeaea;
  --state-info-soft: #e7f0ff;

  /* 띠 */
  --belt-white: #ffffff;
  --belt-yellow: #e8c547;
  --belt-green: #4f9a5b;
  --belt-blue: #3b6fb6;
  --belt-red: #b8423a;
  --belt-black: #1e1e1e;

  /* 팩트체크 */
  --fact-true: #2e7d32;
  --fact-mostly: #5a7d2e;
  --fact-disputed: #b26a00;
  --fact-false: #b3261e;
  --fact-pending: #6b6b6b;

  /* 글꼴: 명조는 로고·사설·칼럼 제목·큰 인용구·404 숫자에만 */
  --font-sans: "Noto Sans KR", "Noto Sans JP", "Noto Sans SC", system-ui, sans-serif;
  --font-serif: "Noto Serif KR", "Noto Serif JP", "Noto Serif SC", Georgia, serif;

  /* 글자 크기 (PC) */
  --fs-display: 48px;
  --fs-h1: 36px;
  --fs-h2: 28px;
  --fs-h3: 22px;
  --fs-h4: 18px;
  --fs-body: 17px;
  --fs-body-s: 15px;
  --fs-ui: 14px;
  --fs-caption: 13px;
  --fs-label: 11px;
  --fs-quote: 30px;
  --fs-opinion: 22px;

  /* 폭 */
  --w-container: 1200px;
  --w-main: 744px;
  --w-body: 600px;
  --w-rail: 400px;
  --gutter: 16px;

  --radius: 2px;
}

/* 모바일 글자 크기 */
@media (max-width: 767px) {
  :root {
    --fs-display: 32px;
    --fs-h1: 26px;
    --fs-h2: 21px;
    --fs-h3: 17px;
    --fs-h4: 17px;
    --fs-body: 16px;
    --fs-caption: 12px;
    --fs-quote: 22px;
    --fs-opinion: 18px;
  }
}

/* 다크 모드: 시스템 설정을 따르되, 사용자가 고르면 data-theme가 우선 */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --brand-navy: #2b3f5c;
    --brand-navy-soft: #2a3644;
    --brand-gold: #d4b04a;
    --brand-gold-soft: #2a2516;
    --text-primary: #ececec;
    --text-secondary: #a0a6ad;
    --text-tertiary: #6e757c;
    --text-link: #9fb6cf;
    --text-accent: #9fb6cf;
    --bg-page: #121417;
    --bg-paper: #1b1f24;
    --bg-sunken: #0d0f12;
    --bg-avatar: #3a4048;
    --border-default: #2c3238;
    --border-strong: #ececec;
    --border-accent: #c7d2df;
    --state-success: #5fb765;
    --state-warning: #e0a043;
    --state-danger: #e57368;
    --state-info: #7aa6f0;
    --state-success-soft: #16261a;
    --state-warning-soft: #2b2112;
    --state-danger-soft: #2e1716;
    --state-info-soft: #1a2533;
    --belt-white: #e6e6e6;
    --belt-green: #5fae6b;
    --belt-blue: #5585cc;
    --belt-red: #cc5a52;
    --belt-black: #3a3a3a;
    --fact-true: #5fb765;
    --fact-mostly: #8db15e;
    --fact-disputed: #e0a043;
    --fact-false: #e57368;
    --fact-pending: #a0a6ad;
  }
}
:root[data-theme="dark"] {
  --brand-navy: #2b3f5c;
  --brand-navy-soft: #2a3644;
  --brand-gold: #d4b04a;
  --brand-gold-soft: #2a2516;
  --text-primary: #ececec;
  --text-secondary: #a0a6ad;
  --text-tertiary: #6e757c;
  --text-link: #9fb6cf;
  --text-accent: #9fb6cf;
  --bg-page: #121417;
  --bg-paper: #1b1f24;
  --bg-sunken: #0d0f12;
  --bg-avatar: #3a4048;
  --border-default: #2c3238;
  --border-strong: #ececec;
  --border-accent: #c7d2df;
  --state-success: #5fb765;
  --state-warning: #e0a043;
  --state-danger: #e57368;
  --state-info: #7aa6f0;
  --state-success-soft: #16261a;
  --state-warning-soft: #2b2112;
  --state-danger-soft: #2e1716;
  --state-info-soft: #1a2533;
  --belt-white: #e6e6e6;
  --belt-green: #5fae6b;
  --belt-blue: #5585cc;
  --belt-red: #cc5a52;
  --belt-black: #3a3a3a;
  --fact-true: #5fb765;
  --fact-mostly: #8db15e;
  --fact-disputed: #e0a043;
  --fact-false: #e57368;
  --fact-pending: #a0a6ad;
}
