:root{color-scheme:dark;--ink:#eef5f7;--muted:#93a6ad;--panel:#0b1b27;--line:#24404e;--accent:#ffd139;--paper:#f7f4ec}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#07131f;color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}button,input{font:inherit}.shelf{min-height:100vh;display:grid;grid-template-columns:minmax(280px,470px) minmax(360px,780px);gap:clamp(36px,7vw,110px);align-items:center;padding:clamp(30px,6vw,88px);overflow:hidden;background:radial-gradient(circle at 73% 26%,#244c60 0,transparent 34%),linear-gradient(145deg,#06101a,#0b2030)}.brand{position:relative;z-index:2}.eyebrow{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.18em}.brand h1{font-size:clamp(3rem,6vw,6rem);line-height:.98;margin:.2em 0}.brand>p{color:#b9c8cd;line-height:1.8}.open-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 18px}.open-button{border-radius:999px;padding:14px 20px;border:1px solid #ffffff24;color:white;cursor:pointer;font-weight:800;box-shadow:0 10px 24px #0004;transition:.22s ease}.open-button span{margin-left:14px}.open-button:hover,.open-button:focus-visible{transform:translateY(-3px);filter:brightness(1.08)}.primary{background:linear-gradient(135deg,#eeb400,#ff6b32)}.secondary{background:linear-gradient(135deg,#145fd0,#7b3fe4)}.edition-note{font-size:.78rem;letter-spacing:.08em}.edition-note span{color:var(--accent);font-size:1.15rem;font-weight:900}.hero-book{position:relative;width:min(44vw,520px);aspect-ratio:2551/3437;perspective:1800px;transform:rotateZ(2deg)}.hero-book img{width:100%;height:100%;object-fit:cover}.book-front,.book-back,.book-block{position:absolute;inset:0;border-radius:4px 14px 14px 4px;transform-style:preserve-3d}.book-back{transform:translate(22px,-18px) rotateY(-16deg);filter:saturate(.9) brightness(.8);box-shadow:25px 34px 70px #000b}.book-block{background:repeating-linear-gradient(0deg,#d7d2c8 0 1px,#f1eee7 1px 3px);transform:translate(10px,8px);box-shadow:10px 12px 0 #b8b1a3}.book-front{overflow:hidden;transform-origin:left;transform:rotateY(-7deg);box-shadow:-8px 4px 0 #061019,24px 30px 70px #000a;animation:cover-breathe 4.5s ease-in-out infinite}.book-spine{position:absolute;left:-8px;top:1%;height:98%;width:18px;border-radius:6px;background:linear-gradient(90deg,#02080d,#263743,#02080d);transform:rotateY(35deg)}.turn-cue{position:absolute;right:5%;bottom:-42px;color:#a9bbc2;font-size:.75rem;letter-spacing:.08em}@keyframes cover-breathe{50%{transform:rotateY(-12deg) translateX(-3px)}}.reader{height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:#061019}.toolbar,.pager{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#0a1924;border-color:var(--line);z-index:10}.toolbar{border-bottom:1px solid var(--line)}.pager{border-top:1px solid var(--line);justify-content:center}.reader-title{min-width:0;display:flex;flex-direction:column;flex:1}.reader-title span{color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions,.face-switch{display:flex;align-items:center;gap:6px}.icon-button,.text-button,.face-button{border:1px solid var(--line);background:#102633;color:var(--ink);border-radius:10px;min-width:42px;height:40px;padding:0 12px;cursor:pointer}.face-button{height:34px;font-size:.78rem}.face-button.active{background:var(--accent);border-color:var(--accent);color:#15202a;font-weight:900}.icon-button:hover,.text-button:hover,.face-button:hover{filter:brightness(1.18)}.reader-body{min-height:0;display:flex}.thumbs{width:228px;overflow:auto;padding:12px;background:#091721;border-right:1px solid var(--line);z-index:8}.thumb-section{padding:9px 8px 6px;color:var(--accent);font-size:.75rem;font-weight:900;letter-spacing:.06em}.thumb-item{display:grid;grid-template-columns:60px 1fr;gap:9px;width:100%;border:1px solid transparent;border-radius:8px;padding:7px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.thumb-item img{width:60px;border-radius:2px;background:#fff}.thumb-item strong{color:var(--ink)}.thumb-item.active{background:#173242;border-color:#31566a}.stage{position:relative;flex:1;min-width:0;overflow:auto;display:grid;place-items:center;padding:22px 62px;outline:none;touch-action:pan-y;background:radial-gradient(ellipse at 50% 42%,#284653,#10222d 43%,#07131f 78%)}.desk-shadow{position:absolute;width:min(82%,1020px);height:16%;bottom:8%;border-radius:50%;background:#000b;filter:blur(30px)}.book-stage{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;perspective:2400px;transform-style:preserve-3d}.spread{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;filter:drop-shadow(0 22px 32px #000b);transform-style:preserve-3d;transition:transform .24s ease}.spread:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:26px;translate:-50% 0;background:linear-gradient(90deg,#0003,transparent 42%,#fff2 53%,#0004);pointer-events:none;z-index:3}.spread.single:after{display:none}.spread.zoomed{transform:scale(1.65);cursor:zoom-out}.page-wrap{position:relative;max-width:50%;max-height:calc(100vh - 166px);background:var(--paper);overflow:hidden}.page-wrap.left{transform:rotateY(1.2deg);transform-origin:right}.page-wrap.right{transform:rotateY(-1.2deg);transform-origin:left}.page-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 18px #0002}.page{display:block;max-width:100%;max-height:calc(100vh - 166px);width:auto;height:auto;background:#fff;user-select:none}.spread.single .page-wrap{max-width:100%}.spread.single .page{max-width:100%}.flip-layer{position:absolute;inset:0;pointer-events:none;z-index:7;transform-style:preserve-3d}.flip-sheet{position:absolute;top:0;width:50%;height:100%;transform-style:preserve-3d;transition:transform .82s cubic-bezier(.35,.01,.18,1);will-change:transform}.flip-sheet.mobile{left:0;width:100%}.flip-sheet.next{right:0;transform-origin:left}.flip-sheet.prev{left:0;transform-origin:right;transform:rotateY(-180deg)}.flip-sheet.next.go{transform:rotateY(-180deg)}.flip-sheet.prev.go{transform:rotateY(0deg)}.sheet-face{position:absolute;inset:0;backface-visibility:hidden;background:var(--paper);overflow:hidden;box-shadow:0 6px 28px #0007}.sheet-face img{width:100%;height:100%;object-fit:contain;background:white}.sheet-back{transform:rotateY(180deg)}.flip-sheet.next .sheet-front:after,.flip-sheet.prev .sheet-back:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#0007);animation:paper-shadow .82s ease}.flip-sheet.prev .sheet-back:after{background:linear-gradient(90deg,#0007,transparent)}@keyframes paper-shadow{0%,100%{opacity:.1}50%{opacity:.7}}.nav{position:absolute;top:50%;translate:0 -50%;z-index:9;width:46px;height:74px;border:1px solid #ffffff22;border-radius:12px;background:#05111bcc;color:white;font-size:2.7rem;cursor:pointer}.prev{left:10px}.next{right:10px}.nav:disabled{opacity:.22;cursor:default}.zoom-hint{position:absolute;bottom:8px;left:50%;translate:-50% 0;color:#a9bbc2;font-size:.72rem;background:#07131fcc;padding:5px 10px;border-radius:99px;pointer-events:none}.pager input[type=range]{width:min(620px,52vw);accent-color:var(--accent)}.pager label{display:flex;align-items:center;color:var(--muted);font-size:.85rem}#page-input{width:54px;background:#102633;border:1px solid var(--line);border-radius:8px;color:white;text-align:center;padding:7px}.hidden{display:none!important}@media(max-width:820px){.shelf{grid-template-columns:1fr;padding:28px 20px 70px;align-content:start}.brand h1{font-size:3rem}.hero-book{width:min(76vw,390px);margin:10px auto 0;grid-row:2}.open-actions{margin-top:22px}.toolbar{padding:8px}.reader-title span{display:none}.toolbar-actions{gap:4px}.text-button{padding:0 8px}.face-switch{position:absolute;left:50%;translate:-50% 0;bottom:-40px;z-index:12;background:#0a1924;padding:4px 7px;border-radius:0 0 10px 10px}.thumbs{position:fixed;inset:57px auto 55px 0;width:min(78vw,300px);z-index:11;box-shadow:12px 0 30px #000c}.stage{padding:50px 38px 14px}.page-wrap{max-width:100%;max-height:calc(100vh - 178px)}.page{max-height:calc(100vh - 178px)}.spread .page-wrap:nth-child(2){display:none}.spread:after{display:none}.nav{width:34px;height:60px;font-size:2rem}.prev{left:2px}.next{right:2px}.zoom-hint{display:none}.pager{padding:8px}.pager input[type=range]{width:43vw}.pager .icon-button{display:none}}@media(prefers-reduced-motion:reduce){.book-front{animation:none}.flip-sheet{transition-duration:.01ms}}
