.button.svelte-1xko78n{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);text-decoration:none}.sm.svelte-1xko78n{padding:var(--spacing-xs) var(--spacing-sm);font-size:.85rem}.md.svelte-1xko78n{padding:var(--spacing-sm) var(--spacing-md);font-size:1rem}.lg.svelte-1xko78n{padding:var(--spacing-md) var(--spacing-xl);font-size:1.1rem}.primary.svelte-1xko78n{background:var(--color-accent);color:var(--color-on-accent);font-weight:700;box-shadow:var(--shadow-sm);border:1px solid var(--color-accent)}.primary.svelte-1xko78n:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:0 4px 12px var(--color-accent-glow);transform:translateY(-1px)}.secondary.svelte-1xko78n{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.secondary.svelte-1xko78n:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:var(--color-accent)}.ghost.svelte-1xko78n{background:transparent;color:var(--color-text-secondary)}.ghost.svelte-1xko78n:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text-primary)}.danger.svelte-1xko78n{background:var(--color-error);color:var(--color-on-error);font-weight:700;border:1px solid var(--color-error)}.danger.svelte-1xko78n:hover:not(:disabled){background:var(--color-error-hover);box-shadow:0 4px 12px var(--color-error-focus);transform:translateY(-1px)}.button.svelte-1xko78n:disabled,.button.disabled.svelte-1xko78n{opacity:.5;cursor:not-allowed;pointer-events:none}.button.loading.svelte-1xko78n{position:relative;color:transparent}.spinner.svelte-1xko78n{position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:svelte-1xko78n-spin .8s linear infinite}.loading.svelte-1xko78n .spinner:where(.svelte-1xko78n){color:var(--color-on-accent)}.danger.svelte-1xko78n .spinner:where(.svelte-1xko78n),.danger.loading.svelte-1xko78n .spinner:where(.svelte-1xko78n){color:var(--color-on-error)}.secondary.svelte-1xko78n .spinner:where(.svelte-1xko78n),.secondary.loading.svelte-1xko78n .spinner:where(.svelte-1xko78n),.ghost.svelte-1xko78n .spinner:where(.svelte-1xko78n),.ghost.loading.svelte-1xko78n .spinner:where(.svelte-1xko78n){color:var(--color-text-primary)}@keyframes svelte-1xko78n-spin{to{transform:rotate(360deg)}}
