.competitor-panel { grid-column: 1 / -1; }
.competitor-list { display: grid; gap: 11px; }
.competitor-list div { display: grid; gap: 3px; padding-bottom: 11px; border-bottom: 1px solid var(--line); font-size: 12px; }
.competitor-list span,
.competitor-panel p { color: var(--muted); font-size: 11px; }
.affected { display: grid; gap: 3px; margin: 16px 0 4px; padding: 11px 12px; border-left: 2px solid var(--green); background: #fff; font-size: 10px; }
.affected strong { color: var(--ink); font-size: 10px; }
.affected a { color: var(--green-dark); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.affected span { color: var(--muted); }
.findings-panel { grid-column: 1 / -1; }
.finding-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 18px; }
.finding-head h3 { margin: 6px 0 0; }
.finding-head > span { color: var(--muted); font-size: 11px; }
.finding-list { display: grid; gap: 0; }
.finding-intro { margin: -8px 0 14px; color: var(--muted); font-size: 11px; }
.finding-list > div { display: grid; grid-template-columns: 66px 1fr; column-gap: 12px; padding: 13px 0; border-top: 1px solid var(--line); }
.finding-list strong { font-size: 12px; }
.finding-list p { grid-column: 2; margin: 4px 0 0; color: var(--muted); font-size: 11px; }
.severity { align-self: start; text-align: center; padding: 3px 6px; border-radius: 99px; background: #e8eeed; color: var(--green-dark); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.severity.high, .severity.critical { background: #efe8df; color: #79572e; }
.qa-note { margin-top: 14px; padding: 12px 14px; border-left: 2px solid var(--green); background: var(--wash); color: var(--muted); font-size: 11px; }
.qa-blocker,.role-panel,.method-panel { grid-column: 1 / -1; }
.qa-blocker { border-left: 4px solid #9a6133; background: #fffaf5; }
.qa-blocker h3 { margin: 9px 0; }
.qa-blocker ul { margin: 16px 0 0; padding-left: 20px; color: var(--muted); font-size: 12px; }
.role-table { display: grid; margin-top: 18px; border-top: 1px solid var(--line); }
.role-table > div { display: grid; grid-template-columns: .8fr 1.2fr 1.2fr; gap: 18px; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 11px; }
.role-table .role-head { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .7px; }
.method-panel p { color: var(--muted); font-size: 11px; }
@media (max-width: 520px) {
  .finding-head { display: grid; gap: 5px; }
  .finding-list > div { grid-template-columns: 1fr; }
  .finding-list p { grid-column: 1; }
  .severity { justify-self: start; margin-bottom: 5px; }
  .role-table > div { grid-template-columns: 1fr; gap: 5px; }
  .role-table .role-head { display: none; }
}
