/**
 * Reading Base LMS — Design tokens (§2.1 확정본)
 * 임의 hex / Tailwind 기본색 사용 금지. 이 변수만 참조.
 */
:root {
	/* base */
	--bg: #F2F5F0;
	--surface: #FFFFFF;
	--surface-alt: #F7FAF6;
	--ink: #182420;
	--ink-soft: #48544D;
	--muted: #8A968D;
	--border: #E2E7DF;
	--border-soft: #EBEFE8;

	/* sidebar (light) */
	--sidebar: #FFFFFF;
	--sidebar-line: #E7EBE3;
	--sidebar-text: #4B5750;
	--sidebar-text-dim: #93A098;
	--sidebar-active: #EAF4EC;

	/* brand accent (forest teal) */
	--accent: #2F7A5E;
	--accent-deep: #1F5943;
	--accent-soft: #DDEFE4;
	--accent-soft2: #EAF4EC;

	/* semantic / status */
	--warm: #DD6B39;
	--warm-soft: #FBE8DA;
	--violet: #8A7BC4;
	--violet-soft: #EAE6F7;
	--amber: #DFA53A;
	--amber-soft: #FBEED9;
	--red: #CE5A4C;
	--red-soft: #F8E3DF;
	--blue: #3E76A8;
	--blue-soft: #E1EBF3;

	/* calendar subject colors (Listening / Pattern / Reading) — 구분도 높게 */
	--sub-ls: #2B6CB0;
	--sub-ls-soft: #D6E8F8;
	--sub-pattern: #C05621;
	--sub-pattern-soft: #FDE8D8;
	--sub-reading: #1F7A4D;
	--sub-reading-soft: #D4F0E0;
	--sub-voca: #0F766E;
	--sub-voca-soft: #CCFBF1;

	/* typography */
	--font-display: 'Noto Serif KR', Georgia, serif;
	--font-body: 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
	--font-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, monospace;

	/* radius / shadow / space */
	--radius-sm: 7px;
	--radius-md: 10px;
	--radius-lg: 14px;
	--radius-xl: 18px;
	--radius-full: 999px;
	--shadow-card: 0 6px 14px rgba(47, 122, 94, 0.10);
	--shadow-modal: 0 10px 30px rgba(20, 36, 32, 0.12);
	--space-page-x: 36px;
	--space-panel: 22px 26px;

	/* layout */
	--sidebar-w: 264px;
	--topbar-h: 76px;
	--app-max: 1680px;

	/* avatar gradients (§2.2) */
	--av-1: linear-gradient(155deg, #4CA284, #1F5943);
	--av-2: linear-gradient(155deg, #7A93C7, #3E5A94);
	--av-3: linear-gradient(155deg, #D69A62, #B06A2E);
	--av-4: linear-gradient(155deg, #C77BA8, #94467A);
	--av-5: linear-gradient(155deg, #8A7BC4, #5C4A9E);

	/* legacy aliases (기존 클래스 호환) */
	--lms-green: var(--accent);
	--lms-green-dark: var(--accent-deep);
	--lms-green-light: var(--accent-soft);
	--lms-bg: var(--bg);
	--lms-card: var(--surface);
	--lms-text: var(--ink);
	--lms-muted: var(--muted);
	--lms-line: var(--border);
	--lms-orange: var(--warm);
	--lms-red: var(--red);
	--lms-sidebar-w: var(--sidebar-w);
	--lms-radius: var(--radius-lg);
	--lms-font: var(--font-body);
	--lms-display: var(--font-display);
	--lms-fs: 14px;
	--lms-lh: 1.55;
}
