/* Amar-te V1.6: livro encadernado de verdade, páginas duplas e virada 3D. */
.ab-shell{--book-accent:#a63864;--book-soft:#fff0f5;--cover-color:#fbe8f0;min-height:100svh;padding:20px 15px 35px;background:radial-gradient(circle at 9% 18%,#f9dee9 0,transparent 26%),radial-gradient(circle at 92% 70%,#f4e7d8 0,transparent 28%),#fffbfa;color:#703a55;font-family:'DM Sans',sans-serif;position:relative;overflow:hidden;isolation:isolate}
.ab-shell *, .ab-shell *::before,.ab-shell *::after{box-sizing:border-box}.ab-shell button{cursor:pointer;font:700 13px 'DM Sans',sans-serif}.ab-shell img{max-width:100%}.ab-ambient{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden;color:#dd96b3}.ab-ambient span{position:absolute;font:44px Georgia;opacity:.4;animation:abFloat 7s ease-in-out infinite}.ab-ambient span:nth-child(1){top:19%;left:6%}.ab-ambient span:nth-child(2){top:45%;right:7%;animation-delay:2s}.ab-ambient span:nth-child(3){bottom:6%;left:14%;animation-delay:4s}.ab-ambient span:nth-child(4){top:12%;right:17%;animation-delay:1.5s}
.ab-top{max-width:980px;margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:14px}.ab-top img{width:126px;max-height:55px;object-fit:contain}.ab-top p{font:italic 17px Georgia,serif;color:#98506c;text-align:center}.ab-audio{border:1px solid #e8c6d2;background:white;color:#8c4562;padding:11px 15px;border-radius:40px;white-space:nowrap}.ab-audio[aria-pressed=true]{background:#fff0f6;border-color:#ce7e9e}
.ab-stage{width:100%;max-width:1020px;margin:0 auto;padding:25px 12px 27px;perspective:2100px}.ab-book{height:610px;width:min(940px,100%);margin:auto;display:flex;border-radius:23px;position:relative;isolation:isolate;transform-style:preserve-3d;box-shadow:0 28px 58px #67354b38,0 45px 0 -30px #b4798f,0 47px 0 -31px #fff;filter:drop-shadow(0 12px 8px #71415810)}
.ab-book:before{content:'';position:absolute;inset:-10px -9px -5px;background:linear-gradient(135deg,#b56c8a,#79405c 50%,#d997b1);border-radius:24px;z-index:-2}.ab-book:after{content:'';position:absolute;inset:7px 0 5px;border:2px solid #f4dbdf;border-radius:16px;z-index:5;pointer-events:none}
.ab-page{width:50%;height:100%;position:relative;overflow:hidden;background:linear-gradient(95deg,#f7e6e4 0%,#fffbf5 8%,#fffaf2 94%,#e9d9d4 100%);color:#6d4055}.ab-left{border-radius:18px 1px 1px 18px;box-shadow:inset -12px 0 19px #73435620}.ab-right{border-radius:1px 18px 18px 1px;box-shadow:inset 12px 0 18px #73435624}.ab-left .ab-page-inner{padding-right:41px}.ab-right .ab-page-inner{padding-left:41px}.ab-gutter{position:absolute;left:calc(50% - 10px);top:0;width:20px;height:100%;z-index:15;pointer-events:none;background:linear-gradient(90deg,transparent,#7b4e5338 45%,#fff7f36e 50%,#754d5535 65%,transparent)}
.ab-bottom-pages{position:absolute;bottom:-7px;left:7px;right:6px;height:8px;border-radius:0 0 12px 12px;background:repeating-linear-gradient(180deg,#fff9ec 0 1px,#e5bfc2 2px 3px);z-index:-1;pointer-events:none}
.ab-page-inner{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:35px 29px 29px;overflow-y:auto;overflow-x:hidden;text-align:center;scrollbar-width:thin;scrollbar-color:#e6bdcc transparent;overscroll-behavior:contain}.ab-page-inner:before{content:'';position:absolute;inset:15px;border:1px solid #e8cbd2;border-radius:9px;pointer-events:none}.ab-corner-decor{position:absolute;top:14px;left:21px;font:22px Georgia;color:#d99bb3;pointer-events:none}.ab-corner-decor span{font-size:12px;color:#b56c89}.ab-page-number{position:absolute;bottom:13px;right:28px;font:italic 10px Georgia;color:#d29cb0}.ab-endpaper{background:radial-gradient(circle at 50% 45%,#fff2f5,#efd4dc);font:italic 18px Georgia;color:#b17f98;gap:14px}.ab-endpaper span{display:block;font-size:13px}.ab-page-inner h1,.ab-page-inner h2,.ab-page-inner h3{font-family:'Playfair Display',Georgia,serif;color:var(--book-accent);line-height:1.18;overflow-wrap:anywhere}.ab-page-inner h1{font-size:clamp(27px,3vw,43px);margin:9px 0}.ab-page-inner h2{font-size:clamp(24px,2.5vw,34px);margin:10px 0 17px}.ab-page-inner h3{font-size:20px}.ab-page-inner p{font-size:14px;line-height:1.65;max-width:100%;overflow-wrap:anywhere}.ab-page-inner small{font-size:11px;line-height:1.45}.ab-page-inner .book-overline,.ab-page-inner .book-cover-tag{font-size:9px;font-weight:800;letter-spacing:2px;color:#b3788f}.book-ornament{font:28px Georgia;color:var(--book-accent);margin-bottom:14px;letter-spacing:7px}.book-prose{font:17px/1.7 Georgia,serif!important;color:#76566a;white-space:pre-wrap;max-height:34%;overflow-y:auto}.book-handwritten{font:italic 17px Georgia;color:var(--book-accent);margin:15px 0}.ab-page-inner[data-kind=cover]{background:linear-gradient(150deg,var(--cover-color),#fff7f8 60%,#e8bdcd);border:7px double #c27d98;border-radius:8px 16px 16px 6px;box-shadow:inset 0 0 32px #b7759319}.ab-page-inner[data-kind=cover]:before{inset:11px;border:1px solid #cc95aa;border-radius:8px}.cover-wreath{font:22px Georgia;color:var(--book-accent);margin-top:9px;letter-spacing:5px}.cover-wreath span{font-size:30px}.book-cover-logo{width:112px;height:75px;object-fit:contain}.cover-portrait{width:min(68%,230px);height:190px;overflow:hidden;background:white;border:7px solid #fff;border-radius:14px;transform:rotate(-3deg);box-shadow:0 15px 25px #713b542e;margin:9px 0 16px}.cover-portrait img{width:100%;height:100%;object-fit:cover}.cover-placeholder{display:grid;place-items:center;font:94px Georgia;color:#df98b1}.cover-ribbon{font:italic 15px Georgia;color:var(--book-accent)}.book-cover-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 12%,#ffffff82,transparent 34%)}.book-bird{position:absolute;width:44px;color:var(--book-accent);pointer-events:none;animation:abBird 6s ease-in-out infinite}.bird-one{top:13%;left:3%}.bird-two{right:4%;bottom:12%;animation-delay:-3s}
.book-counter{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:15px auto}.book-counter>div{padding:10px 5px;background:var(--book-soft);border:1px solid #edd0db;border-radius:16px}.book-counter strong{display:block;font:700 25px Georgia;color:var(--book-accent)}.book-counter span{font:11px 'DM Sans',sans-serif;color:#855c72}.book-quote{font:italic 14px Georgia;color:#a56d84}.envelope-icon{font-size:43px;color:#d28da6}.book-letter{background:#fff6f1;position:relative;width:100%;max-height:295px;overflow-y:auto;box-shadow:0 12px 24px #8d536b16;padding:15px;border:1px solid #edcbd7;border-radius:16px}.book-letter p{font:15px/1.8 Georgia,serif;white-space:pre-wrap}.book-letter small{display:block;text-align:right;color:var(--book-accent);font-style:italic}.book-seal{display:grid;place-items:center;margin:auto;width:32px;height:32px;border-radius:50%;background:var(--book-accent);color:white}.book-photos{display:flex;gap:11px;align-items:center;justify-content:center;flex-wrap:wrap;width:100%;margin-top:10px}.book-polaroid{width:min(46%,182px);padding:7px 7px 12px;background:white;border-radius:10px;box-shadow:0 9px 21px #67394c26;margin:0;transform:rotate(-4deg)}.book-polaroid:nth-child(even){transform:rotate(5deg)}.book-polaroid img{width:100%;height:160px;object-fit:cover;border-radius:5px}.book-polaroid figcaption{font:italic 10px Georgia;color:#975572;padding-top:8px}.book-mini-photo{width:118px;max-width:48%;background:white;border-radius:10px;padding:6px 6px 10px;box-shadow:0 7px 18px #7b4b5731;transform:rotate(4deg);margin:13px auto 0}.book-mini-photo img{width:100%;height:94px;border-radius:6px;object-fit:cover}.book-mini-photo figcaption{font:italic 10px Georgia;color:#b47d97}.book-memories{width:100%;display:grid;gap:10px;text-align:left}.book-memories article{border-left:3px solid var(--book-accent);background:#fff4f4;padding:10px 13px;border-radius:13px}.book-memories small{color:#b0788e}.book-memories h3{font-size:19px;margin:5px 0}.book-memories p{font-size:12px;margin:0}.memory-dot{color:var(--book-accent);float:right}.book-big-heart{font:66px Georgia;color:var(--book-accent);text-shadow:0 9px 14px #dd9eb8;animation:abPulse 3s ease-in-out infinite}.map-mark{font:64px Georgia;color:var(--book-accent)}.place-ticket{border:2px dashed #e4b4c5;border-radius:13px;background:#fffaf8;padding:13px;display:grid;gap:9px}.place-ticket strong{font:23px Georgia;color:var(--book-accent)}.place-ticket span{font-size:10px;letter-spacing:1px}.book-videos{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.book-videos video{width:100%;height:125px;object-fit:cover;border-radius:13px;background:#e8cad5}.book-videos small{display:block}.music-vinyl{width:92px;height:92px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:42px;background:repeating-radial-gradient(circle,#59283e 0 6px,#77394c 7px 8px);box-shadow:0 10px 20px #4d22332c}.ab-page-inner iframe{border:0;border-radius:14px;max-width:100%}.book-final-logo{width:140px;display:block;margin:16px auto 5px}.ab-page-inner[data-kind=music] h2{font-size:27px}.ab-page-inner[data-kind=videos]{justify-content:flex-start;padding-top:48px}
.ab-overlay{position:absolute;inset:0;pointer-events:none;z-index:20;perspective:2200px;transform-style:preserve-3d}.ab-overlay.is-active{pointer-events:auto}.ab-flip-leaf{position:absolute;top:0;width:50%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .76s cubic-bezier(.44,.05,.35,1)}.ab-flip-leaf.go-next{left:50%;transform-origin:0 50%;transform:rotateY(0)}.ab-flip-leaf.go-next.is-turning{transform:rotateY(-180deg)}.ab-flip-leaf.go-prev{left:0;transform-origin:100% 50%;transform:rotateY(0)}.ab-flip-leaf.go-prev.is-turning{transform:rotateY(180deg)}.ab-face{position:absolute;inset:0;backface-visibility:hidden;background:linear-gradient(100deg,#f6e1de,#fffaf2 12%,#fffaf2 88%,#ead2d0);box-shadow:inset 0 0 30px #864a601c;overflow:hidden}.ab-face .ab-page-inner{height:100%}.ab-face-front{transform:rotateY(0)}.ab-face-back{transform:rotateY(180deg)}.ab-flip-leaf.go-next .ab-face-front{border-radius:0 15px 15px 0}.ab-flip-leaf.go-prev .ab-face-front{border-radius:15px 0 0 15px}.ab-flip-leaf:before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 14px 0 27px #693b5432;opacity:.5;transform:translateZ(1px)}
.ab-footer-controls{display:flex;align-items:center;justify-content:center;gap:20px;max-width:700px;margin:0 auto}.ab-footer-controls button{border:1px solid #e7bbcb;background:white;color:#883f61;padding:13px 19px;border-radius:50px;min-width:125px}.ab-footer-controls button:disabled{opacity:.4;cursor:default}.ab-footer-controls button:not(:disabled):hover{background:#fff0f5}.ab-progress-info{min-width:122px;display:grid;gap:8px;text-align:center}.ab-page-indicator{font:700 12px 'DM Sans',sans-serif;color:#9c6980}.ab-progress{display:block;height:5px;border-radius:9px;background:#f2d7e1;overflow:hidden}.ab-progress>span{display:block;height:100%;width:0;background:var(--book-accent);transition:width .35s}.ab-hint{text-align:center;margin-top:17px;color:#976d80;font-size:12px}
@keyframes abFloat{50%{transform:translateY(-17px) rotate(12deg)}}@keyframes abBird{50%{translate:12px -14px;rotate:7deg}}@keyframes abPulse{50%{transform:scale(1.07)}}
@media(max-width:740px){.ab-shell{padding:10px 9px 23px}.ab-top{margin-bottom:3px}.ab-top img{width:105px}.ab-top p{display:none}.ab-stage{padding:16px 3px 26px}.ab-book{height:min(590px,calc(100svh - 175px));min-height:465px;max-width:420px}.ab-page{width:100%}.ab-left{display:none}.ab-right{border-radius:16px;box-shadow:inset 17px 0 26px #7c4e5633}.ab-gutter{left:0;width:23px;background:linear-gradient(90deg,#733e554f,#c68ca858,transparent)}.ab-bottom-pages{left:5px;right:5px}.ab-page-inner{padding:39px 33px 33px}.ab-right .ab-page-inner{padding-left:41px}.ab-page-inner h1{font-size:36px}.ab-page-inner h2{font-size:29px}.ab-flip-leaf{width:100%;left:0!important}.ab-footer-controls{gap:7px}.ab-footer-controls button{min-width:95px;padding:12px}.ab-progress-info{min-width:100px}.book-prose{font-size:17px!important}.book-polaroid img{height:135px}.book-mini-photo{width:120px}}
@media(max-width:390px){.ab-book{min-height:430px;height:calc(100svh - 170px)}.ab-page-inner{padding:34px 27px 31px}.ab-page-inner h1{font-size:31px}.ab-page-inner h2{font-size:25px}.ab-page-inner p{font-size:13px}.cover-portrait{height:145px}.ab-page-inner .book-counter strong{font-size:24px}.book-mini-photo{width:95px}.book-mini-photo img{height:65px}}
@media(prefers-reduced-motion:reduce){.ab-shell *, .ab-shell *::before,.ab-shell *::after{animation:none!important;transition-duration:.01ms!important}}

.ab-deluxe-stickers .ab-ambient span{opacity:.77;font-size:53px}.ab-deluxe-stickers .ab-page-inner:before{border-style:dashed;border-color:#dfa7c0}.ab-deluxe-stickers .ab-corner-decor{filter:drop-shadow(0 2px 2px #e2aec3);font-size:30px}.ab-book[data-cover-style=jardim] .ab-page-inner[data-kind=cover]{border-color:#b45b84;background:linear-gradient(165deg,#ffe6f2,#fae1e6,#fff9f2)}.ab-book[data-cover-style=ceu] .ab-page-inner[data-kind=cover]{border-color:#7194c7;background:linear-gradient(165deg,#d3e7ff,#eeeaff,#fffafb)}.ab-book[data-cover-style=vintage] .ab-page-inner[data-kind=cover]{border-color:#995d7b;background:linear-gradient(165deg,#e6c5d6,#fff4df,#e1bccc)}

.book-bird{width:58px;filter:drop-shadow(0 4px 5px #bb78954f)}.book-wing{transform-origin:45px 44px;animation:abWing 1s ease-in-out infinite}@keyframes abWing{50%{transform:rotate(-15deg)}}

/* V1.7: cronologia fotográfica e detalhes PREMIUM efetivos. */
.book-photo-timeline{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:minmax(0,1fr);gap:11px 20px;margin:12px auto 4px;width:min(100%,355px);max-height:72%;overflow:hidden;padding:9px 10px}
.book-photo-timeline:before{content:"";position:absolute;top:8px;bottom:8px;left:50%;border-left:2px dashed #d9a6b8;opacity:.75}
.book-photo-timeline figure{position:relative;margin:0;background:#fff;padding:5px 5px 9px;border-radius:10px;box-shadow:0 7px 15px #713d5a26;transform:rotate(-2deg)}
.book-photo-timeline figure:nth-child(even){transform:rotate(3deg)}
.book-photo-timeline img{width:100%;height:103px;object-fit:cover;border-radius:7px;display:block}
.book-photo-timeline figcaption{font:italic 11px Georgia,serif;color:#a3657d;padding-top:4px}
.photo-timeline-pin{position:absolute;z-index:2;top:-7px;right:6px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font:18px Georgia,serif;background:#f4b9cf;color:#8e476b;box-shadow:0 2px 5px #7b41543b}
.book-photo-timeline-footer{font:italic 12px Georgia,serif!important;color:var(--book-accent);margin:7px 0!important}
.book-premium-stickers{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.book-premium-stickers span{position:absolute;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 4px 14px #9b648547;background:#ffdce9;color:#b64979;border-radius:15px;font:25px Georgia,serif;width:38px;height:38px;animation:abFloat 6s ease-in-out infinite}
.book-premium-stickers .premium-sticker-1{right:18px;top:35px;transform:rotate(12deg)}
.book-premium-stickers .premium-sticker-2{bottom:51px;left:14px;transform:rotate(-8deg);animation-delay:1s}
.book-premium-stickers .premium-sticker-3{bottom:31px;right:21px;transform:rotate(8deg);animation-delay:2s}
.ab-flip-leaf,.ab-face{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.ab-flip-leaf{transform-style:preserve-3d;transform-origin:0 50%}
.ab-flip-leaf.go-prev{transform-origin:100% 50%}
.ab-page-inner[data-kind=photo-timeline]{overflow:hidden;justify-content:center}
@media(max-width:740px){.book-photo-timeline img{height:clamp(76px,21vw,128px)}.book-photo-timeline{max-height:75%;gap:8px 15px}.book-photo-timeline-footer{font-size:11px!important}}

/* Amar-te V1.8: lembranças com até cinco fotos por capítulo */
.book-moment-date{font-size:12px;color:var(--book-accent);font-weight:700;margin:4px 0 6px}
.book-moment-story{font-size:13px;line-height:1.45;max-height:4.6em;overflow:hidden;margin:6px auto 10px}
.book-moment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px auto 0;width:min(100%,430px);align-content:center}
.book-moment-photo{margin:0;background:#fff;padding:5px 5px 7px;border-radius:14px;box-shadow:0 4px 14px #6f31401c;min-width:0}
.book-moment-photo img{width:100%;height:112px;object-fit:cover;border-radius:10px;display:block}
.book-moment-photo figcaption{font-size:10px;color:var(--book-accent);text-align:center;margin-top:4px}
.book-moment-empty{grid-column:1/-1;background:#fff8fb;border-radius:18px;padding:34px 10px;text-align:center;color:#ad6e85}
@media(max-width:600px){.book-moment-photo img{height:96px}.book-moment-grid{gap:7px}}

/* V1.9: location is a decorative illustration, never a pin or precise map. */
.book-skyline{height:135px;max-width:290px;margin:10px auto 15px;position:relative;border-radius:45% 45% 22px 22px;background:linear-gradient(180deg,#ffe5ee,#fff6f7);overflow:hidden;border:1px solid #f1c8d9;box-shadow:inset 0 -6px 20px #dd88a91a}
.book-skyline .sky-star{position:absolute;top:17px;left:22%;color:#ba6990;font-size:25px;animation:skyTwinkle 3.3s ease-in-out infinite}.book-skyline .sky-moon{position:absolute;right:22%;top:8px;font-size:36px;color:#c587a8}.book-skyline .sky-heart{position:absolute;top:45px;left:50%;font-size:24px;color:#a34576}
.book-skyline .buildings{position:absolute;bottom:0;left:11%;right:11%;height:67%;display:flex;align-items:end;gap:5px;justify-content:center}
.book-skyline .buildings i{display:block;flex:1;background:linear-gradient(#ca86a5,#9b5a80);border-radius:6px 6px 0 0;position:relative;height:66%;box-shadow:inset 0 0 0 1px #ffffff30}
.book-skyline .buildings i:nth-child(2){height:87%}.book-skyline .buildings i:nth-child(3){height:74%}.book-skyline .buildings i:nth-child(4){height:98%}.book-skyline .buildings i:nth-child(5){height:63%}
.book-skyline .buildings i:before{content:'·  ·';position:absolute;top:8px;left:3px;right:3px;text-align:center;letter-spacing:6px;color:#fff0c9;font-weight:bold}
.book-song-frame{max-width:100%;padding:10px;border-radius:20px;background:#fff9fb;border:1px solid #f6d7e2;box-shadow:0 12px 25px #85406719;margin:15px auto;overflow:hidden}.book-song-frame iframe{display:block;width:100%;max-width:100%;border:0;border-radius:13px}
@keyframes skyTwinkle{50%{opacity:.45;transform:scale(.82)}}@media(prefers-reduced-motion:reduce){.book-skyline .sky-star{animation:none}}

/* Amar-te V2.0: encadernação e capa fechada com opções de material e cor. */
.ab-book.ab-cover-view:not(.ab-opening){background:transparent;box-shadow:none;filter:none}
.ab-book.ab-cover-view:not(.ab-opening)::before,.ab-book.ab-cover-view:not(.ab-opening)::after{opacity:0}
.ab-book.ab-cover-view:not(.ab-opening)>.ab-left,.ab-book.ab-cover-view:not(.ab-opening)>.ab-gutter,.ab-book.ab-cover-view:not(.ab-opening)>.ab-bottom-pages{opacity:0}
@media(min-width:741px){.ab-book.ab-cover-view:not(.ab-opening)>.ab-right{position:absolute;top:0;left:25%;width:50%;height:100%;border-radius:15px 29px 29px 12px;box-shadow:5px 22px 35px #5428374a,12px 10px 0 -6px #ffede1,17px 15px 1px -9px #aa6379}}
.ab-page-inner[data-kind=cover]{border-radius:19px 27px 27px 15px!important;box-shadow:inset 10px 0 24px #3c192c29,inset -8px 0 16px #fff8,0 0 0 3px #fff7!important;border-width:8px!important;outline:2px solid #eed7d8;outline-offset:-17px;isolation:isolate}
.ab-page-inner[data-kind=cover]::after{content:'';position:absolute;top:0;bottom:0;left:17px;width:14px;border-left:2px solid #ffffff8c;border-right:2px solid #3f142837;background:linear-gradient(90deg,#20101b0d,#fff7,transparent);pointer-events:none}
.ab-book[data-cover-style=classica] .ab-page-inner[data-kind=cover]{background:radial-gradient(ellipse at 72% 20%,#eac5d6,#a85476 75%,#813453);border-color:#e9b5c9;color:#fff}
.ab-book[data-cover-style=jardim] .ab-page-inner[data-kind=cover]{background:radial-gradient(circle at 70% 10%,#e9e9bb,#668878 72%,#315a53);border-color:#c2d9ad}
.ab-book[data-cover-style=ceu] .ab-page-inner[data-kind=cover]{background:radial-gradient(circle at 72% 10%,#b7d0ed,#42668e 74%,#273c62);border-color:#c1d2e8}
.ab-book[data-cover-style=vintage] .ab-page-inner[data-kind=cover]{background:repeating-linear-gradient(105deg,transparent 0px,#643d2811 2px,transparent 5px),radial-gradient(circle at 67% 10%,#d5b18a,#956845 68%,#563b2e);border-color:#dab996}
.ab-page-inner[data-kind=cover] h1,.ab-page-inner[data-kind=cover] p,.ab-page-inner[data-kind=cover] b,.ab-page-inner[data-kind=cover] .book-cover-tag,.ab-page-inner[data-kind=cover] .cover-ribbon,.ab-page-inner[data-kind=cover] .cover-wreath{color:#fff7ef;text-shadow:0 2px 6px #2f0b2747}
.ab-page-inner[data-kind=cover] .book-cover-logo{filter:drop-shadow(0 5px 9px #2f0b2744)}
.ab-page-inner[data-kind=cover] .ab-page-number{color:#fff8}
.ab-opening>.ab-left,.ab-opening>.ab-right{opacity:1}
.ab-cover-flip{position:absolute;top:0;left:25%;width:50%;height:100%;transform-origin:0 50%;transform-style:preserve-3d;transition:transform .82s cubic-bezier(.39,.03,.3,1);z-index:31;will-change:transform}
.ab-cover-flip.is-turning{transform:rotateY(-179deg)}
.ab-cover-flip.is-closing{transform:rotateY(-179deg)}
.ab-cover-flip.is-closing.is-turning{transform:rotateY(0deg)}
.ab-cover-flip .ab-face{border-radius:17px 27px 27px 14px;box-shadow:0 10px 24px #3b213c44}
.ab-cover-flip .ab-face-back{background:#f9f0e9}
/* Álbum/cápsula: capítulos cronológicos conectados por uma trilha desenhada. */
.ab-page-inner[data-kind=memory-capsule]{background:radial-gradient(circle at 45% 35%,#fffdfa,#fff4f5)}
.book-capsule-timeline{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:11px 27px;width:min(100%,395px);padding:10px 8px 8px;margin:8px auto 0;max-height:77%;overflow:auto}
.book-capsule-timeline:before{content:'';position:absolute;top:10px;bottom:10px;left:50%;border-left:3px dashed #d794b1;opacity:.76}
.book-capsule-entry{position:relative;display:flex;flex-direction:column;align-items:center;margin:0;padding:7px;background:#fff;border-radius:18px;border:1px solid #f1d6df;box-shadow:0 5px 18px #81526825;min-width:0;transform:rotate(-2deg)}
.book-capsule-entry:nth-child(even){transform:rotate(2deg)}
.book-capsule-entry:after{content:'♡';position:absolute;top:33%;right:-25px;color:#ba557f;background:#fff7fa;border:1px solid #e8bad1;border-radius:50%;width:20px;height:20px;display:grid;place-items:center;font-size:13px;z-index:1}
.book-capsule-entry:nth-child(even):after{right:auto;left:-25px}
.book-capsule-entry img{width:100%;height:112px;object-fit:cover;border-radius:11px}
.book-capsule-entry strong{font:700 12px Georgia,serif;color:var(--book-accent);padding-top:7px;overflow-wrap:anywhere}
.book-capsule-entry small{font-size:10px;color:#a07081}
.book-capsule-caption{font:italic 13px Georgia,serif!important;color:#9e6681;margin:7px 0!important}
@media(max-width:740px){.ab-book.ab-cover-view .ab-right{border-radius:15px 27px 27px 12px;box-shadow:5px 15px 25px #5428374d,8px 8px 0 -4px #fff1eb}.ab-cover-flip{left:0;width:100%}.book-capsule-entry img{height:clamp(72px,18vw,118px)}.book-capsule-timeline{gap:10px 24px}.book-capsule-entry:after{right:-23px}}
@media(prefers-reduced-motion:reduce){.ab-cover-flip{transition:none!important}}

/* V2.3 — transições isoladas; mantém folha inteira e evita sobreposição acidental. */
.ab-stage,.ab-book{contain:layout style;}
.ab-overlay:not(.is-active){visibility:hidden;}
.ab-overlay.is-active{visibility:visible;}
.ab-flip-leaf,.ab-cover-flip{backface-visibility:hidden;transform-style:preserve-3d;}
.ab-flip-leaf .ab-face,.ab-cover-flip .ab-face{overflow:hidden;}
.ab-page-inner{overflow-wrap:anywhere;}
@media(prefers-reduced-motion:reduce){.ab-flip-leaf,.ab-cover-flip{transition:none!important;}}


/* Amar-te V2.3.2 — motor estável de folhas: sem capa fantasma */
.ab-stage{contain:none!important;perspective:none!important;}
.ab-book{contain:none!important;transform-style:flat!important;filter:none!important;}
.ab-overlay{overflow:hidden!important;perspective:1700px!important;pointer-events:none!important;transform-style:flat!important;border-radius:20px;}
.ab-overlay:not(.is-active){visibility:hidden;}
.ab-cover-flip,.ab-flip-leaf{
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  transform-style:flat!important;
  will-change:transform,opacity;
  pointer-events:none!important;
}
.ab-cover-flip{
  left:25%!important;
  width:50%!important;
  transform:rotateY(0deg);
  opacity:1;
  transform-origin:0 50%;
  transition:transform .55s cubic-bezier(.32,.05,.25,1),opacity .55s ease!important;
}
.ab-cover-flip.is-turning{transform:rotateY(-94deg)!important;opacity:0!important;}
.ab-flip-leaf{transition:transform .44s cubic-bezier(.36,.06,.27,1),opacity .44s ease!important;}
.ab-flip-leaf.go-next.is-turning{transform:rotateY(-94deg)!important;opacity:0!important;}
.ab-flip-leaf.go-prev.is-turning{transform:rotateY(94deg)!important;opacity:0!important;}
.ab-cover-flip .ab-face,.ab-flip-leaf .ab-face{
  backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;
  transform:none!important;overflow:hidden;
}
.ab-cover-flip .ab-face-back,.ab-flip-leaf .ab-face-back{display:none!important;}
.ab-page{flex-shrink:0;}
.ab-book.ab-cover-arriving>.ab-right{animation:abCoverArrival .30s ease-out both;}
@keyframes abCoverArrival{from{opacity:.25;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:740px){
 .ab-cover-flip{left:0!important;width:100%!important;}
 .ab-flip-leaf{width:100%!important;}
}
@media(prefers-reduced-motion:reduce){
 .ab-cover-flip,.ab-flip-leaf{transition:none!important;}
 .ab-book.ab-cover-arriving>.ab-right{animation:none!important;}
}
