// ─────────────────────────────────────────────────────────────
// D6 디자인 토큰 — 컬러 (다크 기본 + 라이트)
// 테마 스위칭: html 클래스 `.dark`/`.light` + `data-theme` 속성 — app/layout.tsx 의 FOUC 방지 인라인 스크립트가 첫 페인트 전 세팅
// 원칙 (d6-design-system.md §3):
//  - 기존 시맨틱 변수명(--bg-page, --text-primary 등)은 전부 보존 — 값만 그레이 램프 기반으로 재정의 (기존 ~50개 style.scss 무수정 호환)
//  - 포인트 컬러는 --az-accent 1개 (개미 오렌지). 기존 --color-accent / --btn-primary 는 alias 로 수렴
//    ※ 설계 문서의 `--accent` 이름은 shadcn HSL triplet(--accent)과 충돌하여 --az-accent 로 명명
//  - 상승 빨강(--price-up) / 하락 파랑(--price-down) — 국내 관례, WCAG AA 대비 검증값
//  - 헤더 토큰(--bg-head/--text-head/--bg-icon/--head-*)은 라이트 테마에서도 다크 고정 (amazon 방식)
// ─────────────────────────────────────────────────────────────

// ── 다크 (기본) ──
:root {
	color-scheme: dark;

	// 그레이 램프 15단 (배경 → 전경)
	--gray-0: #0b0c0f;
	--gray-1: #111318;
	--gray-2: #16181d;
	--gray-3: #1c1f26;
	--gray-4: #22262e;
	--gray-5: #2a2f38;
	--gray-6: #353b46;
	--gray-7: #454c59;
	--gray-8: #5a6270;
	--gray-9: #717a88;
	--gray-10: #8b93a1;
	--gray-11: #a6adb9;
	--gray-12: #c2c8d1;
	--gray-13: #dde1e7;
	--gray-14: #f2f4f7;

	// 기능 컬러 — 등락 (색+부호 병행 원칙, 등락 표시에 --az-accent 사용 금지)
	--price-up: #f2555f;
	--price-down: #4a8df2;
	--price-flat: var(--gray-10);

	// 포인트 컬러 (유일) — 액션 버튼·활성 탭·포커스 링 전용
	--az-accent: #f7931a;
	--az-accent-hover: #f59e0b;

	// 시맨틱 — 램프 참조 (테마 전환 시 램프 재정의로 자동 반영, 기존 변수명 보존)
	--bg-page: var(--gray-0);
	--bg-elevated: var(--gray-2);
	--bg-subtle: var(--gray-3);
	--bg-input: var(--gray-2);
	--bg-card: var(--gray-2); // 기존 미정의 참조 보정
	--bg-default: var(--gray-0); // 기존 미정의 참조 보정
	--border-light: var(--gray-3);
	--border-subtle: var(--gray-3); // 기존 미정의 참조 보정
	--border-default: var(--gray-4);
	--border-strong: var(--gray-6);
	--text-muted: var(--gray-9);
	--text-secondary: var(--gray-11);
	--text-primary: var(--gray-13);
	--text-normal: var(--gray-14);
	--fg-default: var(--gray-14);
	--btn-default-border: var(--gray-6);
	--btn-default-hover: var(--gray-4);

	// 헤더 — 양 테마 다크 고정 (라이트 블록에서 재정의하지 않음)
	--bg-head: #111318;
	--text-head: #c2c8d1;
	--bg-icon: #22262e;
	--outline-default: #454c59;
	--head-input-bg: #1c1f26;
	--head-input-text: #dde1e7;
	--head-input-placeholder: #717a88;
	--head-input-border: #353b46;

	// 포인트 alias (기존 변수명 보존)
	--color-accent: var(--az-accent);
	--color-accent-hover: var(--az-accent-hover);
	--btn-primary: var(--az-accent);
	--btn-primary-hover: var(--az-accent-hover);
	--btn-primary-shadow: #b96504;
	--btn-primary-text: #201503; // 오렌지 위 잉크 텍스트 — 흰색은 AA 미달

	// 테마별 리터럴
	--text-link: #60a5fa;
	--text-link-hover: #3b82f6;
	--shadow-color: rgba(0, 0, 0, 0.45);
	--color-danger: #ef4444;
	--color-success: #22c55e;
	--color-warning-bg: #422006;
	--color-warning-text: #fef08a;
	--overlay-color: rgba(0, 0, 0, 0.7);
	--sidebar-active-bg: #3d2800;
	--list-row-active: #2a2a00;
	--color-blue: #60a5fa;
	--color-blue-hover: #3b82f6;
	--color-blue-bg: rgba(96, 165, 250, 0.1);
	--color-purple: #a78bfa;
	--color-purple-hover: #8b5cf6;
	--color-purple-bg: rgba(167, 139, 250, 0.15);
	--color-danger-bg: #3f1212;
	--color-danger-border: #7f1d1d;
	--color-success-bg: #0f2d1a;
	--color-success-text: #4ade80;
	--bg-subtle-hover: rgba(255, 255, 255, 0.05);
	// FAQ Q/A 라벨 — dark 배경 시인성용 밝기 ↑
	--faq-q-color: #3fbd54;
	--faq-a-color: #ff6b4a;

	// shadcn HSL triplet — 그레이 램프 파생값 (시각적 단일화, 통합은 장기 과제)
	--background: 225 15% 5%;
	--foreground: 218 17% 89%;
	--card: 220 12% 10%;
	--card-foreground: 218 17% 89%;
	--popover: 220 12% 10%;
	--popover-foreground: 218 17% 89%;
	--primary: 218 17% 89%;
	--primary-foreground: 222 13% 13%;
	--secondary: 221 14% 16%;
	--secondary-foreground: 218 17% 89%;
	--muted: 221 14% 16%;
	--muted-foreground: 216 10% 59%;
	--accent: 221 14% 16%;
	--accent-foreground: 218 17% 89%;
	--destructive: 0 63% 31%;
	--destructive-foreground: 0 0% 98%;
	--border: 221 14% 16%;
	--input: 221 14% 16%;
	--ring: 33 93% 54%; // 포인트 컬러 1개 원칙 — 포커스 링도 개미 오렌지
	--chart-1: 220 70% 50%;
	--chart-2: 160 60% 45%;
	--chart-3: 30 80% 55%;
	--chart-4: 280 65% 60%;
	--chart-5: 340 75% 55%;
	--crypto-up: 356 86% 64%; // = --price-up (레거시 alias, 신규 코드는 --price-* 사용)
	--crypto-down: 216 87% 62%; // = --price-down
	--crypto-neutral: 216 10% 59%;
	--sidebar-background: 240 5.9% 10%;
	--sidebar-foreground: 240 4.8% 95.9%;
	--sidebar-primary: 224.3 76.3% 48%;
	--sidebar-primary-foreground: 0 0% 100%;
	--sidebar-accent: 240 3.7% 15.9%;
	--sidebar-accent-foreground: 240 4.8% 95.9%;
	--sidebar-border: 240 3.7% 15.9%;
	--sidebar-ring: 217.2 91.2% 59.8%;
}

// ── 라이트 ──
// 램프를 역할 등가로 뒤집어 재정의 → 시맨틱 매핑(--bg-page: var(--gray-0) 등)은 공통 유지
// 헤더 토큰(--bg-head 등)은 여기서 재정의하지 않음 = 다크 고정
html.light,
[data-theme='light'] {
	color-scheme: light;

	--gray-0: #ffffff;
	--gray-1: #f8f9fb;
	--gray-2: #f2f4f7;
	--gray-3: #e9ecf1;
	--gray-4: #dde1e7;
	--gray-5: #cfd4dc;
	--gray-6: #b6bcc7;
	--gray-7: #99a1ae;
	--gray-8: #7e8695;
	--gray-9: #667080;
	--gray-10: #545d6b;
	--gray-11: #424a57;
	--gray-12: #313843;
	--gray-13: #21262e;
	--gray-14: #14171c;

	--price-up: #d02330;
	--price-down: #1861d8;
	--price-flat: var(--gray-9);

	--az-accent: #d97800;
	--az-accent-hover: #b96504;
	--btn-primary-shadow: #a35a00;

	--text-link: #0060a9;
	--text-link-hover: #c7511f;
	--shadow-color: rgba(0, 0, 0, 0.12);
	--color-danger: #d51b28;
	--color-success: #4caf50;
	--color-warning-bg: #fefce8;
	--color-warning-text: #92400e;
	--overlay-color: rgba(0, 0, 0, 0.5);
	--sidebar-active-bg: #fff3e0;
	--list-row-active: #faffd1;
	--color-blue: #3b82f6;
	--color-blue-hover: #2563eb;
	--color-blue-bg: rgba(59, 130, 246, 0.06);
	--color-purple: #8b5cf6;
	--color-purple-hover: #7c3aed;
	--color-purple-bg: rgba(139, 92, 246, 0.06);
	--color-danger-bg: #fee2e2;
	--color-danger-border: #fca5a5;
	--color-success-bg: #dcfce7;
	--color-success-text: #16a34a;
	--bg-subtle-hover: rgba(0, 0, 0, 0.05);
	--faq-q-color: #0b671b;
	--faq-a-color: #ff4727;

	--background: 0 0% 100%;
	--foreground: 222 13% 15%;
	--card: 0 0% 100%;
	--card-foreground: 222 13% 15%;
	--popover: 0 0% 100%;
	--popover-foreground: 222 13% 15%;
	--primary: 222 13% 15%;
	--primary-foreground: 216 24% 96%;
	--secondary: 216 22% 93%;
	--secondary-foreground: 222 13% 15%;
	--muted: 216 22% 93%;
	--muted-foreground: 216 11% 45%;
	--accent: 216 22% 93%;
	--accent-foreground: 222 13% 15%;
	--destructive: 0 84.2% 60.2%;
	--destructive-foreground: 0 0% 98%;
	--border: 213 17% 89%;
	--input: 213 17% 89%;
	--ring: 33 100% 43%;
	--chart-1: 12 76% 61%;
	--chart-2: 173 58% 39%;
	--chart-3: 197 37% 24%;
	--chart-4: 43 74% 66%;
	--chart-5: 27 87% 67%;
	--crypto-up: 356 71% 48%;
	--crypto-down: 217 80% 47%;
	--crypto-neutral: 216 11% 45%;
	--sidebar-background: 0 0% 98%;
	--sidebar-foreground: 240 5.3% 26.1%;
	--sidebar-primary: 240 5.9% 10%;
	--sidebar-primary-foreground: 0 0% 98%;
	--sidebar-accent: 240 4.8% 95.9%;
	--sidebar-accent-foreground: 240 5.9% 10%;
	--sidebar-border: 220 13% 91%;
	--sidebar-ring: 217.2 91.2% 59.8%;
}