.legal-page{--ink:#0a1a33;--muted:#54637c;--line:#e2e8f2;--accent:#1769ff;color:var(--ink)}.legal-meta{border-bottom:1px solid var(--line);background:#f4f8fc;padding:26px 0}.legal-meta .wrap{max-width:860px;color:var(--muted);flex-wrap:wrap;gap:10px 28px;font-size:.85rem;display:flex}.legal-meta strong{color:var(--ink)}.legal-toc{background:#fff;padding:34px 0 10px}.legal-toc .wrap{max-width:860px}.legal-toc h2{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 14px;font-size:.78rem;font-weight:800}.legal-toc ol{columns:2;column-gap:32px;margin:0;padding:0;list-style:none}.legal-toc li{break-inside:avoid;margin-bottom:8px;font-size:.92rem}.legal-toc a{color:var(--accent);font-weight:600}.legal-toc a:hover{text-decoration:underline}.legal-body{background:#fff;padding:20px 0 100px}.legal-body .wrap{max-width:860px}.legal-body section{border-top:1px solid var(--line);margin-top:42px;padding-top:42px}.legal-body section:first-of-type{border-top:0;margin-top:10px}.legal-body h2{letter-spacing:-.02em;margin:0 0 16px;scroll-margin-top:90px;font-size:1.55rem}.legal-body h3{letter-spacing:-.01em;margin:26px 0 10px;scroll-margin-top:90px;font-size:1.08rem}.legal-body p{color:var(--ink);opacity:.88;margin:0 0 14px;font-size:.98rem;line-height:1.75}.legal-body ul,.legal-body ol.legal-list{color:var(--ink);opacity:.88;margin:0 0 14px;padding-left:22px;font-size:.98rem;line-height:1.7}.legal-body li{margin-bottom:7px}.legal-body dl{margin:0 0 14px}.legal-body dt{margin-top:12px;font-weight:800}.legal-body dd{color:var(--muted);margin:2px 0 0;font-size:.95rem;line-height:1.65}.legal-body table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:.9rem}.legal-body th,.legal-body td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.legal-body th{background:#f4f8fc;font-weight:800}.legal-callout{background:#eef4ff;border:1px solid #cddffb;border-radius:10px;margin:0 0 18px;padding:16px 18px}.legal-callout p{opacity:1;margin:0}.confirm{white-space:normal;background:#fff4d6;border:1px solid #f0c419;border-radius:5px;padding:1px 7px;font-style:italic}.legal-crosslink{flex-wrap:wrap;gap:14px;margin-top:20px;display:flex}.legal-crosslink a{color:var(--accent);font-size:.92rem;font-weight:700}@media (max-width:700px){.legal-toc ol{columns:1}.legal-body h2{font-size:1.3rem}}
