/* Keep native popup trigger keyboard focus clear in both themes. */
button[data-rac][aria-expanded]:focus-visible {
  outline: 2px solid var(--color-border-focus-ring);
  outline-offset: 2px;
}

/* The native Settings dialog is created in a body portal. Keep its desktop
   structure, but give both navigation and form controls room on small screens. */
@media (max-width: 639px) {
  [role="dialog"][aria-label="Settings"] {
    flex-direction: column;
    height: min(760px, calc(100dvh - 32px));
  }
  [role="dialog"][aria-label="Settings"] > nav[aria-label="Settings sections"] {
    width: 100%;
    max-height: 80px;
    flex-direction: row;
    gap: 12px;
    border-right: 0;
    border-bottom: 1px solid var(--color-separator-border);
    padding: 8px;
    overflow-x: auto;
    overflow-y: hidden;
  }
  [role="dialog"][aria-label="Settings"] > nav > div {
    width: max-content;
    flex: none;
    padding-top: 0;
  }
  [role="dialog"][aria-label="Settings"] > nav > div > span {
    display: none;
  }
  [role="dialog"][aria-label="Settings"] > nav > div > div {
    flex-direction: row;
  }
  [role="dialog"][aria-label="Settings"] > nav button {
    width: auto;
    flex: none;
  }
  [role="dialog"][aria-label="Settings"] > div {
    min-height: 0;
  }
  [role="dialog"][aria-label="Settings"] > div > div:first-child {
    padding: 16px 16px 12px;
  }
  [role="dialog"][aria-label="Settings"] > div > div:last-child > div:first-child {
    padding-right: 16px;
    padding-bottom: 16px;
    padding-left: 16px;
  }
  [role="dialog"][aria-label="Settings"] [class*="min-h-[52px]"] {
    flex-wrap: wrap;
    gap: 8px;
  }
  [role="dialog"][aria-label="Settings"] [class*="min-h-[52px]"] > div:first-child {
    flex: 1 1 180px;
  }
  [role="dialog"][aria-label="Settings"] [class*="w-[202px]"] {
    max-width: 100%;
  }
}
