////
///
/// Padding Mixins
/// ===========================================================================
///
/// Padding utility mixins for controlling element inner spacing.
///
/// @group Mixins.HeadLayout.Spacing
/// @author Scape Agency
/// @link https://scape.style
/// @since 0.1.0 initial release
/// @access public
///
////

@use "sass:math";
@use "../../../dev" as *;
@use "../../../variables" as *;

// ============================================================================
// Token Map
// ============================================================================

$object_padding_map: (
    xs: 4,
    sm: 8,
    md: 16,
    lg: 20,
    xl: 32,
) !default;

// ============================================================================
// Low-level Padding Mixins
// ============================================================================

@mixin padding($v) {
    padding: $v;
}

@mixin padding--top($v) {
    padding-top: $v;
}

@mixin padding--right($v) {
    padding-right: $v;
}

@mixin padding--bottom($v) {
    padding-bottom: $v;
}

@mixin padding--left($v) {
    padding-left: $v;
}

@mixin padding--vertical($v) {
    padding-top: $v;
    padding-bottom: $v;
}

@mixin padding--horizontal($v) {
    padding-left: $v;
    padding-right: $v;
}
