@import '../../../styles/variables.scss'; .primary-btn { display: flex; align-items: center; justify-content: center; gap: var(--tk-gap-xs); width: 100%; background: var(--tk-pri); color: $white; font-weight: 600; border: none; border-radius: 14px; box-shadow: var(--tk-shadow-btn); transition: opacity 0.15s, transform 0.15s; &--default { height: var(--tk-btn-primary-h); font-size: var(--tk-font-body-lg); } &--large { height: 54px; font-size: var(--tk-font-h2); } &:active:not(&--disabled):not(&--loading) { opacity: var(--tk-touch-feedback-opacity); transform: scale(0.98); } @include focus-ring; &--disabled { opacity: 0.5; box-shadow: none; } &__spinner { width: 18px; height: 18px; border: 2px solid rgba(255, 255, 255, 0.3); border-top-color: $white; border-radius: 50%; animation: primary-btn-spin 0.6s linear infinite; } &__text { color: $white; font-weight: 600; } } @keyframes primary-btn-spin { to { transform: rotate(360deg); } }