/* ============================================================
   全站公共样式 - 导航栏 / 头部 / 下拉菜单 / logo
   各页面共用,改这里即全站生效。页面专属样式仍留在各自<style>中。
   ============================================================ */

/* ---------- 顶部导航栏 ---------- */
nav.ms-navbar.ms-navbar-primary {
  background-color: white !important;
  color: black !important;
  box-shadow: none !important;
  border-bottom: 1px solid #ddd !important;
}

nav.ms-navbar.ms-navbar-primary a {
  color: black !important;
}

nav.ms-navbar.ms-navbar-primary a:hover {
  color: white !important;
}

/* 让header和nav在同一行显示,固定在顶部 */
.header-nav-container {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 80px !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1001 !important;
  background: white !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
  padding: 0 8% !important;
}

.ms-header {
  flex: 0 0 30% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 80px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  background: transparent !important;
}

.ms-header .container {
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.ms-navbar {
  flex: 0 0 70% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  min-height: 80px !important;
  margin: 0 !important;
  background: transparent !important;
  position: relative !important;
}

/* 隐藏nav中的logo,只保留header中的 */
.ms-navbar .navbar-brand {
  display: none !important;
}

.ms-navbar .navbar-header {
  display: none !important;
}

/* Header logo */
.ms-header .ms-title {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  position: relative !important;
}

.ms-header .ms-title img {
  height: 70px !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 100 !important;
  transform: none !important;
  transition: none !important;
}

/* 统一logo样式 */
.media-body img[src*="logo.png"],
img[alt*="Logo"] {
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: 10 !important;
  position: relative !important;
}

/* 页脚logo - 桌面尺寸(响应式65/55px仍由各页媒体查询控制) */
.footer-logo {
  height: 80px !important;
  border: none !important;
  border-radius: 0 !important;
  background: #E3F2FD !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: block !important;
  position: relative !important;
  z-index: 10 !important;
  transform: none !important;
  transition: none !important;
  max-width: 100% !important;
  width: auto !important;
  object-fit: contain !important;
}

/* 导航菜单 */
.ms-navbar .container {
  margin: 0 !important;
  padding: 0 10px !important;
  max-width: none !important;
  width: 100% !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}

.ms-navbar .navbar-nav {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 30px !important;
}

.ms-navbar .nav-item {
  margin: 0 !important;
}

.ms-navbar .nav-link {
  padding: 10px 15px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
}

/* 为固定页眉添加body上边距 */
body {
  padding-top: 80px !important;
}

/* ---------- 纯CSS悬停下拉菜单 ---------- */
.navbar-nav .dropdown {
  position: relative !important;
}

.navbar-nav .dropdown-menu {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  z-index: 1000 !important;
  min-width: 200px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 0 !important;
  transform: translateY(-10px) !important;
  transition: all 0.2s ease-out !important;
  pointer-events: none !important;
}

/* 鼠标悬停时展开菜单 */
.navbar-nav .dropdown:hover .dropdown-menu {
  display: block !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

.navbar-nav .dropdown-item {
  display: block !important;
  width: calc(100% - 8px) !important;
  padding: 12px 20px !important;
  margin: 2px 0 2px 4px !important;
  color: #37474F !important;
  text-decoration: none !important;
  background-color: rgba(255,255,255,0.95) !important;
  border: 0 !important;
  border-radius: 4px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  font-weight: 500 !important;
  position: relative !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
  backdrop-filter: blur(10px) !important;
}

.navbar-nav .dropdown-item:hover,
.navbar-nav .dropdown-item:focus {
  background: linear-gradient(135deg, #E3F2FD 0%, #BBDEFB 100%) !important;
  color: #1565C0 !important;
  transform: translateX(3px) translateY(-1px) !important;
  box-shadow: inset 3px 0 0 #1976D2, 0 4px 15px rgba(25, 118, 210, 0.25) !important;
  border-radius: 4px !important;
}

.navbar-nav .dropdown-toggle::after {
  border-top: 0.3em solid !important;
  border-right: 0.3em solid transparent !important;
  border-bottom: 0 !important;
  border-left: 0.3em solid transparent !important;
}

/* 兼容JS控制时的展开 */
.navbar-nav .dropdown.show .dropdown-menu,
.navbar-nav .dropdown.open .dropdown-menu {
  display: block !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}
