:root { --legal-bg:#f3f6fa; --legal-card:#fff; --legal-text:#17243a; --legal-muted:#708097; --legal-line:#e5ebf2; --legal-blue:#176fff; }
* { box-sizing:border-box; }
body { margin:0; background:var(--legal-bg); color:var(--legal-text); font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
button { font:inherit; }
.legal-shell { width:min(100%,480px); min-height:100svh; margin:0 auto; padding:0 18px calc(36px + env(safe-area-inset-bottom)); background: #fff; color: #111; }
.legal-top { position:sticky; top:0; z-index:5; display:grid; grid-template-columns:42px 1fr 42px; align-items:center; min-height:52px; margin:0 -2px 14px; background:color-mix(in srgb,var(--legal-bg) 88%,transparent); backdrop-filter:blur(18px); }
.legal-top h1 { grid-column:2; margin:0; font-size:18px; line-height:1.35; letter-spacing:.5px; text-align:center; }
.legal-back { display:grid; width:40px; height:40px; place-items:center; border:0; border-radius:50%; background:transparent; color:var(--legal-text); }
.legal-back svg { width:25px; height:25px; }
.legal-card { padding:24px 20px; border:1px solid var(--legal-line); border-radius:18px; background:var(--legal-card); box-shadow:0 16px 38px rgba(31,54,86,.07); }
.legal-card > h2 { margin:0; font-size:24px; line-height:1.35; letter-spacing:.5px; }
.legal-meta { margin:8px 0 24px; color:var(--legal-muted); font-size:12px; line-height:1.6; }
.legal-section + .legal-section { margin-top:24px; padding-top:22px; border-top:1px solid var(--legal-line); }
.legal-section h3 { margin:0 0 10px; font-size:17px; line-height:1.5; letter-spacing:.5px; }
.legal-section p, .legal-section li { color:color-mix(in srgb,var(--legal-text) 84%,var(--legal-muted)); font-size:14px; line-height:1.9; }
.legal-section p { margin:8px 0 0; }
.legal-section ul, .legal-section ol { margin:8px 0 0; padding-left:22px; }
.legal-notice { margin-top:18px; padding:14px 15px; border-radius:12px; background:color-mix(in srgb,var(--legal-blue) 8%,var(--legal-card)); color:var(--legal-text); font-size:13px; line-height:1.75; }
.legal-link { color:var(--legal-blue); text-underline-offset:3px; }
html[data-theme="dark"] { --legal-bg:#0d1726; --legal-card:#142136; --legal-text:#eef5ff; --legal-muted:#9cabbe; --legal-line:#2a3a51; --legal-blue:#78aaff; }
html[data-theme="dark"] .legal-card { box-shadow:none; }
@media(max-width:420px){ .legal-card{padding:21px 17px}.legal-card>h2{font-size:22px} }
.legal-top.qc-top-navigation { display:grid !important; grid-template-columns:44px minmax(0,1fr) 44px; gap:0 !important; background:#fff !important; color:#111; }
.legal-card { padding: 24px 0; border: 0; border-radius: 0; box-shadow: none; color: #111; background: #fff; overflow-wrap: anywhere; }
.legal-card p, .legal-card li { color:#111; font-size:16px; line-height:1.9; }
.legal-card .legal-meta { font-size:12px; color:#333; }
.legal-card .legal-section { scroll-margin-top:calc(var(--qc-top-nav-height, 56px) + 16px); }
.legal-card .legal-section + .legal-section { border:0; padding-top:0; margin-top:28px; }
.legal-notice { background:transparent; border-radius:0; padding:0; }
