/* ======================================================================================================= */
/* Foundation                                                                                              */
/* ======================================================================================================= */
:root {
  color-scheme: light;
  --paper: #f5f7fa;
  --surface: #ffffff;
  --surface-soft: #eef1f5;
  --ink: #17202a;
  --muted: #5e6a76;
  --dim: #84909c;
  --line: #dce2e8;
  --line-strong: #c8d1da;
  --blue: #2563eb;
  --blue-soft: #eaf1ff;
  --green: #15803d;
  --green-soft: #e9f8ee;
  --amber: #b45309;
  --amber-soft: #fff5e5;
  --red: #c2414b;
  --red-soft: #fff0f1;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --radius: 8px;
  --shadow: 0 6px 18px rgba(25, 42, 58, 0.07);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --paper: #11161b;
  --surface: #182028;
  --surface-soft: #222c35;
  --ink: #edf2f7;
  --muted: #aab5bf;
  --dim: #7f8b96;
  --line: #2d3944;
  --line-strong: #42515e;
  --blue: #79a7ff;
  --blue-soft: #1a2c4d;
  --green: #6fd391;
  --green-soft: #173a26;
  --amber: #ffc06d;
  --amber-soft: #443017;
  --red: #ff8a93;
  --red-soft: #451e24;
  --shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 14px; line-height: 1.5; }
a { color: inherit; text-decoration: none; }
button, input, select { color: inherit; font: inherit; }
button { cursor: pointer; }
::selection { background: var(--blue); color: #fff; }
.container { width: min(1120px, calc(100% - 40px)); margin-inline: auto; }
