/* Only document semantics; layout, themes and typography come from the homepage. */
[hidden] { display: none !important; }
html[lang="en"] [data-locale="zh"] { display: none !important; }
html[lang="en"] [data-locale="en"][hidden] { display: revert !important; }
.skip-link { position: fixed; top: 8px; left: 20px; z-index: 1200; padding: 12px 20px; border-radius: 999px; color: white; background: var(--brand-primary); transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
.legal-page .hero-section { padding-bottom: 20px; }
.legal-page .doc-content { overflow-wrap: anywhere; }
.legal-page .doc-content section { scroll-margin-top: 100px; }
.legal-page .doc-content ol, .legal-page .doc-content ul { padding-inline-start: 24px; margin-bottom: 20px; }
.legal-page .doc-content li { padding-inline-start: 4px; margin-bottom: 8px; }
.legal-page .doc-content a { color: var(--brand-primary); text-decoration: underline; text-underline-offset: 4px; }
.legal-page .doc-content a:hover { color: var(--brand-hover); }
.legal-page .doc-content dl { display: grid; grid-template-columns: minmax(100px, 1fr) 2fr; gap: 16px 24px; margin-bottom: 20px; }
.legal-page .doc-content dt { color: var(--text-muted); }
.legal-page .doc-content dd { min-width: 0; color: var(--text-primary); }
.language-control { position: relative; display: inline-flex; }
.lang-item[aria-current="true"] { background: var(--btn-tertiary-bg); }
.mobile-nav-overlay.open ~ .app-main { pointer-events: none; }
.mobile-menu-btn[aria-expanded="true"] svg line:nth-child(1) { opacity: 0; }
.mobile-menu-btn[aria-expanded="true"] svg line:nth-child(2) { transform: translateY(6px) rotate(45deg); transform-origin: center; }
.mobile-menu-btn[aria-expanded="true"] svg line:nth-child(3) { transform: translateY(-6px) rotate(-45deg); transform-origin: center; }
@media (max-width: 480px) {
  .legal-page .doc-content dl { grid-template-columns: 1fr; gap: 6px; }
  .legal-page .doc-content dd { margin-bottom: 14px; }
}
