:root{--paper:#e8e0c8;--gofun:#f2ede0;--ink:#1d2421;--night:#111614;color:var(--paper);background:var(--night);font-synthesis:none;text-rendering:optimizelegibility;font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif}*{box-sizing:border-box}html,body,#scene{width:100%;height:100%;margin:0;overflow:hidden}body{background:var(--night);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:fixed;inset:0}button{color:inherit;font:inherit}#scene{touch-action:none;outline:none;display:block}.loading,.unlock,.frame-text,.title-layer,.pause-mark,.pause-layer,.diagnostics{z-index:2;position:fixed}.loading{z-index:6;background:var(--night);place-content:center;transition:opacity .7s;display:grid;inset:0}.loading.is-finished{opacity:0;pointer-events:none}.loading-mark{background:linear-gradient(90deg,#0000,#e8e0c89e,#0000);width:3.2rem;height:1px;animation:1.8s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.2;transform:scaleX(.62)}}.unlock{z-index:4;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:var(--night);opacity:0;pointer-events:none;place-items:center;transition:opacity 1.8s;display:grid;inset:0}.unlock.is-ready{opacity:1;pointer-events:auto}.unlock.is-finished{opacity:0;pointer-events:none}.title-sheet{text-align:center;justify-items:center;gap:1.1rem;width:min(30rem,100%);display:grid}.title-studio{color:#ece8da80;letter-spacing:.3em;text-transform:uppercase;margin:0;font-size:.74rem;text-decoration:none;transition:color .4s}.title-studio:hover,.title-studio:focus-visible{color:#ece8dae6;text-underline-offset:.35em;outline:none;text-decoration:underline}.title-name{color:var(--gofun);letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:clamp(1.7rem,5vw,2.5rem);font-weight:400}.title-line{color:#ece8dad1;max-width:24rem;margin:.2rem 0 .8rem;font-size:1rem;line-height:1.5}.title-actions{gap:.8rem;width:min(16rem,100%);display:grid}.title-button{color:var(--paper);font:inherit;letter-spacing:.08em;cursor:pointer;background:#ece8da0f;border:1px solid #ece8da73;padding:.75rem 1.2rem;font-size:1rem;transition:border-color .3s,background .3s}.title-button:hover,.title-button:focus-visible{background:#ece8da1f;border-color:#ece8dae6;outline:none}.title-button:disabled{opacity:.5;cursor:default}.title-button-quiet{color:#ece8dac7;background:0 0;border-color:#ece8da38}.title-note{color:#ece8da8c;max-width:22rem;margin:.6rem 0 0;font-size:.82rem;line-height:1.5}.title-hint{color:#ece8dab3;max-width:22rem;margin:0;font-size:.82rem;line-height:1.5}.frame-text{z-index:3;pointer-events:none;inset:0}.story-line{color:#f2ede0eb;letter-spacing:.02em;text-align:center;text-shadow:0 .1rem .9rem #080c0bd9,0 0 2.4rem #080c0b99;opacity:0;filter:blur(3px);width:min(36rem,100vw - 3rem);margin:0;font-size:clamp(1.05rem,2.1vw,1.5rem);font-style:italic;line-height:1.5;transition:opacity 2s,filter 2s,transform 2s;position:absolute;top:69%;left:50%;transform:translate(-50%,.4rem)}.story-line.is-visible{opacity:1;filter:blur();transition:opacity 1s,filter 1s,transform 1s;transform:translate(-50%)}.hint-words{color:#f6f2e6f7;letter-spacing:.08em;text-transform:lowercase;white-space:nowrap;text-shadow:0 0 .18rem #080c0b,0 0 .45rem #080c0b,0 0 .9rem #080c0bf2,0 .1rem 1.6rem #080c0bd9;opacity:0;will-change:transform, opacity;margin:0;font-size:clamp(.9rem,1.3vw,1.06rem);position:absolute;top:0;left:0}.title-layer{z-index:3;color:var(--ink);letter-spacing:-.04em;text-align:center;text-shadow:0 0 .9rem #f2ede0bf,0 0 2.6rem #f2ede080,0 0 6rem #f2ede059;opacity:0;pointer-events:none;visibility:hidden;place-content:center;margin:0;font-size:clamp(2.8rem,8vw,6.6rem);font-weight:400;line-height:.9;display:grid;inset:0}.title-layer.is-visible{visibility:visible;animation:1.4s forwards title-in}.title-layer.is-dissolving{animation:3s ease-in forwards title-dissolve}@keyframes title-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}@keyframes title-dissolve{0%{opacity:1;filter:blur();letter-spacing:-.04em;transform:translateY(0)}to{opacity:0;filter:blur(9px);letter-spacing:.02em;transform:translateY(1.2rem)}}.ending-layer{z-index:4;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));opacity:0;visibility:hidden;pointer-events:none;background:#0d1110bd;place-items:center;transition:opacity 2.4s,visibility 0s linear 2.4s;display:grid;position:fixed;inset:0}.ending-layer.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 2.4s}.pause-mark{top:max(.9rem, env(safe-area-inset-top));right:max(.9rem, env(safe-area-inset-right));z-index:3;cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;border-radius:50%;width:2.6rem;height:2.6rem;padding:.4rem;transition:opacity 1.2s}body[data-phase=playing] .pause-mark{opacity:.5;pointer-events:auto}.skip-intro{top:max(.9rem, env(safe-area-inset-top));right:calc(max(.9rem, env(safe-area-inset-right)) + 3.1rem);z-index:3;color:#ece8daf2;height:2.6rem;font:inherit;letter-spacing:.06em;text-shadow:0 1px 6px #080c0cd9;cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;padding:0 .7rem;font-size:.85rem;transition:opacity 1.2s;position:fixed}body[data-phase=playing] .skip-intro{opacity:.6;pointer-events:auto}body[data-phase=playing] .skip-intro:hover,body[data-phase=playing] .skip-intro:focus-visible{opacity:1;text-underline-offset:.3em;outline:none;text-decoration:underline;transition-duration:.2s}body[data-phase=playing] .pause-mark:hover,body[data-phase=playing] .pause-mark:focus-visible{opacity:.9;outline:none}.pause-mark svg{fill:none;stroke:#f2ede0e6;stroke-linecap:round;stroke-width:2.1px;filter:drop-shadow(0 0 .3rem #080c0be6);width:100%;height:100%}.pause-layer{z-index:5;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));opacity:0;pointer-events:none;visibility:hidden;-webkit-user-select:text;user-select:text;background:#090d0cc7;place-items:center;transition:opacity .4s,visibility 0s linear .4s;display:grid;inset:0}.pause-layer.is-visible{opacity:1;pointer-events:auto;visibility:visible;transition:opacity .4s}.pause-sheet{color:#ece8dae6;touch-action:pan-y;background:#111614f0;border:1px solid #ece8da1f;width:min(38rem,100%);max-height:100%;padding:1.6rem 1.7rem 1.4rem;overflow-y:auto}.pause-sheet h2{letter-spacing:.04em;margin:0 0 1rem;font-size:1.4rem;font-weight:400}.pause-section h3{color:#ece8da9e;letter-spacing:.14em;text-transform:uppercase;margin:1.1rem 0 .5rem;font-size:.78rem;font-weight:400}.pause-help,.pause-goal{margin:0;font-size:.95rem;line-height:1.5}.pause-goal{min-height:1.5em;font-style:italic}.pause-goal.is-done{color:#ece8da8c}.pause-marks{gap:.45rem;margin:.8rem 0 0;padding:0;font-size:.95rem;list-style:none;display:grid}.pause-marks li{grid-template-columns:1rem 1fr;align-items:start;gap:.6rem;display:grid}.pause-marks p{margin:0;line-height:1.45}.pause-marks strong{color:var(--paper);font-weight:400}.pause-marks span{color:#ece8dab3}.pause-mark-drop{fill:#ece8dad1;width:.85rem;height:.95rem}.pause-options{gap:.45rem;font-size:.95rem;display:grid}.pause-options label{cursor:pointer;align-items:center;gap:.65rem;display:flex}.pause-options input{accent-color:#b9c4b0;width:1.05rem;height:1.05rem;margin:0}.pause-actions{flex-wrap:wrap;align-items:center;gap:.8rem 1.4rem;margin-top:1.4rem;display:flex}.pause-button{cursor:pointer;letter-spacing:.06em;background:0 0;border:1px solid #ece8da66;padding:.5rem 1.1rem}.pause-button:hover,.pause-button:focus-visible{border-color:#ece8dad9;outline:none}.pause-button-quiet{color:#ece8dab3;text-underline-offset:.25em;border-color:#0000;text-decoration:underline}.diagnostics{top:max(1rem, env(safe-area-inset-top));left:max(1rem, env(safe-area-inset-left));z-index:3;color:#ece8dab8;pointer-events:none;background:#0a0e0ed6;border:1px solid #ece8da1f;width:15rem;padding:.9rem 1rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem}.diagnostics div{justify-content:space-between;gap:1rem;padding:.2rem 0;display:flex}.diagnostics strong{color:#ece8daf5;text-align:right;font-weight:500}.is-hidden{visibility:hidden}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (width<=640px){.story-line{top:66%}.pause-sheet{padding:1.2rem 1.1rem 1.1rem}.diagnostics{top:auto;bottom:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
