.banner { background: #dfeee2; border-radius: 34rpx; min-height: 245rpx; padding: 30rpx; display: flex; align-items: center; gap: 12rpx; } .banner-copy { flex: 1; min-width: 0; } .banner-copy text, .banner-title { display: block; } .banner-copy text { color: #549375; font-size: 22rpx; } .banner-title { font-size: 35rpx; line-height: 1.3; font-weight: 800; white-space: nowrap; } .banner-title.first { margin-top: 16rpx; } .banner image { width: 52%; height: 190rpx; flex-shrink: 0; } .add { font-size: 24rpx; color: #328965; font-weight: 700; } .meetup strong { display: block; font-size: 32rpx; margin: 15rpx 0; } .badge { background: #e8f4ea; color: #429369; border-radius: 99rpx; padding: 8rpx 15rpx; font-size: 22rpx; } .arrow { font-size: 39rpx; color: #a1b2a8; } .meta { font-size: 24rpx; color: #748c7d; margin-top: 9rpx; } .desc { font-size: 24rpx; color: #9aaa9f; margin-top: 15rpx; } .overlay { position: fixed; inset: 0; background: #102a24a0; z-index: 30; display: flex; align-items: flex-end; } .sheet { width: 100%; background: #fff; border-radius: 36rpx 36rpx 0 0; padding: 35rpx 32rpx calc(env(safe-area-inset-bottom) + 35rpx); } .sheet > .row strong { font-size: 34rpx; } .sheet > .row text { font-size: 45rpx; } .detail { font-size: 25rpx; color: #61816e; line-height: 2; margin: 25rpx 0; } .select-title { font-size: 25rpx; font-weight: 700; margin: 30rpx 0 15rpx; } .sheet button { margin-top: 26rpx; width: 100%; }