/* M05 — members (prefix .m05-) */
.m05-code { font-weight: 500; white-space: nowrap; font-variant-numeric: tabular-nums; }
.m05-kpi { margin-bottom: var(--rv-space-4); }
.m05-warn { color: var(--rv-warning); font-weight: 500; }
.m05-ref { font-size: 13px; line-height: 20px; }
.m05-kv .rv-kv__row { grid-template-columns: 170px minmax(0, 1fr); }
.m05-source { margin-bottom: var(--rv-space-4); }
.m05-source.is-loading .rv-alert__icon .rv-icon { animation: m05-spin 1s linear infinite; }
@keyframes m05-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .m05-source.is-loading .rv-alert__icon .rv-icon { animation: none; } }

/* member header strip */
.m05-hero { display: flex; align-items: center; gap: var(--rv-space-4); margin-bottom: var(--rv-space-4); padding: var(--rv-space-3) var(--rv-space-4); border: 1px solid var(--rv-card-border); border-radius: var(--rv-radius-card); background: var(--rv-surface); }
.m05-hero__stats { flex: 1 1 auto; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--rv-space-2) var(--rv-space-4); margin: 0; min-width: 0; }
.m05-hero__stats dt { font-size: var(--rv-fs-small); color: var(--rv-text-secondary); }
.m05-hero__stats dd { margin: 0; font-size: var(--rv-fs-stat-sm); line-height: var(--rv-lh-stat-sm); font-weight: 600; font-variant-numeric: tabular-nums; }
.m05-tabbody { margin-top: var(--rv-space-4); }

/* package */
.m05-features ul { list-style: none; margin: var(--rv-space-3) 0 0; padding: var(--rv-space-3) 0 0; border-top: 1px solid var(--rv-divider); display: flex; flex-direction: column; gap: 4px; font-size: 13px; }
.m05-features li { display: flex; align-items: center; gap: 6px; }
.m05-features li.is-yes .rv-icon { color: var(--rv-success); }
.m05-features li.is-no { color: var(--rv-text-muted); }
.m05-features li.is-no .rv-icon { color: var(--rv-danger); }
.m05-fails { margin: 0; padding-left: var(--rv-space-5); }
.m05-fails li { margin: 4px 0; }

@media (max-width: 1199px) { .m05-hero__stats { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .m05-hero { align-items: flex-start; }
  .m05-hero__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .m05-kv .rv-kv__row { grid-template-columns: 112px minmax(0, 1fr); }
}
