.survey-notice-link { display: inline; padding: 0; border: 0; background: transparent; color: #0759d8; font: inherit; line-height: inherit; text-align: left; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.survey-notice-link:disabled { opacity: .65; }
.qc-dialog.legal-document-dialog { display: flex; flex-direction: column; width: min(440px, 100%); max-height: calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); overflow: hidden; padding: 20px; background: #fff; color: #111; }
.legal-document-dialog > h2 { flex: 0 0 auto; font-size: 18px; line-height: 1.5; text-align: center; }
.legal-document-dialog > p:empty { display: none; }
.legal-document-dialog > .qc-actions { flex: 0 0 auto; margin-top: 12px; }
.legal-document-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; color: #111; background: white; padding-right: 8px; font: 16px/1.85 "Microsoft YaHei", sans-serif; overflow-wrap: anywhere; }
.legal-document-body p { margin: 12px 0; color: #111; }
.legal-document-body h3 { font-size: 17px; margin: 24px 0 12px; }
.legal-document-body .legal-meta { font-size: 12px; color: #333; }
.legal-toc { margin: 20px 0; padding: 12px 0; border-block: 1px solid #ddd; display: grid; gap: 4px; }
.legal-toc button, .qc-dialog .legal-toc button { background: transparent; color: #111; border: 0; border-radius: 0; text-align: left; padding: 5px 0; font: inherit; min-height: 36px; cursor: pointer; }
.legal-related { display: flex; gap: 10px; flex-wrap: wrap; }
.legal-related a { color: #0759d8; }
