PluginProbe
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor / 2.0.11
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor v2.0.11
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 / mega-menu / style.css

style.css in Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor 2.0.11, at blocks/mega-menu/style.css

438 lines 10.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* === Mega Menu === */
2 .bkbg-mm-app {
3 --mm-accent: #6366f1;
4 --mm-menu-bg: #ffffff;
5 --mm-text: #0f172a;
6 --mm-border: #e2e8f0;
7 --mm-panel-bg: #ffffff;
8 --mm-panel-text: #0f172a;
9 --mm-cta-bg: #6366f1;
10 --mm-cta-clr: #ffffff;
11 --mm-feat-bg: #ede9fe;
12 display: block;
13 position: relative;
14 z-index: 1000;
15 }
16
17 /* ── Nav bar ── */
18 .bkbg-mm-bar {
19 width: 100%;
20 display: flex;
21 align-items: center;
22 height: var(--mm-height, 64px);
23 padding: 0 24px;
24 background: var(--mm-menu-bg);
25 border-bottom: 1px solid var(--mm-border);
26 position: relative;
27 z-index: 100;
28 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
29 transition: box-shadow 0.25s;
30 }
31
32 .bkbg-mm-bar.bkbg-mm-sticky {
33 position: fixed;
34 top: 0;
35 left: 0;
36 right: 0;
37 z-index: 9999;
38 }
39
40 .bkbg-mm-bar.bkbg-mm-scrolled {
41 box-shadow: 0 2px 16px rgba(0,0,0,0.1);
42 }
43
44 /* Logo */
45 .bkbg-mm-logo {
46 display: flex;
47 align-items: center;
48 text-decoration: none;
49 margin-right: 32px;
50 flex-shrink: 0;
51 }
52
53 .bkbg-mm-logo img { display: block; }
54
55 .bkbg-mm-logo-text {
56 font-weight: 700;
57 font-size: 20px;
58 color: var(--mm-text);
59 }
60
61 /* Nav links */
62 .bkbg-mm-nav {
63 display: flex;
64 align-items: center;
65 gap: 4px;
66 flex: 1;
67 list-style: none;
68 margin: 0;
69 padding: 0;
70 }
71
72 .bkbg-mm-nav-item {
73 position: static;
74 }
75
76 .bkbg-mm-nav-link {
77 display: flex;
78 align-items: center;
79 gap: 5px;
80 padding: 8px 14px;
81 color: var(--mm-text);
82 text-decoration: none;
83 font-family: var(--bkbg-mm-nv-font-family, inherit);
84 font-weight: var(--bkbg-mm-nv-font-weight, 500);
85 font-style: var(--bkbg-mm-nv-font-style, normal);
86 text-transform: var(--bkbg-mm-nv-text-transform, none);
87 font-size: var(--bkbg-mm-nv-font-size-d, 14px);
88 line-height: var(--bkbg-mm-nv-line-height-d, 1.4);
89 letter-spacing: var(--bkbg-mm-nv-letter-spacing-d, normal);
90 word-spacing: var(--bkbg-mm-nv-word-spacing-d, normal);
91 border-radius: 8px;
92 white-space: nowrap;
93 cursor: pointer;
94 transition: background 0.15s, color 0.15s;
95 border: none;
96 background: none;
97 font-family: inherit;
98 }
99
100 .bkbg-mm-nav-link:hover,
101 .bkbg-mm-nav-link.bkbg-mm-active {
102 background: rgba(99,102,241,0.07);
103 color: var(--mm-accent);
104 }
105
106 .bkbg-mm-chevron {
107 font-size: 9px;
108 transition: transform 0.2s;
109 opacity: 0.5;
110 }
111
112 .bkbg-mm-nav-link.bkbg-mm-active .bkbg-mm-chevron {
113 transform: rotate(180deg);
114 }
115
116 /* ── Mega Panel ── */
117 .bkbg-mm-panel {
118 position: absolute;
119 top: 100%;
120 left: 50%;
121 transform: translateX(-50%) translateY(8px);
122 background: var(--mm-panel-bg);
123 border: 1px solid var(--mm-border);
124 box-shadow: 0 16px 48px rgba(0,0,0,0.12);
125 opacity: 0;
126 pointer-events: none;
127 transition: opacity 0.2s, transform 0.2s;
128 z-index: 200;
129 }
130
131 .bkbg-mm-panel.bkbg-mm-panel-open {
132 opacity: 1;
133 pointer-events: auto;
134 transform: translateX(-50%) translateY(0);
135 }
136
137 .bkbg-mm-panel-inner {
138 display: flex;
139 padding: 24px;
140 gap: 32px;
141 color: var(--mm-panel-text);
142 }
143
144 /* Columns */
145 .bkbg-mm-columns {
146 display: flex;
147 gap: 24px;
148 flex: 1;
149 }
150
151 .bkbg-mm-col {
152 flex: 1;
153 min-width: 160px;
154 }
155
156 .bkbg-mm-col-heading {
157 font-family: var(--bkbg-mm-ch-font-family, inherit);
158 font-weight: var(--bkbg-mm-ch-font-weight, 700);
159 font-style: var(--bkbg-mm-ch-font-style, normal);
160 text-decoration: var(--bkbg-mm-ch-text-decoration, none);
161 text-transform: var(--bkbg-mm-ch-text-transform, uppercase);
162 font-size: var(--bkbg-mm-ch-font-size-d, 11px);
163 line-height: var(--bkbg-mm-ch-line-height-d, 1.3);
164 letter-spacing: var(--bkbg-mm-ch-letter-spacing-d, 0.08em);
165 word-spacing: var(--bkbg-mm-ch-word-spacing-d, normal);
166 color: var(--mm-accent);
167 margin: 0 0 12px;
168 padding-bottom: 8px;
169 border-bottom: 1px solid var(--mm-border);
170 }
171
172 .bkbg-mm-link-list {
173 list-style: none;
174 margin: 0;
175 padding: 0;
176 display: flex;
177 flex-direction: column;
178 gap: 2px;
179 }
180
181 .bkbg-mm-link-item a {
182 display: flex;
183 align-items: flex-start;
184 gap: 12px;
185 padding: 8px 10px;
186 border-radius: 8px;
187 text-decoration: none;
188 color: var(--mm-panel-text);
189 transition: background 0.15s;
190 }
191
192 .bkbg-mm-link-item a:hover {
193 background: rgba(99,102,241,0.07);
194 }
195
196 .bkbg-mm-link-icon {
197 font-size: 20px;
198 flex-shrink: 0;
199 margin-top: 1px;
200 }
201 .bkbg-mm-link-icon svg { width: 1em; height: 1em; fill: currentColor; }
202 .bkbg-mm-link-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
203 .bkbg-mm-link-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
204
205 .bkbg-mm-link-body { display: flex; flex-direction: column; gap: 2px; }
206
207 .bkbg-mm-link-label {
208 font-family: var(--bkbg-mm-lk-font-family, inherit);
209 font-weight: var(--bkbg-mm-lk-font-weight, 600);
210 font-style: var(--bkbg-mm-lk-font-style, normal);
211 text-decoration: var(--bkbg-mm-lk-text-decoration, none);
212 text-transform: var(--bkbg-mm-lk-text-transform, none);
213 font-size: var(--bkbg-mm-lk-font-size-d, 14px);
214 line-height: var(--bkbg-mm-lk-line-height-d, 1.3);
215 letter-spacing: var(--bkbg-mm-lk-letter-spacing-d, normal);
216 word-spacing: var(--bkbg-mm-lk-word-spacing-d, normal);
217 }
218
219 .bkbg-mm-link-desc {
220 font-size: 12px;
221 opacity: 0.65;
222 line-height: 1.4;
223 }
224
225 /* Featured panel */
226 .bkbg-mm-featured {
227 width: 220px;
228 flex-shrink: 0;
229 background: var(--mm-feat-bg);
230 border-radius: 12px;
231 overflow: hidden;
232 display: flex;
233 flex-direction: column;
234 }
235
236 .bkbg-mm-feat-img {
237 width: 100%;
238 height: 120px;
239 object-fit: cover;
240 }
241
242 .bkbg-mm-feat-placeholder {
243 width: 100%;
244 height: 120px;
245 background: linear-gradient(135deg, var(--mm-accent), #8b5cf6);
246 display: flex;
247 align-items: center;
248 justify-content: center;
249 font-size: 40px;
250 }
251
252 .bkbg-mm-feat-body {
253 padding: 16px;
254 flex: 1;
255 display: flex;
256 flex-direction: column;
257 gap: 8px;
258 }
259
260 .bkbg-mm-feat-title {
261 font-size: 15px;
262 font-weight: 700;
263 color: var(--mm-panel-text);
264 margin: 0;
265 }
266
267 .bkbg-mm-feat-desc {
268 font-size: 13px;
269 color: var(--mm-panel-text);
270 opacity: 0.75;
271 margin: 0;
272 flex: 1;
273 }
274
275 .bkbg-mm-feat-cta {
276 display: inline-block;
277 background: var(--mm-accent);
278 color: #fff;
279 padding: 8px 16px;
280 border-radius: 8px;
281 font-size: 13px;
282 font-weight: 600;
283 text-decoration: none;
284 text-align: center;
285 transition: opacity 0.15s;
286 }
287
288 .bkbg-mm-feat-cta:hover { opacity: 0.88; }
289
290 /* ── CTA button ── */
291 .bkbg-mm-cta {
292 display: inline-flex;
293 align-items: center;
294 padding: 8px 20px;
295 border-radius: 8px;
296 font-size: 13px;
297 font-weight: 600;
298 text-decoration: none;
299 cursor: pointer;
300 border: 2px solid var(--mm-cta-bg);
301 white-space: nowrap;
302 margin-left: 16px;
303 flex-shrink: 0;
304 transition: background 0.15s, color 0.15s, opacity 0.15s;
305 }
306
307 .bkbg-mm-cta-filled {
308 background: var(--mm-cta-bg);
309 color: var(--mm-cta-clr);
310 }
311 .bkbg-mm-cta-filled:hover { opacity: 0.88; }
312
313 .bkbg-mm-cta-outline {
314 background: transparent;
315 color: var(--mm-cta-bg);
316 }
317 .bkbg-mm-cta-outline:hover {
318 background: var(--mm-cta-bg);
319 color: var(--mm-cta-clr);
320 }
321
322 /* ── Mobile hamburger ── */
323 .bkbg-mm-hamburger {
324 display: none;
325 background: none;
326 border: none;
327 cursor: pointer;
328 padding: 8px;
329 margin-left: auto;
330 flex-direction: column;
331 gap: 5px;
332 }
333
334 .bkbg-mm-ham-line {
335 display: block;
336 width: 22px;
337 height: 2px;
338 background: var(--mm-text);
339 border-radius: 2px;
340 transition: transform 0.25s, opacity 0.25s;
341 }
342
343 .bkbg-mm-hamburger.bkbg-mm-open .bkbg-mm-ham-line:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
344 .bkbg-mm-hamburger.bkbg-mm-open .bkbg-mm-ham-line:nth-child(2) { opacity: 0; }
345 .bkbg-mm-hamburger.bkbg-mm-open .bkbg-mm-ham-line:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
346
347 /* ── Mobile drawer ── */
348 .bkbg-mm-drawer {
349 display: none;
350 position: fixed;
351 top: var(--mm-height, 64px);
352 left: 0;
353 right: 0;
354 bottom: 0;
355 background: var(--mm-menu-bg);
356 overflow-y: auto;
357 padding: 16px;
358 z-index: 9998;
359 border-top: 1px solid var(--mm-border);
360 }
361
362 .bkbg-mm-drawer.bkbg-mm-drawer-open { display: block; }
363
364 .bkbg-mm-drawer-link {
365 display: block;
366 padding: 12px 8px;
367 color: var(--mm-text);
368 font-size: 16px;
369 font-weight: 600;
370 border-bottom: 1px solid var(--mm-border);
371 text-decoration: none;
372 }
373
374 .bkbg-mm-drawer-sub-link {
375 display: flex;
376 align-items: center;
377 gap: 10px;
378 padding: 10px 16px;
379 color: var(--mm-panel-text);
380 font-size: 14px;
381 text-decoration: none;
382 border-radius: 8px;
383 transition: background 0.15s;
384 }
385 .bkbg-mm-drawer-sub-link:hover { background: rgba(99,102,241,0.07); }
386
387 /* ── Sticky offset ── */
388 .bkbg-mm-spacer { display: none; }
389 .bkbg-mm-bar.bkbg-mm-sticky ~ .bkbg-mm-spacer { display: block; }
390
391 @media (max-width: 1024px) {
392 .bkbg-mm-nav-link {
393 font-size: var(--bkbg-mm-nv-font-size-t, 14px);
394 line-height: var(--bkbg-mm-nv-line-height-t, 1.4);
395 letter-spacing: var(--bkbg-mm-nv-letter-spacing-t, normal);
396 word-spacing: var(--bkbg-mm-nv-word-spacing-t, normal);
397 }
398 .bkbg-mm-col-heading {
399 font-size: var(--bkbg-mm-ch-font-size-t, 11px);
400 line-height: var(--bkbg-mm-ch-line-height-t, 1.3);
401 letter-spacing: var(--bkbg-mm-ch-letter-spacing-t, 0.08em);
402 word-spacing: var(--bkbg-mm-ch-word-spacing-t, normal);
403 }
404 .bkbg-mm-link-label {
405 font-size: var(--bkbg-mm-lk-font-size-t, 14px);
406 line-height: var(--bkbg-mm-lk-line-height-t, 1.3);
407 letter-spacing: var(--bkbg-mm-lk-letter-spacing-t, normal);
408 word-spacing: var(--bkbg-mm-lk-word-spacing-t, normal);
409 }
410 }
411
412 @media (max-width: 767px) {
413 .bkbg-mm-nav-link {
414 font-size: var(--bkbg-mm-nv-font-size-m, 13px);
415 line-height: var(--bkbg-mm-nv-line-height-m, 1.4);
416 letter-spacing: var(--bkbg-mm-nv-letter-spacing-m, normal);
417 word-spacing: var(--bkbg-mm-nv-word-spacing-m, normal);
418 }
419 .bkbg-mm-col-heading {
420 font-size: var(--bkbg-mm-ch-font-size-m, 10px);
421 line-height: var(--bkbg-mm-ch-line-height-m, 1.3);
422 letter-spacing: var(--bkbg-mm-ch-letter-spacing-m, 0.08em);
423 word-spacing: var(--bkbg-mm-ch-word-spacing-m, normal);
424 }
425 .bkbg-mm-link-label {
426 font-size: var(--bkbg-mm-lk-font-size-m, 13px);
427 line-height: var(--bkbg-mm-lk-line-height-m, 1.3);
428 letter-spacing: var(--bkbg-mm-lk-letter-spacing-m, normal);
429 word-spacing: var(--bkbg-mm-lk-word-spacing-m, normal);
430 }
431 }
432
433 @media (max-width: 768px) {
434 .bkbg-mm-nav,
435 .bkbg-mm-cta { display: none; }
436 .bkbg-mm-hamburger { display: flex; }
437 }
438