#novelPrologue{position:fixed;inset:0;z-index:160;background:#05090c;color:#edf4f2;overflow:hidden;font-family:inherit}
#novelPrologue.hidden{display:none}.prologue-images{position:absolute;inset:0;overflow:hidden}.prologue-images img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease;transform:scale(1.035)}.prologue-images img.current{opacity:1;animation:prologue-camera 24s ease-out both}#novelPrologue:after{content:'';position:absolute;inset:0;background:linear-gradient(#0009,transparent 25%,#02080b44 45%,#02080bf5);pointer-events:none}#novelPrologue header{position:absolute;z-index:2;top:max(20px,env(safe-area-inset-top));left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;letter-spacing:.08em}#novelPrologue button{border:1px solid #659495;background:#0b222be6;color:#e6f5f2;padding:12px 20px;font:inherit;cursor:pointer;min-height:44px}#novelPrologue button:focus-visible{outline:3px solid #b8ece9;outline-offset:4px}#novelPrologue button:disabled{opacity:.5}.prologue-dialog{position:absolute;z-index:2;bottom:max(5%,env(safe-area-inset-bottom));left:8%;width:84%;max-height:70%;overflow:auto;border-top:1px solid #659495;padding-top:20px;text-shadow:0 2px 6px #000}.prologue-place{color:#a8cbc6;font-size:14px}.prologue-speaker{font-size:clamp(20px,3vw,28px);margin:10px 0}.prologue-line{font-size:clamp(16px,2vw,21px);line-height:1.8;min-height:3.6em;margin:0 0 16px;max-width:1000px}.prologue-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.prologue-progress{font-size:14px;color:#abc2c6}@keyframes prologue-camera{from{transform:scale(1.035) translateX(-.7%)}to{transform:scale(1.11) translateX(.7%)}}@media(max-height:500px){.prologue-dialog{bottom:12px;padding-top:10px}.prologue-speaker{margin:5px 0}.prologue-line{min-height:0;margin-bottom:8px;line-height:1.5}#novelPrologue header{top:10px}}@media(prefers-reduced-motion:reduce){.prologue-images img.current{animation:none}.prologue-images img{transition:none}}
#novelPrologue .prologue-images{inset:4% 0 34%}#novelPrologue .prologue-images img{object-fit:contain;object-position:center}#novelPrologue .prologue-dialog{max-height:32%;bottom:max(3%,env(safe-area-inset-bottom))}@media(max-width:600px),(max-height:500px){#novelPrologue .prologue-images{inset:5% 0 45%}#novelPrologue .prologue-dialog{max-height:42%}}
