/* Kiểm tra tính hợp lý — dùng biến màu trong app.css */
.pl { --pl-fg: var(--text); --pl-muted: var(--muted); --pl-line: var(--line); --pl-ok: var(--ok-fg); --pl-warn: var(--warn);
  --pl-cap: color-mix(in srgb, var(--warn) 55%, var(--danger)); --pl-bad: var(--danger); --pl-ver: var(--lv-3);
  margin-top: var(--sp16); padding-top: var(--sp16); border-top: 1px solid var(--pl-line); color: var(--pl-fg); min-width: 0; }
.pl-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp4) var(--sp12); }
.pl-head h3 { margin: 0; font-size: var(--fs-body); font-weight: 700; }
.pl-sum { font-size: var(--fs-sm); color: var(--pl-muted); }
.pl-lead { margin: var(--sp4) 0 0; font-size: var(--fs-sm); color: var(--pl-muted); }
.pl-basis { margin: var(--sp8) 0 0; padding: var(--sp8) var(--sp12); border-radius: var(--r-xs); font-size: var(--fs-sm); overflow-wrap: anywhere;
  background: var(--panel); border: 1px solid var(--pl-line); font-variant-numeric: tabular-nums; }
.pl-group { margin-top: var(--sp12); }
.pl-group h4 { margin: 0 0 var(--sp6); font-size: var(--fs-xs); font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--pl-muted); }
.pl-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--sp8); }
.pl-row { display: flex; gap: var(--sp12); align-items: flex-start; font-size: var(--fs-body); line-height: 1.4; min-width: 0; }
.pl-ic { flex: none; width: 22px; height: 22px; margin-top: 1px; border-radius: 50%; display: grid; place-items: center; font-size: var(--fs-xs); font-weight: 700;
  color: var(--pl-ok); background: color-mix(in srgb, var(--pl-ok) 18%, transparent); }
.pl-row.is-verified .pl-ic { color: var(--pl-ver); background: color-mix(in srgb, var(--pl-ver) 18%, transparent); }
.pl-row.is-warn .pl-ic { color: var(--pl-warn); background: color-mix(in srgb, var(--pl-warn) 20%, transparent); }
.pl-row.is-cap .pl-ic { color: var(--pl-cap); background: color-mix(in srgb, var(--pl-cap) 18%, transparent); }
.pl-row.is-block .pl-ic { color: var(--pl-bad); background: color-mix(in srgb, var(--pl-bad) 18%, transparent); }
.pl-row.is-na .pl-ic { color: var(--pl-muted); background: color-mix(in srgb, var(--pl-muted) 14%, transparent); }
.pl-txt { min-width: 0; overflow-wrap: anywhere; }
.pl-txt b { font-weight: 600; }
.pl-txt span, .pl-txt small { display: block; color: var(--pl-muted); font-size: var(--fs-sm); font-variant-numeric: tabular-nums; }
.pl-row.is-block .pl-txt span, .pl-row.is-cap .pl-txt span { color: var(--pl-fg); }
.pl-more { margin-top: var(--sp8); }
.pl-more > summary, .pl-rules > summary { min-height: var(--h-chip); display: flex; align-items: center; gap: var(--sp6); cursor: pointer; list-style: none; font-size: var(--fs-sm); color: var(--pl-muted, var(--muted)); }
.pl-more > summary::-webkit-details-marker, .pl-rules > summary::-webkit-details-marker { display: none; }
.pl-more > summary::before, .pl-rules > summary::before { content: '▸'; transition: transform .15s; }
.pl-more[open] > summary::before, .pl-rules[open] > summary::before { transform: rotate(90deg); }
.pl-rules ul { margin: var(--sp4) 0 0; padding-left: var(--sp20); overflow-wrap: anywhere; }
.pl-note { margin: var(--sp12) 0 0; font-size: var(--fs-xs); color: var(--pl-muted); }
@media (min-width: 900px) { .tr-sheet .pl-list { gap: var(--sp12); } }
