PluginProbe
wpForo Forum / 3.0.2
wpForo Forum v3.0.2
3.1.5 3.1.4 3.1.2 3.1.1 3.1.0 3.0.9 3.0.8 3.0.7 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.10 1.4.11 1.4.12 1.4.13 1.4.2 All 137 releases
wpforo / admin / assets / css / feature-intro.css

feature-intro.css in wpForo Forum 3.0.2, at admin/assets/css/feature-intro.css

366 lines 5.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * wpForo Feature Introduction Modal
3 */
4
5 /* Overlay */
6 .wpf-fi-overlay {
7 position: fixed;
8 top: 0;
9 left: 0;
10 width: 100%;
11 height: 100%;
12 background: rgba(0, 0, 0, 0.6);
13 z-index: 999999;
14 display: flex;
15 align-items: center;
16 justify-content: center;
17 opacity: 0;
18 transition: opacity 0.3s ease;
19 }
20
21 .wpf-fi-overlay.wpf-fi-visible {
22 opacity: 1;
23 }
24
25 /* Modal */
26 .wpf-fi-modal {
27 background: #fff;
28 border-radius: 12px;
29 width: 680px;
30 max-width: calc(100vw - 40px);
31 max-height: calc(100vh - 60px);
32 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
33 position: relative;
34 display: flex;
35 flex-direction: column;
36 overflow: hidden;
37 transform: translateY(20px) scale(0.97);
38 transition: transform 0.3s ease;
39 }
40
41 .wpf-fi-overlay.wpf-fi-visible .wpf-fi-modal {
42 transform: translateY(0) scale(1);
43 }
44
45 /* Close button */
46 .wpf-fi-close {
47 position: absolute;
48 top: 12px;
49 right: 12px;
50 z-index: 10;
51 background: rgba(255, 255, 255, 0.9);
52 border: none;
53 font-size: 24px;
54 line-height: 28px;
55 width: 32px;
56 height: 32px;
57 border-radius: 50%;
58 cursor: pointer;
59 color: #666;
60 display: flex;
61 align-items: center;
62 justify-content: center;
63 transition: all 0.2s;
64 }
65
66 .wpf-fi-close:hover {
67 background: #fff;
68 color: #333;
69 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
70 }
71
72 /* Slides container */
73 .wpf-fi-slides-wrap {
74 position: relative;
75 overflow: hidden;
76 flex: 1;
77 overflow-y: auto;
78 }
79
80 /* Individual slide */
81 .wpf-fi-slide {
82 display: none;
83 animation: wpfFiFadeIn 0.3s ease;
84 }
85
86 .wpf-fi-slide.wpf-fi-active {
87 display: block;
88 }
89
90 @keyframes wpfFiFadeIn {
91 from { opacity: 0; transform: translateX(20px); }
92 to { opacity: 1; transform: translateX(0); }
93 }
94
95 /* Image area */
96 .wpf-fi-image-wrap {
97 background: #f0f4f8;
98 padding: 20px 24px 12px;
99 text-align: center;
100 border-bottom: 1px solid #e5e9ef;
101 }
102
103 .wpf-fi-image-wrap img {
104 max-width: 100%;
105 max-height: 280px;
106 height: auto;
107 border-radius: 6px;
108 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
109 }
110
111 /* Content area */
112 .wpf-fi-content {
113 padding: 24px 32px 16px;
114 }
115
116 .wpf-fi-title {
117 font-size: 22px;
118 font-weight: 700;
119 color: #1d2327;
120 margin: 0 0 8px;
121 line-height: 1.3;
122 }
123
124 .wpf-fi-desc {
125 font-size: 14px;
126 color: #50575e;
127 margin: 0 0 16px;
128 line-height: 1.6;
129 }
130
131 /* Feature list */
132 .wpf-fi-features {
133 list-style: none;
134 margin: 0 0 8px;
135 padding: 0;
136 display: grid;
137 grid-template-columns: 1fr 1fr;
138 gap: 6px 16px;
139 }
140
141 .wpf-fi-features li {
142 font-size: 13px;
143 color: #3c434a;
144 padding-left: 20px;
145 position: relative;
146 line-height: 1.5;
147 }
148
149 .wpf-fi-features li::before {
150 content: '\2713';
151 position: absolute;
152 left: 0;
153 color: #00a32a;
154 font-weight: 700;
155 font-size: 14px;
156 }
157
158 /* Steps list */
159 .wpf-fi-steps {
160 margin: 0 0 12px;
161 padding: 0 0 0 24px;
162 }
163
164 .wpf-fi-steps li {
165 font-size: 14px;
166 color: #3c434a;
167 margin-bottom: 8px;
168 line-height: 1.5;
169 padding-left: 4px;
170 }
171
172 .wpf-fi-steps li::marker {
173 color: #2271b1;
174 font-weight: 700;
175 }
176
177 /* Highlight box */
178 .wpf-fi-highlight {
179 background: linear-gradient(135deg, #e6f7e6, #d4edda);
180 border: 1px solid #a3d9a5;
181 border-radius: 6px;
182 padding: 10px 16px;
183 font-size: 14px;
184 font-weight: 600;
185 color: #155724;
186 text-align: center;
187 }
188
189 /* Tip box */
190 .wpf-fi-tip {
191 background: #f0f6fc;
192 border: 1px solid #c3d4e5;
193 border-radius: 6px;
194 padding: 10px 16px;
195 font-size: 13px;
196 color: #2c3338;
197 line-height: 1.5;
198 }
199
200 /* Navigation */
201 .wpf-fi-nav {
202 display: flex;
203 align-items: center;
204 justify-content: center;
205 gap: 12px;
206 padding: 8px 16px 4px;
207 }
208
209 .wpf-fi-arrow {
210 width: 36px;
211 height: 36px;
212 border-radius: 50%;
213 border: 1px solid #d0d5dd;
214 background: #fff;
215 font-size: 22px;
216 line-height: 1;
217 color: #50575e;
218 cursor: pointer;
219 display: flex;
220 align-items: center;
221 justify-content: center;
222 transition: all 0.2s;
223 flex-shrink: 0;
224 padding: 0;
225 }
226
227 .wpf-fi-arrow:hover {
228 background: #f0f0f1;
229 border-color: #999;
230 color: #1d2327;
231 }
232
233 .wpf-fi-arrow:disabled,
234 .wpf-fi-arrow.wpf-fi-hidden {
235 opacity: 0.3;
236 cursor: default;
237 pointer-events: none;
238 }
239
240 .wpf-fi-dots {
241 display: inline-flex;
242 gap: 8px;
243 }
244
245 .wpf-fi-dot {
246 width: 10px;
247 height: 10px;
248 border-radius: 50%;
249 background: #d0d5dd;
250 cursor: pointer;
251 transition: all 0.2s;
252 }
253
254 .wpf-fi-dot:hover {
255 background: #98a2b3;
256 }
257
258 .wpf-fi-dot.wpf-fi-active {
259 background: #2271b1;
260 transform: scale(1.2);
261 }
262
263 /* Actions bar */
264 .wpf-fi-actions {
265 display: flex;
266 align-items: center;
267 justify-content: space-between;
268 padding: 12px 24px 16px;
269 border-top: 1px solid #eee;
270 gap: 12px;
271 }
272
273 .wpf-fi-actions-left {
274 flex: 1;
275 }
276
277 .wpf-fi-actions-right {
278 display: flex;
279 gap: 8px;
280 flex-shrink: 0;
281 }
282
283 /* Opt-out checkbox */
284 .wpf-fi-opt-out {
285 font-size: 12px;
286 color: #888;
287 cursor: pointer;
288 display: flex;
289 align-items: center;
290 gap: 6px;
291 }
292
293 .wpf-fi-opt-out input[type="checkbox"] {
294 margin: 0;
295 }
296
297 /* Buttons */
298 .wpf-fi-btn {
299 display: inline-flex;
300 align-items: center;
301 padding: 8px 20px;
302 border-radius: 6px;
303 font-size: 14px;
304 font-weight: 500;
305 cursor: pointer;
306 text-decoration: none;
307 border: none;
308 transition: all 0.2s;
309 white-space: nowrap;
310 line-height: 1.4;
311 }
312
313 .wpf-fi-btn-primary {
314 background: #2271b1;
315 color: #fff;
316 }
317
318 .wpf-fi-btn-primary:hover {
319 background: #135e96;
320 color: #fff;
321 }
322
323 .wpf-fi-btn-secondary {
324 background: #f0f0f1;
325 color: #50575e;
326 }
327
328 .wpf-fi-btn-secondary:hover {
329 background: #e0e0e1;
330 color: #2c3338;
331 }
332
333 /* Responsive */
334 @media (max-width: 720px) {
335 .wpf-fi-modal {
336 width: calc(100vw - 20px);
337 max-height: calc(100vh - 40px);
338 border-radius: 8px;
339 }
340
341 .wpf-fi-content {
342 padding: 16px 20px 12px;
343 }
344
345 .wpf-fi-features {
346 grid-template-columns: 1fr;
347 }
348
349 .wpf-fi-image-wrap img {
350 max-height: 180px;
351 }
352
353 .wpf-fi-actions {
354 flex-direction: column;
355 align-items: stretch;
356 }
357
358 .wpf-fi-actions-left {
359 text-align: center;
360 }
361
362 .wpf-fi-actions-right {
363 justify-content: center;
364 }
365 }
366