.prompt-materials-modal {
  max-width: calc(100vw - 24px) !important;
  padding-bottom: 0 !important;
}

.prompt-materials-modal .ant-modal-container,
.prompt-materials-modal .ant-modal-content {
  display: flex;
  max-height: calc(100dvh - 32px);
  flex-direction: column;
  overflow: hidden;
  padding: 20px 20px 18px;
}

.prompt-materials-modal .ant-modal-header {
  flex: none;
  margin-bottom: 14px;
}

.prompt-materials-modal .ant-modal-body {
  min-height: 0;
  flex: 1;
  overflow: hidden;
}

.prompt-materials-dialog {
  display: grid;
  max-height: calc(100dvh - 104px);
  min-height: 0;
  grid-template-rows: auto minmax(0, auto) minmax(220px, 1fr);
  overflow: hidden;
}

.prompt-materials-dialog > :nth-child(2) {
  max-height: 132px;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 6px;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}

.prompt-materials-dialog > :nth-child(3) {
  min-height: 0;
  max-height: none !important;
  margin-top: 16px !important;
  overflow-y: auto !important;
  padding-right: 8px !important;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}

.prompt-materials-dialog .prompt-filter-tag {
  margin-inline-end: 0;
  padding-inline: 8px;
  line-height: 26px;
}

.prompt-materials-dialog .ant-card {
  height: 100%;
}

.prompt-materials-dialog .ant-card-body {
  display: flex;
  min-height: 170px;
  flex-direction: column;
}

.prompt-materials-dialog .ant-card-body > button {
  flex: 1;
}

@media (max-width: 640px) {
  .prompt-materials-modal {
    max-width: calc(100vw - 16px) !important;
  }

  .prompt-materials-modal .ant-modal-container,
  .prompt-materials-modal .ant-modal-content {
    max-height: calc(100dvh - 16px);
    padding: 16px 12px 12px;
  }

  .prompt-materials-dialog {
    max-height: calc(100dvh - 78px);
    grid-template-rows: auto minmax(0, auto) minmax(180px, 1fr);
  }

  .prompt-materials-dialog > :nth-child(2) {
    max-height: 104px;
  }

  .prompt-materials-dialog > :nth-child(3) {
    margin-top: 12px !important;
    padding-right: 4px !important;
  }
}

@media (max-width: 820px) {
  .studio-composer-foot > .studio-composer-control:nth-child(1) {
    display: inline-flex !important;
    width: auto;
    min-width: 54px;
    flex: 0 0 auto;
    justify-content: center;
    padding-inline: 8px;
    font-size: 10px;
    white-space: nowrap;
  }
}

@media (max-height: 520px) {
  .prompt-materials-modal .ant-modal-container,
  .prompt-materials-modal .ant-modal-content {
    max-height: calc(100dvh - 16px);
    padding: 10px 14px 8px;
  }

  .prompt-materials-modal .ant-modal-header {
    margin-bottom: 6px;
  }

  .prompt-materials-dialog {
    max-height: calc(100dvh - 54px);
    grid-template-rows: 40px minmax(56px, 72px) minmax(120px, 1fr);
  }

  .prompt-materials-dialog > :nth-child(2) {
    max-height: 72px;
    margin-top: 8px !important;
  }

  .prompt-materials-dialog > :nth-child(3) {
    margin-top: 8px !important;
  }

  .prompt-materials-dialog .ant-card-body {
    min-height: 130px;
  }
}
