@use "sass:color";
@use "../../base/color" as cl;
@use "../../base/mixins/meta-class" as mc;

@include mc.meta("qo-text-primary", (color: cl.$text-primary));
@include mc.meta("qo-text-secondary", (color: cl.$text-secondary));
@include mc.meta("qo-text-success", (color: cl.$text-success));
@include mc.meta("qo-text-warning", (color: cl.$text-warning));
@include mc.meta("qo-text-danger", (color: cl.$text-danger));
@include mc.meta("qo-text-info", (color: cl.$text-info));
@include mc.meta("qo-text-default", (color: cl.$text-default));
@include mc.meta("qo-text-dark", (color: cl.$text-dark));
@include mc.meta("qo-text-light", (color: cl.$text-light));
@include mc.meta("qo-text-tertiary", (color: cl.$text-tertiary));

// Higher specificity variants when used with .qo-btn (beats Kendo .k-button-* selectors)
// Intentionally NOT wrapped in meta() — button overrides must stay high specificity
.qo-btn {
  &.qo-text-primary { color: cl.$text-primary; &:hover, &:focus, &:active { color: cl.$text-primary-hover; } }
  &.qo-text-secondary { color: cl.$text-secondary; &:hover, &:focus, &:active { color: cl.$text-dark; } }
  &.qo-text-success { color: cl.$text-success; &:hover, &:focus, &:active { color: color.adjust(cl.$text-success, $lightness: -10%); } }
  &.qo-text-warning { color: cl.$text-warning; &:hover, &:focus, &:active { color: color.adjust(cl.$text-warning, $lightness: -10%); } }
  &.qo-text-danger { color: cl.$text-danger; &:hover, &:focus, &:active { color: cl.$text-danger-hover; } }
  &.qo-text-info { color: cl.$text-info; &:hover, &:focus, &:active { color: color.adjust(cl.$text-info, $lightness: -10%); } }
  &.qo-text-default { color: cl.$text-default; &:hover, &:focus, &:active { color: cl.$text-dark; } }
  &.qo-text-dark { color: cl.$text-dark; &:hover, &:focus, &:active { color: color.adjust(cl.$text-dark, $lightness: -10%); } }
  &.qo-text-light { color: cl.$text-light; &:hover, &:focus, &:active { color: cl.$text-light; } }
  &.qo-text-tertiary { color: cl.$text-tertiary; &:hover, &:focus, &:active { color: color.adjust(cl.$text-tertiary, $lightness: -10%); } }
}

.qo-validation {
  color: cl.$text-danger;
}
