/* ============ 智能设备聚合首页 样式(还原设计稿 device 页) ============ */ page { background: #f5f6f7; } .device-page { min-height: 100vh; background: #f5f6f7; } /* 内容体:去掉渐变续色;保留 12rpx 顶部间距(Hero 与页头之间的空隙,纯页面底色)。 */ .device-body { padding-top: 12rpx; } /* ===== 头部:居中标题 ===== */ .device-header { padding-left: 30rpx; padding-right: 30rpx; /* 不要红头,保持页面底色 */ background: #f5f6f7; } .title-bar { display: flex; align-items: center; justify-content: center; height: 88rpx; } .page-title { font-size: 36rpx; font-weight: 700; color: #1a1a1a; letter-spacing: 1rpx; } /* ===== Hero:红橙渐变底 + 叠加文案 ===== */ .device-hero { position: relative; /* margin-top 移到 .device-body 的 padding-top,避免 margin 塌陷露出灰底白条 */ margin: 0 30rpx; height: 360rpx; border-radius: 24rpx; overflow: hidden; /* 图片加载失败时露出的红橙渐变兜底 */ background: linear-gradient(120deg, #f4141c 0%, #ff8758 100%); box-shadow: 0 12rpx 30rpx rgba(244, 20, 28, 0.18); } /* 轮播底图 */ .hero-swiper { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; } .hero-img { width: 100%; height: 100%; display: block; } /* 文字可读性遮罩:左深右透 */ .hero-mask { position: absolute; inset: 0; z-index: 1; background: linear-gradient(100deg, rgba(120, 20, 14, 0.7) 0%, rgba(180, 40, 24, 0.34) 52%, rgba(255, 135, 88, 0.06) 100%); } .hero-overlay { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; padding: 40rpx 32rpx; } .hero-greeting { font-size: 30rpx; font-weight: 700; color: #fff; } .hero-greeting-sub { margin-top: 6rpx; font-size: 22rpx; color: rgba(255, 255, 255, 0.85); } .hero-title { margin-top: 12rpx; font-size: 46rpx; font-weight: 800; color: #fff; letter-spacing: -1rpx; } .hero-sub { margin-top: 12rpx; font-size: 24rpx; color: rgba(255, 255, 255, 0.9); } /* 登录前双按钮 */ .hero-actions { display: flex; margin-top: 28rpx; } .hero-btn { height: 64rpx; padding: 0 36rpx; border-radius: 999rpx; font-size: 26rpx; font-weight: 700; display: flex; align-items: center; justify-content: center; } .hero-btn.primary { background: #fff; color: #ef111b; } .hero-btn.ghost { margin-left: 20rpx; border: 2rpx solid rgba(255, 255, 255, 0.9); color: #fff; } /* 登录后 4 特性标签 */ .hero-tags { display: flex; margin-top: 28rpx; } .hero-tag { display: flex; flex-direction: column; align-items: center; margin-right: 36rpx; } .hero-tag-icon { width: 56rpx; height: 56rpx; border-radius: 50%; background: rgba(255, 255, 255, 0.22); display: flex; align-items: center; justify-content: center; } .hero-tag-label { margin-top: 10rpx; font-size: 20rpx; color: #fff; } /* ===== 设备分类卡:2 列网格 ===== */ .cat-grid { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 24rpx 30rpx 0; } .cat-card { position: relative; overflow: hidden; width: 336rpx; height: 240rpx; margin-bottom: 18rpx; border-radius: 20rpx; padding: 24rpx; background: linear-gradient(135deg, #fbf2f0 0%, #fdf8f7 100%); box-shadow: 0 6rpx 18rpx rgba(0, 0, 0, 0.04); box-sizing: border-box; } /* 右下角产品几何块 */ .cat-pic { position: absolute; right: 14rpx; bottom: 14rpx; width: 130rpx; height: 130rpx; z-index: 0; border-radius: 16rpx; overflow: hidden; } .cat-pic-img { width: 100%; height: 100%; display: block; } .illust-access { background: linear-gradient(180deg, #2c3440 0%, #4a5566 100%); } .illust-parking { background: linear-gradient(180deg, #9ee7cf 0%, #62c99b 100%); } .illust-guard { background: linear-gradient(180deg, #eef1f4 0%, #c9d2dc 100%); } .illust-environment { background: linear-gradient(180deg, #2a2f3a 0%, #525a6b 100%); } .illust-monitor { background: linear-gradient(180deg, #f0f2f5 0%, #cdd4dd 100%); } .illust-water { background: linear-gradient(180deg, #eaf4ff 0%, #bcd8f5 100%); } .illust-lighting { background: linear-gradient(180deg, #ffe9b0 0%, #f4c45a 100%); } .illust-scene { background: linear-gradient(180deg, #ffe2e0 0%, #ffb9b3 100%); } .cat-text { position: relative; z-index: 1; display: flex; flex-direction: column; max-width: 220rpx; } .cat-title { font-size: 30rpx; font-weight: 700; color: #1a1a1a; letter-spacing: 1rpx; } .cat-desc { margin-top: 8rpx; font-size: 22rpx; line-height: 1.4; color: #9a9a9a; } /* 底部行:锁 / 链接 */ .cat-foot { position: absolute; left: 24rpx; bottom: 24rpx; z-index: 1; display: flex; align-items: center; } .foot-lock { margin-left: 6rpx; font-size: 21rpx; color: #b8b8b8; } .foot-action { margin-left: 6rpx; font-size: 22rpx; font-weight: 600; color: #ef111b; } /* ===== 登录后底部统计条 ===== */ .stat-bar { display: flex; align-items: center; margin: 24rpx 30rpx 0; padding: 24rpx 28rpx; border-radius: 20rpx; background: linear-gradient(135deg, #fff3f1 0%, #fff9f8 100%); box-shadow: 0 6rpx 18rpx rgba(0, 0, 0, 0.04); } .stat-icon { flex-shrink: 0; width: 56rpx; height: 56rpx; border-radius: 50%; background: linear-gradient(135deg, #ff5e61 0%, #ef111b 100%); display: flex; align-items: center; justify-content: center; } .stat-text { flex: 1; min-width: 0; display: flex; flex-direction: column; margin-left: 18rpx; } .stat-title { font-size: 26rpx; font-weight: 700; color: #1a1a1a; } .stat-sub { margin-top: 6rpx; font-size: 20rpx; color: #999; } .stat-num { flex-shrink: 0; display: flex; align-items: baseline; } .stat-value { font-size: 48rpx; font-weight: 800; color: #ef111b; } .stat-unit { margin-left: 6rpx; font-size: 20rpx; color: #999; } /* 底栏占位 */ .tabbar-spacer { height: 160rpx; }