feat: 落地 Warm Kitchen Ledger 原型,宽屏左导航 + 双栏布局

新增 ledger.css 设计令牌与桌面端布局,AppRail 左导航、PageHead 桌面页头、ResultsColumn 常驻结果栏;做菜/菜谱/发现/我的/设置/帮助/关于各页做桌面窄屏双形态适配,窄屏仍走原有底部标签栏与弹层交互。
This commit is contained in:
toor
2026-10-22 03:30:56 +08:00
committed by trae-solo-agent
parent 7049eb02a8
commit 7408591fac
18 changed files with 3604 additions and 383 deletions
@@ -6,6 +6,8 @@ defineProps<{
title: string
/** 标题右侧的说明,例如「已选 2 种」 */
note?: string
/** 桌面端把按钮排成网格(厨具一栏用) */
grid?: boolean
}>()
</script>
@@ -15,7 +17,7 @@ defineProps<{
<span>{{ title }}</span>
<span v-if="note" class="ingredient-section-note">{{ note }}</span>
</h2>
<div class="ingredient-section-card">
<div class="ingredient-section-card" :class="{ 'is-grid': grid }">
<slot />
</div>
</section>
@@ -38,4 +40,31 @@ defineProps<{
border-radius: 10px;
background: var(--ion-item-background, #fff);
}
@media (min-width: 1024px) {
.ingredient-section {
margin-bottom: 24px;
}
.ingredient-section-header {
margin: 0 0 12px;
padding: 0;
color: var(--ledger-text);
font: 600 var(--ledger-t-18) / 1.3 var(--ledger-font-display);
}
.ingredient-section-note {
color: var(--ledger-text-mute);
font: 400 var(--ledger-t-13) / 1.3 var(--ledger-font-body);
}
.ingredient-section-card {
margin: 0;
padding: 0;
border-radius: 0;
background: transparent;
}
.ingredient-section-card.is-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
gap: 8px;
}
}
</style>