#view-user > .stat-grid .stat,
#view-usage > .stat-grid .stat,
#view-finance > .finance-kpis .finance-kpi {
  min-height: 96px;
}

#runtimeSummary .stat {
  min-height: 76px;
}

#providerRuntimeSummary {
  gap: 8px !important;
}

#providerRuntimeSummary .stat {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 11px !important;
}

#providerRuntimeSummary .stat-label {
  margin: 0 !important;
  font-size: 10.5px !important;
}

#providerRuntimeSummary .stat strong {
  font-size: 16px !important;
  line-height: 1.2;
}

body:not(.admin-console-mode) #view-models .model-card {
  min-height: 118px;
}

#view-models > #modelList:empty,
#view-models > #modelList:has(> .muted:only-child) {
  grid-template-rows: minmax(0, 1fr);
  align-content: stretch;
}

#view-models > #modelList:empty::before,
#view-models > #modelList > .muted:only-child {
  display: grid;
  height: 100%;
  min-height: 0;
  place-items: center;
}

#view-models > #modelList:empty::before {
  padding: 24px;
  border: var(--hair) solid var(--line-soft);
  border-radius: var(--r-lg);
  color: var(--faint);
  background: rgb(28 34 41 / 0.24);
  content: "正在加载模型…";
}

/* 实例概览与账户列表是两张独立卡片，列表内部直接复用通用 table-section 结构。 */
#view-accounts .provider-account-section > .provider-account-heading {
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 0 !important;
}

#view-accounts .provider-account-controls .compact-filter-label {
  display: none;
}

#view-accounts .provider-account-controls .compact-filter-search {
  width: 160px;
  min-width: 120px;
}

#view-accounts .provider-selection-status {
  flex: 0 0 auto;
  padding-inline: 8px;
  white-space: nowrap;
}

@media (min-width: 961px) {
  #view-accounts .provider-detail-stack:has(> .provider-direct-section:not(.hidden)) {
    overflow: hidden;
  }

  #view-accounts .provider-detail-stack > .provider-direct-section:not(.hidden) {
    flex: 1 1 auto;
  }
}

#upstreamConfigForm.direct-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px !important;
  align-items: start;
}

#upstreamConfigForm .direct-form-block {
  min-width: 0;
  margin: 0;
  padding: 0 0 14px;
  border: 0;
  border-bottom: var(--hair) solid var(--line-soft);
}

#upstreamConfigForm .direct-form-block:last-of-type {
  padding-bottom: 0;
  border-bottom: 0;
}

#upstreamConfigForm .direct-form-block-head {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

#upstreamConfigForm .direct-form-block-head h4 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 14px;
  line-height: 1.25;
}

#upstreamConfigForm .direct-form-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  min-width: 0;
}

#upstreamConfigForm .direct-form-fields .span-2 {
  grid-column: 1 / -1;
}

#upstreamConfigForm .direct-form-block .field {
  gap: 5px !important;
}

#upstreamConfigForm .direct-form-block .field-hint {
  display: block;
  max-width: 70ch;
}

#upstreamConfigForm .direct-form-block .control:not(textarea) {
  min-height: 38px;
  height: 38px;
}

#upstreamConfigForm .direct-field-keys > .table-wrap {
  max-height: 240px;
  overflow: auto;
  border-radius: var(--r-md);
}

#upstreamConfigForm .direct-field-keys > .field-hint {
  display: block;
  margin-top: 10px;
}

#upstreamConfigForm .direct-field-keys table {
  table-layout: fixed;
}

#upstreamConfigForm .direct-field-keys th,
#upstreamConfigForm .direct-field-keys td {
  white-space: normal;
}

#upstreamConfigForm .direct-field-keys th:nth-child(1),
#upstreamConfigForm .direct-field-keys td:nth-child(1) {
  width: 20%;
}

#upstreamConfigForm .direct-field-keys th:nth-child(2),
#upstreamConfigForm .direct-field-keys td:nth-child(2) {
  width: 16%;
}

#upstreamConfigForm .direct-field-keys th:nth-child(4),
#upstreamConfigForm .direct-field-keys td:nth-child(4) {
  width: 80px;
}

#upstreamConfigForm .direct-field-keys .control {
  min-width: 0;
}

#upstreamConfigForm .direct-field-models .direct-form-fields {
  grid-template-columns: minmax(0, 1fr);
}

#upstreamConfigForm .direct-field-models textarea {
  min-height: 96px;
  resize: vertical;
}

#upstreamConfigForm .direct-form-status {
  display: flex;
  min-height: 20px;
  align-items: center;
}

.provider-direct-section > .provider-account-heading {
  align-items: flex-start;
}

.direct-form-actions {
  justify-content: flex-end;
}

@media (min-width: 1120px) {
  #upstreamConfigForm.direct-form {
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  }

  #upstreamConfigForm .direct-form-connection {
    grid-column: 1;
  }

  #upstreamConfigForm .direct-form-identity {
    grid-column: 2;
    padding-left: 16px;
    border-left: var(--hair) solid var(--line-soft);
  }

  #upstreamConfigForm .direct-form-routing,
  #upstreamConfigForm .direct-field-keys,
  #upstreamConfigForm .direct-field-models,
  #upstreamConfigForm .direct-form-status {
    grid-column: 1 / -1;
  }
}

@media (min-width: 1180px) {
  #upstreamConfigForm .direct-form-routing .direct-form-fields {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #upstreamConfigForm .direct-field-capabilities,
  #upstreamConfigForm .direct-field-endpoints {
    grid-column: span 2;
  }
}

@media (max-width: 720px) {
  #upstreamConfigForm .direct-form-fields {
    grid-template-columns: minmax(0, 1fr);
  }

  #upstreamConfigForm .direct-form-fields .span-2,
  #upstreamConfigForm .direct-field-capabilities,
  #upstreamConfigForm .direct-field-endpoints {
    grid-column: auto;
  }

  #upstreamConfigForm .direct-form-identity {
    padding-left: 0;
    border-left: 0;
  }

  #upstreamConfigForm .direct-field-keys > .table-wrap {
    max-height: 260px;
  }

  #upstreamConfigForm .direct-field-keys table {
    min-width: 560px;
  }

  .direct-form-actions {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .direct-form-actions .btn {
    width: 100%;
  }

  .direct-form-actions .btn:last-child {
    grid-column: 1 / -1;
  }
}
