/* 商品目录:分类、搜索、库存状态、价格及配置入口。 */ /* 导入方:app/pages/products/index.vue。 */ .catalog-page[data-v-a6c63d86] { flex-direction: column; gap: 24px; min-width: 0; max-width: 1440px; margin: 0 auto; padding: 18px 10px 28px; display: flex; } .catalog-header[data-v-a6c63d86] { justify-content: space-between; align-items: center; gap: 20px; display: flex; } .catalog-header h1[data-v-a6c63d86] { color: var(--p-text-color); margin: 0; font-size: 1.625rem; font-weight: 600; line-height: 2.286rem; } .catalog-header p[data-v-a6c63d86] { color: var(--p-text-muted-color); margin: 8px 0 0; font-size: 1rem; line-height: 1.571rem; } .cart-link[data-v-a6c63d86] { border: 1px solid var(--p-content-border-color); background: var(--p-content-background); color: var(--p-text-color); white-space: nowrap; border-radius: var(--radius-md); align-items: center; gap: 9px; padding: 10px 16px; font-size: 1rem; text-decoration: none; display: inline-flex; } .cart-link[data-v-a6c63d86]:hover { border-color: var(--p-primary-color); color: var(--p-primary-color); } .catalog-categories[data-v-a6c63d86] { border: 1px solid var(--p-content-border-color); background: var(--p-content-background); border-radius: var(--radius-md); padding: 20px 24px; } .catalog-categories h2[data-v-a6c63d86] { color: var(--p-text-color); margin: 0 0 16px; font-size: 1rem; font-weight: 600; } .category-options[data-v-a6c63d86] { flex-wrap: wrap; gap: 10px; display: flex; } /* 允许连续长文本换行,防止IP、密钥或用户输入撑破当前容器;不会修改原始数据。 */ .category-options button[data-v-a6c63d86] { border: 1px solid var(--p-content-border-color); background: var(--p-content-background); color: var(--p-text-color); font: inherit; cursor: pointer; overflow-wrap: anywhere; border-radius: var(--radius-md); max-width: 100%; padding: 10px 18px; font-size: 1rem; line-height: 1.429rem; } .category-options button[data-v-a6c63d86]:hover { border-color: var(--p-primary-color); color: var(--p-primary-color); } .category-options button.active[data-v-a6c63d86] { border-color: var(--p-primary-color); background: var(--p-highlight-background); color: var(--p-highlight-color); font-weight: 600; } .secondary-categories[data-v-a6c63d86] { border-top: 1px solid var(--p-content-border-color); margin-top: 16px; padding-top: 16px; } .secondary-categories button[data-v-a6c63d86] { padding: 7px 14px; font-size: 0.9375rem; } .category-empty[data-v-a6c63d86] { margin: 16px 0 0; } .category-empty[data-v-a6c63d86], .category-error[data-v-a6c63d86] { color: var(--p-text-muted-color); font-size: 0.9375rem; } .category-error[data-v-a6c63d86] { flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; display: flex; } .catalog-panel[data-v-a6c63d86] { border: 1px solid var(--p-content-border-color); background: var(--p-content-background); border-radius: var(--radius-md); min-width: 0; overflow: hidden; } .catalog-toolbar[data-v-a6c63d86] { justify-content: space-between; align-items: center; gap: 20px; padding: 20px 24px; display: flex; } .catalog-search[data-v-a6c63d86] { gap: 10px; width: min(100%, 480px); display: flex; } .search-input[data-v-a6c63d86] { flex: 1; min-width: 0; position: relative; } .search-input > i[data-v-a6c63d86] { color: var(--p-text-muted-color); pointer-events: none; font-size: 1rem; position: absolute; top: 50%; left: 13px; transform: translateY(-50%); } .search-input[data-v-a6c63d86] input { width: 100%; min-width: 0; padding-left: 36px; font-size: 1rem; } .catalog-count[data-v-a6c63d86] { flex-shrink: 0; gap: 12px; } .catalog-count[data-v-a6c63d86], .search-result[data-v-a6c63d86] { color: var(--p-text-muted-color); align-items: center; font-size: 0.9375rem; display: flex; } /* 允许连续长文本换行,防止IP、密钥或用户输入撑破当前容器;不会修改原始数据。 */ .search-result[data-v-a6c63d86] { overflow-wrap: anywhere; flex-wrap: wrap; gap: 16px; padding: 0 24px 18px; } .search-result button[data-v-a6c63d86] { font: inherit; color: var(--p-primary-color); cursor: pointer; background: 0 0; border: 0; align-items: center; gap: 6px; padding: 0; display: inline-flex; } .search-result i[data-v-a6c63d86] { font-size: 0.8125rem; } .product-columns[data-v-a6c63d86], .product-row[data-v-a6c63d86] { grid-template-columns: minmax(220px, 1fr) minmax(240px, 1.5fr) auto; align-items: center; gap: 32px; padding-inline: 24px; display: grid; } .product-columns[data-v-a6c63d86] { border-top: 1px solid var(--p-content-border-color); border-bottom: 1px solid var(--p-content-border-color); background: var(--p-content-hover-background); min-height: 42px; color: var(--p-text-muted-color); font-size: 0.875rem; } .product-columns[data-v-a6c63d86] > :last-child { text-align: right; } .product-row[data-v-a6c63d86] { border-bottom: 1px solid var(--p-content-border-color); min-width: 0; min-height: 96px; padding-block: 20px; } .product-row[data-v-a6c63d86]:last-child { border-bottom: 0; } .product-heading[data-v-a6c63d86] { align-items: flex-start; gap: 14px; min-width: 0; display: flex; } .product-heading > div[data-v-a6c63d86] { min-width: 0; } .product-icon[data-v-a6c63d86] { background: var(--p-highlight-background); width: 42px; height: 42px; color: var(--p-primary-color); border-radius: var(--radius-md); flex-shrink: 0; place-items: center; font-size: 1.375rem; display: grid; } .product-heading h2[data-v-a6c63d86] { overflow-wrap: anywhere; margin: 0 0 6px; font-size: 1.125rem; font-weight: 600; line-height: 1.714rem; } .product-status[data-v-a6c63d86] { color: var(--p-text-muted-color); align-items: center; gap: 6px; display: inline-flex; } .product-status[data-v-a6c63d86], .product-status > i[data-v-a6c63d86] { font-size: 0.875rem; } .in-stock > i[data-v-a6c63d86] { color: var(--p-primary-color); } .product-purchase[data-v-a6c63d86] { flex-direction: row; justify-content: flex-end; align-items: center; gap: 20px; min-width: 0; display: flex; } .product-price[data-v-a6c63d86] { text-align: right; color: var(--p-text-muted-color); overflow-wrap: anywhere; font-size: 0.875rem; } .product-price strong[data-v-a6c63d86] { color: var(--p-text-color); font-variant-numeric: tabular-nums; font-size: 1.375rem; font-weight: 600; line-height: 2rem; } .configure-link[data-v-a6c63d86] { min-height: 36px; color: var(--p-primary-contrast-color); background: var(--p-primary-color); border-radius: var(--radius-md); white-space: nowrap; justify-content: center; align-items: center; gap: 8px; padding: 8px 16px; font-size: 0.9375rem; text-decoration: none; display: inline-flex; } .configure-link[data-v-a6c63d86]:hover { background: var(--p-primary-hover-color); } .configure-link i[data-v-a6c63d86] { font-size: 0.875rem; } .unavailable .product-icon[data-v-a6c63d86] { color: var(--p-text-muted-color); background: var(--p-content-hover-background); } .product-skeleton[data-v-a6c63d86] { min-height: 96px; } .catalog-footer[data-v-a6c63d86] { border-top: 1px solid var(--p-content-border-color); flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 24px; display: flex; } .catalog-footer p[data-v-a6c63d86] { color: var(--p-text-muted-color); margin: 0; font-size: 0.875rem; line-height: 1.429rem; } .catalog-footer[data-v-a6c63d86] .p-paginator { gap: 4px; padding: 0; } .catalog-help[data-v-a6c63d86] { color: var(--p-text-muted-color); justify-content: center; align-items: center; gap: 8px; margin: 0; font-size: 0.875rem; line-height: 1.429rem; display: flex; } .catalog-help a[data-v-a6c63d86] { color: var(--p-primary-color); align-items: center; gap: 5px; text-decoration: none; display: inline-flex; } a[data-v-a6c63d86]:focus-visible, button[data-v-a6c63d86]:focus-visible { outline: 2px solid var(--p-primary-color); outline-offset: 3px; } /* 视口条件 (width<=1100px) 下的响应式覆盖;保留相对基础规则的层叠顺序。 */ @media (width<=1100px) { .product-columns[data-v-a6c63d86], .product-row[data-v-a6c63d86] { grid-template-columns: minmax(150px, 1fr) minmax(160px, 1.1fr) auto; gap: 20px; } .product-purchase[data-v-a6c63d86] { flex-direction: column; align-items: flex-end; gap: 10px; } .product-icon[data-v-a6c63d86] { display: none; } } /* 视口条件 (width<=768px) 下的响应式覆盖;保留相对基础规则的层叠顺序。 */ @media (width<=768px) { .catalog-categories[data-v-a6c63d86] { padding: 16px; } .category-options[data-v-a6c63d86] { gap: 8px; } .category-options button[data-v-a6c63d86] { padding: 8px 12px; } .secondary-categories button[data-v-a6c63d86] { padding: 6px 10px; } .catalog-page[data-v-a6c63d86] { gap: 20px; padding: 8px 0 20px; } .catalog-header[data-v-a6c63d86] { align-items: flex-start; gap: 12px; } .catalog-header h1[data-v-a6c63d86] { font-size: 1.5rem; line-height: 2rem; } .catalog-header p[data-v-a6c63d86] { max-width: 250px; font-size: 0.9375rem; } .cart-link[data-v-a6c63d86] { padding: 8px 12px; font-size: 0.9375rem; } .catalog-toolbar[data-v-a6c63d86] { flex-wrap: wrap; gap: 8px; padding: 16px; } .catalog-search[data-v-a6c63d86] { width: 100%; } .catalog-count[data-v-a6c63d86] { justify-content: space-between; width: 100%; } .search-result[data-v-a6c63d86] { padding: 0 16px 16px; } .product-columns[data-v-a6c63d86] { display: none; } .product-list[data-v-a6c63d86] { border-top: 1px solid var(--p-content-border-color); } .product-row[data-v-a6c63d86] { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 22px 16px; } .product-heading h2[data-v-a6c63d86] { margin-bottom: 5px; font-size: 1.125rem; } .product-icon[data-v-a6c63d86] { display: grid; } .product-purchase[data-v-a6c63d86] { flex-flow: wrap; justify-content: space-between; align-items: center; gap: 12px; } .product-price[data-v-a6c63d86] { text-align: left; } .product-price strong[data-v-a6c63d86] { font-size: 1.5rem; } .catalog-footer[data-v-a6c63d86] { gap: 14px; padding: 16px; } .catalog-footer[data-v-a6c63d86] .p-paginator { flex-wrap: wrap; justify-content: center; width: 100%; } .catalog-help[data-v-a6c63d86] { flex-wrap: wrap; } }