:root{--radius-xl:16px;--blue:#3b82f6;--blue-secondary:#0ea5e9;--bg-dark:#0a0e1a;--bg-light:#f8fafc;--blue-light:#2563eb;--blue-secondary-light:#0284c7}*{box-sizing:border-box}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes glow{0%,to{opacity:.5}50%{opacity:1}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes particles{0%{opacity:0;transform:translateY(0) translateX(0)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(-100vh) translateX(50px)}}body{font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;overflow-x:hidden;padding:0;transition:background-color .3s ease,color .3s ease}body:before{background-image:linear-gradient(#3b82f608 1px,#0000 0),linear-gradient(90deg,#3b82f608 1px,#0000 0);background-size:50px 50px;content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}body.light-mode:before{background-image:linear-gradient(#2563eb0d 1px,#0000 0),linear-gradient(90deg,#2563eb0d 1px,#0000 0)}.hero-bg{animation:gradientShift 15s ease infinite;background:radial-gradient(ellipse at top,#3b82f626,#0000 50%),radial-gradient(ellipse at bottom right,#0ea5e926,#0000 50%),radial-gradient(ellipse at bottom left,#3b82f614,#0000 50%),#0a0e1a;background-size:200% 200%;overflow:hidden;position:relative}body.light-mode .hero-bg{background:radial-gradient(ellipse at top,#2563eb14,#0000 50%),radial-gradient(ellipse at bottom right,#0284c714,#0000 50%),radial-gradient(ellipse at bottom left,#3b82f60f,#0000 50%),#f8fafc}.hero-bg:before{animation:scan 8s linear infinite;background:linear-gradient(180deg,#0000,#3b82f61a 50%,#0000);content:"";height:200px;inset:0;opacity:.3;pointer-events:none;position:absolute}body.light-mode .hero-bg:before{background:linear-gradient(180deg,#0000,#2563eb26 50%,#0000)}.hero-bg:after{animation:particles 20s linear infinite;background:var(--green);border-radius:50%;box-shadow:100px 200px 0 #3b82f6cc,300px 400px 0 #0ea5e9cc,500px 100px 0 #3b82f6cc,700px 300px 0 #0ea5e9cc,200px 500px 0 #3b82f6cc,900px 200px 0 #0ea5e9cc,400px 600px 0 #3b82f6cc,600px 400px 0 #0ea5e9cc;content:"";height:2px;pointer-events:none;position:absolute;width:2px}body.light-mode .hero-bg:after{background:var(--green-light);box-shadow:100px 200px 0 #2563eb99,300px 400px 0 #0284c799,500px 100px 0 #2563eb99,700px 300px 0 #0284c799,200px 500px 0 #3b82f699,900px 200px 0 #2563eb99,400px 600px 0 #0284c799,600px 400px 0 #2563eb99}.frosted{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f172a99;border:1px solid #3b82f633}body.light-mode .frosted{background:#ffffffb3;border:1px solid #2563eb4d}.glow-border{background:linear-gradient(135deg,#3b82f61a,#0ea5e91a);border-radius:16px;padding:1px;position:relative}body.light-mode .glow-border{background:linear-gradient(135deg,#2563eb1a,#0284c71a)}.glow-border:before{animation:glow 3s ease-in-out infinite;background:linear-gradient(135deg,var(--green),var(--green-secondary));border-radius:16px;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:1px;position:absolute}body.light-mode .glow-border:before{background:linear-gradient(135deg,var(--green-light),var(--green-secondary-light))}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:#3b82f699}body.light-mode ::-webkit-scrollbar-thumb{background:#2563eb4d}body.light-mode ::-webkit-scrollbar-thumb:hover{background:#2563eb99}.reduce-motion *,.reduce-motion :after,.reduce-motion :before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}