/* Conversación del ticket, persona asignada y preventivos */
.hilo {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 8px 0 12px;
}
.msg {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 12px;
  background: var(--card, transparent);
  max-width: 92%;
}
.msg .msg-h {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 13px;
  margin-bottom: 4px;
}
.msg .msg-h .mono {
  margin-left: auto;
  color: var(--muted);
}
.msg .prose {
  white-space: pre-wrap;
  margin: 0;
}
.msg.tecnico {
  align-self: flex-end;
  border-color: var(--bar-fill, var(--line));
}
.msg.cliente {
  align-self: flex-start;
}
.msg.sistema {
  align-self: center;
  max-width: 100%;
  font-size: 13px;
  color: var(--muted);
  border-style: dashed;
}
.msg.interno {
  border-style: dashed;
  background: color-mix(in srgb, var(--warn) 8%, transparent);
}
.msg.nuevo {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--info, #0b6477) 45%, transparent);
}
.comp textarea {
  width: 100%;
  box-sizing: border-box;
}
.comp-opts {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 6px;
}
.comp-opts .chk {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-size: 13px;
}
.asig {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  margin-left: auto;
}
.asig select {
  max-width: 180px;
}
.cnt-msg {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
#timerSlot {
  display: flex;
  align-items: center;
  gap: 8px;
}
.prev-lista {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}
.prev-item {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 10px 12px;
}
.prev-item.off {
  opacity: 0.6;
}
.prev-item .prev-top {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.prev-item ul {
  margin: 6px 0 0 18px;
  padding: 0;
  font-size: 13px;
  color: var(--muted);
}
