/**
 * Public legal documents (/legal/terms/, etc.) — extends legal_base legal-card layout.
 */

.vs-public-legal-inner {
  margin: -2rem;
}

@media (min-width: 576px) {
  .vs-public-legal-inner {
    margin: -2rem;
  }
}

.vs-public-legal-inner .vs-legal-toc-column {
  background: #ffffff;
}

.vs-public-legal-inner .vs-legal-heading {
  color: var(--vs-navy-900, #0b1f4d);
  font-weight: 700;
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
}

.vs-public-legal-inner .vs-legal-h2 {
  font-size: 1.25rem;
}

.vs-public-legal-inner .vs-legal-h3 {
  font-size: 1.1rem;
}

.vs-public-legal-inner .vs-legal-p {
  margin-bottom: 1rem;
  color: var(--vs-text-muted, #64748b);
  line-height: 1.65;
}

.vs-public-legal-inner .vs-legal-p:last-child {
  margin-bottom: 0;
}

/* Metadata header (public legal pages) */
.vs-public-legal-meta-card {
  background: linear-gradient(180deg, #f8fafc 0%, #f4f7fb 100%);
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  border: 1px solid rgba(15, 23, 42, 0.07);
}

.vs-public-legal-meta-label {
  letter-spacing: 0.06em;
  font-weight: 600;
}

.vs-public-legal-meta-badge-version {
  background: rgba(29, 78, 216, 0.12);
  color: #1e3a8a;
  font-weight: 600;
  font-size: 0.72rem;
  padding: 0.35em 0.75em;
}

.vs-public-legal-meta-badge-effective {
  background: rgba(22, 101, 52, 0.1);
  color: #166534;
  font-weight: 600;
  font-size: 0.72rem;
  padding: 0.35em 0.75em;
}

.vs-public-legal-meta-badge-muted {
  background: rgba(100, 116, 139, 0.12);
  color: #475569;
  font-weight: 600;
  font-size: 0.72rem;
  padding: 0.35em 0.75em;
}

.vs-public-legal-meta-divider {
  border-color: rgba(15, 23, 42, 0.08);
}

.vs-public-legal-meta-updated {
  letter-spacing: 0.02em;
}

@media print {
  .vs-public-legal-meta-card {
    background: #ffffff;
    box-shadow: none;
    border: 1px solid #e2e8f0;
  }
}
