.lp{--lp-glow:rgba(var(--glow),0.55);--lp-glow-soft:rgba(var(--glow),0.14);position:relative;overflow-x:clip}.lp-grain:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.lp-hand{font-family:var(--font-hand),"Caveat",cursive;font-weight:600;letter-spacing:0}.lp-kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.lp-quiet{color:hsl(var(--muted-foreground)/.85)}.lp-horizon{position:absolute;inset:auto 0 0 0;height:40%;pointer-events:none;perspective:520px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 32%);mask-image:linear-gradient(180deg,transparent,#000 32%)}.lp-floor{position:absolute;left:-50%;right:-50%;top:22%;height:160%;transform:rotateX(68deg);transform-origin:top center;background-image:linear-gradient(to right,rgba(var(--glow),.22) 1px,transparent 1px),linear-gradient(to bottom,rgba(var(--glow),.22) 1px,transparent 1px);background-size:64px 64px;animation:lp-floor 2.8s linear infinite;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 50% 0,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 60% 70% at 50% 0,#000 30%,transparent 75%)}:root:not(.dark) .lp-floor{background-image:linear-gradient(90deg,rgba(95,130,10,.2) 1px,transparent 0),linear-gradient(180deg,rgba(95,130,10,.2) 1px,transparent 0)}.lp-sun{position:absolute;left:50%;top:14%;width:min(1100px,120vw);height:340px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at center,var(--lp-glow) 0,rgba(var(--glow),.12) 38%,transparent 70%);filter:blur(30px);animation:lp-breathe 7s ease-in-out infinite}.lp-sun-line{position:absolute;left:10%;right:10%;top:22%;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--glow),.9),transparent);box-shadow:0 0 24px 2px rgba(var(--glow),.5)}@keyframes lp-floor{0%{background-position:0 0}to{background-position:0 64px}}@keyframes lp-breathe{0%,to{opacity:.85;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}.lp-btn-primary{position:relative;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 20px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:600;font-size:15px;box-shadow:0 0 0 1px rgba(var(--glow),.6),0 10px 40px -8px rgba(var(--glow),.6);overflow:hidden;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.lp-btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease-out)}.lp-btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(var(--glow),.8),0 16px 50px -8px rgba(var(--glow),.75)}.lp-btn-primary:hover:after{transform:translateX(120%)}.lp-btn-primary svg{transition:transform var(--dur-base) var(--ease-out)}.lp-btn-primary:hover svg{transform:translateX(3px)}.lp-btn-ghost{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--card)/.6);backdrop-filter:blur(8px);font-weight:500;font-size:15px;transition:border-color var(--dur-base),background-color var(--dur-base)}.lp-btn-ghost:hover{border-color:hsl(var(--foreground)/.3);background:hsl(var(--card))}.lp-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.lp-marquee-track{display:flex;width:max-content;gap:56px;animation:lp-marquee 36s linear infinite}.lp-marquee:hover .lp-marquee-track{animation-play-state:paused}@keyframes lp-marquee{to{transform:translateX(-50%)}}.lp-window{position:relative;border-radius:18px;border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:0 0 0 6px hsl(var(--foreground)/.03),var(--shadow-lg),0 40px 120px -40px rgba(var(--glow),.25);overflow:hidden}.lp-window-bar{display:flex;align-items:center;gap:14px;height:40px;padding:0 14px;border-bottom:1px solid hsl(var(--border));font-family:var(--font-mono);font-size:11.5px;color:hsl(var(--muted-foreground))}.lp-dots{display:flex;gap:6px}.lp-dots i{width:10px;height:10px;border-radius:50%;background:hsl(var(--muted-foreground)/.35)}.lp-stage-bg{background-color:var(--canvas-bg);background-image:radial-gradient(var(--canvas-dot-color) 1px,transparent 1px);background-size:22px 22px}.lp-live-dot{width:7px;height:7px;border-radius:50%;background:hsl(var(--primary));box-shadow:0 0 0 0 rgba(var(--glow),.7);animation:lp-ping 1.8s ease-out infinite}@keyframes lp-ping{0%{box-shadow:0 0 0 0 rgba(var(--glow),.7)}to{box-shadow:0 0 0 9px rgba(var(--glow),0)}}.lp-cable-flow{stroke-dasharray:4 10;animation:lp-flow .9s linear infinite}@keyframes lp-flow{to{stroke-dashoffset:-14}}.lp-rail-track{position:absolute;left:11px;top:8px;bottom:8px;width:2px;border-radius:2px;background:hsl(var(--border))}.lp-rings{background-image:repeating-radial-gradient(circle at 50% 0,transparent 0,transparent 78px,hsl(var(--foreground)/.05) 79px,transparent 80px)}.lp-slot{height:16px;border-radius:999px;background:linear-gradient(to bottom,hsl(var(--foreground)/.18),hsl(var(--foreground)/.05));border:1px solid hsl(var(--border));box-shadow:inset 0 4px 8px rgba(0,0,0,.45),0 0 30px -6px rgba(var(--glow),.35)}.lp-skel{height:7px;border-radius:99px;background:hsl(var(--foreground)/.09)}.lp-card{position:relative;border-radius:20px;border:1px solid hsl(var(--border));background:hsl(var(--card));overflow:hidden;isolation:isolate}.lp-card:before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(var(--glow),.12),transparent 60%);transition:opacity .3s}.lp-card:hover:before{opacity:1}.lp-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;padding:1px;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(var(--glow),.55),transparent 60%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}.lp-card:hover:after{opacity:1}.lp-wave span{display:block;width:4px;border-radius:4px;background:hsl(var(--primary));animation:lp-wave 1.1s ease-in-out infinite;transform-origin:center}@keyframes lp-wave{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.lp-shimmer{position:relative;overflow:hidden}.lp-shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);animation:lp-shimmer 2.4s ease-in-out infinite}@keyframes lp-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.lp-thumb{background:radial-gradient(circle at 70% 28%,#ff5fa2 0 12%,transparent 13%),linear-gradient(0deg,#0c0420 0,transparent 55%),repeating-linear-gradient(90deg,#1a0a3d 0 14px,#2a1260 14px 22px,#12062e 22px 36px),linear-gradient(160deg,#5b2bff,#ff3d8b 60%,#ffb454)}.hero-canvas{position:relative;height:440px;background-color:var(--canvas-bg);background-image:radial-gradient(var(--canvas-dot-color) 1px,transparent 1px);background-size:22px 22px;overflow:hidden}.hero-canvas .react-flow__pane,.hero-canvas .react-flow__renderer{cursor:default}.hero-canvas .react-flow__node{cursor:grab}.hero-canvas .react-flow__edge-path{stroke:hsl(var(--primary));stroke-width:2.25;stroke-dasharray:5 9;animation:lp-flow .9s linear infinite;filter:drop-shadow(0 0 4px rgba(var(--glow),.6))}.hero-canvas .react-flow__edge{cursor:pointer}.hero-canvas .react-flow__edge:hover .react-flow__edge-path{stroke:hsl(var(--destructive));filter:none}.hero-canvas .hero-reply{animation:reply-in .26s var(--ease-out) both}.hero-canvas-hint{position:absolute;left:16px;bottom:12px;color:hsl(var(--muted-foreground));font-size:12.5px;pointer-events:none}@keyframes reply-in{0%{opacity:0;transform:translateY(4px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}@media (max-width:640px){.hero-canvas{height:400px}}@media (prefers-reduced-motion:reduce){.hero-canvas .react-flow__edge-path,.lp-cable-flow,.lp-floor,.lp-live-dot,.lp-marquee-track,.lp-shimmer:after,.lp-sun,.lp-wave span{animation:none!important}}