.chronicle-page .prologue-magic-scene{max-width:42rem;margin-inline:auto;padding:0;background:transparent;color:var(--story-prose-ink,#e3e1d5);border:0;border-radius:0;box-shadow:none}
.chronicle-page .prologue-magic-scene .chronicle-scene-label,.chronicle-page .prologue-magic-scene .chronicle-eyebrow,.chronicle-page .prologue-magic-scene .chronicle-scene-identity{color:#d9ba8b}
.chronicle-page .prologue-magic-scene .chronicle-scene-identity strong{color:#eee6d6}
.prologue-magic-scene>.chronicle-scene-identity{margin:0 0 1rem}
.prologue-magic-performance{scroll-margin-top:1rem;color:#eee6d6}
.prologue-magic-frame{position:relative;isolation:isolate;overflow:hidden;border-radius:.3rem;background:#111416;aspect-ratio:3/2;border:1px solid #96714765}
.chronicle-page .prologue-magic-frame .prologue-magic-picture{display:block;width:100%;height:100%;max-height:none;margin:0;object-fit:contain;border:0;border-radius:0;animation:none}
.prologue-magic-frame:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(180deg,#080b12bd,transparent 31%,transparent 84%,#080b122b)}
.prologue-magic-frame-label{position:absolute;z-index:4;inset:1rem 1.2rem auto;display:grid;gap:.3rem;color:#fff4d7;text-shadow:0 2px 6px #000}
.prologue-magic-frame-label span{font-size:.7rem;letter-spacing:.1em;font-weight:500}
.prologue-magic-frame-label strong{font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(1.35rem,3vw,2rem);font-weight:500}
/* Generated two-cell transparent raster, never a CSS-drawn human figure. */
.prologue-magic-shadow,.prologue-magic-pocket-shadow{position:absolute;background-image:url('assets/chronicle/shadow-sprites.webp');background-size:200% 100%;background-repeat:no-repeat;background-position:0 0;pointer-events:none;mix-blend-mode:multiply}
.prologue-magic-shadow{z-index:1;left:32.7%;top:20%;width:32%;height:64%;opacity:.85;transform:translateX(var(--shadow-offset,0%));transition:transform .28s ease-out}
.prologue-magic-shadow[data-shadow-pose="up"],.prologue-magic-pocket-shadow{background-position:100% 0}
.is-phase-2 .prologue-magic-shadow{transition:none}
.is-phase-3 .prologue-magic-shadow{animation:magic-shadow-capture 1.05s cubic-bezier(.5,0,.65,1) both}
.prologue-magic-box-reveal{position:absolute;z-index:2;inset:0;opacity:1;animation:magic-box-arrive .4s 1s ease-out both}
.prologue-magic-pocket-shadow{left:40%;top:32%;width:20%;height:40%;opacity:.85;transform:rotate(15deg) scaleY(.45)}
.is-phase-4 .prologue-magic-shadow:not(.has-gesture){animation:magic-shadow-return 1.2s ease-out both,magic-shadow-late 1.6s step-end both}
.prologue-magic-gestures{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:.85rem 0 .35rem}
.prologue-magic-gestures button{flex:1;min-width:5rem;min-height:2.8rem;padding:.5rem .65rem;border:1px solid #ae8d5e8a;border-radius:.25rem;background:transparent;color:#f6e7ca;font:inherit;font-size:.9rem;cursor:pointer}
.prologue-magic-gestures button:hover{background:#bda47214}
.prologue-magic-gestures button:focus-visible,.prologue-magic-actions button:focus-visible{outline:3px solid #f7d39c;outline-offset:3px}
.chronicle-page .prologue-magic-status{margin:.3rem 0 .1rem;color:#e7c995;font-size:.88rem;line-height:1.6;text-align:center;min-height:2.8em}
.prologue-magic-caption{padding:1.1rem .2rem .35rem;color:inherit;font-size:1rem;line-height:1.8;min-height:7rem}
.prologue-magic-caption p:first-child{margin-top:0}
.chronicle-page .prologue-magic-introduction p,.chronicle-page .prologue-magic-caption p,.chronicle-page .prologue-magic-after p{color:#eee6d6}
.chronicle-page .prologue-magic-introduction .chronicle-speech,.chronicle-page .prologue-magic-caption .chronicle-speech,.chronicle-page .prologue-magic-after .chronicle-speech{margin:.85rem 0;background:none;border:0;color:var(--story-prose-ink,#e3e1d5);padding:.85rem}
.chronicle-page .prologue-magic-introduction .chronicle-speech-body,.chronicle-page .prologue-magic-caption .chronicle-speech-body,.chronicle-page .prologue-magic-caption .chronicle-speech-body p{color:#eee6d6}
.chronicle-page .prologue-magic-introduction .chronicle-speech cite,.chronicle-page .prologue-magic-caption .chronicle-speech cite{color:#e6c189}
.prologue-magic-introduction .chronicle-speech .chronicle-portrait,.prologue-magic-caption .chronicle-speech .chronicle-portrait,.prologue-magic-after .chronicle-speech .chronicle-portrait{width:2.8rem;height:2.8rem;max-width:2.8rem;flex:0 0 2.8rem}
.prologue-magic-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0 1rem}
.prologue-magic-actions button{min-height:2.9rem;max-width:80%;font-size:1rem;line-height:1.4;white-space:normal}
.prologue-magic-progress{display:flex;gap:.4rem;flex-shrink:0}
.prologue-magic-progress i{display:block;width:.4rem;height:.4rem;background:#5b6167;border-radius:50%}
.prologue-magic-progress .is-seen{background:#d5ac70}
.prologue-magic-replay{border:1px solid #b8966266;border-radius:.3rem;background:transparent;color:#e6c189;padding:.65rem 1rem;cursor:pointer}
.prologue-magic-after{line-height:1.85;color:inherit;padding-inline:.2rem}
.prologue-magic-divider{width:4rem;border-top:1px solid #b9946070;margin:1rem auto 1.8rem}
.chronicle-page .prologue-magic-ending .chronicle-scene-controls{border-top:1px solid #b9946033;margin-top:1rem;padding-top:1rem;gap:.6rem;flex-wrap:wrap}
.chronicle-page .prologue-magic-ending .chronicle-scene-controls button{font-size:1rem;min-height:2.8rem;white-space:normal}
@keyframes magic-shadow-capture{0%{transform:translateX(0) scale(1);opacity:.85}45%{transform:translateX(0) scale(.13,.98);opacity:.85}95%{transform:translateX(-72%) scale(.065);opacity:.8}100%{transform:translateX(-72%) scale(.065);opacity:0}}
@keyframes magic-box-arrive{from{opacity:0}to{opacity:1}}
@keyframes magic-shadow-return{from{transform:translateX(-72%) scale(.065);opacity:0}20%{opacity:.85}to{transform:translateX(0) scale(1);opacity:.85}}
@keyframes magic-shadow-late{0%,85%{background-position:0 0}100%{background-position:100% 0}}
@media(max-width:520px){.prologue-magic-frame-label{inset:.6rem .7rem auto}.prologue-magic-frame-label span{font-size:.62rem;letter-spacing:.03em}.prologue-magic-frame-label strong{font-size:1.25rem}.prologue-magic-caption{padding-top:.8rem}.prologue-magic-actions{gap:.65rem}.chronicle-page .prologue-magic-caption .chronicle-speech{padding:.65rem}.prologue-magic-actions button{max-width:76%}.prologue-magic-gestures{gap:.35rem}.prologue-magic-gestures button{font-size:.85rem;padding:.5rem .3rem}}
@media(prefers-reduced-motion:reduce){.prologue-magic-shadow,.prologue-magic-box-reveal{animation:none!important;transition:none!important}.is-phase-3 .prologue-magic-shadow{opacity:0}}

.prologue-magic-introduction{font-size:1rem;line-height:1.8;margin-bottom:1.2rem}
.chronicle-page .prologue-magic-arrival{display:block;width:100%;max-width:28rem;height:auto;max-height:none;object-fit:contain;margin:1rem auto;border:0;border-radius:.3rem}
.prologue-magic-actions.is-invitation{justify-content:center}
