.st-sec{margin-bottom:18px}
.st-sec>.sec-title .st-count{color:var(--muted);font-weight:500;font-size:12px}

.st-grid{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:0;align-items:start}
.st-grid>div{padding:10px 14px;border-bottom:1px solid #f0f1f4;font-size:13.5px}
.st-grid>div:nth-last-child(-n+2){border-bottom:0}
.st-lbl{color:var(--muted);font-weight:600;display:block}
.st-req{color:var(--red);font-weight:700;margin-left:2px}
.st-hint{display:block;font-weight:400;font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.4}
.st-val{font-family:var(--mono);font-size:12.5px;word-break:break-word}
.st-val.empty{color:var(--muted);font-family:inherit;font-style:italic}

.st-obj{display:flex;flex-wrap:wrap;gap:5px}
.st-pair{background:var(--gray-soft);border-radius:5px;padding:2px 8px;font-size:12px;font-family:var(--mono)}
.st-pair b{color:var(--muted);font-weight:600}

/* Reference chips. A key that resolves is navigable; one that doesn't is
   NEUTRAL, never red — unresolved references are legal by design (invariant #6:
   references are by key, resolution is the consumer's job). */
.st-ref{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:2px 10px;font-size:12px;font-family:var(--mono);font-weight:600;text-decoration:none}
.st-ref.ok{background:var(--accent-soft);color:var(--accent);cursor:pointer}
.st-ref.ok:hover{background:var(--accent-border)}
.st-ref.miss{background:var(--gray-soft);color:var(--muted);cursor:default}
.st-ref .st-arrow{opacity:.6;font-size:10px}

.st-table{width:100%;border-collapse:collapse}
.st-table th{font-size:11px;padding:8px 12px}
.st-table td{padding:8px 12px;font-size:13px}
.st-table td.mono{font-family:var(--mono);font-size:12.5px}
.st-flag{font-size:11px;font-weight:700;color:var(--green)}

.st-undesc{border:1px dashed var(--amber);background:var(--amber-soft)}
.st-undesc .sec-title{border-bottom-color:#fde68a;color:#92400e}
.st-undesc-note{padding:0 14px 12px;font-size:12px;color:#92400e;line-height:1.5}
