:root {
  color-scheme: light;
  --canvas: #f5f7fb;
  --surface: #ffffff;
  --surface-2: #f8f9fc;
  --surface-3: #eef1f7;
  --text: #182033;
  --text-2: #59647a;
  --text-3: #8992a4;
  --line: #e8ebf2;
  --line-strong: #dce1eb;
  --primary: #3867ed;
  --primary-strong: #2453d9;
  --primary-soft: #edf2ff;
  --violet: #755fe8;
  --teal: #2cbaa8;
  --green: #1b9a72;
  --green-soft: #e8f8f1;
  --amber: #bb7a14;
  --amber-soft: #fff5df;
  --red: #d45563;
  --red-soft: #fff0f1;
  --shadow-sm: 0 2px 8px rgba(28, 44, 77, .045);
  --shadow-card: 0 8px 28px rgba(31, 49, 89, .055);
  --shadow-pop: 0 18px 52px rgba(24, 36, 67, .18);
  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius-md: 17px;
  --radius-lg: 23px;
  --sidebar-width: 254px;
  --topbar-height: 76px;
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --canvas: #11151f;
  --surface: #191f2b;
  --surface-2: #1d2432;
  --surface-3: #252d3d;
  --text: #edf1fa;
  --text-2: #b1bbce;
  --text-3: #808da4;
  --line: #2a3344;
  --line-strong: #39445a;
  --primary: #7392ff;
  --primary-strong: #8ca5ff;
  --primary-soft: #252f4b;
  --violet: #a293ff;
  --teal: #59d1c0;
  --green: #59c89d;
  --green-soft: #1b342e;
  --amber: #e9b95c;
  --amber-soft: #3b3120;
  --red: #ff8994;
  --red-soft: #3b242a;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);
  --shadow-card: 0 8px 28px rgba(0, 0, 0, .18);
  --shadow-pop: 0 18px 52px rgba(0, 0, 0, .42);
}
* { box-sizing: border-box; }
html { min-width: 320px; min-height: 100%; background: var(--canvas); }
body { margin: 0; min-width: 320px; min-height: 100vh; color: var(--text); background: var(--canvas); font-family: var(--font); font-size: 14px; line-height: 1.5; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
::selection { background: rgba(56, 103, 237, .17); }
:focus-visible { outline: 3px solid rgba(56, 103, 237, .42); outline-offset: 2px; }
