.neighbor-card { padding: 0; overflow: hidden; }
.neighbor-title { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 24px 26px 12px; }
.neighbor-title h2 { margin: 0 0 6px; display: flex; align-items: center; gap: 8px; }
.neighbor-title h2 button { border: 0; background: transparent; color: #08a75b; font: inherit; font-size: .64em; cursor: pointer; padding: 2px; }
.neighbor-title h2 button:hover { text-decoration: underline; }
.neighbor-title p { margin: 0; color: #6d838a; }
.neighbor-title code { color: #1d758b; }
.neighbor-live { color: #078b67; background: #e5f8f1; border-radius: 99px; padding: 8px 12px; font-weight: 800; font-size: 12px; white-space: nowrap; }
.neighbor-router-field { width: min(430px, calc(100% - 52px)); margin: 10px 26px 18px; }
.neighbor-router-field label { display: block; font-weight: 800; margin-bottom: 7px; }
.neighbor-router-field select, .neighbor-toolbar select, .neighbor-toolbar input { border: 1px solid #bdced3; border-radius: 4px; background: #fff; min-height: 44px; padding: 0 14px; color: #263f48; }
.neighbor-router-field select { width: 100%; }
.neighbor-toolbar { border-top: 1px solid #e0e9eb; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 26px 12px; }
.neighbor-toolbar label { display: flex; align-items: center; gap: 8px; font-weight: 700; }
.neighbor-toolbar input { width: 230px; }
.neighbor-table { min-width: 1180px; }
.neighbor-table th { white-space: nowrap; }
.neighbor-table td { vertical-align: top; }
.neighbor-empty { text-align: center; padding: 45px 20px !important; color: #6d838a; }
.neighbor-error { color: #b43b35; background: #fff6f5; }
.neighbor-spinner { width: 16px; height: 16px; display: inline-block; vertical-align: -3px; margin-right: 8px; border: 2px solid #b7dbdf; border-top-color: #1496ae; border-radius: 50%; animation: neighbor-spin .7s linear infinite; }
.neighbor-card .table-foot { padding: 18px 26px; display: flex; justify-content: space-between; gap: 15px; }
.neighbor-card .table-foot small { color: #6d838a; }
@keyframes neighbor-spin { to { transform: rotate(360deg); } }
@media (max-width: 700px) {
  .neighbor-title, .neighbor-toolbar, .neighbor-card .table-foot { align-items: stretch; flex-direction: column; }
  .neighbor-toolbar input { width: 100%; }
  .neighbor-live { align-self: flex-start; }
}
