.button{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 10px;border-radius:var(--radius-lg);border:1px solid transparent;background-clip:padding-box;font-size:14px;font-weight:500;white-space:nowrap;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;transition:all .15s ease}.button:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring),transparent 50%)}.button:active:not([aria-haspopup]){transform:translateY(1px)}.button:disabled{pointer-events:none;opacity:.5}.button[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive),transparent 80%)}.button svg{pointer-events:none;flex-shrink:0;width:16px;height:16px}.button:has([data-icon=inline-end]){padding-right:8px}.button:has([data-icon=inline-start]){padding-left:8px}@keyframes button-shimmer{0%{left:-100%}40%{left:100%}40.1%,to{left:100%}}.button--default{position:relative;z-index:0;overflow:hidden;border:none;background:linear-gradient(1turn,#111,#444);color:var(--primary-foreground)}.button--default:before{top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);animation:button-shimmer 3.5s ease-in-out infinite}.button--default:after,.button--default:before{content:"";position:absolute;pointer-events:none}.button--default:after{inset:0;z-index:-1;background:linear-gradient(1turn,#222,#555);opacity:0;transition:opacity .14s}.button--default:hover:after{opacity:1}.button--default:disabled{background:linear-gradient(1turn,#d0d0d0,#e8e8e8);color:#bbb;opacity:1}.button--outline{border-color:var(--border);background-color:var(--background)}.button--outline:hover,.button--outline[aria-expanded=true]{background-color:var(--muted);color:var(--foreground)}.button--secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.button--secondary:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}.button--secondary[aria-expanded=true]{background-color:var(--secondary);color:var(--secondary-foreground)}.button--ghost:hover,.button--ghost[aria-expanded=true]{background-color:var(--muted);color:var(--foreground)}.button--destructive{background-color:color-mix(in oklch,var(--destructive),transparent 90%);color:var(--destructive)}.button--destructive:hover{background-color:color-mix(in oklch,var(--destructive),transparent 80%)}.button--destructive:focus-visible{border-color:color-mix(in oklch,var(--destructive),transparent 60%);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive),transparent 80%)}.button--link{color:var(--primary);text-underline-offset:4px}.button--link:hover{text-decoration:underline}.button--size-default{height:32px;gap:6px;padding:0 10px}.button--size-xs{height:24px;gap:4px;border-radius:min(var(--radius-md),10px);padding:0 8px;font-size:12px}.button--size-xs svg{width:12px;height:12px}.button--size-sm{height:28px;gap:4px;border-radius:min(var(--radius-md),12px);padding:0 10px;font-size:13px}.button--size-sm svg{width:14px;height:14px}.button--size-lg{gap:6px;padding:0 16px}.button--size-icon{width:32px;height:32px;padding:0}.button--size-icon-xs{width:24px;height:24px;padding:0;border-radius:min(var(--radius-md),10px)}.button--size-icon-xs svg{width:12px;height:12px}.button--size-icon-sm{width:28px;height:28px;padding:0;border-radius:min(var(--radius-md),12px)}.button--size-icon-lg{width:36px;height:36px;padding:0}