/**
 * 公共
 */
@font-face {
    font-family: "TCloudNumber";
    src: url("../../fonts/TCloudNumber-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.numberFont {
    font-family: "TCloudNumber", Arial, sans-serif;
    font-variant-numeric: tabular-nums;
}

.personnal .numberFont,
.personnalDonation .numberFont,
.personnalProfile .numberFont,
.myexam .numberFont,
.safeList .numberFont {
    font-family: "TCloudNumber", Arial, sans-serif;
    font-variant-numeric: tabular-nums;
}

html,
body {
    height: 100%;
}

input {
    border: 1px solid #333;
    background: #f7f7f7;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

textarea {}

input,
textarea,
button,
video {
    outline: none;
    /* -webkit-appearance: none; */
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

input:focus,
textarea:focus {
    outline: none;
}

body {
    font-family: Helvetica;
    max-width: 750px;
    margin: auto;
}

a {
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    -webkit-user-select: none;
    -moz-user-focus: none;
    -moz-user-select: none;
}

[v-cloak] {
    display: none;
}

.icon {
    width: 1.2rem;
    height: 1.2rem;
    vertical-align: -0.15em;
    fill: currentColor;
    overflow: hidden;
    color: #111;
    stroke: currentColor;
}

/* 通知公告 */
.allNotice {
    position: fixed;
    z-index: 100;
    width: 100%;
    height: 0.5rem;
    background: rgb(218 37 28 / 80%);
    box-sizing: border-box;
    padding: .15rem;
    overflow: hidden;
    display: flex;
    align-items: center;
    color: #fff;
    backdrop-filter: blur(3px);
    display: none;
}

.allNotice .allNoticeWrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    font-size: .11rem;
}

.allNotice .allNoticeWrap .l {
    margin-right: .05rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.allNotice .allNoticeWrap .l span:first-child {
    font-size: .15rem;
}

.allNotice .allNoticeWrap .l span {
    word-break: keep-all;
    margin: 0 .02rem;
    color: #333;
    font-size: .11rem;
    color: #fff;
}

.allNotice .allNoticeWrap .r {
    /* white-space: pre; */
    display: flex;
    /* align-items: center; */
}

.allNotice .allNoticeWrap .r marquee {
    /* left: 0; */
}

/* 分页 */
.paginationWrap {
    padding: .15rem;
}

.paginationWrap .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
}

.paginationWrap .pagination li {
    color: #888;
    margin: 0 .03rem;
}

.paginationWrap .pagination li span {
    padding: .1rem;
    line-height: 1;
    display: flex;
    width: 0.3rem;
    height: 0.3rem;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-radius: 0.05rem;
    background: #eee;
    color: #999;
    font-size: .11rem;
}

.paginationWrap .pagination li a {
    background: #eee;
    border-radius: 0.05rem;
    display: flex;
    width: 0.3rem;
    height: 0.25rem;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: .11rem;
}

.paginationWrap .pagination li.disabled {}

.paginationWrap .pagination li.disabled span {
    width: 0.3rem;
    height: 0.25rem;
}

.paginationWrap .pagination li.active {}

.paginationWrap .pagination li.active span {
    background: #ccc;
    color: #fff;
}


.noData {
    display: none;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
}

.noData img {
    display: block;
    margin: auto;
    width: 2.5rem;
}

.backTop {
    position: fixed;
    z-index: 10;
    right: .15rem;
    bottom: .7rem;
}

.backTop a {
    display: flex;
    width: .35rem;
    height: .35rem;
    background: rgba(0, 0, 0, 0.5);
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    color: #fff;
    margin-top: .1rem;
}

.backTop a span {
    font-size: .16rem;
}

.backTop a.top {}

.backTop a.top::before {
    content: ' ';
    display: block;
    width: .06rem;
    height: .06rem;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-135deg);
    margin-top: .03rem;
}

.backTop a.back::before {
    content: ' ';
    display: block;
    width: .06rem;
    height: .06rem;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(135deg);
    margin-left: .03rem;
}

.backTop a svg {
    color: #fff;
    width: .2rem;
    height: .2rem;
}

#backToHome {}

/* 证书 */
.certificate {
    position: fixed;
    z-index: 100;
    top: 0;
    left: -100rem;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    text-align: center;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
}

.certificate .certificateWrap {
    background: transparent;
    width: 3.5rem;
    height: 5.73rem;
    box-sizing: border-box;
    padding: 0;
    position: relative;
    margin-top: -.6rem;
    margin-left: -20rem;
}

.certificate .img {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
}

.certificate .img img {
    display: block;
    width: 100%;
}

.certificate .closed {
    position: relative;
    width: .3rem;
    height: .3rem;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    z-index: 22;
    margin: 0 0 0 3.3rem;
}

.certificate .closed span {
    color: #da251c;
    font-weight: 700;
    font-size: .18rem;
}

.certificate .finalImg {
    width: 3.52rem;
    height: 5.7rem;
    position: fixed;
    z-index: 20;
    left: -200%;
    top: 50%;
    margin: -3.33rem 0 0 -1.76rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.certificate .finalImg canvas {}

.certificate .certificateWrap .no {
    margin-top: 2.15rem;
    font-size: .11rem;
    color: #a88a40;
}

.certificate .certificateWrap .no span {}

.certificate .certificateWrap .name {
    text-align: left;
    padding: 0 0.6rem;
    margin-top: 0.2rem;
    font-size: .13rem;
}

.certificate .certificateWrap .name span {}

.certificate .certificateWrap .projectName {
    padding: 0 0.6rem;
    text-align: left;
    text-indent: 2em;
    line-height: 1.3;
    margin-top: .1rem;
    font-size: .13rem;
}

.certificate .certificateWrap .projectName p {
    margin-bottom: .1rem;
}

.certificate .certificateWrap .projectName p strong {
    font-weight: 700;
    color: #da251c;
    margin: 0 0.03rem;
}

.certificate .certificateWrap .projectName p span {}

.certificate .certificateWrap .b {
    position: absolute;
    z-index: 10;
    bottom: 1.15rem;
    right: .6rem;
    text-align: center;
}

.certificate .certificateWrap .b p {
    margin-bottom: 0.05rem;
}

.certificate .certificateWrap .b p:nth-child(1) {
    margin-bottom: .07rem;
    font-size: .11rem;
    line-height: 1.3;
}

.certificate .certificateWrap .b p:nth-child(2) {
    font-size: .11rem;
    margin-top: 1.2rem;
}

.certificate .certificateWrap .b p:nth-child(3) {
    font-size: .11rem;
    /* transform: scale(.9); */
}

.certificate .certificateWrap .certificateSeal {
    position: absolute;
    z-index: 9;
    right: .6rem;
    bottom: 1rem;
    width: .8rem;
    height: .8rem;
    opacity: .68;
    pointer-events: none;
}

.certificate .certificateWrap .certificateSeal img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.certificate .certificateWrap .qrcodeWrap {
    left: 50%;
    margin-left: -1.2rem;
    position: absolute;
    z-index: 10;
    bottom: .9rem;
}

.certificate .certificateWrap .qrcodeWrap .text {
    font-size: .09rem;
    color: #988157;
}

.certificate .certificateWrap .qrcode {
    background: #fff;
    /* padding: .05rem; */
    width: 0.85rem;
    height: 0.85rem;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    /* margin: auto; */
    transform: scale(.85);
}

.certificate .certificateWrap .qrcode canvas {}

.certificate .btn {
    margin-top: .3rem;
}

.certificate .btn a {
    display: flex;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    width: 2.5rem;
    height: .45rem;
    border-radius: 1rem;
    align-items: center;
    justify-content: center;
    font-size: .18rem;
}

.certificate.certificateShow {
    left: 0;
}

.certificate.certificateShow .finalImg {
    left: 50%;
    /* display: none; */
}

/**
 * 首页
 */
.index {
    max-width: 750px;
    margin: auto;
    padding-bottom: .54rem;
    background: #fff;
}

/* 公共区域 */
.index .box {
    padding: .2rem;
}

.index .box .boxWrap {
    display: flex;
    flex-direction: column;
}

.index .box .boxWrap .t {
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
}

.index .box .boxWrap .t .l {
    display: flex;
    align-items: center;
}

.index .box .boxWrap .t .l .ll {
    font-family: FZQKBYSJW;
    color: #111;
    font-size: .16rem;
    /* font-weight: 700; */
}

.index .box .boxWrap .t .l .lr {
    max-width: .7rem;
    max-height: .18rem;
}

.index .box .boxWrap .t .l .lr img {
    display: block;
    height: .13rem;
    width: auto;
}

.index .box .boxWrap .t .r {
    max-height: .5rem;
    margin-right: .1rem;
    max-width: 1rem;
    display: flex;
    justify-content: flex-end;
}

.index .box .boxWrap .t .r_0 {
    margin-right: 0;
}

.index .box .boxWrap .t .r img {
    display: block;
    height: 100%;
}

.index .box .boxWrap .b {
    /* background: #eee; */
}

/* 顶部 */
.index .header {
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: .1rem .15rem;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    z-index: 30;
    height: .5rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.index .header .l {
    position: relative;
}

.index .header .l select {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    font-size: .1rem;
}

.index .header .l select option {
    font-size: .1rem;
}

.index .header .l .sele {
    display: flex;
    align-items: center;
    border: 1px solid #eee;
    padding: 0.05rem .15rem 0.05rem .1rem;
    border-radius: 1rem;
    position: relative;
}

.index .header .l .sele .ll {
    font-size: .14rem;
    width: .15rem;
    height: .15rem;
    margin-right: .04rem;
}

.index .header .l .sele .ll .icon {
    width: 100%;
    color: #c11919;
    height: 100%;
}

.index .header .l .sele .lc {
    font-size: .12rem;
}

.index .header .l .sele .lr {
    display: block;
    width: .05rem;
    height: .05rem;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    transform: rotate(45deg);
    margin: -.08em 0 0 .06rem;
}

.index .header .r {}

.index .header .r .logo {}

.index .header .r .logo a {
    display: block;
    width: 1.5rem;
}

.index .header .r .logo a img {}

/* 幻灯 */
.index .slide {
    height: 2.5rem;
    overflow: hidden;
}

.index .slide .slideMain {}

.index .slide .slideMain a {}

.index .slide .slideMain a img {}

.index .slide .swiper-pagination-bullet-active {}

.index .slide .swiper-pagination-bullet {}

.index .slide .swiper-pagination {
    top: 1.95rem;
}

/* 菜单 */
.index .menu {
    padding: .3rem .25rem .2rem;
    background: #fff;
    border-top-left-radius: .3rem;
    border-top-right-radius: .3rem;
    margin-top: -.3rem;
    z-index: 22;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .11rem;
}

.index .menu .item {
    text-align: center;
    color: #111;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.index .menu .item .img {
    width: .45rem;
    height: .45rem;
    margin-bottom: .1rem;
}

.index .menu .item .img img {
    display: block;
    width: 100%;
}

.index .menu .item .txt {
    font-size: .11rem;
}

/* 最新捐款信息 */
.index .new {
    padding: 0 .2rem;
}

.index .new .t {
    border-top: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: .55rem;
    font-size: .11rem;
}

.index .new .t .l {
    font-family: FZQKBYSJW;
    color: #df0507;
    font-size: .15rem;
    width: 12%;
    border-right: 1px solid #eee;
}

.index .new .t .r {
    width: 85%;
    /* height: .2rem; */
    overflow: hidden;
    box-sizing: border-box;
}

.index .new .t .r .swiper-container2 {
    height: .25rem;
}

.index .new .t .r .swiper-slide {
    display: flex;
    height: .25rem;
    padding: 0;
    justify-content: flex-end;
    align-items: center;
}

.index .new .t .r .swiper-slide .rl {}

.index .new .t .r .swiper-slide .rr {
    /* flex: 1; */
}

.index .new .t .r .rl {
    margin-right: .1rem;
}

.index .new .t .r .rr {
    /* max-width: 2rem; */
    text-align: right;
}

.index .new .t .r .rr span {
    font-weight: 700;
    color: #c80303;
}

.index .new .b {
    display: none;
    align-items: center;
    justify-content: space-around;
    background: url(../../img/index/index_new_bg.png) center center no-repeat;
    background-size: cover;
    height: .78rem;
}

.index .new .b .l,
.index .new .b .c,
.index .new .b .r {
    flex: 1;
    text-align: center;
}

.index .new .b .bt {
    font-size: .18rem;
    color: #df0507;
    font-weight: 700;
}

.index .new .b .bb {
    color: #888;
    font-size: .11rem;
    margin-top: .08rem;
}

.index .new .b .c {
    border-left: 1px solid #e3c1c1;
    border-right: 1px solid #e3c1c1;
}

/* 捐赠专区 */
.index .zhuanqu {}

.index .zhuanqu .b {
    background: url(../../img/index/index_jzzq_bg.jpg) center center no-repeat;
    background-size: cover;
    height: 1.9rem;
    border-radius: .15rem;
    box-sizing: border-box;
    padding: .15rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.index .zhuanqu .b .l {
    box-sizing: border-box;
    padding: .2rem;
    border-radius: .15rem;
    background: url(../../img/index/index_box1_1.png) #fff .5rem .51rem no-repeat;
    background-size: 77%;
    position: relative;
    height: 1.5rem;
    width: 48%;
}

.index .zhuanqu .b .l .txt {}

.index .zhuanqu .b .l .txt .rtt {
    font-size: .18rem;
    color: #df0507;
    font-weight: 700;
    margin-bottom: .1rem;
}

.index .zhuanqu .b .l .txt .rtb {
    color: #999;
    font-size: .13rem;
}

.index .zhuanqu .b .l .btn {
    background: linear-gradient(to left, #e81708, #e65349);
    color: #fff;
    height: .25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: .7rem;
    border-radius: 1rem;
    position: absolute;
    bottom: .2rem;
    font-size: .12rem;
}

.index .zhuanqu .b .r {
    flex: 1;
    display: flex;
    align-content: space-between;
    justify-content: space-between;
    flex-direction: column;
    height: 1.5rem;
    margin-left: .15rem;
    width: 50%;
}

.index .zhuanqu .b .r .rt,
.index .zhuanqu .b .r .rb {
    border-radius: 0.15rem;
}

.index .zhuanqu .b .r .rt {
    background: url(../../img/index/index_box1_2.png) #fff 1rem 0.13rem no-repeat;
    background-size: .3rem;
}

.index .zhuanqu .b .r .rb {
    background: url(../../img/index/index_box1_3.png) #fff 1rem 0.16rem no-repeat;
    background-size: 0.3rem;
}

.index .zhuanqu .b .r .txt {
    border-radius: .15rem;
    padding: .15rem .2rem;
    height: .67rem;
    box-sizing: border-box;
}

.index .zhuanqu .b .r .txt .rtt {
    font-size: .16rem;
    margin-bottom: .08rem;
    line-height: 1;
}

.index .zhuanqu .b .r .txt .rtb {
    font-size: .12rem;
    color: #999;
}

/* 公益项目 */
.index .gongyi {}

.index .gongyi .b {
    padding: .15rem;
    box-sizing: border-box;
    border-radius: .15rem;
    background: url(../../img/index/index_gyxm_bg.jpg) #fff2ef center top no-repeat;
    background-size: 100%;
}

.index .gongyi .b .itemWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.index .gongyi .b .itemWrap .item {
    width: 48%;
    padding: .1rem;
    box-sizing: border-box;
    background: #fff;
    border-radius: .1rem;
    margin-bottom: .13rem;
    line-height: 1;
}

.index .gongyi .b .itemWrap .item .img {
    height: .9rem;
    overflow: hidden;
    border-radius: .1rem;
    margin-bottom: .05rem;
}

.index .gongyi .b .itemWrap .item .img img {
    display: block;
    width: 100%;
}

.index .gongyi .b .itemWrap .item .title {
    font-size: .15rem;
    font-weight: 700;
    margin-bottom: .05rem;
}

.index .gongyi .b .itemWrap .item .subTitle {
    font-size: .11rem;
    color: #999;
    margin-bottom: .1rem;
    line-height: 1.3;
}

.index .gongyi .b .itemWrap .item .bb {
    font-size: .1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #999;
}

.index .gongyi .b .itemWrap .item .bb .l {}

.index .gongyi .b .itemWrap .item .bb .r {}

.index .gongyi .b .itemWrap .item .bb .r span {
    color: #d71b1b;
    font-weight: 700;
    font-size: .12rem;
}

.index .gongyi .b .btn {}

.index .gongyi .b .btn p {
    display: flex;
    align-items: center;
    justify-content: center;
    height: .3rem;
    background: url(../../img/index/index_btn_bg.png) no-repeat center center;
    background-size: contain;
    color: #b7817c;
    font-size: .13rem;
}


/* 体验馆 */
.index .tiyanguan {}

.index .tiyanguan {
    padding-top: .1rem;
}

.index .tiyanguan ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.index .tiyanguan ul li {
    width: 31%;
    margin-bottom: .15rem;
}

.index .tiyanguan ul li a {
    display: block;
}

.index .tiyanguan ul li a img {
    display: block;
}

/* 应急救护培训平台 */
.index .yingji {}

.index .yingji .b {
    padding: 0.15rem;
    box-sizing: border-box;
    border-radius: 0.15rem;
    background: url(../../img/index/index_gyxm_bg.jpg) #fff2ef center top no-repeat;
    background-size: 100%;
}

.index .yingji .b .bt {
    padding: .1rem 0;
}

.index .yingji .b .bt .anquanUl {}

.index .yingji .b .bt .anquanUl li {
    box-sizing: border-box;
    background: #fff;
    padding: .15rem;
    margin-bottom: .15rem;
    border-radius: .1rem;
}

.index .yingji .b .bt .anquanUl li a {}

.index .yingji .b .bt .anquanUl li a .title {}

.index .yingji .b .bt .anquanUl li a .info {
    margin-top: .07rem;
    font-size: .13rem;
    color: #c7a4a4;
}

.index .yingji .b .bb {}

.index .yingji .b .bb .anquanNavUl {
    display: flex;
    align-items: center;
    justify-content: center;
}

.index .yingji .b .bb .anquanNavUl li {
    flex: 1;
}

.index .yingji .b .bb .anquanNavUl li a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 0.3rem;
    background: url(../../img/index/index_btn_bg2.png) no-repeat center center;
    background-size: contain;
    color: #fff;
    font-size: .13rem;
}

/* 三献登记 */
.index .sanxian {}

.index .sanxian .b {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: .1rem;
}

.index .sanxian .b a {
    display: block;
    width: 30%;
}

.index .sanxian .b a img {
    display: block;
    width: 100%;
}

/* 志愿者 */
.index .zhiyuanzhe {
    margin-bottom: .2rem;
    padding-top: 0;
    display: none;
}

.index .zhiyuanzhe .zhiyuanzheWrap {}

.index .zhiyuanzhe .zhiyuanzheWrap a {
    display: block;
}

.index .zhiyuanzhe .zhiyuanzheWrap a img {
    display: block;
}

/**
 * LED 地图
 */

.crossMap {
    height: 100%;
    overflow: hidden;
    background: url(../../img/index/mapbg.jpg) center center #000;
    background-size: 100% 100%;
}

.crossMap .map {
    height: 100%;
}

.crossMap .map .info {
    position: fixed;
    top: .3rem;
    left: 50%;
    width: 3rem;
    margin: 0 0 0 -1.5rem;
    min-height: .3rem;
    align-items: center;
    justify-content: center;
    background: #fff5e1;
    border-radius: .05rem;
    color: #9f8045;
    border: 1px solid #edd7ae;
    word-break: break-all;
    font-size: .11rem;
    box-sizing: border-box;
    z-index: 10;
    backdrop-filter: blur(4px);
    display: flex;
    transition: all .5s ease;
    opacity: 0;
}

.crossMap .map .tig {
    text-align: center;
    padding: .3rem;
    color: #fff;
    margin-top: 1rem;
}

.crossMap .map .imgWrap {
    opacity: 0;
    transition: all .5s ease;
    height: 100%;
}

.crossMap .map .img {
    height: 100%;
    /* transition: all .5s ease; */
    /* opacity: 0; */
    display: flex;
    align-items: center;
    justify-content: center;
}

.crossMap .map .img img {
    /* max-width: initial!important; */
}


/**
 * 项目页
 * */
.project {
    background: #fffcf8;
    min-height: 100%;
    box-sizing: border-box;
}

.project .header {
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    padding: .15rem .15rem 0;
    box-sizing: border-box;
}

.project .header .search {
    position: relative;
    display: flex;
    margin-bottom: .1rem;
}

.project .header .search .icon {
    position: absolute;
    left: .12rem;
    top: .08rem;
    color: #da251c;
    font-size: .15rem;
    display: none;
}

.project .header .search .icon span {
    font-size: .24rem;
}

.project .header .search .input {
    flex: 1;
}

.project .header .search .input input {
    height: .4rem;
    width: 100%;
    border: none;
    border-radius: 1rem;
    box-sizing: border-box;
    text-indent: .25rem;
    font-size: .14rem;
    background: #f5f5f5;
}

.project .header .pNav {
    overflow-x: scroll;
}

.project .header .pNav::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.project .header .pNav ul {
    display: flex;
    width: 8rem;
}

.project .header .pNav ul li {}

.project .header .pNav ul li a {
    display: block;
    padding: .1rem;
}

.project .header .pNav ul li.active {}

.project .header .pNav ul li.active a {
    border-bottom: 3px solid #da251c;
    color: #da251c;
    font-weight: 700;
}

.project .list {
    padding: .15rem .15rem 1rem;
}

.project .list ul {}

.project .list ul li {
    background: #fff;
    padding: 0.1rem;
    box-sizing: border-box;
    border-radius: .1rem;
    margin-bottom: 0.1rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.03);
    overflow: hidden;
}

.project .list ul li a {
    display: flex;
}

.project .list ul li a .l {
    width: 31%;
    margin-right: .1rem;
    position: relative;
    border-radius: .05rem;
}

.project .list ul li a .l .tag {
    position: absolute;
    background: #da251c;
    color: #fff;
    font-size: .11rem;
    padding: .03rem .06rem;
    left: -.1rem;
    top: .05rem;
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
}

.project .list ul li a .l .tag span {}

.project .list ul li a .l img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0.05rem;
}

.project .list ul li a .r {
    width: 64%;
    font-size: .12rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.project .list ul li a .r .title {
    font-size: .15rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.05rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.project .list ul li a .r .info {
    color: #999;
    font-size: .1rem;
    line-height: 1.1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.project .list ul li a .r .tag {
    padding: .1rem 0;
    font-size: .12rem;
}

.project .list ul li a .r .tag span {
    border: 1px solid #eee;
    line-height: 1;
    padding: .01rem .1rem;
    border-radius: 1rem;
    color: #999;
}

.project .list ul li a .r .price {
    color: #333;
    font-size: .11rem;
}

.project .list ul li a .r .price span {
    color: #da251c;
    padding: 0 .05rem;
    font-size: .15rem;
    font-weight: 700;
}

/**
 * 项目详情
 */
.projectDetail {
    padding-bottom: 1px;
}

.projectDetail .slide {
    position: relative;
    display: block;
    max-height: 2.4rem;
    overflow: hidden;
    background: #fff;
}

.projectDetail .slide .topSlide {}

.projectDetail .slide .topSlide .imgs {
    height: 2.6rem;
    overflow: hidden;
}

.projectDetail .slide .topSlide img {
    display: block;
    width: 100%;
}

.projectDetail .slide .topSlide .swiper-pagination {
    bottom: .3rem;
}

.projectDetail .slide .userList {
    position: absolute;
    z-index: 10;
    bottom: .25rem;
    left: .15rem;
    height: 75px;
    overflow: hidden;
}

.projectDetail .slide .userList .slideMain {
    padding: .02rem;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    align-items: center;
    border-radius: 2rem;
    width: 100%;
    box-sizing: border-box;
    font-size: .12rem;
    display: flex;
    height: 24px;
    /* margin: .02rem 0; */
}

.projectDetail .slide .userList .slideMain .l {
    width: 15px;
    height: 15px;
    border-radius: 1rem;
    overflow: hidden;
    border: 1px solid #fff;
}

.projectDetail .slide .userList .slideMain .l img {
    display: block;
    width: 100%;
    height: 100%;
}

.projectDetail .slide .userList .slideMain .r {
    padding: 0 8px 0 8px;
    font-size: 10px;
    /* transform: scale(.9); */
}

.projectDetail .slide .userList .slideMain .r span {
    color: #ff7d2e;
    font-weight: 700;
}

.projectDetail .swiper-container {
    width: 100%;
    height: 100%;
}

.projectDetail .slide .userList .swiper-slide {
    text-align: center;
    font-size: 18px;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    transition: 300ms;
    opacity: 0.5;
    transform: scale(0.8);
}

.projectDetail .slide .userList .swiper-slide-active,
.projectDetail .slide .userList .swiper-slide-duplicate-active {
    transform: scale(1) !important;
    opacity: 1;
}

.projectDetail .contentBefore {
    padding: .25rem .15rem .15rem .15rem;
    background: #fff;
    margin-bottom: .15rem;
}

.projectDetail .contentBefore h1 {
    margin: 0;
    font-size: .22rem;
    color: #111;
    line-height: 1.3;
    text-align: left;
    margin-bottom: .15rem;
}

.projectDetail .contentBefore .content {
    position: relative;
}

.projectDetail .contentBefore .content .contentWrap {
    /* height: 4.5rem; */
    overflow: hidden;
}

.projectDetail .contentBefore .content .contentWrap p {
    line-height: 1.4;
    margin-bottom: .15rem;
}

.projectDetail .contentBefore .content .contentWrap img {
    display: block;
    max-width: 100% !important;
    margin-bottom: .15rem;
}

.projectDetail .contentBefore .content .mask {
    width: 100%;
    display: none;
    position: absolute;
    bottom: -.02rem;
    height: 1rem;
    background-image: -webkit-linear-gradient(top, hsla(0, 0%, 100%, 0), #fff);
    background-image: -moz-linear-gradient(top, hsla(0, 0%, 100%, 0), #fff);
    background-image: -o-linear-gradient(top, hsla(0, 0%, 100%, 0), #fff);
    background-image: linear-gradient(top, hsla(0, 0%, 100%, 0), #fff);
}

.projectDetail .contentBefore .content .more {
    position: absolute;
    bottom: -0.65rem;
    text-align: center;
    width: 100%;
    z-index: 10;
    display: none;
}

.projectDetail .contentBefore .content .more a {
    color: #519cd2;
    display: flex;
    text-align: center;
    padding: .15rem;
    align-items: center;
    justify-content: center;
}

.projectDetail .info {
    background: #fff;
    padding: .15rem;
    margin-bottom: .15rem;
}

.projectDetail .info .title {
    font-size: .18rem;
    margin-bottom: .15rem;
}

.projectDetail .info .list {
    margin-bottom: .05rem;
    font-size: .13rem;
}

.projectDetail .info .list .l {
    color: #999;
}

.projectDetail .info .list .r {}

.projectDetail .info .bili {
    position: relative;
    padding-top: .3rem;
    margin-bottom: .15rem;
}

.projectDetail .info .bili .num {
    position: absolute;
    z-index: 10;
    top: .1rem;
    left: 20%;
}

.projectDetail .info .bili .line {
    position: relative;
    display: block;
    height: .06rem;
    background: #eee;
    border-radius: 1rem;
}

.projectDetail .info .bili .line .redLine {
    content: ' ';
    display: block;
    width: 20%;
    height: 100%;
    background: #da251c;
    border-radius: 1rem;
}

.projectDetail .info .data {
    margin-top: .3rem;
}

.projectDetail .info .data ul {
    display: flex;
    justify-content: space-evenly;
}

.projectDetail .info .data ul li {}

.projectDetail .info .data ul li:nth-child(1) {
    text-align: left;
}

.projectDetail .info .data ul li:nth-child(2) {
    text-align: center;
}

.projectDetail .info .data ul li:nth-child(3) {
    text-align: right;
}

.projectDetail .info .data ul li .t {
    font-size: .18rem;
    margin-bottom: .1rem;
    font-weight: 700;
}

.projectDetail .info .data ul li .t span {
    font-size: .13rem;
}

.projectDetail .info .data ul li .b {
    color: #999;
    font-size: .13rem;
}

/* 项目二维码 */
.projectDetail .info .ewm {
    position: relative;
    padding-top: .3rem;
}

.projectDetail .info .ewm .ewmWrap {
    background: url(../../img/index/projectQrcode.jpg?v1) center center/100% 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 1.9rem;
}

.projectDetail .info .ewm .heart {
    position: absolute;
    z-index: 10;
    left: .2rem;
    top: 0;
    width: 1rem;
}

.projectDetail .info .ewm .ewmWrap canvas {
    background: #fff;
    padding: .06rem;
    margin-top: -.2rem;
}

.projectDetail .info .ewm .ewmWrap #qrcodeImg {
    display: none;
}

.projectDetail .info .ewm .ewmWrap .sub {
    padding: .06rem;
    background: #fff;
    margin-top: -.2rem;
}

.projectDetail .info .ewm .ewmWrap .sub img {
    width: 1.1rem;
}

.projectDetail .new {
    background: #fff;
    padding: .15rem;
    margin-bottom: 0.9rem;
}

.projectDetail .new .top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: .15rem;
}

.projectDetail .new .top .l {
    font-size: .18rem;
}

.projectDetail .new .top .r {}

.projectDetail .new .top .r a {
    display: flex;
    color: #999;
    align-items: center;
    font-size: .13rem;
}

.projectDetail .new .bottom {}

.projectDetail .new .bottom ul {}

.projectDetail .new .bottom ul li {
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    margin-top: .15rem;
    font-size: .13rem;
}

.projectDetail .new .bottom ul li .img {
    width: .25rem;
    height: .25rem;
    margin-right: .1rem;
    border-radius: 1rem;
    overflow: hidden;
}

.projectDetail .new .bottom ul li .img img {
    display: block;
    width: 100%;
}

.projectDetail .new .bottom ul li .name {
    flex: 1;
}

.projectDetail .new .bottom ul li .price {
    flex: 1;
}

.projectDetail .new .bottom ul li .time {}

.projectDetail .floatNav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    /* height: .45rem; */
    z-index: 20;
    display: flex;
    align-items: center;
    padding: .12rem;
    box-sizing: border-box;
}

.projectDetail .floatNav .l {}

.projectDetail .floatNav .l a {
    height: .4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 .05rem;
    font-size: .2rem;
    margin-right: .1rem;
    width: .4rem;
    box-sizing: border-box;
}

.projectDetail .floatNav .l a span {
    font-size: .25rem;
}

.projectDetail .floatNav .r {
    flex: 1;
}

.projectDetail .floatNav .r a {
    display: flex;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    text-align: center;
    border-radius: 1rem;
    height: .4rem;
    align-items: center;
    justify-content: center;
}


.projectDetail .notice {
    position: fixed;
    z-index: 130;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    display: none;
}

.projectDetail .notice .noticeWrap {
    background: #fff;
    /* padding: .15rem; */
    box-sizing: border-box;
    width: 80%;
    border-radius: .1rem;
}

.projectDetail .notice .noticeWrap .t {
    position: relative;
    text-align: center;
}

.projectDetail .notice .noticeWrap .t p {
    height: .55rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: URL(../../img/index/projectDetailTopBg.jpg) center center;
    background-size: cover;
    color: #fff;
    border-top-left-radius: .1rem;
    font-size: .18rem;
}

.projectDetail .notice .noticeWrap .t a {
    position: absolute;
    display: flex;
    width: .3rem;
    height: .3rem;
    background: #fff;
    top: -.1rem;
    right: -.1rem;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    font-size: .15rem;
}

.projectDetail .notice .noticeWrap .t a span {
    color: #da251c;
    font-size: .18rem;
}

.projectDetail .notice .noticeWrap .b {
    padding: .15rem;
}

.projectDetail .notice .noticeWrap .b .text {
    line-height: 1.5;
    margin-bottom: .15rem;
    padding: .1rem 0 0;
    height: 2.5rem;
    overflow: scroll;
}

.projectDetail .notice .noticeWrap .b .text p {
    text-indent: 2em;
}

.projectDetail .notice .noticeWrap .b a {
    background: #da251c;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: .45rem;
    border-radius: 1rem;
    margin: .2rem 0rem 0.1rem;
}

/* 项目详情移动端重构 */
.projectDetail {
    min-height: 100%;
    padding-bottom: .86rem;
    background: #ffffff;
    color: #222;
    box-sizing: border-box;
}

.projectDetail .detailCover {
    height: 2.15rem;
    overflow: hidden;
    background: #f3f3f3;
}

.projectDetail .detailCover .swiper-container,
.projectDetail .detailCover .swiper-wrapper,
.projectDetail .detailCover .swiper-slide,
.projectDetail .detailCover .imgs {
    width: 100%;
    height: 100%;
}

.projectDetail .detailCover .imgs {
    overflow: hidden;
}

.projectDetail .detailCover .imgs img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.projectDetail .detailCover .swiper-pagination {
    bottom: .1rem;
}

.projectDetail .detailCover .swiper-pagination-bullet {
    width: .06rem;
    height: .06rem;
    background: rgba(255, 255, 255, .75);
    opacity: 1;
}

.projectDetail .detailCover .swiper-pagination-bullet-active {
    background: #ef2b2b;
}

.projectDetail .detailMain {
    padding: .24rem .18rem .18rem;
}

.projectDetail .detailHeading h1 {
    margin: 0;
    color: #222;
    font-size: .25rem;
    font-weight: 700;
    line-height: 1.32;
    letter-spacing: 0;
    text-align: left;
    word-break: break-word;
}

.projectDetail .projectTag {
    display: inline-flex;
    align-items: center;
    min-height: .23rem;
    margin-top: .1rem;
    padding: 0 .06rem;
    border: 1px solid #ff9f96;
    border-radius: .06rem;
    color: #ef2b2b;
    font-size: .11rem;
    line-height: 1;
    box-sizing: border-box;
}

.projectDetail .projectSubtitle {
    display: -webkit-box;
    margin-top: .14rem;
    overflow: hidden;
    color: #666;
    font-size: .15rem;
    line-height: 1.6;
    word-break: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.projectDetail .detailStats {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: .86rem;
    margin: .22rem 0 .2rem;
    padding: .13rem .65rem .13rem .16rem;
    border-radius: .08rem;
    background: #fff3e5;
    box-sizing: border-box;
    overflow: hidden;
    justify-content: flex-start;
}

.projectDetail .detailStat {
    min-width: 1.2rem;
}

.projectDetail .detailStat .label {
    margin-bottom: .08rem;
    color: #888;
    font-size: .13rem;
    line-height: 1.2;
}

.projectDetail .detailStat .value {
    display: flex;
    /* flex-wrap: wrap; */
    align-items: baseline;
    min-width: 0;
    color: #ef3b20;
    line-height: 1;
}

.projectDetail .detailStat .value strong {
    max-width: 100%;
    font-size: .26rem;
    font-weight: 700;
}

.projectDetail .detailStat .value span {
    margin-left: .05rem;
    color: #666;
    font-size: 0.11rem;
    white-space: nowrap;
}

.projectDetail .detailStatTimes {
    min-width: .7rem;
}

.projectDetail .detailStatTimes .value strong {
    font-size: .2rem;
}

.projectDetail .detailStatsDivider {
    display: block;
    width: 1px;
    height: .48rem;
    background: #efc6a8;
    margin: 0 .13rem;
}

.projectDetail .detailStatsHeart {
    position: absolute;
    right: .1rem;
    bottom: -.03rem;
    width: .5rem;
    max-height: .78rem;
    object-fit: contain;
    pointer-events: none;
}

.projectDetail .detailSection {
    padding: .2rem 0;
    border-top: 1px solid #ededed;
    background: transparent;
}

.projectDetail .detailSection h2 {
    margin: 0 0 .1rem;
    color: #222;
    font-size: .16rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
    text-align: left;
}

.projectDetail .contentBefore {
    margin: 0;
    padding-top: 0;
    padding-bottom: .15rem;
    border-top: 0;
    background: transparent;
}

.projectDetail .contentBefore .content {
    position: relative;
}

.projectDetail .contentBefore .contentWrap {
    overflow: hidden;
    color: #333;
    font-size: .15rem;
    line-height: 1.75;
    word-break: break-word;
}

.projectDetail .contentBefore.collapsed .contentWrap {
    max-height: .62rem;
    line-height: 1.45;
}

.projectDetail .contentBefore.collapsed .contentWrap p {
    margin: 0 0 .04rem !important;
    padding: 0 !important;
    font-size: .13rem !important;
    /* line-height: 1.45 !important; */
    text-align: left !important;
    text-indent: 0 !important;
}

.projectDetail .contentBefore.collapsed .contentWrap p * {
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: 0 !important;
    text-indent: 0 !important;
}

.projectDetail .contentBefore.collapsed .contentWrap img,
.projectDetail .contentBefore.collapsed .contentWrap video,
.projectDetail .contentBefore.collapsed .contentWrap iframe {
    display: none !important;
}

.projectDetail .contentBefore.expanded .contentWrap {
    max-height: none;
}

.projectDetail .contentBefore .contentWrap p {
    margin: 0 0 .14rem;
    line-height: 1.75;
    text-align: left !important;
}

.projectDetail .contentBefore .contentWrap p:last-child {
    margin-bottom: 0;
}

.projectDetail .contentBefore .contentWrap img,
.projectDetail .contentBefore .contentWrap video,
.projectDetail .contentBefore .contentWrap iframe {
    display: block;
    max-width: 100% !important;
    height: auto !important;
    margin: .16rem auto;
}

.projectDetail .contentToggle {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: .28rem;
    margin-top: 0;
    padding: .03rem 0;
    border: 0;
    background: transparent;
    color: #ef2b2b;
    font-size: .15rem;
    line-height: 1;
    cursor: pointer;
}

.projectDetail .contentToggle .iconfont {
    margin-left: .04rem;
    font-size: .14rem;
}

.projectDetail .projectArchive dl,
.projectDetail .projectArchive dd {
    margin: 0;
}

.projectDetail .projectArchive {
    padding-top: .15rem;
    padding-bottom: .15rem;
}

.projectDetail .projectArchive h2 {
    margin-bottom: .08rem;
}

.projectDetail .projectArchive dl > div {
    display: grid;
    grid-template-columns: .6rem minmax(0, 1fr);
    align-items: start;
    gap: .12rem;
    min-height: .24rem;
    padding: 0;
}

.projectDetail .projectArchive dt {
    color: #999;
    font-size: .13rem;
    line-height: 1.4;
}

.projectDetail .projectArchive dd {
    min-width: 0;
    color: #222;
    font-size: .13rem;
    line-height: 1.4;
    word-break: break-all;
}

.projectDetail .projectArchive dd.numberFont {
    font-family: Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
}

.projectDetail .new {
    margin: 0;
    padding: .2rem 0;
    background: transparent;
}

.projectDetail .new .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .12rem;
    margin-bottom: .06rem;
}

.projectDetail .new .top h2 {
    margin-bottom: 0;
}

.projectDetail .new .top a {
    flex: none;
    display: inline-flex;
    align-items: center;
    color: #ef2b2b;
    font-size: .13rem;
    line-height: 1;
}

.projectDetail .new .top a .iconfont {
    margin-left: .03rem;
    font-size: .13rem;
}

.projectDetail .new .bottom ul li {
    display: flex;
    align-items: center;
    min-height: .58rem;
    margin: 0;
    padding: .1rem 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: .13rem;
    box-sizing: border-box;
}

.projectDetail .new .bottom ul li:last-child {
    border-bottom: 0;
}

.projectDetail .new .bottom ul li .img {
    flex: none;
    width: .36rem;
    height: .36rem;
    margin: 0 .1rem 0 0;
    border-radius: 50%;
    overflow: hidden;
    background: #f7f7f7;
}

.projectDetail .new .bottom ul li .img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.projectDetail .new .recordText {
    flex: 1;
    min-width: 0;
}

.projectDetail .new .recordText .name {
    margin: 0 0 .04rem;
    overflow: hidden;
    color: #333;
    font-size: .14rem;
    font-weight: 400;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projectDetail .new .recordText .time {
    margin: 0;
    color: #aaa;
    font-size: .12rem;
    line-height: 1.2;
}

.projectDetail .new .bottom ul li .price {
    flex: none;
    margin-left: .12rem;
    color: #ef3b20;
    font-size: .13rem;
    line-height: 1;
    white-space: nowrap;
}

.projectDetail .new .bottom ul li .price span {
    font-size: .17rem;
    font-weight: 700;
}

.projectDetail .new .noData {
    min-height: 1.2rem;
}

.projectDetail .new .noData img {
    width: 1.35rem;
}

.projectDetail .projectQrcode .sectionHead {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: .12rem;
}

.projectDetail .projectQrcode .sectionHead p {
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
}

.projectDetail .projectQrcode .ewm {
    position: relative;
    padding-top: .22rem;
}

.projectDetail .projectQrcode .ewmWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 1.8rem;
    border-radius: .08rem;
    overflow: hidden;
    background: url(../../img/index/projectQrcode.jpg?v1) center center/cover no-repeat;
}

.projectDetail .projectQrcode .heart {
    position: absolute;
    z-index: 2;
    top: 0;
    left: .16rem;
    width: .78rem;
}

.projectDetail .projectQrcode .ewmWrap canvas,
.projectDetail .projectQrcode .ewmWrap .sub {
    box-sizing: border-box;
    width: 1.12rem;
    height: 1.12rem;
    padding: .05rem;
    background: #fff;
}

.projectDetail .projectQrcode .ewmWrap #qrcodeImg {
    display: none;
}

.projectDetail .projectQrcode .ewmWrap .sub img {
    display: block;
    width: 100%;
    height: 100%;
}

.projectDetail .floatNav {
    position: fixed;
    z-index: 20;
    bottom: 0;
    left: 50%;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 750px;
    min-height: .68rem;
    padding: .1rem .16rem;
    transform: translateX(-50%);
    border-top: 1px solid #f0f0f0;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -.04rem .16rem rgba(64, 33, 16, .08);
    box-sizing: border-box;
}

.projectDetail .floatNav .l {
    flex: none;
}

.projectDetail .floatNav .l a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: .48rem;
    height: .48rem;
    margin-right: .12rem;
    padding: 0;
    color: #222;
}

.projectDetail .floatNav .l a .iconfont {
    color: currentColor;
    font-size: .28rem;
}

.projectDetail .floatNav .r {
    flex: 1;
    min-width: 0;
}

.projectDetail .floatNav .r a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: .48rem;
    border-radius: .24rem;
    background: linear-gradient(90deg, #ff3025 0%, #ff6411 100%);
    color: #fff;
    font-size: .17rem;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 .06rem .15rem rgba(239, 43, 43, .2);
}

.projectDetail .notice {
    z-index: 130;
    padding: .2rem;
    box-sizing: border-box;
}

.projectDetail .notice .noticeWrap {
    width: 100%;
    max-width: 3.5rem;
    border-radius: .08rem;
    overflow: hidden;
}

.projectDetail .notice .noticeWrap .t p {
    border-radius: 0;
}

.projectDetail .notice .noticeWrap .b a {
    border-radius: .23rem;
    background: linear-gradient(90deg, #ff3025 0%, #ff6411 100%);
}


/**
 * 在线捐款
 */
.projectOnline {
    background: #fff;
    color: #2b2b2b;
    min-height: 100%;
    padding: 0.17rem;
    box-sizing: border-box;
}

.projectOnline .subProject {
    position: relative;
    z-index: 111;
    display: flex;
    box-shadow: none;
    padding: 0;
    background: #fff;
    box-sizing: border-box;
    align-items: flex-start;
}

.projectOnline .subProject .l {
    flex: 0 0 1.22rem;
    width: 1.22rem;
    height: 0.72rem;
    border-radius: 0.1rem;
    margin-right: 0.16rem;
    overflow: hidden;
}

.projectOnline .subProject .l img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.projectOnline .subProject .r {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-width: 0;
    padding-top: 0.06rem;
}

.projectOnline .subProject .r .title {
    font-size: 0.2rem;
    line-height: 1.25;
    font-weight: 700;
    color: #161616;
}

.projectOnline .projectTags {
    display: flex;
    align-items: center;
    gap: 0.08rem;
    margin-top: 0.18rem;
}

.projectOnline .projectTags .tag {
    display: inline-flex;
    align-items: center;
    height: 0.21rem;
    padding: 0 0.09rem;
    border-radius: 0.05rem;
    font-size: 0.1rem;
    line-height: 1;
    white-space: nowrap;
}

.projectOnline .tagProject {
    color: #e94040;
    border: 1px solid #f5b2b2;
    background: #fffafa;
}

.projectOnline .tagOrg {
    color: #666;
    border: 1px solid #e5e5e5;
    background: #fff;
}

.projectOnline .tagOrg i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 0.16rem;
    height: 0.16rem;
    margin-right: 0.04rem;
    border-radius: 50%;
    background: #f7cf20;
    color: #e1251b;
    font-style: normal;
    font-weight: 700;
}

.projectOnline .donateStats {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 0.82rem;
    border-radius: .1rem;
    margin: 0.18rem 0;
    padding: 0.17rem;
    overflow: hidden;
    background: linear-gradient(96deg, #fff6e8 0%, #fff0dd 56%, #fff9f0 100%);
    box-sizing: border-box;
}

.projectOnline .donateStats::before {
    content: "";
    position: absolute;
    left: -0.38rem;
    top: -0.45rem;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 50%;
    background: rgba(255, 225, 188, 0.42);
    pointer-events: none;
}

.projectOnline .statsContent {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.projectOnline .statsContent p {
    margin: 0 0 0.11rem;
    color: #9a8063;
    font-size: 0.11rem;
    line-height: 1;
}

.projectOnline .statsSummary {
    display: flex;
    align-items: baseline;
    white-space: nowrap;
}

.projectOnline .statsSummary strong {
    color: #ff3b1f;
    font-size: 0.28rem;
    line-height: 1;
    font-weight: 700;
}

.projectOnline .statsSummary strong:last-of-type {
    margin-left: 0.09rem;
    font-size: 0.2rem;
}

.projectOnline .statsSummary em {
    margin-left: 0.04rem;
    color: #8c7864;
    font-size: 0.13rem;
    font-style: normal;
    line-height: 1;
}

.projectOnline .statsSummary i {
    width: 1px;
    height: 0.18rem;
    margin: 0 0.12rem;
    background: rgba(145, 113, 83, 0.28);
    font-style: normal;
}

.projectOnline .statsHeart {
    position: absolute;
    right: 0.1rem;
    bottom: -.05rem;
    width: 0.5rem;
    object-fit: contain;
}

.projectOnline #companySelect,
.projectOnline .companyLogo,
.projectOnline .companyStat,
.projectOnline #company.is-hidden {
    display: none;
}

.projectOnline #companySelect.is-visible {
    display: block;
}

.projectOnline .companyStat.is-visible {
    display: block;
}

.projectOnline .companyLogo.show {
    display: block;
}

.projectOnline #noData {
    display: flex;
}

.projectOnline .inputPrice {
    padding: 0;
}

.projectOnline .priceTitle {
    display: flex;
    align-items: center;
    gap: 0.08rem;
    margin-bottom: 0.12rem;
}

.projectOnline .priceTitle strong {
    font-size: 0.14rem;
    color: #333;
    font-weight: 700;
}

.projectOnline .priceTitle span {
    padding: 0.03rem 0.04rem;
    border: 1px solid #ff9f86;
    border-radius: 0.05rem;
    color: #f06442;
    font-size: 0.1rem;
    font-weight: 700;
}

.projectOnline .inputPrice .t {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.13rem;
    margin-bottom: 0.15rem;
}

.projectOnline .inputPrice .t .priceFocus {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 0.4rem;
    margin: 0 !important;
    border: 1px solid #ededed;
    border-radius: 0.08rem;
    background: #fff;
    color: #333;
    font-size: 0.22rem;
    font-weight: 700;
    /* box-shadow: 0 0.02rem 0.08rem rgba(0, 0, 0, 0.03); */
}

.projectOnline .inputPrice .t .priceFocus.active {
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    box-shadow: 0 0.05rem 0.12rem rgba(239, 43, 43, 0.25);
}

.projectOnline .inputPrice .t .priceFocus.active::after {
    /* content: ""; */
    position: absolute;
    right: 0.05rem;
    bottom: 0.05rem;
    width: 0.13rem;
    height: 0.13rem;
    border-radius: 50%;
    background-color: #fff;
}

.projectOnline .inputPrice .t .priceFocus .checkIcon {
    position: absolute;
    right: 0.055rem;
    bottom: 0.045rem;
    z-index: 1;
    display: none;
    width: 0.13rem;
    height: 0.13rem;
    align-items: center;
    justify-content: center;
}

.projectOnline .inputPrice .t .priceFocus.active .checkIcon {
    display: flex;
}

.projectOnline .inputPrice .t .priceFocus .checkIcon svg {
    display: block;
    width: 100%;
    height: 100%;
}

.projectOnline .inputPrice .t .priceFocus .checkIcon path {
    stroke: #fff;
}

.projectOnline .inputPrice .t .priceFocus span {
    font-size: 0.11rem;
    margin-right: 0.03rem;
}

.projectOnline .inputPrice .b {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    border: 1px solid #ededed;
    border-radius: 0.08rem;
    height: 0.46rem;
    box-shadow: 0 0.02rem 0.08rem rgba(0, 0, 0, 0.03);
}

.projectOnline .inputPrice .b.active {
    border-color: #ef2b2b;
    box-shadow: 0 0 0 0.02rem rgba(239, 43, 43, 0.08);
}

.projectOnline .inputPrice .b .bl {
    flex: 1;
    display: flex;
    align-items: center;
    height: 100%;
    min-width: 0;
}

.projectOnline .customLabel {
    flex: 0 0 1.08rem;
    color: #666;
    font-size: 0.14rem;
    text-align: center;
}

.projectOnline .customCurrency {
    height: 0.24rem;
    padding-left: 0.16rem;
    border-left: 1px solid #eee;
    color: #333;
    line-height: 0.24rem;
    font-size: 0.15rem;
}

.projectOnline .inputPrice .b .bl input {
    flex: 1;
    min-width: 0;
    border: 0;
    height: 100%;
    background: transparent;
    text-align: left;
    color: #333;
    font-size: 0.16rem;
    text-indent: 0.14rem;
}

.projectOnline .inputPrice .b .bl input.active {
    border: 0;
    color: #333;
}

.projectOnline .inputPrice .b .br {
    flex: 0 0 0.78rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    border-left: 1px solid #eeeeee;
    box-sizing: border-box;
}

.projectOnline .inputPrice .b .br a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.03rem;
    width: 100%;
    height: 100%;
    color: #ef2b2b;
    font-size: 0.13rem;
    font-weight: 700;
}

.projectOnline .inputPrice .b .br .iconfont {
    font-size: 0.14rem;
}

.projectOnline .list {
    padding: 0;
    margin-top: 0.18rem;
}

.projectOnline .list ul {
    margin: 0;
    padding: 0;
}

.projectOnline .list ul li {
    display: flex;
    list-style: none;
    min-height: 0.55rem;
    padding: 0;
    border-top: 1px solid #f0f0f0;
    align-items: center;
    box-sizing: border-box;
}
.projectOnline .list ul li:first-child{border-top: none}
.projectOnline .list ul li .l {
    flex: 0 0 0.95rem;
    width: 0.95rem;
    color: #333;
    font-size: 0.14rem;
    font-weight: 700;
}

.projectOnline .list ul li.messageItem {
    align-items: flex-start;
}

.projectOnline .list ul li.messageItem .l {
    padding-top: 0.55rem;
    box-sizing: border-box;
}

.projectOnline .list ul li .r {
    position: relative;
    flex: 1;
    min-width: 0;
}

.projectOnline .list ul li .l span {
    margin-left: 0.03rem;
    color: #f22929;
}

.projectOnline .list ul li .r textarea,
.projectOnline .list ul li .r input {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border: 0;
    background: transparent;
    border-radius: 0;
    height: 0.34rem;
    font-size: 0.15rem;
    text-indent: 0;
}

.projectOnline .list ul li .r input::placeholder,
.projectOnline .list ul li .r textarea::placeholder,
.projectOnline .inputPrice .b .bl input::placeholder{
    color: #c9c9c9;
}

.projectOnline .list ul li .r textarea {
    height: 1rem;
    padding: 0.12rem;
    border: 1px solid #eeeeee;
    border-radius: 0.08rem;
    background: #fff;
    line-height: 1.3;
    font-size: .14rem;
    margin-top: .15rem;
    font-family: inherit;
}

.projectOnline .msgInputWrap {
    position: relative;
}

.projectOnline .list ul li .r textarea:focus {
    border-color: #ef2b2b;
    box-shadow: 0 0 0 0.02rem rgba(239, 43, 43, 0.08);
}

.projectOnline .list ul li .r a {
    position: absolute;
    display: flex;
    align-items: center;
}

.projectOnline .fieldTip {
    margin-top: -0.02rem;
    color: #999;
    font-size: 0.1rem;
}

.projectOnline .msgCount {
    position: absolute;
    right: 0.12rem;
    bottom: 0.1rem;
    color: #bfbfbf;
    font-size: 0.12rem;
}

.projectOnline .quickMsg {
    margin-top: 0.1rem;
}

.projectOnline .quickMsgHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.08rem;
    color: #999;
    font-size: 0.11rem;
    line-height: 1;
}

.projectOnline .quickMsgHead span {
    color: #666;
    font-weight: 700;
}

.projectOnline .quickMsgHead button {
    padding: 0;
    border: 0;
    background: transparent;
    color: #c9a17b;
    font: inherit;
    font-style: normal;
    line-height: 1;
    cursor: pointer;
}

.projectOnline .quickMsgList {
    display: flex;
    flex-wrap: wrap;
    gap: 0.08rem;
}

.projectOnline .quickMsgOption {
    max-width: 100%;
    min-height: 0.2rem;
    padding: 0.04rem 0.1rem;
    border: 1px solid #ffe0d0;
    border-radius: 0.16rem;
    color: #d85a26;
    background: #fff8f3;
    font-size: 0.1rem;
    text-align: left;
}

.projectOnline .quickMsgOption:active {
    color: #fff;
    border-color: #ff6a10;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
}

.projectOnline .list ul li .r a#niming {
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #333;
    font-size: 0.13rem;
}

.projectOnline .list ul li .r a#niming span:first-child {
    order: 2;
    width: 0.4rem;
    height: 0.25rem;
    margin: 0 0 0 0.06rem;
    border: 0;
    border-radius: 0.21rem;
    background: #d0d0d0;
    position: relative;
}

.projectOnline .list ul li .r a#niming span:first-child::before {
    content: "";
    position: absolute;
    top: 0.02rem;
    left: 0.02rem;
    width: 0.21rem;
    height: 0.21rem;
    border-radius: 50%;
    background: #fff;
    transition: left 0.2s;
}

.projectOnline .list ul li .r a#niming span:first-child::after {
    display: none;
}

.projectOnline .list ul li .r a#niming span:last-child {
    order: 1;
    padding-top: 0;
    font-size: 0.13rem;
}

.projectOnline .list ul li .r a#niming.active span:first-child {
    background: #ef2b2b;
    border: 0;
}

.projectOnline .list ul li .r a#niming.active span:first-child::before {
    left: 0.17rem;
    top: 0.02rem;
    width: 0.21rem;
    height: 0.21rem;
    transform: none;
    background: #fff;
}

.projectOnline .topTig {
    position: relative;
    margin: 0.32rem 0 0;
    padding: 0.11rem;
    border: 2px solid #e10000;
    border-radius: 0.09rem;
    background: #fff;
    color: #e10000;
    box-sizing: border-box;
}

.projectOnline .topTig::before {
    content: "";
    position: absolute;
    left: 0.26rem;
    top: -2px;
    width: 0.6rem;
    height: 2px;
    background: #fff;
}

.projectOnline .topTig::after {
}

.projectOnline .topTig .t {
    position: absolute;
    top: -0.06rem;
    left: 0.2rem;
    z-index: 1;
    width: 0.78rem;
    margin: 0;
    color: #e10000;
    font-size: 0.11rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.projectOnline .topTig .b {
    text-indent: 2em;
    color: #e10000;
    font-size: 0.1rem;
    line-height: 1.5;
}

.projectOnline .info {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.2rem 0 0.16rem;
    background: #fff;
    font-size: 0.13rem;
}

.projectOnline .info p {
    display: flex;
    align-items: center;
    margin: 0;
}

.projectOnline .info .check {
    position: relative;
    display: block;
    width: 0.15rem;
    height: 0.15rem;
    margin-right: 0.05rem;
    border: 1px solid #ef2b2b;
    border-radius: 0.03rem;
    box-sizing: border-box;
}

.projectOnline .info p.active .check {
    background-color: #ef2b2b;
    border-color: #ef2b2b;
}

.projectOnline .info .check svg {
    display: none;
    width: 100%;
    height: 100%;
}

.projectOnline .info p.active .check svg {
    display: block;
}

.projectOnline .info .check path {
    stroke: #fff;
}

.projectOnline .info a {
    color: #ef2b2b;
    font-size: 0.13rem;
    font-weight: 700;
}

.projectOnline .submitWrap {
    padding: 0 0 0.28rem;
    background: #fff;
}

.projectOnline .submit {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 0.5rem;
    border-radius: 0.25rem;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    text-align: center;
    font-size: 0.18rem;
    font-weight: 700;
    box-shadow: 0 0.06rem 0.14rem rgba(239, 43, 43, 0.22);
}

.projectOnline .submit span {
    display: inline-block;
    width: 0.2rem;
    height: 0.2rem;
    margin-right: 0.08rem;
    background-image: url("data:image/svg+xml,%3Csvg width='29' height='29' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 8C8.92487 8 4 12.9249 4 19C4 30 17 40 24 42.3262C31 40 44 30 44 19C44 12.9249 39.0751 8 33 8C29.2797 8 25.9907 9.8469 24 12.6738C22.0093 9.8469 18.7203 8 15 8Z' fill='%23fff' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.projectOnline .list ul li#companyItem {
    align-items: center;
}

.projectOnline .companyStat {
    margin-top: -0.02rem;
    color: #999;
    font-size: 0.1rem;
    /* line-height: 1.4; */
}

.projectOnline .companyStat span {
    color: #da251c;
    font-weight: 700;
}

.projectOnline .companyLogo {
    position: absolute;
    top: 0.05rem;
    right: 0.08rem;
    width: 0.3rem;
    height: 0.3rem;
    object-fit: contain;
}

.projectOnline .companyLogo.show + .companyStat,
.projectOnline #company.hasLogo {
    padding-right: 0.45rem;
}

.projectOnline #companySelect {
    width: 100%;
    height: 0.34rem;
    border: 0;
    outline: none;
    background: transparent;
    font-size: 0.14rem;
    color: #333;
}

.projectOnline #companySelect.hasLogo {
    padding-right: 0.45rem;
}

/**
 * 捐赠流水
 */
.projectHIstory {
    min-height: 100%;
    background: #fffcf8;
}

.projectHIstory .backTop,
.donationDetail .backTop,
.donationCoPage .backTop {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.projectHIstory .backTop a.donateQuick,
.donationDetail .backTop a.donateQuick,
.donationCoPage .backTop a.donateQuick {
    width: .9rem;
    height: .34rem;
    border-radius: .18rem;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    box-shadow: 0 .03rem .12rem rgba(255, 80, 20, .35);
    font-size: .14rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}

.projectHIstory .backTop a.donateQuick svg,
.donationDetail .backTop a.donateQuick svg,
.donationCoPage .backTop a.donateQuick svg {
    width: .18rem;
    height: .18rem;
    margin-right: .05rem;
}

.projectHIstory .backTop a.donateQuick span,
.donationDetail .backTop a.donateQuick span,
.donationCoPage .backTop a.donateQuick span {
    font-size: .14rem;
}

.projectHIstory .header {
    background: #fff;
    padding: 0;
    z-index: 111;
}

.projectHIstory .header .historyHero {
    position: relative;
    min-height: 1.02rem;
    padding: .26rem .17rem .35rem;
    overflow: hidden;
    background: linear-gradient(180deg, #fff2e4 48%, #fffcf8 100%);
}

.projectHIstory .header .historyHero:before {
    content: "";
    position: absolute;
    left: -.15rem;
    top: -.28rem;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: rgba(255, 230, 196, .45);
}

.projectHIstory .header .top {
    position: relative;
    z-index: 2;
    padding-left: .1rem;
    color: #ab906e;
    text-align: left;
}

.projectHIstory .header .top p {
    margin: 0;
    font-size: .11rem;
    line-height: 1.25;
}

.projectHIstory .header .top .summary {
    display: flex;
    align-items: baseline;
    margin-top: .07rem;
    white-space: nowrap;
}

.projectHIstory .header .top .summary strong {
    color: #ff4b1f;
    font-weight: 700;
    font-size: .27rem;
    line-height: 1;
    letter-spacing: 0;
}

.projectHIstory .header .top .summary strong:last-of-type {
    font-size: .21rem;
    margin-left: .13rem;
}

.projectHIstory .header .top .summary em {
    margin-left: .04rem;
    color: #ab906e;
    font-size: .12rem;
    font-style: normal;
}

.projectHIstory .header .top .summary i {
    display: block;
    width: 1px;
    height: .2rem;
    margin: 0 .13rem;
    background: #e6ceb1;
}

.projectHIstory .header .heartImg {
    position: absolute;
    right: .12rem;
    top: -.06rem;
    z-index: 1;
    width: .52rem;
    height: 1.18rem;
    object-fit: contain;
}

.projectHIstory .header .search {
    position: relative;
    z-index: 3;
    width: 100%;
    margin-top: .12rem;
}

.projectHIstory .header .search input {
    width: 100%;
    border: none;
    height: .42rem;
    border-radius: 1rem;
    padding: 0 .58rem 0 .45rem;
    text-align: left;
    font-size: .14rem;
    color: #333;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 .03rem .14rem rgba(203, 123, 69, .16);
    outline: none;
}

.projectHIstory .header .search input::placeholder {
    color: #8b8b8b;
}

.projectHIstory .header .search .searchIcon {
    position: absolute;
    left: .18rem;
    top: 50%;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: .18rem;
    height: .18rem;
    transform: translateY(-54%);
}

.projectHIstory .header .search .searchIcon svg {
    display: block;
    width: 100%;
    height: 100%;
}

.projectHIstory .header .search .historyFilterToggle {
    position: absolute;
    right: .08rem;
    top: 50%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: .32rem;
    height: .32rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    outline: none;
    transform: translateY(-50%);
}

.projectHIstory .header .search .historyFilterToggle svg {
    width: .21rem;
    height: .21rem;
}

.projectHIstory .header .search .historyFilterToggle.active {
    background: rgb(255 96 18);
}

.projectHIstory .list {
    padding: .15rem;
    margin-top: -.35rem;
    z-index: 2;
    position: relative;
}

.projectHIstory .historySort {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: .1rem;
    margin-bottom: .14rem;
}

.projectHIstory .historySort.show {
    display: flex;
}

.projectHIstory .companyHistoryScope {
    margin: .08rem 0 .06rem;
    padding: .1rem .12rem;
    border-radius: .09rem;
    background: #fff;
    color: #ef2b2b;
    box-shadow: 0 .03rem .14rem rgba(203, 123, 69, .12);
    font-size: .13rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-all;
}

.projectHIstory .historySort .sortBtns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .08rem;
    flex: 1;
}

.projectHIstory .historySort button {
    border: 0;
    outline: none;
}

.projectHIstory .historySort .sortSelectWrap {
    position: relative;
    min-width: 0;
    display: flex;
}

.projectHIstory .historySort .sortBtns button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
    height: .36rem;
    padding: 0 .24rem 0 .15rem;
    border-radius: .18rem;
    color: #222;
    background: #fff;
    border: 1px solid #f0f0f0;
    box-shadow: 0 .03rem .14rem rgba(203, 123, 69, .16);
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
    flex: 1;
}

.projectHIstory .historySort .sortBtns button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.projectHIstory .historySort .sortBtns button:after {
    content: "";
    position: absolute;
    right: .1rem;
    top: 50%;
    width: 0;
    height: 0;
    border-left: .035rem solid transparent;
    border-right: .035rem solid transparent;
    border-top: .045rem solid #333;
    transform: translateY(-38%);
}

.projectHIstory .historySort .sortBtns button.active {
    color: #ff4b1f;
    /* background: #fff5ed; */
    border-color: #ffe8d7;
    box-shadow: 0 .02rem .08rem rgba(255, 86, 20, .12);
}

.projectHIstory .historySort .sortBtns button.active:after {
    border-top-color: #ff4b1f;
}

.projectHIstory .historySort .sortBtns button.active.asc:after {
    border-top: 0;
    border-bottom: .045rem solid #ff4b1f;
    transform: translateY(-58%);
}

.projectHIstory .historySort .sortBtns button.open:after {
    border-top: 0;
    border-bottom: .045rem solid currentColor;
    transform: translateY(-58%);
}

.projectHIstory .historyPickerData {
    display: none;
}

.projectHIstory .historyFilterPanel {
    display: none;
    margin: .1rem 0 .06rem;
    padding: .12rem;
    border-radius: .12rem;
    background: #fff;
    border: 1px solid #f0f0f0;
    box-shadow: 0 .04rem .14rem rgba(0, 0, 0, .08);
}

.projectHIstory .historyFilterPanel .projectOptions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .08rem;
    max-height: 2.2rem;
    overflow-y: auto;
}

.projectHIstory .historyFilterPanel .projectOptions a {
    display: flex;
    align-items: center;
    min-height: .34rem;
    padding: .07rem .1rem;
    border-radius: .08rem;
    color: #333;
    background: #f7f7f7;
    font-size: .13rem;
    line-height: 1.3;
}

.projectHIstory .historyFilterPanel .projectOptions a.active {
    color: #ff4b1f;
    background: #fff5ed;
}

.projectHIstory #projectPanel {
    display: none !important;
}

.projectHIstory .historyFilterPanel .filterRange {
    display: grid;
    grid-template-columns: minmax(0, 1fr) .24rem minmax(0, 1fr);
    column-gap: .08rem;
    row-gap: .12rem;
    align-items: center;
}

.projectHIstory .historyFilterPanel .filterRange input {
    min-width: 0;
    width: 100%;
    height: .34rem;
    border: 1px solid #eee;
    border-radius: .08rem;
    padding: 0 .08rem;
    color: #333;
    background: #f7f7f7;
    font-size: .13rem;
}

.projectHIstory .historyFilterPanel .filterRange input[type="date"] {
    appearance: none;
    -webkit-appearance: none;
}

.projectHIstory .historyFilterPanel .filterRange input:first-child {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
}

.projectHIstory .historyFilterPanel .filterRange span {
    display: flex;
    align-items: center;
    justify-content: center;
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    color: #999;
    font-size: .12rem;
}

.projectHIstory .historyFilterPanel .filterRange input:nth-of-type(2) {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
}

.projectHIstory .historyFilterPanel .filterRange a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    width: 100%;
    height: .34rem;
    border-radius: .17rem;
    font-size: .13rem;
    font-weight: 700;
    text-decoration: none;
}

.projectHIstory .historyFilterPanel .filterRange .filterReset {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
    color: #666;
    background: #f3f3f3;
}

.projectHIstory .historyFilterPanel .filterRange .filterConfirm {
    grid-column: 3 / 4;
    grid-row: 2 / 3;
    color: #fff;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    box-shadow: 0 .03rem .1rem rgba(255, 80, 20, .22);
}

body .historyPickerRoot {
    z-index: 19891020;
}

body .historyPickerRoot .layui-m-layershade {
    z-index: 1;
}

body .historyPickerRoot .layui-m-layermain {
    z-index: 2;
}

body .historyPickerRoot .layui-m-layerchild.historyPickerLayer {
    width: 100%;
    max-width: 4.3rem;
    bottom: 0;
    overflow: hidden;
    border-radius: .18rem .18rem 0 0;
    background: #fff;
}

body .historyPickerLayer * {
    box-sizing: border-box;
}

body .historyPickerLayer .layui-m-layercont {
    padding: 0;
    border-radius: 0;
    background: transparent;
    text-align: left;
}

.historyPickerSheet {
    max-height: 72vh;
    overflow: hidden;
    padding: .16rem .16rem calc(.16rem + env(safe-area-inset-bottom));
    background: #fff;
    border-radius: 0;
}

.historyPickerHead {
    color: #111;
    font-size: .17rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    padding-bottom: .14rem;
}

.historyPickerOptions {
    display: grid;
    gap: .08rem;
    max-height: 3.5rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.historyPickerOption {
    width: 100%;
    min-height: .42rem;
    padding: .08rem .12rem;
    border: 0;
    border-radius: .1rem;
    color: #222;
    background: #f7f7f7;
    font-size: .14rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: left;
}

.historyPickerOption.active {
    color: #ff4b1f;
    background: #fff1e9;
}

.historyPickerFields,
.historyMoneyFields {
    display: grid;
    gap: .1rem;
}

.historyPickerField,
.historyMoneyFields label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: .46rem;
    padding: 0 .12rem;
    border: 0;
    border-radius: .1rem;
    color: #222;
    background: #f7f7f7;
    font-size: .14rem;
    font-weight: 700;
}

.historyPickerField strong {
    color: #ff4b1f;
    font-size: .14rem;
}

.historyPickerField strong.empty {
    color: #aaa;
}

.historyMoneyFields input {
    width: 1.5rem;
    height: .34rem;
    border: 0;
    outline: none;
    border-radius: .08rem;
    padding: 0 .1rem;
    color: #222;
    background: #fff;
    font-size: .14rem;
    text-align: right;
}

.historyPickerActions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .1rem;
    margin-top: .16rem;
}

.historyPickerActions button {
    height: .4rem;
    border: 0;
    border-radius: .2rem;
    font-size: .14rem;
    font-weight: 800;
}

.historyPickerReset {
    color: #666;
    background: #f3f3f3;
}

.historyPickerConfirm {
    color: #fff;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
}

body .rolldate-container .rolldate-mask {
    z-index: 19891040;
}

body .rolldate-container .rolldate-panel {
    z-index: 19891041;
    border-radius: .18rem .18rem 0 0;
    overflow: hidden;
}

body .rolldate-container header {
    font-weight: 800;
}

body .rolldate-container .rolldate-confirm {
    color: #ff4b1f;
}

.projectHIstory .list ul {}

.projectHIstory .list ul li {
    position: relative;
    overflow: hidden;
    margin-bottom: .15rem;
    padding: 0;
    border-radius: .18rem;
    background: transparent;
    box-shadow: 0 .01rem .15rem rgba(158, 62, 0, .12);
}

.projectHIstory .list ul li:last-child {}

.projectHIstory .list ul li .recordCardMain {
    position: relative;
    z-index: 2;
    padding: .18rem .16rem .19rem;
    border-radius: .16rem;
    background: #fff;
    box-shadow: 0 .03rem .12rem rgba(158, 62, 0, .1);
}

.projectHIstory .list ul li .recordHead {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "title side"
        "meta side";
    /* gap: .12rem; */
    align-items: flex-start;
}

.projectHIstory .list ul li .recordTitle {
    grid-area: title;
    min-width: 0;
}

.projectHIstory .list ul li .recordSide {
    grid-area: side;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .12rem;
    min-width: 1.12rem;
}

.projectHIstory .list ul li .recordHead strong {
    display: block;
    color: #111;
    font-size: 0.18rem;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: 0;
    word-break: break-all;
}

.projectHIstory .list ul li .recordNo {
    display: block;
    margin-top: .07rem;
    color: #999;
    font-size: .11rem;
    /* font-weight: 700; */
    line-height: 1.1;
    word-break: break-all;
}

.projectHIstory .list ul li .recordMoney {
    flex: none;
    display: inline-flex;
    align-items: baseline;
    color: #f1261c;
    font-size: .13rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.projectHIstory .list ul li .recordMoney.isOut {
    color: #1a8f45;
}

.projectHIstory .list ul li .recordMoneySymbol,
.projectHIstory .list ul li .recordMoneyUnit {
    font-size: .09rem;
    line-height: 1;
}

.projectHIstory .list ul li .recordMoneyValue {
    font-size: .26rem;
    line-height: 1;
}

.projectHIstory .list ul li .recordMoneySymbol {
    margin-right: .01rem;
}

.projectHIstory .list ul li .recordMoneyUnit {
    margin-left: .01rem;
}

.projectHIstory .list ul li .recordMoneyDecimal {
    font-size: .17rem;
    margin-right: .01rem;
}

.projectHIstory .list ul li .recordMetaRow {
    grid-area: meta;
    display: grid;
    grid-template-columns: auto auto;
    gap: .08rem;
    align-items: center;
    margin-top: .2rem;
}

.projectHIstory .list ul li .recordMeta {
    min-width: max-content;
    display: inline-flex;
    align-items: center;
    color: #111;
    font-size: .12rem;
    /* font-weight: 700; */
    line-height: 1;
    white-space: nowrap;
}

.projectHIstory .list ul li .recordMetaIcon {
    flex: none;
    display: block;
    width: .13rem;
    height: .13rem;
    margin-right: .03rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.projectHIstory .list ul li .recordTimeIcon {
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9' cy='9' r='8' fill='%23C8C8C8'/%3E%3Cpath d='M9 4.5V9L12 11' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.projectHIstory .list ul li .recordPhoneIcon {
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.2 2.4C5.62 2.16 6.15 2.26 6.46 2.63L8.05 4.54C8.35 4.9 8.36 5.42 8.08 5.8L7.34 6.81C8.2 8.35 9.45 9.6 10.99 10.46L12 9.72C12.38 9.44 12.9 9.45 13.26 9.75L15.17 11.34C15.54 11.65 15.64 12.18 15.4 12.6C14.83 13.61 13.75 14.25 12.57 14.25C7.69 14.25 3.75 10.31 3.75 5.43C3.75 4.25 4.39 3.17 5.2 2.4Z' fill='%23C8C8C8'/%3E%3C/svg%3E");
}

.projectHIstory .list ul li .recordMetaText {
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
}

.projectHIstory .list ul li .recordDonor {
    display: inline-flex;
    align-items: center;
    gap: .06rem;
    min-width: 0;
    max-width: 1.35rem;
    padding: .03rem .04rem .03rem .12rem;
    border-radius: .18rem;
    color: #ad9878;
    background: #FCF4EA;
    font-size: .1rem;
    font-weight: 700;
    line-height: 1;
}

.projectHIstory .list ul li .recordAvatar {
    flex: none;
    width: .2rem;
    height: .2rem;
    border-radius: 50%;
    object-fit: cover;
    background: #f5f5f5;
}

.projectHIstory .list ul li .recordAvatarText {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #f02828;
    font-size: .11rem;
    font-weight: 700;
    line-height: 1;
}

.projectHIstory .list ul li .recordDonorName {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projectHIstory .list ul li .recordCompanyBar {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: .08rem;
    height: .3rem;
    margin-top: -.2rem;
    padding: .2rem .14rem 0;
    color: #fff;
    background: #ff5b12 url(../../img/index/history-company-bg.svg) no-repeat left bottom;
    background-size: contain;
}

.projectHIstory .list ul li .recordCompanyIcon {
    flex: none;
    width: .12rem;
    height: .12rem;
}

.projectHIstory .list ul li .recordCompanyName {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    color: #fff;
    font-size: .12rem;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projectHIstory .list ul li .recordCompanyArrow {
    flex: none;
    width: .2rem;
    height: .2rem;
}

.projectHIstory .info {
    text-align: center;
    color: #999;
    font-size: .11rem;
    padding: .15rem;
    display: none;
}

.projectHIstory .info a {
    padding: .15rem .6rem;
}

.projectHIstory .info p {}

/*感谢页面*/
.projectThanks {
    height: 100%;
    background: #fff;
}

.projectThanks .projectThanksWrap {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.projectThanks .projectThanksWrap .top {
    padding-top: .6rem;
    margin-bottom: .5rem;
}

.projectThanks .projectThanksWrap .top img {
    display: block;
    margin: auto;
    width: 1.7rem;
}

.projectThanks .projectThanksWrap .center {
    text-align: center;
    flex: 1;
    font-size: .11rem;
    color: #888;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-bottom: .4rem;
}

.projectThanks .projectThanksWrap .center a {
    padding: 0.12rem .2rem;
    border: 1px solid #e0252b;
    border-radius: .1rem;
    color: #e0252b;
    font-size: .14rem;
    margin: 0 .05rem;
}

.projectThanks .projectThanksWrap .center a:first-child {}

.projectThanks .projectThanksWrap .center a:last-child {}

.projectThanks .projectThanksWrap .bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: .5rem;
}

.projectThanks .projectThanksWrap .bottom img {
    display: block;
    width: 1.5rem;
}

.projectThanks .projectThanksWrap .bottom2 {}

.projectThanks .projectThanksWrap .bottom2 img {}




/**
 * 培训
 */
.safe {
    min-height: 100%;
    background: #f9f9f9;
    padding-bottom: .6rem;
}

.safe .header {}

.safe .header a {
    display: block;
    width: 1.8rem;
}

.safe .header .logo {
    padding: .15rem;
}

.safe .header a img {}

.safe .examination {
    padding: .15rem 0 0;
}

.safe .examination a {
    background: #fffad8;
    padding: .15rem;
    color: #c0b255;
    display: block;
    border: 1px solid #dfd697;
    border-radius: .1rem;
    font-size: .13rem;
}

.safe .slide {
    padding: .15rem;
    border-radius: .1rem;
}

.safe .slide .slideMain {}

.safe .slide .slideMain a {
    display: block;
    border-radius: .1rem;
    overflow: hidden;
}

.safe .slide .slideMain a img {
    display: block;
    width: 100%;
}

.safe .subNav {
    padding: 0 .15rem;
    margin-bottom: .15rem;
}

.safe .subNav ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: center;
}

.safe .subNav ul li {
    flex: 1;
}

.safe .subNav ul li:nth-child(2) {
    margin: 0 .15rem;
}

.safe .subNav ul li a {
    display: block;
    background: #fff;
    padding: .15rem;
    border-radius: .1rem;
}

.safe .subNav ul li a .img {
    width: .5rem;
    margin: auto;
}

.safe .subNav ul li a .img img {
    display: block;
    width: 100%;
}

.safe .subNav ul li a .txt {
    margin-top: .12rem;
}

.safe .list {
    padding: 0 0.15rem .2rem;
    /* margin-top: .15rem; */
}

.safe .list .title {
    font-size: .15rem;
    font-weight: 700;
}

.safeList {
    background: #fff;
}

.safe .list ul {}

.safe .list ul li {
    padding: .15rem 0;
    border-bottom: 1px solid #eee;
}

.safe .list ul li .video {
    margin-bottom: .15rem;
}

.safe .list ul li .video .video-js {
    height: 1.94rem;
}

.safe .list ul li .link {
    display: flex;
    /* align-items: center; */
    flex-direction: row-reverse;
    box-sizing: border-box;
    border-radius: .1rem;
    position: relative;
}

.safe .list.indexList ul li .link .l {
    display: none;
}

.safe .list ul li .link .l {
    position: relative;
    overflow: hidden;
    width: 1rem;
    height: .7rem;
    margin-left: .1rem;
    border-radius: .1rem;
}

.safe .list ul li .link .l .tag {
    position: absolute;
    background: #da251c;
    color: #fff;
    font-size: .11rem;
    padding: .03rem .06rem;
    left: -.1rem;
    top: .05rem;
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
}

.safe .list ul li .link .l .tag span {}

.safe .list ul li .link .l img {
    display: block;
    width: 100%;
    height: 100%;
}

.safe .list ul li .link .r {
    flex: 1;
    font-size: .12rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.safe .list ul li .link .r .title {
    font-size: .15rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.1rem;
    overflow: hidden;
    display: flex;
    word-break: break-all;
}

.safe .list ul li .link .r .title em {
    flex: 1;
}

.safe .list ul li .link .r .title span {
    font-size: .1rem;
    display: flex;
    color: #fff;
    margin-right: 0.08rem;
    border-radius: .1rem;
    width: .43rem;
    height: 0.16rem;
    line-height: 1;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    border-top-left-radius: .04rem;
    border-bottom-right-radius: .04rem;
}

.safe .list ul li .link .r .subInfo {
    /* display: flex; */
    font-size: .11rem;
    color: #888;
}

.safe .list ul li .link .r .subInfo .status {
    margin-bottom: .05rem;
}

.safe .list ul li .link .r .title .status_color1 {
    background: #ccc;
}

.safe .list ul li .link .r .title .status_color2 {
    background: #229f28;
}

.safe .list ul li .link .r .title .status_color3 {
    color: #c2c2c2;
}

.safe .list ul li .link .r .subInfo .status_color4 {
    color: #229f28;
}

.safe .list ul li .link .r .subInfo .status_color5 {
    color: #c2c2c2;
}

.safe .list ul li .link .r .subInfo .subStatus {
    display: flex;
    align-items: center;
}

.safe .list ul li .link .r .subInfo .subStatus p {
    margin-right: .1rem;
}

.safe .list ul li .link .r .subInfo .subStatus p.status_1 {}

.safe .list ul li .link .r .subInfo .subStatus p.status_2 {
    color: #33a86c;
    font-weight: 700;
}

.safe .list ul li .link .r .subInfo .subStatus p.status_3 {
    color: #db6124;
}

.safe .list ul li .link .r .subInfo .subStatus p:nth-child(1) {}

.safe .list ul li .link .r .subInfo .subStatus p:nth-child(2) {}

.safe .list ul li .link .r .info {
    color: #999;
    font-size: .11rem;
    margin-bottom: 0rem;
    line-height: 1.6;
    display: none;
}

.safe .list ul li .btn {
    position: absolute;
    background: #da251c;
    color: #fff;
    height: .25rem;
    width: .7rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    font-size: .1rem;
    z-index: 10;
    right: .138rem;
    bottom: -.1rem;
}

.safe .list.indexList ul li a {
    display: flex;
    flex-direction: column;
}

.safe .list.indexList ul li a .l {
    display: none;
}

.safe .list.indexList ul li a .r {
    flex: 1;
    font-size: .12rem;
}

.safe .list.indexList ul li a .r .title {
    font-size: .15rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.1rem;
    overflow: hidden;
}

.safe .list.indexList ul li a .r .info {
    color: #999;
    font-size: .11rem;
    margin-bottom: 0rem;
    line-height: 1.6;
}


/**
 * 视频详情
 */
.safeDetail {}

.safeDetail .video {
    background: #000;
}

.safeDetail .video .video-js,
.list .video .video-js {
    width: 100%;
    height: 1.78rem;
}

.safeDetail .video-js .vjs-big-play-button,
.list .video-js .vjs-big-play-button {
    font-size: 2.5em;
    line-height: 2.3em;
    height: 2.5em;
    width: 2.5em;
    -webkit-border-radius: 2.5em;
    -moz-border-radius: 2.5em;
    border-radius: 2.5em;
    background-color: #73859f;
    background-color: rgba(115, 133, 159, .5);
    border-width: 0.12em;
    margin-top: -1.5em;
    margin-left: -1.15em;
}

/* 中间的播放箭头 */
.safeDetail .vjs-big-play-button .vjs-icon-placeholder {
    font-size: 1.63em;
}

/* 加载圆圈 */
.safeDetail .vjs-loading-spinner {
    font-size: 2.5em;
    width: 2em;
    height: 2em;
    border-radius: 1em;
    margin-top: -.5em;
    margin-left: -.5em;
}

.safeDetail .topInfo {
    font-size: .11rem;
    text-align: center;
    padding: .15rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1) inset;
    background: #f7f7f7;
}

.safeDetail .topInfo p {
    font-size: .11rem;
    line-height: 1;
}

.safeDetail .topInfo p span {
    color: #da251c;
}

.safeDetail .content {
    padding: .15rem;
}

.safeDetail .content h1 {
    margin: 0;
    font-size: .22rem;
    color: #111;
    margin: .15rem 0 .15rem 0;
}

.safeDetail .content .subInfo {
    text-align: center;
    font-size: .11rem;
    color: #999;
    margin-bottom: .2rem;
}

.safeDetail .content .subInfo span {
    margin: 0 .1rem;
}

.safeDetail .content .main {
    background: #f5f5f5;
    padding: .15rem;
    border: 1px solid #eee;
    line-height: 1.5;
    text-indent: 2em;
}

.safeDetail .content .main p {}

.safeDetail .about {
    margin-top: .3rem;
}

.safeDetail .about .tTitle {
    padding: 0 .15rem;
    font-size: .18rem;
    text-align: center;
}

.safeDetail .about .info {
    text-align: center;
    font-size: .11rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4aa83d;
    margin-top: .3rem;
}

.safeDetail .about .info span {}

.safeDetail .about .list {}

.safeDetail .time {
    position: fixed;
    top: 2.86rem;
    right: .15rem;
    font-size: .11rem;
    background: rgba(0, 0, 0, 0.4);
    color: #fff;
    padding: 0 .1rem;
    border-radius: 3px;
    line-height: 1;
    align-items: center;
    height: .26rem;
    display: none;
}

.safeDetail .time p {}

.safeDetail .time p span {}

/* 考试列表 */
.safeExamList {
    min-height: 100%;
    /* background: #fff; */
}

.safeExamList .apply {

    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.8);
}

.safeExamList .apply p {
    padding: .1rem;
    background: #fff9e2;
    border-radius: .1rem;
    border: 1px solid #ddd4b0;
    color: #aa933b;
    font-size: .11rem;
    text-align: center;
    line-height: 1;
}

.safeExamList .apply p a {
    color: #aa933b;
    font-weight: 700;
    margin: 0 .05rem;
    line-height: 1;
}

.safeExamList .question {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    background: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: .15rem;
    box-sizing: border-box;
    display: none;
}

.safeExamList .question .questionWrap {
    background: #fff;
    padding: 0.15rem 0.1rem 0.15rem 0.15rem;
    box-sizing: border-box;
    border-radius: .1rem;
    height: 100%;
}

.safeExamList .question .questionWrap .ulWrap::-webkit-scrollbar-thumb:hover {
    background-color: red;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.safeExamList .question .questionWrap .ulWrap::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.5);
    background-clip: padding-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    min-height: 28px;
}

.safeExamList .question .questionWrap .ulWrap::-webkit-scrollbar {
    width: 5px;
    height: 13px;
    background: #eee;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.safeExamList .question .questionWrap .ulWrap {
    overflow-y: scroll;
    height: 100%;
    padding-right: .1rem;
}

.safeExamList .question .questionWrap .ulWrap ul {}

.safeExamList .question .questionWrap .ulWrap ul a.btn {}

.safeExamList .question .questionWrap .ulWrap ul li {
    margin-bottom: .3rem;
}

.safeExamList .question .questionWrap .ulWrap ul li .title {
    font-weight: 700;
    font-size: .16rem;
    line-height: 1.4;
    margin-bottom: .1rem;
}

.safeExamList .question .questionWrap .ulWrap ul li .questionitem {
    border: 1px solid #ccc;
    padding: .1rem;
    border-radius: .1rem;
    margin-bottom: .1rem;
    font-size: .12rem;
    line-height: 1.3;
}

.safeExamList .question .questionWrap .ulWrap ul li .questionitem.check {
    color: #fff;
    border: 1px solid #367bed;
    background: #367bed;
}

.safeExamList .question .questionWrap .ulWrap ul li .questiontig {
    padding: .15rem 0;
    line-height: 1.3;
    font-weight: 700;
    display: none;
}

.safeExamList .question .questionWrap .ulWrap ul li .questiontig.error {
    color: #ff1616;
}

.safeExamList .question .questionWrap .ulWrap ul li .questiontig.succsess {
    color: #0eb145;
}

.safeExamList .question .questionWrap .ulWrap .btn {
    display: flex;
    height: 0.45rem;
    background: #da251c;
    color: #fff;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    margin-bottom: .3rem;
}

.safeExamList .question .questionWrap .ulWrap .btn#submit {
    margin-bottom: .15rem;
}

.safeExamList .question .questionWrap .ulWrap .btn#reload {
    color: #777;
    background: #fff;
    border: 1px solid #777;
    display: none;
}

.safeExamList .list {
    padding: .15rem;
}

.safeExamList .list .listTop {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .15rem;
    /* border: 1px solid #ccc; */
    height: .45rem;
    padding: 0 .15rem;
    background: #fff;
    border-radius: .1rem;
}

.safeExamList .list .listTop .l {
    font-weight: 700;
    font-size: .16rem;
}

.safeExamList .list .listTop .r {
    font-size: .12rem;
    display: flex;
    align-items: center;
    padding: .1rem 0;
}

.safeExamList .list .listTop .r span {
    margin-left: .05rem;
    color: #666;
    transition: all 0.3s ease;
}

.safeExamList .list .listTop .r .iconfont {
    transform: rotate(180deg);
}

.safeExamList .list .listTop .r.active .iconfont {
    transform: rotate(0);
}

.safeExamList .list .listUl {
    background: #fff;
    padding: 0 .15rem;
    border-radius: .1rem;
    box-shadow: 0 0 10px rgb(0 0 0 / 5%);
    margin-bottom: .15rem;
}

.safeExamList .list .listUl li {
    padding: .15rem 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #eee;
}

.safeExamList .list .listUl li .t {
    margin-bottom: .15rem;
}

.safeExamList .list .listUl li .b {
    display: flex;
}

.safeExamList .list .listUl li .l {
    width: .87rem;
    height: .6rem;
    overflow: hidden;
    margin-right: .1rem;
    overflow: hidden;
    position: relative;
}

.safeExamList .list .listUl li .l img {
    display: block;
    width: 100%;
    height: 100%;
}

.safeExamList .list .listUl li .l.lock {}

.safeExamList .list .listUl li .l.lock img {}

.safeExamList .list .listUl li .l.lock .subClock {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
}

.safeExamList .list .listUl li .l.lock .subClock img {
    width: .25rem;
    height: auto;
}

.safeExamList .list .listUl li .r {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

.safeExamList .list .listUl li .r .title {
    /* font-weight: 700; */
    font-size: .16rem;
    line-height: 1.3;
}

.safeExamList .list .listUl li .r .status {
    font-size: .12rem;
    color: #888;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex: 1;
    width: 100%;
}

.safeExamList .list .listUl li .r .status span {}

.safeExamList .list .listUl li .r .status a {
    font-size: .11rem;
    width: .7rem;
    height: .27rem;
    display: flex;
    background: #eb2222;
    color: #fff;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    margin-left: .1rem;
    line-height: 1;
}

.safeExamList .list .listUl li .r .status a.agin {
    background: #43be42;
}

.safeExamList .list .listUl li:last-child {
    border: none;
}

/* 考试 */
.exam {}

.exam .topInfo {
    padding: .15rem .15rem 0;
    font-size: .11rem;
    text-align: center;
}

.exam .topInfo p {}

.exam .list {
    padding: .15rem;
}

.exam .list ul {}

.exam .list ul li {
    background: #fff;
    margin-bottom: .15rem;
    border-radius: .1rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}

.exam .list ul li a {
    display: flex;
    padding: .15rem;
    justify-content: space-between;
    align-items: center;
    font-size: .13rem;
}

.exam .list ul li a .l {
    flex: 1;
}

.exam .list ul li a .l .title {
    font-size: .16rem;
    font-weight: 700;
    color: #111;
}

.exam .list ul li a .l .check {
    font-size: .12rem;
    color: #999;
    display: flex;
    align-items: center;
    margin-top: .1rem;
}

.exam .list ul li a .l .check span {
    font-size: .13rem;
    margin-right: .05rem;
    color: #d62a2a;
}

.exam .list ul li a .l .check em {}

.exam .list ul li a .c {
    text-align: right;
    margin-right: .15rem;
}

.exam .list ul li a .c .complete {
    font-size: .14rem;
    color: #2fbe43;
    font-weight: 700;
}

.exam .list ul li a .c .complete2 {
    font-size: .14rem;
    color: #ff4a00;
}

.exam .list ul li a .c .unComplete {}

.exam .list ul li a .c .unComplete .ct {
    font-size: .2rem;
    margin-bottom: .05rem;
}

.exam .list ul li a .c .unComplete .ct span {
    font-size: .12rem;
}

.exam .list ul li a .c .unComplete .info {
    color: #999;
    font-size: .12rem;
}

.exam .list ul li a .r {}

.exam .list ul li a .r span {
    color: #999;
    font-size: .2rem;
}


/**
 * 个人中心
 */
.personnal {
    --personal-menu-icon-color: #fa5248;
    --personal-menu-arrow-color: #e1cece;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding-bottom: .65rem;
    background: #fffcf8;
    overflow: hidden;
    box-sizing: border-box;
}

.personnal .header {
    position: relative;
    padding: .25rem .15rem 0;
    background: linear-gradient(180deg, #fff 48%, #fffcf8 100%);
}

.personnal .header::before {
}

.personnal .header::after {
}

.personnal .header .t {
    position: relative;
    z-index: 1;
    padding: 0 0 .22rem 0;
    display: flex;
    align-items: center;
}

.personnal .header .t .tl {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 1rem;
    border: 3px solid #fff;
    margin-right: .22rem;
    overflow: hidden;
}

.personnal .header .t .tl img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.personnal .header .t .tr {
    display: block;
    min-width: 0;
}

.personnal .header .t .tr .nickname {
    font-size: 0.18rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    line-height: 1.1;
    color: #111;
    margin-bottom: .1rem;
}

.personnal .header .t .tr .nickname em {
    /* line-height: 1; */
    /* display: inline-block; */
}

.personnal .header .t .tr .nickname span {
    display: none;
    width: .2rem;
    margin-left: .1rem;
    margin-top: -.03rem;
}

.personnal .header .t .tr .nickname span img {
    display: block;
    width: 100%;
}

.personnal .header .t .tr .tagName {
    display: inline-flex;
    align-items: center;
    border-radius: .18rem;
    color: #9a8c86;
    font-size: .11rem;
    position: relative;
}

.personnal .header .t .tr .tagName img {
    display: block;
    width: .13rem;
    margin-right: .04rem;
}

.personnal .header .b {
    position: relative;
    z-index: 1;
    /* min-height: .82rem; */
    padding: .18rem .17rem .16rem;
    background:
        radial-gradient(circle at 11% 50%, rgba(255, 255, 255, .34) 0, rgba(255, 255, 255, .34) .65rem, rgba(255, 255, 255, 0) .66rem),
        linear-gradient(90deg, #fff0dc 0%, #fff6ec 100%);
    border-radius: .1rem;
    box-shadow: none;
    overflow: hidden;
}

.personnal .header .b::before {
    content: "";
    height: .86rem;
    background: url(../../img/index/history-heart.png) no-repeat right bottom;
    background-size: contain;
    pointer-events: none;
    position: absolute;
    right: 0.1rem;
    bottom: -.05rem;
    width: 0.5rem;
    object-fit: contain;
}

.personnal .header .b .summaryLabel {
    position: relative;
    z-index: 1;
    margin-bottom: .09rem;
    color: #9d856a;
    font-size: .12rem;
    line-height: 1;
}

.personnal .header .b .summaryMain {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: baseline;
}

.personnal .header .b .summaryMoney {
    flex: none;
    display: inline-flex;
    align-items: baseline;
    color: #ff3b24;
    white-space: nowrap;
}

.personnal .header .b .summaryMoney span {
    font-size: .29rem;
    font-weight: 700;
    line-height: 1;
}

.personnal .header .b .summaryMoney em {
    margin-left: .05rem;
    color: #7d6f62;
    font-size: .13rem;
    font-style: normal;
}

.personnal .header .b .summaryMain i {
    flex: none;
    width: 1px;
    height: .24rem;
    margin: 0 .22rem 0 .2rem;
    background: #d7b99b;
    opacity: .75;
}

.personnal .header .b .summaryTimes {
    display: inline-flex;
    align-items: baseline;
    min-width: 0;
    padding-right: .72rem;
    white-space: nowrap;
}

.personnal .header .b .summaryTimes em {
    color: #8d7862;
    font-size: .14rem;
    font-style: normal;
}

.personnal .header .b .summaryTimes span {
    margin: 0 .08rem;
    color: #ff3b24;
    font-size: .24rem;
    font-weight: 700;
    line-height: 1;
}

.personnal .list {
    padding: .26rem .15rem;
}

.personnal .list ul {
    background: #fff;
    margin-bottom: .15rem;
    border-radius: .1rem;
    padding: .05rem .15rem;
    box-sizing: border-box;
    box-shadow: 0 .03rem .14rem rgba(203, 123, 69, .16);
}

.personnal .list ul li {}

.personnal .list ul li.btLine {
    /* border-bottom: 1px solid #eee; */
}

.personnal .list ul li a {
    display: flex;
    justify-content: space-between;
    /* min-height: .6rem; */
    align-items: center;
    color: #111;
    padding: 0.12rem 0;
}

.personnal .list ul li a .l {
    flex: 1;
    min-width: 0;
    margin-left: .16rem;
}

.personnal .list ul li a .l strong {
    display: block;
    color: #111;
    font-size: .14rem;
    font-weight: 700;
    line-height: 1.2;
}

.personnal .list ul li a .l em {
    display: block;
    margin-top: .02rem;
    color: #bdb1b1;
    font-size: .1rem;
    font-style: normal;
    line-height: 1.2;
}

.personnal .list ul li a .r {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--personal-menu-arrow-color);
}

.personnal .list ul li a .r span {
    color: #999;
    font-size: .18rem;
}

.personnal .list ul li a .r svg {
    display: block;
    width: .15rem;
    height: .15rem;
}

.personnal .list ul li a .menuIcon {
    flex: none;
    width: .3rem;
    height: .3rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .2rem;
    color: var(--personal-menu-icon-color);
}

.personnal .list ul li a .menuIcon svg {
    display: block;
    width: .15rem;
    height: .15rem;
}

.personnal .list ul li a .menuIcon.donate,
.personnal .list ul li a .menuIcon.invoice,
.personnal .list ul li a .menuIcon.profile {
    background: #fff0f0;
}

/**
 * 个人中心 - 发票管理
 */
.personalInvoice {
    --invoice-red: #f04438;
    --invoice-orange: #ff6427;
    --invoice-ink: #25211f;
    --invoice-muted: #9c8f89;
    --invoice-line: #f1e7e1;
    --invoice-bg: #fff8f3;
    min-height: 100%;
    padding-bottom: .92rem;
    padding-bottom: calc(.92rem + env(safe-area-inset-bottom));
    background: var(--invoice-bg);
    color: var(--invoice-ink);
    box-sizing: border-box;
}

.invoiceTopbar {
    position: sticky;
    z-index: 30;
    top: 0;
    height: .5rem;
    padding: 0 .1rem;
    display: grid;
    grid-template-columns: .4rem minmax(0, 1fr) .4rem;
    align-items: center;
    background: #f4512c;
    color: #fff;
    box-sizing: border-box;
}

.invoiceTopbar h1 {
    margin: 0;
    overflow: hidden;
    color: #fff;
    font-size: .17rem;
    font-weight: 700;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceTopbarBtn {
    width: .36rem;
    height: .36rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.invoiceTopbarBtn:last-child {
    justify-self: end;
}

.invoiceTopbarBtn svg {
    width: .2rem;
    height: .2rem;
}

.invoiceSummaryBand {
    padding: .18rem .16rem .2rem;
    background: #f4512c;
    color: #fff;
}

.invoiceSummaryLabel {
    margin-bottom: .12rem;
    color: rgba(255, 255, 255, .78);
    font-size: .11rem;
}

.invoiceSummaryGrid {
    display: grid;
    grid-template-columns: .8fr 1.35fr .8fr;
}

.invoiceSummaryGrid div {
    min-width: 0;
    padding: 0 .11rem;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(255, 255, 255, .25);
}

.invoiceSummaryGrid div:first-child {
    padding-left: 0;
}

.invoiceSummaryGrid div:last-child {
    padding-right: 0;
    border-right: 0;
}

.invoiceSummaryGrid strong {
    overflow: hidden;
    font-size: .2rem;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceSummaryGrid span {
    margin-top: .04rem;
    color: rgba(255, 255, 255, .72);
    font-size: .1rem;
}

.invoiceTabs {
    height: .48rem;
    padding: 0 .16rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    background: #fff;
    border-bottom: 1px solid var(--invoice-line);
}

.invoiceTabs a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6e625e;
    font-size: .14rem;
}

.invoiceTabs a.active {
    color: var(--invoice-red);
    font-weight: 700;
}

.invoiceTabs a.active::after {
    content: "";
    position: absolute;
    right: 32%;
    bottom: 0;
    left: 32%;
    height: .03rem;
    border-radius: .03rem .03rem 0 0;
    background: var(--invoice-red);
}

.invoiceSectionHead {
    padding: .18rem .15rem .11rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .12rem;
}

.invoiceSectionHead h2 {
    margin: 0 0 .03rem;
    font-size: .16rem;
    line-height: 1.2;
    text-align: left;
}

.invoiceSectionHead p {
    color: var(--invoice-muted);
    font-size: .1rem;
}

.invoiceSelectAll {
    flex: none;
    display: inline-flex;
    align-items: center;
    color: var(--invoice-red);
    font-size: .12rem;
}

.invoiceSelectAll input {
    width: .16rem;
    height: .16rem;
    margin: 0 .05rem 0 0;
    accent-color: var(--invoice-red);
}

.invoiceDonationList,
.invoiceHistoryList,
.invoiceHeaderList {
    padding: 0 .15rem .12rem;
}

.invoiceDonationCard {
    position: relative;
    min-height: .72rem;
    margin-bottom: .1rem;
    padding: .13rem .13rem .13rem .44rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .1rem;
    border: 1px solid transparent;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .12rem rgba(169, 107, 73, .08);
    box-sizing: border-box;
}

.invoiceRecordCheck {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.invoiceCheckmark {
    position: absolute;
    left: .14rem;
    top: 50%;
    width: .2rem;
    height: .2rem;
    border: 1px solid #d8cfcb;
    border-radius: 50%;
    transform: translateY(-50%);
    box-sizing: border-box;
}

.invoiceRecordCheck:checked + .invoiceCheckmark {
    border-color: var(--invoice-red);
    background: var(--invoice-red);
}

.invoiceRecordCheck:checked + .invoiceCheckmark::after {
    content: "";
    position: absolute;
    left: .055rem;
    top: .025rem;
    width: .05rem;
    height: .09rem;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
}

.invoiceDonationInfo {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceDonationInfo strong {
    overflow: hidden;
    color: var(--invoice-ink);
    font-size: .14rem;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceDonationInfo em {
    margin-top: .06rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .1rem;
    font-style: normal;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceDonationMoney {
    color: var(--invoice-red);
    font-size: .16rem;
    font-weight: 700;
    white-space: nowrap;
}

.invoiceStickyBar,
.invoiceSubmitWrap {
    position: fixed;
    z-index: 25;
    right: 0;
    bottom: 0;
    left: 0;
    min-height: .68rem;
    padding: .1rem .15rem;
    padding-bottom: calc(.1rem + env(safe-area-inset-bottom));
    display: flex;
    align-items: center;
    gap: .12rem;
    border-top: 1px solid var(--invoice-line);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -.06rem .18rem rgba(121, 72, 47, .08);
    box-sizing: border-box;
}

.invoiceStickyBar > div {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceStickyBar > div span {
    color: var(--invoice-muted);
    font-size: .1rem;
}

.invoiceStickyBar > div span em {
    color: var(--invoice-ink);
    font-style: normal;
}

.invoiceStickyBar > div strong {
    margin-top: .02rem;
    color: var(--invoice-red);
    font-size: .2rem;
    line-height: 1;
}

.invoiceStickyBar > div strong em {
    font-style: normal;
}

.invoiceStickyBar button,
.invoiceSubmitWrap button,
.invoicePrimaryButton {
    height: .44rem;
    border: 0;
    border-radius: .08rem;
    background: var(--invoice-orange);
    color: #fff;
    font-size: .15rem;
    font-weight: 700;
}

.invoiceStickyBar button {
    flex: none;
    width: 1.3rem;
}

.invoiceStickyBar button:disabled,
.invoiceSubmitWrap button:disabled {
    background: #d9d1cd;
    color: #fff;
}

.invoiceEmptyState {
    padding: .75rem .25rem .3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.invoiceEmptyIcon {
    width: .56rem;
    height: .56rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffebe2;
    color: var(--invoice-orange);
    font-size: .22rem;
    font-weight: 700;
}

.invoiceEmptyState h2 {
    margin: .16rem 0 .05rem;
    font-size: .16rem;
}

.invoiceEmptyState p {
    color: var(--invoice-muted);
    font-size: .11rem;
}

.invoiceEmptyState a {
    margin-top: .18rem;
    padding: .1rem .24rem;
    border: 1px solid var(--invoice-orange);
    border-radius: .08rem;
    color: var(--invoice-orange);
    font-size: .13rem;
}

.invoiceHistoryList {
    padding-top: .15rem;
}

.invoiceHistoryCard {
    margin-bottom: .12rem;
    overflow: hidden;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .14rem rgba(169, 107, 73, .09);
}

.invoiceHistoryHead {
    padding: .13rem .14rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .1rem;
    border-bottom: 1px solid var(--invoice-line);
}

.invoiceHistoryHead > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceHistoryHead span {
    color: var(--invoice-muted);
    font-size: .09rem;
}

.invoiceHistoryHead strong {
    margin-top: .03rem;
    overflow: hidden;
    font-size: .12rem;
    font-weight: 500;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceStatusBadge {
    flex: none;
    padding: .04rem .08rem;
    border-radius: .04rem;
    background: #fff3df;
    color: #c87915;
    font-size: .1rem;
    font-style: normal;
}

.invoiceHistoryCard.status1 .invoiceStatusBadge {
    background: #e9f7ee;
    color: #218a4c;
}

.invoiceHistoryCard.status2 .invoiceStatusBadge {
    background: #fff0ef;
    color: var(--invoice-red);
}

.invoiceHistoryBody {
    padding: .12rem .14rem;
}

.invoiceHistoryBody > div {
    min-height: .28rem;
    display: grid;
    grid-template-columns: .74rem minmax(0, 1fr);
    align-items: start;
    gap: .1rem;
}

.invoiceHistoryBody span {
    color: var(--invoice-muted);
    font-size: .12rem;
}

.invoiceHistoryBody strong {
    min-width: 0;
    overflow-wrap: anywhere;
    /* font-size: .12rem; */
    font-weight: 500;
    text-align: right;
}

.invoiceHistoryBody strong.invoiceAmount,
.invoiceAmount {
    color: var(--invoice-red);
    font-weight: 700;
}

.invoiceRejectBrief {
    margin: 0 .14rem .1rem;
    padding: .08rem .1rem;
    border-radius: .05rem;
    background: #fff5f2;
    color: #a95d4b;
    font-size: .1rem;
    line-height: 1.45;
}

.invoiceCardAction {
    height: .4rem;
    padding: 0 .14rem;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    border-top: 1px solid var(--invoice-line);
    color: var(--invoice-orange);
    font-size: .11rem;
}

.invoiceCardAction span {
    margin-left: .05rem;
    /* font-size: .18rem; */
    font-weight: 700;
}

.invoiceEmailState.emailStatus0 {
    color: #d28a21;
}

.invoiceEmailState.emailStatus1 {
    color: #2e9b66;
}

.invoiceEmailState.emailStatus2 {
    color: var(--invoice-red);
}

.invoiceApplyAmount {
    margin: .15rem;
    padding: .18rem .16rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .14rem rgba(169, 107, 73, .08);
}

.invoiceApplyAmount > span {
    color: var(--invoice-muted);
    font-size: .11rem;
}

.invoiceApplyAmount strong {
    margin: .06rem 0 .04rem;
    color: var(--invoice-red);
    font-size: .3rem;
    line-height: 1;
}

.invoiceApplyAmount strong em {
    margin-right: .02rem;
    font-size: .16rem;
    font-style: normal;
}

.invoiceApplyAmount p {
    color: #b1a39c;
    font-size: .09rem;
}

.invoiceFormSection,
.invoiceSelectedRecords,
.invoiceDetailPanel,
.invoiceResultCard {
    margin: 0 .15rem .12rem;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .14rem rgba(169, 107, 73, .07);
}

.invoiceSegmented {
    margin: .13rem .14rem .04rem;
    padding: .03rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-radius: .07rem;
    background: #f7f1ed;
}

.invoiceSegmented label {
    position: relative;
}

.invoiceSegmented input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.invoiceSegmented span {
    height: .34rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .05rem;
    color: #7e716c;
    font-size: .12rem;
}

.invoiceSegmented input:checked + span {
    background: #fff;
    color: var(--invoice-red);
    font-weight: 700;
    box-shadow: 0 .02rem .07rem rgba(123, 79, 57, .1);
}

.invoiceHeaderPicker {
    width: 100%;
    min-height: .58rem;
    padding: .11rem .14rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .1rem;
    border: 0;
    border-bottom: 1px solid var(--invoice-line);
    outline: 0;
    background: transparent;
    color: var(--invoice-ink);
    font-family: inherit;
    text-align: left;
    box-sizing: border-box;
}

.invoiceHeaderPicker > span {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceHeaderPicker em {
    color: var(--invoice-muted);
    font-size: .1rem;
    font-style: normal;
}

.invoiceHeaderPicker strong {
    margin-top: .04rem;
    overflow: hidden;
    font-size: .13rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderPicker small {
    margin-top: .03rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .09rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderPicker b {
    flex: none;
    color: var(--invoice-orange);
    font-size: .11rem;
    font-weight: 500;
}

.invoiceField,
.invoiceReadonlyRow {
    min-height: .53rem;
    margin: 0 .14rem;
    display: grid;
    grid-template-columns: .92rem minmax(0, 1fr);
    align-items: center;
    gap: .08rem;
    border-bottom: 1px solid var(--invoice-line);
    box-sizing: border-box;
}

.invoiceFormSection > .invoiceField:last-child,
.invoiceFormSection > .invoiceReadonlyRow:last-child {
    border-bottom: 0;
}

.invoiceField > span,
.invoiceReadonlyRow > span {
    color: #4e4541;
    font-size: .12rem;
}

.invoiceField > span i {
    margin-left: .03rem;
    color: var(--invoice-red);
    font-style: normal;
}

.invoiceField input,
.invoiceField textarea {
    width: 100%;
    min-width: 0;
    padding: .08rem 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--invoice-ink);
    font-size: .12rem;
    line-height: 1.35;
    box-sizing: border-box;
}

.invoiceField input::placeholder,
.invoiceField textarea::placeholder {
    color: #c9c1bd;
}

.invoiceTextareaField {
    align-items: start;
    padding: .12rem 0;
}

.invoiceTextareaField > span {
    padding-top: .08rem;
}

.invoiceTextareaField textarea {
    height: .7rem;
    resize: none;
}

.invoiceReadonlyRow strong {
    font-size: .12rem;
    font-weight: 500;
    text-align: right;
}

.invoiceSelectedRecords {
    padding: .13rem .14rem;
}

.invoiceSelectedRecords h2,
.invoiceDetailPanel h2 {
    margin: .1rem 0 .15rem;
    font-size: .14rem;
    color: #111;
}

.invoiceSelectedRecords > div {
    padding: .08rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .12rem;
    border-top: 1px solid var(--invoice-line);
}

.invoiceSelectedRecords > div > span {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    font-size: .11rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceSelectedRecords > div em {
    margin-top: .03rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .09rem;
    font-style: normal;
    text-overflow: ellipsis;
}

.invoiceSelectedRecords > div strong {
    flex: none;
    color: var(--invoice-red);
    font-size: .13rem;
}

.invoiceNotice {
    margin: .03rem .18rem .14rem;
    padding-left: .16rem;
    position: relative;
    color: #ad7560;
    font-size: .09rem;
    line-height: 1.5;
}

.invoiceNotice::before {
    content: "!";
    position: absolute;
    left: 0;
    top: .01rem;
    width: .12rem;
    height: .12rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e39170;
    border-radius: 50%;
    font-size: .08rem;
    box-sizing: border-box;
}

.invoiceSubmitWrap button,
.invoiceSubmitWrap .invoicePrimaryButton {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.invoiceHeaderList {
    padding-top: .15rem;
}

.invoiceHeaderCard {
    margin-bottom: .1rem;
    overflow: hidden;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .13rem rgba(169, 107, 73, .08);
}

.invoiceHeaderSelect {
    min-height: .72rem;
    padding: .13rem .14rem;
    display: grid;
    grid-template-columns: .4rem minmax(0, 1fr) auto;
    align-items: center;
    gap: .1rem;
    color: var(--invoice-ink);
    box-sizing: border-box;
}

.invoiceHeaderType {
    width: .36rem;
    height: .24rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .04rem;
    background: #fff0e9;
    color: var(--invoice-orange);
    font-size: .09rem;
}

.invoiceHeaderMain {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceHeaderMain strong {
    overflow: hidden;
    font-size: .13rem;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderMain strong em {
    margin-left: .05rem;
    padding: .02rem .04rem;
    border-radius: .03rem;
    background: #e9f7ee;
    color: #238b4e;
    font-size: .08rem;
    font-style: normal;
    font-weight: 500;
    vertical-align: middle;
}

.invoiceHeaderMain small {
    margin-top: .04rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .09rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderChoose {
    color: var(--invoice-orange);
    font-size: .1rem;
    white-space: nowrap;
}

.invoiceHeaderActions {
    height: .38rem;
    padding: 0 .14rem;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .2rem;
    border-top: 1px solid var(--invoice-line);
}

.invoiceHeaderActions a,
.invoiceHeaderActions button {
    padding: .06rem 0;
    border: 0;
    background: transparent;
    color: #8f817b;
    font-size: .1rem;
}

.invoiceHeaderActions button {
    color: var(--invoice-red);
}

.invoiceHeaderEmpty {
    padding-top: 1rem;
}

.invoiceHeaderAddWrap .invoicePrimaryButton {
    height: .44rem;
}

body.invoiceModalOpen {
    overflow: hidden;
}

.invoiceHeaderModal {
    position: fixed;
    z-index: 90;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: visibility .2s ease, opacity .2s ease;
}

.invoiceHeaderModal.show {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.invoiceHeaderModalSheet {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 4.8rem;
    height: 84vh;
    max-height: 7.2rem;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: .08rem .08rem 0 0;
    background: #fff;
    box-shadow: 0 -.08rem .3rem rgba(67, 42, 30, .16);
    transform: translateY(100%);
    transition: transform .24s ease;
    box-sizing: border-box;
}

.invoiceHeaderModal.show .invoiceHeaderModalSheet {
    transform: translateY(0);
}

.invoiceHeaderModalHead {
    flex: none;
    min-height: .64rem;
    padding: .09rem .12rem;
    display: grid;
    grid-template-columns: .36rem minmax(0, 1fr) .36rem;
    align-items: center;
    border-bottom: 1px solid var(--invoice-line);
    background: #fff;
    box-sizing: border-box;
}

.invoiceHeaderModalHead > div {
    min-width: 0;
    text-align: center;
}

.invoiceHeaderModalHead h2 {
    margin: 0;
    overflow: hidden;
    color: var(--invoice-ink);
    font-size: .16rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderModalHead p {
    margin-top: .03rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .09rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceHeaderModalBack,
.invoiceHeaderModalClose {
    width: .34rem;
    height: .34rem;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    outline: 0;
    background: transparent;
    color: #645752;
    font-family: inherit;
    font-size: .26rem;
    line-height: 1;
}

.invoiceHeaderModalBack {
    visibility: hidden;
    font-size: .3rem;
}

.invoiceHeaderModalBack.show {
    visibility: visible;
}

.invoiceHeaderModalClose {
    justify-self: end;
}

.invoiceHeaderModalView {
    min-height: 0;
    display: none;
    flex: 1;
    flex-direction: column;
}

.invoiceHeaderModalView.active {
    display: flex;
}

.invoiceHeaderModalList {
    flex: 1;
    min-height: 0;
    padding: .12rem .14rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--invoice-bg);
    box-sizing: border-box;
}

.invoiceHeaderModalCard {
    margin-bottom: .1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) .54rem;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .03rem .12rem rgba(169, 107, 73, .08);
}

.invoiceHeaderModalCard.selected {
    border-color: #ff9b75;
    background: #fffdfa;
}

.invoiceHeaderModalSelect {
    width: 100%;
    min-width: 0;
    min-height: .72rem;
    padding: .12rem;
    display: grid;
    grid-template-columns: .4rem minmax(0, 1fr) .24rem;
    align-items: center;
    gap: .09rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--invoice-ink);
    font-family: inherit;
    text-align: left;
    box-sizing: border-box;
}

.invoiceHeaderModalCheck {
    width: .2rem;
    height: .2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8cfcb;
    border-radius: 50%;
    color: #fff;
    font-size: .12rem;
    font-weight: 700;
    box-sizing: border-box;
}

.invoiceHeaderModalCard.selected .invoiceHeaderModalCheck {
    border-color: var(--invoice-red);
    background: var(--invoice-red);
}

.invoiceHeaderModalMeta {
    min-width: 0;
    margin-top: .04rem;
    display: flex;
    align-items: center;
    gap: .05rem;
}

.invoiceHeaderModalMeta em {
    flex: none;
    padding: .02rem .04rem;
    border-radius: .03rem;
    background: #e9f7ee;
    color: #238b4e;
    font-size: .08rem;
    font-style: normal;
    line-height: 1.2;
}

.invoiceHeaderModalMeta small {
    min-width: 0;
    margin-top: 0;
}

.invoiceHeaderModalActions {
    align-self: stretch;
    display: grid;
    grid-template-rows: 1fr 1fr;
    border-left: 1px solid var(--invoice-line);
}

.invoiceHeaderModalEdit,
.invoiceHeaderModalDelete {
    width: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--invoice-orange);
    font-family: inherit;
    font-size: .11rem;
}

.invoiceHeaderModalDelete {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .03rem;
    border-top: 1px solid var(--invoice-line);
    color: #b85a4e;
}

.invoiceHeaderModalDelete .iconfont {
    font-size: .13rem;
}

.invoiceHeaderModalDelete em {
    font-style: normal;
}

.invoiceHeaderModalDelete:disabled {
    color: #cfc6c2;
}

.invoiceHeaderModalEmpty {
    flex: 1;
    min-height: 0;
    padding: .3rem .2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--invoice-bg);
    text-align: center;
}

.invoiceHeaderModalEmpty > span {
    width: .52rem;
    height: .52rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffebe2;
    color: var(--invoice-orange);
    font-size: .19rem;
    font-weight: 700;
}

.invoiceHeaderModalEmpty h3 {
    margin: .13rem 0 .05rem;
    font-size: .15rem;
}

.invoiceHeaderModalEmpty p {
    color: var(--invoice-muted);
    font-size: .1rem;
    line-height: 1.5;
}

.invoiceHeaderModalFooter {
    flex: none;
    min-height: .64rem;
    padding: .1rem .14rem;
    padding-bottom: calc(.1rem + env(safe-area-inset-bottom));
    display: flex;
    align-items: center;
    border-top: 1px solid var(--invoice-line);
    background: #fff;
    box-sizing: border-box;
}

.invoiceHeaderModalFooter.split {
    display: grid;
    grid-template-columns: .86rem minmax(0, 1fr);
    gap: .1rem;
}

.invoiceHeaderModalFooter button {
    width: 100%;
    height: .44rem;
    border-radius: .08rem;
    font-family: inherit;
    font-size: .14rem;
    font-weight: 700;
}

.invoiceHeaderAddButton,
.invoiceHeaderEditorSave {
    border: 0;
    background: var(--invoice-orange);
    color: #fff;
}

.invoiceHeaderEditorCancel {
    border: 1px solid var(--invoice-line);
    background: #fff;
    color: #746762;
}

.invoiceHeaderEditorSave:disabled {
    background: #d9d1cd;
}

.invoiceHeaderEditorBody {
    flex: 1;
    min-height: 0;
    padding: .02rem 0 .12rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #fff;
}

.invoiceHeaderEditor .invoiceSegmented {
    margin-top: .13rem;
}

.invoiceHeaderEditor .invoiceField {
    min-height: .56rem;
}

.invoiceDefaultToggle {
    min-height: .62rem;
    margin: 0 .14rem;
    display: flex;
    align-items: center;
    border-bottom: 0;
}

.invoiceDefaultToggle > span {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceDefaultToggle strong {
    font-size: .12rem;
}

.invoiceDefaultToggle em {
    margin-top: .03rem;
    color: var(--invoice-muted);
    font-size: .09rem;
    font-style: normal;
}

.invoiceDefaultToggle input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.invoiceDefaultToggle i {
    position: relative;
    flex: none;
    width: .42rem;
    height: .24rem;
    border-radius: .24rem;
    background: #d7d3d1;
    transition: background .2s ease;
}

.invoiceDefaultToggle i::after {
    content: "";
    position: absolute;
    left: .03rem;
    top: .03rem;
    width: .18rem;
    height: .18rem;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .16);
    transition: transform .2s ease;
}

.invoiceDefaultToggle input:checked + i {
    background: var(--invoice-red);
}

.invoiceDefaultToggle input:checked + i::after {
    transform: translateX(.18rem);
}

.invoiceResultPage {
    background: #fff8f3;
}

.invoiceResultHero {
    padding: .32rem .2rem .42rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f4512c;
    color: #fff;
    text-align: center;
}

.invoiceResultCheck {
    width: .58rem;
    height: .58rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: var(--invoice-orange);
    font-size: .28rem;
    font-weight: 700;
}

.invoiceResultHero h1 {
    margin: .14rem 0 .05rem;
    font-size: .2rem;
    color: #fff;
}

.invoiceResultHero p {
    color: rgba(255, 255, 255, .76);
    font-size: .11rem;
}

.invoiceResultPage .invoiceResultCard:first-of-type {
    margin-top: -.22rem;
}

.invoiceResultCard {
    padding: .15rem;
}

.invoiceResultAmount {
    padding-bottom: .14rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--invoice-line);
}

.invoiceResultAmount span {
    color: var(--invoice-muted);
    font-size: .11rem;
}

.invoiceResultAmount strong {
    color: var(--invoice-red);
    font-size: .2rem;
}

.invoiceProgress {
    padding-top: .14rem;
}

.invoiceProgress > div {
    position: relative;
    min-height: .48rem;
    padding-left: .24rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-content: start;
    gap: .03rem .1rem;
}

.invoiceProgress > div:not(:last-child)::before {
    content: "";
    position: absolute;
    left: .055rem;
    top: .14rem;
    bottom: -.02rem;
    width: 1px;
    background: #ddd5d1;
}

.invoiceProgress i {
    position: absolute;
    left: 0;
    top: .02rem;
    width: .12rem;
    height: .12rem;
    border: 2px solid #d4cbc7;
    border-radius: 50%;
    background: #fff;
    box-sizing: border-box;
}

.invoiceProgress .active i {
    border-color: var(--invoice-orange);
    background: var(--invoice-orange);
    box-shadow: 0 0 0 3px #ffe7dc;
}

.invoiceProgress .active:not(:last-child)::before {
    background: #ffb99d;
}

.invoiceProgress span {
    /* font-size: .12rem; */
    font-weight: 700;
}

.invoiceProgress em {
    color: var(--invoice-muted);
    /* font-size: .09rem; */
    font-style: normal;
    text-align: right;
}

.invoiceResultInfo > div {
    min-height: .38rem;
    display: grid;
    grid-template-columns: .75rem minmax(0, 1fr);
    align-items: center;
    gap: .1rem;
}

.invoiceResultInfo span {
    color: var(--invoice-muted);
    font-size: .1rem;
}

.invoiceResultInfo strong {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: .11rem;
    font-weight: 500;
    text-align: right;
}

.invoiceResultActions {
    padding: .06rem .15rem .2rem;
    display: flex;
    flex-direction: column;
    gap: .1rem;
}

.invoiceResultActions a {
    width: 100%;
    height: .44rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.invoiceSecondaryButton {
    border: 1px solid var(--invoice-orange);
    border-radius: .08rem;
    background: #fff;
    color: var(--invoice-orange);
    font-size: .13rem;
}

.invoiceTextButton {
    color: var(--invoice-muted);
    font-size: .11rem;
}

.invoiceDetailStatus {
    padding: .18rem .16rem;
    display: flex;
    align-items: center;
    gap: .12rem;
    background: #f4512c;
}

.invoiceDetailStatus.status1 {
    background: #f4512c;
}

.invoiceDetailStatus.status2 {
    background: #f4512c;
}

.invoiceDetailStatusIcon {
    flex: none;
    width: .4rem;
    height: .4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: #d28a21;
    font-size: .18rem;
    font-weight: 700;
}

.invoiceDetailStatus.status1 .invoiceDetailStatusIcon {
    color: #f4512c;
}

.invoiceDetailStatus.status2 .invoiceDetailStatusIcon {
    color: var(--invoice-red);
}

.invoiceDetailStatus h1 {
    margin: 0 0 .03rem;
    font-size: .17rem;
    text-align: left;
    color: #fff;
}

.invoiceDetailStatus p {
    color: #fff;
    font-size: .1rem;
    line-height: 1.4;
}

.invoiceDetailPanel {
    margin-top: .12rem;
    padding: .14rem;
}

.invoiceDetailProgress {
    padding-top: 0;
}

.invoiceDetailAlert {
    margin: .12rem .15rem 0;
    padding: .11rem .12rem;
    border-radius: .06rem;
    background: #fff0ed;
    color: #9c5141;
    font-size: .1rem;
    line-height: 1.5;
}

.invoiceDetailAlert strong {
    display: block;
    margin-bottom: .03rem;
    color: var(--invoice-red);
    font-size: .11rem;
}

.invoiceDetailList > div {
    min-height: .36rem;
    display: grid;
    grid-template-columns: .82rem minmax(0, 1fr);
    align-items: start;
    gap: .1rem;
}

.invoiceDetailList dt {
    color: var(--invoice-muted);
    font-size: .12rem;
}

.invoiceDetailList dd {
    margin: 0;
    overflow-wrap: anywhere;
    /* font-size: .11rem; */
    line-height: 1.4;
    text-align: right;
}

.invoiceEmailSummary {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .02rem .06rem;
}

.invoiceEmailSummary span[data-status="0"] {
    color: #d28a21;
}

.invoiceEmailSummary span[data-status="1"] {
    color: #2e9b66;
}

.invoiceEmailSummary span[data-status="2"] {
    color: var(--invoice-red);
}

.invoiceEmailSummary em {
    color: var(--invoice-muted);
    font-size: .09rem;
    font-style: normal;
}

.invoiceEmailQuota span {
    color: var(--invoice-orange);
}

.invoiceRelatedRecords {
    margin-bottom: .15rem;
}

.invoiceRelatedItem {
    min-height: .52rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .12rem;
    border-top: 1px solid var(--invoice-line);
}

.invoiceRelatedItem > span {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.invoiceRelatedItem strong {
    overflow: hidden;
    /* font-size: .11rem; */
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceRelatedItem em {
    margin-top: .04rem;
    overflow: hidden;
    color: var(--invoice-muted);
    font-size: .11rem;
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoiceRelatedItem b {
    flex: none;
    color: var(--invoice-red);
    /* font-size: .12rem; */
}

.invoiceDetailActions {
    position: fixed;
    z-index: 25;
    right: 0;
    bottom: 0;
    left: 0;
    min-height: .68rem;
    padding: .1rem .15rem;
    padding-bottom: calc(.1rem + env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    align-items: center;
    gap: .1rem;
    border-top: 1px solid var(--invoice-line);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 -.05rem .16rem rgba(121, 72, 47, .08);
    box-sizing: border-box;
}

.invoiceDetailActions.single {
    grid-template-columns: 1fr;
}

.invoiceDetailActions a,
.invoiceDetailActions button {
    width: 100%;
    height: .44rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.invoiceDetailActions button:disabled,
.invoiceEmailSheet button:disabled {
    border-color: #d8cfca;
    background: #eee9e6;
    box-shadow: none;
    color: #aaa09a;
    cursor: not-allowed;
}

.invoiceEmailModal {
    position: fixed;
    z-index: 80;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    align-items: flex-end;
}

.invoiceEmailModal.show {
    display: flex;
}

.invoiceModalShade {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(35, 27, 23, .48);
}

.invoiceEmailSheet {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: .18rem .16rem .16rem;
    padding-bottom: calc(.16rem + env(safe-area-inset-bottom));
    border-radius: .08rem .08rem 0 0;
    background: #fff;
    box-sizing: border-box;
}

.invoiceEmailSheet h2 {
    margin: 0 0 .1rem;
    font-size: .16rem;
}

.invoiceEmailSheet > p {
    margin: .05rem 0 .15rem;
    color: var(--invoice-muted);
    font-size: .1rem;
}

.invoiceEmailSheet label {
    height: .48rem;
    padding: 0 .12rem;
    display: grid;
    grid-template-columns: .7rem minmax(0, 1fr);
    align-items: center;
    border: 1px solid var(--invoice-line);
    border-radius: .06rem;
}

.invoiceEmailSheet label span {
    font-size: .11rem;
}

.invoiceEmailSheet input {
    min-width: 0;
    border: 0;
    outline: 0;
    font-size: .11rem;
    padding: .1rem;
    background: #f8f8f8;
    border-radius: .05rem;
}

.invoiceEmailSheet > div {
    margin-top: .14rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .1rem;
}

.invoiceEmailSheet > div button {
    height: .42rem;
}

.invoiceDonationCard.selected {
    border-color: #ff9b75;
    background: #fffdfa;
}

@media only screen and (max-width: 345px) {
    .invoiceSummaryGrid {
        grid-template-columns: .72fr 1.45fr .72fr;
    }

    .invoiceSummaryGrid div {
        padding: 0 .07rem;
    }

    .invoiceSummaryGrid strong {
        font-size: .17rem;
    }

    .invoiceField,
    .invoiceReadonlyRow {
        grid-template-columns: .83rem minmax(0, 1fr);
    }

    .invoiceDonationCard {
        padding-right: .1rem;
    }

    .invoiceDonationMoney {
        font-size: .14rem;
    }
}

.personnal .list ul li a .menuIcon.exam,
.personnal .list ul li a .menuIcon.study {
    background: #fff7e8;
}

.personnal .list ul li a .menuIcon.about {
    background: #ffeeee;
}

.personnal .list .logoutButton {
    display: block;
    width: 100%;
    padding: .14rem;
    border: 0;
    border-radius: .1rem;
    background: transparent;
    /* box-shadow: 0 .03rem .14rem rgba(203, 123, 69, .16); */
    color: #bf9684;
    font-family: inherit;
    font-size: .11rem;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
}

.personnal .technicalSupport {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    padding: .08rem .25rem 0;
    color: #d7cabe;
    font-size: .1rem;
    line-height: 1.4;
    text-align: center;
}

.personnal .technicalSupport img {
    display: block;
    width: auto;
    max-width: .8rem;
    height: auto;
    max-height: .15rem;
    margin-right: .06rem;
    object-fit: contain;
}

.personnal .technicalSupport span {
    min-width: 0;
    overflow-wrap: anywhere;
}


/**
 * 登录界面
 */
.personnalLogin {}

.personnalLogin .btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 3rem;
}

.personnalLogin .btn .img {
    width: .6rem;
    height: .6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #4ec937;
    border-radius: 1rem;
    margin-bottom: .2rem;
}

.personnalLogin .btn .img span {
    color: #fff;
    font-size: .3rem;
}

.personnalLogin .btn .txt {}


/**
 * 我的捐赠
 */
.personnalDonation {
    background: #fff8f1;
    min-height: 100%;
}

.personnalDonation .list {
    padding: .15rem;
}

.personnalDonation .list ul {}

.personnalDonation .list ul li {
    position: relative;
    margin-bottom: .15rem;
    min-height: 1.12rem;
    padding: .16rem 1.35rem .14rem .15rem;
    border: 0;
    border-radius: .08rem;
    background: #fff;
    box-shadow: 0 .04rem .16rem rgba(160, 110, 70, .08);
    line-height: 1;
}

.personnalDonation .list ul li:last-child {
    border: none;
}

.personnalDonation .list ul li .title {
    font-size: .18rem;
    margin-bottom: .1rem;
}

.personnalDonation .list ul li .recordHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .12rem;
    margin-bottom: .08rem;
}

.personnalDonation .list ul li .recordHead strong {
    flex: 1;
    min-width: 0;
    color: #111;
    font-size: .16rem;
    font-weight: 700;
    line-height: 1.25;
}

.personnalDonation .list ul li .recordMoney {
    position: absolute;
    right: .15rem;
    top: 50%;
    transform: translateY(-35%);
    display: inline-flex;
    align-items: baseline;
    color: #f1261c;
    font-size: .12rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.personnalDonation .list ul li .recordMoneySymbol,
.personnalDonation .list ul li .recordMoneyUnit {
    font-size: .1rem;
    line-height: 1;
}

.personnalDonation .list ul li .recordMoneyValue {
    font-size: .3rem;
    line-height: 1;
}

.personnalDonation .list ul li .recordMoneySymbol {
    margin-right: .01rem;
}

.personnalDonation .list ul li .recordMoneyUnit {
    margin-left: .01rem;
}

.personnalDonation .list ul li .recordMoneyDecimal {
    margin-right: .01rem;
}

.personnalDonation .list ul li .recordLine {
    display: flex;
    align-items: center;
    color: #111;
    font-size: .12rem;
    line-height: 1.65;
}

.personnalDonation .list ul li .recordTwo {
    gap: .12rem;
}

.personnalDonation .list ul li .recordTwo div {
    min-width: 0;
    display: flex;
    align-items: center;
}

.personnalDonation .list ul li .recordLabel {
    flex: none;
    color: #888;
}

.personnalDonation .list ul li .recordValue {
    min-width: 0;
    color: #111;
    word-break: break-all;
}

.personnalDonation .list ul li .recordAction {
    margin-top: .09rem;
}

.personnalDonation .list ul li .item {
    display: flex;
    margin-bottom: .05rem;
    font-size: .13rem;
}

.personnalDonation .list ul li .item:last-child {
    margin: 0;
}

.personnalDonation .list ul li .item .l {
    color: #999;
}

.personnalDonation .list ul li .item .r {}

.personnalDonation .list ul li .item a {
    padding: .06rem 0;
    display: flex;
    align-items: center;
    font-size: .14rem;
}

.personnalDonation .list ul li .recordAction a {
    display: inline-flex;
    align-items: center;
    color: #111;
    font-size: .14rem;
}

.personnalDonation .list ul li .item a span {}

.personnalDonation .list ul li .recordAction a span {}

.personnalDonation .list ul li .item a span:nth-child(1),
.personnalDonation .list ul li .recordAction a span:nth-child(1) {
    color: #da251c;
    margin-right: .05rem;
}

.personnalDonation .list ul li .item a span:nth-child(2),
.personnalDonation .list ul li .recordAction a span:nth-child(2) {
    margin-right: 0.05rem;
}

.personnalDonation .list ul li .item a span:nth-child(3) {}

/* 捐赠详情 */
.personnalDonation .recordDetail {
    padding: .15rem;
}

.personnalDonation .recordDetail .recordDetailWrap {}

.personnalDonation .recordDetail .recordDetailWrap .title {
    text-align: center;
    font-size: .2rem;
    font-weight: 700;
    padding: .2rem 0;
}

.personnalDonation .recordDetail .recordDetailWrap ul {}

.personnalDonation .recordDetail .recordDetailWrap ul li {
    display: flex;
    justify-content: space-between;
    padding: .15rem 0;
    border-bottom: 1px solid #eee;
    align-items: center;
}

.personnalDonation .recordDetail .recordDetailWrap ul li .l {
    color: #999;
}

.personnalDonation .recordDetail .recordDetailWrap ul li .r {
    flex: 1;
    text-align: right;
    margin-left: .1rem;
    line-height: 1.4;
}

.personnalDonation .recordDetail .recordDetailWrap .subTitle {
    padding: .2rem 0;
    text-align: center;
    line-height: 1.6;
    color: #999;
    font-size: .11rem;
}

.personnalDonation .recordDetail .recordDetailWrap .subTitle p {}

.personnalDonation .recordDetail .recordDetailWrap .subTitle p:first-child {}

.personnalDonation .recordDetail .recordDetailWrap .subTitle p:last-child {}

.personnalDonation .recordDetail .recordDetailWrap .btn {}

.personnalDonation .recordDetail .recordDetailWrap .btn a {
    display: flex;
    height: .45rem;
    width: 3rem;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    border-radius: 1rem;
    margin: auto;
}

.recordDetailTop .certificate .certificateWrap {
    /* margin: 0; */
}

.recordDetailTop .certificate {
    /* left: 0; */
    /* position: static; */
    /* background: transparent; */
    /* margin: 0; */
}

.donationDetail {
    --donation-detail-heart-color: #f02828;
    position: relative;
    min-height: 100%;
    padding: .62rem .26rem .5rem;
    background: #fffcf8;
    box-sizing: border-box;
    overflow: hidden;
}

.donationDetail::after {
    content: "";
    position: fixed;
    left: -8%;
    right: -8%;
    bottom: -0.32rem;
    height: .75rem;
    border-radius: 50% 50% 0 0;
    /* background: linear-gradient(90deg, #ef2b2b, #ff6a10); */
    opacity: .88;
    pointer-events: none;
}

.donationDetail .detailHero {
    position: absolute;
    top: -1rem;
    right: -0.8rem;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 100%;
    background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, .75) 0 .6rem, transparent .29rem),
        linear-gradient(135deg, rgba(239, 43, 43, .2), rgba(239, 43, 43, .05));
    opacity: .8;
}

.donationDetail .recordDetail {
    position: relative;
    z-index: 1;
    padding: 0;
}

.donationDetail .detailBadge {
    position: absolute;
    z-index: 2;
    top: -.36rem;
    left: 50%;
    transform: translateX(-50%);
    width: .68rem;
    height: .68rem;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 .06rem .18rem rgba(0, 0, 0, .08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.donationDetail .detailBadge img {
    display: block;
    width: .5rem;
    height: .5rem;
    object-fit: contain;
}

.donationDetail .recordDetailWrap {
    position: relative;
    padding: .58rem .22rem .16rem;
    border-radius: .18rem;
    background: #fff;
    box-shadow: 0 .01rem .15rem rgba(158, 62, 0, .12);
}

.donationDetail .recordDetailWrap .title {
    padding: 0;
    text-align: center;
    color: #e52b2b;
    font-size: .21rem;
    font-weight: 700;
    line-height: 1.2;
    word-break: break-all;
}

.donationDetail .thanksText {
    margin: .16rem 0 .18rem;
    padding-bottom: .18rem;
    border-bottom: 1px dashed #eee;
    text-align: center;
    color: #999;
    font-size: .13rem;
}

.donationDetail .heartSvg {
    display: block;
    width: .13rem;
    height: .13rem;
    color: var(--donation-detail-heart-color);
}

.donationDetail .thanksText span {
    display: inline-flex;
    margin-left: .04rem;
    color: var(--donation-detail-heart-color);
    vertical-align: -.02rem;
}

.donationDetail .recordDetailWrap ul li {
    display: flex;
    align-items: center;
    min-height: .3rem;
    padding: .08rem 0;
    border-bottom: 1px solid #f0f0f0;
}

.donationDetail .recordDetailWrap ul li:last-child {
    border-bottom: 0;
}

.donationDetail .recordDetailWrap ul li .l {
    flex: none;
    min-width: .78rem;
    color: #111;
    font-size: .14rem;
    font-weight: 700;
}

.donationDetail .recordDetailWrap ul li .r {
    flex: 1;
    min-width: 0;
    margin-left: .1rem;
    text-align: right;
    color: #111;
    font-size: .14rem;
    line-height: 1.45;
    word-break: break-all;
}

.donationDetail .recordDetailWrap ul li .r.money,
.donationDetail .recordDetailWrap ul li .r.showBook {
    color: #ef2b2b;
}

.donationDetail .recordDetailWrap ul li .r.donorName {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .06rem;
}

.donationDetail .recordDetailWrap ul li .donorAvatar {
    flex: none;
    width: .24rem;
    height: .24rem;
    border-radius: 50%;
    object-fit: cover;
    background: #f5f5f5;
}

.donationDetail .recordDetailWrap ul li .r.showBook {
    cursor: pointer;
}

.donationDetail .recordDetailWrap ul li .r .arrow {
    margin-left: .04rem;
    font-size: .2rem;
    line-height: 0;
}

.donationDetail .subTitle {
    position: relative;
    z-index: 1;
    padding: .28rem 0 .18rem;
    text-align: center;
    color: #999;
    font-size: .12rem;
}

.donationDetail .subTitle span {
    display: inline-flex;
    margin-right: .04rem;
    color: var(--donation-detail-heart-color);
    vertical-align: -.02rem;
}

.donationDetail > .btn {
    position: relative;
    z-index: 1;
}

.donationDetail > .btn a {
    display: flex;
    width: 100%;
    height: .48rem;
    align-items: center;
    justify-content: center;
    border-radius: .24rem;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    font-size: .18rem;
    font-weight: 700;
    box-shadow: 0 .08rem .2rem rgba(239, 43, 43, .22);
}

.donationDetail > .btn a span {
    display: inline-flex;
    margin-right: .08rem;
    color: currentColor;
}

.donationDetail > .btn a span .heartSvg {
    width: .2rem;
    height: .2rem;
    color: currentColor;
}

.donationDetail .companyDonationStats {
    position: relative;
    z-index: 1;
    margin-top: .16rem;
    padding: .18rem .18rem .16rem;
    border-radius: .18rem;
    background: #fff;
    box-shadow: 0 .01rem .15rem rgba(158, 62, 0, .12);
}

.donationDetail .companyDonationStatsHead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .12rem;
    padding-bottom: .14rem;
    border-bottom: 1px dashed #eee;
}

.donationDetail .companyDonationStatsHead .label {
    display: block;
    margin: 0 0 .05rem;
    padding: 0;
    color: #999;
    font-size: .12rem;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    white-space: normal;
    background: transparent;
}

.donationDetail .companyDonationStatsHead .name {
    margin: 0;
    color: #111;
    font-size: .16rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-all;
}

.donationDetail .companyDonationStatsHead .showCompanyBook {
    flex: none;
    display: inline-flex;
    align-items: center;
    color: #ef2b2b;
    font-size: .13rem;
    font-weight: 700;
    line-height: 1.2;
}

.donationDetail .companyDonationStatsHead .showCompanyBook .arrow {
    margin-left: .04rem;
    font-size: .2rem;
    line-height: 0;
}

.donationDetail .companyDonationStatsGrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .1rem;
    padding: .16rem 0 .12rem;
}

.donationDetail .companyDonationStatsGrid .item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: .68rem;
    padding: .12rem .08rem;
    border-radius: .16rem;
    background: #fff8f3;
    text-align: center;
}

.donationDetail .companyDonationStatsGrid .value {
    margin: 0 0 .06rem;
    color: #111;
    font-size: .2rem;
    font-weight: 700;
    line-height: 1.1;
    word-break: break-all;
}

.donationDetail .companyDonationStatsGrid .value.money {
    color: #ef2b2b;
}

.donationDetail .companyDonationStatsGrid .text {
    margin: 0;
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
}

.donationDetail .companyDonationStatsMeta {
    margin: 0;
    padding: 0;
}

.donationDetail .companyDonationStatsMeta li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: .3rem;
    padding: .06rem 0;
    border-top: 1px solid #f2f2f2;
    color: #666;
    font-size: .13rem;
}

.donationDetail .companyDonationStatsMeta li em {
    margin-left: .12rem;
    color: #111;
    font-style: normal;
}

.donationDetail .companyDonationStatsMetaLegacy {
    display: none;
}

.donationDetail .companyDonationLatest {
    margin: 0;
    padding: 0;
}

.donationDetail .companyDonationLatest li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: .42rem;
    padding: .08rem 0;
    border-top: 1px solid #f5f5f5;
    gap: .1rem;
}

.donationDetail .companyDonationLatest li > div {
    min-width: 0;
}

.donationDetail .companyDonationLatest .name {
    margin: 0 0 .04rem;
    color: #111;
    font-size: .13rem;
    font-weight: 700;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donationDetail .companyDonationLatest .time {
    margin: 0;
    color: #999;
    font-size: .11rem;
    line-height: 1.2;
}

.donationDetail .companyDonationLatest .amount {
    flex: none;
    margin: 0;
    color: #ef2b2b;
    font-size: .16rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.donationDetail .companyDonationPageMore {
    display: block;
    padding-top: .12rem;
    border-top: 1px solid #f5f5f5;
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
    text-align: center;
}

.donationCoPage {
    min-height: 100vh;
    padding: .18rem .15rem .86rem;
    background: #fffcf8;
}

.donationCoPage .donationCoHero,
.donationCoPage .companyDataPanel,
.donationCoPage .companyRecordPanel {
    position: relative;
    z-index: 1;
    border-radius: .18rem;
    background: #fff;
    box-shadow: 0 .01rem .15rem rgba(158, 62, 0, .12);
}

.donationCoPage .donationCoHero {
    padding: .24rem .18rem .2rem;
    text-align: center;
}

.donationCoPage .companyLogo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: .68rem;
    height: .68rem;
    margin: 0 auto .12rem;
    /* background: #fff8f3; */
    overflow: hidden;
}

.donationCoPage .companyLogo img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.donationCoPage .eyebrow {
    margin: 0 0 .06rem;
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
}

.donationCoPage h1 {
    margin: 0;
    color: #111;
    font-size: .22rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-all;
}

.donationCoPage .companyCertBtn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.34rem;
    height: .38rem;
    margin-top: .16rem;
    padding: 0 .18rem;
    border-radius: .19rem;
    background: linear-gradient(90deg, #ff311d 0%, #ff6a10 100%);
    color: #fff;
    font-size: .14rem;
    font-weight: 700;
    box-shadow: 0 .08rem .2rem rgba(239, 43, 43, .2);
}

.donationCoPage .companyCertBtn .arrow {
    margin-left: .04rem;
    font-size: .2rem;
    line-height: 0.3;
    display: block;
    width: .05rem;
    height: .1rem;
}

.donationCoPage .companyDataPanel {
    margin-top: .14rem;
    padding: .16rem .18rem;
}

.donationCoPage .companyDataGrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .1rem;
    padding-bottom: .12rem;
}

.donationCoPage .companyDataGrid .item {
    display: flex;
    min-height: .7rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: .16rem;
    background: #fff8f3;
    text-align: center;
}

.donationCoPage .companyDataGrid strong {
    color: #ef2b2b;
    font-size: .21rem;
    font-weight: 700;
    line-height: 1.1;
    word-break: break-all;
}

.donationCoPage .companyDataGrid span {
    margin-top: .07rem;
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
}

.donationCoPage .companyDataList {
    margin: 0;
    padding: 0;
}

.donationCoPage .companyDataList li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: .34rem;
    padding: .08rem 0;
    border-top: 1px solid #f2f2f2;
    gap: .14rem;
}

.donationCoPage .companyDataList span {
    flex: none;
    color: #666;
    font-size: .13rem;
}

.donationCoPage .companyDataList em {
    min-width: 0;
    color: #111;
    font-size: .13rem;
    font-style: normal;
    line-height: 1.35;
    text-align: right;
    word-break: break-all;
}

.donationCoPage .companyIntro {
    margin-top: .1rem;
    padding-top: .12rem;
    border-top: 1px solid #f2f2f2;
    color: #666;
    font-size: .13rem;
    line-height: 1.6;
    word-break: break-all;
    white-space: pre-wrap;
}

.donationCoPage .companyRecordPanel {
    margin-top: .14rem;
    padding: .16rem .15rem;
}

.donationCoPage .companyRecordTitle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .04rem;
}

.donationCoPage .companyRecordTitle strong {
    color: #111;
    font-size: .16rem;
    font-weight: 700;
}

.donationCoPage .companyRecordTitle span {
    color: #999;
    font-size: .12rem;
}

.donationCoPage .companyRecordList {
    margin: 0;
    padding: 0;
}

.donationCoPage .companyRecordList li {
    padding: .13rem 0;
    border-bottom: 1px solid #f2f2f2;
}

.donationCoPage .companyRecordList li:last-child {
    border-bottom: 0;
}

.donationCoPage .recordHead {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .12rem;
    margin-bottom: .08rem;
}

.donationCoPage .recordHead strong {
    min-width: 0;
    color: #111;
    font-size: .15rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-all;
}

.donationCoPage .recordMoney {
    flex: none;
    color: #ef2b2b;
    font-size: .18rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.donationCoPage .recordLine {
    display: flex;
    align-items: flex-start;
    margin-top: .06rem;
    color: #666;
    font-size: .13rem;
    line-height: 1.35;
}

.donationCoPage .recordTwo {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: .1rem;
}

.donationCoPage .recordLabel {
    flex: none;
    color: #999;
}

.donationCoPage .recordValue {
    min-width: 0;
    color: #333;
    word-break: break-all;
}

.donationCoPage .companyRecordState {
    display: none;
    padding: .14rem 0 0;
    color: #999;
    font-size: .12rem;
    line-height: 1.2;
    text-align: center;
}

.donationCoPage .noData {
    min-height: 1.8rem;
}

.donationCoPage .noData img {
    width: 1.8rem;
}

.donationCoPage .companyEmpty {
    display: flex;
    min-height: 70vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: .14rem;
}

.donationCoPage .companyEmpty img {
    display: block;
    width: 2rem;
    margin-bottom: .12rem;
}

/**
 * 个人资料
 */
.personnalProfile {
    min-height: 100%;
    background: #fff;
}

.personnalProfile .main {
    padding: .15rem;
}

.personnalProfile .main .item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* padding: .15rem 0; */
    border-bottom: 1px solid #eee;
    height: 0.5rem;
    box-sizing: border-box;
}

.personnalProfile .main .item .l {
    color: #999;
}

.personnalProfile .main .item .r {
    /* flex: 1; */
}

.personnalProfile .main .item .img {
    width: .3rem;
    height: .3rem;
    overflow: hidden;
    border-radius: 1rem;
}

.personnalProfile .main .item .img img {
    display: block;
    width: 100%;
}

.personnalProfile .main .item .input {}

.personnalProfile .main .item .input input {
    height: .4rem;
    background: #fff;
    border: 0;
    text-align: right;
    width: 2rem;
    font-size: .15rem;
}

.personnalProfile .main .btn {
    padding: .35rem;
}

.personnalProfile .main .btn a {
    display: flex;
    background: #da251c;
    color: #fff;
    text-align: center;
    border-radius: 1rem;
    height: 0.4rem;
    align-items: center;
    justify-content: center;
}

/* 我的考试 */
.myexam {}

.myexam .list {
    padding: .15rem;
}

.myexam .list ul {}

.myexam .list ul li {
    background: #fff;
    padding: .1rem;
    border-radius: .1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 0.63rem;
    margin-bottom: .15rem;
}

.myexam .list ul li .l {
    width: .9rem;
    height: .65rem;
    overflow: hidden;
    margin-right: .1rem;
}

.myexam .list ul li .l img {
    display: block;
    width: 100%;
}

.myexam .list ul li .r {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    height: 100%;
    /* width: 100%; */
}

.myexam .list ul li .r .title {
    font-weight: 700;
    font-size: .15rem;
    line-height: 1;
}

.myexam .list ul li .r .bottom {
    font-size: .11rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex: 1;
    width: 100%;
}

.myexam .list ul li .r .bottom p {
    /* margin-top: .05rem; */
}

.myexam .list ul li .r .bottom .time {
    color: #888;
}

.myexam .list ul li .r .bottom .book {
    color: #888;
}

.myexam .list ul li .r .bottom .book a {
    background: #da251c;
    color: #fff;
    border-radius: 1rem;
    height: 0.23rem;
    display: flex;
    width: .65rem;
    align-items: center;
    justify-content: center;
    font-size: .1rem;
}

.myexam .personalData {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: .15rem;
    box-sizing: border-box;
    display: none;
}

.myexam .personalData .personalDataWrap {
    flex: 1;
    background: #fff;
    padding: .3rem .1rem .3rem;
    box-sizing: border-box;
    border-radius: .1rem;
    text-align: center;
    height: 90%;
}

.myexam .personalData .personalDataWrap .personalDataScroll {
    overflow-y: scroll;
    height: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    padding-right: .15rem;
}

.myexam .personalData .personalDataWrap .personalDataScroll::-webkit-scrollbar-thumb:hover {
    background-color: red;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.myexam .personalData .personalDataWrap .personalDataScroll::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.5);
    background-clip: padding-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    min-height: 28px;
}

.myexam .personalData .personalDataWrap .personalDataScroll::-webkit-scrollbar {
    width: 5px;
    height: 13px;
    background: #eee;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.myexam .personalData .personalDataWrap .tig {
    margin-bottom: .15rem;
}

.myexam .personalData .personalDataWrap .avatar {
    padding: .3rem;
    display: none;
}

.myexam .personalData .personalDataWrap .avatar .avatarWrap {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.myexam .personalData .personalDataWrap .avatar .avatarWrap img {
    width: 100%;
    height: auto;
}

.myexam .personalData .personalDataWrap .avatar .avatarWrap .icon {
    display: flex;
    width: 1.2rem;
    height: 1.5rem;
    align-items: center;
    justify-content: center;
    border: dotted 5px #5dae13;
    border-radius: .1rem;
    margin-bottom: .15rem;
    padding: .1rem;
}

.myexam .personalData .personalDataWrap .avatar .avatarWrap .icon span {
    font-size: 0.4rem;
    color: #5dae13;
}

.myexam .personalData .personalDataWrap .avatar .avatarWrap .txt {
    color: #888;
    font-size: .12rem;
}

.myexam .personalData .personalDataWrap .item {
    margin-bottom: .15rem;
}

.myexam .personalData .personalDataWrap .item .input {
    text-align: center;
    height: .45rem;
    width: 100%;
    border: 1px solid #999;
    border-radius: 1rem;
    background: #f5f5f5;
    font-size: .15rem;
}

.myexam .personalData .personalDataWrap .itemRadio {
    display: flex;
    align-items: center;
    justify-content: center;
}

.myexam .personalData .personalDataWrap .item .radioWrap {
    display: flex;
    align-items: center;
    margin: 0 .15rem;
}

.myexam .personalData .personalDataWrap .item .radioWrap label {
    font-size: .15rem;
    padding: .1rem;
}

.myexam .personalData .personalDataWrap .item .radioWrap label span {}

.myexam .personalData .personalDataWrap .item .radio {
    display: block;
    width: .2rem;
    height: .2rem;
    border-radius: 1rem;
}

.myexam .personalData .personalDataWrap .btn {}

.myexam .personalData .personalDataWrap .btn a {
    background: #da251c;
    color: #fff;
    border-radius: 1rem;
    height: 0.45rem;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    margin: auto;
}

/* 理论证书 */
.myexam .lilun {
    position: fixed;
    z-index: 100;
    top: 0;
    /* left: -100rem; */
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    text-align: center;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
    display: none;
}

.myexam .lilun .lilunWrap {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: .2rem;
    position: relative;
    padding-top: 1rem;
}

.myexam .lilun .lilunWrap .closed {
    position: relative;
    width: 0.3rem;
    height: 0.3rem;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    z-index: 101;
    margin: 0 0 -.1rem 3.3rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.myexam .lilun .lilunWrap .closed span {
    color: #da251c;
    font-weight: 700;
    font-size: .18rem;
}

.myexam .lilun .lilunWrap .info {
    border: 3px solid #da251c;
    background: #f9f5f2;
    padding: .2rem;
    box-sizing: border-box;
    border-radius: .1rem;
    margin-bottom: .3rem;
    position: relative;
    width: 98%;
    margin-left: -100rem;
    /* margin-top: -.5rem; */
}

.myexam .lilun .lilunWrap .info .infoLogo {
    width: 1.52rem;
    margin: auto;
    margin-bottom: .3rem;
    margin-top: .1rem;
}

.myexam .lilun .lilunWrap .info .infoLogo img {
    display: block;
    width: 100%;
}

.myexam .lilun .lilunWrap .info .zhang {
    width: .9rem;
    position: absolute;
    margin: 0;
    z-index: 10;
    right: .26rem;
    bottom: 0.2rem;
}

.myexam .lilun .lilunWrap .info .zhang img {
    display: block;
    width: 100%;
    margin: 0;
}

.myexam .lilun .lilunWrap .info .text {
    text-align: left;
    font-size: .12rem;
}

.myexam .lilun .lilunWrap .info .text .first {
    text-indent: 2em;
    line-height: 1.8;
}

.myexam .lilun .lilunWrap .info .text .first span {
    /* text-decoration: underline; */
    padding: 0 0.03rem;
    font-size: .12rem;
    border-bottom: 1px solid #333;
}

.myexam .lilun .lilunWrap .info .text .second {
    margin: .15rem 0 .4rem;
    font-weight: 700;
    text-indent: 2em;
}

.myexam .lilun .lilunWrap .info .text .second img {
    width: .6rem;
}

.myexam .lilun .lilunWrap .info .text .time {
    text-align: right;
    margin: .3rem 0 0;
    font-size: .12rem;
    position: absolute;
    bottom: .2rem;
    right: .3rem;
    z-index: 22;
}

.myexam .lilun .lilunWrap .lilunImg {
    position: absolute;
    z-index: 100;
    top: 1.1rem;
    left: 50%;
    width: 91%;
    transform: translate(-50%, 0);
    /* display: none; */
}

.myexam .lilun .lilunWrap .lilunImg img {}

.myexam .lilun .lilunWrap .btn {}

.myexam .lilun .lilunWrap .btn a {
    display: flex;
    background: #da251c;
    color: #fff;
    width: 2.5rem;
    height: 0.45rem;
    border-radius: 1rem;
    align-items: center;
    justify-content: center;
    font-size: .18rem;
}

.myexam #headimg {
    width: 12rem;
    height: 12rem;
    border: 2px solid #ffffff;
    border-radius: 100%;
    margin: auto;
    margin-bottom: 1.7rem;
    background-size: 100% 100% !important;
    background-repeat: no-repeat;
    background-position: center center;
}

/*截图上传页面*/
.myexam .clipbg {
    position: fixed;
    background: black;
    top: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    left: 0;
}

.myexam .loading {
    position: absolute;
    top: 40%;
    width: 38%;
    left: 31%;
    height: .36rem;
    line-height: .38rem;
    z-index: 99999;
    text-align: center;
    color: #ffffff;
    border-radius: 0.1rem;
    background: #9f9f9f;
}

.myexam .clipbg #clipArea {
    width: 100%;
    height: 80%;
    margin: auto;

}

.myexam .clipbg .footer {
    width: 90%;
    position: fixed;
    left: 5%;
    bottom: 0px;
    text-align: center;
}

.myexam .clipbg dl {
    background: #ffffff;
    border-radius: 0.1rem;
    overflow: hidden;
    margin-bottom: 0.15rem;
}

.myexam .clipbg dd {
    position: relative;
    height: .45rem;
    line-height: .45rem;
    border-bottom: 1px solid #999999;
}

.myexam .clipbg .back {
    height: .45rem;
    line-height: .45rem;
    border-radius: 0.1rem;
    margin-bottom: 0.15rem;
    background: #ffffff;
}

.myexam .clipbg dd input {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 11;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0;
}

.myexam #headimg img {
    border-radius: 300px;
}

.myexam .displaynone {
    display: none;
}

/* 急救证书 */
.myexam .certificateJiuhuyuan {
    position: fixed;
    z-index: 100;
    top: 0;
    left: -100rem;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    text-align: center;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
}

.myexam .certificateJiuhuyuan .certificateWrap {
    background: transparent;
    width: 3.5rem;
    height: 4.45rem;
    box-sizing: border-box;
    padding: 0;
    position: relative;
    margin-left: -20rem;
    font-size: .1rem;
    /* display: none; */
}

.myexam .certificateJiuhuyuan .book_realname {
    position: absolute;
    z-index: 10;
    top: .81rem;
    left: 1.7rem;
}

.myexam .certificateJiuhuyuan .book_mobile {
    position: absolute;
    z-index: 10;
    top: 0.8rem;
    left: 1.7rem;
}

.myexam .certificateJiuhuyuan .book_cardno {
    position: absolute;
    z-index: 10;
    top: 1.14rem;
    left: 1.75rem;
}

.myexam .certificateJiuhuyuan .book_gender {
    position: absolute;
    z-index: 10;
    top: .81rem;
    left: 2.6rem;
}

.myexam .certificateJiuhuyuan .book_avatar {
    position: absolute;
    z-index: 10;
    top: .86rem;
    left: .32rem;
    width: .75rem;
}

.myexam .certificateJiuhuyuan .book_releasetime {
    position: absolute;
    z-index: 10;
    top: 1.74rem;
    left: 1.7rem;
}

.myexam .certificateJiuhuyuan .book_releaseno {
    position: absolute;
    z-index: 10;
    top: 1.43rem;
    left: 1.75rem;
}

.myexam .certificateJiuhuyuan .book_avatar img {
    display: block;
    width: 100%;
}

.myexam .certificateJiuhuyuan .closed {
    position: relative;
    width: .3rem;
    height: .3rem;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    z-index: 22;
    margin: 0 0 0 3.3rem;
}

.myexam .certificateJiuhuyuan .closed span {
    color: #da251c;
    font-weight: 700;
    font-size: .18rem;
}

.myexam .certificateJiuhuyuan .btn {
    margin-top: .3rem;
}

.myexam .certificateJiuhuyuan .btn a {
    display: flex;
    background: #da251c;
    color: #fff;
    width: 2.5rem;
    height: .45rem;
    border-radius: 1rem;
    align-items: center;
    justify-content: center;
    font-size: .18rem;
}

.myexam .certificateJiuhuyuan.certificateShow {
    left: 0;
}

.myexam .certificateJiuhuyuan.certificateShow .finalImg {
    left: 50%;
    /* display: none; */
}


/**
 * 文章 article
 */

.articleDetail {}

.articleDetail .content {
    padding: .15rem;
}

.articleDetail .content h1 {
    margin: 0;
    font-size: .22rem;
    color: #111;
    margin: .15rem 0 .15rem 0;
}

.articleDetail .content .subInfo {
    text-align: center;
    font-size: .11rem;
    color: #999;
    margin-bottom: .2rem;
}

.articleDetail .content .subInfo span {
    margin: 0 .1rem;
}

.articleDetail .content .main {
    background: #f5f5f5;
    padding: .15rem;
    border: 1px solid #eee;
    line-height: 1.5;
    text-indent: 2em;
}

.articleDetail .content .main p {}

.articleDetail .content .contentWrap {
    margin-top: .2rem;
    line-height: 1.5;
}

.articleDetail .content .contentWrap p {
    margin-bottom: .15rem;
}

.articleDetail .content .contentWrap img {
    max-width: 100%;
    margin-bottom: .15rem;
}



@media only screen and (max-width:320px) {

    /* 小屏证书处理 */
    .certificate {}

    .certificate .certificateWrap {
        width: 3rem;
        height: 4.7rem;
        margin-top: -.3rem;
    }

    .certificate .img {}

    .certificate .img img {}

    .certificate .closed {
        margin: 0 0 0 3rem;
    }

    .certificate .closed span {}

    .certificate .finalImg {
        width: 3rem;
        height: 4.65rem;
        margin: -2.65rem 0 0 -1.5rem;
    }

    .certificate .finalImg canvas {}

    .certificate .certificateWrap .no {
        margin-top: 1.6rem;
        font-size: .12rem;
    }

    .certificate .certificateWrap .no span {}

    .certificate .certificateWrap .name {
        font-size: .12rem;
    }

    .certificate .certificateWrap .name span {}

    .certificate .certificateWrap .projectName {
        font-size: .12rem;
    }

    .certificate .certificateWrap .projectName p {}

    .certificate .certificateWrap .projectName p span {}

    .certificate .certificateWrap .b {
        bottom: 1.15rem;
        right: .47rem;
        font-size: .12rem;
    }

    .certificate .certificateWrap .b p {
        margin-bottom: .05rem;
    }

    .certificate .certificateWrap .b p:nth-child(1) {
        margin-bottom: .1rem;
    }

    .certificate .certificateWrap .b p:nth-child(2) {
        font-size: .11rem;
    }

    .certificate .certificateWrap .b p:nth-child(3) {
        font-size: .11rem;
    }

    .certificate .certificateWrap .certificateSeal {
        right: .6rem;
        bottom: .98rem;
        width: .64rem;
        height: .64rem;
    }

    .certificate .certificateWrap .qrcode {
        padding: .02rem;
        width: .75rem;
        height: .75rem;
        bottom: 0.27rem;
        left: .25rem;
    }

    .certificate .certificateWrap .qrcode canvas {}

    .certificate .btn {
        padding: .1rem;
    }

    .certificate .btn a {
        display: flex;
        background: #da251c;
        color: #fff;
        width: 2.5rem;
        height: .45rem;
        border-radius: 1rem;
        align-items: center;
        justify-content: center;
        font-size: .18rem;
    }

    .certificate.certificateShow {}

    .certificate.certificateShow .finalImg {}
}


/**
 * 单页模型
 */

.articlepage {
    min-height: 100%;
    background: #fff;
}

.articlepage .main {
    padding: .15rem;
    box-sizing: border-box;
}

.articlepage .main h1 {
    margin: 0;
    font-size: .2rem;
    color: #111;
}

.articlepage .main .info {
    display: flex;
    font-size: .11rem;
    padding: .15rem 0;
    align-items: center;
    justify-content: center;
    color: #999;
}

.articlepage .main .info p {
    margin: 0 .05rem;
}

.articlepage .main .info p span {
    /* color: #333; */
}

.articlepage .main .description {
    background: #f5f5f5;
    padding: .15rem;
    line-height: 1.6;
    font-size: .12rem;
    text-indent: 2em;
    color: #777;
}

.articlepage .main .content {
    overflow: hidden;
    line-height: 1.6;
    /* margin-top: .2rem; */
}

.articlepage .main .content p {
    margin-bottom: .06rem;
    line-height: 1.3;
}

.articlepage .main .content p strong {
    font-weight: 700;
}

.articlepage .main .content img {
    max-width: 100%;
}




@font-face {
    font-family: FZQKBYSJW;
    src: url('../../fonts/FZQKBYSJW.woff2') format('woff2');
    font-display: swap;
}




.commonFooter {
    display: none;
    align-items: center;
    justify-content: center;
    padding: .5rem 0 1rem 0;
    font-size: .11rem;
    color: #ccc;
}

.commonFooter .sicon {
    margin-left: 5px;
}

.commonFooter .sicon img {
    display: block;
    width: 12px;
}
