.ui-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;font-family:inherit;font-weight:var(--font-medium);letter-spacing:-.01em;line-height:var(--leading-none);white-space:nowrap;cursor:pointer;user-select:none;text-decoration:none;outline:none;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent}.ui-btn-sm{height:32px;padding:0 var(--space-3);border-radius:var(--radius-sm)}.ui-btn-md,.ui-btn-sm{font-size:var(--text-sm)}.ui-btn-md{min-height:44px;padding:0 var(--space-4)}.ui-btn-lg,.ui-btn-md{border-radius:var(--radius-md)}.ui-btn-lg{height:48px;padding:0 var(--space-6);font-size:var(--text-md)}.ui-btn-primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-border);color:var(--btn-primary-color);font-weight:var(--font-semibold);box-shadow:var(--btn-primary-shadow)}@media (hover:hover){.ui-btn-primary:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-border-hover);box-shadow:var(--btn-primary-shadow-hover);transform:translateY(-1px)}}.ui-btn-primary:active{transform:translateY(0) scale(.97);filter:brightness(.96)}.ui-btn-secondary{background:transparent;border-color:var(--border-subtle);color:var(--text-secondary)}@media (hover:hover){.ui-btn-secondary:hover{background:var(--bg-card);border-color:var(--border-default);color:var(--text-primary)}}.ui-btn-secondary:active{background:var(--bg-card-hover)}.ui-btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}@media (hover:hover){.ui-btn-ghost:hover{background:var(--bg-card);color:var(--text-primary)}}.ui-btn-ghost:active{background:var(--bg-card-hover)}.ui-btn-danger{background:var(--bg-error-subtle);border-color:var(--border-error);color:var(--text-error)}@media (hover:hover){.ui-btn-danger:hover{background:rgba(var(--brand-red-rgb,255,69,58),.18);border-color:rgba(var(--brand-red-rgb,255,69,58),.3)}}.ui-btn-danger:active{background:rgba(var(--brand-red-rgb,255,69,58),.24)}.ui-btn-brand-gradient{background:linear-gradient(180deg,rgba(var(--brand-cyan-rgb),.14),rgba(var(--brand-cyan-rgb),.06)),rgba(var(--brand-cyan-rgb),.04);border-color:rgba(var(--brand-cyan-rgb),.32);color:var(--text-cyan-tinted,hsl(195,100%,95%));font-weight:var(--font-semibold);box-shadow:0 4px 14px -10px rgba(var(--brand-cyan-rgb),.32),0 1px 4px rgba(var(--black-rgb),.32)}.ui-btn:focus-visible{box-shadow:var(--ring-focus)}.ui-btn-brand-gradient:focus-visible{outline:2px solid rgba(var(--brand-cyan-rgb),.55);outline-offset:2px}.ui-btn-danger:active,.ui-btn-ghost:active,.ui-btn-primary:active,.ui-btn-secondary:active{transform:scale(.97)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{opacity:.65;cursor:not-allowed;pointer-events:none}.ui-btn-full-width{width:100%}.ui-btn-loading{cursor:wait;pointer-events:none}.ui-btn-loading .ui-btn-content{visibility:hidden}.ui-btn-spinner-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ui-btn-spinner{width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:var(--radius-circle);animation:ui-btn-spin .6s linear infinite}.ui-btn-sm .ui-btn-spinner{width:14px;height:14px}.ui-btn-lg .ui-btn-spinner{width:18px;height:18px}@keyframes ui-btn-spin{to{transform:rotate(1turn)}}.ui-btn-content{gap:var(--space-2)}.ui-btn-content,.ui-btn-icon{display:inline-flex;align-items:center;justify-content:center}.ui-btn-icon{flex-shrink:0;line-height:0}.ui-btn-icon svg{width:1em;height:1em}.ui-btn-sm .ui-btn-icon svg{width:14px;height:14px}.ui-btn-md .ui-btn-icon svg{width:16px;height:16px}.ui-btn-lg .ui-btn-icon svg{width:18px;height:18px}@media (prefers-reduced-motion:reduce){.ui-btn{transition:none}@media (hover:hover){.ui-btn-brand-gradient:hover{transform:none}}.ui-btn-brand-gradient:active,.ui-btn-danger:active,.ui-btn-ghost:active,.ui-btn-primary:active,.ui-btn-secondary:active{transform:none}.ui-btn-spinner{animation-duration:1.2s}}