@clay-design-system/email 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/build/asset-scoring.d.ts.map +1 -1
  2. package/dist/build/asset-scoring.js +2 -1
  3. package/dist/build/asset-scoring.js.map +1 -1
  4. package/dist/build/compile.js +1 -1
  5. package/dist/build/icon-registry-map.d.ts +2 -2
  6. package/dist/build/icon-registry-map.d.ts.map +1 -1
  7. package/dist/build/icon-registry-map.js +1 -1
  8. package/dist/build/placeholder.d.ts +79 -0
  9. package/dist/build/placeholder.d.ts.map +1 -0
  10. package/dist/build/placeholder.js +148 -0
  11. package/dist/build/placeholder.js.map +1 -0
  12. package/dist/build/visual-resolver.d.ts +20 -3
  13. package/dist/build/visual-resolver.d.ts.map +1 -1
  14. package/dist/build/visual-resolver.js +69 -5
  15. package/dist/build/visual-resolver.js.map +1 -1
  16. package/dist/catalog.json +77 -77
  17. package/dist/emails/component-buttons-icons.html +9 -9
  18. package/dist/emails/component-buttons-integration.html +9 -9
  19. package/dist/emails/component-buttons-primary.html +9 -9
  20. package/dist/emails/component-buttons-secondary.html +9 -9
  21. package/dist/emails/component-buttons-two-integrations.html +9 -9
  22. package/dist/emails/component-images-card-280h.html +9 -9
  23. package/dist/emails/component-images-card-320h.html +9 -9
  24. package/dist/emails/component-images-card.html +9 -9
  25. package/dist/emails/component-images-full-bleed-280h.html +9 -9
  26. package/dist/emails/component-images-full-bleed-400h.html +9 -9
  27. package/dist/emails/component-images-full-bleed.html +9 -9
  28. package/dist/emails/component-text-h1.html +9 -9
  29. package/dist/emails/component-text-h2.html +9 -9
  30. package/dist/emails/component-text-h3.html +9 -9
  31. package/dist/emails/component-text-h4.html +9 -9
  32. package/dist/emails/component-text-h5.html +9 -9
  33. package/dist/emails/component-text-p2.html +9 -9
  34. package/dist/emails/component-text-p3.html +11 -11
  35. package/dist/emails/component-text-p4.html +11 -11
  36. package/dist/emails/container.html +10 -10
  37. package/dist/emails/section-changelog-icon-list.html +9 -9
  38. package/dist/emails/section-divider-line.html +11 -11
  39. package/dist/emails/section-feature-highlight-reversed.html +9 -9
  40. package/dist/emails/section-feature-highlight.html +9 -9
  41. package/dist/emails/section-feature-rows.html +9 -9
  42. package/dist/emails/section-feature-story-row-reversed.html +11 -11
  43. package/dist/emails/section-feature-story-row.html +11 -11
  44. package/dist/emails/section-footer-lifecycle.html +9 -9
  45. package/dist/emails/section-footer-two-column-minimal.html +11 -11
  46. package/dist/emails/section-footer.html +15 -15
  47. package/dist/emails/section-header.html +9 -9
  48. package/dist/emails/section-hero.html +9 -9
  49. package/dist/emails/section-icon-feature-list.html +9 -9
  50. package/dist/emails/section-image-caption-block.html +9 -9
  51. package/dist/emails/section-image-hero.html +10 -10
  52. package/dist/emails/section-lesson-card.html +11 -11
  53. package/dist/emails/section-list-action-items.html +13 -13
  54. package/dist/emails/section-list-feature-items.html +9 -9
  55. package/dist/emails/section-list-icon-items.html +13 -13
  56. package/dist/emails/section-list-numbered-items.html +9 -9
  57. package/dist/emails/section-logo-header.html +9 -9
  58. package/dist/emails/section-newsletter-hero.html +10 -10
  59. package/dist/emails/section-product-ui-hero.html +9 -9
  60. package/dist/emails/section-promo-banner.html +9 -9
  61. package/dist/emails/section-qa-block.html +9 -9
  62. package/dist/emails/section-resource-link-list.html +9 -9
  63. package/dist/emails/section-signoff.html +9 -9
  64. package/dist/emails/section-single-column-author.html +9 -9
  65. package/dist/emails/section-single-column-feature-card.html +9 -9
  66. package/dist/emails/section-single-column-product-card.html +10 -10
  67. package/dist/emails/section-single-column-promo-card.html +10 -10
  68. package/dist/emails/section-spacer-fill.html +12 -12
  69. package/dist/emails/section-testimonial-dark-card.html +9 -9
  70. package/dist/emails/section-text-h1-regular.html +9 -9
  71. package/dist/emails/section-text-h2-regular.html +9 -9
  72. package/dist/emails/section-text-h3-regular.html +9 -9
  73. package/dist/emails/section-text-h4-regular.html +9 -9
  74. package/dist/emails/section-text-h5-regular.html +9 -9
  75. package/dist/emails/section-text-mixed-heading.html +9 -9
  76. package/dist/emails/section-text-overline-heading.html +11 -11
  77. package/dist/emails/section-text-p1-bold.html +9 -9
  78. package/dist/emails/section-text-p1-regular.html +9 -9
  79. package/dist/emails/section-text-paragraph.html +9 -9
  80. package/dist/emails/section-text-quote-card.html +9 -9
  81. package/dist/emails/section-text-quote.html +9 -9
  82. package/dist/emails/section-text-small-headline.html +10 -10
  83. package/dist/emails/section-three-column-content-cards.html +9 -9
  84. package/dist/emails/section-three-column-icon-cards.html +9 -9
  85. package/dist/emails/section-three-column-image-grid.html +9 -9
  86. package/dist/emails/section-three-up-icon-benefits.html +9 -9
  87. package/dist/emails/section-two-column-feature-cards.html +9 -9
  88. package/dist/emails/section-two-column-grid.html +9 -9
  89. package/dist/emails/section-two-column-img-text.html +9 -9
  90. package/dist/emails/section-two-column-live-tags.html +10 -10
  91. package/dist/emails/section-two-column-stacked.html +9 -9
  92. package/dist/emails/section-upsell-cta.html +9 -9
  93. package/dist/emails/section-value-bullet-list.html +9 -9
  94. package/dist/generated/email-tokens.d.ts +1 -1
  95. package/dist/generated/email-tokens.js +1 -1
  96. package/dist/index.d.ts +1 -1
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +1 -1
  99. package/dist/index.js.map +1 -1
  100. package/dist/tokens/build-email-assets.js +1 -1
  101. package/dist/tokens/build-email-assets.js.map +1 -1
  102. package/dist/tokens/build-email-tokens.js +10 -10
  103. package/dist/tokens/build-email-tokens.js.map +1 -1
  104. package/package.json +5 -3
@@ -62,8 +62,8 @@
62
62
 
63
63
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
64
64
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
65
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
66
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
65
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
66
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
67
67
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
68
68
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
69
69
  @media only screen and (max-width: 479px) {
@@ -73,7 +73,7 @@
73
73
  .clay-h4 > div { font-size: 24px !important; }
74
74
 
75
75
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
76
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
76
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
77
77
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
78
78
  Targets the outer td MJML generates with inline padding-left/padding-right. */
79
79
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -82,8 +82,8 @@
82
82
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
83
83
 
84
84
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
85
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
86
- Targets the inner <div> MJML wraps text content in. */
85
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
86
+ Targets the inner div MJML wraps text content in. */
87
87
  .email-mobile-center > div { text-align: center !important; }
88
88
 
89
89
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -94,7 +94,7 @@
94
94
  .email-mobile-center-img > table { margin: 0 auto !important; }
95
95
 
96
96
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
97
- Makes the button's inner <table> fill the column width and centers it.
97
+ Makes the button's inner table fill the column width and centers it.
98
98
  Matches emaillove .mj-b-full pattern. */
99
99
  .email-btn-full > table { width: 100% !important; }
100
100
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -122,10 +122,10 @@
122
122
  * email-card: flip a section or column's background to dark.
123
123
  *
124
124
  * Three selectors cover every compiled MJML structure:
125
- * 1. .email-card — the outer <div> (mj-section or mj-column)
126
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
125
+ * 1. .email-card — the outer div (mj-section or mj-column)
126
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
127
127
  * 3. .email-card > table > tbody > tr > td
128
- * — the content <td> inside mj-column (carries inline bg-color
128
+ * — the content td inside mj-column (carries inline bg-color
129
129
  * + border-radius when background-color is set on mj-column)
130
130
  *
131
131
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -62,8 +62,8 @@
62
62
 
63
63
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
64
64
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
65
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
66
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
65
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
66
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
67
67
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
68
68
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
69
69
  @media only screen and (max-width: 479px) {
@@ -73,7 +73,7 @@
73
73
  .clay-h4 > div { font-size: 24px !important; }
74
74
 
75
75
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
76
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
76
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
77
77
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
78
78
  Targets the outer td MJML generates with inline padding-left/padding-right. */
79
79
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -82,8 +82,8 @@
82
82
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
83
83
 
84
84
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
85
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
86
- Targets the inner <div> MJML wraps text content in. */
85
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
86
+ Targets the inner div MJML wraps text content in. */
87
87
  .email-mobile-center > div { text-align: center !important; }
88
88
 
89
89
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -94,7 +94,7 @@
94
94
  .email-mobile-center-img > table { margin: 0 auto !important; }
95
95
 
96
96
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
97
- Makes the button's inner <table> fill the column width and centers it.
97
+ Makes the button's inner table fill the column width and centers it.
98
98
  Matches emaillove .mj-b-full pattern. */
99
99
  .email-btn-full > table { width: 100% !important; }
100
100
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -122,10 +122,10 @@
122
122
  * email-card: flip a section or column's background to dark.
123
123
  *
124
124
  * Three selectors cover every compiled MJML structure:
125
- * 1. .email-card — the outer <div> (mj-section or mj-column)
126
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
125
+ * 1. .email-card — the outer div (mj-section or mj-column)
126
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
127
127
  * 3. .email-card > table > tbody > tr > td
128
- * — the content <td> inside mj-column (carries inline bg-color
128
+ * — the content td inside mj-column (carries inline bg-color
129
129
  * + border-radius when background-color is set on mj-column)
130
130
  *
131
131
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -72,8 +72,8 @@
72
72
 
73
73
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
74
74
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
75
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
76
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
75
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
76
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
77
77
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
78
78
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
79
79
  @media only screen and (max-width: 479px) {
@@ -83,7 +83,7 @@
83
83
  .clay-h4 > div { font-size: 24px !important; }
84
84
 
85
85
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
86
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
86
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
87
87
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
88
88
  Targets the outer td MJML generates with inline padding-left/padding-right. */
89
89
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -92,8 +92,8 @@
92
92
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
93
93
 
94
94
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
95
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
96
- Targets the inner <div> MJML wraps text content in. */
95
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
96
+ Targets the inner div MJML wraps text content in. */
97
97
  .email-mobile-center > div { text-align: center !important; }
98
98
 
99
99
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -104,7 +104,7 @@
104
104
  .email-mobile-center-img > table { margin: 0 auto !important; }
105
105
 
106
106
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
107
- Makes the button's inner <table> fill the column width and centers it.
107
+ Makes the button's inner table fill the column width and centers it.
108
108
  Matches emaillove .mj-b-full pattern. */
109
109
  .email-btn-full > table { width: 100% !important; }
110
110
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -132,10 +132,10 @@
132
132
  * email-card: flip a section or column's background to dark.
133
133
  *
134
134
  * Three selectors cover every compiled MJML structure:
135
- * 1. .email-card — the outer <div> (mj-section or mj-column)
136
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
135
+ * 1. .email-card — the outer div (mj-section or mj-column)
136
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
137
137
  * 3. .email-card > table > tbody > tr > td
138
- * — the content <td> inside mj-column (carries inline bg-color
138
+ * — the content td inside mj-column (carries inline bg-color
139
139
  * + border-radius when background-color is set on mj-column)
140
140
  *
141
141
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -70,8 +70,8 @@
70
70
 
71
71
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
72
72
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
73
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
74
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
73
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
74
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
75
75
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
76
76
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
77
77
  @media only screen and (max-width: 479px) {
@@ -81,7 +81,7 @@
81
81
  .clay-h4 > div { font-size: 24px !important; }
82
82
 
83
83
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
84
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
84
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
85
85
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
86
86
  Targets the outer td MJML generates with inline padding-left/padding-right. */
87
87
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -90,8 +90,8 @@
90
90
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
91
91
 
92
92
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
93
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
94
- Targets the inner <div> MJML wraps text content in. */
93
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
94
+ Targets the inner div MJML wraps text content in. */
95
95
  .email-mobile-center > div { text-align: center !important; }
96
96
 
97
97
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -102,7 +102,7 @@
102
102
  .email-mobile-center-img > table { margin: 0 auto !important; }
103
103
 
104
104
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
105
- Makes the button's inner <table> fill the column width and centers it.
105
+ Makes the button's inner table fill the column width and centers it.
106
106
  Matches emaillove .mj-b-full pattern. */
107
107
  .email-btn-full > table { width: 100% !important; }
108
108
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -130,10 +130,10 @@
130
130
  * email-card: flip a section or column's background to dark.
131
131
  *
132
132
  * Three selectors cover every compiled MJML structure:
133
- * 1. .email-card — the outer <div> (mj-section or mj-column)
134
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
133
+ * 1. .email-card — the outer div (mj-section or mj-column)
134
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
135
135
  * 3. .email-card > table > tbody > tr > td
136
- * — the content <td> inside mj-column (carries inline bg-color
136
+ * — the content td inside mj-column (carries inline bg-color
137
137
  * + border-radius when background-color is set on mj-column)
138
138
  *
139
139
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -70,8 +70,8 @@
70
70
 
71
71
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
72
72
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
73
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
74
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
73
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
74
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
75
75
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
76
76
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
77
77
  @media only screen and (max-width: 479px) {
@@ -81,7 +81,7 @@
81
81
  .clay-h4 > div { font-size: 24px !important; }
82
82
 
83
83
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
84
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
84
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
85
85
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
86
86
  Targets the outer td MJML generates with inline padding-left/padding-right. */
87
87
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -90,8 +90,8 @@
90
90
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
91
91
 
92
92
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
93
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
94
- Targets the inner <div> MJML wraps text content in. */
93
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
94
+ Targets the inner div MJML wraps text content in. */
95
95
  .email-mobile-center > div { text-align: center !important; }
96
96
 
97
97
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -102,7 +102,7 @@
102
102
  .email-mobile-center-img > table { margin: 0 auto !important; }
103
103
 
104
104
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
105
- Makes the button's inner <table> fill the column width and centers it.
105
+ Makes the button's inner table fill the column width and centers it.
106
106
  Matches emaillove .mj-b-full pattern. */
107
107
  .email-btn-full > table { width: 100% !important; }
108
108
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -130,10 +130,10 @@
130
130
  * email-card: flip a section or column's background to dark.
131
131
  *
132
132
  * Three selectors cover every compiled MJML structure:
133
- * 1. .email-card — the outer <div> (mj-section or mj-column)
134
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
133
+ * 1. .email-card — the outer div (mj-section or mj-column)
134
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
135
135
  * 3. .email-card > table > tbody > tr > td
136
- * — the content <td> inside mj-column (carries inline bg-color
136
+ * — the content td inside mj-column (carries inline bg-color
137
137
  * + border-radius when background-color is set on mj-column)
138
138
  *
139
139
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -279,7 +279,7 @@
279
279
 
280
280
  <tr>
281
281
  <td
282
- align="left" style="font-size:0px;padding:24px 0 0 0;word-break:break-word;"
282
+ align="left" class="email-btn-invert-dark" style="font-size:0px;padding:24px 0 0 0;word-break:break-word;"
283
283
  >
284
284
 
285
285
  <table
@@ -76,8 +76,8 @@
76
76
 
77
77
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
78
78
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
79
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
80
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
79
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
80
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
81
81
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
82
82
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
83
83
  @media only screen and (max-width: 479px) {
@@ -87,7 +87,7 @@
87
87
  .clay-h4 > div { font-size: 24px !important; }
88
88
 
89
89
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
90
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
90
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
91
91
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
92
92
  Targets the outer td MJML generates with inline padding-left/padding-right. */
93
93
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -96,8 +96,8 @@
96
96
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
97
97
 
98
98
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
99
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
100
- Targets the inner <div> MJML wraps text content in. */
99
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
100
+ Targets the inner div MJML wraps text content in. */
101
101
  .email-mobile-center > div { text-align: center !important; }
102
102
 
103
103
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -108,7 +108,7 @@
108
108
  .email-mobile-center-img > table { margin: 0 auto !important; }
109
109
 
110
110
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
111
- Makes the button's inner <table> fill the column width and centers it.
111
+ Makes the button's inner table fill the column width and centers it.
112
112
  Matches emaillove .mj-b-full pattern. */
113
113
  .email-btn-full > table { width: 100% !important; }
114
114
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -136,10 +136,10 @@
136
136
  * email-card: flip a section or column's background to dark.
137
137
  *
138
138
  * Three selectors cover every compiled MJML structure:
139
- * 1. .email-card — the outer <div> (mj-section or mj-column)
140
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
139
+ * 1. .email-card — the outer div (mj-section or mj-column)
140
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
141
141
  * 3. .email-card > table > tbody > tr > td
142
- * — the content <td> inside mj-column (carries inline bg-color
142
+ * — the content td inside mj-column (carries inline bg-color
143
143
  * + border-radius when background-color is set on mj-column)
144
144
  *
145
145
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -345,7 +345,7 @@
345
345
  >
346
346
 
347
347
  <div
348
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;font-weight:400;line-height:1.5;text-align:left;color:#7c7b7b;"
348
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;font-weight:400;line-height:1.5;text-align:left;color:#45454a;"
349
349
  ><a href="#" style="display:inline-block;background-color:#D9D7FF;color:#000000;font-size:10px;font-weight:400;line-height:1.4;padding:3px 10px;border-radius:5px;text-decoration:none;">5-min lesson</a></div>
350
350
 
351
351
  </td>
@@ -545,7 +545,7 @@
545
545
  >
546
546
 
547
547
  <div
548
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;font-weight:400;line-height:1.5;text-align:left;color:#7c7b7b;"
548
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;font-weight:400;line-height:1.5;text-align:left;color:#45454a;"
549
549
  ><a href="#" style="display:inline-block;background-color:#D9D7FF;color:#000000;font-size:10px;font-weight:400;line-height:1.4;padding:3px 10px;border-radius:5px;text-decoration:none;">Live webinar</a></div>
550
550
 
551
551
  </td>
@@ -74,8 +74,8 @@
74
74
 
75
75
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
76
76
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
77
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
78
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
77
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
78
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
79
79
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
80
80
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
81
81
  @media only screen and (max-width: 479px) {
@@ -85,7 +85,7 @@
85
85
  .clay-h4 > div { font-size: 24px !important; }
86
86
 
87
87
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
88
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
88
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
89
89
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
90
90
  Targets the outer td MJML generates with inline padding-left/padding-right. */
91
91
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -94,8 +94,8 @@
94
94
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
95
95
 
96
96
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
97
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
98
- Targets the inner <div> MJML wraps text content in. */
97
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
98
+ Targets the inner div MJML wraps text content in. */
99
99
  .email-mobile-center > div { text-align: center !important; }
100
100
 
101
101
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -106,7 +106,7 @@
106
106
  .email-mobile-center-img > table { margin: 0 auto !important; }
107
107
 
108
108
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
109
- Makes the button's inner <table> fill the column width and centers it.
109
+ Makes the button's inner table fill the column width and centers it.
110
110
  Matches emaillove .mj-b-full pattern. */
111
111
  .email-btn-full > table { width: 100% !important; }
112
112
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -134,10 +134,10 @@
134
134
  * email-card: flip a section or column's background to dark.
135
135
  *
136
136
  * Three selectors cover every compiled MJML structure:
137
- * 1. .email-card — the outer <div> (mj-section or mj-column)
138
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
137
+ * 1. .email-card — the outer div (mj-section or mj-column)
138
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
139
139
  * 3. .email-card > table > tbody > tr > td
140
- * — the content <td> inside mj-column (carries inline bg-color
140
+ * — the content td inside mj-column (carries inline bg-color
141
141
  * + border-radius when background-color is set on mj-column)
142
142
  *
143
143
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -181,7 +181,7 @@
181
181
  Source: emaillove "Lists" export / Figma "Lists" node 1:684.
182
182
  Each row: mj-group (100%) → icon col (6.785714% = 38px) + text col (93.214286% = 522px).
183
183
  3 list items; first at 0 top padding, items 2-3 at 24px top padding.
184
- Text uses inline iris (#6161ff) span for the action label + black span for body.
184
+ Text uses inline iris (#6161ff) span for the action label + text-role (#252526) span for body.
185
185
  mj-group keeps icon + text inline at ALL viewport sizes.
186
186
  Mobile: H-padding → 24px (email-mobile-px-24 on wrapper). -->
187
187
 
@@ -295,7 +295,7 @@
295
295
  >
296
296
 
297
297
  <div
298
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
298
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
299
299
  ><span style="color:#6161ff !important;">Set up an automation: </span><span>to notify your team or update a status when a payment is marked &#34;Paid.&#34;</span></div>
300
300
 
301
301
  </td>
@@ -419,7 +419,7 @@
419
419
  >
420
420
 
421
421
  <div
422
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
422
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
423
423
  ><span style="color:#6161ff !important;">Sync data across boards:</span><span> to keep billing status updated in a different board or project automatically.</span></div>
424
424
 
425
425
  </td>
@@ -543,7 +543,7 @@
543
543
  >
544
544
 
545
545
  <div
546
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
546
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
547
547
  ><span>Want to go even further? Connect tools like Stripe or QuickBooks via our </span><span style="color:#6161ff !important;">integrations,</span><span> </span><span style="color:#6161ff !important;">API or Zapier.</span></div>
548
548
 
549
549
  </td>
@@ -74,8 +74,8 @@
74
74
 
75
75
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
76
76
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
77
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
78
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
77
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
78
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
79
79
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
80
80
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
81
81
  @media only screen and (max-width: 479px) {
@@ -85,7 +85,7 @@
85
85
  .clay-h4 > div { font-size: 24px !important; }
86
86
 
87
87
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
88
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
88
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
89
89
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
90
90
  Targets the outer td MJML generates with inline padding-left/padding-right. */
91
91
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -94,8 +94,8 @@
94
94
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
95
95
 
96
96
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
97
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
98
- Targets the inner <div> MJML wraps text content in. */
97
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
98
+ Targets the inner div MJML wraps text content in. */
99
99
  .email-mobile-center > div { text-align: center !important; }
100
100
 
101
101
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -106,7 +106,7 @@
106
106
  .email-mobile-center-img > table { margin: 0 auto !important; }
107
107
 
108
108
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
109
- Makes the button's inner <table> fill the column width and centers it.
109
+ Makes the button's inner table fill the column width and centers it.
110
110
  Matches emaillove .mj-b-full pattern. */
111
111
  .email-btn-full > table { width: 100% !important; }
112
112
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -134,10 +134,10 @@
134
134
  * email-card: flip a section or column's background to dark.
135
135
  *
136
136
  * Three selectors cover every compiled MJML structure:
137
- * 1. .email-card — the outer <div> (mj-section or mj-column)
138
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
137
+ * 1. .email-card — the outer div (mj-section or mj-column)
138
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
139
139
  * 3. .email-card > table > tbody > tr > td
140
- * — the content <td> inside mj-column (carries inline bg-color
140
+ * — the content td inside mj-column (carries inline bg-color
141
141
  * + border-radius when background-color is set on mj-column)
142
142
  *
143
143
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -74,8 +74,8 @@
74
74
 
75
75
  /* Mobile heading step-down — one-notch scale at the DS phone-only breakpoint
76
76
  @media(max-width:479px) (h1 56→48, h2 48→40, h3 40→32, h4 32→24). Keyed off the clay-h*
77
- css-class on the mj-text <td>; targets the inner <div> where MJML places font-size. Desktop
78
- size is the inline fallback if <style> is dropped. Per production emails, only the primary/
77
+ css-class on the mj-text td; targets the inner div where MJML places font-size. Desktop
78
+ size is the inline fallback if style is dropped. Per production emails, only the primary/
79
79
  hero heading opts in — add css-class="clay-hN" (alongside mj-class) to the hero heading's
80
80
  mj-text; secondary content headings keep mj-class alone and stay at desktop size. */
81
81
  @media only screen and (max-width: 479px) {
@@ -85,7 +85,7 @@
85
85
  .clay-h4 > div { font-size: 24px !important; }
86
86
 
87
87
  /* Mobile H-padding utilities — apply as css-class on mj-wrapper or mj-section to reduce
88
- the 40px horizontal padding to the source breakpoint value when columns stack (< 480px).
88
+ the 40px horizontal padding to the source breakpoint value when columns stack (below 480px).
89
89
  Source: emaillove export mobile CSS (.b98-68 → 24px, .d9b-0c → 16px, .fb5-e8 → 24px).
90
90
  Targets the outer td MJML generates with inline padding-left/padding-right. */
91
91
  .email-mobile-px-24 > table > tbody > tr > td { padding-right: 24px !important; padding-left: 24px !important; }
@@ -94,8 +94,8 @@
94
94
  .email-mobile-pt-0 > table > tbody > tr > td { padding-top: 0 !important; }
95
95
 
96
96
  /* Mobile text centering — apply as css-class on mj-text elements whose content should be
97
- center-aligned on mobile (< 480px). Matches the source emaillove .s0>div{text-align:center}.
98
- Targets the inner <div> MJML wraps text content in. */
97
+ center-aligned on mobile (below 480px). Matches the source emaillove .s0>div{text-align:center}.
98
+ Targets the inner div MJML wraps text content in. */
99
99
  .email-mobile-center > div { text-align: center !important; }
100
100
 
101
101
  /* Mobile image centering — apply css-class="email-mobile-center-img" on mj-image.
@@ -106,7 +106,7 @@
106
106
  .email-mobile-center-img > table { margin: 0 auto !important; }
107
107
 
108
108
  /* Full-width button on mobile — apply css-class="email-btn-full" to mj-button.
109
- Makes the button's inner <table> fill the column width and centers it.
109
+ Makes the button's inner table fill the column width and centers it.
110
110
  Matches emaillove .mj-b-full pattern. */
111
111
  .email-btn-full > table { width: 100% !important; }
112
112
  .email-btn-full > table > tbody > tr > td { text-align: center !important; }
@@ -134,10 +134,10 @@
134
134
  * email-card: flip a section or column's background to dark.
135
135
  *
136
136
  * Three selectors cover every compiled MJML structure:
137
- * 1. .email-card — the outer <div> (mj-section or mj-column)
138
- * 2. .email-card > table — the direct child <table> (mj-section has inline bg here)
137
+ * 1. .email-card — the outer div (mj-section or mj-column)
138
+ * 2. .email-card > table — the direct child table (mj-section has inline bg here)
139
139
  * 3. .email-card > table > tbody > tr > td
140
- * — the content <td> inside mj-column (carries inline bg-color
140
+ * — the content td inside mj-column (carries inline bg-color
141
141
  * + border-radius when background-color is set on mj-column)
142
142
  *
143
143
  * Apply css-class="email-card" to any mj-section or mj-column that should
@@ -288,7 +288,7 @@
288
288
  >
289
289
 
290
290
  <div
291
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
291
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
292
292
  ><span style="font-weight:600;">Stay on top of every task</span><br /><span>Assign owners, set due dates, and track status — all in one place, so nothing slips through.</span></div>
293
293
 
294
294
  </td>
@@ -410,7 +410,7 @@
410
410
  >
411
411
 
412
412
  <div
413
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
413
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
414
414
  ><span style="font-weight:600;">Collaborate across teams</span><br /><span>Share boards with anyone, invite guests, and keep every stakeholder in the loop without extra tools.</span></div>
415
415
 
416
416
  </td>
@@ -532,7 +532,7 @@
532
532
  >
533
533
 
534
534
  <div
535
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
535
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
536
536
  ><span style="font-weight:600;">Automate the repetitive stuff</span><br /><span>Build no-code workflows that move items, send alerts, and update fields the moment conditions are met.</span></div>
537
537
 
538
538
  </td>
@@ -654,7 +654,7 @@
654
654
  >
655
655
 
656
656
  <div
657
- style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#000000;"
657
+ style="font-family:Poppins, 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:15px;font-weight:400;line-height:1.4;text-align:left;color:#252526;"
658
658
  ><span style="font-weight:600;">Get full visibility in real time</span><br /><span>Dashboards and live reports surface blockers and progress instantly, so you can act before things stall.</span></div>
659
659
 
660
660
  </td>