.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.quick-exit {
  align-items: center;
  background-color: #b00020;
  border: 2px solid transparent;
  border-radius: .25rem;
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  height: 48px;
  justify-content: center;
  min-width: 110px;
  padding: 0 1rem;
  position: fixed;
  right: 1rem;
  text-decoration: none;
  top: 1rem;
  transition: background-color 120ms ease-in-out, transform 120ms ease-in-out;
  z-index: 10000;
}

.quick-exit:hover { background-color: #8a001a; }
.quick-exit:active { transform: scale(0.98); }
.quick-exit:focus-visible {
  box-shadow: 0 0 0 4px #1a1a1a;
  outline: 3px solid #ffffff;
  outline-offset: 3px;
}

@media (max-width: 1199.98px) {
	.quick-exit {
		border-radius: 0;
	}
}

/* Account for the WordPress admin bar */
.admin-bar.menu-110 #quick-exit {
	top: 35px;
}

@media (min-width: 1200px) {
	.admin-bar.menu-110 #quick-exit {
			top: 85px;
	}
}

@media (prefers-reduced-motion: reduce) {
  .quick-exit { transition: none; }
}

@media (forced-colors: active) {
  .quick-exit {
    background-color: ButtonFace;
    border-color: ButtonText;
    color: ButtonText;
  }
  .quick-exit:focus-visible {
    box-shadow: none;
    outline: 2px solid Highlight;
  }
}

@media print {
  .quick-exit { display: none !important; }
}

/* Hide page content for privacy during exit */
body.quick-exiting *:not(#quick-escape):not(#quick-escape *) {
  visibility: hidden !important;
}
