PluginProbe
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor / 2.0.13
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor v2.0.13
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 / stats-counter / style.css

style.css in Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor 2.0.13, at blocks/stats-counter/style.css

725 lines 18.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ========================================
2 Stats Counter Block - Main Styles
3 ======================================== */
4
5 .bkbg-sc-wrap {
6 --bkbg-sc-columns: 4;
7 --bkbg-sc-gap: 32px;
8 --bkbg-sc-icon-size: 48px;
9 --bkbg-sc-icon-bg-size: 80px;
10 --bkbg-sc-icon-radius: 50%;
11 --bkbg-sc-number-size: 48px;
12 --bkbg-sc-number-weight: 700;
13 --bkbg-sc-number-color: #1f2937;
14 --bkbg-sc-label-size: 16px;
15 --bkbg-sc-label-weight: 400;
16 --bkbg-sc-label-color: #6b7280;
17 --bkbg-sc-title-size: 32px;
18 --bkbg-sc-title-color: #1f2937;
19 --bkbg-sc-card-bg: #ffffff;
20 --bkbg-sc-card-border-color: #e5e7eb;
21 --bkbg-sc-card-border-width: 1px;
22 --bkbg-sc-card-radius: 12px;
23 --bkbg-sc-card-padding: 32px;
24 --bkbg-sc-divider-color: #e5e7eb;
25 --bkbg-sc-text-align: center;
26 --bkbg-sc-animation-duration: 2000ms;
27 border: 0;
28 outline: 0;
29 width: 100%;
30 }
31
32 /* Title */
33 .bkbg-sc-title {
34 font-family: var(--bksc-tt-font-family, inherit);
35 font-size: var(--bksc-tt-font-size-d, var(--bkbg-sc-title-size));
36 font-weight: var(--bksc-tt-font-weight, var(--bkbg-sc-title-wt, 700));
37 font-style: var(--bksc-tt-font-style, normal);
38 text-decoration: var(--bksc-tt-text-decoration, none);
39 text-transform: var(--bksc-tt-text-transform, none);
40 line-height: var(--bksc-tt-line-height-d, var(--bkbg-sc-title-lh, 1.2));
41 letter-spacing: var(--bksc-tt-letter-spacing-d, normal);
42 word-spacing: var(--bksc-tt-word-spacing-d, normal);
43 color: var(--bkbg-sc-title-color);
44 margin-bottom: 32px;
45 text-align: var(--bkbg-sc-text-align);
46 }
47
48 /* List container */
49 .bkbg-sc-list {
50 display: grid;
51 grid-template-columns: repeat(var(--bkbg-sc-columns), 1fr);
52 gap: var(--bkbg-sc-gap);
53 }
54
55 /* Inline layout */
56 .bkbg-sc-inline .bkbg-sc-list {
57 display: flex;
58 flex-wrap: wrap;
59 justify-content: center;
60 }
61
62 .bkbg-sc-inline .bkbg-sc-item {
63 flex: 0 0 auto;
64 }
65
66 /* Stacked layout */
67 .bkbg-sc-stacked .bkbg-sc-list {
68 display: flex;
69 flex-direction: column;
70 }
71
72 /* Individual item */
73 .bkbg-sc-item {
74 position: relative;
75 text-align: var(--bkbg-sc-text-align);
76 }
77
78 /* Item inner */
79 .bkbg-sc-item-inner {
80 display: flex;
81 flex-direction: column;
82 align-items: center;
83 gap: 16px;
84 }
85
86 .bkbg-sc-item-inner--left {
87 flex-direction: row;
88 text-align: left;
89 }
90
91 .bkbg-sc-item-inner--right {
92 flex-direction: row-reverse;
93 text-align: right;
94 }
95
96 .bkbg-sc-item-inner--top {
97 flex-direction: column;
98 }
99
100 /* Text align for horizontal layouts */
101 .bkbg-sc-icon-left .bkbg-sc-item {
102 text-align: left;
103 }
104
105 .bkbg-sc-icon-right .bkbg-sc-item {
106 text-align: right;
107 }
108
109 .bkbg-sc-icon-left .bkbg-sc-item-inner--left,
110 .bkbg-sc-icon-right .bkbg-sc-item-inner--right {
111 justify-content: flex-start;
112 }
113
114 /* Card style */
115 .bkbg-sc-item--card {
116 background: var(--bkbg-sc-card-bg);
117 border: var(--bkbg-sc-card-border-width) solid var(--bkbg-sc-card-border-color);
118 border-radius: var(--bkbg-sc-card-radius);
119 padding: var(--bkbg-sc-card-padding);
120 }
121
122 .bkbg-sc-item--shadow {
123 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
124 }
125
126 /* Icon */
127 .bkbg-sc-icon {
128 display: flex;
129 align-items: center;
130 justify-content: center;
131 flex-shrink: 0;
132 }
133
134 .bkbg-sc-icon .dashicons {
135 font-size: var(--bkbg-sc-icon-size);
136 width: var(--bkbg-sc-icon-size);
137 height: var(--bkbg-sc-icon-size);
138 line-height: 1;
139 }
140
141 .bkbg-sc-icon--filled {
142 width: var(--bkbg-sc-icon-bg-size);
143 height: var(--bkbg-sc-icon-bg-size);
144 border-radius: var(--bkbg-sc-icon-radius);
145 background: #3b82f6;
146 }
147
148 .bkbg-sc-icon--filled .dashicons {
149 color: #fff;
150 }
151
152 .bkbg-sc-icon--outlined {
153 width: var(--bkbg-sc-icon-bg-size);
154 height: var(--bkbg-sc-icon-bg-size);
155 border-radius: var(--bkbg-sc-icon-radius);
156 border: 2px solid #3b82f6;
157 background: transparent;
158 }
159
160 /* Content */
161 .bkbg-sc-content {
162 display: flex;
163 flex-direction: column;
164 gap: 4px;
165 min-width: 0;
166 flex: 1;
167 }
168
169 .bkbg-sc-item-inner--left .bkbg-sc-content,
170 .bkbg-sc-item-inner--right .bkbg-sc-content {
171 align-items: flex-start;
172 }
173
174 .bkbg-sc-item-inner--top .bkbg-sc-content {
175 align-items: center;
176 width: 100%;
177 }
178
179 /* Number */
180 .bkbg-sc-number {
181 font-family: var(--bksc-nm-font-family, inherit);
182 font-size: var(--bksc-nm-font-size-d, var(--bkbg-sc-number-size));
183 font-weight: var(--bksc-nm-font-weight, var(--bkbg-sc-number-weight));
184 font-style: var(--bksc-nm-font-style, normal);
185 text-decoration: var(--bksc-nm-text-decoration, none);
186 text-transform: var(--bksc-nm-text-transform, none);
187 line-height: var(--bksc-nm-line-height-d, var(--bkbg-sc-number-lh, 1.1));
188 letter-spacing: var(--bksc-nm-letter-spacing-d, normal);
189 word-spacing: var(--bksc-nm-word-spacing-d, normal);
190 color: var(--bkbg-sc-number-color);
191 font-variant-numeric: tabular-nums;
192 }
193
194 .bkbg-sc-prefix,
195 .bkbg-sc-suffix {
196 font-size: inherit;
197 font-weight: inherit;
198 color: inherit;
199 }
200
201 /* Label */
202 .bkbg-sc-label {
203 font-family: var(--bksc-lb-font-family, inherit);
204 font-size: var(--bksc-lb-font-size-d, var(--bkbg-sc-label-size));
205 font-weight: var(--bksc-lb-font-weight, var(--bkbg-sc-label-weight));
206 font-style: var(--bksc-lb-font-style, normal);
207 text-decoration: var(--bksc-lb-text-decoration, none);
208 text-transform: var(--bksc-lb-text-transform, none);
209 line-height: var(--bksc-lb-line-height-d, var(--bkbg-sc-label-lh, 1.3));
210 letter-spacing: var(--bksc-lb-letter-spacing-d, normal);
211 word-spacing: var(--bksc-lb-word-spacing-d, normal);
212 color: var(--bkbg-sc-label-color);
213 }
214
215 /* ---- Typography responsive — tablet ---- */
216 @media (max-width: 1024px) {
217 .bkbg-sc-title { font-size: var(--bksc-tt-font-size-t, var(--bksc-tt-font-size-d, var(--bkbg-sc-title-size))); line-height: var(--bksc-tt-line-height-t, var(--bksc-tt-line-height-d, var(--bkbg-sc-title-lh, 1.2))); letter-spacing: var(--bksc-tt-letter-spacing-t, var(--bksc-tt-letter-spacing-d, normal)); word-spacing: var(--bksc-tt-word-spacing-t, var(--bksc-tt-word-spacing-d, normal)); }
218 .bkbg-sc-number { font-size: var(--bksc-nm-font-size-t, var(--bksc-nm-font-size-d, var(--bkbg-sc-number-size))); line-height: var(--bksc-nm-line-height-t, var(--bksc-nm-line-height-d, var(--bkbg-sc-number-lh, 1.1))); letter-spacing: var(--bksc-nm-letter-spacing-t, var(--bksc-nm-letter-spacing-d, normal)); word-spacing: var(--bksc-nm-word-spacing-t, var(--bksc-nm-word-spacing-d, normal)); }
219 .bkbg-sc-label { font-size: var(--bksc-lb-font-size-t, var(--bksc-lb-font-size-d, var(--bkbg-sc-label-size))); line-height: var(--bksc-lb-line-height-t, var(--bksc-lb-line-height-d, var(--bkbg-sc-label-lh, 1.3))); letter-spacing: var(--bksc-lb-letter-spacing-t, var(--bksc-lb-letter-spacing-d, normal)); word-spacing: var(--bksc-lb-word-spacing-t, var(--bksc-lb-word-spacing-d, normal)); }
220 }
221 /* ---- Typography responsive — mobile ---- */
222 @media (max-width: 767px) {
223 .bkbg-sc-title { font-size: var(--bksc-tt-font-size-m, var(--bksc-tt-font-size-t, var(--bksc-tt-font-size-d, var(--bkbg-sc-title-size)))); line-height: var(--bksc-tt-line-height-m, var(--bksc-tt-line-height-t, var(--bksc-tt-line-height-d, var(--bkbg-sc-title-lh, 1.2)))); letter-spacing: var(--bksc-tt-letter-spacing-m, var(--bksc-tt-letter-spacing-t, var(--bksc-tt-letter-spacing-d, normal))); word-spacing: var(--bksc-tt-word-spacing-m, var(--bksc-tt-word-spacing-t, var(--bksc-tt-word-spacing-d, normal))); }
224 .bkbg-sc-number { font-size: var(--bksc-nm-font-size-m, var(--bksc-nm-font-size-t, var(--bksc-nm-font-size-d, var(--bkbg-sc-number-size)))); line-height: var(--bksc-nm-line-height-m, var(--bksc-nm-line-height-t, var(--bksc-nm-line-height-d, var(--bkbg-sc-number-lh, 1.1)))); letter-spacing: var(--bksc-nm-letter-spacing-m, var(--bksc-nm-letter-spacing-t, var(--bksc-nm-letter-spacing-d, normal))); word-spacing: var(--bksc-nm-word-spacing-m, var(--bksc-nm-word-spacing-t, var(--bksc-nm-word-spacing-d, normal))); }
225 .bkbg-sc-label { font-size: var(--bksc-lb-font-size-m, var(--bksc-lb-font-size-t, var(--bksc-lb-font-size-d, var(--bkbg-sc-label-size)))); line-height: var(--bksc-lb-line-height-m, var(--bksc-lb-line-height-t, var(--bksc-lb-line-height-d, var(--bkbg-sc-label-lh, 1.3)))); letter-spacing: var(--bksc-lb-letter-spacing-m, var(--bksc-lb-letter-spacing-t, var(--bksc-lb-letter-spacing-d, normal))); word-spacing: var(--bksc-lb-word-spacing-m, var(--bksc-lb-word-spacing-t, var(--bksc-lb-word-spacing-d, normal))); }
226 }
227
228 /* Dividers */
229 .bkbg-sc-divider .bkbg-sc-item:not(:last-child) {
230 border-right: 1px solid var(--bkbg-sc-divider-color);
231 padding-right: var(--bkbg-sc-gap);
232 }
233
234 .bkbg-sc-stacked.bkbg-sc-divider .bkbg-sc-item:not(:last-child) {
235 border-right: none;
236 border-bottom: 1px solid var(--bkbg-sc-divider-color);
237 padding-right: 0;
238 padding-bottom: var(--bkbg-sc-gap);
239 }
240
241 /* ========================================
242 Responsive Breakpoints
243 ======================================== */
244
245 @media (max-width: 1024px) {
246 .bkbg-sc-wrap {
247 --bkbg-sc-columns: 2;
248 }
249 }
250
251 @media (max-width: 600px) {
252 .bkbg-sc-wrap {
253 --bkbg-sc-columns: 1;
254 }
255
256 .bkbg-sc-divider .bkbg-sc-item:not(:last-child) {
257 border-right: none;
258 border-bottom: 1px solid var(--bkbg-sc-divider-color);
259 padding-right: 0;
260 padding-bottom: var(--bkbg-sc-gap);
261 }
262 }
263
264 /* ========================================
265 Editor-specific Styles
266 ======================================== */
267
268 .editor-styles-wrapper .bkbg-sc-wrap {
269 min-height: 60px;
270 }
271
272 /* Clickable/editable elements */
273 .bkbg-sc-clickable {
274 cursor: text;
275 border-radius: 4px;
276 transition: background-color 0.15s ease;
277 }
278
279 .bkbg-sc-clickable:hover {
280 background-color: rgba(59, 130, 246, 0.08);
281 }
282
283 .bkbg-sc-input-active {
284 background: transparent;
285 border: 1px dashed rgba(59, 130, 246, 0.5);
286 border-radius: 4px;
287 padding: 4px 8px;
288 font-family: inherit;
289 outline: none;
290 width: auto;
291 min-width: 60px;
292 }
293
294 .bkbg-sc-input-active:focus {
295 border-color: #3b82f6;
296 box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
297 }
298
299 input.bkbg-sc-title.bkbg-sc-input-active {
300 font-size: var(--bkbg-sc-title-size);
301 font-weight: 700;
302 color: var(--bkbg-sc-title-color);
303 text-align: var(--bkbg-sc-text-align);
304 width: 100%;
305 }
306
307 input.bkbg-sc-number.bkbg-sc-input-active {
308 font-size: var(--bkbg-sc-number-size);
309 font-weight: var(--bkbg-sc-number-weight);
310 color: var(--bkbg-sc-number-color);
311 text-align: center;
312 width: 100%;
313 max-width: 200px;
314 min-width: 80px;
315 }
316
317 input.bkbg-sc-label.bkbg-sc-input-active {
318 font-size: var(--bkbg-sc-label-size);
319 font-weight: var(--bkbg-sc-label-weight);
320 width: 100%;
321 max-width: 200px;
322 color: var(--bkbg-sc-label-color);
323 }
324
325 /* Item hover actions */
326 .bkbg-sc-item-actions-overlay {
327 position: absolute;
328 top: 0;
329 right: -44px;
330 display: flex;
331 flex-direction: column;
332 gap: 2px;
333 padding: 4px;
334 background: #fff;
335 border-radius: 6px;
336 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
337 opacity: 0;
338 visibility: hidden;
339 pointer-events: none;
340 transition: opacity 0.15s ease, visibility 0.15s ease;
341 z-index: 10;
342 }
343
344 .bkbg-sc-item:hover .bkbg-sc-item-actions-overlay,
345 .bkbg-sc-item-hovered .bkbg-sc-item-actions-overlay {
346 opacity: 1;
347 visibility: visible;
348 pointer-events: auto;
349 }
350
351 /* Extend hover area to include actions */
352 .bkbg-sc-item::after {
353 content: '';
354 position: absolute;
355 top: 0;
356 right: -50px;
357 bottom: 0;
358 width: 50px;
359 pointer-events: auto;
360 }
361
362 .bkbg-sc-item-actions-overlay .components-button {
363 min-width: 28px !important;
364 height: 28px !important;
365 padding: 0 !important;
366 justify-content: center;
367 }
368
369 .bkbg-sc-item-actions-overlay .components-button:hover:not(:disabled) {
370 background: #f3f4f6 !important;
371 }
372
373 .bkbg-sc-item-actions-overlay .components-button[class*="destructive"]:hover:not(:disabled) {
374 background: #fef2f2 !important;
375 color: #dc2626 !important;
376 }
377
378 .bkbg-sc-item-actions-overlay .components-button:disabled {
379 opacity: 0.3 !important;
380 }
381
382 /* Inspector panel controls */
383 .bkbg-sc-item-control {
384 padding: 12px;
385 background: #f8fafc;
386 border-radius: 8px;
387 margin-bottom: 12px;
388 border: 1px solid #e2e8f0;
389 }
390
391 .bkbg-sc-item-header {
392 display: flex;
393 justify-content: space-between;
394 align-items: center;
395 margin-bottom: 12px;
396 padding-bottom: 8px;
397 border-bottom: 1px solid #e2e8f0;
398 }
399
400 .bkbg-sc-item-title {
401 font-weight: 600;
402 color: #1e293b;
403 font-size: 13px;
404 }
405
406 .bkbg-sc-item-actions {
407 display: flex;
408 gap: 2px;
409 }
410
411 .bkbg-sc-item-actions .components-button {
412 min-width: 28px !important;
413 height: 28px !important;
414 padding: 0 !important;
415 }
416
417 .bkbg-sc-prefix-suffix {
418 display: grid;
419 grid-template-columns: 1fr 1fr;
420 gap: 8px;
421 }
422
423 .bkbg-sc-color-row {
424 display: flex;
425 align-items: center;
426 gap: 12px;
427 margin-top: 8px;
428 }
429
430 .bkbg-sc-color-btn {
431 width: 32px;
432 height: 32px;
433 border-radius: 50%;
434 border: 2px solid #fff;
435 box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), inset 0 0 0 1px rgba(0, 0, 0, 0.1);
436 cursor: pointer;
437 transition: transform 0.15s ease;
438 }
439
440 .bkbg-sc-color-btn:hover {
441 transform: scale(1.1);
442 }
443
444 .bkbg-sc-add-btn {
445 width: 100%;
446 margin-top: 8px;
447 }
448
449 /* Selection highlight */
450 .editor-styles-wrapper .bkbg-sc-item {
451 position: relative;
452 border: 1px dashed transparent;
453 border-radius: 8px;
454 transition: border-color 0.15s ease, background-color 0.15s ease;
455 }
456
457 .editor-styles-wrapper .bkbg-sc-item:hover {
458 border-color: rgba(59, 130, 246, 0.25);
459 background-color: rgba(59, 130, 246, 0.02);
460 }
461
462 .editor-styles-wrapper .bkbg-sc-item--card:hover {
463 border-color: rgba(59, 130, 246, 0.35);
464 }
465
466 /* ========================================
467 Animation
468 ======================================== */
469
470 .bkbg-sc-number {
471 transition: opacity 0.3s ease;
472 }
473
474 .bkbg-sc-wrap:not(.bkbg-sc-animated) .bkbg-sc-number {
475 opacity: 0.7;
476 }
477
478 .bkbg-sc-animated .bkbg-sc-number {
479 opacity: 1;
480 }
481
482 /* ========================================
483 Print Styles
484 ======================================== */
485
486 @media print {
487 .bkbg-sc-wrap {
488 page-break-inside: avoid;
489 }
490
491 .bkbg-sc-item {
492 break-inside: avoid;
493 }
494
495 .bkbg-sc-item--shadow {
496 box-shadow: none;
497 border: 1px solid #e5e7eb;
498 }
499 }
500
501 /* ========================================
502 Icon Picker (Editor)
503 ======================================== */
504
505 .bkbg-sc-icon-popover {
506 z-index: 100001;
507 }
508
509 .bkbg-sc-icon-picker-modal {
510 width: 260px;
511 max-height: 450px;
512 background: #fff;
513 border-radius: 8px;
514 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
515 overflow: hidden;
516 }
517
518 .bkbg-sc-icon-picker-header {
519 display: flex;
520 justify-content: space-between;
521 align-items: center;
522 padding: 12px 16px;
523 border-bottom: 1px solid #e0e0e0;
524 }
525
526 .bkbg-sc-icon-picker-header h3 {
527 margin: 0;
528 font-size: 14px;
529 font-weight: 600;
530 }
531
532 .bkbg-sc-icon-picker-close {
533 padding: 0 !important;
534 min-width: 24px !important;
535 height: 24px !important;
536 }
537
538 .bkbg-sc-icon-tabs {
539 display: flex;
540 flex-direction: column;
541 }
542
543 .bkbg-sc-icon-tabs .components-tab-panel__tabs {
544 border-bottom: 1px solid #e0e0e0;
545 margin: 0;
546 padding: 0 12px;
547 }
548
549 .bkbg-sc-icon-tabs .components-tab-panel__tabs button {
550 font-size: 13px;
551 padding: 8px 16px;
552 }
553
554 .bkbg-sc-dashicons-panel {
555 padding: 12px;
556 }
557
558 .bkbg-sc-icon-search {
559 margin-bottom: 12px;
560 }
561
562 .bkbg-sc-icon-search .components-base-control__field {
563 margin-bottom: 0;
564 }
565
566 .bkbg-sc-dashicons-grid {
567 display: grid;
568 grid-template-columns: repeat(6, 1fr);
569 gap: 4px;
570 max-height: 280px;
571 overflow-y: auto;
572 padding: 4px;
573 }
574
575 .bkbg-sc-dashicon-btn {
576 width: 36px;
577 height: 36px;
578 display: flex;
579 align-items: center;
580 justify-content: center;
581 border: 1px solid transparent;
582 border-radius: 4px;
583 background: transparent;
584 cursor: pointer;
585 transition: all 0.15s ease;
586 padding: 0;
587 }
588
589 .bkbg-sc-dashicon-btn:hover {
590 background: #f0f0f0;
591 border-color: #ccc;
592 }
593
594 .bkbg-sc-dashicon-btn.is-active {
595 background: #007cba;
596 border-color: #007cba;
597 }
598
599 .bkbg-sc-dashicon-btn.is-active .dashicons {
600 color: #fff;
601 }
602
603 .bkbg-sc-dashicon-btn .dashicons {
604 font-size: 20px;
605 width: 20px;
606 height: 20px;
607 }
608
609 .bkbg-sc-no-icons {
610 grid-column: 1 / -1;
611 text-align: center;
612 color: #666;
613 padding: 20px;
614 }
615
616 .bkbg-sc-media-panel {
617 padding: 16px;
618 text-align: center;
619 }
620
621 .bkbg-sc-current-media {
622 margin-bottom: 16px;
623 }
624
625 .bkbg-sc-current-media img {
626 max-width: 80px;
627 max-height: 80px;
628 object-fit: contain;
629 border: 1px solid #ddd;
630 border-radius: 4px;
631 margin-bottom: 8px;
632 }
633
634 .bkbg-sc-media-btn {
635 display: inline-flex;
636 align-items: center;
637 gap: 8px;
638 }
639
640 .bkbg-sc-media-hint {
641 font-size: 12px;
642 color: #666;
643 margin-top: 12px;
644 }
645
646 /* Icon row in inspector */
647 .bkbg-sc-icon-row {
648 display: flex;
649 align-items: center;
650 justify-content: space-between;
651 padding: 8px 0;
652 border-top: 1px solid #e0e0e0;
653 margin-top: 8px;
654 }
655
656 .bkbg-sc-icon-btn-wrap {
657 position: relative;
658 }
659
660 .bkbg-sc-icon-btn {
661 width: 40px;
662 height: 40px;
663 display: flex;
664 align-items: center;
665 justify-content: center;
666 border: 1px solid #ccc;
667 border-radius: 4px;
668 background: #f9f9f9;
669 cursor: pointer;
670 transition: all 0.15s ease;
671 padding: 0;
672 }
673
674 .bkbg-sc-icon-btn:hover {
675 background: #fff;
676 border-color: #007cba;
677 }
678
679 .bkbg-sc-icon-btn .dashicons {
680 font-size: 24px;
681 width: 24px;
682 height: 24px;
683 }
684
685 .bkbg-sc-icon-btn img {
686 width: 24px;
687 height: 24px;
688 object-fit: contain;
689 }
690
691 /* Icon clickable in editor */
692 .bkbg-sc-icon-clickable {
693 cursor: pointer;
694 transition: transform 0.15s ease, box-shadow 0.15s ease;
695 position: relative;
696 }
697
698 .bkbg-sc-icon-clickable:hover {
699 transform: scale(1.05);
700 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
701 }
702
703 .bkbg-sc-icon-clickable::after {
704 content: '';
705 position: absolute;
706 top: 0;
707 left: 0;
708 right: 0;
709 bottom: 0;
710 border: 2px dashed transparent;
711 border-radius: inherit;
712 transition: border-color 0.15s ease;
713 }
714
715 .bkbg-sc-icon-clickable:hover::after {
716 border-color: rgba(0, 124, 186, 0.5);
717 }
718
719 /* Custom icon image */
720 .bkbg-sc-icon-img {
721 width: var(--bkbg-sc-icon-size);
722 height: var(--bkbg-sc-icon-size);
723 object-fit: contain;
724 }
725