/* Pacientes — lista (pacientes/module.js). Discreta: valores em cinza, nome nunca quebra. */
.pl{min-width:0}
.pl-topo{margin:0 0 .875rem}
.pl-topo h1{margin:0;font-size:1.75rem}
.pl-topo p{margin:.25rem 0 0;color:var(--mut);font-size:.8438rem}
.pl-sub{color:var(--mut);font-size:.7812rem}
.m{font-variant-numeric:tabular-nums}
.pl-carr{font-size:.8125rem;font-weight:400;color:var(--mut)}
.pl-barra{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.625rem .75rem;border:1px solid var(--line);border-radius:.75rem;background:var(--sur);margin:0 0 .75rem}
.pl-busca{margin:0}
.pl-busca input{width:15rem;max-width:100%;padding:.4375rem .6875rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.8125rem}
.pl-filtros{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.pl-op{display:block;width:100%;text-align:left;padding:.4375rem .625rem;border:0;border-radius:.5rem;background:transparent;color:var(--ink);font:inherit;font-size:.8125rem;cursor:pointer;white-space:nowrap}
.pl-op:hover{background:var(--sur2)}
.pl-op.on{font-weight:700;color:var(--acc)}
.pl-limpar{border:0;background:transparent;color:var(--acc);font:inherit;font-size:.7812rem;font-weight:600;cursor:pointer;text-decoration:underline}
.pl-at{margin-left:auto}
.pl-erro{font-weight:600;margin:0 0 .75rem}
.pl-tw{border:1px solid var(--line);border-radius:.75rem;background:var(--sur);overflow-x:auto;-webkit-overflow-scrolling:touch}
.pl-tab{width:100%;border-collapse:collapse;min-width:61.25rem}
.pl-tab th,.pl-tab td{text-align:left;padding:0 .625rem;height:2.875rem;border-bottom:1px solid var(--line);white-space:nowrap;font-size:.8125rem;vertical-align:middle}
.pl-tab th{height:2.375rem;font-size:.6875rem;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;font-weight:500}
.pl-tab tbody tr{cursor:pointer}
.pl-tab tbody tr:hover td{background:var(--sur2)}
.pl-tab .pl-nome{position:sticky;left:0;z-index:1;background:var(--sur);font-weight:600;box-shadow:1px 0 0 var(--line)}
.pl-pill{display:inline-block;padding:2px .5rem;border-radius:62.4375rem;border:1px solid var(--line);font-size:.7188rem;font-weight:600;background:var(--sur2)}
.pl-val{color:var(--mut);font-size:.7812rem}
.pl-pags{display:flex;align-items:center;justify-content:flex-end;gap:.25rem;padding:.75rem}
.pl-pags button{min-width:2rem;height:2rem;padding:0 .5rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.8125rem;cursor:pointer}
.pl-pags button.on{background:var(--acc);border-color:var(--acc);color:var(--acc-ink);font-weight:600}
.pl-pags button:disabled{opacity:.4;cursor:default}
.pl-pags-info{margin-right:auto;color:var(--mut);font-size:.7812rem}
.pl-pags-gap{color:var(--mut);padding:0 2px}
.pl-btn{padding:.4375rem .875rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer}
.pl-vazio{display:flex;align-items:center;gap:.5rem;padding:1.5rem;border:1px solid var(--line);border-radius:.75rem;background:var(--sur);color:var(--mut)}
@media(max-width:760px){
 .pl-busca{flex:1 1 100%}.pl-busca input{width:100%}
 .pl-filtros{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:2px}
 .pl-filtros .fp-dd-pop{position:fixed;left:.75rem;right:.75rem;top:auto;min-width:0}
}
.pl-qd{display:flex;flex-direction:column;line-height:1.25}
.pl-qd .pl-sub{font-size:.75rem}
.pl-tab-med{min-width:53.75rem}
.pl-zap{display:inline-flex;align-items:center;gap:.375rem;padding:.3125rem .6875rem;border:1px solid var(--line);border-radius:62.4375rem;background:var(--sur);color:var(--ink);font-size:.7812rem;font-weight:600;text-decoration:none;white-space:nowrap}
.pl-zap:hover{border-color:var(--acc);color:var(--acc)}
/* 20/10 (1.74.0): uma linha de filtro só; contador à direita; números numa faixa compacta clicável. */
.pl-linha .pl-busca input{width:12.5rem}
.pl-cont{margin-left:auto;font-size:.7812rem;color:var(--mut);white-space:nowrap}
.pl-kpis{display:flex;flex-wrap:wrap;gap:0;margin:-.25rem 0 .75rem;border:1px solid var(--line);border-radius:.625rem;background:var(--sur);overflow:hidden;width:max-content;max-width:100%}
.pl-k{display:inline-flex;align-items:baseline;gap:.375rem;padding:.4375rem .875rem;border:0;border-right:1px solid var(--line);background:transparent;color:var(--mut);font:inherit;font-size:.7812rem;cursor:pointer;white-space:nowrap}
.pl-k:last-child{border-right:0}
.pl-k b{font-size:.9375rem;font-weight:700;color:var(--ink)}
.pl-k:hover{background:var(--sur2)}
.pl-k.on{background:#e3e9ef;color:#1d5b92;font-weight:600}
.pl-k.on b{color:#1d5b92}
.pl-fpop{min-width:18.75rem;max-height:26.25rem;gap:.625rem;padding:.625rem}
.pl-fg b{display:block;font-size:.6875rem;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .3125rem}
.pl-fg-ops{display:flex;flex-wrap:wrap;gap:.3125rem}
.pl-fg-rola{max-height:7.5rem;overflow:auto}
.pl-ch{padding:.25rem .625rem;border:1px solid var(--line);border-radius:62.4375rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.7812rem;cursor:pointer;white-space:nowrap}
.pl-ch.on{border-color:#1d5b92;color:#1d5b92;font-weight:600;background:#e3e9ef}
.pl-op .hw-chip-n{float:right;margin-left:.75rem}
.pl-tab-ag{min-width:47.5rem}
.pl-tab-ag .pl-hora{width:4rem;font-weight:600}
.pl-tab-ag .pl-nm{font-weight:600}
.pl-diac td{height:2rem;background:var(--sur2);font-size:.75rem;font-weight:600;color:var(--ink);cursor:default}
.pl-tab tbody tr.pl-diac:hover td{background:var(--sur2)}
.pl-st{font-size:.7812rem;color:var(--mut)}
.pl-st-forte{font-weight:700;color:var(--ink)}
@media(max-width:760px){.pl-cont{margin-left:0;flex:1 1 100%}.pl-kpis{width:100%}.pl-k{flex:1 1 50%}}
/* 22/10 (1.100.0): título | números à direita. As visões foram para o menu lateral (1.178.0). */
.pl-topo{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem}
.pl-topo .pl-kpis{justify-self:end;margin:0}
.pl-topo .pl-k{padding:.375rem .75rem}
@media(max-width:1180px){.pl-topo{grid-template-columns:auto 1fr}.pl-topo .pl-kpis{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){.pl-topo{grid-template-columns:1fr}}
/* Busca primeiro, com lupa, no padrão HW. */
.pl-busca{position:relative;display:flex;align-items:center}
.pl-busca svg{position:absolute;left:.625rem;color:var(--mut);pointer-events:none}
.pl-linha .pl-busca input{width:16.25rem;padding-left:2rem;min-height:2rem;box-sizing:border-box}
.pl-fbtn{display:inline-flex;align-items:center;gap:.4375rem;min-height:2rem;padding:.375rem .75rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur2);color:var(--ink);font:inherit;font-size:.7812rem;font-weight:600;cursor:pointer;white-space:nowrap}
.pl-fbtn:hover{border-color:#1d5b92}
.pl-fbtn.on{border-color:#1d5b92;color:#1d5b92;background:#e3e9ef}
.pl-fbtn-n{display:inline-grid;place-items:center;min-width:1.125rem;height:1.125rem;padding:0 .3125rem;border-radius:62.4375rem;background:#1d5b92;color:#fff;font-size:.6875rem}
.pl-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin:-.25rem 0 .75rem}
.pl-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .375rem .25rem .625rem;border:1px solid #1d5b92;border-radius:62.4375rem;background:#e3e9ef;color:#1d5b92;font:inherit;font-size:.75rem;font-weight:600;cursor:pointer}
.pl-chip span{font-size:.9375rem;line-height:1;padding:0 .1875rem}
/* Painel lateral de filtros. */
#pl-gaveta .pl-gfundo{position:fixed;inset:0;z-index:900;background:#0f1d2a55;opacity:0;transition:opacity .18s}
#pl-gaveta .pl-gaveta{position:fixed;top:0;right:0;bottom:0;z-index:901;width:min(28.75rem,100vw);display:flex;flex-direction:column;background:var(--sur,#fff);box-shadow:-12px 0 32px #183b4426;transform:translateX(100%);transition:transform .2s ease-out}
#pl-gaveta.aberta .pl-gfundo{opacity:1}
#pl-gaveta.aberta .pl-gaveta{transform:none}
@media(prefers-reduced-motion:reduce){#pl-gaveta .pl-gaveta,#pl-gaveta .pl-gfundo{transition:none}}
.pl-gaveta header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}
.pl-gaveta h2{margin:0;font-size:1.125rem}
.pl-gx{width:2rem;height:2rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font-size:1.125rem;line-height:1;cursor:pointer}
.pl-gcorpo{flex:1;overflow:auto;padding:.25rem 1.25rem 1.25rem;-webkit-overflow-scrolling:touch}
.pl-gsec{padding:.875rem 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:.75rem}
.pl-gsec:last-child{border-bottom:0}
.pl-gsec h3{margin:0;font-size:.8438rem;font-weight:700;color:var(--ink)}
.pl-gaveta .pl-fg b{display:block;font-size:.6875rem;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .375rem}
.pl-gaveta .pl-fg-rola{max-height:8.25rem;overflow:auto}
.pl-faixa{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.pl-faixa label{display:flex;flex-direction:column;gap:.1875rem;font-size:.7188rem;color:var(--mut)}
.pl-faixa input{width:100%;box-sizing:border-box;min-height:2.125rem;padding:.375rem .625rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.8125rem}
.pl-gaveta footer{display:flex;justify-content:space-between;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--line);background:var(--sur)}
.pl-btn-pri{background:#1d5b92;border-color:#1d5b92;color:#fff;font-weight:600;padding:.4375rem 1.375rem}
/* 27/10: painel de filtros compacto (duas colunas, listas suspensas), colunas extras e Salvar como indicador. */
#pl-gaveta .pl-gaveta{width:min(35rem,100vw)}
.pl-gsec{padding:.75rem 0;gap:.5rem}
.pl-gsec h3{font-size:.7812rem;text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}
.pl-gg{display:grid;grid-template-columns:1fr 1fr;gap:.625rem .75rem}
.pl-gf{display:flex;flex-direction:column;gap:.25rem;min-width:0;font-size:.75rem;color:var(--mut)}
.pl-gf>span{font-weight:600}
.pl-gf.on>span{color:var(--ink)}
.pl-gf.on>span::before{content:'● ';color:#1d5b92}
.pl-gf .fgh-sel{width:100%;min-height:2.125rem;border-radius:.5rem}
.pl-gf.on .fgh-sel{border:2px solid #1d5b92;padding:.3125rem .5625rem}
.pl-gf select{width:100%;min-height:2.125rem}
.pl-gpar{display:grid;grid-template-columns:1fr 1fr;gap:.375rem}
.pl-gf input{width:100%;box-sizing:border-box;min-height:2.125rem;padding:.375rem .5rem;border:1px solid var(--line);border-radius:.5rem;background:var(--sur);color:var(--ink);font:inherit;font-size:.7812rem;min-width:0}
.pl-gf.on input{border-color:#1d5b92}
@media(max-width:520px){.pl-gg{grid-template-columns:1fr}}
.pl-tab{width:max-content;min-width:100%}
.pl-tab th.pl-ext{color:#1d5b92;font-weight:600}
.pl-salvar svg{flex:none}
#pl-salvar .pl-gfundo{position:fixed;inset:0;z-index:950;background:#0f1d2a55}
#pl-salvar .pl-modal{position:fixed;z-index:951;left:50%;top:18vh;transform:translateX(-50%);width:min(28.75rem,calc(100vw - 2rem));display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:.75rem;background:var(--sur,#fff);box-shadow:0 18px 48px #183b4433}
#pl-salvar h2{margin:0;font-size:1.125rem}
#pl-salvar p{margin:0;font-size:.8438rem}
.pl-schips{display:flex;flex-wrap:wrap;gap:.375rem}
.pl-chip-fixo{cursor:default;padding:.25rem .625rem}
.pl-macoes{display:flex;justify-content:flex-end;gap:.5rem}
.pl-macoes a.pl-btn{text-decoration:none}
