html.opening-active,html.opening-active body{height:100%;overflow:hidden;overscroll-behavior:none}html.opening-active #app{height:100%;overflow:hidden}.cinema-opening.prologue{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 116px minmax(0,1fr) 48px;gap:12px;max-width:620px;width:100%;height:var(--opening-vh,100vh);height:100svh;height:100dvh;min-height:0;margin:0 auto;padding:calc(22px + env(safe-area-inset-top,0px)) max(22px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(22px,env(safe-area-inset-left,0px));box-sizing:border-box;overflow:hidden;background:#0c0c0d;outline:none;opacity:1;transition:opacity .7s ease}.cinema-opening.is-exiting{opacity:0;pointer-events:none}.cinema-opening .opening-title{grid-column:1;grid-row:1;position:relative;z-index:2;font-size:16px;line-height:1;margin:0;padding:0;animation:openingTitle .75s ease both}.cinema-opening .opening-kicker{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:26px}.cinema-opening .opening-title small{font-size:11px;font-weight:400;letter-spacing:.19em;color:#b5b1b5}.cinema-opening .opening-info{border:0;background:none;padding:5px 0;min-height:28px;font-size:11px;font-weight:400;letter-spacing:0;color:#b5b1b5;line-height:1.5}.cinema-opening .opening-title h1{font-family:Arial,Helvetica,'PingFang SC',sans-serif;font-size:clamp(28px,7.7vw,34px);line-height:1.15;letter-spacing:-.045em;font-weight:500;color:#eeece7;margin:10px 0 0;padding:0;white-space:nowrap}.cinema-opening .opening-narrative{grid-column:1;grid-row:2;z-index:2;position:relative;min-height:0;margin:0;padding:4px 0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.cinema-opening .opening-copy{display:block;min-height:0;flex:none;margin:0;padding:0;opacity:1;transform:none;animation:none;transition:opacity .14s linear}.cinema-opening .opening-copy.is-leaving{opacity:0}.cinema-opening .opening-copy p{font-family:'PingFang SC','Noto Sans SC','Microsoft YaHei',sans-serif;font-size:clamp(15px,4vw,16px);font-weight:400;line-height:1.7;letter-spacing:0;color:#eeece8;opacity:1;margin:0 0 10px;max-width:34em;overflow-wrap:anywhere;animation:openingCopy .35s ease both}.cinema-opening .opening-photo{grid-column:1;grid-row:2/4;position:relative;z-index:0;min-width:0;min-height:0;width:100%;height:100%;margin:0;padding:0;pointer-events:none;animation:openingPhoto 1s ease both;mask-image:linear-gradient(to bottom,transparent 0%,#000 17%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 17%,#000 92%,transparent 100%)}.cinema-opening .opening-photo img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center bottom;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent)}.cinema-opening .opening-footer{grid-column:1;grid-row:4;position:relative;z-index:2;width:100%;max-width:none;min-width:0;margin:0;padding:0;align-self:end}.cinema-opening .opening-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;width:100%;height:48px;margin:0;padding:0}.cinema-opening .opening-controls button{background:none;border:0;box-shadow:none;border-radius:0;color:#e6e3de;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0;padding:10px 0;min-height:44px;white-space:nowrap;transition:opacity .3s ease;text-align:left}.cinema-opening #openingContinue{grid-column:3;text-align:right;font-size:14px}.cinema-opening .opening-position{grid-column:2;grid-row:1;font-size:11px;letter-spacing:.09em;color:#bbb6bb;font-variant-numeric:tabular-nums}.cinema-opening .opening-skip{grid-column:1;grid-row:1}.cinema-opening .opening-skip[hidden]{display:none}.cinema-opening .awaiting-enter{opacity:0;pointer-events:none}.cinema-opening .enter-ready{animation:openingEnter .3s ease both}.cinema-opening button:active{opacity:.65}.cinema-opening .opening-save-warning{position:absolute;z-index:4;top:0;left:24px;right:24px;font-size:11px}.opening-active dialog{max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px)}@supports not (height:100dvh){.cinema-opening.prologue{height:var(--opening-vh,100vh)}}@keyframes openingTitle{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes openingPhoto{from{opacity:0}to{opacity:1}}@keyframes openingCopy{from{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}@keyframes openingEnter{from{opacity:0}to{opacity:1}}@media(max-width:349px){.cinema-opening.prologue{padding-left:20px;padding-right:20px;gap:10px}.cinema-opening .opening-title h1{font-size:28px;letter-spacing:-.055em}.cinema-opening #openingContinue{font-size:13px}}@media(max-height:500px){.cinema-opening.prologue{grid-template-rows:auto 90px minmax(0,1fr) 44px;padding-top:calc(10px + env(safe-area-inset-top,0px));gap:5px}.cinema-opening .opening-photo{grid-row:3}.cinema-opening .opening-title h1{font-size:28px;margin-top:5px}}@media(min-width:850px),(orientation:landscape) and (min-width:600px){.cinema-opening.prologue{max-width:1180px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) 48px;gap:26px 40px;padding:calc(34px + env(safe-area-inset-top,0px)) 40px calc(18px + env(safe-area-inset-bottom,0px))}.cinema-opening .opening-title{grid-column:1;grid-row:1}.cinema-opening .opening-title h1{font-size:34px}.cinema-opening .opening-narrative{grid-column:1;grid-row:2;padding-top:30px}.cinema-opening .opening-photo{grid-column:2;grid-row:1/4}.cinema-opening .opening-footer{grid-column:1;grid-row:3}.cinema-opening .opening-copy p{font-size:16px}}@media(prefers-reduced-motion:reduce){.cinema-opening,.cinema-opening *{animation:none!important;transition:none!important;transform:none!important}.cinema-opening .opening-copy p{opacity:1}}
.cinema-opening .opening-photo{display:flex;align-items:center;justify-content:center;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent)}.cinema-opening .opening-photo img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 92%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 92%,transparent)}
/* Editorial type refinement: scoped to the prologue. */
.cinema-opening .opening-title h1{font-family:Didot,'Bodoni 72','Bodoni MT','Times New Roman',serif;font-size:clamp(32px,8.7vw,38px);font-weight:400;font-synthesis:none;line-height:1;letter-spacing:-.035em;white-space:normal;margin-top:8px;font-kerning:normal}.cinema-opening .opening-title h1 span{display:block;white-space:nowrap}.cinema-opening .opening-title h1 span+span{margin-top:3px}.cinema-opening .opening-title-ivory{color:#f3eee8}.cinema-opening .opening-title-rose{color:#ce5278}.cinema-opening .opening-copy p{font-family:'PingFang SC','Noto Sans SC','Microsoft YaHei',sans-serif;font-size:15px;font-weight:400;line-height:1.7;letter-spacing:.01em;color:#e1deda;text-align:left}.cinema-opening .opening-title small{font-size:11px;font-weight:400}.cinema-opening .opening-position{font-size:11px}@media(min-width:650px){.cinema-opening .opening-copy p{font-size:16px}}@media(max-height:500px){.cinema-opening .opening-title h1{font-size:28px;line-height:.98}}
