.lobby-page .inventory-dialog[open] {
  display: flex;
  flex-direction: column;
  width: min(820px, calc(100% - 24px));
  height: min(860px, calc(100dvh - 24px));
  max-height: calc(100dvh - 24px);
  padding: 0;
  overflow: hidden;
}
.lobby-page .inventory-dialog > .dialog-heading {
  flex: none;
  margin: 0;
  padding: 20px 24px 16px;
  border-bottom: 1px solid var(--line);
}
.inventory-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 18px 24px 20px;
}
.lobby-page .inventory-body .inventory-grid { max-height: none; overflow: visible; }
.lobby-page .inventory-body .seed-settings { margin: 0 0 10px; }
.inventory-footer {
  flex: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: "pages pages" "warning warning" "summary actions";
  align-items: center;
  gap: 8px 18px;
  padding: 12px 24px 16px;
  border-top: 1px solid var(--line);
  background: var(--surface);
}
.inventory-footer .inventory-pagination { grid-area: pages; margin: 0; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.lobby-page .inventory-footer .selection-summary { grid-area: summary; min-width: 0; border: 0; padding: 0; margin: 0; gap: 12px; }
.lobby-page .inventory-footer .selection-summary strong { font-size: 22px; }
.lobby-page .inventory-footer .selection-summary span { font-size: 11px; margin-bottom: 2px; }
.lobby-page .inventory-footer .dialog-actions { grid-area: actions; margin: 0; gap: 8px; flex-wrap: nowrap; }
.lobby-page .inventory-footer .dialog-actions .button { min-height: 44px; }
.lobby-page .inventory-footer .selection-warning { grid-area: warning; margin: 0; min-height: 0; line-height: 1.5; }
.inventory-footer .selection-warning:empty { display: none; }
@media (max-width: 600px) {
  .lobby-page .inventory-dialog > .dialog-heading { padding: 14px 16px 12px; }
  .lobby-page .inventory-dialog .dialog-heading h2 { font-size: 21px; }
  .inventory-body { padding: 12px 14px 16px; }
  .inventory-footer { grid-template-columns: minmax(0, 1fr); grid-template-areas: "pages" "warning" "summary" "actions"; gap: 8px; padding: 10px 14px 12px; }
  .lobby-page .inventory-footer .dialog-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .lobby-page .inventory-footer .dialog-actions .button { padding: 9px 6px; font-size: 12px; }
  .lobby-page .inventory-footer .selection-warning { font-size: 11px; }
}
@media (max-height: 500px) {
  .lobby-page .inventory-dialog > .dialog-heading { padding-block: 8px; }
  .lobby-page .inventory-dialog .dialog-heading h2 { font-size: 18px; }
  .inventory-footer { padding-block: 8px; gap: 4px 12px; }
  .lobby-page .inventory-footer .selection-summary strong { font-size: 18px; }
  .inventory-footer .selection-warning { max-height: 34px; overflow-y: auto; }
  .inventory-footer .inventory-pagination { padding-bottom: 4px; }
}
