/* 初始化样式开始 */
body {
  min-width: 100vw;
  margin: 0;
  color: #333;
  background-color: #f5f5f5;
}

body img {
  user-select: none;
}

ul,
ol,
li {
  margin: 1vw;
  padding: 0;
  list-style: none;
}

p,
dl,
dd {
  margin: 0;
}

h1,
h2,
h3,
h4 {
  margin: 0;
  font-size: 100%;
}

img {
  border: none;
}

a {
  color: #333;
  text-decoration: none;
}

a:active,
a:hover {
  outline: none;
}

a:hover {
  text-decoration: underline;
}

table {
  width: initial;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  border-spacing: 0;
}

th,
td {
  padding: 2.133vw;
  text-align: center;
  box-sizing: border-box;
  border: 0.267vw solid #eee;
}

button,
input {
  outline: none;
  box-sizing: border-box;
  padding: 0;
  border: none;
  background: none;
}

/* 初始化样式结束 */


/* 头部开始 */

.header img {
    display: block;
    height: 10.5vw;
    margin-left: -5vw;
}

.header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #7a2645;
    background-size: 100% 100%;
    padding: 3.333vw;
    overflow: hidden;
    box-sizing: border-box;
}
.header h1,.header .logo{
    margin: auto;
}
.header-btn img{
    width: 4.533vw;
    height: 4.533vw;
}
.header-btn {
    display: flex;
    width: auto;
    justify-content: flex-end;
    align-items: center;
    gap: 2.4vw;
}

.header-nav{
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    padding: 2.4vw 0 2.667vw 3.467vw;
    border-bottom: 0.267vw solid #DEDEDE;
}
.header-nav .swiper-wrapper{
    align-items: center;
}
.header-nav .swiper-slide{
    font-size: 3.467vw;
    color: #333;
}
.header-nav .light-font{
    font-size: 4.267vw;
    color: #ba2f60;
    font-weight: bold;
}
/* 头部结束 */

/* 底部开始 */
.footer-center{
    width: 100%;
    box-sizing: border-box;
    padding: 4vw 3.467vw 0;
}
.footer-codebox{
    width: 100%;
    background: #FFFFFF;
    border-radius: 1.333vw;
    box-sizing: border-box;
    padding: 4vw 8vw 0vw;
}
.footer-codebox .swiper-wrapper{
    min-height: 35vw;
}
.footer-codebox .swiper-codebox-item{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.footer-codebox .swiper-codebox-item .swiper-codebox-pic{
    width: 28vw;
    height: 28vw;
    background: #ba2f60;
    border-radius: 0;
    box-sizing: border-box;
    position: relative;
    box-shadow: inset 0 1px 3px rgba(186, 47, 96, 0.08), 0 2px 8px rgba(186, 47, 96, 0.06);
}
.footer-codebox .swiper-codebox-item .swiper-codebox-pic img{
    width: 26.8vw;
    height: 26.8vw;
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.footer-codebox .swiper-codebox-item .swiper-codebox-infos{
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-left: 10px;
}
.footer-codebox .swiper-codebox-item .swiper-codebox-infos span:first-child{
    width: 38.4vw;
    height: 8.533vw;
    background: url('../images/bg_footer_code.png') no-repeat;
    background-size: 100% 100%;
    font-size: 3.467vw;
    color: #FFFFFF;
    text-align: center;
    line-height: 8.533vw;
}
.footer-codebox .swiper-codebox-item .swiper-codebox-infos span:last-child{
    font-size: 3.2vw;
    color: #333333;
    margin-top: 2.933vw;
    text-align: center;
}
.footer-codebox .swiper-pagination-bullet{
    width: 2.4vw;
    height: 1.6vw;
    background: #888;
    border-radius: 0.8vw;
}
.footer-codebox .swiper-pagination-bullet-active{
    width: 4.267vw;
    height: 1.6vw;
    background: #ba2f60;
    border-radius: 0.8vw;
}
.foot-copyright{
    width: 100%;
    background: #FFFFFF;
    border-radius: 1.333vw;
    margin: 4vw auto 24vw;
    box-sizing: border-box;
    padding: 3.5vw 6vw;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.foot-copyright small{
    font-size: 2.667vw;
    color: #333;
    text-align: center;
}
.foot-copyright small.gwab{
    display: flex;
    align-items: baseline;
}
.foot-copyright small.gwab a{
    color: #999;
}
.foot-copyright small.gwab img{
    width: 4.8vw;
    height: 4.8vw;
}

.footer-nav {
    width: 100%;
    background-color: #fff;
    position: fixed;
    bottom: 0;
    z-index: 999;
    display: flex;
    justify-content: space-around;
    align-items: center;
    height: 18.667vw;
}
.footer-nav img {
    width: 6.4vw;
}
.footer-nav a {
    width: 13.333vw;
    font-size: 2.933vw;
    color: #171717;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
}
.footer-nav a span {
    margin-top: 1.333vw;
}
/* 底部结束 */


/* 面包屑开始 */
.crumb {
  width: 100%;
  margin: 0 auto;
  height: 9.333vw;
  background: #FFFFFF;
  display: flex;
  align-items: center;
  overflow: hidden;
  white-space: nowrap;
  font-size: 3.2vw;
  color: #666;
  box-sizing: border-box;
  padding: 0 3.467vw;
}

.crumb a {
  color: inherit;
}

.crumb a,
.crumb span {
  flex-shrink: 0;
}

.crumb a:last-of-type {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.crumb span:last-child {
  flex-shrink: initial;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/*  面包屑结束 */

/* 侧边两个悬浮按钮 开始 */
.footer-sideBox{
  position: fixed;
  right: 2.667vw;
  top: 63%;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 13.333vw;
  z-index: 999;
}
.footer-sideBox a{
  margin-bottom: 4.267vw;
}
.footer-sideBox a img{
  width: 13.333vw;
  height: 13.333vw;
}
/* 侧边两个悬浮按钮 结束 */

/* 隐私协议 开始*/
.privacy {
  z-index: 100;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #00000020;
}

.privacy_centainer {
    width: 95vw;
    height: 70%;
    color: #343434;
    background-color: #fff;
    border-radius: 1.6vw;
    box-shadow: 0 0 4.267vw -1.067vw #00000030;
    box-sizing: border-box;
    padding: 4vw 5.333vw 0vw;
}

.privacy_title {
  font-size: 6.4vw;
  font-weight: bold;
  text-align: center;
}

.privacy_content {
  height: 76%;
  overflow: auto;
  box-sizing: border-box;
  padding: 0 5.333vw;
  margin: 4vw 0;
}

.privacy_content p {
  font-size: 3.733vw;
  margin: 4.267vw 0;
  pointer-events: none;
}

.privacy_content::-webkit-scrollbar {
  width: 1.333vw;
}

.privacy_content::-webkit-scrollbar-thumb {
  border-radius: 1.333vw;
  background: rgba(0, 0, 0, 0.4);
}

.privacy_content::-webkit-scrollbar-track {
  background-color: #e2e2e2;
  border-radius: 1.333vw;
}

.privacy_centainer button {
  cursor: pointer;
  display: block;
  padding: 0 5.333vw;
  height: 10.667vw;
  border: 0.267vw solid #eee;
  margin: 0 auto;
  font-size: 4vw;
  border-radius: 0.8vw;
}

.privacy_centainer button:hover {
  background-color: #eee;
}

.privacy_btn {
  width: 100%;
  height: 12vw;
  line-height: 12vw;
  font-size: 4vw;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background-color: #ba2f60;
  border-radius: 1.067vw;
  margin-top: 5.333vw;
}

/* 招生院校弹窗样式 */
.mobile-school-modal-mask {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1000001; /* 确保显示在顶部筛选器 (100,000) 之上 */
    padding: 5.333vw;
    box-sizing: border-box;
}

.mobile-school-modal-mask.is-visible {
    display: flex !important;
}

.mobile-school-modal-card {
    width: 80%;
    background: #ffffff;
    border-radius: 2.133vw;
    padding: 6.667vw 5.333vw;
    box-shadow: 0 2.667vw 8vw rgba(0, 0, 0, 0.3);
    position: relative;
    max-height: 90vh;
    overflow-y: auto;
}

.mobile-school-modal-close {
    position: absolute;
    top: 2.667vw;
    right: 4vw;
    border: none;
    background: transparent;
    font-size: 8vw;
    color: #999999;
    cursor: pointer;
    line-height: 1;
}

.mobile-school-modal-header {
    text-align: center;
    margin-bottom: 6.667vw;
}

.mobile-school-modal-title {
    font-size: 5.333vw;
    font-weight: bold;
    color: #333333;
}

.mobile-school-modal-body {
    display: flex;
    flex-direction: column;
    gap: 4vw;
    margin-bottom: 6.667vw;
}

.mobile-school-modal-btn {
    width: 80%;
    margin: 0 auto;
    height: 12vw;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.333vw;
    font-size: 4.533vw;
    text-decoration: none !important;
    border: 1px solid #ba2f60;
    color: #ba2f60;
    background: #ffffff;
    transition: all 0.2s ease;
    font-weight: bold;
}

.mobile-school-modal-btn:active {
    background: #ba2f60;
    color: #ffffff;
}

.mobile-school-modal-footer {
    border-top: 1px solid #eeeeee;
    padding-top: 5.333vw;
    padding-left: 1.5vw;
}

.mobile-exam-intro-title {
    font-weight: bold;
    color: #333333;
    margin-bottom: 2.667vw;
    font-size: 4vw;
}

.mobile-exam-intro-list {
    font-size: 3.467vw;
    color: #666666;
    line-height: 1.6;
}

.mobile-exam-intro-item {
    margin-bottom: 2.667vw;
}

.mobile-exam-intro-item strong {
    color: #ba2f60;
}

.mobile-exam-remark {
    margin-top: 2.667vw;
    color: #f36c21;
    font-size: 3.2vw;
}


.nei {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 4vw 3.467vw 3.467vw;
    box-sizing: border-box;
}

.nei .fanhui{
    width: 8vw;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nei .fanhui a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.nei .fanhui img{
    width: 4.533vw;
    height: 4.533vw;
    vertical-align: middle;
    text-align: center;
}
/* 搜索开始 */
.nei form {
    flex: 1;
    margin-left: 2vw;
}
.nei .search_from {
    width: 100%;
    height: 9.333vw;
    background: #FFFFFF;
    border: 0.267vw solid #D8D8D8;
    border-radius: 4.8vw;
    box-sizing: border-box;
    padding-left:4vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .nei .search_from label {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .nei .search_content {
    flex: 1;
    font-size: 3.733vw;
    height: 100%;
    padding: 0 2vw 0 3.733vw;
    border: none;
    outline: none;
    box-sizing: border-box;
  }
  
  .nei .search_content:focus {
    background-color: transparent;
  }
  
  .nei .search_content::placeholder{
      color: #B1B1B1;
  }
  .nei .search_from button {
    width: 21.333vw;
    height: 100%;
    flex-shrink: 0;
    cursor: pointer;
    font-size: 3.467vw;
    color: #ba2f60;
    background: none;
    padding-left: 2vw;
    border: none;
    display: flex;
    align-items: center;
    gap: 1.5vw;
   }
  .nei .search_from button::before {
    content: '';
    width: 3.467vw;
    height: 3.467vw;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ba2f60' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") no-repeat;
    background-size: contain;
    flex-shrink: 0;
   }
  
  .nei .search_from button:hover {
    background-color: #f0f0f0;
  }
  
  .nei .search_from button:active {
    background-color: #e0e0e0;
  }
  
  .nei .search_type {
    width: 12vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
  }
  
  .nei .search_type ul::before{
    content: '';
    width: 0;
    height: 0;
    border-right: 1.6vw solid transparent;
    border-left: 1.6vw solid transparent;
    border-bottom: 2.4vw solid white;
    position: absolute;
    top: -2.4vw;
    right: 6.133vw;
  }
  .nei .search_type ul {
    flex-shrink: 0;
    width: 16vw;
    height: 23.467vw;
    display: none;
    background: #fff;
    position: relative;
    right: -1.6vw;
    top: -0.4vw;
    z-index: 9;
    box-sizing: border-box;
    padding: 2.4vw 0;
   filter: drop-shadow(0vw 0vw 1.333vw rgba(0, 0, 0, 0.1));
  }
  
  .nei .search_type ul li {
    font-size: 3.2vw;
    line-height: 6.933vw;
    text-align: center;
  }
  
  .nei .search_type ul li:hover {
    color: #fff;
    background-color: #ba2f60;
  }
  
  .nei .search_type_value {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    font-size: 3.2vw;
    color: #333333;
    cursor: default;
    background: url(../images/icon_down.png) no-repeat;
    background-size: 1.867vw 1.067vw;
    background-position: 8.8vw 4vw;
  }
  
  .nei .search_type_value:focus {
    color: #ba2f60;
  }
/* 搜索结束 */

/* 统一搜索框样式 */
.search-box {
    width: 80%;
    height: 8.8vw;
    background: #FFFFFF;
    border: 0.2vw solid #e0e0e0;
    border-radius: 4vw;
    box-sizing: border-box;
    padding-left: 3vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    box-shadow: 0 0.8vw 2vw rgba(0, 0, 0, 0.06);
}

.search-input-container {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.search-box input {
    flex: 1;
    font-size: 3.733vw;
    height: 100%;
    padding: 0 4vw 0 2vw;
    border: none;
    outline: none;
    transition: all 0.3s ease;
}

.search-box input::placeholder {
    color: #B1B1B1;
}

.search-icon {
    display: none;
}

.search-btn {
    width: 18vw;
    height: 100%;
    flex-shrink: 0;
    cursor: pointer;
    font-size: 3.2vw;
    color: #ba2f60;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ba2f60' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16' y2='16'%3E%3C/line%3E%3C/svg%3E") no-repeat;
    background-size: 3.467vw 3.467vw;
    background-position: 2.4vw center;
    padding-left: 3.8vw;
    border: none;
    border-radius: 0 4vw 4vw 0;
    transition: background-color 0.3s ease;
    border-left: 0.2vw solid #eee;
}

.search-btn:hover {
    background-color: #f0f0f0;
}
.search-btn:active { background-color: #e0e0e0; }

.search-results {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 2vw 2vw;
    max-height: 73vw;
    overflow-y: auto;
    z-index: 1000;
    display: none;
    box-shadow: 0 0.5vw 2vw rgba(0, 0, 0, 0.1);
}

.search-result-item {
    padding: 2.5vw 3.5vw;
    border-bottom: 1px solid #f0f0f0;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.search-result-item:hover {
    background-color: #f8f9fa;
}

.search-result-item:last-child {
    border-bottom: none;
}

.search-result-title {
    font-weight: 500;
    color: #333;
    margin-bottom: 0.5vw;
}

.search-result-info {
    font-size: 12px;
    color: #666;
}

.search-result-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5vw;
    margin-top: 0.5vw;
    font-size: 12px;
    color: #666;
}

.search-result-tag {
    background: #f6f6f6;
    border-radius: 2vw;
    padding: 0.3vw 1.4vw;
    line-height: 1.6;
}

.search-highlight {
    background-color: #fff3cd;
    color: #856404;
    padding: 1px 2px;
    border-radius: 2px;
}

.highlight-section {
    animation: highlight-fade 3s ease-in-out;
}

.search-highlight-row td {
    background-color: #fff7e6;
}

@keyframes highlight-fade {
    0% {
        background-color: #f5f5f5;
    }

    50% {
        background-color: #f5f5f5;
    }

    100% {
        background-color: transparent;
    }
}

.search-results.show {
    display: block;
}

.search-container {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 2vw 0;
}


