@layer components{.fx-tokens,.fx-surface{--fx-c:var(--fx-tone,var(--chart-1));--fx-c2:var(--fx-tone-2,var(--chart-2));--fx-k:var(--fx-intensity,1);--fx-ga:.32;--fx-la:.1;--fx-ta:.4;--fx-hl:color-mix(in oklch, var(--foreground) 5%, transparent);--fx-scale-1:color-mix(in oklch, var(--fx-c) 4%, var(--background));--fx-scale-2:color-mix(in oklch, var(--fx-c) 8%, var(--background));--fx-scale-3:color-mix(in oklch, var(--fx-c) 14%, var(--background));--fx-scale-4:color-mix(in oklch, var(--fx-c) 22%, var(--background));--fx-scale-5:color-mix(in oklch, var(--fx-c) 34%, var(--background));--fx-scale-6:color-mix(in oklch, var(--fx-c) 50%, var(--background));--fx-scale-7:color-mix(in oklch, var(--fx-c) 72%, var(--background));--fx-scale-8:var(--fx-c);--fx-glow-color:color-mix(in oklch, var(--fx-c) min(100%, calc(var(--fx-ga) * var(--fx-k) * 100%)), transparent);--fx-glow-color-soft:color-mix(in oklch, var(--fx-c) min(100%, calc(var(--fx-ga) * var(--fx-k) * 45%)), transparent);--fx-glow-sm:0 0 0 1px var(--fx-glow-color-soft), 0 0 12px -2px var(--fx-glow-color);--fx-glow-md:0 0 0 1px var(--fx-glow-color-soft), 0 0 24px -4px var(--fx-glow-color), 0 0 48px -12px var(--fx-glow-color-soft);--fx-glow-lg:0 0 0 1px var(--fx-glow-color-soft), 0 0 40px -6px var(--fx-glow-color), 0 0 96px -16px var(--fx-glow-color-soft);--fx-glow-xl:0 0 0 1px var(--fx-glow-color), 0 0 64px -8px var(--fx-glow-color), 0 0 160px -24px var(--fx-glow-color);--fx-lift-color:color-mix(in oklch, var(--fx-c) calc(var(--fx-la) * 100%), color-mix(in oklch, var(--foreground) 14%, transparent));--fx-highlight:inset 0 1px 0 0 var(--fx-hl);--fx-lift-sm:var(--fx-highlight), 0 1px 2px 0 var(--fx-lift-color), 0 2px 8px -2px var(--fx-lift-color);--fx-lift-md:var(--fx-highlight), 0 2px 4px -1px var(--fx-lift-color), 0 12px 28px -8px var(--fx-lift-color);--fx-lift-lg:var(--fx-highlight), 0 4px 8px -2px var(--fx-lift-color), 0 28px 60px -16px var(--fx-lift-color);--fx-gradient-linear:linear-gradient(135deg, color-mix(in oklch, var(--fx-c) calc(14% * var(--fx-ta)), var(--background)), var(--background) 55%, color-mix(in oklch, var(--fx-c2) calc(12% * var(--fx-ta)), var(--background)));--fx-gradient-radial:radial-gradient(120% 90% at 50% 0%, color-mix(in oklch, var(--fx-c) min(100%, calc(24% * var(--fx-k) * var(--fx-ta))), transparent), transparent 70%);--fx-gradient-conic:conic-gradient(from 180deg at 50% 50%, var(--fx-c), var(--fx-c2), var(--fx-c));--fx-gradient-border:linear-gradient(140deg, color-mix(in oklch, var(--fx-c) 70%, var(--border)), var(--border) 40%, var(--border) 60%, color-mix(in oklch, var(--fx-c2) 60%, var(--border)))}.dark .fx-tokens,.dark .fx-surface,.fx-tokens.dark,.fx-surface.dark{--fx-ga:.55;--fx-la:.22;--fx-ta:1;--fx-hl:color-mix(in oklch, var(--foreground) 12%, transparent)}.fx-mask-fade-bottom{-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.fx-mask-fade-top{-webkit-mask-image:linear-gradient(#0000,#000 40%);mask-image:linear-gradient(#0000,#000 40%)}.fx-mask-fade-x{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.fx-mask-radial{-webkit-mask-image:radial-gradient(closest-side,#000 40%,#0000);mask-image:radial-gradient(closest-side,#000 40%,#0000)}.fx-surface{--fx-surface-radius:var(--radius,.625rem);--fx-surface-glow:0 0 transparent;--fx-surface-lift:0 0 transparent;--fx-period:1;--fx-play-state:running;isolation:isolate;border-radius:var(--fx-surface-radius);color:var(--card-foreground);background:var(--card);box-shadow:var(--fx-surface-lift), var(--fx-surface-glow);position:relative;overflow:hidden}.fx-surface[data-fx-glow=sm]{--fx-surface-glow:var(--fx-glow-sm)}.fx-surface[data-fx-glow=md]{--fx-surface-glow:var(--fx-glow-md)}.fx-surface[data-fx-glow=lg]{--fx-surface-glow:var(--fx-glow-lg)}.fx-surface[data-fx-glow=xl]{--fx-surface-glow:var(--fx-glow-xl)}.fx-surface[data-fx-lift=sm]{--fx-surface-lift:var(--fx-lift-sm)}.fx-surface[data-fx-lift=md]{--fx-surface-lift:var(--fx-lift-md)}.fx-surface[data-fx-lift=lg]{--fx-surface-lift:var(--fx-lift-lg)}.fx-surface[data-fx-radius=none]{--fx-surface-radius:0}.fx-surface[data-fx-radius=sm]{--fx-surface-radius:calc(var(--radius,.625rem) - 4px)}.fx-surface[data-fx-radius=lg]{--fx-surface-radius:calc(var(--radius,.625rem) + 4px)}.fx-surface[data-fx-radius=xl]{--fx-surface-radius:calc(var(--radius,.625rem) + 12px)}.fx-surface[data-fx-variant=tinted]{background:radial-gradient(120% 80% at 50% 0%, color-mix(in oklch, var(--fx-c) calc(9% * var(--fx-ta)), transparent), transparent 70%), var(--card)}.fx-surface[data-fx-variant=gradient]{background:var(--fx-gradient-radial), var(--fx-gradient-linear)}.fx-surface[data-fx-variant=glass]{background:color-mix(in oklch, var(--card) 72%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4)}.fx-surface[data-fx-variant=glass][data-fx-glass=solid],[data-motion-tier=low] .fx-surface[data-fx-variant=glass]{background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none}@media (prefers-reduced-transparency:reduce){.fx-surface[data-fx-variant=glass]{background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none}}.fx-surface__content{z-index:1;border-radius:inherit;position:relative}.fx-surface:is([data-fx-variant=tinted],[data-fx-variant=gradient],[data-fx-variant=glass],[data-fx-shine=spotlight],[data-fx-shine=sheen])>.fx-surface__content{--muted-foreground:color-mix(in oklch, var(--muted-foreground) 75%, var(--foreground))}.fx-surface__layer{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.fx-surface__border{z-index:2;background:var(--border);-webkit-mask-composite:xor;padding:1px;overflow:hidden;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);container-type:size}.fx-surface[data-fx-border=gradient] .fx-surface__border{background:var(--fx-gradient-border)}.fx-surface[data-fx-border=beam] .fx-surface__border{background:color-mix(in oklch, var(--fx-c) 18%, var(--border))}.fx-surface__beam{aspect-ratio:1;background:radial-gradient(closest-side, var(--fx-c), color-mix(in oklch, var(--fx-c2) 70%, transparent) 45%, transparent);offset-path:inset(0 round var(--fx-surface-radius));offset-rotate:0deg;offset-distance:12%;width:clamp(96px,28cqmax,280px);position:absolute;top:0;left:0}@supports not (offset-path:inset(0)){.fx-surface__beam{translate:-50% -50%}}.fx-surface__shine{z-index:0}.fx-surface[data-fx-shine=top] .fx-surface__shine{background:linear-gradient(90deg, transparent 10%, color-mix(in oklch, var(--fx-c) 70%, var(--foreground)) 50%, transparent 90%) top / 100% 1px no-repeat, radial-gradient(60% 40% at 50% 0%, color-mix(in oklch, var(--fx-c) min(100%, calc(var(--fx-ga) * var(--fx-k) * 40%)), transparent), transparent 80%)}.fx-surface[data-fx-shine=spotlight] .fx-surface__shine{background:radial-gradient(70% 60% at 30% 0%, color-mix(in oklch, var(--fx-c) min(100%, calc(var(--fx-ga) * var(--fx-k) * 50%)), transparent), transparent 75%)}.fx-surface[data-fx-shine=sheen]>.fx-surface__shine{overflow:hidden}.fx-surface[data-fx-shine=sheen]>.fx-surface__shine:before{content:"";background:linear-gradient(110deg, transparent 20%, color-mix(in oklch, var(--fx-c) calc(6% * var(--fx-ta)), transparent) 40%, color-mix(in oklch, var(--fx-c) calc(16% * var(--fx-ta)), transparent) 50%, transparent 80%);width:40%;position:absolute;inset:0 auto 0 0;transform:translate(90%)}@keyframes fx-beam-spin{0%{offset-distance:12%}to{offset-distance:112%}}@keyframes fx-sheen-sweep{0%{transform:translate(-100%)}to{transform:translate(250%)}}.fx-surface:is([data-fx-motion=expressive],[data-fx-motion=subtle])>.fx-surface__border>.fx-surface__beam{animation:fx-beam-spin calc(6s * var(--fx-period)) linear infinite;animation-play-state:var(--fx-play-state)}.fx-surface:is([data-fx-motion=expressive],[data-fx-motion=subtle])[data-fx-shine=sheen]>.fx-surface__shine:before{animation:fx-sheen-sweep calc(4.5s * var(--fx-period)) var(--ease-standard,cubic-bezier(.2, 0, 0, 1)) infinite;animation-play-state:var(--fx-play-state)}.fx-surface[data-fx-motion=subtle]>.fx-surface__border>.fx-surface__beam{opacity:.7}.fx-surface:is([data-fx-running=false],[data-motion-running=false]){--fx-play-state:paused}@media (prefers-reduced-motion:reduce){.fx-surface .fx-surface__beam,.fx-surface .fx-surface__shine:before{animation:none!important}}}
