* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ========== 骨架屏优化 ========== */
[v-cloak] {
    display: none;
}

.homepage {
    overflow: hidden;
    background: #F5F5F5;
    padding-bottom: 0.32rem;
    animation: fadeInPage 0.3s ease-in-out 0.1s both;
}

@keyframes fadeInPage {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* 骨架屏加载动画 */
.skeleton-loader {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

.skeleton-item {
    border-radius: 0.04rem;
    overflow: hidden;
}

.header {
    width: 7.5rem;
    height: 6.4rem;
    background: url(../ossweb-img/header.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
    overflow: hidden;
}

.challenge-time {
    width: 3.26rem;
    height: 0.4rem;
    background: url(../ossweb-img/challenge-time.png);
    background-size: 100% 200%;
    background-position: 0 0;
    position: absolute;
    left: 0.24rem;
    top: 3rem;
    font-size: 0.24rem;
    color: #242424;
    font-weight: 500;
}

.challenge-time1 {
    background: url(../ossweb-img/challenge-time1.png);
    background-size: 100% 100%;
    top: 3.5rem;
    width: 5.32rem;
    height: .36rem;
}

.challenge-time-title {
    position: absolute;
    left: 0.48rem;
    top: 0rem;
}

.challenge-time-text {
    width: 5rem;
    position: absolute;
    left: 0.48rem;
    line-height: .36rem;
}

.activity-tip{
    margin-top: 0.16rem;
    font-size: 0.2rem;
    color: #FF5757;
    font-weight: 500;
    line-height: .3rem;
}

.login,
.logined {
    font-size: 0.24rem;
    /* 1920 下约等于 22px：1920 * 0.0115 ≈ 22 */
    color: #242424;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    top: 5.44rem;
    left: 50%;
    transform: translateX(-50%);
    line-height: 0.42rem;
}

.logined {

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1%;
    flex-wrap: wrap;
    top: 5.14rem;

}

.logined-info{
    width: 100%;
}

a {
    color: #242424;
    text-decoration: none;
}

.logined-footer {
    font-weight: 500;
}

.subscribe-btn{
    position: absolute;
    color: #FF9F1F;
    font-size: .22rem;
    line-height: .32rem;
    text-decoration: underline;
    right: .26rem;
    top: 5.9rem;
    background: url(../ossweb-img/subscribe-icon.png) no-repeat;
    background-size: .19rem .22rem;
    background-position: 0 50%;
    padding-left: .23rem;
}

.activity-rule {
    width: 6.86rem;
    height: 1.58rem;
    background: url(../ossweb-img/activity-rule.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
    margin: 0 auto 0.4rem;
}

.activity-rule-text {
    font-size: 0.24rem;
    color: #242424;
    gap: 0.08rem;
    display: flex;
    align-items: center;
    position: absolute;
    right: 0.55rem;
    bottom: 0.3rem;
}

.activity-rule .activity-rule-text .rule-icon {
    width: 0.24rem;
    height: 0.24rem;
    background: url(../ossweb-img/rule-icon.png) no-repeat center center;
    background-size: 100% 100%;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.activity-rule .activity-rule-text .rule-icon:active {
    transform: scale(0.9);
}

.my-team {
    width: 6.86rem;
    border-image-source: url(../ossweb-img/my-team.png);
    border-image-slice: 370 10 10 10;
    border-image-width: 3.7rem 0.1rem 0.1rem 0.1rem;
    border-image-repeat: stretch;
    position: relative;
    margin: 0 auto .32rem;
    overflow: hidden;
}

.my-team-title {
    font-size: 0.24rem;
    color: rgba(0, 0, 0, 0.4);
    text-align: center;
    position: absolute;
    top: 0.39rem;
    right: 0.32rem;
}

.my-team .team-header {
    display: none;
}

.team-empty,
.team-info {
    width: 6.22rem;
    height: 2.56rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    left: 0.32rem;
    margin-top: 1.12rem;
}

.team-empty-text {
    font-size: 0.24rem;
    color: #242424;
    text-align: center;
    margin: 0.6rem 0 0.32rem;
}

.team-empty-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.24rem;
    font-size: 0.32rem;
}

.create-team,
.join-team {
    display: flex;
    align-items: center;
    justify-content: center;
}

.create-team {
    width: 2.67rem;
    height: 0.8rem;
    background: #323232;
    border-radius: 0.16rem;
    color: #fff;
    font-weight: 500;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    transform-origin: center center;
    will-change: transform;
    position: relative;
}

.create-team:active {
    transform: scale(0.98);
    opacity: 0.9;
}

.join-team {
    width: 2.67rem;
    height: 0.8rem;
    border: 0.01rem solid rgba(255, 255, 255, 0.6);
    background: #fff;
    border-radius: 0.16rem;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    transform-origin: center center;
    will-change: transform;
    position: relative;
}

.join-team:active {
    transform: scale(0.98);
    opacity: 0.9;
}

/* 每日积分任务 */
.daily-points-tasks {
    width: 6.86rem;
    background: #fff;
    border-radius: 0.16rem;
    padding: 0.24rem 0.32rem 0.16rem;
}

.daily-points-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.daily-points-title {
    font-size: 0.28rem;
    color: #242424;
    font-weight: 500;
}

.daily-points-info {
    display: flex;
    align-items: center;
    gap: 0.32rem;
    font-size: 0.22rem;
    color: #242424;
}

.my-points {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F7F7F8;
    padding: 0.08rem;
    height: 0.36rem;
    color: #98999A;
    position: absolute;
    left: 2.12rem;
}

.points-value {
    color: #FF6B00;
    font-weight: 500;
    margin-left: 0.08rem;
}

.points-record {
    color: #98999A;
    font-size: 0.24rem;
    display: flex;
    align-items: center;
    gap: 0.08rem;
}

.points-record-icon {
    width: 0.24rem;
    height: 0.24rem;
    background: url(../ossweb-img/points-record-icon.png) no-repeat center center;
    background-size: 100% 100%;
}

.task-list {
    display: flex;
    flex-direction: column;
    margin-top: 0.16rem;
}

.task-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.16rem 0;
    border-bottom: 0.01rem solid rgba(212, 212, 217, 0.25);
}

.task-item:last-child {
    border-bottom: none;
}

.task-content {
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
}

.task-name {
    font-size: 0.24rem;
    color: #242424;
    font-weight: 500;
}

.task-points {
    width: fit-content;
    display: inline-block;
    font-size: 0.20rem;
    color: rgba(36, 36, 36, 0.6);
    height: 0.3rem;
    background: #F7F7F8;
    border-radius: 0.08rem;
    padding: 0 0.08rem;
    line-height: 0.3rem;
    align-self: flex-start;
}

.task-points em{
    font-style: normal;
    color: #98999A;
}

.points-num {
    color: #FF6B00;
    font-weight: 500;
}

.task-btn {
    height: 0.56rem;
    background: #323232;
    border-radius: 0.12rem;
    color: #fff;
    font-size: 0.24rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    padding: 0 0.2rem;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.task-btn:active:not(.disabled) {
    transform: scale(0.95);
}

.task-btn.disabled {
    background: #F7F7F8;
    color: #98999A;
}

.task-btn.task-not-open {
    background: #F7F7F8;
    color: #98999A;
    cursor: not-allowed;
}

.task-btn.task-incomplete {
    background: #F7F7F8;
    color: #98999A;
    cursor: not-allowed;
}

.teammate-icons {
    display: flex;
    gap: 0.16rem;
}

.teammate-icon {
    width: 0.48rem;
    height: 0.48rem;
    border-radius: 50%;
    background: url(../ossweb-img/teammate-icon.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
}

.my-team.is-joined .team-empty,
.my-team.is-joined .my-team-title {
    display: none;
}

.my-team:not(.is-joined) .team-info {
    display: none;
}

.my-team.is-joined .team-header {
    width: 4.9rem;
    height: 0.5rem;
    font-size: 0.2rem;
    position: absolute;
    left: 1.6rem;
    top: 0.32rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 0.16rem;
}

.my-team.is-joined .team-header-info {
    display: flex;
    align-items: center;
}

.my-team.is-joined .team-header-info .team-id {
    font-size: 0.22rem;
    color: rgba(0, 0, 0, 0.40);
}

.my-team.is-joined .team-header-info .copy-btn {
    width: 0.24rem;
    height: 0.24rem;
    background: url(../ossweb-img/copy-btn.png) no-repeat center center;
    background-size: 100% 100%;
    margin-left: 0.08rem;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.my-team.is-joined .settings-btn {
    width: 0.32rem;
    height: 0.32rem;
    background: url(../ossweb-img/settings-btn.png) no-repeat center center;
    background-size: 100% 100%;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.my-team.is-joined .team-record-btn{
	width: .32rem;
	height: .32rem;
	background: url(../ossweb-img/team-record-btn.png) no-repeat center center;
    background-size: 100% 100%;
    cursor: pointer;
    transition: transform 0.2s ease;
    margin-left: auto;
    margin-right: .24rem;
}

/* 复制按钮点击动画 */
@keyframes copyClick {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.3);
    }

    100% {
        transform: scale(1);
    }
}

.my-team.is-joined .team-header-info .copy-btn.copied {
    animation: copyClick 0.4s ease;
}

.my-team.is-joined .team-header .settings-btn.copied {
    animation: copyClick 0.4s ease;
}


.my-team.is-joined .team-info .team-info-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.24rem;
    width: 100%;
    margin: 0.16rem 0 0.24rem 0;
}

.my-team.is-joined .team-info .team-info-content .team-info-content-item {
    width: 0.88rem;
    height: 0.88rem;
    border-radius: 50%;
    background: url(../ossweb-img/team-info-content-item.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
}

.my-team.is-joined .team-info .team-info-content .team-info-content-item .captain-tag,
.my-team.is-joined .team-info .team-info-content .team-info-content-item .exit-tag,
.my-team.is-joined .team-info .team-info-content .team-info-content-item .my-tag {
    width: 0.56rem;
    height: 0.34rem;
    background: url(../ossweb-img/captain-tag.png) no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    right: -0.12rem;
    top: -0.08rem;
    z-index: 1;
    color: transparent;
}

.my-team.is-joined .team-info .team-info-content .team-info-content-item .exit-tag {
    width: 0.34rem;
    height: 0.34rem;
    background: url(../ossweb-img/exit-tag.png) no-repeat center center;
    background-size: 100% 100%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    /* 限制点击范围：只在实际按钮区域内触发 */
    pointer-events: auto;
    /* 确保只在按钮本身区域内响应点击 */
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.my-team.is-joined .team-info .team-info-content .team-info-content-item .my-tag {
    width: 0.36rem;
    height: 0.34rem;
    background: url(../ossweb-img/my-tag.png) no-repeat center center;
    background-size: 100% 100%;
}


.my-team.is-joined .team-info-content-item-avatar {
    width: 0.88rem;
    height: 0.88rem;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.my-team.is-joined .team-info-group-chat {
    width: 5.58rem;
    height: 0.8rem;
    background: #323232;
    border-radius: 0.16rem;
    font-size: 0.32rem;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    transform-origin: center center;
    will-change: transform;
    position: relative;
    /* 确保群聊按钮的点击优先级 */
    z-index: 10;
    pointer-events: auto;
}


/* 积分兑换 */
.points-exchange {
    width: 6.86rem;
    background: #fff;
    border-radius: 0.16rem;
    margin: 0 auto 0.32rem;
    padding: 0.32rem;
}

.points-exchange-header {
    margin-bottom: 0.32rem;
}

.points-exchange-title {
    font-size: 0.32rem;
    color: #242424;
    font-weight: 500;
    margin-bottom: 0.08rem;
}

.points-exchange-rule {
    font-size: 0.22rem;
    color: #242424;
}

.exchange-items-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.24rem;
}

.exchange-item {
    position: relative;
    border-radius: 0.16rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    background: #FBFBFB;
    padding: 0.08rem 0.11rem;
}

.exchange-item-points {
    height: 0.32rem;
    line-height: 0.32rem;
    position: absolute;
    top: 0.16rem;
    left: 0.16rem;
    font-size: 0.2rem;
    color: #242424;
    font-weight: 500;
    z-index: 1;
    border-radius: 0.08rem;
    background: #FBFBFB;
    padding: 0 0.08rem;
    /* display: flex;
    align-items: center;
    justify-content: center; */
}

.exchange-item-image {
    width: 1.8rem;
    height: 1.8rem;
    background: url(../ossweb-img/exchange-item-image.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
}

.exchange-item-image img {
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.exchange-item-tag {
    width: 100%;
    position: absolute;
    bottom: 0;
    right: 0rem;
    border-radius: 0 0 0.07rem 0.07rem;
    background: #FFF4E3;
    color: #FF9300;
    font-size: 0.18rem;
    padding: 0.04rem 0.08rem;
    border-radius: 0.04rem;
    z-index: 1;
    text-align: center;
    font-size: 0.2rem;
}

.exchange-item-name {
    font-size: 0.22rem;
    height: 0.66rem;
    color: #19191A;
    margin: 0.09rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: 500;
}

.exchange-item-name-text {
    line-height: 1.4;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
    word-wrap: break-word;
    white-space: normal;
}

.exchange-btn {
    width: calc(100% - 0.16rem);
    height: 0.56rem;
    background: #323232;
    border-radius: 0.08rem;
    color: #fff;
    font-size: 0.22rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.exchange-btn:active:not(.disabled) {
    transform: scale(0.95);
}

.exchange-btn.disabled {
    background: #F0F0F0;
    color: rgba(36, 36, 36, 0.4);
}

/* 个人全勤奖 */
.personal-reward {
    width: 6.86rem;
    margin: 0.32rem auto 0.48rem;
    background: #fff;
    border-radius: 0.24rem;
    padding: 0.32rem;
    margin: 0 0.32rem 0.32rem 0.32rem;
}

.personal-reward-title {
    font-size: 0.32rem;
    color: #19191A;
    font-weight: 500;
    margin-bottom: 0.16rem;
}

.personal-reward-title span{
	font-size: .2rem;
	opacity: .5;
	margin-left: .08rem;
}

.personal-reward-card {
    padding: 0.16rem;
    background: #FBFBFB;
    border-radius: 0.16rem;
    display: flex;
    gap: 0.16rem;
    align-items: center;
}

.personal-reward-left {
    width: 3.44rem;
    height: 2.19rem;
    flex: 0 0 3.44rem;
    background: #F8F8F9;
    border-radius: 0.08rem;
    position: relative;
    /*overflow: hidden;*/
}

.personal-reward-image {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.personal-reward-name{
	position: absolute;
	width: 2.31rem;
	height: 1.46rem;
	left: 0;
	top: -.3rem;
	z-index: 1;
	display: none;
    object-fit: contain;
    object-position: 0 0;
}

.personal-reward-right {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.personal-reward-desc {
    font-size: 0.22rem;
    color: #2A2A2A;
    margin-bottom: 0.1rem;
    font-weight: 500;
}

.personal-reward-progress {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 0.12rem;
}

.progress-bar {
    width: 2.3rem;
    height: 0.12rem;
    background: #E8E8E8;
    border-radius: 0.08rem;
    overflow: hidden;
}

.progress-value {
    height: 100%;
    background: linear-gradient(90deg, #FFB100 0%, #FF8A00 100%);
    border-radius: 0.08rem;
}

.progress-text {
    width: 2.3rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.22rem;
    color: #8E8E93;
}

.reward-btn,
.reward-btn.disabled {
    width: 2.3rem;
    height: 0.56rem;
    background: #323232;
    border-radius: 0.12rem;
    color: #fff;
    font-size: 0.24rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    margin-top: 0.08rem;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.reward-btn:active:not(.disabled) {
    transform: scale(0.95);
}

.reward-btn.disabled {
    background: #F0F0F0;
    color: rgba(36, 36, 36, 0.4);
}

/* 小队全勤奖 */
.team-reward {
    width: 6.86rem;
    background: #fff;
    border-radius: 0.24rem;
    padding: 0.32rem;
    margin: 0 0.32rem 0.32rem 0.32rem;
}

.team-reward-title {
    font-size: 0.32rem;
    color: #19191A;
    font-weight: 500;
    margin-bottom: 0.16rem;
}

.team-reward-title span{
	font-size: .2rem;
	opacity: .5;
	margin-left: .08rem;
}

.team-reward-card {
    padding: 0.16rem;
    background: #FBFBFB;
    border-radius: 0.16rem;
    display: flex;
    gap: 0.16rem;
    align-items: center;
}

.team-reward-left {
    width: 3.44rem;
    height: 2.19rem;
    flex: 0 0 3.44rem;
    background: #F8F8F9;
    border-radius: 0.08rem;
    position: relative;
}

.team-reward-image {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.team-reward-name{
	width: 2.31rem;
	height: 1.77rem;
	position: absolute;
	left: 0;
	top: -.26rem;
	z-index: 1;
	display: none;
    object-fit: contain;
    object-position: 0 0;
}

.team-reward-right {
    width: 2.3rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 2.19rem;
}

.team-reward-desc {
    font-size: 0.22rem;
    color: #2A2A2A;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 0.12rem;
}

.team-reward-members {
    display: flex;
    align-items: center;
    gap: 0.06rem;
    margin-bottom: 0.16rem;
}

.team-member-avatar {
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 50%;
    background: url(../ossweb-img/teammate-icon.png) no-repeat center center;
    background-size: 100% 100%;
    position: relative;
}

.team-member-avatar img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}


.team-reward-btn {
    width: 2.3rem;
    height: 0.56rem;
    border-radius: 0.12rem;
    font-size: 0.24rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    background: #323232;
    color: #fff;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.team-reward-btn:active:not(.disabled) {
    transform: scale(0.95);
}

.team-reward-btn.disabled {
    background: #F5F5F5;
    color: #C4C4C8;
}


/* 弹窗主体 */
.modal-dialog {
    width: 6rem;
    background: #fff;
    border-radius: 0.24rem;
    padding: 0.48rem 0.6rem;
    position: relative;
    box-shadow: 0 0.16rem 0.48rem rgba(0, 0, 0, 0.15);
    flex-shrink: 0;
}

/* 弹窗标题 */
.modal-title {
    font-size: 0.36rem;
    font-weight: 500;
    color: #242424;
    text-align: center;
    margin-bottom: 0.16rem;
}

/* 弹窗内容 */
.modal-content {
    font-size: 0.28rem;
    color: #98999A;
    text-align: center;
    margin-bottom: 0.48rem;
    line-height: 1.5;
    word-break: break-all;
}

/* 按钮容器 */
.modal-buttons {
    display: flex;
    gap: 0.24rem;
    justify-content: center;
}

/* 弹窗按钮 */
.modal-btn {
    flex: 1;
    height: 0.72rem;
    border-radius: 0.16rem;
    font-size: 0.28rem;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    transform-origin: center center;
}

.modal-btn:active {
    transform: scale(0.98);
    opacity: 0.9;
}

/* 取消按钮 */
.modal-btn-cancel {
    background: #F7F7F8;
    color: #242424;
}

/* 确认按钮 */
.modal-btn-confirm {
    background: #323232;
    color: #fff;
}

/* 可滚动弹窗 */
.modal-dialog-scrollable {
    display: flex;
    height: 7.26rem;
    flex-direction: column;
    padding: 0.48rem 0.6rem;
}

/* 滚动内容区域 */
.modal-scroll-content {
    flex: 1;
    margin-bottom: 0.32rem;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(7.26rem - 2rem);
    -webkit-overflow-scrolling: touch;
    /* iOS 平滑滚动 */
}

.modal-scroll-content::-webkit-scrollbar {
    display: none;
}

/* 获奖记录列表 */
.award-record-list {
    display: flex;
    flex-direction: column;
    gap: 0.24rem;
}

/* 获奖记录项 */
.award-record-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.32rem;
}

.award-record-item:last-child {
    border-bottom: none;
}

/* 获奖信息（左侧） */
.award-record-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
    min-width: 0;
}

/* 获奖名称 */
.award-record-name {
    font-size: 0.28rem;
    color: #242424;
    font-weight: 500;
    line-height: 1.4;
}

/* 获奖描述 */
.award-record-date {
    font-size: 0.24rem;
    color: #98999A;
    line-height: 1.4;
}

/* 获奖积分（右侧） */
.award-record-desc {
    font-size: 0.32rem;
    color: #FF9300;
    font-weight: 400;
    flex-shrink: 0;
    white-space: nowrap;
}


/* pop1 绑定角色弹窗 */
#pop1 .modal-dialog {
    width: 6rem;
    background: #fff;
    border-radius: 0.24rem;
    padding: 0.48rem 0.6rem;
    position: relative;
    box-shadow: 0 0.16rem 0.48rem rgba(0, 0, 0, 0.15);
}

#pop1 .modal-title {
    font-size: 0.36rem;
    font-weight: 500;
    color: #242424;
    text-align: center;
    margin-bottom: 0.24rem;
}

#pop1 .modal-content {
    font-size: 0.24rem;
    color: #242424;
    text-align: left;
    margin-bottom: 0.32rem;
    display: flex;
    align-items: center;
    gap: 0.12rem;
    line-height: 1.4;
}

/* 授权协议复选框 */
.authorization {
    width: 0.24rem;
    height: 0.24rem;
    min-width: 0.24rem;
    min-height: 0.24rem;
    border: 0.01rem solid #D4D4D9;
    border-radius: 0.04rem;
    flex-shrink: 0;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    background: #fff;
    position: relative;
}

.authorization.agree {
    background: #323232 !important;
    border-color: #323232 !important;
}

.authorization.agree:hover {
    background: #1a1a1a;
    border-color: #1a1a1a;
}

.authorization.agree::after {
    content: '✓';
    color: #fff;
    font-size: 0.16rem;
    font-weight: bold;
    line-height: 1;
}

.authorization.no-agree {
    background: #fff;
    border-color: #D4D4D9;
}

.authorization.no-agree:hover {
    border-color: #98999A;
}



.txt-span {
    font-size: 0.22rem;
    color: #98999A;
    line-height: 1.4;
    flex: 1;
}

/* 下拉框选择器 */
.sel {
    display: flex;
    flex-direction: column;
    gap: 0.16rem;
    margin-bottom: 0.32rem;
}

.dropdown-box {
    position: relative;
    width: 100%;
}

.sel-box {
    width: 100%;
    height: 0.56rem;
    line-height: 0.56rem;
    padding: 0 0.16rem;
    padding-right: 0.4rem;
    border: 0.01rem solid #D4D4D9;
    border-radius: 0.08rem;
    font-size: 0.24rem;
    color: #242424;
    background: #fff;
    appearance: none;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease;
    box-sizing: border-box;
}

.sel-box:focus {
    outline: none;
    border-color: #323232;
    background-color: #fafafa;
}

#platformNone,
#partitionNone,
#roleNone {
    background: #F7F7F8;
    color: #98999A;
    padding-right: 0.4rem;
}

.sel-box::-webkit-scrollbar {
    width: 0.06rem;
}

.sel-box::-webkit-scrollbar-track {
    background: #F7F7F8;
}

.sel-box::-webkit-scrollbar-thumb {
    background: #D4D4D9;
    border-radius: 0.03rem;
}

.triangle {
    position: absolute;
    right: 0.12rem;
    top: 50%;
    transform: translateY(-50%);
    width: 0.16rem;
    height: 0.16rem;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="%23242424" d="M8 11L2 5h12z"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* 确定绑定按钮 */
.pop-btn01 {
    width: 100%;
    height: 0.72rem;
    background: #323232;
    border-radius: 0.16rem;
    color: #fff;
    font-size: 0.28rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    text-decoration: none;
    margin-bottom: 0.16rem;
}

.pop-btn01:active {
    transform: scale(0.98);
    opacity: 0.9;
}

/* 关闭按钮 */
.close {
    position: absolute;
    top: 0.24rem;
    right: 0.24rem;
    width: 0.32rem;
    height: 0.32rem;
    cursor: pointer;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23242424" d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.2s ease;
}

.close:active {
    transform: scale(0.9);
}

.modal-buttons .disabled {
    background: #F7F7F8;
    color: #CBCCCD;
}

.modal-btn-next {
    background: #323232;
    color: #fff;
}

/* 无数据提示 */
.no-data-tip {
    font-size: 0.24rem;
    color: #98999A;
    text-align: center;
    padding: 1rem 0;
    width: 100%;
}

/* 规则弹窗内容 */
.rules-content {
    display: flex;
    flex-direction: column;
    gap: 0.24rem;
}

.rule-item {
    display: flex;
    gap: 0.16rem;
    align-items: flex-start;
}

.rule-number {
    width: 0.36rem;
    height: 0.36rem;
    background: #323232;
    border-radius: 50%;
    color: #fff;
    font-size: 0.2rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 0.04rem;
}

.rule-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
}

.rule-title {
    font-size: 0.26rem;
    color: #242424;
    font-weight: 500;
    margin: 0;
    line-height: 1.4;
}

.rule-text p {
    margin: 0;
    font-size: 0.24rem;
    color: #98999A;
    line-height: 1.5;
}

#teamRecordModal .modal-dialog{
	padding: 0.48rem 0.3rem;
}
.teamapply-record-list{
	display: flex;
	flex-direction: column;
	gap: .24rem;
}

.teamapply-record-item{
	display: flex;
	align-items: center;
}

.teamapply-record-tx{
	width: .5rem;
	height: .5rem;
	border-radius: 100%;
	background: #D9D9D9;
	margin-right: .18rem;
	flex-shrink: 0;
}

.teamapply-record-tx img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.teamapply-record-name{
	color: #000000;
	font-size: .22rem;
	line-height: 1.5;
	max-width: 2.5rem;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.teamapply-record-buttons{
	display: flex;
	align-items: center;
	gap: .18rem;
	margin-left: auto;
	flex-shrink: 0;
}

.teamapply-record-buttons .modal-btn{
	width: .9rem;
	height: .35rem;
	font-size: .22rem;
	border-radius: .08rem;
}

.teamapply-record-buttons .modal-btn.modal-btn-agree{
	background: #424242;
	color: #E6E6E6;
}

.teamapply-record-buttons .modal-btn.modal-btn-refuse{
	background: #F7F7F8;
	color: #242424;
}

.teamapply-record-buttons .modal-btn.modal-btn-disabled{
	background: #E5E5E5;
	color: #999;
	cursor: not-allowed;
	opacity: 0.7;
}

#teamRecordModal .modal-scroll-content{
	margin-bottom: 0;
	height: 6.86rem;
}
