/* Full-viewport entry: its own opaque surface, separate from the hero captions. */
html.intro-loading{overflow:hidden;overscroll-behavior:none}
html.intro-loading body{overscroll-behavior:none}
.studio-loading{position:fixed;inset:0;z-index:1000;display:none;place-items:center;overflow:hidden;isolation:isolate;background:#080a10;color:#f9f7ff;touch-action:none;outline:none;padding:32px;opacity:1;transition:opacity .65s cubic-bezier(.65,0,.35,1);--load:0}
.intro-loading .studio-loading{display:grid}
.studio-loading::before{content:'';position:absolute;inset:-25%;z-index:-1;background:radial-gradient(ellipse at 46% 42%,#692c962b,transparent 36%),radial-gradient(ellipse at 64% 56%,#b62b5520,transparent 30%);animation:entry-atmosphere 9s ease-in-out infinite alternate;pointer-events:none}
.studio-loading::after{content:'';position:absolute;left:5%;right:5%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#a273b955,transparent)}
.loading-corner{position:absolute;top:max(30px,env(safe-area-inset-top));left:var(--pad);font-size:10px;letter-spacing:.18em;font-weight:600;color:#aaa1b8}
.loading-corner span{display:inline-block;width:5px;height:5px;margin-right:10px;border-radius:50%;background:#cc9bea;box-shadow:0 0 12px #bd67e5}
.loading-content{width:min(430px,100%);text-align:center;transform:translateY(-15px);transition:opacity .3s,transform .55s cubic-bezier(.65,0,.35,1)}
.loading-emblem{position:relative;width:310px;height:310px;margin:0 auto 0;display:grid;place-items:center}
.loading-emblem::before{content:'';position:absolute;inset:26px;border:1px solid #bf99d615;border-radius:50%;transform:rotateX(62deg) rotateZ(-22deg)}
.loading-logo{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .4s}
.loading-logo.is-rendered{opacity:1}
.loading-mark{width:100%;height:100%;opacity:1;transition:opacity .3s}
.loading-emblem:has(.is-rendered) .loading-mark{opacity:0}
.loading-wordmark{font-size:40px;line-height:1.1;letter-spacing:-.065em;font-weight:700;margin:0 0 13px}
.loading-tagline{margin:0;color:#aaa1b8;font-size:10px;font-weight:500;letter-spacing:.26em;text-transform:uppercase}
.loading-meter{max-width:310px;margin:48px auto 0}
.loading-status{display:flex;align-items:end;justify-content:space-between;gap:18px;text-align:left;min-height:39px}
.loading-note{display:block;max-width:230px;font-size:12px;line-height:1.6;font-weight:500;color:#cbc3d8;margin:0}
.loading-percentage{display:flex;align-items:baseline;gap:3px;color:#f6eefb;font-variant-numeric:tabular-nums;letter-spacing:-.04em;white-space:nowrap}
.loading-number{font-size:29px;line-height:1;font-weight:500}.loading-percentage small{font-size:11px;color:#a69bb7}
.loading-track{height:2px;position:relative;background:#ffffff14;margin-top:17px;overflow:hidden;border-radius:3px}
.loading-track>span{display:block;width:100%;height:100%;transform:scaleX(var(--load));transform-origin:left;background:linear-gradient(90deg,#882bc0,#e93790,#ffb76d);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.loading-progress{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.loading-footnote{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));left:24px;right:24px;text-align:center;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#897f9b;margin:0}
.loading-footnote i{font-style:normal;color:#c886d1;padding:0 12px}
.loading-retry{margin:25px auto 0;border:1px solid #c487df7a;border-radius:99px;background:#9c59c21a;color:#f5e8ff;font-size:13px;font-weight:600;padding:13px 28px;min-height:46px}
.studio-loading.is-complete{opacity:0}.studio-loading.is-complete .loading-content{opacity:0;transform:translateY(-32px) scale(1.025)}
.studio-loading.has-error .loading-note{max-width:310px;margin:32px auto 0;text-align:center}.studio-loading.has-error .loading-meter{display:contents}.studio-loading.has-error .loading-status{display:block}.studio-loading.has-error .loading-percentage,.studio-loading.has-error .loading-track{display:none}
@keyframes entry-atmosphere{to{transform:translate3d(2%,-2%,0) scale(1.08);opacity:.65}}
@media(max-width:760px){.studio-loading{padding:24px}.loading-corner{font-size:8px;top:max(25px,env(safe-area-inset-top))}.loading-emblem{width:260px;height:260px}.loading-wordmark{font-size:34px}.loading-tagline{font-size:8px;letter-spacing:.23em}.loading-meter{margin-top:38px;max-width:275px}.loading-note{font-size:11px;max-width:205px}.loading-footnote{font-size:7px;letter-spacing:.13em}.loading-content{transform:translateY(-12px)}}
@media(max-height:560px){.loading-content{transform:none}.loading-emblem{height:170px;width:170px}.loading-wordmark{font-size:29px;margin-bottom:9px}.loading-meter{margin-top:25px}.loading-corner{top:18px}.loading-footnote{bottom:18px}}
@media(prefers-reduced-motion:reduce){.studio-loading,.studio-loading *,.studio-loading::before{animation:none!important;transition:none!important}}

.chapter h1:focus,.chapter h2:focus{outline:none}
