:root{--green-50:#f0fdf0;--green-100:#dcfce7;--green-200:#bbf7d0;--green-300:#86efac;--green-400:#4ade80;--green-500:#32CD32;--green-600:#28a428;--green-700:#1e7b1e;--green-800:#166316;--green-900:#0f4a0f;--gray-50:#fafafa;--gray-100:#f5f5f5;--gray-200:#e5e5e5;--gray-300:#d4d4d4;--gray-400:#a3a3a3;--gray-500:#737373;--gray-600:#525252;--gray-700:#404040;--gray-800:#262626;--gray-900:#171717;--bg:#ffffff;--bg-subtle:var(--gray-50);--bg-card:#ffffff;--text:var(--gray-900);--text-secondary:var(--gray-500);--border:var(--gray-200);--accent:var(--green-500);--accent-hover:var(--green-600);--accent-light:var(--green-50);--radius:12px;--radius-sm:8px;--shadow:0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);--shadow-md:0 4px 6px rgba(0,0,0,0.05),0 2px 4px rgba(0,0,0,0.04);--shadow-lg:0 10px 25px rgba(0,0,0,0.06),0 4px 10px rgba(0,0,0,0.04);--font:"Inter",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}.container{padding:0 24px}.container,.nav{max-width:1100px;margin:0 auto}.nav{justify-content:space-between;padding:16px 24px}.nav,.nav-logo{display:flex;align-items:center}.nav-logo{gap:10px;font-weight:700;font-size:1.25rem;color:var(--text);text-decoration:none}.nav-logo img{height:36px;width:36px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:32px;list-style:none}.nav-links a{color:var(--text-secondary);font-size:.95rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 22px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;font-family:var(--font);border:none;cursor:pointer;transition:all .2s;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 2px 8px rgba(50,205,50,.25)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:#fff;box-shadow:0 4px 16px rgba(50,205,50,.35);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.btn-outline:hover:not(:disabled){background:var(--accent-light);color:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text-secondary);padding:8px 16px}.btn-ghost:hover:not(:disabled){background:var(--gray-100);color:var(--text)}.btn-sm{padding:6px 14px;font-size:.85rem}.btn-danger{background:transparent;color:#dc2626;border:1.5px solid #fca5a5}.btn-danger:hover:not(:disabled){background:#fef2f2}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:var(--shadow-md)}.card-accent{border-color:var(--accent);box-shadow:var(--shadow-md),0 0 0 1px var(--accent)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.badge-green{background:var(--green-100);color:var(--green-700)}.badge-gray{background:var(--gray-100);color:var(--gray-600)}.badge-red{background:#fee2e2;color:#dc2626}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th{text-align:left;padding:12px 16px;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:2px solid var(--border)}.table td{padding:12px 16px;border-bottom:1px solid var(--gray-100)}.table tr:hover td{background:var(--gray-50)}.input{padding:10px 14px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;font-family:var(--font);background:var(--bg);color:var(--text);transition:border-color .2s,box-shadow .2s;outline:none;width:100%}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(50,205,50,.1)}.section{padding:80px 0}.section-alt{background:var(--bg-subtle)}.section-title{font-size:2rem;font-weight:700;text-align:center;margin-bottom:12px}.section-subtitle{max-width:600px;margin:0 auto 48px;font-size:1.05rem}.footer,.section-subtitle{text-align:center;color:var(--text-secondary)}.footer{border-top:1px solid var(--border);padding:32px 24px;font-size:.85rem;max-width:1100px;margin:0 auto}.footer a{color:var(--text-secondary)}.footer a:hover{color:var(--text)}.code-block{background:var(--gray-900);color:#e2e8f0;padding:20px 24px;border-radius:var(--radius);font-family:var(--font-mono);font-size:.85rem;overflow-x:auto;line-height:1.7}.code-block .code-comment{color:#64748b}.code-block .code-string{color:var(--green-400)}.code-block .code-keyword{color:#c084fc}.error-text{color:#dc2626;font-size:.9rem;margin-top:8px}@media (max-width:768px){.nav-links{gap:20px}.section{padding:48px 0}.section-title{font-size:1.5rem}}