/* 全局样式 */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Microsoft YaHei',Arial,sans-serif;font-size:14px;line-height:1.6;color:#333; min-width: 1320px; }
.container{width:1373px;margin:0 auto;padding:0; max-width: 98%; }

/* 头部样式 */
.header{background-color:#96181A;color:#fff;position:relative}
.header-top{display:flex;justify-content:space-between; height:152px}
.logo{display:flex;align-items:center}
.logo img{width:auto;height: 78px; }
.college-name h1{font-size:24px;font-weight:bold;margin:0}
.college-name p{font-size:16px;margin:0}
.header-right{flex:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}
.search-form{margin-top:27px;position:relative}
.search-form form{display:flex;align-items:center;width:288px}
.search-form input{width:288px;height:44px;padding:0 15px;border:none;border-radius:10px;font-size:16px}
.search-form button{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:none;border:none;color:#666;cursor:pointer}
.search-form button img{width:26px;height:26px}

/* 导航栏样式 */
.navbar{width:100%;background-color:#fff;border-radius:4px;height:65px;line-height:65px;padding:0;background-color:#96181A;position:relative;z-index:1000}
.nav-list{display:flex;list-style:none;margin:0;padding:0;width:100%}
.nav-item{flex:1;text-align:right;position:relative}
.nav-item a{display:inline-block;padding:0;color:#fff;text-decoration:none;font-size:16px;font-weight:500;height:50px}
.nav-item a:hover{border-bottom:2px solid #fff;color:#fff}
.nav-item.active > a{border-bottom:2px solid #fff;color:#fff}

/* 下拉菜单样式 */
.nav-item.dropdown{position:relative}
.dropdown-menu{position:absolute;top:100%;left:0;width:100%;background-color:#96181A;list-style:none;padding:0;margin:0;display:none;box-shadow:0 4px 6px rgba(0,0,0,0.1);border-top:1px solid rgba(255,255,255,0.1);overflow:hidden}
.dropdown-menu li{border-bottom:1px solid rgba(255,255,255,0.1);text-align:center}
.dropdown-menu li:last-child{border-bottom:none}
.dropdown-menu li a{display:block;padding:10px 0;color:#fff;text-decoration:none;font-size:14px;transition:all 0.3s ease;line-height:1.5;height:auto}
.dropdown-menu li a:hover{background-color:#811417;border:none;color:#fff}

/* 鼠标悬停显示下拉菜单 */
.nav-item.dropdown:hover .dropdown-menu{display:block}

/* Banner样式 */
.banner{width:100%;overflow:hidden}
#bannerCarousel{width:100%}
#bannerCarousel .carousel-item img{width:100%;height:550px;object-fit:cover}
#bannerCarousel .carousel-control-next-icon, 
#bannerCarousel .carousel-control-prev-icon{background-color:#0009;border-radius:50%;padding:2em;margin:10px;background-size:auto 2.5em}

/* 主要内容样式 */
.main{background-color:#fff}

/* 通用section样式 */
.news-section, .notice-section, .party-section{ }
.news-bg{background-color:#FAFAFA;padding:45px 0}
.notice-party-bg{background-color:#fff;padding:50px 0;background-image:url("../images/notice-party-bg.png");background-repeat:no-repeat;background-position:right}
.service-bg{background-color:#FAF9F5;padding:45px 0 26px;background-image:url("../images/service-bg.png");background-size:cover}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:3px}
.section-header h2{font-size:20px;font-weight:400;color:#333333;margin:0}
.section-header h2 .icon img{margin-right:14px}
.section-header .more{color:#999;text-decoration:none;font-size:14px;line-height:14px;transition:color 0.3s ease;display:flex;align-items:center}
.section-header .more .icon{display:inline-block}
.section-header .more .icon img{width:37px;height:12px;display:block;margin-right:12px}
.section-header .more:hover{color:#96181A}
.line{width:100%;display:flex;align-items:center;margin-bottom:10px}
.line .line_text{display:inline-block;padding:0 6px;font-size:12px;font-weight:bold;color:#B11F21;height:12px;line-height:12px;text-align:center}
.line_left{width:56px;height:1px;background-color:#E5E5E5}
.line_right{flex:1;height:1px;background-color:#E5E5E5}

/* 新闻内容样式 */
.news-content{display:flex;justify-content:space-between;margin-top:24px}
.news-image{width:560px;position:relative;overflow:hidden;border-radius:4px;height:360px}
.news-image img{width:100%;height:360px;object-fit:cover}
.image-overlay{position:absolute;bottom:0;left:0;right:0;height:55px;background-color:rgba(0,0,0,0.6);display:flex;align-items:center;padding:0 26px}
.image-overlay p{color:#FFFFFF;font-size:16px;margin:0;line-height:1.4}

.news-list{width:712px;list-style:none;padding:0;margin:0}
.news-list ul{list-style:none;padding:0;margin:0}
.news-list li{margin-bottom:18px;background-color:#fff;transition:all 0.3s ease;border:1px solid #fff;border-left:6px solid #fff}
.news-list li:hover{border:1px solid #F5ECEC;border-left:6px solid #B70926}
.news-list li:hover .news-date .date-day, .news-list li:hover .news-date .date-year{color:#B11F21}
.news-item{display:flex;padding:10px}
.news-date{flex:0 0 80px;text-align:center;padding-right:14px}
.news-date .date-day{display:block;font-size:18px;color:#333}
.news-date .date-year{display:block;font-size:12px;color:#333;margin-top:5px}
.news-contentbox{flex:1;padding-left:14px;overflow:hidden}
.news-contentbox h3{margin:0 0 10px;font-size:16px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.news-contentbox h3 a{color:#333;text-decoration:none;transition:color 0.3s ease;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.news-contentbox h3 a:hover{color:#96181A}
.news-contentbox p{margin:0;font-size:14px;color:#999;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }

/* 两列布局 */
.two-column{display:flex;justify-content:space-between}
.notice-section, .party-section{flex:0 0 47%}

/* 通知公告列表样式 / 党群工作列表样式 */
.notice-list{list-style:none;padding:0;margin:0}
.notice-list li{transition:all 0.3s ease;border-bottom:1px solid #eee}
.notice-list li:hover{background-color:#fff;transform:translateX(0)}
.notice-list li:hover .notice-date{background-color:#B11F21}
.notice-list li:hover .date-week{background-color:#fff;color:#B11F21}
.notice-list li:hover .notice-date .date-day, .notice-list li:hover .notice-date .date-year{color:#fff}
.notice-item{display:flex;padding:18px 0}
.notice-date{flex:0 0 73px;background-color:#fff;border:1px solid #F5ECEC;color:white;text-align:center;padding:9px 0 6px;border-radius:6px;margin-right:12px;display:flex;flex-direction:column;align-items:center}
.notice-date .date-day{display:block;font-size:20px;line-height:20px;color:#B11F21}
.notice-date .date-year{display:block;font-size:12px;line-height:14px;margin:4px 0 6px;color:#B11F21}
.notice-date .date-week{display:block;font-size:12px;background-color:#B11F21;width:53px;height:20px;line-height:20px;text-align:center;border-radius:10px;color:#fff}
.notice-contentbox{flex:1;overflow:hidden}
.notice-contentbox h3{margin:0 0 10px;font-size:16px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:grid}
.notice-contentbox h3 a{color:#333;text-decoration:none;transition:color 0.3s ease;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notice-contentbox h3 a:hover{color:#96181A}
.notice-contentbox p{margin:0;font-size:14px;color:#999;line-height:1.8;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}

/* 服务导航样式 */
.service-nav{ }
.service-nav h2{font-size:24px;color:#333;margin-bottom:4px;text-align:center}
.service-nav h2 span{margin-right:13px}
.service-items{display:flex;flex-wrap:wrap;justify-content:space-between}
.service-item{flex:0 0 18%;text-align:center;padding:26px 0;text-decoration:none;color:#333;transition:all 0.3s ease;border-radius:4px}
.service-item span{font-size:16px;color:#333}
.service-item:hover{transform:translateY(-5px)}
.service-icon{width:100px;height:100px;margin:0 auto 19px;display:flex;align-items:center;justify-content:center}
.service-icon img{width:100%;height:100%;object-fit:contain;transition:transform 2s ease}
.service-nav.visible .service-icon img{animation:rotateIn 2s ease-in-out}

/* 服务导航图片延迟动画 */
.service-nav.visible .service-item.delay-0 .service-icon img{animation-delay:0s}
.service-nav.visible .service-item.delay-1 .service-icon img{animation-delay:0.2s}
.service-nav.visible .service-item.delay-2 .service-icon img{animation-delay:0.4s}
.service-nav.visible .service-item.delay-3 .service-icon img{animation-delay:0.6s}
.service-nav.visible .service-item.delay-4 .service-icon img{animation-delay:0.8s}
.service-nav.visible .service-item.delay-5 .service-icon img{animation-delay:1.0s}
.service-nav.visible .service-item.delay-6 .service-icon img{animation-delay:1.2s}
.service-nav.visible .service-item.delay-7 .service-icon img{animation-delay:1.4s}
.service-nav.visible .service-item.delay-8 .service-icon img{animation-delay:1.6s}
.service-nav.visible .service-item.delay-9 .service-icon img{animation-delay:1.8s}
@keyframes rotateIn{
    from{transform:rotate(0deg) scale(1);opacity:0}
    to{transform:rotate(360deg) scale(1);opacity:1}
}

/* 联系我们样式 */
.contact-section{background-color:white;padding:50px 0 100px}
.contact-section h2{font-size:24px;color:#333;margin-bottom:4px;text-align:center}
.contact-section h2 span{margin-right:13px}
.contact-info{display:flex;flex-wrap:wrap;width:100%;padding:30px;background-color:#FAF9F6;margin-top:30px;box-shadow:0 0 7px 0 rgba(99,99,99,0.19);border-radius:11px}
.contact-info p{flex:0 0 20%;margin-bottom:10px;position:relative;padding-left:20px;font-size:16px;color:#333;line-height:35px}
.contact-info p span{position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background:#B11F21;border-radius:50%;margin-right:8px}

/* 报修服务平台悬浮窗 */
.repair-float {position:fixed;right:0;top: 80%;transform:translateY(-50%); height: 140px;color:white;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center; cursor:pointer;transition:all 0.3s ease;z-index:1000;background-image:url("./images/repair_order.png");background-size:100% 100%}
.repair-float:hover {transform:translateY(-50%) scale(1.05); }
.repair-float img {width:100%;height:100%;object-fit:contain}
.repair-text {position:absolute;bottom:18px;font-size: 16px;font-weight:400px}
.repair-float a { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }

/* 页脚样式 */
.footer{background-color:#B11F21;color:white;padding:28px 0;text-align:center}
.footer-content h2{font-size:18px;margin-bottom:10px;text-align:center}
.footer-content p{margin:5px 0 0;font-size:16px}
.footer-divider{display:inline-block;width:391px;height:1px;background-color:white;margin:20px 0 5px}
.footer-content p a{color:white;text-decoration:none}
.footer-content p a:hover{text-decoration:underline}

/* 动画效果 */
@keyframes fadeIn{
    from{opacity:1;transform:translateY(50%)}
    to{opacity:1;transform:translateY(0)}
}
.news-section{animation:fadeIn 1s ease-out}

/* 面包屑导航 */
.breadcrumb{margin:20px 0;font-size:14px;color:#666}
.breadcrumb span{margin:0 2px}
.breadcrumb a{color:#666;text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb .current{color:#333;font-weight:bold}

/* 内容包装器 */
.content-wrapper{display:flex;gap:32px;margin-top:40px;margin-bottom:40px}

/* 左侧菜单栏 */
.sidebar{flex:0 0 256px}
.sidebar-title{background-color:#96181A;color:#fff;text-align:center;height:63px;margin-bottom:20px}
.sidebar-title h3{margin:0;font-size:20px;font-weight:400;line-height:63px}
.sidebar-menu{list-style:none;margin:0;padding:0;border:1px solid #96181A}
.sidebar-menu li{line-height:55px;text-align:center}
.sidebar-menu li > a{display:block;color:#333;text-decoration:none;transition:background-color 0.3s ease;font-size:16px;border-left:5px solid #fff;border-bottom:1px solid transparent;border-top:1px solid transparent}
.sidebar-menu li > a:hover{background-color:#F8EEEE;color:#96181A;border-left:5px solid #96181A;border-bottom:1px solid #96181A;border-top:1px solid #96181A}
.sidebar-menu li.active > a{background-color:#F8EEEE;color:#96181A;border-left:5px solid #96181A;border-bottom:1px solid #96181A;border-top:1px solid #96181A}

/* 子菜单 */
.submenu{list-style:none;margin:0;padding:0;background-color:#F8EEEE;padding-left:30px;box-sizing:border-box}
.submenu li{border-bottom:none;height:57px;text-align:center;display:flex;align-items:center}
.submenu li a{font-size:14px;border:none;margin:auto;background-color:#F8EEEE;border:none;width:140px;height:30px;line-height:30px;position:relative;border-radius:16px}
.submenu li a::before{content:'';position:absolute;left:20px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;border-left:6px solid #333}
.submenu li.active a::before{content:'';position:absolute;left:20px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;border-left:6px solid #fff}
.submenu li > a:hover::before{content:'';position:absolute;left:20px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;border-left:6px solid #fff}
.submenu li > a:hover{background-color:#96181A;border:none;width:140px;height:30px;line-height:30px;border-radius:16px;color:#fff}
.submenu li.active a{background-color:#96181A;border:none;width:140px;height:30px;line-height:30px;border-radius:16px;color:#fff}

/* 右边内容区 */
.content-area{flex:1;background-color:#fff; min-height: 500px; min-width: 800px; }
.content-area .section-title h3{color:#96181A;font-weight:400}

/* 内容头部 */
.content-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #96181A;height:35px;line-height:35px;padding:0 15px;box-sizing:border-box;position:relative}
.content-header::after{content:'';position:absolute;bottom:8px;left:0;width:5px;height:18px;background:#96181A;border-radius:3px}
.page-title{font-size:18px;font-weight:bold;color:#333;margin:0}

/* 校园风光 */
.campus-scenery{margin-top:20px;min-height:500px}
.scenery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 60px}
.scenery-item{background-color:white;overflow:hidden;display:block;text-decoration:none;color:#333;transition:transform 0.3s ease; }
.scenery-item:hover{transform:translateY(-5px); }
.scenery-item img{width:100%;height:270px;object-fit:cover}
.scenery-title{margin:0;padding:20px;text-align:center;font-size:16px;color:#333;background-color:white}

/* 简介 */
.college-intro{margin-top:20px;min-height:500px}
.intro-title{font-size:20px;font-weight:bold;color:#333;margin-bottom:10px;width:100%;text-align:center}
.intro-meta{display:flex;justify-content:center;gap:5px;margin-bottom:30px;font-size:16px;color:#666;width:100%;text-align:center}
.intro-content{line-height:28px;font-size:14px;color:#333;padding-top:30px;border-top:1px dashed #ccc; overflow: hidden; }
.intro-content * { font-family: initial !important; }
.intro-content table { width: 100%; }
.scenery-image{margin:20px 0;text-align:center}
.scenery-image img{max-width:50%;height:auto;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,0.1)}
.image-caption{margin-top:18px;font-size:16px;text-align:center}
.intro-content p{margin-bottom:10px;text-indent:2em}
.intro-content table p{margin:0 !important;text-indent:0 !important; }
.intro-content p:last-child{margin-bottom:0}
.update-date{width:100%;text-align:right;margin-top:20px}

/* 机构设置 */
.institution-settings{width: 100%;margin-top:20px;min-height:500px}
.institution-section{display:flex;margin-bottom:30px;border-radius:4px;overflow:hidden}
.management-section{background-color:#F3EBE6;padding:20px;border-radius:10px}
.service-section{background-color:#F3E6E6;padding:20px;border-radius:10px}
.section-label{width:47px;color:#fff;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;font-size:16px;margin-right:20px;border-radius:10px}
.department-grid {flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.department-grid a { text-decoration: none; }
.department-item {text-align:center;border-radius:10px;color:white;font-size:16px;height:48px;line-height:48px;position:relative;border:1px solid #E5E5E5;color:#333333;text-align:left;padding:0 10px 0 20px}
.department-item.management, .management-section .section-label{background-color:#8B4513}
.department-item.service, .service-section .section-label{background-color:#96181A}
.department-item img{width:14px;height:14px;position:absolute;bottom:10px;right:10px}

/* 党群工作列表 */
.result-list{margin-bottom:30px;margin-top:38px}
.research-list{list-style:none;margin:0;padding:0}
.research-list li{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f0f0f0}
.research-list li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.list-item{display:flex;align-items:center;gap:10px}
.dot{width:6px;height:6px;margin-right:15px;background-color:#96181A;border-radius:50%}
.list-item a{flex:1;color:#333;text-decoration:none;font-size:16px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:800px}
.list-item a:hover{color:#96181A;text-decoration:underline}
.list-item .date{flex:0 0 100px;color:#999;font-size:16px;text-align:right}

/* 滚动动画效果 */
.animate-on-scroll{opacity:0;transform:translateY(0px);transition:opacity 0s ease,transform 2s ease}
.animate-on-scroll.visible{opacity:1;transform:translateY(0)}

/* 从左侧进入的动画 */
.animate-on-scroll.from-left{transform:translateX(-40%) translateY(0px)}
.animate-on-scroll.from-left.visible{transform:translateX(0) translateY(0)}

/* 从右侧进入的动画 */
.animate-on-scroll.from-right{transform:translateX(40%) translateY(0px)}
.animate-on-scroll.from-right.visible{transform:translateX(0) translateY(0)}

/* 分页 */
.pagination{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:40px}
.pagination a{display:inline-block;padding:6px 12px;border:1px solid #ddd;border-radius:4px;color:#333;text-decoration:none;font-size:14px;transition:all 0.3s ease}
.pagination a:hover{background-color:#f0f0f0;border-color:#B11F21}
.pagination a.active{background-color:#B11F21;color:#fff;border-color:#B11F21}
.pagination a.next, .pagination a.prev{padding:6px 15px}