html {
  height: 100%;
}

body {
  background: var(--bs-baton-body-bg);
  font-weight: 300;
  min-height: 100%;
  opacity: 0;
  transition: opacity 0.2s linear;

  &.baton-ready {
    opacity: 1;
  }
}

.baton-startup-overlay {
  background: var(--bs-baton-body-bg);
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}

.baton-logo-light {
  display: none;
}

[data-bs-theme='dark'] .baton-logo-light {
  display: inline;
}

[data-bs-theme='dark'] .baton-logo-dark {
  display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--bs-baton-font-display);
}

a {
  text-decoration: none;

  &:hover {
    text-decoration: underline;
  }

  &.btn {
    &:hover {
      text-decoration: none;
    }
  }
}

button,
input,
optgroup,
select,
textarea {
  font-family: $font-family-sans-serif;
}

input[type='checkbox'] {
  @extend .form-check-input;
}

.clear {
  clear: both;
}

.hidden {
  display: none !important;
}

// remove django 3.1 sidebar
#toggle-nav-sidebar,
#nav-sidebar {
  display: none !important;
}

@keyframes bounce {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  100% {
    transform: translateY(-5px) rotate(5deg);
  }
}

/* skip to content link */
.skip-to-content-link {
  position: absolute;
  top: -999px;
  margin: 5px;
  padding: 5px;
  z-index: 1;
}

/* hide dark mode switch */
svg.base-svgs {
  display: none;
}

/* Define the spinning animation */
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Apply the animation to your icon class */
%icon-spin {
  display: inline-block; /* Ensures transform works correctly on inline elements like <span> */
  animation-name: spin;
  animation-duration: 2s; /* Adjust speed: 2 seconds per full spin */
  animation-iteration-count: infinite; /* Spin continuously */
  animation-timing-function: linear; /* Constant speed spin */
}

.icon-spin {
  @extend %icon-spin;
}
