@charset "utf-8";
/* 基础设置 */
body {   
    margin: 0;
    font-family: "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif; /* 优化中文字体显示 */
    color: #333; /* 统一基础文字颜色 */
}

td {
    line-height: 1.6; /* 使用相对单位提高可读性 */
    font-size: 14px; /* 基础字体增大为14px */
}

/* 链接样式 */
a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease-in-out, transform 0.2s ease-in-out; /* 添加平滑过渡效果 */
}

a:hover {
    color: #0063b6; /* 使用原链接颜色，并增加强调 */
    text-decoration: underline;
    transform: translateX(3px); /* 鼠标悬停时轻微右移 */
}

/* 新闻列表容器样式 */
.news {
    line-height: 1.8;
    font-size: 14px; /* 新闻列表基础字体 */
    padding-left: 0; /* 移除可能存在的左边距 */
    list-style: none; /* 移除默认列表点 */
    max-height: 185px; /* 学院新闻/通知公告的高度 */
    overflow: hidden; /* 防止内容溢出 */
}

/* 具体新闻列表项样式 */
.news ul { /* 假设CMS会输出ul列表 */
    margin: 0;
    padding: 0;
    list-style: none;
}

.news li {
    display: flex; /* 使用Flexbox布局 */
    align-items: center; /* 垂直居中对齐 */
    justify-content: space-between; /* 标题和日期两端对齐 */
    padding: 8px 0; /* 增加条目上下间距 */
    border-bottom: 1px dotted #eee; /* 添加虚线分隔 */
    transition: background-color 0.3s ease-in-out; /* 背景色过渡 */
}

.news li:last-child {
    border-bottom: none; /* 最后一个条目不显示底部边框 */
}

.news li:hover {
    background-color: #f9f9f9; /* 鼠标悬停时背景变浅 */
    cursor: pointer; /* 鼠标指针变为手型 */
}

/* 新闻日期样式 */
.news-date {
    flex-shrink: 0; /* 日期不缩小 */
    color: #888; /* 日期使用灰色弱化 */
    font-size: 12px; /* 日期字体大小 */
    white-space: nowrap; /* 防止日期换行 */
    min-width: 80px; /* 确保日期有足够空间，防止挤压 */
    text-align: right; /* 日期右对齐 */
}


/* 导航链接 */
a.dh {
    font-size: 15px; /* 导航字体增大 */
    padding: 8px 12px; /* 增加点击区域 */
    display: inline-block;
}

a.dh:hover {
    background-color: #f0f0f0; /* 添加悬停背景效果 */
    text-decoration: none;
}

/* 栏目标题 */
.lm {
    color: #fff;
    font-size: 16px;
    font-weight: 600; /* 使用更精确的字重 */
    background-color: #336699; /* 添加背景色 */
    padding: 8px 12px; /* 增加内边距 */
    border-radius: 3px; /* 圆角设计 */
}

/* 主标题 */
.tt {
    line-height: 1.3;
    font-family: "SimHei", "黑体", sans-serif; /* 确保黑体显示 */
    color: #00509d; /* 调整颜色 */
    font-size: 24px;
    font-weight: bold;
}

/* ---- 优化版新闻交互样式 ---- */
.news-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.news-item {
  display: flex;
  align-items: center;
  /* gap: 6px; */
  padding: 12px;
  margin-bottom: 10px;
  border-radius: 6px;
  background-color: #ffffff;
  transition: all 0.3s ease;
  position: relative; /* 原样式 */
  z-index: 1; /* 提升层级避免遮挡 */
}

.news-item:hover {
  transform: translateY(-4px); /* 向上移动4px，增强悬浮感 */
  box-shadow: 
    2px 2px 8px rgba(26, 139, 194, 0.4),   /* 右下浅阴影（主投影） */
    4px 4px 16px rgba(26, 139, 194, 0.2),  /* 更远的右下阴影（增强深度） */
    6px 6px 24px rgba(26, 139, 194, 0.1),  /* 更远的右下阴影（增强深度） */
    -2px 2px 8px rgba(26, 139, 194, 0.05),  /* 左上轻微阴影（平衡立体感） */
    2px -2px 8px rgba(26, 139, 194, 0.05),  /* 右上轻微阴影（模拟环境光） */
    0 8px 16px rgba(26, 139, 194, 0.1);   /* 底部阴影（y轴正偏移） */
  transition: all 0.3s ease; /* 保留过渡动画 */
 position: relative; /* 确保阴影在父容器外渲染 */
}

/* 日期盒子样式 */
.news-date-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  background: linear-gradient(135deg, #0D4D6E, #1A8BC2, #3498db);
  color: white;
  border-radius: 10px;
  font-weight: bold;
  font-size: 12px;
  flex-shrink: 0;
  transform: translateY(-4px); /* 向上移动4px，增强悬浮感 */
  box-shadow: 
    2px 2px 8px rgba(26, 139, 194, 0.2),   /* 右下浅阴影（主投影） */
    4px 4px 16px rgba(26, 139, 194, 0.1),  /* 更远的右下阴影（增强深度） */
    -2px 2px 8px rgba(26, 139, 194, 0.05),  /* 左上轻微阴影（平衡立体感） */
    2px -2px 8px rgba(26, 139, 194, 0.05),  /* 右上轻微阴影（模拟环境光） */
    8px 0 16px rgba(26, 139, 194, 0.1);  /* 右侧阴影（x轴正偏移） */
  transition: all 0.5s ease; /* 添加过渡动画 */
}

.news-day {
  font-size: 14px;
  line-height: 1.1;
}

.news-month {
  font-size: 13px;
  text-transform: uppercase;
  margin-top: 2px;
}

/* 标题样式 */
.news-title {
  flex-grow: 1;
  font-size: 15px;
  color: #00509d;
  position: relative;
  padding-bottom: 2px;
  transition: color 0.3s ease;
 /*  margin-right: 6px; 只在标题右侧保留小间距 */
  text-align: left; /* 强制左对齐 */
  margin-left: -5px; /* 向左偏移，注意不要覆盖其他元素 */
}

/* 动态横线：初始宽度为 0 */
.news-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 0;
  background: linear-gradient(135deg, #1A8BC2, #3498db);
  transition: width 0.3s ease;
}

.news-item:hover .news-title {
  color: #3498db;
  font-weight: bold;
}

.news-item:hover .news-title::after {
  width: 100%;
}

/* 导航组件样式 - 与主题颜色协调 */
#dd-navigation, body #dd-navigation { 
  width: 1000px !important; 
  height: 43px !important; 
  margin: 0 auto !important; 
  background: linear-gradient(to right, #0D4D6E, #1A8BC2, #3498db) !important;
  background-image: none !important;
  clear: both !important;
  margin-bottom: 4px !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 5px rgba(13, 77, 110, 0.3) !important;
}

#nav-strip, body #nav-strip { 
  clear: both !important; 
  margin: 0 auto !important; 
  width: 980px !important; 
  height: 43px !important; 
  line-height: 22px !important; 
  position: relative !important; 
  z-index: 16777265 !important;
}

#nav-strip ul li.nav-item, 
#nav-strip ul li.nav-item.active, 
#nav-strip ul li.nav-item:hover,
body #nav-strip ul li.nav-item, 
body #nav-strip ul li.nav-item.active, 
body #nav-strip ul li.nav-item:hover { 
  border-left: 1px solid rgba(255, 255, 255, 0.2) !important;
}

#nav-strip ul li.nav-item,
body #nav-strip ul li.nav-item { 
  display: inline !important; 
  float: left !important; 
  position: relative !important; 
  width: 82px !important; 
  height: 43px !important; 
  text-align: center !important;
  transition: background-color 0.3s ease !important;
}

#nav-strip ul li.nav-item:hover, 
#nav-strip ul li.nav-item.hover,
body #nav-strip ul li.nav-item:hover, 
body #nav-strip ul li.nav-item.hover { 
  background-color: rgba(255, 255, 255, 0.1) !important;
}

#nav-strip ul li a,
body #nav-strip ul li a { 
  color: #FFFFFF !important; 
  font-weight: bold !important; 
  display: block !important; 
  padding: 10px 10px !important; 
  font-size: 14px !important; 
  outline: none !important;
  transition: all 0.3s ease !important;
  background-color: transparent !important;
}

#nav-strip a:hover,
body #nav-strip a:hover { 
  text-decoration: none !important;
}

#nav-strip ul li.nav-item:hover a, 
#nav-strip ul li.nav-item.hover a,
body #nav-strip ul li.nav-item:hover a, 
body #nav-strip ul li.nav-item.hover a { 
  color: #fff !important; 
  font-weight: bold !important; 
  background-color: rgba(52, 152, 219, 0.7) !important;
  transform: translateY(-2px) !important;
}

/* 子导航样式 */
#nav-strip ul li .subnav,
body #nav-strip ul li .subnav { 
  /* 移除display: none !important，允许JavaScript控制显示 */
  position: absolute !important; 
  top: 43px !important; 
  left: -1px !important; 
  border: 1px solid rgba(13, 77, 110, 0.3) !important; 
  border-top: 0 !important; 
  z-index: 16777263 !important; 
  min-width: 160px !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important; 
  border-bottom-left-radius: 4px !important; 
  border-bottom-right-radius: 4px !important; 
  background: linear-gradient(to bottom, #1A8BC2, #0D4D6E) !important;
  background-color: #1A8BC2 !important;
  overflow: hidden !important;
}

#nav-strip .subnav-inner,
body #nav-strip .subnav-inner { 
  float: left !important; 
  width: 160px !important;
}

#nav-strip ul li .subnav ul,
body #nav-strip ul li .subnav ul { 
  margin-bottom: 3px !important; 
  float: left !important; 
  width: 160px !important; 
  margin: 0 !important;
}

#nav-strip ul li .subnav ul li,
body #nav-strip ul li .subnav ul li { 
  display: block !important; 
  float: left !important; 
  height: auto !important; 
  margin: 0 !important; 
  width: 160px !important;
  transition: background-color 0.3s ease !important;
}

#nav-strip ul li .subnav ul li a,
body #nav-strip ul li .subnav ul li a,
#nav-strip ul li.nav-item:hover .subnav ul li a,
body #nav-strip ul li.nav-item:hover .subnav ul li a { 
  font-weight: normal !important;
  font-size: 13px !important; 
  color: #fff !important; 
  white-space: normal !important;
  padding: 8px 24px !important; 
  text-align: left !important; 
  height: 18px !important;
  transition: all 0.3s ease !important;
  background-color: transparent !important;
  transform: none !important;
  position: relative !important; /* 添加相对定位，用于放置下划线 */
}

/* 添加下划线动画效果 */
#nav-strip ul li .subnav ul li a::after,
body #nav-strip ul li .subnav ul li a::after {
  content: "" !important;
  position: absolute !important;
  bottom: 5px !important;
  left: 24px !important;
  height: 2px !important;
  width: 0 !important;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1)) !important;
  transition: width 0.4s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.5) !important;
  border-radius: 2px !important;
}

#nav-strip ul li .subnav ul li.active a, 
#nav-strip ul li .subnav ul li a:hover,
body #nav-strip ul li .subnav ul li.active a, 
body #nav-strip ul li .subnav ul li a:hover { 
  background: rgba(52, 152, 219, 0.8) !important; 
  color: #fff !important;
  transform: translateX(5px) !important;
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.3) !important;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* 鼠标悬停时显示下划线 */
#nav-strip ul li .subnav ul li a:hover::after,
body #nav-strip ul li .subnav ul li a:hover::after,
#nav-strip ul li .subnav ul li.active a::after,
body #nav-strip ul li .subnav ul li.active a::after {
  width: 70% !important; /* 控制下划线长度 */
  height: 3px !important; /* 增加下划线粗细 */
  animation: glow 1.5s infinite alternate !important;
}

/* 添加发光动画 */
@keyframes glow {
  from {
    box-shadow: 0 0 5px rgba(255, 255, 255, 0.5) !important;
  }
  to {
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 0 0 15px rgba(52, 152, 219, 0.5) !important;
  }
}

/* ---- 美化文章列表样式 listStyle1 ---- */
/* 覆盖原有的listStyle1样式，使其与网站蓝色主题保持一致 */
body .listStyle1 {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    overflow: hidden !important;
}

body .listStyle1 li {
    line-height: 1.6 !important;
    text-align: left !important;
    font-size: 14px !important;
    color: #333 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    padding: 15px 20px !important;
    margin: 0 !important;
    background: #fff !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

body .listStyle1 li:last-child {
    border-bottom: none !important;
}

body .listStyle1 li:hover {
    background: linear-gradient(135deg, rgba(13, 77, 110, 0.05), rgba(26, 139, 194, 0.05), rgba(52, 152, 219, 0.05)) !important;
    transform: translateX(5px) !important;
    box-shadow: 0 2px 12px rgba(26, 139, 194, 0.2) !important;
}

body .listStyle1 li a {
    float: none !important;
    padding-left: 0 !important;
    background: none !important;
    color: #333 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    flex-grow: 1 !important;
    margin-right: 15px !important;
    position: relative !important;
    transition: all 0.3s ease !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* 添加文章标题前的装饰性图标 */
body .listStyle1 li a:before {
    content: "📄" !important;
    margin-right: 8px !important;
    color: #1A8BC2 !important;
    font-size: 14px !important;
}

/* 推荐文章的特殊样式 */
body .listStyle1 li a font[style*="color:#e50d32"] {
    color: #e50d32 !important;
    font-weight: bold !important;
    position: relative !important;
}

body .listStyle1 li a font[style*="color:#e50d32"]:before {
    content: "🔥" !important;
    margin-right: 5px !important;
    color: #e50d32 !important;
}

body .listStyle1 li:hover a {
    color: #1A8BC2 !important;
    transform: translateX(3px) !important;
}

/* 日期样式美化 */
body .listStyle1 li a + * {
    color: #888 !important;
    font-size: 13px !important;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef) !important;
    padding: 4px 12px !important;
    border-radius: 15px !important;
    border: 1px solid #dee2e6 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

body .listStyle1 li:hover a + * {
    background: linear-gradient(135deg, #1A8BC2, #3498db) !important;
    color: white !important;
    border-color: #1A8BC2 !important;
    transform: scale(1.05) !important;
}

/* 分页样式美化 */
body .class_page {
    margin: 20px 0 !important;
}

body .pb_sys_common {
    background: #fff !important;
    padding: 20px !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    text-align: center !important;
}

body .pb_sys_common a {
    display: inline-block !important;
    padding: 8px 15px !important;
    margin: 0 3px !important;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef) !important;
    color: #1A8BC2 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    border: 1px solid #dee2e6 !important;
    transition: all 0.3s ease !important;
    font-weight: 500 !important;
}

body .pb_sys_common a:hover {
    background: linear-gradient(135deg, #1A8BC2, #3498db) !important;
    color: white !important;
    border-color: #1A8BC2 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(26, 139, 194, 0.3) !important;
}

body .pb_sys_common .p_t {
    color: #666 !important;
    margin: 0 8px !important;
    font-size: 14px !important;
}

body .pb_sys_common input {
    padding: 6px 10px !important;
    border: 1px solid #dee2e6 !important;
    border-radius: 4px !important;
    margin: 0 5px !important;
    text-align: center !important;
    width: 50px !important;
    transition: all 0.3s ease !important;
}

body .pb_sys_common input:focus {
    border-color: #1A8BC2 !important;
    box-shadow: 0 0 0 2px rgba(26, 139, 194, 0.2) !important;
    outline: none !important;
}

/* ---- 单篇正文页面样式 ---- */
/* 文章标题样式 */
body .c_title_text {
    font-size: 32px !important;
    font-weight: bold !important;
    margin-bottom: 15px !important;
    color: #0D4D6E !important;
    line-height: 1.3 !important;
    text-align: center !important;
    padding: 20px 0 !important;
    border-bottom: 2px solid #1A8BC2 !important;
    position: relative !important;
}

/* 正文容器样式 */
body .c_content_text {
    background: #fff !important;
    padding: 30px !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    margin-top: 20px !important;
}

/* 正文内容样式 */
body .c_content_overflow {
    line-height: 1.8 !important;
    font-size: 16px !important;
    color: #333 !important;
}

/* 正文段落样式 - 每行开始缩进2字符 */
body .c_content_overflow p {
    text-indent: 2em !important;
    margin-bottom: 16px !important;
    line-height: 1.8 !important;
    font-size: 16px !important;
    color: #333 !important;
    text-align: justify !important;
}

/* 正文中的图片样式 */
body .c_content_overflow img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 6px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    margin: 15px 0 !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 正文中的链接样式 */
body .c_content_overflow a {
    color: #1A8BC2 !important;
    text-decoration: none !important;
    border-bottom: 1px dotted #1A8BC2 !important;
    transition: all 0.3s ease !important;
}

body .c_content_overflow a:hover {
    color: #3498db !important;
    border-bottom: 1px solid #3498db !important;
    background: rgba(52, 152, 219, 0.1) !important;
    padding: 2px 4px !important;
    border-radius: 3px !important;
}

/* 正文中的表格样式 */
body .c_content_overflow table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 20px 0 !important;
    background: #fff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

body .c_content_overflow table th,
body .c_content_overflow table td {
    padding: 12px 15px !important;
    text-align: left !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

body .c_content_overflow table th {
    background: linear-gradient(135deg, #1A8BC2, #3498db) !important;
    color: white !important;
    font-weight: bold !important;
}

body .c_content_overflow table tr:hover {
    background: rgba(26, 139, 194, 0.05) !important;
}

/* 附件样式 */
body .c_content_overflow .attach {
    background: linear-gradient(135deg, #f8f9fa, #e9ecef) !important;
    border: 1px solid #dee2e6 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    margin-top: 20px !important;
}

body .c_content_overflow .attach a {
    color: #1A8BC2 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: inline-block !important;
    padding: 8px 15px !important;
    background: white !important;
    border-radius: 6px !important;
    border: 1px solid #1A8BC2 !important;
    transition: all 0.3s ease !important;
    margin: 5px !important;
}

body .c_content_overflow .attach a:hover {
    background: #1A8BC2 !important;
    color: white !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(26, 139, 194, 0.3) !important;
}