.design-system-text-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--px-2);
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    text-decoration: none;
    box-sizing: border-box;
    transition: opacity 0.2s ease, color 0.2s ease;
}

.design-system-text-btn:disabled {
    cursor: not-allowed;
    opacity: 0.4;
}

.design-system-text-btn.size-l .btn-icon { font-size: var(--px-24); }

.design-system-text-btn.size-m .btn-icon { font-size: var(--px-20); }

.design-system-text-btn.size-s .btn-icon { font-size: var(--px-16); }


.design-system-text-btn.variant-primary { color: var(--Components-basic-gray-color-text-color-text-strong); }
.design-system-text-btn.variant-primary .btn-icon { color: var(--Components-basic-gray-color-text-color-text-strong); }

.design-system-text-btn.variant-secondary { color: var(--Components-basic-gray-color-text-color-text-secondary); }
.design-system-text-btn.variant-secondary .btn-icon { color: var(--Components-basic-gray-color-text-color-text-secondary); }

.design-system-text-btn.variant-tertiary { color: var(--Components-basic-gray-color-text-color-text-disabled); }
.design-system-text-btn.variant-tertiary .btn-icon { color: var(--Components-basic-gray-color-text-color-text-disabled); }

.design-system-text-btn.variant-danger { color: var(--Components-Warning-colors-warning-text); }
.design-system-text-btn.variant-danger .btn-icon { color: var(--Components-Warning-colors-warning-text); }