#panel_admin .admin-panel-tabs {
  width: 100%;
  max-width: 760px;
  background: white;
  border-radius: 8px;
  padding: 5px;
  margin-bottom: 5px;
  gap: 4px;
}

admin-agents { display: block; }
.admin-agents .admin-agents-table { max-width: 100%; }
.admin-agents table { min-width: 780px; table-layout: fixed; }
.admin-agents th:first-child { width: 30%; }
.admin-agents th:nth-child(2) { width: 23%; }
.admin-agents th:nth-child(3) { width: 23%; }
.admin-agents th:last-child { width: 24%; }
.admin-agents td { vertical-align: top; overflow-wrap: anywhere; }
.admin-agents small { display: block; margin-top: 4px; }
.admin-agents-id { font-family: monospace; font-size: .875rem; }
.admin-agents-phones { display: flex; flex-wrap: wrap; gap: 6px; }
.admin-agents-phones .badge { white-space: normal; text-align: left; overflow-wrap: anywhere; }
.admin-agents .table-responsive:focus-visible { outline: 2px solid #696cff; outline-offset: -2px; }
.admin-agent-details-link { white-space: normal; overflow-wrap: anywhere; display: inline; }
.admin-agent-details-link:hover { text-decoration: underline; }

.admin-agent-canvas {
  position: fixed;
  inset: 0 0 0 auto;
  margin: 0;
  padding: 0;
  width: min(820px, 100vw);
  max-width: 100vw;
  height: 100vh;
  height: 100dvh;
  max-height: none;
  border: 0;
  color: #384551;
  background: #fff;
  box-shadow: -8px 0 32px rgb(0 0 0 / 15%);
}
.admin-agent-canvas[open] { display: flex; flex-direction: column; }
.admin-agent-canvas::backdrop { background: rgb(24 31 45 / 45%); }
body:has(.admin-agent-canvas[open]) { overflow: hidden; }
.admin-agent-canvas .offcanvas-header { flex: 0 0 auto; gap: 1rem; padding: 1.5rem; align-items: center; justify-content: space-between; }
.admin-agent-canvas .offcanvas-header > div { min-width: 0; overflow-wrap: anywhere; }
.admin-agent-canvas .btn-close { flex-shrink: 0; }
.admin-agent-canvas .offcanvas-body { flex: 1 1 auto; min-height: 0; padding: 1.5rem; overflow-y: auto; overscroll-behavior: contain; }
.admin-agent-canvas .admin-agents-id { overflow-wrap: anywhere; }
.admin-agent-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-bottom: 0; }
.admin-agent-overview dt { color: #8592a3; font-size: .8rem; font-weight: 500; margin-bottom: .25rem; }
.admin-agent-overview dd { margin: 0; overflow-wrap: anywhere; }
.admin-agent-config { border: 1px solid #e4e6e8; border-radius: 6px; margin-bottom: .75rem; padding: .85rem 1rem; }
.admin-agent-config summary { cursor: pointer; font-weight: 600; overflow-wrap: anywhere; }
.admin-agent-config[open] summary { margin-bottom: .75rem; }
.admin-agent-config pre { margin: 0; padding: .85rem; border-radius: 4px; background: #f5f5f9; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .8rem; max-height: 440px; overflow-y: auto; }
.admin-agent-credential { padding: .75rem 0; border-top: 1px solid #e4e6e8; overflow-wrap: anywhere; }

@media (max-width: 575px) {
  #panel_admin .admin-panel-tabs { flex-direction: row; }
  /* The theme forces every mobile nav item to width: 100% !important. */
  #panel_admin .admin-panel-tabs .nav-item { width: auto !important; flex: 1 1 calc(50% - 4px); margin: 0; }
  #panel_admin > div > .tab-content { padding: 1rem 0; }
  .admin-agent-overview { grid-template-columns: minmax(0, 1fr); }
}
