/* Земельный Практикум — стабильный индикатор сохранения черновика
   Убирает скачки модальных окон: уведомление выводится поверх формы,
   а не вставляется в обычный поток документа. */

[role="dialog"],
.call-modal,
.modal-card,
.modal-panel,
.admin-modal,
.zg-modal {
  position: relative;
}

[role="dialog"] .zg-draft-stable-badge,
.call-modal .zg-draft-stable-badge,
.modal-card .zg-draft-stable-badge,
.modal-panel .zg-draft-stable-badge,
.admin-modal .zg-draft-stable-badge,
.zg-modal .zg-draft-stable-badge {
  position: absolute !important;
  top: 18px !important;
  right: 56px !important;
  z-index: 80 !important;
  width: max-content;
  max-width: min(220px, calc(100% - 130px));
  min-height: 28px;
  margin: 0 !important;
  padding: 6px 11px !important;
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: 0 8px 24px rgba(23, 92, 48, .14);
  pointer-events: none;
  transform: translateY(0);
}

/* Кнопка очистки остаётся в одном месте и не прыгает. */
[role="dialog"] .zg-draft-clear-row,
.call-modal .zg-draft-clear-row {
  min-height: 32px;
  margin-top: 8px;
  margin-bottom: 12px;
}

/* Сообщение «Черновик очищен» не расталкивает элементы формы. */
[role="dialog"] .zg-draft-clear-row,
.call-modal .zg-draft-clear-row {
  position: relative;
}

[role="dialog"] .zg-draft-cleared-badge,
.call-modal .zg-draft-cleared-badge {
  position: absolute;
  left: 145px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  white-space: nowrap;
  z-index: 3;
}

@media (max-width: 720px) {
  [role="dialog"] .zg-draft-stable-badge,
  .call-modal .zg-draft-stable-badge,
  .modal-card .zg-draft-stable-badge,
  .modal-panel .zg-draft-stable-badge,
  .admin-modal .zg-draft-stable-badge,
  .zg-modal .zg-draft-stable-badge {
    top: 16px !important;
    right: 48px !important;
    max-width: 132px;
    padding: 5px 9px !important;
    font-size: 11px !important;
  }

  [role="dialog"] .zg-draft-cleared-badge,
  .call-modal .zg-draft-cleared-badge {
    left: 132px;
    max-width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
