/* 门店列表 */ .store-page { background: var(--color-background); } .store-filter { padding: 0 var(--space-page) 12px; } .store-search-row { display: flex; align-items: center; gap: 8px; width: 100%; box-sizing: border-box; } .store-search-input { flex: 1; min-width: 0; height: 40px; padding: 0 14px; border-radius: var(--radius-md); background: var(--color-surface-container-low); font-size: 13px; line-height: 40px; color: var(--color-on-surface); box-sizing: border-box; } .store-search-input input, .store-search-input .taro-input, .store-search-input .weui-input { width: 100% !important; height: 100% !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: none !important; background: transparent !important; box-sizing: border-box !important; font-size: 13px !important; line-height: normal !important; color: inherit; } .store-search-btn { flex-shrink: 0; width: 40px; height: 40px; border-radius: var(--radius-md); background: var(--color-heritage-red); color: #fff; display: flex; align-items: center; justify-content: center; } .store-search-icon { position: relative; width: 14px; height: 14px; border: 2px solid currentColor; border-radius: 50%; box-sizing: border-box; } .store-search-icon::after { content: ''; position: absolute; right: -5px; bottom: -4px; width: 7px; height: 2px; background: currentColor; border-radius: 1px; transform: rotate(45deg); transform-origin: left center; } .store-filter-row { display: flex; align-items: center; gap: 8px; margin-top: 10px; } .store-filter-chip { flex: 1; min-width: 0; height: 36px; padding: 0 10px; border-radius: var(--radius-md); background: var(--color-surface-container-low); display: flex; align-items: center; justify-content: space-between; gap: 4px; box-sizing: border-box; } .store-filter-chip-text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 500; color: var(--color-on-surface); } .store-filter-chip-arrow { flex-shrink: 0; font-size: 10px; color: var(--color-subtle-gray); } .store-filter-icon-btn { flex-shrink: 0; width: 36px; height: 36px; border-radius: var(--radius-md); background: var(--color-surface-container-low); display: flex; align-items: center; justify-content: center; color: var(--color-heritage-red); box-sizing: border-box; } .store-filter-icon-btn--busy { opacity: 0.5; } .store-filter-icon-glyph { font-size: 18px; line-height: 1; font-weight: 700; color: var(--color-heritage-red); } .store-list { padding: 4px var(--space-page) 16px; } /* 左图 + 中间文案 + 右侧箭头 */ .store-card { display: flex; flex-direction: row; align-items: center; gap: 10px; padding: 12px; box-sizing: border-box; background: var(--color-card); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); margin-bottom: 12px; } .store-card-cover-wrap { position: relative; flex-shrink: 0; width: 96px; height: 96px; border-radius: 8px; overflow: hidden; } .store-card-cover { width: 100%; height: 100%; border-radius: 8px; background: var(--color-surface-container); display: block; } .store-card-cover--empty { background: var(--color-surface-container); } .store-card-open-badge { position: absolute; top: 0; right: 0; width: 44px; height: 44px; pointer-events: none; z-index: 1; } .store-card-body { flex: 1; min-width: 0; min-height: 96px; display: flex; flex-direction: column; justify-content: space-between; gap: 4px; box-sizing: border-box; } .store-card-row { display: flex; align-items: flex-start; min-width: 0; overflow: hidden; } /* 第1行:加粗标题(单行截断,不显示 …,宽度顶到最右) */ .store-card-row--head { height: 22px; align-items: center; } .store-card-name { width: 100%; min-width: 0; font-family: var(--font-headline); font-size: 15px; font-weight: 700; line-height: 22px; color: #1a1a1a; overflow: hidden; text-overflow: clip; white-space: nowrap; } /* 第2行:地址最多两行 + 右对齐距离 */ .store-card-row--mid { gap: 8px; align-items: flex-start; } .store-card-address { flex: 1; min-width: 0; font-size: 11px; font-weight: 400; line-height: 16px; max-height: 32px; color: #999; text-align: left; white-space: normal; word-break: break-word; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; } .store-card-distance { flex-shrink: 0; max-width: 40%; padding-top: 1px; font-size: 12px; font-weight: 400; line-height: 16px; color: #999; text-align: right; white-space: nowrap; } /* 第3行:营业时间同行 */ .store-card-row--hours { align-items: center; } .store-card-hours { width: 100%; min-width: 0; font-size: 11px; font-weight: 400; line-height: 16px; color: #999; overflow: hidden; text-overflow: clip; white-space: nowrap; } .store-card-arrow { flex-shrink: 0; align-self: center; width: 16px; font-size: 20px; font-weight: 300; line-height: 1; color: #ccc; text-align: center; }