/* Atendimento gravado (consulta/consulta.js, 28/10). Verde = em atendimento, como no Amigo. */
.consulta-slot{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
/* Canto inferior direito do card do paciente (pedido dele 28/10), lado a lado e mesma altura dos botões Evolução/Prescrição. */
.patient-identity{position:relative}
.patient-identity>.consulta-slot{position:absolute;right:1.25rem;bottom:1.25rem}
@media (max-width:900px){.patient-identity>.consulta-slot{position:static;margin-top:.875rem}}
.patient-consult-header .consulta-slot{margin-left:auto}
.cs-btn{display:inline-flex;align-items:center;gap:.375rem;height:2.25rem;padding:0 .75rem;border-radius:.5rem;border:1px solid var(--line,#d6dde6);background:var(--sur,#fff);color:var(--acc,#1d5b92);font:inherit;font-size:.8438rem;font-weight:600;cursor:pointer;white-space:nowrap;box-sizing:border-box}
.cs-btn:hover{border-color:var(--acc,#1d5b92);background:var(--acc-soft,#eaf1f8)}
.cs-btn:disabled{opacity:.6;cursor:wait}
.cs-btn.cs-fim{background:#1f8a4c;border-color:#1f8a4c;color:#fff}
.cs-btn.cs-fim:hover{background:#187040}
.cs-barra .cs-btn.cs-ini{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}
.cs-btn.cs-fim .mono{font-variant-numeric:tabular-nums}
.cs-btn .cs-ponto,.cs-estado .cs-ponto{width:.4375rem;height:.4375rem;border-radius:50%;background:currentColor;display:inline-block}
.cs-outro{font-size:.75rem;color:var(--mut);border:1px dashed var(--line);border-radius:.5rem;padding:.375rem .625rem}
.cs-dialog{width:min(38.75rem,calc(100vw - 2rem))}
.cs-dialog.cs-mini{width:min(28.75rem,calc(100vw - 2rem))}
.cs-dialog.cs-result,.cs-dialog.cs-mod{width:min(53.75rem,calc(100vw - 2rem))}
.cs-dialog.cs-result .conversation-body,.cs-dialog.cs-mod .conversation-body{max-height:68vh}
.cs-corpo{display:flex;flex-direction:column;gap:.875rem}
.cs-pac{font-size:.9375rem}
.cs-campo,.cs-rot{display:flex;flex-direction:column;gap:.375rem;font-size:.75rem;font-weight:700;color:var(--mut)}
.cs-rot .sub{font-weight:400}
span.cs-rot{flex-direction:row;align-items:center;gap:.375rem}
.cs-corpo textarea,.cs-corpo input[type=text],.cs-painel textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:.5rem;padding:.5625rem .6875rem;font:inherit;font-size:.875rem;font-weight:400;color:var(--ink);resize:vertical;line-height:1.5}
.cs-lapis{border:0!important;background:transparent!important;padding:2px!important;color:var(--mut);cursor:pointer;display:inline-flex}
.cs-modelos{display:flex;flex-wrap:wrap;gap:.375rem}
.cs-modelo{border:1px solid var(--line)!important;background:#fff;border-radius:6.1875rem!important;padding:.4375rem .875rem!important;font:inherit;font-size:.8125rem;color:var(--ink);cursor:pointer}
.cs-modelo.on{border-color:var(--acc)!important;background:var(--acc-soft);color:var(--acc);font-weight:700;box-shadow:inset 0 0 0 1px var(--acc)}
.cs-chave{display:flex;justify-content:space-between;align-items:center;gap:.75rem}
.cs-chave>span{display:flex;flex-direction:column;gap:2px;font-size:.8125rem}
.cs-chave input{width:2.5rem;height:1.375rem;accent-color:var(--acc)}
.cs-mic{display:flex;align-items:center;gap:.625rem;border:1px solid var(--line);border-radius:.625rem;padding:.625rem .75rem;font-size:.8125rem;color:var(--mut)}
.cs-mic.ok{color:var(--ink)}.cs-mic.ok svg{color:#1f8a4c}
.cs-mic.ruim{border-color:#d9a3a3;color:#9b2c2c}
.cs-nivel{display:inline-flex;gap:2px;align-items:center}
.cs-nivel i{width:.1875rem;height:.875rem;border-radius:2px;background:#d6dde3}
.cs-nivel i.on{background:#1f8a4c}
.cs-erro{color:#b42318;font-size:.8125rem;margin:0}
.cs-erro:empty{display:none}
.conversation-dialog .cs-pri{background:var(--acc);color:var(--acc-ink);border-color:var(--acc);font-weight:700;display:inline-flex;align-items:center;gap:.375rem}
.conversation-dialog .cs-pri:disabled{opacity:.5;cursor:default}
.conversation-dialog .cs-perigo{background:#b42318;color:#fff;border-color:#b42318;font-weight:700}
.conversation-dialog .cs-perigo-txt{color:#b42318}
.cs-esp{flex:1}
.cs-dialog footer{justify-content:flex-end}
.cs-anamnese{min-height:21.25rem;font-family:inherit}
.cs-gerando{display:flex;align-items:center;gap:.625rem;color:var(--mut)}
.cs-det summary{cursor:pointer;font-size:.8125rem;color:var(--acc);font-weight:600}
.cs-det[open]{display:flex;flex-direction:column;gap:.625rem}
.cs-mod-item{border:1px solid var(--line);border-radius:.625rem;padding:.75rem;display:flex;flex-direction:column;gap:.625rem}
.cs-mod-linha{display:grid!important;grid-template-columns:1fr auto;gap:2px .625rem;text-align:left;border:0!important;background:transparent!important;padding:0!important;cursor:pointer;width:100%}
.cs-mod-linha .sub{grid-column:1;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-mod-linha svg{grid-row:1/3;grid-column:2;align-self:center;color:var(--mut)}
.cs-mod-acoes{display:flex;gap:.5rem;align-items:center}
.cs-mod-acoes button{padding:.5rem .75rem;border:1px solid var(--line);background:#fff;border-radius:.375rem;cursor:pointer}
/* Barra de baixo: aparece em qualquer tela enquanto o atendimento está aberto. */
.cs-barra{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);z-index:900;display:flex;align-items:center;gap:.625rem;max-width:calc(100vw - 2rem);width:max-content;padding:.5rem .625rem .5rem .875rem;border:1px solid var(--line);border-radius:.875rem;background:#fff;box-shadow:0 10px 30px rgba(20,40,60,.18);font-size:.8125rem}
body.cs-com-painel .cs-barra{left:calc(50% - 11.875rem)}
.cs-estado{display:inline-flex;align-items:center;gap:.375rem;font-weight:700;color:var(--mut)}
.cs-estado.on{color:#c0262d}
.cs-estado.on .cs-ponto{animation:cs-pulso 1.2s ease-in-out infinite}
@keyframes cs-pulso{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.cs-estado.on .cs-ponto{animation:none}}
.cs-nome{border:0;background:transparent;font:inherit;font-weight:700;color:var(--ink);cursor:pointer;padding:0;max-width:11.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-tempo{font-variant-numeric:tabular-nums;font-weight:700}
.cs-ultima{min-width:0;max-width:21.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mut);font-style:italic;direction:rtl;text-align:left}
.cs-ultima .sub,.cs-ultima .cs-erro{direction:ltr;font-style:normal}
.cs-b{display:inline-flex;align-items:center;gap:.375rem;height:2rem;padding:0 .625rem;border:1px solid var(--line);border-radius:.5rem;background:#fff;font:inherit;font-size:.8125rem;color:var(--ink);cursor:pointer;white-space:nowrap}
.cs-b[aria-pressed=true]{background:var(--acc-soft);border-color:var(--acc);color:var(--acc)}
.cs-b.cs-sutil{border-color:transparent;color:var(--mut)}
.cs-barra .cs-btn{height:2rem}
.cs-painel{position:fixed;top:.75rem;right:.75rem;bottom:.75rem;width:22.5rem;z-index:899;display:flex;flex-direction:column;gap:.625rem;padding:.875rem;border:1px solid var(--line);border-radius:.875rem;background:#fff;box-shadow:0 10px 30px rgba(20,40,60,.14)}
.cs-painel header{display:flex;justify-content:space-between;align-items:center}
.cs-painel header button{border:0;background:transparent;font-size:1.25rem;cursor:pointer;color:var(--mut)}
.cs-painel .cs-rot{font-size:.75rem;font-weight:700;color:var(--mut)}
.cs-painel .cs-texto{flex:1;min-height:7.5rem;resize:none}
.cs-interino{margin:0;min-height:1.4em;font-size:.8125rem;color:var(--mut);font-style:italic}
body.cs-com-painel{padding-right:24rem}
body.cs-gravando{padding-bottom:4.5rem}
@media (max-width:900px){
 .cs-painel{top:auto;left:.75rem;width:auto;height:42vh;bottom:4.75rem}
 body.cs-com-painel{padding-right:0}
 body.cs-com-painel .cs-barra{left:50%}
 .cs-ultima{display:none}
 .cs-barra{gap:.375rem;flex-wrap:wrap;justify-content:center}
}
/* Voa no meio da tela (Plugin com renderElement); "–" esconde e a barra de baixo tem "Abrir Voa". */
.cs-voa{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:950;width:min(35rem,calc(100vw - 2rem));height:min(45rem,calc(100vh - 7.5rem));display:flex;flex-direction:column;border:1px solid var(--line);border-radius:.875rem;background:#fff;box-shadow:0 20px 60px rgba(20,40,60,.28);overflow:hidden}
.cs-voa[hidden]{display:none}
.cs-voa header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--line);font-size:.8125rem}
.cs-voa header button{border:0;background:transparent;font-size:1.25rem;line-height:1;cursor:pointer;color:var(--mut);padding:2px .5rem}
.cs-voa-alvo{flex:1;min-height:0;position:relative}
.cs-voa-alvo>*{width:100%;height:100%}
