/* legacy-pages.css: Terminal Ledger restyle for the five legacy content
   pages (about, contact, privacy, terms, 404). Built on public/css/tokens.css
   + theme.css custom properties; no off-token colors here. Structural
   surfaces use --radius-0 (no border-radius declared); the only radius in
   this file is inherited from .btn-ghost / .tl-nav-ghost (--radius-control,
   2px) via theme.css. These pages carry no primary CTA; upgrade links stay
   ghost-styled per design law. Shared by about.html, contact.html,
   privacy.html, terms.html, 404.html only. */

.tl-legacy-main {
  padding-top: var(--h-header);
  min-height: 100vh;
  display: flex;
  justify-content: center;
  padding-left: var(--gutter-desktop);
  padding-right: var(--gutter-desktop);
}

.tl-legacy-card {
  background: var(--s1);
  border: 1px solid var(--hairline);
  max-width: 880px;
  width: 100%;
  margin: var(--sp-8) 0;
  padding: var(--sp-7);
}

.tl-legacy-card h1 {
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: var(--text-h1-product);
  color: var(--t1);
  margin: 0 0 var(--sp-2);
  letter-spacing: var(--tracking-tight);
}

.tl-legacy-card h2 {
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: var(--text-h3);
  color: var(--t1);
  margin: var(--sp-6) 0 var(--sp-2);
}

.tl-legacy-card p,
.tl-legacy-card li {
  font-family: var(--font-sans);
  color: var(--t2);
  font-size: 15px;
  line-height: var(--leading-body);
}

.tl-legacy-card ul {
  padding-left: 1.4em;
  margin: var(--sp-2) 0 0;
}

.tl-legacy-card li {
  margin: 0.4em 0;
}

.tl-legacy-card a {
  color: var(--t1);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.tl-legacy-card a:hover {
  color: var(--t1); /* lime is money-only; matches global a:hover in tokens.css */
}

.tl-legacy-muted {
  color: var(--t3);
  font-size: 14px;
}

.tl-legacy-info-box {
  background: var(--s2);
  border: 1px solid var(--hairline);
  padding: var(--sp-5);
  margin: var(--sp-5) 0;
}

.tl-legacy-mvp-note {
  color: var(--t3);
  font-size: 13px;
  margin-top: var(--sp-2);
}

@media (max-width: 768px) {
  .tl-legacy-main {
    padding-top: var(--h-header-mobile);
    padding-left: var(--gutter-mobile);
    padding-right: var(--gutter-mobile);
  }
  .tl-legacy-card {
    padding: var(--sp-5);
    margin: var(--sp-6) 0;
  }
}

/* ---- 404 page ---- */
.tl-404-content {
  min-height: calc(100vh - var(--h-header));
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--sp-6) var(--gutter-mobile);
}

.tl-404-card {
  background: var(--s1);
  border: 1px solid var(--hairline);
  padding: var(--sp-8) var(--sp-7);
  text-align: center;
  max-width: 520px;
  width: 100%;
}

.tl-404-code {
  font-family: var(--font-mono);
  font-weight: 600;
  font-size: 96px;
  line-height: 1;
  color: var(--t1);
  margin-bottom: var(--sp-4);
  font-variant-numeric: tabular-nums;
}

.tl-404-title {
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: var(--text-h3);
  color: var(--t1);
  margin: 0 0 var(--sp-3);
}

.tl-404-message {
  font-family: var(--font-sans);
  font-size: 15px;
  color: var(--t2);
  line-height: var(--leading-body);
  margin: 0 0 var(--sp-5);
}

@media (max-width: 768px) {
  .tl-404-card { padding: var(--sp-6) var(--sp-5); }
  .tl-404-code { font-size: 64px; }
}
