.fh-boot {
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: var(--fh-canvas, #f6f3ee);
  color: var(--fh-text, #24282b);
  font:
    400 16px/1.5 Inter,
    system-ui,
    sans-serif;
}
.fh-boot-content {
  max-width: 28rem;
  display: grid;
  justify-items: center;
  gap: 24px;
  text-align: center;
}
.fh-boot-content img {
  padding: 10px;
  box-sizing: content-box;
}
.fh-boot p {
  margin: 0;
}
.fh-boot [role='status'] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.fh-boot-logo-dark {
  display: none;
}
[data-theme='dark'] .fh-boot {
  background: var(--fh-canvas, #191d20);
  color: var(--fh-text, #f3f0ea);
}
[data-theme='dark'] .fh-boot-logo-light {
  display: none;
}
[data-theme='dark'] .fh-boot-logo-dark {
  display: block;
}
.fh-boot-indicator {
  width: 18px;
  height: 18px;
  border: 2px solid var(--fh-control, #7f8580);
  border-right-color: transparent;
  border-radius: 50%;
  animation: fh-boot-spin 0.8s linear infinite;
}
.fh-boot button {
  min-height: 44px;
  margin-top: 16px;
  padding: 10px 20px;
  border: 1px solid var(--fh-control, #7f8580);
  border-radius: 10px;
  background: var(--fh-surface, white);
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.fh-boot button:focus-visible {
  outline: 3px solid var(--fh-focus, #b73532);
  outline-offset: 3px;
}
.fh-boot [hidden] {
  display: none;
}
@keyframes fh-boot-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .fh-boot-indicator {
    animation: none;
  }
}
