a,
.link-primary
{
  color: $link-color-primary;
  font-weight: $font-weight-semi-bold;
  text-decoration: none;

  &:hover
  {
    color: $link-color-primary;
    text-decoration: underline;
  }
}

button.btn-text
{
  outline: unset;
  border: 0;
  padding: 0;
  background: none;
  color: $accent-color-primary;
  font-weight: $font-weight-semi-bold;

  &:not(:disabled):not(.disabled):hover
  {
    color: $accent-color-primary;
    text-decoration: underline;
  }

  &:disabled
  {
    outline: unset;
    border: 0;
    padding: 0;
    background: none;
    color: $font-color-secondary;
    font-weight: $font-weight-regular;
  }
}

.btn
{
  border-radius: 0;
  padding: 5px 10px;
  font-size: $font-size-md;
  white-space: nowrap;

  &:not(:disabled):not(.disabled):active,
  &:not(:disabled):not(.disabled):not(.nav-link).active
  {
    border-color: transparent;
    background: $storm;
    color: $coconut;
  }
}

.btn-primary
{
  border-color: transparent;
  background: $accent-color-primary;
  color: $coconut;
}

.btn-outline-primary
{
  border-color: $accent-color-primary;
  background: $coconut;
  color: $accent-color-primary;
}

.btn-primary,
.btn-outline-primary
{
  &:not(:disabled):not(.disabled):hover
  {
    border-color: transparent;
    background: $accent-color-primary-hover;
    color: $coconut;
  }
}

.btn-danger
{
  border-color: transparent;
  background: $feedback-color-warning;
  color: $coconut;
}

.btn-outline-danger
{
  border-color: $feedback-color-warning;
  background: $coconut;
  color: $feedback-color-warning;
}

.btn-danger,
.btn-outline-danger
{
  &:not(:disabled):not(.disabled):hover
  {
    border-color: transparent;
    background: $feedback-color-warning-hover;
    color: $coconut;
  }

  &:not(:disabled):not(.disabled):focus
  {
    box-shadow: $box-shadow-focus-warning;
  }
}

.btn-sm
{
  height: 22px;
  min-width: 60px;
  padding: 1px 6px 2px;
}

.btn-md
{
  min-width: 100px;
}

.btn-lg
{
  min-width: 150px;
}

.btn-block
{
  width: 100%;
}

// TODO: Uncomment when ready to finish toggle styling
/* .btn-group-toggle
{
  display: flex;
}

.btn-toggle
{
  display: block;
  border-color: $border-color-primary;
  background: $coconut;
  color: $font-color-secondary;

  &.btn.btn:not(:disabled).active,
  &:hover
  {
    background: $cornflower;
  }

  &.btn.btn:not(:disabled).active
  {
    border-color: $border-color-primary;
    font-weight: $font-weight-bold;
    color: $font-color-primary;
    box-shadow: inset 0 0 4px 0 $ultramarine;
  }
} */

.btn-input-addon
{
  min-width: 30px;
  min-height: 30px;
  border-radius: 0;
  border: 1px solid $accent-color-primary;
  background: $coconut;
  color: $accent-color-primary;

  &:hover
  {
    border-color: $accent-color-primary-hover;
    background: $accent-color-primary-hover;
    color: $coconut;
  }

  &.btn-input-addon-clear
  {
    border-color: $border-color-primary;
    border-left: 0;

    &:hover
    {
      border-color: $border-color-primary;
      background: $coconut;
      color: $accent-color-primary-hover;
    }
  }

  & i:nth-of-type(2n)
  {
    // for input addons with one button and two icons
    // e.g.: date + time pickers with calendar and clock icons
    padding-left: 8px;
  }
}

.btn-icon
{
  width: 30px;
  height: 30px;
  padding: 5px;
}

.btn-icon-inline
{
  width: auto;
  height: auto;
  border: 0;
  padding: 0;
  background: transparent;
  color: $accent-color-primary;

  &:hover
  {
    color: $accent-color-primary-hover;
  }

  &.btn-icon-inline-secondary
  {
    color: $font-color-secondary;

    &:hover
    {
      color: $font-color-primary;
    }
  }

  &.btn-icon-inline-lg
  {
    font-size: $font-size-lg;
  }
}

.btn-icon:disabled,
.btn-icon[disabled]
{
  border: 1px solid $border-color-secondary;
  background: $mist;
  color: $font-color-secondary;
  font-weight: $font-weight-regular;
  cursor: not-allowed;
}

button:disabled,
button[disabled],
.btn:disabled,
.btn[disabled]
{
  opacity: 1;
  border: 1px solid $border-color-secondary;
  background: $mist;
  color: $font-color-secondary;
  cursor: not-allowed;
}

.btn-object-page-header
{
  margin-top: 2px;
}