/* Theme tokens. Brand colours stay fixed; semantic tokens flip with data-theme. */

:root {
  /* Brand: never change with theme */
  --o: #ff9233;
  --o-2: #fbb06e;
  --o-deep: #a94f08;
  --b: #468dff;
  --b-soft: #8db9ff;
  --ink: #0d1117;
  --paper: #f5f5f8;
  --d: "Space Grotesk", "Inter", sans-serif;
  --f: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, sans-serif;
  --grad: linear-gradient(90deg, #468dff 0%, #8db9ff 24%, #fbb06e 64%, #ff9233 100%);
  --r: 12px;
  --r-s: 8px;
  --r-pill: 100px;
  --e: cubic-bezier(.19, 1, .22, 1);
}

/* Default: dark (ink page) */
html,
html[data-theme="dark"] {
  color-scheme: dark;
  --bg: var(--ink);
  --bg-2: #161b22;
  --bg-3: #1c232c;
  --fg: #e9edf3;
  --mut: rgba(233, 237, 243, .72);
  --line: #30363d;
  --line-2: #242b33;
}

html[data-theme="light"] {
  color-scheme: light;
  --bg: var(--paper);
  --bg-2: #ffffff;
  --bg-3: #ffffff;
  --fg: #12161c;
  --mut: #3e4751;
  --line: #dfe1e7;
  --line-2: #ecedf1;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  background: var(--bg);
  color: var(--fg);
  font-family: var(--f);
  font-size: 16px;
  line-height: 1.45;
  caret-color: var(--o);
}

body {
  margin: 0;
  font-family: var(--f);
  color: var(--fg);
  background: transparent;
}

::selection {
  background: var(--o);
  color: var(--ink);
}

:focus-visible {
  outline: 2px solid var(--o);
  outline-offset: 3px;
}

/* Thin scrollbar */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--line) var(--bg);
}

*::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

*::-webkit-scrollbar-track {
  background: var(--bg);
}

*::-webkit-scrollbar-thumb {
  background: var(--line);
  border-radius: var(--r-s);
}

/* Minimal primary button until pages restyle */
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: var(--r-pill);
  padding: 16px 24px;
  font-family: var(--f);
  font-size: 16px;
  font-weight: 600;
  background: var(--o);
  color: var(--ink);
  text-decoration: none;
  cursor: pointer;
}
