:root {
    --c-ffffff: #fff;
    --c-000000: #000;
    --c-333333: #333;
    --c-508cee: #508cee;
    --c-f5f7fb: #f5f7fb;
    --c-e5e6f2: #e5e6f2;
    --c-9a9ead: #9a9ead;
    --c-808595: #808595;
    --c-fd4331: #fd4331;
    --c-05aa3b: #05aa3b;
    --c-fb2f3b: #fb2f3b;
    --c-1bc07d: #1bc07d;
    --b-ffffff: #fff;
}

:root {
    --ft-font-size12: 0.24rem;
    --ft-font-family: PingFangSC-Regular;
}

html *:not(body)::-webkit-scrollbar {
    height: 0 !important;
    width: 0 !important;
}

html *:not(body) {
    -ms-overflow-style: none;
    overflow: -moz-scrollbars-none;
}

body {
    font-family: PingFang SC, Microsoft YaHei, Arial, helvetica neue;
    font-size: 0.28rem;
    background-color: var(--c-ffffff);
    color: var(--c-333333);
}

.sft-after {
    position: relative;
}

.sft-after:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    transform: scaleY(0.5);
    background-color: var(--c-e5e6f2);
}

.sft-active-after {
    position: relative;
}

.sft-active-after:after {
    content: "";
    position: absolute;
    bottom: 2px;
    left: 20%;
    width: 60%;
    height: 3px;
    background-color: var(--c-508cee);
    z-index: 999;
}

:root {
    --page-max-width: 1240px;
    --root-font-size-mobile: 13.3333333333vw;
    --root-font-size-desktop: 60px;
    --root-font-size-breakpoint: 450px;
}

* {
    margin: 0;
    padding: 0;
}

html {
    font-size: 13.3333333333vw;
}

body {
    max-width: var(--page-max-width);
    margin: 0 auto;
}

@media (min-width: 450px) {
    html {
        font-size: 60px;
    }
}

.-flex {
    display: flex;
    display: -webkit-flex;
}

.-fdc {
    flex-direction: column;
}

.-fjs {
    justify-content: flex-start;
}
.-fas {
    align-items: flex-start;
}
.-fae {
    align-items: flex-end;
}
.-fac {
    align-items: center;
}
.-fjc {
    justify-content: center;
}
.-fgrow {
    flex-grow: 1;
}
.-fshrik {
    flex-shrink: 0;
}

.p-r {
    position: relative;
}
.pd {
    padding-bottom: 0.28rem;
}

.th-h {
    color: var(--c-9a9ead);
    font-size: 0.24rem;
}

.tt-sm {
    font-size: 0.24rem;
    line-height: 0.24rem;
}
.tt-gray {
    color: var(--c-9a9ead);
}

.tt-m {
    font-family: PingFangSC-Medium;
    font-weight: 700;
}

.tt-b {
    font-size: 0.34rem;
}

.tt-r {
    text-align: right;
}

.tt-c {
    text-align: center;
}

.p-title {
    position: relative;
    font-size: 0.4rem;
    height: 1rem;
    color: var(--c-333333);
}

.p-title-rect {
    background-color: var(--c-508cee);
    width: 0.1rem;
    height: 0.4rem;
    border-radius: 0px 2.5px 2.5px 0px;
    margin-right: 0.24rem;
}

/* loading */
.c-loading {
    position: fixed;
    top: 50%;
    width: 100%;
    height: 50vh;
}

.c-loading-ul {
    position: relative;
    margin: auto;
    width: 0.12rem;
    height: 0.12rem;
}

/* header start */
.hhead {
    position: fixed;
    top: 0;
    width: 100%;
    max-width: var(--page-max-width);
    height: 1rem;
    background-color: var(--b-ffffff);
    z-index: 99999;
}

.hhome {
    position: absolute;
    left: 0.1rem;
    z-index: 10;
    background-image: url(//n.sinaimg.cn/finance/ad5a274c/20251110/hhome.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.44rem;
    height: 0.44rem;
    margin-left: 0.3rem;
}

.hback {
    position: absolute;
    left: 0.1rem;
    z-index: 10;
    background-image: url(//n.sinaimg.cn/finance/2023/common/icon/back_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.32rem;
    height: 0.32rem;
    margin-left: 0.3rem;
}

.htext {
    font-size: 0.32rem;
    width: 100%;
    text-align: center;
}

.haleft {
    position: relative;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    height: 0.88rem;
    width: 0.6rem;
    justify-content: center;
}

.haright {
    position: relative;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    height: 0.88rem;
    width: 0.6rem;
}

.haicon {
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.24rem;
    height: 0.2rem;
}

.haiconl {
    background-image: url(//n.sinaimg.cn/finance/2022/cncw/cfg/l1.png);
}

.haiconr {
    background-image: url(//n.sinaimg.cn/finance/2022/cncw/cfg/r1.png);
}

.hshare {
    position: absolute;
    right: 0;
    z-index: 10;
    margin-right: 0.32rem;
    height: 1rem;
}

.hshare-icon {
    background-image: url(https://n.sinaimg.cn/finance/2023/common/icon/share_gray.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 0.44rem;
    height: 0.44rem;
}

/* card */
.card {
    margin: 0 0.32rem;
}
.card .title {
    color: var(--c-333333);
    font-size: 0.48rem;
    line-height: 0.48rem;
    padding-top: 0.54rem;
}
.card .subtitle {
    color: var(--c-808595);
    font-size: 0.24rem;
    line-height: 0.4rem;
    text-align: justify;
    padding-top: 0.32rem;
}

.b-bg {
    background-image: url(https://n.sinaimg.cn/finance/2026/warforym/hdbg.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.b-bg-dark {
    background-image: url(https://n.sinaimg.cn/finance/2026/warforym/hdbg-dark.png);
    background-size: contain;
    background-repeat: no-repeat;
}

/* box */
.box {
    background-image: linear-gradient(269deg, #e99e6e 0%, #eb5a56 100%);
    /* linear-gradient(to right, var(--c-fb2f3b), #ffa791); */
    color: #ffffff;
    padding: 0.24rem;
    padding-bottom: 0.4rem;
    border-radius: 0.06rem;
    flex: 1;
    font-size: 0.28rem;
}
.box .half {
    width: 50%;
}
.box .halfline {
    border-left: 0.5px solid #ffffff;
}
.box-paddingb {
    padding-bottom: 0.4rem;
}

/* article */
.article {
    overflow: hidden;
}

/* .article:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #e5e5e5;
} */
.article:last-child:after {
    height: 0;
}
.article-inner {
    position: relative;
    /* margin: .3rem 0; */
    padding-left: 0.6rem;
    padding-right: 0.3rem;
}
.article-inner::before {
    position: absolute;
    content: "";
    background: #508cee;
    width: 0.12rem;
    height: 0.12rem;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    z-index: 2;
    left: 0.2rem;
    border: solid 0.06rem var(--c-ffffff);
}

.article-inner::after {
    position: absolute;
    content: "";
    border-right: solid 1px var(--c-e5e6f2);
    width: 0;
    height: 100%;
    left: 0.31rem;
    top: 0;
}

.article-inner:first-child::before {
    background: #eb3f2e;
}
.article-pic {
    flex-shrink: 0;
    display: block;
    background-color: #e9e9e9;
    position: relative;
    margin-left: 0.24rem;
    width: 1.82rem;
    height: 1.2rem;
    border-radius: 4px;
    overflow: hidden;
    margin-top: 0.16rem;
}

.article-img {
    display: block;
    width: 100%;
    height: 100%;
}
.article-title {
    padding-top: 0.16rem;
    padding-bottom: 0.36rem;
    color: var(--c-333333);
    font-size: 0.32rem;
    min-height: 0.9rem;
    word-break: break-all;
    word-wrap: break-word;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-family: PingFangSC-Medium;
}
.article-footer {
    position: relative;
    display: flex;
    height: 0.3rem;
    line-height: 0.3rem;
    font-size: 12px;
    color: #9a9ead;
}

/* gap */
.gap {
    position: relative;
    background-color: var(--c-f5f7fb);
    height: 0.2rem;
}

/* table */
.tl {
    position: relative;
    padding: 0.32rem 0;
}
.tl-title {
    font-family: PingFangSC-Medium;
    font-size: 16px;
    color: var(--c-333333);
    letter-spacing: 0;
    line-height: 22px;
    font-weight: 500;
}
.tl-mid {
    padding-top: 0.16rem;
    padding-bottom: 0.24rem;
}
.tl-foot {
    font-size: 0.24rem;
}
.tl-flag {
    color: var(--c-333333);
}
.tl-in {
    font-size: 0.24rem;
    padding: 0.04rem 0.28rem;
    background-color: rgba(235, 90, 86, 0.1);
    color: #eb5a56;
    border-radius: 0.26rem;
}
.tl-out {
    font-size: 0.24rem;
    padding: 0.04rem 0.28rem;
    background-color: rgba(105, 149, 241, 0.1);
    color: #6995f1;
    border-radius: 0.26rem;
}
.tl-more {
    font-size: 0.3rem;
    height: 1rem;
    color: var(--c-508cee);
}
.tl-arrow {
    position: relative;
    display: block;
    background-image: url(//n.sinaimg.cn/finance/2023/hqcenter/worldopen.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.4rem;
    height: 0.4rem;
    margin-left: 0.02rem;
}

/* toggle */
.toggle {
    font-size: 0.24rem;
    color: var(--c-808595);
    position: relative;
    background-color: var(--c-f5f7fb);
    height: 0.56rem;
    width: 2.2rem;
    border-radius: 0.28rem;
}
.toggle-item {
    width: 1.04rem;
}
.toggle-active {
    background-color: var(--b-ffffff);
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.04);
    border-radius: 0.26rem;
    color: var(--c-333333);
    height: 0.44rem;
}

/* cut footer */
.cut-footer {
    position: absolute;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: contain;
    width: 100vw;
    height: 1rem;
}

.clus-title {
    font-family: PingFangSC-Medium;
    font-size: 0.28rem;
    color: var(--c-333333);
    font-weight: 500;
    padding-bottom: 0.12rem;
}

.clus-time {
    color: var(--c-9a9ead);
    font-size: 0.24rem;
    line-height: 0.24rem;
    padding-bottom: 0.2rem;
    padding-left: 0.3rem;
}

.find-wrap {
    background: var(--c-f5f7fb);
    padding: 0.24rem;
    border-radius: 4px;
    margin-bottom: 0.32rem;
}

.find-title {
    font-family: PingFangSC-Medium;
    font-size: 0.28rem;
    color: var(--c-333333);
    font-weight: 500;
    padding-bottom: 0.12rem;
}


/* 图片播放器样式 */
.image-player {
    width: 100%;
    background: var(--c-ffffff);
    /* border-radius: .32rem; */
    overflow: hidden;
}

/* 图片框 */
.image-player-frame {
    background: var(--c-f5f7fb);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    padding: .2rem;
}

.image-player-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: opacity 0.3s ease;
}

.image-player-placeholder {
    color: #999;
    font-size: .32rem;
}

.image-player-counter {
    position: absolute;
    top: .24rem;
    right: .24rem;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    padding: .12rem .24rem;
    border-radius: .4rem;
    font-size: .24rem;
    font-weight: 500;
    backdrop-filter: blur(.2rem);
}

.image-player-counter .current {
    color: #508cee;
    font-weight: 600;
}

/* 控制区域 - 左右布局 */
.image-player-controls {
    display: flex;
    align-items: center;
    gap: .32rem;
    padding: .4rem .48rem;
    background: var(--c-ffffff);
}

/* 播放按钮 */
.image-player-btn {
    width: .8rem;
    height: .8rem;
    border: none;
    border-radius: 50%;
    background: #508cee;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 .08rem .3rem rgba(80, 140, 238, 0.4);
    flex-shrink: 0;
}

.image-player-btn:hover {
    background: #4279e0;
    box-shadow: 0 .12rem .4rem rgba(80, 140, 238, 0.6);
    transform: scale(1.05);
}

.image-player-btn:active {
    transform: scale(0.95);
}

.image-player-btn svg {
    display: block;
}

/* 时间轴包装器 */
.image-player-timeline-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: .16rem;
}

/* 时间轴 */
.image-player-timeline {
    width: 100%;
    height: .12rem;
    background: var(--c-f5f7fb);
    border-radius: .06rem;
    position: relative;
    cursor: pointer;
    transition: background 0.3s ease;
}

.image-player-timeline:hover {
    background: var(--c-f5f7fb);
}

/* 时间轴进度条 */
.image-player-timeline-progress {
    height: 100%;
    background: #508cee;
    border-radius: .08rem;
    position: relative;
    transition: width 0.1s linear;
}

/* 时间轴拖动滑块 */
.image-player-timeline-thumb {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: .12rem;
    height: .12rem;
    background: var(--c-ffffff);
    border: .04rem solid #508cee;
    border-radius: 50%;
    cursor: grab;
    transition: transform 0.2s ease;
    z-index: 1;
}

.image-player-timeline-thumb:hover {
    transform: translate(-50%, -50%) scale(1.3);
}

.image-player-timeline-thumb:active {
    cursor: grabbing;
}

/* 时间显示区域 - 包含首、当前、尾时间 */
.image-player-time {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .26rem;
    color: var(--c-9a9ead);
    font-weight: 500;
}

.image-player-time-label {
    color: var(--c-9a9ead);
    font-size: .24rem;
}

.image-player-time-current {
    color: var(--c-9a9ead);
    font-size: .28rem;
    font-weight: 500;
}