@use '../functions' as *;

////
/// @package theming
/// @group elevations
/// @author <a href="https://github.com/simeonoff" target="_blank">Simeon Simeonoff</a>
////

/// Level 1 - The color used to generate umbra shadows.
/// @type Color
/// @access private
$color-1: rgba(0 0 0 / 0.26) !default;

/// Level 2 - The color used to generate penumbra shadows.
/// @type Color
/// @access private
$color-2: rgba(0 0 0 / 0.12) !default;

/// Level 3 - The color used to generate ambient shadows.
/// @type Color
/// @access private
$color-3: rgba(0 0 0 / 0.08) !default;

/// All elevation levels
/// @access private
$_1: box-shadow((0 1px 3px 0 $color-1, 0 1px 1px 0 $color-2, 0 2px 1px -1px $color-3));
$_2: box-shadow((0 3px 6px 0 rgba(0 0 0 / 0.3)));
$_3: box-shadow((0 3px 6px 0 rgba(36 37 44 / 0.2)));
$_4: box-shadow((0 2px 12px 0 rgba(36 37 44 / 0.1)));
$_5: box-shadow((0 0 12px 0 rgba(36 37 44 / 0.2)));
$_6: box-shadow((0 2px 12px 0 rgba(36 37 44 / 0.2)));
$_7: box-shadow((0 0 12px 0 rgba(0 0 0 / 0.3)));
$_8: box-shadow((0 2px 2px 0 rgba(36 37 44 / 0.2)));
$_9: box-shadow((0 2px 2px 0 rgba(0 0 0 / 0.3)));
$_10: box-shadow((0 2px 6px 0 rgba(36 37 44 / 0.4)));
$_11: box-shadow((0 2px 6px 0 rgba(0 0 0 / 0.4)));
$_12: box-shadow((0 0 16px 0 rgba(36 37 44 / 0.4)));
$_13: box-shadow((0 7px 8px -4px $color-1, 0 13px 19px 2px $color-2, 0 5px 24px 4px $color-3));
$_14: box-shadow((0 7px 9px -4px $color-1, 0 14px 21px 2px $color-2, 0 5px 26px 4px $color-3));
$_15: box-shadow((0 8px 9px -5px $color-1, 0 15px 22px 2px $color-2, 0 6px 28px 5px $color-3));
$_16: box-shadow((0 8px 10px -5px $color-1, 0 16px 24px 2px $color-2, 0 6px 30px 5px $color-3));
$_17: box-shadow((0 8px 11px -5px $color-1, 0 17px 26px 2px $color-2, 0 6px 32px 5px $color-3));
$_18: box-shadow((0 9px 11px -5px $color-1, 0 18px 28px 2px $color-2, 0 7px 34px 6px $color-3));
$_19: box-shadow((0 9px 12px -6px $color-1, 0 19px 29px 2px $color-2, 0 7px 36px 6px $color-3));
$_20: box-shadow((0 10px 13px -6px $color-1, 0 20px 31px 3px $color-2, 0 8px 38px 7px $color-3));
$_21: box-shadow((0 10px 13px -6px $color-1, 0 21px 33px 3px $color-2, 0 8px 40px 7px $color-3));
$_22: box-shadow((0 10px 14px -6px $color-1, 0 22px 35px 3px $color-2, 0 8px 42px 7px $color-3));
$_23: box-shadow((0 0 16px 0 rgba(0 0 0 / 0.3)));
$_24: box-shadow((0 0 16px 0 rgba(36 37 44 / 0.4)));

/// А map of 24 shadow elevations with the umbra, penumbra and ambient shadows.
/// @type Map
/// @access private
$elevations: (
    0: none,
    1: $_1,
    2: $_2,
    3: $_3,
    4: $_4,
    5: $_5,
    6: $_6,
    7: $_7,
    8: $_8,
    9: $_9,
    10: $_10,
    11: $_11,
    12: $_12,
    13: $_13,
    14: $_14,
    15: $_15,
    16: $_16,
    17: $_17,
    18: $_18,
    19: $_19,
    20: $_20,
    21: $_21,
    22: $_22,
    23: $_23,
    24: $_24,
);
