/* Document pages: /support, /privacy, /terms and /security. Loaded after /styles.css, which owns the tokens and the shell. */

.lv-doc { width: min(760px, 100% - 64px); margin: 0 auto; padding: 56px 0 96px; overflow-wrap: anywhere; }
.lv-doc h1 { margin: 0; font-size: 52px; line-height: 1.06; font-weight: 800; letter-spacing: -0.03em; text-wrap: balance; }
.lv-doc h2 { margin: 48px 0 0; font-size: 28px; line-height: 1.215; font-weight: 800; letter-spacing: -0.02em; }
.lv-doc h3 { margin: 32px 0 0; font-size: 20px; line-height: 1.4; font-weight: 700; letter-spacing: -0.01em; }
.lv-doc p, .lv-doc li { font-size: 17px; line-height: 1.6; color: var(--text-2); }
.lv-doc p { margin: 16px 0 0; }
.lv-doc h1 + p, .lv-doc h2 + p, .lv-doc h3 + p { margin-top: 12px; }
.lv-doc strong { color: var(--text); font-weight: 700; }
.lv-doc ul { margin: 16px 0 0; padding-left: 24px; }
.lv-doc li + li { margin-top: 8px; }
.lv-doc a { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
.lv-doc__meta { margin: 12px 0 0; font-size: 15px; color: var(--text-2); }
.lv-doc p.lv-doc__meta { font-size: 15px; }

/* Amber notice: draft banner, lost-phrase note, whitepaper status. Amber text tokens only. */
.lv-doc .lv-notice, .lv-notice { margin: 24px 0 0; padding: 16px 20px; border-radius: 22px; background: var(--amber); border: 1px solid var(--amber-border); color: var(--amber-text-2); }
.lv-doc .lv-notice strong, .lv-notice strong { color: var(--amber-text); }
.lv-doc .lv-notice a, .lv-notice a { color: var(--amber-text); }

/* Numbered steps with amber numbers */
.lv-doc .lv-steps { list-style: none; margin: 16px 0 0; padding: 0; counter-reset: lv-step; }
.lv-doc .lv-steps li { position: relative; margin: 0; padding: 0 0 0 44px; counter-increment: lv-step; }
.lv-doc .lv-steps li + li { margin-top: 14px; }
.lv-doc .lv-steps li::before { content: counter(lv-step); position: absolute; left: 0; top: 1px; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 999px; background: var(--amber); border: 1px solid var(--amber-border); color: var(--amber-icon); font-size: 14px; font-weight: 800; line-height: 1; }

/* Whitepaper status banner: the notice, full width, 15 px, at the top of the page */
.lv-doc .lv-status { margin: 20px 0 0; font-size: 15px; line-height: 1.5; }
.lv-doc .lv-status strong { font-size: 15px; }

/* Whitepaper contents: a list of links, each row at least 44 px tall */
.lv-doc .lv-toc { margin: 28px 0 0; }
.lv-doc .lv-toc ul { list-style: none; margin: 0; padding: 0; }
.lv-doc .lv-toc li { margin: 0; }
.lv-doc .lv-toc li + li { margin-top: 0; }
.lv-doc .lv-toc a { display: flex; align-items: center; min-height: 44px; font-size: 17px; }
.lv-doc .lv-toc ul ul { padding-left: 20px; }

/* Known limitations: numbered, each item separated by a 1 px line */
.lv-doc .lv-limits { list-style: none; margin: 20px 0 0; padding: 0; counter-reset: lv-limit; }
.lv-doc .lv-limits li { position: relative; margin: 0; padding: 18px 0 18px 44px; border-top: 1px solid var(--group-border); counter-increment: lv-limit; }
.lv-doc .lv-limits li:last-child { border-bottom: 1px solid var(--group-border); }
.lv-doc .lv-limits li + li { margin-top: 0; }
.lv-doc .lv-limits li::before { content: counter(lv-limit); position: absolute; left: 0; top: 18px; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 999px; background: var(--amber); border: 1px solid var(--amber-border); color: var(--amber-icon); font-size: 14px; font-weight: 800; line-height: 1; }

/* Wide tables: a labelled scroll region the keyboard can reach */
.lv-doc .lv-table-wrap { margin: 20px 0 0; overflow-x: auto; }
.lv-doc .lv-table-wrap:focus-visible { outline: 2px solid var(--text); outline-offset: 3px; }
.lv-doc table { width: 100%; min-width: 520px; border-collapse: collapse; }
.lv-doc caption { padding: 0 0 12px; text-align: left; font-size: 15px; line-height: 1.5; color: var(--text-2); }
.lv-doc th, .lv-doc td { padding: 12px 16px 12px 0; text-align: left; vertical-align: top; border-top: 1px solid var(--group-border); font-size: 16px; line-height: 1.5; color: var(--text-2); overflow-wrap: normal; }
.lv-doc th { color: var(--text); font-weight: 700; }
.lv-doc tbody tr:last-child td, .lv-doc tbody tr:last-child th { border-bottom: 1px solid var(--group-border); }

@media (max-width: 759px) {
  .lv-doc { width: auto; margin: 0 20px; padding: 32px 0 56px; }
  .lv-doc h1 { font-size: 34px; line-height: 1.1; letter-spacing: -0.025em; }
  .lv-doc h2 { font-size: 24px; line-height: 1.25; margin-top: 40px; }
  .lv-doc h3 { font-size: 18px; }
  .lv-doc p, .lv-doc li { font-size: 16px; }
}
