:root{--chat-motion-ease:cubic-bezier(0.32,0.72,0,1);--chat-motion-ease-out:cubic-bezier(0.22,1,0.36,1);--chat-motion-micro:160ms;--chat-motion-short:280ms;--chat-motion-medium:440ms}.space-library-tray{width:0;visibility:hidden;transition:width .38s var(--chat-motion-ease),visibility 0s .38s}.space-library-tray[data-state=open]{width:min(20rem,70vw);visibility:visible;transition-delay:0s}.space-library-tray-content{opacity:0;transform:scale(.95);transform-origin:top right;transition:transform .38s var(--chat-motion-ease),opacity var(--chat-motion-short) var(--chat-motion-ease)}.space-library-tray[data-state=open]>.space-library-tray-content{opacity:1;transform:scale(1)}.space-chat-panel-animated{transition:flex-grow .38s var(--chat-motion-ease)}.space-chat-panel-content{opacity:0;transform:scale(.95);transform-origin:top right;transition:transform .38s var(--chat-motion-ease),opacity var(--chat-motion-short) var(--chat-motion-ease)}[data-state=open]>.space-chat-panel-content{opacity:1;transform:scale(1)}@media (prefers-reduced-motion:reduce){.space-chat-panel-animated,.space-chat-panel-content,.space-library-tray,.space-library-tray-content{transition:none}}@keyframes chat-step-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat-step-enter{animation:chat-step-enter var(--chat-motion-short) var(--chat-motion-ease-out) both}@keyframes chat-collapsible-open{0%{height:0;opacity:0}to{height:var(--radix-collapsible-content-height);opacity:1}}@keyframes chat-collapsible-close{0%{height:var(--radix-collapsible-content-height);opacity:1}to{height:0;opacity:0}}.chat-collapsible{overflow:hidden;will-change:height,opacity}.chat-collapsible[data-state=open]{animation:chat-collapsible-open var(--chat-motion-medium) var(--chat-motion-ease)}.chat-collapsible[data-state=closed]{animation:chat-collapsible-close var(--chat-motion-medium) var(--chat-motion-ease)}.chat-step-icon{position:relative;display:inline-grid;place-items:center}.chat-step-icon>*{grid-area:1/1;transition:opacity var(--chat-motion-short) var(--chat-motion-ease)}.chat-step-icon>.chat-step-icon-active{opacity:1}.chat-step-icon>.chat-step-icon-complete{opacity:0}.chat-step-icon[data-status=complete]:has(>.chat-step-icon-complete)>.chat-step-icon-active{opacity:0}.chat-step-icon[data-status=complete]>.chat-step-icon-complete{opacity:1}.chat-step-icon[data-status=complete] path[d$="2 2 4-4"]{stroke:var(--timeline-tick);stroke-width:2.5}.chat-step-row{transition:color var(--chat-motion-short) var(--chat-motion-ease)}.chat-chevron{transition:transform var(--chat-motion-short) var(--chat-motion-ease)}@keyframes chat-pill-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.chat-pill-enter{animation:chat-pill-enter var(--chat-motion-short) var(--chat-motion-ease-out) both}.source-pill{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08);color:rgba(0,0,0,.5)}.source-pill:hover{background:rgba(0,0,0,.07);color:rgba(0,0,0,.75)}.dark .source-pill{background:color-mix(in srgb,var(--muted) 50%,transparent);border-color:var(--border);color:var(--muted-foreground)}.dark .source-pill:hover{background:var(--muted);color:var(--foreground)}@keyframes sourcePillEnterExit{0%{opacity:0;transform:translateY(3px);animation-timing-function:cubic-bezier(.22,1,.36,1)}11.3%{opacity:1;transform:translateY(0)}72.7%{opacity:1;transform:translateY(0);animation-timing-function:cubic-bezier(.55,0,1,.45)}84.1%{opacity:0;transform:translateY(-2px)}to{opacity:0;transform:translateY(-2px)}}@keyframes sourcePillShimmer{0%{background-position:220% 0}to{background-position:-120% 0}}.source-pill-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);opacity:0;transform:translateY(3px);will-change:opacity,transform;animation:sourcePillEnterExit 4.4s infinite}.source-pill-chip .skeleton-fav,.source-pill-chip .skeleton-txt{background-color:rgba(0,0,0,.1);background-image:linear-gradient(100deg,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(255,255,255,.5) 50%,rgba(0,0,0,0) 70%,rgba(0,0,0,0));background-repeat:no-repeat;background-size:220% 100%;background-position:120% 0;will-change:background-position;animation:sourcePillShimmer 1.8s linear infinite}.source-pill-chip .skeleton-fav{width:14px;height:14px;border-radius:4px;flex:0 0 14px}.source-pill-chip .skeleton-txt{height:8px;border-radius:4px}.source-pill-chip:first-child .skeleton-fav,.source-pill-chip:first-child .skeleton-txt{animation-delay:0s}.source-pill-chip:nth-child(2) .skeleton-fav,.source-pill-chip:nth-child(2) .skeleton-txt{animation-delay:-.2s}.source-pill-chip:nth-child(3) .skeleton-fav,.source-pill-chip:nth-child(3) .skeleton-txt{animation-delay:-.4s}.source-pill-chip:nth-child(4) .skeleton-fav,.source-pill-chip:nth-child(4) .skeleton-txt{animation-delay:-.6s}.source-pill-chip:nth-child(5) .skeleton-fav,.source-pill-chip:nth-child(5) .skeleton-txt{animation-delay:-.8s}.dark .source-pill-chip{background:color-mix(in srgb,var(--muted) 50%,transparent);border-color:var(--border)}.dark .source-pill-chip .skeleton-fav,.dark .source-pill-chip .skeleton-txt{background-color:var(--border);background-image:linear-gradient(100deg,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(255,255,255,.08) 50%,rgba(0,0,0,0) 70%,rgba(0,0,0,0))}@media (prefers-reduced-motion:reduce){.source-pill-chip{opacity:1;transform:none;animation:none}.source-pill-chip .skeleton-fav,.source-pill-chip .skeleton-txt{animation:none;background-image:none}}@property --flashcard-sweep{syntax:"<number>";inherits:true;initial-value:0}.flashcard-card{--flashcard-sweep:0}.flashcard-card[data-phase=in]{--flashcard-sweep:1;transition:--flashcard-sweep 1s var(--chat-motion-ease-out)}.flashcard-card[data-phase=out]{--flashcard-sweep:0;transition:--flashcard-sweep 1s var(--chat-motion-ease-out)}.flashcard-card[data-phase=idle]{--flashcard-sweep:0;transition:none}.flashcard-card[data-phase=idle] .flashcard-line,.flashcard-card[data-phase=idle] .flashcard-shade{opacity:0}.flashcard-shade{-webkit-mask-image:linear-gradient(to right,#000 calc(var(--flashcard-sweep) * 100% - .6%),transparent calc(var(--flashcard-sweep) * 100% + .6%));mask-image:linear-gradient(to right,#000 calc(var(--flashcard-sweep) * 100% - .6%),transparent calc(var(--flashcard-sweep) * 100% + .6%));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.flashcard-line{opacity:calc(min(1, min(var(--flashcard-sweep), 1 - var(--flashcard-sweep)) * 8));background-image:linear-gradient(to right,transparent calc(var(--flashcard-sweep) * 100% - 1px),var(--border) calc(var(--flashcard-sweep) * 100% - 1px),var(--border) calc(var(--flashcard-sweep) * 100% + 1px),transparent calc(var(--flashcard-sweep) * 100% + 1px))}@media (prefers-reduced-motion:reduce){.flashcard-card[data-phase=in]{transition:none;--flashcard-sweep:1}.flashcard-card[data-phase=out]{transition:none;--flashcard-sweep:0}}@keyframes globeMeridianSpin{0%{transform:scaleX(0);opacity:1}6.25%{transform:scaleX(.382);opacity:1}12.5%{transform:scaleX(.707);opacity:1}18.75%{transform:scaleX(.924);opacity:1}25%{transform:scaleX(1);opacity:1}25.001%{transform:scaleX(1);opacity:0}74.999%{transform:scaleX(1);opacity:0}75%{transform:scaleX(1);opacity:1}81.25%{transform:scaleX(.924);opacity:1}87.5%{transform:scaleX(.707);opacity:1}93.75%{transform:scaleX(.382);opacity:1}to{transform:scaleX(0);opacity:1}}.globe-loader .gl-m{transform-box:fill-box;transform-origin:center;vector-effect:non-scaling-stroke;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;opacity:0}.globe-loader.globe-animate .gl-m{opacity:1;animation:globeMeridianSpin 3.6s linear infinite}.globe-loader.globe-animate .gl-a{animation-delay:0s}.globe-loader.globe-animate .gl-b{animation-delay:-.9s}.globe-loader.globe-animate .gl-c{animation-delay:-1.8s}.globe-loader.globe-animate .gl-d{animation-delay:-2.7s}.rw-skel-svg{width:100%;height:auto;display:block;overflow:visible}.rw-ph{fill:currentColor;fill-opacity:.08}.rw-ink{fill:currentColor;fill-opacity:.42;transform-box:fill-box;transform-origin:0 50%}.rw-skel-animate .rw-ink{transform:translateX(0) scaleX(0);animation:rw-wipe 2.8s ease-in-out infinite}@keyframes rw-wipe{0%{transform:translateX(0) scaleX(0)}46%{transform:translateX(0) scaleX(1)}54%{transform:translateX(0) scaleX(1)}to{transform:translateX(100%) scaleX(0)}}@media (prefers-reduced-motion:reduce){.rw-skel-animate .rw-ink{animation:none;transform:none}}.tree-loader .branch-l,.tree-loader .branch-r,.tree-loader .canopy,.tree-loader .orbit,.tree-loader .tree-root,.tree-loader .trunk{transform-box:view-box}.tree-loader .b1,.tree-loader .b2,.tree-loader .b3,.tree-loader .b4{transform-box:fill-box;transform-origin:center}.tree-loader .orbit-back{opacity:0}.tree-loader.a06 .orbit-back,.tree-loader.a06 .orbit-front{transform-origin:12px 10px}.tree-loader.a06 .orbit-front{animation:treeOrbit 2.6s linear infinite,treeOrbitFrontVis 2.6s steps(1) infinite;animation-delay:var(--orbit-delay,0s);animation-fill-mode:backwards}.tree-loader.a06 .orbit-back{animation:treeOrbit 2.6s linear infinite,treeOrbitBackVis 2.6s steps(1) infinite;animation-delay:var(--orbit-delay,0s);animation-fill-mode:backwards}.tree-loader.a06 .canopy{transform-origin:12px 10px;animation:a04breath 2.6s ease-in-out infinite}@keyframes treeOrbit{0%{transform:translateY(-1.5px) scale(.55);animation-timing-function:ease-out}25%{transform:translate(-8.5px) scale(.85);animation-timing-function:ease-in}50%{transform:translateY(1.8px) scale(1.25);animation-timing-function:ease-out}75%{transform:translate(8.5px) scale(.85);animation-timing-function:ease-in}to{transform:translateY(-1.5px) scale(.55)}}@keyframes treeOrbitFrontVis{0%{opacity:0}25%{opacity:1}75%{opacity:0}to{opacity:0}}@keyframes treeOrbitBackVis{0%{opacity:1}25%{opacity:0}75%{opacity:1}to{opacity:1}}@keyframes a04breath{0%,to{transform:scale(.94)}50%{transform:scale(1.07)}}.tree-loader.a07 .b1{animation:a07pulse 1.5s ease-in-out infinite}.tree-loader.a07 .b2{animation:a07pulse 1.5s ease-in-out -.4s infinite}.tree-loader.a07 .b3{animation:a07pulse 1.5s ease-in-out -.8s infinite}.tree-loader.a07 .b4{animation:a07pulse 1.5s ease-in-out -1.2s infinite}@keyframes a07pulse{0%,to{transform:scale(.9)}50%{transform:scale(1.1)}}.tree-loader.a09 .tree-root{transform-origin:12px 22px;animation:a09bounce 1.3s cubic-bezier(.4,0,.5,1) infinite}@keyframes a09bounce{0%,to{transform:scale(1)}20%{transform:scale(1.08,.88)}50%{transform:scale(.94,1.1) translateY(-.5px)}75%{transform:scale(1.04,.96)}}.tree-loader.a10 .b1{animation:a10pulse 1.5s ease-in-out 0s infinite}.tree-loader.a10 .b2{animation:a10pulse 1.5s ease-in-out .18s infinite}.tree-loader.a10 .b3{animation:a10pulse 1.5s ease-in-out .36s infinite}.tree-loader.a10 .b4{animation:a10pulse 1.5s ease-in-out .54s infinite}@keyframes a10pulse{0%,to{transform:scale(.85)}25%{transform:scale(1.18)}60%{transform:scale(.95)}}.tl-icon{--tl-dur:2.8s;--tl-eo:var(--chat-motion-ease);--tl-ei:cubic-bezier(0.65,0,0.35,1);--tl-ghost:0.25}.tl-icon .tl-ghost{opacity:var(--tl-ghost)}.tl-icon .tl-distil,.tl-icon .tl-pass,.tl-icon .tl-rise,.tl-icon .tl-slide,.tl-icon .tl-sweep,.tl-icon .tl-turn,.tl-icon .tl-write{transform-box:view-box}.tl-icon.tl-animate .tl-ink{stroke-dasharray:100;stroke-dashoffset:100;animation:tlInk var(--tl-dur) var(--tl-ease,var(--tl-ei)) var(--tl-delay,0s) infinite}.tl-icon .tl-ink-out{--tl-ease:var(--tl-eo)}@keyframes tlInk{0%{stroke-dashoffset:100;opacity:1}30%,78%{stroke-dashoffset:0;opacity:1}90%{stroke-dashoffset:0;opacity:0}90.01%,to{stroke-dashoffset:100;opacity:0}}.tl-icon.tl-animate .tl-sweep{animation:tlSweep var(--tl-dur) var(--tl-ei) var(--tl-delay,0s) infinite}@keyframes tlSweep{0%,10%{transform:translateX(-3px)}50%,60%{transform:translateX(0)}96%,to{transform:translateX(-3px)}}.tl-icon .tl-turn{transform-origin:12px 12px}.tl-icon.tl-animate .tl-turn{animation:tlTurn var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlTurn{0%{transform:scaleX(1);opacity:1}46%{transform:scaleX(-.94);opacity:1}54%{transform:scaleX(-1);opacity:1}62%{transform:scaleX(-1);opacity:0}62.01%,to{transform:scaleX(1);opacity:0}}.tl-icon.tl-animate .tl-pass{animation:tlPass var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlPass{0%{transform:translateX(21px)}20%,46%{transform:translateX(0)}66%,to{transform:translateX(-16.5px)}}.tl-icon.tl-animate .tl-rise{animation:tlRise var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlRise{0%{opacity:0;transform:translateY(3px)}16%,74%{opacity:1;transform:translateY(0)}86%,to{opacity:0;transform:translateY(0)}}.tl-icon.tl-animate .tl-distil{animation:tlDistil var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlDistil{0%,10%{transform:scaleX(1);opacity:1}42%,74%{transform:scaleX(.45);opacity:1}86%{transform:scaleX(.45);opacity:0}86.01%,to{transform:scaleX(1);opacity:0}}.tl-icon.tl-animate .tl-slide{animation:tlSlide var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlSlide{0%,22%{transform:translateX(0)}36%,60%{transform:translateX(-18px)}74%,to{transform:translateX(-36px)}}.tl-icon.tl-animate .tl-blink{opacity:0;animation:tlBlink var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlBlink{0%,44%{opacity:0}52%,80%{opacity:1}90%,to{opacity:0}}.tl-icon.tl-animate .tl-write{animation:tlWrite var(--tl-dur) var(--tl-eo) var(--tl-delay,0s) infinite}@keyframes tlWrite{0%,4%{transform:translateX(-1.5px)}30%,84%{transform:translateX(1.5px)}96%,to{transform:translateX(-1.5px)}}@media (prefers-reduced-motion:reduce){.tl-icon .tl-anim{animation:none!important;stroke-dashoffset:0!important;opacity:1!important;transform:none!important}.tl-icon .tl-pass-alt{opacity:0!important}}