Files
cms-SiteForge/themes/industrial/blocks.css
T
浅念 e21dbb6518 upgrade: adopt V8.33.1 — final merge, our patches upstreamed natively
V8.33.0 absorbed our entire platform patch set as native features
(discovery/env_for macro override/blocks.css priority/type-mapping fix/
frontend entries/locale override) and synced trade-pro from our remote;
V8.33.1 adds HESU PIPE industrial-theme home fixes (1.3.1).

Zero patch re-application this round — all verified native. Theme
suites 35/35; full run 428 passed + same 10 known Windows env fails
(FAILED set unchanged). Live: container 8.33.1-dev.1 healthy, hesupipe
192 entries intact, trade-pro build 203 pages 0 errors.

Patch registry retired to archive — future upgrades are plain overlay.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-26 14:27:17 +08:00

87 lines
13 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* Portable SiteForge blocks, loaded with every theme (all styles scoped to sf-). */
.sf-section{background:var(--sf-bg,transparent);color:var(--sf-fg,inherit);padding:var(--sf-pad,82px) 0;margin:0}.sf-section:nth-of-type(even){background:var(--sf-bg,#f4f6f9)}.sf-container{max-width:1200px;margin:auto;padding:0 32px}.sf-section h1,.sf-section h2,.sf-section h3,.sf-section p{color:inherit;line-height:1.3}.sf-section h1{font-size:clamp(38px,5vw,76px);font-weight:790;letter-spacing:-.052em}.sf-section h2{font-size:clamp(27px,3.2vw,44px);font-weight:760;letter-spacing:-.037em}.sf-kicker{display:block;font-size:12px;letter-spacing:.17em;text-transform:uppercase;font-weight:740;color:var(--accent,#3569d3);margin-bottom:18px}.sf-hero-grid,.sf-image-text{display:grid;grid-template-columns:1.08fr .92fr;gap:68px;align-items:center}.sf-hero-copy p{font-size:18px;line-height:1.75;max-width:520px;opacity:.75}.sf-hero-img,.sf-image-side{overflow:hidden;border-radius:9px;min-height:380px;background:linear-gradient(130deg,#d5e1ee,#eef3f9);display:grid;place-items:center}.sf-hero-img img,.sf-image-side img{width:100%;height:100%;max-height:580px;object-fit:cover}.sf-hero-abstract{font-size:110px;color:#a7bdd4}.sf-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--accent,#315ee2);color:white!important;padding:16px 26px;border-radius:6px;font-size:14px;text-decoration:none;font-weight:720;margin-top:24px}.sf-section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px;gap:24px}.sf-section-head h2{margin:0}.sf-section-head>a,.sf-link{color:var(--accent,#3569d3);font-weight:700;text-decoration:none}.sf-prose{font-size:16px;line-height:1.85;max-width:930px}.sf-prose p{line-height:1.85}.sf-features,.sf-collection,.sf-stats{display:grid;gap:20px}.sf-features{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-feature{border:1px solid #e0e6eb;padding:32px 28px;border-radius:8px;background:#fff;color:#253247}.sf-feature>span{font-size:12px;font-weight:800;color:var(--accent,#346add)}.sf-feature h3{font-size:22px;margin:30px 0 8px}.sf-feature p{font-size:14px;line-height:1.7;color:#647181}.sf-stats{grid-template-columns:repeat(4,1fr);padding:40px 0;border-top:1px solid #b7c0cd66;border-bottom:1px solid #b7c0cd66}.sf-stats>div{display:flex;flex-direction:column;gap:8px}.sf-stats strong{font-size:clamp(28px,4vw,53px);letter-spacing:-.04em}.sf-stats span{font-size:12px;opacity:.65;letter-spacing:.04em}.sf-collection{grid-template-columns:repeat(var(--sf-cols,3),minmax(0,1fr))}.sf-item{display:block;text-decoration:none;color:#233044;background:#fff;border:1px solid #e8edf1;border-radius:8px;overflow:hidden;transition:transform .2s,box-shadow .2s}.sf-item:hover{transform:translateY(-4px);box-shadow:0 18px 38px #344d7018}.sf-item-img{height:210px;overflow:hidden;background:#e4eaf0}.sf-item-img img{height:100%;width:100%;object-fit:cover}.sf-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:190px;background:linear-gradient(130deg,#e2eaf2,#c9d7e6);font-size:72px;color:#8399b2;font-weight:800}.sf-large{min-height:360px}.sf-item-copy{padding:25px}.sf-item-copy small{text-transform:uppercase;letter-spacing:.13em;color:var(--accent,#376edc)}.sf-item-copy h3{font-size:22px;margin:12px 0 7px}.sf-item-copy p{font-size:14px;line-height:1.6;color:#7a8796;min-height:42px}.sf-item-copy span{font-size:12px;color:var(--accent,#376edc);font-weight:800}.sf-image-text>div>p{font-size:17px;line-height:1.8;max-width:520px;opacity:.7}.sf-reverse>div:first-child{order:2}.sf-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.sf-gallery img{width:100%;height:230px;object-fit:cover;border-radius:6px}.sf-faq{max-width:920px}.sf-faq details{border-bottom:1px solid #dce3eb;padding:22px 0}.sf-faq summary{font-size:17px;cursor:pointer;font-weight:700}.sf-faq p{color:#647181;line-height:1.75}.sf-cta-wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.sf-cta-wrap h2{margin:0}.sf-cta-wrap p{font-size:16px;opacity:.75}.sf-section a{cursor:pointer}.sf-muted{opacity:.65}
@media(max-width:820px){.sf-container{padding:0 20px}.sf-section{padding:50px 0}.sf-hero-grid,.sf-image-text{grid-template-columns:1fr;gap:26px}.sf-reverse>div:first-child{order:initial}.sf-hero-img,.sf-image-side{min-height:250px}.sf-features,.sf-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-stats{grid-template-columns:repeat(2,1fr)}.sf-cta-wrap{align-items:flex-start;flex-direction:column}}
@media(max-width:540px){.sf-features,.sf-collection,.sf-gallery{grid-template-columns:1fr}.sf-section-head{display:block}.sf-section-head>a{display:block;margin-top:13px}.sf-item-img{height:220px}.sf-hero-grid{gap:22px}.sf-hero-copy p{font-size:16px}.sf-stats{gap:28px}}
.sf-attributes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-top:1px solid #e5eaf0}.sf-attribute{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #e5eaf0;padding:19px 10px;font-size:14px}.sf-attribute span{color:#748497}.sf-attribute strong{font-weight:720;text-align:right}@media(max-width:640px){.sf-attributes{grid-template-columns:1fr}}
/* SiteForge responsive no-code grid container */
.sf-layout-grid{display:grid;grid-template-columns:var(--sf-layout-cols,1fr 1fr);gap:var(--sf-layout-gap,24px);align-items:stretch}
.sf-layout-column{min-width:0}.sf-layout-column>.sf-section{padding:0;margin:0 0 18px}.sf-layout-column .sf-container{width:100%;padding:0}
.sf-layout-column>.sf-section:last-child{margin-bottom:0}
@media(max-width:820px){.sf-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:540px){.sf-layout-grid{grid-template-columns:minmax(0,1fr)!important}}
/* V8.6: accessible, script-free commercial design blocks */
.sf-slides{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 0 18px;scrollbar-width:thin}
.sf-slide{flex:0 0 min(78%,720px);min-width:220px;margin:0;scroll-snap-align:start}
.sf-slide img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px}
.sf-slide figcaption{padding:10px 2px;opacity:.7;font-size:14px}
.sf-video{aspect-ratio:16/9;max-width:1000px;background:#ebf0f5;border-radius:10px;overflow:hidden}
.sf-video iframe{width:100%;height:100%;border:0}
.sf-tab{padding:19px 0;border-bottom:1px solid #dde4ec;max-width:960px}
.sf-tab summary{font-size:18px;font-weight:700;cursor:pointer}.sf-tab p{max-width:850px;line-height:1.8}
.sf-prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.sf-price{padding:28px;background:#fff;border:1px solid #dee5ef;border-radius:10px;color:#29394b}
.sf-price strong{display:block;font-size:27px;margin:14px 0}.sf-price li{margin:11px 0}.sf-price ul{padding-left:19px}
.sf-map-address{font-style:normal;font-size:18px;white-space:pre-line;line-height:1.8}
@media (prefers-reduced-motion:reduce){.sf-slides{scroll-behavior:auto}.sf-item{transition:none}}
@media(max-width:540px){.sf-slide{flex-basis:92%}}
/* V8.33.1 grid-class collision fix: block section and inner collection/features
share a class. The section must NOT become a grid container itself.
Restrict grid layout to its dedicated inner element. */
.sf-section.sf-features,.sf-section.sf-collection,.sf-section.sf-stats,.sf-section.sf-gallery,.sf-section.sf-attributes{display:block;grid-template-columns:none}
.sf-section.sf-faq{max-width:none}
/* V8.33.1 HesuPipe / Industrial scoped homepage blocks.
Deliberately affects only current industrial theme, not the other four.
Versioned copies remain unchanged. */
.sf-theme-industrial .pro-custom-content{min-width:0}
.sf-theme-industrial .pro-custom-content .sf-section{padding:clamp(54px,6vw,92px) 0}
.sf-theme-industrial .pro-custom-content .sf-container{max-width:var(--pro-wide,1270px);padding-inline:32px}
.sf-theme-industrial .pro-custom-content .sf-section-head{align-items:flex-end;margin-bottom:30px;gap:16px}
.sf-theme-industrial .pro-custom-content .sf-section-head h2{max-width:900px;font-size:clamp(28px,3.1vw,43px);line-height:1.18;letter-spacing:-.035em}
.sf-theme-industrial .pro-custom-content .sf-section-head>a{font-size:14px;white-space:nowrap;color:var(--pro-accent,#087c94)}
/* Advantage cards: evenly distribute 1–4 cards, maintain equal height, no orphan in 4-item groups. */
.sf-theme-industrial .pro-custom-content .sf-section.sf-features > .sf-container > .sf-features{display:grid;grid-template-columns:repeat(var(--sf-feature-cols,3),minmax(0,1fr));gap:18px}
.sf-theme-industrial .pro-custom-content .sf-feature{min-width:0;min-height:220px;border:1px solid #d9e5ea;border-top:3px solid var(--pro-accent,#0f7895);border-radius:10px;padding:28px 25px;background:#fff;display:flex;flex-direction:column;gap:0;box-shadow:0 8px 28px rgba(23,56,68,.035);overflow-wrap:anywhere}
.sf-theme-industrial .pro-custom-content .sf-feature>span{font-size:12px;font-weight:800;letter-spacing:.15em;color:var(--pro-accent,#0f7895)}
.sf-theme-industrial .pro-custom-content .sf-feature h3{font-size:clamp(18px,1.6vw,22px);margin:28px 0 10px;line-height:1.3;color:#143c4e}
.sf-theme-industrial .pro-custom-content .sf-feature p{font-size:14px;line-height:1.75;color:#56717e;margin:0}
/* Product gallery: stable image ratio, neat text baselines and equal card heights. */
.sf-theme-industrial .pro-custom-content .sf-section.sf-collection > .sf-container > .sf-collection{display:grid;grid-template-columns:repeat(var(--sf-cols,3),minmax(0,1fr));gap:21px;align-items:stretch}
.sf-theme-industrial .pro-custom-content .sf-item{min-width:0;height:100%;display:flex;flex-direction:column;border:1px solid #dfe8ec;border-radius:10px;background:#fff;overflow:hidden;color:#16384b;box-shadow:0 6px 18px rgba(16,59,82,.04)}
.sf-theme-industrial .pro-custom-content .sf-item-img{height:auto;aspect-ratio:4/3;min-height:0;background:#eff5f7;display:grid;place-items:center;padding:14px;overflow:hidden}
.sf-theme-industrial .pro-custom-content .sf-item-img img{display:block;width:100%;height:100%;object-fit:contain}
.sf-theme-industrial .pro-custom-content .sf-item-img .sf-placeholder{min-height:0;font-size:clamp(24px,5vw,52px)}
.sf-theme-industrial .pro-custom-content .sf-item-copy{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1;min-width:0}
.sf-theme-industrial .pro-custom-content .sf-item-copy small{font-size:11px;font-weight:750;color:var(--pro-accent,#087c94);letter-spacing:.08em}
.sf-theme-industrial .pro-custom-content .sf-item-copy h3{margin:11px 0 8px;font-size:clamp(17px,1.5vw,21px);line-height:1.35;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sf-theme-industrial .pro-custom-content .sf-item-copy p{margin:0 0 15px;font-size:13px;line-height:1.65;color:#637f8c;min-height:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sf-theme-industrial .pro-custom-content .sf-item-copy>span{margin-top:auto;padding-top:10px;font-weight:750;color:var(--pro-accent,#087c94)}
.sf-theme-industrial .pro-custom-content .sf-section.sf-collection > .sf-container > .sf-collection>.sf-muted{grid-column:1/-1;border:1px dashed #bdcdd4;border-radius:9px;padding:28px;text-align:center;background:#f6fafb;opacity:1;color:#617985}
/* The dedicated listing / category view retains filters. Homepage highlights do not. */
.sf-theme-industrial .pro-custom-content .sf-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 22px}
.sf-theme-industrial .pro-custom-content .sf-filters input,.sf-theme-industrial .pro-custom-content .sf-filters select{min-width:0;max-width:100%;border:1px solid #cbdbe3;border-radius:7px;background:#fff;color:#1b4055;padding:10px 13px;font-size:14px}
@media(max-width:960px){
.sf-theme-industrial .pro-custom-content .sf-section.sf-features > .sf-container > .sf-features{grid-template-columns:repeat(2,minmax(0,1fr))}
.sf-theme-industrial .pro-custom-content .sf-section.sf-collection > .sf-container > .sf-collection{grid-template-columns:repeat(2,minmax(0,1fr))}
.sf-theme-industrial .pro-custom-content .sf-container{padding-inline:24px}
}
@media(max-width:600px){
.sf-theme-industrial .pro-custom-content .sf-section{padding:45px 0}
.sf-theme-industrial .pro-custom-content .sf-container{padding-inline:18px}
.sf-theme-industrial .pro-custom-content .sf-section-head{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:20px}
.sf-theme-industrial .pro-custom-content .sf-section-head>a{white-space:normal;margin-top:0}
.sf-theme-industrial .pro-custom-content .sf-section.sf-features > .sf-container > .sf-features{grid-template-columns:minmax(0,1fr);gap:12px}
.sf-theme-industrial .pro-custom-content .sf-feature{min-height:0;padding:24px}
.sf-theme-industrial .pro-custom-content .sf-feature h3{margin-top:18px}
.sf-theme-industrial .pro-custom-content .sf-section.sf-collection > .sf-container > .sf-collection{grid-template-columns:minmax(0,1fr);gap:16px}
.sf-theme-industrial .pro-custom-content .sf-item-img{aspect-ratio:5/3}
.sf-theme-industrial .pro-custom-content .sf-item-copy{padding:17px 20px 21px}
.sf-theme-industrial .pro-custom-content .sf-filters{display:grid;grid-template-columns:minmax(0,1fr)}
.sf-theme-industrial .pro-custom-content .sf-filters input,.sf-theme-industrial .pro-custom-content .sf-filters select{width:100%}
}
@media(prefers-reduced-motion:reduce){.sf-theme-industrial .pro-custom-content .sf-item{transition:none}}