.paper-world{position:absolute;left:50%;top:50%;width:640px;height:420px;transform-style:preserve-3d;will-change:transform}
.book-shadow{position:absolute;left:50%;top:50%;background:#0008;border-radius:50%;filter:blur(20px);z-index:-1}
.book-base{position:absolute;top:0;width:320px;height:420px;background:repeating-linear-gradient(0deg,#c2b89c 0 1px,#e8dcc0 1px 3px);border-bottom:7px solid #274f39;border-right:2px solid #355d43;box-shadow:0 7px 0 #123423,0 10px 0 #d3bb82,0 13px 0 #1d432f;transform:translateZ(0px)}
.base-right{left:320px;border-radius:0 5px 7px 0}
.base-left{left:0;border-radius:6px 0 0 7px}
.book-page{position:absolute;top:0;width:320px;height:420px;transform:translateZ(12px);background-color:#f3e9d2;background-image:radial-gradient(#7a634218 .6px,transparent .6px);background-size:5px 6px;color:#5f5742;font:11px Georgia,serif;backface-visibility:hidden}
.page-right{left:320px;border-radius:0 4px 4px 0;box-shadow:inset 14px 0 21px #98835536,inset -1px 0 1px #fff}
.page-left{left:0;border-radius:4px 0 0 4px;box-shadow:inset -14px 0 21px #98835536}
.printed-brand{position:absolute;left:28px;bottom:25px;letter-spacing:.12em}
.printed-number{position:absolute;right:25px;bottom:24px;font-size:16px}
.printed-place{position:absolute;left:25px;bottom:25px;letter-spacing:.2em}
.book-spine{position:absolute;left:316px;top:0;width:8px;height:420px;background:linear-gradient(90deg,#c4b493,#7c6c51,#cbbc9b);transform:translateZ(13px)}

.book-cover{position:absolute;left:320px;top:-4px;width:327px;height:428px;transform-origin:0 50%;transform-style:preserve-3d;will-change:transform}
.cover-front,.cover-back{position:absolute;inset:0;backface-visibility:hidden;transform-style:preserve-3d}
.cover-front{background:repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#0000000b 0 1px,transparent 1px 3px),linear-gradient(135deg,#345b42,#183c2b);border-radius:0 6px 6px 0;box-shadow:inset 6px 0 10px #0004,inset -2px 0 2px #adbd7455,0 4px 0 #b99d65,0 7px 0 #214834;transform:translateZ(3px)}
.cover-back{background:#e9ddc0;transform:rotateY(180deg) translateZ(3px);box-shadow:inset -10px 0 20px #88744722;border:4px solid #264a34;border-radius:6px 0 0 6px}
.cover-border{position:absolute;inset:18px;border:1px solid #c4ab69b0;text-align:center;color:#e9dab2;box-shadow:inset 0 0 0 4px #264b33,inset 0 0 0 5px #c4ab6940}
.cover-edition{font:9px Georgia,serif;letter-spacing:.25em;margin:18px 0 20px}
.cover-border img{width:58px;height:58px;border-radius:50%;display:block;margin:0 auto}
.cover-border h2{font-family:var(--serif);font-size:28px;line-height:1.7;font-weight:500;margin:24px 0 13px;letter-spacing:.03em}
.cover-border i{display:block;width:25px;height:1px;background:#c4ab69;margin:auto}
.cover-subtitle{font-family:var(--serif);font-size:10px;margin:17px 0 31px}
.cover-country{font:11px Georgia,serif;letter-spacing:.18em}
.cover-country small{display:block;font-size:8px;letter-spacing:.12em;margin-top:8px}
.paper-scenery{position:absolute;inset:0;transform:translateZ(14px);transform-style:preserve-3d}
.paper-hinge{position:absolute;transform-origin:50% 0;transform-style:preserve-3d;will-change:transform}
.paper-cutout{position:absolute;left:0;transform-origin:50% 100%;backface-visibility:visible;transform-style:preserve-3d}
.paper-cutout img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 -1px 0 #fff2) drop-shadow(1.5px 2px 0 #ded2b1) drop-shadow(2px 6px 3px #1028193b)}
.paper-tab{position:absolute;left:calc(50% - 24px);top:-1px;width:48px;height:16px;background:linear-gradient(#dfd3b5,#f8efd9);transform:rotateX(76deg);transform-origin:50% 0;box-shadow:0 1px 2px #6b513244}
.panel-shadow{position:absolute;height:48px;background:#000;border-radius:50%;filter:blur(10px);transform-origin:center top}
.turn-leaf{position:absolute;left:320px;top:0;width:20px;height:420px;transform-origin:0 50%;transform-style:preserve-3d;display:none}
.leaf-segment{position:absolute;left:20px;top:0;width:20.3px;height:420px;transform-origin:0 50%;transform-style:preserve-3d;background:linear-gradient(90deg,#f7eed9,#f0e5cc);border-top:1px solid #d5c6a4;border-bottom:1px solid #d5c6a4;backface-visibility:visible}
.turn-leaf>.leaf-segment{left:0}
.leaf-segment.last{border-radius:0 5px 5px 0;box-shadow:4px 0 5px #0002}

.paper-camera{position:absolute;inset:0;perspective:1700px;perspective-origin:50% 43%;pointer-events:none;overflow:hidden}

.paper-scenery{transform:translateZ(14px);transform-style:preserve-3d}
