/* The loader owns only the entry overlay; the accepted world stays unchanged. */
body.is-loading{overflow:hidden}
.no-js{z-index:101}
.is-loading>header,.is-loading>#chapters,.is-loading>.chapter-nav,.is-loading>footer{visibility:hidden}
#preloader{position:fixed;inset:0;z-index:100;background:#e8e5df;color:#443b4b;display:flex;flex-direction:column;justify-content:space-between;padding:36px 5.6%;overflow:hidden;clip-path:inset(0);transition:clip-path .85s cubic-bezier(.76,0,.24,1),visibility 0s .85s}
#preloader::before{content:"";position:absolute;inset:14px;border:1px solid #fff9;border-radius:5px;pointer-events:none}
#preloader[hidden]{display:none}
.loader-top,.loader-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:1}
.loader-top>span:last-child{font:9px ui-monospace,monospace;letter-spacing:2.4px;color:#8d8191}
.loader-wordmark{font:32px Georgia,serif;letter-spacing:-1.8px}
.loader-wordmark span{font-size:19px;margin-left:9px;color:#94809c}
.loader-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);text-align:center;width:min(420px,85vw);height:360px;display:flex;align-items:center;flex-direction:column;justify-content:center}
.loader-kicker{position:absolute;top:-9px;margin:0;font:9px ui-monospace,monospace;letter-spacing:3.4px;color:#817187}
.loader-orbit{position:absolute;inset:24px 55px 25px;pointer-events:none}
.loader-orbit svg{width:100%;height:100%;overflow:visible}
.orbit-guide{fill:none;stroke:#b9b0bd;stroke-width:.45}
.orbit-progress{fill:none;stroke:#85728e;stroke-width:1.2;stroke-dasharray:100;stroke-dashoffset:100;transform:rotate(-90deg);transform-origin:120px 120px;transition:stroke-dashoffset .3s ease}
.orbit-star{fill:none;stroke:#85728e;stroke-width:.8}
#load-progress{position:relative;font-family:Georgia,"Times New Roman",serif;line-height:1;letter-spacing:-8px;font-weight:400;display:flex;align-items:baseline;justify-content:center;min-width:210px}
#load-number{font-size:112px;font-variant-numeric:lining-nums tabular-nums}
.load-percent{font:14px ui-monospace,monospace;letter-spacing:0;margin-left:11px;color:#938298}
#load-stage{position:absolute;bottom:57px;margin:0;font-size:11px;letter-spacing:2px;color:#817187}
.loader-bottom{font-size:10px;letter-spacing:1.5px;color:#8d8191;margin-top:auto}
#load-state{font:9px ui-monospace,monospace;letter-spacing:2px}
#preloader.is-ready .loader-orbit{transform:scale(1.065);transition:transform .7s cubic-bezier(.16,1,.3,1)}
#preloader.is-leaving{clip-path:inset(0 0 100% 0);visibility:hidden}
#load-recovery{position:absolute;top:100%;display:flex;align-items:center;justify-content:center;gap:28px;font-size:11px;width:100%;animation:show-recovery .15s linear 8s both}
#load-recovery[hidden]{display:none}
#load-retry{padding:10px 0;border-bottom:1px solid #9f90a6}
#load-recovery a{color:#8d8191;text-decoration:underline;text-underline-offset:5px}
#preloader.is-failed .orbit-progress{stroke:#9e7e76}
#preloader.is-failed #load-recovery{animation:none;visibility:visible;opacity:1}
@keyframes show-recovery{from{visibility:hidden;opacity:0}to{visibility:visible;opacity:1}}
#preloader.is-failed #load-stage{letter-spacing:0;max-width:90%;line-height:1.7}
@media(max-width:700px){#preloader{padding:27px 25px}.loader-wordmark{font-size:25px;letter-spacing:-1.2px}.loader-wordmark span{font-size:14px;margin-left:5px}.loader-top>span:last-child{display:none}.loader-center{height:310px;top:47%}.loader-orbit{inset:19px 28px 24px}.loader-kicker{font-size:8px;letter-spacing:2px;top:-4px}#load-number{font-size:88px}#load-progress{letter-spacing:-6px}.load-percent{font-size:12px}#load-stage{bottom:50px;font-size:10px}.loader-bottom{font-size:9px;letter-spacing:1px}#preloader::before{inset:8px}}
@media(max-height:500px){.loader-center{height:240px;top:51%}.loader-orbit{inset:10px 100px}#load-number{font-size:72px}.loader-kicker{top:-9px}#load-stage{bottom:35px}}
@media(prefers-reduced-motion:reduce){#preloader{transition:opacity .15s,visibility 0s .15s}#preloader.is-leaving{clip-path:none;opacity:0}.orbit-progress{transition:none}#preloader.is-ready .loader-orbit{transform:none}}
