.hero-word{animation:hero-word .9s var(--ease-out-soft) both;display:inline-block}@keyframes hero-word{0%{filter:blur(10px);transform:translateY(.32em)}to{filter:none;transform:none}}.hero-dot{animation:.7s cubic-bezier(.34,1.56,.64,1) .52s both hero-dot;display:inline-block}@keyframes hero-dot{0%{transform:translateY(-.6em)scale(0)}to{transform:none}}.hero-live{animation:2.4s ease-out infinite hero-live}@keyframes hero-live{0%{box-shadow:0 0 #22c55e8c}70%,to{box-shadow:0 0 0 7px #22c55e00}}.hero-orb{animation:hero-orb 22s var(--ease-in-out-soft) infinite alternate}.hero-orb-b{animation-duration:28s;animation-direction:alternate-reverse}@keyframes hero-orb{0%{transform:translate(-4%,-2%)scale(1)}to{transform:translate(6%,4%)scale(1.08)}}.hero-stage{animation:hero-stage 1.1s var(--ease-out-soft) .25s both;transform-origin:50% 0}@keyframes hero-stage{0%{opacity:0;transform:perspective(1400px)translateY(36px)rotateX(10deg)}to{opacity:1;transform:none}}@property --hero-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.hero-frame{background:linear-gradient(var(--color-surface), var(--color-surface)) padding-box, conic-gradient(from var(--hero-angle), transparent 0 70%, #1f4feb8c 80%, #f27a1a80 86%, transparent 92%) border-box;border:1px solid #0000;animation:8s linear infinite hero-angle}@keyframes hero-angle{to{--hero-angle:360deg}}.story{animation-duration:14s;animation-iteration-count:infinite;animation-timing-function:var(--ease-out-soft);animation-delay:1.2s;animation-fill-mode:both}.story-row{animation-name:story-row;display:grid}@keyframes story-row{0%,6%{opacity:0;grid-template-rows:0fr}11%,90%{opacity:1;grid-template-rows:1fr}97%,to{opacity:0;grid-template-rows:0fr}}.story-row-glow{animation-name:story-row-glow}@keyframes story-row-glow{0%,9%{background-color:#eef3ff}34%,to{background-color:#eef3ff00}}.story-count-before{animation-name:story-count-before}@keyframes story-count-before{0%,8%{opacity:1;transform:none}10%,80%{opacity:0;transform:translateY(-6px)}83%,to{opacity:1;transform:none}}.story-count-after{animation-name:story-count-after}@keyframes story-count-after{0%,8%{opacity:0;transform:translateY(6px)}10%,80%{opacity:1;transform:none}83%,to{opacity:0;transform:translateY(-6px)}}.story-toast{animation-name:story-toast}@keyframes story-toast{0%,10%{opacity:0;transform:translateY(-14px)scale(.96)}14%,36%{opacity:1;transform:none}40%,to{opacity:0;transform:translateY(-8px)scale(.98)}}.story-typing{animation-name:story-typing}@keyframes story-typing{0%,28%{opacity:0}30%,40%{opacity:1}42%,to{opacity:0}}.story-incoming{animation-name:story-in}@keyframes story-in{0%,41%{opacity:0;transform:translateY(8px)scale(.98)}44%,92%{opacity:1;transform:none}97%,to{opacity:0}}.story-reply{animation-name:story-reply}@keyframes story-reply{0%,55%{opacity:0;transform:translateY(8px)scale(.98)}58%,92%{opacity:1;transform:none}97%,to{opacity:0}}.story-check{animation-name:story-check}@keyframes story-check{0%,69%{background-color:var(--color-surface);border-color:var(--color-border-control);color:#0000;transform:none}72%{background-color:var(--color-success);border-color:var(--color-success);color:#fff;transform:scale(1.18)}75%,92%{background-color:var(--color-success);border-color:var(--color-success);color:#fff;transform:none}97%,to{background-color:var(--color-surface);border-color:var(--color-border-control);color:#0000}}.story-strike{position:relative}.story-strike:after{content:"";background:var(--color-ink-muted);transform-origin:0;height:1.5px;animation:story-strike 14s var(--ease-out-soft) 1.2s infinite both;border-radius:1px;position:absolute;top:55%;left:0;right:0}@keyframes story-strike{0%,72%{transform:scaleX(0)}78%,92%{transform:scaleX(1)}97%,to{transform:scaleX(0)}}.story-done{animation-name:story-done}@keyframes story-done{0%,76%{opacity:0;transform:translateY(6px)}79%,92%{opacity:1;transform:none}97%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.hero-word,.hero-dot,.hero-live,.hero-orb,.hero-stage,.hero-frame,.story,.story-strike:after{animation:none!important}}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 22%}.reveal-stagger>*{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 20%}}}@keyframes reveal{0%{opacity:0;transform:translateY(28px)scale(.985)}to{opacity:1;transform:none}}.bento-card{isolation:isolate;position:relative}.bento-card:before{content:"";z-index:-1;border-radius:inherit;opacity:0;transition:opacity var(--duration-slow) var(--ease-out-soft);background:radial-gradient(120% 80% at 100% 0,#3366ff1a,#0000 55%);position:absolute;inset:0}.bento-card:hover:before{opacity:1}.fx-push{animation:fx-push 6s var(--ease-out-soft) infinite}@keyframes fx-push{0%,6%{opacity:0;transform:translateY(-24px)scale(.96)}14%,78%{opacity:1;transform:none}90%,to{opacity:0;transform:translateY(-12px)}}.fx-tap{animation:6s ease-in-out infinite fx-tap}@keyframes fx-tap{0%,44%{box-shadow:none;transform:none}50%{transform:scale(.94);box-shadow:0 0 0 6px #3366ff2e}56%,to{box-shadow:none;transform:none}}.fx-done{animation:6s ease-out infinite fx-done}@keyframes fx-done{0%,54%{opacity:0;transform:translateY(6px)}62%,80%{opacity:1;transform:none}92%,to{opacity:0}}.fx-bubble{animation:fx-bubble 7s var(--ease-out-soft) infinite both}.fx-bubble-2{animation-delay:.9s}.fx-bubble-3{animation-delay:1.8s}@keyframes fx-bubble{0%{opacity:0;transform:translateY(10px)scale(.97)}10%,85%{opacity:1;transform:none}95%,to{opacity:0}}.fx-dot{animation:1.2s ease-in-out infinite fx-dot}.fx-dot:nth-child(2){animation-delay:.15s}.fx-dot:nth-child(3){animation-delay:.3s}@keyframes fx-dot{0%,60%,to{opacity:.45;transform:none}30%{opacity:1;transform:translateY(-3px)}}.fx-wire{stroke-dasharray:6 8;animation:1.4s linear infinite fx-wire}@keyframes fx-wire{to{stroke-dashoffset:-28px}}.fx-packet{offset-path:path("M 10 10 L 150 10");animation:fx-packet 2.2s var(--ease-in-out-soft) infinite}@keyframes fx-packet{0%{offset-distance:0%}to{offset-distance:100%}}.fx-check{animation:2.2s ease-out infinite fx-check}@keyframes fx-check{0%,70%{opacity:.25;transform:scale(.6)}85%,to{opacity:1;transform:none}}.fx-spin{transform-origin:50%;animation:9s linear infinite fx-spin}@keyframes fx-spin{to{transform:rotate(360deg)}}.fx-join{animation:fx-join 5s var(--ease-out-soft) infinite both}.fx-join-2{animation-delay:.5s}.fx-join-3{animation-delay:1s}@keyframes fx-join{0%{opacity:0;transform:translate(-10px)scale(.8)}12%,88%{opacity:1;transform:none}to{opacity:0}}.fx-type{white-space:nowrap;vertical-align:bottom;width:3.3ch;animation:5s steps(4,end) infinite fx-type;display:inline-block;overflow:hidden}@keyframes fx-type{0%,8%{width:0}40%,92%{width:3.3ch}to{width:0}}.fx-caret{animation:1s step-end infinite fx-caret}@keyframes fx-caret{50%{opacity:0}}.fx-result{animation:5s ease-out infinite both fx-result}.fx-result-2{animation-delay:.2s}@keyframes fx-result{0%,36%{opacity:0;transform:translateY(4px)}46%,92%{opacity:1;transform:none}to{opacity:0}}.fx-shackle{animation:fx-shackle 4s var(--ease-out-soft) infinite}@keyframes fx-shackle{0%,30%{transform:translateY(-3px)}42%,to{transform:none}}.fx-select{animation:fx-select 6s var(--ease-in-out-soft) infinite}@keyframes fx-select{0%,40%{transform:translateY(0)}50%,90%{transform:translateY(44px)}to{transform:translateY(0)}}.fx-float{animation:5s ease-in-out infinite fx-float}@keyframes fx-float{50%{transform:translateY(-6px)}}.fx-drift{animation:16s ease-in-out infinite alternate fx-drift}@keyframes fx-drift{to{transform:translate(-40%,30%)scale(1.15)}}@media (prefers-reduced-motion:reduce){.fx-push,.fx-tap,.fx-done,.fx-bubble,.fx-dot,.fx-wire,.fx-packet,.fx-check,.fx-spin,.fx-join,.fx-type,.fx-caret,.fx-result,.fx-shackle,.fx-select,.fx-float,.fx-drift{animation:none}}
