{"version":3,"file":"Input.module.cjs","names":[],"sources":["../../../src/components/Input/Input.module.css"],"sourcesContent":[".wrapper {\n  position: relative;\n  margin-top: var(--input-margin-top, 0rem);\n  margin-bottom: var(--input-margin-bottom, 0rem);\n\n  --input-height-xs: 30px;\n  --input-height-sm: 36px;\n  --input-height-md: 42px;\n  --input-height-lg: 50px;\n  --input-height-xl: 60px;\n\n  --input-padding-y-xs: 5px;\n  --input-padding-y-sm: 6px;\n  --input-padding-y-md: 8px;\n  --input-padding-y-lg: 10px;\n  --input-padding-y-xl: 13px;\n\n  --input-height: var(--input-height-sm);\n  --input-radius: var(--mantine-radius-default);\n\n  --input-cursor: text;\n  --input-text-align: left;\n  --input-line-height: calc(var(--input-height) - rem(2px));\n  --input-padding: calc(var(--input-height) / 3);\n  --input-padding-inline-start: var(--input-padding);\n  --input-padding-inline-end: var(--input-padding);\n  --input-placeholder-color: var(--mantine-color-placeholder);\n  --input-color: var(--mantine-color-text);\n  --input-disabled-bg: var(--mantine-color-disabled);\n  --input-disabled-color: var(--mantine-color-disabled-color);\n\n  --input-left-section-size: var(--input-left-section-width, calc(var(--input-height) - rem(2px)));\n\n  --input-right-section-size: var(\n    --input-right-section-width,\n    calc(var(--input-height) - rem(2px))\n  );\n\n  --input-size: var(--input-height);\n\n  --section-y: 1px;\n  --left-section-start: 1px;\n  --left-section-border-radius: var(--input-radius) 0 0 var(--input-radius);\n\n  --right-section-end: 1px;\n  --right-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;\n\n  &[data-variant='unstyled'] {\n    --input-padding: 0;\n    --input-padding-y: 0;\n    --input-padding-inline-start: 0;\n    --input-padding-inline-end: 0;\n  }\n\n  &[data-pointer] {\n    --input-cursor: pointer;\n  }\n\n  &[data-multiline] {\n    --input-padding-y-xs: 4.5px;\n    --input-padding-y-sm: 5.5px;\n    --input-padding-y-md: 7px;\n    --input-padding-y-lg: 9.5px;\n    --input-padding-y-xl: 13px;\n\n    --input-size: auto;\n    --input-line-height: var(--mantine-line-height);\n  }\n\n  &[data-with-left-section] {\n    --input-padding-inline-start: var(--input-left-section-size);\n  }\n\n  &[data-with-right-section] {\n    --input-padding-inline-end: var(--input-right-section-size);\n\n    &:has([data-combined-clear-section]) {\n      .wrapper[data-size='xs'] & {\n        --input-padding-inline-end: 41px;\n      }\n\n      .wrapper[data-size='sm'] & {\n        --input-padding-inline-end: 50px;\n      }\n\n      .wrapper[data-size='md'] & {\n        --input-padding-inline-end: 60px;\n      }\n\n      .wrapper[data-size='lg'] & {\n        --input-padding-inline-end: 72px;\n      }\n\n      .wrapper[data-size='xl'] & {\n        --input-padding-inline-end: 89px;\n      }\n    }\n  }\n\n  @mixin light {\n    &[data-variant='default'] {\n      --input-bd: var(--mantine-color-gray-4);\n      --input-bg: var(--mantine-color-white);\n      --input-bd-focus: var(--mantine-primary-color-filled);\n    }\n\n    &[data-variant='filled'] {\n      --input-bd: transparent;\n      --input-bg: var(--mantine-color-gray-1);\n      --input-bd-focus: var(--mantine-primary-color-filled);\n    }\n\n    &[data-variant='unstyled'] {\n      --input-bd: transparent;\n      --input-bg: transparent;\n      --input-bd-focus: transparent;\n    }\n  }\n\n  @mixin dark {\n    &[data-variant='default'] {\n      --input-bd: var(--mantine-color-dark-4);\n      --input-bg: var(--mantine-color-dark-6);\n      --input-bd-focus: var(--mantine-primary-color-filled);\n    }\n\n    &[data-variant='filled'] {\n      --input-bd: transparent;\n      --input-bg: var(--mantine-color-dark-5);\n      --input-bd-focus: var(--mantine-primary-color-filled);\n    }\n\n    &[data-variant='unstyled'] {\n      --input-bd: transparent;\n      --input-bg: transparent;\n      --input-bd-focus: transparent;\n    }\n  }\n\n  [data-mantine-color-scheme] &[data-error] {\n    &:not([data-variant='unstyled']) {\n      --input-bd: var(--mantine-color-error);\n    }\n\n    --input-color: var(--mantine-color-error);\n    --input-placeholder-color: var(--mantine-color-error);\n    --input-section-color: var(--mantine-color-error);\n  }\n\n  @mixin where-rtl {\n    --input-text-align: right;\n    --left-section-border-radius: 0 var(--input-radius) var(--input-radius) 0;\n    --right-section-border-radius: var(--input-radius) 0 0 var(--input-radius);\n  }\n}\n\n.input {\n  -webkit-tap-highlight-color: transparent;\n  appearance: none;\n  resize: var(--input-resize, none);\n  display: block;\n  width: 100%;\n  transition: border-color 100ms ease;\n\n  text-align: var(--input-text-align);\n  color: var(--input-color);\n  border: rem(1px) solid var(--input-bd);\n  background-color: var(--input-bg);\n  font-family: var(--input-font-family, var(--mantine-font-family));\n  height: var(--input-size);\n  min-height: var(--input-height);\n  line-height: var(--input-line-height);\n  font-size: var(--_input-fz, var(--input-fz, var(--mantine-font-size-md)));\n  border-radius: var(--input-radius);\n  padding-inline-start: var(--input-padding-inline-start);\n  padding-inline-end: var(--input-padding-inline-end);\n  padding-top: var(--input-padding-y, 0rem);\n  padding-bottom: var(--input-padding-y, 0rem);\n  cursor: var(--input-cursor);\n  overflow: var(--input-overflow);\n\n  /* Used as data attribute in Textarea component, does not have associated prop on the Input component */\n  &[data-no-overflow] {\n    --input-overflow: hidden;\n  }\n\n  /* Used as data attribute in JsonInput component, does not have associated prop on the Input component */\n  &[data-monospace] {\n    --input-font-family: var(--mantine-font-family-monospace);\n    --_input-fz: calc(var(--input-fz) - rem(2px));\n  }\n\n  &:focus,\n  &:focus-within {\n    outline: none;\n    --input-bd: var(--input-bd-focus);\n\n    [data-error] & {\n      --input-bd: var(--mantine-color-error);\n    }\n  }\n\n  &::placeholder {\n    color: var(--input-placeholder-color);\n    opacity: 1;\n  }\n\n  &::-webkit-inner-spin-button,\n  &::-webkit-outer-spin-button,\n  &::-webkit-search-decoration,\n  &::-webkit-search-cancel-button,\n  &::-webkit-search-results-button,\n  &::-webkit-search-results-decoration {\n    appearance: none;\n  }\n\n  &[type='number'] {\n    -moz-appearance: textfield;\n  }\n\n  &:disabled,\n  &[data-disabled] {\n    cursor: not-allowed;\n    opacity: 0.6;\n    background-color: var(--input-disabled-bg);\n    color: var(--input-disabled-color);\n  }\n\n  /* Required to be a separate selector to work in Firefox, can be merged with &:disabled once :has is supported */\n  &:has(input:disabled) {\n    cursor: not-allowed;\n    opacity: 0.6;\n    background-color: var(--input-disabled-bg);\n    color: var(--input-disabled-color);\n  }\n\n  &[readonly] {\n    caret-color: transparent;\n  }\n}\n\n.section {\n  pointer-events: var(--section-pointer-events);\n  position: absolute;\n  z-index: 1;\n  inset-inline-start: var(--section-start);\n  inset-inline-end: var(--section-end);\n  bottom: var(--section-y);\n  top: var(--section-y);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: var(--section-size);\n  border-radius: var(--section-border-radius);\n  color: var(--input-section-color, var(--mantine-color-dimmed));\n\n  &[data-position='right'] {\n    --section-pointer-events: var(--input-right-section-pointer-events);\n    --section-end: var(--right-section-end);\n    --section-size: var(--input-right-section-size);\n    --section-border-radius: var(--right-section-border-radius);\n\n    &:has([data-combined-clear-section]) {\n      .wrapper[data-size='xs'] & {\n        --section-size: 41px;\n      }\n\n      .wrapper[data-size='sm'] & {\n        --section-size: 50px;\n      }\n\n      .wrapper[data-size='md'] & {\n        --section-size: 60px;\n      }\n\n      .wrapper[data-size='lg'] & {\n        --section-size: 72px;\n      }\n\n      .wrapper[data-size='xl'] & {\n        --section-size: 89px;\n      }\n    }\n  }\n\n  &[data-position='left'] {\n    --section-pointer-events: var(--input-left-section-pointer-events);\n    --section-start: var(--left-section-start);\n    --section-size: var(--input-left-section-size);\n    --section-border-radius: var(--left-section-border-radius);\n  }\n}\n\n/* ----- Input.Placeholder ----- */\n.placeholder {\n  color: var(--input-placeholder-color, var(--mantine-color-placeholder));\n\n  [data-error] & {\n    --input-placeholder-color: var(--input-color, var(--mantine-color-placeholder));\n  }\n}\n\n/* ----- Input.Wrapper ----- */\n.root {\n  line-height: var(--mantine-line-height);\n}\n\n.label {\n  display: inline-block;\n  font-weight: var(--mantine-font-weight-medium);\n  overflow-wrap: break-word;\n  cursor: default;\n  -webkit-tap-highlight-color: transparent;\n  font-size: var(--input-label-size, var(--mantine-font-size-sm));\n}\n\n.required {\n  color: var(--input-asterisk-color, var(--mantine-color-error));\n}\n\n.error,\n.description {\n  word-wrap: break-word;\n  line-height: 1.2;\n  display: block;\n  margin: 0;\n  padding: 0;\n}\n\n.error {\n  color: var(--mantine-color-error);\n  font-size: var(--input-error-size, calc(var(--mantine-font-size-sm) - rem(2px)));\n}\n\n.description {\n  color: var(--mantine-color-dimmed);\n  font-size: var(--input-description-size, calc(var(--mantine-font-size-sm) - rem(2px)));\n}\n"],"mappings":""}