- VoiceController: Map.of() -> Collections.singletonMap() 兼容 Java 8 - ExploreController: 补齐 takeoutService.roll() 缺失的 taste/priceRange/allergies 参数 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
86 lines
1.6 KiB
Plaintext
86 lines
1.6 KiB
Plaintext
/*
|
||
* 首页 · 盲盒大厅
|
||
* 空间节奏:32 → 48 → 48 → 64
|
||
*/
|
||
|
||
.home {
|
||
padding: var(--space-lg) var(--space-lg);
|
||
min-height: 100vh;
|
||
}
|
||
|
||
/* ── 顶部 ── */
|
||
.header {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
margin-bottom: var(--space-xl);
|
||
}
|
||
|
||
.greeting {
|
||
font-size: var(--text-body);
|
||
font-weight: 500;
|
||
color: var(--color-text-secondary);
|
||
}
|
||
|
||
.location-badge {
|
||
display: flex;
|
||
align-items: center;
|
||
font-size: var(--text-body-sm);
|
||
color: var(--color-primary);
|
||
padding: var(--space-xs) var(--space-sm);
|
||
background: var(--color-primary-pale);
|
||
border-radius: var(--radius-full);
|
||
}
|
||
|
||
.location-badge:active {
|
||
opacity: 0.7;
|
||
}
|
||
|
||
/* ── 主视觉 ── */
|
||
.hero {
|
||
text-align: center;
|
||
margin-bottom: var(--space-xl);
|
||
}
|
||
|
||
.hero-emoji {
|
||
display: inline-block;
|
||
font-size: 88rpx;
|
||
margin-bottom: var(--space-sm);
|
||
animation: hero-float 3s ease-in-out infinite;
|
||
}
|
||
|
||
@keyframes hero-float {
|
||
0%, 100% { transform: translateY(0); }
|
||
50% { transform: translateY(-10rpx); }
|
||
}
|
||
|
||
.hero-title {
|
||
font-size: 44rpx;
|
||
font-weight: 700;
|
||
color: var(--color-text);
|
||
letter-spacing: 2rpx;
|
||
margin-bottom: var(--space-xs);
|
||
}
|
||
|
||
.hero-subtitle {
|
||
font-size: var(--text-subtitle);
|
||
color: var(--color-primary);
|
||
font-weight: 500;
|
||
}
|
||
|
||
/* ── 卡片列表 ── */
|
||
.modes {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: var(--space-md);
|
||
margin-bottom: var(--space-xl);
|
||
}
|
||
|
||
/* ── 每日一言 ── */
|
||
.daily-tip {
|
||
text-align: center;
|
||
font-size: var(--text-body-sm);
|
||
color: var(--color-text-muted);
|
||
padding: var(--space-lg) 0;
|
||
}
|