.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm)var(--space-lg);font-family:var(--font-family-base);font-weight:500;font-size:var(--font-size-base);line-height:var(--line-height-base);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background-color:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background-color:var(--color-accent-hover);color:#fff}.btn--primary:focus-visible{color:#fff}.btn--secondary{background-color:var(--color-bg-elevated);color:var(--color-text);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-border-hover);color:var(--color-text)}.btn--secondary:focus-visible{color:var(--color-text)}.btn--ghost{color:var(--color-text);background-color:#0000}.btn--ghost:hover:not(:disabled){background-color:var(--color-bg-elevated);color:var(--color-text)}.btn--ghost:focus-visible{color:var(--color-text)}.btn--link{color:var(--color-accent);background-color:#0000;padding:0;text-decoration:underline}.btn--link:hover:not(:disabled){color:var(--color-accent-hover)}.btn--sm{padding:var(--space-xs)var(--space-md);font-size:var(--font-size-sm)}.btn--md{padding:var(--space-sm)var(--space-lg);font-size:var(--font-size-base)}.btn--lg{padding:var(--space-md)var(--space-xl);font-size:var(--font-size-lg)}
