kydc/achievements/achievements.wxss

287 lines
4.6 KiB
Plaintext
Raw Normal View History

2026-04-30 11:15:39 +08:00
page {
background: #0c0e12;
color: #f6f6fc
}
.page {
min-height: 100vh;
background: #0c0e12;
box-sizing: border-box
}
.topbar {
display: flex;
justify-content: space-between;
align-items: center;
padding: 24rpx 32rpx;
background: rgba(12, 14, 18, .8);
backdrop-filter: blur(24px);
border-bottom: 1rpx solid rgba(255, 255, 255, .08);
box-shadow: 0 1rpx 20rpx rgba(0, 0, 0, .08)
}
.brand {
display: flex;
align-items: center;
gap: 18rpx
}
.avatar-wrap {
width: 64rpx;
height: 64rpx;
border-radius: 9999rpx;
overflow: hidden;
border: 1rpx solid rgba(255, 255, 255, .1);
flex-shrink: 0
}
.avatar {
width: 100%;
height: 100%
}
.brand-text {
font-size: 38rpx;
font-weight: 800;
color: #c19cff
}
.icon-btn {
width: 72rpx;
height: 72rpx;
border-radius: 9999rpx;
background: rgba(255, 255, 255, .06);
display: flex;
align-items: center;
justify-content: center
}
.content {
height: calc(100vh - 120rpx);
padding: 48rpx 40rpx 32rpx;
box-sizing: border-box
}
.heading {
margin-bottom: 28rpx
}
.title {
display: block;
font-size: 52rpx;
font-weight: 800;
line-height: 1.1
}
.subtitle {
display: block;
margin-top: 10rpx;
color: #aaabb0;
font-size: 26rpx
}
.hero-card {
position: relative;
overflow: hidden;
padding: 32rpx;
border-radius: 32rpx;
background: rgba(29, 32, 37, .6);
backdrop-filter: blur(24rpx);
border: 1rpx solid rgba(255, 255, 255, .08);
box-shadow: 0 20rpx 40rpx rgba(0, 0, 0, .08);
margin-bottom: 24rpx
}
.hero-glow {
position: absolute;
right: -40rpx;
top: -40rpx;
width: 160rpx;
height: 160rpx;
border-radius: 9999rpx;
background: rgba(255, 64, 129, .12);
filter: blur(30rpx)
}
.hero-row {
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
z-index: 1
}
.hero-num {
display: block;
font-size: 72rpx;
font-weight: 800;
color: #fff
}
.hero-label {
display: block;
margin-top: 8rpx;
font-size: 24rpx;
color: #aaabb0
}
.hero-badge {
width: 112rpx;
height: 112rpx;
border-radius: 9999rpx;
background: linear-gradient(135deg, #ff4081, #00e5ff);
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 0 20rpx rgba(255, 64, 129, .2);
overflow: hidden
}
.hero-badge-img {
width: 64rpx;
height: 64rpx
}
.state-card {
margin-bottom: 28rpx
}
.state-head {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 6rpx 18rpx
}
.state-title {
font-size: 36rpx;
font-weight: 800
}
.state-subtitle {
font-size: 22rpx;
color: #aaabb0
}
.section-card {
margin-bottom: 20rpx;
padding: 28rpx;
border-radius: 30rpx;
background: rgba(29, 32, 37, .45);
border: 1rpx solid rgba(255, 255, 255, .07);
backdrop-filter: blur(24rpx)
}
.section-head {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 14rpx
}
.section-title-wrap {
display: flex;
align-items: center;
gap: 16rpx
}
.section-icon {
width: 52rpx;
height: 52rpx;
border-radius: 9999rpx;
background: rgba(255, 255, 255, .06);
padding: 8rpx;
box-sizing: border-box
}
.section-title {
display: block;
font-size: 32rpx;
font-weight: 800;
line-height: 1.2
}
.section-subtitle {
display: block;
margin-top: 4rpx;
font-size: 22rpx;
color: #aaabb0
}
.section-count {
font-size: 22rpx;
color: #c19cff;
background: rgba(193, 156, 255, .12);
padding: 8rpx 14rpx;
border-radius: 9999rpx
}
.section-progress {
display: block;
margin: 0 0 18rpx 68rpx;
font-size: 22rpx;
color: #8fe3ff
}
.grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 18rpx
}
.item {
position: relative;
overflow: hidden;
padding: 28rpx;
border-radius: 28rpx;
background: rgba(29, 32, 37, .56);
backdrop-filter: blur(24rpx);
border: 1rpx solid rgba(255, 255, 255, .06);
box-shadow: 0 20rpx 40rpx rgba(0, 0, 0, .06);
min-height: 220rpx
}
.accent-tertiary {
box-shadow: 0 20rpx 40rpx rgba(255, 64, 129, .06)
}
.accent-secondary {
box-shadow: 0 20rpx 40rpx rgba(0, 229, 255, .06)
}
.accent-primary {
box-shadow: 0 20rpx 40rpx rgba(127, 0, 255, .06)
}
.item-icon {
width: 130rpx;
height: 130rpx;
border-radius: 9999rpx;
background: rgba(255, 255, 255, .06);
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 24rpx;
overflow: hidden
}
.item-icon-img {
width: 110rpx;
height: 110rpx;
flex-shrink: 0
}
.item-title {
display: block;
font-size: 30rpx;
font-weight: 700;
margin-bottom: 8rpx;
text-align: center
}
.item-sub {
display: block;
font-size: 22rpx;
color: #aaabb0;
text-align: center
}