:root[data-theme=apex]{--bg:#050505;--bg-subtle:#0a0a0a;--surface:#111;--surface-accent:#171717;--accent:#00e5b0;--accent-rgb:0, 229, 176;--accent-soft:#00e5b01a;--text:#fff;--text-dim:#a1a1aa;--border:#ffffff14;--border-accent:#00e5b04d;--font-syne:"Syne", sans-serif;--font-mono:"DM Mono", monospace;--nav-height:80px}.apex-wrapper{background-color:var(--bg);color:var(--text);font-family:var(--font-syne);-webkit-font-smoothing:antialiased;overflow-x:hidden}.mono{font-family:var(--font-mono)}.text-teal{color:var(--accent)}.bg-teal{background-color:var(--accent)}.border-teal{border-color:var(--accent)}@keyframes pulse-glow{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}@keyframes line-draw{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}.hero-grid{background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 70% 30%,#000,#0000 80%);mask-image:radial-gradient(circle at 70% 30%,#000,#0000 80%)}.node{background:var(--accent);width:4px;height:4px;box-shadow:0 0 10px var(--accent);border-radius:50%;animation:3s ease-in-out infinite pulse-glow;position:absolute}.btn-outline{border:1px solid var(--accent);color:var(--accent);border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s;display:flex}.btn-outline:hover{background:var(--accent-soft);transform:translateY(-2px)}.btn-filled{background:var(--accent);color:#000;border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:700;transition:all .3s;display:flex}.btn-filled:hover{filter:brightness(1.1);box-shadow:0 0 20px var(--accent-soft);transform:translateY(-2px)}.form-group{margin-bottom:2rem;position:relative}.form-input,.form-textarea{border:none;border-bottom:1px solid var(--border);color:#fff;background:0 0;outline:none;width:100%;padding:1rem 0;transition:border-color .3s}.form-input:focus,.form-textarea:focus{border-bottom-color:var(--accent)}.form-label{color:var(--text-dim);pointer-events:none;transition:all .3s;position:absolute;top:1rem;left:0}.form-input:focus~.form-label,.form-input:not(:placeholder-shown)~.form-label,.form-textarea:focus~.form-label,.form-textarea:not(:placeholder-shown)~.form-label{color:var(--accent);font-size:.75rem;top:-1rem}::selection{background:var(--accent);color:#000}
