:root{--ink: #4a3728;--ink-soft: #6b5544;--leather: #7a4f2c;--leather-dark: #5e3a1e;--leather-light: #96683f;--paper: #fbf6e9;--paper-line: #e8dfc8;--white: #ffffff;--book-w: min(30rem, 80vw);--corner: 5px;--cam-zoom: clamp(1, calc(100vh / (.66 * var(--book-w) * 1.42)), 2.2);--flip-ease: cubic-bezier(.6, .05, .35, 1);--flip-time: 1.25s;--cover-flip-time: 2.5s;--pan-time: 1s;--debug-slow: 1;--spine-w: 18px;--spine-hole-size: 7px;--spine-hole-gap: 28px;--spine-hole-count: 15;--spine-wire-gap: 3px;--spine-hole-offset: 10px;--cover-overlap: 4px}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:Caveat,Courier New,Courier,monospace;color:var(--ink);background:var(--white);overflow:hidden;-webkit-font-smoothing:antialiased}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.sketchy{filter:url(#sq0)}body[data-boil="1"] .sketchy{filter:url(#sq1)}body[data-boil="2"] .sketchy{filter:url(#sq2)}.page-sheet .face,.cover3d .face,.book-base3d .face{filter:url(#sq0)}body[data-boil="1"] .page-sheet .face,body[data-boil="1"] .cover3d .face,body[data-boil="1"] .book-base3d .face{filter:url(#sq1)}body[data-boil="2"] .page-sheet .face,body[data-boil="2"] .cover3d .face,body[data-boil="2"] .book-base3d .face{filter:url(#sq2)}@media(prefers-reduced-motion:reduce){.sketchy{filter:url(#sq0)!important}.page-sheet .face,.cover3d .face,.book-base3d .face{filter:url(#sq0)!important}}body[data-debug-pause=true],body[data-debug-pause=true] *{animation-play-state:paused!important;transition:none!important}body[data-debug-pause=true] .sketchy,body[data-debug-pause=true] .page-sheet .face,body[data-debug-pause=true] .cover3d .face,body[data-debug-pause=true] .book-base3d .face{filter:url(#sq0)!important}body[data-debug-linear]{--flip-ease: linear}body[data-debug-linear] .book,body[data-debug-linear] .cover-label,body[data-debug-linear] .toc-item,body[data-debug-linear] .corner-link{transition-timing-function:linear!important}.scene{height:100%;display:grid;align-items:start;justify-items:center;padding-top:4vh;perspective:1900px;overflow:hidden}.float{transform:scale(var(--cam-zoom));transform-origin:50% 0%;transition:transform var(--pan-time) var(--flip-ease)}.book{position:relative;width:var(--book-w);height:calc(var(--book-w) * 1.42);max-height:86vh;transition:transform var(--pan-time) var(--flip-ease);overflow:visible;transform:translate(0)}body[data-focus=left] .book,body[data-focus=back] .book{transform:translate(calc(var(--book-w) - var(--spine-w)))}.spine-back{position:absolute;left:0;top:0;z-index:1;pointer-events:none}.spine{position:absolute;left:0;top:0;z-index:30;pointer-events:none}.page-wires{position:absolute;top:0;width:var(--spine-hole-size);height:100%;overflow:visible;pointer-events:none;z-index:10}.face--front .page-wires{left:var(--spine-hole-offset)}.face--back .page-wires{right:var(--spine-hole-offset)}.page-sheet .page-wires{top:-10px}.book-base-holes{position:absolute;left:calc(var(--spine-hole-offset) + var(--cover-overlap));top:0;width:var(--spine-hole-size);height:100%;overflow:visible;pointer-events:none;z-index:10}.book-base-holes--back{left:auto;right:calc(var(--spine-hole-offset) + var(--cover-overlap))}.book-base3d{position:absolute;inset:0 0 0 var(--spine-w);transform-origin:left center;transform-style:preserve-3d;transition:transform var(--cover-flip-time) var(--flip-ease);z-index:1}.book-base3d.is-flipped{transform:rotateY(-180deg) translate(20px)}.book-base-face{position:absolute;inset:0;border-radius:var(--corner);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:none}.leather{background-color:var(--leather);background-image:radial-gradient(ellipse 26% 18% at 22% 30%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 30% 22% at 75% 62%,rgba(0,0,0,.08),transparent 60%),radial-gradient(ellipse 20% 16% at 55% 15%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 24% 20% at 35% 82%,rgba(0,0,0,.07),transparent 60%),repeating-radial-gradient(circle at 30% 40%,transparent 0 5px,rgba(0,0,0,.035) 5px 6px),repeating-radial-gradient(circle at 70% 70%,transparent 0 7px,rgba(255,255,255,.028) 7px 8px),radial-gradient(ellipse 120% 100% at 50% 35%,var(--leather-light),var(--leather) 55%,var(--leather-dark))}.page-sheet{position:absolute;inset:0 0 0 var(--spine-w);transform-origin:left center;transform-style:preserve-3d;transition:transform var(--flip-time) var(--flip-ease)}.page-sheet.is-flipped{transform:rotateY(-180deg) translate(20px)}.face{position:absolute;inset:0;border-radius:var(--corner);backface-visibility:hidden;-webkit-backface-visibility:hidden}.face--back{transform:rotateY(180deg);cursor:pointer}.page-sheet .face--front,.page-sheet .face--back{inset:10px 12px 12px 0;border-radius:2px;box-shadow:2px 2px #4a37281f,4px 4px #4a372814,inset 0 0 40px #4a37280d}.cover3d{position:absolute;inset:0 0 0 var(--spine-w);transform-origin:left center;transform-style:preserve-3d;transition:transform var(--cover-flip-time) var(--flip-ease)}.cover3d.is-flipped{transform:rotateY(-180deg) translate(20px)}.face--front{cursor:pointer;display:grid;justify-items:center;align-content:start}.cover-label{margin-top:17%;background:var(--paper);width:auto;min-width:48%;max-width:85%;padding:1.1rem 2rem 1.3rem;text-align:center;border:2.5px solid var(--ink);border-radius:3px 4px;transform:rotate(-.8deg);transition:transform calc(.35s * var(--debug-slow)) var(--flip-ease)}.face--front:hover .cover-label,.face--front:focus-visible .cover-label{transform:rotate(calc(var(--hover-on) * .2deg)) scale(calc(1 + var(--hover-on) * .015))}.cover-label h1{margin:0;font-size:clamp(1.4rem,4.5vw,2.2rem);font-weight:400;letter-spacing:.03em}.paper{background-color:var(--paper);background-image:radial-gradient(ellipse at 20% 30%,rgba(180,160,130,.25) 0%,transparent 60%),radial-gradient(ellipse at 75% 65%,rgba(180,160,130,.2) 0%,transparent 55%);clip-path:inset(0);padding:2.2rem 2.4rem 2rem 2.8rem;display:flex;flex-direction:column}.page-back{background-color:var(--paper);background-image:radial-gradient(ellipse at 20% 30%,rgba(180,160,130,.25) 0%,transparent 60%),radial-gradient(ellipse at 75% 65%,rgba(180,160,130,.2) 0%,transparent 55%)}.page-back[role=button],.page-sheet .face--front[role=button]{cursor:pointer}.page-head{flex:none}.page-title{margin:0;font-size:clamp(1.7rem,5vw,2.3rem);font-weight:400}.page-subtitle{margin:.6rem 0 0;font-size:clamp(1.2rem,3.6vw,1.6rem);font-weight:400;color:var(--ink-soft);opacity:.7;letter-spacing:.04em}.page-body{margin-top:.6rem;font-size:clamp(.75rem,2vw,.95rem);line-height:1.25;color:var(--ink-soft);max-width:48ch}.page-body:first-of-type{margin-top:2rem}.zh{font-family:ZCOOL KuaiLe,sans-serif;font-size:.85em}.about-photo{position:absolute;top:1.2rem;right:2rem;width:clamp(60px,16vw,110px);height:auto;object-fit:cover;border-radius:3px;opacity:.9;pointer-events:none}.page-indicator{position:absolute;top:1.2rem;right:2rem;font-size:clamp(.7rem,2vw,.85rem);color:var(--ink-soft);opacity:.6;pointer-events:none}.photo-gallery{margin-top:1.2rem;display:flex;flex-direction:row;gap:.8rem;flex:1;align-items:flex-start}.photo-primary{width:50%;height:auto;object-fit:contain;border-radius:3px;opacity:.92}.photo-stack{display:flex;flex-direction:column;gap:.5rem;width:23%;margin-right:5%}.photo-secondary{width:100%;height:auto;object-fit:cover;border-radius:3px;opacity:.9}.photo-small{width:60%}.toc{margin-top:2.4rem;display:flex;flex-direction:column;gap:.4rem}.toc-item{appearance:none;background:none;border:none;font:inherit;color:var(--ink);cursor:pointer;display:flex;align-items:baseline;gap:.7rem;font-size:clamp(1.05rem,3vw,1.3rem);padding:.45rem .5rem;border-radius:2px;text-align:left;transition:transform calc(.22s * var(--debug-slow)) var(--flip-ease),background-color calc(.2s * var(--debug-slow)) var(--flip-ease)}.toc-item:hover,.toc-item:focus-visible{background:rgba(122,79,44,calc(var(--hover-on) * .07));transform:translate(calc(var(--hover-on) * 6px)) rotate(calc(var(--hover-on) * -.5deg));outline:none}.toc-item:active{transform:translate(calc(var(--hover-on) * 6px)) scale(calc(1 - var(--hover-on) * .03))}.blank-note{margin:auto;color:var(--ink-soft);opacity:.55;font-size:1.2rem;transform:rotate(-1deg)}.corner-link{appearance:none;background:none;border:none;font:inherit;color:var(--ink-soft);cursor:pointer;position:absolute;bottom:.55rem;left:1.6rem;font-size:1.05rem;opacity:.75;padding:.2rem .4rem;transition:opacity calc(.2s * var(--debug-slow)) var(--flip-ease),transform calc(.2s * var(--debug-slow)) var(--flip-ease)}.corner-link:hover,.corner-link:focus-visible{opacity:calc(.75 + var(--hover-on) * .25);transform:translate(calc(var(--hover-on) * -3px));outline:none}.corner-link--in-note{position:static;display:inline-block;margin-top:1rem;padding-left:0;transform:none!important}.suede{background-color:#8a5f38;background-image:repeating-radial-gradient(circle at 40% 30%,transparent 0 6px,rgba(0,0,0,.03) 6px 7px),radial-gradient(ellipse 130% 110% at 50% 40%,#96683f,#7d5330 60%,#6b4527);display:grid;place-items:center;padding:2rem}.note{position:absolute;left:50%;top:33%;transform:translate(-50%,-50%) rotate(-1.2deg);background:var(--paper);border:2.5px solid var(--ink);border-radius:3px;padding:1.4rem 2rem 1.6rem;width:min(21rem,90%)}.note h2{margin:0 0 .8rem;font-size:1.9rem;font-weight:400}.contact-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;font-size:1.15rem}.contact-lines li{display:flex;gap:.8rem;align-items:baseline;border-bottom:2px dotted rgba(74,55,40,.25);padding-bottom:.25rem}.contact-lines .k{color:var(--ink-soft);min-width:5.2rem;font-size:.95em}.contact-lines .v{color:var(--ink);opacity:.65;font-style:italic}.contact-lines .v a{color:inherit;text-decoration:none;border-bottom:1.5px solid rgba(74,55,40,.3);transition:border-color .2s,opacity .2s}.contact-lines .v a:hover,.contact-lines .v a:focus-visible{opacity:1;border-bottom-color:var(--ink)}.email-obfuscator{opacity:1;font-style:italic;line-height:1}.email-reveal{appearance:none;position:relative;display:inline-block;width:min(13rem,48vw);max-width:48vw;height:1.35em;margin:0;padding:0;background:transparent;border:0;color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;line-height:1;vertical-align:-.26em}.email-canvas{display:block;width:100%;height:100%;font:inherit;opacity:0;transform:translateY(.08em);transition:opacity calc(.18s * var(--debug-slow)) ease}.email-mask{position:absolute;left:0;top:0;bottom:0;max-width:100%;pointer-events:none}.email-scribble{position:absolute;inset:-.15rem -.2rem -.05rem;color:var(--ink-soft);pointer-events:none;overflow:visible}.email-scribble path{fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1.08;stroke-dashoffset:0;transition:stroke-dashoffset calc(.7s * var(--debug-slow)) var(--flip-ease),opacity calc(.12s * var(--debug-slow)) ease}.email-reveal-label,.email-copied-label{position:absolute;inset:0;display:grid;place-items:center;font:inherit;line-height:inherit;opacity:0;transform:scale(.96);pointer-events:none;transition:opacity calc(.25s * var(--debug-slow)) ease,transform calc(.25s * var(--debug-slow)) ease}.email-reveal-label{color:var(--paper);text-shadow:0 1px 0 rgba(74,55,40,.4)}.email-copied-label{left:var(--copied-left, 0px);right:auto;width:max-content;display:block;color:var(--ink-soft);text-align:center;transform:translateY(.17em) scale(.96);transform-origin:center}.email-reveal:not(.is-revealed):not(.is-concealing):hover .email-reveal-label,.email-reveal:not(.is-revealed):not(.is-concealing):focus-visible .email-reveal-label{opacity:1;transform:rotate(-.7deg) scale(1.03)}.email-reveal:focus-visible{outline:1.5px dotted var(--ink-soft);outline-offset:2px}.email-reveal.is-revealed{cursor:pointer}.email-reveal.is-revealed .email-canvas{opacity:.7;transition-delay:calc(.2s * var(--debug-slow))}.email-reveal.is-concealing .email-canvas{transition-delay:calc(.08s * var(--debug-slow))}.email-reveal.is-copying .email-canvas,.email-reveal.is-copied .email-canvas{opacity:0;transition-delay:0s}.email-reveal.is-copied .email-copied-label{opacity:1;transform:translateY(.17em) rotate(-.7deg) scale(1.03)}.email-reveal.is-conceal-starting .email-scribble path{stroke-dashoffset:1.08;opacity:1;transition:none}.email-reveal.is-revealed .email-scribble path{stroke-dashoffset:-1.08;opacity:0;transition:stroke-dashoffset calc(.7s * var(--debug-slow)) var(--flip-ease),opacity calc(.2s * var(--debug-slow)) ease calc(.55s * var(--debug-slow))}.email-reveal.is-revealed .email-mask{pointer-events:none}.email-reveal.is-revealed .email-reveal-label,.email-reveal.is-concealing .email-reveal-label,.email-reveal.is-copying .email-reveal-label,.email-reveal.is-copied .email-reveal-label{opacity:0;transform:scale(.96)}.contact-icons{margin-top:.2rem}.contact-icon-row{display:flex;gap:1rem;align-items:center;font-style:normal}.contact-icon{opacity:.55;transition:opacity .2s,transform .2s;display:inline-flex}.contact-icon img{width:22px;height:22px;display:block}.contact-icon:hover,.contact-icon:focus-visible{opacity:1;transform:scale(1.15)}@media(max-width:42rem){body[data-view=start][data-focus=left] .book{transform:translate(calc(var(--book-w) / 2 + 4vw))}body[data-view=back-outside] .book{transform:translate(calc(var(--book-w) + var(--spine-w)))}}@media(max-width:42rem),(orientation:portrait),(max-aspect-ratio:1/1){.float{transform:scale(1)}.note{top:50%}}:root{--bound-strip-clearance: 3px;--seam-hole-clearance: 3px;--bound-strip-w: calc(var(--spine-hole-offset) + var(--spine-hole-size) + var(--bound-strip-clearance) + var(--seam-hole-clearance));--cover-bound-strip-w: calc(var(--cover-overlap) + var(--bound-strip-w));--base-bound-strip-w: var(--cover-bound-strip-w);--seam-cleanup: 4px;--page-face-w: calc(var(--book-w) - var(--spine-w) - 12px);--cover-face-w: calc(var(--book-w) - var(--spine-w) + var(--cover-overlap))}.page-face--strip,.cover-face--strip,.book-base-face--strip{display:block;padding:0;clip-path:none}.page-face--main.paper{padding-left:max(1.2rem,calc(2.8rem - var(--bound-strip-w)))}.page-sheet--strip,.page-sheet--main,.cover3d--strip,.cover3d--main,.book-base3d--strip,.book-base3d--main{transform-style:preserve-3d}.page-sheet--strip,.cover3d--strip,.book-base3d--strip{pointer-events:none}.page-sheet--strip,.cover3d--strip,.book-base3d--strip{z-index:var(--rank);transition:z-index 0s 0s}.page-sheet--strip.is-flipped,.cover3d--strip.is-flipped,.book-base3d--strip.is-flipped{z-index:calc(var(--top-rank) + 1 - var(--rank));transition:z-index 0s 0s}.page-sheet--main,.cover3d--main,.book-base3d--main{z-index:calc(30 + var(--rank));transition:z-index 0s 0s}.page-sheet--main.is-flipped,.cover3d--main.is-flipped,.book-base3d--main.is-flipped{z-index:calc(30 + var(--top-rank) + 1 - var(--rank));transition:z-index 0s 0s}.page-sheet--strip.is-turning,.page-sheet--main.is-turning,.page-sheet--strip.is-flipped.is-turning,.page-sheet--main.is-flipped.is-turning{transition:transform var(--flip-time) var(--flip-ease),z-index 0s var(--flip-half-time)}.cover3d--strip.is-turning,.book-base3d--strip.is-turning,.cover3d--main.is-turning,.book-base3d--main.is-turning,.cover3d--strip.is-flipped.is-turning,.book-base3d--strip.is-flipped.is-turning,.cover3d--main.is-flipped.is-turning,.book-base3d--main.is-flipped.is-turning{transition:transform var(--cover-flip-time) var(--flip-ease),z-index 0s var(--cover-flip-half-time)}.cover3d--main.is-flipped{pointer-events:none}.cover3d--main.is-flipped .face--back,body[data-view=start][data-focus=left] .cover3d--main{pointer-events:auto}body[data-view=back-inside] .book-base3d--main,body[data-view=back-outside] .book-base3d--main{cursor:pointer}body[data-view=cover] .book-base3d--main{cursor:default}.page-sheet--strip .face--front,.page-sheet--strip .face--back{inset:10px auto 12px 0;width:calc(var(--bound-strip-w) + var(--seam-cleanup));box-shadow:2px 2px #4a37281f,4px 4px #4a372814}.page-sheet--main .face--front,.page-sheet--main .face--back{inset:10px 12px 12px calc(var(--bound-strip-w) - var(--seam-cleanup));box-shadow:2px 2px #4a37281f,4px 4px #4a372814}.page-sheet--main .face--front{clip-path:inset(0 0 0 var(--seam-cleanup))}.page-sheet--main .face--back{clip-path:inset(0 var(--seam-cleanup) 0 0)}.page-sheet--strip .face--front{border-radius:2px 0 0 2px}.page-sheet--main .face--front,.page-sheet--strip .face--back{border-radius:0 2px 2px 0}.page-sheet--main .face--back{border-radius:2px 0 0 2px}.page-sheet--strip .page-face,.page-sheet--main .page-face{background-size:var(--page-face-w) 100%}.page-sheet--strip .page-face{background-position:0 0}.page-sheet--main .page-face{background-position:calc(0px - var(--bound-strip-w) + var(--seam-cleanup)) 0}.page-sheet--strip .face--back{background-position:calc(var(--bound-strip-w) - var(--page-face-w) + var(--seam-cleanup)) 0}.page-sheet--main .face--back{background-position:calc(0px - var(--bound-strip-w) + var(--seam-cleanup)) 0}.page-sheet--main:after{content:"";position:absolute;top:10px;bottom:12px;left:calc(var(--bound-strip-w) - var(--seam-cleanup));width:var(--seam-cleanup);pointer-events:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(180deg);z-index:80;background-color:var(--paper);background-image:radial-gradient(ellipse at 20% 30%,rgba(180,160,130,.25) 0%,transparent 60%),radial-gradient(ellipse at 75% 65%,rgba(180,160,130,.2) 0%,transparent 55%);background-size:var(--page-face-w) 100%;background-position:12px 0}.page-sheet--main:before{content:"";position:absolute;top:10px;bottom:12px;left:calc(var(--bound-strip-w) - var(--seam-cleanup) + 1px);width:var(--seam-cleanup);pointer-events:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;z-index:80;background-color:var(--paper);background-image:radial-gradient(ellipse at 20% 30%,rgba(180,160,130,.25) 0%,transparent 60%),radial-gradient(ellipse at 75% 65%,rgba(180,160,130,.2) 0%,transparent 55%);background-size:var(--page-face-w) 100%;background-position:calc(0px - var(--bound-strip-w) + var(--seam-cleanup)) 0}.page-sheet--strip .page-wires{top:-10px}.page-sheet--strip .face--front .page-wires{left:var(--spine-hole-offset)}.page-sheet--strip .face--back .page-wires{right:var(--spine-hole-offset)}.page-sheet--main .page-wires,.cover3d--main .page-wires{display:none}.cover3d--strip .face--front,.cover3d--strip .face--back{inset:0 auto 0 calc(0px - var(--cover-overlap));width:calc(var(--cover-bound-strip-w) + var(--seam-cleanup))}.cover3d--main .face--front,.cover3d--main .face--back{inset:0 0 0 calc(var(--bound-strip-w) - var(--seam-cleanup))}.cover3d--main .face--back{clip-path:inset(0 var(--seam-cleanup) 0 0)}.cover3d--main:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--bound-strip-w) - var(--seam-cleanup) - 1px);width:var(--seam-cleanup);pointer-events:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;z-index:80;background-color:var(--leather);background-image:radial-gradient(ellipse 26% 18% at 22% 30%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 30% 22% at 75% 62%,rgba(0,0,0,.08),transparent 60%),radial-gradient(ellipse 20% 16% at 55% 15%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 24% 20% at 35% 82%,rgba(0,0,0,.07),transparent 60%),repeating-radial-gradient(circle at 30% 40%,transparent 0 5px,rgba(0,0,0,.035) 5px 6px),repeating-radial-gradient(circle at 70% 70%,transparent 0 7px,rgba(255,255,255,.028) 7px 8px),radial-gradient(ellipse 120% 100% at 50% 35%,var(--leather-light),var(--leather) 55%,var(--leather-dark));background-size:var(--cover-face-w) 100%;background-position:calc(0px - var(--cover-bound-strip-w) + var(--seam-cleanup)) 0}.cover3d--strip .face--front .page-wires{left:calc(var(--spine-hole-offset) + var(--cover-overlap))}.cover3d--strip .face--back .page-wires{right:calc(var(--spine-hole-offset) + var(--cover-overlap))}.cover3d--strip .cover-face,.cover3d--main .cover-face{background-size:var(--cover-face-w) 100%}.cover3d--strip .cover-face{background-position:0 0}.cover3d--main .cover-face{background-position:calc(0px - var(--cover-bound-strip-w) + var(--seam-cleanup)) 0}.cover3d--strip .face--back{background-position:calc(var(--cover-bound-strip-w) - var(--cover-face-w) + var(--seam-cleanup)) 0}.cover3d--main .face--back{background-position:0 0}.book-base3d--strip .book-base-face.face--front,.book-base3d--strip .book-base-face.face--back{inset:0 auto 0 calc(0px - var(--cover-overlap));width:calc(var(--base-bound-strip-w) + var(--seam-cleanup))}.book-base3d--main .book-base-face.face--front,.book-base3d--main .book-base-face.face--back{inset:0 0 0 calc(var(--bound-strip-w) - var(--seam-cleanup))}.book-base3d--main .book-base-face.face--front{clip-path:inset(0 0 0 var(--seam-cleanup))}.book-base3d--strip .book-base-face,.book-base3d--main .book-base-face{background-size:var(--cover-face-w) 100%}.book-base3d--strip .book-base-face{background-position:0 0}.book-base3d--main .book-base-face{background-position:calc(0px - var(--cover-bound-strip-w) + var(--seam-cleanup)) 0}.book-base3d--strip .face--back{background-position:calc(var(--base-bound-strip-w) - var(--cover-face-w) + var(--seam-cleanup)) 0}.book-base3d--main .face--back{background-position:0 0}.book-base3d--strip .face--front .book-base-holes{left:calc(var(--spine-hole-offset) + var(--cover-overlap))}.book-base3d--strip .face--back .book-base-holes--back{right:calc(var(--spine-hole-offset) + var(--cover-overlap))}.book-base3d--main:after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--bound-strip-w) - var(--cover-overlap) - 1px);width:var(--cover-overlap);pointer-events:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(180deg);z-index:80;background-color:var(--leather);background-image:radial-gradient(ellipse 26% 18% at 22% 30%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 30% 22% at 75% 62%,rgba(0,0,0,.08),transparent 60%),radial-gradient(ellipse 20% 16% at 55% 15%,rgba(255,255,255,.05),transparent 60%),radial-gradient(ellipse 24% 20% at 35% 82%,rgba(0,0,0,.07),transparent 60%),repeating-radial-gradient(circle at 30% 40%,transparent 0 5px,rgba(0,0,0,.035) 5px 6px),repeating-radial-gradient(circle at 70% 70%,transparent 0 7px,rgba(255,255,255,.028) 7px 8px),radial-gradient(ellipse 120% 100% at 50% 35%,var(--leather-light),var(--leather) 55%,var(--leather-dark));background-size:var(--cover-face-w) 100%;background-position:calc(var(--cover-bound-strip-w) - var(--cover-face-w)) 0}.cover3d--strip .face--front,.book-base3d--strip .book-base-face.face--front{border-radius:var(--corner) 0 0 var(--corner)}.cover3d--main .face--front,.book-base3d--main .book-base-face.face--front,.cover3d--strip .face--back,.book-base3d--strip .book-base-face.face--back{border-radius:0 var(--corner) var(--corner) 0}.cover3d--main .face--back,.book-base3d--main .book-base-face.face--back{border-radius:var(--corner) 0 0 var(--corner)}body[data-debug-seam] .page-sheet--main:before,body[data-debug-seam] .cover3d--main:before{box-shadow:inset 0 0 0 100px #0ff6}body[data-debug-seam] .page-sheet--main:after,body[data-debug-seam] .book-base3d--main:after{box-shadow:inset 0 0 0 100px #f0f6}.face--front,.face--back{--hover-on: 0}body[data-focus=right] .page-sheet--main:not(.is-flipped) .face--front,body[data-focus=left] .page-sheet--main.is-flipped .face--back,body[data-focus=cover] .cover3d--main .face--front,body[data-focus=left] .cover3d--main .face--back,body[data-focus=back] .book-base3d--main .face--front,body[data-focus=back] .book-base3d--main .face--back{--hover-on: 1}body[data-focus=left] .page-sheet--main:not(.is-flipped) .face--front *,body[data-focus=cover] .page-sheet--main:not(.is-flipped) .face--front *,body[data-focus=back] .page-sheet--main:not(.is-flipped) .face--front *,body[data-focus=right] .page-sheet--main.is-flipped .face--back *,body[data-focus=cover] .page-sheet--main.is-flipped .face--back *,body[data-focus=back] .page-sheet--main.is-flipped .face--back *,body[data-focus=right] .cover3d--main .face--front *,body[data-focus=left] .cover3d--main .face--front *,body[data-focus=back] .cover3d--main .face--front *,body[data-focus=right] .cover3d--main .face--back *,body[data-focus=cover] .cover3d--main .face--back *,body[data-focus=back] .cover3d--main .face--back *,body[data-focus=right] .book-base3d--main .face--front *,body[data-focus=left] .book-base3d--main .face--front *,body[data-focus=cover] .book-base3d--main .face--front *,body[data-focus=right] .book-base3d--main .face--back *,body[data-focus=left] .book-base3d--main .face--back *,body[data-focus=cover] .book-base3d--main .face--back *{pointer-events:none}body[data-view=start][data-focus=left] .cover3d--main .face--back .note,body[data-view=start][data-focus=left] .cover3d--main .face--back .note *{pointer-events:auto}
