.fa-dialog {
  box-sizing: border-box;
  width: min(1000px, calc(100vw - 24px));
  max-width: none;
  max-height: calc(100dvh - 32px);
  margin: auto;
  padding: 0;
  border: 1px solid var(--border, #cbd5e1);
  border-radius: 8px;
  background: var(--white, #fff);
  color: var(--text, #3c4043);
  font-family: var(--tipografia-printlab, Arial, sans-serif);
  box-shadow: 0 24px 80px #0005;
}
.fa-dialog::backdrop { background: rgba(15, 23, 42, .7); }
.fa-dialog[open] { display: flex; flex-direction: column; }
.fa-dialog * { box-sizing: border-box; font-family: var(--tipografia-printlab, Arial, sans-serif); }
.fa-dialog header, .fa-dialog footer {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; padding: 18px 22px; flex: 0 0 auto;
}
.fa-dialog header { border-bottom: 1px solid var(--border, #cbd5e1); }
.fa-dialog footer { border-top: 1px solid var(--border, #cbd5e1); flex-wrap: wrap; }
.fa-dialog h2 { margin: 0; font-size: var(--tipografia-printlab-titulo, 20px); font-weight: var(--tipografia-printlab-peso-titulo, 500); line-height: 1.3; }
.fa-dialog h3 { margin: 0; font-size: var(--tipografia-printlab-subtitulo, 16px); font-weight: var(--tipografia-printlab-peso-medio, 500); line-height: 1.35; }
.fa-dialog p { margin: 8px 0; }
.fa-dialog button { cursor: pointer; font-size: var(--tipografia-printlab-controle, 13px); font-weight: var(--tipografia-printlab-peso-acao, 600); }
.fa-dialog button:disabled { cursor: wait; opacity: .6; }
.fa-body { padding: 22px; overflow-y: auto; min-height: 0; }
.fa-fields { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 16px; }
.fa-field, .fa-upload label { font-size: var(--tipografia-printlab-rotulo, 12px); font-weight: var(--tipografia-printlab-peso-medio, 500); color: var(--form-ui-text-color, #5f6368); line-height: 1.35; }
.fa-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.fa-field-wide { grid-column: 1 / -1; }
.fa-field input, .fa-field textarea {
  width: 100%; padding: 10px 12px; border-radius: 8px;
  font-size: var(--tipografia-printlab-campo, 14px); font-weight: 400; line-height: 1.4;
  border: 1px solid var(--border, #cbd5e1);
  color: var(--text, #3c4043); background: var(--white, #fff);
}
.fa-field input:focus-visible, .fa-field textarea:focus-visible { outline: 2px solid #1a73e8; outline-offset: 1px; }
.fa-field input[aria-invalid="true"] { border-color: #c5221f; }
.fa-field-error { color: #c5221f; font-size: var(--tipografia-printlab-rotulo, 12px); font-weight: 400; }
.fa-field textarea { resize: vertical; min-height: 76px; }
.fa-help { font-size: var(--tipografia-printlab-rotulo, 12px); color: var(--form-ui-text-color, #596779); line-height: 1.45; }
.fa-images-section { margin-top: 24px; }
.fa-upload { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.fa-upload input { max-width: 100%; font-size: var(--tipografia-printlab-controle, 13px); }
.fa-images { display: grid; grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)); gap: 14px; }
.fa-image { margin: 0; border: 1px solid var(--border, #cbd5e1); border-radius: 10px; overflow: hidden; }
.fa-image img { display: block; width: 100%; aspect-ratio: 226.8125 / 239.1024; object-fit: cover; }
.fa-image figcaption { padding: 10px; font-size: 12px; overflow-wrap: anywhere; }
.fa-image button { margin-top: 8px; width: 100%; }
.fa-dialog .fa-status { color: #a63714; white-space: pre-wrap; font-size: 13px; }
.fa-actions { display: flex; flex-wrap: wrap; gap: 10px; }
#ficha-atendimento-preview { width: min(1080px, calc(100vw - 24px)); height: calc(100dvh - 32px); }
#ficha-atendimento-preview iframe { width: 100%; flex: 1; min-height: 0; border: 0; background: #e5e7eb; }
@media (max-width: 600px) {
  .fa-fields { grid-template-columns: 1fr; }
  .fa-dialog header, .fa-dialog footer, .fa-body { padding: 14px; }
}
