*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#f5f6fa;--color-surface:#ffffff;--color-border:#e2e5ed;--color-text:#1a1d26;--color-text-secondary:#6b7280;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-sidebar-bg:#1e293b;--color-sidebar-text:#94a3b8;--color-sidebar-active:#3b82f6;--radius:8px;--shadow:0 1px 3px rgba(0,0,0,0.08)}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5;color:var(--color-text);background:var(--color-bg)}body{min-height:100vh}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}code{font-family:SF Mono,Fira Code,monospace;font-size:.9em;background:#f1f3f5;padding:2px 6px;border-radius:4px}pre code{background:transparent;padding:0;border-radius:0;font-size:inherit;color:inherit}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid transparent;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-outline{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-outline:hover:not(:disabled){background:#f8f9fb;border-color:#c5cad4}.btn-sm{padding:4px 10px;font-size:13px}.btn-danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:#dc2626}