/* U14-A: Settings › Defaults by level (settings-levels.js) */
.lvs { display: grid; gap: 14px; max-width: 1100px; }
.lvs-rule, .lvs-fine { margin: 0; color: var(--ink-2, #555); font-size: 14px; }
.lvs-fine { font-size: 13px; }
.lvs-sec { margin: 8px 0 0; font-size: 18px; }
.lvs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.lvs-card { display: grid; gap: 8px; padding: 14px 16px; min-width: 0; }
.lvs-h { margin: 0; font-size: 17px; }
.lvs-head h3 { display: inline; margin: 0; font-size: 16px; }
.lvs-dim { color: var(--ink-2, #666); font-size: 13px; }
.lvs-vals, .lvs-hist { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.lvs-vals > li { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; border-top: 1px solid var(--line, #eee); padding-top: 6px; overflow-wrap: anywhere; }
.lvs-k { font-weight: 600; }
.lvs-set { font-weight: 600; }
.lvs-hist > li { font-size: 13px; overflow-wrap: anywhere; }
.lvs-edit > summary { cursor: pointer; color: var(--accent, #0a66c2); font-size: 14px; }
.lvs-edit[open] { display: grid; gap: 8px; }
.lvs-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; border-top: 1px solid var(--line, #eee); padding-top: 8px; }
.lvs-field { display: grid; gap: 4px; min-width: 0; }
.lvs-field[hidden] { display: none; }
.lvs-lbl { font-size: 13px; font-weight: 600; color: var(--ink-2, #555); }
.lvs-field input, .lvs-field select { width: 100%; box-sizing: border-box; }
.lvs-checks { display: grid; gap: 6px; }
.lvs-check { display: flex; gap: 8px; align-items: center; font-size: 14px; }
.lvs-msg { color: var(--bad, #b3261e); font-size: 14px; margin: 0; }
.lvs-msg:empty { display: none; }
@media (max-width: 600px) { .lvs-grid { grid-template-columns: 1fr; } .lvs-card { padding: 12px; } }

/* U18-A: Settings › What the AI knows (store-knowledge.js) */
.kn-pick { max-width: 320px; margin-bottom: 8px; }
.kn-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.kn-fact { border-top: 1px solid var(--line, #eee); padding-top: 8px; min-width: 0; }
.kn-top { display: flex; justify-content: space-between; gap: 8px; align-items: baseline; }
.kn-val { margin: 4px 0 0; overflow-wrap: anywhere; }
.kn-src { margin: 2px 0 0; }
.kn-fact .lvs-chip { font-size: 12px; padding: 1px 8px; border-radius: 999px; background: var(--fill, #eee); white-space: nowrap; }
.kn-fact.is-known .lvs-chip { color: var(--green, #248a3d); }
.kn-fact.is-unknown .lvs-chip { color: var(--red, #c9302c); }
.kn-fact.is-unknown .kn-val { color: var(--ink-2, #555); }

/* U19-A: custom fields (custom-fields.js): Settings › Custom fields and the panel on records */
.cf-sec { display: grid; gap: 10px; }
.cf-sec .lvs-grid { align-items: start; }
.cf-card { align-content: start; }
.cf-top { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.cf-top h3 { margin: 0; }
.cf-card.is-retired { opacity: 0.8; }
.cf-form { display: grid; gap: 8px; }
.cf-form textarea { width: 100%; box-sizing: border-box; font: inherit; }
.cf-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.cf-actions input { flex: 1 1 160px; min-width: 0; }
.cf-out:empty { display: none; }
.cf-panel[data-empty="1"] { display: none; }
.cf-panel h2 { margin: 0 0 6px; font-size: 16px; }
.cf-panel.is-compact { border-top: 1px solid var(--line, #eee); padding-top: 8px; margin-top: 8px; }
.cf-panel.is-compact h2 { font-size: 14px; }
.cf-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.cf-field { display: grid; gap: 4px; overflow-wrap: anywhere; }
.cf-val { margin: 0; font-size: 15px; }
.cf-val.is-none { color: var(--ink-2, #666); }
.cf-panel .lvs-chip, .cf-card .lvs-chip { display: inline-block; padding: 1px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; background: var(--chip-bg, #eef1f6); color: var(--ink-2, #444); }
.cf-panel .lvs-chip.cf-need { background: var(--warn-bg, #fff4d6); color: var(--warn-ink, #7a4b00); }
.cf-panel .lvs-chip.is-unset, .cf-card .lvs-chip.is-unset { background: transparent; border: 1px solid var(--line, #ddd); }
.cf-report .lvs-vals > li { font-size: 14px; }
