PluginProbe
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor / 2.0.7
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor v2.0.7
2.0.13 2.0.12 2.0.11 2.0.10 2.0.9 trunk 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8
blockenberg / blocks / newsletter / style.css

style.css in Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor 2.0.7, at blocks/newsletter/style.css

225 lines 9.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ─────────────────────────────────────────────────────────────────────────────
2 Newsletter Signup — bkbg-nl-
3 ───────────────────────────────────────────────────────────────────────────── */
4
5 .bkbg-nl-wrapper {
6 box-sizing: border-box;
7 }
8
9 .bkbg-nl-inner {
10 background: var(--bkbg-nl-bg, #f0f9ff);
11 border-radius: var(--bkbg-nl-radius, 12px);
12 padding: var(--bkbg-nl-pad, 40px);
13 box-sizing: border-box;
14 display: flex;
15 flex-direction: column;
16 gap: 24px;
17 }
18
19 /* ── Card style variants ──────────────────────────────────────────────────── */
20 .bkbg-nl-style-card .bkbg-nl-inner {
21 box-shadow: 0 4px 24px rgba(0,0,0,0.08);
22 }
23
24 .bkbg-nl-style-box .bkbg-nl-inner {
25 background: #ffffff;
26 box-shadow: 0 1px 6px rgba(0,0,0,0.06);
27 border: 1px solid #e2e8f0;
28 }
29
30 .bkbg-nl-style-minimal .bkbg-nl-inner {
31 background: transparent;
32 padding-left: 0;
33 padding-right: 0;
34 box-shadow: none;
35 }
36
37 .bkbg-nl-style-inline .bkbg-nl-inner {
38 border-radius: 0;
39 flex-direction: row;
40 align-items: center;
41 gap: 32px;
42 padding: 24px 32px;
43 }
44
45 /* ── Copy ─────────────────────────────────────────────────────────────────── */
46 .bkbg-nl-icon {
47 font-size: 40px;
48 line-height: 1;
49 margin-bottom: 10px;
50 }
51
52 .bkbg-nl-heading {
53 font-family: var(--bkbg-nl-ht-font-family, inherit);
54 font-size: var(--bkbg-nl-ht-font-size-d, var(--bkbg-nl-heading-sz, 26px));
55 font-weight: var(--bkbg-nl-ht-font-weight, var(--bkbg-nl-heading-fw, 800));
56 font-style: var(--bkbg-nl-ht-font-style, normal);
57 text-decoration: var(--bkbg-nl-ht-text-decoration, none);
58 text-transform: var(--bkbg-nl-ht-text-transform, none);
59 line-height: var(--bkbg-nl-ht-line-height-d, var(--bkbg-nl-heading-lh, 1.2));
60 letter-spacing: var(--bkbg-nl-ht-letter-spacing-d, normal);
61 word-spacing: var(--bkbg-nl-ht-word-spacing-d, normal);
62 color: var(--bkbg-nl-heading-color, #0f172a);
63 margin: 0 0 8px;
64 }
65 .bkbg-nl-wrapper h2.bkbg-nl-heading,
66 .bkbg-nl-wrapper .bkbg-nl-heading {
67 font-family: var(--bkbg-nl-ht-font-family, inherit);
68 font-size: var(--bkbg-nl-ht-font-size-d, var(--bkbg-nl-heading-sz, 26px));
69 font-weight: var(--bkbg-nl-ht-font-weight, var(--bkbg-nl-heading-fw, 800));
70 font-style: var(--bkbg-nl-ht-font-style, normal);
71 text-decoration: var(--bkbg-nl-ht-text-decoration, none);
72 text-transform: var(--bkbg-nl-ht-text-transform, none);
73 line-height: var(--bkbg-nl-ht-line-height-d, var(--bkbg-nl-heading-lh, 1.2));
74 letter-spacing: var(--bkbg-nl-ht-letter-spacing-d, normal);
75 word-spacing: var(--bkbg-nl-ht-word-spacing-d, normal);
76 color: var(--bkbg-nl-heading-color, #0f172a);
77 margin: 0 0 8px;
78 }
79
80 .bkbg-nl-subtitle {
81 font-family: var(--bkbg-nl-st-font-family, inherit);
82 font-size: var(--bkbg-nl-st-font-size-d, var(--bkbg-nl-sub-sz, 15px));
83 font-weight: var(--bkbg-nl-st-font-weight, var(--bkbg-nl-sub-fw, 400));
84 font-style: var(--bkbg-nl-st-font-style, normal);
85 text-decoration: var(--bkbg-nl-st-text-decoration, none);
86 text-transform: var(--bkbg-nl-st-text-transform, none);
87 line-height: var(--bkbg-nl-st-line-height-d, var(--bkbg-nl-sub-lh, 1.6));
88 letter-spacing: var(--bkbg-nl-st-letter-spacing-d, normal);
89 word-spacing: var(--bkbg-nl-st-word-spacing-d, normal);
90 color: var(--bkbg-nl-sub-color, #475569);
91 margin: 0;
92 }
93
94 .bkbg-nl-copy {
95 flex: 1;
96 }
97
98 /* ── Form ─────────────────────────────────────────────────────────────────── */
99 .bkbg-nl-form {
100 display: flex;
101 flex-direction: column;
102 gap: 12px;
103 flex: 1;
104 }
105
106 /* Horizontal layout: form in row */
107 .bkbg-nl-layout-horizontal .bkbg-nl-form {
108 flex-direction: row;
109 align-items: center;
110 flex-wrap: wrap;
111 }
112
113 .bkbg-nl-layout-horizontal .bkbg-nl-field {
114 flex: 1;
115 min-width: 180px;
116 }
117
118 /* ── Field ────────────────────────────────────────────────────────────────── */
119 .bkbg-nl-field {
120 box-sizing: border-box;
121 width: 100%;
122 padding: 13px 16px;
123 font-size: 15px;
124 font-family: inherit;
125 color: #111827;
126 background: var(--bkbg-nl-field-bg, #ffffff);
127 border: 1.5px solid var(--bkbg-nl-field-border, #cbd5e1);
128 border-radius: var(--bkbg-nl-radius, 12px);
129 outline: none;
130 transition: border-color 0.2s, box-shadow 0.2s;
131 appearance: none;
132 -webkit-appearance: none;
133 }
134
135 .bkbg-nl-field:focus {
136 border-color: var(--bkbg-nl-btn-bg, #2563eb);
137 box-shadow: 0 0 0 3px color-mix(in srgb, var(--bkbg-nl-btn-bg, #2563eb) 18%, transparent);
138 }
139
140 /* ── Button ───────────────────────────────────────────────────────────────── */
141 .bkbg-nl-btn {
142 font-family: inherit;
143 font-size: 16px;
144 font-weight: 700;
145 padding: 13px 28px;
146 background: var(--bkbg-nl-btn-bg, #2563eb);
147 color: var(--bkbg-nl-btn-color, #ffffff);
148 border: none;
149 border-radius: var(--bkbg-nl-btn-radius, 8px);
150 cursor: pointer;
151 transition: opacity 0.2s, transform 0.15s;
152 white-space: nowrap;
153 flex-shrink: 0;
154 }
155
156 .bkbg-nl-btn:hover:not(:disabled) { opacity: 0.88; transform: translateY(-1px); }
157 .bkbg-nl-btn:disabled { opacity: 0.6; cursor: not-allowed; }
158
159 /* ── Status ───────────────────────────────────────────────────────────────── */
160 .bkbg-nl-status {
161 font-size: 14px;
162 border-radius: 6px;
163 display: none;
164 padding: 10px 14px;
165 }
166
167 .bkbg-nl-status.bkbg-nl-success {
168 display: block;
169 background: #f0fdf4;
170 color: #15803d;
171 border: 1px solid #bbf7d0;
172 }
173
174 .bkbg-nl-status.bkbg-nl-error {
175 display: block;
176 background: #fef2f2;
177 color: #dc2626;
178 border: 1px solid #fecaca;
179 }
180
181 /* ── Loading ──────────────────────────────────────────────────────────────── */
182 .bkbg-nl-btn.is-loading {
183 position: relative;
184 color: transparent !important;
185 }
186
187 .bkbg-nl-btn.is-loading::after {
188 content: '';
189 position: absolute;
190 width: 18px;
191 height: 18px;
192 top: 50%;
193 left: 50%;
194 transform: translate(-50%, -50%);
195 border: 2px solid rgba(255,255,255,0.6);
196 border-top-color: #fff;
197 border-radius: 50%;
198 animation: bkbg-nl-spin 0.7s linear infinite;
199 }
200
201 @keyframes bkbg-nl-spin {
202 from { transform: translate(-50%, -50%) rotate(0deg); }
203 to { transform: translate(-50%, -50%) rotate(360deg); }
204 }
205
206 /* ── Responsive ────────────────────────────────────────────────────────────── */@media (max-width: 1024px) {
207 .bkbg-nl-wrapper .bkbg-nl-heading { font-size: var(--bkbg-nl-ht-font-size-t, var(--bkbg-nl-ht-font-size-d, var(--bkbg-nl-heading-sz, 26px))); line-height: var(--bkbg-nl-ht-line-height-t, var(--bkbg-nl-ht-line-height-d, var(--bkbg-nl-heading-lh, 1.2))); letter-spacing: var(--bkbg-nl-ht-letter-spacing-t, var(--bkbg-nl-ht-letter-spacing-d, normal)); word-spacing: var(--bkbg-nl-ht-word-spacing-t, var(--bkbg-nl-ht-word-spacing-d, normal)); }
208 .bkbg-nl-subtitle { font-size: var(--bkbg-nl-st-font-size-t, var(--bkbg-nl-st-font-size-d, var(--bkbg-nl-sub-sz, 15px))); line-height: var(--bkbg-nl-st-line-height-t, var(--bkbg-nl-st-line-height-d, var(--bkbg-nl-sub-lh, 1.6))); letter-spacing: var(--bkbg-nl-st-letter-spacing-t, var(--bkbg-nl-st-letter-spacing-d, normal)); word-spacing: var(--bkbg-nl-st-word-spacing-t, var(--bkbg-nl-st-word-spacing-d, normal)); }
209 }
210 @media (max-width: 767px) {
211 .bkbg-nl-wrapper .bkbg-nl-heading { font-size: var(--bkbg-nl-ht-font-size-m, 22px); line-height: var(--bkbg-nl-ht-line-height-m, var(--bkbg-nl-ht-line-height-d, var(--bkbg-nl-heading-lh, 1.2))); letter-spacing: var(--bkbg-nl-ht-letter-spacing-m, var(--bkbg-nl-ht-letter-spacing-d, normal)); word-spacing: var(--bkbg-nl-ht-word-spacing-m, var(--bkbg-nl-ht-word-spacing-d, normal)); }
212 .bkbg-nl-subtitle { font-size: var(--bkbg-nl-st-font-size-m, 13px); line-height: var(--bkbg-nl-st-line-height-m, var(--bkbg-nl-st-line-height-d, var(--bkbg-nl-sub-lh, 1.6))); letter-spacing: var(--bkbg-nl-st-letter-spacing-m, var(--bkbg-nl-st-letter-spacing-d, normal)); word-spacing: var(--bkbg-nl-st-word-spacing-m, var(--bkbg-nl-st-word-spacing-d, normal)); }
213 }@media (max-width: 600px) {
214 .bkbg-nl-style-inline .bkbg-nl-inner {
215 flex-direction: column;
216 }
217 .bkbg-nl-layout-horizontal .bkbg-nl-form {
218 flex-direction: column;
219 }
220 .bkbg-nl-layout-horizontal .bkbg-nl-field {
221 width: 100%;
222 }
223 .bkbg-nl-btn { width: 100%; }
224 }
225