.site-footer { box-sizing:border-box; width:min(1380px,100%); margin:40px auto 0; padding:26px 0 14px; border-top:1px solid rgba(139,163,190,.16); color:#93a0b3; font:12px/1.9 -apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif; }
.site-footer[hidden] { display:none!important; }
.site-footer-details > summary { display:none; }
.site-footer-notice { text-align:center; }
.site-footer-notice p { margin:0 0 6px; overflow-wrap:anywhere; }
.site-footer-bottom { display:flex; align-items:flex-end; justify-content:space-between; gap:16px 28px; margin-top:20px; padding-top:16px; border-top:1px solid rgba(139,163,190,.08); }
.site-footer-copyright { display:flex; flex-wrap:wrap; column-gap:12px; row-gap:2px; margin:0; font-size:11px; color:#8492a7; }
.site-footer-contact { display:flex; flex-direction:column; align-items:flex-end; gap:3px; flex-shrink:0; }
.site-footer-contact a { color:#8fc9de; text-decoration:none; text-underline-offset:3px; }
.site-footer-contact a:hover { color:#b8e9f8; text-decoration:underline; }
.site-footer-contact a:focus-visible,.site-footer summary:focus-visible { outline:2px solid #34b9e9; outline-offset:4px; border-radius:2px; }
.site-footer-contact > span { color:#8492a7; font-size:11px; }
@media(max-width:760px) {
  .site-footer { margin-top:28px; padding-top:20px; font-size:11px; line-height:1.9; }
  .site-footer-bottom { flex-direction:column; align-items:flex-start; gap:14px; margin-top:16px; padding-top:14px; }
  .site-footer-contact { align-items:flex-start; }
  .site-footer-copyright { column-gap:9px; }
}
/* The mobile home feed owns the viewport; its legal notice expands on demand. */
.site-footer[data-feed="true"] { position:fixed; z-index:1250; left:0; right:0; bottom:calc(76px + var(--mobile-safe-bottom-max,0px)); width:100%; max-height:60vh; margin:0; padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left)); overflow-y:auto; background:rgba(10,16,25,.97); border-top-color:rgba(139,163,190,.2); box-shadow:0 -8px 28px #0003; }
.site-footer[data-feed="true"] .site-footer-details > summary { display:flex; align-items:center; justify-content:center; gap:10px; min-height:32px; cursor:pointer; font-size:10px; color:#a6b7c9; list-style:none; }
.site-footer[data-feed="true"] summary::-webkit-details-marker { display:none; }
.site-footer[data-feed="true"] details[open] > summary span { transform:rotate(180deg); }
.site-footer[data-feed="true"] .site-footer-content { padding:6px 0 18px; }
