{"version":3,"file":"components/magicbutton/magicbutton.min.css","mappings":"AAKA,iBCOE,gCAAiC,CACjC,sCAAuC,CACvC,uCAAwC,CACxC,sCAAuC,CACvC,gDAAiD,CACjD,6CAA8C,CAC9C,8CAA+C,CAC/C,6CAA8C,CAC9C,sCAAuC,CAIvC,kBAAmB,CACnB,8BAA+B,CAC/B,mBAAoB,CACpB,mCAAoC,CACpC,mBAAoB,CACpB,gCAAiC,CACjC,gEDbF,CC6BI,uBACE,gCACA,+CD3BN,CCyBI,wBACE,iCACA,gDDvBN,CCqBI,uBACE,gCACA,+CDnBN,CEtBE,oKDgDE,+BDjBJ,CA9BE,4BGKA,8EAAiF,CACjF,+BAAgC,CAChC,+CAAgD,CAChD,uBAAwB,CACxB,sCAAuC,CACvC,wCH4BF,CItCI,gEACE,mHJwCN,CK1CI,iEACE,uHL4CN","sources":["webpack://core/./src/components/magicbutton/_magicbutton.scss","webpack://core/./src/components/magicbutton/_mixins.scss","webpack://core/./src/partial/scss/mixins/_icons.scss","webpack://core/./src/components/button/_mixins.scss","webpack://core/./src/partial/scss/mixins/_hover.scss","webpack://core/./src/partial/scss/mixins/_active.scss"],"sourcesContent":["@use \"sass:math\";\n @import \"../../partial/scss/base\";\n \n@import \"mixins\";\n\n.#{$prefix}magic-button {\n  @include magic-configs;\n\n  .#{$prefix}button {\n    @include button-magicbutton;\n  }\n}\n","// Dependências\n@import \"../button/mixins\";\n\n// Mixins\n@mixin magic-configs {\n  @include magic-tokens;\n  @include magic-default;\n  @include magic-sizes;\n  @include magic-icons;\n}\n\n@mixin magic-tokens {\n  --magic-size: var(--magic-medium);\n  --magic-small: var(--spacing-scale-4xh);\n  --magic-medium: var(--spacing-scale-5xh);\n  --magic-large: var(--spacing-scale-6xh);\n  --magic-support-size: var(--magic-support-medium);\n  --magic-support-small: var(--spacing-scale-7x);\n  --magic-support-medium: var(--spacing-scale-8x);\n  --magic-support-large: var(--spacing-scale-9x);\n  --magic-z-index: var(--z-index-layer-1);\n}\n\n@mixin magic-default {\n  align-items: center;\n  background-color: var(--gray-5);\n  border-radius: 100em;\n  box-shadow: var(--surface-shadow-md);\n  display: inline-flex;\n  height: var(--magic-support-size);\n  padding: calc((var(--magic-support-size) - var(--magic-size)) * 0.5);\n}\n\n@mixin magic-button {\n  .#{$prefix}button {\n    background-color: var(--green-cool-vivid-50);\n    border: var(--gray-5) solid calc((var(--magic-support-size) - var(--magic-size)) * 0.5);\n    box-shadow: var(--surface-shadow-md);\n    color: var(--color-dark);\n    font-size: var(--font-size-scale-up-02);\n    z-index: var(--magic-z-index);\n  }\n}\n\n@mixin magic-sizes {\n  @each $size in small, medium, large {\n    &.#{$size} {\n      --magic-size: var(--magic-#{$size});\n      --magic-support-size: var(--magic-support-#{$size});\n    }\n  }\n}\n\n@mixin magic-icons {\n  @include icon {\n    --icon-size: var(--icon-size-lg);\n  }\n}\n","@mixin icon-size($value) {\n  @include icon {\n    --icon-size: #{$value};\n  }\n}\n\n@mixin icon {\n  .svg-inline--fa,\n  .fa,\n  .fab,\n  .fad,\n  .fal,\n  .far,\n  .fas {\n    @content;\n  }\n}\n","@mixin button-configs {\n  @include button-tokens;\n  @include button-default;\n  @include button-block;\n  @include button-circle;\n  @include button-sizes;\n  @include button-emphasis;\n  @include button-colors;\n  @include button-states;\n  @include button-dark;\n}\n\n@mixin button-magicbutton {\n  --focus-offset: calc((var(--magic-support-size) - var(--magic-size)) * 0.5 + 4px);\n  --button-size: var(--magic-size);\n  background-color: var(--interactive-alternative);\n  color: var(--color-dark);\n  font-size: var(--font-size-scale-up-02);\n  font-weight: var(--font-weight-semi-bold);\n\n  &:not(:disabled) {\n    @include hover(\"color-dark\");\n    @include active(\"color-dark\");\n  }\n}\n\n@mixin button-tokens {\n  --button-radius: 100em;\n  --button-xsmall: 24px;\n  --button-small: 32px;\n  --button-medium: 40px;\n  --button-large: 48px;\n  --button-size: var(--button-medium);\n}\n\n@mixin button-default {\n  align-items: center;\n  background-color: transparent;\n  border: 0;\n  border-radius: var(--button-radius);\n  color: var(--interactive);\n  cursor: pointer;\n  display: inline-flex;\n  font-size: var(--font-size-scale-up-01);\n  font-weight: var(--font-weight-semi-bold);\n  height: var(--button-size);\n  justify-content: center;\n  overflow: hidden;\n  padding: 0 var(--spacing-scale-3x);\n  position: relative;\n  text-align: center;\n  vertical-align: middle;\n  white-space: nowrap;\n  width: auto;\n}\n\n@mixin button-block {\n  &.block {\n    width: 100%;\n  }\n  @each $breakpoint in \"sm\", \"md\", \"lg\", \"xl\" {\n    @include media-breakpoint-up(#{$breakpoint}) {\n      &.block-#{$breakpoint} {\n        width: 100%;\n      }\n      &.auto-#{$breakpoint} {\n        width: auto;\n      }\n    }\n  }\n}\n\n@mixin button-circle {\n  &.circle,\n  &[circle],\n  &.is-circle {\n    border-radius: 50%;\n    padding: 0;\n    width: var(--button-size);\n  }\n}\n\n@mixin button-sizes {\n  @each $size in \"xsmall\", \"small\", \"medium\", \"large\" {\n    &.#{$size},\n    &[#{$size}],\n    &.is-#{$size} {\n      --button-size: var(--button-#{$size});\n    }\n  }\n}\n\n@mixin button-emphasis {\n  &.primary,\n  &[primary],\n  &.is-primary {\n    --interactive-rgb: var(--color-dark-rgb);\n    background-color: var(--interactive-light);\n    color: var(--color-dark);\n  }\n\n  &.secondary,\n  &[secondary],\n  &.is-secondary {\n    background-color: var(--background-light);\n    border: 1px solid var(--interactive);\n  }\n}\n\n@mixin button-colors {\n  @each $color in \"danger\", \"success\", \"warning\", \"info\" {\n    &.#{$color},\n    &[#{$color}],\n    &.is-#{$color} {\n      background-color: var(--#{$color});\n      @if $color != \"warning\" {\n        --interactive-rgb: var(--color-dark-rgb);\n        color: var(--color-dark);\n      } @else {\n        --interactive-rgb: var(--color-light-rgb);\n        color: var(--color-light);\n      }\n    }\n  }\n}\n\n@mixin button-states {\n  &:disabled {\n    cursor: not-allowed;\n  }\n\n  &:not(:disabled) {\n    --focus-offset: var(--spacing-scale-half);\n    @include focus;\n    @include hover;\n    @include active;\n  }\n\n  &.active,\n  &.is-active,\n  &[active] {\n    --hover: var(--hover-dark);\n    background-color: var(--active);\n    color: var(--color-dark);\n  }\n\n  &.loading {\n    color: transparent !important;\n    cursor: progress;\n\n    &:not(:disabled) {\n      &:hover {\n        background-image: none;\n      }\n    }\n\n    &::before {\n      border-color: var(--interactive) var(--interactive) transparent;\n      border-style: solid;\n    }\n\n    &.primary,\n    &.danger,\n    &.success,\n    &.info {\n      &::before {\n        border-color: var(--background) var(--background) transparent;\n      }\n    }\n  }\n}\n\n@mixin button-dark {\n  &.inverted,\n  &.is-inverted,\n  &[inverted],\n  &.dark-mode {\n    @include dark-mode;\n    color: var(--interactive-dark);\n\n    &.primary,\n    &[primary],\n    &.is-primary {\n      --interactive-rgb: var(--background-dark-rgb);\n      background-color: var(--interactive-dark);\n      color: var(--background-dark);\n    }\n\n    &.secondary,\n    &[secondary],\n    &.is-secondary {\n      background-color: var(--background-dark);\n    }\n\n    &.active {\n      --hover: var(--hover-light);\n      --interactive-rgb: var(--active-rgb);\n      background-color: var(--background-light);\n      color: var(--active);\n    }\n  }\n}\n\n@mixin button-dark-mode {\n  .#{$prefix}button {\n    &.primary,\n    &[primary],\n    &.is-primary {\n      @include light-mode($interactive-rgb: \"background-dark-rgb\");\n      background-color: var(--interactive-dark);\n      color: var(--background-dark);\n    }\n\n    &.secondary,\n    &[secondary],\n    &.is-secondary {\n      background-color: var(--background-dark);\n    }\n  }\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","/// Aplica active: feedback ao clicar no elemento\n/// @example scss - Uso prático\n///  a {\n///    @include active;\n///  }\n@mixin active($color: \"interactive\") {\n  &:not(:disabled) {\n    &:active {\n      background-image: linear-gradient(\n        rgba(var(--#{$color}-rgb), var(--pressed)),\n        rgba(var(--#{$color}-rgb), var(--pressed))\n      );\n    }\n  }\n}\n"],"names":[],"ignoreList":[],"sourceRoot":""}