PluginProbe
WebberZone Top 10 — Popular Posts / 4.5.1
WebberZone Top 10 — Popular Posts v4.5.1
4.5.1 4.5.0 4.4.3 4.4.2 4.4.1 4.4.0 4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 trunk 1.0 1.0.1 1.1 1.2 1.3 1.4 1.4.1 1.5 1.5.1 1.5.2 1.5.3 1.6 1.6.1 All 117 releases
top-10 / includes / admin / settings / css / admin-style-rtl.css

admin-style-rtl.css in WebberZone Top 10 — Popular Posts 4.5.1, at includes/admin/settings/css/admin-style-rtl.css

665 lines 12.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* General styles for the repeater wrapper */
2 .wz-repeater-wrapper {
3 position: relative;
4 margin-bottom: 1.5rem;
5 }
6
7 /* Repeater items container */
8 .wz-repeater-wrapper .wz-repeater-item {
9 display: flex;
10 flex-direction: column;
11 background: #f9f9f9;
12 border: 1px solid #ddd;
13 padding: 1rem;
14 margin-bottom: 1rem;
15 border-radius: 4px;
16 }
17
18 .wz-repeater-item .repeater-item-header {
19 display: flex;
20 justify-content: space-between;
21 align-items: center;
22 border-bottom: 1px solid #ddd;
23 padding-bottom: 0.5rem;
24 cursor: pointer;
25 font-weight: bold;
26 }
27
28 /* Header for repeater field */
29 .wz-repeater-field-header {
30 margin-bottom: 0.5rem;
31 }
32
33 .wz-repeater-field-label {
34 font-weight: bold;
35 font-size: 0.9rem;
36 }
37
38 /* Input field styles */
39 .wz-repeater-field-input {
40 margin-bottom: 1rem;
41 }
42
43 /* Repeater item actions (buttons) */
44 .repeater-item-actions {
45 display: flex;
46 gap: 0.5rem;
47 justify-content: flex-start;
48 margin-top: 1rem;
49 }
50
51 .repeater-item-actions .button {
52 display: inline-flex;
53 align-items: center;
54 gap: 0.25rem;
55 }
56
57 .repeater-item-actions .dashicons {
58 font-size: 16px;
59 }
60
61 /* Move up/down button styles */
62 .repeater-item-actions .move-up,
63 .repeater-item-actions .move-down {
64 background: #f4f4f4;
65 color: #333;
66 border: 1px solid #ddd;
67 border-radius: 3px;
68 padding: 0.5rem;
69 }
70
71 .repeater-item-actions .move-up:hover,
72 .repeater-item-actions .move-down:hover {
73 background: #e0e0e0;
74 }
75
76 /* Remove button styles */
77 .repeater-item-actions .remove-item {
78 background: #fdd;
79 border-color: #fbb;
80 }
81
82 .repeater-item-actions .remove-item:hover {
83 background: #fbb;
84 }
85
86 /* Add item button styling */
87 .wz-repeater-wrapper .add-item {
88 background-color: #0073aa;
89 color: #fff;
90 padding: 0.5rem 1rem;
91 border: none;
92 border-radius: 4px;
93 cursor: pointer;
94 font-size: 1rem;
95 margin-top: 1rem;
96 }
97
98 .wz-repeater-wrapper .add-item:hover {
99 background-color: #005177;
100 color: #fff;
101 border-color: #004063;
102 }
103
104 /* Template styling for new items (hidden template) */
105 .repeater-template {
106 display: none;
107 }
108
109 /* Disabled / pro-gated repeater: the subfields and the repeater's own buttons each
110 carry a disabled attribute, which is what actually blocks interaction. These rules
111 only supply the matching visual affordance on the wrapper, which cannot be disabled. */
112 .wz-repeater-disabled .add-item,
113 .wz-repeater-disabled .repeater-item-actions .button {
114 pointer-events: none;
115 opacity: 0.5;
116 cursor: not-allowed;
117 }
118
119 .wz-repeater-disabled .add-item:hover {
120 background-color: #0073aa;
121 }
122
123 /* Responsiveness for smaller screens */
124 @media screen and (max-width: 768px) {
125 .wz-repeater-wrapper {
126 margin-bottom: 1rem;
127 }
128
129 .wz-repeater-item {
130 flex-direction: column;
131 }
132
133 .repeater-item-actions {
134 flex-direction: column;
135 align-items: flex-start;
136 }
137
138 .repeater-item-actions .button {
139 margin-bottom: 0.5rem;
140 }
141 }
142
143 /* Field input responsive tweaks */
144 @media screen and (max-width: 480px) {
145 .wz-repeater-field-label {
146 font-size: 0.85rem;
147 }
148
149 .wz-repeater-field-input {
150 font-size: 0.85rem;
151 }
152
153 .repeater-item-actions .button {
154 font-size: 0.85rem;
155 }
156
157 .add-item {
158 font-size: 1rem;
159 padding: 0.5rem;
160 }
161 }
162
163 /* Repeater Fields */
164 .wz-repeater-item {
165 background: #fff;
166 border: 1px solid #ccd0d4;
167 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
168 margin-bottom: 15px;
169 border-radius: 3px;
170 }
171
172 .repeater-item-content {
173 padding: 15px;
174 }
175
176 .wz-repeater-field {
177 margin-bottom: 15px;
178 }
179
180 .wz-repeater-field:last-child {
181 margin-bottom: 0;
182 }
183
184 .wz-repeater-field-header {
185 margin-bottom: 8px;
186 }
187
188 .wz-repeater-field-label {
189 display: block;
190 font-weight: 600;
191 margin-bottom: 4px;
192 }
193
194 .wz-repeater-field-description {
195 color: #666;
196 font-style: italic;
197 margin: 4px 0 0;
198 font-size: 13px;
199 }
200
201 .wz-repeater-field-input input[type="text"],
202 .wz-repeater-field-input input[type="url"],
203 .wz-repeater-field-input input[type="number"],
204 .wz-repeater-field-input input[type="password"],
205 .wz-repeater-field-input input[type="email"],
206 .wz-repeater-field-input textarea,
207 .wz-repeater-field-input select {
208 width: 100%;
209 max-width: 100%;
210 }
211
212 .repeater-item-footer {
213 background: #f5f5f5;
214 border-top: 1px solid #ddd;
215 padding: 10px 15px;
216 text-align: left;
217 }
218
219 .repeater-item-footer .remove-item {
220 color: #b32d2e;
221 }
222
223 .repeater-item-footer .remove-item:hover {
224 color: #dc3232;
225 }
226
227 .repeater-item-footer .dashicons {
228 margin-top: 4px;
229 }
230
231 /* Required field indicator */
232 .required {
233 color: #d63638;
234 font-weight: bold;
235 margin-right: 2px;
236 font-size: 1.3em;
237 }
238
239 /* Tom Select Customizations */
240 .ts-wrapper.loading .spinner {
241 display: inline-block;
242 visibility: visible;
243 float: none;
244 margin: 5px auto;
245 }
246
247 .ts-wrapper .no-results {
248 padding: 5px 10px;
249 color: #666;
250 font-style: italic;
251 }
252
253 .ts-wrapper.form-control {
254 border: 1px solid #8c8f94;
255 border-radius: 4px;
256 min-height: 30px;
257 }
258
259 .ts-wrapper.focus {
260 border-color: #2271b1;
261 box-shadow: 0 0 0 1px #2271b1;
262 outline: 2px solid transparent;
263 }
264
265 .ts-dropdown {
266 border: 1px solid #8c8f94;
267 border-radius: 4px;
268 box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
269 }
270
271 .ts-dropdown .option {
272 padding: 6px 10px;
273 }
274
275 .ts-dropdown .active {
276 background-color: #2271b1;
277 color: #fff;
278 }
279
280 .ts-wrapper.single.plugin-clear_button {
281 position: relative;
282 }
283
284 .ts-wrapper.single .clear-button {
285 position: absolute;
286 top: 50%;
287 left: 8px;
288 transform: translateY(-50%);
289 font-size: 2em;
290 }
291 /* Toggle switch field type. */
292 .wz-toggle {
293 position: relative;
294 display: inline-block;
295 width: 40px;
296 height: 22px;
297 vertical-align: middle;
298 }
299
300 .wz-toggle input[type="checkbox"] {
301 position: absolute;
302 opacity: 0;
303 width: 100%;
304 height: 100%;
305 margin: 0;
306 cursor: pointer;
307 }
308
309 .wz-toggle .wz-toggle-slider {
310 position: absolute;
311 inset: 0;
312 background-color: #8c8f94;
313 border-radius: 11px;
314 transition: background-color 0.2s ease;
315 pointer-events: none;
316 }
317
318 .wz-toggle .wz-toggle-slider::before {
319 content: "";
320 position: absolute;
321 top: 2px;
322 right: 2px;
323 width: 18px;
324 height: 18px;
325 background-color: #fff;
326 border-radius: 50%;
327 transition: transform 0.2s ease;
328 }
329
330 .wz-toggle input[type="checkbox"]:checked + .wz-toggle-slider {
331 background-color: #2271b1;
332 }
333
334 .wz-toggle input[type="checkbox"]:checked + .wz-toggle-slider::before {
335 transform: translateX(-18px);
336 }
337
338 .wz-toggle input[type="checkbox"]:focus-visible + .wz-toggle-slider {
339 outline: 2px solid #2271b1;
340 outline-offset: 2px;
341 }
342
343 .wz-toggle input[type="checkbox"]:disabled {
344 cursor: not-allowed;
345 }
346
347 .wz-toggle input[type="checkbox"]:disabled + .wz-toggle-slider {
348 opacity: 0.5;
349 }
350
351 /*
352 * Settings page layout: content + sidebar, side by side.
353 *
354 * WP core lays out #post-body-content and #postbox-container-1 via floats, but a float can
355 * only avoid floats that precede it in source order — #post-body-content comes first, so it
356 * has nothing to avoid and renders at full width, overlapping the sidebar that floats beside
357 * it. Flexbox sidesteps the ordering problem entirely and (with align-items: flex-start) still
358 * lets the sidebar be shorter than the tab content, matching the old float layout's look.
359 */
360 #post-body.wz-settings-post-body {
361 display: flex;
362 align-items: flex-start;
363 gap: 24px;
364 }
365
366 #post-body.wz-settings-post-body > #postbox-container-1 {
367 flex: 0 0 280px;
368 width: 280px;
369 }
370
371 /* Vertical settings tabs. */
372 .wz-vertical-tabs {
373 display: flex;
374 align-items: flex-start;
375 flex: 1 1 auto;
376 min-width: 0;
377 gap: 24px;
378 }
379
380 .wz-vertical-tabs > ul.nav-tab-wrapper {
381 flex: 0 0 auto;
382 width: fit-content;
383 min-width: 160px;
384 max-width: 260px;
385 display: flex;
386 flex-direction: column;
387 gap: 2px;
388 align-self: flex-start;
389 margin: 0;
390 padding: 8px;
391 background: #fff;
392 border: 1px solid #c3c4c7;
393 border-radius: 4px;
394 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
395 position: sticky;
396 top: 46px;
397 }
398
399 .wz-vertical-tabs > ul.nav-tab-wrapper li {
400 margin: 0;
401 padding: 0;
402 border: 0;
403 background: transparent;
404 list-style: none;
405 }
406
407 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab {
408 display: block;
409 float: none;
410 margin: 0;
411 padding: 8px 12px;
412 border: none;
413 border-radius: 3px;
414 background: transparent;
415 color: #2c3338;
416 font-weight: 500;
417 transition:
418 background-color 0.15s ease,
419 color 0.15s ease;
420 }
421
422 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab:hover {
423 background-color: #f0f0f1;
424 color: #2271b1;
425 box-shadow: none;
426 }
427
428 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab:focus-visible {
429 outline: 2px solid #2271b1;
430 outline-offset: -2px;
431 box-shadow: none;
432 }
433
434 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab-active,
435 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab-active:hover,
436 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab-active:focus {
437 background-color: #2271b1;
438 color: #fff;
439 }
440
441 .wz-vertical-tabs > form {
442 flex: 1;
443 min-width: 0;
444 margin-top: 0;
445 }
446
447 /* Keep the CodeMirror CSS editor within its column on narrow screens. */
448 .wz-vertical-tabs .CodeMirror {
449 max-width: 100%;
450 }
451
452 /* Horizontal tabs on small screens (WP admin breakpoint); pills keep their style. */
453 @media screen and (max-width: 782px) {
454 #post-body.wz-settings-post-body {
455 display: block;
456 }
457
458 .wz-vertical-tabs {
459 display: block;
460 }
461
462 .wz-vertical-tabs > ul.nav-tab-wrapper {
463 flex-direction: row;
464 flex-wrap: wrap;
465 width: auto;
466 max-width: none;
467 position: static;
468 margin-bottom: 16px;
469 }
470
471 .wz-vertical-tabs > ul.nav-tab-wrapper .wz-settings-search-wrap {
472 flex: 1 1 100%;
473 }
474 }
475
476 /* Settings search. */
477 .wz-vertical-tabs > ul.nav-tab-wrapper .wz-settings-search-wrap {
478 margin: 0 0 8px;
479 padding: 0;
480 }
481
482 .wz-settings-search-box {
483 position: relative;
484 display: block;
485 }
486
487 .wz-settings-search {
488 width: 100%;
489 margin: 0;
490 padding: 4px 8px 4px 28px;
491 border: 1px solid #8c8f94;
492 border-radius: 3px;
493 font-size: 13px;
494 line-height: 1.6;
495 }
496
497 .wz-settings-search:focus {
498 border-color: #2271b1;
499 box-shadow: 0 0 0 1px #2271b1;
500 outline: none;
501 }
502
503 /* Hide the native WebKit clear control; the plugin renders its own clear button. */
504 .wz-settings-search::-webkit-search-cancel-button {
505 -webkit-appearance: none;
506 appearance: none;
507 }
508
509 .wz-settings-search-clear {
510 position: absolute;
511 top: 50%;
512 left: 4px;
513 transform: translateY(-50%);
514 margin: 0;
515 padding: 0 6px;
516 border: 0;
517 border-radius: 2px;
518 background: transparent;
519 color: #646970;
520 cursor: pointer;
521 font-size: 18px;
522 line-height: 1.2;
523 }
524
525 .wz-settings-search-clear:hover {
526 color: #d63638;
527 }
528
529 .wz-settings-search-clear:focus-visible {
530 outline: 2px solid #2271b1;
531 outline-offset: 1px;
532 }
533
534 .wz-settings-search-clear[hidden] {
535 display: none;
536 }
537
538 /* Rows filtered out by the search. */
539 .wz-search-hidden {
540 display: none !important;
541 }
542
543 /* While searching, show every tab panel that has matches and hide the rest. */
544 .wz-vertical-tabs.wz-searching > form > div {
545 display: none !important;
546 }
547
548 .wz-vertical-tabs.wz-searching > form > div.wz-has-matches {
549 display: block !important;
550 margin-bottom: 24px;
551 }
552
553 /* Hide the per-tab button rows and legends while searching; a single save bar is shown instead. */
554 .wz-vertical-tabs.wz-searching > form > div.wz-has-matches > p {
555 display: none;
556 }
557
558 .wz-vertical-tabs.wz-searching > form > div.wz-has-matches > table.form-table {
559 margin-top: 0;
560 }
561
562 /* Per-tab section title: hidden normally, shown while searching to identify each group of results. */
563 .wz-section-title {
564 display: none;
565 }
566
567 .wz-vertical-tabs.wz-searching .wz-section-title {
568 display: block;
569 margin: 0;
570 padding: 6px 10px;
571 background: #f0f0f1;
572 border-right: 4px solid #2271b1;
573 color: #50575e;
574 font-size: 13px;
575 font-weight: 600;
576 text-transform: uppercase;
577 letter-spacing: 0.5px;
578 }
579
580 /* Single sticky save bar shown while search results are displayed. */
581 .wz-search-actions {
582 position: sticky;
583 bottom: 0;
584 margin: 0;
585 padding: 12px 0;
586 background: linear-gradient(to bottom, rgba(240, 240, 241, 0), #f0f0f1 40%);
587 }
588
589 /* Match-count badge on the navigation tabs. */
590 .wz-tab-count {
591 display: inline-block;
592 margin-right: 6px;
593 padding: 0 6px;
594 border-radius: 9px;
595 background-color: #2271b1;
596 color: #fff;
597 font-size: 11px;
598 line-height: 18px;
599 vertical-align: middle;
600 }
601
602 .wz-vertical-tabs > ul.nav-tab-wrapper .nav-tab-active .wz-tab-count {
603 background-color: #fff;
604 color: #2271b1;
605 }
606
607 .wz-vertical-tabs > ul.nav-tab-wrapper .wz-tab-no-matches {
608 opacity: 0.45;
609 }
610
611 /* Highlighted search term in row labels. */
612 mark.wz-search-mark {
613 padding: 0;
614 background-color: #fff3ad;
615 color: inherit;
616 }
617
618 /* No results message. */
619 .wz-search-no-results {
620 margin: 16px 0;
621 padding: 12px;
622 background: #fff;
623 border-right: 4px solid #dba617;
624 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
625 }
626
627 /* Modified-from-default indicator. */
628 .wz-modified-dot {
629 display: inline-block;
630 width: 8px;
631 height: 8px;
632 margin: 0 2px 0 6px;
633 border-radius: 50%;
634 background-color: #dba617;
635 vertical-align: middle;
636 }
637
638 .wz-modified-legend {
639 margin-top: 4px;
640 color: #646970;
641 font-size: 12px;
642 }
643
644 .wz-modified-legend .wz-modified-dot {
645 margin-right: 0;
646 }
647
648 /* Hide the legend on tabs where nothing is modified. */
649 form > div:not(:has(.form-table .wz-modified-dot)) .wz-modified-legend {
650 display: none;
651 }
652
653 /* Default value note below field descriptions. */
654 .wz-default-value {
655 color: #646970;
656 font-size: 12px;
657 }
658
659 .wz-default-value code {
660 font-size: 11px;
661 padding: 1px 5px;
662 overflow-wrap: anywhere;
663 word-break: break-word;
664 }
665