:root{--paper:#FCFBF9;--ink:#343b3e;--title:#414C50;--muted:#657073;--rule:#dadbd7;--text-size:16.5px;--bar-height:58px;color-scheme:light;font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif CJK JP","Noto Serif JP",serif;font-synthesis:none;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}html{scroll-padding-top:calc(var(--bar-height) + 20px);scroll-behavior:auto;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}html,body,#book{overflow-anchor:none}a{color:inherit;text-underline-offset:.3em}button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--title);outline-offset:4px}[hidden]{display:none!important}
.skip{position:fixed;top:-80px;left:16px;z-index:10;padding:12px;background:var(--paper)}.skip:focus{top:8px}
.toolbar{position:sticky;top:0;z-index:5;min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px max(20px,env(safe-area-inset-right)) 6px max(20px,env(safe-area-inset-left));padding-top:calc(6px + env(safe-area-inset-top));background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif;font-size:12px;letter-spacing:.04em}.book-name{text-decoration:none;color:var(--muted)}summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;padding:0 4px;color:var(--ink)}summary::-webkit-details-marker{display:none}summary::after{content:"＋";margin-left:6px}details[open] summary::after{content:"−"}
.menu-panel{position:absolute;top:100%;right:max(12px,env(safe-area-inset-right));width:min(350px,calc(100vw - 24px));max-height:calc(100vh - var(--bar-height) - 20px);max-height:calc(100dvh - var(--bar-height) - 20px - env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;padding:14px 22px 24px;border:1px solid var(--rule);background:var(--paper);box-shadow:0 10px 26px #30383b0d}.menu-panel nav{display:flex;flex-direction:column}.menu-panel nav a{display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:14px;line-height:1.7}.menu-panel fieldset{margin:16px 0 0;padding:12px 0 0;border:0;border-top:1px solid var(--rule)}legend{font-size:12px;color:var(--muted)}.size-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}button{font:inherit;background:transparent;border:1px solid var(--rule);border-radius:2px;min-height:44px;cursor:pointer;color:var(--ink)}button[aria-pressed=true]{background:#e6e9e7;border-color:#879193}
#book{width:100%;max-width:640px;min-width:0;margin:0 auto;padding:0 max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left))}.title-page{min-height:calc(84vh - var(--bar-height));min-height:calc(84svh - var(--bar-height));display:flex;align-items:center;justify-content:center;padding:64px 0 90px;text-align:center;scroll-margin-top:0}.title-page h1{color:var(--title);font-size:clamp(25px,6.6vw,34px);font-weight:500;line-height:1.8;letter-spacing:.13em;margin:0;padding-left:.13em;white-space:nowrap}.cover-actions{display:flex;justify-content:center;gap:24px;margin:0 0 100px;font-size:12px;letter-spacing:.08em;color:var(--muted)}.cover-actions a{display:flex;align-items:center;min-height:44px;text-decoration:none}
.chapter{padding:0 0 64px;scroll-margin-top:12px}.chapter+.chapter{padding-top:40px}.chapter h2{font-size:20px;line-height:1.8;font-weight:500;letter-spacing:.06em;margin:0 0 2em;color:var(--title)}.chapter p,.chapter p.dialogue{font-size:var(--text-size);line-height:1.8;letter-spacing:0;font-weight:400;white-space:normal;text-indent:0;margin:0 0 .85em;line-break:strict;word-break:normal;overflow-wrap:normal;text-wrap:wrap;text-wrap-style:auto;text-align:start;orphans:2;widows:2}.chapter p.scene-break{margin-top:1.5em}.chapter p:last-child{margin-bottom:0}.pdf-wrap{display:none}.source{scroll-margin-top:12px}
footer{max-width:640px;margin:0 auto;padding:20px max(20px,env(safe-area-inset-right)) calc(64px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}footer a{display:flex;align-items:center;min-height:44px}
@media(min-width:700px){#book{padding-left:36px;padding-right:36px}.title-page{min-height:620px}.chapter h2{font-size:22px}.chapter+.chapter{padding-top:56px}}
@media(max-height:500px){.title-page{min-height:300px;padding:70px 0}.cover-actions{margin-bottom:70px}}
@media print{.toolbar,.skip,.cover-actions,footer{display:none}#book{max-width:none}.title-page{min-height:80vh}.chapter{break-before:page}.chapter p{orphans:2;widows:2}}

/* v18: separate number/title without changing canonical heading text. */
.chapter h2{display:flex;align-items:baseline;column-gap:0;min-width:0}.chapter-number{flex:none;letter-spacing:0}.chapter-space{flex:0 0 .9em;overflow:hidden;font-size:inherit;white-space:pre;color:transparent}.chapter-title{min-width:0;word-break:normal;overflow-wrap:normal}

/* Work information stays inside the contents, outside the manuscript flow. */
.work-info-link{display:block;margin-top:24px;padding:8px 0;border:0;color:var(--muted);font-size:12px;text-align:left}
.work-info{font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif CJK JP","Noto Serif JP",serif;color:var(--ink);padding-bottom:32px}
.work-info h2{font-size:20px;font-weight:500;line-height:1.8;letter-spacing:.06em;margin:32px 0 24px;color:var(--title)}
.work-info p{font-size:16px;line-height:1.8;margin:0}
.work-info button{border:0;padding:0;font-size:12px;color:var(--muted)}
