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 / feature-tabs / style.css

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

279 lines 10.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ──────────────────────────────────────────────────────────────────
2 Feature Tabs — blockenberg/feature-tabs
3 ────────────────────────────────────────────────────────────────── */
4
5 .bkbg-ftb-wrapper {
6 box-sizing: border-box;
7 width: 100%;
8 }
9
10 /* ── Layout ─────────────────────────────────────────────────────── */
11 .bkbg-ftb-layout {
12 display: flex;
13 align-items: flex-start;
14 gap: var(--bkbg-ftb-gap, 48px);
15 width: 100%;
16 }
17
18 .bkbg-ftb--top {
19 flex-direction: column;
20 }
21
22 .bkbg-ftb--left {
23 flex-direction: row;
24 }
25
26 .bkbg-ftb--right {
27 flex-direction: row-reverse;
28 }
29
30 /* ── Tab list ───────────────────────────────────────────────────── */
31 .bkbg-ftb-tab-list {
32 flex-shrink: 0;
33 display: flex;
34 }
35
36 .bkbg-ftb--left .bkbg-ftb-tab-list,
37 .bkbg-ftb--right .bkbg-ftb-tab-list {
38 flex-direction: column;
39 width: var(--bkbg-ftb-tabs-w, 300px);
40 }
41
42 .bkbg-ftb--top .bkbg-ftb-tab-list {
43 flex-direction: row;
44 flex-wrap: wrap;
45 width: 100%;
46 gap: 6px;
47 }
48
49 /* ── Single tab button ──────────────────────────────────────────── */
50 .bkbg-ftb-tab-btn {
51 display: flex;
52 align-items: flex-start;
53 gap: 12px;
54 padding: 16px 18px;
55 cursor: pointer;
56 border: none;
57 background: var(--bkbg-ftb-inactive-bg, #f9fafb);
58 border-radius: 10px;
59 text-align: left;
60 width: 100%;
61 font-family: inherit;
62 transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
63 }
64
65 .bkbg-ftb--top .bkbg-ftb-tab-btn {
66 width: auto;
67 }
68
69 .bkbg-ftb--left .bkbg-ftb-tab-btn,
70 .bkbg-ftb--right .bkbg-ftb-tab-btn {
71 margin-bottom: 6px;
72 border-left: 3px solid transparent;
73 }
74
75 .bkbg-ftb-tab-btn.is-active {
76 background: var(--bkbg-ftb-active-bg, #ede9f7);
77 border-left-color: var(--bkbg-ftb-accent, #6c3fb5);
78 }
79
80 .bkbg-ftb-tab-icon {
81 font-size: var(--bkbg-ftb-icon-sz, 28px);
82 line-height: 1;
83 flex-shrink: 0;
84 }
85 .bkbg-ftb-tab-icon svg { width: 1em; height: 1em; fill: currentColor; }
86 .bkbg-ftb-tab-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
87 .bkbg-ftb-tab-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
88
89 .bkbg-ftb-tab-text {
90 display: flex;
91 flex-direction: column;
92 gap: 3px;
93 min-width: 0;
94 }
95
96 .bkbg-ftb-tab-label {
97 font-family: var(--bkbg-ftb-tl-font-family, inherit);
98 font-size: var(--bkbg-ftb-tl-font-size-d, 15px);
99 font-weight: var(--bkbg-ftb-tl-font-weight, 700);
100 font-style: var(--bkbg-ftb-tl-font-style, normal);
101 text-transform: var(--bkbg-ftb-tl-text-transform, none);
102 text-decoration: var(--bkbg-ftb-tl-text-decoration, none);
103 line-height: var(--bkbg-ftb-tl-line-height-d, 1.3);
104 letter-spacing: var(--bkbg-ftb-tl-letter-spacing-d, normal);
105 word-spacing: var(--bkbg-ftb-tl-word-spacing-d, normal);
106 color: var(--bkbg-ftb-inactive-color, #374151);
107 display: block;
108 }
109
110 .bkbg-ftb-tab-btn.is-active .bkbg-ftb-tab-label {
111 color: var(--bkbg-ftb-active-color, #4c1d95);
112 }
113
114 .bkbg-ftb-tab-preview-desc {
115 font-family: var(--bkbg-ftb-td-font-family, inherit);
116 font-size: var(--bkbg-ftb-td-font-size-d, 15px);
117 color: var(--bkbg-ftb-desc, #6b7280);
118 line-height: var(--bkbg-ftb-td-line-height-d, 1.5);
119 letter-spacing: var(--bkbg-ftb-td-letter-spacing-d, normal);
120 word-spacing: var(--bkbg-ftb-td-word-spacing-d, normal);
121 display: -webkit-box;
122 -webkit-box-orient: vertical;
123 -webkit-line-clamp: 2;
124 overflow: hidden;
125 max-height: 0;
126 opacity: 0;
127 transition: max-height 0.3s, opacity 0.3s;
128 }
129
130 .bkbg-ftb-tab-btn.is-active .bkbg-ftb-tab-preview-desc {
131 max-height: 60px;
132 opacity: 1;
133 }
134
135 /* ── Panels ─────────────────────────────────────────────────────── */
136 .bkbg-ftb-panels {
137 flex: 1;
138 min-width: 0;
139 position: relative;
140 }
141
142 .bkbg-ftb-panel {
143 display: none;
144 }
145
146 .bkbg-ftb-panel.is-active {
147 display: block;
148 }
149
150 .bkbg-ftb-image-pane {
151 border-radius: var(--bkbg-ftb-img-r, 16px);
152 overflow: hidden;
153 background: var(--bkbg-ftb-placeholder-bg, #f3f4f6);
154 position: relative;
155 }
156
157 .bkbg-ftb-image-pane img {
158 position: absolute;
159 inset: 0;
160 width: 100%;
161 height: 100%;
162 object-fit: cover;
163 display: block;
164 }
165
166 .bkbg-ftb-panel-content {
167 padding: 24px 4px 0;
168 }
169
170 .bkbg-ftb-wrapper .bkbg-ftb-headline {
171 font-family: var(--bkbg-ftb-th-font-family, inherit);
172 font-size: var(--bkbg-ftb-th-font-size-d, 28px);
173 font-weight: var(--bkbg-ftb-th-font-weight, 800);
174 font-style: var(--bkbg-ftb-th-font-style, normal);
175 text-transform: var(--bkbg-ftb-th-text-transform, none);
176 text-decoration: var(--bkbg-ftb-th-text-decoration, none);
177 line-height: var(--bkbg-ftb-th-line-height-d, 1.2);
178 letter-spacing: var(--bkbg-ftb-th-letter-spacing-d, normal);
179 word-spacing: var(--bkbg-ftb-th-word-spacing-d, normal);
180 color: var(--bkbg-ftb-headline, #111827);
181 margin: 0 0 10px;
182 }
183
184 .bkbg-ftb-desc {
185 font-family: var(--bkbg-ftb-td-font-family, inherit);
186 font-size: var(--bkbg-ftb-td-font-size-d, 15px);
187 font-weight: var(--bkbg-ftb-td-font-weight, 400);
188 font-style: var(--bkbg-ftb-td-font-style, normal);
189 text-transform: var(--bkbg-ftb-td-text-transform, none);
190 text-decoration: var(--bkbg-ftb-td-text-decoration, none);
191 line-height: var(--bkbg-ftb-td-line-height-d, 1.65);
192 letter-spacing: var(--bkbg-ftb-td-letter-spacing-d, normal);
193 word-spacing: var(--bkbg-ftb-td-word-spacing-d, normal);
194 color: var(--bkbg-ftb-desc, #6b7280);
195 margin: 0;
196 }
197
198 /* ── Animate ────────────────────────────────────────────────────── */
199 [data-animate="1"] .bkbg-ftb-panel.is-active {
200 animation: bkbgFtFadeIn 0.35s ease both;
201 }
202
203 @keyframes bkbgFtFadeIn {
204 from { opacity: 0; transform: translateY(12px); }
205 to { opacity: 1; transform: translateY(0); }
206 }
207
208 /* ── Responsive: tablet typography ─────────────────────────────────── */
209 @media (max-width: 1024px) {
210 .bkbg-ftb-tab-label {
211 font-size: var(--bkbg-ftb-tl-font-size-t, var(--bkbg-ftb-tl-font-size-d, 15px));
212 line-height: var(--bkbg-ftb-tl-line-height-t, var(--bkbg-ftb-tl-line-height-d, 1.3));
213 letter-spacing: var(--bkbg-ftb-tl-letter-spacing-t, var(--bkbg-ftb-tl-letter-spacing-d, normal));
214 word-spacing: var(--bkbg-ftb-tl-word-spacing-t, var(--bkbg-ftb-tl-word-spacing-d, normal));
215 }
216 .bkbg-ftb-wrapper .bkbg-ftb-headline {
217 font-size: var(--bkbg-ftb-th-font-size-t, var(--bkbg-ftb-th-font-size-d, 28px));
218 line-height: var(--bkbg-ftb-th-line-height-t, var(--bkbg-ftb-th-line-height-d, 1.2));
219 letter-spacing: var(--bkbg-ftb-th-letter-spacing-t, var(--bkbg-ftb-th-letter-spacing-d, normal));
220 word-spacing: var(--bkbg-ftb-th-word-spacing-t, var(--bkbg-ftb-th-word-spacing-d, normal));
221 }
222 .bkbg-ftb-desc,
223 .bkbg-ftb-tab-preview-desc {
224 font-size: var(--bkbg-ftb-td-font-size-t, var(--bkbg-ftb-td-font-size-d, 15px));
225 line-height: var(--bkbg-ftb-td-line-height-t, var(--bkbg-ftb-td-line-height-d, 1.65));
226 letter-spacing: var(--bkbg-ftb-td-letter-spacing-t, var(--bkbg-ftb-td-letter-spacing-d, normal));
227 word-spacing: var(--bkbg-ftb-td-word-spacing-t, var(--bkbg-ftb-td-word-spacing-d, normal));
228 }
229 }
230
231 /* ── Responsive: mobile typography ─────────────────────────────────── */
232 @media (max-width: 767px) {
233 .bkbg-ftb-tab-label {
234 font-size: var(--bkbg-ftb-tl-font-size-m, var(--bkbg-ftb-tl-font-size-t, var(--bkbg-ftb-tl-font-size-d, 15px)));
235 line-height: var(--bkbg-ftb-tl-line-height-m, var(--bkbg-ftb-tl-line-height-t, var(--bkbg-ftb-tl-line-height-d, 1.3)));
236 letter-spacing: var(--bkbg-ftb-tl-letter-spacing-m, var(--bkbg-ftb-tl-letter-spacing-t, var(--bkbg-ftb-tl-letter-spacing-d, normal)));
237 word-spacing: var(--bkbg-ftb-tl-word-spacing-m, var(--bkbg-ftb-tl-word-spacing-t, var(--bkbg-ftb-tl-word-spacing-d, normal)));
238 }
239 .bkbg-ftb-wrapper .bkbg-ftb-headline {
240 font-size: var(--bkbg-ftb-th-font-size-m, var(--bkbg-ftb-th-font-size-t, var(--bkbg-ftb-th-font-size-d, 28px)));
241 line-height: var(--bkbg-ftb-th-line-height-m, var(--bkbg-ftb-th-line-height-t, var(--bkbg-ftb-th-line-height-d, 1.2)));
242 letter-spacing: var(--bkbg-ftb-th-letter-spacing-m, var(--bkbg-ftb-th-letter-spacing-t, var(--bkbg-ftb-th-letter-spacing-d, normal)));
243 word-spacing: var(--bkbg-ftb-th-word-spacing-m, var(--bkbg-ftb-th-word-spacing-t, var(--bkbg-ftb-th-word-spacing-d, normal)));
244 }
245 .bkbg-ftb-desc,
246 .bkbg-ftb-tab-preview-desc {
247 font-size: var(--bkbg-ftb-td-font-size-m, var(--bkbg-ftb-td-font-size-t, var(--bkbg-ftb-td-font-size-d, 15px)));
248 line-height: var(--bkbg-ftb-td-line-height-m, var(--bkbg-ftb-td-line-height-t, var(--bkbg-ftb-td-line-height-d, 1.65)));
249 letter-spacing: var(--bkbg-ftb-td-letter-spacing-m, var(--bkbg-ftb-td-letter-spacing-t, var(--bkbg-ftb-td-letter-spacing-d, normal)));
250 word-spacing: var(--bkbg-ftb-td-word-spacing-m, var(--bkbg-ftb-td-word-spacing-t, var(--bkbg-ftb-td-word-spacing-d, normal)));
251 }
252 }
253
254 /* ── Responsive: layout ───────────────────────────────────────── */
255 @media (max-width: 768px) {
256 .bkbg-ftb-layout {
257 flex-direction: column !important;
258 }
259
260 .bkbg-ftb-tab-list {
261 width: 100% !important;
262 flex-direction: row;
263 flex-wrap: wrap;
264 gap: 6px;
265 }
266
267 .bkbg-ftb-tab-btn {
268 width: auto;
269 flex: 1 1 auto;
270 margin-bottom: 0 !important;
271 border-left-width: 0 !important;
272 border-bottom: 3px solid transparent;
273 }
274
275 .bkbg-ftb-tab-btn.is-active {
276 border-bottom-color: var(--bkbg-ftb-accent, #6c3fb5);
277 }
278 }
279