Files
cms-SiteForge/themes
浅念 c4d9b1075c feat: full block visual bridge — platform blocks get trade-pro template-grade styling
Task 13a. Rewrite themes/trade-pro/blocks.css as two layers:
- Layer A: current app/static/blocks.css verbatim (old theme copy was stale,
  missing V8.34+ hero slider / layout-variant / card-style rules); keeps all
  platform contracts (site-runtime.js hero track, responsive.py 820/540 device
  semantics, card-style/fit variants, V8.33.1 section-vs-inner class fix).
- Layer B: .sf-theme-trade-pro scoped bridge to the sf-tp-* template language:
  hero (dark gradient + scrim + inverse button), features (soft band + white
  cards + icon-circle index), collection (hairline cards, hover lift, 4:3
  media, pill tag), image_text (1fr/1.22fr + photo frame), stats (white stat
  bar with hairline dividers), cta (gradient band + ghost button), richtext
  (article-body typography incl. tables), plus gallery/faq/tabs/carousel/
  video/pricing/attributes in the same tokens. 68 distinct --sf-tp-* token
  references; breakpoints 900/620 follow the template.
  Section backgrounds use a .sf-canvas chain (0,4,0) so they beat pro-base's
  later-loading .pro-custom-content rules in both static and editor cascades;
  user inline --sf-bg/--sf-fg still win via var() fallbacks; canvas hooks
  (block-id attrs, selection outlines, site-design padding/h1 controls)
  untouched.

Tests: test_trade_pro_blocks_visual_bridge covers distribution (theme file
served verbatim, not platform), full multi-block DOM structure with pro.js
filter hooks, scoped rule/token/breakpoint contracts and editor-safety
red lines. 36/36 in test_theme_registry + test_theme_pro_v3; full suite
453 passed / 11 failed (identical to pre-change baseline).

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-28 16:07:39 +08:00
..