.cover-terms { max-width: 38rem; margin-top: 1.5rem; color: var(--muted); }
.cover-terms h2 { margin: 0 0 0.5rem; font-family: var(--font-interface); font-size: 1rem; font-weight: 600; color: var(--ink); }
.cover-terms > p { margin: 0 0 0.5rem; font-family: var(--font-reading); font-size: 1rem; line-height: 1.6; }
.terms-text-action, .journey-terms-link { padding: 0.4rem 0; border: 0; color: var(--ink); background: transparent; font: inherit; font-size: 0.875rem; text-decoration: underline; text-underline-offset: 0.2em; text-align: left; cursor: pointer; }
.terms-check-label { display: flex; gap: 0.75rem; align-items: flex-start; min-height: 44px; margin-top: 1rem; font-family: var(--font-interface); font-size: 0.875rem; line-height: 1.6; cursor: pointer; }
.terms-check-label input { flex-shrink: 0; width: 22px; height: 22px; margin: 0.5rem 0; accent-color: var(--brand-blue); }
.terms-check-label > span { padding-block: 0.35rem; }
.terms-check-label label { display: inline; font: inherit; cursor: pointer; }
.terms-check-label .terms-text-action { display: inline-block; max-width: 100%; padding: 0; font: inherit; }
.cover-cta:disabled { opacity: 0.4; cursor: not-allowed; color: var(--muted); border-color: var(--line); background: transparent; }
.terms-text-action:focus-visible, .journey-terms-link:focus-visible, .terms-check-label input:focus-visible { outline: 2px solid var(--brand-blue); outline-offset: 3px; }
.terms-version { margin: 0.65rem 0 0; color: var(--muted); font-family: var(--font-interface); font-size: 0.82rem; line-height: 1.6; }
.journey-terms-link { display: block; min-height: 44px; margin: 0.4rem 0 0 1.4rem; color: var(--muted); font-family: var(--font-interface); font-size: 0.8rem; }
.journey-terms-dialog h3 { scroll-margin-top: 1rem; }
