/* =========================================================
   全站基础 + PC 响应式补丁
   ========================================================= */

html,
body {
    margin: 0;
    padding: 0;
}

body {
    background-color: #ffffff;
}

.ui-pc {
    overflow-x: hidden;
    min-height: 100vh;
}

.ui-pc .footer_nav a,
.ui-pc .footer_nav a:visited {
    color: #999999;
}

.ui-pc .footer_nav a:hover {
    color: #e73547;
}

/* PC 容器在 1920 设计稿基础上等比缩放，宽屏时限制最大宽度 */
@media (min-width: 768px) {
    .ui-pc .container,
    .ui-pc .footer_tip_container {
        min-width: 0;
        max-width: 1920px;
    }

    .ui-pc .nav_placeholder {
        min-width: 0;
    }

    .ui-pc #nav {
        min-width: 0;
    }
}

/* 平板及小屏：容器留白略收，避免两侧过窄 */
@media (min-width: 768px) and (max-width: 1199px) {
    .ui-pc .container,
    .ui-pc .footer_tip_container {
        width: 94%;
    }
}

/* 平板：导航项间距缩小 */
@media (min-width: 768px) and (max-width: 1199px) {
    .ui-pc .nav {
        margin-left: .6rem;
        font-size: .26rem;
    }

    .ui-pc .nav_t {
        margin-right: .5rem;
    }
}

/* ---------- PJAX 进度条 ---------- */

.pjax-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 2px;
    width: 0;
    background: #e43743;
    z-index: 9999;
    opacity: 0;
    transition: width .35s ease, opacity .2s ease;
    pointer-events: none;
}

.pjax-progress.is-loading {
    opacity: 1;
}

.pjax-progress.is-done {
    width: 100% !important;
    opacity: 0;
    transition: width .2s ease, opacity .3s ease .1s;
}

/* ---------- 文字内容里的媒体链接 ---------- */

.ui-pc .cont_txt img[data-href],
.ui-pc .cont_txt [data-w-e-type="video"][data-href],
.ui-mobile .cont_box img[data-href],
.ui-mobile .cont_box [data-w-e-type="video"][data-href] {
    cursor: pointer;
}

/* 手机端禁用横向滚动条 */
@media (max-width: 767px) {
    body {
        overflow-x: hidden;
    }
}


.ui-pc .cate_txt {
    border-bottom: .0384rem solid transparent;
    transition: color .25s ease, border-color .25s ease;
}

.ui-mobile .tab_title_box a {
    transition: border-color .25s ease, opacity .25s ease;
}

.ui-pc #banner_img,
.ui-pc #banner_title,
.ui-pc #banner_txt {
    will-change: opacity, transform;
}


/* 旧站标题/摘要用 div 承载，改成 a 后保持原文字颜色 */
.ui-pc .news_title a,
.ui-pc .news_desc a,
.ui-pc .news_href a,
.ui-pc .list a,
.ui-pc .job_list a,
.ui-pc .back_box a,
.ui-pc .footer_nav a {
    color: inherit;
}

.ui-pc .news_href a {
    display: inline-flex;
    align-items: center;
}

.ui-pc .news_thumb {
    display: block;
}

/* 职位列表/详情右侧「最新职位」：标题完整换行显示，不再截断 */
.ui-pc .content_right .list_txt {
    width: auto;
    max-height: none;
    overflow: visible;
    float: none;
    display: inline;
    line-height: 1.45;
}

.ui-pc .content_right .list_tip {
    float: none;
    display: inline-block;
    vertical-align: top;
    margin-left: .08rem;
}

.ui-pc .content_right .list .clear {
    display: none;
}


/* ---------- PJAX 页面切换动画 ---------- */

.pjax-view.pjax-leave {
    opacity: 0;
    transition: opacity .15s ease;
    pointer-events: none;
}

.pjax-view.pjax-enter {
    animation: pjaxEnter .42s ease both;
}

@keyframes pjaxEnter {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pjax-view.pjax-leave {
        transition: none;
    }

    .pjax-view.pjax-enter {
        animation: none;
    }
}

/* 图片加载失败时，PC 端 alt 文字也保持小于标题 */
.ui-pc img {
    font-size: .18rem;
    line-height: 1.6;
    font-weight: normal;
    color: #999999;
    text-align: center;
}

/* 首页团队背景文字与按钮水平居中 */
.ui-pc .team_txt,
.ui-pc .team_btn {
    left: 50%;
    transform: translateX(-50%);
}
