.paper-book-launcher{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.8rem;margin:1.25rem 0 .25rem}.paper-book-open{border:1px solid #bca278;border-radius:2rem;padding:.72rem 1.25rem;background:#fff9ed;color:#493621;font:600 1rem/1.2 system-ui,sans-serif;box-shadow:0 3px 0 #d5c3a4;cursor:pointer}.paper-book-open:hover{background:#f9ebce}.paper-book-open:disabled{opacity:.6;cursor:default}.paper-book-launch-note{max-width:35rem;font-size:.88rem;color:inherit;opacity:.8}.paper-book-dialog,.paper-book-dialog *{box-sizing:border-box}.paper-book-dialog{color-scheme:light;width:min(1040px,calc(100vw - 2rem));max-width:none;max-height:calc(100dvh - 2rem);padding:0;border:1px solid #bfa276;border-radius:1rem;background:#ece0ca;color:#443526;box-shadow:0 24px 100px #16100fb3;overflow:hidden;font-family:Georgia,'Times New Roman',serif}.paper-book-dialog:not([open]){display:none}.paper-book-dialog[open]{display:flex;flex-direction:column}.paper-book-dialog::backdrop{background:rgb(27 23 21 / .76);backdrop-filter:blur(3px)}html.paper-book-opened{overflow:hidden}.paper-book-header{display:flex;justify-content:space-between;align-items:center;gap:1.25rem;flex:0 0 auto;padding:1rem 1.4rem .9rem;background:#f1e6d3;border-bottom:1px solid #cbb897}.paper-book-eyebrow{margin:0 0 .25rem;color:#7c6244;font:600 .72rem/1.3 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}.paper-book-title{font:500 clamp(1.05rem,2vw,1.5rem)/1.25 Georgia,'Times New Roman',serif;margin:0;color:#493823}.paper-book-close,.paper-book-turn,.paper-book-standard{font:600 .88rem/1.3 system-ui,sans-serif;border:1px solid #bca583;background:#fffaf1;color:#4c3b29;padding:.65rem 1rem;border-radius:.6rem;cursor:pointer;white-space:normal;box-shadow:0 2px 0 #d4c1a0}.paper-book-close{flex:0 0 auto}.paper-book-dialog button:disabled{opacity:.4;cursor:default;box-shadow:none}.paper-book-dialog button:hover:enabled{background:#f7e6c5}.paper-book-dialog button:focus-visible,.paper-book-dialog select:focus-visible,.paper-book-dialog a:focus-visible,.paper-book-open:focus-visible{outline:3px solid #355e6a;outline-offset:3px}.paper-book-surface{padding:1.1rem 1.2rem 1.2rem;overflow:auto;min-height:0;flex:1 1 auto;overscroll-behavior:contain;background:linear-gradient(135deg,#e8dcc3,#d8c5a4)}.paper-book-spread{position:relative;isolation:isolate;min-height:100%;background:#fffcf2;border-radius:.35rem .7rem .7rem .35rem;box-shadow:0 2px 0 #baa987,0 5px 0 -1px #f9efd9,0 8px 0 -2px #c0ad8a,0 12px 0 -4px #f9efd9,0 18px 30px -12px #725b3c70;overflow:hidden}.paper-book-spread::after{content:'';position:absolute;inset:0 auto 0 50%;width:2.4rem;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#6d503012 30%,#6d503040 48%,#fff9e050 52%,#6d50300b 72%,transparent);pointer-events:none;z-index:2}.paper-book-art{margin:0 0 1rem;padding:0;display:flex;justify-content:center;align-items:center}.paper-book-art img{display:block;max-width:100%;width:100%;height:auto;object-fit:contain;border:0;border-radius:.2rem;box-shadow:none}.paper-book-leaves{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100%}.paper-book-leaf{display:flex;flex-direction:column;min-width:0;margin:0;padding:1rem clamp(1.2rem,3vw,3rem) .85rem;border:0;background:linear-gradient(100deg,#fffaf0,#fffdf5 87%,#e9dec71a);box-shadow:none;border-radius:0}.paper-book-leaf+ .paper-book-leaf{background:linear-gradient(90deg,#e9dec71a,#fffdf5 14%,#fffaf0)}.paper-book-text{display:flow-root;flex:1;font-size:clamp(1rem,1.15vw,1.15rem);line-height:1.5;overflow-wrap:anywhere;text-wrap:pretty}.paper-book-text h2{font:600 clamp(1.3rem,2.5vw,2rem)/1.3 Georgia,'Times New Roman',serif;color:#584020;margin:0 0 1rem;text-wrap:balance}.paper-book-text p{margin:0 0 .6em;color:#443526;white-space:pre-line}.paper-book-text p:last-child{margin-bottom:0}.paper-book-folio{display:block;text-align:center;padding-top:1rem;color:#927850;font:500 .85rem/1.2 Georgia,'Times New Roman',serif}.paper-book-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex:0 0 auto;padding:1rem 1.4rem .65rem;background:#f1e6d3}.paper-book-position{display:flex;align-items:center;gap:1rem;text-align:center}.paper-book-indicator{margin:0;font:600 .86rem/1.3 system-ui,sans-serif;color:#574029;white-space:nowrap}.paper-book-jump{display:flex;align-items:center;gap:.45rem;color:#776044;font:400 .78rem/1.3 system-ui,sans-serif}.paper-book-jump select{font:500 .82rem/1.3 system-ui,sans-serif;background:#fffbf2;color:#493621;border:1px solid #bca583;border-radius:.4rem;padding:.4rem;max-width:10rem}.paper-book-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.7rem 1.2rem;padding:.35rem 1.4rem 1rem;flex:0 0 auto;background:#f1e6d3}.paper-book-standard{background:transparent;border:0;box-shadow:none;font-size:.76rem;padding:.4rem;text-decoration:underline;text-underline-offset:.2em}.paper-book-parts{font:500 .78rem/1.4 system-ui,sans-serif}.paper-book-parts a{color:#5d482c;text-decoration:underline;text-underline-offset:.2em}.paper-book-parts a+a{margin-left:1rem}
@media(prefers-reduced-motion:no-preference){.paper-book-spread{perspective:1600px}.paper-book-spread::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:50%;background:linear-gradient(100deg,#eee1c8,#fffdf2 16%,#f8edd5 93%,#d9c29e);box-shadow:-5px 0 18px #694b3333;transform-origin:left center;pointer-events:none;z-index:4;opacity:0;backface-visibility:visible}.paper-book-spread.paper-book-forward::before{animation:paper-book-leaf-forward .56s ease-in-out}.paper-book-spread.paper-book-backward::before{left:0;transform-origin:right center;animation:paper-book-leaf-backward .56s ease-in-out}@keyframes paper-book-leaf-forward{0%{opacity:0;transform:rotateY(0deg)}10%{opacity:.96}75%{opacity:.92;transform:rotateY(-145deg)}100%{opacity:0;transform:rotateY(-180deg)}}@keyframes paper-book-leaf-backward{0%{opacity:0;transform:rotateY(0deg)}10%{opacity:.96}75%{opacity:.92;transform:rotateY(145deg)}100%{opacity:0;transform:rotateY(180deg)}}}
@media(max-width:700px){.paper-book-dialog{width:calc(100vw - .7rem);max-height:calc(100dvh - .7rem);border-radius:.75rem}.paper-book-header{padding:.8rem .85rem;gap:.75rem}.paper-book-eyebrow{font-size:.62rem;letter-spacing:.04em}.paper-book-title{font-size:1.05rem}.paper-book-close{font-size:.75rem;padding:.55rem .65rem;max-width:7rem}.paper-book-surface{padding:.65rem .65rem 1rem}.paper-book-art{padding:0;margin-bottom:1rem}.paper-book-leaves{grid-template-columns:1fr}.paper-book-leaf{padding:1rem 1.25rem .75rem;min-height:0}.paper-book-text{font-size:1.13rem;line-height:1.6}.paper-book-spread::after{display:none}.paper-book-controls{padding:.7rem .75rem .5rem;gap:.5rem;align-items:stretch}.paper-book-turn{font-size:.72rem;padding:.5rem .65rem;max-width:7rem;flex:1}.paper-book-position{display:flex;flex-direction:column;gap:.3rem;justify-content:center;flex:1}.paper-book-indicator{font-size:.74rem}.paper-book-jump span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.paper-book-jump select{font-size:.75rem;padding:.3rem;max-width:6rem}.paper-book-footer{padding:0 .75rem .7rem;gap:.3rem .7rem}.paper-book-standard{font-size:.68rem}.paper-book-parts{font-size:.68rem}}
@media print{.paper-book-launcher,.paper-book-dialog{display:none!important}html.paper-book-opened{overflow:visible}}

@media(max-width:700px) and (prefers-reduced-motion:no-preference){.paper-book-spread::before{left:0;width:100%}.paper-book-spread.paper-book-backward::before{left:0}}

/* The complete scene and the coin occupy separate leaves, clear of the gutter. */
.paper-book-coin-leaf .paper-book-text{padding-top:1.25rem}
.paper-book-coin-space{--coin-size:clamp(110px,14vw,160px);display:block;float:right;width:var(--coin-size);height:var(--coin-size);margin:-.35rem -.2rem .7rem .7rem;shape-outside:circle(47%);shape-margin:.6rem}
.paper-book-coin{display:block;width:100%;height:100%;background-image:url('/preview/coin-companion/coin-expressions.png');background-repeat:no-repeat;background-size:200% 200%;mix-blend-mode:darken;mask-image:radial-gradient(ellipse closest-side,#000 85%,transparent 100%)}
.paper-book-coin-surprised{background-position:0 0}
.paper-book-coin-thoughtful{background-position:100% 0}
.paper-book-coin-enthusiastic{background-position:0 100%}
.paper-book-coin-puzzled{background-position:100% 100%}
.paper-book-dialog:lang(zh){font-family:'Songti SC',STSong,'Noto Serif CJK SC',SimSun,serif}
.paper-book-dialog:lang(zh) .paper-book-title,.paper-book-dialog:lang(zh) .paper-book-text h2{font-family:inherit}
.paper-book-dialog:lang(zh) .paper-book-text{line-height:1.8;line-break:strict;overflow-wrap:normal;word-break:normal}
@media(max-width:700px){.paper-book-coin-space{--coin-size:120px;margin:-.2rem -.2rem .6rem .6rem;shape-margin:.4rem}.paper-book-coin-leaf .paper-book-text{padding-top:.6rem}}

.paper-book-audio{flex:0 0 auto;padding:.35rem 1.4rem .65rem;background:#f1e6d3;border-top:1px solid #d8c7a8}.paper-book-leaf[data-active=true]{box-shadow:inset 0 -3px 0 #afc8af}.paper-book-correction{font:500 .76rem/1.4 system-ui,sans-serif;color:#5d482c;text-underline-offset:.2em}.paper-book-draft-note{font:500 .75rem/1.5 system-ui,sans-serif;margin:1rem 0 .5rem;padding:.7rem;background:#f0e7cb;border-radius:.4rem;color:#715d3d}.paper-book-activity-coins{clear:both;display:grid;grid-template-columns:repeat(5,28px);gap:10px;margin:1.2rem 0}.paper-book-pretend-coin{width:28px;height:28px;border-radius:50%;border:2px solid #bb9646;background:#f8e1a3;box-shadow:inset 0 0 0 3px #fff0c7}.paper-book-activity-fields{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0}.paper-book-activity-field{border:1px dashed #ac9c79;border-radius:.5rem;min-height:110px;text-align:center;padding:.65rem .3rem;font:500 .78rem/1.45 system-ui,sans-serif}.paper-book-activity-field small{display:block;font-size:.65rem;margin-top:.5rem}.paper-book-surface{min-height:120px}@media(max-width:700px){.paper-book-audio{padding:.35rem .8rem .5rem}.paper-book-correction{font-size:.7rem}.paper-book-dialog{max-height:calc(100dvh - .7rem)}.paper-book-surface{min-height:100px}.paper-book-footer{padding-top:.25rem}}
