{"version":3,"file":"components/select/select.min.css","mappings":"AAKA,WCSE,oDAAqD,CACrD,wCDZF,CCeI,2BACE,kBAAmB,CACnB,sBDbN,CCeM,iCACE,QAAS,CACT,aAAc,CACd,iBAAkB,CAClB,ODbR,CARA,WC4BE,eAAgB,CAChB,eAAgB,CAChB,iBDjBF,CCsBE,oBACE,0BAA2B,CAC3B,+BAAgC,CAChC,YAAa,CACb,eAAgB,CAChB,gBAAiB,CACjB,aAAc,CACd,iBAAkB,CAClB,WAAY,CACZ,UAAW,CACX,SDpBJ,CE7BE,uCACE,gCAAiC,CACjC,+BF+BJ,CE5BE,6CACE,yBF8BJ,CE3BE,6CACE,yBF6BJ,CEzBI,mDACE,yBF2BN,CCWI,qDAEE,+BAAgC,CAChC,YDVN,CCcM,mDACE,oCDZR,CCgBI,8BACE,aDdN,CCiBE,oBExBA,2BACA,mCACA,gCACA,uCACA,+CACA,+BACA,2BACA,+BACA,uCACA,iCFiBE,wCDNJ,CCQI,6BACE,SDNN,CCQI,+DAEE,wCAAyC,CACzC,wCDNN,CCUU,+IACE,qBDPZ,CCWQ,uFACE,yFDRV,CCcQ,0CACE,uBAAwB,CACxB,aAAc,CACd,WAAY,CACZ,YAAa,CACb,2BDZV,CCcU,iGAEE,YDbZ,CCmBI,qCACE,mCDjBN,CCoBI,oCACE,iDDlBN,CI5FE,0CACE,YJ8FJ,CI3FE,oGAEE,0BAA2B,CAC3B,kCAAmC,CACnC,gCAAiC,CACjC,gCJ4FJ,CKnGI,yDACE,yGLqGN,CCWI,2DElGF,0BACA,kCACA,+BACA,sCACA,8CACA,8BACA,0BACA,8BACA,sCACA,+BH0FF,CIpHE,uEACE,YJsHJ,CInHE,8KAEE,0BAA2B,CAC3B,kCAAmC,CACnC,gCAAiC,CACjC,gCJoHJ,CK3HI,qGACE,yGL6HN,CCNI,6BACE,gDAAmD,CACnD,kEDQN,CCDI,iEAEE,8BAA+B,CAC/B,wCAAyC,CACzC,qCDEN,CCEQ,wMACE,wCDEV,CCCQ,wMACE,+GDGV,CCEU,gOACE,uBDEZ,CCGM,wKAEE,gCDFR,CMoFM,sIAEE,yBAA0B,CAC1B,qCNjFR","sources":["webpack://core/./src/components/select/_select.scss","webpack://core/./src/components/select/_mixins.scss","webpack://core/./src/partial/scss/mixins/_scrollbar.scss","webpack://core/./src/partial/scss/mixins/_states.scss","webpack://core/./src/partial/scss/mixins/_focus.scss","webpack://core/./src/partial/scss/mixins/_hover.scss","webpack://core/./src/components/input/_mixins.scss"],"sourcesContent":["@use \"sass:math\";\n @import \"../../partial/scss/base\";\n \n@import \"mixins\";\n\n.#{$prefix}select {\n  @include select-configs;\n}\n","// Dependências\n@import \"../input/mixins\";\n\n// Mixins\n@mixin select-configs {\n  @include select-tokens;\n  @include select-default;\n  @include select-list;\n  @include select-multiple;\n  @include select-dark-mode;\n}\n\n@mixin select-tokens {\n  // }\n  --select-divider: 1px solid var(--color-secondary-04);\n  --select-shadow: var(--surface-shadow-md);\n  // .overflow-text {\n  .#{$prefix}input {\n    input {\n      padding-right: 29px;\n      text-overflow: ellipsis;\n\n      &::after {\n        bottom: 0;\n        padding: 0 5px;\n        position: absolute;\n        right: 0;\n      }\n    }\n  }\n}\n\n@mixin select-default {\n  max-width: 400px;\n  min-width: 100px;\n  position: relative;\n}\n\n// TODO: mover a customização abaixo para o List\n@mixin select-list {\n  .#{$prefix}list {\n    background: var(--bg-color);\n    box-shadow: var(--select-shadow);\n    display: none;\n    margin-top: -2px;\n    max-height: 404px;\n    overflow: auto;\n    position: absolute;\n    resize: none;\n    width: 100%;\n    z-index: 1;\n\n    @include scrollbar;\n\n    &:focus,\n    &:active {\n      color: var(--color-secondary-09);\n      outline: none;\n    }\n\n    &:hover {\n      &::-webkit-scrollbar-thumb {\n        background: var(--color-secondary-07);\n      }\n    }\n\n    &[expanded] {\n      display: block;\n    }\n  }\n  .#{$prefix}item {\n    @include light-mode;\n    --item-padding-y: var(--spacing-scale-2x);\n\n    .content {\n      padding: 0;\n    }\n    .#{$prefix}checkbox,\n    .#{$prefix}radio {\n      --item-padding-x: var(--spacing-scale-2x);\n      --item-padding-y: var(--spacing-scale-2x);\n\n      input {\n        &:hover:not(:disabled) {\n          + label::before {\n            background-image: none;\n          }\n        }\n\n        + label {\n          padding-left: calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x));\n        }\n      }\n    }\n    .#{$prefix}radio {\n      input {\n        + label {\n          color: var(--text-color);\n          display: block;\n          height: auto;\n          min-height: 0;\n          padding: var(--item-padding);\n\n          &::before,\n          &::after {\n            content: none;\n          }\n        }\n      }\n    }\n\n    &:not(:last-child) {\n      border-bottom: var(--select-divider);\n    }\n\n    &:not([disabled]) {\n      --focus-offset: calc(var(--spacing-scale-half) * -1);\n      @include focus;\n      @include hover(\"color\");\n    }\n\n    &.selected,\n    &[selected] {\n      @include dark-mode;\n      @include focus;\n      @include hover(\"color\");\n    }\n\n    &.disabled {\n      line-height: calc(var(--font-line-height-high) * 2);\n      padding-left: calc(var(--item-padding) + var(--spacing-scale-base));\n    }\n  }\n}\n\n@mixin select-multiple {\n  .#{$prefix}item {\n    &.highlighted,\n    &[highlighted] {\n      background-color: var(--gray-2);\n      padding-bottom: var(--spacing-scale-base);\n      padding-top: var(--spacing-scale-base);\n      // background: rgba(v(rgb-support-03), 0.16);\n      .#{$prefix}checkbox,\n      .#{$prefix}radio {\n        label {\n          font-weight: var(--font-weight-semi-bold);\n        }\n\n        &:hover {\n          background: linear-gradient(\n            rgba(var(--interactive-rgb), var(--hover)),\n            rgba(var(--interactive-rgb), var(--hover))\n          );\n\n          label {\n            color: var(--text-color);\n          }\n        }\n      }\n\n      &.selected,\n      &[selected] {\n        background-color: var(--selected);\n      }\n    }\n  }\n}\n\n@mixin select-dark-mode {\n  @include input-dark-mode;\n}\n","@mixin scrollbar {\n  &::-webkit-scrollbar {\n    height: var(--spacing-scale-base);\n    width: var(--spacing-scale-base);\n  }\n\n  &::-webkit-scrollbar-track {\n    background: var(--gray-10);\n  }\n\n  &::-webkit-scrollbar-thumb {\n    background: var(--gray-30);\n  }\n\n  &:hover {\n    &::-webkit-scrollbar-thumb {\n      background: var(--gray-40);\n    }\n  }\n}\n","// Desabilitado\n@mixin disabled {\n  cursor: not-allowed;\n  opacity: var(--disabled);\n\n  * {\n    pointer-events: none;\n  }\n}\n\n// Dark mode\n@mixin dark-mode(\n  $color: \"color-dark\",\n  $color-rgb: \"color-dark-rgb\",\n  $text-color: $color,\n  $interactive: \"interactive-dark\",\n  $interactive-rgb: \"interactive-dark-rgb\",\n  $visited: \"visited-dark\",\n  $hover: \"hover-dark\",\n  $pressed: \"pressed-dark\",\n  $focus-color: \"focus-color-dark\",\n  $focus: $focus-color\n) {\n  --color: var(--#{$color});\n  --color-rgb: var(--#{$color-rgb});\n  --text-color: var(--#{$text-color});\n  --interactive: var(--#{$interactive});\n  --interactive-rgb: var(--#{$interactive-rgb});\n  --visited: var(--#{$visited});\n  --hover: var(--#{$hover});\n  --pressed: var(--#{$pressed});\n  --focus-color: var(--#{$focus-color});\n  --focus: var(--#{$focus});\n}\n@mixin light-mode(\n  $color: \"color-light\",\n  $color-rgb: \"color-light-rgb\",\n  $text-color: $color,\n  $interactive: \"interactive-light\",\n  $interactive-rgb: \"interactive-light-rgb\",\n  $visited: \"visited-light\",\n  $hover: \"hover-light\",\n  $pressed: \"pressed-light\",\n  $focus-color: \"focus-color-light\",\n  $focus: $focus-color\n) {\n  --color: var(--#{$color});\n  --color-rgb: var(--#{$color-rgb});\n  --text-color: var(--#{$text-color});\n  --interactive: var(--#{$interactive});\n  --interactive-rgb: var(--#{$interactive-rgb});\n  --visited: var(--#{$visited});\n  --hover: var(--#{$hover});\n  --pressed: var(--#{$pressed});\n  --focus-color: var(--#{$focus-color});\n  --focus: var(--#{$focus});\n}\n","/// Aplica foco: feedback ao navegar por teclado no elemento\n/// @example scss - Uso prático\n///  a {\n///    @include focus;\n///  }\n@mixin focus {\n  &:focus {\n    outline: none;\n  }\n\n  &.focus-visible,\n  &:focus-visible {\n    outline-color: var(--focus);\n    outline-offset: var(--focus-offset);\n    outline-style: var(--focus-style);\n    outline-width: var(--focus-width);\n  }\n}\n\n/// Aplica foco tênue\n/// @example scss - Uso prático\n///  input {\n///    &:focus,\n///    &:focus-visible,\n///    &.focus-visible {\n///      @include focus-soft;\n///    }\n///  }\n@mixin focus-soft {\n  border-color: var(--focus) !important;\n  box-shadow: 0 0 0 var(--surface-width-md) var(--focus);\n  outline: none;\n}\n","/// Aplica hover: feedback ao colocar o cursor no elemento\n/// @param {String} $color [\"interactive\"] - Cor do hover **(Opcional)**\n/// @example scss - Uso prático\n///  a {\n///    @include hover;\n///  }\n@mixin hover($color: \"interactive\") {\n  &:not(:disabled) {\n    &:hover {\n      background-image: linear-gradient(\n        rgba(var(--#{$color}-rgb), var(--hover)),\n        rgba(var(--#{$color}-rgb), var(--hover))\n      );\n    }\n  }\n}\n","@mixin input-configs {\n  @include input-tokens;\n  @include input-default;\n  @include input-inline;\n  @include input-icon;\n  @include input-button;\n  @include input-highlight;\n  @include input-autocomplete;\n  @include input-states;\n  @include input-densities;\n  @include input-dark;\n}\n\n@mixin input-tokens {\n  --input-button-margin: var(--spacing-scale-half);\n  --input-padding: 0 var(--spacing-scale-2x);\n  --input-padding-button: var(--spacing-scale-5x);\n  --input-padding-icon: var(--spacing-scale-5x);\n  --input-size: var(--input-medium);\n  --input-small: 32px;\n  --input-medium: 40px;\n  --input-large: 48px;\n  --input-highlight: 56px;\n}\n\n@mixin input-default {\n  @include light-mode;\n  color: var(--color);\n  position: relative;\n\n  input {\n    background-color: var(--background-light);\n    border-color: var(--border-color-alternative);\n    border-radius: var(--surface-rounder-sm);\n    border-style: var(--border-style);\n    border-width: var(--border-width);\n    color: var(--color-light);\n    display: block;\n    font-size: var(--font-size-scale-up-01);\n    font-weight: var(--font-weight-medium);\n    height: var(--input-size);\n    margin-top: var(--spacing-scale-half);\n    padding-bottom: 0;\n    padding-left: var(--spacing-scale-2x);\n    padding-right: var(--spacing-scale-2x);\n    padding-top: 0;\n    width: 100%;\n\n    // Remove ícones nativos de browsers\n    // mostrar senha IE/Edge\n    &::-ms-reveal,\n    &::-ms-clear,\n    &::-webkit-calendar-picker-indicator {\n      display: none;\n    }\n    // busca no Chrome\n    &[type=\"search\"]::-webkit-search-decoration,\n    &[type=\"search\"]::-webkit-search-cancel-button,\n    &[type=\"search\"]::-webkit-search-results-button,\n    &[type=\"search\"]::-webkit-search-results-decoration {\n      appearance: none;\n    }\n  }\n}\n\n@mixin input-inline {\n  &.input-inline {\n    display: flex;\n\n    .input-label {\n      margin-right: var(--spacing-scale-baseh);\n      margin-top: calc(var(--input-size) * 0.5 - var(--spacing-scale-half));\n    }\n\n    .input-content {\n      flex: 1;\n    }\n  }\n}\n\n@mixin input-icon {\n  .input-group {\n    position: relative;\n  }\n\n  .input-icon {\n    align-items: center;\n    color: var(--border-color-alternative);\n    display: flex;\n    height: var(--input-size);\n    margin-left: var(--spacing-scale-baseh);\n    position: absolute;\n\n    + input {\n      padding-left: var(--input-padding-icon);\n    }\n  }\n}\n\n@mixin input-button {\n  .#{$prefix}button {\n    --button-size: var(--button-small);\n    @include light-mode;\n    border-radius: 50%;\n    float: right;\n    margin-right: var(--input-button-margin);\n    margin-top: calc((var(--input-size) + var(--spacing-scale-half)) * -1);\n    padding: 0;\n    position: relative;\n    // Centraliza botão\n    transform: translateY(calc((var(--input-size) - var(--button-size)) * 0.5));\n    width: var(--button-size);\n  }\n\n  &.input-button {\n    input {\n      padding-right: var(--input-padding-button);\n    }\n  }\n  // Manter compatibilidade com versão 15.0.2 e anteriores\n  &.has-icon {\n    input {\n      padding-right: var(--input-padding-icon);\n    }\n    .#{$prefix}button.circle {\n      float: right;\n      margin-right: var(--spacing-scale-half);\n      margin-top: calc((var(--button-size) + var(--spacing-scale-half) + var(--spacing-scale-half)) * -1);\n      transform: translateY(0);\n    }\n\n    &.small {\n      .#{$prefix}button.circle {\n        margin-top: calc((var(--button-size) + var(--spacing-scale-base)) * -1);\n      }\n    }\n\n    &.large {\n      .#{$prefix}button.circle {\n        margin-top: calc(var(--button-size) * -1);\n      }\n    }\n  }\n}\n\n@mixin input-highlight {\n  &.input-highlight {\n    --input-button-margin: var(--spacing-scale-2x);\n    --input-padding: 0 var(--spacing-scale-3x);\n    --input-padding-button: var(--spacing-scale-7x);\n    --input-padding-icon: var(--spacing-scale-7x);\n    --input-size: var(--input-highlight);\n\n    input {\n      background-color: var(--gray-2);\n      border-color: transparent;\n      padding-left: var(--spacing-scale-3x);\n      padding-right: var(--spacing-scale-3x);\n    }\n\n    .input-icon {\n      margin-left: var(--spacing-scale-3x);\n\n      + input {\n        padding-left: var(--spacing-scale-7x);\n      }\n    }\n  }\n}\n\n// TODO: Este mixin ainda é necessário?\n@mixin input-autocomplete {\n  .#{$prefix}list {\n    box-shadow: var(--surface-shadow-md);\n    max-height: 530px;\n    overflow: auto;\n    position: absolute;\n    width: 100%;\n    z-index: var(--z-index-layer-2);\n\n    @include scrollbar;\n\n    .#{$prefix}item {\n      --item-padding-y: var(--spacing-scale-2x);\n      @include hover(\"color\");\n\n      &:not(:first-child) {\n        border-top: var(--surface-width-sm) solid var(--border-color);\n      }\n    }\n  }\n}\n\n@mixin input-states {\n  // Borda do input\n  @each $color in \"success\", \"danger\", \"warning\", \"info\" {\n    &.#{$color},\n    &[data-#{$color}] {\n      input {\n        border-color: var(--#{$color});\n        border-width: 2px;\n      }\n    }\n  }\n\n  input {\n    // Hover\n    @include hover(\"color\");\n    // Foco tênue\n    &:focus,\n    &:focus-visible,\n    &.focus-visible {\n      @include focus-soft;\n    }\n  }\n  // Componente Message (Feedback)\n  .feedback {\n    margin-bottom: var(--spacing-scale-half);\n  }\n}\n\n@mixin input-densities {\n  @each $size in small, medium, large {\n    &.#{$size},\n    &[data-#{$size}] {\n      --input-size: var(--input-#{$size});\n    }\n  }\n}\n\n@mixin input-dark {\n  &.inverted,\n  &.dark-mode {\n    &,\n    label {\n      --color: var(--color-dark);\n      --focus-color: var(--focus-color-dark);\n    }\n  }\n}\n\n@mixin input-dark-mode {\n  &.inverted,\n  &.dark-mode {\n    .#{$prefix}input {\n      &,\n      label {\n        --color: var(--color-dark);\n        --focus-color: var(--focus-color-dark);\n      }\n    }\n  }\n}\n"],"names":[],"ignoreList":[],"sourceRoot":""}