// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
// See LICENSE in the project root for license information.

// ---------------------------------------------------------------------
// Variables are defined by baseline Design Tokens

@import '../libSupport/deprecated';
@import '../utilityVariables/important';
@import '../libSupport/manageScope';

/// Utility class for default font-weight
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_fontWeightDefault {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_fontWeightDefault {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_fontWeightDefault {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";
#{$scope}.#{$prefix}util_fontWeightDefault {
  @if variable-exists(ds-text-body-default-weight) {
    font-weight: var(--$ds-text-body-default-weight) $important;
  }
}

/// Utility class for font-weight `medium`
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_fontWeightMedium {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_fontWeightMedium {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_fontWeightMedium {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";
#{$scope}.#{$prefix}util_fontWeightMedium {
  @if variable-exists(ds-text-body-default-weight) {
    font-weight: var(--ds-text-heading-medium-weight, $ds-text-heading-medium-weight) $important;
  }
}

/// Utility class for display font-weight
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_fontWeightDisplay {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_fontWeightDisplay {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_fontWeightDisplay {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";
#{$scope}.#{$prefix}util_fontWeightDisplay {
  @if variable-exists(ds-text-heading-display-weight) {
    font-weight: var(--ds-text-heading-display-weight, $ds-text-heading-display-weight) $important;
  }
}

/// Utility class for font-size `lg`
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_body--lg {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_body--lg {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_body--lg {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";
#{$scope}.#{$prefix}util_body--lg {
  @if variable-exists(ds-text-body-size-lg) {
    font-size: var(--ds-text-body-size-lg, $ds-text-body-size-lg) $important;
    line-height: var(--ds-text-body-height-lg, $ds-text-body-height-lg) $important;
  }
}

/// Utility class for font-size `sm`
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_body--sm {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_body--sm {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_body--sm {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";
#{$scope}.#{$prefix}util_body--sm {
  @if variable-exists(ds-text-body-size-lg) {
    font-size: var(--ds-text-body-size-sm, $ds-text-body-size-sm) $important;
    line-height: var(--ds-text-body-height-sm, $ds-text-body-height-sm) $important;
  }
}

/// Utility class for font-size `xs`
///
/// [Manage](/#utility-variable-important) `!important` flag.
///
/// [Manage](/#scope-prefix-variable-scope) `$scope` and `$prefix` options.
/// @group Utility-font
/// @example scss - Default selector(s)
///   .util_body--xs {}
///
/// @example scss - Selector(s) when $scope: true;
///   .auro .util_body--xs {}
///
/// @example scss - Selector(s) when $prefix: true;
///   .auro_util_body--xs {}
///
/// @example scss - import Sass file
///   @import "./node_modules/@aurodesignsystem/webcorestylesheets/dist/utilityClasses/fontStyles";

#{$scope}.#{$prefix}util_body--xs {
  @if variable-exists(ds-text-body-size-xs) {
    font-size: var(--ds-text-body-size-xs, $ds-text-body-size-xs) $important;
    line-height: var(--ds-text-body-height-xs, $ds-text-body-height-xs) $important;
  }
}
