:root {
  --background: oklch(0.94 0.001 106.424);
  --foreground: oklch(26.8% 0.007 34.298);
  --muted: oklch(55.3% 0.013 58.071);
  --surface: oklch(98.5% 0.001 106.423);
  --accent: oklch(0.457 0.069 70);
  --success: oklch(0.52 0.07 145);
  --danger: oklch(0.55 0.19 27);
  --border: oklch(92.3% 0.003 48.717);
  --surface-shadow:
    0 1px 3px 0 oklch(0.55 0.01 70 / 0.08),
    0 1px 2px -1px oklch(0.55 0.01 70 / 0.08);
  --font-display: "Bricolage Grotesque", sans-serif;
  --font-sans: "Inter", sans-serif;
  --font-mono: "Space Grotesk", monospace;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--foreground);
  font-family: var(--font-sans);
  letter-spacing: -0.03em; /* tracking-tight em todo uso de Inter */
  background:
    radial-gradient(
      circle at 15% 10%,
      oklch(0.98 0.016 80 / 0.8),
      transparent 22rem
    ),
    linear-gradient(180deg, white, var(--background) 40%, white 100%);
}

.display-font,
.mono-font {
  letter-spacing: normal;
}

.display-font {
  font-family: var(--font-display);
}
.mono-font {
  font-family: var(--font-mono);
}

.card {
  background: color-mix(in srgb, var(--surface) 90%, white 10%);
  border: 1px solid var(--border);
  box-shadow: var(--surface-shadow);
}

.tag {
  background: color-mix(in srgb, var(--surface) 78%, white 22%);
  border: 1px solid color-mix(in srgb, var(--accent) 22%, var(--border) 78%);
}

.accent-fill {
  background: var(--accent);
  color: var(--surface);
}

details summary {
  list-style: none;
}
details summary::-webkit-details-marker {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
