/* módulo qm — QM & Analytics (somente variáveis de cor do tema) */
.qm-score{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:2px 8px;border-radius:999px;font:600 13px/1.4 var(--f-mono);background:var(--surface-2);color:var(--fg-2);border:1px solid var(--line)}
.qm-score.good{background:var(--good-soft);color:var(--good);border-color:transparent}
.qm-score.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}
.qm-score.bad{background:var(--bad-soft);color:var(--bad);border-color:transparent}
.qm-score.na{color:var(--muted)}
.good-t{color:var(--good)} .bad-t{color:var(--bad)}
.qm-table td{vertical-align:top}
.qm-top .card{min-width:0}

/* visão geral */
.qm-steps{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.qm-step{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);flex-wrap:wrap}
.qm-step .grow{min-width:160px}
.qm-n{width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);display:inline-flex;align-items:center;justify-content:center;font:600 12px var(--f-mono);flex:none}
.qm-alerts{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.qm-alert{display:flex;gap:10px;align-items:flex-start;text-align:left;width:100%;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:8px 10px;cursor:pointer;color:var(--fg);font:inherit}
.qm-alert:hover{background:var(--surface-2)}
.qm-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);margin-top:6px;flex:none}
.qm-alert.sev-critical .qm-dot{background:var(--bad)} .qm-alert.sev-info .qm-dot{background:var(--muted)}

/* tela de avaliação lado a lado */
.qm-eval{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;align-items:start}
.qm-left{display:flex;flex-direction:column;gap:10px;min-width:0}
.qm-conv{background:var(--chat-bg);border-radius:var(--r);max-height:62vh;min-height:220px;padding:14px}
.qm-conv mark,.qm-ex mark,.qm-rtest mark{background:var(--warn-soft);color:var(--fg);border-radius:3px;padding:0 2px;box-shadow:inset 0 -2px 0 var(--warn)}
.qm-call audio{width:100%;margin-bottom:6px}
.qm-an{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface-2)}
.qm-metrics{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;margin-top:8px}
.qm-hit{margin-top:3px} .qm-hit.bad{color:var(--bad)}
.qm-prev summary{cursor:pointer;color:var(--muted);font-size:13px}
.qm-right{position:sticky;top:12px;max-height:calc(100vh - 90px);overflow-y:auto;min-width:0}
.qm-sticky{position:sticky;top:-16px;background:var(--surface);padding:4px 0 10px;margin-bottom:6px;border-bottom:1px solid var(--line);z-index:2}
.qm-sticky select{max-width:100%}
.qm-live{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.qm-live .qm-score{font-size:18px;min-width:64px;padding:4px 10px}
.qm-sec{margin-top:14px}
.qm-sec h3{font-size:14px}
.qm-crit{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;margin-top:8px;background:var(--surface)}
.qm-crit.fail{border-left:3px solid var(--bad)}
.qm-ct{font-weight:500}
.qm-seg button{padding:5px 10px;min-width:36px}
.qm-seg button:disabled{cursor:default}
.qm-pts{width:74px}
.qm-opt{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;padding:5px 9px;cursor:pointer;color:var(--fg-2);font-size:12.5px}
.qm-opt.on{background:var(--brand);color:var(--on-accent);border-color:var(--brand)}
.qm-ev{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.qm-ev q{font-size:12.5px;color:var(--fg-2);background:var(--surface-2);border-left:3px solid var(--line-strong);padding:4px 8px;border-radius:4px;quotes:"“" "”"}
.qm-cm{margin-top:8px} .qm-cm textarea{width:100%}
.qm-actions{margin-top:14px;position:sticky;bottom:-16px;background:var(--surface);padding:10px 0;border-top:1px solid var(--line)}
.qm-status{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;margin-bottom:12px;background:var(--surface-2)}
.qm-box{margin-top:8px;padding:8px 10px;border-radius:6px;background:var(--bad-soft)}
.qm-box.good{background:var(--good-soft)}
.qm-box p{margin-top:4px;white-space:pre-wrap;font-size:13px}

/* formulários */
.qm-fcard{display:flex;flex-direction:column;gap:3px}
.qm-fcard.off{opacity:.65}
.qm-fcard h2{font-size:15px}
.qm-tpl h3{font-size:14px;margin-bottom:4px}
.qm-fe{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start}
#fe-secs{display:flex;flex-direction:column;gap:12px;min-width:0}
.qm-fe-sec input[data-k="name"]{font-weight:600}
.qm-fe-crit{border:1px solid var(--line);border-radius:var(--r);padding:8px;margin:8px 0;background:var(--surface-2);display:flex;flex-direction:column;gap:6px}
.qm-fe-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.qm-fe-row input[data-c="text"]{flex:1 1 100%;min-width:0;font-weight:500}
.qm-fe-row input[data-c="help"]{flex:1 1 240px;min-width:0}

/* parâmetros */
.qm-params{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start}
.qm-off{opacity:.55}
.qm-phr{margin-top:2px}
.qm-topic{padding:6px 0;border-bottom:1px solid var(--line)} .qm-topic:last-child{border-bottom:0}
.qm-rtest{border-top:1px solid var(--line);margin-top:14px;padding-top:12px;display:flex;flex-direction:column;gap:6px}
.qm-rtest textarea{width:100%;font-family:var(--f-mono);font-size:12.5px}

/* calibração */
.qm-calib td{white-space:nowrap} .qm-calib td:first-child{white-space:normal;min-width:200px}
.qm-div td{background:var(--bad-soft)}

/* analytics */
.qm-ask .grow{min-width:0}
.qm-answer{margin-top:10px;padding:10px 12px;background:var(--surface-2);border-radius:var(--r);white-space:pre-wrap}
.qm-sug{cursor:pointer;border:0}
.qm-drill{cursor:pointer}
button.tag.qm-drill{border:0}
.qm-drow{display:block;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:9px 11px;cursor:pointer;color:var(--fg);font:inherit}
.qm-drow:hover{background:var(--surface-2)}
.qm-ex{margin-top:4px;color:var(--fg-2)}

@media (max-width:1100px){.qm-params,.qm-fe{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){
  .qm-eval{grid-template-columns:minmax(0,1fr)}
  .qm-right{position:static;max-height:none;overflow:visible}
  .qm-conv{max-height:50vh}
  .qm-sticky{top:0}
  .qm-actions{bottom:0}
}
@media (max-width:560px){.qm-crit>.row{flex-direction:column}.qm-crit .col{align-items:flex-start!important}.qm-seg{flex-wrap:wrap}}
#qm-body select{width:auto;max-width:240px}
.qm-kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px}
.qm-kv>span:nth-child(odd){color:var(--muted)}
.qm-fe-row select,.qm-fe-row input[type="number"],.qm-fe-sec>.row input[type="number"]{width:auto;flex:none}
.qm-fe-row input[type="checkbox"]{width:auto}
.qm-fe-sec>.row input[data-k="name"]{flex:1 1 auto;min-width:0;width:auto}
