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 / kpi-tiles / style.css

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

166 lines 8.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ===================================================
2 KPI Tiles — bkbg-kpi-* (style.css)
3 =================================================== */
4
5 .bkbg-kpi-wrap {
6 width: 100%;
7 }
8
9 /* ── Grid ──────────────────────────────────────────────────────────── */
10 .bkbg-kpi-grid {
11 display: grid;
12 gap: 20px;
13 width: 100%;
14 }
15
16 /* ── Tile card ─────────────────────────────────────────────────────── */
17 .bkbg-kpi-tile {
18 display: flex;
19 flex-direction: column;
20 gap: 8px;
21 transition: transform 0.22s ease, box-shadow 0.22s ease;
22 will-change: transform;
23 overflow: hidden;
24 }
25
26 .bkbg-kpi-tile:hover {
27 transform: translateY(-3px);
28 }
29
30 /* ── Top row: icon + trend ─────────────────────────────────────────── */
31 .bkbg-kpi-top {
32 display: flex;
33 align-items: center;
34 justify-content: space-between;
35 gap: 8px;
36 margin-bottom: 4px;
37 }
38
39 .bkbg-kpi-icon {
40 line-height: 1;
41 flex-shrink: 0;
42 }
43
44 .bkbg-kpi-icon svg { width: 1em; height: 1em; fill: currentColor; }
45 .bkbg-kpi-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
46 .bkbg-kpi-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
47
48 /* ── Trend badge ───────────────────────────────────────────────────── */
49 .bkbg-kpi-trend {
50 display: inline-flex;
51 align-items: center;
52 gap: 2px;
53 font-family: var(--bkbg-kpi-tr-font-family, inherit);
54 font-size: var(--bkbg-kpi-tr-font-size-d, 12px);
55 font-weight: var(--bkbg-kpi-tr-font-weight, 700);
56 font-style: var(--bkbg-kpi-tr-font-style, normal);
57 text-decoration: var(--bkbg-kpi-tr-text-decoration, none);
58 text-transform: var(--bkbg-kpi-tr-text-transform, none);
59 line-height: var(--bkbg-kpi-tr-line-height-d, 1);
60 letter-spacing: var(--bkbg-kpi-tr-letter-spacing-d, normal);
61 word-spacing: var(--bkbg-kpi-tr-word-spacing-d, normal);
62 padding: 2px 8px;
63 border-radius: 99px;
64 white-space: nowrap;
65 }
66
67 .bkbg-kpi-trend-up { color: #10b981; background: rgba(16,185,129,0.1); }
68 .bkbg-kpi-trend-down { color: #ef4444; background: rgba(239,68,68,0.1); }
69 .bkbg-kpi-trend-downgood { color: #10b981; background: rgba(16,185,129,0.1); }
70 .bkbg-kpi-trend-neutral { color: #64748b; background: rgba(100,116,139,0.1); }
71
72 /* ── Value ─────────────────────────────────────────────────────────── */
73 .bkbg-kpi-value {
74 font-family: var(--bkbg-kpi-v-font-family, inherit);
75 font-size: var(--bkbg-kpi-v-font-size-d, 32px);
76 font-weight: var(--bkbg-kpi-v-font-weight, 800);
77 font-style: var(--bkbg-kpi-v-font-style, normal);
78 text-decoration: var(--bkbg-kpi-v-text-decoration, none);
79 text-transform: var(--bkbg-kpi-v-text-transform, none);
80 line-height: var(--bkbg-kpi-v-line-height-d, 1.1);
81 letter-spacing: var(--bkbg-kpi-v-letter-spacing-d, -0.02em);
82 word-spacing: var(--bkbg-kpi-v-word-spacing-d, normal);
83 font-variant-numeric: tabular-nums;
84 transition: opacity 0.3s;
85 }
86
87 .bkbg-kpi-value.bkbg-kpi-animating {
88 opacity: 0.4;
89 }
90
91 /* ── Label ─────────────────────────────────────────────────────────── */
92 .bkbg-kpi-label {
93 font-family: var(--bkbg-kpi-l-font-family, inherit);
94 font-size: var(--bkbg-kpi-l-font-size-d, 13px);
95 font-weight: var(--bkbg-kpi-l-font-weight, 500);
96 font-style: var(--bkbg-kpi-l-font-style, normal);
97 text-decoration: var(--bkbg-kpi-l-text-decoration, none);
98 text-transform: var(--bkbg-kpi-l-text-transform, uppercase);
99 line-height: var(--bkbg-kpi-l-line-height-d, 1.3);
100 letter-spacing: var(--bkbg-kpi-l-letter-spacing-d, 0.02em);
101 word-spacing: var(--bkbg-kpi-l-word-spacing-d, normal);
102 }
103
104 /* ── Sparkline ─────────────────────────────────────────────────────── */
105 .bkbg-kpi-spark {
106 margin-top: 4px;
107 border-radius: 4px;
108 align-self: flex-start;
109 max-width: 100%;
110 }
111
112 /* ── Responsive ────────────────────────────────────────────────────── */
113 @media (max-width: 900px) {
114 .bkbg-kpi-grid[style*="repeat(4"] {
115 grid-template-columns: repeat(2, 1fr) !important;
116 }
117 }
118
119 @media (max-width: 560px) {
120 .bkbg-kpi-grid {
121 grid-template-columns: 1fr !important;
122 }
123 }
124
125 /* ── Responsive typography ────────────────────────────────────── */
126 @media (max-width: 1024px) {
127 .bkbg-kpi-value {
128 font-size: var(--bkbg-kpi-v-font-size-t, var(--bkbg-kpi-v-font-size-d, 32px));
129 line-height: var(--bkbg-kpi-v-line-height-t, var(--bkbg-kpi-v-line-height-d, 1.1));
130 letter-spacing: var(--bkbg-kpi-v-letter-spacing-t, var(--bkbg-kpi-v-letter-spacing-d, -0.02em));
131 word-spacing: var(--bkbg-kpi-v-word-spacing-t, var(--bkbg-kpi-v-word-spacing-d, normal));
132 }
133 .bkbg-kpi-label {
134 font-size: var(--bkbg-kpi-l-font-size-t, var(--bkbg-kpi-l-font-size-d, 13px));
135 line-height: var(--bkbg-kpi-l-line-height-t, var(--bkbg-kpi-l-line-height-d, 1.3));
136 letter-spacing: var(--bkbg-kpi-l-letter-spacing-t, var(--bkbg-kpi-l-letter-spacing-d, 0.02em));
137 word-spacing: var(--bkbg-kpi-l-word-spacing-t, var(--bkbg-kpi-l-word-spacing-d, normal));
138 }
139 .bkbg-kpi-trend {
140 font-size: var(--bkbg-kpi-tr-font-size-t, var(--bkbg-kpi-tr-font-size-d, 12px));
141 line-height: var(--bkbg-kpi-tr-line-height-t, var(--bkbg-kpi-tr-line-height-d, 1));
142 letter-spacing: var(--bkbg-kpi-tr-letter-spacing-t, var(--bkbg-kpi-tr-letter-spacing-d, normal));
143 word-spacing: var(--bkbg-kpi-tr-word-spacing-t, var(--bkbg-kpi-tr-word-spacing-d, normal));
144 }
145 }
146 @media (max-width: 767px) {
147 .bkbg-kpi-value {
148 font-size: var(--bkbg-kpi-v-font-size-m, var(--bkbg-kpi-v-font-size-t, var(--bkbg-kpi-v-font-size-d, 32px)));
149 line-height: var(--bkbg-kpi-v-line-height-m, var(--bkbg-kpi-v-line-height-t, var(--bkbg-kpi-v-line-height-d, 1.1)));
150 letter-spacing: var(--bkbg-kpi-v-letter-spacing-m, var(--bkbg-kpi-v-letter-spacing-t, var(--bkbg-kpi-v-letter-spacing-d, -0.02em)));
151 word-spacing: var(--bkbg-kpi-v-word-spacing-m, var(--bkbg-kpi-v-word-spacing-t, var(--bkbg-kpi-v-word-spacing-d, normal)));
152 }
153 .bkbg-kpi-label {
154 font-size: var(--bkbg-kpi-l-font-size-m, var(--bkbg-kpi-l-font-size-t, var(--bkbg-kpi-l-font-size-d, 13px)));
155 line-height: var(--bkbg-kpi-l-line-height-m, var(--bkbg-kpi-l-line-height-t, var(--bkbg-kpi-l-line-height-d, 1.3)));
156 letter-spacing: var(--bkbg-kpi-l-letter-spacing-m, var(--bkbg-kpi-l-letter-spacing-t, var(--bkbg-kpi-l-letter-spacing-d, 0.02em)));
157 word-spacing: var(--bkbg-kpi-l-word-spacing-m, var(--bkbg-kpi-l-word-spacing-t, var(--bkbg-kpi-l-word-spacing-d, normal)));
158 }
159 .bkbg-kpi-trend {
160 font-size: var(--bkbg-kpi-tr-font-size-m, var(--bkbg-kpi-tr-font-size-t, var(--bkbg-kpi-tr-font-size-d, 12px)));
161 line-height: var(--bkbg-kpi-tr-line-height-m, var(--bkbg-kpi-tr-line-height-t, var(--bkbg-kpi-tr-line-height-d, 1)));
162 letter-spacing: var(--bkbg-kpi-tr-letter-spacing-m, var(--bkbg-kpi-tr-letter-spacing-t, var(--bkbg-kpi-tr-letter-spacing-d, normal)));
163 word-spacing: var(--bkbg-kpi-tr-word-spacing-m, var(--bkbg-kpi-tr-word-spacing-t, var(--bkbg-kpi-tr-word-spacing-d, normal)));
164 }
165 }
166