////
///
/// Default Paragraph Typography Mixins Module
/// ===========================================================================
/// Provides reusable mixins for text alignment and centering.
///
/// @group TextAlignment
/// @author Scape Press
/// @link https://scape.style
/// @since 0.1.0 initial release
/// @todo None
/// @access public
///
////

// ============================================================================
// Use
// ============================================================================

///
/// Generic text alignment mixin.
/// @param {String} $align - Text alignment value (left, center, right, justify)
/// @example
///   @include text-align(left);
///   @include text-align(center);
///
@mixin text-align($align: left) {
    text-align: $align !important;
}

///
/// Align text to the left.
/// @example
///   @include text_align--left;
///
@mixin text_align--left {
    text-align: left !important;
    text-align-last: left !important;
}

///
/// Align text to the center.
/// @example
///   @include text_align--center;
///
@mixin text_align--center {
    text-align: center !important;
    text-align-last: center !important;
}

///
/// Align text to the right.
/// @example
///   @include text_align--right;
///
@mixin text_align--right {
    text-align: right !important;
    text-align-last: right !important;
}

///
/// Justify text alignment.
/// @example
///   @include text_align--justify;
///
@mixin text_align--justify {
    text-align: justify !important;
    text-align-last: justify !important;
    text-justify: inter-word;
}

///
/// Justify text alignment with left-to-right direction.
/// @example
///   @include text_align--justify--left;
///
@mixin text_align--justify--left {
    @include text_align--justify;
    direction: ltr;
}

///
/// Justify text alignment with right-to-left direction.
/// @example
///   @include text_align--justify--right;
///
@mixin text_align--justify--right {
    @include text_align--justify;
    direction: rtl;
}

