
:root { --fg:#1a1a1a; --bg:#fdfcf9; --accent:#7a1f1f; --muted:#666; --rule:#ddd; }
* { box-sizing: border-box; }
body { margin:0; padding:0 1rem; background:var(--bg); color:var(--fg);
       font: 1.05rem/1.65 Georgia, 'Times New Roman', serif; }
main { max-width: 46rem; margin: 0 auto; padding: 1.5rem 0 4rem; }
h1 { font-size:1.7rem; line-height:1.25; margin:.4rem 0; border-bottom:2px solid var(--accent); padding-bottom:.3rem;}
h2 { font-size:1.25rem; margin:1.8rem 0 .5rem; }
a { color: var(--accent); }
.cite { color: var(--muted); font-size:.9rem; font-style: italic; margin-bottom:1.2rem; }
nav.top, nav.foot { font-size:.95rem; margin:.6rem 0; display:flex; gap:1rem; flex-wrap:wrap; }
article p { margin: .55rem 0; text-align: justify; hyphens: auto; }
article > p:first-of-type { text-indent: 0; }
b { font-variant: small-caps; letter-spacing:.02em; }
table { display:block; overflow-x:auto; border-collapse:collapse; margin:1rem 0; font-size:.92rem; max-width:100%; }
th, td { border:1px solid var(--rule); padding:.3rem .55rem; }
th { background:#f1ede3; }
figure { margin:1.2rem 0; text-align:center; }
figure img { max-width:100%; height:auto; }
figure.float { float:right; max-width:46%; margin:.15rem 0 .9rem 1.1rem; text-align:center; }
figure.float img { width:100%; }
figure.wide { margin:1.2rem 0; }
figcaption { font-size:.9rem; color:var(--muted); margin-top:.35rem; text-align:center; }
p.caption { text-align:center; font-size:.9rem; color:#666; }
.plate-img { border:1px solid var(--rule); }
ul.index { columns: 2; padding-left:1.2rem; }
ul.index li { break-inside: avoid; margin:.15rem 0; font-size:.97rem; }
.letters { display:flex; flex-wrap:wrap; gap:.5rem 1rem; font-size:1.05rem; margin:.8rem 0; }
.gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:1rem; }
.gallery figure { margin:0; }
code.tex { font-family:ui-monospace,monospace; font-size:.9em; background:#f4f1e8; padding:.05em .3em; }
.footnote { font-size:.88rem; color:#333; }
@media (max-width:700px){ body{font-size:1rem;} ul.index{columns:1;} h1{font-size:1.4rem;}
  figure.float{float:none; max-width:100%; margin:1.2rem 0;} }
