---
title: CSS Value Functions
description: "Yamada UI provides various functions that make CSS value functions more convenient."
---
:::note
Function arguments can reference tokens from the [theme](https://yamada-ui.com/docs/theming.md).
:::
## Calculation & Comparison
Yamada UI provides functions that make CSS calculation and comparison functions more convenient.
### calc
You can use CSS's [calc](https://developer.mozilla.org/en-US/docs/Web/CSS/calc) to reference and calculate tokens from the [theme](https://yamada-ui.com/docs/theming.md).
```tsx
Calc
```
```tsx
Use interpolated token
```
:::warning
If the token name is a number, such as the [spaces](https://yamada-ui.com/docs/theming/tokens/spaces.md) tokens in the [theme](https://yamada-ui.com/docs/theming.md), reference it using `{}` (see [interpolation](https://yamada-ui.com/docs/styling/interpolation.md)).
:::
### min
Use CSS's [min](https://developer.mozilla.org/en-US/docs/Web/CSS/min) to set the smallest value from the given arguments.
If there is only one argument, a second value of `"100%"` is set.
```tsx
Min
Omitted Min
```
### max
Use CSS's [max](https://developer.mozilla.org/en-US/docs/Web/CSS/max) to set the largest value from the given arguments.
If there is only one argument, a second value of `"100%"` is set.
```tsx
Max
Omitted Max
```
### clamp
Use CSS's [clamp](https://developer.mozilla.org/en-US/docs/Web/CSS/clamp) to constrain a value between an upper and lower bound.
If there are two arguments, a recommended value of `"100%"` is set.
```tsx
Clamp
Omitted Clamp
```
## Color
Yamada UI provides functions that easily mix colors together, lighten, and darken colors.
### mix
Use CSS's [color-mix](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/color-mix) to mix colors together.
You can specify two or three arguments. The [method](https://developer.mozilla.org/en-US/docs/Web/CSS/color-interpolation-method) can be omitted, and the default is `in srgb`.
```tsx
"in srgb" + "red.500" + "blue.500"
```
You can change the ratio by specifying a percentage.
```tsx
"in lab" + "orange.500 80%" + "purple.500 20%"
```
:::warning
Make sure the percentages add up to `100%`.
:::
### tint
Use [mix](#mix) to lighten a color by mixing it with `#FFFFFF`.
```tsx
Tint color
```
### shade
Use [mix](#mix) to darken a color by mixing it with `#000000`.
```tsx
Shade color
```
### transparentize
Use [mix](#mix) to make a color transparent by mixing it with `transparent`. A shorthand notation like `bg="red.500 / 50"` is also available.
```tsx
Transparentize color
```
### tone
Use [mix](#mix) to create a color based on a specified color and tone.
```tsx preview
{TONES.map((tone) => (
Tone {tone}
))}
```
## Gradient
Yamada UI provides functions that easily create gradients. To add a gradient, set functions and values to `bgGradient`.
- `linear(, , )`
- `radial(, )`
You can also use other CSS gradient functions like `repeating-linear` or `conic`.
Shortcuts are available for ``.
```ts
{
'to-t': 'to top',
'to-tr': 'to top right',
'to-r': 'to right',
'to-br': 'to bottom right',
'to-b': 'to bottom',
'to-bl': 'to bottom left',
'to-l': 'to left',
'to-tl': 'to top left',
}
```
```tsx
```
### Customize Colors
You can use both theme [tokens](https://yamada-ui.com/docs/theming/tokens/colors.md) and [CSS color values](https://developer.mozilla.org/en-US/docs/Web/CSS/color).
```tsx
```
### Text Gradient
To add a gradient to text, set `bgGradient` and `bgClip` to `text`.
```tsx
クリリンのことか……クリリンのことかーーーっ!!!!!
```