.u-spinner{display:inline-block;border-radius:50%;border:2px solid;border-right:2px solid transparent;opacity:.85;animation:u-spin .7s linear infinite;flex:none}@keyframes u-spin{to{transform:rotate(1turn)}}.u-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s cubic-bezier(.2,.7,.2,1),border-color .2s cubic-bezier(.2,.7,.2,1),color .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s cubic-bezier(.2,.7,.2,1),transform .12s cubic-bezier(.2,.7,.2,1);-webkit-tap-highlight-color:rgba(0,0,0,0)}.u-button:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(18,122,98,.28)}.u-button:active:not(:disabled){transform:scale(.98)}.u-button:disabled{cursor:not-allowed;opacity:.5}.u-button--loading:disabled{opacity:.85;cursor:progress}.u-button--L{height:56px;padding:0 28px;gap:10px;font-family:var(--font-ui);font-weight:500;font-size:16px;line-height:24px}.u-button--M{height:46px;padding:0 20px}.u-button--M,.u-button--S{font-family:var(--font-ui);font-weight:500;font-size:14px;line-height:20px}.u-button--S{height:36px;padding:0 14px;gap:6px}.u-button--icon-only.u-button--L{width:56px;padding:0}.u-button--icon-only.u-button--M{width:46px;padding:0}.u-button--icon-only.u-button--S{width:36px;padding:0}.u-button--full{width:100%}.u-button--primary{background:var(--brand-primary);color:var(--text-inverse)}.u-button--primary:hover:not(:disabled){background:var(--brand-hover)}.u-button--primary:active:not(:disabled){background:var(--brand-pressed)}.u-button--secondary{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-strong)}.u-button--secondary:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--text-tertiary)}.u-button--ghost{background:transparent;color:var(--text-primary)}.u-button--ghost:hover:not(:disabled){background:var(--bg-sunken)}.u-button--brand{background:var(--brand-subtle);color:var(--text-brand)}.u-button--brand:hover:not(:disabled){background:var(--brand-muted)}.u-button--danger{background:var(--danger);color:var(--text-inverse)}.u-button--danger:hover:not(:disabled){filter:brightness(.92)}.u-button--inverse{background:var(--bg-surface);color:var(--text-primary)}.u-button--inverse:hover:not(:disabled){background:var(--brand-subtle)}.u-button__icon{flex:none}.u-button__label{display:inline-flex;align-items:center}