@property --lp-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.lp-root{background:var(--color-dark-bg);color:var(--color-dark-text);overflow-x:clip}.lp-grid{background-image:linear-gradient(to right, color-mix(in oklch, var(--color-dark-border) 55%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklch, var(--color-dark-border) 55%, transparent) 1px, transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(75% 65% at 50% 35%,#000 10%,#0000 75%);mask-image:radial-gradient(75% 65% at 50% 35%,#000 10%,#0000 75%)}.lp-dots{background-image:radial-gradient(color-mix(in oklch, var(--color-dark-border-strong) 35%, transparent) 1.2px, transparent 1.4px);background-size:22px 22px;-webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}.lp-band{background:radial-gradient(80% 120% at 50% -10%, color-mix(in oklch, var(--color-brand-purple-500) 30%, transparent), transparent 60%), linear-gradient(180deg, var(--color-dark-band) 0%, var(--color-dark-subtle) 100%)}.lp-glow-purple{background:radial-gradient(60% 60% at 75% 40%, color-mix(in oklch, var(--color-brand-purple-500) 26%, transparent), transparent 70%)}.lp-glow-green{background:radial-gradient(55% 60% at 25% 50%, color-mix(in oklch, var(--color-brand-green-400) 16%, transparent), transparent 70%)}.lp-glow-yellow{background:radial-gradient(55% 60% at 75% 50%, color-mix(in oklch, var(--color-brand-yellow-300) 13%, transparent), transparent 70%)}.lp-slant-top{clip-path:polygon(0 6vw,100% 0,100% 100%,0 100%);margin-top:-6vw;padding-top:6vw}.lp-aurora{filter:blur(90px);opacity:.55;will-change:transform;border-radius:9999px;animation:18s ease-in-out infinite alternate lp-aurora;position:absolute}@keyframes lp-aurora{0%{transform:translate(0,0)scale(1)}50%{transform:translate(8%,-10%)scale(1.18)}to{transform:translate(-8%,6%)scale(.92)}}.lp-spotlight{background:radial-gradient(520px circle at var(--mx,60%) var(--my,35%), color-mix(in oklch, var(--color-dark-border-selected) 26%, transparent), transparent 65%);transition:opacity .4s}.lp-shimmer-text{background:linear-gradient(100deg, var(--color-dark-link) 15%, var(--color-white) 35%, var(--color-brand-green-400) 52%, var(--color-brand-yellow-300) 62%, var(--color-dark-link) 82%);color:#0000;background-size:260% 100%;-webkit-background-clip:text;background-clip:text;animation:7s linear infinite lp-shimmer}@keyframes lp-shimmer{0%{background-position:120% 0}to{background-position:-160% 0}}.lp-gradient-text{background:linear-gradient(90deg, var(--color-dark-link), var(--color-brand-green-400));color:#0000;-webkit-background-clip:text;background-clip:text}.lp-glow-btn{isolation:isolate;box-shadow:0 0 0 1px color-mix(in oklch, var(--color-dark-border-selected) 80%, transparent), 0 12px 40px -10px color-mix(in oklch, var(--color-brand-purple-500) 90%, transparent), 0 0 60px -12px color-mix(in oklch, var(--color-dark-border-selected) 80%, transparent);transition:box-shadow .3s,transform .2s;position:relative;overflow:hidden}.lp-glow-btn:hover{box-shadow:0 0 0 1px var(--color-dark-border-selected), 0 16px 50px -8px color-mix(in oklch, var(--color-brand-purple-500) 100%, transparent), 0 0 80px -8px var(--color-dark-border-selected);transform:translateY(-1px)}.lp-glow-btn:after{content:"";z-index:-1;background:linear-gradient(115deg, transparent 30%, color-mix(in oklch, var(--color-white) 45%, transparent) 50%, transparent 70%);animation:3.8s ease-in-out infinite lp-sweep;position:absolute;inset:0;transform:translate(-130%)}@keyframes lp-sweep{0%,55%{transform:translate(-130%)}to{transform:translate(130%)}}.lp-glow-border{isolation:isolate;position:relative}.lp-glow-border:before{content:"";z-index:-1;border-radius:inherit;background:conic-gradient(from var(--lp-angle), transparent 0deg, var(--color-dark-border-selected) 60deg, var(--color-brand-green-400) 110deg, transparent 170deg, transparent 360deg);animation:6s linear infinite lp-spin;position:absolute;inset:-1.5px}@keyframes lp-spin{to{--lp-angle:360deg}}@media (width<=767px),(hover:none){.lp-glow-border:before{animation:none;display:none}}.lp-hover-card{isolation:isolate;position:relative;overflow:hidden}.lp-hover-card:before{content:"";z-index:-1;opacity:0;background:radial-gradient(320px circle at var(--cx,50%) var(--cy,50%), color-mix(in oklch, var(--color-dark-border-selected) 22%, transparent), transparent 70%);transition:opacity .3s;position:absolute;inset:0}.lp-hover-card:hover:before{opacity:1}.lp-rail-fill{background:linear-gradient(to bottom, transparent 0%, color-mix(in oklch, var(--rail) 70%, transparent) 15%, var(--rail) 100%);box-shadow:0 0 14px 1px color-mix(in oklch, var(--rail) 70%, transparent)}.lp-rail-head{background:var(--rail);box-shadow:0 0 0 4px color-mix(in oklch, var(--rail) 25%, transparent), 0 0 24px 6px color-mix(in oklch, var(--rail) 75%, transparent)}.lp-rail-node{color:var(--rail);border-color:color-mix(in oklch, var(--rail) 55%, transparent);background:color-mix(in oklch, var(--rail) 12%, var(--color-dark-bg));box-shadow:0 0 32px -4px color-mix(in oklch, var(--rail) 70%, transparent)}.lp-art-halo{background:radial-gradient(closest-side, color-mix(in oklch, var(--color-brand-purple-500) 55%, transparent), transparent), radial-gradient(closest-side at 70% 70%, color-mix(in oklch, var(--color-brand-green-400) 30%, transparent), transparent);filter:blur(40px);animation:6s ease-in-out infinite lp-pulse}@keyframes lp-pulse{0%,to{opacity:.65;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}.lp-bob{animation:5s ease-in-out infinite lp-bob}@keyframes lp-bob{0%,to{translate:0}50%{translate:0 -10px}}.lp-twinkle{animation:3.2s ease-in-out infinite lp-twinkle}@keyframes lp-twinkle{0%,to{opacity:.15;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}.lp-marquee-mask{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.lp-marquee{width:max-content;animation:45s linear infinite lp-marquee;display:flex}.lp-marquee[data-reverse]{animation-direction:reverse}.lp-marquee-mask:hover .lp-marquee{animation-play-state:paused}@keyframes lp-marquee{to{transform:translate(-50%)}}.lp-scroll-dot{animation:1.8s ease-in-out infinite lp-scroll-dot}@keyframes lp-scroll-dot{0%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(12px)}to{opacity:0;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.lp-root *,.lp-root :before,.lp-root :after{animation:none!important}}
