:root{--font-heading: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--ink: 160 15% 7%;--paper: 110 10% 96%;--wire: 146 20% 17%;--mist: 105 8% 57%;--bg-main: var(--paper);--bg-surface: 0 0% 100%;--bg-surface-hover: 110 8% 94%;--primary: 142 76% 36%;--primary-glow: 142 76% 36% / .06;--secondary: 32 95% 44%;--secondary-glow: 32 95% 44% / .06;--accent: 142 70% 45%;--text-primary: var(--ink);--text-muted: 150 8% 32%;--text-dim: 105 8% 48%;--border: 150 12% 88% / .9;--border-light: 150 12% 82% / .9;--transition-smooth: all .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .4s cubic-bezier(.175, .885, .32, 1.2)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:hsl(var(--bg-main));color:hsl(var(--text-primary));font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow-x:hidden;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;letter-spacing:-.015em;color:hsl(var(--text-primary));line-height:1.15}.mono-label{font-family:var(--font-mono);letter-spacing:.02em}p{font-size:1.025rem;line-height:1.6;color:hsl(var(--text-muted));font-weight:400}a{text-decoration:none;color:inherit;transition:var(--transition-smooth)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 2rem}.grad-text{color:hsl(var(--text-primary))}.grad-accent{color:hsl(var(--primary))}.glass{background:hsl(var(--bg-main));border:1px solid hsla(var(--border))}.glass-card{background:hsl(var(--bg-surface));border:1px solid hsla(var(--border));border-left:3px solid var(--card-accent, hsla(var(--border)));border-radius:6px;padding:2.25rem;transition:var(--transition-smooth)}.glass-card:hover{transform:translateY(-2px);border-color:hsla(var(--border-light));border-left-color:var(--card-accent, hsla(var(--border-light)))}.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.5rem;font-family:var(--font-heading);font-size:.95rem;font-weight:600;border-radius:4px;cursor:pointer;transition:var(--transition-smooth);border:1px solid transparent}.btn-primary{background:hsl(var(--primary));color:#fff;border-color:hsl(var(--primary))}.btn-primary:hover{background:#12873d;border-color:#12873d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;border:1px solid hsla(var(--border));color:hsl(var(--text-primary))}.btn-secondary:hover{background:hsl(var(--bg-surface-hover));border-color:hsla(var(--border-light));transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.tech-spec{font-family:var(--font-mono);background:hsl(var(--bg-main));border:1px solid hsla(var(--border));border-radius:6px;padding:1.25rem;font-size:.875rem;color:hsl(var(--text-primary));overflow-x:auto;line-height:1.5}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:3.5rem;align-items:center}@media(max-width:968px){.grid-2,.grid-3,.hero-grid{grid-template-columns:1fr;gap:1.75rem}.container{padding:0 1.25rem}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:hsl(var(--bg-main))}::-webkit-scrollbar-thumb{background:hsla(var(--border-light));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsla(var(--primary) / .3)}.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;border-radius:6px;display:flex;align-items:center;gap:.75rem;z-index:1000;animation:slideIn .3s cubic-bezier(.175,.885,.32,1.2) forwards}.dot-grid{background-image:linear-gradient(hsla(var(--wire) / .05) 1px,transparent 1px),linear-gradient(90deg,hsla(var(--wire) / .05) 1px,transparent 1px);background-size:32px 32px}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0;animation:statusPulse 2s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.4}}input,textarea{transition:var(--transition-smooth)}input:focus,textarea:focus{border-color:hsl(var(--primary))!important;box-shadow:0 0 0 3px hsla(var(--primary) / .1)!important;outline:none;background:hsl(var(--bg-surface))!important}@keyframes slideIn{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}
