Files
ChowBox/miniapp/app.wxss
王鹏 802b4ba229 fix: 修复 VoiceController Map.of 兼容性 + ExploreController 参数不匹配
- VoiceController: Map.of() -> Collections.singletonMap() 兼容 Java 8
- ExploreController: 补齐 takeoutService.roll() 缺失的 taste/priceRange/allergies 参数

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-08 20:02:27 +08:00

136 lines
3.2 KiB
Plaintext

/*
* ChowBox 全局设计系统 · 高级简约
* 统一 8rpx 间距 · 3 级圆角 · 5 级字号 · 3 级阴影
*/
/* ═══ 设计令牌 ═══ */
page {
/* 主色系 — 暖橙 */
--color-primary: #E8693B;
--color-primary-light: #F0976E;
--color-primary-pale: #FFF3EE;
--color-primary-ghost: rgba(232, 105, 59, 0.08);
/* 语义色 */
--color-green: #4CAF50;
--color-green-pale: #EDF7EE;
--color-purple: #7C3AED;
--color-purple-pale: #F4F0FF;
/* 表面色 */
--color-bg: #FFFBF7;
--color-surface: #FFFFFF;
--color-hairline: #F2EDE8;
/* 文字色 */
--color-text: #1A1A2E;
--color-text-secondary: #8C8C8C;
--color-text-muted: #B0B0B0;
/* 圆角 — 3 级 */
--radius-sm: 8rpx;
--radius-md: 16rpx;
--radius-lg: 24rpx;
--radius-full: 999rpx;
/* 阴影 — 3 级(极简克制) */
--shadow-sm: 0 1rpx 4rpx rgba(0, 0, 0, 0.04);
--shadow-md: 0 2rpx 12rpx rgba(0, 0, 0, 0.05);
--shadow-lg: 0 4rpx 24rpx rgba(0, 0, 0, 0.07);
/* 间距 — 8rpx 基数 */
--space-xs: 8rpx;
--space-sm: 16rpx;
--space-md: 24rpx;
--space-lg: 32rpx;
--space-xl: 48rpx;
--space-2xl: 64rpx;
/* 字号 — 5 级 */
--text-caption: 22rpx;
--text-body-sm: 24rpx;
--text-body: 28rpx;
--text-subtitle: 32rpx;
--text-title: 36rpx;
--text-headline: 40rpx;
/* 动画 */
--ease-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
/* 基础样式 */
background-color: var(--color-bg);
font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif;
font-size: var(--text-body);
color: var(--color-text);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
}
/* ═══ 主按钮 ═══ */
.btn-primary {
display: flex;
align-items: center;
justify-content: center;
height: 96rpx;
line-height: 96rpx;
background: var(--color-primary);
color: #FFFFFF;
border-radius: var(--radius-lg);
font-size: var(--text-body);
font-weight: 600;
border: none;
padding: 0;
margin: 0;
box-sizing: border-box;
transition: opacity 0.2s ease, transform 0.2s ease;
}
.btn-primary::after {
border: none;
border-radius: var(--radius-lg);
}
.btn-primary:active {
opacity: 0.85;
transform: scale(0.98);
}
.btn-primary[disabled] {
opacity: 0.35;
transform: none;
}
/* ═══ 通用卡片 ═══ */
.card {
background: var(--color-surface);
border-radius: var(--radius-md);
box-shadow: var(--shadow-md);
overflow: hidden;
}
/* ═══ 标签 ═══ */
.tag {
display: inline-flex;
align-items: center;
font-size: var(--text-caption);
padding: 4rpx 14rpx;
border-radius: var(--radius-full);
font-weight: 500;
}
.tag-orange { color: var(--color-primary); background: var(--color-primary-pale); }
.tag-green { color: var(--color-green); background: var(--color-green-pale); }
.tag-purple { color: var(--color-purple); background: var(--color-purple-pale); }
/* ═══ 安全区 ═══ */
.safe-bottom {
padding-bottom: constant(safe-area-inset-bottom);
padding-bottom: env(safe-area-inset-bottom);
}
.safe-top {
padding-top: constant(safe-area-inset-top);
padding-top: env(safe-area-inset-top);
}