/* Icon action. Tokens only (TokenLintTest). */
.c-icon-action { transition: transform var(--t-feedback) var(--ease-standard), color var(--t-state), background var(--t-state); }
.c-icon-action--stacked {
	display: flex; flex-direction: column; align-items: center; gap: var(--space-1);
	width: var(--icon-action-width); padding: var(--space-1); flex: none;
	font-size: var(--text-xs); font-weight: 500; color: var(--color-text-muted);
}
.c-icon-action--stacked .icon { color: var(--color-text); }
.c-icon-action--stacked:active { transform: scale(0.96); }
.c-icon-action--inline {
	display: inline-flex; align-items: center; gap: var(--space-1-5);
	padding: var(--space-2-5) var(--space-3);
	color: var(--color-text); font-weight: 600;
	border-radius: var(--radius-s);
}
.c-icon-action--inline:active { transform: scale(0.97); }
@media (hover: hover) and (pointer: fine) {
	.c-icon-action--stacked:hover { color: var(--color-text); }
	.c-icon-action--inline:hover { background: var(--color-hover-wash); }
}
@media (max-width: 599px) {
	.c-icon-action--compact { min-width: var(--hit-min); min-height: var(--hit-min); justify-content: center; padding: var(--space-2); }
	/* Hidden visually, not from screen readers: the button keeps its name. */
	.c-icon-action--compact .c-icon-action__label {
		position: absolute; width: 1px; height: 1px; overflow: hidden;
		clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
	}
}
@media (prefers-reduced-motion: reduce) {
	.c-icon-action:active { transform: none; }
}
