:root {
  color-scheme: light;
  --ink: #1c1917;
  --muted: #57534e;
  --line: #e7e5e4;
  --paper: #fafaf9;
  --surface: #ffffff;
  --accent: #0f766e;
  font-family: 'Segoe UI', system-ui, sans-serif;
  color: var(--ink);
  background: var(--paper);
}

:root[data-theme='dark'] {
  color-scheme: dark;
  --ink: #f5f5f4;
  --muted: #a8a29e;
  --line: #44403c;
  --paper: #1c1917;
  --surface: #292524;
}

body {
  margin: 0;
}

.top-bar {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.65rem 1.25rem;
  border-bottom: 1px solid var(--line);
  background: var(--surface);
}

.version {
  font-family: ui-monospace, 'Cascadia Code', 'Segoe UI Mono', monospace;
  font-size: 0.8rem;
  font-weight: 400;
  font-variant-numeric: tabular-nums;
  color: var(--muted);
  opacity: 0.5;
}

.top-bar .version {
  margin-left: auto;
}

.theme {
  padding: 0.2rem 0.45rem;
  border: 1px solid var(--line);
  border-radius: 0.4rem;
  background: var(--surface);
  color: var(--muted);
  font: inherit;
  font-size: 0.8rem;
}

h1 {
  margin: 0;
  font-size: 1.1rem;
}

main {
  max-width: 44rem;
  padding: 1.5rem 1.25rem 3rem;
}

.intro {
  margin: 0 0 1.25rem;
  color: var(--muted);
}

.cards {
  display: grid;
  gap: 0.75rem;
}

.card {
  display: block;
  padding: 1rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: 0.6rem;
  background: var(--surface);
  color: inherit;
  text-decoration: none;
}

.card:hover,
.card:focus-visible {
  border-color: var(--accent);
}

.card h2 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0 0 0.35rem;
  font-size: 1rem;
}

.card h2 .version {
  flex-shrink: 0;
}

.card p {
  margin: 0;
  color: var(--muted);
  font-size: 0.95rem;
}

.fallback {
  margin: 0;
  padding-left: 1.1rem;
}

.fallback a {
  color: var(--accent);
}
