:root{--bg-color:#0d1117;--border-color:#30363d;--code-bg:#161b22;--font-mono:'JetBrains Mono', monospace;--font-sans:'Inter', sans-serif;--primary-color:#167444;--primary-hover:#64ffb4;--secondary-color:#374151;--secondary-hover:#4b5563;--text-color:#c9d1d9;--text-muted:#8b949e}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
a{color:var(--primary-color);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--primary-hover)}
body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden;position:relative}
code{font-family:var(--font-mono)}
code .comment{color:#8b949e}
code .function{color:#d2a8ff}
code .keyword{color:#f97583}
code .number{color:#79c0ff}
code .string{color:#a5d6ff}
h1,h2,h3{font-weight:700;line-height:1.2}
html{scroll-behavior:smooth}
img{display:block;max-width:100%}
main{padding-top:80px}
nav{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px}
nav .logo{align-items:center;display:flex;font-size:1.5rem;font-weight:600;gap:.75rem}
nav .logo img{height:32px;width:32px}
nav ul{align-items:center;display:flex;gap:2rem;list-style:none}
pre{font-size:.95rem;line-height:1.8}
section{margin:0 auto;max-width:1100px;padding:6rem 5%;text-align:center}
#interactive-background{height:100%;left:0;position:fixed;top:0;width:100%;z-index:-2}
.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out, transform .6s ease-out}
.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}
.background-gradient{animation:rotate-gradient 30s linear infinite;background:radial-gradient(circle at center, rgba(50, 255, 150, .08), transparent 40%);display:block;height:200vh;left:-50vw;position:fixed;top:-50vh;width:200vw;z-index:-3}
.button{align-items:center;border-radius:6px;font-weight:600;justify-content:center;padding:.6rem 1.2rem;perspective:1000px;position:relative;transition:background-color .2s ease, transform .2s ease}
.button.large{font-size:1.1rem;padding:.8rem 1.8rem}
.button.primary{background-color:var(--primary-color);color:white}
.button.primary:hover{background-color:var(--primary-hover);color:white;transform:translateY(-2px)}
.button.secondary{background-color:var(--secondary-color);color:white}
.button.secondary:hover{background-color:var(--secondary-hover);color:white;transform:translateY(-2px)}
.code-block-wrapper{background-color:var(--code-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 20px 40px rgba(0,0,0,0.4);overflow-x:auto;padding:2rem;text-align:left}
.cta-section{background-color:var(--code-bg);border-radius:12px;margin-bottom:4rem}
.feature-card{background-color:var(--code-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;padding:2rem;position:relative;transition:transform .3s ease, box-shadow .3s ease}
.feature-card h3{font-size:1.5rem;margin-bottom:.5rem}
.feature-card::before{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y), rgba(50, 255, 150, .15), transparent 25%);content:'';height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:100%}
.feature-card:hover{box-shadow:0 10px 30px rgba(0, 0, 0, .2), 0 0 0 1px var(--primary-color);transform:translateY(-5px)}
.feature-card:hover::before{opacity:1}
.feature-card:nth-child(2){transition-delay:.1s}
.feature-card:nth-child(3){transition-delay:.2s}
.feature-icon{height:48px;margin-bottom:1.5rem;width:48px}
.features-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));text-align:left}
.hamburger{background-color:var(--text-color);display:block;height:2px;position:relative;transition:transform .3s ease, background-color .3s ease;width:24px}
.hamburger::after{background-color:var(--text-color);content:'';height:2px;left:0;position:absolute;transform:translateY(8px);transition:transform .3s ease;width:24px}
.hamburger::before{transform:translateY(-8px)}
.hero{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:70vh}
.hero-buttons{display:flex;gap:1rem;transition:transform .1s ease-out}
.hero-content{transition:transform .1s ease-out}
.install-command{align-items:center;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;display:inline-flex;font-family:var(--font-mono);margin-top:7px;padding:.8rem 1rem}
.install-command > div{flex:1 1 auto;min-width:0}
.install-command a{overflow-wrap:anywhere;word-break:break-word}
.install-command button{background:var(--secondary-color);border:none;border-radius:4px;color:white;cursor:pointer;padding:.5rem .8rem;transition:background-color .2s ease}
.install-command button:hover{background:var(--secondary-hover)}
.install-command span{margin-right:1.5rem;overflow-wrap:anywhere;word-break:break-word}
.lang-switch{color:var(--text-muted);font-size:13px;margin-left:1rem;white-space:nowrap}
.lang-switch a{color:var(--text-muted);text-decoration:none;transition:color .2s ease}
.lang-switch a:hover{color:var(--text-color)}
.lang-switch span{color:var(--primary-hover);font-weight:700}
.main-footer{border-top:1px solid var(--border-color);color:var(--text-muted);padding:2rem 5%;text-align:center}
.main-header{backdrop-filter:blur(10px);background-color:rgba(13, 17, 23, .8);border-bottom:1px solid var(--border-color);left:0;padding:1rem 5%;position:fixed;top:0;transition:background-color .3s ease;width:100%;z-index:100}
.main-title{background:linear-gradient(90deg, #fff, #c9d1d9);font-size:clamp(2.5rem, 5vw, 4.5rem);font-weight:900;margin-bottom:1rem;transition:transform .1s ease-out;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.mobile-nav-toggle{background:none;border:none;cursor:pointer;display:none;padding:.5rem;z-index:1001}
.nav-open .hamburger{background-color:transparent}
.nav-open .hamburger::after{transform:rotate(-45deg)}
.nav-open .hamburger::before{transform:rotate(45deg)}
.section-subtitle{color:var(--text-muted);margin:0 auto 3rem auto;max-width:600px}
.section-title{font-size:2.5rem;margin-bottom:1rem}
.subtitle{color:var(--text-muted);font-size:clamp(1.1rem, 2vw, 1.3rem);margin-bottom:2.5rem;max-width:650px;min-height:4.2rem}
.typing-cursor{animation:blink 1s infinite;background-color:var(--text-muted);display:inline-block;height:1.3rem;margin-left:4px;vertical-align:bottom;width:2px}
@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400 600 700 900;src:url('/Inter.ttf') format('truetype')}
@font-face{font-display:swap;font-family:'JetBrains Mono';font-style:normal;font-weight:700;src:url('/JetBrainsMono.ttf') format('truetype')}
@keyframes blink{
0%,100%{opacity:1}
50%{opacity:0}}
@keyframes rotate-gradient{
from{transform:rotate(0deg)}
to{transform:rotate(360deg)}}
@media (max-width: 600px){
.install-command button{display:none}}
@media (max-width: 768px){
nav .cta-button{display:none}
nav ul{align-items:center;backdrop-filter:blur(10px);background:rgba(13, 17, 23, .95);inset:0 0 0 30%;justify-content:center;padding:2rem;position:fixed;transform:translateX(100%);transition:transform .3s ease-out}
.hero{min-height:60vh}
.lang-switch{position:absolute;right:5%;top:1rem}
.mobile-nav-toggle{display:block}
.nav-open nav ul{transform:translateX(0)}}