.button{display:flex;justify-content:center;align-items:center;gap:.75rem;border:none;cursor:pointer;background:hsl(var(--primary));border-radius:.5rem;font-family:Quicksand,sans-serif;font-weight:700;color:hsl(var(--menu-foreground));text-align:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease;-webkit-text-decoration-line:none;text-decoration-line:none;width:auto;box-shadow:var(--shadow-xs)}@media(hover:hover)and (pointer:fine){.button:hover{filter:brightness(1.04)}}.button:focus-visible{outline:none;box-shadow:0 0 0 .2rem hsl(var(--ring)/.22),var(--shadow-xs)}.button .button-icon{width:.563rem;height:.594rem;transform:rotate(90deg);fill:hsl(var(--primary-foreground))}.button__content{display:inline-flex;align-items:center;justify-content:center;min-width:0}.button__content--loading{opacity:.82}.button__spinner{width:1rem;height:1rem;flex:0 0 1rem;border:.125rem solid;border-right:.125rem solid rgba(0,0,0,0);border-radius:50%;animation:button-spinner-rotate .72s linear infinite}.button--size-sm{font-size:.875rem;height:2rem;padding:.375rem .75rem}.button--size-sm svg{width:1.5rem;height:1.5rem}.button--size-md{font-size:1rem;height:2.5rem;padding:.5rem 1rem}.button--size-lg{font-size:1.25rem;height:3rem;padding:.625rem 1.25rem}.button--variant-outline{background:hsl(var(--surface));border:.125rem solid hsl(var(--primary));color:hsl(var(--primary))}.button--variant-outline:hover{background:hsl(var(--accent))}.button--variant-outline-no-border{border:none;background:rgba(0,0,0,0);color:hsl(var(--primary));box-shadow:none}.button--variant-outline-no-border:hover{background:hsl(var(--accent))}.button--variant-shadow{border-radius:.875rem;box-shadow:var(--shadow-md)}.button--variant-icon{padding:.5rem .75rem}.button--full{width:100%}@keyframes button-spinner-rotate{to{transform:rotate(1turn)}}.button-link-reset{text-decoration:none}button:disabled{background:hsl(var(--disabled-bg));color:hsl(var(--disabled-foreground));cursor:not-allowed;border:.125rem solid hsl(var(--border));box-shadow:none;opacity:.7}.button:disabled .button-icon{fill:hsl(var(--disabled-foreground))}.dark .button--variant-default,.dark .button--variant-shadow{color:hsl(var(--secondary-foreground))}.link{font-weight:500;font-size:12px;-webkit-text-decoration-line:underline;text-decoration-line:underline;color:hsl(var(--primary))}@media(hover:none),(pointer:coarse){.button,.button-link-reset,.link{transition:none}.button-link-reset:hover,.button:hover,.link:hover{filter:none}}