/* Shared by the public privacy policy and terms pages (TKT-LEGAL-PAGES). */
.legal-page { max-width: 780px; margin: clamp(24px, 5vh, 56px) auto; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: clamp(20px, 5vw, 40px); line-height: 1.9; overflow-wrap: anywhere; }
.legal-page h1 { font-size: clamp(1.6rem, 4vw, 2rem); margin: 0 0 .3rem; }
.legal-page h2 { font-size: 1.12rem; margin: 1.6rem 0 .4rem; }
.legal-page p, .legal-page li { margin: 0 0 .5rem; }
.legal-page ul { padding-inline-start: 1.3rem; margin: 0 0 .6rem; }
.legal-meta { color: var(--muted); }
.legal-links { margin-top: 2rem; border-top: 1px solid var(--line); padding-top: 1rem; }
.legal-page a { color: var(--blue); font-weight: 600; }
/* Public about page (owner 2026-11-09). */
.about-lead { font-size: 1.05rem; }
.about-details { display: grid; gap: .5rem; margin: 0 0 1rem; }
.about-details div { display: flex; flex-wrap: wrap; gap: .3rem 1rem; padding: .55rem .8rem; border: 1px solid var(--line); border-radius: 10px; }
.about-details dt { font-weight: 700; min-width: 8rem; }
.about-details dd { margin: 0; }
.about-actions { margin-top: 1.5rem; }
.legal-page a.about-login { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.2rem; border-radius: 10px; background: var(--blue-fill); color: #fff; text-decoration: none; }
