/* Reviewed desktop keyboard and short viewport layouts, including page zoom. */
#limited-abyss-command-picker-dialog .limited-abyss-command-option:focus-visible {
  outline: 2px solid var(--gold-strong);
  outline-offset: -3px;
}
.chat-safety-dialog textarea:focus-visible,
.chat-drawer.open #chat-input:focus-visible {
  outline: 2px solid var(--gold-strong);
  outline-offset: 2px;
}
html[data-color-theme]:not([data-color-theme="default"]) #adventurer-card-dialog .adventurer-card-close:focus-visible {
  outline-color: var(--ga-theme-gold-strong, var(--gold-strong));
}
html[data-color-theme]:not([data-color-theme="default"]) .floor-event-card :is(.floor-event-choice, .floor-event-defer, .floor-event-leave):not(.danger-button):not(.gold-button):focus-visible {
  outline-color: var(--gold-strong);
}

@media (pointer: fine) and (max-height: 650px) {
  :is(#sale-dialog, .login-board-dialog) {
    height: auto;
    min-height: 0;
    max-height: calc(100dvh - 32px);
    display: block;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}

@media (pointer: fine) and (max-height: 350px) {
  :is(
    .build-preset-delete-dialog, .settings-reset-dialog, .arena-kit-dialog,
    .party-summon-dialog, #limited-abyss-command-picker-dialog,
    .party-settings-dialog, .battle-tactics-dialog, .header-stamina-recovery-dialog,
    .home-room-shop, .home-gramophone-dialog, .home-letter-dialog,
    .monster-companions-dialog, .outfit-preview-dialog
  ) {
    height: auto;
    min-height: 0;
    max-height: calc(100dvh - 32px);
    display: block;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .monster-companions-dialog .monster-member-picker {
    position: fixed;
    top: 16px;
    right: 16px;
    bottom: auto;
    left: 16px;
    max-height: calc(100dvh - 32px);
    display: block;
    overflow-y: auto;
  }
  body.battle-active .battle-shell :is(.floor-clear-notice.floor-event-discovery-notice, .post-battle-actions.arena-result-actions) {
    position: fixed;
    top: 16px;
    right: 16px;
    bottom: auto;
    left: 16px;
    width: auto;
    height: auto;
    min-height: 0;
    max-height: calc(100dvh - 32px);
    display: block;
    overflow-y: auto;
    overscroll-behavior: contain;
    transform: none;
  }
  .chat-drawer.open {
    top: 8px;
    bottom: 8px;
    height: auto;
    min-height: 0;
    max-height: calc(100dvh - 16px);
    display: block;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .chat-drawer.open .chat-appearance { max-height: 72px; }
  .chat-drawer.open .chat-feed-panel { display: block; }
  .chat-drawer.open .chat-messages { flex: none; height: 72px; overflow-y: auto; }
}
