.stage{position:relative;min-height:100vh;min-height:100svh;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line)}.stage:last-of-type{border-bottom:none}.dot{position:absolute;width:var(--s, 7px);height:var(--s, 7px);background:var(--ink);opacity:.5;transform:translate(-50%,-50%);transition:opacity .5s ease,transform .5s ease,background-color .35s ease;will-change:opacity,transform}.dot.lit{background:var(--accent);opacity:1;transform:translate(-50%,-50%) scale(1.9);transition:background-color .9s ease,opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.dot.gone{opacity:0;transform:translate(-50%,-50%) scale(.2)}.dot.falling{transition:transform 1.6s cubic-bezier(.5,0,.9,.4),opacity 1.6s ease;transform:translate(-50%,120vh) scale(.5);opacity:0}.word{position:absolute;left:clamp(28px,6vw,120px);bottom:clamp(40px,6vw,96px);font-size:clamp(15px,1.2vw,20px);letter-spacing:.42em;font-weight:700;color:var(--faint);pointer-events:none;opacity:0;transition:opacity 1.4s ease}.word.on{opacity:1}.hint{position:absolute;left:50%;bottom:clamp(96px,14vh,190px);transform:translate(-50%);font-size:clamp(13px,1vw,16px);letter-spacing:.34em;color:var(--faint);pointer-events:none;transition:opacity .8s ease}.hint.off{opacity:0}.core{position:absolute;left:50%;top:50%;width:clamp(76px,9vw,132px);height:clamp(76px,9vw,132px);transform:translate(-50%,-50%);background:var(--accent);border:1.5px solid var(--line-strong);cursor:pointer;transition:transform .34s cubic-bezier(.2,.7,.2,1),opacity .34s ease}.core.pressed{transform:translate(-50%,-50%) scale(.06);opacity:0;transition-duration:.28s}.core:focus-visible{outline:2px solid var(--line-strong);outline-offset:8px}.finale{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:0 clamp(28px,6vw,120px)}.finale .big{font-size:clamp(44px,11vw,190px);font-weight:800;letter-spacing:-.02em;line-height:1.05}.finale .big u{text-decoration:none;box-shadow:inset 0 -.16em 0 var(--accent)}.finale .line{margin-top:clamp(36px,4vw,72px);font-size:clamp(19px,2vw,34px);font-weight:700;line-height:1.9}.finale .line span{display:block}.finale .read{margin-top:clamp(48px,6vw,104px);font-size:clamp(14px,1.1vw,18px);letter-spacing:.2em;color:var(--gray)}.finale .read a{color:var(--gray);text-decoration:none;border-bottom:1px solid var(--line-strong);padding-bottom:3px}.finale .read a:hover{color:var(--ink)}.fade{opacity:0;transform:translateY(14px);transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}.fade.on{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.dot,.core,.fade,.word,.hint{transition:none!important}.fade{opacity:1;transform:none}.word{opacity:1}}.stage{padding:0;display:block}.stage .dots{position:absolute;inset:0;pointer-events:none}.acts{scroll-snap-type:y proximity}.acts .stage{scroll-snap-align:start}@media(prefers-reduced-motion:reduce){.acts{scroll-snap-type:none}}.mark{position:fixed;left:clamp(20px,4vw,44px);top:clamp(18px,3vw,34px);z-index:10;font-size:15px;font-weight:700;letter-spacing:.04em;color:var(--ink);background:var(--bg);padding:6px 10px 6px 0}.mark b{background:var(--accent);padding:2px 6px}.say{min-height:82vh;min-height:82svh;display:flex;align-items:center;padding:0 clamp(28px,6vw,120px);border-bottom:1px solid var(--line);background:var(--bg);scroll-snap-align:start}.say-inner{width:100%;max-width:1100px}.say-line{font-size:clamp(18px,1.8vw,30px);line-height:2;color:var(--gray)}.say-line+.say-line{margin-top:10px}.say-big{display:block;position:relative;margin-top:clamp(48px,5.5vw,96px);padding-left:24px;font-size:clamp(26px,4vw,68px);font-weight:800;letter-spacing:-.01em;line-height:1.35;color:var(--ink)}.say-big:before{content:"";position:absolute;left:0;top:.16em;bottom:.16em;width:10px;background:var(--accent)}.word-late{opacity:0}.word-late.on{opacity:1}.papers-act{padding:clamp(140px,16vh,220px) 0 clamp(96px,12vh,180px);border-bottom:1px solid var(--line);background:var(--bg);scroll-snap-align:start}.papers-act .sec-title{margin-bottom:clamp(48px,6vw,88px)}.net{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.net line{stroke:var(--ink);stroke-width:1;opacity:.22;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.7,.2,1)}@media(prefers-reduced-motion:reduce){.net line{transition:none;stroke-dasharray:none!important;stroke-dashoffset:0!important}}body{overflow-x:hidden}
