PluginProbe ʕ •ᴥ•ʔ
Download Manager / 3.3.63
Download Manager v3.3.63
3.3.65 3.3.64 3.3.63 3.3.62 3.3.61 3.3.60 3.3.59 3.3.58 3.3.57 3.3.56 trunk 2.1.3 2.3.0 2.5.96 2.5.97 2.6.2 2.6.96 2.8.3 2.9.99 3.0.4 3.1.05 3.1.07 3.1.08 3.1.11 3.1.12 3.1.14 3.1.17 3.1.18 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.2.04 3.2.13 3.2.14 3.2.16 3.2.18 3.2.19 3.2.21 3.2.22 3.2.23 3.2.24 3.2.25 3.2.27 3.2.28 3.2.29 3.2.30 3.2.31 3.2.32 3.2.33 3.2.34 3.2.35 3.2.37 3.2.38 3.2.39 3.2.40 3.2.41 3.2.42 3.2.43 3.2.44 3.2.45 3.2.46 3.2.47 3.2.48 3.2.49 3.2.50 3.2.51 3.2.52 3.2.53 3.2.54 3.2.55 3.2.56 3.2.57 3.2.58 3.2.59 3.2.60 3.2.61 3.2.63 3.2.64 3.2.65 3.2.66 3.2.67 3.2.68 3.2.69 3.2.70 3.2.71 3.2.72 3.2.73 3.2.74 3.2.75 3.2.76 3.2.77 3.2.78 3.2.79 3.2.80 3.2.81 3.2.82 3.2.83 3.2.84 3.2.85 3.2.86 3.2.87 3.2.88 3.2.89 3.2.90 3.2.91 3.2.92 3.2.93 3.2.94 3.2.95 3.2.96 3.2.97 3.2.98 3.2.99 3.3.00 3.3.01 3.3.02 3.3.03 3.3.04 3.3.05 3.3.06 3.3.07 3.3.08 3.3.09 3.3.10 3.3.11 3.3.12 3.3.13 3.3.14 3.3.15 3.3.16 3.3.17 3.3.18 3.3.19 3.3.20 3.3.21 3.3.22 3.3.23 3.3.24 3.3.25 3.3.26 3.3.27 3.3.28 3.3.29 3.3.30 3.3.31 3.3.32 3.3.33 3.3.34 3.3.35 3.3.36 3.3.37 3.3.38 3.3.39 3.3.40 3.3.41 3.3.42 3.3.43 3.3.44 3.3.45 3.3.46 3.3.47 3.3.48 3.3.49 3.3.50 3.3.51 3.3.52 3.3.53 3.3.54 3.3.55
download-manager / assets / css / wpdm-elegant-history.css
download-manager / assets / css Last commit date
admin-styles.css 2 weeks ago admin-styles.min.css 2 weeks ago author-dashboard.css 2 weeks ago author-dashboard.min.css 2 weeks ago front-dark.css 5 months ago front-dark.min.css 5 months ago front.css 2 weeks ago front.min.css 2 weeks ago gutenberg-styles.css 5 years ago gutenberg-styles.min.css 7 months ago jquery.dataTables.css 6 years ago jquery.dataTables.min.css 1 year ago jqueryFileTree.css 5 years ago jqueryFileTree.min.css 5 years ago kitchen-sink.html 2 weeks ago wpdm-dashboard.css 2 weeks ago wpdm-dashboard.min.css 2 weeks ago wpdm-elegant-history.css 2 weeks ago wpdm-elegant-history.min.css 2 weeks ago wpdm-elegant-insights.css 2 weeks ago wpdm-elegant-insights.min.css 2 weeks ago wpdm-elegant-overview.css 2 weeks ago wpdm-elegant-overview.min.css 2 weeks ago wpdm-gallery.css 2 weeks ago wpdm-lock-options.css 2 weeks ago
wpdm-elegant-history.css
863 lines
1 /* ==========================================================================
2 WPDM Stats — Download History
3 Refined minimal admin UI on the shared stats design system. Accents come
4 from the plugin-wide brand token (--color-primary), so this page follows
5 the user's chosen UI color and matches the rest of the admin.
6 ========================================================================== */
7
8 .w3eden {
9 --st-accent: var(--color-primary, #4a8eff);
10 --st-accent-rgb: var(--color-primary-rgb, 74, 142, 255);
11
12 --st-surface: #ffffff;
13 --st-surface-2: #f5f7fa;
14 --st-border: #e6eaf0;
15 --st-border-2: #eef1f5;
16 --st-border-strong: #d7dde6;
17
18 --st-text: #1f2733;
19 --st-text-2: #5a6675;
20 --st-text-3: #8a97a7;
21
22 --st-radius: 14px;
23 --st-radius-sm: 10px;
24 --st-shadow: 0 1px 2px rgba(20, 28, 42, 0.05);
25 --st-shadow-md: 0 6px 20px rgba(20, 28, 42, 0.07);
26
27 --st-pos: #1aa260;
28 --st-neg: #e5484d;
29 }
30
31 /* Shared card chrome */
32 .w3eden .wpdm-history-filters,
33 .w3eden .results-header,
34 .w3eden .elegant-table-container {
35 background: var(--st-surface);
36 border: 1px solid var(--st-border);
37 border-radius: var(--st-radius);
38 box-shadow: var(--st-shadow);
39 }
40
41 /* --------------------------------------------------------------------------
42 Filters panel
43 -------------------------------------------------------------------------- */
44 .w3eden .wpdm-history-filters { overflow: hidden; }
45
46 .w3eden .filter-header {
47 display: flex;
48 align-items: center;
49 justify-content: space-between;
50 gap: 12px;
51 padding: 15px 20px;
52 border-bottom: 1px solid var(--st-border-2);
53 background: var(--st-surface);
54 }
55
56 .w3eden .filter-title {
57 display: flex;
58 align-items: center;
59 gap: 10px;
60 }
61
62 .w3eden .filter-title i { color: var(--st-accent); font-size: 0.95rem; }
63
64 .w3eden .filter-title h3 {
65 margin: 0;
66 font-size: 1rem;
67 font-weight: 650;
68 color: var(--st-text);
69 }
70
71 .w3eden .active-filters-badge {
72 display: inline-flex;
73 align-items: center;
74 gap: 6px;
75 padding: 4px 11px;
76 background: rgba(var(--st-accent-rgb), 0.08);
77 border: 1px solid rgba(var(--st-accent-rgb), 0.16);
78 border-radius: 999px;
79 color: var(--st-accent);
80 font-size: 0.72rem;
81 font-weight: 600;
82 }
83
84 /* Quick date presets */
85 .w3eden .quick-filters-section {
86 display: flex;
87 align-items: center;
88 flex-wrap: wrap;
89 gap: 12px;
90 padding: 14px 20px;
91 border-bottom: 1px solid var(--st-border-2);
92 }
93
94 .w3eden .quick-filters-title {
95 display: flex;
96 align-items: center;
97 gap: 7px;
98 font-size: 0.7rem;
99 font-weight: 600;
100 text-transform: uppercase;
101 letter-spacing: 0.04em;
102 color: var(--st-text-3);
103 }
104
105 .w3eden .quick-filters-title i { color: var(--st-text-3); }
106
107 .w3eden .quick-filter-buttons {
108 display: flex;
109 flex-wrap: wrap;
110 gap: 8px;
111 }
112
113 .w3eden .quick-filter-btn {
114 display: inline-flex;
115 align-items: center;
116 gap: 6px;
117 padding: 6px 12px;
118 background: var(--st-surface);
119 border: 1px solid var(--st-border);
120 border-radius: 999px;
121 color: var(--st-text-2);
122 font-size: 0.78rem;
123 font-weight: 500;
124 cursor: pointer;
125 transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
126 }
127
128 .w3eden .quick-filter-btn i { font-size: 0.78rem; opacity: 0.8; }
129
130 .w3eden .quick-filter-btn:hover {
131 border-color: var(--st-border-strong);
132 background: var(--st-surface-2);
133 color: var(--st-text);
134 }
135
136 .w3eden .quick-filter-btn.active {
137 background: rgba(var(--st-accent-rgb), 0.10);
138 border-color: rgba(var(--st-accent-rgb), 0.30);
139 color: var(--st-accent);
140 }
141
142 /* Filters grid */
143 .w3eden .filters-grid {
144 display: grid;
145 grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
146 gap: 18px;
147 align-items: start;
148 padding: 18px 20px;
149 }
150
151 .w3eden .filter-section.date-section { grid-column: span 2; }
152
153 .w3eden .section-header {
154 display: flex;
155 align-items: center;
156 gap: 8px;
157 margin-bottom: 9px;
158 }
159
160 .w3eden .section-header i { color: var(--st-accent); font-size: 0.85rem; }
161
162 .w3eden .section-header h4 {
163 margin: 0;
164 font-size: 0.78rem;
165 font-weight: 600;
166 color: var(--st-text-2);
167 text-transform: uppercase;
168 letter-spacing: 0.03em;
169 }
170
171 .w3eden .clear-filter { margin-left: auto; }
172
173 .w3eden .clear-btn {
174 display: inline-flex;
175 align-items: center;
176 justify-content: center;
177 width: 22px;
178 height: 22px;
179 border-radius: 6px;
180 color: var(--st-text-3);
181 text-decoration: none;
182 transition: background 0.15s ease, color 0.15s ease;
183 }
184
185 .w3eden .clear-btn:hover { background: rgba(229, 72, 77, 0.10); color: var(--st-neg); }
186
187 .w3eden .date-inputs {
188 display: grid;
189 grid-template-columns: 1fr 1fr;
190 gap: 12px;
191 }
192
193 .w3eden .date-input-group { display: flex; flex-direction: column; gap: 5px; }
194
195 /* Inputs + Select2 (made to match) */
196 .w3eden .wpdm-history-filters .datepicker.form-control,
197 .w3eden .wpdm-history-filters .form-control {
198 height: auto;
199 padding: 9px 12px;
200 background: var(--st-surface);
201 border: 1px solid var(--st-border);
202 border-radius: 8px;
203 color: var(--st-text);
204 font-size: 0.84rem;
205 box-shadow: none;
206 cursor: pointer;
207 }
208
209 .w3eden .wpdm-history-filters .form-control:focus {
210 border-color: var(--st-accent);
211 box-shadow: 0 0 0 3px rgba(var(--st-accent-rgb), 0.16);
212 }
213
214 .w3eden .select2-container { width: 100% !important; }
215
216 .w3eden .select2-container--default .select2-selection--multiple,
217 .w3eden .select2-selection {
218 min-height: 40px;
219 padding: 2px 8px;
220 background: var(--st-surface);
221 border: 1px solid var(--st-border) !important;
222 border-radius: 8px;
223 }
224
225 .w3eden .select2-container--default.select2-container--focus .select2-selection--multiple {
226 border-color: var(--st-accent) !important;
227 box-shadow: 0 0 0 3px rgba(var(--st-accent-rgb), 0.16);
228 }
229
230 .w3eden .select2-container--default .select2-selection--multiple .select2-selection__choice {
231 margin: 4px 4px 0 0;
232 padding: 2px 8px;
233 background: rgba(var(--st-accent-rgb), 0.10);
234 border: 1px solid rgba(var(--st-accent-rgb), 0.20);
235 border-radius: 6px;
236 color: var(--st-text);
237 font-size: 0.78rem;
238 }
239
240 .w3eden .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
241 position: relative !important;
242 color: var(--st-text-3);
243 margin-right: 5px;
244 }
245
246 .w3eden .select2-dropdown {
247 border: 1px solid var(--st-border);
248 border-radius: 8px;
249 box-shadow: var(--st-shadow-md);
250 }
251
252 .w3eden .select2-container--default .select2-results__option--highlighted[aria-selected] {
253 background: var(--st-accent);
254 }
255
256 /* Action buttons */
257 .w3eden .filter-actions {
258 display: flex;
259 flex-wrap: wrap;
260 gap: 10px;
261 padding: 0 20px 18px;
262 }
263
264 .w3eden .filter-actions .btn {
265 display: inline-flex;
266 align-items: center;
267 gap: 7px;
268 padding: 9px 16px;
269 border-radius: 8px;
270 font-size: 0.84rem;
271 font-weight: 600;
272 }
273
274 .w3eden .filter-actions .btn-secondary {
275 background: var(--st-surface);
276 border: 1px solid var(--st-border);
277 color: var(--st-text-2);
278 box-shadow: none;
279 }
280
281 .w3eden .filter-actions .btn-secondary:hover {
282 border-color: var(--st-border-strong);
283 background: var(--st-surface-2);
284 color: var(--st-text);
285 }
286
287 /* --------------------------------------------------------------------------
288 Results header
289 -------------------------------------------------------------------------- */
290 .w3eden .results-header {
291 display: flex;
292 align-items: center;
293 justify-content: space-between;
294 flex-wrap: wrap;
295 gap: 14px;
296 padding: 13px 18px;
297 margin-bottom: 16px;
298 }
299
300 .w3eden .results-info {
301 display: flex;
302 align-items: center;
303 flex-wrap: wrap;
304 gap: 16px;
305 }
306
307 .w3eden .results-count {
308 display: flex;
309 align-items: center;
310 gap: 8px;
311 font-size: 0.86rem;
312 color: var(--st-text-2);
313 }
314
315 .w3eden .results-count i { color: var(--st-accent); }
316 .w3eden .results-count strong { color: var(--st-text); font-variant-numeric: tabular-nums; }
317
318 .w3eden .results-pagination-info {
319 display: flex;
320 align-items: center;
321 gap: 7px;
322 font-size: 0.78rem;
323 color: var(--st-text-3);
324 }
325
326 /* View toggle (segmented control) */
327 .w3eden .view-toggle {
328 display: inline-flex;
329 gap: 2px;
330 padding: 3px;
331 background: var(--st-surface-2);
332 border: 1px solid var(--st-border);
333 border-radius: 9px;
334 }
335
336 .w3eden .view-btn {
337 display: inline-flex;
338 align-items: center;
339 gap: 6px;
340 padding: 6px 12px;
341 background: transparent;
342 border: none;
343 border-radius: 6px;
344 color: var(--st-text-2);
345 font-size: 0.8rem;
346 font-weight: 500;
347 cursor: pointer;
348 transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
349 }
350
351 .w3eden .view-btn:hover { color: var(--st-text); }
352
353 .w3eden .view-btn.active {
354 background: var(--st-surface);
355 color: var(--st-accent);
356 box-shadow: 0 1px 2px rgba(20, 28, 42, 0.08);
357 }
358
359 /* --------------------------------------------------------------------------
360 Results table
361 -------------------------------------------------------------------------- */
362 .w3eden .elegant-table-container { overflow: hidden; }
363
364 .w3eden .table-wrapper { overflow-x: auto; }
365
366 .w3eden .elegant-table {
367 width: 100%;
368 border-collapse: collapse;
369 }
370
371 .w3eden .elegant-table thead th {
372 padding: 11px 16px;
373 background: var(--st-surface-2);
374 border-bottom: 1px solid var(--st-border);
375 text-align: left;
376 vertical-align: middle;
377 white-space: nowrap;
378 }
379
380 .w3eden .th-content {
381 display: flex;
382 align-items: center;
383 gap: 7px;
384 font-size: 0.72rem;
385 font-weight: 600;
386 text-transform: uppercase;
387 letter-spacing: 0.04em;
388 color: var(--st-text-3);
389 }
390
391 .w3eden .th-content > i:first-child { color: var(--st-text-3); font-size: 0.75rem; }
392
393 .w3eden th.sortable { cursor: pointer; transition: background 0.15s ease; }
394 .w3eden th.sortable:hover { background: var(--st-border-2); }
395
396 .w3eden .sort-icon { margin-left: auto; opacity: 0.4; font-size: 0.7rem; }
397 .w3eden .sortable:hover .sort-icon { opacity: 0.7; }
398 .w3eden .sort-asc .sort-icon,
399 .w3eden .sort-desc .sort-icon { opacity: 1; color: var(--st-accent); }
400
401 .w3eden .elegant-table tbody td {
402 padding: 12px 16px;
403 border-bottom: 1px solid var(--st-border-2);
404 vertical-align: middle;
405 font-size: 0.84rem;
406 color: var(--st-text);
407 }
408
409 .w3eden .elegant-row { transition: background 0.12s ease; }
410 .w3eden .elegant-row:hover,
411 .w3eden .elegant-row.row-hovered { background: var(--st-surface-2); }
412 .w3eden .elegant-table tbody tr:last-child td { border-bottom: none; }
413
414 /* Package cell */
415 .w3eden .package-info {
416 display: flex;
417 align-items: center;
418 justify-content: space-between;
419 gap: 10px;
420 }
421
422 .w3eden .package-link {
423 color: var(--st-text);
424 font-weight: 600;
425 text-decoration: none;
426 }
427
428 .w3eden .package-link:hover .package-title { color: var(--st-accent); }
429 .w3eden .package-title { transition: color 0.15s ease; }
430
431 .w3eden .package-actions {
432 display: flex;
433 gap: 4px;
434 opacity: 0;
435 transition: opacity 0.15s ease;
436 }
437
438 .w3eden .elegant-row:hover .package-actions { opacity: 1; }
439
440 .w3eden .action-link {
441 display: inline-flex;
442 align-items: center;
443 justify-content: center;
444 width: 26px;
445 height: 26px;
446 border-radius: 6px;
447 background: var(--st-surface-2);
448 border: 1px solid var(--st-border);
449 color: var(--st-text-3);
450 font-size: 0.74rem;
451 text-decoration: none;
452 transition: all 0.15s ease;
453 }
454
455 .w3eden .action-link:hover {
456 border-color: rgba(var(--st-accent-rgb), 0.30);
457 background: rgba(var(--st-accent-rgb), 0.08);
458 color: var(--st-accent);
459 }
460
461 /* File cell */
462 .w3eden .file-info { display: flex; align-items: center; gap: 8px; }
463 .w3eden .file-icon { color: var(--st-text-3); font-size: 0.9rem; }
464 .w3eden .filename { color: var(--st-text-2); }
465
466 /* Version cell */
467 .w3eden .version-badge {
468 display: inline-block;
469 padding: 2px 9px;
470 background: var(--st-surface-2);
471 border: 1px solid var(--st-border);
472 border-radius: 999px;
473 font-size: 0.74rem;
474 font-weight: 600;
475 color: var(--st-text-2);
476 font-variant-numeric: tabular-nums;
477 }
478
479 .w3eden .no-version { color: var(--st-text-3); }
480
481 /* Date & time cell */
482 .w3eden .datetime-info { display: flex; flex-direction: column; gap: 2px; }
483 .w3eden .dt-date { font-weight: 600; color: var(--st-text); font-variant-numeric: tabular-nums; }
484 .w3eden .dt-meta { font-size: 0.74rem; color: var(--st-text-3); font-variant-numeric: tabular-nums; }
485
486 /* User cell */
487 .w3eden .user-info { display: flex; align-items: center; gap: 9px; }
488
489 .w3eden .user-avatar {
490 display: inline-flex;
491 align-items: center;
492 justify-content: center;
493 width: 30px;
494 height: 30px;
495 border-radius: 8px;
496 background: rgba(var(--st-accent-rgb), 0.10);
497 color: var(--st-accent);
498 font-size: 0.95rem;
499 flex-shrink: 0;
500 }
501
502 .w3eden .user-avatar.guest-avatar { background: var(--st-surface-2); color: var(--st-text-3); }
503
504 .w3eden .user-main { display: flex; align-items: center; gap: 7px; min-width: 0; }
505 .w3eden .user-link { color: var(--st-text); font-weight: 600; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
506 .w3eden .user-link:hover .user-name { color: var(--st-accent); }
507 .w3eden .user-name { transition: color 0.15s ease; }
508 .w3eden .guest-name { color: var(--st-text-3); font-weight: 500; }
509
510 .w3eden .user-edit {
511 display: inline-flex;
512 align-items: center;
513 justify-content: center;
514 width: 22px;
515 height: 22px;
516 border-radius: 6px;
517 background: var(--st-surface-2);
518 border: 1px solid var(--st-border);
519 color: var(--st-text-3);
520 font-size: 0.66rem;
521 text-decoration: none;
522 opacity: 0;
523 flex-shrink: 0;
524 transition: opacity 0.15s ease, color 0.15s ease, border-color 0.15s ease;
525 }
526
527 .w3eden .elegant-row:hover .user-edit { opacity: 1; }
528 .w3eden .user-edit:hover { color: var(--st-accent); border-color: rgba(var(--st-accent-rgb), 0.30); }
529
530 /* Location cell */
531 .w3eden .location-info { display: flex; flex-direction: column; gap: 2px; }
532 .w3eden .country-info { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: var(--st-text); }
533 .w3eden .country-info i { color: var(--st-text-3); font-size: 0.78rem; }
534 .w3eden .ip-link { color: var(--st-text-3); font-size: 0.74rem; text-decoration: none; font-variant-numeric: tabular-nums; }
535 .w3eden .ip-link:hover { color: var(--st-accent); }
536 .w3eden .location-unknown { display: inline-flex; align-items: center; gap: 6px; color: var(--st-text-3); }
537
538 /* System cell */
539 .w3eden .system-info { display: flex; flex-direction: column; gap: 2px; }
540 .w3eden .browser-info { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; color: var(--st-text); }
541 .w3eden .browser-info .browser-icon { color: var(--st-text-3); font-size: 0.82rem; width: 16px; text-align: center; }
542 .w3eden .os-info { font-size: 0.78rem; color: var(--st-text-2); padding-left: 23px; }
543
544 /* --------------------------------------------------------------------------
545 Card view
546 -------------------------------------------------------------------------- */
547 .w3eden .cards-wrapper { display: none; }
548
549 .w3eden .elegant-table-container.card-view .table-wrapper { display: none; }
550
551 .w3eden .elegant-table-container.card-view .cards-wrapper {
552 display: grid;
553 grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
554 gap: 16px;
555 padding: 18px;
556 }
557
558 .w3eden .download-card {
559 background: var(--st-surface);
560 border: 1px solid var(--st-border);
561 border-radius: var(--st-radius);
562 overflow: hidden;
563 transition: box-shadow 0.2s ease, border-color 0.2s ease;
564 }
565
566 .w3eden .download-card::before { content: none; }
567
568 .w3eden .download-card:hover,
569 .w3eden .download-card.card-hovered {
570 border-color: var(--st-border-strong);
571 box-shadow: var(--st-shadow-md);
572 }
573
574 .w3eden .download-card .card-header {
575 display: flex;
576 align-items: center;
577 justify-content: space-between;
578 gap: 10px;
579 padding: 13px 16px;
580 border-bottom: 1px solid var(--st-border-2);
581 background: var(--st-surface-2);
582 }
583
584 .w3eden .card-package-title { margin: 0; font-size: 0.9rem; font-weight: 650; }
585 .w3eden .card-package-title a { color: var(--st-text); text-decoration: none; }
586 .w3eden .card-package-title a:hover { color: var(--st-accent); }
587
588 .w3eden .card-package-actions { display: flex; gap: 4px; flex-shrink: 0; }
589
590 .w3eden .card-action-link {
591 display: inline-flex;
592 align-items: center;
593 justify-content: center;
594 width: 26px;
595 height: 26px;
596 border-radius: 6px;
597 background: var(--st-surface);
598 border: 1px solid var(--st-border);
599 color: var(--st-text-3);
600 font-size: 0.74rem;
601 text-decoration: none;
602 transition: all 0.15s ease;
603 }
604
605 .w3eden .card-action-link:hover {
606 border-color: rgba(var(--st-accent-rgb), 0.30);
607 color: var(--st-accent);
608 }
609
610 .w3eden .card-body { padding: 6px 16px 14px; }
611
612 .w3eden .card-field {
613 display: flex;
614 align-items: flex-start;
615 justify-content: space-between;
616 gap: 14px;
617 padding: 9px 0;
618 border-bottom: 1px solid var(--st-border-2);
619 }
620
621 .w3eden .card-field:last-child { border-bottom: none; }
622
623 .w3eden .card-field-label {
624 display: flex;
625 align-items: center;
626 gap: 7px;
627 font-size: 0.74rem;
628 font-weight: 500;
629 color: var(--st-text-3);
630 white-space: nowrap;
631 }
632
633 .w3eden .card-field-label i { font-size: 0.74rem; width: 14px; text-align: center; }
634
635 .w3eden .card-field-value { text-align: right; font-size: 0.82rem; color: var(--st-text); min-width: 0; }
636
637 .w3eden .card-version-badge {
638 display: inline-block;
639 padding: 2px 9px;
640 background: var(--st-surface-2);
641 border: 1px solid var(--st-border);
642 border-radius: 999px;
643 font-size: 0.72rem;
644 font-weight: 600;
645 color: var(--st-text-2);
646 }
647
648 .w3eden .card-datetime { display: flex; flex-direction: column; gap: 1px; }
649 .w3eden .card-date { font-weight: 600; }
650 .w3eden .card-time { font-size: 0.78rem; color: var(--st-text-2); }
651 .w3eden .card-relative-time { font-size: 0.72rem; color: var(--st-text-3); }
652
653 .w3eden .card-user-info { display: inline-flex; align-items: center; gap: 7px; }
654 .w3eden .card-user-avatar { color: var(--st-text-3); }
655 .w3eden .card-user-name { color: var(--st-text); font-weight: 600; text-decoration: none; }
656 .w3eden .card-user-name:hover { color: var(--st-accent); }
657
658 .w3eden .card-location-info { display: flex; flex-direction: column; gap: 2px; align-items: flex-end; }
659 .w3eden .card-country { display: inline-flex; align-items: center; gap: 5px; font-weight: 600; }
660 .w3eden .card-country i { color: var(--st-text-3); font-size: 0.74rem; }
661 .w3eden .card-location-link { color: var(--st-text-3); font-size: 0.74rem; text-decoration: none; font-variant-numeric: tabular-nums; }
662 .w3eden .card-location-link:hover { color: var(--st-accent); }
663
664 .w3eden .card-system-info { display: flex; flex-direction: column; gap: 2px; align-items: flex-end; }
665 .w3eden .card-browser { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
666 .w3eden .card-browser i { color: var(--st-text-3); }
667 .w3eden .card-os { display: inline-flex; align-items: center; gap: 6px; font-size: 0.78rem; color: var(--st-text-2); }
668 .w3eden .card-os i { color: var(--st-text-3); }
669
670 /* --------------------------------------------------------------------------
671 Table footer + pagination
672 -------------------------------------------------------------------------- */
673 .w3eden .table-footer {
674 display: flex;
675 align-items: center;
676 justify-content: space-between;
677 flex-wrap: wrap;
678 gap: 12px;
679 padding: 14px 18px;
680 border-top: 1px solid var(--st-border-2);
681 }
682
683 .w3eden .elegant-pagination .pagination-list {
684 display: flex;
685 flex-wrap: wrap;
686 gap: 4px;
687 margin: 0;
688 padding: 0;
689 list-style: none;
690 }
691
692 .w3eden .pagination-item,
693 .w3eden a.pagination-item,
694 .w3eden span.pagination-item {
695 display: inline-flex;
696 align-items: center;
697 justify-content: center;
698 min-width: 36px;
699 height: 36px;
700 padding: 0 10px;
701 background: var(--st-surface);
702 border: 1px solid var(--st-border);
703 border-radius: 8px;
704 color: var(--st-text-2);
705 font-size: 0.82rem;
706 font-weight: 500;
707 text-decoration: none;
708 font-variant-numeric: tabular-nums;
709 transition: all 0.15s ease;
710 }
711
712 .w3eden a.pagination-item:hover {
713 border-color: rgba(var(--st-accent-rgb), 0.35);
714 background: rgba(var(--st-accent-rgb), 0.06);
715 color: var(--st-accent);
716 }
717
718 .w3eden .pagination-item.current {
719 background: var(--st-accent);
720 border-color: var(--st-accent);
721 color: #fff;
722 }
723
724 .w3eden .pagination-item.dots {
725 border-color: transparent;
726 background: transparent;
727 color: var(--st-text-3);
728 }
729
730 .w3eden .table-info {
731 display: flex;
732 align-items: center;
733 gap: 16px;
734 font-size: 0.76rem;
735 color: var(--st-text-3);
736 }
737
738 .w3eden .items-per-page,
739 .w3eden .total-items { display: flex; align-items: center; gap: 6px; }
740 .w3eden .items-per-page i,
741 .w3eden .total-items i { color: var(--st-text-3); }
742
743 /* --------------------------------------------------------------------------
744 Empty state
745 -------------------------------------------------------------------------- */
746 .w3eden .no-results-container {
747 background: var(--st-surface);
748 border: 1px solid var(--st-border);
749 border-radius: var(--st-radius);
750 box-shadow: var(--st-shadow);
751 padding: 56px 24px;
752 }
753
754 .w3eden .no-results-content {
755 max-width: 420px;
756 margin: 0 auto;
757 text-align: center;
758 }
759
760 .w3eden .no-results-icon {
761 display: inline-flex;
762 align-items: center;
763 justify-content: center;
764 width: 56px;
765 height: 56px;
766 margin-bottom: 16px;
767 border-radius: 16px;
768 background: var(--st-surface-2);
769 color: var(--st-text-3);
770 font-size: 1.4rem;
771 }
772
773 .w3eden .no-results-message h4 {
774 margin: 0 0 6px;
775 font-size: 1.05rem;
776 font-weight: 650;
777 color: var(--st-text);
778 }
779
780 .w3eden .no-results-message p { margin: 0 0 20px; font-size: 0.86rem; color: var(--st-text-2); line-height: 1.6; }
781
782 .w3eden .no-results-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }
783
784 .w3eden .btn-elegant {
785 display: inline-flex;
786 align-items: center;
787 gap: 7px;
788 padding: 9px 16px;
789 border-radius: 8px;
790 font-size: 0.84rem;
791 font-weight: 600;
792 text-decoration: none;
793 transition: all 0.15s ease;
794 }
795
796 .w3eden .btn-elegant.primary { background: var(--st-accent); color: #fff; border: 1px solid var(--st-accent); }
797 .w3eden .btn-elegant.primary:hover { filter: brightness(0.95); }
798 .w3eden .btn-elegant.secondary {
799 background: var(--st-surface);
800 border: 1px solid var(--st-border);
801 color: var(--st-text-2);
802 }
803 .w3eden .btn-elegant.secondary:hover { border-color: var(--st-border-strong); color: var(--st-text); }
804
805 /* --------------------------------------------------------------------------
806 Notifications (triggered from JS)
807 -------------------------------------------------------------------------- */
808 .elegant-notification {
809 position: fixed;
810 top: 42px;
811 right: 20px;
812 display: none;
813 min-width: 240px;
814 padding: 12px 16px;
815 background: var(--st-surface, #fff);
816 border: 1px solid var(--st-border, #e6eaf0);
817 border-left: 3px solid var(--st-accent, #4a8eff);
818 border-radius: 10px;
819 box-shadow: 0 6px 20px rgba(20, 28, 42, 0.10);
820 color: var(--st-text, #1f2733);
821 font-size: 0.84rem;
822 z-index: 100001;
823 }
824
825 .elegant-notification i { color: var(--st-accent, #4a8eff); margin-right: 6px; }
826
827 /* --------------------------------------------------------------------------
828 Responsive
829 -------------------------------------------------------------------------- */
830 @media (max-width: 782px) {
831 .w3eden .filters-grid { grid-template-columns: 1fr; }
832 .w3eden .filter-section.date-section { grid-column: auto; }
833 .w3eden .filter-actions { flex-direction: column; }
834 .w3eden .filter-actions .btn { justify-content: center; }
835 .w3eden .results-header { align-items: stretch; }
836
837 .w3eden .elegant-table thead th,
838 .w3eden .elegant-table tbody td { padding: 10px 12px; }
839
840 /* Hide secondary columns on narrow screens */
841 .w3eden .elegant-table .version-cell,
842 .w3eden .elegant-table .system-cell,
843 .w3eden .elegant-table th:nth-child(3),
844 .w3eden .elegant-table th:nth-child(7) { display: none; }
845 }
846
847 @media (max-width: 560px) {
848 .w3eden .date-inputs { grid-template-columns: 1fr; }
849 .w3eden .table-footer { flex-direction: column; align-items: stretch; }
850 .w3eden .elegant-table .location-cell,
851 .w3eden .elegant-table th:nth-child(6) { display: none; }
852 }
853
854 /* Accessibility */
855 .w3eden .quick-filter-btn:focus-visible,
856 .w3eden .view-btn:focus-visible,
857 .w3eden .action-link:focus-visible,
858 .w3eden a.pagination-item:focus-visible,
859 .w3eden .clear-btn:focus-visible {
860 outline: 2px solid var(--st-accent);
861 outline-offset: 2px;
862 }
863