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 / newsletter-popup / style.css

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

256 lines 7.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ── Newsletter Popup ── bkbg-nlpop-* ── */
2
3 /* editor placeholder */
4 .bkbg-nlpop-editor-wrap {
5 font-family: system-ui, -apple-system, sans-serif;
6 }
7
8 /* ── overlay ── */
9 .bkbg-nlpop-overlay {
10 position: fixed;
11 inset: 0;
12 display: flex;
13 align-items: center;
14 justify-content: center;
15 z-index: 99998;
16 padding: 20px;
17 box-sizing: border-box;
18 opacity: 0;
19 visibility: hidden;
20 transition: opacity 0.32s ease, visibility 0.32s ease;
21 }
22
23 .bkbg-nlpop-overlay.is-visible {
24 opacity: 1;
25 visibility: visible;
26 }
27
28 /* ── popup box ── */
29 .bkbg-nlpop-box {
30 position: relative;
31 width: 100%;
32 box-sizing: border-box;
33 transform: scale(0.9) translateY(12px);
34 transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
35 overflow: hidden;
36 }
37
38 .bkbg-nlpop-overlay.is-visible .bkbg-nlpop-box {
39 transform: scale(1) translateY(0);
40 }
41
42 /* ── layout variants ── */
43 .bkbg-nlpop-inner {
44 display: block;
45 }
46
47 .bkbg-nlpop-inner.layout-left,
48 .bkbg-nlpop-inner.layout-right {
49 display: flex;
50 align-items: stretch;
51 }
52
53 /* ── side image ── */
54 .bkbg-nlpop-side-img {
55 flex-shrink: 0;
56 width: 42%;
57 background-size: cover;
58 background-position: center;
59 min-height: 200px;
60 }
61
62 /* ── top image ── */
63 .bkbg-nlpop-top-img {
64 width: 100%;
65 height: 180px;
66 background-size: cover;
67 background-position: center;
68 display: block;
69 }
70
71 /* ── content area ── */
72 .bkbg-nlpop-content {
73 flex: 1;
74 min-width: 0;
75 }
76
77 /* ── close button ── */
78 .bkbg-nlpop-close {
79 position: absolute;
80 top: 12px;
81 right: 12px;
82 width: 28px;
83 height: 28px;
84 border-radius: 50%;
85 border: none;
86 display: flex;
87 align-items: center;
88 justify-content: center;
89 cursor: pointer;
90 font-size: 15px;
91 font-weight: 700;
92 line-height: 1;
93 z-index: 2;
94 transition: opacity 0.15s;
95 }
96
97 .bkbg-nlpop-close:hover {
98 opacity: 0.7;
99 }
100
101 /* ── heading & text ── */
102 .bkbg-nlpop-heading {
103 margin: 0 0 10px;
104 font-family: var(--bkbg-nlpop-ht-font-family, inherit);
105 font-size: var(--bkbg-nlpop-ht-font-size-d, 26px);
106 font-weight: var(--bkbg-nlpop-ht-font-weight, 700);
107 font-style: var(--bkbg-nlpop-ht-font-style, normal);
108 text-decoration: var(--bkbg-nlpop-ht-text-decoration, none);
109 text-transform: var(--bkbg-nlpop-ht-text-transform, none);
110 line-height: var(--bkbg-nlpop-ht-line-height-d, 1.25);
111 letter-spacing: var(--bkbg-nlpop-ht-letter-spacing-d, normal);
112 word-spacing: var(--bkbg-nlpop-ht-word-spacing-d, normal);
113 }
114 .bkbg-nlpop-box h2.bkbg-nlpop-heading,
115 .bkbg-nlpop-box .bkbg-nlpop-heading {
116 font-family: var(--bkbg-nlpop-ht-font-family, inherit);
117 font-size: var(--bkbg-nlpop-ht-font-size-d, 26px);
118 font-weight: var(--bkbg-nlpop-ht-font-weight, 700);
119 font-style: var(--bkbg-nlpop-ht-font-style, normal);
120 text-decoration: var(--bkbg-nlpop-ht-text-decoration, none);
121 text-transform: var(--bkbg-nlpop-ht-text-transform, none);
122 line-height: var(--bkbg-nlpop-ht-line-height-d, 1.25);
123 letter-spacing: var(--bkbg-nlpop-ht-letter-spacing-d, normal);
124 word-spacing: var(--bkbg-nlpop-ht-word-spacing-d, normal);
125 }
126
127 .bkbg-nlpop-subtext {
128 margin: 0 0 20px;
129 font-family: var(--bkbg-nlpop-st-font-family, inherit);
130 font-size: var(--bkbg-nlpop-st-font-size-d, 15px);
131 font-weight: var(--bkbg-nlpop-st-font-weight, 400);
132 font-style: var(--bkbg-nlpop-st-font-style, normal);
133 text-decoration: var(--bkbg-nlpop-st-text-decoration, none);
134 text-transform: var(--bkbg-nlpop-st-text-transform, none);
135 line-height: var(--bkbg-nlpop-st-line-height-d, 1.65);
136 letter-spacing: var(--bkbg-nlpop-st-letter-spacing-d, normal);
137 word-spacing: var(--bkbg-nlpop-st-word-spacing-d, normal);
138 }
139
140 /* ── form ── */
141 .bkbg-nlpop-form {
142 display: block;
143 }
144
145 .bkbg-nlpop-email-row {
146 display: flex;
147 gap: 8px;
148 align-items: stretch;
149 }
150
151 .bkbg-nlpop-input {
152 flex: 1;
153 min-width: 0;
154 padding: 10px 14px;
155 border-radius: 8px;
156 border-width: 1.5px;
157 border-style: solid;
158 font-size: 14px;
159 outline: none;
160 box-sizing: border-box;
161 transition: border-color 0.15s;
162 font-family: inherit;
163 }
164
165 .bkbg-nlpop-input:focus {
166 border-color: #6366f1 !important;
167 }
168
169 .bkbg-nlpop-submit {
170 padding: 10px 20px;
171 border: none;
172 border-radius: 8px;
173 font-weight: 700;
174 cursor: pointer;
175 white-space: nowrap;
176 font-family: inherit;
177 transition: opacity 0.15s, transform 0.1s;
178 }
179
180 .bkbg-nlpop-submit:hover {
181 opacity: 0.88;
182 }
183
184 .bkbg-nlpop-submit:active {
185 transform: scale(0.97);
186 }
187
188 .bkbg-nlpop-error {
189 margin-top: 6px;
190 font-size: 12px;
191 color: #ef4444;
192 min-height: 18px;
193 }
194
195 /* ── success state ── */
196 .bkbg-nlpop-success {
197 display: none;
198 flex-direction: column;
199 align-items: center;
200 justify-content: center;
201 text-align: center;
202 padding: 20px 0 4px;
203 }
204
205 .bkbg-nlpop-success.is-visible {
206 display: flex;
207 }
208
209 .bkbg-nlpop-success-icon {
210 font-size: 40px;
211 margin-bottom: 10px;
212 line-height: 1;
213 }
214
215 .bkbg-nlpop-success-msg {
216 font-weight: 700;
217 font-size: 16px;
218 margin: 0 0 6px;
219 }
220
221 .bkbg-nlpop-success-sub {
222 font-size: 13px;
223 margin: 0;
224 opacity: 0.75;
225 }
226
227 /* ── responsive ── */
228 @media (max-width: 1024px) {
229 .bkbg-nlpop-box .bkbg-nlpop-heading { font-size: var(--bkbg-nlpop-ht-font-size-t, var(--bkbg-nlpop-ht-font-size-d, 26px)); line-height: var(--bkbg-nlpop-ht-line-height-t, var(--bkbg-nlpop-ht-line-height-d, 1.25)); letter-spacing: var(--bkbg-nlpop-ht-letter-spacing-t, var(--bkbg-nlpop-ht-letter-spacing-d, normal)); word-spacing: var(--bkbg-nlpop-ht-word-spacing-t, var(--bkbg-nlpop-ht-word-spacing-d, normal)); }
230 .bkbg-nlpop-subtext { font-size: var(--bkbg-nlpop-st-font-size-t, var(--bkbg-nlpop-st-font-size-d, 15px)); line-height: var(--bkbg-nlpop-st-line-height-t, var(--bkbg-nlpop-st-line-height-d, 1.65)); letter-spacing: var(--bkbg-nlpop-st-letter-spacing-t, var(--bkbg-nlpop-st-letter-spacing-d, normal)); word-spacing: var(--bkbg-nlpop-st-word-spacing-t, var(--bkbg-nlpop-st-word-spacing-d, normal)); }
231 }
232 @media (max-width: 767px) {
233 .bkbg-nlpop-box .bkbg-nlpop-heading { font-size: var(--bkbg-nlpop-ht-font-size-m, 22px); line-height: var(--bkbg-nlpop-ht-line-height-m, var(--bkbg-nlpop-ht-line-height-d, 1.25)); letter-spacing: var(--bkbg-nlpop-ht-letter-spacing-m, var(--bkbg-nlpop-ht-letter-spacing-d, normal)); word-spacing: var(--bkbg-nlpop-ht-word-spacing-m, var(--bkbg-nlpop-ht-word-spacing-d, normal)); }
234 .bkbg-nlpop-subtext { font-size: var(--bkbg-nlpop-st-font-size-m, 13px); line-height: var(--bkbg-nlpop-st-line-height-m, var(--bkbg-nlpop-st-line-height-d, 1.65)); letter-spacing: var(--bkbg-nlpop-st-letter-spacing-m, var(--bkbg-nlpop-st-letter-spacing-d, normal)); word-spacing: var(--bkbg-nlpop-st-word-spacing-m, var(--bkbg-nlpop-st-word-spacing-d, normal)); }
235 }
236 @media (max-width: 560px) {
237 .bkbg-nlpop-inner.layout-left,
238 .bkbg-nlpop-inner.layout-right {
239 display: block;
240 }
241
242 .bkbg-nlpop-side-img {
243 width: 100%;
244 min-height: 140px;
245 }
246
247 .bkbg-nlpop-email-row {
248 flex-direction: column;
249 }
250
251 .bkbg-nlpop-submit {
252 width: 100%;
253 padding: 12px 20px;
254 }
255 }
256