/* Shared poem styling. A poem template may add its own <style> to go its own way. */
:root {
  /* Portrait palette — same as the home page's default theme */
  --poem-bg: #fdf1dc;
  --poem-text: #2a1a10;
  --poem-muted: #6a4a36;
  --poem-accent: #8f4a22;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--poem-bg);
  color: var(--poem-text);
  font-family: 'Lora', Georgia, serif;
  line-height: 1.8;
}
a { color: var(--poem-accent); }
.poem-nav { padding: 1.5rem; font-family: 'Hanken Grotesk', system-ui, sans-serif; font-size: .9rem; }
.poem-nav a { text-decoration: none; margin-right: 1.25rem; }
.poem-page { max-width: 38rem; margin: 0 auto; padding: 2rem 1.5rem 6rem; }
.poem-title { font-family: 'Playfair Display', Georgia, serif; font-size: clamp(2rem, 6vw, 3rem); line-height: 1.2; margin: 0 0 .25rem; }
.poem-date { color: var(--poem-muted); font-size: .9rem; margin: 0 0 3rem; }
.poem-body p, .stanza { margin: 0 0 2rem; white-space: pre-line; }
.poem-list { list-style: none; padding: 0; }
.poem-list li { margin-bottom: 2rem; }
.poem-list a { font-family: 'Playfair Display', Georgia, serif; font-size: 1.4rem; text-decoration: none; }
.poem-list p { margin: .25rem 0 0; color: var(--poem-muted); }

/* Photography gallery */
.gallery-page { max-width: 72rem; margin: 0 auto; padding: 2rem 1.5rem 6rem; }
.gallery { columns: 3 16rem; column-gap: 1rem; }
.gallery-item { break-inside: avoid; margin: 0 0 1rem; }
.gallery-item img, .gallery-item video { display: block; width: 100%; height: auto; border-radius: .6rem; background: #fae4bf; }
.gallery-link { display: block; cursor: zoom-in; }
.gallery-item figcaption { font-size: .9rem; color: var(--poem-muted); padding: .4rem .1rem 0; line-height: 1.5; }
.gallery-item figcaption strong { display: block; color: var(--poem-text); font-weight: 500; }
.lightbox { position: fixed; inset: 0; background: rgba(19,17,16,.92); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1.5rem; z-index: 50; cursor: zoom-out; }
.lightbox[hidden] { display: none; }
.lightbox img { max-width: 100%; max-height: 82vh; border-radius: .4rem; }
.lightbox p { color: #fdf1dc; margin: .75rem 0 0; text-align: center; max-width: 40rem; }
.lightbox-close { position: absolute; top: .75rem; right: 1.25rem; background: none; border: 0; color: #fdf1dc; font-size: 2.5rem; line-height: 1; cursor: pointer; }
