/* Room for the floating launcher at the end of every page. */
body {
  padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px));
}
.help-launcher {
  position: fixed;
  right: max(18px, env(safe-area-inset-right, 0px));
  bottom: max(18px, env(safe-area-inset-bottom, 0px));
  width: 48px;
  height: 48px;
  border-radius: 50%;
  padding: 0;
  font-size: 23px;
  font-weight: 700;
  background: var(--accent);
  color: var(--on-accent);
  border: 1px solid var(--line);
  box-shadow: 0 4px 20px var(--shadow);
  z-index: 70;
}
body:has(dialog[open]) .help-launcher,
body:has(#toast.visible) .help-launcher {
  visibility: hidden;
}
.help-panel {
  margin: 0;
  inset: auto 16px max(16px, env(safe-area-inset-bottom, 0px)) auto;
  width: min(480px, calc(100vw - 32px));
  max-height: min(760px, calc(100dvh - 32px));
  padding: 24px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.help-panel [hidden] {
  display: none !important;
}
.help-panel .close {
  min-width: 44px;
  min-height: 44px;
}
.help-faq details {
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
}
.help-faq summary {
  cursor: pointer;
  font-weight: 600;
  line-height: 1.5;
}
.help-faq p {
  color: var(--muted);
  line-height: 1.65;
  font-size: 14px;
  margin-bottom: 0;
}
.help-form-entry {
  margin-top: 24px;
}
.help-email-fallback {
  margin-top: 24px;
}
.help-email-fallback label {
  display: block;
  margin-bottom: 8px;
  line-height: 1.5;
}
#help-address {
  width: 100%;
  font-size: 14px;
}
#help-copy {
  margin-top: 12px;
}
#help-feedback {
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
#help-feedback:empty {
  display: none;
}
.help-panel .btn {
  white-space: normal;
}
@media (max-width: 600px) {
  .help-panel {
    inset-inline: 12px;
    width: calc(100vw - 24px);
    padding: 20px;
    max-height: calc(100dvh - 24px);
  }
}
