:root {
  /* 라이트 테마 */
  --bg: #f7f9fc;
  --surface: #ffffff;
  --surface-alt: #f0f4f9;
  --text: #1a2233;
  --text-muted: #5b6577;
  --border: #d8dee8;
  --primary: #2b6cb0;
  --primary-hover: #1f5689;
  --primary-text: #ffffff;
  --accent: #2c7a7b;
  --success: #2f855a;
  --warn: #c05621;
  --danger: #c53030;
  --focus: #4299e1;
  --shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);
  --radius: 8px;
  --radius-sm: 4px;
  --gap: 12px;
  --font-base: 15px;
  --font-sm: 13px;
  --line: 1.55;
  --max-pane-w: 1600px;
  font-family: 'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont,
               'Segoe UI', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
  font-size: var(--font-base);
  line-height: var(--line);
}

[data-theme="dark"] {
  --bg: #0f141b;
  --surface: #181f2a;
  --surface-alt: #1f2936;
  --text: #e7ecf2;
  --text-muted: #a0acba;
  --border: #2a3445;
  --primary: #5ba1e6;
  --primary-hover: #4690d8;
  --primary-text: #0f141b;
  --accent: #4dc3c5;
  --success: #66c997;
  --warn: #e89464;
  --danger: #f08080;
  --focus: #6cb3ff;
  --shadow: 0 1px 3px rgba(0,0,0,.4);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
  }
}

body {
  background: var(--bg);
  color: var(--text);
}
