*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#e8e3d7;color:#233e51}#fallback,#c{position:fixed;inset:0;width:100%;height:100%;object-fit:cover}#c{opacity:0;transition:opacity .8s;touch-action:manipulation}.ready #c{opacity:1}header,footer{position:fixed;left:4vw;right:4vw;display:flex;justify-content:space-between;align-items:center;z-index:2;font:11px/1.4 sans-serif;letter-spacing:.12em}header{top:max(24px,env(safe-area-inset-top))}header a{color:inherit;text-decoration:none}footer{bottom:max(24px,env(safe-area-inset-bottom))}button{font:inherit;color:inherit;padding:10px 16px;border:1px solid #233e5150;background:#f7f2e3b0;border-radius:30px;cursor:pointer}aside{position:fixed;right:7vw;top:44%;z-index:2;text-align:right;pointer-events:none}aside p{font:clamp(25px,3vw,48px)/1.5 serif;letter-spacing:.12em;margin:0 0 12px}aside span{font:12px/1.8 serif;letter-spacing:.16em}#err{position:fixed;bottom:80px;left:20px;right:20px;padding:16px;background:#fff1e9;z-index:5;white-space:pre-wrap}#dbg{position:fixed;top:65px;left:20px;z-index:4} [hidden]{display:none!important}@media(max-width:650px){header span{display:none}aside{top:18%;right:7vw}aside p{font-size:27px}aside span{font-size:10px}footer{font-size:10px;letter-spacing:.02em}}@media(prefers-reduced-motion:reduce){#c{transition:none}}
@media(max-width:650px){body:after{content:"";position:fixed;inset:0 0 auto;height:230px;background:linear-gradient(#efeadddb,#efeadd70 60%,transparent);pointer-events:none;z-index:1}aside{top:10%;right:7vw}#hint{max-width:170px;background:#f3eddfb3;border-radius:20px;padding:8px 10px}}

html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}html{scroll-behavior:auto}.scroll-space{height:480vh;height:480svh}#finished{height:1px}#c{touch-action:pan-y}.progress-track{position:fixed;bottom:0;left:0;right:0;height:2px;z-index:4;background:#24456218}#progress{height:100%;width:0;background:#24456299}#fallback{visibility:hidden}body{background:#ded8c9}@media(max-width:650px){.scroll-space{height:420svh}header a:last-child{font-size:10px}}

.failed #fallback{visibility:visible}.failed #c{display:none}@media(prefers-reduced-motion:reduce){.scroll-space{height:100svh}#hint{display:none}}
