/* Cinematic layers are presentation only; they never hint at unplayed outcomes. */
.stage{--travel:0;--heat:#ff8131}.landscape{inset:-28px;transform:translate3d(calc(var(--travel)*-1px),0,0) scale(1.06);transition:transform 1.2s cubic-bezier(.2,.65,.2,1),filter 1s;will-change:transform}.heat-haze{position:absolute;inset:30% -15% -30%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 50% 90%,#fa65263d,transparent 60%),radial-gradient(ellipse at 20% 60%,#bed5e412,transparent 50%);mix-blend-mode:screen;filter:blur(20px);animation:heat-breath 8s ease-in-out infinite alternate}.light-rays{position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:conic-gradient(from 160deg at 82% 15%,transparent 0deg,#ffe4b009 8deg,transparent 14deg,#ffd78b08 24deg,transparent 33deg);mix-blend-mode:screen;animation:ray-drift 16s ease-in-out infinite alternate}.scene-heading{transition:transform 1s,opacity 1s;transform-origin:top left}.journey-active .scene-heading{transform:scale(.83);opacity:.7}.dragon{transition:filter .2s}.dragon img{animation:flint-idle 3.7s ease-in-out infinite}.dragon::after{content:'';position:absolute;left:59%;top:51%;width:24px;height:24px;border-radius:50%;background:#ffbc4555;box-shadow:0 0 24px 12px #ffae2525;mix-blend-mode:screen;pointer-events:none;animation:lamp 2.7s ease-in-out infinite}.dragon-shadow{transition:transform .5s,opacity .5s}.is-jumping .dragon-shadow{transform:scale(.5);opacity:.35}.is-jumping .dragon img{animation:wing-lift .72s ease-in-out}.is-jumping .landscape{transform:translate3d(calc(var(--travel)*-1px),5px,0) scale(1.085)}.is-jumping .light-rays{opacity:.4}.action-flash{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 30% 65%,#ffad5577,transparent 60%);mix-blend-mode:screen}.impact-bad .action-flash{animation:impact-flash .75s ease-out;background:radial-gradient(ellipse at 35% 70%,#ff511f99,transparent 65%)}.impact-good .action-flash{animation:impact-flash .45s ease-out}.victory .landscape{filter:brightness(1.17) saturate(1.15)}.victory .heat-haze{background:radial-gradient(ellipse at 35% 65%,#ffd46c55,transparent 65%)}.defeat .landscape{filter:saturate(.65) brightness(.75)}.defeat .dragon{filter:drop-shadow(0 0 15px #ff72277a)}.cinema-bar{position:absolute;left:0;right:0;height:34px;background:#080c13;z-index:7;pointer-events:none;transform:scaleY(0)}.cinema-bar.top{top:0;transform-origin:top}.cinema-bar.bottom{bottom:0;transform-origin:bottom}.departure .cinema-bar{animation:letterbox 1.4s ease-in-out}.departure .landscape{animation:establishing 1.4s cubic-bezier(.18,.65,.3,1)}.departure .dragon img{animation:ready-flint 1.4s ease-in-out}.audio-on{color:#efbe77;border-color:#79603f;background:#342b21}.topbar #sound{font-size:24px}.result:not(.fail){box-shadow:0 0 70px #ffc65a24,0 25px 80px #0009}.result:not(.fail)::before{content:'✧';display:block;color:#ffd787;font-size:27px;line-height:1;margin-bottom:12px}.platform.next .rune{animation:rune-breath 2.2s ease-in-out infinite}.go:not(:disabled){position:relative;overflow:hidden}.go:not(:disabled)::after{content:'';position:absolute;inset:-40% -60%;background:linear-gradient(110deg,transparent 42%,#fff6 50%,transparent 58%);transform:translateX(-80%);animation:button-glint 7s ease-in-out infinite;pointer-events:none}
@keyframes heat-breath{from{transform:translate(-10px,10px) scale(.98);opacity:.5}to{transform:translate(25px,-15px) scale(1.06);opacity:.95}}
@keyframes ray-drift{from{transform:rotate(-3deg);opacity:.4}to{transform:rotate(3deg);opacity:.9}}
@keyframes flint-idle{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-3px) rotate(-1deg)}70%{transform:translateY(-1px) rotate(.5deg)}}
@keyframes wing-lift{0%{transform:scale(1.06,.9) rotate(-5deg)}45%{transform:scale(.97,1.05) rotate(8deg)}85%{transform:scale(1.06,.94) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}
@keyframes lamp{0%,100%{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.13)}}
@keyframes impact-flash{0%{opacity:0}18%{opacity:1}100%{opacity:0}}
@keyframes letterbox{0%{transform:scaleY(0)}22%,55%{transform:scaleY(1)}100%{transform:scaleY(0)}}
@keyframes establishing{0%{transform:scale(1.14);filter:brightness(.6)}100%{transform:scale(1.06);filter:brightness(1)}}
@keyframes ready-flint{0%,100%{transform:translateY(0)}30%{transform:translateY(3px) scale(1.03,.96)}60%{transform:translateY(-5px) rotate(-3deg)}}
@keyframes rune-breath{50%{color:#ffe3a8;text-shadow:0 0 15px #ffac57;opacity:1}}
@keyframes button-glint{0%,75%{transform:translateX(-80%)}100%{transform:translateX(80%)}}
@media(max-width:650px){.topbar{gap:7px}.topbar .wordmark{letter-spacing:1.5px}.topbar .wordmark span{letter-spacing:2.7px}.journey-active .scene-heading{transform:scale(.82);opacity:.72}.cinema-bar{height:21px}}
@media(prefers-reduced-motion:reduce){.landscape{will-change:auto}.heat-haze,.light-rays{display:none}*,*::before,*::after{animation:none!important;transition:none!important}}

.game-name b{color:#f4bf72;font-size:12px;margin-left:7px;letter-spacing:0}
