:root{color-scheme:dark;--bg:#141514;--panel:#191a18;--gold:#dfb47e;--ink:#f1eee7;--muted:#aaa89f;--line:#ffffff12}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:none;border:1px solid transparent}button:hover{color:var(--gold);background:#ffffff06}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{opacity:.22;cursor:default}button[aria-pressed=true]{background:#dfb47e15;border-color:#dfb47e44;color:var(--gold)}.topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:26px;background:#171815}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:13px;font-size:17px;font-weight:700;letter-spacing:1.5px;white-space:nowrap}.brand-mark{font-family:Georgia,serif;display:grid;place-items:center;border:1px solid #b18a59;border-radius:50%;color:var(--gold);height:38px;width:38px;font-size:26px;font-weight:400}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:3px;margin-top:7px;color:var(--gold)}.edition{font-size:11px;letter-spacing:2.6px;color:#85867e;border-left:1px solid #ffffff20;padding-left:27px}.tools{margin-left:auto;display:flex;align-items:center;gap:8px}.tools button{padding:10px 13px;border-radius:6px;font-size:20px;white-space:nowrap}.tools button span{font-size:14px;margin-left:6px}.icon{min-width:42px;min-height:42px}.menu{display:none}.workspace{display:flex;min-height:calc(100dvh - 86px)}aside{width:284px;flex-shrink:0;border-right:1px solid var(--line);padding:28px 19px 20px 24px;display:flex;flex-direction:column;background:#171815}.contents-heading{display:flex;justify-content:space-between;align-items:center;margin:0 7px 22px;font-size:17px}.count{font-size:12px;color:#83867e}.group-label{color:var(--gold);font-size:11px;letter-spacing:1.8px;padding:23px 12px 11px;line-height:1.65}.toc-item{display:flex;align-items:center;gap:10px;text-align:left;width:100%;border-radius:5px;padding:10px 11px;font-size:14px;line-height:1.35;color:#b2b4ab;margin-bottom:2px}.toc-item .num{font-size:11px;color:#70766b;min-width:17px;font-variant-numeric:tabular-nums}.toc-item.active{background:#dfb47e12;color:#f3d8b7;border-left:2px solid var(--gold);padding-left:9px}.toc-item.active .num{color:var(--gold)}.author{margin-top:auto;padding:30px 12px 5px}.author-line{display:block;width:28px;height:1px;background:#b18a59;margin-bottom:19px}.author small{font-size:10px;letter-spacing:2px;color:#8c9185}.author p{font-family:Georgia,'Times New Roman',serif;font-size:21px;line-height:1.3;margin:10px 0}.author>span:last-child{font-size:12px;color:#8c9185}main{flex:1;min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 42%,#32322b 0,#21221e 42%,#171916 85%)}.reading-heading{padding:23px 42px;display:flex;justify-content:space-between;gap:20px;color:#9b9d91;font-size:13px}.reading-heading>span:first-child{color:#b59b7b;font-size:11px;letter-spacing:2px}.stage{position:relative;display:flex;align-items:center;justify-content:center;flex:1;padding:6px 76px 24px;min-height:380px}.book{display:flex;align-items:center;justify-content:center;max-width:100%;perspective:1800px;gap:3px}.book figure{margin:0;position:relative;box-shadow:0 25px 55px #0008,4px 0 0 #a19a7a36,7px 0 0 #494a3d,9px 0 0 #aaa18a30;line-height:0;min-width:0}.book img{display:block;max-width:100%;width:auto;height:auto;max-height:calc(100dvh - 220px);object-fit:contain}.book figure::after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #d2b78e33;background:linear-gradient(90deg,#0004 0,transparent 1.7%,transparent 99%,#0003)}.book.enter{animation:arrive .24s ease-out}@keyframes arrive{from{opacity:.5;transform:translateX(8px)}to{opacity:1;transform:none}}.turn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:64px;border:1px solid #a9a79024;border-radius:7px;color:#c2b9a7;font-family:Georgia,serif;font-size:38px;background:#191b173d}.prev{left:20px}.next{right:20px}.reader-footer{display:flex;align-items:center;gap:25px;max-width:740px;width:calc(100% - 84px);margin:0 auto;padding:17px 0 22px;border-top:1px solid #ffffff13;color:#989c8f;font-size:13px}.page-control{display:flex;align-items:center;gap:9px;white-space:nowrap}#pageNumber{width:37px;text-align:center;background:#ffffff08;border:1px solid #ffffff12;border-radius:4px;color:#eed3ad;font:inherit;padding:6px 0;appearance:textfield}#pageNumber::-webkit-inner-spin-button{appearance:none}.progress{flex:1;min-width:30px;height:3px;accent-color:var(--gold);cursor:pointer}.keyboard-hint{color:#cfb28d;white-space:nowrap}.keyboard-hint span{margin-left:8px;color:#82897b}.mobile-hint{display:none}.scrim{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}body.zoomed .stage{align-items:flex-start;overflow:auto;max-height:calc(100dvh - 220px);justify-content:flex-start;padding:14px 66px 35px}body.zoomed .book{margin:auto;max-width:none;flex-shrink:0}body.zoomed .book img{max-height:none;max-width:none;width:min(1050px,150vw)}body.zoomed .turn{position:fixed;z-index:2;top:50%}body.zoomed .prev{left:300px}body.zoomed .next{right:15px}body.zoomed .book figure{flex-shrink:0}body.spread .book figure{flex:1}body.spread:not(.zoomed) .book img{max-height:calc(100dvh - 240px);width:100%}body.spread .book figure:first-child{box-shadow:0 25px 55px #0008}body.spread .book figure+figure::after{background:linear-gradient(90deg,#0007,transparent 4%)}
@media(min-width:1600px){aside{width:310px}body.zoomed .prev{left:325px}.stage{padding-left:90px;padding-right:90px}}
@media(max-height:850px) and (min-width:901px){.toc-item{padding-top:7px;padding-bottom:7px}.group-label{padding-top:15px}.author{padding-top:20px}.author p{font-size:19px}.topbar{height:72px}.workspace{min-height:calc(100dvh - 72px)}.book img{max-height:calc(100dvh - 202px)}}
@media(max-width:1100px){.edition{display:none}aside{width:255px;padding-left:14px;padding-right:14px}.reading-heading{padding-left:28px;padding-right:28px}body.zoomed .prev{left:266px}.tools{gap:0}}
@media(max-width:900px){.menu{display:block;font-size:21px}.topbar{height:74px;padding:0 16px;gap:12px}.brand{font-size:14px;letter-spacing:1px}.brand-mark{display:none}.brand small{font-size:9px;letter-spacing:2.5px}.tools button{padding:9px}.tools button span{display:none}.edition{display:none}.workspace{min-height:calc(100dvh - 74px)}aside{position:fixed;left:0;top:74px;bottom:0;z-index:10;overflow:auto;width:290px;transform:translateX(-100%);transition:transform .2s ease;padding:25px 20px}body.menu-open aside{transform:none}body.menu-open .scrim{display:block;position:fixed;inset:74px 0 0;background:#0009;z-index:9;width:100%}.reading-heading{padding:21px 24px}.stage{padding:0 60px 23px}.book img{max-height:calc(100dvh - 208px)}.reader-footer{width:calc(100% - 48px)}body.zoomed .prev{left:10px}body.zoomed .stage{max-height:calc(100dvh - 208px)}}
@media(max-width:540px){.topbar{padding:0 10px;gap:5px;height:66px}.tools button{font-size:23px;padding:6px;min-width:37px}.tools #fullscreen{display:none}.brand{font-size:13px}.brand small{font-size:8px}.workspace{min-height:calc(100dvh - 66px)}aside{top:66px}body.menu-open .scrim{top:66px}.reading-heading{padding:19px 18px;font-size:12px;align-items:center}.reading-heading>span:first-child{font-size:9px;letter-spacing:1px;max-width:45%}.reading-heading>span:last-child{text-align:right;max-width:55%}.stage{padding:4px 12px 68px;min-height:420px;align-items:center}.book img{max-height:calc(100dvh - 245px)}.turn{top:auto;bottom:10px;transform:none;width:47px;height:40px;font-size:28px}.prev{left:calc(50% - 58px)}.next{right:calc(50% - 58px)}.reader-footer{gap:18px;padding:15px 0;width:calc(100% - 36px)}.keyboard-hint{display:none}.mobile-hint{display:block;text-align:center;font-size:11px;color:#848b7a;margin:0 0 15px}body.spread:not(.zoomed) .book img{max-height:calc(100dvh - 245px)}body.zoomed .stage{padding:0 16px 60px;max-height:calc(100dvh - 245px)}body.zoomed .turn{top:auto;bottom:100px;transform:none}body.zoomed .book img{width:950px}.author{padding-top:30px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
