@font-face{font-family:Library Burmese;src:url(/assets/fonts/TU01_PannYeat-Regular.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Library Burmese;src:url(/assets/fonts/PT21_Mandalay-Bold.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:700}@font-face{font-family:Library Burmese;src:url(/assets/fonts/PT21_Mandalay-BoldItalic.ttf)format("truetype");font-display:swap;font-style:italic;font-weight:700}:root{--ink:#3f2c1e;--muted-ink:#786351;--cream:#f3ead6;--cream-deep:#e6d6b8;--paper:#fffaf0;--wood:#a96537;--wood-dark:#704122;--library-page-night:oklch(18% .04 274);--library-page-day:oklch(67% .093 138.6)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Library Burmese,Georgia,serif}body.library-page-active,body.library-page-active #root{background-color:var(--library-page-night)}html:has(body.library-page-active){background-color:var(--library-page-night)}body.library-page-active[data-library-theme=day],body.library-page-active[data-library-theme=day] #root{background-color:var(--library-page-day)}html:has(body.library-page-active[data-library-theme=day]){background-color:var(--library-page-day)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.library-shell{--night-deep:oklch(18% .04 274);--night-mid:oklch(24% .045 274);--night-dusty:oklch(33% .042 272);--night-cloud:oklch(40% .035 268);--night-text:oklch(91% .028 83);--night-text-muted:oklch(75% .032 78);--night-text-dim:oklch(68% .026 75);--night-gold:oklch(78% .095 82);--night-amber:oklch(66% .105 58);--night-focus:oklch(84% .11 84);--night-surface:oklch(27% .035 273);--night-surface-raised:oklch(31% .035 270);--night-rule:oklch(53% .035 72);--night-shadow:oklch(12% .025 278);--night-shadow-warm:oklch(16% .028 42);--night-wood-lit:oklch(64% .105 58);--night-wood-mid:oklch(49% .095 53);--night-wood-dark:oklch(32% .065 48);isolation:isolate;min-height:100dvh;color:var(--night-text);background:radial-gradient(ellipse at 50% 70%, color-mix(in oklch, var(--night-amber) 11%, transparent), transparent 43%), radial-gradient(ellipse at 18% 24%, color-mix(in oklch, var(--night-cloud) 24%, transparent), transparent 48%), radial-gradient(ellipse at 82% 18%, color-mix(in oklch, var(--night-dusty) 32%, transparent), transparent 44%), radial-gradient(ellipse at center, transparent 34%, color-mix(in oklch, var(--night-shadow) 54%, transparent) 100%), linear-gradient(180deg, var(--night-mid), var(--night-deep));padding:24px clamp(14px,4vw,48px) 30px;position:relative;overflow:hidden}.starry-night-video{z-index:-3;opacity:.76;object-fit:cover;object-position:24% 50%;pointer-events:none;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.night-video-overlay{z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 50% 17%, color-mix(in oklch, var(--night-deep) 74%, transparent) 0 13%, transparent 42%), linear-gradient(180deg, transparent 48%, color-mix(in oklch, var(--night-deep) 60%, transparent) 100%), radial-gradient(ellipse at 50% 57%, color-mix(in oklch, var(--night-amber) 10%, transparent), transparent 42%), radial-gradient(ellipse at center, transparent 36%, color-mix(in oklch, var(--night-shadow) 58%, transparent) 100%), linear-gradient(180deg, color-mix(in oklch, var(--night-mid) 32%, transparent), color-mix(in oklch, var(--night-deep) 42%, transparent));position:absolute;inset:0}.paper-grain{z-index:-1;pointer-events:none;opacity:.04;mix-blend-mode:soft-light;background:url(/assets/watercolor-paper-texture-BIxKYtLV.png) 50%/cover no-repeat;position:absolute;inset:0}.starry-night-video[data-theme=day]{opacity:.86;object-position:50% 50%}.night-video-overlay[data-theme=day]{background:linear-gradient(180deg, color-mix(in oklch, var(--night-deep) 24%, transparent), transparent 46%), radial-gradient(ellipse at center, transparent 42%, color-mix(in oklch, var(--night-deep) 18%, transparent) 100%), linear-gradient(0deg, color-mix(in oklch, var(--night-deep) 20%, transparent), transparent 34%)}.library-theme-transition{z-index:-1;pointer-events:none;opacity:0;transition:opacity .68s cubic-bezier(.22,1,.36,1),transform .68s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:translate(-.35%)scale(1.012)}.library-theme-transition:before{content:"";background:radial-gradient(ellipse at 18% 36%, color-mix(in oklch, var(--night-dusty) 86%, transparent), transparent 48%), radial-gradient(ellipse at 77% 58%, color-mix(in oklch, var(--night-text-muted) 72%, transparent), transparent 52%), linear-gradient(115deg, var(--night-deep), color-mix(in oklch, var(--night-text-muted) 88%, var(--night-dusty)));background-blend-mode:soft-light, normal, normal;transition:transform .68s cubic-bezier(.22,1,.36,1);position:absolute;inset:-3%;transform:translate(-1.1%)scale(1.025);-webkit-mask-image:linear-gradient(96deg,#000 8%,#000000eb 44%,#000 92%),url(/assets/watercolor-paper-texture-BIxKYtLV.png);mask-image:linear-gradient(96deg,#000 8%,#000000eb 44%,#000 92%),url(/assets/watercolor-paper-texture-BIxKYtLV.png);-webkit-mask-size:cover;mask-size:cover}.library-theme-transition[data-direction=to-day]:before{background:radial-gradient(ellipse at 17% 38%, color-mix(in oklch, var(--night-dusty) 84%, transparent), transparent 49%), radial-gradient(ellipse at 78% 54%, color-mix(in oklch, var(--cream-deep) 86%, transparent), transparent 52%), linear-gradient(112deg, var(--night-deep), color-mix(in oklch, var(--cream-deep) 92%, var(--night-text-muted)))}.library-theme-transition[data-direction=to-night]:before{background:radial-gradient(ellipse at 19% 42%, color-mix(in oklch, var(--cream-deep) 82%, transparent), transparent 48%), radial-gradient(ellipse at 76% 48%, color-mix(in oklch, var(--night-dusty) 90%, transparent), transparent 54%), linear-gradient(112deg, color-mix(in oklch, var(--cream-deep) 86%, var(--night-text-muted)), var(--night-deep))}.library-theme-transition[data-phase=covering]{opacity:1;transition-duration:.44s;transform:translate(0,0)scale(1)}.library-theme-transition[data-phase=covering]:before{transition-duration:.44s;transform:translate(0,0)scale(1)}.library-theme-transition[data-phase=revealing]{opacity:0;transition-duration:.68s;transform:translate(.25%)scale(1.008)}@media (width>=30.0625rem){.starry-night-video{object-position:38% 50%}.starry-night-video[data-theme=day]{object-position:50% 50%}}@media (width>=56.25rem){.starry-night-video,.starry-night-video[data-theme=day]{object-position:50% 50%}}.library-header{width:min(100%,840px);color:var(--night-text-muted);justify-content:space-between;align-items:center;margin:0 auto;font-family:Georgia,serif;display:flex}.wordmark{color:var(--night-text);letter-spacing:.02em;align-items:center;gap:8px;font-size:15px;text-decoration:none;display:flex}.wordmark:focus-visible{outline:2px solid var(--night-focus);outline-offset:4px;border-radius:4px}.wordmark-mark{aspect-ratio:1;border:1px solid color-mix(in oklch, var(--night-gold) 48%, transparent);border-radius:50%;place-items:center;width:30px;font-size:14px;font-style:italic;display:grid}.library-header p{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:11px}.library-header-actions{align-items:center;gap:12px;display:flex}.library-bgm-toggle{border:1px solid color-mix(in oklch, var(--night-gold) 34%, transparent);background:color-mix(in oklch, var(--night-surface) 58%, transparent);width:42px;height:42px;color:var(--night-text-muted);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;line-height:1;transition:color .16s ease-out,border-color .16s ease-out,background-color .16s ease-out;display:grid}.library-bgm-toggle svg{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.library-bgm-toggle[aria-pressed=true]{border-color:color-mix(in oklch, var(--night-gold) 58%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 72%, transparent);color:var(--night-gold)}@media (hover:hover){.library-bgm-toggle:hover{border-color:color-mix(in oklch, var(--night-gold) 52%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 68%, transparent);color:var(--night-text)}}.library-bgm-toggle:focus-visible{outline:2px solid var(--night-focus);outline-offset:3px}.library-bgm-toggle:active{transform:translateY(1px)}.library-bgm-toggle:disabled{border-color:color-mix(in oklch, var(--night-rule) 24%, transparent);background:color-mix(in oklch, var(--night-surface) 42%, transparent);color:var(--night-text-dim);cursor:not-allowed;opacity:.55}.library-bgm-audio{display:none}.library-theme-toggle{border:1px solid color-mix(in oklch, var(--night-gold) 34%, transparent);background:color-mix(in oklch, var(--night-surface) 54%, transparent);width:42px;height:42px;color:var(--night-text-muted);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;line-height:1;transition:color .16s ease-out,border-color .16s ease-out,background-color .16s ease-out;display:grid;position:relative}.library-theme-toggle:before{content:"";position:absolute;inset:-1px}.library-theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.library-theme-toggle[aria-pressed=true]{border-color:color-mix(in oklch, var(--night-gold) 58%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 72%, transparent);color:var(--night-gold)}@media (hover:hover){.library-theme-toggle:hover{border-color:color-mix(in oklch, var(--night-gold) 52%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 68%, transparent);color:var(--night-text)}}.library-theme-toggle:focus-visible{outline:2px solid var(--night-focus);outline-offset:3px}.library-theme-toggle:active{transform:translateY(1px)}.library-theme-toggle:disabled{border-color:color-mix(in oklch, var(--night-rule) 24%, transparent);background:color-mix(in oklch, var(--night-surface) 42%, transparent);color:var(--night-text-dim);cursor:not-allowed;opacity:.55}.library-character-toggle{border:1px solid color-mix(in oklch, var(--night-gold) 34%, transparent);background:color-mix(in oklch, var(--night-surface) 54%, transparent);width:42px;height:42px;color:var(--night-text-muted);cursor:pointer;touch-action:manipulation;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .16s ease-out,border-color .16s ease-out,background-color .16s ease-out,transform .12s ease-out;display:grid;position:relative}.library-character-toggle:before{content:"";position:absolute;inset:-1px}.library-character-toggle svg{fill:none;stroke:currentColor;stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}@media (hover:hover){.library-character-toggle:hover{border-color:color-mix(in oklch, var(--night-gold) 52%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 68%, transparent);color:var(--night-text)}}.library-character-toggle:focus-visible{outline:2px solid var(--night-focus);outline-offset:3px}.library-character-toggle:active{transform:scale(.96)}.library-hero{text-align:center;width:min(100%,760px);margin:clamp(42px,8vh,82px) auto 10px}.eyebrow{color:var(--night-gold);letter-spacing:.22em;margin:0 0 14px;font-family:Georgia,serif;font-size:10px}.library-hero h1{color:var(--night-text);letter-spacing:-.045em;text-wrap:balance;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(37px,8.5vw,68px);font-weight:500;line-height:.96}.hero-note{color:var(--night-text-muted);margin:22px auto 0;font-size:clamp(14px,3.8vw,17px);line-height:1.8}.shelf-scene{--totoro-perch-width:44px;--totoro-scene-shift:-22px;width:min(100%,720px);margin:18px auto 0;position:relative}.book-title-card{opacity:.76;border:1px solid color-mix(in oklch, var(--night-rule) 34%, transparent);background:color-mix(in oklch, var(--night-surface-raised) 88%, transparent);width:fit-content;max-width:calc(100% - 24px);min-height:39px;box-shadow:0 8px 24px color-mix(in oklch, var(--night-shadow) 28%, transparent);color:var(--night-text-muted);border-radius:99px;justify-content:center;align-items:center;gap:9px;margin:0 auto 12px;padding:8px 13px 7px;transition:opacity .22s,transform .22s,box-shadow .22s;display:flex;transform:translateY(3px)}.book-title-card.is-visible{opacity:1;box-shadow:0 10px 26px color-mix(in oklch, var(--night-shadow) 46%, transparent);transform:translateY(0)}.book-title-card span{color:var(--night-gold);letter-spacing:.14em;flex:none;font-family:Georgia,serif;font-size:10px}.book-title-card strong{color:var(--night-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;line-height:1.35;overflow:hidden}.shelf-wall{min-height:266px;transform:translateX(var(--totoro-scene-shift));align-items:end;padding:0 8px;display:grid;position:relative}.shelf-wall:before{content:"";background:radial-gradient(ellipse at 50% 88%, color-mix(in oklch, var(--night-shadow-warm) 62%, transparent), transparent 68%);pointer-events:none;width:94%;height:82%;position:absolute;bottom:-4px;right:3%;transform:translateY(14px)}.shelf-wall:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(ellipse at 50% 86%, color-mix(in oklch, var(--night-amber) 16%, transparent), transparent 66%);position:absolute;inset:20% 6% 7%}.books-row{z-index:3;transform-origin:bottom;justify-content:center;align-items:flex-end;gap:5px;min-height:232px;padding:0 12px 13px;display:flex;position:relative}.books-row:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center, color-mix(in oklch, var(--night-shadow-warm) 72%, transparent), transparent 72%);height:18px;position:absolute;bottom:7px;left:7%;right:7%}.library-character-stage{z-index:3;opacity:1;transform-origin:50% 100%;pointer-events:none;transition:opacity .18s ease-out,transform .18s ease-out;position:absolute;inset:0;transform:scale(1)}.library-character-stage.is-exiting{opacity:0;transform:scale(.97)}.library-character-stage.is-howl{z-index:6}.howl-castle-companion{--howl-preferred-size:78px;--howl-min-size:32px;--howl-foot-offset:5px;z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}@media (width<=480px){.howl-castle-companion{--howl-foot-offset:3px}}.howl-castle-traveller{width:var(--howl-size,var(--howl-preferred-size));aspect-ratio:8/9;transform:translate3d(var(--howl-x,0px), var(--howl-y,0px), 0);transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.howl-castle-video,.howl-castle-fallback{opacity:0;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;visibility:hidden;width:100%;height:100%;display:block;position:absolute;inset:0}.howl-castle-video[data-active=true],.howl-castle-fallback[data-visible=true]{opacity:1;visibility:visible}.howl-castle-video{background:0 0}.shelf-book{--book-grain-angle:89deg;--book-grain-shift:0px;--book-sheen-x:24%;--book-wear-x:76%;--book-cloth-position:18% 24%;--book-cloth-size:1100px;--book-texture-opacity:.18;--book-wear-opacity:.4;--book-radius:3px 4px 1px 2px;isolation:isolate;flex:0 0 var(--book-width);width:var(--book-width);height:var(--book-height);cursor:pointer;border-radius:var(--book-radius);color:#fff5dceb;background:linear-gradient(92deg, color-mix(in oklch, var(--night-text) 17%, transparent), transparent 14% 72%, color-mix(in oklch, var(--night-shadow-warm) 22%, transparent)), linear-gradient(180deg, color-mix(in oklch, var(--night-dusty) 11%, transparent), transparent 24% 73%, color-mix(in oklch, var(--night-amber) 9%, transparent)), linear-gradient(178deg, color-mix(in oklch, var(--book-color) 91%, var(--night-dusty)), var(--book-color) 42%, color-mix(in oklch, var(--book-dark) 88%, var(--night-amber)) 100%);box-shadow:inset 1px 0 color-mix(in oklch, var(--night-text) 23%, transparent), inset -2px 0 color-mix(in oklch, var(--night-shadow-warm) 32%, transparent), inset 0 -7px 9px color-mix(in oklch, var(--night-shadow-warm) 16%, transparent), 0 3px 2px -2px color-mix(in oklch, var(--night-shadow) 82%, transparent), 3px 7px 9px color-mix(in oklch, var(--night-shadow-warm) 48%, transparent);transform:rotate(var(--book-lean)) translateY(0);transform-origin:bottom;border:0;outline:none;padding:0;transition:transform .24s cubic-bezier(.2,.8,.2,1),filter .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1);display:block;position:relative;overflow:hidden}.shelf-book,.shelf-book *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.shelf-book:before,.shelf-book:after{content:"";z-index:1;pointer-events:none;position:absolute;inset:0}.shelf-book:before{background:radial-gradient(ellipse at var(--book-sheen-x) 28%, color-mix(in oklch, var(--night-text) 13%, transparent), transparent 38%), url(/assets/book-cloth-texture-qdoGZXKZ.png);background-position:0 0, var(--book-cloth-position);background-repeat:no-repeat;background-size:auto, var(--book-cloth-size) var(--book-cloth-size);opacity:var(--book-texture-opacity);mix-blend-mode:soft-light}.shelf-book:after{background:radial-gradient(ellipse at var(--book-wear-x) -7%, color-mix(in oklch, var(--night-text) 19%, transparent), transparent 31%), radial-gradient(circle at 100% 100%, color-mix(in oklch, var(--night-shadow-warm) 26%, transparent), transparent 36%), linear-gradient(180deg, color-mix(in oklch, var(--night-dusty) 11%, transparent), transparent 25% 76%, color-mix(in oklch, var(--night-amber) 13%, transparent));box-shadow:inset 0 1px color-mix(in oklch, var(--night-text) 15%, transparent), inset 0 -2px color-mix(in oklch, var(--night-shadow-warm) 24%, transparent);opacity:var(--book-wear-opacity)}.shelf-book:first-of-type{--book-grain-angle:88.4deg;--book-grain-shift:-3px;--book-cloth-position:8% 16%;--book-sheen-x:29%;--book-wear-x:68%;--book-radius:4px 3px 1px 2px}.shelf-book:nth-of-type(2){--book-grain-angle:90.7deg;--book-grain-shift:4px;--book-cloth-position:34% 9%;--book-sheen-x:18%;--book-wear-x:82%;--book-texture-opacity:.2;--book-radius:2px 5px 2px 1px}.shelf-book:nth-of-type(3){--book-grain-angle:89.3deg;--book-grain-shift:1px;--book-cloth-position:62% 27%;--book-sheen-x:38%;--book-wear-x:72%;--book-texture-opacity:.17;--book-wear-opacity:.35;--book-radius:4px 4px 1px 3px}.shelf-book:nth-of-type(4){--book-grain-angle:91.2deg;--book-grain-shift:-5px;--book-cloth-position:21% 43%;--book-sheen-x:23%;--book-wear-x:61%;--book-texture-opacity:.15;--book-radius:3px 5px 1px 2px}.shelf-book:nth-of-type(5){--book-grain-angle:88.8deg;--book-grain-shift:6px;--book-cloth-position:76% 12%;--book-sheen-x:34%;--book-wear-x:79%;--book-texture-opacity:.21;--book-wear-opacity:.44;--book-radius:5px 3px 2px 1px}.shelf-book:nth-of-type(6){--book-grain-angle:90.4deg;--book-grain-shift:-1px;--book-cloth-position:45% 61%;--book-sheen-x:20%;--book-wear-x:66%;--book-texture-opacity:.19;--book-radius:3px 4px 2px 3px}.shelf-book:nth-of-type(7){--book-grain-angle:89.6deg;--book-grain-shift:3px;--book-cloth-position:88% 36%;--book-sheen-x:41%;--book-wear-x:84%;--book-texture-opacity:.17;--book-wear-opacity:.37;--book-radius:4px 3px 1px 2px}.book-top-line{z-index:2;background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--night-text) 57%, transparent) 18% 77%, transparent);opacity:.72;height:1px;transform:translateX(calc(var(--book-grain-shift) * .18));position:absolute;top:18px;left:6px;right:6px}.shelf-book:hover,.shelf-book:focus-visible{z-index:4;filter:brightness(1.045)saturate(1.01);box-shadow:inset 1px 0 color-mix(in oklch, var(--night-text) 25%, transparent), inset -2px 0 color-mix(in oklch, var(--night-shadow-warm) 28%, transparent), 0 0 0 1px color-mix(in oklch, var(--night-gold) 48%, transparent), 4px 11px 13px color-mix(in oklch, var(--night-shadow-warm) 58%, transparent);transform:rotate(0)translateY(-12px)scale(1.045)}.shelf-book:focus-visible{outline:2px solid var(--night-focus);outline-offset:3px}.shelf-book:active{transform:rotate(0)translateY(-7px)scale(.98)}.book-number,.book-foot,.book-spine-title{z-index:2;position:absolute}.book-number,.book-foot{letter-spacing:.13em;font-family:Georgia,serif;left:50%;transform:translate(-50%)}.book-number{font-size:9px;top:26px}.book-foot{font-size:7px;bottom:6px}.book-spine-title{text-align:center;writing-mode:vertical-rl;text-orientation:mixed;place-items:center;font-size:11px;line-height:1.45;display:grid;position:absolute;inset:45px 7px 34px;overflow:hidden;transform:rotate(180deg)}.bookend{--wood-grain-position:34% 52%;isolation:isolate;background:radial-gradient(ellipse at 38% 8%, color-mix(in oklch, var(--night-text) 13%, transparent), transparent 36%), linear-gradient(91deg, var(--night-wood-dark), color-mix(in oklch, var(--night-wood-lit) 91%, var(--night-dusty)) 34%, var(--night-wood-mid) 58%, var(--night-wood-dark));height:116px;box-shadow:inset 1px 0 color-mix(in oklch, var(--night-text) 13%, transparent), inset -2px 0 color-mix(in oklch, var(--night-shadow) 31%, transparent), 0 3px 2px -2px color-mix(in oklch, var(--night-shadow) 78%, transparent), 3px 6px 8px color-mix(in oklch, var(--night-shadow-warm) 52%, transparent);border-radius:3px 2px 2px 3px;flex:0 0 18px;margin:0 2px;position:relative}.bookend:before{content:"";z-index:1;border-radius:inherit;background:linear-gradient(180deg, color-mix(in oklch, var(--night-dusty) 14%, transparent), transparent 31% 72%, color-mix(in oklch, var(--night-amber) 9%, transparent)), url(/assets/painted-wood-grain-BdSr36IA.png);background-position:0 0, var(--wood-grain-position);filter:contrast(1.55)saturate(.84);opacity:.3;mix-blend-mode:normal;pointer-events:none;background-repeat:no-repeat;background-size:auto,348px 116px;position:absolute;inset:0}.bookend:after{content:"";z-index:2;background:url(/assets/painted-wood-grain-BdSr36IA.png) var(--wood-grain-position) / 390px 130px no-repeat, linear-gradient(90deg, color-mix(in oklch, var(--night-wood-dark) 91%, var(--night-dusty)), var(--night-wood-mid) 37%, color-mix(in oklch, var(--night-wood-dark) 90%, var(--night-amber)));background-blend-mode:soft-light, normal;height:13px;box-shadow:inset 0 1px color-mix(in oklch, var(--night-text) 12%, transparent), 0 3px 2px -2px color-mix(in oklch, var(--night-shadow) 76%, transparent);pointer-events:none;border-radius:2px;position:absolute;bottom:0;left:-7px;right:-7px}.bookend-right{--wood-grain-position:72% 46%;border-radius:2px 4px 3px 2px}.bookend-right:before{opacity:.29}.totoro-companion{--totoro-frame-size:78px;--totoro-breathe-rise:-1.1px;--totoro-breathe-scale-x:1.006;--totoro-breathe-scale-y:1.009;--totoro-settle-rise:-.28px;--totoro-settle-scale-x:1.0015;--totoro-settle-scale-y:1.002;--totoro-shadow-rest-scale:1.012;--totoro-shadow-inhale-scale:.965;--totoro-shadow-inhale-opacity:.68;--totoro-motion-duration:5.8s;--totoro-motion-ease:cubic-bezier(.65, 0, .35, 1);z-index:3;width:var(--totoro-frame-size);aspect-ratio:1;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;bottom:8px;right:-55px}.totoro-anchor,.totoro-breathe,.totoro-settle,.totoro-body{position:absolute;inset:0}.totoro-breathe,.totoro-settle{transform-origin:50% 91%}.totoro-anchor:before{content:"";z-index:0;background:radial-gradient(ellipse at 57% 66%, color-mix(in oklch, var(--night-shadow) 24%, transparent), transparent 67%);pointer-events:none;position:absolute;inset:14% 9% 1% 13%}.totoro-contact-shadow{z-index:1;background:radial-gradient(ellipse at center, color-mix(in oklch, var(--night-shadow-warm) 82%, transparent) 0 24%, transparent 72%), radial-gradient(ellipse at center, color-mix(in oklch, var(--night-shadow) 56%, transparent) 0 18%, transparent 76%);opacity:.76;width:58%;height:12%;position:absolute;bottom:7%;left:52%;transform:translate(-50%)}.totoro-body{z-index:2}.totoro-image{object-fit:contain;filter:brightness(.84)saturate(.8)contrast(.96);width:100%;height:100%;display:block;position:absolute;inset:0}.totoro-image-closed{z-index:1;opacity:0}.totoro-lighting{z-index:2;background:radial-gradient(circle at 66% 74%, color-mix(in oklch, var(--night-amber) 13%, transparent), transparent 39%), linear-gradient(102deg, color-mix(in oklch, var(--night-dusty) 26%, transparent), transparent 53%);opacity:.72;pointer-events:none;-webkit-mask:var(--totoro-art) center / contain no-repeat;-webkit-mask:var(--totoro-art) center / contain no-repeat;mask:var(--totoro-art) center / contain no-repeat;mix-blend-mode:multiply;position:absolute;inset:0}.totoro-companion.is-motion-active .totoro-breathe{animation:totoro-breathe var(--totoro-motion-duration) var(--totoro-motion-ease) infinite}.totoro-companion.is-motion-active .totoro-settle{animation:totoro-settle var(--totoro-motion-duration) var(--totoro-motion-ease) .14s infinite}.totoro-companion.is-motion-active .totoro-contact-shadow{animation:totoro-shadow-breathe var(--totoro-motion-duration) var(--totoro-motion-ease) infinite}@keyframes totoro-breathe{0%,to{transform:translateY(0)scaleX(1)scaleY(1)}47%{transform:translateY(var(--totoro-breathe-rise)) scaleX(var(--totoro-breathe-scale-x)) scaleY(var(--totoro-breathe-scale-y))}}@keyframes totoro-settle{0%,to{transform:translateY(0)scaleX(1)scaleY(1)}50%{transform:translateY(var(--totoro-settle-rise)) scaleX(var(--totoro-settle-scale-x)) scaleY(var(--totoro-settle-scale-y))}}@keyframes totoro-shadow-breathe{0%,to{transform:translateX(-50%) scaleX(var(--totoro-shadow-rest-scale));opacity:.78}47%{transform:translateX(-50%) scaleX(var(--totoro-shadow-inhale-scale));opacity:var(--totoro-shadow-inhale-opacity)}}.wood-shelf{isolation:isolate;z-index:4;right:calc(0px - var(--totoro-perch-width));background:radial-gradient(ellipse at 31% 8%, color-mix(in oklch, var(--night-gold) 24%, transparent), transparent 30%), radial-gradient(ellipse at 73% 72%, color-mix(in oklch, var(--night-shadow-warm) 18%, transparent), transparent 36%), linear-gradient(177deg, color-mix(in oklch, var(--night-wood-lit) 90%, var(--night-dusty)) 0 30%, var(--night-wood-mid) 34% 69%, color-mix(in oklch, var(--night-wood-dark) 92%, var(--night-dusty)) 75% 100%);height:21px;box-shadow:inset 0 1px color-mix(in oklch, var(--night-text) 12%, transparent), inset 0 -2px color-mix(in oklch, var(--night-shadow) 34%, transparent), 0 12px 14px color-mix(in oklch, var(--night-shadow-warm) 66%, transparent);border-radius:3px 3px 5px 5px;position:absolute;bottom:0;left:0}.wood-shelf:before,.wood-shelf:after{content:"";z-index:1;border-radius:inherit;pointer-events:none;position:absolute;inset:0}.wood-shelf:before{filter:contrast(1.6)saturate(.86);opacity:.34;mix-blend-mode:normal;background:url(/assets/painted-wood-grain-BdSr36IA.png) 48% 44%/900px 300px no-repeat;-webkit-mask-image:linear-gradient(#000000c2 0 24%,#000 31%);mask-image:linear-gradient(#000000c2 0 24%,#000 31%)}.wood-shelf:after{background:radial-gradient(ellipse at 18% 45%, color-mix(in oklch, var(--night-text) 9%, transparent), transparent 26%), linear-gradient(180deg, color-mix(in oklch, var(--night-dusty) 16%, transparent), transparent 39% 72%, color-mix(in oklch, var(--night-shadow-warm) 24%, transparent));opacity:.56}.wood-shelf span{z-index:2;background:linear-gradient(180deg, color-mix(in oklch, var(--night-dusty) 14%, transparent), transparent 34%), linear-gradient(91deg, color-mix(in oklch, var(--night-wood-dark) 94%, var(--night-dusty)), var(--night-wood-mid) 18%, color-mix(in oklch, var(--night-wood-dark) 92%, var(--night-shadow-warm)) 100%);height:13px;box-shadow:inset 0 2px 3px color-mix(in oklch, var(--night-shadow) 34%, transparent);clip-path:polygon(0 0,100% 0,96% 100%,4% 100%);position:absolute;bottom:-13px;left:5%;right:5%}.wood-shelf span:before{content:"";filter:contrast(1.45)saturate(.78);opacity:.18;mix-blend-mode:normal;pointer-events:none;background:url(/assets/painted-wood-grain-BdSr36IA.png) 57% 68%/820px 273px no-repeat;position:absolute;inset:0}.shelf-hint{color:var(--night-text-muted);text-align:center;margin:24px 0 0;font-size:12px}.shelf-hint span{color:var(--night-gold);font-family:sans-serif;font-size:17px}.library-footer{color:var(--night-text-dim);letter-spacing:.04em;justify-content:center;align-items:center;gap:12px;margin:clamp(45px,8vh,90px) auto 0;font-family:Georgia,serif;font-size:10px;display:flex}.footer-flower{color:var(--night-gold);font-size:15px}@media (width>=481px){.shelf-scene{--totoro-perch-width:96px;--totoro-scene-shift:-36px}.totoro-companion{--totoro-frame-size:152px;--totoro-breathe-rise:-1.5px;--totoro-breathe-scale-x:1.008;--totoro-breathe-scale-y:1.012;--totoro-settle-rise:-.38px;--totoro-settle-scale-x:1.002;--totoro-settle-scale-y:1.0035;--totoro-shadow-rest-scale:1.018;--totoro-shadow-inhale-scale:.95;--totoro-shadow-inhale-opacity:.64;z-index:2;bottom:2px;right:-25px}.howl-castle-companion{--howl-preferred-size:116px}}@media (width>=900px){.shelf-scene{--totoro-perch-width:132px;--totoro-scene-shift:-52px}.totoro-companion{--totoro-frame-size:202px;bottom:0;right:-66px}.howl-castle-companion{--howl-preferred-size:144px}}@media (width>=341px) and (width<=390px){.shelf-scene{--totoro-perch-width:80px;--totoro-scene-shift:-36px}.totoro-companion{right:-70px}}@media (width>=391px) and (width<=480px){.shelf-scene{--totoro-perch-width:68px;--totoro-scene-shift:-34px}.totoro-companion{right:-58px}}@media (width<=340px){.shelf-scene{--totoro-perch-width:76px;--totoro-scene-shift:-34px}.totoro-companion{right:-66px}}@media (width<=480px){.paper-grain{opacity:.03}.books-row .shelf-book{--book-cloth-size:1500px;--book-texture-opacity:.1;--book-wear-opacity:.29}.bookend:before{opacity:.25}.wood-shelf:before{opacity:.29}.wood-shelf:after{opacity:.48}.wood-shelf span:before{opacity:.15}:is(.books-row:has(.shelf-book:hover),.books-row:has(.shelf-book:focus-visible),.books-row:has(.shelf-book:active)){z-index:5}}.reader-overlay{z-index:100;padding:max(10px, env(safe-area-inset-top)) 14px max(12px, env(safe-area-inset-bottom));color:#3a2a20;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0;overflow:hidden}.reader-backdrop{z-index:-2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 45%,#80674829,#0000 42%),#1f1915e0;position:absolute;inset:0}.reader-toolbar{z-index:40;color:#f7eedf;grid-template-columns:42px minmax(0,1fr) 82px;align-items:center;width:min(100%,1180px);min-height:48px;margin:0 auto;display:grid;position:relative}.round-button{cursor:pointer;color:#fff8ec;background:#ffffff14;border:1px solid #ffffff3b;border-radius:50%;place-items:center;width:38px;height:38px;font-family:Arial,sans-serif;font-size:25px;font-weight:200;display:grid}.round-button:hover{background:#ffffff29}.reader-heading{text-align:center;min-width:0;padding:0 10px}.reader-heading span{color:#cbbca9;letter-spacing:.2em;font-family:Georgia,serif;font-size:8px;display:block}.reader-heading strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;font-weight:400;display:block;overflow:hidden}.reader-progress{background:#ffffff29;border-radius:10px;width:72px;height:3px;overflow:hidden}.reader-progress span{border-radius:inherit;background:#e6b778;height:100%;transition:width .35s;display:block}.flipbook-stage{z-index:3;perspective:1800px;place-items:center;width:min(100%,1180px);height:min(78dvh,780px);margin:auto;transition:opacity .3s,transform .55s cubic-bezier(.2,.8,.2,1);display:grid;position:relative}.is-opening .flipbook-stage{opacity:0;transform:scale(.76)}.is-ready .flipbook-stage{opacity:1;transform:scale(1)}.flipbook{filter:drop-shadow(0 24px 22px #00000054);margin:auto}.book-page{color:#302821;background:#fffaf0;border:1px solid #6e583a21;overflow:hidden}.page-paper{background:linear-gradient(90deg,#51371f16,#78532f06 4%,#0000 11% 92%,#51371f0e),radial-gradient(at 31% 16%,#ffffff6b,#0000 48%),radial-gradient(at 76% 82%,#b37e4507,#0000 52%),#fffaf0;width:100%;height:100%;position:relative;overflow:hidden}.book-page.--left .page-paper{background:linear-gradient(90deg,#51371f0b,#0000 8% 89%,#78532f09 94%,#51371f1f),radial-gradient(at 69% 17%,#ffffff61,#0000 48%),radial-gradient(at 24% 79%,#b37e4507,#0000 52%),#fffaf0}.page-paper:before{content:"";z-index:0;filter:brightness(.65)contrast(2.2)saturate(.62);mix-blend-mode:multiply;opacity:.17;pointer-events:none;background:url(/assets/watercolor-paper-texture-BIxKYtLV.png) 50%/cover no-repeat;position:absolute;inset:0}.book-cover-page .page-paper:before{content:none}.page-content{z-index:1;width:100%;height:100%;padding:clamp(23px,4.3vw,42px) clamp(21px,4vw,38px) clamp(30px,5vw,48px);font-family:Library Burmese,Georgia,serif;font-size:clamp(14px,1.5vw,18px);line-height:1.86;position:relative;overflow:hidden}.page-backside-bleed{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;contain:paint;display:none;position:absolute;inset:0;overflow:hidden}@media (width<=760px){.book-page.is-showing-paper-backside .page-paper>.page-content,.book-page.is-showing-paper-backside .page-paper>.page-number{visibility:hidden}.book-page.is-showing-paper-backside .page-backside-bleed{display:block}.page-backside-ink{color:#665d54;filter:grayscale(.9)sepia(.28)saturate(.42)contrast(.62);mix-blend-mode:multiply;opacity:.4;transform-origin:50%;position:absolute;inset:0;transform:scaleX(-1)}.book-page.--right .page-backside-bleed{-webkit-mask-image:linear-gradient(90deg,#0000008f,#000000c7 58%,#000);mask-image:linear-gradient(90deg,#0000008f,#000000c7 58%,#000)}.book-page.--left .page-backside-bleed{-webkit-mask-image:linear-gradient(270deg,#0000008f,#000000c7 58%,#000);mask-image:linear-gradient(270deg,#0000008f,#000000c7 58%,#000)}}.page-measure{z-index:-1000;visibility:hidden;pointer-events:none;background:#fff;position:fixed;top:0;left:-20000px}.page-content p{margin:0 0 1.15em}.page-content h1,.page-content h2,.page-content h3{margin:.7em 0 .65em;font-weight:400;line-height:1.55}.page-content h2{font-size:1.17em}.page-content ul,.page-content ol{margin:.5em 0 1.15em;padding-left:1.4em}.page-content li{margin-bottom:.58em}.page-content a{color:#96512e;text-underline-offset:3px}.page-content .figure,.page-content .wide-image,.page-content figure{margin:.4em 0 1.05em}.page-content img{object-fit:cover;filter:sepia(.05)saturate(.88);border-radius:8px;width:100%;max-height:250px;display:block}.page-content figcaption,.page-content .caption{color:#8c7765;text-align:center;margin-top:6px;font-size:.72em;line-height:1.45}.page-content .section-callout,.page-content .highlight,.page-content .quote,.page-content .pull-quote,.page-content .coffee-note{background:#fff2d8;border:1px solid #e7d1aa;border-left:3px solid #c57945;border-radius:2px 10px 10px 2px;margin:.7em 0 1em;padding:.75em .9em}.page-content .section-callout h2,.page-content .highlight p,.page-content .quote p{margin:0}.page-content .separator,.page-content .dot{color:#9b806b;text-align:center;margin:1em 0}.page-content .choice-grid{grid-template-columns:1fr 1fr;gap:7px;margin:.7em 0 1em;display:grid}.page-content .choice{background:#fffdf7;border:1px solid #ead9ba;border-radius:7px;padding:8px;font-size:.78em}.page-content .choice span{color:#a45b35;font-family:Georgia,serif}.page-content .choice p{margin:4px 0 0}.editorial-page{min-height:100%}.editorial-chapter>h2:first-child,.editorial-story>h2:first-child,.editorial-ending>h2:first-child{color:#6f4028;border-top:1px solid #d7b98d;margin-top:.15em;padding-top:.7em;font-size:1.32em}.editorial-story{padding:.35em .15em 0}.editorial-spotlight,.editorial-image,.editorial-ending{flex-direction:column;justify-content:center;min-height:100%;display:flex}.editorial-spotlight{text-align:center;position:relative}.editorial-spotlight:before{content:"✣";color:#bd865c;margin-bottom:1.2em;font-family:Georgia,serif;font-size:.8em;display:block}.editorial-spotlight h2,.editorial-spotlight h3{color:#744328;margin:0 0 1.2em;font-size:1.38em}.page-content .editorial-spotlight .highlight,.page-content .editorial-spotlight .quote,.page-content .editorial-spotlight .pull-quote,.page-content .editorial-spotlight blockquote{color:#573623;background:linear-gradient(145deg,#fff7e8,#f9e8c8);border:1px solid #d9bb8c;border-radius:14px;margin:0;padding:1.35em 1.1em;font-size:1.14em;line-height:1.9;box-shadow:0 12px 26px #64422214}.editorial-image{text-align:center;align-items:center}.page-content .editorial-image figure,.page-content .editorial-image .figure,.page-content .editorial-image .wide-image{width:100%;margin:0}.page-content .editorial-image img{object-fit:contain;border-radius:11px;width:100%;max-height:min(52vh,410px);box-shadow:0 12px 30px #4b342021}.editorial-ending{color:#5e4737}.editorial-ending:after{content:"✣";color:#b7774c;text-align:center;margin-top:1em;display:block}.reader-cover{color:#fff7e7;text-align:center;background:linear-gradient(90deg, #ffffff21, transparent 9%, transparent 88%, #00000040), linear-gradient(150deg, var(--cover-color), var(--cover-dark));flex-direction:column;justify-content:center;align-items:center;padding:9%;display:flex;position:absolute;inset:0;overflow:hidden}.reader-cover:before{content:"";pointer-events:none;border:1px solid #fff0d273;position:absolute;inset:4%}.reader-cover .cover-kicker{letter-spacing:.16em;font-family:Georgia,serif;font-size:.56em}.reader-cover h1{z-index:1;text-wrap:balance;margin:1em 0 .8em;font-size:clamp(20px,3vw,34px);line-height:1.55;position:relative}.reader-cover figure{background:#ffffff14;border:1px solid #fff4da59;width:72%;max-width:260px;margin:0 0 1em;padding:5px}.reader-cover img{object-fit:cover;border-radius:0;width:100%;max-height:200px}.reader-cover p{margin:.25em 0 0;font-family:Georgia,serif;font-size:1.1em}.reader-cover small{opacity:.72;letter-spacing:.12em;font-family:Georgia,serif;font-size:.55em}.end-page{color:#f8ead2;text-align:center;background:linear-gradient(145deg,#77513b,#3f2c22);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.end-page span{font-size:28px}.end-page p{margin:1em 0;line-height:1.9}.end-page small{opacity:.7;font-family:Georgia,serif}.page-number{z-index:1;color:#a08b76;font-family:Georgia,serif;font-size:9px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.reader-controls{z-index:50;color:#e8dbcb;justify-content:center;align-items:center;gap:20px;margin-top:4px;font-family:Georgia,serif;font-size:10px;display:flex;position:relative}.reader-controls button{cursor:pointer;color:#fff6e7;background:#ffffff14;border:1px solid #ffffff2e;border-radius:99px;place-items:center;width:42px;height:34px;font-family:Arial,sans-serif;font-size:18px;display:grid}.reader-controls button:disabled{cursor:default;opacity:.25}.swipe-note{right:0;bottom:max(12px, env(safe-area-inset-bottom));z-index:20;color:#f4e7d57a;text-align:center;pointer-events:none;margin:0;font-size:9px;position:absolute;left:0;transform:translateY(-40px)}.reader-message{color:#f7ecdc;text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.reader-message button{color:inherit;background:#ffffff14;border:1px solid #ffffff38;border-radius:99px;padding:8px 14px}.loading-book span{border:2px solid #d4ae79;border-right-width:7px;border-radius:2px 8px 8px 2px;width:35px;height:27px;animation:1s ease-in-out infinite alternate book-breathe}@keyframes book-breathe{to{transform:perspective(100px)rotateY(-18deg)scale(1.05)}}@media (width>=761px){.library-shell{padding-block:18px}.library-hero{margin-top:clamp(28px,5vh,58px)}.library-hero h1{font-size:clamp(42px,5.8vw,62px)}.hero-note{margin-top:14px;line-height:1.65}.shelf-scene{transform-origin:top;margin-top:8px;margin-bottom:-24px;transform:scale(.91)}.library-footer{margin-top:clamp(24px,4vh,44px)}}@media (width>=761px) and (height<=800px){.library-shell{padding-block:12px}.library-hero{margin-top:18px}.library-hero h1{font-size:clamp(38px,5vw,54px)}.hero-note{margin-top:10px}.shelf-scene{margin-top:0;margin-bottom:-52px;transform:scale(.8)}.library-footer{margin-top:14px}.reader-overlay{padding-top:6px;padding-bottom:8px}.reader-toolbar{min-height:42px}.flipbook-stage{height:min(72dvh,610px)}.reader-controls{margin-top:-10px}.page-content{padding:22px 24px 34px;font-size:14px;line-height:1.72}.page-content p{margin-bottom:.9em}.page-content h1,.page-content h2,.page-content h3{margin:.45em 0 .58em;line-height:1.42}.page-content h2{font-size:1.08em}.editorial-chapter>h2:first-child,.editorial-story>h2:first-child,.editorial-ending>h2:first-child{font-size:1.18em}.page-content img{max-height:190px}.page-content .editorial-image img{max-height:min(42vh,280px)}.page-content .editorial-spotlight .highlight,.page-content .editorial-spotlight .quote,.page-content .editorial-spotlight .pull-quote,.page-content .editorial-spotlight blockquote{font-size:1.02em;line-height:1.72}.reader-cover h1{font-size:clamp(18px,2.25vw,27px)}.reader-cover img{max-height:150px}}@media (width<=760px){body.library-page-active,body.library-page-active #root{overscroll-behavior-y:none}html:has(body.library-page-active){overscroll-behavior-y:none}.library-shell{min-height:100dvh;padding-top:max(18px, env(safe-area-inset-top));padding-bottom:calc(36px + env(safe-area-inset-bottom))}.library-header{width:calc(100% - 4px)}.library-header p{display:none}.library-hero{margin-top:clamp(48px,7.5vh,64px);margin-bottom:0}.library-hero br{display:none}.eyebrow{margin-bottom:14px}.library-hero h1{overflow-wrap:anywhere;min-width:0;max-width:100%;margin-inline:auto;font-size:clamp(34px,9.5vw,37px);line-height:.94}.shelf-scene{--mobile-shelf-scale:.96;margin-top:20px}.shelf-wall{min-height:250px;transform:translateX(var(--totoro-scene-shift)) scale(var(--mobile-shelf-scale));transform-origin:bottom;padding-inline:0}.books-row{gap:3px;min-height:220px;padding-inline:6px}.bookend{flex-basis:14px}.shelf-hint{margin-top:24px;font-size:11px;line-height:1.55}.shelf-hint span{font-size:14px}.library-footer{margin-top:clamp(58px,8vh,70px);line-height:1.65}.reader-overlay{padding-inline:8px}.reader-toolbar{grid-template-columns:42px minmax(0,1fr) 52px}.reader-progress{width:48px}.reader-heading strong{font-size:11px}.flipbook-stage{width:100%;height:calc(100dvh - 132px);max-height:760px}.page-paper:before{opacity:.12}.page-content{padding:25px 22px 36px;font-size:16px;line-height:1.88}.page-content img{max-height:210px}.reader-controls{margin-top:-2px}.swipe-note{display:none}}@media (width<=480px){.shelf-scene{--mobile-shelf-scale:.9}.shelf-book{flex-basis:var(--book-mobile-width);width:var(--book-mobile-width)}}@media (width<=380px){.shelf-scene{--mobile-shelf-scale:.87}.book-title-card{margin-bottom:12px}}@media (width>=381px) and (width<=390px){.shelf-scene{--mobile-shelf-scale:.88}}@media (width<=340px){.shelf-scene{--mobile-shelf-scale:.86}.library-hero h1{letter-spacing:-.055em}}@media (width<=767px){.shelf-scene{--mobile-shelf-scale:.83;--mobile-shelf-nudge:-4px}.shelf-wall{transform:translateX(calc(var(--totoro-scene-shift) + var(--mobile-shelf-nudge))) scale(var(--mobile-shelf-scale));transform-origin:bottom}.shelf-hint{margin-top:36px}}@media (width<=480px){.shelf-scene{--mobile-shelf-nudge:5.5px}}@media (width<=400px){.shelf-scene{--mobile-shelf-scale:.8}}@media (width<=389px){.shelf-scene{--mobile-shelf-scale:.75}}@media (width>=341px) and (width<=389px){.shelf-scene{--totoro-perch-width:96px;--mobile-shelf-nudge:0px}.totoro-companion{right:-86px}}@media (width<=340px){.shelf-scene{--mobile-shelf-scale:.75;--mobile-shelf-nudge:2.5px}}@media (width>=481px) and (width<=540px){.shelf-scene{--mobile-shelf-scale:.8}}@media (width>=661px) and (width<=760px){.shelf-scene{--mobile-shelf-scale:.85}}@media (width>=761px) and (width<=767px){.shelf-scene{--mobile-shelf-scale:.93;--mobile-shelf-nudge:-9px}}@media (height<=700px) and (width<=760px){.reader-toolbar{min-height:42px}.flipbook-stage{height:calc(100dvh - 116px)}.page-content{padding:20px 20px 30px;font-size:14.5px;line-height:1.78}.reader-controls button{height:30px}}@media (prefers-reduced-motion:reduce){.library-character-stage{transition-duration:80ms}.howl-castle-traveller{will-change:auto}.totoro-breathe,.totoro-settle,.totoro-contact-shadow{animation:none!important}.totoro-breathe,.totoro-settle{transform:none!important}.totoro-contact-shadow{opacity:.76!important;transform:translate(-50%)!important}.totoro-image-closed{opacity:0!important}.night-video-overlay{opacity:.42}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.library-theme-transition,.library-theme-transition:before{transition-duration:80ms!important;transform:none!important}}.page-content a.reader-book-link,.page-content a.reader-home-link,.page-content a.reader-external-link{color:#81502f;text-underline-offset:.2em;font-weight:700;text-decoration-line:underline;text-decoration-color:#81502f57;text-decoration-thickness:1px;transition:color .16s,text-decoration-color .16s}.page-content a.reader-book-link:after{content:"  ↗";white-space:nowrap;font-family:Georgia,serif;font-size:.78em;font-weight:400}.page-content a.reader-home-link:after{content:"  ↩";font-family:Georgia,serif;font-size:.82em}.page-content a.reader-external-link:after{content:"  ↗";opacity:.72;font-family:Georgia,serif;font-size:.72em}.page-content a.reader-book-link:hover,.page-content a.reader-book-link:focus-visible,.page-content a.reader-home-link:hover,.page-content a.reader-home-link:focus-visible,.page-content a.reader-external-link:hover,.page-content a.reader-external-link:focus-visible{color:#57321d;text-decoration-color:currentColor}.page-content a.reader-book-link:focus-visible,.page-content a.reader-home-link:focus-visible,.page-content a.reader-external-link:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #81502f94}.page-content a.reader-book-link.is-current-book,.page-content a.reader-link-unavailable{color:#887769;cursor:default;font-weight:600;text-decoration:none}.page-content a.reader-book-link.is-current-book:after,.page-content a.reader-link-unavailable:after{content:"  ·  " attr(data-link-status);color:#9b8b7d;white-space:nowrap;font-family:inherit;font-size:.72em;font-weight:400;display:inline}.reader-overlay .flipbook-stage{position:relative}.reader-overlay .flipbook{transition:opacity .18s}body.reader-book-switching .reader-overlay .flipbook{opacity:0}body.reader-book-switching .reader-overlay .flipbook-stage:after{content:"နောက်စာအုပ်ကို ဖွင့်နေပါတယ်…";z-index:60;color:#f1e5cd;pointer-events:none;background:#251d19c2;border:1px solid #eedcbe42;border-radius:999px;padding:.72rem 1rem;font-size:.82rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.library-character-stage.is-howl{z-index:6;pointer-events:none}.library-character-stage.is-howl+.wood-shelf{z-index:4!important}.library-character-stage.is-howl .howl-castle-traveller{transform:translate3d(var(--howl-x,0px), var(--howl-y,0px), 0) translateX(var(--howl-anchor-shift,0%))}.howl-castle-companion[data-howl-state=resting-at-right] .howl-castle-traveller{--howl-anchor-shift:-0.234375%}.howl-castle-companion[data-howl-state=walking-left] .howl-castle-traveller{--howl-anchor-shift:6.25%}.howl-castle-companion[data-howl-state=resting-at-left] .howl-castle-traveller{--howl-anchor-shift:1.95313%}.howl-castle-companion[data-howl-state=walking-right] .howl-castle-traveller{--howl-anchor-shift:-4.53125%}.howl-castle-video[data-active=false]{opacity:0;visibility:hidden}.howl-castle-video[data-active=true]{opacity:1;visibility:visible}.howl-castle-mobile-animation{object-fit:contain;opacity:0;visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.howl-castle-mobile-animation[data-active=true]{opacity:1;visibility:visible}
