
.rep-score-card { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:28px 16px 20px; background:linear-gradient(135deg,#f8fafc,#eef2ff); }
.rep-score-ring { position:relative; width:130px; height:130px; }
.rep-score-ring svg { width:100%; height:100%; filter:drop-shadow(0 2px 8px rgba(0,0,0,.08)); }
.rep-score-ring svg circle:first-child { stroke:#e2e8f0; }
.rep-score-text { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.rep-score-text span:first-child { font-size:40px; font-weight:800; line-height:1; }
.rep-score-label { font-size:14px; margin-top:6px; font-weight:600; letter-spacing:1px; }
.rep-score-sources { margin-top:16px; font-size:12px; color:#94a3b8; text-align:center; }

.rep-info-grid { display:grid; grid-template-columns:1fr; }
.rep-info-item { display:flex; justify-content:space-between; align-items:center; padding:10px 18px; border-bottom:1px solid #f0f3f8; gap:16px; min-width:0; }
.rep-info-label { font-size:13px; color:#8896a7; white-space:nowrap; flex-shrink:0; }
.rep-info-value { font-size:13px; color:var(--text); font-weight:500; text-align:right; min-width:0; word-break:break-all; }

.rep-tags-row { display:grid; grid-template-columns:repeat(5, 1fr); gap:12px; margin-top:16px; }
.rep-tag-card { background:#fff; border:1px solid var(--line2); border-radius:10px; padding:16px 12px; text-align:center; transition:all .2s; }
.rep-tag-card:hover { box-shadow:0 2px 8px rgba(0,0,0,.06); }
.rep-tag-card.safe { border-color:#86efac; background:linear-gradient(135deg,#f0fdf4,#dcfce7); }
.rep-tag-card.warn { border-color:#fde68a; background:linear-gradient(135deg,#fefce8,#fef9c3); }
.rep-tag-card.danger { border-color:#fca5a5; background:linear-gradient(135deg,#fef2f2,#fee2e2); }
.rep-tag-icon { font-size:24px; margin-bottom:6px; }
.rep-tag-title { font-size:12px; color:#8896a7; margin-bottom:4px; }
.rep-tag-value { font-size:14px; font-weight:600; color:var(--text); }
.rep-tag-card.safe .rep-tag-value { color:#16a34a; }
.rep-tag-card.warn .rep-tag-value { color:#ca8a04; }
.rep-tag-card.danger .rep-tag-value { color:#dc2626; }

.risk-safe { color:#16a34a; }
.risk-low { color:#65a30d; }
.risk-medium { color:#ca8a04; }
.risk-high { color:#ea580c; }
.risk-critical { color:#dc2626; }

@keyframes rep-pulse { 0%,100%{opacity:.5} 50%{opacity:1} }
.rep-loading { color:var(--blue); animation:rep-pulse 1.5s ease-in-out infinite; }

.rep-action-btn { display:inline-flex; align-items:center; gap:5px; padding:6px 14px; border:1px solid var(--line2); border-radius:6px; background:#fff; color:var(--text); font-size:13px; cursor:pointer; transition:all .15s; text-decoration:none; }
.rep-action-btn:hover { background:#f1f5f9; border-color:#93c5fd; color:var(--blue); }

@media (max-width: 768px) {
  .rep-tags-row { grid-template-columns:repeat(3, 1fr); }
  div:has(> .rep-score-card) { grid-template-columns:1fr !important; }
}
@media (max-width: 480px) {
  .rep-tags-row { grid-template-columns:repeat(2, 1fr); }
}
