/* === 基础布局：让 logo / 菜单 / 语言切换成一行 === */
.header .container.navbar{
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; padding:12px 24px;
}
.site-nav{ flex:1; display:flex; justify-content:flex-end; }
.header .nav-menu{
  list-style:none !important; margin:0 !important; padding:0 !important;
  display:flex !important; align-items:center; gap:24px;
}
.header .nav-menu > li{ position:relative; }
.header .nav-menu > li > a{
  display:block; padding:10px 12px; text-decoration:none;
  color:#222; font-weight:500; line-height:1;
}
/* 桌面端子菜单 */
.header .nav-menu .sub-menu{
  list-style:none; margin:0; padding:8px 0;
  position:absolute; top:100%; left:0; min-width:220px;
  background:#fff; box-shadow:0 8px 24px rgba(0,0,0,.12);
  display:none; z-index:9999;
}
.header .nav-menu .sub-menu li a{
  display:block; padding:10px 14px; color:#333; text-decoration:none;
  white-space:nowrap;
}
@media (hover:hover){
  .header .nav-menu li:hover > .sub-menu{ display:block; }
}
.lang-switcher{ margin-left:16px; }
.lang-btn{ text-decoration:none; color:#333; font-weight:600; margin:0 6px; }
.lang-btn.active{ color:#0073aa; }

/* ============ 【核心】移动端媒体查询 (<= 992px) ============ */
@media (max-width: 992px){
  /* 仅在此条件下显示汉堡菜单 */
  .mobile-toggle{ display:block; cursor:pointer; font-size:24px; line-height:1; }
  
  /* 在此条件下，将菜单变为右侧抽屉 */
  .site-nav{
    position:fixed; top:60px; right:0; width:260px; height:calc(100vh - 60px);
    background:#fff; transform:translateX(100%); transition:.25s ease; z-index:10000;
    box-shadow:-8px 0 24px rgba(0,0,0,.1); padding:12px 0;
  }
  .site-nav.is-open{ transform:translateX(0); }

  .header .nav-menu{ flex-direction:column; gap:0; }
  .header .nav-menu > li{ width:100%; }
  .header .nav-menu > li > a{ padding:12px 16px; }

  /* 移动端子菜单 */
  .header .nav-menu .sub-menu{
    position:static; display:none; box-shadow:none; padding:0 0 8px 0; background:#fafafa;
  }
  .header .nav-menu li.open > .sub-menu{ display:block; }
  .header .nav-menu li.menu-item-has-children > a{
    position:relative; padding-right:36px;
  }
  .header .nav-menu li.menu-item-has-children > a .caret{
    position:absolute; right:14px; top:50%; transform:translateY(-50%);
    width:0; height:0; border-left:6px solid transparent; border-right:6px solid transparent;
    border-top:7px solid #666; transition:.2s;
  }
  .header .nav-menu li.open > a .caret{ transform:translateY(-50%) rotate(180deg); }
}
/* 防止其它 CSS 再次把列表样式拉回来 */
.header .nav-menu, .header .nav-menu *{
  list-style:none !important;
}