@use 'state';

.ic-btn-surface,
.ic-btn-primary,
.ic-btn-caution,
.ic-btn-danger {
  padding: var(--sp-extra-tight);
  border: none;
  border-radius: var(--bo-radius);
  background-color: transparent;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  @include state.disabled;
}

@mixin color($color) {
  .ic-raw {
    background-color: $color;
  }
}
@mixin focus($color) {
  &:focus {
    outline: none;
    background-color: $color;
  }
}

.ic-btn-surface {
  @include color(var(--ic-surface-normal));
  @include state.hover(var(--bg-surface-hover));
  @include focus(var(--bg-surface-hover));
  @include state.active(var(--bg-surface-active));
}

.ic-btn-tippy {
  padding: var(--sp-extra-tight) var(--sp-normal);
  background-color: var(--bg-tooltip);
  border-radius: var(--bo-radius);
  box-shadow: var(--bs-popup);

  .text {
    color: var(--tc-tooltip);
  }
}