.ui-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 var(--space-1);border:var(--stroke-thin) solid;border-radius:var(--radius-key);background:var(--color-surface-raised);font:var(--font-weight-label) var(--font-size-label) /1 var(--font-family-body);text-transform:var(--text-case-label)}.ui-kbd+.ui-kbd{margin-left:2px}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--size-control);padding:0 var(--space-3);border:var(--stroke-thin) solid var(--color-line);border-radius:var(--radius-surface);background:transparent;color:var(--color-text);font:var(--font-weight-label) var(--font-size-label) /var(--line-height-label) var(--font-family-body);letter-spacing:var(--letter-spacing-label);text-transform:var(--text-case-label);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-timing),color var(--motion-duration-fast) var(--motion-timing)}.ui-button:hover{border-color:var(--color-accent);background:var(--color-surface-hover);color:var(--color-accent-strong)}.ui-button:active{transform:translateY(1px)}.ui-button--small{height:var(--size-control-small);padding:0 var(--space-2)}.ui-button--primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.ui-button--primary:hover{border-color:var(--color-accent-strong);background:var(--color-accent-strong);color:var(--color-on-accent)}.ui-button--danger{border-color:var(--color-danger);color:var(--color-danger)}.ui-button--danger:hover{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-accent)}.ui-button--ghost{border-color:transparent}.ui-button--danger:hover .ui-kbd,.ui-button--primary .ui-kbd,.ui-button:disabled{background:transparent}.ui-button:disabled{border-color:var(--color-line-decorative);color:var(--color-text-disabled);cursor:not-allowed;transform:none}