@font-face{font-family:inter;src:url(../media/InterVariable-s.p.53d7b668.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:inter;src:url(../media/InterVariable_Italic-s.p.8c0e9517.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:italic}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.inter_7fd5771b-module__gpqega__className{font-family:inter,inter Fallback}.inter_7fd5771b-module__gpqega__variable{--font-inter:"inter","inter Fallback"}
:root{--color-primary:#1976f0;--color-primary-light:#579bf4;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-text-primary:#1d2530;--color-text-secondary:#627084;--color-text-muted:#818a98;--color-foreground:#1d2530;--color-muted-foreground:#627084;--color-bg-primary:#f9fafb;--color-bg-secondary:#f3f5f6;--color-bg-tertiary:#edf0f2;--color-background:#f9fafb;--color-card:#fff;--color-border:#dce0e5;--color-border-light:#e8eaee;--gradient-primary:linear-gradient(135deg,#1976f0,#579bf4);--gradient-tech:linear-gradient(135deg,#1976f0,#773cdd);--gradient-success:linear-gradient(135deg,#22c36d,#3cdd87);--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-glow:0 0 20px #2563eb4d;--font-family-sans:var(--font-inter),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:ui-monospace,"SF Mono",Monaco,"Cascadia Code","Roboto Mono",monospace;--max-width-content:1200px;--max-width-article:800px;--header-height:72px;--gpu-accelerated:translateZ(0)}[data-theme=dark],.dark{--color-primary:#3f8df3;--color-primary-light:#6faaf6;--color-text-primary:#e8ebee;--color-text-secondary:#afb6c0;--color-text-muted:#a5acb6;--color-foreground:#e8ebee;--color-muted-foreground:#afb6c0;--color-bg-primary:#0f1419;--color-bg-secondary:#131820;--color-bg-tertiary:#171d26;--color-background:#0f1419;--color-card:#131820;--color-border:#252c37;--color-border-light:#1f252e;--shadow-glow:0 0 25px #60a5fa40}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-display:optional;margin:0;font-size:1rem;line-height:1.5;overflow-y:scroll}img{content-visibility:auto;max-width:100%;height:auto;display:block}img[loading=lazy]{content-visibility:auto}a{color:var(--color-accent);text-decoration:none;transition:color .15s}a:hover{color:var(--color-accent-hover)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);text-rendering:optimizeLegibility;margin:0 0 1rem;font-weight:700;line-height:1.25}p{margin:0 0 1rem}ul,ol{margin:0;padding:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,textarea{font:inherit}main{contain:layout style}header{will-change:transform;contain:layout style}footer{contain:layout style paint}.skip-link{background:var(--color-accent);color:#fff;z-index:10000;padding:8px;transition:top .2s;position:absolute;top:-40px;left:0}.skip-link:focus{top:0}.text-gradient{background:var(--gradient-tech);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-tech{background:var(--gradient-tech)}.shadow-glow{box-shadow:var(--shadow-glow)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-slide-up{animation:.3s ease-out slideUp}.animate-slide-down{animation:.3s ease-out slideDown}
