@charset "utf-8";

/* ================================
   CSS 重置与基础样式
   ================================ */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: middle;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    font-size: 15px;
    font-family: "Arial", "Microsoft YaHei", "宋体", Tahoma, Geneva, sans-serif;
    color: #333;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    min-height: 100vh;
}

body.main {
    background: linear-gradient(to bottom,
            #ffffff 0%,
            #f8f9fa 30%,
            #e9ecef 60%,
            #f0f3f7 100%);
    background-attachment: fixed;
}

p {
    line-height: 1.75;
}

a {
    color: #3b3b3b;
    text-decoration: none;
    transition: all 0.4s ease-in-out;
}

a:hover {
    color: #0b56bf;
}

/* ================================
   布局容器
   ================================ */
.wrapper {
    width: 100%;
    margin: 0 auto;
}

.wrapper .inner {
    width: 1300px;
    margin: 0 auto;
}

/* ================================
   头部样式
   ================================ */
#header {
    background: #fff;
}

#header .inner {
    height: 126px;
    position: relative;
}

.header .sitelogo {
    float: left;
    padding-top: 35px;
    padding-left: 0px;
}

.header .sitetitle {
    display: inline-block;
    margin-top: 6px;
    margin-left: 20px;
    font-size: 40px;
    font-weight: bold;
    color: #093d84;
}

.header .head-left {
    float: left;
    display: inline-block;
}

.header .head-main {
    float: left;
    margin-top: 10px;
}

.header .head-right {
    float: right;
    margin-top: 15px;
    width: 230px;
}

/* 语言样式 */
.site-lang {}

.site-lang ul {
    float: right;
}

.site-lang ul li.links {
    float: left;
}

.site-lang ul li.links a {
    line-height: 35px;
    margin: 0px 5px;
    font-size: 15px;
    color: #838383;
}

.site-lang ul li.links a:hover {}

/* 默认主导航样式 */
#nav {
    position: absolute;
    top: 0;
    margin: 0 auto;
    z-index: 999;
}

div#nav .inner {
    background: #093d84;
}

/* 导航样式：后台绑定时也可以定义配置 */
.wp-menu {
    max-width: 1081px;
    margin: 0 auto;
}

.wp-menu .menu-item {
    display: inline-block;
    float: left;
    position: relative;
}

.wp-menu .menu-item.i5 a.menu-link {
    background: none;
}

.wp-menu .menu-item a>.menu-switch-arrow {
    display: none;
    width: 0px;
    height: 20px;
    vertical-align: middle;
}

.wp-menu .menu-item a.menu-link {
    display: inline-block;
    padding: 0 72px;
    line-height: 60px;
    color: #FFFFFF;
    font-size: 20px;
    background: url(images/sx.jpg) no-repeat right;
}

.wp-menu .menu-item.hover a.menu-link,
.wp-menu .menu-item a.hover {
    background-color: #3d70ae;
    text-decoration: none;
    color: #eee;
}

.sub-menu {
    display: none;
    position: absolute;
    left: 0;
    top: 60px;
    min-width: 100%;
    z-index: 100;
    background: #fff;
}

.sub-menu .sub-item {
    position: relative;
    white-space: nowrap;
    vertical-align: top;
    _zoom: 1;
}

.sub-menu .sub-item a {
    display: block;
    color: #000;
    height: 50px;
    line-height: 50px;
    padding: 0 17px;
    font-size: 16px;
    background: none;
    text-align: center;
}

.sub-menu .sub-item.hover>a,
.sub-menu .sub-item a:hover {
    color: #fff;
    background-color: #3d70ae;
    display: block;
}

.sub-menu .sub-menu {
    left: 100%;
    top: 0px;
    z-index: 200;
    background: #fff;
}

/**主页banner开始**/
#banner {
    background: #e7e2df;
}

#banner .inner {
    width: auto;
    text-align: center;
    position: relative;
}

/**主体模块样式**/
#m-container {}

#m-container .inner {}

/**首页三列布局**/
.mod {}

.mbox {}

.main1 {}

.main1 .inner {
    padding: 50px 0px 70px;
}

.main2 {
    padding-top: 66px;
    padding-bottom: 105px;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    position: relative;
    overflow: hidden;
}

.main2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('images/main-t_02.png') center/cover;
    opacity: 0.1;
    z-index: 0;
}

.main2 .inner {
    position: relative;
    z-index: 1;
}

.main4 {
    background: linear-gradient(135deg, #f0f3f7 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}

.main4::before {
    content: "";
    position: absolute;
    top: -50px;
    left: 0;
    right: 0;
    height: 100px;
    background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3));
    z-index: 0;
}

.main4 .inner {
    padding: 60px 0 90px 0;
    position: relative;
    z-index: 1;
}

/**标题栏新闻窗口**/
.post {
    margin-bottom: 10px;
}

.post .tt {
    display: inline-block;
    width: 100%;
    border-bottom: 0px solid #e6e6e6;
}

/**标题栏**/
.post .tt .tit {
    display: inline-block;
    float: left;
    font-size: 28px;
    font-weight: bold;
}

/**标题字体**/
.post .tt .tit .title {
    display: block;
    line-height: 42px;
    color: #424242;
    font-family: "Microsoft yahei";
}

.post .tt .tit .name {
    display: none;
    line-height: 16px;
    color: #333;
}

/*栏目别名的样式*/
.post .con {
    padding: 6px 0;
    margin: 0 auto;
}

.post .con .wp_article_list .list_item {
    border-bottom: 1px dashed #ccc;
}

/**新闻列表**/
.post .more_btn {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    height: 20px;
    margin-top: 10px;
    line-height: 20px;
    float: right;
}

.post .more_btn .more_text,
.post .more_btn a {
    font-size: 16px;
    cursor: pointer;
}

.post .more_btn a {
    color: #333;
}

/*标准标题*/
.post1 {}

.post1 .tt .tit {}

.post1 .tt .tit .title {
    display: inline-block;
    margin-right: 20px;
    font-size: 16px;
    font-weight: bold;
    color: #18267d;
    cursor: pointer;
}

.post1 .more_btn a {
    color: #333;
}

/*居中标题*/
.post3 {}

.post3 .tt {
    width: 100%;
    text-align: center;
}

.post3 .tt .tit {
    float: none;
}

.post3 .tt .tit .title {
    font-weight: bold;
    color: #424242;
    margin-left: 0px;
}

.post3 .more_btn {
    display: none;
}

.jvhuang {
    width: 47px;
    height: 4px;
    background-color: #edaf6a;
    margin: 0 auto;
    margin-top: 8px;
}

/**自定义新闻列表**/
.news_list {}

.news_list li.news {
    line-height: 34px;
    padding-left: 0px;
}

/**标题图标**/
.news_list li.news span.news_title {
    float: left;
}

/*标题*/
.news_list li.news span.news_title img {
    vertical-align: middle;
}

.news_list li.news span.news_meta {
    float: right;
    margin-left: 2px;
    color: #9C9C9C;
}

/*属性*/
.news_list li.news .news_time,
.news_list li.news .news_time span {
    color: #666;
}

/*发布时间*/
.news_list li.news .news_icon {
    display: inline-block;
    margin: 0 auto;
    border: 0px solid red;
}

.news_list li.news .news_text {
    line-height: 22px;
    color: #666;
}

/*默认简介*/
.news_list li.news .news_bg {
    position: absolute;
    left: 0px;
    bottom: 0px;
    right: 0px;
    height: 30px;
    background: #000;
    opacity: .7;
    filter: Alpha(opacity=70);
}

.news_list li.news p {
    line-height: 34px;
}

/* 图列表 */
.news_tu {}

.news_tu .con {
    padding: 12px 0px;
}

.news_tu .news_list {
    margin: 0px -10px;
    display: flex;
    flex-wrap: wrap;
}

.news_tu .news_list li.news {
    float: left;
    width: 25%;
    margin-bottom: 20px;
}

.news_tu .news_list li.news .news_box {
    margin: 0px 10px;
    transition: all 0.4s ease-in-out;
}

.news_tu .news_list li.news .news_box:hover {
    opacity: .85;
    filter: Alpha(opacity=85);
}

.news_tu .news_list li.news .news_imgs {
    height: 180px;
    background-color: #F1F1F1;
    overflow: hidden;
    vertical-align: middle;
    display: table-cell;
}

.news_tu .news_list li.news .news_imgs img {
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: cover;
}

.news_tu .news_list li.news .news_wz {}

.news_tu .news_list li.news .news_wz .news_con {}

.news_tu .news_list li.news .news_title {
    line-height: 45px;
    height: 45px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
}

.news_tu .news_list li.news .news_title a {}

.qb {
    position: relative;
}

/* ================================
   轮播图样式
   ================================ */
.simple-banner-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.simple-banner-slides {
    position: relative;
    width: 100%;
    height: 100%;
}

.simple-banner-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
}

.simple-banner-slide.active {
    opacity: 1;
    z-index: 1;
}

.simple-banner-slide a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}

.simple-banner-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.simple-banner-title {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    padding: 15px 20px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    z-index: 2;
}

.simple-banner-nav {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    display: flex;
    gap: 8px;
}

.simple-banner-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #fff;
    background: rgba(255, 255, 255, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 0;
    text-indent: -9999px;
}

.simple-banner-dot.active {
    background: #fff;
}

.simple-banner-dot:hover {
    background: rgba(255, 255, 255, 0.8);
}

.simple-banner-prev,
.simple-banner-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.simple-banner-prev {
    left: 20px;
}

.simple-banner-next {
    right: 20px;
}

.simple-banner-prev:hover,
.simple-banner-next:hover {
    background: rgba(0, 0, 0, 0.8);
}

/* 响应式轮播图 */
@media (max-width: 768px) {

    .simple-banner-prev,
    .simple-banner-next {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .simple-banner-prev {
        left: 10px;
    }

    .simple-banner-next {
        right: 10px;
    }

    .simple-banner-title {
        font-size: 14px;
        padding: 10px 15px;
    }

    .simple-banner-dot {
        width: 10px;
        height: 10px;
    }
}

.post.post3.post-10.mbox img {
    width: 100%;
    height: auto;
}

.post.post3.post-10.mbox .news_con {
    padding: 7% 6%;
    box-shadow: 0px 0px 8px 0px rgb(11 3 6 / 20%);
}

.post.post3.post-10.mbox .news_title {
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
}

.post.post3.post-10.mbox .news_list li.news .news_text {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    height: 44px;
    font-size: 14px;
    line-height: 22px;
    color: #333;
    opacity: 0.8;
    margin: 2% 0;
}

.post.post3.post-10.mbox .news_time {
    font-size: 14px;
    color: #333;
    line-height: 26px;
}

.post-body {
    position: relative;
    margin-top: 45px;
}

.post.post3.post-10.mbox li {
    position: relative;
    float: left;
    width: 33.333%;
    min-height: 408px;
    padding: 0 15px;
    margin-bottom: 30px;
}

.post.post3.post-10.mbox li:hover {
    background-color: #3d70ae;
    color: #fff;
    /* 添加悬停动画效果 */
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.post.post3.post-10.mbox li:hover a {
    color: #fff;
}

.post.post3.post-10.mbox li:hover .news_time {
    color: #fff;
}

.post.post3.post-10.mbox li:hover .news_text {
    color: rgba(255, 255, 255, 0.9);
}

.post.post3.post-10.mbox li:hover .news_imgs img {
    /* 悬停时图片稍微放大 */
    transform: scale(1.05);
}

.post.post3.post-10.mbox .news_imgs {
    /* 使用固定高度避免计算问题 */
    height: 200px;
    width: 100%;
    position: relative;
    overflow: hidden;
    background-color: #f8f9fa;
    /* 确保容器可见 */
    visibility: visible;
    opacity: 1;
    /* 使用flex布局居中图片 */
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
}

.post.post3.post-10.mbox .news_imgs img {
    /* 使用正常文档流避免定位问题 */
    position: static;
    /* 确保图片显示为块级元素 */
    display: block;
    /* 图片填满容器 */
    max-width: 100%;
    height: 100%;
    /* 保持比例并填充容器 */
    object-fit: cover;
    /* 确保图片可见 */
    visibility: visible !important;
    opacity: 1 !important;
    /* 简化过渡效果 */
    transition: transform 0.3s ease;
}

.post.post3.post-11 .news {
    float: left;
    width: 420px;
    margin: 0 11px;
    position: relative;
    background: linear-gradient(135deg, #3d7fae 0%, #2a5f8e 100%);
    margin-bottom: 18px;
    min-height: 222px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.post.post3.post-11 .news:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.post.post3.post-11 .con {
    margin-top: 50px;
}

.post.post3.post-11 ul {
    margin: 0 -13px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.post.post3.post-11 .imgs {
    width: 100%;
    height: 287px;
    background-size: cover;
    background-position: center;
    transition: transform 0.3s ease;
}

.post.post3.post-11 .news:hover .imgs {
    transform: scale(1.05);
}

.post.post3.post-11 .bt.fkong {
    position: absolute;
    font-size: 18px;
    line-height: 26px;
    font-weight: bold;
    bottom: 25px;
    margin: 0px 30px;
}

.post.post3.post-11 .bt.fkong a {
    color: #fff;
}

.post.post3.post-11 span.time {
    font-size: 14px;
    color: #fff;
    margin-left: 10px;
    font-weight: normal;
}

.post.post3.post-11 .bt.kong {
    font-size: 18px;
    line-height: 26px;
    font-weight: bold;
    bottom: 25px;
    margin: 0px 30px;
    padding: 40px 0px 30px;
    margin-bottom: 25px;
    border-bottom: 1px solid #6499be;
    color: #fff;
}

.post.post3.post-11 .bt.kong a {
    color: #fff;
}

.post.post3.post-11 .news.n4.clearfix {
    margin-top: -65px;
}

.post.post3.post-11 .time2 {
    font-size: 14px;
    line-height: 26px;
    color: #fff;
    margin-left: 30px;
}

.post.post3.post-11 .news.n5.clearfix {
    background: linear-gradient(135deg, #bf9d60 0%, #a0854f 100%);
}

.post.post3.post-11 .news.n5.clearfix .bt.kong {
    border-bottom: 1px solid #ccb180;
}

.post.post3.post-11 .news:hover {}

.post.post3.post-11 .bt.kong:hover {
    padding-left: 10px;
    transition: all 0.4s ease-in-out;
}

.post.post3.post-11 .bt.fkong:hover {
    padding-left: 10px;
    transition: all 0.4s ease-in-out;
}

.post.post3.post-12.mbox .con {
    display: none;
}

.post.post3.post-12.mbox {
    margin-bottom: 40px;
}

.main3 .inner {
    padding: 80px 0 50px 0;
}

.main3 .ml {
    float: left;
    width: 640px;
}

.main3 .mr {
    float: right;
    width: 642px;
}

.post.post3.post-14.mbox li {
    float: left;
    width: 50%;
    margin-bottom: 15px;
    padding: 0 10px;
}

.post.post3.post-14.mbox img {
    height: auto;
    width: 100%;
    position: relative;
    left: auto;
    top: auto;
    object-fit: cover;
}

.post.post3.post-14.mbox .news_imgs {
    padding-top: 62.8%;
    position: relative;
    overflow: hidden;
}

.post.post3.post-14.mbox .news_box.clearfix {
    margin: 0 10px;
}

.post.post3.post-14.mbox ul {
    margin: 0 -10px;
}

.post.post3.post-15.mbox .tt {
    float: left;
    width: 200px;
    margin-top: 70px;
}

.post.post3.post-15.mbox .tt .tit .title {
    margin-left: 0;
}

.post.post3.post-15.mbox .con {
    float: left;
    width: 1100px;
}

.post.post3.post-15.mbox ul {}

.post.post3.post-15.mbox li {
    /* line-height: 60px; */
    border-bottom: 1px solid #d3d6da;
    padding-left: 10px;
}

.post.post3.post-15.mbox span.news_title {
    font-size: 17px;
}

.post.post3.post-15.mbox span.news_meta {
    font-size: 17px;
    color: #093d84;
}

.post li:hover img {
    transform: scale(1.1);
    transition: all 0.4s ease-in-out;
}

body.list div#nav {
    position: inherit;
}

/* ================================
   组件功能
   ================================ */
/*系统默认搜索*/
.wp_search {
    display: inline-block;
    position: relative;
    padding-left: 4px;
    border: 1px solid #d0d0d0;
}

.wp_search #keyword {
    width: 160px !important;
    padding: 4px 0;
    border: none;
    height: 20px;
    line-height: 20px;
    background: transparent;
    color: #fff;
}

.wp_search .search {
    width: 32px;
    height: 30px;
    border: 0px;
    background: #FFFFFF url(images/sous.png) no-repeat center;
    cursor: pointer;
    vertical-align: top;
}

/*自定义输入框*/
.searchbox {
    text-align: right;
    margin-top: 10px;
}

.wp-search {
    position: relative;
    border-radius: 18px;
    border: solid 1px #c2c2c2;
}

.wp-search form {
    display: block;
}

.wp-search .search-input {
    margin-left: 4px;
    margin-right: 40px;
}

.wp-search .search-input input.search-title {
    width: 100%;
    height: 22px;
    padding: 6px 0;
    line-height: 22px;
    background: none;
    color: #333;
    font-size: 14px;
    border: 0;
    outline: 0;
    font-family: auto;
    text-indent: 15px;
}

.wp-search .search-btn {
    width: 36px;
    height: 34px;
    position: absolute;
    right: 0;
    top: 0%;
}

.wp-search .search-btn input.search-submit {
    width: 36px;
    height: 33px;
    border: 0;
    outline: 0;
    background: url(images/sous.png) no-repeat center;
    cursor: pointer;
}

/* 分享二维码 */
.shares {
    text-align: center;
}

.shares ul {
    width: auto;
    margin: 0 auto;
    text-align: right;
    float: right;
}

.shares li {
    float: left;
    margin: 0 14px;
    position: relative;
}

.shares li a {
    display: inline-block;
    width: 36px;
    height: 35px;
    border: 0px solid red;
    background: url('images/share_icon.png') no-repeat;
    opacity: .6;
    filter: Alpha(opacity=60);
    vertical-align: top;
}

.shares li a:hover {
    opacity: 1;
    filter: Alpha(opacity=100);
}

.shares li.i1 a {
    background-position: 0px 0px;
}

.shares li.i2 a {
    background-position: -67px 0px;
}

.shares li.i3 a {
    background-position: -134px 0px;
}

.shares li.i4 a {
    background-position: -201px 0px;
}

.shares li span {
    display: block;
    line-height: 22px;
    font-size: 12px;
    color: #D0D4EA;
    text-align: center;
}

.shares li .con {
    display: none;
    position: absolute;
}

/* ================================
   教师列表样式 - 简化版
   ================================ */
.teacher-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.teacher-list li {
    list-style: none;
}

.teacher-item {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    text-align: center;
}

.teacher-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.teacher-pic {
    width: 100%;
    height: 240px;
    overflow: hidden;
    position: relative;
}

.teacher-pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.teacher-item:hover .teacher-pic img {
    transform: scale(1.05);
}

body.list .webplus-teacher-card {
    background: #fff;
    border-radius: 8px;
    overflow: visible;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #e5e5e5;
    /* 根据内容动态调整高度 */
    height: auto;
    min-height: 300px;
    cursor: pointer;
    /* 确保第二行内容完整显示 */
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

body.list .webplus-teacher-card:hover {
    /* 移除hover效果 */
    /* transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-color: #3d70ae; */
}

.teacher-info {
    padding: 15px;
}

.teacher-info p {
    margin: 0;
}

.teacher-info a {
    text-decoration: none;
    color: #333;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    transition: color 0.3s ease;
}

.teacher-info a:hover {
    color: #093d84;
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .teacher-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
    }

    .teacher-pic {
        height: 220px;
    }
}

@media (max-width: 900px) {
    .teacher-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .teacher-pic {
        height: 200px;
    }

    .teacher-info {
        padding: 12px;
    }

    .teacher-info a {
        font-size: 14px;
    }
}

@media (max-width: 600px) {
    .teacher-list {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
    }

    .teacher-pic {
        height: 180px;
    }

    .teacher-info {
        padding: 10px;
    }

    .teacher-info a {
        font-size: 13px;
    }

    /* 师资队伍列表页响应式 */
    body.list .webplus-teachers-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    body.list .webplus-teacher-photo {
        height: 240px;
    }

    body.list .webplus-teacher-info {
        padding: 12px;
    }

    body.list .webplus-teacher-name {
        font-size: 15px;
        margin-bottom: 6px;
    }

    body.list .webplus-teacher-title {
        font-size: 13px;
        margin-bottom: 5px;
    }

    body.list .webplus-teacher-desc {
        font-size: 12px;
        -webkit-line-clamp: 3;
        max-height: 54px;
    }
}

bottom: 38px;
left: 50%;
z-index: 100;
margin-left: -55px;
width: 100px;
}

.shares li .con img {
    width: 90px;
    height: 90px;
    vertical-align: top;
    background: #fff;
}

/*列表页*/
/*banner*/
.mbanner .focus .focus-title-bar {
    bottom: 40px;
    left: 40px;
    margin-left: 0px;
}

.mbanner .focus .focus-title-bg {
    background-color: #000;
    opacity: 0.4;
    filter: alpha(opacity=60);
}

.mbanner .focus .focus-pagination {
    position: absolute;
    right: 14px;
    bottom: 14px;
    margin-right: 0px;
    z-index: 60;
}

.mbanner .focus .focus-page {
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 6px;
    background: #fff;
}

.mbanner .focus .focus-page-active {
    width: 18px;
    background: #fff;
    opacity: 1;
    filter: Alpha(opacity=100);
}

.mbanner .focus .focus-navigation {
    width: 58px;
    height: 53px;
    opacity: 0.7;
    filter: alpha(opacity=70);
    background: url(images/slide_next.png) no-repeat;
    text-indent: -999em;
}

.mbanner .focus .focus-navigation:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}

.mbanner .focus .focus-navigation:active {
    opacity: 1;
    filter: alpha(opacity=100);
}

.mbanner .focus .focus-prev {
    left: 0px;
}

.mbanner .focus .focus-next {
    right: 0px;
    background-position: right top;
}

/* ================================
   页脚样式
   ================================ */
#footer {
    background: #1a3a52 url(images/foot-bg.png) no-repeat top center;
    background-size: cover;
}

#footer .inner {
    padding: 60px 0px 77px 0;
    position: relative;
}

#footer .inner .mod {}

#footer .inner .foot-left {
    float: left;
    margin-top: 5px;
    width: 390px;
}

#footer .inner .foot-right {
    float: right;
    margin-top: 12px;
}

.bottom {
    margin-top: 35px;
}

#footer .inner p {
    font-size: 14px;
    line-height: 27px;
    font-weight: normal;
    text-align: left;
    color: #fff;
    opacity: 0.9;
}

.foot-center {
    float: left;
    margin-top: 40px;
    width: 620px;
    text-align: center;
}

.foot-center span.sitetitle {
    display: inline-block;
    margin-top: 10px;
    margin-left: 20px;
    font-size: 40px;
    font-weight: bold;
    color: #fff;
}

#footer .inner .ft p.copyright {
    text-align: right;
}

.ft {
    margin-bottom: 65px;
}

#footer .inner p span {
    margin: 0 3px;
}

#footer .inner .copyright {}

#footer .inner .copyright span {}

#footer .inner .copyright a {
    color: #eee;
}

/* ================================
   响应式设计
   ================================ */
@media (max-width: 1400px) {
    .wrapper .inner {
        width: 1200px;
    }
}

@media (max-width: 1300px) {
    .wrapper .inner {
        width: 960px;
    }

    .post.post3.post-11 .news {
        width: 300px;
    }

    .main3 .ml,
    .main3 .mr {
        width: 50%;
    }
}

@media (max-width: 768px) {
    .wrapper .inner {
        width: 100%;
        padding: 0 15px;
    }

    #header .inner {
        height: auto;
        padding: 15px 0;
    }

    .header .sitelogo {
        float: none;
        text-align: center;
        padding-top: 0;
    }

    .header .head-right {
        float: none;
        width: 100%;
        margin-top: 15px;
        text-align: center;
    }

    div#nav .inner {
        background: #093d84;
    }

    .wp-menu .menu-item {
        display: block;
        float: none;
    }

    .wp-menu .menu-item a.menu-link {
        padding: 0 20px;
        line-height: 40px;
        font-size: 16px;
        background: none !important;
    }

    .sub-menu {
        position: static;
        background: #3d70ae;
    }

    .post.post3.post-10.mbox li {
        position: static;
        min-height: auto;
        margin-bottom: 20px;
    }

    .post.post3.post-11 .news {
        width: 100%;
        margin: 0 0 15px 0;
    }

    .main3 .ml,
    .main3 .mr {
        float: none;
        width: 100%;
    }

    .post.post3.post-14.mbox li {
        width: 100%;
    }

    .post.post3.post-15.mbox .tt {
        float: none;
        width: 100%;
        margin-top: 30px;
    }

    .post.post3.post-15.mbox .con {
        float: none;
        width: 100%;
    }

    #footer .inner .foot-left,
    #footer .inner .foot-center,
    #footer .inner .foot-right {
        float: none;
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }

    .shares ul {
        float: none;
        text-align: center;
    }
}

/* ================================
   学术研究模块完整修复方案
   ================================ */

/* 确保学术研究模块正常显示 */
.main1 .post.post3.post-10.mbox {
    /* 确保模块容器可见 */
    visibility: visible;
    opacity: 1;
    position: relative;
    z-index: 1;
}

.main1 .post.post3.post-10.mbox .tt {
    /* 确保标题区域显示 */
    visibility: visible;
    opacity: 1;
}

.main1 .post.post3.post-10.mbox .post-body {
    /* 确保内容区域显示 */
    visibility: visible;
    opacity: 1;
    position: relative;
    z-index: 1;
}

/* 修复图片布局问题 */

/* 修复学术研究新闻列表布局 - 图上文字下布局 */
.main1 .poster-list.news_list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
    /* 确保列表容器可见 */
    visibility: visible;
    opacity: 1;
    position: relative;
    z-index: 1;
}

.main1 .poster-list.news_list .poster-item.news {
    width: 33.333%;
    padding: 0 15px;
    margin-bottom: 30px;
    position: relative;
    /* 确保新闻项可见 */
    visibility: visible;
    opacity: 1;
    /* 添加悬停效果 */
    transition: all 0.3s ease;
    /* 垂直排列布局：图片在上，文字在下 */
    display: flex;
    flex-direction: column;
}

.main1 .poster-list.news_list .news_imgs {
    overflow: hidden;
    border-radius: 4px;
    /* 图片容器高度 - 适配新布局 */
    height: 180px;
    width: 100%;
    /* 使用flex布局居中图片 */
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8f9fa;
    /* 确保容器可见 */
    visibility: visible;
    opacity: 1;
    position: relative;
    /* 添加底部间距，与文字区域分离 */
    margin-bottom: 15px;
}

.main1 .poster-list.news_list .news_imgs img {
    /* 使用正常文档流避免定位问题 */
    position: static;
    /* 确保图片显示为块级元素 */
    display: block;
    /* 图片填满容器 */
    max-width: 100%;
    height: 100%;
    /* 保持比例并填充容器 */
    object-fit: cover;
    /* 确保图片可见 */
    visibility: visible !important;
    opacity: 1 !important;
    /* 添加过渡效果 */
    transition: transform 0.3s ease;
}

.main1 .poster-list.news_list .news_imgs:hover img {
    transform: scale(1.05);
}

.main1 .poster-list.news_list .poster-item.news:hover {
    /* 添加悬停动画效果 */
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* 响应式优化 */
@media (max-width: 1200px) {
    .main1 .poster-list.news_list .poster-item.news {
        width: 50%;
    }
}

@media (max-width: 768px) {
    .main1 .poster-list.news_list .poster-item.news {
        width: 100%;
    }
    
    .main1 .poster-list.news_list .news_imgs {
        height: 200px;
    }
}

.main1 .poster-list.news_list .news_wz {
    padding: 0;
    /* 文字区域占据剩余空间 */
    flex: 1;
    display: flex;
    flex-direction: column;
    /* 移除顶部边距，因为图片已经有bottom margin */
    margin-top: 0;
}

.main1 .poster-list.news_list .news_title {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 8px;
    /* 移除固定高度，允许动态调整 */
    height: auto;
    overflow: hidden;
    /* 限制最多2行 */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 44px;
}

.main1 .poster-list.news_list .news_title a {
    color: #333;
    font-weight: 500;
    text-decoration: none;
    /* 添加悬停效果 */
    transition: color 0.3s ease;
}

.main1 .poster-list.news_list .news_title a:hover {
    color: #3d70ae;
}

.main1 .poster-list.news_list .news_text {
    font-size: 14px;
    line-height: 1.5;
    color: #666;
    margin-bottom: 10px;
    /* 移除固定高度，允许动态调整 */
    height: auto;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 42px;
    flex: 1;
}

.main1 .poster-list.news_list .news_time {
    font-size: 13px;
    color: #999;
    /* 确保时间显示在底部 */
    margin-top: auto;
    padding-top: 5px;
}

/* 修复校园新闻布局 */
.post.post3.post-11 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 -13px;
}

.post.post3.post-11 .news {
    float: none;
    width: calc(33.333% - 22px);
    margin: 0 11px 18px;
}

/* 修复美丽校园图片布局 */
.post.post3.post-14.mbox ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}

.post.post3.post-14.mbox li {
    float: none;
    width: 50%;
    padding: 0 10px;
    margin-bottom: 15px;
}

.post.post3.post-14.mbox .news_box {
    margin: 0;
}

.post.post3.post-14.mbox .news_imgs {
    position: relative;
    overflow: hidden;
    padding-top: 62.8%;
}

.post.post3.post-14.mbox .news_imgs img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 修复轮播图样式 */
.focus {
    width: 100%;
    height: 500px;
    overflow: hidden;
    position: relative;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    min-height: 300px;
}

.focus-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.post.post3.post-10.mbox .news_imgs {
    /* 使用固定高度 */
    height: 200px;
    width: 100%;
    position: relative;
    overflow: hidden;
    background-color: #f8f9fa;
    /* 使用flex布局居中图片 */
    display: flex;
    align-items: center;
    justify-content: center;
    /* 确保容器可见 */
    visibility: visible;
    opacity: 1;
}

.post.post3.post-10.mbox .news_imgs img {
    /* 使用正常文档流 */
    position: static;
    /* 确保图片显示为块级元素 */
    display: block;
    /* 图片填满容器 */
    width: 100%;
    height: 100%;
    /* 保持比例并填充容器 */
    object-fit: cover;
    /* 确保图片可见 */
    visibility: visible;
    opacity: 1;
    /* 移除过渡效果避免干扰 */
    transition: none;
}

.post.post3.post-10.mbox .news_imgs a {
    /* 确保链接填满整个容器 */
    display: block;
    width: 100%;
    height: 100%;
    /* 移除链接默认样式 */
    text-decoration: none;
    border: none;
    /* 确保链接可见 */
    visibility: visible;
    opacity: 1;
}

.focus-slides {
    display: flex;
    height: 100%;
    transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
}

.focus-slide {
    min-width: 100%;
    height: 100%;
    position: relative;
    background: #f0f0f0;
    overflow: hidden;
}

.focus-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

.focus-slide:hover img {
    transform: scale(1.02);
}

.focus-title {
    position: absolute;
    bottom: 40px;
    left: 40px;
    color: white;
    font-size: 24px;
    font-weight: bold;
    max-width: 80%;
    line-height: 1.4;
    padding: 15px 20px;
    border-radius: 8px;
    z-index: 10;
}

.focus-nav {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 100;
    padding: 8px 12px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 20px;
    backdrop-filter: blur(10px);
}

.focus-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;
    outline: none;
    position: relative;
}

.focus-dot:hover,
.focus-dot.active {
    background: white;
    transform: scale(1.2);
    border-color: white;
}

.focus-dot:focus {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.5);
}

.focus-prev,
.focus-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    border: none;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    outline: none;
    backdrop-filter: blur(5px);
}

.focus-prev:hover,
.focus-next:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translateY(-50%) scale(1.1);
}

.focus-prev:focus,
.focus-next:focus {
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3);
}

.focus-prev {
    left: 20px;
}

.focus-next {
    right: 20px;
}

/* 图片加载失败样式 */
.img-fallback {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;
    padding: 20px;
}

.fallback-content {
    max-width: 80%;
}

.fallback-content h3 {
    font-size: 20px;
    margin-bottom: 10px;
    line-height: 1.4;
}

/* 简化轮播图样式 */
.simple-banner-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.simple-banner-slides {
    width: 100%;
    height: 100%;
    position: relative;
}

.simple-banner-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease, visibility 0.8s ease;
}

.simple-banner-slide.active {
    opacity: 1;
    visibility: visible;
}

.simple-banner-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.simple-banner-title {
    position: absolute;
    bottom: 40px;
    left: 40px;
    color: white;
    font-size: 24px;
    font-weight: bold;
    max-width: 80%;
    line-height: 1.4;
    padding: 15px 20px;
    border-radius: 8px;
}

.simple-banner-nav {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 100;
    padding: 8px 12px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 20px;
    backdrop-filter: blur(10px);
}

.simple-banner-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;
    color: transparent;
    font-size: 0;
    outline: none;
}

.simple-banner-dot:hover,
.simple-banner-dot.active {
    background: white;
    transform: scale(1.2);
    border-color: white;
}

.simple-banner-prev,
.simple-banner-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    border: none;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.3s ease;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    outline: none;
    backdrop-filter: blur(5px);
}

.simple-banner-prev:hover,
.simple-banner-next:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translateY(-50%) scale(1.1);
}

.simple-banner-prev {
    left: 20px;
}

.simple-banner-next {
    right: 20px;
}

/* 响应式轮播图 */
@media (max-width: 768px) {
    .focus {
        height: 300px;
    }

    .focus-title,
    .simple-banner-title {
        font-size: 18px;
        bottom: 20px;
        left: 20px;
        right: 20px;
        max-width: calc(100% - 40px);
        padding: 10px 15px;
    }

    .focus-prev,
    .focus-next,
    .simple-banner-prev,
    .simple-banner-next {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .focus-prev,
    .simple-banner-prev {
        left: 10px;
    }

    .focus-next,
    .simple-banner-next {
        right: 10px;
    }

    .focus-nav,
    .simple-banner-nav {
        bottom: 15px;
        gap: 8px;
        padding: 6px 10px;
    }

    .focus-dot,
    .simple-banner-dot {
        width: 10px;
        height: 10px;
    }
}

@media (max-width: 480px) {
    .focus {
        height: 250px;
    }

    .focus-title,
    .simple-banner-title {
        font-size: 16px;
        bottom: 15px;
        left: 15px;
        right: 15px;
        max-width: calc(100% - 30px);
        padding: 8px 12px;
    }

    .focus-prev,
    .focus-next,
    .simple-banner-prev,
    .simple-banner-next {
        width: 35px;
        height: 35px;
        font-size: 16px;
    }
}

/* 清除浮动问题 */
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

.mod {
    overflow: hidden;
}

.post {
    overflow: hidden;
}

.con {
    overflow: hidden;
}

/* ================================
   高级视觉效果和动画
   ================================ */

/* 页面加载动画 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }
}

/* 应用动画到各个模块 */
.main1 .post {
    animation: fadeInUp 0.8s ease-out;
}

.main2 .post {
    animation: fadeInUp 0.8s ease-out 0.2s both;
}

.main3 .post {
    animation: slideInLeft 0.8s ease-out 0.4s both;
}

.main4 .post {
    animation: fadeInUp 0.8s ease-out 0.6s both;
}

/* 仁爱校园卡片悬停效果增强 */
.post.post3.post-11 .news {
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.post.post3.post-11 .news::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, transparent 50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.post.post3.post-11 .news:hover::before {
    opacity: 1;
}

/* 新闻卡片3D效果 */
.poster-list.news_list .poster-item.news {
    transform-style: preserve-3d;
    transition: transform 0.3s ease;
}

.poster-list.news_list .poster-item.news:hover {
    transform: translateY(-5px) rotateX(2deg);
}

/* 美丽校园图片画廊效果 */
.post.post3.post-14.mbox .news_box {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.post.post3.post-14.mbox .news_box:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.post.post3.post-14.mbox .news_imgs::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, 0.3) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.post.post3.post-14.mbox .news_box:hover .news_imgs::after {
    opacity: 1;
}

/* 导航菜单增强效果 */
.wp-menu .menu-item {
    position: relative;
    overflow: hidden;
}

.wp-menu .menu-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.wp-menu .menu-item:hover::before {
    left: 100%;
}

/* 页脚增强效果 */
#footer {
    position: relative;
    overflow: hidden;
}

#footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #3d7fae, #bf9d60, #3d7fae);
    animation: pulse 3s ease-in-out infinite;
}

/* 搜索框增强效果 */
.wp-search {
    transition: all 0.3s ease;
}

.wp-search:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.wp-search:focus-within {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* 响应式动画优化 */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* 高对比度模式支持 */
@media (prefers-contrast: high) {
    .post.post3.post-11 .news {
        border: 2px solid #000;
    }
}

/* ================================
   WebPlus Pro 师资队伍页面样式 - 最终优化版本
   ================================ */
.webplus-teachers-container {
    padding: 0;
    background: transparent;
    margin: 0;
    width: 100%;
}

.webplus-teachers-grid {
    display: grid !important;
    /* 确保首行固定显示3个教师卡片 */
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    /* 确保网格容器能够显示所有项目 */
    grid-auto-flow: row;
    /* 强制显示网格容器 */
    visibility: visible !important;
    opacity: 1 !important;
    /* 确保网格行自动调整 */
    grid-auto-rows: auto;
    /* 大幅减少网格容器的上边距使整体内容上移 */
    padding-top: 0;
    margin-top: -0px;
    /* 确保网格容器能够适应动态内容 */
    align-items: stretch;
    /* 允许网格项根据内容自动调整高度 */
    justify-items: stretch;
    /* 确保网格能够完整显示所有内容 */
    width: 100%;
    /* 添加底部边距避免内容被截断 */
    padding-bottom: 20px;
}

.webplus-teacher-card {
    background: #ffffff;
    border-radius: 8px;
    overflow: visible;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e5e5;
    /* 根据内容动态调整高度 */
    height: auto;
    min-height: 300px;
    cursor: pointer;
    /* 确保卡片不会被隐藏 */
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    /* 修复可能的样式冲突 */
    position: relative !important;
    /* 优化卡片边距 */
    margin-top: 0;
    /* 确保卡片能够完整显示第二行内容 */
    display: flex;
    /* 添加底部间距避免内容贴边 */
    margin-bottom: 0;
    /* 确保卡片在网格中正确对齐 */
    align-items: stretch;
}

.webplus-teacher-photo {
    width: 100%;
    height: 200px;
    overflow: visible;
    position: relative;
    background: #f8f9fa;
    /* 确保图片区域不会被其他内容覆盖 */
    flex-shrink: 0;
    min-height: 200px;
    max-height: none;
    display: flex;
    align-items: center;
    justify-content: center;
    /* 进一步减少图片区域上边距使整体上移 */
    margin-top: -8px;
    /* 确保图片容器能完整显示内容 */
    padding: 5px;
    box-sizing: border-box;
}

.webplus-teacher-photo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 180px;
    object-fit: contain;
    display: block;
    /* 确保图片正确显示，保持原始比例 */
    object-position: center center;
    /* 处理图片加载失败的情况 */
    background: #f0f0f0;
    /* 移除过渡效果 */
    /* transition: transform 0.3s ease; */
    /* 确保图片完整显示不被裁剪 */
    margin: 0 auto;
}

.webplus-teacher-info {
    padding: 18px 15px;
    background: #ffffff;
    text-align: center;
    /* 确保信息区域不会覆盖图片 */
    position: relative;
    /* 优化信息区域边距 */
    margin-top: 0;
    /* 确保内容区域完整显示，特别是第二行 */
    min-height: 110px;
    max-height: none;
    /* 允许内容区域根据文本长度自动扩展 */
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    /* 确保信息区域内容完整显示 */
    overflow: visible;
    height: auto;
    /* 确保第二行文本不被截断 */
    word-wrap: break-word;
    word-break: break-word;
    /* 添加内边距确保文本有足够空间 */
    box-sizing: border-box;
}

.webplus-teacher-name {
    font-size: 16px;
    font-weight: bold;
    color: #333333;
    margin: 0 0 8px 0;
    line-height: 1.4;
    text-align: center;
    /* 确保标题完整显示，特别是第二行 */
    overflow: visible;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    /* 确保长标题能够换行显示 */
    max-width: 100%;
    /* 防止标题被截断 */
    hyphens: auto;
    min-height: 22px;
}

.webplus-teacher-title {
    font-size: 14px;
    color: #666666;
    margin-bottom: 10px;
    line-height: 1.4;
    text-align: center;
    /* 确保职称信息完整显示，特别是第二行 */
    overflow: visible;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    /* 确保长职称能够换行显示 */
    max-width: 100%;
    /* 防止职称被截断 */
    hyphens: auto;
    min-height: 20px;
}

.webplus-teacher-desc {
    font-size: 12px;
    color: #999999;
    line-height: 1.5;
    text-align: center;
    /* 移除文本行数限制，确保描述完整显示 */
    display: block;
    /* -webkit-line-clamp: 2; */
    /* -webkit-box-orient: vertical; */
    overflow: visible;
    /* text-overflow: ellipsis; */
    /* 移除高度限制 */
    max-height: none;
    margin-bottom: 0;
    /* 确保描述文本完整显示，特别是第二行 */
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    /* 确保长描述能够换行显示 */
    max-width: 100%;
    /* 防止描述被截断 */
    hyphens: auto;
    min-height: 18px;
}

/* 确保所有教师卡片都能正确显示 */
.webplus-teachers-grid .webplus-teacher-card {
    /* 移除高度限制，允许内容自适应显示 */
    min-height: 280px;
    max-height: none;
    /* 使用flex布局确保图片和信息区域正确分布 */
    flex-direction: column !important;
    /* 改为visible确保内容完整显示 */
    overflow: visible;
    /* 强制显示所有卡片 */
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    /* 确保卡片在网格中正确定位 */
    grid-column: auto !important;
    grid-row: auto !important;
    /* 确保卡片能完整显示内容 */
    height: auto;
    margin: 0 auto;
}

/* 修复可能的样式冲突 */
.webplus-teachers-grid .clearfix {
    overflow: visible;
    display: block;
}

/* 确保序号样式不影响显示 */
.webplus-teachers-grid .n1,
.webplus-teachers-grid .n2,
.webplus-teachers-grid .n3,
.webplus-teachers-grid .n4,
.webplus-teachers-grid .n5,
.webplus-teachers-grid .n6,
.webplus-teachers-grid .n7,
.webplus-teachers-grid .n8 {
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
}

/* WebPlus Pro 响应式设计 */
@media (max-width: 1200px) {
    .webplus-teachers-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        /* 在较大屏幕上也保持紧凑布局 */
        margin-top: -30px;
    }

    .webplus-teachers-grid .webplus-teacher-card {
        min-height: 280px;
        max-height: none;
        overflow: visible;
        /* 确保卡片能完整显示所有内容，特别是第二行 */
        height: auto;
        /* 优化信息区域在响应式下的显示 */
        align-items: stretch;
    }

    .webplus-teacher-info {
        overflow: visible;
        min-height: 110px;
        max-height: none;
        /* 确保第二行文本完整显示 */
        word-wrap: break-word;
        word-break: break-word;
    }

    .webplus-teacher-photo {
        overflow: visible;
    }

    .webplus-teacher-info {
        overflow: visible;
        min-height: 100px;
        max-height: none;
    }
}

@media (max-width: 900px) {
    .webplus-teachers-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        /* 在中等屏幕上保持紧凑布局 */
        margin-top: -25px;
    }

    .webplus-teacher-card {
        min-height: 270px;
        max-height: none;
        margin-top: -5px;
        overflow: visible;
        /* 确保中等屏幕下内容完整显示，特别是第二行 */
        height: auto;
        /* 优化卡片布局 */
        display: flex;
        align-items: stretch;
    }

    .webplus-teacher-photo {
        overflow: visible;
    }

    .webplus-teacher-info {
        overflow: visible;
        min-height: 100px;
        max-height: none;
        /* 确保中等屏幕下第二行文本完整显示 */
        word-wrap: break-word;
        word-break: break-word;
        /* 增加内边距给第二行内容更多空间 */
        padding: 15px 12px;
    }

    .webplus-teacher-photo {
        height: 170px;
        min-height: 170px;
        margin-top: -8px;
        overflow: visible;
    }

    /* 师资队伍列表页响应式 */
    body.list .webplus-teachers-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        margin-top: -25px;
    }

    body.list .webplus-teacher-card {
        min-height: 270px;
        max-height: none;
        margin-top: -5px;
        overflow: visible;
        /* 确保中等屏幕下内容完整显示，特别是第二行 */
        height: auto;
        /* 优化卡片布局 */
        display: flex;
        align-items: stretch;
    }

    .webplus-teacher-photo {
        overflow: visible;
    }

    .webplus-teacher-info {
        overflow: visible;
        min-height: 100px;
        max-height: none;
        /* 确保中等屏幕下第二行文本完整显示 */
        word-wrap: break-word;
        word-break: break-word;
        /* 增加内边距给第二行内容更多空间 */
        padding: 15px 12px;
    }

    body.list .webplus-teacher-photo {
        height: 170px;
        min-height: 170px;
        margin-top: -8px;
        overflow: visible;
    }
}

@media (max-width: 600px) {
    .webplus-teachers-container {
        padding: 10px 5px;
    }

    .webplus-teachers-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        max-width: 100%;
        padding: 0 5px;
        /* 在小屏幕上也保持紧凑布局 */
        margin-top: -15px;
    }

    .webplus-teacher-photo {
        height: 160px;
        min-height: 160px;
        margin-top: -8px;
        overflow: visible;
    }

    .webplus-teacher-card {
        min-height: 250px;
        max-height: none;
        max-width: 380px;
        margin: 0 auto;
        margin-top: -3px;
        overflow: visible;
        /* 确保小屏幕下内容完整显示，特别是第二行 */
        height: auto;
        /* 优化卡片布局 */
        display: flex;
        align-items: stretch;
    }

    .webplus-teacher-info {
        padding: 12px;
        min-height: 95px;
        max-height: none;
        margin-top: -12px;
        overflow: visible;
        height: auto;
        /* 确保小屏幕下第二行文本完整显示 */
        word-wrap: break-word;
        word-break: break-word;
        /* 增加行高给第二行内容更多空间 */
        line-height: 1.5;
    }

    .webplus-teacher-name {
        font-size: 15px;
        margin-bottom: 6px;
    }

    .webplus-teacher-title {
        font-size: 13px;
        margin-bottom: 5px;
    }

    .webplus-teacher-desc {
        font-size: 12px;
        -webkit-line-clamp: 3;
        max-height: 54px;
    }
}

/* WebPlus Pro 平台兼容性 */
.webplus-teachers-grid .wp_column {
    margin-bottom: 0;
}

.webplus-teachers-grid .clearfix {
    overflow: visible;
}

/* 确保在不同浏览器中的一致性 */
.webplus-teacher-card {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 优化加载性能 */
.webplus-teacher-photo img {
    /* 确保所有图片都能正确显示 */
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: none;
    object-fit: contain;
}

/* .webplus-teacher-card {} */

/* 确保默认教师图片正确显示 */
.webplus-teacher-photo img[src="images/default-teacher.png"],
.webplus-teacher-photo[src*="default-teacher"] {
    object-fit: contain;
}

/* ================================
   WebPlus Pro 师资队伍页面样式 - 最终优化版本
   ================================ */

/* 清除并重新定义 col_news_con 模块的所有样式 */
.col_news_con {
    height: auto;
    width: 100%;
    padding: 20px 0;
    overflow: visible;
}

/* 教师卡片容器 */
.webplus-teachers-container {
    width: 100%;
    padding: 0 15px;
    margin: 0 auto;
}

/* 教师卡片网格布局 - 默认显示两行，每行3个卡片 */
.webplus-teachers-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* 修改点1: 减小卡片间距从12px到25px */
    gap: 25px;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    align-items: stretch;
    justify-items: stretch;
    /* 修改点2: 上移整个教师卡片网格区域 */
    /* 原值: margin-top: -30px; */
    margin-top: -0px;
    /* 原值: padding-top: 0; */
    padding-top: 10px;
    /* 添加底部边距避免内容被截断 */
    padding-bottom: 30px;
}

/* 教师卡片样式 - 统一定义 */
.webplus-teacher-card {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border: 1px solid #eeeeee;
    height: auto;
    display: flex;
    flex-direction: column;
    /* 上移卡片 */
    transform: translateY(-10px);
    /* 移除可能导致遮挡的样式 */
    position: relative;
    visibility: visible;
    opacity: 1;
    /* 确保卡片能够完整显示内容 */
    min-height: 280px;
    max-height: none;
    /* 关键修改：确保所有卡片宽度一致 */
    width: 100%;
    /* 使用flex-grow填充可用空间 */
    flex: 1;
}

/* 修改 .webplus-teacher-card 样式 */
.webplus-teacher-card {
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: none;
    /* 移除阴影效果 */
    border: 1px solid transparent;
    /* 将边框颜色设置为透明 */
    height: auto;
    display: flex;
    flex-direction: column;
    position: relative;
    visibility: visible;
    opacity: 1;
    min-height: 280px;
    max-height: none;
    width: 100%;
    flex: 1;
}

/* 修改 .webplus-teacher-photo 样式 */
.webplus-teacher-photo {
    width: 100%;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    padding: 15px;
    flex-shrink: 0;
    margin-top: 0;
}

/* 教师照片 */
.webplus-teacher-photo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

/* 修改 .webplus-teacher-info 样式 */
.webplus-teacher-info {
    padding: 20px 15px;
    text-align: center;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
    overflow: visible;
    height: auto;
    box-sizing: border-box;
    z-index: 1;
}

/* 特定页面下的教师卡片样式 */
body.list .webplus-teacher-card {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;


    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border: 1px solid #eeeeee;
    height: auto;
    display: flex;
    flex-direction: column;
    /* 上移卡片 */
    transform: translateY(-10px);
    position: relative;
    visibility: visible;
    opacity: 1;
    min-height: 280px;
    max-height: none;
}

/* 网格中的教师卡片样式 */
.webplus-teachers-grid .webplus-teacher-card {
    /* 移除高度限制，允许内容自适应显示 */
    min-height: 280px;
    max-height: none;
    /* 使用flex布局确保图片和信息区域正确分布 */
    flex-direction: column;
    /* 改为visible确保内容完整显示 */
    overflow: visible;
    /* 强制显示所有卡片 */
    visibility: visible;
    opacity: 1;
    position: relative;
    /* 确保卡片能完整显示内容 */
    height: auto;
}

.webplus-teacher-photo {
    width: 100%;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    padding: 15px;
    flex-shrink: 0;
    /* 修改点2: 移除可能导致内容遮挡的负边距 */
    /* 人工修改方法: 确保这一行是 margin-top: 0; 而不是 margin-top: -8px; */
    margin-top: 0;
}

/* 教师照片 */
.webplus-teacher-photo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

/* 教师信息区域 */
.webplus-teacher-info {
    padding: 20px 15px;
    text-align: center;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    /* 修改点4: 确保信息区域不会被遮挡 */
    position: relative;
    overflow: visible;
    height: auto;
    box-sizing: border-box;
    /* 增加z-index确保内容在顶层显示 */
    z-index: 1;
}

/* 教师姓名 */
.webplus-teacher-name {
    font-size: 18px;
    font-weight: bold;
    color: #333333;
    margin: 0 0 10px 0;
    line-height: 1.3;
    /* 确保文本完整显示 */
    overflow: visible;
    white-space: normal;
    word-wrap: break-word;
}

/* 教师职位 */
.webplus-teacher-title {
    font-size: 14px;
    color: #666666;
    margin-bottom: 12px;
    line-height: 1.4;
    /* 确保文本完整显示 */
    overflow: visible;
    white-space: normal;
    word-wrap: break-word;
}

/* 教师简介 */
.webplus-teacher-desc {
    font-size: 13px;
    color: #999999;
    line-height: 1.5;
    flex-grow: 1;
    display: block;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-word;
    /* 确保文本完整显示 */
    overflow: visible;
}

/* 分页组件样式 */
.pagination-wrapper {
    /* 修改点5: 下移分页组件 */
    /* 原值: margin-top: 30px; */
    margin-top: 40px;
    /* 原值: padding: 25px 0; */
    padding: 25px 0;
    border-top: 2px solid #f0f0f0;
    background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%);
    border-radius: 0 0 12px 12px;
}

.pagination-info {
    display: flex;
    justify-content: center;
    gap: 25px;
    margin-bottom: 18px;
    font-size: 13px;
    color: #666;
}

/* 响应式设计 */
/* 平板设备 */
@media (max-width: 992px) {
    .webplus-teachers-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        /* 修改点6: 响应式下的上移调整 */
        margin-top: -30px;
        padding-top: 5px;
    }

    .webplus-teacher-photo {
        height: 200px;
    }

    .webplus-teacher-info {
        padding: 15px 12px;
    }

    .webplus-teacher-name {
        font-size: 16px;
        margin-bottom: 8px;
    }

    .webplus-teacher-title {
        font-size: 13px;
        margin-bottom: 10px;
    }

    .webplus-teacher-desc {
        font-size: 12px;
    }
}

/* 手机设备 */
@media (max-width: 768px) {
    .col_news_con {
        padding: 15px 0;
    }

    .webplus-teachers-container {
        padding: 0 10px;
    }

    .webplus-teachers-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        /* 修改点7: 移动端上的上移调整 */
        margin-top: -20px;
        padding-top: 0;
    }

    .webplus-teacher-photo {
        height: 240px;
    }

    .webplus-teacher-info {
        padding: 20px 15px;
    }

    .webplus-teacher-name {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .webplus-teacher-title {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .webplus-teacher-desc {
        font-size: 13px;
    }

    .pagination-wrapper {
        /* 修改点8: 移动端上的下移调整 */
        margin-top: 30px;
        padding: 25px 0;
    }
}

/* 小屏幕手机 */
/* 小屏幕手机 */
@media (max-width: 480px) {
    .webplus-teachers-grid {
        gap: 15px;
        margin-top: -15px;
        padding-bottom: 20px;
    }

    body.list .webplus-teachers-grid {
        gap: 15px;
        margin-top: -15px;
        padding-bottom: 20px;
    }
}

/* background: #f8f9fa;
padding: 10px;
box-sizing: border-box; */
}

/* 处理图片加载失败的情况 */
.webplus-teacher-photo img:not([src]),
.webplus-teacher-photo img[src=""],
.webplus-teacher-photo img[src=" "] {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #f8f9fa url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDEwMCAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjRjhGOUZBIi8+CjxwYXRoIGQ9Ik0zMCA0MEg3MFY2MEgzMFY0MFoiIGZpbGw9IiNEMUQ1REIiLz4KPGNpcmNsZSBjeD0iNDAiIGN5PSIzMCIgcj0iOCIgZmlsbD0iI0QxRDVEQiIvPgo8L3N2Zz4K') center/60px no-repeat;
}

/* 师资队伍响应式设计 */
@media (max-width: 1200px) {
    .teachers-grid {
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
        gap: 30px;
    }

    .teacher-photo {
        height: 280px;
    }

    /* 师资队伍列表页响应式 */
    body.list .webplus-teachers-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 20px;
    }

    body.list .webplus-teacher-photo {
        height: 200px;
    }
}

@media (max-width: 768px) {
    .teachers-container {
        padding: 20px 0;
        margin: 15px 0;
        border-radius: 12px;
    }

    .teachers-grid {
        grid-template-columns: 1fr;
        gap: 25px;
        padding: 0 15px;
    }

    .teacher-card {
        margin: 0;
    }

    .teacher-photo {
        height: 260px;
    }

    .teacher-info {
        padding: 25px;
    }

    .teacher-name {
        font-size: 20px;
    }

    .teacher-title {
        font-size: 15px;
    }

    .teacher-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .teacher-badge {
        align-self: flex-start;
    }

    .teacher-links {
        flex-direction: column;
        gap: 12px;
    }

    .teacher-links a {
        padding: 12px 20px;
    }
}

@media (max-width: 480px) {
    .teachers-container {
        padding: 15px 0;
        margin: 10px 0;
    }

    .teachers-grid {
        padding: 0 10px;
        gap: 20px;
    }

    .teacher-card {
        border-radius: 12px;
    }

    .teacher-photo {
        height: 220px;
    }

    .teacher-info {
        padding: 20px;
    }

    .teacher-name {
        font-size: 18px;
    }

    .teacher-title {
        font-size: 14px;
    }

    .teacher-department {
        font-size: 13px;
    }

    .teacher-specialty {
        font-size: 12px;
        padding: 6px 10px;
    }

    .contact-item {
        font-size: 12px;
    }

    .teacher-intro {
        padding: 12px;
        margin-bottom: 20px;
    }

    .teacher-intro p {
        font-size: 13px;
        -webkit-line-clamp: 2;
        max-height: 52px;
        line-height: 1.6;
    }

    .teacher-links a {
        padding: 10px 16px;
        font-size: 13px;
    }

    .link-icon {
        font-size: 14px;
    }
}

/* ================================
   参考网站布局样式 - 列表页模板
   ================================ */

/* 列表页主体布局 */
body.list {
    background: #f5f7fa;
}

/* 列表页横幅 */
.l-banner {
    width: 100%;
    height: 200px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.l-banner img {
    display: none;
}

/* 内容容器 */
#l-container {
    padding: 30px 20px 50px;
    background: #f5f5f5;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: calc(100vh - 200px);
}

#l-container .inner {
    background: transparent;
    padding: 0;
    width: 100%;
    max-width: 1281px;
    /* 菜单200px + 间距25px + 新闻1056px */
    margin: 0 auto;
}

#l-container .col_news_box {
    max-width: 1056px;
    /* 减少宽度给菜单留出空间 */
    margin: 0;
    width: 100%;
    flex: 1;
}

/* 左右两侧栏统一高度和对齐 */
#l-container .mod {
    display: flex;
    align-items: stretch;
    gap: 25px;
    width: 100%;
    max-width: 1281px;
    margin: 0 auto;
}

}

/* 统一卡片样式 */
.col_menu,
.col_news_box {
    transition: all 0.3s ease;
    height: fit-content;
}

.col_menu:hover,
.col_news_box:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

/* 统一间距设置 */
.col_menu_con,
.col_news_con {
    padding: 15px 0;
}

.col_news_con {
    padding: 25px 30px 40px;
    /* 确保容器能够显示所有内容 */
    overflow: visible;
    min-height: auto;
    /* 移除任何可能限制内容显示的高度设置 */
    height: auto;
    max-height: none;
    /* 动态布局 - 根据内容自动调整高度 */
    display: block;
    width: 100%;
    /* 确保容器能够完整显示第二行内容 */
    position: relative;
    /* 添加底部间距确保内容不被截断 */
    margin-bottom: 20px;
}

.col_menu_con {
    padding: 12px 0;
}

/* 确保内容垂直对齐，但不限制高度 */
#l-container .mod {
    display: flex;
    align-items: stretch;
    gap: 25px;
    width: 100%;
    max-width: 1281px;
    margin: 0 auto;
    /* 移除固定最小高度限制，允许内容自适应 */
    min-height: auto;
}

/* 菜单栏固定高度对齐 */
.col_menu {
    display: flex;
    flex-direction: column;
}

.col_menu_con {
    flex: 1;
}

/* 移动端布局调整 */
body.mobile-layout #l-container {
    padding: 20px 15px 40px;
    align-items: flex-start;
    justify-content: center;
}

body.mobile-layout .col_menu {
    width: 100%;
    margin-bottom: 20px;
}

body.mobile-layout .col_news {
    flex: 1;
    width: 100%;
}

body.mobile-layout #l-container .mod {
    flex-direction: column;
    gap: 20px;
    max-width: 100%;
}

body.mobile-layout .col_menu_con {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.mobile-layout .col_menu_con.show {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.mobile-layout #l-container .col_news_box {
    margin: 0;
    max-width: 100%;
}

/* 确保校园新闻标题在所有情况下都可见 */
body.mobile-layout .col_menu_head,
body.mobile-layout .col_name,
body.mobile-layout .col_name_text {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 强制显示校园新闻标题 */
.col_menu_head,
.col_name,
.col_name_text {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 100 !important;
}

/* 移除任何可能的隐藏效果 */
.column-switch {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* 中等屏幕优化 */
@media (max-width: 992px) {
    #l-container {
        padding: 25px 15px 45px;
        min-height: auto;
    }

    .col_menu {
        width: 200px;
    }

    .col_menu_head {
        padding: 12px 15px;
    }

    .col_name_text {
        font-size: 20px;
    }
}

/* 小屏幕优化 */
@media (max-width: 768px) {
    #l-container {
        padding: 20px 10px 40px;
    }

    .col_news_con {
        padding: 20px 15px 0;
    }

    .col_news_head {
        padding: 12px 15px;
    }

    .pagination-wrapper {
        padding: 20px 15px;
        margin-top: 25px;
    }
}

#l-container .inner {
    background: transparent;
    padding: 0;
    width: 100%;
    margin: 0 auto;
}

/* 左侧菜单栏 */
.col_menu {
    width: 200px;
    flex-shrink: 0;
    margin: 0;
    align-self: flex-start;
}

.col_menu_head {
    background: linear-gradient(135deg, #093d84 0%, #3d70ae 100%);
    border-radius: 6px 6px 0 0;
    padding: 15px 20px;
    position: relative;
    border-bottom: 2px solid #093d84;
}

.col_name {
    margin: 0;
    padding: 0;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.col_name_text {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-size: 22px;
    font-weight: bold;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #ffffff !important;
    position: relative;
    padding-left: 10px;
}

.col_name_text::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 20px;
    background: #fff;
    border-radius: 2px;
}

.Column_Anchor {
    display: block;
}

.column-switch {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzIDEwTDggNUw3IDZMMTEgMTBMNyAxNEw4IDE1TDEzIDEwWiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+') center/contain no-repeat;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.column-switch.open {
    transform: translateY(-50%) rotate(180deg);
}

.col_menu_con {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-top: none;
    border-radius: 0 0 6px 6px;
    padding: 12px 0;
}

.col_list {
    padding: 0 15px;
}

.wp_listcolumn {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wp_listcolumn li {
    margin-bottom: 0;
    border-bottom: 1px solid #f0f0f0;
    position: relative;
}

.wp_listcolumn li:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.wp_listcolumn li a {
    display: block;
    padding: 12px 15px;
    color: #333;
    text-decoration: none;
    font-size: 15px;
    border-radius: 4px;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
    position: relative;
    line-height: 1.5;
}

.wp_listcolumn li::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #093d84;
    border-radius: 50%;
    opacity: 0;
    transition: all 0.3s ease;
}

.wp_listcolumn li:hover::before {
    opacity: 1;
    transform: translateY(-50%) scale(1.2);
}

.wp_listcolumn li:hover,
.wp_listcolumn li.current {
    background: linear-gradient(90deg, rgba(9, 61, 132, 0.05) 0%, transparent 100%);
    border-radius: 6px;
    margin: 0 -15px;
    padding-right: 15px;
}

.wp_listcolumn li a:hover,
.wp_listcolumn li.current a {
    color: #093d84;
    border-left-color: #093d84;
    padding-left: 18px;
}

/* 右侧内容区 */
.col_news {
    flex: 1;
    margin: 0;
    display: flex;
    flex-direction: column;
}

.col_news_box {
    background: #fff;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e5e5;
}

.col_news_head {
    background: #f8f9fa;
    border-bottom: 1px solid #e5e5e5;
    padding: 15px 30px;
}

.col_metas {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
}

.col_path {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 16px;
    color: #666;
    font-size: 13px;
    backdrop-filter: blur(8px);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
    max-width: fit-content;
    border: 1px solid rgba(255, 255, 255, 0.8);
}

.col_path a {
    color: #093d84;
    text-decoration: none;
    margin: 0 3px;
    transition: all 0.3s ease;
}

.col_path a:hover {
    text-decoration: none;
    color: #3d70ae;
    transform: translateY(-1px);
}

.possplit {
    color: #999;
    margin: 0 2px;
    font-weight: 500;
}

.col_title {
    margin: 0;
}

.col_title h2 {
    font-size: 20px;
    color: #093d84;
    font-weight: bold;
    margin: 0;
}

.col_news_con {
    padding: 25px 30px 40px;
    /* 确保容器能够显示所有内容 */
    overflow: visible;
    min-height: auto;
    /* 移除任何可能限制内容显示的高度设置 */
    height: auto;
    max-height: none;
    /* 动态布局 - 根据内容自动调整高度 */
    display: block;
    width: 100%;
    /* 确保容器能够完整显示第二行内容 */
    position: relative;
    /* 添加底部间距确保内容不被截断 */
    margin-bottom: 20px;
}

.col_news_list {
    /* 移除固定最小高度限制，允许内容自适应 */
    min-height: auto;
    overflow: visible;
    /* 确保列表容器能完整显示所有内容 */
    height: auto;
    /* 动态布局 - 根据内容自动调整高度 */
    max-height: none;
    /* 确保容器能够显示第二行的完整内容 */
    width: 100%;
    /* 添加底部间距确保内容不被截断 */
    margin-bottom: 20px;
    /* 确保列表容器支持动态内容高度 */
    display: block;
}

/* 师资队伍容器在列表页中的适配 */
.webplus-teachers-container {
    width: 100%;
    margin: 0;
    padding: 0;
}

.webplus-teachers-grid {
    display: grid !important;
    /* 确保首行固定显示3个教师卡片 */
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    /* 改为auto行高，支持动态内容高度 */
    grid-auto-rows: auto;
    /* 调整网格容器的上边距使内容上移 */
    padding-top: 0;
    margin-top: 0px;
    /* 确保网格容器能够适应动态内容 */
    align-items: stretch;
    /* 允许网格项根据内容自动调整高度 */
    justify-items: stretch;
    /* 确保网格能够完整显示所有内容 */
    width: 100%;
    /* 添加底部边距避免内容被截断 */
    padding-bottom: 20px;
}

/* 师资队伍卡片在列表页中的特殊样式 */
body.list .webplus-teachers-container {
    background: transparent;
    padding: 0;
    border-radius: 0;
    /* 确保容器能完整显示所有内容 */
    overflow: visible;
    min-height: auto;
    height: auto;
    max-height: none;
    width: 100%;
    /* 动态布局支持 */
    display: block;
    /* 确保第二行内容完整显示 */
    margin-bottom: 20px;
}

body.list .webplus-teachers-grid {
    padding: 15px 0;
    /* 确保网格支持动态内容高度 */
    grid-auto-rows: auto;
    /* 确保网格能完整显示第二行内容 */
    margin-bottom: 20px;
}

body.list .webplus-teachers-grid {
    padding: 15px 0;
}

body.list .webplus-teacher-card {
    background: #ffffff;
    border-radius: 8px;
    overflow: visible;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e5e5;
    height: 100%;
    cursor: pointer;
}

body.list .webplus-teacher-photo {
    width: 100%;
    height: 220px;
    overflow: visible;
    position: relative;
    background: #f8f9fa;
}

body.list .webplus-teacher-photo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 200px;
    object-fit: contain;
    /* 移除变换效果 */
    /* transition: transform 0.3s ease; */
    /* 确保图片居中显示 */
    margin: 0 auto;
    display: block;
}

body.list .webplus-teacher-info {
    padding: 15px;
    text-align: center;
    background: #fff;
}

body.list .webplus-teacher-name {
    font-size: 16px;
    font-weight: bold;
}

color: #333;
margin: 0 0 8px 0;
line-height: 1.4;
}

body.list .webplus-teacher-title {
    font-size: 14px;
    color: #666;
    margin-bottom: 6px;
    line-height: 1.3;
}

body.list .webplus-teacher-desc {
    font-size: 13px;
    color: #999;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 34px;
}

/* 分页容器样式 */
.webplus-pagination-container {
    margin-top: 30px;
    text-align: center;
    padding: 20px 0;
    border-top: 1px solid #e5e5e5;
    clear: both;
    width: 100%;
}

/* 分页样式 */
#wp_paging_w6 {
    margin: 0;
    padding: 0;
}

.wp_paging {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.wp_paging li {
    margin: 0 5px;
}

.pages_count {
    color: #666;
    font-size: 13px;
    margin-right: 15px;
}

.per_count,
.all_count {
    color: #093d84;
    font-weight: bold;
}

.page_nav a {
    display: inline-block;
    padding: 8px 15px;
    color: #333;
    text-decoration: none;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 13px;
    transition: all 0.3s ease;
    background: #fff;
}

.page_nav a:hover {
    background: #093d84;
    color: #fff;
    border-color: #093d84;
}

.page_nav a.current {
    background: #093d84;
    color: #fff;
    border-color: #093d84;
}

.page_nav a.disabled {
    color: #999;
    cursor: not-allowed;
    background: #f5f5f5;
}

/* 响应式设计 */
@media (max-width: 1200px) {
    #l-container {
        padding: 30px 15px 50px;
    }

    #l-container .inner,
    #l-container .mod {
        max-width: 100%;
    }

    .col_menu {
        width: 180px;
    }

    .col_news {
        flex: 1;
    }

    #l-container .col_news_box {
        max-width: 100%;
    }

    .webplus-teachers-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 20px;
    }
}

@media (max-width: 992px) {
    #l-container .inner {
        width: 100%;
        padding: 0 20px;
    }

    .col_menu {
        width: 100%;
        float: none;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .col_news {
        width: 100%;
        float: none;
    }

    .col_menu_con {
        display: none;
    }

    .col_menu_con.show {
        display: block;
    }

    .webplus-teachers-grid {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

@media (max-width: 768px) {
    .l-banner {
        height: 150px;
    }

    .col_news_head {
        padding: 15px 20px;
    }

    .col_metas {
        flex-direction: column;
        align-items: flex-start;
    }

    .col_path {
        margin-bottom: 10px;
        padding: 5px 10px;
        font-size: 12px;
    }

    .col_news_con {
        padding: 20px;
    }

    .webplus-teachers-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

/* 师资队伍加载动画 */
@keyframes teacherCardFadeIn {
    from {
        opacity: 0;
        transform: translateY(30px) scale(0.95);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.teacher-card {
    animation: teacherCardFadeIn 0.6s ease-out;
    animation-fill-mode: both;
}

.teacher-card:nth-child(1) {
    animation-delay: 0.1s;
}

.teacher-card:nth-child(2) {
    animation-delay: 0.2s;
}

.teacher-card:nth-child(3) {
    animation-delay: 0.3s;
}

.teacher-card:nth-child(4) {
    animation-delay: 0.4s;
}

.teacher-card:nth-child(5) {
    animation-delay: 0.5s;
}

.teacher-card:nth-child(6) {
    animation-delay: 0.6s;
}

/* 师资队伍特殊效果 */
.teacher-photo::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(61, 112, 174, 0.1) 0%, transparent 50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.teacher-card:hover .teacher-photo::after {
    opacity: 1;
}

/* 师资队伍卡片边框装饰 */
.teacher-info::before {
    content: "";
    position: absolute;
    top: 0;
    left: 25px;
    right: 25px;
    height: 1px;
    background: linear-gradient(90deg, transparent, #e0e0e0, transparent);
}

/* 无图片时的占位样式 */
.teacher-photo img[alt=""] {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: 14px;
}

.teacher-photo img[alt=""]::before {
    content: "教师照片";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #999;
    font-size: 14px;
}

/* 为模板添加注释标记，方便平台识别 */
/* === TEMPLATE PLACEHOLDER STYLES === */
/* 这些样式为WebPlus平台模板占位符提供基本样式 */

.placeholder-container {
    border: 2px dashed #ccc;
    background-color: #f9f9f9;
    padding: 20px;
    text-align: center;
    color: #666;
    margin: 10px 0;
    border-radius: 4px;
}

.placeholder-label {
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
}

.placeholder-hint {
    font-size: 12px;
    color: #999;
}

/* 简化的个人主页样式，确保平台兼容性 */
.personal-homepage-template {
    max-width: 1200px;
    margin: 20px auto;
    padding: 0 15px;
}

.personal-homepage-template .breadcrumb-nav {
    margin-bottom: 20px;
    font-size: 14px;
    color: #666;
}

.personal-homepage-template .teacher-profile-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.personal-homepage-template .profile-header {
    background: #093d84;
    color: white;
    padding: 25px;
}

.personal-homepage-template .profile-content {
    padding: 25px;
}

.personal-homepage-template .section-title {
    color: #093d84;
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 20px 0;
    padding-bottom: 10px;
    border-bottom: 2px solid #093d84;
}

.personal-homepage-template .info-table {
    width: 100%;
    border-collapse: collapse;
}

.personal-homepage-template .info-table th,
.personal-homepage-template .info-table td {
    padding: 10px 15px;
    text-align: left;
    border-bottom: 1px solid #eee;
}

.personal-homepage-template .info-table th {
    width: 100px;
    color: #093d84;
    font-weight: bold;
}

/* 响应式设计 */
@media (max-width: 768px) {
    .personal-homepage-template .profile-header {
        padding: 20px 15px;
        text-align: center;
    }

    .personal-homepage-template .profile-content {
        padding: 20px 15px;
    }
}

/* ================================
   新闻列表页优化样式
   ================================ */

/* 新闻列表页面增强样式 */
body.list {
    background: #f5f7fa;
}

/* 侧边栏优化 */
.col_menu {
    transition: all 0.3s ease;
}

.col_menu_head {
    background: linear-gradient(135deg, #093d84 0%, #3d70ae 100%);
    border-radius: 8px 8px 0 0;
    box-shadow: 0 2px 10px rgba(9, 61, 132, 0.3);
}

.col_name_text {
    position: relative;
    padding-left: 10px;
}

.col_name_text::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 20px;
    background: #fff;
    border-radius: 2px;
}

.column-switch {
    background: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzIDEwTDggNUw3IDZMMTEgMTBMNyAxNEw4IDE1TDEzIDEwWiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+') center/contain no-repeat;
    transition: transform 0.3s ease;
}

.column-switch:hover {
    transform: translateY(-50%) scale(1.1);
}

/* 侧边栏菜单 */
.wp_listcolumn li {
    margin-bottom: 0;
}

.wp_listcolumn li a {
    padding: 12px 20px;
    margin: 2px 0;
    border-radius: 0;
    position: relative;
    transition: all 0.3s ease;
}

.wp_listcolumn li a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: #093d84;
    transform: scaleY(0);
    transition: transform 0.3s ease;
}

.wp_listcolumn li a:hover::before,
.wp_listcolumn li.current a::before {
    transform: scaleY(1);
}

/* 新闻列表容器 */
.col_news_box {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.col_news_box:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

/* 新闻头部 */
.col_news_head {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 2px solid #093d84;
    position: relative;
}

/* 面包屑导航 */
.col_path {
    background: rgba(255, 255, 255, 0.8);
    padding: 6px 12px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
}

.col_path a {
    color: #093d84;
    font-weight: 500;
    transition: all 0.3s ease;
}

.col_path a:hover {
    color: #3d70ae;
    transform: translateY(-1px);
}

.col_path a.current {
    color: #333;
    font-weight: 600;
    background: rgba(9, 61, 132, 0.1);
    padding: 2px 6px;
    border-radius: 8px;
}

.col_title h2 {
    background: linear-gradient(135deg, #093d84 0%, #3d70ae 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-size: 22px;
    font-weight: bold;
}

/* 新闻列表优化 */
.news_list {
    /* padding: 10px 0; */
}

.news_list .news {
    border-bottom: 1px solid #f0f0f0;
    padding: 0px 0;
    transition: all 0.3s ease;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.news_list .news::before {
    content: "";
    position: absolute;
    left: -25px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #093d84;
    border-radius: 50%;
    opacity: 0;
    transition: all 0.3s ease;
}

.news_list .news:hover::before {
    opacity: 1;
    transform: translateY(-50%) scale(1.2);
}

.news_list .news:hover {
    background: linear-gradient(90deg, rgba(9, 61, 132, 0.05) 0%, transparent 100%);
    padding-left: 15px;
    border-radius: 6px;
    margin: 0 -15px;
    padding-right: 15px;
}

.news_title {
    flex: 1;
}

.news_title a {
    font-size: 15px;
    color: #333;
    font-weight: 500;
    line-height: 1.5;
    transition: all 0.3s ease;
    display: inline-block;
}

.news_title a:hover {
    color: #093d84;
    transform: translateX(5px);
}

.news_meta {
    color: #999;
    font-size: 13px;
    white-space: nowrap;
    margin-left: 15px;
    background: #f8f9fa;
    padding: 3px 10px;
    border-radius: 12px;
}

/* 分页组件优化 */
.pagination-wrapper {
    margin-top: 30px;
    padding: 25px 0;
    border-top: 2px solid #f0f0f0;
    background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%);
    border-radius: 0 0 12px 12px;
}

.pagination-info {
    display: flex;
    justify-content: center;
    gap: 25px;
    margin-bottom: 18px;
    font-size: 13px;
    color: #666;
}

.per_count,
.all_count {
    color: #093d84;
    font-weight: bold;
}

.wp_paging {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.page_nav a {
    padding: 8px 16px;
    margin: 0 3px;
    border: 1px solid #093d84;
    border-radius: 20px;
    color: #093d84;
    font-weight: 500;
    transition: all 0.3s ease;
    background: #fff;
    font-size: 13px;
}

.page_nav a:hover:not(.disabled) {
    background: #093d84;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(9, 61, 132, 0.3);
}

.page_nav a.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    border-color: #ddd;
    color: #999;
}

.jump-form {
    display: flex;
    align-items: center;
    gap: 8px;
}

.pageNum {
    width: 55px;
    padding: 6px 10px;
    border: 2px solid #093d84;
    border-radius: 18px;
    text-align: center;
    font-size: 13px;
    transition: all 0.3s ease;
}

.pageNum:focus {
    outline: none;
    border-color: #3d70ae;
    box-shadow: 0 0 0 3px rgba(9, 61, 132, 0.1);
}

.pagingJump {
    padding: 6px 14px;
    background: linear-gradient(135deg, #093d84 0%, #3d70ae 100%);
    color: #fff;
    border: none;
    border-radius: 18px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.3s ease;
    font-size: 13px;
}

.pagingJump:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(9, 61, 132, 0.3);
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .news_title a {
        font-size: 14px;
    }

    .news_meta {
        font-size: 12px;
        padding: 2px 8px;
    }

    .pagination-info {
        gap: 20px;
    }
}

@media (max-width: 992px) {
    .col_menu_con {
        display: none;
    }

    .col_menu_con.show {
        display: block;
    }

    .col_menu_head {
        cursor: pointer;
    }

    .news_list .news::before {
        display: none;
    }

    .news_list .news:hover {
        padding-left: 10px;
    }
}

@media (max-width: 768px) {
    .col_news_head {
        padding: 20px 15px;
    }

    .col_path {
        margin-bottom: 15px;
        width: 100%;
    }

    .col_title h2 {
        font-size: 20px;
        text-align: center;
    }

    .col_news_con {
        padding: 20px 15px;
    }

    .news_list {
        padding: 15px 0;
    }

    .news_list .news {
        padding: 15px 10px;
        flex-direction: column;
        align-items: flex-start;
    }

    .news_meta {
        margin-left: 0;
        margin-top: 10px;
        align-self: flex-end;
    }

    .pagination-wrapper {
        padding: 20px 15px;
    }

    .pagination-info {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .wp_paging {
        flex-direction: column;
        gap: 15px;
    }

    .page_nav {
        display: flex;
        gap: 10px;
        justify-content: center;
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .col_title h2 {
        font-size: 18px;
    }

    .news_title a {
        font-size: 14px;
        line-height: 1.5;
    }

    .news_meta {
        font-size: 12px;
        padding: 3px 10px;
    }

    .page_nav a {
        padding: 8px 15px;
        font-size: 13px;
    }

    .pageNum {
        width: 50px;
        font-size: 13px;
    }
}

/* 加载动画优化 */
@keyframes newsSlideIn {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.news_list .news {
    animation: newsSlideIn 0.6s ease-out;
    animation-fill-mode: both;
}

.news_list .news:nth-child(1) {
    animation-delay: 0.1s;
}

.news_list .news:nth-child(2) {
    animation-delay: 0.2s;
}

.news_list .news:nth-child(3) {
    animation-delay: 0.3s;
}

.news_list .news:nth-child(4) {
    animation-delay: 0.4s;
}

.news_list .news:nth-child(5) {
    animation-delay: 0.5s;
}

.news_list .news:nth-child(6) {
    animation-delay: 0.6s;
}

.news_list .news:nth-child(7) {
    animation-delay: 0.7s;
}

.news_list .news:nth-child(8) {
    animation-delay: 0.8s;
}

.news_list .news:nth-child(9) {
    animation-delay: 0.9s;
}

.news_list .news:nth-child(10) {
    animation-delay: 1.0s;
}

/* ================================
   个人主页样式
   ================================ */
.personal-homepage {
    width: 100%;
    max-width: 1200px;
    margin: 30px auto;
    padding: 0 15px;
}

.breadcrumb-nav {
    margin-bottom: 20px;
    font-size: 14px;
}

.breadcrumb-nav a {
    color: #093d84;
    text-decoration: none;
}

.breadcrumb-nav a:hover {
    text-decoration: underline;
}

.breadcrumb-separator {
    margin: 0 8px;
    color: #999;
}

.teacher-profile-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin-bottom: 30px;
}

.profile-header {
    background: linear-gradient(135deg, #093d84 0%, #3d70ae 100%);
    color: white;
    padding: 30px;
    display: flex;
    align-items: center;
}

.profile-avatar {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 4px solid rgba(255, 255, 255, 0.3);
    margin-right: 30px;
    object-fit: cover;
}

.profile-basic-info h1 {
    font-size: 28px;
    margin-bottom: 10px;
}

.profile-basic-info .position {
    font-size: 18px;
    margin-bottom: 15px;
    opacity: 0.9;
}

.contact-info {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.contact-item {
    display: flex;
    align-items: center;
    margin-right: 20px;
}

.contact-item i {
    margin-right: 8px;
    font-size: 18px;
}

.profile-content {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    padding: 30px;
}

.main-content {
    flex: 1;
    min-width: 300px;
}

.sidebar {
    width: 300px;
}

.info-section {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    padding: 25px;
    margin-bottom: 25px;
}

.section-title {
    color: #093d84;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #093d84;
}

.info-table {
    width: 100%;
    border-collapse: collapse;
}

.info-table th,
.info-table td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #eee;
}

.info-table th {
    width: 100px;
    color: #093d84;
    font-weight: bold;
}

.research-list {
    list-style: none;
    padding: 0;
}

.research-list li {
    padding: 15px 0;
    border-bottom: 1px dashed #eee;
}

.research-list li:last-child {
    border-bottom: none;
}

.research-list li strong {
    display: block;
    margin-bottom: 5px;
    color: #333;
}

.research-list li span {
    color: #666;
    font-size: 14px;
}

.publications-list {
    list-style: none;
    padding: 0;
}

.publications-list li {
    padding: 15px;
    margin-bottom: 15px;
    background: #f8f9fa;
    border-left: 4px solid #093d84;
    border-radius: 0 4px 4px 0;
}

.publications-list .pub-title {
    font-weight: bold;
    margin-bottom: 8px;
    color: #333;
}

.publications-list .pub-authors {
    color: #666;
    font-size: 14px;
    margin-bottom: 5px;
}

.publications-list .pub-source {
    color: #093d84;
    font-style: italic;
    font-size: 14px;
}

.courses-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 15px;
}

.course-card {
    background: #f8f9fa;
    border-radius: 6px;
    padding: 15px;
    transition: all 0.3s ease;
}

.course-card:hover {
    background: #eef5ff;
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.course-card h4 {
    color: #093d84;
    margin-bottom: 8px;
}

.course-card p {
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

.gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 15px;
}

.gallery-item {
    border-radius: 6px;
    overflow: hidden;
    aspect-ratio: 1;
    position: relative;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.gallery-item:hover img {
    transform: scale(1.1);
}

/* 响应式设计 */
@media (max-width: 992px) {
    .profile-content {
        flex-direction: column;
    }

    .sidebar {
        width: 100%;
    }

    .courses-list {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    .profile-header {
        flex-direction: column;
        text-align: center;
    }

    .profile-avatar {
        margin-right: 0;
        margin-bottom: 20px;
    }

    .contact-info {
        justify-content: center;
    }

    .profile-content {
        padding: 20px 15px;
    }

    .info-table th,
    .info-table td {
        display: block;
        width: 100%;
    }

    .info-table tr {
        margin-bottom: 15px;
        display: block;
    }

    .gallery {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    }
}

@media (max-width: 480px) {
    .profile-header {
        padding: 20px 15px;
    }

    .profile-basic-info h1 {
        font-size: 24px;
    }

    .profile-basic-info .position {
        font-size: 16px;
    }

    .contact-item {
        margin-right: 10px;
        font-size: 13px;
    }

    .courses-list {
        grid-template-columns: 1fr;
    }
}

/* ================================
   图文混排模板样式
   ================================ */

/* 图文混排容器 */
.div_ztyw_ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.div_ztyw_li {
    flex: 0 0 calc(33.333% - 14px);
    margin: 0;
    padding: 0;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #e5e5e5;
}

.div_ztyw_li:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-color: #3d70ae;
}

/* 图文混排内容容器 */
.c_pt_04 {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* 图片区域 */
.c_pic {
    width: 100%;
    height: 200px;
    overflow: hidden;
    position: relative;
    background: #f8f9fa;
    flex-shrink: 0;
}

.c_pic a {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    overflow: hidden;
}

.c_pic span {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.c_pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
    object-position: center center;
}

.div_ztyw_li:hover .c_pic img {
    transform: scale(1.05);
}

/* 文本区域 */
.c_txt {
    padding: 15px;
    background: #fff;
    text-align: center;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80px;
}

.c_txt p {
    margin: 0;
    padding: 0;
    line-height: 1.4;
}

.c_txt a {
    display: block;
    text-decoration: none;
    color: #333;
    transition: color 0.3s ease;
}

.c_txt a:hover {
    color: #093d84;
}

.c_txt span {
    display: block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.c_txt label {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    line-height: 1.4;
    text-align: center;
}

/* 响应式设计 */
@media (max-width: 1200px) {
    .div_ztyw_li {
        flex: 0 0 calc(33.333% - 14px);
    }
}

@media (max-width: 900px) {
    .div_ztyw_ul {
        gap: 15px;
    }

    .div_ztyw_li {
        flex: 0 0 calc(50% - 8px);
    }

    .c_pic {
        height: 180px;
    }
}

@media (max-width: 600px) {
    .div_ztyw_ul {
        gap: 15px;
        padding: 0 10px;
    }
}


.div_ztyw_li {
    flex: 0 0 100%;
}

.c_pic {
    height: 220px;
}

.c_txt {
    padding: 12px;
    min-height: 70px;
}

.c_txt label {
    font-size: 13px;
}
}

/* 图文混排在师资队伍页面中的特殊适配 */
.webplus-teachers-grid .div_ztyw_ul {
    display: contents;
    gap: 0;
    padding: 0;
    margin: 0;
}

.webplus-teachers-grid .div_ztyw_li {
    margin: 0;
    grid-column: auto;
    grid-row: auto;
}

/* 加载动画 */
@keyframes twhpFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.div_ztyw_li {
    animation: twhpFadeIn 0.6s ease-out;
    animation-fill-mode: both;
}

.div_ztyw_li:nth-child(1) {
    animation-delay: 0.1s;
}

.div_ztyw_li:nth-child(2) {
    animation-delay: 0.2s;
}

.div_ztyw_li:nth-child(3) {
    animation-delay: 0.3s;
}

.div_ztyw_li:nth-child(4) {
    animation-delay: 0.4s;
}

.div_ztyw_li:nth-child(5) {
    animation-delay: 0.5s;
}

.div_ztyw_li:nth-child(6) {
    animation-delay: 0.6s;
}

/* 图片加载失败处理 */
.c_pic img:not([src]),
.c_pic img[src=""],
.c_pic img[src=" "] {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #f8f9fa url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDEwMCAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjRjhGOUZBIi8+CjxwYXRoIGQ9Ik0zMCA0MEg3MFY2MEgzMFY0MFoiIGZpbGw9IiNEMUQ1REIiLz4KPGNpcmNsZSBjeD0iNDAiIGN5PSIzMCIgcj0iOCIgZmlsbD0iI0QxRDVEQiIvPgo8L3N2Zz4K') center/60px no-repeat;
}

/* 高对比度模式支持 */
@media (prefers-contrast: high) {
    .div_ztyw_li {
        border: 2px solid #000;
    }

    .c_txt label {
        color: #000;
        font-weight: bold;
    }
}

background: linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%);
display: flex;
align-items: center;
justify-content: center;
color: #999;
font-size: 14px;
}

.teacher-photo img[alt=""]::before {
    content: "教师照片";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #999;
    font-size: 14px;
}