.sidebar-follow { flex:none; margin:8px 18px 12px; padding:14px 12px 12px; border:1px solid #61795c; background:#153a2e; color:#f8f3e8; text-align:center; }
.sidebar-follow__heading { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; margin-bottom:10px; }
.sidebar-follow__heading strong { font-size:20px; line-height:1.4; max-width:100%; overflow-wrap:anywhere; }
.sidebar-follow__heading span { font-size:13px; color:#d0dfc5; }
.sidebar-follow__qr { display:block; width:144px; margin:0 auto 10px; background:#fff; }
.sidebar-follow__qr img { display:block; width:100%; height:auto; }
.sidebar-follow__qr:focus-visible { outline:3px solid #b7f34a; outline-offset:4px; }
.sidebar-follow p { margin:5px 0 0; font-size:14px; line-height:1.5; }
.sidebar-follow__notice strong { color:#c3ff62; font-size:16px; }
.sidebar-follow .sidebar-follow__xiaohongshu { margin-top:8px; padding-top:8px; border-top:1px solid #506b55; }
@media (max-height:1000px) and (min-width:821px) {
  .sidebar-follow { margin-top:4px; margin-bottom:8px; padding:10px; }
  .sidebar-follow__heading { margin-bottom:6px; }
  .sidebar-follow__qr { width:108px; margin-bottom:6px; }
  .sidebar-follow p { font-size:13px; }
  .sidebar[data-section="home"] .side-nav { flex:none; }
}
@media (max-height:800px) and (min-width:821px) {
  .sidebar-follow { margin:4px 18px 6px; padding:8px 10px; }
  .sidebar-follow__qr { width:96px; }
  .sidebar-follow .sidebar-follow__xiaohongshu { margin-top:4px; padding-top:4px; }
}
/* Mobile: one scrollable menu, with the QR card after navigation, never pinned. */
@media (max-width:820px) {
  .sidebar { overflow-y:auto; overscroll-behavior:contain; padding-bottom:env(safe-area-inset-bottom); }
  .sidebar .side-nav { flex:0 0 auto; overflow:visible; }
  .sidebar .sidebar__grow { display:none; }
  .sidebar .sidebar-follow { order:10; margin-top:16px; }
  .sidebar-follow__qr { width:172px; }
}
