/* ===== Lucide 子集 iconfont(动态生成,font-family: fc-icon) ===== */ @font-face { font-family: "fc-icon"; src: url('data:font/ttf;base64,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Y3QuaHR0cDovL2ZvbnRlbGxvLmNvbQBmAGMALQBpAGMAbwBuAFIAZQBnAHUAbABhAHIAZgBjAC0AaQBjAG8AbgBmAGMALQBpAGMAbwBuAFYAZQByAHMAaQBvAG4AIAAxAC4AMABmAGMALQBpAGMAbwBuAEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAIAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMQECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBEwEUARUBFgEXARgBGQEaARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAEpASoBKwEsAS0BLgEvATABMQEyAAN6YXAIeC1jaXJjbGUEdXNlcgZ0cm9waHkLdHJlbmRpbmctdXAHdHJhc2gtMgZ0YXJnZXQEc3RhcghzcGFya2xlcxJzbGlkZXJzLWhvcml6b250YWwHc2hhcmUtMghzZXR0aW5ncwZzZWFyY2gJcm90YXRlLWN3CnJlZnJlc2gtY3cEcGx1cwRwbGF5D3BlcnNvbi1zdGFuZGluZwVtZWRhbAdsb2ctb3V0C2xheW91dC1ncmlkBmxheWVycwRpbmZvBWltYWdlBGhvbWUFaGVhcnQIZ3JpZC0yeDILZm9sZGVyLW9wZW4FZmxhbWUGZmlsdGVyCGR1bWJiZWxsCGRvd25sb2FkBWNsb2NrDmNsaXBib2FyZC1saXN0DWNoZXZyb24tcmlnaHQMY2hldnJvbi1kb3duBWNoZWNrDGNoZWNrLWNpcmNsZQhjYWxlbmRhcghib29rbWFyawRiaWtlBGJlbGwFYXdhcmQLYXJyb3ctcmlnaHQKYXJyb3ctbGVmdAxhbGVydC1jaXJjbGUIYWN0aXZpdHkNYWNjZXNzaWJpbGl0eQAAAAA=') format('truetype'); font-weight: normal; font-style: normal; font-display: block; } /* ===== FITCOACH 设计系统:动能暗色(Kinetic Dark) ===== 强调色 accent = Volt 荧光绿 #B6F24E(用户拍板)。 为兼容现有页面对 --gold/--teal 等变量名的引用,保留变量名、改其色值为新调色板; 并补全套语义色/字号/间距/圆角/阴影/动效 Token(真源 design-system/design-tokens.json)。 */ page { /* —— 颜色 —— */ --bg: #0B0F0E; /* 页面背景(冷中性近黑) */ --bg-grad: radial-gradient(120% 80% at 50% 0%, rgba(17,23,20,0) 0%, #0B0F0E 60%); --surface: #141A18; /* 卡片/容器 */ --surface-2: #1C2421; /* 次级表面 chip/输入/选中 */ --surface-warm: #1A211E; /* 悬浮/高亮表面 */ --text: #ECF1EF; /* 主文本 */ --text-2: #9BA7A1; /* 次级文本 */ --text-3: #6B7670; /* 三级/元数据(仅 ≥24rpx) */ --line: rgba(255,255,255,0.08); /* 默认边框/分隔线 */ --border-strong: rgba(255,255,255,0.14); /* 强调边框(选中态) */ --border-soft: rgba(255,255,255,0.05); /* 内部行分隔 */ /* 强调色(原 --gold 命名保留以兼容引用,值改为 Volt 绿) */ --gold: #B6F24E; /* accent 主色 */ --gold-2: #C7F56E; /* accent hover */ --gold-soft: rgba(182,242,78,0.12); /* accent 淡底 */ --gold-line: rgba(182,242,78,0.28); /* accent 边框 */ --teal: #2BD9A6; /* success(原语义) */ /* 语义色(新增) */ --accent: #B6F24E; --accent-hover: #C7F56E; --accent-active: #9EDB3A; --accent-on: #0E1A05; /* accent 背景上的前景(深绿,对比>7:1) */ --accent-soft: rgba(182,242,78,0.12); --accent-ring: rgba(182,242,78,0.38); --success: #2BD9A6; --success-on: #04201A; --success-soft: rgba(43,217,166,0.12); --warn: #F2B53D; --danger: #FF5C5C; /* 替代旧 #E5544B */ --danger-soft: rgba(255,92,92,0.12); --info: #4FA8FF; --bar-bg: rgba(11,15,14,0.92); /* 底部操作条毛玻璃底(=bg 带透明) */ --float-bg: rgba(11,15,14,0.55); /* 浮动按钮底 */ --scrim: rgba(0,0,0,0.5); /* 弹层遮罩 */ /* 字体三族(含中文) */ --font-display: 'Manrope', 'PingFang SC', 'HarmonyOS Sans SC', 'Source Han Sans SC', 'Noto Sans CJK SC', sans-serif; --font-body: 'PingFang SC', 'HarmonyOS Sans SC', 'Source Han Sans SC', 'Noto Sans CJK SC', -apple-system, sans-serif; --font-mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', monospace; /* 字号阶梯(rpx,22–72) */ --fs-xs: 22rpx; --fs-sm: 24rpx; --fs-base: 28rpx; --fs-md: 30rpx; --fs-lg: 32rpx; --fs-xl: 36rpx; --fs-2xl: 44rpx; --fs-3xl: 56rpx; --fs-4xl: 72rpx; /* 字重 / 字距 */ --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600; --ls-eyebrow: 0.08em; --ls-title: -0.02em; --ls-body: 0; /* 间距尺度(4px 网格) */ --sp-1: 8rpx; --sp-2: 16rpx; --sp-3: 24rpx; --sp-4: 32rpx; --sp-5: 40rpx; --sp-6: 48rpx; --sp-8: 64rpx; --sp-10: 80rpx; --sp-12: 96rpx; --sp-16: 128rpx; /* 圆角(收紧) */ --radius-sm: 16rpx; --radius: 24rpx; --radius-md: 24rpx; --radius-lg: 32rpx; --radius-xl: 40rpx; --radius-pill: 9999rpx; /* 阴影(Hairline First:默认无阴影,靠发丝边框) */ --shadow: none; --shadow-ring: 0 0 0 1rpx rgba(255,255,255,0.08); --shadow-raised: 0 8rpx 24rpx rgba(0,0,0,0.32); --shadow-float: 0 12rpx 40rpx rgba(0,0,0,0.45); --shadow-glow: 0 8rpx 24rpx rgba(182,242,78,0.28); /* 唯一允许的彩色阴影:CTA */ --focus-ring: 0 0 0 3rpx rgba(182,242,78,0.45); /* 动效 */ --motion-fast: 150ms; --motion-base: 200ms; --motion-slow: 300ms; --ease: cubic-bezier(0.2, 0, 0, 1); background: var(--bg); color: var(--text); font-family: var(--font-body); font-size: var(--fs-base); line-height: 1.5; } view, text, scroll-view, image, input, textarea, button { box-sizing: border-box; } /* ===== 通用工具类 ===== */ .eyebrow { font-size: var(--fs-xs); letter-spacing: var(--ls-eyebrow); color: var(--accent); text-transform: uppercase; font-weight: var(--fw-semibold); } .section { padding: var(--sp-5) var(--sp-4); } .section + .section { border-top: 1rpx solid var(--line); } .card { background: var(--surface); border-radius: var(--radius); border: 1rpx solid var(--line); } .chip { display: inline-flex; align-items: center; padding: 10rpx 24rpx; border-radius: var(--radius-pill); background: var(--surface-2); color: var(--text-2); font-size: var(--fs-sm); border: 1rpx solid var(--line); } .gold-text { color: var(--gold); } .muted { color: var(--text-2); } .row { display: flex; flex-direction: row; align-items: center; } .col { display: flex; flex-direction: column; } .empty { color: var(--text-3); font-size: var(--fs-sm); text-align: center; padding: 80rpx 0; } .tag { font-size: 20rpx; color: var(--text-2); background: var(--surface-2); padding: 4rpx 12rpx; border-radius: var(--radius-pill); } .tag--gold { color: var(--gold-2); background: var(--gold-soft); } /* ===== 横向滚动右侧渐隐遮罩(提示可右滑) ===== */ .hscroll, .chip-scroll, .filterbar, .emoji-row, .prog-scroll { position: relative; } .hscroll::after, .chip-scroll::after, .filterbar::after, .emoji-row::after, .prog-scroll::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: 56rpx; pointer-events: none; background: linear-gradient(90deg, rgba(11,15,14,0) 0%, rgba(11,15,14,0.9) 100%); }