/* Shared interaction rules; colors inherit the existing light/dark design system. */
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--brand-text);
  outline-offset: 4px;
}
:where(.panel, .form-grid, .portal-work, .dt-ws-panel) { min-width: 0; }
.portal-sidebar { min-width: 0; max-width: 100%; }
.portal-sidebar nav { max-width: 100%; }
.portal-identity .dt-avatar { display: inline-grid; line-height: 1; font-size: 18px; }
:where(.panel, .portal-work) :where(input, select, textarea) { max-width: 100%; }
:where(.panel, .dt-ws-header, .flash) { overflow-wrap: anywhere; }
@media (max-width: 690px) {
  .portal-layout { grid-template-columns: minmax(0, 1fr); }
  :where(input, select, textarea) { font-size: 16px; }
  :where(.theme-btn, .nav-toggle) { min-width: 44px; min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
}
