/* Praxis Dialyse · Faturamento (prefixo hf-) */
.hf-barra { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 6px 0 10px; }
.hf-mes { display: flex; align-items: center; gap: 6px; font-weight: 600; }
.hf-kpis, .hf-abas { margin-bottom: 10px; }
.hf-ajuda { font-size: .85rem; }
.hf-lista { align-items: start; display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 10px; }
.hf-pac, .hf-laudo { background: var(--sup, #fff); border: 1px solid var(--linha); border-radius: 10px; padding: 10px 12px; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.hf-pac header { display: flex; flex-wrap: wrap; gap: 2px 8px; align-items: baseline; }
.hf-pac header .mut { font-size: .82rem; }
.hf-mal { box-shadow: inset 4px 0 0 #d93b2b; } .hf-at { box-shadow: inset 4px 0 0 #e3a21a; } .hf-ok { box-shadow: inset 4px 0 0 #2e9b5f; }
.hf-nums { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: .88rem; }
.hf-apac { margin: 0; font-size: .86rem; overflow-wrap: anywhere; }
.hf-cod { font-family: ui-monospace, monospace; font-size: .82rem; }
.hf-avisos { list-style: none; margin: 2px 0; padding: 0; display: flex; flex-direction: column; gap: 3px; font-size: .82rem; }
.hf-avisos li { border-radius: 6px; padding: 3px 7px; }
.hf-av-mal { background: #fdecea; color: #8a1c12; } .hf-av-at { background: #fff4dc; color: #7a4b00; }
.hf-pac .acoes { flex-wrap: wrap; gap: 6px; margin-top: auto; }
.hf-laudo summary { cursor: pointer; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.hf-dl { display: grid; grid-template-columns: 1fr; gap: 3px; margin: 8px 0; font-size: .85rem; }
.hf-dl div { display: grid; grid-template-columns: minmax(0, 11em) minmax(0, 1fr); gap: 8px; border-bottom: 1px dotted var(--linha); padding: 2px 0; }
.hf-dl dt { color: var(--aco); } .hf-dl dd { margin: 0; overflow-wrap: anywhere; }
.hf-falta { color: #b42318; font-weight: 600; }
.hf-tab td, .hf-tab th { overflow-wrap: anywhere; }
.hf-total td { font-weight: 700; }
.hf-acoes { flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.hf-sess { list-style: none; padding: 0; } .hf-sess li { padding: 4px 0; border-bottom: 1px solid var(--linha); } .hf-sess li span:first-child { color: var(--aco); }
.hf-doc-cab { font-size: .85rem; margin: 0 0 8px; }
.hf-tab-doc { width: 100%; font-size: .78rem; border-collapse: collapse; margin-bottom: 8px; }
.hf-tab-doc th, .hf-tab-doc td { border: 1px solid #bbb; padding: 3px 5px; text-align: left; }
.hf-tab-doc th { width: 34%; background: #f4f4f4; }
@media (max-width: 600px) { .hf-lista { grid-template-columns: 1fr; } .hf-tab { font-size: .8rem; } .hf-tab th:nth-child(2), .hf-tab td:nth-child(2) { display: none; } }
