/* ============================================================
   tokens.css · 토큰 단일 원천 (ADR-0002, 0003, 0012, 0013)
   Layer 1 Primitive(고정) + Layer 2 Semantic(시안×모드×컨텍스트 분기)
   시맨틱 블록은 루트 셀렉터와 스코프 클래스(.sc-*)를 병기한다.
   값 수정 시 00-foundations.html F3 대비 검증기 전 조합 PASS 확인 의무.
   ============================================================ */

/* ---------- Layer 1 · Primitives ---------- */
:root{
  /* EX Blue scale (CI PANTONE 285C = 500) */
  --blue-50:#E9F3FC; --blue-100:#CCE4F8; --blue-200:#99C9F0; --blue-300:#66ADE7;
  --blue-400:#3390DC; --blue-500:#0071CE; --blue-600:#005DAB; --blue-700:#004A88;
  --blue-800:#063766; --blue-900:#0A2647;
  --cyan-400:#00D9E8;
  /* EX Navy scale (CI PANTONE 2746C = 500) */
  --navy-300:#4A5AC4; --navy-500:#101E8E; --navy-700:#0C1666; --navy-900:#081040;
  /* Brand only · 시맨틱 사용 금지 */
  --brand-red:#ED1B2F; --brand-darkred:#802528;
  /* Warm accents · 시안 B 전용 */
  --yellow-300:#FFD866; --yellow-400:#FFC833; --yellow-500:#F5B70A; --yellow-desat:#D9AE3F;
  --coral-400:#F5854D; --coral-500:#F26C2A; --coral-600:#D95E1E; --coral-desat:#D97B4A;
  /* Cool gray neutrals */
  --gray-0:#FFFFFF; --gray-50:#F7F8FA; --gray-100:#EEF1F4; --gray-200:#DDE2E8;
  --gray-300:#C3CBD4; --gray-400:#97A2AD; --gray-500:#6E7987; --gray-600:#525E6B;
  --gray-700:#3D4753; --gray-800:#2A323C; --gray-900:#1B222A;
  /* Dark grounds */
  --dk-bg:#0F1620; --dk-surface:#161F2B; --dk-elev:#1E2937; --dk-line:#2A3644;
  /* Semantic scales (라이트 전경은 600 단계: 뱃지 4.5:1 확보) */
  --success-600:#0A6B2F; --success-500:#0E8A3E; --success-300:#4CC07A; --success-bg-l:#E7F5EC; --success-bg-d:#12301F;
  --danger-600:#B8250B; --danger-500:#DE3412; --danger-300:#FF7E6B; --danger-bg-l:#FCEAE6; --danger-bg-d:#3A1D18;
  --warning-600:#8F5B00; --warning-400:#FFB114; --warning-bg-l:#FBF0DB; --warning-bg-d:#33270F;
  /* 모션 */
  --dur-fast:120ms; --dur-base:200ms; --dur-slow:320ms;
  --ease-out:cubic-bezier(0.16,1,0.3,1);
  /* 스페이싱 (8px 기반) */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px;
  --sp-8:32px; --sp-10:40px; --sp-12:48px; --sp-16:64px; --sp-20:80px;
}

/* ---------- Layer 2 · Semantic ---------- */
/* 시안 A · Light (기본값) */
:root, .sc-AL{
  --primary:var(--blue-500); --primary-strong:var(--blue-600); --primary-weak:var(--blue-50);
  --primary-fg:#FFFFFF; --link:var(--blue-600);
  --secondary:var(--navy-500); --secondary-fg:#FFFFFF;
  --bg:var(--gray-50); --surface:var(--gray-0); --elev:var(--gray-0);
  --line:var(--gray-200); --line-strong:var(--gray-300);
  --text:var(--gray-900); --text-2:var(--gray-600); --text-3:var(--gray-500);
  --header-bg:var(--navy-500); --header-fg:#FFFFFF;
  --seg-bg:rgba(255,255,255,.12); --seg-active-bg:var(--surface); --seg-active-fg:var(--text);
  --focus:var(--blue-700);
  --success:var(--success-600); --success-bg:var(--success-bg-l);
  --danger:var(--danger-600); --danger-bg:var(--danger-bg-l);
  --warning:var(--warning-600); --warning-bg:var(--warning-bg-l);
  --accent-2:var(--blue-300);
  --route-line:var(--cyan-400);
  --radius-sm:2px; --radius-md:6px; --radius-lg:8px; --radius-btn:6px; --radius-pill:999px;
  --fs-display:40px; --fw-display:700;
  --dur-theme:160ms;
  --shadow-1:0 1px 2px rgba(10,38,71,.08); --shadow-2:0 4px 14px rgba(10,38,71,.10);
  --density:1;
  /* 그리드 축 (ADR-0014): A = 사선 시임(우상향), B = 곡선 밴드 */
  --band-cut:polygon(0 0, 100% 0, 100% calc(100% - 44px), 0 100%);
  --band-cut-m:polygon(0 0, 100% 0, 100% calc(100% - 26px), 0 100%);
  --band-radius:0px;
  color-scheme: light;
}
/* 시안 B · Light : 화이트 헤더(그림자 경계) · 스카이 그라운드 · pill · 옐로는 기능 표지 한정(ADR-0015) */
:root[data-theme="B"], .sc-BL{
  --accent-brand:var(--brand-red); /* B 한정 비상태 강조 표지(ADR-0003 갱신): 구조 키라인·탭 활성·웜 포인트만. 상태·금액·텍스트·버튼·전폭 라인 금지 */
  --bg:#EAF3FC; --primary-weak:#D9EAFA;
  --secondary:var(--yellow-400); --secondary-fg:#3A2C00;
  --accent-2:var(--coral-500);
  --header-bg:#FFFFFF; --header-fg:var(--navy-700);
  --seg-bg:rgba(12,22,102,.08); --seg-active-bg:var(--primary); --seg-active-fg:#FFFFFF;
  --line:#D9EAFA; --line-strong:#B9D6F0;
  --radius-sm:10px; --radius-md:14px; --radius-lg:20px; --radius-btn:999px;
  --fs-display:48px; --fw-display:800;
  --dur-theme:240ms;
  --shadow-1:0 2px 6px rgba(0,113,206,.08); --shadow-2:0 8px 22px rgba(0,113,206,.12);
  --band-cut:none; --band-cut-m:none; --band-radius:44px;
}
/* 시안 A · Dark */
:root[data-mode="dark"], .sc-AD{
  --primary:var(--blue-300); --primary-strong:var(--blue-200); --primary-weak:#12283D;
  --primary-fg:#06213A; --link:var(--blue-300);
  --secondary:var(--navy-300); --secondary-fg:#FFFFFF;
  --bg:var(--dk-bg); --surface:var(--dk-surface); --elev:var(--dk-elev);
  --line:var(--dk-line); --line-strong:#3B4A5C;
  --text:#E8EEF5; --text-2:#A9B6C3; --text-3:#7C8996;
  --header-bg:var(--navy-900); --header-fg:#E8EEF5;
  --seg-bg:rgba(255,255,255,.12); --seg-active-bg:var(--surface); --seg-active-fg:var(--text);
  --focus:var(--blue-200);
  --success:var(--success-300); --success-bg:var(--success-bg-d);
  --danger:var(--danger-300); --danger-bg:var(--danger-bg-d);
  --warning:var(--warning-400); --warning-bg:var(--warning-bg-d);
  --shadow-1:0 1px 2px rgba(0,0,0,.4); --shadow-2:0 6px 18px rgba(0,0,0,.5);
  color-scheme: dark;
}
/* 시안 B · Dark : 딥 블루 그라운드 · 웜 감채도 */
:root[data-theme="B"][data-mode="dark"], .sc-BD{
  --primary:var(--blue-300); --primary-strong:var(--blue-200); --primary-weak:#12283D;
  --primary-fg:#06213A; --link:var(--blue-300);
  --bg:#0E1B33; --surface:#16253F; --elev:#1E2F4D; --line:#2C3D5C; --line-strong:#3D5074;
  --text:#E8EEF5; --text-2:#A9B6C3; --text-3:#7C8996;
  --secondary:var(--yellow-desat); --secondary-fg:#231A00;
  --accent-2:var(--coral-desat);
  --header-bg:#16253F; --header-fg:#E8EEF5;
  --seg-bg:rgba(255,255,255,.10); --seg-active-bg:var(--primary); --seg-active-fg:#06213A;
  --focus:var(--blue-200);
  --success:var(--success-300); --success-bg:var(--success-bg-d);
  --danger:var(--danger-300); --danger-bg:var(--danger-bg-d);
  --warning:var(--warning-400); --warning-bg:var(--warning-bg-d);
  --radius-sm:10px; --radius-md:14px; --radius-lg:20px; --radius-btn:999px;
  --fs-display:48px; --fw-display:800;
  --dur-theme:240ms;
  --shadow-1:0 1px 2px rgba(0,0,0,.4); --shadow-2:0 6px 18px rgba(0,0,0,.5);
  --band-cut:none; --band-cut-m:none; --band-radius:44px;
  color-scheme: dark;
}
/* 법인 워크스페이스 오버레이 (Primitive 상속 · Semantic만 오버라이드) */
:root[data-corp="on"], .sc-corp{
  --header-bg:var(--navy-700); --header-fg:#FFFFFF;
  --seg-bg:rgba(255,255,255,.12); --seg-active-bg:#FFFFFF; --seg-active-fg:var(--navy-700);
  --radius-lg:var(--radius-md); --radius-btn:8px;
  --density:0.72;
  /* 법인: 시임·스태거 미적용(직선 고정, ADR-0014 규정 4) */
  --band-cut:none; --band-cut-m:none; --band-radius:0px;
}

/* 스코프 박스 공통: 자체 배경/전경으로 그린다 */
.sc-AL,.sc-AD,.sc-BL,.sc-BD{background:var(--bg);color:var(--text)}
