/* ==================== 移动端适配（小程序风格） ==================== */
@media (max-width: 768px) {
  body{font-size:14px}
  #app{flex-direction:column;height:100dvh}

  /* 左侧导航 → 底部 tab 栏 */
  .nav-rail{
    position:fixed;bottom:0;left:0;right:0;z-index:900;
    width:100%;height:calc(56px + env(safe-area-inset-bottom));
    padding:0 0 env(safe-area-inset-bottom);
    flex-direction:row;align-items:stretch;
    background:var(--sidebar-bg);border-top:1px solid rgba(255,255,255,.08);
    display:flex; /* 覆盖 styles.css ≤640px 的隐藏规则 */
  }
  .nav-avatar,.dev-credit-nav{display:none}
  .nav-list{flex:1;flex-direction:row;align-items:stretch;justify-content:space-around;gap:0;margin:0}
  .nav-bottom{flex-direction:row;margin-top:0;width:auto}
  .nav-item{
    width:auto;height:100%;min-width:52px;flex:1;
    border-radius:0;flex-direction:column;gap:1px;
  }
  .nav-item svg{width:21px;height:21px}
  .nav-item::after{content:attr(data-label);font-size:9.5px;line-height:1;color:inherit;letter-spacing:0}
  .nav-item.active{background:transparent}
  .nav-badge{top:4px;right:calc(50% - 22px)}
  .nav-bottom .nav-item{flex:1}

  /* 社区列表 → 左侧全屏抽屉 */
  .community-panel{
    position:fixed;top:0;left:0;bottom:0;z-index:800;
    width:min(84vw,340px);
    transform:translateX(-105%);transition:transform .25s ease;
    box-shadow:4px 0 20px rgba(0,0,0,.12);
  }
  .community-panel.mobile-open{transform:translateX(0)}

  /* 聊天区全屏 */
  .chat-area{width:100%;height:100%;padding-bottom:calc(56px + env(safe-area-inset-bottom))}
  .chat-header{padding:10px 14px;flex-shrink:0}
  .chat-title{font-size:16px}
  .chat-title-row{cursor:pointer}
  .message-list{padding:10px 12px}
  .msg-body{max-width:78%}
  .msg-bubble{font-size:14px}
  .chat-input-area{padding-bottom:env(safe-area-inset-bottom)}

  /* 互助面板 → 全屏 */
  .right-panel{
    position:fixed;top:0;right:0;bottom:0;left:0;z-index:700;
    width:100%;transform:translateX(105%);
    transition:transform .25s ease;
  }
  .right-panel.show{transform:translateX(0)}
  .quick-features{grid-template-columns:repeat(4,1fr);gap:6px;padding:10px 8px}
  .feature-icon{width:32px;height:32px;font-size:16px}

  /* 群设置 → 全屏 */
  .group-settings-panel{
    position:fixed;top:0;right:0;bottom:0;left:0;z-index:750;
    width:100%;height:100%;max-width:100%;
  }

  /* 弹窗 → 底部弹起 */
  .modal-overlay{padding:0;align-items:flex-end}
  .modal-box{width:100%;max-width:100%;max-height:92dvh;border-radius:16px 16px 0 0;animation:slideUp .22s ease}
  @keyframes slideUp{from{transform:translateY(40px);opacity:.6}to{transform:translateY(0);opacity:1}}
  .modal-box textarea,.modal-box input{font-size:15px}

  /* 登录页全屏 */
  .login-mask{overflow-y:auto}
  .login-card{width:100%;max-width:100%;min-height:100%;height:auto;border-radius:0;padding:44px 26px}

  /* 产品主页移动端 */
  .intro-page .nav-inner{padding:10px 14px;gap:8px}
  .intro-page .brand-text strong{font-size:17px}
  .intro-page .brand-text small{font-size:8.5px;letter-spacing:2px}
  .intro-page .brand-mark{width:36px;height:36px;font-size:18px}
  .intro-page .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:rgba(244,248,241,.98);backdrop-filter:blur(12px);padding:12px 18px;gap:4px;border-bottom:1px solid var(--line)}
  .intro-page .nav-links.open{display:flex}
  .intro-page .nav-links a{width:100%;padding:10px 14px}
  .intro-page .nav-cta{height:34px;padding:0 16px;font-size:12px;letter-spacing:1px}
  .intro-page .nav-toggle{display:flex}
  .intro-page .hero{padding:36px 18px 50px}
  .intro-page .hero-grid{grid-template-columns:1fr;gap:30px}
  .intro-page .hero-title .line1{font-size:30px}
  .intro-page .hero-title .line2{font-size:36px;letter-spacing:1px}
  .intro-page .hero-desc{font-size:13.5px;line-height:1.75}
  .intro-page .hero-stats{grid-template-columns:1fr 1fr;gap:10px}
  .intro-page .stat-card{padding:18px 14px}
  .intro-page .stat-num{font-size:28px}
  .intro-page .section{padding:50px 18px}
  .intro-page .section-head h2{font-size:26px;letter-spacing:1px}
  .intro-page .section-head p{font-size:13.5px}
  .intro-page .steps{grid-template-columns:1fr;gap:14px}
  .intro-page .step-card{padding:22px 18px;gap:14px}
  .intro-page .step-num{width:40px;height:40px;font-size:20px}
  .intro-page .step-body h3{font-size:17px}
  .intro-page .community-grid{grid-template-columns:1fr;gap:12px}
  .intro-page .feed-grid{grid-template-columns:1fr;gap:10px}
  .intro-page .home-feed{padding:14px}
  .intro-page .cta-section{padding:40px 18px 56px}
  .intro-page .cta-box{padding:36px 22px;border-radius:20px}
  .intro-page .cta-box h2{font-size:22px;letter-spacing:1px}
  .intro-page .cta-box p{font-size:13.5px}
  .intro-page .btn{height:42px;padding:0 20px;font-size:14px}

  /* 管理后台 */
  .admin-topbar{padding:12px 16px;flex-wrap:wrap;gap:8px}
  .admin-title{font-size:16px}
  .admin-tabs{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
  .admin-tab{flex-shrink:0}
  .admin-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .admin-stat-card{padding:10px 6px}
  .admin-stat-num{font-size:20px}
  .admin-filter-row{flex-wrap:wrap}
  .admin-search-box{flex:1 1 100%}
  .admin-member-row{flex-wrap:wrap;gap:8px}

  /* 聊天卡片宽度 */
  .msg-help-card,.msg-module-card{max-width:92%}
  .help-item-footer,.activity-foot{flex-wrap:wrap}
  .activity-head{flex-wrap:wrap;gap:4px}
}
