.bibtex-dialog {
  width: min(620px, calc(100% - 32px));
  max-height: calc(100% - 32px);
  padding: 24px;
  border: 1px solid #ddd;
  border-radius: 8px;
  color: #111;
  background: #fff;
  font: inherit;
  box-shadow: 0 12px 40px rgb(0 0 0 / 14%);
}
.bibtex-dialog::backdrop { background: rgb(0 0 0 / 24%); }
.bibtex-dialog h2 { margin: 0 0 8px; font-size: 20px; font-weight: 700; }
.bibtex-dialog-title { margin: 0 0 16px; }
.bibtex-dialog-text {
  display: block;
  width: 100%;
  height: min(42vh, 290px);
  min-height: 150px;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  color: #222;
  background: #fff;
  font: 12px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace;
  resize: vertical;
  overflow-wrap: normal;
}
.bibtex-dialog-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 16px; }
.bibtex-dialog button {
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #111;
  background: #fff;
  font: inherit;
  cursor: pointer;
}
.bibtex-dialog button:hover { border-color: #777; }
.bibtex-dialog button:focus-visible, .bibtex-dialog textarea:focus-visible {
  outline: 2px solid #1772d0;
  outline-offset: 3px;
}
.bibtex-dialog-close { margin-left: auto; }
.bibtex-dialog-status { min-height: 1.3em; margin: 10px 0 0; color: #555; font-size: 12px; }
@media (max-width: 420px) { .bibtex-dialog { padding: 18px; } }
