@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--color-primary:#00d9ff;--color-primary-light:#33e0ff;--color-primary-dark:#00b8d9;--color-accent:#8b5cf6;--color-accent-light:#a78bfa;--color-accent-dark:#7c3aed;--color-secondary:#06b6d4;--color-secondary-light:#22d3ee;--color-secondary-dark:#0891b2;--color-bg-dark:#000;--color-bg-darker:#000;--color-bg-card:#0a0a0f;--color-bg-card-hover:#14141f;--color-text:#fff;--color-text-muted:#b8b8c8;--color-text-dim:#6b6b7a;--color-border:#ffffff14;--color-border-hover:#00d9ff33;--gradient-primary:linear-gradient(135deg,#00d9ff 0%,#8b5cf6 50%,#00d9ff 100%);--gradient-secondary:linear-gradient(135deg,#8b5cf6 0%,#06b6d4 100%);--gradient-glow:radial-gradient(ellipse 150% 120% at top,#00d9ff1f 0%,transparent 70%);--shadow-glow:0 0 60px #00d9ff33,0 0 120px #8b5cf61a;--shadow-card:0 8px 32px #0009;--shadow-card-hover:0 12px 48px #00d9ff26;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--font-sans:var(--font-geist-sans),system-ui,-apple-system,sans-serif;--font-mono:var(--font-geist-mono),ui-monospace,monospace}@theme inline{--color-background: var(--color-bg-dark); --color-foreground: var(--color-text); --color-primary: var(--color-primary); --color-accent: var(--color-accent); --font-sans: var(--font-sans); --font-mono: var(--font-mono);}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg-dark);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:700;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(1.75rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.5rem)}.text-gradient{background:var(--gradient-primary);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:3s infinite gradient-shift}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}.bg-gradient-primary{background:var(--gradient-primary)}.glow{box-shadow:var(--shadow-glow)}.glass{-webkit-backdrop-filter:blur(16px);background:#0a0a0fd9;border-bottom:1px solid #00d9ff1a}.card-hover{transition:all var(--transition-normal)}.card-hover:hover{border-color:var(--color-border-hover);background:var(--color-bg-card-hover);transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 30px #00d9ff4d,0 0 60px #8b5cf626}50%{box-shadow:0 0 50px #00d9ff80,0 0 100px #8b5cf640}}@keyframes typewriter-blink{0%,50%{opacity:1}51%,to{opacity:.3}}.animate-fade-in{animation:.5s ease-out forwards fadeIn}.animate-slide-up{animation:.5s ease-out forwards slideUp}.animate-slide-down{animation:.5s ease-out forwards slideDown}.animate-pulse-glow{animation:2s ease-in-out infinite pulse-glow}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-darker)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::selection{color:var(--color-text);background:#00d9ff4d}
