.button{border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;min-width:fit-content;transition:all .3s;display:inline-flex}.button--full-width{width:100%}.button:focus{outline:none}.button:disabled{cursor:not-allowed}.button--primary{background-color:hsl(var(--primary));color:#fff}.button--primary:hover:not(:disabled),.button--primary:focus-visible:not(:disabled){background-color:hsl(var(--primary-200))}.button--primary:active:not(:disabled){background-color:hsl(var(--primary-300))}.button--primary:disabled{background-color:hsl(var(--primary-disabled))}.button--secondary{background-color:hsl(var(--input));border:1px solid hsl(var(--border));color:hsl(var(--primary))}.button--secondary:hover:not(:disabled),.button--secondary:focus-visible:not(:disabled){border-color:hsl(var(--primary-200));color:hsl(var(--primary-200))}.button--secondary:active:not(:disabled){border-color:hsl(var(--primary-300));color:hsl(var(--primary-300))}.button--secondary:disabled{color:hsl(var(--primary-disabled));background-color:hsl(var(--input) / .5);border:none}.button--ghost{color:hsl(var(--primary));background-color:#0000}.button--ghost:hover:not(:disabled),.button--ghost:focus-visible:not(:disabled){color:hsl(var(--primary-200))}.button--ghost:active:not(:disabled){color:hsl(var(--primary-300))}.button--ghost:disabled{opacity:.5;color:hsl(var(--primary-disabled))}.button--danger{background-color:hsl(var(--destructive));color:#fff}.button--danger:hover:not(:disabled),.button--danger:focus-visible:not(:disabled){background-color:hsl(var(--destructive-200))}.button--danger:active:not(:disabled){background-color:hsl(var(--destructive-300))}.button--danger:disabled{opacity:.5}.button--warning{background-color:hsl(var(--warning));color:#fff}.button--warning:hover:not(:disabled),.button--warning:focus-visible:not(:disabled){background-color:hsl(var(--warning-200))}.button--warning:active:not(:disabled){background-color:hsl(var(--warning-300))}.button--warning:disabled{opacity:.5}.button--success{background-color:hsl(var(--success));color:#fff}.button--success:hover:not(:disabled),.button--success:focus-visible:not(:disabled){background-color:hsl(var(--success-200))}.button--success:active:not(:disabled){background-color:hsl(var(--success-300))}.button--success:disabled{opacity:.5}.button--sm{height:2rem;font-size:.875rem}.button--sm.button--icon-only{width:2rem;padding:0}.button--sm:not(.button--icon-only){padding:0 .75rem}.button--md{height:2.5rem;font-size:1rem}.button--md.button--icon-only{width:2.5rem;padding:0}.button--md:not(.button--icon-only){padding:0 1rem}.button--lg{height:3rem;font-size:1.125rem}.button--lg.button--icon-only{width:3rem;padding:0}.button--lg:not(.button--icon-only){padding:0 1.5rem}.button--loading{opacity:.7;cursor:not-allowed}.button--loading .button__content{white-space:nowrap;min-width:fit-content}.button__content{justify-content:center;align-items:center;gap:.5rem;min-width:fit-content;display:flex}.button__spinner{flex-shrink:0;width:1.25rem;height:1.25rem;animation:1s linear infinite spin}.button__spinner-circle{opacity:.25}.button__spinner-path{opacity:.75}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button--sm .button__icon{width:20px;height:20px}.button--md .button__icon{width:24px;height:24px}.button--lg .button__icon{width:28px;height:28px}
