/* Praxis Dialyse · celular da equipe como scanner (dialise-celular.js). Prefixo hk-. */
html.hk-aberto, html.hk-aberto body { overflow: hidden; }
.hk-ov { position: fixed; inset: 0; z-index: 9000; background: var(--bg, #eef3f1); display: flex; flex-direction: column; color: var(--tinta, #13262e); }
.hk-cab { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px; background: #0e3b3c; color: #fff; }
.hk-cab-t { min-width: 0; }
.hk-cab b { display: block; font-size: 1.05rem; }
.hk-cab small { display: block; opacity: .85; font-size: .84rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hk-x { background: transparent; border: 0; color: #fff; font-size: 1.5rem; line-height: 1; padding: 6px 10px; cursor: pointer; border-radius: 8px; flex: none; }
.hk-x:focus-visible { outline: 2px solid #fff; }
.hk-corpo { flex: 1; overflow: auto; padding: 14px 16px 28px; width: 100%; max-width: 1180px; margin: 0 auto; box-sizing: border-box; display: flex; flex-direction: column; gap: 12px; }
.hk-corpo * { box-sizing: border-box; }
.hk-corpo h3 { margin: 0 0 10px; font-size: 1rem; }
.hk-topo { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: flex-end; justify-content: space-between; }
.hk-pac { display: flex; flex-direction: column; gap: 4px; font-size: .82rem; font-weight: 600; color: var(--aco); min-width: 0; flex: 1 1 260px; max-width: 420px; }
.hk-pac select { font: inherit; font-size: .95rem; font-weight: 400; color: var(--tinta); padding: 9px 10px; border: 1px solid var(--linha); border-radius: 8px; background: var(--sup, #fff); width: 100%; min-width: 0; }
.hk-abas { display: flex; gap: 6px; flex-wrap: wrap; }
.hk-abas button { font: inherit; font-size: .9rem; font-weight: 600; border: 1px solid var(--linha); background: var(--sup, #fff); color: var(--tinta); border-radius: 999px; padding: 8px 14px; cursor: pointer; }
.hk-abas button.on { background: var(--px, #0e3b3c); border-color: var(--px, #0e3b3c); color: #fff; }

.hk-receber { display: grid; grid-template-columns: minmax(300px, 400px) 1fr; gap: 12px; align-items: start; }
.hk-qr-cx, .hk-lista-cx { min-width: 0; }
.hk-fins { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 12px; }
.hk-fin { font: inherit; font-size: .84rem; font-weight: 600; text-align: center; border: 1px solid var(--linha); background: var(--sup, #fff); color: var(--tinta); border-radius: 8px; padding: 9px 6px; cursor: pointer; line-height: 1.2; }
.hk-fin.on { border-color: var(--px); background: var(--px-suave); box-shadow: inset 0 0 0 1px var(--px); color: var(--px); }
.hk-qr { background: #fff; border-radius: 12px; padding: 10px; width: 100%; max-width: 300px; margin: 0 auto; border: 1px solid var(--linha); }
.hk-qr svg { display: block; width: 100%; height: auto; }
.hk-url { margin: 8px 0 0; text-align: center; }
.hk-url code { font-family: var(--f-mono, monospace); font-size: .74rem; word-break: break-all; color: var(--aco); }
.hk-resta { text-align: center; font-weight: 700; margin: 6px 0; font-variant-numeric: tabular-nums; }
.hk-resta.hk-vencido { color: var(--mal, #b42318); }
.hk-dica { font-size: .82rem; }
.hk-gerando { text-align: center; padding: 40px 0; }
.hk-acoes-qr { justify-content: center; flex-wrap: wrap; }
.hk-daqui { margin-top: 12px; padding-top: 12px; border-top: 1px dashed var(--linha); display: flex; flex-direction: column; gap: 6px; align-items: stretch; }
.hk-daqui .btn { text-align: center; cursor: pointer; }

.hk-vazio { display: flex; flex-direction: column; gap: 4px; align-items: center; text-align: center; padding: 28px 12px; color: var(--aco); }
.hk-vazio b { color: var(--tinta); }
.hk-arqs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.hk-arq { display: flex; gap: 10px; align-items: flex-start; border: 1px solid var(--linha); border-radius: 10px; padding: 8px; background: var(--sup, #fff); min-width: 0; }
.hk-mini { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; flex: none; background: var(--px-suave, #eef3f1); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: .78rem; color: var(--aco); }
.hk-arq-i { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.hk-arq-i > b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hk-arq-a { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; align-items: center; }
.hk-arq-a select { font: inherit; font-size: .84rem; padding: 6px 8px; border: 1px solid var(--linha); border-radius: 8px; background: var(--sup, #fff); max-width: 100%; min-width: 0; }
.hk-resumo { margin: 4px 0 0; font-size: .86rem; }

.hk-conf-cab h3 { margin-bottom: 2px; }
.hk-conf-cab p { margin: 0; overflow-wrap: anywhere; }
.hk-avisos { margin: 10px 0; padding: 10px 12px 10px 28px; background: var(--at-s, #fff4dc); border: 1px solid #f1d08a; border-radius: 10px; font-size: .88rem; color: #6b4300; }
.hk-avisos li + li { margin-top: 4px; }
.hk-avisos .hk-forte { color: var(--mal, #b42318); font-weight: 700; }
.hk-destino { font-size: .88rem; margin: 8px 0; }
.hk-data { max-width: 220px; }
.hk-todos { display: flex; gap: 6px; flex-wrap: wrap; margin: 6px 0; }
.hk-tab { display: flex; flex-direction: column; border: 1px solid var(--linha); border-radius: 10px; overflow: hidden; }
.hk-linha { display: grid; grid-template-columns: minmax(170px, 1.2fr) minmax(110px, 1fr) minmax(150px, 1.3fr); gap: 4px 12px; align-items: center; padding: 8px 10px; border-top: 1px solid var(--linha); background: var(--sup, #fff); }
.hk-linha:first-child { border-top: 0; }
.hk-linha.hk-muda { background: #fffbea; }
.hk-linha.hk-muda .hk-lido small { color: #8a5a00; font-weight: 700; }
.hk-linha.hk-inval .hk-lido small { color: var(--mal, #b42318); font-weight: 700; }
.hk-marca { display: flex; gap: 8px; align-items: center; font-weight: 600; font-size: .9rem; min-width: 0; cursor: pointer; }
.hk-marca input { width: 20px; height: 20px; flex: none; }
.hk-atual, .hk-lido { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.hk-atual small, .hk-lido small { font-size: .7rem; text-transform: uppercase; letter-spacing: .04em; color: var(--aco); }
.hk-atual span { overflow-wrap: anywhere; }
.hk-lido input, .hk-lido select, .hk-lido textarea { font: inherit; font-size: .95rem; padding: 7px 9px; border: 1px solid var(--linha); border-radius: 8px; width: 100%; min-width: 0; background: #fff; }
.hk-muda .hk-lido input, .hk-muda .hk-lido select, .hk-muda .hk-lido textarea { border-color: #e0b54a; }
.hk-sover { margin-top: 8px; }
.hk-outros, .hk-achados { margin-top: 10px; font-size: .88rem; }
.hk-outros summary { cursor: pointer; font-weight: 600; }
.hk-outros ul, .hk-achados ul { margin: 6px 0; padding-left: 20px; }
.hk-chk { display: flex; gap: 8px; align-items: center; margin-top: 10px; font-size: .9rem; cursor: pointer; }
.hk-chk input { width: 18px; height: 18px; }
.hk-erro { color: var(--mal, #b42318); background: var(--mal-s, #fdecea); border: 1px solid #f4b8b0; border-radius: 10px; padding: 10px 12px; margin: 10px 0; font-size: .9rem; }
.hk-erro p { margin: 4px 0 8px; color: var(--tinta); }
.hk-conf-acoes { flex-wrap: wrap; margin-top: 12px; }
.hk-alerta { border: 2px solid var(--mal, #b42318); }
.hk-alerta h3 { color: var(--mal, #b42318); }
.hk-forte-cx { background: var(--mal-s, #fdecea); border-radius: 10px; padding: 10px 12px; margin-bottom: 8px; }
.hk-forte-cx p { margin: 4px 0 0; }

@media (max-width: 760px) {
  .hk-corpo { padding: 10px 10px 24px; }
  .hk-receber { grid-template-columns: 1fr; }
  .hk-qr { max-width: 240px; }
  .hk-linha { grid-template-columns: 1fr 1fr; }
  .hk-marca { grid-column: 1 / -1; }
  .hk-pac { max-width: none; }
  .hk-conf-acoes .btn { flex: 1 1 auto; }
}
.hk-corpo .cx { padding: 14px 16px; margin: 0; }
@media (max-width: 760px) { .hk-corpo .cx { padding: 12px; } }
