:root { color-scheme:light; background:#f2efe8; color:#171614; font-family:"Work Sans",Arial,Helvetica,sans-serif; }
* { box-sizing:border-box; }
body { margin:0; }
header,main { max-width:780px; margin:auto; padding:24px; }
header { font-weight:800; border-bottom:1px solid currentColor; }
h1 { font-size:clamp(30px,6vw,52px); line-height:1.05; letter-spacing:-.045em; }
a { color:inherit; overflow-wrap:anywhere; text-underline-offset:3px; }
.story { font-family:"Source Serif 4",Georgia,serif; font-size:19px; line-height:1.55; overflow-wrap:anywhere; margin-block:24px; }
.actions { display:flex; flex-wrap:wrap; gap:10px; margin-block:24px; }
.actions a,.continue { display:inline-flex; align-items:center; min-height:44px; padding:10px 14px; border:1px solid currentColor; }
.actions p { flex-basis:100%; }
a:focus-visible { outline:3px solid currentColor; outline-offset:4px; }
.cover { aspect-ratio:3/4; display:block; width:100%; max-height:75vh; object-fit:contain; }
dt { font-weight:700; margin-top:12px; } dd { margin:4px 0; overflow-wrap:anywhere; }

.editorial-cover { position:relative; }
.editorial-cover h1 { position:absolute; inset:0; margin:0; display:grid; place-items:center; padding:24px 32px; color:#fff; text-align:center; overflow-wrap:anywhere; overflow-x:hidden; overflow-y:auto; text-wrap:balance; background:radial-gradient(ellipse at center,#0003,transparent 75%); text-shadow:0 2px 5px #000,0 0 24px #000d; }
