/* An explicit height overrides content minimums and vertical spacing presets. */
.cms-site .cms-composition.cms-composition--custom {
  box-sizing: border-box;
  height: var(--composition-height, 200px);
  min-height: 0;
  max-height: none;
  margin-block: 0;
  padding-block: 0;
  overflow: hidden;
}
.cms-site .cms-composition.cms-composition--custom > .cms-composition__grid {
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  grid-auto-rows: minmax(0, 1fr);
  row-gap: 0;
  margin-block: 0;
  padding-block: 0;
}
.cms-site .cms-composition.cms-composition--custom .cms-cell {
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  margin-block: 0;
  padding-block: 0;
  overflow: hidden;
}
.cms-site .cms-composition.cms-composition--custom :is(.cms-cell__copy, .cms-custom-menu) {
  min-height: 0;
  margin-block: 0;
  padding-block: 0;
  flex-shrink: 0;
}
.cms-site .cms-composition.cms-composition--custom .cms-cell__embed { height: 100%; min-height: 0; }

/* The editor toolbar remains accessible even for a zero-height block. */
.admin-page .block-editor--v2 .v2-block.v2-block--custom {
  height: auto;
  min-height: 0;
  margin-block: 0;
  overflow: hidden;
}
.admin-page .block-editor--v2 .v2-block.v2-block--custom > .v2-block__cells {
  box-sizing: border-box;
  height: var(--v2-exact-height, 200px);
  min-height: 0;
  grid-auto-rows: minmax(0, 1fr);
  row-gap: 0;
  padding: 0;
  overflow: hidden;
}
.admin-page .block-editor--v2 .v2-block.v2-block--custom .v2-cell {
  box-sizing: border-box;
  height: 100% !important; /* Overrides the menu's legacy inline height. */
  min-height: 0;
  overflow: hidden;
}
.admin-page .block-editor--v2 .v2-block.v2-block--custom .v2-cell__content {
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  padding-block: 0;
  overflow: hidden;
}
