:root{--paper:#f3eddf;--ink:#302a20;--muted:#63594a;--line:#c3b69d;--wine:#763c30;--gilt:#b69a65;--night:#26251f;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",Georgia,serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans CJK JP",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:15px}body{margin:0;color:var(--ink);background:radial-gradient(ellipse at 70% 8%,#faf6ea 0,transparent 66%),var(--paper);font:16px/1.85 var(--serif);font-feature-settings:"palt";overflow-wrap:break-word}a{color:inherit;text-underline-offset:.28em;text-decoration-thickness:1px}a:hover{color:var(--wine)}a:focus-visible,button:focus-visible{outline:3px solid #995b30;outline-offset:4px}button{font:inherit;color:inherit;cursor:pointer}img,svg{display:block;max-width:100%}figure,p,h1,h2,h3,ol,dl,dd{margin:0}html[lang=ja] .en,html[lang=en] .ja{display:none!important}.wrap{width:min(1160px,calc(100% - 9vw));margin-inline:auto}.mast{border-top:4px solid var(--night);border-bottom:1px solid var(--line)}.mast .wrap,.foot .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:15px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none}.brand img{width:41px;height:41px}.brand b{display:block;font-size:19px;letter-spacing:.12em;line-height:1.3}.brand small,.label,.legend,.booknum{font:600 10px/1.55 var(--sans);text-transform:uppercase;letter-spacing:.17em}.brand small{font-size:8px}.headright,.switch{display:flex;gap:20px;align-items:center}.headright>a{font:13px var(--serif)}.switch{gap:0;border:1px solid var(--line);padding:2px}.switch button{border:0;background:transparent;font:12px var(--sans);padding:7px 10px}.switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.tabs{display:flex;align-items:center;border-bottom:1px solid var(--line);font-size:13px;gap:26px;padding-block:12px}.tabs a{text-decoration:none}.tabs a[aria-current]{color:var(--wine);font-weight:bold}.tabs .label{margin-right:auto}.opening{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:4.5%;padding-block:42px 36px}.eyebrow{color:var(--wine);display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:32px;height:1px;background:var(--wine)}.collection{font-size:15px;letter-spacing:.18em;margin:18px 0 9px}.title{font-size:clamp(42px,4.6vw,73px);line-height:1.18;letter-spacing:.035em;font-weight:500;text-wrap:balance}.title .en{font-size:.86em}.sub{font-size:22px;margin-top:10px;line-height:1.55;color:var(--wine)}.intro{margin-top:22px;max-width:33em;line-height:1.95;font-size:16px}.folio-id{margin-top:22px;color:var(--muted);font:italic 13px/1.4 Georgia,serif;letter-spacing:.08em}.plate{background:var(--night);padding:8px 8px 0;box-shadow:0 8px 22px #3a2a160d}.plate img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border:1px solid #a7946a}.plate figcaption{display:flex;align-items:baseline;gap:15px;justify-content:space-between;padding:9px 4px;font-size:12px;color:#eee2c6;line-height:1.55}.plate .label{color:#d2ba87;white-space:nowrap}.rule{display:flex;align-items:center;gap:12px;color:#82674b;font-size:14px}.rule:before,.rule:after{content:"";flex:1;height:1px;background:var(--line)}.bodygrid{display:grid;grid-template-columns:minmax(0,.89fr) minmax(0,1.11fr);gap:5%;padding:30px 0 36px;align-items:start}.diagram{background:#eae2d0;border:1px solid #b6a78c;padding:20px 20px 17px}.diagram .label{color:var(--wine)}.diagram h2,.notes h2{font-weight:500;font-size:clamp(23px,2.25vw,32px);line-height:1.5;margin:5px 0 13px}.diagram svg{width:100%;margin:14px auto 12px}.diagram svg text{font-family:Georgia,serif;fill:#433c2e}.diagram figcaption{font:13px/1.8 var(--sans);color:#524a3d;border-top:1px solid var(--line);padding-top:12px}.call{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}.call dt{font:bold 12px/1.65 var(--sans);color:var(--wine);letter-spacing:.08em}.call dd{margin:3px 0 11px;font-size:15px}.notes{padding-top:2px}.notes ol{list-style:none;padding:0;counter-reset:entry}.notes li{counter-increment:entry;position:relative;padding:14px 0 15px 43px;border-top:1px solid var(--line)}.notes li:before{content:counter(entry,decimal-leading-zero);position:absolute;left:1px;top:16px;color:var(--wine);font:italic 17px Georgia,serif}.notes h3{font-size:19px;font-weight:600;line-height:1.55;margin-bottom:5px}.notes p{font-size:15px;line-height:1.9}.witness{background:var(--night);color:#f0e8d7;padding:24px 0}.witness .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6%;align-items:center}.witness h2{line-height:1.55;font-size:24px;font-weight:500;margin-top:4px}.witness .label{color:#d1b782}.witness p{font-size:15px}.sources{padding:25px 0 25px}.sources h2{font-size:16px;margin:0 0 8px}.sources p{font-size:13px;color:var(--muted)}.sources ul{padding:0 0 0 1.15em;margin:6px 0 0;font-size:13px}.endnav{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:14px 0 20px;border-top:1px solid var(--line);font-size:14px}.turn{font-size:18px;color:var(--wine)}.foot{background:#e8e0cf;border-top:1px solid var(--line)}.foot .wrap{font-size:12px;color:var(--muted)}.skip{position:fixed;left:12px;top:-100px;background:white;padding:8px;z-index:5}.skip:focus{top:4px}.noscript{font-size:12px}.legend{color:var(--muted)}
@media(max-width:820px){.opening{grid-template-columns:1fr 1.1fr;gap:3%}.bodygrid{gap:4%}.intro{font-size:15px}.plate figcaption{flex-wrap:wrap;gap:2px 10px}.diagram{padding:16px}}
@media(max-width:680px){.wrap{width:calc(100% - 36px)}.mast .wrap{padding-block:11px;gap:8px}.headright>a{display:none}.headright{gap:3px}.brand img{width:34px;height:34px}.brand b{font-size:16px}.brand small{font-size:7px}.switch button{font-size:11px;padding:7px}.tabs{gap:13px;font-size:12px}.tabs .label{display:none}.opening{display:flex;flex-direction:column;align-items:stretch;gap:21px;padding:25px 0 24px}.title{font-size:clamp(38px,9.5vw,52px)}.collection{margin:11px 0 5px}.sub{font-size:19px;margin-top:6px}.intro{margin-top:13px}.folio-id{margin-top:12px}.plate figcaption{font-size:11px}.bodygrid{grid-template-columns:1fr;gap:25px;padding:19px 0 24px}.notes h2,.diagram h2{font-size:25px}.witness .wrap{display:block}.witness p{margin-top:10px}.endnav{align-items:flex-start;flex-direction:column;gap:8px}.foot .wrap{flex-wrap:wrap;gap:5px}.notes li{padding-left:34px}.sources{padding:18px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;font-size:11pt}.mast,.tabs,.skip,.endnav,.foot,.folio-id{display:none}.wrap{width:100%}.opening{padding:8px 0 14px}.title{font-size:34px}.intro{font-size:12px}.bodygrid{padding:10px 0;gap:3%}.diagram{break-inside:avoid}.witness{background:transparent;color:var(--ink);border-block:1px solid var(--line);padding:8px 0}.notes li{padding-block:7px}.sources{padding:10px 0}.witness p,.notes p{font-size:12px}}
/* Folio add-ons: keep the colophon inside main and the header language switch on one line. */
main>.foot{background:none;border-top:0}
.switch{white-space:nowrap;flex:none}
/* Shared by canon and reliquary; appended after each owner's reading stylesheet.
   Match globals.css + edition.css without inheriting either reader's typography. */
body>footer{width:100%;margin:0;border-top:3px double #b8a98e;padding:27px clamp(20px,5vw,95px);background:#eae2d2;display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;color:#302b21;font:16px/1.8 "Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP","Noto Serif JP","Hiragino Mincho Pro",Georgia,serif;font-feature-settings:normal;-webkit-font-smoothing:antialiased;overflow-wrap:normal}
body>footer a{color:inherit;text-decoration:none;text-decoration-thickness:auto;text-underline-offset:auto}
body>footer a:hover{color:#803d32}
body>footer a:focus-visible{outline:3px solid #ad793f;outline-offset:4px}
body>footer svg{display:inline;max-width:none}
body>footer .brand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
body>footer .brand b{font-size:18px;font-weight:650;letter-spacing:.13em;display:block;line-height:1.45}
/* folio.css sets a sans-serif shorthand, weight 600 and uppercase on .brand small. */
body>footer .brand small{font:normal 7px/1.5 Georgia,serif;text-transform:none;letter-spacing:.23em;display:block}
html:lang(en) body>footer .brand b{font-size:clamp(15px,1.65vw,25px);letter-spacing:.01em}
body>footer .seal{color:#6a5135;flex:none}
body>footer nav{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}
body>footer .footerOperator{flex-basis:100%;font-size:13px;color:#524331;line-height:1.5;margin:0}
body>footer .footerOperator a{text-decoration:underline}
@media(max-width:900px){body>footer{align-items:flex-start}}
@media(max-width:720px){body>footer{flex-direction:column;gap:13px}body>footer nav{gap:13px}body>footer .footerOperator{flex-basis:auto}body>footer .brand{gap:7px}body>footer .brand>.seal{width:39px;height:39px}body>footer .brand small{letter-spacing:.16em}html:lang(en) body>footer .brand b{white-space:normal;line-height:1.05;max-width:120px;font-size:16px}html:lang(en) body>footer .brand small{font-size:5.8px;line-height:1.8;letter-spacing:.16em}}
@media print{body>footer{display:none}}
@media(max-width:359px){body>footer .brand>.seal{width:31px;height:31px}body>footer .brand b{letter-spacing:.1em}html:lang(en) body>footer .brand b{font-size:14px}}
