/* v2 토큰 — 시안 CLAUDE.md 「공통 토큰」 표 + 캔버스 실측 대응.
 *
 * 값은 눈대중이 아니다. 라이트 아트보드와 다크 쌍(Xd)의 hex 를 문서 순서대로
 * 짝지어 뽑은 결과다(design/transplant.py 의 COLORS 와 같은 표).
 *
 * I5 — data-theme 과 prefers-color-scheme 양쪽. 경로 셋:
 *   ① :root                                     라이트 기본
 *   ② @media(dark) :root:not([data-theme=light]) 시스템 다크
 *   ③ :root[data-theme=dark]                     사용자가 고른 다크
 * 색은 반드시 ① 에 먼저 정의한다 — ②③ 에만 있는 색은 라이트에서 비어버린다.
 *
 * 랜딩(P1/M1)은 이 파일을 쓰지 않는다. landing-origin.html 이 자기 팔레트를
 * 들고 있고 I6 가 그것을 정본으로 못 박았다.
 */

:root {
  /* 글꼴 — 시안 토큰표: Pretendard Variable → IBM Plex Sans KR → system-ui */
  --font: "Pretendard Variable", Pretendard, "IBM Plex Sans KR", system-ui,
          -apple-system, "Apple SD Gothic Neo", sans-serif;

  /* 바탕 —— 프레임 배경 두 가지가 다크에서 한 값으로 모인다.
     목록·홈형(B-1)은 #F2F4F7, 태스크형(가입·설정 등)은 #FFFFFF 였다. */
  --page:       #F2F4F7;   /* 목록·홈형 화면 바탕 */
  --page-flat:  #FFFFFF;   /* 태스크형 화면 바탕 */
  --surface:    #FFFFFF;   /* 카드 */
  --surface-2:  #F2F4F7;   /* 카드 안 블록·입력칸 바탕 */
  --line:       #E4E8EE;   /* 구분선 */
  --line-con:   #E9ECF0;   /* 콘솔 테두리 */

  /* 글자 */
  --text:        #191F28;
  --text-sub:    #4E5968;
  --text-body:   #333D4B;
  --text-dim:    #8B95A1;
  --placeholder: #B0B8C1;
  --off:         #C4CAD2;  /* 미선택 외곽선·토글 */

  /* 의미색 — 링크·버튼은 accent 하나뿐 */
  --accent:      #3182F6;
  --accent-text: #0A6DD1;  /* 파랑 틴트 위 글자 */
  --tint-accent: #EAF2FE;
  --up:          #00A661;
  --up-text:     #00804D;  /* 초록 틴트 위 글자 */
  --tint-up:     #E7F5EB;
  --down:        #F04452;
  --tint-down:   #FCE8E9;

  /* 진입 아이콘 타일 — 묶음별 한 색(초록·빨강은 의미색이라 아이콘 금지) */
  --ic-blue:     #3182F6;  --tint-blue:   #E8F2FE;
  --ic-violet:   #7C5CE0;  --tint-violet: #EFEBFD;
  --ic-amber:    #C4870F;  --tint-amber:  #FDF2E3;

  /* 순위 5단색 — 커버리지·기록 격자. 랜딩의 --s1~--s5 와 같은 값 */
  --s1: #12A02C;
  --s2: #F0A336;
  --s3: #E8C547;
  --s4: #E5484D;
  --s5: #9AA5B4;

  /* 라운드 — 시안 토큰표의 다섯 종만 쓴다(검사: 종류 ≤5) */
  --r-lg: 16px;   /* 카드(모바일 B-1) */
  --r-md: 14px;   /* 공개 셸 카드 */
  --r-sm: 12px;   /* 콘솔 카드 */
  --r-xs: 8px;    /* 아이콘 타일·배지 */
  --r-full: 999px;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --page:       #0B111A;
    --page-flat:  #0B111A;
    --surface:    #141C27;
    --surface-2:  #1B2533;
    --line:       #263141;
    --line-con:   #263141;

    --text:        #E9EFF7;
    --text-sub:    #B3C0D1;
    --text-body:   #D3DCE8;
    --text-dim:    #8B9AAD;
    --placeholder: #55627A;
    --off:         #55627A;

    --accent:      #4DA6FF;
    --accent-text: #4DA6FF;
    --tint-accent: rgba(77, 166, 255, .16);
    --up:          #3FD166;
    --up-text:     #3FD166;
    --tint-up:     rgba(63, 209, 102, .16);
    --down:        #FF7A82;
    --tint-down:   rgba(255, 122, 130, .15);

    --ic-blue:     #4DA6FF;  --tint-blue:   rgba(77, 166, 255, .16);
    --ic-violet:   #9B84F7;  --tint-violet: rgba(155, 132, 247, .16);
    --ic-amber:    #F0B441;  --tint-amber:  rgba(240, 180, 65, .16);

    --s1: #2ED573;
    --s2: #F0A336;
    --s3: #E8C547;
    --s4: #E2554F;
    --s5: #4A504B;
  }
}

:root[data-theme="dark"] {
  --page:       #0B111A;
  --page-flat:  #0B111A;
  --surface:    #141C27;
  --surface-2:  #1B2533;
  --line:       #263141;
  --line-con:   #263141;

  --text:        #E9EFF7;
  --text-sub:    #B3C0D1;
  --text-body:   #D3DCE8;
  --text-dim:    #8B9AAD;
  --placeholder: #55627A;
  --off:         #55627A;

  --accent:      #4DA6FF;
  --accent-text: #4DA6FF;
  --tint-accent: rgba(77, 166, 255, .16);
  --up:          #3FD166;
  --up-text:     #3FD166;
  --tint-up:     rgba(63, 209, 102, .16);
  --down:        #FF7A82;
  --tint-down:   rgba(255, 122, 130, .15);

  --ic-blue:     #4DA6FF;  --tint-blue:   rgba(77, 166, 255, .16);
  --ic-violet:   #9B84F7;  --tint-violet: rgba(155, 132, 247, .16);
  --ic-amber:    #F0B441;  --tint-amber:  rgba(240, 180, 65, .16);

  --s1: #2ED573;
  --s2: #F0A336;
  --s3: #E8C547;
  --s4: #E2554F;
  --s5: #4A504B;
}

:root { color-scheme: light dark; }
:root[data-theme="light"] { color-scheme: light; }
:root[data-theme="dark"]  { color-scheme: dark; }
