@font-face{font-family:ChapterSerif;src:url('./assets/ui/chapter-intro/DejaVuSerif.ttf?delivery=111') format('truetype');font-display:swap}
.chapter-entry{position:fixed;inset:0;z-index:18000;overflow:hidden;background:#070a09}
.chapter-entry-track{position:absolute;inset:0;will-change:transform}
.chapter-departing-menu{position:absolute;inset:0;background:#070a09;overflow:hidden}
.chapter-intro{position:absolute;left:0;top:100%;width:100%;height:100%;overflow:hidden;background:#070a09;color:#f1e8d5;font-family:ChapterSerif,Georgia,serif;display:grid;place-items:center;isolation:isolate}
.chapter-intro:focus{outline:none}
.chapter-intro-stage{position:relative;width:min(100%,177.777778dvh);aspect-ratio:16/9;overflow:hidden;background:#070a09}
.chapter-intro-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.chapter-intro-shade{position:absolute;inset:0;background:linear-gradient(0deg,#020403a8,transparent 48%,transparent 85%,#06080526);pointer-events:none}
.chapter-intro-panel{position:absolute;left:0;top:55.74%;width:100%;height:43.52%;opacity:.94;pointer-events:none}
.chapter-intro-heading{position:absolute;top:57.9%;left:18%;width:64%;text-align:center;text-shadow:0 2px 7px #000}
.chapter-intro-heading p{font-size:clamp(.875rem,1vw,1.1875rem);letter-spacing:.3em;line-height:1.5;text-transform:uppercase;margin:0;color:#e8dcc1}
.chapter-intro-heading h1{font-size:clamp(1.25rem,1.875vw,2.25rem);font-weight:400;letter-spacing:.1em;line-height:1.4;text-transform:uppercase;margin:0;color:#efd097}
.chapter-intro-heading>img{display:block;width:58%;height:auto;margin:.15em auto 0}
.chapter-intro-initial{position:absolute;left:14.9%;top:67.59%;width:5.47%;height:auto;pointer-events:none}
.chapter-intro-story{position:absolute;left:21.4%;top:68.43%;width:64.6%;height:23%;overflow:auto;padding:0 .4em .4em 0;font-size:clamp(1rem,1.2vw,1.4375rem);line-height:1.35;text-shadow:0 2px 5px #000;scrollbar-width:thin;scrollbar-color:#8d7448 transparent}
.chapter-intro-story p{font:inherit;line-height:inherit;margin:0 0 .4em}
.chapter-intro-letter{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.chapter-intro button{font-family:inherit;color:inherit;background:transparent;border:0;border-radius:3px;box-shadow:none;padding:8px;min-height:44px;cursor:pointer;text-shadow:0 2px 4px #000}
.chapter-intro button:hover:not(:disabled){background:#d0b06f22;color:#ffe7ae;filter:none}
.chapter-intro button:focus-visible{outline:2px solid #f9e3a5;outline-offset:3px}
.chapter-intro-controls{position:absolute;right:4%;bottom:3.2%;display:flex;align-items:center;gap:clamp(2px,.55vw,12px);z-index:3}
.chapter-intro-controls button{width:44px;height:44px;display:grid;place-items:center}
.chapter-intro-controls button img{width:clamp(22px,1.45vw,28px);height:auto;display:block}
.chapter-intro-controls button[aria-pressed=true]{box-shadow:inset 0 -1px #eac586}
.chapter-intro-separator{height:26px;width:1px;margin:0 4px;background:#8c7147}
.chapter-intro-controls .chapter-intro-skip{display:flex;gap:10px;width:auto;font-size:1rem;letter-spacing:.04em;text-transform:uppercase}
.chapter-intro kbd{font:inherit;font-size:.875rem;border:1px solid #9c8256;padding:2px 5px;border-radius:3px;color:#dfcc9e}
.chapter-intro .chapter-intro-continue{position:absolute;left:50%;bottom:3.2%;transform:translateX(-50%);max-width:48%;font-size:clamp(.875rem,.9vw,1.0625rem);letter-spacing:.09em;text-transform:uppercase;z-index:3;display:flex;align-items:center;gap:18px;line-height:1.4}
.chapter-intro-continue:before,.chapter-intro-continue:after{content:'';height:1px;width:clamp(20px,4.8vw,92px);background:linear-gradient(90deg,transparent,#d3b579);flex-shrink:1}
.chapter-intro-continue:after{transform:rotate(180deg)}
.chapter-intro-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}
.chapter-intro-crest{position:absolute;top:.28%;left:38.8%;width:22.4%;height:auto;pointer-events:none;z-index:5}
.chapter-intro-status{position:absolute;top:11%;left:5%;max-width:75%;padding:12px 16px;background:#090d0cee;border-left:2px solid #b2955e;font-size:1rem;line-height:1.5;z-index:6}
.chapter-intro-status button{display:block;text-align:left;color:#efd097;text-decoration:underline;margin-top:4px}
.chapter-intro-paused{position:absolute;right:5%;top:11%;padding:8px 14px;border:1px solid #8d7448;background:#0d100ddd;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase}
.chapter-intro [hidden]{display:none!important}
.chapter-intro-text-hidden .chapter-intro-story,.chapter-intro-text-hidden .chapter-intro-initial{visibility:hidden}
.chapter-intro-text-hidden .chapter-intro-panel{opacity:0}
.chapter-intro-text-hidden .chapter-intro-heading{text-shadow:0 2px 7px #000,0 0 18px #000}
@keyframes chapter-menu-lift{from{transform:translateY(0)}to{transform:translateY(-100%)}}
@media(max-width:1100px){
 .chapter-intro-controls{bottom:3%;right:4%;gap:0}
 .chapter-intro .chapter-intro-continue{left:38%;max-width:50%;font-size:.875rem;letter-spacing:.025em}
 .chapter-intro-continue:before,.chapter-intro-continue:after{display:none}
 .chapter-intro-controls .chapter-intro-skip{font-size:.875rem;gap:5px}
 .chapter-intro-controls kbd{display:none}
}
@media(max-width:900px),(max-aspect-ratio:4/3){
 .chapter-intro-stage{width:100%;height:100%;aspect-ratio:auto}
 .chapter-intro-stage:after{content:'';position:absolute;inset:12px;border:1px solid #c3a364;pointer-events:none;z-index:4}
 .chapter-intro-film{object-position:38% 50%}
 .chapter-intro-frame{display:none}
 .chapter-intro-crest{left:50%;transform:translateX(-50%);top:3px;width:clamp(200px,35vw,320px)}
 .chapter-intro-panel{top:37%;height:63%;opacity:.97}
 .chapter-intro-heading{top:39%;left:6%;width:88%}
 .chapter-intro-heading p{font-size:.875rem;line-height:1.7;letter-spacing:.24em}
 .chapter-intro-heading h1{font-size:clamp(1.25rem,4.2vw,1.875rem);letter-spacing:.06em;line-height:1.5}
 .chapter-intro-heading>img{width:75%;height:12px;object-fit:fill;margin:0 auto}
 .chapter-intro-initial{display:none}
 .chapter-intro-letter{position:static;width:auto;height:auto;margin:0;clip:auto;white-space:normal}
 .chapter-intro-story{top:calc(39% + 94px);left:8%;width:84%;height:calc(61% - 226px);font-size:1rem;line-height:1.5}
 .chapter-intro .chapter-intro-continue{left:50%;bottom:72px;width:88%;max-width:none;justify-content:center;font-size:.875rem;padding:6px 8px}
 .chapter-intro-controls{left:6%;right:6%;bottom:22px;justify-content:center;gap:12px}
 .chapter-intro-controls .chapter-intro-skip{font-size:1rem}
 .chapter-intro-status{top:75px;max-width:90%;font-size:.875rem}
 .chapter-intro-paused{top:55px;font-size:.875rem}
}
@media(max-height:540px) and (min-aspect-ratio:4/3){
 .chapter-intro-stage{width:100%;height:100%;aspect-ratio:auto}
 .chapter-intro-panel{top:24%;height:76%}
 .chapter-intro-heading{top:26%;left:8%;width:84%}
 .chapter-intro-heading p{font-size:.875rem;line-height:1.3}
 .chapter-intro-heading h1{font-size:1.25rem;line-height:1.3}
 .chapter-intro-heading>img{height:10px}
 .chapter-intro-story{top:calc(26% + 66px);height:calc(74% - 135px);left:10%;width:80%;font-size:1rem;line-height:1.4}
 .chapter-intro-initial{display:none}.chapter-intro-letter{position:static;width:auto;height:auto;margin:0;clip:auto;white-space:normal}
 .chapter-intro .chapter-intro-continue{left:30%;bottom:15px;width:50%;max-width:50%;font-size:.875rem}
 .chapter-intro-controls{left:auto;right:4%;bottom:15px;gap:2px}
 .chapter-intro-crest{width:180px;left:50%;transform:translateX(-50%)}
}
