@charset "UTF-8";
/* HAZURE NO MIKATA / full-bleed edition. No font downloads or animation library. */
.has-cinema{--yellow:#f4cc40;--paper:#f5f2e9;--red:#c14355}
.has-cinema main{overflow:clip}
.has-cinema .cinema-header{position:fixed;top:0;width:100%;height:82px;border:0;background:linear-gradient(180deg,rgba(8,21,35,.62),transparent);backdrop-filter:none;transition:background .4s,height .4s,box-shadow .4s}
.has-cinema .cinema-header.is-scrolled{height:70px;background:rgba(10,25,42,.95);backdrop-filter:blur(16px);box-shadow:0 1px rgba(255,255,255,.12)}
.has-cinema .header-inner{width:calc(100% - 76px);gap:22px}
.has-cinema .main-nav{margin-left:auto;gap:27px}
.has-cinema .main-nav a{text-shadow:0 1px 8px #081726}
.has-cinema .header-play{background:rgba(255,255,255,.07);color:#fffdf7;border:1px solid rgba(255,255,255,.35);padding:10px 13px}
.has-cinema .header-play:hover{background:var(--yellow);color:var(--ink)}
.motion-toggle{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:12px 0 12px 10px;min-height:44px;color:white;background:transparent}
.motion-word{font:9px var(--mono);white-space:nowrap;letter-spacing:.03em}
.motion-bars{height:14px;display:flex;align-items:center;gap:3px}
.motion-bars i{width:2px;height:11px;background:var(--yellow);animation:motion-bars 1.1s ease-in-out infinite alternate}
.motion-bars i:nth-child(2){animation-delay:-.7s;height:14px}.motion-bars i:nth-child(3){animation-delay:-.4s}
@keyframes motion-bars{from{transform:scaleY(.25)}to{transform:scaleY(1)}}
/* The artwork fills the opening, with typography laid over it. */
.cinema-hero{position:relative;isolation:isolate;min-height:740px;height:100vh;height:100svh;max-height:1500px;overflow:hidden;background:#183d66;color:#fffdf7}
.cinema-backdrop,.cinema-art,.cinema-shade,.floating-world{position:absolute;inset:0}
.cinema-backdrop{z-index:-5;background:#184e82 none center top/cover no-repeat;filter:blur(3px);transform:scale(1.04)}
.cinema-art{z-index:-4;transform:translate3d(var(--pointer-x,0px),calc(var(--pointer-y,0px) + var(--hero-scroll-y,0px)),0) scale(var(--art-scale,1.025));transform-origin:60% 30%;will-change:transform}
.cinema-landscape{position:absolute;right:0;width:90%;height:100%;object-fit:cover;object-position:50% 0%;mask-image:linear-gradient(90deg,transparent,#000 7%)}
.cinema-portrait{display:none}.cinema-art img{max-width:none}
.cinema-shade{z-index:-3;background:linear-gradient(0deg,rgba(4,16,30,.9),rgba(4,16,30,.27) 21%,transparent 50%),linear-gradient(90deg,rgba(3,21,38,.58),rgba(3,21,38,.22) 25%,transparent 55%)}
.cinema-content{position:absolute;z-index:3;left:5.3%;bottom:116px;width:min(650px,49%)}
.cinema-kicker{display:flex;align-items:center;gap:9px;margin-bottom:15px;font:9px var(--mono);letter-spacing:.15em}
.cinema-kicker>span{font-family:var(--font);font-size:10px;letter-spacing:.1em;border-left:1px solid rgba(255,255,255,.45);padding-left:11px;margin-left:4px}
.live-dot{width:5px;height:5px;background:var(--yellow);border-radius:50%;box-shadow:0 0 0 4px rgba(244,204,64,.12)}
.cinema-content h1{margin:0;line-height:1}.cinema-title{width:100%;height:auto;filter:drop-shadow(0 5px 18px rgba(1,10,23,.28));margin:0 0 20px -5px}
.cinema-catch{font-family:var(--serif);font-weight:700;font-size:clamp(19px,1.65vw,27px);line-height:1.9;letter-spacing:.1em;text-shadow:0 2px 10px rgba(0,0,0,.3)}
.cinema-catch span{display:inline}.cinema-intro{font-size:11px;color:rgba(255,255,255,.83);letter-spacing:.05em;margin-top:11px}
.cinema-actions{display:flex;align-items:center;gap:26px;margin-top:28px}
.cinema-cta{background:var(--yellow);color:var(--ink);display:flex;align-items:center;gap:19px;padding:17px 22px;min-height:65px;min-width:264px;position:relative;overflow:hidden;box-shadow:0 6px 30px rgba(0,0,0,.16);transition:transform .25s,box-shadow .25s,background .25s}
.cinema-cta>span{font-size:14px;font-weight:850;line-height:1.4}.cinema-cta small{display:block;font:7px var(--mono);letter-spacing:.13em;margin-top:5px}
.cinema-cta>.icon:first-child{width:26px;height:26px;flex-basis:26px;transition:transform .5s}.cinema-cta>.icon:last-child{margin-left:auto}
.cinema-cta::after{content:"";position:absolute;inset:-20% auto -20% -45%;width:35%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:cta-sheen 7s 2s ease-in-out infinite;pointer-events:none}
.cinema-cta:hover{transform:translateY(-4px);background:#ffe075;box-shadow:0 12px 35px rgba(0,0,0,.25)}.cinema-cta:hover>.icon:first-child{transform:rotate(110deg)}
.cinema-read{display:flex;align-items:center;gap:11px;font-size:12px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.65);white-space:nowrap;transition:color .2s}
.cinema-read .icon{width:16px;height:16px;flex-basis:16px}.cinema-read .icon:last-child{margin-left:12px}.cinema-read:hover{color:var(--yellow)}
.opening-rule{position:absolute;z-index:1;left:5.5%;top:123px;display:flex;gap:13px;font:600 clamp(15px,1.5vw,23px)/1.9 var(--serif);letter-spacing:.18em;text-shadow:0 2px 10px #142942}
.opening-rule span{writing-mode:vertical-rl}.opening-rule span:first-child{order:2}
.cinema-coordinate{position:absolute;right:34px;top:120px;display:flex;align-items:center;gap:11px;border-top:1px solid rgba(255,255,255,.65);padding-top:9px;text-shadow:0 1px 9px #223b53}
.cinema-coordinate b{font:52px/1 var(--mono);font-weight:200;letter-spacing:-.1em}.cinema-coordinate>span{font:8px/1.7 var(--mono);letter-spacing:.09em}
.art-view{position:absolute;bottom:40px;right:36px;background:rgba(9,25,42,.25);border:1px solid rgba(255,255,255,.38);color:white;display:flex;align-items:center;gap:10px;padding:11px 14px;font-size:10px;z-index:5;transition:background .3s}.art-view:hover{background:rgba(255,255,255,.18)}
.art-corners{width:13px;height:13px;border:1px solid currentColor;position:relative}.art-corners::after{content:"";position:absolute;inset:3px;border:1px solid currentColor}
.cinema-scroll{position:absolute;left:5.3%;bottom:37px;display:flex;align-items:center;gap:13px;font:8px var(--mono);letter-spacing:.19em;z-index:5}
.scroll-track{height:36px;width:1px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}.scroll-track i{position:absolute;left:0;top:-100%;height:100%;width:1px;background:var(--yellow);animation:scroll-line 2s ease infinite}
.cinema-caption{position:absolute;bottom:50px;left:50%;transform:translateX(-50%);font:7px var(--mono);letter-spacing:.16em;opacity:.5}
.hero-progress-track{position:absolute;bottom:0;left:0;width:100%;height:3px;background:rgba(255,255,255,.12)}.hero-progress-track i{display:block;height:100%;background:var(--yellow);width:calc(var(--hero-progress,0) * 100%)}
/* Floating six-faced dice, kept clear of the character faces. */
.floating-world{pointer-events:none;z-index:0;perspective:1200px}
.drift-die{--size:48px;position:absolute;width:var(--size);height:var(--size);perspective:800px;animation:die-drift 9s ease-in-out infinite alternate}
.drift-die--1{left:22%;top:16%;--size:38px;opacity:.62;animation-delay:-4s}.drift-die--2{right:6%;top:30%;--size:58px;opacity:.52;animation-delay:-7s}
.drift-die--3{left:5%;top:45%;--size:23px;opacity:.55;animation-delay:-1s}.drift-die--4{right:4%;bottom:18%;--size:35px;opacity:.4;animation-delay:-5s}
.drift-die--5{left:29%;top:33%;--size:16px;opacity:.5;animation-delay:-3s}.drift-die--6{right:29%;top:11%;--size:21px;opacity:.45;animation-delay:-6s}
.ambient-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:cube-orbit 23s linear infinite}
.drift-die:nth-child(even) .ambient-cube{animation-direction:reverse;animation-duration:32s}
.ambient-face{position:absolute;inset:0;border:1px solid rgba(255,255,247,.8);background:rgba(232,240,238,.06);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:calc(var(--size) * .08);padding:calc(var(--size) * .2);backface-visibility:hidden;border-radius:calc(var(--size)*.07)}
.ambient-face .is-pip{width:100%;height:100%;background:#fffbed;border-radius:50%}
.af-1{transform:translateZ(calc(var(--size) / 2))}.af-2{transform:rotateX(90deg) translateZ(calc(var(--size) / 2))}.af-3{transform:rotateY(90deg) translateZ(calc(var(--size) / 2))}.af-4{transform:rotateY(-90deg) translateZ(calc(var(--size) / 2))}.af-5{transform:rotateX(-90deg) translateZ(calc(var(--size) / 2))}.af-6{transform:rotateY(180deg) translateZ(calc(var(--size) / 2))}
.sky-flecks{position:absolute;inset:0;overflow:hidden}.sky-flecks i{position:absolute;left:var(--x);bottom:-5%;width:2px;height:2px;background:#fffddd;opacity:0;animation:sky-rise var(--duration) var(--delay) linear infinite}.sky-flecks i:nth-child(3n){width:3px;height:5px;background:var(--yellow)}
@keyframes cube-orbit{from{transform:rotateX(-18deg) rotateY(24deg) rotateZ(15deg)}to{transform:rotateX(342deg) rotateY(384deg) rotateZ(195deg)}}
@keyframes die-drift{from{transform:translate3d(0,-12px,0)}to{transform:translate3d(12px,16px,0)}}
@keyframes sky-rise{0%{transform:translate3d(0,0,0) rotate(0);opacity:0}12%{opacity:.46}85%{opacity:.3}100%{transform:translate3d(45px,-95vh,0) rotate(150deg);opacity:0}}
@keyframes scroll-line{0%{top:-100%}65%,100%{top:100%}}
@keyframes cta-sheen{0%,65%{left:-45%}85%,100%{left:145%}}
@keyframes cinema-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes art-in{from{opacity:.35;filter:brightness(.7)}to{opacity:1;filter:brightness(1)}}
.cinema-art{animation:art-in 1.2s ease-out both}.cinema-content{animation:cinema-in 1s .1s both}.opening-rule{animation:cinema-in 1.3s .22s both}.cinema-coordinate{animation:cinema-in 1.3s .35s both}
/* An animated transition leads into the story and the existing playable dice. */
.cinematic-ticker{padding:18px 0;position:relative;z-index:6;background:var(--yellow)}.ticker-track{display:flex;width:max-content;animation:ticker-roll 45s linear infinite}.ticker-copy{display:flex;align-items:center;gap:36px;padding-right:36px;flex-shrink:0;white-space:nowrap}
.ticker-message{font-size:12px;font-weight:850;letter-spacing:.08em}.ticker-en{font:11px var(--mono);letter-spacing:.13em;font-weight:600}.ticker-star{font-size:28px;line-height:16px}
@keyframes ticker-roll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.has-cinema .world{padding:98px 0 75px}.has-cinema .world-main{gap:65px}.has-cinema .world-main .section-title{font-size:clamp(29px,3.25vw,47px);line-height:1.7}.has-cinema .world-copy{font-size:14px;line-height:2.3}
.has-cinema .rules{margin-top:47px}.has-cinema .rule{padding-block:28px;transition:background .35s,transform .5s}.has-cinema .rule:hover{background:rgba(244,204,64,.13)}
.has-cinema .rule-no{border:1px solid rgba(21,33,51,.4);width:27px;height:27px;display:grid;place-items:center;border-radius:4px;flex-shrink:0;color:var(--ink)}.has-cinema .rule h3{margin-top:4px}
.future-interlude{background:var(--paper);position:relative;text-align:center;padding:25px 24px 80px;overflow:hidden}.interlude-rail{display:flex;align-items:center;justify-content:center;gap:14px;margin:auto auto 24px;width:min(580px,85%);color:#b9b2a4;font:10px var(--mono)}
.interlude-rail span{border:1px solid #c4c0b5;border-radius:4px;display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;transition:background .55s,color .55s,border-color .55s}.interlude-rail i{height:1px;background:#d7d2c5;flex:1;transition:background .55s}
.future-interlude.in-view .interlude-rail span{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.future-interlude.in-view .interlude-rail i{background:var(--yellow)}
.interlude-rail>:nth-child(3),.interlude-rail>:nth-child(4){transition-delay:.25s}.interlude-rail>:nth-child(5),.interlude-rail>:nth-child(6){transition-delay:.5s}.interlude-rail>:nth-child(7),.interlude-rail>:nth-child(8){transition-delay:.75s}.interlude-rail>:nth-child(9),.interlude-rail>:nth-child(10){transition-delay:1s}.interlude-rail>:nth-child(11){transition-delay:1.25s}
.future-interlude p{font-weight:900;line-height:1.5;letter-spacing:.015em;font-size:clamp(30px,5.1vw,72px)}.future-interlude p span{color:var(--red)}.future-interlude>small{display:block;font:8px var(--mono);letter-spacing:.25em;margin-top:18px;color:var(--muted)}
.has-cinema .experience{padding-block:83px 73px}.has-cinema .experience::after{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--yellow) 0 12%,transparent 12% 16.666%)}
.has-cinema .experience .section-title{font-size:clamp(31px,3.8vw,52px)}.has-cinema .game{box-shadow:0 24px 75px rgba(0,0,0,.15)}.has-cinema .future{overflow:hidden}
.has-cinema .future::after{content:"";width:3px;position:absolute;left:0;top:0;bottom:0;background:var(--yellow);transform:scaleY(0);transition:transform .3s}.has-cinema .future[aria-pressed="true"]::after{transform:scaleY(1)}
.has-cinema .future:hover:not(:disabled) .future-die{transform:rotate(-8deg)}.has-cinema .future-die{transition:transform .3s,background .3s}.has-cinema .future[aria-pressed="true"] .future-die{background:var(--yellow);border-color:var(--yellow)}
.has-cinema .dice-tilt{animation:play-dice-hover 5s ease-in-out infinite alternate}
@keyframes play-dice-hover{from{transform:translateY(-5px) rotateX(-17deg) rotateY(-21deg) rotateZ(-5deg)}to{transform:translateY(4px) rotateX(-17deg) rotateY(-21deg) rotateZ(-5deg)}}
.has-cinema .game-result{transition:background .5s,border-color .5s}.has-cinema .game-result.just-resolved{animation:result-in .5s ease-out}
@keyframes result-in{from{transform:translateY(8px);opacity:.3}to{transform:translateY(0);opacity:1}}
.has-cinema .characters{padding:86px 0}.has-cinema .characters-intro .section-title{font-size:37px}.has-cinema .character-card{min-height:424px;box-shadow:0 10px 35px rgba(14,28,40,.035);transition:box-shadow .45s,border-color .45s}
.has-cinema .character-card:hover{border-color:rgba(21,33,51,.5);box-shadow:0 20px 40px rgba(14,28,40,.12)}.has-cinema .character-text{padding-top:32px;padding-bottom:31px}.has-cinema .character-text h3{font-size:32px}.has-cinema .character-desc{font-size:12px}.has-cinema .character-quote{font-size:14px}
.has-cinema .character-image img{transform:translateY(var(--portrait-y,0px)) scale(1.065);transition:transform .7s var(--ease)}.has-cinema .character-card:hover .character-image img{transform:translateY(-3px) scale(1.12)}.has-cinema .character-reading{letter-spacing:.21em}
.has-cinema .novel{padding-block:80px 62px}.has-cinema .book{animation:book-drift 8s ease-in-out infinite alternate}
@keyframes book-drift{from{transform:translateY(-5px) rotateY(14deg) rotateZ(-5deg)}to{transform:translateY(5px) rotateY(8deg) rotateZ(-3deg)}}
.has-cinema .journal{padding-block:78px}.has-cinema .journal-image{height:180px}.has-cinema .share-section{padding-block:61px}.has-cinema .share-title h2{font-size:33px}
.has-cinema .reveal{transition-duration:.9s;transition-delay:var(--stagger,0ms)}html.motion-ok .has-cinema .reveal.pending{transform:translateY(34px)}
.has-cinema .button .icon{transition:transform .25s}.has-cinema .button:hover .icon{transform:translateX(3px)}
.footer-motion{overflow:hidden;margin:-8px 0 43px;opacity:.14;color:#fff}.footer-motion>div{display:flex;width:max-content;animation:ticker-roll 60s linear infinite}.footer-motion span{font:900 clamp(55px,8vw,125px)/1.1 var(--mono);letter-spacing:-.06em;-webkit-text-stroke:1px #fff;color:transparent;white-space:nowrap;padding-right:65px}
.visual-dialog{width:min(740px,calc(100% - 24px));background:var(--deep);color:var(--white)}.visual-dialog .dialog-head{background:var(--deep);border-color:rgba(255,255,255,.2)}.visual-dialog .dialog-close{border-color:rgba(255,255,255,.4)}.visual-dialog-body{padding:0}.visual-dialog-body img{width:100%;height:auto;max-height:none}
/* No hidden information and no endless work outside the visible viewport. */
.effect-offscreen *,.effect-offscreen *::before,.effect-offscreen *::after{animation-play-state:paused!important}
html.motion-paused{scroll-behavior:auto}html.motion-paused *,html.motion-paused *::before,html.motion-paused *::after{animation:none!important;transition:none!important}
html.motion-paused .cinema-art{transform:none;filter:none}html.motion-paused .reveal.pending{opacity:1!important;transform:none!important}html.motion-paused .motion-bars i{transform:scaleY(.35)}
html.motion-paused .ambient-cube{transform:rotateX(-18deg) rotateY(24deg) rotateZ(15deg)}html.motion-paused .sky-flecks{display:none}html.motion-paused .cinema-content,html.motion-paused .opening-rule,html.motion-paused .cinema-coordinate{opacity:1}
html.motion-paused .character-image img{transform:none!important}html.page-inactive *,html.page-inactive *::before,html.page-inactive *::after{animation-play-state:paused!important}
@media(min-width:1650px){.cinema-content{bottom:124px;width:min(800px,46%)}.cinema-catch{font-size:27px}.cinema-intro{font-size:13px}.cinema-cta{min-width:290px;padding-block:20px}.opening-rule{font-size:25px;top:145px}}
@media(min-width:701px) and (min-aspect-ratio:2/1){.cinema-landscape{width:76%}.cinema-content{width:43%}.cinema-shade{background:linear-gradient(0deg,rgba(4,16,30,.86),transparent 52%),linear-gradient(90deg,rgba(3,21,38,.73),rgba(3,21,38,.18) 44%,transparent 62%)}}
@media(max-width:1200px){.has-cinema .header-inner{width:calc(100% - 48px);gap:16px}.has-cinema .main-nav{gap:20px}.has-cinema .header-play{display:none}.cinema-content{width:54%;left:4.4%;bottom:110px}.cinema-catch{font-size:20px}.cinema-catch span{display:block}.cinema-title{margin-bottom:12px}.cinema-actions{gap:20px}.cinema-cta{min-width:235px;padding-inline:16px;gap:13px}.cinema-intro{font-size:10px}.cinema-read{gap:8px;font-size:11px}.cinema-read .icon:last-child{margin-left:3px}.opening-rule{top:110px;left:4.7%}.has-cinema .character-text h3{font-size:28px}.has-cinema .character-desc{font-size:11px}.has-cinema .character-quote{font-size:12px}}
@media(max-width:1000px){.motion-word{display:none}.has-cinema .main-nav{gap:18px}.cinema-content{width:55%;bottom:114px}.cinema-kicker{font-size:8px}.cinema-kicker>span{font-size:8px}.cinema-actions{flex-direction:column;align-items:flex-start;gap:11px}.cinema-cta{min-width:250px}.cinema-read{border:0;padding-block:10px}.cinema-caption{display:none}.cinema-coordinate{right:25px;top:102px}.cinema-coordinate b{font-size:43px}.cinema-coordinate>span{font-size:7px}.has-cinema .world-main .section-title{font-size:34px}.has-cinema .world-copy{font-size:13px}.has-cinema .characters-intro .section-title{font-size:31px}.has-cinema .character-text{padding-top:24px;padding-bottom:26px}.has-cinema .character-card{min-height:0}.has-cinema .share-title h2{font-size:28px}}
@media(min-width:701px) and (max-width:850px){.cinema-content{width:65%;bottom:116px}.cinema-landscape{width:100%;object-position:50% 0%;mask-image:none}.cinema-shade{background:linear-gradient(0deg,rgba(4,16,30,.94),rgba(4,16,30,.35) 30%,transparent 65%),linear-gradient(90deg,rgba(3,21,38,.3),transparent 45%)}.opening-rule{top:100px;font-size:17px;gap:8px}.cinema-title{max-width:500px}.cinema-kicker>span{display:none}.cinema-catch span{display:inline}.cinema-catch{font-size:18px}.cinema-actions{flex-direction:row;gap:20px}.cinema-cta{min-width:225px}.art-view{right:24px;font-size:9px}.cinema-scroll{left:4.4%;font-size:7px}}
@media(max-width:700px){
.has-cinema .cinema-header,.has-cinema .cinema-header.is-scrolled{height:62px}.has-cinema .header-inner{width:calc(100% - 30px);gap:12px}.has-cinema .wordmark__jp{font-size:22px}.has-cinema .wordmark__en{font-size:5px}
.has-cinema .main-nav{display:none;position:fixed;top:62px;left:0;right:0;background:rgba(8,24,42,.98);padding:24px 25px 28px;grid-template-columns:1fr 1fr;border-bottom:1px solid rgba(255,255,255,.2);gap:12px 20px;box-shadow:0 14px 25px rgba(0,0,0,.25)}
.has-cinema .main-nav.is-open{display:grid}.has-cinema .main-nav>a{align-items:flex-start;padding-block:12px}.has-cinema .main-nav>a span{font-size:12px}.has-cinema .main-nav>a small{font-size:9px}.has-cinema .main-nav>a::after{display:none}.has-cinema .menu-toggle{display:flex;margin-left:0;width:38px}.has-cinema .header-play{display:none}
.motion-toggle{margin-left:auto;padding:8px 4px}.motion-word{display:inline;font-size:7px;letter-spacing:0}.motion-bars{gap:2px;height:10px}.motion-bars i{width:2px;height:10px}
.cinema-hero{min-height:650px;max-height:none;height:100svh}.cinema-backdrop{background-image:linear-gradient(rgba(7,22,40,.13),rgba(7,22,40,.3)),none;background-position:center;background-size:cover;filter:blur(12px);transform:scale(1.09)}
.cinema-art{inset:39px 0 60px;transform:none!important;animation:art-in 1s ease-out both}.cinema-landscape{display:none}.cinema-portrait{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 50%}
.cinema-shade{background:linear-gradient(0deg,rgba(4,16,30,.96),rgba(4,16,30,.18) 13%,transparent 27%),linear-gradient(180deg,rgba(4,16,30,.28),transparent 13%)}
.cinema-content{inset:auto 17px 22px;width:auto;z-index:4}.cinema-kicker,.cinema-title,.cinema-catch,.cinema-intro{display:none}.cinema-actions{margin:0;flex-direction:row;justify-content:center;align-items:center;gap:12px}
.cinema-cta{min-width:0;flex:1;max-width:255px;padding:12px 15px;min-height:54px;gap:10px}.cinema-cta>span{font-size:12px}.cinema-cta>span small{font-size:6px;letter-spacing:.08em;margin-top:3px}.cinema-cta>.icon:first-child{width:23px;height:23px;flex-basis:23px}.cinema-cta>.icon:last-child{width:16px;height:16px;flex-basis:16px}
.cinema-read{min-height:50px;font-size:11px;gap:7px;padding:11px 5px}.cinema-read .icon:last-child{display:none}.cinema-read .icon{width:16px;height:16px;flex-basis:16px}.opening-rule,.cinema-coordinate,.cinema-caption{display:none}
.cinema-scroll{left:17px;bottom:91px;font-size:6px;letter-spacing:.1em;gap:8px}.scroll-track{height:20px}.art-view{right:14px;bottom:90px;font-size:8px;gap:6px;padding:8px;background:rgba(5,20,33,.48)}.art-corners{width:10px;height:10px}.art-corners::after{inset:2px}
.drift-die--1{--size:18px;left:4%;top:30%;opacity:.45}.drift-die--2{--size:25px;right:5%;top:12%;opacity:.45}.drift-die--3{--size:12px;left:6%;top:70%;opacity:.35}.drift-die--4,.drift-die--5,.drift-die--6{display:none}.sky-flecks i:nth-child(n+9){display:none}
.cinematic-ticker{padding:15px 0}.ticker-copy{gap:22px;padding-right:22px}.ticker-message{font-size:10px;letter-spacing:.04em}.ticker-en{font-size:8px}.ticker-star{font-size:22px}
.has-cinema .world{padding:55px 0 36px}.has-cinema .world-main{gap:20px}.has-cinema .world-main .section-title{font-size:28px;line-height:1.8}.has-cinema .world-copy{font-size:12px}.has-cinema .rules{margin-top:30px}.has-cinema .rule{padding-block:22px}.has-cinema .rule-no{width:24px;height:24px}
.future-interlude{padding:26px 18px 50px}.future-interlude p{font-size:29px;letter-spacing:-.025em}.future-interlude>small{margin-top:14px;font-size:7px}.interlude-rail{width:90%;gap:7px;margin-bottom:20px}.interlude-rail span{width:23px;height:23px;font-size:8px}
.has-cinema .experience{padding:50px 0 44px}.has-cinema .experience .section-title{font-size:29px}.has-cinema .experience-heading{margin-bottom:24px}.has-cinema .characters{padding:52px 0}.has-cinema .characters-intro .section-title{font-size:28px}
.has-cinema .character-text{padding:22px 16px 23px}.has-cinema .character-text h3{font-size:25px}.has-cinema .character-desc{font-size:10px}.has-cinema .character-quote{font-size:11px}.has-cinema .novel{padding-block:50px 39px}.has-cinema .journal{padding-block:49px}.has-cinema .journal-image{height:111px}.has-cinema .share-section{padding-block:43px}.has-cinema .share-title h2{font-size:26px}
.footer-motion{margin:0 0 33px}.footer-motion span{font-size:65px}.visual-dialog{max-height:calc(100dvh - 24px)}.visual-dialog .dialog-head{padding:10px 13px}.visual-dialog .dialog-head strong{font-size:10px}
}
@media(max-width:359px){.has-cinema .header-inner{width:calc(100% - 24px);gap:8px}.has-cinema .wordmark__jp{font-size:21px}.motion-word{font-size:6px}.cinema-content{left:13px;right:13px}.cinema-cta{gap:8px;padding-inline:11px}.cinema-cta>span{font-size:11px}.cinema-read{font-size:10px;gap:5px}.cinema-actions{gap:8px}.cinema-scroll>span:last-child{max-width:110px;line-height:1.6}.future-interlude p{font-size:26px}.has-cinema .world-main .section-title{font-size:25px}}
@media(prefers-reduced-motion:reduce){.cinema-art{transform:none!important}.has-cinema *,.has-cinema *::before,.has-cinema *::after{animation:none!important;transition:none!important}.has-cinema .reveal.pending{opacity:1!important;transform:none!important}.ambient-cube{transform:rotateX(-18deg) rotateY(24deg) rotateZ(15deg)}.sky-flecks{display:none}.has-cinema .character-image img{transform:none!important}}
@media print{.cinema-hero{min-height:0;height:auto;background:white;color:black;padding:25px}.cinema-art,.cinema-shade,.cinema-backdrop,.floating-world,.cinema-coordinate,.opening-rule,.art-view,.cinema-scroll,.cinema-caption,.cinematic-ticker,.footer-motion,.motion-toggle{display:none!important}.cinema-content{position:static;width:auto;color:black}.cinema-title{display:none}.cinema-content h1 .sr-only{position:static;clip:auto;width:auto;height:auto;font-size:32px}.cinema-catch,.cinema-intro{display:block;color:black}.cinema-actions{display:none}}
