.support-request-trigger {
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
  flex-shrink: 0;
}

.support-request-dialog {
  box-sizing: border-box;
  width: min(460px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  padding: 30px;
  border: 1px solid #e4e4e7;
  border-radius: 20px;
  background: #fff;
  color: #22232a;
  box-shadow: 0 24px 80px #17192333;
  font: 15px/1.5 "Funnel Sans", sans-serif;
}

.support-request-dialog::backdrop { background: #17192366; }
.support-request-dialog h2 { margin: 0 32px 6px 0; font-size: 26px; line-height: 1.2; }
.support-request-dialog p { margin: 0 0 22px; }
.support-request-dialog #support-request-description { color: #62636e; }
.support-request-close { position: absolute; top: 14px; right: 14px; width: 34px; height: 34px; border: 0; border-radius: 50%; background: #f4f4f5; color: #42434b; font: 24px/1 sans-serif; cursor: pointer; }
.support-request-methods { margin: 0 0 20px; padding: 0; border: 0; min-width: 0; }
.support-request-methods legend, .support-request-field > label { display: block; margin-bottom: 8px; font-weight: 600; }
.support-request-options { display: flex; gap: 8px; }
.support-request-options label { flex: 1; position: relative; cursor: pointer; }
.support-request-options input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.support-request-options span { display: block; padding: 10px 4px; border: 1px solid #d8d8df; border-radius: 10px; text-align: center; font-size: 14px; }
.support-request-options input:checked + span { background: #fff0f3; color: #9d2743; border-color: #d73c5d; }
.support-request-options input:focus-visible + span, .support-request-dialog :is(button, input, textarea):focus-visible { outline: 2px solid #ae2949; outline-offset: 3px; }
.support-request-field { margin-bottom: 20px; }
.support-request-field :is(input, textarea) { box-sizing: border-box; width: 100%; padding: 11px 12px; border: 1px solid #d8d8df; border-radius: 10px; background: #fff; color: #22232a; font: inherit; font-size: 16px; }
.support-request-field textarea { resize: vertical; min-height: 90px; }
.support-request-field small { display: block; margin-top: 6px; color: #62636e; font-size: 13px; }
.support-request-submit { width: 100%; min-height: 44px; padding: 11px 16px; border: 0; border-radius: 10px; background: #b52d4d; color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.support-request-submit:hover { background: #9d2743; }
.support-request-submit:disabled { opacity: 0.65; cursor: wait; }
.support-request-dialog .support-request-error { color: #a32435; margin-bottom: 14px; }
.support-request-honeypot, .support-request-dialog [hidden] { display: none !important; }

@media (max-width: 600px) {
  .support-request-dialog { padding: 24px; }
  .support-request-app-menu { gap: 6px; padding-inline: 10px; }
  .support-request-app-menu .top-menu-left { flex: 1; gap: 6px; }
  .support-request-app-menu .top-menu-brand { display: none; }
  .support-request-app-menu .top-menu-project-controls { flex: 1; min-width: 0; gap: 4px; }
  .support-request-app-menu .top-menu-project-switcher { flex: 1; min-width: 0; }
  .support-request-app-menu .top-menu-project-switcher-main { flex: 1; min-width: 0; width: 0; padding-inline: 6px; }
  .support-request-app-menu .top-menu-split-button-label { min-width: 0; }
  .support-request-app-menu .top-menu-project-context { max-width: 100%; }
  .support-request-app-menu .top-menu-project-context > * { max-width: 100%; }
  .support-request-app-menu .top-menu-split-button-toggle { min-width: 24px; padding-inline: 4px; }
  .support-request-app-menu .top-menu-project-settings { width: 26px; }
  .support-request-app-menu .top-menu-nav { margin: 0; flex-shrink: 0; }
  .support-request-app-menu .top-menu-section-menu > .top-menu-section-menu-toggle { min-width: 0; padding-inline: 6px; font-size: 12px; }
  .top-menu-meta:has(.support-request-trigger) { gap: 6px; }
  .top-menu-meta:has(.support-request-trigger) .top-menu-user { display: none; }
  .top-menu-meta .support-request-trigger { padding-inline: 8px; font-size: 12px; }
}
