/* =====================================================================
 * 产品卡 / 产品详情共享骨架（2026-11-07）
 *   本文件由 _Layout.cshtml 全站加载，只放跨租户一致的布局契约。
 *   颜色、间距、字号等租户视觉值一律留在各皮肤文件，不在这里写死。
 * ===================================================================== */

/* 产品卡 CTA：价格独立成行后，底部动作行永远只有一个按钮，水平居中。 */
main .xz-card.xz-card--center-btn > .xz-card-foot,
main .xz-card.xz-card--center-btn .xz-card-foot {
    justify-content: center;
    text-align: center;
}
main .xz-card .xz-card-price-row {
    margin: 0 0 8px;
    text-align: center;
}
main .xz-card--center-btn .xz-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* 详情页：左分类菜单 | 右侧内容（画廊/概要 + 描述）。
   .xz-pro-content 是菜单右侧的唯一内容列，描述不再跨到整页左缘。 */
.xz-pro-layout--content {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}
.xz-pro-content {
    min-width: 0;
    display: grid;
    gap: 28px;
}
.xz-pro-primary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 28px;
    align-items: start;
    min-width: 0;
}
.xz-pro-gallery,
.xz-dish-detail-info,
.xz-pro-desc { min-width: 0; }
.xz-pro-content > .xz-pro-desc {
    width: 100%;
    max-width: none;
    justify-self: stretch;
    grid-column: 1 / -1;
}

/* top 形态：分类条通栏，主内容仍保持右侧内容列语义。
   只命中 2026-11-07 之后的新 DOM，避免静态 CSS 先于旧 DLL 重启时挤坏旧三栏。 */
.xz-pro-layout--content.xz-pro-layout--top { grid-template-columns: 1fr; }
.xz-pro-layout--content.xz-pro-layout--top > .xz-psn { grid-column: 1 / -1; }
.xz-pro-layout--content.xz-pro-layout--top .xz-pro-content { grid-column: 1 / -1; }

@media (max-width: 900px) {
    .xz-pro-layout--content,
    .xz-pro-primary,
    .xz-pro-layout--content.xz-pro-layout--top { grid-template-columns: minmax(0, 1fr); }
    .xz-pro-content { gap: 20px; }
}
