:root,[data-theme=dark]{--violet:#6d5ef7;--violet-2:#8b7cf9;--violet-soft:#8b7cf9;--violet-tint:rgba(109,94,247,0.12);--bg:#07060b;--bg-2:#0b0a13;--surface:rgba(255,255,255,0.04);--surface-2:rgba(255,255,255,0.015);--text-1:#f5f4fb;--text-2:rgba(255,255,255,0.6);--text-3:rgba(255,255,255,0.4);--line:rgba(255,255,255,0.07);--line-strong:rgba(255,255,255,0.12);--shadow-soft:rgba(0,0,0,0.5)}[data-theme=light]{--violet:#5b21d6;--violet-2:#5b21d6;--violet-soft:#6d5ef7;--violet-tint:rgba(91,33,214,0.08);--bg:#f7f7fb;--bg-2:#ffffff;--surface:#ffffff;--surface-2:#fdfdff;--text-1:#14122b;--text-2:#4b4966;--text-3:#67647f;--line:rgba(20,18,43,0.1);--line-strong:rgba(20,18,43,0.16);--shadow-soft:rgba(20,18,43,0.08)}.font-display{font-family:Space Grotesk,sans-serif}.font-mono{font-family:JetBrains Mono,monospace}.grid-tech{background-image:linear-gradient(to right,var(--line) 1px,transparent 1px),linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:56px 56px}.glow-violet{background:radial-gradient(circle at 50% 0,rgba(109,94,247,.35),rgba(109,94,247,0) 60%)}[data-theme=light] .glow-violet{background:radial-gradient(circle at 50% 0,rgba(91,33,214,.14),rgba(91,33,214,0) 60%)}.card-surface{background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line)}[data-theme=light] .card-surface{background:var(--surface);box-shadow:0 8px 30px -12px var(--shadow-soft)}.btn-primary{background:linear-gradient(180deg,var(--violet-2),var(--violet));box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 8px 30px -8px rgba(109,94,247,.6);color:#fff}.btn-primary:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 12px 40px -6px rgba(109,94,247,.75)}.agent-chip{border:1px solid var(--line-strong);background:var(--surface)}@keyframes tesus-pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.tesus-pulse{animation:tesus-pulse-dot 2s ease-in-out infinite}@keyframes tesus-drift{0%,to{transform:translateY(0) translateX(0)}50%{transform:translateY(-14px) translateX(6px)}}.tesus-drift{animation:tesus-drift 7s ease-in-out infinite}@keyframes tesus-float-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:tesus-float-in .8s cubic-bezier(.16,1,.3,1) both}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}.delay-3{animation-delay:.24s}.delay-4{animation-delay:.32s}.delay-5{animation-delay:.4s}