/* ==========================================================================
   FICHA DO PACIENTE 90% — modal imersivo, edição global e receituário A1
   Clínica Dr. Reges Jr. — 28/09/2026
   --------------------------------------------------------------------------
   Diretrizes do dono: fundo PRETO ABSOLUTO (#000); contornos, botões e
   textos de destaque em DOURADO (#FFD700) e CARAMELO (#D4A373); "frosted
   glass" PLANO — retângulos, cantos 8–12, sombra limpa; SANS-SERIF DO
   SISTEMA na UI estrutural e nas receitas (a Urbanist do tema fica de fora
   daqui); textos longos justificados.

   Tudo escopado em `#fp-overlay`, `#fp-a1`, `.fp-btn-linha` e
   `.fp-btn-ficha`: nenhuma tela do ERP muda por esta folha estar carregada.
   Os overlays são filhos diretos de <body> com `portal-overlay` (obrigatório:
   `.lg-ambiente > *:not(.portal-overlay)` rebaixa qualquer filho fixo).
   ========================================================================== */

#fp-overlay, #fp-a1 {
  --fp-preto: #000000;
  --fp-ouro: #FFD700;
  --fp-caramelo: #D4A373;
  --fp-borda: rgba(212, 163, 115, 0.45);
  --fp-borda-sutil: rgba(212, 163, 115, 0.22);
  --fp-texto: #F5EFE6;
  --fp-texto-suave: rgba(245, 239, 230, 0.62);
  --fp-texto-apagado: rgba(245, 239, 230, 0.38);
  --fp-vidro: rgba(255, 255, 255, 0.05);
  --fp-vidro-forte: rgba(255, 255, 255, 0.08);
  --fp-alerta: #FF6B6B;
  --fp-sucesso: #7FB685;
  --fp-rascunho: #E8B84B;
  --fp-raio: 10px;
  --fp-raio-p: 8px;
  --fp-raio-g: 12px;
  --fp-fonte: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fp-mono: ui-monospace, Menlo, Consolas, monospace;
  font-family: var(--fp-fonte);
  color: var(--fp-texto);
  -webkit-font-smoothing: antialiased;
}

/* ── os botões pendurados na ficha e na lista ───────────────────────────── */
.fp-btn-ficha { gap: 6px; }
.fp-btn-linha {
  margin-right: 4px;
  border: 1px solid rgba(212, 163, 115, 0.55) !important;
  color: #FFD700 !important;
  background: rgba(0, 0, 0, 0.55) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;      /* vidro em botão de tabela engasga (seção 11 do tema) */
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-weight: 700;
}
.fp-btn-icone { margin-right: 5px; }

/* ── overlay + modal de 90% ─────────────────────────────────────────────── */
#fp-overlay {
  position: fixed; inset: 0; z-index: 2147482500;
  display: flex; align-items: center; justify-content: center;
  background: rgba(0, 0, 0, 0.88);
}
#fp-overlay[hidden] { display: none; }

.fp-modal {
  width: 90vw; height: 90vh;               /* exatamente 90% — exigência do dono */
  display: flex; flex-direction: column;
  background: var(--fp-preto);
  border: 1px solid var(--fp-borda);
  border-radius: var(--fp-raio-g);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.75);
  overflow: hidden;
  position: relative;
}
.fp-modal::before {                        /* o véu do vidro jateado — plano, sem gradiente */
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: var(--fp-vidro);
}
.fp-modal.fp-edicao { border-color: var(--fp-ouro); border-width: 1.5px; box-shadow: 0 18px 60px rgba(0, 0, 0, 0.75), 0 0 0 1px rgba(255, 215, 0, 0.18) inset; }
.fp-modal.fp-edicao::before { background: rgba(255, 215, 0, 0.05); }

.fp-cabecalho {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 14px 20px; border-bottom: 1px solid var(--fp-borda-sutil); position: relative; z-index: 1;
}
.fp-identidade { display: flex; align-items: center; gap: 14px; min-width: 0; flex: 1; }
.fp-brasao { height: 58px; width: auto; filter: drop-shadow(0 4px 12px rgba(203, 167, 48, 0.35)); }
.fp-titulos { min-width: 0; }
.fp-titulos h2 { margin: 0; font: 700 22px/1.2 var(--fp-fonte); color: var(--fp-texto); letter-spacing: 0.2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fp-titulos p { margin: 3px 0 0; font: 14px/1.4 var(--fp-fonte); color: var(--fp-texto-suave); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fp-acoes-topo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.fp-fechar {
  width: 40px; height: 40px; border-radius: var(--fp-raio-p); border: 1px solid var(--fp-borda);
  background: transparent; color: var(--fp-caramelo); font: 26px/1 var(--fp-fonte); cursor: pointer;
}
.fp-fechar:hover { color: var(--fp-ouro); border-color: var(--fp-ouro); }

.fp-corpo { flex: 1; min-height: 0; position: relative; z-index: 1; }
.fp-rolagem { height: 100%; overflow: auto; padding: 16px 20px 0; scrollbar-width: thin; scrollbar-color: var(--fp-borda) transparent; }
.fp-fim { height: 40px; }

.fp-rodape {
  display: flex; align-items: center; gap: 10px; padding: 10px 20px;
  border-top: 1px solid var(--fp-borda-sutil); font: 13px/1.4 var(--fp-fonte); color: var(--fp-texto-suave);
  position: relative; z-index: 1;
}
.fp-ponto { width: 10px; height: 10px; border-radius: 5px; background: var(--fp-texto-apagado); flex-shrink: 0; }
.fp-ponto-ligado { background: var(--fp-ouro); box-shadow: 0 0 10px rgba(255, 215, 0, 0.6); }
#fp-estado-direita { margin-left: auto; color: var(--fp-caramelo); }

/* ── botões ─────────────────────────────────────────────────────────────── */
.fp-btn {
  font: 700 14px/1 var(--fp-fonte); letter-spacing: 0.4px;
  padding: 10px 16px; min-height: 40px; border-radius: var(--fp-raio-p);
  border: 1px solid var(--fp-borda); background: transparent; color: var(--fp-ouro); cursor: pointer;
  display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;
}
.fp-btn:hover:not(:disabled) { border-color: var(--fp-ouro); }
.fp-btn:disabled { opacity: 0.45; cursor: not-allowed; }
.fp-btn-primario { background: var(--fp-ouro); border-color: var(--fp-ouro); color: #0A0A0A; }
.fp-btn-primario:hover:not(:disabled) { background: #FFE24D; }
.fp-btn-contorno { background: transparent; color: var(--fp-ouro); }
.fp-btn-fantasma { border-color: transparent; color: var(--fp-caramelo); }
.fp-btn-perigo { border-color: var(--fp-alerta); color: var(--fp-alerta); }
.fp-btn-compacto { padding: 6px 12px; min-height: 32px; font-size: 13px; }
.fp-destaque { padding: 12px 22px; min-height: 46px; font-size: 15px; letter-spacing: 0.8px; border-radius: var(--fp-raio); }

/* ── cadastro no topo ───────────────────────────────────────────────────── */
.fp-cadastro { margin-bottom: 14px; }
.fp-cad-grade { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px 18px; }
.fp-cad-linha { display: flex; gap: 10px; align-items: baseline; border-bottom: 1px solid var(--fp-borda-sutil); padding: 6px 0; font: 14px/1.4 var(--fp-fonte); }
.fp-cad-rotulo { color: var(--fp-caramelo); font-size: 12px; font-weight: 600; letter-spacing: 0.6px; text-transform: uppercase; min-width: 120px; }
.fp-cad-valor { color: var(--fp-texto); flex: 1; }
.fp-aviso { margin: 10px 0 0; padding: 10px 12px; border: 1px solid var(--fp-rascunho); border-radius: var(--fp-raio-p); color: var(--fp-rascunho); font: 13px/1.5 var(--fp-fonte); text-align: justify; }

/* ── o ProntuarioUI hospedado: bloco 10 dele some, campos travam em leitura ─ */
#fp-hospedeiro #pr-bloco-10 { display: none; }
#fp-hospedeiro .pr-abas { top: -16px; }               /* sticky dentro da rolagem do modal */
.fp-leitura #fp-hospedeiro input:disabled,
.fp-leitura #fp-hospedeiro select:disabled,
.fp-leitura #fp-hospedeiro textarea:disabled { opacity: 0.85; color: inherit; -webkit-text-fill-color: inherit; cursor: default; }
.fp-leitura #fp-hospedeiro button:disabled:not(.pr-aba) { opacity: 0.55; cursor: default; }
.fp-leitura #fp-hospedeiro .pr-chip[aria-pressed="true"]:disabled { opacity: 1; }
.fp-leitura #fp-hospedeiro [data-acao="registrar-afericao"],
.fp-leitura #fp-hospedeiro [data-acao="registrar-coleta"],
.fp-leitura #fp-hospedeiro [data-acao="nova-evolucao"],
.fp-leitura #fp-hospedeiro [data-acao="assinar-evolucao"],
.fp-leitura #fp-hospedeiro [data-acao="alergia-add"] { display: none; }

/* ── bloco 10 (usa a casca .pr-modulo do prontuario.css) ────────────────── */
.fp-receituario-modulo { margin-top: 4px; }
.fp-receituario-modulo .pr-bloco-cabecalho { cursor: pointer; }
.fp-justificado { text-align: justify; }
.fp-caramelo { color: var(--fp-caramelo) !important; }
.fp-dourado { color: var(--fp-ouro); }
.fp-alerta { color: var(--fp-alerta) !important; }
.fp-sucesso { color: var(--fp-sucesso) !important; }
.fp-mono { font-family: var(--fp-mono); font-size: 0.92em; }

.fp-prateleira { margin: 12px 0; }
.fp-cartoes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.fp-cartao {
  display: flex; align-items: center; gap: 10px; min-width: 240px; flex: 1 1 30%;
  padding: 10px; border: 1px solid var(--fp-borda-sutil); border-radius: var(--fp-raio);
  background: var(--fp-vidro); color: var(--fp-texto); cursor: pointer; text-align: left; font-family: var(--fp-fonte);
}
.fp-cartao:hover { border-color: var(--fp-borda); }
.fp-cartao-ativo { border-color: var(--fp-ouro); }
.fp-cartao-texto { display: flex; flex-direction: column; min-width: 0; }
.fp-cartao-texto b { font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fp-cartao-texto small { color: var(--fp-texto-suave); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fp-amostra { width: 20px; height: 28px; border-radius: 3px; border: 1.5px solid; flex-shrink: 0; }

.fp-detalhe { margin-top: 14px; padding: 16px; border: 1px solid var(--fp-borda); border-radius: var(--fp-raio-g); background: var(--fp-vidro); }
.fp-detalhe-edicao { border-color: var(--fp-ouro); background: rgba(255, 215, 0, 0.05); }
.fp-barra { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; flex-wrap: wrap; }
.fp-barra-texto { display: flex; flex-direction: column; gap: 2px; }
.fp-barra-texto b { font: 600 16px/1.3 var(--fp-fonte); }
.fp-barra-texto small { color: var(--fp-texto-suave); font-size: 13px; }
.fp-barra-acoes { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.fp-duas-colunas { display: grid; grid-template-columns: 1fr; gap: 18px; margin-top: 12px; }
@media (min-width: 1240px) { .fp-duas-colunas:has(#fp-editor) { grid-template-columns: minmax(360px, 1fr) minmax(420px, 1fr); } }
.fp-coluna { min-width: 0; }
.fp-coluna-folha { display: flex; flex-direction: column; align-items: center; }
.fp-coluna-folha #fp-folha { width: 100%; max-width: 760px; }

/* editor */
.fp-campo { margin-bottom: 12px; min-width: 0; }
.fp-flex-1 { flex: 1 1 120px; } .fp-flex-2 { flex: 2 1 200px; } .fp-flex-3 { flex: 3 1 260px; }
.fp-linha { display: flex; flex-wrap: wrap; gap: 10px; }
.fp-linha-titulo { display: flex; justify-content: space-between; align-items: center; margin: 8px 0; }
.fp-entrada {
  width: 100%; box-sizing: border-box; margin-top: 4px;
  font: 15px/1.4 var(--fp-fonte); color: var(--fp-texto);
  border: 1px solid var(--fp-borda); border-radius: var(--fp-raio-p); background: var(--fp-vidro);
  padding: 8px 12px; outline: none;
}
.fp-entrada:focus { border-color: var(--fp-ouro); }
.fp-longo { min-height: 76px; resize: vertical; text-align: justify; }
.fp-select { appearance: auto; color-scheme: dark; }
.fp-select-tipo { display: flex; align-items: center; gap: 10px; margin-top: 4px; }
.fp-select-tipo .fp-amostra { width: 22px; height: 30px; }
.fp-leitura-valor { margin-top: 4px; font: 15px/1.5 var(--fp-fonte); color: var(--fp-texto); }
.fp-item { border: 1px solid var(--fp-borda-sutil); border-radius: var(--fp-raio); padding: 12px; margin-bottom: 10px; }
.fp-pendencias { border: 1px solid var(--fp-alerta); background: rgba(255, 107, 107, 0.10); border-radius: var(--fp-raio); padding: 12px; margin-top: 8px; }
.fp-pendencias p { margin: 4px 0 0; font: 13px/1.5 var(--fp-fonte); color: var(--fp-texto); }

/* ── A FOLHA — desenhada em milímetros: --mm = px por mm (JS mede o contêiner) ─ */
.fp-folha {
  --mm: 3px;
  position: relative; box-sizing: border-box; width: 100%;
  padding: calc(var(--mm) * 14); border: calc(var(--mm) * 0.3) solid; border-radius: var(--fp-raio-p);
  font-family: var(--fp-fonte); line-height: 1.35;
  box-shadow: 0 14px 44px rgba(0, 0, 0, 0.6); overflow: hidden;
}
.fp-folha-talonario { padding: calc(var(--mm) * 8); }
.fp-marca-dagua {
  position: absolute; left: 0; right: 0; top: 42%; text-align: center; pointer-events: none;
  font-size: calc(var(--mm) * 9); font-weight: 800; letter-spacing: 2px; transform: rotate(-18deg);
}
.fp-timbre { display: flex; align-items: center; gap: calc(var(--mm) * 4); padding-bottom: calc(var(--mm) * 2); border-bottom: calc(var(--mm) * 0.4) solid; }
.fp-timbre-brasao { height: calc(var(--mm) * 18); width: auto; }
.fp-timbre-texto { min-width: 0; }
.fp-timbre-nome { font-size: calc(var(--mm) * 5); font-weight: 700; letter-spacing: calc(var(--mm) * 0.15); }
.fp-timbre-linha { font-size: calc(var(--mm) * 2.5); opacity: 0.9; }
.fp-timbre-atividade { font-size: calc(var(--mm) * 2.6); margin-bottom: calc(var(--mm) * 0.8); }
.fp-faixa { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: calc(var(--mm) * 3); padding: calc(var(--mm) * 1.6) calc(var(--mm) * 3); border-radius: calc(var(--mm) * 1); }
.fp-faixa-titulo { font-size: calc(var(--mm) * 4.2); font-weight: 700; letter-spacing: calc(var(--mm) * 0.2); }
.fp-faixa-sub { font-size: calc(var(--mm) * 2.4); opacity: 0.9; }
.fp-faixa-num { text-align: right; }
.fp-faixa-num small { display: block; font-size: calc(var(--mm) * 2.2); opacity: 0.85; }
.fp-faixa-num b { font-family: var(--fp-mono); font-size: calc(var(--mm) * 4); }
.fp-emitente { margin-top: calc(var(--mm) * 3); padding: calc(var(--mm) * 2.2); border: calc(var(--mm) * 0.25) solid; border-radius: calc(var(--mm) * 1); font-size: calc(var(--mm) * 2.6); }
.fp-emitente-nome { font-size: calc(var(--mm) * 3.2); font-weight: 700; }
.fp-folha-rotulo { font-size: calc(var(--mm) * 2.4); opacity: 0.7; letter-spacing: calc(var(--mm) * 0.1); text-transform: uppercase; }
.fp-linhas-paciente { margin-top: calc(var(--mm) * 3); display: flex; flex-wrap: wrap; gap: calc(var(--mm) * 0.8) calc(var(--mm) * 4); }
.fp-linha-campo { display: flex; align-items: flex-end; gap: calc(var(--mm) * 1.5); width: 100%; }
.fp-linha-curta { width: 48%; }
.fp-linha-campo span { font-size: calc(var(--mm) * 2.5); opacity: 0.7; white-space: nowrap; }
.fp-linha-campo b { flex: 1; font-size: calc(var(--mm) * 3); font-weight: 600; border-bottom: calc(var(--mm) * 0.2) solid #9A9A9A; padding-bottom: calc(var(--mm) * 0.3); }
.fp-itens { margin-top: calc(var(--mm) * 4); }
.fp-folha-item { margin: calc(var(--mm) * 1.5) 0 calc(var(--mm) * 2.4); }
.fp-folha-item-linha { display: flex; align-items: flex-end; gap: calc(var(--mm) * 1.5); }
.fp-folha-item-nome { font-size: calc(var(--mm) * 3.2); font-weight: 700; }
.fp-pontilhado { flex: 1; border-bottom: calc(var(--mm) * 0.25) dotted currentColor; opacity: 0.6; margin-bottom: calc(var(--mm) * 0.9); }
.fp-folha-item-qtd { font-size: calc(var(--mm) * 3); font-weight: 700; white-space: nowrap; }
.fp-folha-item-posologia { margin-left: calc(var(--mm) * 5); font-size: calc(var(--mm) * 2.8); text-align: justify; }
.fp-folha-vazio { font-size: calc(var(--mm) * 2.8); opacity: 0.5; font-style: italic; }
.fp-folha-orientacoes { font-size: calc(var(--mm) * 2.7); text-align: justify; margin-bottom: calc(var(--mm) * 1); }
.fp-pe { display: flex; align-items: flex-end; justify-content: space-between; gap: calc(var(--mm) * 4); margin-top: calc(var(--mm) * 6); }
.fp-pe-data { font-size: calc(var(--mm) * 2.7); flex: 1; }
.fp-pe-validade { font-size: calc(var(--mm) * 2.4); opacity: 0.8; }
.fp-pe-assinatura { width: 46%; text-align: center; font-size: calc(var(--mm) * 2.3); }
.fp-pe-assinatura b { display: block; font-size: calc(var(--mm) * 2.6); margin-top: calc(var(--mm) * 0.8); }
.fp-pe-traco { border-bottom: calc(var(--mm) * 0.25) solid; }
.fp-selo { margin-top: calc(var(--mm) * 3); padding: calc(var(--mm) * 2.2); border: calc(var(--mm) * 0.4) solid; border-radius: calc(var(--mm) * 1.5); font-size: calc(var(--mm) * 2.5); display: flex; flex-direction: column; gap: calc(var(--mm) * 0.6); }
.fp-selo b { font-size: calc(var(--mm) * 3); letter-spacing: calc(var(--mm) * 0.1); }
.fp-selo-vazio { border-style: dashed; opacity: 0.55; text-align: center; font-size: calc(var(--mm) * 2.6); }
.fp-caixas { display: flex; gap: calc(var(--mm) * 2); margin-top: calc(var(--mm) * 3); }
.fp-caixa { flex: 1; padding: calc(var(--mm) * 2); border: calc(var(--mm) * 0.2) solid; border-radius: calc(var(--mm) * 1); }
.fp-caixa-campo { margin-top: calc(var(--mm) * 1); }
.fp-caixa-campo small { display: block; font-size: calc(var(--mm) * 2); opacity: 0.65; }
.fp-caixa-campo div { font-size: calc(var(--mm) * 2.5); border-bottom: calc(var(--mm) * 0.2) solid #9A9A9A; min-height: calc(var(--mm) * 4); }
.fp-legal { margin-top: calc(var(--mm) * 2.5); font-size: calc(var(--mm) * 2); opacity: 0.7; }

/* ── modal A1 (intercepção) ─────────────────────────────────────────────── */
#fp-a1 {
  position: fixed; inset: 0; z-index: 2147482600;
  display: flex; align-items: center; justify-content: center; padding: 20px;
  background: rgba(0, 0, 0, 0.92);
}
#fp-a1[hidden] { display: none; }
.fp-a1-cartao {
  width: 100%; max-width: 560px; max-height: 92vh; overflow: auto;
  background: var(--fp-preto); border: 1px solid var(--fp-ouro); border-radius: var(--fp-raio-g);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.75); padding: 0 22px 22px; position: relative;
}
.fp-a1-cartao::before { content: ""; position: absolute; inset: 0; background: var(--fp-vidro-forte); pointer-events: none; border-radius: var(--fp-raio-g); }
.fp-a1-cartao > * { position: relative; }
.fp-a1-topo { height: 3px; background: var(--fp-ouro); margin: 0 -22px 18px; }
.fp-a1-selo { display: block; font: 700 12px/1 var(--fp-fonte); color: var(--fp-ouro); letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; }
.fp-a1-cartao h2 { margin: 0 0 12px; font: 700 22px/1.2 var(--fp-fonte); color: var(--fp-texto); }
.fp-a1-resumo { border: 1px solid var(--fp-borda-sutil); border-radius: var(--fp-raio); padding: 12px; display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.fp-a1-linha { display: flex; justify-content: space-between; gap: 12px; font: 14px/1.4 var(--fp-fonte); }
.fp-a1-linha span { color: var(--fp-texto-suave); }
.fp-a1-linha b { text-align: right; }
.fp-a1-aviso { margin: 0 0 12px; font: 13px/1.5 var(--fp-fonte); color: var(--fp-caramelo); }
.fp-a1-quem { margin: 0 0 12px; font: 14px/1.4 var(--fp-fonte); color: var(--fp-texto-suave); }
.fp-a1-cert { border: 1px solid var(--fp-borda); border-radius: var(--fp-raio); padding: 12px; margin-bottom: 14px; font: 14px/1.4 var(--fp-fonte); display: flex; flex-direction: column; gap: 4px; }
.fp-a1-cert small { color: var(--fp-texto-suave); font-size: 12px; text-align: justify; }
#fp-a1-form { display: flex; flex-direction: column; gap: 12px; }
#fp-a1-senha {
  width: 100%; box-sizing: border-box; font: 18px/1.4 var(--fp-fonte); letter-spacing: 2px; color: var(--fp-texto);
  border: 1.5px solid var(--fp-ouro); border-radius: var(--fp-raio-p); background: var(--fp-vidro); padding: 12px 14px; outline: none;
}
.fp-a1-etapas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font: 14px/1.4 var(--fp-fonte); color: var(--fp-texto-suave); }
.fp-a1-etapas li::before { content: "○"; display: inline-block; width: 22px; color: var(--fp-texto-apagado); }
.fp-a1-etapas li[data-estado="atual"] { color: var(--fp-texto); }
.fp-a1-etapas li[data-estado="atual"]::before { content: "◌"; color: var(--fp-ouro); animation: fp-gira 0.9s linear infinite; }
.fp-a1-etapas li[data-estado="feita"] { color: var(--fp-texto); }
.fp-a1-etapas li[data-estado="feita"]::before { content: "✓"; color: var(--fp-sucesso); }
@keyframes fp-gira { to { transform: rotate(360deg); } }
.fp-a1-erro { color: var(--fp-alerta); font: 14px/1.5 var(--fp-fonte); text-align: justify; min-height: 0; }
.fp-a1-erro:empty { display: none; }
.fp-a1-sucesso { border: 1px solid var(--fp-sucesso); background: rgba(127, 182, 133, 0.10); border-radius: var(--fp-raio); padding: 12px; font: 14px/1.5 var(--fp-fonte); }
.fp-a1-sucesso b { color: var(--fp-sucesso); font-size: 16px; }
.fp-a1-botoes { display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.fp-a1-nota { margin: 14px 0 0; font: 12px/1.5 var(--fp-fonte); color: var(--fp-texto-apagado); }

/* ── telas estreitas ────────────────────────────────────────────────────── */
@media (max-width: 720px) {
  .fp-cabecalho { flex-wrap: wrap; }
  .fp-acoes-topo { width: 100%; justify-content: flex-end; }
  .fp-rolagem { padding: 12px 12px 0; }
  .fp-caixas { flex-direction: column; }
}

/* ── impressão: só a folha ──────────────────────────────────────────────── */
@media print {
  #fp-overlay { position: static; background: #fff; }
  .fp-modal { width: auto; height: auto; border: 0; box-shadow: none; }
  .fp-cabecalho, .fp-rodape, .fp-cadastro, #fp-hospedeiro, .fp-prateleira, .fp-barra, #fp-editor, .fp-a1-overlay { display: none !important; }
  .fp-folha { box-shadow: none; }
}

/* ── certificado A1 deste computador (modo local, 29/09/2026) ───────────── */
.fp-a1-cert-arquivo { display: flex; flex-direction: column; gap: 2px; }
.fp-a1-cert-arquivo b { font: 600 14px/1.4 var(--fp-fonte); color: var(--fp-texto); word-break: break-all; }
.fp-a1-cert-arquivo small, .fp-a1-cert-vazio { color: var(--fp-texto-suave); font: 13px/1.4 var(--fp-fonte); }
.fp-a1-cert-acoes { display: flex; gap: 8px; flex-wrap: wrap; margin: 6px 0 4px; }
