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 / holographic-card / style.css

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

214 lines 7.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* =====================================================
2 Blockenberg — holographic-card (bkbg-hgc-*)
3 ===================================================== */
4
5 /* ── App / card shell ── */
6 .bkbg-hgc-app {
7 position: relative;
8 overflow: hidden;
9 display: inline-flex;
10 flex-direction: column;
11 justify-content: flex-end;
12 padding: 28px;
13 box-sizing: border-box;
14 cursor: pointer;
15 transform-style: preserve-3d;
16 transition: box-shadow 0.4s ease;
17 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
18 max-width: 100%;
19 will-change: transform;
20 vertical-align: top;
21 }
22
23 .bkbg-hgc-app:hover {
24 box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
25 }
26
27 /* ── Background image ── */
28 .bkbg-hgc-img {
29 position: absolute;
30 inset: 0;
31 width: 100%;
32 height: 100%;
33 object-fit: cover;
34 display: block;
35 border-radius: inherit;
36 }
37
38 /* ── Dark gradient overlay (readability) ── */
39 .bkbg-hgc-overlay {
40 position: absolute;
41 inset: 0;
42 background: linear-gradient(to top, rgba(0, 0, 0, 0.72) 0%, transparent 65%);
43 pointer-events: none;
44 border-radius: inherit;
45 z-index: 1;
46 }
47
48 /* ── Grid texture ── */
49 .bkbg-hgc-grid {
50 position: absolute;
51 inset: 0;
52 border-radius: inherit;
53 pointer-events: none;
54 z-index: 2;
55 background-image:
56 repeating-linear-gradient(0deg, transparent, transparent 30px, rgba(255, 255, 255, 0.03) 30px, rgba(255, 255, 255, 0.03) 31px),
57 repeating-linear-gradient(90deg, transparent, transparent 30px, rgba(255, 255, 255, 0.03) 30px, rgba(255, 255, 255, 0.03) 31px);
58 }
59
60 /* ── Iridescent shine layer ── */
61 .bkbg-hgc-shine {
62 position: absolute;
63 inset: 0;
64 border-radius: inherit;
65 pointer-events: none;
66 z-index: 3;
67 mix-blend-mode: screen;
68 opacity: 0.6;
69 background: linear-gradient(
70 135deg,
71 hsl(0, 80%, 60%) 0%,
72 hsl(60, 90%, 70%) 16%,
73 hsl(120, 80%, 65%) 33%,
74 hsl(180, 90%, 65%) 50%,
75 hsl(240, 80%, 65%) 66%,
76 hsl(300, 90%, 65%) 83%,
77 hsl(360, 80%, 60%) 100%
78 );
79 transition: background-position 0.05s linear;
80 background-size: 200% 200%;
81 }
82
83 /* ── Glare / spotlight layer ── */
84 .bkbg-hgc-glare {
85 position: absolute;
86 inset: 0;
87 border-radius: inherit;
88 pointer-events: none;
89 z-index: 4;
90 opacity: 0;
91 background: radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.5) 0%, transparent 60%);
92 transition: opacity 0.15s ease;
93 mix-blend-mode: overlay;
94 }
95
96 .bkbg-hgc-app:hover .bkbg-hgc-glare {
97 opacity: 0.4;
98 }
99
100 /* ── Content ── */
101 .bkbg-hgc-content {
102 position: relative;
103 z-index: 5;
104 }
105
106 /* ── Badge ── */
107 .bkbg-hgc-badge {
108 display: inline-block;
109 padding: 4px 12px;
110 border-radius: 20px;
111 margin-bottom: 12px;
112 font-size: 12px;
113 font-weight: 600;
114 letter-spacing: 0.04em;
115 backdrop-filter: blur(6px);
116 -webkit-backdrop-filter: blur(6px);
117 border: 1px solid rgba(255, 255, 255, 0.25);
118 }
119
120 /* ── Title ── specificity (0,2,0)+ */
121 .bkbg-hgc-app .bkbg-hgc-title,
122 .bkbg-hgc-app h3.bkbg-hgc-title {
123 margin: 0 0 8px !important;
124 font-family: var(--bkbg-hgc-tt-font-family, inherit);
125 font-size: var(--bkbg-hgc-tt-font-size-d, var(--bkbg-hgc-tt-sz, 22px));
126 font-weight: var(--bkbg-hgc-tt-font-weight, var(--bkbg-hgc-tt-fw, 700));
127 font-style: var(--bkbg-hgc-tt-font-style, normal);
128 text-transform: var(--bkbg-hgc-tt-text-transform, none);
129 text-decoration: var(--bkbg-hgc-tt-text-decoration, none);
130 line-height: var(--bkbg-hgc-tt-line-height-d, var(--bkbg-hgc-tt-lh, 1.3));
131 letter-spacing: var(--bkbg-hgc-tt-letter-spacing-d, normal);
132 word-spacing: var(--bkbg-hgc-tt-word-spacing-d, normal);
133 }
134
135 /* ── Subtitle ── */
136 .bkbg-hgc-app .bkbg-hgc-subtitle {
137 margin: 0 0 16px !important;
138 font-family: var(--bkbg-hgc-st-font-family, inherit);
139 font-size: var(--bkbg-hgc-st-font-size-d, var(--bkbg-hgc-st-sz, 14px));
140 font-weight: var(--bkbg-hgc-st-font-weight, var(--bkbg-hgc-st-fw, 400));
141 font-style: var(--bkbg-hgc-st-font-style, normal);
142 text-transform: var(--bkbg-hgc-st-text-transform, none);
143 text-decoration: var(--bkbg-hgc-st-text-decoration, none);
144 line-height: var(--bkbg-hgc-st-line-height-d, var(--bkbg-hgc-st-lh, 1.55));
145 letter-spacing: var(--bkbg-hgc-st-letter-spacing-d, normal);
146 word-spacing: var(--bkbg-hgc-st-word-spacing-d, normal);
147 }
148
149 @media (max-width: 1024px) {
150 .bkbg-hgc-app .bkbg-hgc-title,
151 .bkbg-hgc-app h3.bkbg-hgc-title {
152 font-size: var(--bkbg-hgc-tt-font-size-t, var(--bkbg-hgc-tt-font-size-d, var(--bkbg-hgc-tt-sz, 22px)));
153 line-height: var(--bkbg-hgc-tt-line-height-t, var(--bkbg-hgc-tt-line-height-d, var(--bkbg-hgc-tt-lh, 1.3)));
154 letter-spacing: var(--bkbg-hgc-tt-letter-spacing-t, var(--bkbg-hgc-tt-letter-spacing-d, normal));
155 word-spacing: var(--bkbg-hgc-tt-word-spacing-t, var(--bkbg-hgc-tt-word-spacing-d, normal));
156 }
157 .bkbg-hgc-app .bkbg-hgc-subtitle {
158 font-size: var(--bkbg-hgc-st-font-size-t, var(--bkbg-hgc-st-font-size-d, var(--bkbg-hgc-st-sz, 14px)));
159 line-height: var(--bkbg-hgc-st-line-height-t, var(--bkbg-hgc-st-line-height-d, var(--bkbg-hgc-st-lh, 1.55)));
160 letter-spacing: var(--bkbg-hgc-st-letter-spacing-t, var(--bkbg-hgc-st-letter-spacing-d, normal));
161 word-spacing: var(--bkbg-hgc-st-word-spacing-t, var(--bkbg-hgc-st-word-spacing-d, normal));
162 }
163 }
164
165 @media (max-width: 767px) {
166 .bkbg-hgc-app .bkbg-hgc-title,
167 .bkbg-hgc-app h3.bkbg-hgc-title {
168 font-size: var(--bkbg-hgc-tt-font-size-m, var(--bkbg-hgc-tt-font-size-t, var(--bkbg-hgc-tt-font-size-d, var(--bkbg-hgc-tt-sz, 22px))));
169 line-height: var(--bkbg-hgc-tt-line-height-m, var(--bkbg-hgc-tt-line-height-t, var(--bkbg-hgc-tt-line-height-d, var(--bkbg-hgc-tt-lh, 1.3))));
170 letter-spacing: var(--bkbg-hgc-tt-letter-spacing-m, var(--bkbg-hgc-tt-letter-spacing-t, var(--bkbg-hgc-tt-letter-spacing-d, normal)));
171 word-spacing: var(--bkbg-hgc-tt-word-spacing-m, var(--bkbg-hgc-tt-word-spacing-t, var(--bkbg-hgc-tt-word-spacing-d, normal)));
172 }
173 .bkbg-hgc-app .bkbg-hgc-subtitle {
174 font-size: var(--bkbg-hgc-st-font-size-m, var(--bkbg-hgc-st-font-size-t, var(--bkbg-hgc-st-font-size-d, var(--bkbg-hgc-st-sz, 14px))));
175 line-height: var(--bkbg-hgc-st-line-height-m, var(--bkbg-hgc-st-line-height-t, var(--bkbg-hgc-st-line-height-d, var(--bkbg-hgc-st-lh, 1.55))));
176 letter-spacing: var(--bkbg-hgc-st-letter-spacing-m, var(--bkbg-hgc-st-letter-spacing-t, var(--bkbg-hgc-st-letter-spacing-d, normal)));
177 word-spacing: var(--bkbg-hgc-st-word-spacing-m, var(--bkbg-hgc-st-word-spacing-t, var(--bkbg-hgc-st-word-spacing-d, normal)));
178 }
179 }
180
181 /* ── CTA link ── */
182 .bkbg-hgc-link {
183 display: inline-block;
184 padding: 10px 22px;
185 border-radius: 10px;
186 font-size: 14px;
187 font-weight: 600;
188 text-decoration: none;
189 backdrop-filter: blur(6px);
190 -webkit-backdrop-filter: blur(6px);
191 border: 1px solid rgba(255, 255, 255, 0.25);
192 transition: opacity 0.2s, transform 0.15s;
193 }
194 .bkbg-hgc-link:hover {
195 opacity: 0.85;
196 transform: scale(1.04);
197 }
198
199 /* ── Block wrapper centering ── */
200 .wp-block-blockenberg-holographic-card {
201 display: flex;
202 justify-content: center;
203 }
204
205 /* ── Reset animation on reduced motion ── */
206 @media (prefers-reduced-motion: reduce) {
207 .bkbg-hgc-app {
208 transition: none;
209 }
210 .bkbg-hgc-shine {
211 transition: none;
212 }
213 }
214