.traffic-light-summary { display:flex; flex-wrap:wrap; gap:12px; margin:18px 0; }
.nav-item[data-view="traffic-light"] span { font-size:12px; white-space:nowrap; letter-spacing:-.3px; }
.traffic-light-summary > span { background:#fff; border:1px solid #e5e7eb; border-radius:10px; padding:12px 20px; }
.traffic-light-summary strong { margin-left:12px; font-size:22px; }
.traffic-light-summary .red { color:#c83939; }.traffic-light-summary .yellow { color:#b56d08; }.traffic-light-summary .green { color:#198650; }
.traffic-light-list { display:grid; gap:16px; }
.traffic-light-card { background:#fff; border:1px solid #e2e6ed; border-radius:14px; padding:22px; }
.traffic-light-card-head { display:flex; justify-content:space-between; gap:18px; align-items:center; }
.traffic-light-card h2 { font-size:18px; margin:0 0 8px; }.traffic-light-card small { color:#747f90; }
.traffic-light-rating { display:flex; align-items:center; gap:15px; flex-shrink:0; }.traffic-light-rating > strong { font-size:28px; }.traffic-light-rating > strong small { font-size:13px; margin-left:4px; }
.traffic-light-badge { display:inline-block; border-radius:8px; padding:7px 12px; font-weight:600; }
.traffic-light-badge.red { background:#fff0f0; color:#c83939; }.traffic-light-badge.yellow { background:#fff5e5; color:#b56d08; }.traffic-light-badge.green { background:#eafaef; color:#198650; }.traffic-light-badge.unknown { background:#f1f3f6; color:#747f90; }
.traffic-light-meta { color:#747f90; font-size:12px; margin:16px 0; line-height:1.8; }
.traffic-light-card a { color:#3768fa; font-size:13px; text-decoration:none; }.traffic-light-meta a { margin-left:12px; }
.traffic-light-card summary { cursor:pointer; font-size:14px; font-weight:600; padding:10px 0; }
.traffic-light-module h3 { border-left:3px solid #3768fa; padding-left:10px; font-size:15px; margin:20px 0 8px; }
.traffic-light-indicator { padding:16px 0; border-bottom:1px solid #edf0f4; }
.traffic-light-indicator-head { display:flex; gap:14px; align-items:center; flex-wrap:wrap; font-size:14px; }
.traffic-light-indicator-head a { margin-left:auto; border:1px solid #b8c9fc; padding:4px 12px; border-radius:6px; }
.score-deduct { color:#df4545; }.score-add { color:#198650; }
.traffic-light-indicator p { margin:8px 0; color:#667386; line-height:1.8; font-size:13px; white-space:pre-wrap; }
.traffic-light-advice { background:#f6f8fc; border-radius:6px; padding:0 12px; margin:10px 0; }.traffic-light-advice summary { color:#4e6181; font-size:12px; }
.traffic-light-evidence-grid { display:grid; gap:1px; background:#e7edf4; border:1px solid #e7edf4; border-radius:8px; overflow:hidden; }
.traffic-light-evidence-grid > div { display:grid; grid-template-columns:160px 1fr; background:#fff; padding:10px 14px; gap:10px; font-size:13px; word-break:break-all; }
.traffic-light-evidence-grid span { color:#747f90; }.traffic-light-evidence-grid strong { font-weight:400; }
.traffic-light-error { color:#c83939; font-size:13px; }.traffic-light-tip { background:#fff6e7; padding:10px; font-size:13px; }
@media(max-width:700px) { .traffic-light-card { padding:16px; }.traffic-light-card-head { align-items:flex-start; }.traffic-light-rating { flex-direction:column; gap:8px; }.traffic-light-evidence-grid > div { grid-template-columns:110px 1fr; } }
