.privacy-policy-document { min-height: 100vh; padding: 32px 20px; background: #f8fafc; color: #334155; font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; }
.privacy-policy-article { width: min(760px, 100%); margin: 0 auto; overflow: hidden; border: 1px solid #e2e8f0; border-radius: 16px; background: #fff; box-shadow: 0 4px 16px rgba(15, 23, 42, .04); }
.privacy-article-header { display: flex; align-items: flex-start; gap: 14px; padding: 28px; border-bottom: 1px solid #e2e8f0; }
.privacy-article-icon { display: grid; flex: 0 0 44px; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: #ecf1ff; color: #4d6ff9; font-size: 21px; }
.privacy-article-kicker { margin-bottom: 3px; color: #4d6ff9; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.privacy-article-header h1 { margin: 0; color: #0f172a; font-size: clamp(24px, 4vw, 30px); line-height: 1.25; }
.privacy-article-subtitle { margin: 8px 0 0; color: #64748b; font-size: 13px; }
.privacy-meta-row { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 12px; color: #94a3b8; font-size: 12px; }
.privacy-policy-article-content { padding: 26px 28px 30px; }
.privacy-policy-callout { display: flex; gap: 8px; margin: 0 0 26px; padding: 14px 18px; border-left: 4px solid #4d6ff9; border-radius: 8px; background: #f0f5ff; color: #1e3a8a; font-size: 13px; line-height: 1.7; }
.privacy-policy-callout strong { flex: 0 0 auto; color: #4d6ff9; }
.privacy-policy-article .article-body, .privacy-policy-dialog-body .article-body { color: #334155; font-size: 14px; line-height: 1.8; }
.privacy-policy-article .article-body h2, .privacy-policy-article .article-body h3, .privacy-policy-dialog-body .article-body h2, .privacy-policy-dialog-body .article-body h3 { display: flex; align-items: center; gap: 8px; margin: 24px 0 10px; color: #0f172a; font-size: 15px; line-height: 1.45; }
.privacy-policy-article .article-body h2::before, .privacy-policy-article .article-body h3::before, .privacy-policy-dialog-body .article-body h2::before, .privacy-policy-dialog-body .article-body h3::before { width: 3px; height: 14px; flex: 0 0 3px; border-radius: 2px; background: #4d6ff9; content: ""; }
.privacy-policy-article .article-body p, .privacy-policy-dialog-body .article-body p { margin: 0 0 12px; }
.privacy-policy-article .article-body ul, .privacy-policy-article .article-body ol, .privacy-policy-dialog-body .article-body ul, .privacy-policy-dialog-body .article-body ol { margin: 0 0 14px; padding-left: 22px; }
.privacy-policy-article .article-body li, .privacy-policy-dialog-body .article-body li { margin-bottom: 7px; }
.privacy-policy-article .article-body a, .privacy-policy-dialog-body .article-body a { color: #4d6ff9; }
.privacy-policy-dialog-body .privacy-policy-article-content { padding: 0; }
.privacy-policy-dialog-body .privacy-policy-callout { margin-top: 0; }
.privacy-policy-modal { backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.privacy-policy-dialog { width: min(680px, 100%); max-height: 85vh; border-radius: 24px; border: 1px solid rgba(226, 232, 240, .8); box-shadow: 0 25px 60px rgba(15, 23, 42, .22); }
.privacy-policy-dialog-header { padding: 24px 28px 20px; }
.privacy-policy-dialog-header h2 { font-size: 19px; font-weight: 800; }
.privacy-policy-dialog-body { padding: 24px 28px; font-size: 14px; line-height: 1.7; }
@media (max-width: 600px) { .privacy-policy-document { padding: 12px; }.privacy-article-header { padding: 22px 18px; }.privacy-policy-article-content { padding: 20px 18px 24px; }.privacy-policy-article { border-radius: 12px; } }
