/* Terms / privacy — readable legal prose on shelf chrome */

:root {
  --legal-bg: #f5f4f1;
  --legal-surface: #ffffff;
  --legal-ink: #0a0a0a;
  --legal-ink2: #555550;
  --legal-ink3: #999992;
  --legal-border: rgba(10, 10, 10, 0.09);
  --legal-accent: #dc2626;
  --legal-font-display: "Space Grotesk", "DM Sans", system-ui, sans-serif;
  --legal-font-mono: "Space Mono", "DM Mono", ui-monospace, monospace;
  --legal-shadow: 0 1px 3px rgba(10, 10, 10, 0.06), 0 4px 16px rgba(10, 10, 10, 0.04);
}

body.legal-shelf {
  background: var(--legal-bg) !important;
  color: var(--legal-ink) !important;
  font-family: var(--legal-font-display) !important;
  font-size: 15px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

body.legal-shelf.site-shell {
  padding-top: 0 !important;
}

body.legal-shelf .legal-main {
  flex: 1;
  padding-top: calc(
    var(--studio-header-stack, 4.5rem) + env(safe-area-inset-top, 0px)
  );
  padding-bottom: 6rem;
  padding-left: 1rem;
  padding-right: 1rem;
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
}

body.legal-shelf .legal-card {
  background: var(--legal-surface);
  border: 1px solid var(--legal-border);
  border-radius: 10px;
  box-shadow: var(--legal-shadow);
  padding: 1.75rem 1.5rem;
}

@media (min-width: 640px) {
  body.legal-shelf .legal-card {
    padding: 2.5rem 2.75rem;
  }
}

body.legal-shelf .legal-title {
  font-family: var(--legal-font-display);
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--legal-ink);
  text-align: center;
  margin-bottom: 2rem;
}

body.legal-shelf .legal-section {
  margin-bottom: 2.5rem;
}

body.legal-shelf .legal-section:last-of-type {
  margin-bottom: 0;
}

body.legal-shelf .section-title,
body.legal-shelf .legal-section-title {
  font-family: var(--legal-font-mono);
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--legal-ink3);
  margin-bottom: 0.65rem;
}

body.legal-shelf .section-content,
body.legal-shelf .legal-section-content {
  font-size: 0.9375rem;
  line-height: 1.75;
  color: var(--legal-ink2);
}

body.legal-shelf .section-content strong,
body.legal-shelf .legal-section-content strong {
  color: var(--legal-ink);
  font-weight: 600;
}

body.legal-shelf .section-content ul,
body.legal-shelf .legal-section-content ul {
  list-style: disc;
  padding-left: 1.5rem;
  margin-top: 0.5rem;
}

body.legal-shelf .section-content li + li,
body.legal-shelf .legal-section-content li + li {
  margin-top: 0.75rem;
}

body.legal-shelf .product-header,
body.legal-shelf .legal-product-header {
  font-family: var(--legal-font-display);
  font-size: 1rem;
  font-weight: 500;
  color: var(--legal-ink);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

body.legal-shelf .link-green,
body.legal-shelf .legal-link {
  color: var(--legal-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: rgba(220, 38, 38, 0.35);
}

body.legal-shelf .link-green:hover,
body.legal-shelf .legal-link:hover {
  color: #b91c1c;
  text-decoration-color: rgba(185, 28, 28, 0.5);
}

body.legal-shelf .legal-updated {
  text-align: center;
  font-family: var(--legal-font-mono);
  font-size: 0.65rem;
  letter-spacing: 0.06em;
  color: var(--legal-ink3);
  margin-top: 3rem;
}
