:root {
  --bg-accent: #eef3fa;
  --panel: #ffffff;
  --panel-soft: #f6f8fc;
  --panel-muted: #edf2f8;
  --panel-subtle: #f8fafc;
  --line: rgba(113, 132, 163, 0.28);
  --line-soft: rgba(113, 132, 163, 0.16);
  --text: #0b1730;
  --muted: #5f6f85;
  --muted-strong: #2f4058;
  --primary: #2563eb;
  --primary-hover: #1d4ed8;
  --primary-strong: #0f3f98;
  --danger: #d92d57;
  --success: #0f766e;
  --warning: #b45309;
  --overlay-strong: rgba(15, 23, 42, 0.56);
  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05);
  --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 14px 38px rgba(15, 23, 42, 0.10);
  --radius-sm: 8px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 18px;
  --ease-out-strong: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-out-soft: cubic-bezier(0.24, 0.8, 0.32, 1);
  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 180ms;
  --dur-medium: 240ms;
  --dur-panel: 280ms;
  --actions-gap: clamp(5px, calc((100vw - 520px) * 1), 10px);
}

:root[data-theme='dark'] {
  --bg-accent: #0b1020;
  --panel: #111827;
  --panel-soft: #0f172a;
  --panel-muted: #0b1324;
  --panel-subtle: #151e2e;
  --line: rgba(148, 163, 184, 0.20);
  --line-soft: rgba(148, 163, 184, 0.12);
  --text: #e5edf8;
  --muted: #9aa8bb;
  --muted-strong: #c7d2e2;
  --primary: #8bb8ff;
  --primary-hover: #a9ccff;
  --primary-strong: #dceaff;
  --danger: #fb7185;
  --success: #5eead4;
  --warning: #fbbf24;
  --overlay-strong: rgba(2, 6, 23, 0.74);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.26);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.30);
  --shadow-lg: 0 14px 38px rgba(0, 0, 0, 0.34);
}
