/* =============================================================
   Backgammon-kalender — statische event-pagina (fase 1).
   Sober, in de geest van bgleuven (twentyten): lichtgrijze pagina,
   witte content-kaart, schreefloos, blauwe links. Eén kolom.
   Gegenereerd door src/render.js — niet met de hand bewerken.
   ============================================================= */

:root {
  --page-bg:   #e7e7e7;
  --paper:     #ffffff;
  --ink:       #222222;
  --ink-muted: #666666;
  --rule:      #d9d9d9;

  --link:         #0066cc;
  --link-visited: #743399;
  --link-hover:   #ff4b33;

  --cat-amstergammon: #1f6feb;
  --cat-rottergammon: #2e7d32;
  --cat-special:      #964900;
  --cat-nk:           #8C2C28;
  --cat-other:        #666666;

  --content-width: 760px;
  --gutter: clamp(1.25rem, 4vw, 2rem);

  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI",
               Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }

body {
  background: var(--page-bg);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

p { margin: 0 0 1em; }

a:link    { color: var(--link); }
a:visited { color: var(--link-visited); }
a:hover,
a:focus   { color: var(--link-hover); }

.wrapper {
  max-width: var(--content-width);
  margin: 1.5rem auto;
  padding: 2.25rem var(--gutter);
  background: var(--paper);
}

/* === Header === */
.site-header {
  padding-bottom: 0.85rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid var(--rule);
}
.site-title {
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
  color: var(--ink);
}
.site-description {
  font-style: italic;
  color: var(--ink-muted);
  margin: 0.25rem 0 0;
}

/* === Month groups === */
.month { margin: 0 0 1.75rem; }
.month__title {
  font-size: 1.05rem;
  font-weight: 600;
  text-transform: capitalize;
  color: var(--ink);
  margin: 0 0 0.6rem;
  padding-bottom: 0.3rem;
  border-bottom: 1px solid var(--rule);
}
.month__events {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* === Event row === */
.event {
  display: flex;
  gap: 1rem;
  padding: 0.65rem 0;
  border-bottom: 1px solid #efefef;
}
.event:last-child { border-bottom: none; }

.event__when {
  flex: 0 0 3.25rem;
  text-align: right;
  line-height: 1.25;
  padding-top: 0.1rem;
}
.event__day {
  display: block;
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--ink);
}
.event__time {
  display: block;
  font-size: 0.8rem;
  color: var(--ink-muted);
}

.event__body { flex: 1 1 auto; min-width: 0; }
.event__title {
  margin: 0 0 0.15rem;
  font-weight: 600;
}
.event__meta {
  margin: 0;
  font-size: 0.9rem;
  color: var(--ink-muted);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}
.event__sep { color: var(--rule); }

.event__cat {
  margin-left: auto;
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #fff;
  background: var(--cat-other);
  border-radius: 3px;
  padding: 0.1rem 0.45rem;
}
.event__cat[data-cat="amstergammon"] { background: var(--cat-amstergammon); }
.event__cat[data-cat="rottergammon"] { background: var(--cat-rottergammon); }
.event__cat[data-cat="special"]      { background: var(--cat-special); }
.event__cat[data-cat="nk"]           { background: var(--cat-nk); }

/* === Footer === */
.site-footer {
  margin-top: 1.5rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--rule);
  font-size: 0.85rem;
  color: var(--ink-muted);
}
.site-footer p { margin: 0 0 0.4rem; }
.sources-label { display: inline; }
.source-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline;
}
.source-list li { display: inline; }
.source-list li + li::before { content: " · "; color: var(--rule); }

@media (max-width: 480px) {
  .event__cat { margin-left: 0; }
}
