:root{
  --bg:#fff;
  --text:#111;
  --muted:#555;
  --link:#0645ad;
  --border:#e5e5e5;
  --max:720px;
}
*{box-sizing:border-box;}
html{font-size:16px;}
body{margin:0; font-family:Georgia,Cambria,"Times New Roman",serif; color:var(--text); background:var(--bg); line-height:1.65;}
.wrap{max-width:var(--max); margin:0 auto; padding:24px;}
body > header{border-bottom:1px solid var(--border);}
body > header .wrap{padding-top:20px; padding-bottom:20px;}
nav{display:flex; gap:8px 20px; flex-wrap:wrap; align-items:center; font-size:.95rem;}
a{color:var(--link); text-underline-offset:3px;}
nav a,.poem-list a{text-decoration:none;}
a:hover{text-decoration:underline;}
a:focus-visible{outline:2px solid var(--link); outline-offset:4px;}
nav a[aria-current="page"]{text-decoration:underline;}
main.wrap{padding-top:32px; padding-bottom:40px;}
h1{font-size:1.5rem; line-height:1.35; margin:0 0 24px; font-weight:normal; text-wrap:balance;}
p{margin:0 0 16px;}
.muted,.author{color:var(--muted);}
main > footer{border-top:1px solid var(--border); margin-top:40px; padding-top:16px; color:var(--muted); font-size:.8rem;}
main > h1:has(+ .poem-list){margin-bottom:8px;}
.poem-list{list-style:none; padding:0; margin:0;}
.poem-list li{border-bottom:1px solid var(--border);}
.poem-list a{display:block; padding:16px 0; font-size:1.008rem; line-height:1.6;}
.listing-author{display:block; color:var(--muted); font-style:italic; margin-top:4px;}
.poem{margin:24px 0;}
.poem header{margin-bottom:24px;}
.poem h1{font-size:1.05rem; margin-bottom:6px;}
.poem .author{font-size:.9rem; margin:0; font-style:italic;}
.poem pre{white-space:pre-wrap; font-family:inherit; font-size:1rem; line-height:1.8; margin:24px 0 0; overflow-wrap:break-word;}
.note,.translator-note{background:#fafafa; border-left:2px solid var(--border); padding:14px 18px; margin:24px 0; font-size:.9rem;}
.note strong,.translator-note > strong{display:block; margin-bottom:6px; font-weight:normal;}
.note p,.translator-note p{margin:0; color:var(--muted);}
.translator-note p + p{margin-top:16px;}
.story-text p{margin:0 0 20px;}
.novel{margin:24px 0;}
.novel .author{margin-top:-16px; font-style:italic;}
.quotes{margin-top:8px;}
.quote{margin:0; padding:24px 0; border-bottom:1px solid var(--border);}
.quote:first-child{padding-top:0;}
.quote:last-child{border-bottom:0; padding-bottom:0;}
.quote blockquote{margin:0;}
.quote blockquote p{margin:0; line-height:1.8; text-wrap:pretty;}
.quote figcaption{margin-top:12px; color:var(--muted); font-size:.85rem; line-height:1.6; text-wrap:pretty;}
.quote-author{display:block;}
.quote cite{display:block; font-style:italic;}
@media(max-width:480px){
  .wrap{padding-left:20px; padding-right:20px;}
  nav{gap:8px 16px; font-size:.9rem;}
  main.wrap{padding-top:24px;}
  .note,.translator-note{padding:12px 14px;}
}
