2026-07-08 16:17:50 +08:00

324 lines
5.9 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ============ 智能设备聚合首页 样式(还原设计稿 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;
}