/* Compact, consistent system-settings layout. Scope prevents business-page regressions. */
#settings #settingsBody { color:var(--jrk-text-2); font-size:var(--jrk-font-13); }
#settings #settingsBody > .card { padding:var(--jrk-space-4); margin:0 0 var(--jrk-settings-card-gap); border:1px solid var(--jrk-border); border-radius:var(--jrk-radius-lg); box-shadow:var(--jrk-shadow-sm); }
#settings #settingsBody .section-title { min-height:22px; margin:0 0 var(--jrk-space-2); gap:var(--jrk-space-2); color:var(--jrk-text-1); font-size:15px; line-height:1.4; }
#settings #settingsBody .section-title .bar { width:3px; height:16px; flex:0 0 3px; background:var(--jrk-color-primary); }
#settings #settingsBody .hint,#settings #settingsBody .settings-help { margin:0 0 var(--jrk-space-3); color:var(--jrk-text-3); font-size:var(--jrk-font-12); line-height:1.55; }

#settings #settingsBody input:not([type="checkbox"]):not([type="radio"]),#settings #settingsBody select,#settings #settingsBody button,#settings #settingsBody .ctrl { height:var(--jrk-settings-control-h); min-height:var(--jrk-settings-control-h); margin:0; box-sizing:border-box; font-family:inherit; font-size:var(--jrk-font-13); line-height:1; }
#settings #settingsBody input:not([type="checkbox"]):not([type="radio"]),#settings #settingsBody select,#settings #settingsBody textarea { padding:0 var(--jrk-space-3); color:var(--jrk-text-1); background:var(--jrk-bg-card); border:1px solid var(--jrk-border-strong); border-radius:var(--jrk-radius-md); }
#settings #settingsBody textarea { min-height:72px; padding-top:var(--jrk-space-2); padding-bottom:var(--jrk-space-2); font:inherit; line-height:1.5; }
#settings #settingsBody select { padding-right:30px; appearance:auto; }
#settings #settingsBody input:focus,#settings #settingsBody select:focus,#settings #settingsBody textarea:focus { outline:none; border-color:var(--jrk-color-primary); box-shadow:0 0 0 2px var(--jrk-color-primary-light); }
#settings #settingsBody input[type="checkbox"],#settings #settingsBody input[type="radio"] { width:16px; height:16px; margin:0; flex:0 0 16px; }
#settings #settingsBody button { display:inline-flex; align-items:center; justify-content:center; padding:0 var(--jrk-space-3); white-space:nowrap; }
#settings #settingsBody .btn-sm { height:var(--jrk-settings-control-h); padding:0 var(--jrk-space-3); font-size:var(--jrk-font-13); }

#settings #settingsBody .row,#settings #settingsBody .settings-row { display:flex; align-items:center; gap:var(--jrk-settings-row-gap); min-height:var(--jrk-settings-control-h); margin:var(--jrk-space-2) 0; font-size:var(--jrk-font-13); line-height:1.45; }
#settings #settingsBody .row > input[type="number"],#settings #settingsBody .settings-row > input[type="number"] { width:96px; flex:0 0 96px; }
#settings #settingsBody .row > input[type="date"],#settings #settingsBody .settings-row > input[type="date"] { width:160px; flex:0 0 160px; }

#settings #settingsBody .settings-form-grid { display:grid; grid-template-columns:minmax(180px,1.2fr) minmax(140px,.8fr) minmax(180px,1fr) minmax(180px,1.2fr) auto; gap:var(--jrk-space-3); align-items:end; }
#settings #settingsBody .settings-field { display:flex; flex-direction:column; gap:var(--jrk-space-1); min-width:0; }
#settings #settingsBody .settings-field > label { color:var(--jrk-text-2); font-size:var(--jrk-font-12); font-weight:600; }
#settings #settingsBody .settings-field > input,#settings #settingsBody .settings-field > select { width:100%; }
#settings #settingsBody .settings-field-action { width:auto; align-self:end; }

#settings #settingsBody .settings-table-wrap { overflow-x:auto; border:1px solid var(--jrk-border); border-radius:var(--jrk-radius-md); }
#settings #settingsBody table { min-width:0; font-size:var(--jrk-font-13); }
#settings #settingsBody th,#settings #settingsBody td { height:42px; padding:var(--jrk-space-2) var(--jrk-space-3); vertical-align:middle; line-height:1.4; }
#settings #settingsBody th { color:var(--jrk-text-2); font-size:var(--jrk-font-12); font-weight:600; background:var(--jrk-bg-hover); }
#settings #settingsBody td input,#settings #settingsBody td select,#settings #settingsBody td button { vertical-align:middle; }
#settings #settingsBody .settings-compact-table th:last-child,#settings #settingsBody .settings-compact-table td:last-child { width:88px; text-align:center; }
#settings #settingsBody .supplier-type-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:2px 0 12px; }
#settings #settingsBody .supplier-type-tab { min-height:32px; padding:5px 12px; border:1px solid var(--jrk-border); border-radius:16px; background:#fff; color:var(--jrk-text-2); cursor:pointer; }
#settings #settingsBody .supplier-type-tab span { margin-left:6px; color:var(--jrk-text-3); font-size:var(--jrk-font-12); }
#settings #settingsBody .supplier-type-tab.active { border-color:var(--jrk-color-primary); background:var(--jrk-color-primary); color:#fff; }
#settings #settingsBody .supplier-type-tab.active span { color:#dbeafe; }
#settings #settingsBody .supplier-qr-upload { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-height:38px; padding:5px 8px; border:1px dashed var(--jrk-border-strong); border-radius:var(--jrk-radius-md); background:var(--jrk-bg-hover); outline:none; }
#settings #settingsBody .supplier-qr-upload:focus { border-color:var(--jrk-color-primary); box-shadow:0 0 0 2px var(--jrk-color-primary-light); }
#settings #settingsBody .supplier-qr-upload.uploading { opacity:.65; pointer-events:none; }
#settings #settingsBody .supplier-qr-upload input[type=file] { width:110px; max-width:110px; }
#settings #settingsBody .supplier-qr-hint { color:var(--jrk-text-3); font-size:var(--jrk-font-12); }
#settings #settingsBody .settings-map-grid { display:grid; grid-template-columns:repeat(3,minmax(180px,1fr)); gap:var(--jrk-space-3); margin-bottom:var(--jrk-space-3); }

/* High-density lists and forms with content-sized controls. */
#settings #settingsBody .settings-lead-fields { margin:8px 0; max-width:820px; }
#settings #settingsBody .settings-lead-fields th,#settings #settingsBody .settings-lead-fields td { height:36px; padding:4px 12px; }
#settings #settingsBody .settings-lead-fields td:first-child,#settings #settingsBody .settings-lead-fields td:last-child { text-align:center; }
#settings #settingsBody .settings-contract-type-add { display:grid; grid-template-columns:240px 150px 96px auto; gap:10px; align-items:end; margin-top:12px; }
#settings #settingsBody .settings-contract-type-add .settings-field { margin:0; }
#settings #settingsBody .settings-contract-type-add .settings-field:nth-child(2) input { width:150px; }
#settings #settingsBody .settings-contract-type-add .settings-field:nth-child(3) input { width:96px; }
#settings #settingsBody .settings-contract-type-table th:first-child,#settings #settingsBody .settings-contract-type-table td:first-child { width:320px; }
#settings #settingsBody .settings-contract-type-table td:first-child input { width:100%; max-width:320px; }
#settings #settingsBody .settings-contract-type-table td:nth-child(2) { width:170px; }
#settings #settingsBody .settings-contract-type-table td:nth-child(3) { width:110px; }
#settings #settingsBody .settings-contract-type-table td:nth-child(4) { width:70px; }
#settings #settingsBody .settings-rule-row { display:grid; grid-template-columns:minmax(220px,360px) 110px 34px; gap:8px; align-items:center; min-height:34px; margin:6px 0; }
#settings #settingsBody .settings-rule-row > input { width:100%; }
#settings #settingsBody .settings-rule-row > select { width:110px; }
#settings #settingsBody .settings-rule-row > button { width:34px; padding:0; }
#settings #settingsBody .settings-brief-tag-row { grid-template-columns:minmax(220px,360px) 34px; }
#settings #settingsBody .settings-work-type-row { grid-template-columns:minmax(220px,360px) 96px 34px; }
#settings #settingsBody .settings-work-type-row > input:nth-child(2) { width:96px; }
/* AI 场景分配行：场景名 / 档案下拉 / 模型 ID / 说明（ADR-015） */
#settings #settingsBody .settings-ai-scene-row { grid-template-columns:150px minmax(160px,1fr) minmax(160px,1fr) minmax(0,1fr); }
#settings #settingsBody .settings-ai-scene-row > select { width:100%; }
#settings #settingsBody .settings-ai-scene-row > input { width:100%; }
#settings #settingsBody .settings-add-row { display:flex; align-items:center; gap:8px; margin-top:8px; }
#settings #settingsBody .settings-add-row > input { width:360px; flex:0 1 360px; }
/* AI 收纳诊断字典行：编码 / 名称 / 排序 / 引用数 / 删除（#T217） */
#settings #settingsBody .settings-sd-dict-row { grid-template-columns:140px minmax(180px,320px) 88px 92px 34px; }
#settings #settingsBody .settings-sd-dict-row > input[readonly] { background:#f3f4f6; color:#6b7280; }
#settings #settingsBody .sd-dict-usage { font-size:12px; color:#9ca3af; white-space:nowrap; }
#settings #settingsBody .sd-dict-usage.used { color:#b45309; }

@media (max-width:1100px) {
  #settings #settingsBody .settings-form-grid { grid-template-columns:repeat(2,minmax(180px,1fr)); }
  #settings #settingsBody .settings-map-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  #settings #settingsBody .settings-form-grid { grid-template-columns:1fr; }
  #settings #settingsBody .row,#settings #settingsBody .settings-row { flex-wrap:wrap; }
  #settings #settingsBody .settings-contract-type-add { grid-template-columns:1fr; }
  #settings #settingsBody .settings-rule-row { grid-template-columns:minmax(0,1fr) 100px 34px; }
  #settings #settingsBody .settings-brief-tag-row { grid-template-columns:minmax(0,1fr) 34px; }
  #settings #settingsBody .settings-work-type-row { grid-template-columns:minmax(0,1fr) 82px 34px; }
  #settings #settingsBody .settings-ai-scene-row { grid-template-columns:minmax(0,1fr); }
  #settings #settingsBody .settings-add-row > input { width:auto; flex:1 1 auto; }
  #settings #settingsBody .settings-sd-dict-row { grid-template-columns:minmax(0,1fr) 76px 34px; }
  #settings #settingsBody .settings-sd-dict-row > .sd-dict-code,
  #settings #settingsBody .settings-sd-dict-row > .sd-dict-usage { display:none; }
}
