// Color utilities maps
//
// Extends the default `$theme-colors` maps to help create our utilities.

$utilities-colors: map-collect(
								$colors-rgb,
								$theme-colors-rgb
) !default;
// scss-docs-end utilities-colors

// scss-docs-start utilities-text-colors
$utilities-text: map-merge(
								$utilities-colors,
								(
												"white": to-rgb($white),
												"black": to-rgb($black),
												"body": to-rgb($body-color),
												"muted": to-rgb($text-muted),
												"heading": to-rgb($headings-color)
								)
) !default;
$utilities-text-colors: map-loop($utilities-text, rgba-css-var, "$key", "text") !default;
// scss-docs-end utilities-text-colors

$utilities-static-text-colors: (
				"transparent": transparent,
				"current": currentColor,
				"reset": inherit,
) !default;

$utilities-accent: map-merge(
								$utilities-colors,
								(
												"white": to-rgb($white),
												"black": to-rgb($black),
												"body": to-rgb($body-color),
												"muted": to-rgb($text-muted),
												"heading": to-rgb($headings-color)
								)
) !default;
$utilities-accent-colors: map-loop($utilities-text, rgba-css-var, "$key", "accent") !default;
// scss-docs-end utilities-text-colors

$utilities-static-accent-colors: (
				"transparent": transparent,
				"current": currentColor,
				"reset": inherit,
) !default;

$utilities-caret: map-merge(
								$utilities-colors,
								(
												"white": to-rgb($white),
												"black": to-rgb($black),
								)
) !default;
$utilities-caret-colors: map-loop($utilities-caret, rgba-css-var, "$key", "caret") !default;
// scss-docs-end utilities-text-colors

$utilities-static-caret-colors: (
				"transparent": transparent,
				"current": currentColor,
				"reset": inherit,
) !default;


// scss-docs-start utilities-bg-colors
$utilities-bg: map-merge(
								$utilities-colors,
								(
												"body": to-rgb($body-color),
												"white": to-rgb($white),
												"black": to-rgb($black),
												"card": to-rgb($card-bg)
								)
) !default;
$utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg") !default;
// scss-docs-end utilities-bg-colors

$utilities-static-bg-colors: (
				"transparent": transparent,
				"current": currentColor
) !default;

$utilities-surface-bg-colors: map-loop($surface-colors-rgb, rgba-css-var, "$key", "bg") !default;

$utilities-bg-position: (
				"bottom": bottom,
				"center": center,
				"left": left,
				"left-bottom": left bottom,
				"left-top": left top,
				"right": right,
				"right-bottom": right bottom,
				"right-top": right top,
				"top": top,
) !default;

$utilities-object-position: (
				"bottom": bottom,
				"center": center,
				"left": left,
				"left-bottom": left bottom,
				"left-top": left top,
				"right": right,
				"right-bottom": right bottom,
				"right-top": right top,
				"top": top,
) !default;

// Typography
$utilities-font-family-values: (
				base: var(--#{$prefix}font-sans-serif),
				display: var(--#{$prefix}font-display),
				serif: var(--#{$prefix}font-serif),
				code: var(--#{$prefix}font-monospace)
) !default;

$utilities-font-size-values: (
				xs: $font-size-xs,
				sm: $font-size-sm,
				base: $font-size-base,
				md: $font-size-md,
				lg: $font-size-lg,
				xl: $font-size-xl,
				2xl: $font-size-2xl,
				3xl: $font-size-3xl,
				4xl: $font-size-4xl,
				5xl: $font-size-5xl,
				6xl: $font-size-6xl,
				7xl: $font-size-7xl,
				8xl: $font-size-8xl,
) !default;

$utilities-font-weight-values: (
				thin: $font-weight-thin,
				light: $font-weight-light,
				lighter: $font-weight-lighter,
				regular: $font-weight-normal,
				semibold: $font-weight-semibold,
				bold: $font-weight-bold,
				bolder: $font-weight-bolder,
				black: $font-weight-black
) !default;

$utilities-font-variant-values: (
				"normal-nums": normal,
				ordinal: ordinal,
				"slashed-zero": slashed-zero,
				"lining-nums": lining-nums,
				"oldstyle-nums": oldstyle-nums,
				"proportional-nums": proportional-nums,
				"tabular-nums": tabular-nums,
				"diagonal-fractions": diagonal-fractions,
				"stacked-fractions": stacked-fractions,
) !default;

$utilities-text-align-values: (
				start: left,
				end: right,
				center: center,
				justify: justify,
				left: left,
				right: right
) !default;

$utilities-text-decoration-values: (
				no-decoration: none,
				underline: underline,
				line-through: line-through,
				overline: overline,
) !default;

// scss-docs-start utilities-text-decoration-colors
$utilities-text-decoration-colors: map-merge(
								$utilities-colors,
								(
												"black": to-rgb($black),
												"white": to-rgb($white)
								)
) !default;
$utilities-text-decoration-color-values: map-loop($utilities-text-decoration-colors, rgba-css-var, "$key", "text") !default;
// scss-docs-end utilities-text-decoration-colors

$utilities-line-height-values: (
				none: 1,
				tighter: 1.125,
				tight: 1.2,
				snug: 1.375,
				normal: 1.5,
				relaxed: 1.625,
				loose: 2,
				3: 0.75rem,
				4: 1rem,
				5: 1.25rem,
				6: 1.5rem,
				7: 1.75rem,
				8: 2rem,
				9: 2.25rem,
				10: 2.5rem,
) !default;

$utilities-letter-spacing-values: (
				tighter: -0.05em,
				tight: -0.025em,
				normal: 0,
				wide: 0.025em,
				wider: 0.05em,
				widest: 0.1em
) !default;

// Shadows
$utilities-shadows: (
				null: $box-shadow,
				1: $box-shadow-sm,
				2: $box-shadow-lg,
				3: $box-shadow-xl,
				4: $box-shadow-2xl,
				5: $box-shadow-3xl,
				6: $box-shadow-4xl,
				inset: $box-shadow-inset,
				outline: $box-shadow-outline,
				focus: $box-shadow-focus,
				none: none
) !default;

$utilities-soft-shadows: (
				1: $box-soft-shadow-sm,
				2: $box-soft-shadow-lg,
				3: $box-soft-shadow-xl,
				4: $box-soft-shadow-2xl,
				5: $box-soft-shadow-3xl,
				6: $box-soft-shadow-4xl,
				none: none
) !default;

// Border
$utilities-border-widths: (
				0: 0,
				null: 1px,
				2: 2px,
				3: 3px,
				4: 4px,
				5: 5px,
				6: 6px,
				7: 7px,
				8: 8px
) !default;

// scss-docs-start utilities-border-colors
$utilities-border: map-merge(
								$utilities-colors,
								(
												"black": to-rgb($black),
												"white": to-rgb($white)
								)
) !default;
$utilities-border-color-values: map-loop($utilities-border, rgba-css-var, "$key", "border") !default;
// scss-docs-end utilities-border-colors

$utilities-static-border-color-values: (
				"body": var(--#{$prefix}body-bg),
				"transparent": transparent,
				"current": currentColor
) !default;


$utilities-border-radius: (
				null: $border-radius,
				0: 0,
				1: $border-radius-sm,
				2: $border-radius-lg,
				3: $border-radius-xl,
				4: $border-radius-2xl,
				5: $border-radius-3xl,
				6: $border-radius-4xl,
				7: $border-radius-5xl,
				8: $border-radius-6xl,
				9: $border-radius-7xl,
				10: $border-radius-8xl,
				pill: $border-radius-pill,
				circle: $border-radius-circle,
				card: $card-border-radius
) !default;

// scss-docs-start utilities-border-colors
$utilities-outline: map-merge(
								$utilities-colors,
								(
												"black": to-rgb($black),
												"white": to-rgb($white)
								)
) !default;
$utilities-outline-color-values: map-loop($utilities-outline, rgba-css-var, "$key", "outline") !default;
// scss-docs-end utilities-border-colors

// Opacity

$utilities-opacity-values: (
				0: 0,
				10: .1,
				20: .2,
				30: .3,
				40: .4,
				50: .5,
				60: .6,
				70: .7,
				80: .8,
				90: .9,
				100: 1
) !default;

// scss-docs-start utilities-stroke-colors
$utilities-stroke: map-merge(
								$utilities-colors,
								(
												"black": to-rgb($black),
												"white": to-rgb($white)
								)
) !default;
$utilities-stroke-color-values: map-loop($utilities-stroke, rgba-css-var, "$key", "stroke") !default;
// scss-docs-end utilities-border-colors

$utilities-static-stroke-color-values: (
				"none": none,
				"inherit": inherit,
				"transparent": transparent,
				"current": currentColor
) !default;

// Z-index values
$utilities-zindex-values: (
				10: 10,
				20: 20,
				30: 30,
				40: 40,
				50: 50,
				100: 100,
				200: 200,
				300: 300,
				400: 400,
				500: 500,
				1000: 1000,
				auto: auto
) !default;

// Transform
$utilities-scale-values: (
				0: 0,
				25: .25,
				50: .5,
				75: .75,
				90: .9,
				95: .95,
				100: 1,
				105: 1.05,
				110: 1.1,
				125: 1.25,
				150: 1.5,
				200: 2,
) !default;

$utilities-rotate-values: (
				0: 0deg,
				1: 1deg,
				2: 2deg,
				3: 3deg,
				6: 6deg,
				12: 12deg,
				30: 30deg,
				45: 45deg,
				90: 90deg,
				180: 180deg,
) !default;

$utilities-perspective-values: (
				100: 100px,
				200: 200px,
				300: 300px,
				400: 400px,
				500: 500px,
				600: 600px,
				700: 700px,
				800: 800px,
				1000: 1000px,
				1250: 1250px,
				1500: 1500px
) !default;

$utilities-translate-values: map-collect(
								$spacers,
								(
												1 \/2: 50%,
												1 \/3: 33.333333%,
												1 \/4: 25%,
												1 \/5: 20%,
												2 \/3: 66.666667%,
												2 \/5: 50%,
												3 \/4: 75%,
												full: 100%
								)
) !default;

$utilities-skew-values: (
				0: 0deg,
				1: 1deg,
				2: 2deg,
				3: 3deg,
				6: 6deg,
				12: 12deg,
) !default;

$utilities-blend-values: (
				normal: normal,
				multiply: multiply,
				screen: screen,
				overlay: overlay,
				darken: darken,
				lighten: lighten,
				"color-dodge": color-dodge,
				"color-burn": color-burn,
				"hard-light": hard-light,
				"soft-light": soft-light,
				difference: difference,
				exclusion: exclusion,
				hue: hue,
				saturation: saturation,
				color: color,
				luminosity: luminosity,
				"plus-lighter": plus-lighter,
) !default;

