.ff945-agent-card {
  margin: 1rem 0;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(22, 91, 123, .18);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(239, 250, 247, .98), rgba(245, 249, 255, .98));
  box-shadow: 0 14px 35px rgba(20, 71, 91, .08);
  color: #123f58;
}
.ff945-agent-head,
.ff945-agent-actions,
.ff945-agent-metrics {
  display: flex;
  align-items: center;
  gap: .7rem;
  flex-wrap: wrap;
}
.ff945-agent-head { justify-content: space-between; }
.ff945-agent-title { display: grid; gap: .2rem; }
.ff945-agent-title small { color: #59788a; }
.ff945-agent-state {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .35rem .65rem;
  border-radius: 999px;
  background: #e6f1f5;
  font-weight: 800;
  font-size: .78rem;
}
.ff945-agent-state::before { content: ''; width: .55rem; height: .55rem; border-radius: 50%; background: #7893a1; }
.ff945-agent-state.is-online { background: #e2f7e9; color: #17623c; }
.ff945-agent-state.is-online::before { background: #35a863; box-shadow: 0 0 0 .25rem rgba(53,168,99,.13); }
.ff945-agent-metrics { margin-top: .8rem; }
.ff945-agent-metric { min-width: 8rem; padding: .65rem .75rem; border-radius: .85rem; background: rgba(255,255,255,.72); }
.ff945-agent-metric small { display: block; color: #6a8796; }
.ff945-agent-metric strong { display: block; margin-top: .15rem; }
.ff945-agent-actions { margin-top: .85rem; }
.ff945-pairing {
  margin-top: .85rem;
  padding: .8rem;
  border-radius: .9rem;
  background: #fff8db;
  color: #6b5310;
}
.ff945-pairing code { display: block; margin: .35rem 0; font-size: 1.05rem; font-weight: 900; letter-spacing: .05em; user-select: all; }
.ff945-agent-error { margin-top: .7rem; color: #a43d2d; }
@media (max-width: 680px) {
  .ff945-agent-card { padding: .9rem; border-radius: 1rem; }
  .ff945-agent-metric { flex: 1 1 42%; min-width: 0; }
  .ff945-agent-actions .btn { flex: 1 1 100%; }
}
