PluginProbe
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor / 2.0.8
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor v2.0.8
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 / problem-solution / style.css

style.css in Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor 2.0.8, at blocks/problem-solution/style.css

297 lines 9.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ========================================
2 Problem / Solution Block Styles
3 Prefix: bkbg-psol-
4 ======================================== */
5
6 .bkbg-psol-wrap {
7 --bkbg-psol-gap: 24px;
8 --bkbg-psol-radius: 20px;
9 --bkbg-psol-icon-size: 40px;
10 --bkbg-psol-pv: 40px;
11 --bkbg-psol-ph: 40px;
12 --bkbg-psol-spacing: 12px;
13 --bkbg-psol-prob-bg: #fff1f2;
14 --bkbg-psol-prob-color: #9f1239;
15 --bkbg-psol-prob-icbg: #fecdd3;
16 --bkbg-psol-sol-bg: #f0fdf4;
17 --bkbg-psol-sol-color: #14532d;
18 --bkbg-psol-sol-icbg: #bbf7d0;
19 --bkbg-psol-div-bg: #ffffff;
20 --bkbg-psol-div-text: #334155;
21
22 display: flex;
23 align-items: stretch;
24 gap: var(--bkbg-psol-gap);
25 box-sizing: border-box;
26 position: relative;
27 }
28
29 /* ── Column ── */
30 .bkbg-psol-col {
31 flex: 1 1 0;
32 border-radius: var(--bkbg-psol-radius);
33 padding: var(--bkbg-psol-pv) var(--bkbg-psol-ph);
34 box-sizing: border-box;
35 display: flex;
36 flex-direction: column;
37 gap: 24px;
38 }
39
40 .bkbg-psol-col--problem {
41 background: var(--bkbg-psol-prob-bg);
42 color: var(--bkbg-psol-prob-color);
43 }
44
45 .bkbg-psol-col--solution {
46 background: var(--bkbg-psol-sol-bg);
47 color: var(--bkbg-psol-sol-color);
48 }
49
50 /* ── Column header ── */
51 .bkbg-psol-col-header {
52 display: flex;
53 align-items: flex-start;
54 gap: 16px;
55 }
56
57 .bkbg-psol-col-icon {
58 font-size: var(--bkbg-psol-icon-size);
59 line-height: 1;
60 flex-shrink: 0;
61 width: calc(var(--bkbg-psol-icon-size) * 1.6);
62 height: calc(var(--bkbg-psol-icon-size) * 1.6);
63 display: flex;
64 align-items: center;
65 justify-content: center;
66 border-radius: 50%;
67 }
68 .bkbg-psol-col-icon svg { width: 1em; height: 1em; fill: currentColor; }
69 .bkbg-psol-col-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
70 .bkbg-psol-col-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
71
72 .bkbg-psol-col--problem .bkbg-psol-col-icon {
73 background: var(--bkbg-psol-prob-icbg);
74 }
75
76 .bkbg-psol-col--solution .bkbg-psol-col-icon {
77 background: var(--bkbg-psol-sol-icbg);
78 }
79
80 .bkbg-psol-col-meta {
81 display: flex;
82 flex-direction: column;
83 gap: 4px;
84 flex: 1;
85 }
86
87 .bkbg-psol-label {
88 display: inline-block;
89 opacity: 0.75;
90 font-family: var(--bkbg-psol-lb-font-family, inherit);
91 font-size: var(--bkbg-psol-lb-font-size-d, 11px);
92 font-weight: var(--bkbg-psol-lb-font-weight, 700);
93 font-style: var(--bkbg-psol-lb-font-style, normal);
94 text-decoration: var(--bkbg-psol-lb-text-decoration, none);
95 text-transform: var(--bkbg-psol-lb-text-transform, uppercase);
96 line-height: var(--bkbg-psol-lb-line-height-d, normal);
97 letter-spacing: var(--bkbg-psol-lb-letter-spacing-d, 0.10em);
98 word-spacing: var(--bkbg-psol-lb-word-spacing-d, normal);
99 }
100
101 .bkbg-psol-title {
102 margin: 0;
103 color: inherit;
104 font-family: var(--bkbg-psol-tt-font-family, inherit);
105 font-style: var(--bkbg-psol-tt-font-style, normal);
106 text-decoration: var(--bkbg-psol-tt-text-decoration, none);
107 text-transform: var(--bkbg-psol-tt-text-transform, none);
108 }
109
110 .bkbg-psol-col-meta .bkbg-psol-title,
111 .bkbg-psol-col-meta h3.bkbg-psol-title {
112 font-size: var(--bkbg-psol-tt-font-size-d, 22px);
113 font-weight: var(--bkbg-psol-tt-font-weight, 700);
114 line-height: var(--bkbg-psol-tt-line-height-d, 1.25);
115 letter-spacing: var(--bkbg-psol-tt-letter-spacing-d, normal);
116 word-spacing: var(--bkbg-psol-tt-word-spacing-d, normal);
117 }
118
119 /* ── List ── */
120 .bkbg-psol-list {
121 list-style: none;
122 margin: 0;
123 padding: 0;
124 display: flex;
125 flex-direction: column;
126 gap: var(--bkbg-psol-spacing);
127 }
128
129 .bkbg-psol-item {
130 display: flex;
131 align-items: flex-start;
132 gap: 10px;
133 font-family: var(--bkbg-psol-it-font-family, inherit);
134 font-size: var(--bkbg-psol-it-font-size-d, 15px);
135 font-weight: var(--bkbg-psol-it-font-weight, 400);
136 font-style: var(--bkbg-psol-it-font-style, normal);
137 text-decoration: var(--bkbg-psol-it-text-decoration, none);
138 text-transform: var(--bkbg-psol-it-text-transform, none);
139 line-height: var(--bkbg-psol-it-line-height-d, 1.5);
140 letter-spacing: var(--bkbg-psol-it-letter-spacing-d, normal);
141 word-spacing: var(--bkbg-psol-it-word-spacing-d, normal);
142 }
143
144 .bkbg-psol-item-icon {
145 flex-shrink: 0;
146 font-weight: 700;
147 font-size: 0.9em;
148 opacity: 0.8;
149 margin-top: 2px;
150 }
151 .bkbg-psol-item-icon svg { width: 1em; height: 1em; fill: currentColor; }
152 .bkbg-psol-item-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
153 .bkbg-psol-item-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
154
155 .bkbg-psol-item-text {
156 flex: 1;
157 }
158
159 /* ── Divider badge ── */
160 .bkbg-psol-divider {
161 display: flex;
162 align-items: center;
163 justify-content: center;
164 flex-shrink: 0;
165 z-index: 2;
166 }
167
168 .bkbg-psol-divider-label {
169 background: var(--bkbg-psol-div-bg);
170 color: var(--bkbg-psol-div-text);
171 border-radius: 50%;
172 width: 44px;
173 height: 44px;
174 display: flex;
175 align-items: center;
176 justify-content: center;
177 font-weight: 800;
178 font-size: 12px;
179 box-shadow: 0 2px 12px rgba(0,0,0,0.12);
180 letter-spacing: 0.03em;
181 text-transform: uppercase;
182 flex-shrink: 0;
183 }
184
185 /* ── Negative margin to overlap columns ── */
186 .bkbg-psol-wrap:has(.bkbg-psol-divider) .bkbg-psol-col--problem {
187 margin-right: calc(var(--bkbg-psol-gap) / -2 - 22px);
188 padding-right: calc(var(--bkbg-psol-ph) + 22px);
189 }
190
191 .bkbg-psol-wrap:has(.bkbg-psol-divider) .bkbg-psol-col--solution {
192 margin-left: calc(var(--bkbg-psol-gap) / -2 - 22px);
193 padding-left: calc(var(--bkbg-psol-ph) + 22px);
194 }
195
196 /* ── Style: Cards ── */
197 .bkbg-psol-style--cards .bkbg-psol-col {
198 background: #ffffff;
199 box-shadow: 0 2px 16px rgba(0,0,0,0.08);
200 border-top: 4px solid;
201 }
202
203 .bkbg-psol-style--cards .bkbg-psol-col--problem { border-top-color: #f43f5e; }
204 .bkbg-psol-style--cards .bkbg-psol-col--solution { border-top-color: #22c55e; }
205
206 .bkbg-psol-style--cards .bkbg-psol-title,
207 .bkbg-psol-style--cards .bkbg-psol-item { color: #1e293b; }
208
209 .bkbg-psol-style--cards .bkbg-psol-label { opacity: 1; }
210 .bkbg-psol-style--cards .bkbg-psol-col--problem .bkbg-psol-label { color: #f43f5e; }
211 .bkbg-psol-style--cards .bkbg-psol-col--solution .bkbg-psol-label { color: #22c55e; }
212
213 /* ── Style: Bordered ── */
214 .bkbg-psol-style--bordered .bkbg-psol-col {
215 background: transparent;
216 border: 2px solid;
217 }
218
219 .bkbg-psol-style--bordered .bkbg-psol-col--problem { border-color: var(--bkbg-psol-prob-color); }
220 .bkbg-psol-style--bordered .bkbg-psol-col--solution { border-color: var(--bkbg-psol-sol-color); }
221
222 /* ── Style: Minimal ── */
223 .bkbg-psol-style--minimal .bkbg-psol-col--problem { background: rgba(244, 63, 94, 0.06); }
224 .bkbg-psol-style--minimal .bkbg-psol-col--solution { background: rgba(34, 197, 94, 0.06); }
225
226 /* ── Responsive: Typography ── */
227 @media (max-width: 1024px) {
228 .bkbg-psol-col-meta .bkbg-psol-title,
229 .bkbg-psol-col-meta h3.bkbg-psol-title {
230 font-size: var(--bkbg-psol-tt-font-size-t, 22px);
231 line-height: var(--bkbg-psol-tt-line-height-t, 1.25);
232 letter-spacing: var(--bkbg-psol-tt-letter-spacing-t, normal);
233 word-spacing: var(--bkbg-psol-tt-word-spacing-t, normal);
234 }
235 .bkbg-psol-item {
236 font-size: var(--bkbg-psol-it-font-size-t, 15px);
237 line-height: var(--bkbg-psol-it-line-height-t, 1.5);
238 letter-spacing: var(--bkbg-psol-it-letter-spacing-t, normal);
239 word-spacing: var(--bkbg-psol-it-word-spacing-t, normal);
240 }
241 .bkbg-psol-label {
242 font-size: var(--bkbg-psol-lb-font-size-t, 11px);
243 line-height: var(--bkbg-psol-lb-line-height-t, normal);
244 letter-spacing: var(--bkbg-psol-lb-letter-spacing-t, 0.10em);
245 word-spacing: var(--bkbg-psol-lb-word-spacing-t, normal);
246 }
247 }
248
249 @media (max-width: 767px) {
250 .bkbg-psol-col-meta .bkbg-psol-title,
251 .bkbg-psol-col-meta h3.bkbg-psol-title {
252 font-size: var(--bkbg-psol-tt-font-size-m, 22px);
253 line-height: var(--bkbg-psol-tt-line-height-m, 1.25);
254 letter-spacing: var(--bkbg-psol-tt-letter-spacing-m, normal);
255 word-spacing: var(--bkbg-psol-tt-word-spacing-m, normal);
256 }
257 .bkbg-psol-item {
258 font-size: var(--bkbg-psol-it-font-size-m, 15px);
259 line-height: var(--bkbg-psol-it-line-height-m, 1.5);
260 letter-spacing: var(--bkbg-psol-it-letter-spacing-m, normal);
261 word-spacing: var(--bkbg-psol-it-word-spacing-m, normal);
262 }
263 .bkbg-psol-label {
264 font-size: var(--bkbg-psol-lb-font-size-m, 11px);
265 line-height: var(--bkbg-psol-lb-line-height-m, normal);
266 letter-spacing: var(--bkbg-psol-lb-letter-spacing-m, 0.10em);
267 word-spacing: var(--bkbg-psol-lb-word-spacing-m, normal);
268 }
269 }
270
271 /* ── Responsive ── */
272 @media (max-width: 768px) {
273 .bkbg-psol-wrap {
274 flex-direction: column;
275 }
276
277 .bkbg-psol-divider {
278 margin: -16px auto;
279 order: 1;
280 transform: none;
281 }
282
283 .bkbg-psol-divider--mobile-rotate {
284 transform: rotate(90deg);
285 }
286
287 .bkbg-psol-col--problem { order: 0; }
288 .bkbg-psol-col--solution { order: 2; }
289
290 /* Remove overlap adjustments on mobile */
291 .bkbg-psol-wrap:has(.bkbg-psol-divider) .bkbg-psol-col--problem,
292 .bkbg-psol-wrap:has(.bkbg-psol-divider) .bkbg-psol-col--solution {
293 margin: 0;
294 padding: var(--bkbg-psol-pv) var(--bkbg-psol-ph);
295 }
296 }
297