[data-story-stage]{container-type:size}.tf-story-atmosphere{--fx-ink:var(--tf-ink);contain:strict}.tf-story-atmosphere[data-effects-tone=fault]{--fx-ink:var(--tf-live)}.tf-story-atmosphere[data-effects-tone=clock]{--fx-ink:var(--tf-clock)}.tf-story-atmosphere>i{pointer-events:none;display:block;position:absolute}.tf-fog{background:radial-gradient(ellipse at 26% 70%, color-mix(in oklab, var(--fx-ink) 15%, transparent), transparent 45%), radial-gradient(ellipse at 68% 85%, color-mix(in oklab, var(--tf-ink) 12%, transparent), transparent 48%);opacity:.7;inset:10% -30% -35%}.tf-fog-far{opacity:.3;inset:-15% -25% 5%;transform:scaleX(-1)}.tf-story-atmosphere[data-effects-active=true] .tf-fog-near{animation:21s ease-in-out infinite alternate tf-fog-drift}.tf-story-atmosphere[data-effects-active=true] .tf-fog-far{animation:29s ease-in-out infinite alternate tf-fog-return}@keyframes tf-fog-drift{0%{opacity:.4;transform:translate(-7%,4%)scale(1)}to{opacity:.8;transform:translate(8%,-3%)scale(1.12)}}@keyframes tf-fog-return{0%{transform:translate(8%,2%)scaleX(-1)}to{transform:translate(-6%,-4%)scaleX(-1.1)}}.tf-dawn-rays{transform-origin:62% 10%;background:conic-gradient(from 135deg at 62% 10%, transparent 0deg, color-mix(in oklab, var(--tf-ink) 18%, transparent) 6deg, transparent 14deg, transparent 23deg, color-mix(in oklab, var(--tf-ink) 12%, transparent) 29deg, transparent 37deg, transparent 49deg, color-mix(in oklab, var(--tf-ink) 16%, transparent) 54deg, transparent 61deg, transparent 360deg);opacity:.7;inset:-55% -30% -30%}.tf-dawn-horizon{background:radial-gradient(ellipse at 65% 80%, color-mix(in oklab, var(--tf-ink) 18%, transparent), transparent 62%);inset:10% -15% -35%}.tf-story-atmosphere[data-effects-active=true] .tf-dawn-rays{animation:24s ease-in-out infinite alternate tf-dawn-turn}.tf-story-atmosphere[data-effects-active=true] .tf-dawn-horizon{animation:9s ease-in-out infinite alternate tf-light-breathe}@keyframes tf-dawn-turn{0%{opacity:.4;transform:rotate(-8deg)}to{opacity:.85;transform:rotate(5deg)}}@keyframes tf-light-breathe{0%{opacity:.4;transform:scale(.94)}to{opacity:.9;transform:scale(1.07)}}.tf-rose-underlight{background:radial-gradient(ellipse at 50% 100%, color-mix(in oklab, var(--tf-live) 32%, transparent), transparent 68%);inset:35% -10% -30%}.tf-ember-light{background:radial-gradient(ellipse at 50% 95%, color-mix(in oklab, var(--fx-ink) 20%, transparent), transparent 65%);inset:40% -20% -45%}.tf-story-atmosphere[data-effects-active=true] :is(.tf-rose-underlight,.tf-ember-light){animation:6s ease-in-out infinite alternate tf-light-breathe}.tf-story-vignette{background:radial-gradient(ellipse at 50% 45%, transparent 40%, color-mix(in oklab, var(--tf-bg) 28%, transparent) 100%);inset:0}.tf-story-impact{--impact-ink:var(--tf-ink);z-index:2;pointer-events:none;contain:strict;position:absolute;inset:0;overflow:hidden}.tf-story-impact[data-impact-tone=clock]{--impact-ink:var(--tf-clock)}.tf-story-impact[data-impact-tone=fault]{--impact-ink:var(--tf-live)}.tf-story-impact>i{opacity:0;display:block;position:absolute}.tf-impact-halo{background:radial-gradient(ellipse at center, color-mix(in oklab, var(--impact-ink) 28%, transparent), transparent 62%);animation:tf-impact-halo 1.6s var(--tf-ease) both;inset:-15%}@keyframes tf-impact-halo{0%{opacity:0;transform:scale(.4)}18%{opacity:.85}to{opacity:0;transform:scale(1.35)}}.tf-impact-ring{aspect-ratio:1;border:1px solid color-mix(in oklab, var(--impact-ink) 58%, transparent);width:48vmin;box-shadow:0 0 3vmin color-mix(in oklab, var(--impact-ink) 12%, transparent), inset 0 0 3vmin color-mix(in oklab, var(--impact-ink) 8%, transparent);animation:tf-impact-ring 1.4s var(--tf-ease) both;border-radius:50%;top:calc(48% - 24vmin);left:calc(50% - 24vmin)}.tf-impact-ring-echo{animation-delay:.13s}@keyframes tf-impact-ring{0%{opacity:0;transform:scale(.18)}12%{opacity:.65}to{opacity:0;transform:scale(2.8)}}.tf-impact-seam{background:linear-gradient(90deg, transparent, var(--impact-ink), transparent);width:100%;height:2px;box-shadow:0 0 22px color-mix(in oklab, var(--impact-ink) 65%, transparent);animation:tf-impact-seam .95s var(--tf-ease) both;top:48%;left:0}@keyframes tf-impact-seam{0%{opacity:0;transform:scaleX(.02)}20%{opacity:.7}to{opacity:0;transform:scaleX(1.15)}}.tf-impact-spark{background:var(--impact-ink);width:3px;height:3px;box-shadow:0 0 10px var(--impact-ink);animation:tf-impact-spark 1.25s var(--tf-ease) var(--spark-delay) both;border-radius:50%;top:48%;left:50%}@keyframes tf-impact-spark{0%{opacity:0;transform:rotate(var(--spark-angle)) translateX(3vmin) scale(1.8)}15%{opacity:.85}to{opacity:0;transform:rotate(var(--spark-angle)) translateX(var(--spark-distance)) scale(.2)}}.tf-story-impact[data-story-impact=dissolve] :is(.tf-impact-ring,.tf-impact-seam),.tf-story-impact[data-story-impact=memorial] :is(.tf-impact-ring,.tf-impact-seam){display:none}.tf-story-impact[data-story-impact=dissolve] .tf-impact-halo{animation-duration:1.8s}.tf-story-impact[data-story-impact=memorial] .tf-impact-halo{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--impact-ink) 14%, transparent), transparent);animation:tf-memorial-fall 1.8s var(--tf-ease) both}@keyframes tf-memorial-fall{0%{opacity:0;transform:translateY(-45%)}30%{opacity:.8}to{opacity:0;transform:translateY(45%)}}.tf-story-impact[data-story-impact=reveal] .tf-impact-seam{background:linear-gradient(0deg, transparent, var(--impact-ink), transparent);width:2px;height:100%;animation:tf-reveal-seam 1.4s var(--tf-ease) both;top:0;left:50%}@keyframes tf-reveal-seam{0%{opacity:0;transform:scaleY(.02)}25%{opacity:.85}to{opacity:0;transform:scaleY(1.15)}}.tf-scene-crossfade{animation:.6s linear both tf-scene-crossfade}@keyframes tf-scene-crossfade{0%{opacity:0}to{opacity:1}}.tf-scene-paint{transform-origin:58% 48%}.tf-story-scene{animation:none}.tf-story-character{isolation:isolate;--portrait-height:133.333cqw;--portrait-width:75cqh;--foot-inset:.1294;container-type:size}.tf-story-character:before{content:"";width:min(66cqw, calc(var(--portrait-width) * .66));height:calc(min(100cqh, var(--portrait-height)) * .06);left:50%;bottom:calc(min(100cqh, var(--portrait-height)) * (var(--foot-inset) - .03));pointer-events:none;background:radial-gradient(#050706aa 10%,#05070640 48%,#0000 72%);border-radius:50%;position:absolute;transform:translate(-50%)}.tf-story-character:is([data-zodiac-character=dog],[data-zodiac-character=monkey]){--foot-inset:.097}.tf-story-character[data-zodiac-character=rooster]{--foot-inset:.09}.tf-story-character[data-zodiac-character=pig]{--foot-inset:.148}.tf-story-character[data-zodiac-character=pig]:is([data-zodiac-variant=normal],[data-zodiac-variant=out]){--foot-inset:.141}.tf-story-character[data-zodiac-character=pig]:is([data-zodiac-variant=sad],[data-zodiac-variant=happy]){--foot-inset:.167}.tf-story-character:is([data-zodiac-variant=body],[data-zodiac-variant=home]){--portrait-height:150cqw;--portrait-width:66.667cqh;--foot-inset:.102}.tf-story-character[data-zodiac-variant=body]:is([data-zodiac-character=dragon],[data-zodiac-character=goat],[data-zodiac-character=monkey]){--foot-inset:.075}.tf-story-character[data-zodiac-variant=body]:is([data-zodiac-character=rabbit],[data-zodiac-character=rooster]){--foot-inset:.086}.tf-story-character[data-zodiac-variant=body]:is([data-zodiac-character=pig],[data-zodiac-character=tiger]){--foot-inset:.132}.tf-story-character[data-zodiac-variant=body][data-zodiac-character=snake]{--foot-inset:.142}.tf-story-character img{transform-origin:50% 100%}[data-character-departure=dissolving]{animation:.7s ease-out .9s both tf-charcoal-depart}[data-character-departure=empty]{opacity:0}@keyframes tf-charcoal-depart{0%{opacity:1;filter:grayscale(0);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}45%{opacity:.65;filter:grayscale();clip-path:polygon(0 4%,87% 0,100% 23%,82% 46%,100% 64%,82% 100%,0 96%)}to{opacity:0;filter:grayscale()blur(2px);clip-path:polygon(0 19%,45% 7%,25% 26%,42% 48%,17% 65%,25% 94%,0 88%)}}.tf-fault-eyes{clip-path:inset(15% 8% 35%);animation:.8s ease-out both tf-eyes-catch}@keyframes tf-eyes-catch{0%{opacity:0}35%,60%{opacity:.9}to{opacity:0}}.tf-fault-face[data-fault-ink=true]{transition:none;animation:.7s ease-out .24s both tf-fault-ink}@keyframes tf-fault-ink{0%{opacity:0;clip-path:polygon(0 33%,27% 31%,54% 34%,79% 30%,100% 32%,100% 34%,76% 35%,50% 33%,23% 35%,0 34%)}35%{opacity:.75;clip-path:polygon(0 14%,27% 22%,54% 12%,79% 20%,100% 10%,100% 71%,76% 63%,50% 73%,23% 61%,0 69%)}to{opacity:1;clip-path:polygon(0 0,27% 0,54% 0,79% 0,100% 0,100% 100%,76% 100%,50% 100%,23% 100%,0 100%)}}.tf-lantern-pool{filter:blur(36px);mix-blend-mode:screen;animation:2.6s linear both tf-lantern-snuff}.tf-lantern-flame{filter:blur(3px);animation:2.6s linear both tf-lantern-snuff}@keyframes tf-lantern-snuff{0%{opacity:.65}25%{opacity:.48}45%{opacity:.62}63%{opacity:.35}73%{opacity:.43}to{opacity:0}}.tf-lantern-smoke{transform-origin:1642px 253px;filter:blur(2px);animation:4.8s ease-out both tf-lantern-smoke}@keyframes tf-lantern-smoke{0%,50%{opacity:0;transform:translateY(0)scaleY(.2)}68%{opacity:.38}to{opacity:0;transform:translate(12px,-60px)scaleY(1.3)}}.tf-door-opening{transform-origin:1555px 460px;mix-blend-mode:screen;filter:blur(65px);animation:1.6s ease-out both tf-door-opening}.tf-door-closing{transform-origin:1555px 460px;filter:blur(50px);animation:1.4s ease-out both tf-door-closing}@keyframes tf-door-opening{0%{opacity:.28;transform:scale(.05,.65)}55%{opacity:.16}to{opacity:0;transform:scale(1.2)}}@keyframes tf-door-closing{0%{opacity:.6;transform:scale(1.2)}70%{opacity:.32}to{opacity:0;transform:scale(.04,.6)}}.tf-scene-decoration>*{animation-delay:var(--scene-elapsed);animation-fill-mode:both}.tf-action,.tf-option,.tf-secret-card{isolation:isolate;position:relative}.tf-action{overflow:hidden}.tf-action:after{content:"";pointer-events:none;background:linear-gradient(110deg, transparent 42%, color-mix(in oklab, currentColor 12%, transparent) 50%, transparent 58%);position:absolute;inset:-50% -70%;transform:translate(-65%)}@media (hover:hover){.tf-action:not(:disabled):hover:after{animation:tf-button-sheen .65s var(--tf-ease)}.tf-action:not(:disabled):hover{translate:0 -1px}}.tf-action{transition:transform .15s var(--tf-ease), opacity .15s var(--tf-ease), translate .2s var(--tf-ease)}.tf-action:not(:disabled):active{transform:scale(.97)translate(0,0)}@keyframes tf-button-sheen{to{transform:translate(65%)}}.tf-action[aria-busy=true]:after{animation:1.6s ease-in-out infinite tf-button-sheen}.tf-option{transition:background .18s var(--tf-ease), border-color .18s var(--tf-ease), transform .18s var(--tf-ease)}.tf-option:not(:disabled):active{transform:scale(.98)}.tf-option[data-checked]{animation:tf-choice-confirm .32s var(--tf-ease)}@keyframes tf-choice-confirm{0%{transform:scale(.98)}to{transform:none}}.tf-secret-card[aria-expanded=true]{animation:tf-secret-open .18s var(--tf-ease)}.tf-secret-card[aria-expanded=true]:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg, transparent 20%, color-mix(in oklab, var(--tf-ink) 10%, transparent), transparent 80%);animation:tf-secret-light .18s var(--tf-ease) both;position:absolute;inset:0}@keyframes tf-secret-open{0%{transform:perspective(900px)rotateX(-7deg)scale(.98)}to{transform:none}}@keyframes tf-secret-light{0%{opacity:.8;clip-path:inset(0 100% 0 0)}to{opacity:0;clip-path:inset(0)}}[data-countdown=urgent]{isolation:isolate;position:relative}[data-countdown=urgent]:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse, color-mix(in oklab, var(--tf-live) 16%, transparent), transparent 65%);animation:tf-clock-pressure 1s var(--tf-ease) infinite;position:absolute;inset:-50% -15%}@keyframes tf-clock-pressure{0%,to{opacity:.2;transform:scale(.92)}20%{opacity:.8;transform:scale(1.07)}}.tf-resolution{isolation:isolate;position:relative;overflow:hidden}.tf-resolution>:not(.tf-story-impact){z-index:3;position:relative}:is(html[data-still],[data-story-reduced=true]) :is([data-story-stage] .tf-story-scene,.tf-story-character,.tf-story-character img,[data-story-facts]>*,.tf-action,.tf-option,.tf-secret-card){transition:none;animation:none;transform:none}:is(html[data-still],[data-story-reduced=true]) :is(.tf-story-impact,.tf-story-atmosphere>i),:is(html[data-still],[data-story-reduced=true]) .tf-fault-face:before,:is(html[data-still],[data-story-reduced=true]) :is(.tf-action,.tf-secret-card):after,:is(html[data-still],[data-story-reduced=true]) [data-countdown=urgent]:before{display:none}@media (prefers-reduced-motion:reduce){[data-story-stage] .tf-story-scene,.tf-story-character,.tf-story-character img,[data-story-stage] [data-story-facts]>*,.tf-action,.tf-option,.tf-secret-card{transition:none;animation:none;transform:none}.tf-story-impact,.tf-story-atmosphere>i,.tf-action:after,.tf-secret-card:after,.tf-fault-face:before,[data-countdown=urgent]:before{display:none}.tf-action:not(:disabled):is(:hover,:active),.tf-option:not(:disabled):active{transform:translate(0,0)}}[data-story-stage] [data-story-facts]>*,:is(html[data-still],[data-story-reduced=true]) :is(.tf-scene-crossfade,[data-character-departure],[data-fault-ink]){animation:none}:is(html[data-still],[data-story-reduced=true]) :is(.tf-scene-decoration,.tf-fault-eyes){display:none}@media (prefers-reduced-motion:reduce){.tf-scene-crossfade,[data-character-departure],[data-fault-ink]{animation:none}.tf-scene-decoration,.tf-fault-eyes{display:none}}.tf-secret-card .tf-develop{animation-duration:.18s}.tf-secret-card[aria-expanded=false]{transition:none}