/* Keep the main facility menus on their original design canvas and scale as one piece. */
#windowBackdrop:not(.hidden):has(.game-window.proportional-menu) {
  width: 100vw !important;
  height: var(--app-height, 100dvh) !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 100 !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background: rgb(3 7 8 / 88%) !important;
}

#windowBackdrop .game-window.proportional-menu {
  width: var(--menu-design-width) !important;
  height: var(--menu-design-height) !important;
  min-width: var(--menu-design-width) !important;
  min-height: var(--menu-design-height) !important;
  max-width: none !important;
  max-height: none !important;
  position: absolute !important;
  left: var(--menu-offset-x, 0px) !important;
  top: var(--menu-offset-y, 0px) !important;
  flex: none !important;
  aspect-ratio: auto !important;
  transform: scale(var(--menu-scale, 1)) !important;
  transform-origin: top left !important;
  overflow: hidden !important;
}

.game-window.proportional-menu .window-titlebar {
  display: none !important;
}

.game-window.proportional-menu .window-content {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
}

.game-window.proportional-menu.transformer-window .window-content {
  position: absolute !important;
  inset: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.game-window.proportional-menu.transformer-window .transformer-sheet {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}

.game-window.proportional-menu.storage-window .window-content {
  padding: 10px !important;
  overflow: auto !important;
}

.game-window.proportional-menu.research-window .window-content,
.game-window.proportional-menu.power-window .window-content {
  padding: 0 !important;
  overflow: hidden !important;
}

.game-window.proportional-menu .transformer-columns {
  display: grid !important;
  grid-template-columns: 24.4% 44.8% 27.2% !important;
}

.game-window.proportional-menu .refresearch-screen {
  display: grid !important;
  grid-template-rows: 96px minmax(0, 1fr) 72px !important;
}

.game-window.proportional-menu .refresearch-header {
  display: grid !important;
  grid-template-columns: minmax(360px, 1.2fr) minmax(420px, 1.55fr) auto !important;
}

.game-window.proportional-menu .refresearch-body {
  display: grid !important;
  grid-template-columns: 342px minmax(0, 1fr) 306px !important;
}

.game-window.proportional-menu .refpower-screen {
  display: grid !important;
  grid-template-rows: 76px minmax(0, 1fr) !important;
}

.game-window.proportional-menu .refpower-body {
  display: grid !important;
  grid-template-columns: minmax(270px, 0.95fr) minmax(320px, 1.15fr) minmax(280px, 0.9fr) !important;
}

.game-window.proportional-menu .depot-ref-header {
  display: grid !important;
  grid-template-columns: minmax(430px, 0.95fr) minmax(0, 1.75fr) !important;
}

.game-window.proportional-menu .depot-ref-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(350px, 410px) !important;
}
