/* MAD Recovery legal pages: document text, consent prompt, Profile card.
   Uses the app tokens of rehab_app_v4.css (--line-2 and friends). */
.lg-page .lg-title { margin-bottom: 4px; }
.lg-meta { margin-bottom: 14px; }
.lg-body { line-height: 1.55; overflow-wrap: anywhere; }
.lg-body h2 { font-size: 1.15rem; margin: 1.4em 0 0.5em; }
.lg-body h3 { font-size: 1rem; margin: 1.2em 0 0.4em; }
.lg-body h2:first-child, .lg-body h3:first-child, .lg-body p:first-child { margin-top: 0; }
.lg-body p, .lg-body ul, .lg-body ol { margin: 0 0 0.8em; }
.lg-body ul, .lg-body ol, .lg-list { padding-left: 1.3em; }
.lg-body li { margin-bottom: 0.35em; }
.lg-body hr { border: 0; border-top: 1px solid var(--line-2, rgba(127, 127, 127, 0.3)); margin: 1.2em 0; }
/* Tables scroll sideways on a phone instead of widening the page. */
.lg-body table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; margin: 0 0 1em; font-size: 0.92em; }
.lg-body th, .lg-body td { border: 1px solid var(--line-2, rgba(127, 127, 127, 0.3)); padding: 6px 8px; text-align: left; vertical-align: top; min-width: 120px; }
.lg-body th { font-weight: 700; }
.lg-past { margin-top: 10px; }
.lg-join .lg-gap, .lg-item .lg-gap { margin-top: 12px; }
.lg-join a, .lg-item a, .lg-links a, .lg-page .foot-links a { text-decoration: underline; }
.lg-more { margin-top: 8px; }
.lg-health { line-height: 1.5; margin: 8px 0 0; }
.lg-item { margin-bottom: 12px; }
.lg-item-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 4px; }
.lg-summary { margin: 10px 0 4px; }
.lg-strong { font-weight: 700; }
.lg-pre { white-space: pre-line; }
.lg-read { display: inline-block; margin-top: 8px; }
.lg-note { margin-top: 8px; }
.lg-links { margin-bottom: 10px; }
.lg-row { padding: 10px 0; border-top: 1px solid var(--line-2, rgba(127, 127, 127, 0.3)); }
.lg-camera { text-align: center; }
.lg-camera .ic { display: inline-flex; margin-bottom: 6px; }
/* Session player camera notice (camera_notice_v1.js). */
.lg-cam-overlay { position: fixed; inset: 0; z-index: 95; background: rgba(0, 0, 0, 0.55); display: flex; align-items: flex-end; justify-content: center; padding: 16px; }
.lg-cam-box { width: 100%; max-width: 480px; margin: 0; }
.lg-cam-box h3 { margin-top: 0; }
.lg-cam-box .btn + .btn { margin-top: 10px; }
