/* Shared styles for FaceCard legal pages. Loads after styles.css. */
.legal-hero{padding:56px 0 34px;border-bottom:1px solid var(--line)}
.legal-hero h1{font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:clamp(40px,5.2vw,64px);line-height:1.02;letter-spacing:-.03em;margin:14px 0 18px;max-width:820px}
.legal-meta{display:flex;flex-wrap:wrap;gap:10px 26px;color:var(--muted);font-size:14px;margin-top:6px}
.legal-meta b{color:var(--ink);font-weight:600}
.legal-summary{max-width:760px;font-size:18px;line-height:1.65;color:var(--ink);margin:22px 0 0}
.legal-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding:44px 0 90px;align-items:start}
.legal-toc{position:sticky;top:24px;font-size:14px;line-height:1.5}
.legal-toc h2{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-weight:800}
.legal-toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.legal-toc li a{display:block;padding:6px 0 6px 14px;color:var(--muted);border-left:2px solid transparent;margin-left:-2px}
.legal-toc li a:hover{color:var(--ink);border-left-color:var(--red)}
.legal-toc .toc-note{margin-top:18px;font-size:13px;color:var(--muted)}
.legal-toc .toc-note a{text-decoration:underline}
.legal-body{max-width:760px;font-size:16px;line-height:1.7;color:var(--ink)}
.legal-body h2{font-family:Manrope,sans-serif;font-size:20px;line-height:1.3;letter-spacing:.03em;text-transform:uppercase;margin:56px 0 16px;scroll-margin-top:24px}
.legal-body h2:first-child{margin-top:0}
.legal-body h3{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.02em;margin:30px 0 10px;scroll-margin-top:24px}
.legal-body h4{font-size:16px;margin:22px 0 8px}
.legal-body p{margin:0 0 14px}
.legal-body ul,.legal-body ol{padding-left:22px;margin:0 0 16px}
.legal-body li{margin:0 0 6px}
.legal-body a{text-decoration:underline;text-underline-offset:2px}
.legal-body a:hover{color:var(--red)}
.legal-body strong{font-weight:600}
.legal-body .table-wrap{overflow-x:auto;margin:16px 0 24px;border:1px solid var(--line);border-radius:14px;background:#fff}
.legal-body table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px;line-height:1.5}
.legal-body th,.legal-body td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line)}
.legal-body th{background:#f4f1ed;font-weight:700;font-size:13px;letter-spacing:.02em}
.legal-body tr:last-child td{border-bottom:0}
.legal-body td a{word-break:break-word}
.callout{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin:20px 0 26px}
.callout.red{background:var(--pink);border-color:#ffd2d6}
.callout.lime{background:#f3ffcc;border-color:#d7f07a}
.callout h3{margin:0 0 10px;font-size:16px}
.callout p:last-child,.callout ul:last-child{margin-bottom:0}
.placeholder{background:#fff3c4;border:1px dashed #d8b23a;border-radius:6px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:#5d4600;white-space:normal}
.legal-body .facedata-list li{margin-bottom:10px}
.legal-body .version-list li{margin-bottom:10px}
.legal-body dl{margin:0 0 16px}
.legal-body dt{font-weight:600;margin-top:12px}
.legal-body dd{margin:4px 0 0}
.back-top{display:inline-block;margin-top:40px;font-weight:700;border-bottom:1px solid #aaa39c;padding:8px 2px}
.legal-footer-note{font-size:13px;color:var(--muted);margin-top:34px;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:900px){.legal-layout{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:30px}.legal-body,.legal-toc{min-width:0}.legal-toc{position:static;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}.legal-toc ol{border-left:0}.legal-toc li a{padding-left:0;margin-left:0;border-left:0}.legal-body table{min-width:560px}}
@media(max-width:600px){.legal-hero{padding:34px 0 24px}.legal-summary{font-size:16px}.legal-body h2{font-size:22px;margin-top:44px}}
@media print{.nav,.legal-toc,.back-top,footer .footlinks{display:none}.legal-layout{display:block}.legal-body{max-width:none}.legal-body .table-wrap{overflow:visible;border:0}.legal-body table{min-width:0}a{text-decoration:none}}
