.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background: Canvas;
  clip: auto !important;
  clip-path: none;
  color: CanvasText;
  display: block;
  height: auto;
  left: 0.5rem;
  padding: 0.75rem 1rem;
  top: 0.5rem;
  width: auto;
  z-index: 100000;
}

:focus-visible {
  outline: 0.1875rem solid currentColor;
  outline-offset: 0.1875rem;
}

.resacore-checkbox {
  position: relative;
  display: inline-flex;
  gap: 0.625rem;
  align-items: center;
  cursor: pointer;
}

.resacore-checkbox > input[type="checkbox"] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.resacore-checkbox__box {
  position: relative;
  box-sizing: border-box;
  width: 1.375rem;
  height: 1.375rem;
  flex: 0 0 1.375rem;
  border: 0.125rem solid var(--resacore-control-border, currentColor);
  border-radius: var(--resacore-control-radius, 0.375rem);
  background: var(--resacore-control-surface, Canvas);
}

.resacore-checkbox > input[type="checkbox"]:checked + .resacore-checkbox__box {
  border-color: var(--resacore-control-accent, currentColor);
  background: var(--resacore-control-accent, currentColor);
}

.resacore-checkbox > input[type="checkbox"]:checked + .resacore-checkbox__box::after {
  position: absolute;
  top: 0.1875rem;
  left: 0.375rem;
  width: 0.3125rem;
  height: 0.625rem;
  border: solid var(--resacore-control-check, Canvas);
  border-width: 0 0.125rem 0.125rem 0;
  content: "";
  transform: rotate(45deg);
}

.resacore-checkbox > input[type="checkbox"]:focus-visible + .resacore-checkbox__box {
  outline: 0.1875rem solid var(--resacore-control-focus, currentColor);
  outline-offset: 0.1875rem;
}

.resacore-checkbox > input[type="checkbox"]:disabled ~ * {
  opacity: 0.55;
  cursor: not-allowed;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
  }
}
