/* Launcher-size controls. Kept separately so the portal's established visual
 * stylesheet remains readable rather than growing another dense one-line rule. */
.size-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.size-grid label {
  font-size: .85rem;
  font-weight: 600;
}

.portal-preview {
  width: min(var(--preview-width, 390px), 100%);
  height: var(--preview-height, 620px);
  margin: 0 auto;
}

@media (max-width: 850px) {
  .portal-preview { height: min(var(--preview-height, 620px), calc(100dvh - 120px)); }
}

@media (max-width: 600px) {
  .size-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portal-preview {
    width: 100%;
    height: min(var(--preview-height, 620px), calc(100dvh - 100px));
  }
}
