:root {
  --bg: #1a1a14;
  --bg-raised: #242418;
  --fg: #d0c8b0;
  --fg-bright: #e8e0c8;
  --fg-muted: #a09878;
  --fg-dim: #787058;
  --accent: #10b981;
  --accent-glow: #10b98144;
  --surface: #1e1e16;
  --border: #363020;
  --border-mid: #504830;
  --font-body: 'Caveat', 'Comic Sans MS', cursive, sans-serif;
  --font-heading: 'Caveat', 'Comic Sans MS', cursive, sans-serif;
  --font-mono: 'SF Mono', 'Fira Code', monospace;
}

@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;600;700&display=swap');

body {
  background: var(--bg);
  background-image:
    repeating-linear-gradient(
      transparent,
      transparent 31px,
      rgba(160,152,120,0.08) 31px,
      rgba(160,152,120,0.08) 32px
    );
  background-size: 100% 32px;
  font-size: 15px;
}

.garden-nav {
  background: color-mix(in srgb, #1a1a14 92%, transparent);
  border-bottom-color: var(--border);
}
.garden-nav a.active { border-bottom-color: var(--accent); }

h1, h2, h3 {
  font-family: var(--font-heading);
  font-weight: 700;
}
h1 { font-size: 2.4rem; }
h2 { font-size: 1.8rem; }
h3 { font-size: 1.3rem; }

.page-header { border-bottom: 2px dashed var(--border-mid); }

.domain-card {
  background: var(--surface);
  border: 1px dashed var(--border);
  border-radius: 2px;
}
.domain-card:hover {
  border-color: var(--accent);
  border-style: solid;
}

.role-table {
  font-family: var(--font-body);
  font-size: 15px;
}
.role-table th {
  background: var(--surface);
  border-bottom: 2px solid var(--accent);
  font-family: var(--font-heading);
  font-size: 16px;
  text-transform: none;
}
.role-table .role-name {
  color: var(--accent);
  font-family: var(--font-mono);
  font-size: 13px;
}

.badge {
  background: #363020;
  color: var(--accent);
  border-radius: 2px;
}

.stat-num {
  color: var(--accent);
  font-family: var(--font-heading);
  font-size: 2.8rem;
}
.stat-label {
  font-family: var(--font-heading);
  font-size: 15px;
}

.trail-card {
  border: 1px dashed var(--border);
  border-radius: 2px;
}
.trail-card:hover {
  border-color: var(--accent);
  border-style: solid;
}

.section-title {
  font-family: var(--font-heading);
  font-size: 1.6rem;
  text-transform: none;
  border-bottom: 2px dashed var(--border);
}

.quote-block {
  border-left: 3px solid var(--accent);
  font-family: var(--font-body);
  font-size: 15px;
}
