:root{--paper:#fbf9f4;--ink:#1b1a17;--soft:#5a564e;--rule:#d8d2c4;--link:#7a1f1f;--shade:#f2eee4}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#181715;--ink:#e9e5dc;--soft:#a39d91;--rule:#3a372f;--link:#e0a39a;--shade:#211f1b;color-scheme:dark}}
:root[data-theme="dark"]{--paper:#181715;--ink:#e9e5dc;--soft:#a39d91;--rule:#3a372f;--link:#e0a39a;--shade:#211f1b;color-scheme:dark}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;font-size:18px;line-height:1.6}
a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:2px}
.masthead{max-width:40rem;margin:0 auto;padding-block:2rem 1rem;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));text-align:center;border-bottom:1px solid var(--rule)}
.masthead .name{font-variant:small-caps;letter-spacing:.08em;font-size:1.35rem;color:var(--ink);text-decoration:none}
nav.site{margin-top:.6rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem 1.1rem;font-size:.95rem}
nav.site a{color:var(--soft);text-decoration:none}
nav.site a:hover{color:var(--link)}
nav.site a[aria-current]{color:var(--ink);border-bottom:1px solid var(--ink)}
main{max-width:40rem;margin:0 auto;padding-block:0 3rem;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2{text-wrap:balance}
a:focus-visible{outline:2px solid var(--link);outline-offset:2px}
h1{font-weight:normal;font-size:2.1rem;line-height:1.2;text-align:center;margin:2.25rem 0 .25rem}
.edition{text-align:center;font-style:italic;color:var(--soft);margin:0 0 2rem}
h2{font-weight:normal;line-height:1.25;font-variant:small-caps;letter-spacing:.05em;font-size:1.45rem;margin:2.75rem 0 .75rem;scroll-margin-top:1rem}
h3{font-size:1.3rem;font-style:italic;font-weight:normal;margin:2rem 0 .5rem;scroll-margin-top:1rem}
p{margin:0 0 1rem}
ul,ol{padding-left:1.4rem;margin:0 0 1rem}
li{margin:.35rem 0}
li>ul{margin-top:.35rem}
strong{font-weight:600}
code{font-family:inherit}
hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}
.toc{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:.5rem 0 .75rem;margin:0 0 2.5rem}
.toc h2{font-size:1rem;margin:.5rem 0;text-align:center}
.toc ol{list-style:none;padding:0;margin:0;columns:2;column-gap:2rem;font-size:.95rem}
.toc li{margin:0;padding:.15rem 0;break-inside:avoid}
.toc a{color:var(--ink);text-decoration:none}
.toc a:hover{color:var(--link);text-decoration:underline}
.table-wrap{overflow-x:auto;margin:1rem 0 1.5rem}
table{border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums;white-space:nowrap}
th,td{padding:.3rem .55rem;text-align:right;border-bottom:1px solid var(--rule)}
th{font-weight:600;border-bottom:1px solid var(--ink)}
th:first-child,td:first-child{text-align:left}
input[type=checkbox]{margin-right:.4rem}
.pager{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--rule);padding-top:1rem;margin-top:3rem;font-size:.95rem}
.pager a{text-decoration:none}
@media (max-width:600px){body{font-size:17px}h1{font-size:1.75rem}.toc ol{columns:1}.masthead{padding-top:1.25rem}}
@media print{.masthead nav,.pager,.toc{display:none}body{background:#fff;color:#000}a{color:#000}}
.respond{margin-top:3rem;font-style:italic;color:var(--soft)}
form.contribute{margin-top:2rem}
fieldset{border:0;border-top:1px solid var(--rule);margin:0 0 1.5rem;padding:1rem 0 0;min-width:0}
legend{font-variant:small-caps;letter-spacing:.05em;font-size:1.15rem;padding:0 .5rem 0 0}
form label{display:block;margin:.75rem 0 .25rem}
fieldset > label:has(input[type=radio]),label.check{display:flex;gap:.5rem;align-items:baseline;margin:.4rem 0}
input[type=text],input[type=email],select,textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:2px;padding:.45rem .55rem}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--link);outline-offset:1px}
textarea{resize:vertical;line-height:1.5}
.hint,.quiet{color:var(--soft);font-size:.95rem}
.notice{border-left:2px solid var(--link);padding-left:.75rem}
.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
button{font:inherit;font-variant:small-caps;letter-spacing:.06em;font-size:1.05rem;color:var(--paper);background:var(--ink);border:0;border-radius:2px;padding:.55rem 1.6rem;cursor:pointer}
button:hover{background:var(--link)}
