:root{--font-display: "Space Grotesk", system-ui, sans-serif;--font-ui: "Space Grotesk", system-ui, sans-serif;--font-data: "DM Mono", monospace;--sf-page: #0e0f13;--sf-card: #171820;--ink-1: #e8e8ec;--ink-2: #a0a0b2;--ink-3: #6a6a7e;--spark: #7B8FFF;--mod-pulse: var(--spark);--mod-pulse-secondary: #5b6cdb;--mod-pulse-glow: rgba(123, 143, 255, .5);--mod-echo: #3b82f6;--mod-echo-secondary: #6366f1;--mod-echo-tertiary: #a855f7;--mod-sound: #c084fc;--mod-sound-secondary: #a855f7;--mod-sound-glow: rgba(192, 132, 252, .4);--mod-signal: var(--ink-1);--mod-signal-secondary: #cfcfe0;--mod-signal-glow: rgba(232, 232, 236, .4);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--text-primary: var(--ink-1);--text-secondary: var(--ink-2);--text-tertiary: var(--ink-3);--glass-bg-strong: #171820cc;--r-base: 4px;--btn-radius: var(--r-base);--input-radius: var(--r-base);--card-radius: var(--r-base);--transition-base: .2s ease}[data-theme=light]{--sf-page: #f8fafc;--sf-card: #e2e8f0;--ink-1: #0f172a;--ink-2: #475569;--ink-3: #475569;--glass-bg: rgba(0, 0, 0, .03);--glass-border: rgba(0, 0, 0, .08);--text-primary: var(--ink-1);--text-secondary: var(--ink-2);--text-tertiary: var(--ink-3);--glass-bg-strong: rgba(255, 255, 255, .95)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-ui);background:var(--sf-page);color:var(--ink-1);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.platform-page{min-height:100vh;position:relative}.platform-page:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 70% 45% at 20% 0%,rgba(123,143,255,.08),transparent 55%),radial-gradient(ellipse 60% 40% at 85% 30%,rgba(59,130,246,.06),transparent 55%),radial-gradient(ellipse 60% 40% at 15% 75%,rgba(192,132,252,.06),transparent 55%)}.module-section{padding:clamp(4rem,10vh,7rem) 1.5rem;max-width:1100px;margin:0 auto;opacity:0;transform:translateY(40px);transition:opacity .6s ease,transform .6s ease}.module-section:first-of-type{padding-top:calc(80px + clamp(4rem,10vh,7rem))}.module-section.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.module-section{transform:none;transition:opacity .3s ease}}.module-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;text-align:left}@media(max-width:900px){.module-layout{grid-template-columns:1fr;gap:2rem;text-align:center}.module-layout.reverse{direction:ltr}}.module-layout.reverse{direction:rtl}.module-layout.reverse>*{direction:ltr}.module-tag{display:inline-block;padding:.3rem .75rem;border:1px solid var(--glass-border);border-radius:var(--btn-radius);font-family:var(--font-data);font-size:.65rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;margin-bottom:.875rem}.module-tag.pulse{color:var(--mod-pulse);border-color:#7b8fff4d;background:#7b8fff1a}.module-tag.echo{color:var(--mod-echo);border-color:#3b82f64d;background:#3b82f61a}.module-tag.sound{color:var(--mod-sound);border-color:#c084fc4d;background:#c084fc1a}.module-tag.signal{color:var(--mod-signal);border-color:#fff3;background:#ffffff0d}.module-title{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;margin-bottom:.875rem}.module-title.pulse{color:var(--mod-pulse)}.module-title.echo{color:var(--mod-echo)}.module-title.sound{color:var(--mod-sound)}.module-title.signal{color:var(--mod-signal)}.module-description{font-size:1rem;color:var(--ink-2);margin-bottom:1.25rem;line-height:1.6}.module-features{list-style:none;display:flex;flex-direction:column;gap:.5rem}@media(max-width:900px){.module-features{align-items:center}}.module-features li{display:flex;align-items:center;gap:.625rem;font-size:.9rem;color:var(--ink-2)}.module-features li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--feature-color);flex-shrink:0}.module-visual{display:flex;align-items:center;justify-content:center;position:relative;min-height:220px}.module-visual:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;filter:blur(70px);opacity:.2}.module-visual.pulse:before{background:var(--mod-pulse)}.module-visual.echo:before{background:var(--mod-echo)}.module-visual.sound:before{background:var(--mod-sound)}.module-engine{padding-top:clamp(2rem,5vh,3rem);padding-bottom:clamp(3rem,8vh,5rem)}.module-engine-card{max-width:560px;margin:0 auto;text-align:center;padding:2rem 2.25rem;background:var(--sf-card);border:1px solid var(--glass-border);border-radius:var(--card-radius)}.module-engine-visual{display:flex;justify-content:center;margin-bottom:.5rem}.module-engine-visual .signal-module{transform:scale(.6)}.module-engine-title{font-size:clamp(1.35rem,2.5vw,1.6rem)}.module-engine-description{font-size:.9rem;margin-left:auto;margin-right:auto}.module-engine-features{align-items:flex-start;text-align:left;max-width:420px;margin:0 auto}.module-engine-features li{font-size:.85rem}.pulse-module{position:relative;width:100px;height:100px;display:flex;align-items:center;justify-content:center}.pulse-module .ripple{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:100%;border:1px solid var(--mod-pulse);box-shadow:0 0 8px var(--mod-pulse-glow);animation:pf-rippleExpand 3s infinite linear}.pulse-module .ripple:nth-child(1){animation-delay:0s}.pulse-module .ripple:nth-child(2){animation-delay:.5s}.pulse-module .ripple:nth-child(3){animation-delay:1s}.pulse-module .ripple:nth-child(4){animation-delay:1.5s}.pulse-module .core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;background:radial-gradient(circle,var(--mod-pulse) 0%,var(--mod-pulse-secondary) 100%);border-radius:50%;box-shadow:0 0 20px var(--mod-pulse-glow);animation:pf-corePulse 2s ease-in-out infinite;z-index:2}@keyframes pf-corePulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.15)}}@keyframes pf-rippleExpand{0%{opacity:0;width:0;height:0}10%{opacity:.6}to{opacity:0;width:120px;height:120px}}.pulse-files{position:absolute;inset:0}.pulse-file{position:absolute;width:18px;height:22px;color:var(--mod-pulse);opacity:0;filter:drop-shadow(0 0 8px var(--mod-pulse-glow));top:50%;left:50%;margin-left:-9px;margin-top:-11px}.pulse-file svg{width:100%;height:100%}.pulse-file.file-1{animation:pf-fileIn1 3s ease-in infinite 0s}.pulse-file.file-2{animation:pf-fileIn2 3s ease-in infinite .6s}.pulse-file.file-3{animation:pf-fileIn3 3s ease-in infinite 1.2s}.pulse-file.file-4{animation:pf-fileIn4 3s ease-in infinite 1.8s}@keyframes pf-fileIn1{0%{opacity:0;transform:translate(-70px,-50px) scale(1)}20%{opacity:1}90%{opacity:1;transform:translate(-8px,-7px) scale(.3)}to{opacity:0;transform:translate(0) scale(0)}}@keyframes pf-fileIn2{0%{opacity:0;transform:translate(70px,-40px) scale(1)}20%{opacity:1}90%{opacity:1;transform:translate(8px,-5px) scale(.3)}to{opacity:0;transform:translate(0) scale(0)}}@keyframes pf-fileIn3{0%{opacity:0;transform:translate(50px,45px) scale(1)}20%{opacity:1}90%{opacity:1;transform:translate(6px,7px) scale(.3)}to{opacity:0;transform:translate(0) scale(0)}}@keyframes pf-fileIn4{0%{opacity:0;transform:translate(-60px,40px) scale(1)}20%{opacity:1}90%{opacity:1;transform:translate(-6px,5px) scale(.3)}to{opacity:0;transform:translate(0) scale(0)}}.echo-module,.sound-module{width:100px;height:100px;position:relative;display:flex;align-items:center;justify-content:center}.sound-module{transform:scale(1.3)}.echo-module .glow-background,.sound-module .glow-background{position:absolute;inset:0;border-radius:var(--input-radius);filter:blur(18px);animation:pf-modulePulse 2s ease-in-out infinite}.echo-module .glow-background{background-color:#3b82f626}.sound-module .glow-background{background-color:#c084fc26}.echo-module .spinner-wrapper,.sound-module .spinner-wrapper{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.echo-module .spinning-border,.sound-module .spinning-border{position:absolute;inset:0;border-radius:var(--input-radius);animation:pf-spin 2s linear infinite;filter:blur(3px)}.echo-module .spinning-border{background:linear-gradient(to right,var(--mod-pulse),var(--mod-echo),var(--mod-echo-tertiary))}.sound-module .spinning-border{background:linear-gradient(to right,var(--mod-echo-tertiary),var(--mod-sound),#e879f9)}.echo-module .inner-container,.sound-module .inner-container{position:absolute;inset:3px;background-color:var(--sf-page);border-radius:var(--btn-radius);display:flex;align-items:center;justify-content:center}.echo-module .bars-container,.sound-module .bars-container{display:flex;gap:4px;align-items:center}.echo-module .bar,.sound-module .bar{width:6px;height:36px;border-radius:var(--btn-radius);animation:pf-waveUp 1.6s ease-in-out infinite}.echo-module .bar-1{background-color:var(--mod-pulse);animation-delay:0s}.echo-module .bar-2{background-color:var(--mod-echo);animation-delay:.2s}.echo-module .bar-3{background-color:var(--mod-echo-secondary);animation-delay:.4s}.echo-module .bar-4{background-color:var(--mod-echo-tertiary);animation-delay:.6s}.sound-module .bar-1{background-color:var(--mod-echo-tertiary);animation-delay:0s}.sound-module .bar-2{background-color:var(--mod-sound);animation-delay:.2s}.sound-module .bar-3{background-color:#c084fc;animation-delay:.4s}.sound-module .bar-4{background-color:#e879f9;animation-delay:.6s}.echo-module .corner-dot,.sound-module .corner-dot{position:absolute;width:5px;height:5px;border-radius:50%;animation:pf-ping 1s ease-in-out infinite}.echo-module .dot-top-left{top:-2px;left:-2px;background-color:var(--mod-echo)}.echo-module .dot-top-right{top:-2px;right:-2px;background-color:var(--mod-echo-tertiary);animation-delay:.1s}.echo-module .dot-bottom-left{bottom:-2px;left:-2px;background-color:var(--mod-pulse);animation-delay:.2s}.echo-module .dot-bottom-right{bottom:-2px;right:-2px;background-color:var(--mod-echo);animation-delay:.3s}.sound-module .dot-top-left{top:-2px;left:-2px;background-color:var(--mod-echo-tertiary)}.sound-module .dot-top-right{top:-2px;right:-2px;background-color:#e879f9;animation-delay:.1s}.sound-module .dot-bottom-left{bottom:-2px;left:-2px;background-color:var(--mod-echo-tertiary);animation-delay:.2s}.sound-module .dot-bottom-right{bottom:-2px;right:-2px;background-color:var(--mod-sound);animation-delay:.3s}@keyframes pf-modulePulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pf-waveUp{0%,to{transform:translateY(35%);height:16px;opacity:.6}25%{transform:translateY(-20%);height:36px;opacity:1}50%{transform:translateY(12%);height:24px;opacity:.8}75%{transform:translateY(25%);height:18px;opacity:.7}}@keyframes pf-ping{75%,to{transform:scale(2);opacity:0}}@keyframes pf-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.signal-module{position:relative;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.03) 30%,transparent 70%);overflow:hidden}.signal-module:before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid transparent;border-top-color:var(--mod-signal-secondary);animation:pf-orbitSpin 2s linear infinite}.signal-module:after{content:"";position:absolute;inset:10%;border-radius:50%;background:conic-gradient(from 90deg,rgba(232,232,236,.2),transparent);filter:blur(2px);animation:pf-orbitSpinReverse 1.5s linear infinite}.signal-module__inner{position:absolute;top:50%;left:50%;width:24px;height:24px;background:radial-gradient(circle,#fff 0%,var(--mod-signal-secondary) 100%);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 15px var(--mod-signal-glow);animation:pf-signalPulse 1s ease-in-out infinite}.signal-module__orbit{position:absolute;inset:0;animation:pf-orbitRotate 3s linear infinite}.signal-module__dot{position:absolute;left:50%;top:50%;width:6px;height:6px;background:var(--mod-signal-secondary);border-radius:50%;box-shadow:0 0 8px var(--mod-signal-glow)}.signal-module__dot:nth-child(1){transform:rotate(0) translate(50px)}.signal-module__dot:nth-child(2){transform:rotate(90deg) translate(50px)}.signal-module__dot:nth-child(3){transform:rotate(180deg) translate(50px)}.signal-module__dot:nth-child(4){transform:rotate(270deg) translate(50px)}@keyframes pf-orbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pf-orbitSpinReverse{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes pf-signalPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}@keyframes pf-orbitRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
