
@font-face{font-family:Mont;src:url(../fonts/mont-800.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:Mont;src:url(../fonts/mont-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:HeimAdr;src:url(../fonts/heim-adr.woff2) format("woff2");font-display:swap}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:#2a1019;color:#f8f1ea;font-family:Mont,system-ui,-apple-system,Arial,sans-serif;-webkit-text-size-adjust:100%}
body{display:flex;flex-direction:column;min-height:100svh;overflow:hidden}
.rb{display:flex;align-items:center;gap:10px;height:54px;padding:0 12px;background:#681e3a;flex:none}
.rb a{color:#f8f1ea;text-decoration:none}
.rb .back{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.95rem}
.rb .back img{height:30px;width:auto}
.rb .ttl{flex:1;min-width:0;text-align:center;line-height:1.1}
.rb .ttl b{display:block;font-weight:800;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rb .ttl span{font-family:HeimAdr,Mont,sans-serif;font-size:.95rem;color:#e7ad93}
.rb .dl{font-weight:700;font-size:.82rem;border:1.5px solid rgba(248,241,234,.5);border-radius:999px;padding:.35em .8em;white-space:nowrap}
.stage{flex:1;display:flex;align-items:center;justify-content:center;padding:10px 8px 26px;min-height:0;position:relative}
#book{margin:0 auto}
.page{background:#fff;overflow:hidden}
.page img{width:100%;height:100%;object-fit:contain;display:block;background:#fff;-webkit-user-drag:none;user-select:none}
.ctl{flex:none;display:flex;align-items:center;justify-content:center;gap:14px;height:70px;padding-bottom:env(safe-area-inset-bottom)}
.ctl button{appearance:none;border:0;background:#f8f1ea;color:#4a1229;width:48px;height:48px;border-radius:50%;font:800 1.4rem/1 Mont,sans-serif;display:grid;place-items:center;cursor:pointer}
.ctl button svg{width:24px;height:24px;fill:currentColor}
.ctl button:disabled{opacity:.35;cursor:default}
.ctl .zoom{background:transparent;color:#f8f1ea;border:1.5px solid rgba(248,241,234,.5)}
.count{min-width:96px;text-align:center;font-weight:700;font-size:.98rem;font-variant-numeric:tabular-nums}
.hint{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:.8rem;color:rgba(248,241,234,.7);pointer-events:none;transition:opacity .4s}
.zoomer{position:fixed;inset:0;z-index:50;background:#1d0b12;overflow:auto;display:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
.zoomer.on{display:block}
.zoomer .zc{position:sticky;top:0;left:0;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:rgba(29,11,18,.92);z-index:2}
.zoomer .zc span{font-size:.85rem;color:rgba(248,241,234,.75)}
.zoomer .zc button{appearance:none;border:0;background:#f8f1ea;color:#4a1229;border-radius:999px;font:800 .95rem Mont,sans-serif;padding:.55em 1.1em}
.zoomer .zp{padding:0 0 30px}
.zoomer img{display:block;width:100%;height:auto;margin:0 auto 10px;background:#fff;cursor:zoom-in}
.zoomer.big img{width:220%;max-width:none;cursor:zoom-out}
@media (min-width:900px){.zoomer img{width:min(100%,1000px)}.zoomer.big img{width:2000px}}
noscript p{padding:20px;text-align:center}

@media (min-width:700px){.hint{display:none}}
.rb .dl-space{width:44px;flex:none}
