/* 用户、节点与平台财务页面的正式交互补充。 */
.node-col-name{width:17%}.node-col-address{width:15%}.node-col-cpu,.node-col-memory{width:5%}.node-col-network{width:9%}.node-col-status,.node-col-latency,.node-col-sessions{width:7%}.node-col-total,.node-col-today{width:10%}.node-col-actions{width:8%}
.admin-node-table .subline{overflow:hidden;text-overflow:ellipsis}
.node-form-dialog .form-grid select{width:100%;min-width:0}
.node-panel,
.user-panel { overflow: hidden; }
.node-filters { display: flex; align-items: center; gap: 10px; padding: 14px 20px; border-bottom: 1px solid var(--line); flex-wrap: wrap; }
.node-filters .search { width: 260px; max-width: 100%; }
.node-filters > .field { width: auto; }
.node-table { min-width: 1180px; table-layout: fixed; }
.user-table { min-width: 1180px; }
.node-table th,
.node-table td,
.user-table th,
.user-table td { padding-inline: 10px; white-space: nowrap; }
.node-table .center,
.user-table .center { text-align: center; }
.user-table .right { text-align: right; }
.node-table .resource-icon .icon { width: 17px; height: 17px; }
.user-panel .merchant-query { border-bottom: 1px solid var(--line); }
.user-panel .admin-merchant-table td { height: 66px; }
.admin-merchant-table .merchant-col-account { width: 16%; }
.admin-merchant-table .merchant-col-status,
.admin-merchant-table .merchant-col-quota { width: 8%; }
.admin-merchant-table .merchant-col-traffic,
.admin-merchant-table .merchant-col-consumption,
.admin-merchant-table .merchant-col-balance { width: 10%; }
.admin-merchant-table .merchant-col-recharge { width: 11%; }
.admin-merchant-table .merchant-col-registered { width: 12%; }
.admin-merchant-table .merchant-col-actions { width: 15%; }
.user-panel .admin-merchant-table .sticky { z-index: 1; background: white; }
.user-panel .admin-merchant-table th.sticky { z-index: 2; background: #f8fafc; }
.user-panel .admin-merchant-table tr:hover .sticky { background: #f8fafc; }
.merchant-table-foot strong { font-weight: 500; color: #506780; }
.merchant-table-foot .icon-btn:disabled { opacity: .4; cursor: not-allowed; }
.merchant-action-menu { z-index: 120; right: auto; bottom: auto; text-align: left; }
.merchant-menu-note { padding: 8px 10px 6px; color: var(--muted); font-size: 12px; line-height: 18px; white-space: normal; }

.node-form-dialog { width: 470px; }
.node-detail-dialog { width: 470px; }
.node-form-dialog .form-grid { gap: 0 24px; }
.node-form-dialog .node-address-row { grid-template-columns: minmax(0, 1fr) 100px; column-gap: 10px; }
.node-form-dialog .form-group { margin-bottom: 16px; }
.node-form-dialog .form-error { min-height: 20px; margin-bottom: 0; }
.node-detail-heading { display: flex; align-items: center; gap: 12px; }
.node-detail-heading strong { font-size: 15px; color: #213957; }
.node-detail-heading p { margin: 3px 0 0; }
.node-detail { margin: 20px 0; }
.node-detail dt { color: var(--muted); }
.node-detail dd { margin: 0; }
.platform-finance-panel .right { text-align: right; }
.platform-finance-panel .center { text-align: center; }
.platform-finance-panel .finance-query { border-bottom: 1px solid var(--line); }

@media (max-width: 800px) {
  .node-filters,
  .form-grid { grid-template-columns: 1fr; }
  .node-filters .search,
  .node-filters > .field { width: 100%; }
  .node-form-dialog,
  .node-detail-dialog { width: calc(100vw - 24px); }
}
