/* HEARTH live backend console — a pinned, collapsible strip along the bottom of the
   builder that streams exactly what the agent is doing (SSE /agent/console/stream). */
.hcon {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
  font-family: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;
  background: linear-gradient(180deg, rgba(14,11,9,.86), rgba(9,7,6,.97));
  border-top: 1px solid rgba(240,161,90,.28);
  backdrop-filter: blur(10px) saturate(1.1);
  box-shadow: 0 -14px 40px -18px rgba(0,0,0,.8);
  transition: height .18s ease;
  display: flex; flex-direction: column;
}
.hcon.is-collapsed { height: 34px !important; }
.hcon__bar {
  display: flex; align-items: center; gap: 10px; height: 34px; padding: 0 12px;
  cursor: pointer; user-select: none; flex: 0 0 auto;
  border-bottom: 1px solid rgba(240,161,90,.12);
}
.hcon__dot { width: 8px; height: 8px; border-radius: 50%; background: #e4642b;
  box-shadow: 0 0 8px #e4642b; flex: 0 0 auto; }
.hcon__dot.is-live { background: #7ee081; box-shadow: 0 0 9px #7ee081; }
.hcon__title { color: #f0a15a; font-size: 11.5px; letter-spacing: .10em; text-transform: uppercase;
  font-weight: 600; }
.hcon__count { color: #8b7d6f; font-size: 11px; }
.hcon__spacer { flex: 1; }
.hcon__btn {
  appearance: none; background: rgba(240,161,90,.08); color: #d8c3ad;
  border: 1px solid rgba(240,161,90,.18); border-radius: 6px;
  font: inherit; font-size: 11px; padding: 3px 9px; cursor: pointer; line-height: 1;
}
.hcon__btn:hover { background: rgba(240,161,90,.16); color: #f5e7d6; }
.hcon__btn.is-on { background: rgba(228,100,43,.22); border-color: rgba(228,100,43,.5); color: #ffd7bf; }
.hcon__chev { color: #8b7d6f; font-size: 12px; transition: transform .18s ease; }
.hcon.is-collapsed .hcon__chev { transform: rotate(180deg); }
.hcon__body {
  flex: 1; overflow-y: auto; overflow-x: hidden; padding: 6px 12px 10px;
  font-size: 12px; line-height: 1.55; scrollbar-width: thin;
  scrollbar-color: rgba(240,161,90,.3) transparent;
}
.hcon__body::-webkit-scrollbar { width: 8px; }
.hcon__body::-webkit-scrollbar-thumb { background: rgba(240,161,90,.25); border-radius: 8px; }
.hcon__row { display: flex; gap: 8px; white-space: pre-wrap; word-break: break-word; padding: 1px 0; }
.hcon__row:hover { background: rgba(255,255,255,.02); }
.hcon__t { color: #6d6157; flex: 0 0 auto; font-variant-numeric: tabular-nums; }
.hcon__tag { flex: 0 0 auto; font-weight: 700; letter-spacing: .04em; min-width: 46px; }
.hcon__msg { color: #cdbcab; flex: 1; }
.hcon--info  .hcon__tag { color: #6db6d6; }
.hcon--ok    .hcon__tag { color: #7ee081; }
.hcon--warn  .hcon__tag { color: #f0c05a; }
.hcon--warn  .hcon__msg { color: #ecd4a6; }
.hcon--err   .hcon__tag { color: #ff7a5c; }
.hcon--err   .hcon__msg { color: #ffb9a5; }
.hcon--scene .hcon__tag, .hcon--tv .hcon__tag, .hcon--net .hcon__tag { color: #f0a15a; }
.hcon__empty { color: #6d6157; font-style: italic; padding: 6px 0; }
/* keep page content clear of the collapsed bar */
body.has-hcon { padding-bottom: 40px; }
