/* =====================================================================
   OBRIGATORIEDADE DOS NOVOS LANCAMENTOS — estilos de apoio
   (asteriscos, dicas, mensagens de erro, linha do CPF/CNPJ e anexo)
   ===================================================================== */
.req{color:#FF6B5E;font-weight:800;margin-left:2px}
.form-legend{margin:2px 0 0;font-size:.78rem;color:var(--muted)}
.field-hint{display:block;font-size:.72rem;color:var(--muted);line-height:1.35;margin-top:2px}
.field-error{display:none;font-size:.76rem;color:#FFB4AC;font-weight:600}
.form-field.invalid .field-error{display:block}
.form-field.invalid input,
.form-field.invalid select{border-color:rgba(225,90,77,.8)!important;
  box-shadow:0 0 0 3px rgba(225,90,77,.16)!important}
.admin-error{display:none;background:rgba(225,90,77,.14);border:1px solid rgba(225,90,77,.42);
  color:#FFB4AC;border-radius:12px;padding:12px 14px;margin-top:14px;font-size:.85rem}
.admin-error.show{display:block}
.admin-error strong{color:#FFD9D4}
.admin-error ul{margin:8px 0 0 18px;padding:0}
.admin-error li{margin:3px 0}
.admin-error-hint{display:block;margin-top:8px;color:var(--muted);font-size:.78rem}
.doc-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px}
.form-field input[type="file"]{padding:9px 12px;background:var(--surface-2);
  color:var(--text);cursor:pointer;border:1px solid var(--line);border-radius:10px}
.form-field input[type="file"]::file-selector-button{margin-right:10px;padding:7px 12px;
  border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--text);
  font-weight:600;cursor:pointer}
.muted-dash{color:var(--muted)}
@media (max-width:520px){.doc-row{grid-template-columns:1fr}}
