.vpt-button {
	display: inline-flex;
	min-height: 2.875rem;
	align-items: center;
	justify-content: center;
	gap: var(--vp-space-2);
	padding: 0.72rem 1.45rem;
	border: 1px solid transparent;
	border-radius: var(--vp-radius-pill);
	font-size: var(--vp-font-size-sm);
	font-weight: var(--vp-font-weight-bold);
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color var(--vp-duration-fast) var(--vp-ease), border-color var(--vp-duration-fast) var(--vp-ease), color var(--vp-duration-fast) var(--vp-ease), transform var(--vp-duration-fast) var(--vp-ease);
}
.vpt-button:hover { text-decoration: none; }
.vpt-button:active { transform: translateY(1px); }
.vpt-button--primary { background: var(--vp-color-action); color: #fff; }
.vpt-button--primary:hover { background: var(--vp-color-action-hover); color: #fff; }
.vpt-button--primary:active { background: var(--vp-color-action-active); }
.vpt-button--secondary { background: #fff; border-color: var(--vp-color-action); color: var(--vp-color-action); }
.vpt-button--secondary:hover { background: var(--vp-color-surface-selected); color: var(--vp-color-action-hover); }
.vpt-button--quiet { background: var(--vp-color-surface-subtle); color: var(--vp-color-action); }
.vpt-button--quiet:hover { background: var(--vp-color-surface-selected); }
.vpt-button--sm { min-height: 2.5rem; padding-inline: 1.15rem; }
.vpt-link-action {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	color: var(--vp-color-action);
	font-size: var(--vp-font-size-sm);
	font-weight: var(--vp-font-weight-bold);
	text-decoration: none;
}
.vpt-link-action:hover { text-decoration: underline; }
.vpt-link-action__arrow { transition: transform var(--vp-duration-fast) var(--vp-ease); }
.vpt-link-action:hover .vpt-link-action__arrow { transform: translateX(2px); }
