:root{color-scheme:dark;--shelf-bg: #22232a;--shelf-ink: #edf0f4;--shelf-muted: #aeb4bf;--shelf-blue-bright: #78a4e8;--shelf-paper: #e9edf1;--shelf-paper-ink: #202732;--shelf-rule: rgba(226, 234, 245, .14);--shelf-shadow: rgba(8, 13, 22, .52);--shelf-guide: rgba(255, 255, 255, .025);--shelf-guide-mobile: rgba(255, 255, 255, .035);--shelf-ghost: rgba(235, 240, 247, .025);--shelf-nav: rgba(20, 23, 30, .72);--cover-border: rgba(24, 31, 42, .2);--cover-inset: rgba(15, 28, 46, .15);--cover-reflect: rgba(238, 243, 249, .55);--cover-shadow: rgba(7, 13, 23, .65);--cover-slate: #bdc9d9;--cover-slate-ink: #28466f;--cover-blue: #93a9c7;--cover-blue-ink: #173a6c;--cover-paper: #dce2e8;--cover-paper-ink: #315785;--cover-deep: #263b5a;--cover-deep-ink: #c8d8ec;--cover-mist: #b5c1cf;--cover-mist-ink: #294f80;--cover-bone: #cfd5d9;--cover-bone-ink: #35557c;--cover-cobalt: #4e72a7;--cover-cobalt-ink: #edf2f8;--edge: #b7c0cb;--edge-light: #d0d6dd;--edge-dark: #9ea9b7;--board: #181a20;--board-dark: #15171c;--board-deep: #101217;--board-mid: #1e2026;--board-light: #30333a;--board-step: #292c32;--detail-ground: #c6dbe2;--detail-ink: #173246;--detail-copy: #36546a;--detail-muted: #5c788b;--detail-rule: rgba(26, 59, 78, .25);--detail-rule-soft: rgba(26, 59, 78, .14);--detail-surface: rgba(223, 235, 237, .34);--detail-paper: #dbe7e9;--detail-shadow: rgba(50, 78, 91, .24);--detail-button: #274f79;--detail-button-ink: #e9f0f1;--scene-bg: #263442;--scene-rail: #202c37;--scene-ink: #edf2f2;--scene-muted: #afbcc4;--scene-rule: rgba(228, 238, 241, .17);--scene-nav: rgba(20, 31, 42, .72);--scene-control: #e8eeee;--scene-control-ink: #223343;--scene-plane: rgba(223, 235, 238, .18);--scene-shadow: rgba(10, 17, 25, .58);--scene-contact: rgba(8, 14, 20, .52);--scene-board-top: #34363b;--scene-board-front: #1b1d22;--scene-board-mid: #26282e;--scene-board-edge: #0e1014;--theme-slate-bg: #263442;--theme-slate-rail: #202c37;--theme-slate-ink: #edf2f2;--theme-slate-muted: #afbcc4;--theme-blue-bg: #315b82;--theme-blue-rail: #294e70;--theme-blue-ink: #f1f4f2;--theme-blue-muted: #c9d7dc;--theme-paper-bg: #c4ced0;--theme-paper-rail: #b6c2c5;--theme-paper-ink: #243b4d;--theme-paper-muted: #526b79;--theme-paper-control: #2d4f6b;--theme-paper-control-ink: #edf2f1;--theme-deep-bg: #1d2d46;--theme-deep-rail: #18263b;--theme-deep-ink: #edf1f2;--theme-deep-muted: #a8b8c6;--theme-mist-bg: #6f8798;--theme-mist-rail: #60798b;--theme-mist-ink: #f3f5f2;--theme-mist-muted: #d5dedf;--theme-bone-bg: #c3c2b9;--theme-bone-rail: #b4b5ae;--theme-bone-ink: #263b49;--theme-bone-muted: #586b72;--theme-bone-control: #304d62;--theme-bone-control-ink: #f0f2ee;--theme-cobalt-bg: #3d608c;--theme-cobalt-rail: #34547a;--theme-cobalt-ink: #f1f4f3;--theme-cobalt-muted: #ced9de;--book-page-edge: #e2e6e1;font-family:Microsoft YaHei UI,PingFang SC,system-ui,sans-serif}.theme-slate{--scene-bg: var(--theme-slate-bg);--scene-rail: var(--theme-slate-rail);--scene-ink: var(--theme-slate-ink);--scene-muted: var(--theme-slate-muted);--scene-plane: rgba(213, 226, 232, .18)}.theme-blue{--scene-bg: var(--theme-blue-bg);--scene-rail: var(--theme-blue-rail);--scene-ink: var(--theme-blue-ink);--scene-muted: var(--theme-blue-muted);--scene-plane: rgba(225, 237, 239, .16)}.theme-paper{--scene-bg: var(--theme-paper-bg);--scene-rail: var(--theme-paper-rail);--scene-ink: var(--theme-paper-ink);--scene-muted: var(--theme-paper-muted);--scene-rule: rgba(30, 57, 73, .18);--scene-nav: rgba(231, 237, 237, .62);--scene-control: var(--theme-paper-control);--scene-control-ink: var(--theme-paper-control-ink);--scene-plane: rgba(246, 248, 243, .2);--scene-shadow: rgba(37, 55, 65, .34);--scene-contact: rgba(31, 49, 59, .34)}.theme-deep{--scene-bg: var(--theme-deep-bg);--scene-rail: var(--theme-deep-rail);--scene-ink: var(--theme-deep-ink);--scene-muted: var(--theme-deep-muted);--scene-plane: rgba(133, 161, 184, .16)}.theme-mist{--scene-bg: var(--theme-mist-bg);--scene-rail: var(--theme-mist-rail);--scene-ink: var(--theme-mist-ink);--scene-muted: var(--theme-mist-muted);--scene-plane: rgba(231, 238, 237, .16);--scene-shadow: rgba(25, 40, 49, .42)}.theme-bone{--scene-bg: var(--theme-bone-bg);--scene-rail: var(--theme-bone-rail);--scene-ink: var(--theme-bone-ink);--scene-muted: var(--theme-bone-muted);--scene-rule: rgba(34, 55, 65, .18);--scene-nav: rgba(235, 236, 230, .64);--scene-control: var(--theme-bone-control);--scene-control-ink: var(--theme-bone-control-ink);--scene-plane: rgba(246, 246, 238, .23);--scene-shadow: rgba(44, 52, 52, .32);--scene-contact: rgba(39, 48, 49, .32)}.theme-cobalt{--scene-bg: var(--theme-cobalt-bg);--scene-rail: var(--theme-cobalt-rail);--scene-ink: var(--theme-cobalt-ink);--scene-muted: var(--theme-cobalt-muted);--scene-plane: rgba(229, 238, 240, .16)}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}html,body{overflow-x:clip;background:var(--shelf-bg)}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--shelf-blue-bright);outline-offset:3px}.shelf-shell{min-height:100dvh;background:var(--scene-bg);color:var(--scene-ink);transition:background-color .74s cubic-bezier(.16,1,.3,1),color .5s ease}.shelf{position:relative;width:100%;height:100dvh;min-height:720px;overflow:clip;isolation:isolate}.shelf:before{position:absolute;top:0;bottom:0;left:50%;z-index:-3;width:1px;background:var(--scene-rule);box-shadow:-25vw 0 var(--scene-rule),25vw 0 var(--scene-rule);content:"";opacity:.16}.shelf:after{position:absolute;right:3vw;bottom:10vh;z-index:-2;color:var(--scene-plane);content:"PROJECT";font:700 clamp(120px,22vw,360px)/.8 Arial,sans-serif;letter-spacing:-.08em;pointer-events:none;opacity:.1}.shelf-grain{position:absolute;inset:0;z-index:50;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.shelf-skip{position:fixed;top:8px;left:8px;z-index:200;display:flex;min-height:44px;padding:11px 15px;align-items:center;background:var(--shelf-paper);color:var(--shelf-paper-ink);transform:translateY(-150%)}.shelf-skip:focus{transform:none}.shelf-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.shelf-header{position:absolute;z-index:40;top:28px;right:34px;left:34px;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:start;gap:24px}.shelf-brand{display:flex;width:fit-content;min-height:50px;padding:0;align-items:center;justify-content:flex-start;gap:10px;border:0;background:none;color:var(--scene-ink);cursor:pointer;text-align:left;transition:color .52s ease}.brand-mark{display:block;width:34px;height:34px;flex:0 0 auto;fill:#00b89c;filter:drop-shadow(0 5px 10px rgba(0,87,74,.16))}.shelf-brand-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center}.shelf-brand-copy strong{font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:19px;font-weight:600;letter-spacing:-.025em;line-height:1}.shelf-brand-copy small{margin-top:6px;color:var(--scene-muted);font-size:8px;letter-spacing:.13em;line-height:1;white-space:nowrap;transition:color .52s ease}.shelf-header nav{display:flex;height:50px;padding:3px;gap:2px;border:1px solid var(--scene-rule);border-radius:999px;background:var(--scene-nav);transition:background-color .64s ease,border-color .52s ease}.shelf-header nav button,.shelf-account button{min-height:44px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--scene-muted);cursor:pointer;font-size:11px;white-space:nowrap;transition:color .4s ease,background-color .4s ease}.shelf-header nav button:hover{color:var(--scene-ink)}.shelf-account{display:flex;justify-content:flex-end;gap:4px}.shelf-account button{min-height:44px}.shelf-account .is-primary{background:var(--scene-control);color:var(--scene-control-ink)}.shelf-home{background-color:var(--scene-bg);color:var(--scene-ink);transition:background-color .74s cubic-bezier(.16,1,.3,1),color .52s ease}.shelf-home:before{position:absolute;top:0;right:6%;z-index:0;width:42vw;height:72%;background:var(--scene-plane);clip-path:polygon(22% 0,100% 0,82% 100%,0 100%);content:"";opacity:.16;pointer-events:none;transition:background-color .74s cubic-bezier(.16,1,.3,1)}.shelf-stage{--board-height: 88px;--board-face: 27px;position:absolute;inset:82px 0 176px;z-index:5;perspective:1350px;perspective-origin:50% 42%}.shelf-book-field{z-index:2;position:absolute;inset:0;min-width:0;overflow:clip}.shelf-books{position:absolute;inset:0;pointer-events:none;transform-style:preserve-3d}.shelf-book{--book-w: clamp(164px, 17.5vw, 258px);--book-face: var(--cover-slate);--book-face-ink: var(--cover-slate-ink);position:absolute;bottom:calc(var(--board-height) + 14px);left:50%;width:var(--book-w);aspect-ratio:.686;padding:0;border:0;background:transparent;cursor:pointer;transform-style:preserve-3d;transform:translate(-50%);transform-origin:50% 100%;opacity:0;will-change:transform,opacity}.shelf-book[data-depth="3"]{pointer-events:none}.book-volume{position:absolute;inset:0;display:block;transform-style:preserve-3d;will-change:transform}.book-back{position:absolute;inset:2px -1px 1px 4px;z-index:0;display:block;border:1px solid var(--cover-border);border-radius:3px 7px 7px 3px;background:var(--book-face);box-shadow:0 20px 38px var(--scene-shadow);transform:translateZ(-8px)}.book-cover{position:absolute;inset:0;z-index:4;display:block;overflow:hidden;border:1px solid var(--cover-border);border-radius:2px 6px 6px 2px;background:var(--book-face);box-shadow:0 25px 42px var(--scene-shadow),inset 11px 0 20px var(--cover-inset),inset -1px 0 var(--cover-reflect),inset 0 1px #f1f6f729;color:var(--book-face-ink);text-align:left;transform:translateZ(10px) rotateY(-.6deg);transform-origin:0 50%;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform}.book-cover:before{position:absolute;inset:0;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 9 9'%3E%3Cpath d='M0 2.5h9M0 6.5h9M2.5 0v9M6.5 0v9' fill='none' stroke='%23f3f6f4' stroke-opacity='.14' stroke-width='.35'/%3E%3C/svg%3E");content:"";mix-blend-mode:soft-light;opacity:.14;pointer-events:none}.book-cover:after{position:absolute;top:0;right:2px;bottom:0;width:1px;background:#f2f7f84d;box-shadow:-3px 0 #101d2b17;content:"";pointer-events:none}.book-edge{position:absolute;top:5px;right:-7px;bottom:5px;z-index:2;width:16px;border:1px solid rgba(35,46,55,.16);border-radius:0 4px 4px 0;background:var(--edge);box-shadow:inset 3px 0 var(--edge-light),inset 6px 0 var(--edge-dark),inset 10px 0 #eff2eeb3;transform:translateZ(1px) rotateY(82deg);transform-origin:left center}.book-pages{position:absolute;inset:5px 1px 5px 7px;z-index:2;display:block;border:1px solid rgba(39,51,58,.18);border-radius:1px 5px 5px 1px;background:var(--book-page-edge);box-shadow:inset 11px 0 18px #1e2b331f,3px 0 0 var(--edge-light),6px 0 0 var(--edge-dark);opacity:1;transform:translateZ(3px);transform-origin:0 50%;will-change:transform,opacity}.book-pages i{position:absolute;right:-1px;left:auto;width:6px;height:1px;background:#2d3a3f29}.book-pages i:nth-child(1){top:24%}.book-pages i:nth-child(2){top:51%}.book-pages i:nth-child(3){top:77%}.book-spine{position:absolute;top:1px;bottom:1px;left:-7px;z-index:3;width:16px;border:1px solid var(--cover-border);border-radius:4px 1px 1px 4px;background:var(--book-face);box-shadow:inset -5px 0 8px #121f2b38,inset 1px 0 #f0f5f52e;transform:translateZ(3px) rotateY(-76deg);transform-origin:right center}.tone-blue{--book-face: var(--cover-blue);--book-face-ink: var(--cover-blue-ink)}.tone-paper{--book-face: var(--cover-paper);--book-face-ink: var(--cover-paper-ink)}.tone-deep{--book-face: var(--cover-deep);--book-face-ink: var(--cover-deep-ink)}.tone-mist{--book-face: var(--cover-mist);--book-face-ink: var(--cover-mist-ink)}.tone-bone{--book-face: var(--cover-bone);--book-face-ink: var(--cover-bone-ink)}.tone-cobalt{--book-face: var(--cover-cobalt);--book-face-ink: var(--cover-cobalt-ink)}.book-code{position:absolute;top:7%;left:9%;font-family:Consolas,monospace;font-size:7px;letter-spacing:.18em}.book-title{position:absolute;right:8%;bottom:7%;left:9%;font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:clamp(24px,2.6vw,40px);font-weight:600;letter-spacing:-.05em}.book-rule{position:absolute;top:6%;bottom:6%;left:6%;width:1px;background:currentColor;opacity:.32}.book-motif{position:absolute;top:18%;right:12%;left:13%;display:grid;aspect-ratio:1;place-items:center}.book-motif svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.15;opacity:.72}.shelf-book.is-active .book-cover{box-shadow:0 34px 58px var(--scene-shadow),inset 11px 0 20px var(--cover-inset),inset -1px 0 var(--cover-reflect),inset 0 1px #f1f6f733}.shelf-board{position:absolute;right:0;bottom:0;left:0;z-index:1;height:var(--board-height);pointer-events:none}.shelf-board-top{position:absolute;inset:0 0 var(--board-face);overflow:hidden;border-top:2px solid #514c46;background:linear-gradient(180deg,#55544f,#76736a 28%,#8a8578);box-shadow:inset 0 3px 5px #14121059,inset 0 -1px #b1a491}.shelf-board-top:after{position:absolute;inset:0;content:"";pointer-events:none;opacity:.2;background:repeating-linear-gradient(178deg,transparent 0 5px,rgba(38,28,21,.25) 6px,transparent 7px 13px)}.shelf-board-front{position:absolute;right:0;bottom:0;left:0;height:var(--board-face);border-top:2px solid #a69a86;border-bottom:3px solid #211c19;background:linear-gradient(180deg,#574a3e,#3c322c 36%,#302822);box-shadow:0 13px 20px #080c1161,inset 0 2px #dcc3a121}.shelf-cast-shadow{position:absolute;top:4px;left:50%;width:clamp(164px,17.5vw,258px);height:48px;transform-origin:50% 0}.shelf-cast-shadow i{position:absolute;inset:0 0 6px;display:block;background:linear-gradient(180deg,#0a0f1591,#0a0f1540);border-radius:3px 5px 12px 8px;transform:skew(-32deg) translate(-12px);filter:blur(3px);transform-origin:50% 0}.shelf-cast-shadow b{position:absolute;top:0;left:1%;width:98%;height:12px;border-radius:50%;background:#070c128f;filter:blur(4px)}.shelf-rail{position:absolute;z-index:30;right:34px;bottom:22px;left:34px;display:grid;height:128px;grid-template-rows:1fr 44px;grid-template-columns:minmax(0,1.4fr) auto minmax(260px,1fr);align-items:end;gap:12px 30px;isolation:isolate}.shelf-rail:before{position:absolute;inset:-22px -34px;z-index:-1;border-top:1px solid var(--scene-rule);background:var(--scene-rail);content:"";transition:background-color .74s cubic-bezier(.16,1,.3,1),border-color .52s ease}.shelf-copy{display:grid;grid-column:1 / -1;align-self:start;min-width:0;grid-template-columns:48px minmax(0,1fr);gap:12px}.written-text{white-space:pre}.shelf-copy>div{min-width:0;container-type:inline-size}.shelf-copy>span{white-space:nowrap;padding-top:7px;color:var(--scene-muted);font-family:Consolas,monospace;font-size:9px;letter-spacing:.12em}.shelf-copy h1{height:1.15em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:clamp(18px,6.5cqi,44px);font-weight:600;letter-spacing:-.035em;line-height:1.15}.shelf-copy p{height:18px;margin:8px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--scene-muted);font-size:11px;line-height:18px}.shelf-controls{grid-column:2;display:flex;align-items:center;gap:8px}.shelf-controls button{display:grid;min-width:44px;height:44px;padding:0;place-items:center;border:1px solid var(--scene-rule);border-radius:50%;background:transparent;color:var(--scene-ink);cursor:pointer}.shelf-controls svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.shelf-index{grid-column:3;display:flex;min-width:0;flex-direction:column;align-items:flex-end;gap:11px}.shelf-index>div{display:flex;gap:5px}.shelf-index button{display:grid;width:44px;height:44px;padding:0;place-items:center;border:0;background:transparent;cursor:pointer}.shelf-index button span{display:block;width:22px;height:1px;background:var(--scene-rule)}.shelf-index button[aria-selected=true] span,.shelf-index button[aria-pressed=true] span{height:2px;background:var(--scene-control)}.shelf-index>span{color:var(--scene-muted);font-size:8px;letter-spacing:.15em}.shelf-toast{position:fixed;z-index:100;right:22px;bottom:22px;max-width:min(360px,calc(100vw - 44px));padding:14px 17px;border-radius:4px;background:var(--shelf-paper);box-shadow:0 18px 40px var(--shelf-shadow);color:var(--shelf-paper-ink);font-size:13px}@media(max-width:980px){.shelf-header{grid-template-columns:1fr auto}.shelf-header nav{display:none}.shelf-rail{grid-template-columns:minmax(0,1fr) auto}.shelf-index{display:none}}@media(max-width:700px){.shelf:before{box-shadow:none;background:var(--shelf-guide-mobile)}.shelf:after{right:-8vw;bottom:5vh;font-size:45vw}.shelf-header{top:20px;right:18px;left:18px;gap:10px}.shelf-brand{gap:8px}.shelf-brand .brand-mark{width:30px;height:30px}.shelf-brand-copy strong{font-size:17px}.shelf-brand-copy small{font-size:7px;letter-spacing:.1em}.shelf-account button:first-child{display:none}.shelf-account .is-primary{min-height:44px;padding:0 15px}.shelf-stage{inset:76px 0 calc(38vh + 98px);perspective:900px}.shelf-book{--book-w: min(50vw, 210px);bottom:calc(var(--board-height) + 12px)}.shelf-book[data-depth="2"],.shelf-book[data-depth="3"]{pointer-events:none;opacity:0}.book-title{font-size:clamp(27px,8vw,34px)}.shelf-stage{--board-height: 64px;--board-face: 21px}.shelf-cast-shadow{width:min(50vw,210px);height:36px}.shelf-copy p{margin-top:8px;font-size:10px}.shelf-stage{bottom:266px}.shelf-rail{right:18px;bottom:18px;left:18px;min-height:230px;grid-template-columns:1fr auto;place-items:initial;align-items:end;gap:14px}.shelf-rail:before{right:-18px;bottom:-18px;left:-18px}.shelf-copy{display:grid;grid-column:1 / -1;grid-template-columns:38px minmax(0,1fr);align-self:start}.shelf-controls{grid-column:1}}@media(max-width:360px){.shelf-account .is-primary{padding:0 11px}.shelf-brand-copy small{max-width:122px;overflow:hidden;text-overflow:ellipsis}}.shelf-home{position:absolute;inset:0;z-index:1}.is-detail .shelf-home{pointer-events:none}.volume-detail-scene{position:absolute;inset:0;z-index:80;display:grid;width:100%;max-width:100%;min-width:0;min-height:100dvh;padding:clamp(24px,3vw,42px) clamp(24px,4vw,58px) clamp(24px,3vw,36px);grid-template-columns:minmax(0,1.14fr) minmax(360px,.86fr);grid-template-rows:auto minmax(0,1fr);gap:clamp(18px,3vw,54px);overflow-x:clip;overflow-y:hidden;background:transparent;isolation:isolate;color:var(--detail-ink);opacity:0;pointer-events:none;visibility:hidden}.is-detail .volume-detail-scene{opacity:1;pointer-events:auto;visibility:visible}.is-transitioning .volume-detail-scene{pointer-events:none}.detail-backdrop:after{position:absolute;right:0;bottom:-8vh;left:0;z-index:-2;height:32vh;border-top:1px solid var(--detail-rule-soft);background:var(--detail-surface);content:"";transform:skewY(-4deg);transform-origin:0 100%}.detail-backdrop{position:absolute;inset:0;z-index:-3;background:var(--detail-ground);pointer-events:none}.detail-frame{position:absolute;inset:14px;z-index:-1;border:1px solid var(--detail-rule-soft);pointer-events:none}.detail-header{z-index:2;display:flex;min-width:0;grid-column:1 / -1;align-items:flex-start;justify-content:space-between;gap:24px}.detail-identity,.detail-index{display:flex;gap:4px}.detail-identity{flex-direction:row;align-items:center;gap:11px}.detail-identity .brand-mark{width:32px;height:32px}.detail-identity-copy,.detail-index{display:flex;flex-direction:column;gap:4px}.detail-identity strong{font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:clamp(20px,1.7vw,26px);font-weight:600;letter-spacing:-.035em}.detail-identity span,.detail-index span,.detail-kicker,.detail-meta dt,.detail-controls p,.detail-page-nav span{color:var(--detail-muted);font-family:Consolas,Microsoft YaHei UI,monospace;font-size:9px;letter-spacing:.12em;line-height:1.45}.detail-index{align-items:flex-end;text-align:right}.detail-close{position:absolute;top:clamp(78px,13vh,122px);right:clamp(26px,4vw,58px);z-index:5;display:grid;width:48px;height:48px;padding:0 0 3px;border:1px solid var(--detail-rule);border-radius:50%;place-items:center;background:transparent;color:var(--detail-ink);cursor:pointer;font-size:26px;font-weight:300}.detail-book-bay{position:relative;z-index:1;display:grid;width:100%;max-width:100%;min-width:0;min-height:0;grid-column:1;align-items:center;justify-items:center;padding:4vh 5vw 7vh 0;perspective:1800px}.detail-book-experience{position:relative;z-index:1;display:grid;width:min(46vw,650px);max-width:100%;min-width:0;aspect-ratio:1.08;place-items:center;transform-style:preserve-3d}.detail-book-canvas-host{position:absolute;inset:0;z-index:2;border-radius:3px;outline:none;pointer-events:none;cursor:grab}.detail-book-canvas-host:focus-visible{outline:2px solid var(--detail-button);outline-offset:5px}.detail-book-canvas{display:block;width:100%;height:100%;background:transparent}.detail-book-experience.is-webgl-ready .detail-book-canvas-host{pointer-events:auto;touch-action:none}.detail-book-experience.is-webgl-ready .detail-book-fallback{opacity:0;pointer-events:none;visibility:hidden}.detail-book-experience.has-book-hover .detail-book-canvas-host{cursor:pointer}.detail-book-experience.is-book-dragging .detail-book-canvas-host{cursor:grabbing}.detail-book-experience.is-webgl-failed .detail-book-canvas-host{display:none}.detail-book{position:relative;z-index:1;width:min(31vw,390px);min-width:236px;padding:0;aspect-ratio:.67;border:0;background:transparent;cursor:pointer;transform-style:preserve-3d;will-change:transform,opacity}.detail-book .book-volume{position:absolute;inset:0}.detail-book .book-cover{box-shadow:0 32px 52px var(--detail-shadow),inset 9px 0 18px var(--cover-inset),inset -1px 0 var(--cover-reflect);transform:translateZ(12px)}.detail-book .book-pages{opacity:.92;transform:translateZ(7px)}.detail-fallback-spread{position:absolute;inset:4% -1% 4% 3%;z-index:0;display:flex;padding:9% 9% 8% 13%;border:1px solid var(--detail-rule-soft);background:var(--detail-paper);color:var(--detail-copy);flex-direction:column;align-items:flex-start;text-align:left;opacity:0;transform:translateZ(8px)}.detail-book-experience[data-open=true] .detail-fallback-spread{opacity:1}.detail-fallback-spread small{color:var(--detail-muted);font-family:Consolas,monospace;font-size:8px;letter-spacing:.12em}.detail-fallback-spread strong{margin-top:auto;font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:clamp(22px,2.2vw,34px);font-weight:600;letter-spacing:-.04em}.detail-fallback-spread>span{margin-top:8px;font-size:11px;letter-spacing:.06em}.detail-fallback-spread em{margin-top:16px;font-size:11px;font-style:normal;line-height:1.6}.detail-sheet{z-index:2;display:flex;width:100%;max-width:100%;min-width:0;max-height:calc(100dvh - clamp(100px,15vh,144px));padding:clamp(28px,4vw,62px) clamp(6px,1.3vw,22px) clamp(18px,3vh,32px) 0;grid-column:2;flex-direction:column;overflow-y:auto;will-change:transform,opacity}.detail-kicker{display:flex;margin:0;padding-right:66px;justify-content:space-between;gap:14px}.detail-kicker span:last-child{text-align:right}.detail-sheet h2{max-width:580px;min-width:0;margin:clamp(24px,4vh,46px) 0 0;font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:clamp(42px,5.2vw,76px);font-weight:600;letter-spacing:-.07em;line-height:.96;overflow-wrap:anywhere;text-wrap:balance}.detail-deck{max-width:560px;margin:clamp(22px,3vh,34px) 0 0;color:var(--detail-copy);font-size:clamp(15px,1.35vw,19px);line-height:1.68}.detail-note{max-width:560px;margin:12px 0 0;color:var(--detail-muted);font-size:12px;line-height:1.65}.detail-meta{display:grid;max-width:590px;margin:clamp(24px,4vh,42px) 0 0;padding:19px 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 26px;border-top:1px solid var(--detail-rule);border-bottom:1px solid var(--detail-rule)}.detail-meta div{min-width:0}.detail-meta dt{margin:0 0 7px}.detail-meta dd{margin:0;color:var(--detail-copy);font-size:12px;line-height:1.55}.detail-page-nav{display:grid;max-width:590px;margin-top:22px;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:16px}.detail-round-button{display:grid;width:44px;height:44px;padding:0;border:1px solid var(--detail-rule);border-radius:50%;place-items:center;background:transparent;color:var(--detail-ink);cursor:pointer}.detail-round-button:disabled{border-color:var(--detail-rule-soft);color:var(--detail-muted);cursor:not-allowed;opacity:.48}.detail-round-button svg,.detail-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.detail-page-nav p{display:flex;min-width:0;margin:0;flex-direction:column;align-items:center;gap:2px;text-align:center}.detail-page-nav strong{color:var(--detail-ink);font-family:Iowan Old Style,Songti SC,SimSun,serif;font-size:17px;font-weight:600}.detail-page-nav span{font-size:8px;letter-spacing:.09em}.detail-controls{display:flex;max-width:590px;margin-top:18px;padding-top:18px;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--detail-rule)}.detail-controls p{max-width:250px;margin:0;letter-spacing:.08em}.detail-controls>div,.detail-actions,.detail-team{display:flex;min-width:0;gap:7px}.detail-controls button,.detail-actions button,.detail-team button{min-height:44px;padding:0 14px;border:1px solid var(--detail-rule);border-radius:999px;background:transparent;color:var(--detail-ink);cursor:pointer;font-size:10px;white-space:nowrap}.detail-controls button:disabled{border-color:var(--detail-rule-soft);color:var(--detail-muted);cursor:not-allowed}.detail-team{max-width:590px;margin-top:16px}.detail-team button{flex:1;border-radius:3px}.detail-team button.is-selected{border-color:var(--detail-button);background:var(--detail-button);color:var(--detail-button-ink)}.detail-plans{max-width:590px;min-width:0}.detail-plan-copy{padding:16px 0 4px;line-height:1.7}.detail-plan-copy strong{font-size:14px;font-weight:600}.detail-plan-copy p{margin:7px 0;font-size:13px}.detail-plan-copy small{display:block;font-size:12px;opacity:.8}.detail-team button:focus-visible{outline:2px solid var(--detail-button);outline-offset:3px}.detail-actions{max-width:590px;margin-top:16px}.detail-actions button{display:flex;min-width:0;flex:1;align-items:center;justify-content:center;gap:8px}.detail-actions .is-primary{border-color:var(--detail-button);background:var(--detail-button);color:var(--detail-button-ink)}.shelf-open{min-width:auto!important;padding:0 17px!important;border-radius:999px!important;font-size:10px;white-space:nowrap}@media(max-width:980px){.volume-detail-scene{grid-template-columns:minmax(0,1fr) minmax(330px,.95fr);gap:22px}.detail-book-bay{padding-right:2vw}.detail-book{width:min(35vw,330px)}.detail-sheet{padding-top:52px}.detail-sheet h2{font-size:clamp(38px,5.5vw,58px)}.detail-controls{align-items:flex-start;flex-direction:column}}@media(max-width:700px){.shelf{min-height:100dvh}.volume-detail-scene{display:grid;height:100dvh;padding:20px 18px 28px;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(420px,50dvh) auto;gap:0;overflow-x:clip;overflow-y:auto;background:var(--detail-ground)}.volume-detail-scene:before{bottom:auto;top:20%;height:30vh;transform:skewY(-5deg)}.detail-frame{inset:8px}.detail-header{grid-column:1;padding-right:54px}.detail-identity strong{font-size:20px}.detail-index{display:none}.detail-close{top:20px;right:18px;width:44px;height:44px}.detail-book-bay{width:100%;min-height:420px;padding:26px 0 34px;grid-column:1;grid-row:2;align-items:start}.detail-book-experience{width:min(100%,430px);aspect-ratio:1.02}.detail-book{width:min(57vw,260px);min-width:0}.detail-sheet{max-height:none;padding:22px 0 10px;grid-column:1;grid-row:3;overflow:visible}.detail-kicker{padding-right:0;flex-direction:column;gap:3px}.detail-kicker span:last-child{text-align:left}.detail-sheet h2{margin-top:18px;font-size:clamp(37px,12vw,52px);line-height:.98}.detail-deck{margin-top:18px;font-size:15px}.detail-meta{margin-top:22px;gap:16px}.detail-page-nav{margin-top:20px}.detail-controls{gap:12px}.detail-controls>div{width:100%}.detail-controls button{flex:1}.detail-actions{flex-wrap:wrap}.detail-actions button{min-height:46px;flex-basis:160px}}@media(max-width:360px){.volume-detail-scene{padding-right:14px;padding-left:14px;grid-template-rows:auto minmax(350px,44dvh) auto}.detail-close{right:14px}.detail-book-bay{min-height:350px}.detail-book-experience{width:min(100%,360px)}.detail-book{width:min(60vw,232px)}.detail-meta{grid-template-columns:minmax(0,1fr)}.detail-page-nav{gap:8px}.detail-controls>div{gap:5px}.detail-controls button{padding:0 10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.book-volume,.book-cover,.book-pages,.shelf-books,.detail-book,.detail-sheet{will-change:auto}}
