/* GENERATED by scripts/build/tailwind/build-tailwind.ts — edit frameworks/tailwind/Theme.css or a manifest, not this file. */
@import '../../../Prelude.generated.css';

@layer utilities {
  .arena-button__root {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: var(--gap-control);
    border-radius: var(--r-control);
    border-style: var(--tw-border-style);
    border-width: var(--bw-control);
    font-family: var(--font-body);
    --tw-font-weight: var(--fw-control);
    font-weight: var(--fw-control);
    --tw-tracking: var(--ls-normal);
    letter-spacing: var(--ls-normal);
    --tw-shadow: var(--shadow-control-rest);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-outline-style: none;
    outline-style: none;
    transition: background var(--dur-hover) var(--ease-hover),translate var(--dur-hover) var(--ease-hover),scale var(--dur-hover) var(--ease-hover),box-shadow var(--dur-state) var(--ease-state);
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--lift-control) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
    &:focus-visible {
      --tw-shadow: inset 0 0 0 var(--focus-width) var(--focus-ring);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:active {
      scale: var(--press-scale);
    }
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      opacity: 45%;
    }
    @media (prefers-reduced-motion: reduce) {
      &:active {
        --tw-scale-x: 100%;
        --tw-scale-y: 100%;
        --tw-scale-z: 100%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .arena-button__spinner {
    display: inline-block;
    width: calc(var(--sp-1) * 3.5);
    height: calc(var(--sp-1) * 3.5);
    animation: arena-btn-spin var(--loop-spin) linear infinite;
    @media (prefers-reduced-motion: reduce) {
      animation-duration: var(--loop-reduced);
    }
    border-radius: var(--r-pill);
    border-style: var(--tw-border-style);
    border-width: var(--bw-strong);
    border-color: currentcolor;
    border-top-color: transparent;
  }
  .arena-button__root--variant-primary {
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: var(--color-primary-content);
    &:hover {
      @media (hover: hover) {
        --tw-shadow: var(--shadow-control-raised);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .arena-button__root--variant-secondary {
    border-color: var(--edge-control);
    background-color: var(--color-base-200);
    color: var(--ink-body);
    &:hover {
      @media (hover: hover) {
        background-color: var(--fill-hover);
      }
    }
  }
  .arena-button__root--variant-ghost {
    border-color: transparent;
    background-color: transparent;
    color: var(--ink-body);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--ink-body) var(--level-ink-body), transparent);
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-200);
      }
    }
  }
  .arena-button__root--variant-danger {
    border-color: var(--color-error);
    background-color: transparent;
    color: var(--color-error);
    &:hover {
      @media (hover: hover) {
        background-color: var(--fill-hover);
      }
    }
  }
  .arena-button__root--size-sm {
    height: var(--dz-ctl-h-sm);
    padding-inline: var(--pad-control-x);
    font-size: var(--dz-text-md);
  }
  .arena-button__root--size-md {
    height: var(--dz-ctl-h);
    padding-inline: calc(var(--sp-1) * 4.5);
    font-size: var(--dz-text);
  }
  .arena-button__root--size-lg {
    height: var(--dz-ctl-h-lg);
    padding-inline: calc(var(--sp-1) * 6.5);
    font-size: var(--dz-text);
  }
  .arena-button__root--full-true {
    width: 100%;
  }
  .arena-button__root--full-false {
    width: auto;
  }
}
