/* 客户大表：保留列序及合并单元格；桌面完整展表，手机表格独立滚动。 */
.inner-page .article:has(.source-article),main:has(>.source-article){max-width:1280px;width:calc(100% - 64px)}
.source-article>p,.source-article>h2,.source-article>h3{max-width:960px;margin-left:auto;margin-right:auto}
.source-article>h2{margin-top:40px}.source-article>h3{margin-top:30px}
.source-article .source-table{table-layout:fixed;min-width:1100px;font-size:15px;line-height:1.65}
.source-article .source-table th,.source-article .source-table td{border:1px solid #b5bfdc;padding:10px;vertical-align:middle}
.source-article .source-table th{white-space:normal}.source-article .source-table p{margin:0;line-height:1.65}
.source-article .table-wrap{max-height:none}.source-article a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1200px){.inner-page .source-article .table-wrap{max-height:none}}
@media(max-width:1199px){.inner-page .source-article .table-wrap,.source-article .table-wrap{max-height:75vh;overflow:auto}}
@media(max-width:767px){.inner-page .article:has(.source-article),main:has(>.source-article){width:calc(100% - 32px)}}
/* 英文文章页（/en/news/…、/en/ip/…、/en/custom/…、/en/about 等）：main 不限宽，页头色带铺满；正文宽度由 en-container 负责（1280 居中）。
   上面 main:has(>.source-article) 原为中文文章区写的，英文 main 的直接子元素也是 source-article，被误套成 1280 宽靠左（0.1.38 修）。 */
main:has(>.en-container.source-article){max-width:none;width:auto}

@media(max-width:767px){.source-article .source-table td[rowspan]{vertical-align:top}}

/* Word原图等比例展示；保留图中文字，不裁切或拉伸。 */
.source-article img{display:block;max-width:100%;height:auto;margin:24px auto}
.source-article .source-image{max-width:960px;margin:24px auto}

/* 推荐产品按系列成组，链长自然换行，手机不生成横向轨道。 */
.source-article .product-link-group{max-width:960px;margin:0 auto;padding:18px 0;display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:12px 24px;border-bottom:1px solid #dfe4ef}
.source-article .product-link-group h4{font-size:17px;line-height:1.6;margin:5px 0;color:#242963;overflow-wrap:anywhere}
.source-article .product-link-items{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.source-article .product-link-items a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:62px;padding:4px 10px;border:1px solid #c9d2e8;border-radius:6px;background:#f5f7fc;color:#3438a5;text-decoration:none;font-size:15px;line-height:1.5}
.source-article .product-link-items a:hover{background:#e9edfb;border-color:#7075c5}
.source-article .product-link-items a:focus-visible{outline:2px solid #4e52ba;outline-offset:2px}
.source-article .product-link-pending{font-size:14px;color:#657087;overflow-wrap:anywhere}
@media(max-width:767px){.source-article .product-link-group{grid-template-columns:minmax(0,1fr);gap:8px;padding:16px 0}.source-article .product-link-items a{min-height:44px}.source-article .product-link-group h4{margin:0}}
/* 定制案例卡片（0.1.38，刘老师 11-02 21:50 定样：仿 /c/1 系列卡片）。上传的网页只保留 class，所以版式全靠这里；中英文页共用。
   电脑每排 3 个、平板 2 个、手机 1 个（与 /c/1 系列卡片同断点）；同排等高；简介全文显示，不截断。按 HTML 里的先后顺序排列。 */
.inner-page .article:has(.case-grid){max-width:1280px}

.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0;padding:0;list-style:none}
.case-grid .case-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:20px;background:#fff;border:1px solid var(--line,var(--en-line,#e0e6f3));border-radius:16px;color:var(--body,#3a416f);overflow-wrap:anywhere}
.case-grid .case-card__structure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:190px;margin:0;padding:18px;background:#fff;border:1px solid var(--line,var(--en-line,#e1e7ef));border-radius:12px;overflow:hidden;cursor:zoom-in}
.case-grid .case-card .case-card__structure img{display:block;width:auto;max-width:100%;height:auto;max-height:240px;object-fit:contain;border-radius:0}
.case-grid .case-card .case-card__structure figcaption{margin:0;font-size:12px;line-height:1.5;color:#586b82;text-align:center}
.case-card__structure:focus-visible{outline:2px solid #2f5bff;outline-offset:2px}
.case-grid .case-card .case-card__tag{align-self:flex-start;margin:18px 0 12px;padding:0 10px;border-radius:8px;background:var(--c-brand-soft,#e3e9ff);color:var(--c-brand-deep,#2433b8);font-size:14px;line-height:26px;font-weight:700;max-width:100%}
.case-grid .case-card .case-card__name{margin:0 0 12px;max-width:none;font-size:20px;line-height:1.35;font-weight:700;color:var(--ink,#141b5c);overflow-wrap:anywhere}
.case-grid .case-card .case-card__cas{margin:0 0 8px;max-width:none;font-size:14px;line-height:1.6;color:var(--muted,#5f6596)}
.case-grid .case-card .case-card__desc{margin:0;max-width:none;font-size:16px;line-height:1.9;color:var(--muted,#5f6596);white-space:normal;overflow:visible;display:block;-webkit-line-clamp:unset}
@media(max-width:1100px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.case-grid{grid-template-columns:minmax(0,1fr);gap:18px}.case-grid .case-card{padding:16px}.case-grid .case-card__structure{min-height:170px}}
