.image-frame{position:relative!important;overflow:hidden;isolation:isolate;background:#102820!important;clip-path:none!important;transform:none!important}
.image-frame>.image-back,.image-frame>.image-front{position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;border-radius:0!important;margin:0!important;pointer-events:none}
.image-frame>.image-back{object-fit:cover!important;filter:blur(18px) brightness(.38);z-index:0}
.image-frame>.image-front{object-fit:contain!important;filter:none!important;z-index:1;transform:none!important}
#jVisual{display:block;padding:0;overflow:hidden;cursor:pointer;touch-action:manipulation;min-width:0}
#jPicture{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:none!important}
#jTapHint{position:absolute;right:12px;bottom:10px;color:#fff;font-size:11px;padding:4px 8px;background:#08251b99;border-radius:20px;pointer-events:none}
#jCopy{opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s,transform .3s;max-height:30svh}
#journeyShell.copy-ready #jCopy{opacity:1;visibility:visible;transform:translateY(0)}
#journeyShell.choosing #jCopy{visibility:hidden}#jChoices{animation-duration:.3s}
#jControls{touch-action:manipulation}#jNext:disabled{opacity:.5}
.chapter-door,.chapter-door-content{animation-duration:.3s!important}.chapter-door-content{touch-action:manipulation}
.landing-art{object-fit:contain!important;object-position:center!important}.landing-blur{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(20px) brightness(.38);z-index:-3}
@media(prefers-reduced-motion:reduce){#jCopy{transition:none;transform:none}.chapter-door-content{animation:none!important}}

.journey-record-art{max-height:none}
