PluginProbe
Search Atlas SEO – OTTO AI SEO Automation for WordPress / 2.6.10
Search Atlas SEO – OTTO AI SEO Automation for WordPress v2.6.10
2.6.26 2.6.25 2.6.24 2.6.23 2.6.22 2.6.21 2.6.20 2.6.19 2.6.18 2.6.17 2.6.16 2.6.15 2.6.14 2.6.13 2.6.12 2.6.11 2.6.10 2.6.9 2.6.8 2.6.7 2.6.6 2.6.5 2.6.4 2.6.3 2.5.23 All 138 releases
metasync / robots-txt / views / styles.php

styles.php in Search Atlas SEO – OTTO AI SEO Automation for WordPress 2.6.10, at robots-txt/views/styles.php

745 lines 19.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Robots.txt Admin Page Styles
4 *
5 * @package Search Atlas SEO
6 * @copyright Copyright (C) 2021-2025, Search Atlas Group - support@searchatlas.com
7 * @since 2.5.6
8 */
9
10 // If this file is called directly, abort.
11 if (!defined('WPINC')) {
12 die;
13 }
14 ?>
15 <style>
16 /* Background provided by metasync-dashboard-wrap class */
17 .metasync-dashboard-wrap .metasync-robots-txt-page {
18 padding: 20px !important;
19 max-width: 100% !important;
20 }
21
22 .metasync-robots-txt-page h1 {
23 color: var(--dashboard-text-primary, #ffffff);
24 font-size: 28px;
25 font-weight: 600;
26 margin: 0 0 20px 0;
27 background: var(--dashboard-gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
28 -webkit-background-clip: text;
29 -webkit-text-fill-color: transparent;
30 background-clip: text;
31 }
32
33 .metasync-robots-txt-container {
34 display: flex;
35 flex-direction: column;
36 gap: 24px;
37 margin-top: 0;
38 width: 100%;
39 }
40
41 .metasync-robots-txt-editor {
42 width: 100%;
43 min-width: 0; /* Allow grid items to shrink */
44 }
45
46 .metasync-robots-txt-sidebar {
47 width: 100%;
48 min-width: 0;
49 }
50
51 @media (max-width: 1200px) {
52 .metasync-robots-txt-container {
53 grid-template-columns: 1fr;
54 }
55 }
56
57 .metasync-card {
58 background: var(--dashboard-card-bg, #1a1f26);
59 border: 1px solid var(--dashboard-border, #374151);
60 border-radius: 12px;
61 box-shadow: var(--dashboard-shadow, 0 10px 15px -3px rgba(0, 0, 0, 0.3));
62 margin-bottom: 20px;
63 transition: all 0.3s ease;
64 }
65
66 .metasync-card:hover {
67 box-shadow: var(--dashboard-shadow-hover, 0 20px 25px -5px rgba(0, 0, 0, 0.4));
68 transform: translateY(-2px);
69 }
70
71 .metasync-card-header {
72 padding: 20px 24px;
73 border-bottom: 1px solid var(--dashboard-border, #374151);
74 display: flex;
75 justify-content: space-between;
76 align-items: center;
77 background: rgba(102, 126, 234, 0.05);
78 border-radius: 12px 12px 0 0;
79 }
80
81 .metasync-card-header h2,
82 .metasync-card-header h3 {
83 margin: 0;
84 font-size: 18px;
85 font-weight: 600;
86 color: var(--dashboard-text-primary, #ffffff);
87 }
88
89 .metasync-robots-info {
90 display: flex;
91 align-items: center;
92 gap: 15px;
93 }
94
95 .metasync-robots-status {
96 display: flex;
97 align-items: center;
98 gap: 8px;
99 font-size: 13px;
100 color: var(--dashboard-text-secondary, #9ca3af);
101 padding: 6px 12px;
102 background: rgba(59, 130, 246, 0.1);
103 border-radius: 6px;
104 }
105
106 .metasync-editor-container {
107 padding: 24px;
108 width: 100%;
109 box-sizing: border-box;
110 }
111
112 #robots-txt-editor {
113 width: 100%;
114 max-width: 100%;
115 box-sizing: border-box;
116 font-family: 'SF Mono', Monaco, 'Cascadia Code', Consolas, monospace;
117 font-size: 14px;
118 line-height: 1.8;
119 border: 1px solid var(--dashboard-border, #374151);
120 border-radius: 8px;
121 padding: 16px;
122 resize: vertical;
123 background: rgba(0, 0, 0, 0.3);
124 color: var(--dashboard-text-primary, #ffffff);
125 transition: all 0.3s ease;
126 }
127
128 #robots-txt-editor:focus {
129 border-color: var(--dashboard-accent, #3b82f6);
130 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
131 outline: none;
132 background: rgba(0, 0, 0, 0.4);
133 }
134
135 .metasync-editor-actions {
136 padding: 0 24px 24px;
137 display: flex;
138 gap: 12px;
139 flex-wrap: wrap;
140 }
141
142 .metasync-editor-actions .button {
143 border-radius: 8px;
144 font-weight: 500;
145 padding: 10px 20px;
146 height: auto;
147 transition: all 0.3s ease;
148 }
149
150 .metasync-editor-actions .button-primary {
151 background: var(--dashboard-gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
152 border: none;
153 color: #ffffff;
154 box-shadow: 0 4px 6px rgba(102, 126, 234, 0.3);
155 }
156
157 .metasync-editor-actions .button-primary:hover {
158 transform: translateY(-2px);
159 box-shadow: 0 6px 12px rgba(102, 126, 234, 0.4);
160 }
161
162 .metasync-editor-actions .button-secondary {
163 background: var(--dashboard-card-hover, #222831);
164 border: 1px solid var(--dashboard-border, #374151);
165 color: var(--dashboard-text-primary, #ffffff);
166 }
167
168 .metasync-editor-actions .button-secondary:hover {
169 background: rgba(255, 255, 255, 0.1);
170 border-color: var(--dashboard-accent, #3b82f6);
171 transform: translateY(-1px);
172 }
173
174 .metasync-validation-results {
175 margin: 0 24px 24px;
176 padding: 16px 20px;
177 border-radius: 8px;
178 border-left: 4px solid;
179 }
180
181 .metasync-validation-results.success {
182 background: rgba(16, 185, 129, 0.1);
183 border-left-color: var(--dashboard-success, #10b981);
184 color: #6ee7b7;
185 }
186
187 .metasync-validation-results.error {
188 background: rgba(239, 68, 68, 0.1);
189 border-left-color: var(--dashboard-error, #ef4444);
190 color: #fca5a5;
191 }
192
193 .metasync-validation-results.warning {
194 background: rgba(245, 158, 11, 0.1);
195 border-left-color: var(--dashboard-warning, #f59e0b);
196 color: #fcd34d;
197 }
198
199 .metasync-robots-help {
200 padding: 24px;
201 background: rgba(102, 126, 234, 0.03);
202 border-top: 1px solid var(--dashboard-border, #374151);
203 border-radius: 0 0 12px 12px;
204 }
205
206 .metasync-robots-help h3 {
207 margin: 0 0 16px;
208 font-size: 15px;
209 font-weight: 600;
210 color: var(--dashboard-text-primary, #ffffff);
211 }
212
213 .metasync-help-grid {
214 display: grid;
215 grid-template-columns: repeat(2, 1fr);
216 gap: 16px;
217 }
218
219 @media (max-width: 900px) {
220 .metasync-help-grid {
221 grid-template-columns: 1fr;
222 }
223 }
224
225 .metasync-help-item {
226 font-size: 13px;
227 background: rgba(0, 0, 0, 0.2);
228 padding: 16px;
229 border-radius: 8px;
230 border: 1px solid var(--dashboard-border, #374151);
231 transition: all 0.3s ease;
232 }
233
234 .metasync-help-item:hover {
235 background: rgba(102, 126, 234, 0.1);
236 border-color: rgba(102, 126, 234, 0.3);
237 transform: translateY(-2px);
238 }
239
240 .metasync-help-item strong {
241 display: block;
242 margin-bottom: 8px;
243 color: var(--dashboard-accent, #3b82f6);
244 font-size: 14px;
245 }
246
247 .metasync-help-item p {
248 margin: 0 0 10px;
249 color: var(--dashboard-text-secondary, #9ca3af);
250 line-height: 1.6;
251 }
252
253 .metasync-help-item code {
254 display: block;
255 background: rgba(0, 0, 0, 0.4);
256 padding: 8px 12px;
257 border-radius: 6px;
258 font-size: 12px;
259 border: 1px solid var(--dashboard-border, #374151);
260 color: #a78bfa;
261 font-family: 'SF Mono', Monaco, Consolas, monospace;
262 }
263
264 .metasync-backups-list {
265 padding: 20px;
266 max-height: 450px;
267 overflow-y: auto;
268 }
269
270 .metasync-card .description {
271 padding: 20px;
272 color: var(--dashboard-text-secondary, #9ca3af);
273 text-align: center;
274 margin: 0;
275 }
276
277 .metasync-backups-list::-webkit-scrollbar {
278 width: 8px;
279 }
280
281 .metasync-backups-list::-webkit-scrollbar-track {
282 background: rgba(0, 0, 0, 0.2);
283 border-radius: 4px;
284 }
285
286 .metasync-backups-list::-webkit-scrollbar-thumb {
287 background: var(--dashboard-accent, #3b82f6);
288 border-radius: 4px;
289 }
290
291 .metasync-backup-item {
292 padding: 16px;
293 border-bottom: 1px solid var(--dashboard-border, #374151);
294 background: rgba(0, 0, 0, 0.2);
295 border-radius: 8px;
296 margin-bottom: 12px;
297 transition: all 0.3s ease;
298 }
299
300 .metasync-backup-item:hover {
301 background: rgba(102, 126, 234, 0.1);
302 transform: translateX(4px);
303 }
304
305 .metasync-backup-item:last-child {
306 margin-bottom: 0;
307 }
308
309 .metasync-backup-info {
310 margin-bottom: 12px;
311 }
312
313 .metasync-backup-info strong {
314 display: block;
315 font-size: 13px;
316 color: var(--dashboard-text-primary, #ffffff);
317 margin-bottom: 4px;
318 }
319
320 .metasync-backup-author {
321 font-size: 12px;
322 color: var(--dashboard-text-secondary, #9ca3af);
323 }
324
325 .metasync-backup-actions {
326 display: flex;
327 gap: 8px;
328 }
329
330 .metasync-backup-actions .button {
331 border-radius: 6px;
332 font-size: 12px;
333 padding: 6px 12px;
334 height: auto;
335 line-height: 1.4;
336 }
337
338 .metasync-backup-actions .button-link-delete {
339 background: rgba(239, 68, 68, 0.1);
340 border: 1px solid rgba(239, 68, 68, 0.3);
341 color: var(--dashboard-error, #ef4444);
342 }
343
344 .metasync-backup-actions .button-link-delete:hover:not(:disabled) {
345 background: rgba(239, 68, 68, 0.2);
346 border-color: var(--dashboard-error, #ef4444);
347 color: var(--dashboard-error, #ef4444);
348 transform: translateY(-1px);
349 }
350
351 .metasync-backup-actions .button-link-delete:disabled {
352 opacity: 0.6;
353 cursor: not-allowed;
354 }
355
356 .metasync-backup-actions .metasync-restore-backup {
357 background: rgba(16, 185, 129, 0.1);
358 border: 1px solid rgba(16, 185, 129, 0.3);
359 color: var(--dashboard-success, #10b981);
360 }
361
362 .metasync-backup-actions .metasync-restore-backup:hover:not(:disabled) {
363 background: rgba(16, 185, 129, 0.2);
364 border-color: var(--dashboard-success, #10b981);
365 color: var(--dashboard-success, #10b981);
366 transform: translateY(-1px);
367 }
368
369 .metasync-backup-actions .metasync-restore-backup:disabled {
370 opacity: 0.6;
371 cursor: not-allowed;
372 }
373
374 .metasync-warnings-list {
375 margin: 0;
376 padding: 20px;
377 list-style: none;
378 }
379
380 .metasync-warnings-list li {
381 display: flex;
382 gap: 12px;
383 margin-bottom: 16px;
384 font-size: 13px;
385 line-height: 1.6;
386 color: var(--dashboard-text-secondary, #9ca3af);
387 padding: 12px;
388 background: rgba(245, 158, 11, 0.05);
389 border-radius: 8px;
390 border-left: 3px solid var(--dashboard-warning, #f59e0b);
391 }
392
393 .metasync-warnings-list li:last-child {
394 margin-bottom: 0;
395 }
396
397 .metasync-warnings-list .dashicons {
398 flex-shrink: 0;
399 margin-top: 2px;
400 }
401
402 /* Modal Styles - Dark Theme */
403 .metasync-modal {
404 position: fixed;
405 top: 0;
406 left: 0;
407 width: 100%;
408 height: 100%;
409 z-index: 100000;
410 display: flex;
411 align-items: center;
412 justify-content: center;
413 }
414
415 .metasync-modal-overlay {
416 position: absolute;
417 top: 0;
418 left: 0;
419 width: 100%;
420 height: 100%;
421 background: rgba(0, 0, 0, 0.5);
422 }
423
424 .metasync-modal-content {
425 position: relative;
426 background: var(--dashboard-card-bg, #1a1f26);
427 border: 1px solid var(--dashboard-border, #374151);
428 border-radius: 16px;
429 box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(102, 126, 234, 0.1);
430 max-width: 600px;
431 width: 90%;
432 max-height: 80vh;
433 display: flex;
434 flex-direction: column;
435 animation: modalSlideIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
436 }
437
438 @keyframes modalSlideIn {
439 from {
440 opacity: 0;
441 transform: translateY(-30px) scale(0.95);
442 }
443 to {
444 opacity: 1;
445 transform: translateY(0) scale(1);
446 }
447 }
448
449 .metasync-modal-header {
450 padding: 24px 28px;
451 border-bottom: 1px solid var(--dashboard-border, #374151);
452 display: flex;
453 align-items: center;
454 justify-content: space-between;
455 background: rgba(102, 126, 234, 0.05);
456 border-radius: 16px 16px 0 0;
457 }
458
459 .metasync-modal-header h2 {
460 margin: 0;
461 font-size: 22px;
462 font-weight: 600;
463 display: flex;
464 align-items: center;
465 gap: 12px;
466 color: var(--dashboard-text-primary, #ffffff);
467 }
468
469 .metasync-modal-header.error {
470 background: rgba(239, 68, 68, 0.1);
471 border-bottom-color: rgba(239, 68, 68, 0.3);
472 }
473
474 .metasync-modal-header.error h2 {
475 color: var(--dashboard-error, #ef4444);
476 }
477
478 .metasync-modal-header.warning {
479 background: rgba(245, 158, 11, 0.1);
480 border-bottom-color: rgba(245, 158, 11, 0.3);
481 }
482
483 .metasync-modal-header.warning h2 {
484 color: var(--dashboard-warning, #f59e0b);
485 }
486
487 .metasync-modal-header.success {
488 background: rgba(16, 185, 129, 0.1);
489 border-bottom-color: rgba(16, 185, 129, 0.3);
490 }
491
492 .metasync-modal-header.success h2 {
493 color: var(--dashboard-success, #10b981);
494 }
495
496 .metasync-modal-header.preview {
497 background: rgba(59, 130, 246, 0.1);
498 border-bottom-color: rgba(59, 130, 246, 0.3);
499 }
500
501 .metasync-modal-header.preview h2 {
502 color: var(--dashboard-accent, #3b82f6);
503 }
504
505 .metasync-modal-close {
506 background: rgba(255, 255, 255, 0.05);
507 border: 1px solid var(--dashboard-border, #374151);
508 font-size: 24px;
509 line-height: 1;
510 color: var(--dashboard-text-secondary, #9ca3af);
511 cursor: pointer;
512 padding: 0;
513 width: 36px;
514 height: 36px;
515 display: flex;
516 align-items: center;
517 justify-content: center;
518 border-radius: 8px;
519 transition: all 0.3s ease;
520 }
521
522 .metasync-modal-close:hover {
523 background: rgba(239, 68, 68, 0.2);
524 border-color: var(--dashboard-error, #ef4444);
525 color: var(--dashboard-error, #ef4444);
526 transform: rotate(90deg);
527 }
528
529 .metasync-modal-body {
530 padding: 28px;
531 overflow-y: auto;
532 flex: 1;
533 color: var(--dashboard-text-primary, #ffffff);
534 }
535
536 .metasync-modal-body ul {
537 margin: 16px 0 0 0;
538 padding-left: 28px;
539 color: var(--dashboard-text-secondary, #9ca3af);
540 }
541
542 .metasync-modal-body li {
543 margin-bottom: 10px;
544 line-height: 1.7;
545 }
546
547 .metasync-modal-icon {
548 font-size: 64px;
549 text-align: center;
550 margin-bottom: 20px;
551 filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
552 animation: iconBounce 0.5s ease-out;
553 }
554
555 @keyframes iconBounce {
556 0%, 100% { transform: scale(1); }
557 50% { transform: scale(1.1); }
558 }
559
560 .metasync-modal-icon.error {
561 color: var(--dashboard-error, #ef4444);
562 }
563
564 .metasync-modal-icon.warning {
565 color: var(--dashboard-warning, #f59e0b);
566 }
567
568 .metasync-modal-message {
569 font-size: 15px;
570 line-height: 1.7;
571 color: var(--dashboard-text-secondary, #9ca3af);
572 }
573
574 .metasync-modal-message strong {
575 color: var(--dashboard-text-primary, #ffffff);
576 display: block;
577 margin-bottom: 12px;
578 font-size: 16px;
579 }
580
581 .metasync-modal-footer {
582 padding: 20px 28px;
583 border-top: 1px solid var(--dashboard-border, #374151);
584 display: flex;
585 gap: 12px;
586 justify-content: flex-start;
587 background: rgba(0, 0, 0, 0.2);
588 border-radius: 0 0 16px 16px;
589 }
590
591 .metasync-modal-footer-left {
592 display: flex;
593 gap: 12px;
594 }
595
596 .metasync-modal-footer-right {
597 display: flex;
598 gap: 12px;
599 margin-left: auto;
600 }
601
602 .metasync-modal-footer button {
603 border-radius: 6px;
604 font-size: 12px;
605 padding: 6px 12px;
606 height: auto;
607 line-height: 1.4;
608 transition: all 0.3s ease;
609 }
610
611 .metasync-modal-footer-right button {
612 min-width: 80px;
613 padding: 6px 12px !important;
614 font-size: 12px !important;
615 border-radius: 6px !important;
616 line-height: 1.4 !important;
617 height: auto !important;
618 }
619
620 .metasync-modal-footer .button-primary {
621 background: var(--dashboard-gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
622 border: none;
623 color: #ffffff;
624 box-shadow: 0 4px 6px rgba(102, 126, 234, 0.3);
625 }
626
627 .metasync-modal-footer .button-primary:hover {
628 transform: translateY(-2px);
629 box-shadow: 0 6px 12px rgba(102, 126, 234, 0.4);
630 }
631
632 .metasync-modal-footer .button-secondary {
633 background: var(--dashboard-card-hover, #222831);
634 border: 1px solid var(--dashboard-border, #374151);
635 color: var(--dashboard-text-primary, #ffffff);
636 }
637
638 .metasync-modal-footer .button-secondary:hover {
639 background: rgba(255, 255, 255, 0.1);
640 border-color: var(--dashboard-accent, #3b82f6);
641 transform: translateY(-1px);
642 }
643
644 .metasync-modal-footer button.button-restore {
645 background: rgba(16, 185, 129, 0.1);
646 border: 1px solid rgba(16, 185, 129, 0.3);
647 color: var(--dashboard-success, #10b981);
648 padding: 6px 12px !important;
649 font-size: 12px !important;
650 border-radius: 6px !important;
651 line-height: 1.4 !important;
652 height: auto !important;
653 }
654
655 .metasync-modal-footer .button-restore:hover:not(:disabled) {
656 background: rgba(16, 185, 129, 0.2);
657 border-color: var(--dashboard-success, #10b981);
658 color: var(--dashboard-success, #10b981);
659 transform: translateY(-1px);
660 }
661
662 .metasync-modal-footer .button-restore:disabled {
663 opacity: 0.6;
664 cursor: not-allowed;
665 transform: none;
666 }
667
668 /* Preview modal specific styles */
669 .metasync-preview-code {
670 width: 100%;
671 max-width: 100%;
672 box-sizing: border-box;
673 font-family: 'SF Mono', Monaco, 'Cascadia Code', Consolas, monospace;
674 font-size: 13px;
675 line-height: 1.7;
676 border: 1px solid var(--dashboard-border, #374151);
677 border-radius: 8px;
678 padding: 16px;
679 background: rgba(0, 0, 0, 0.3);
680 color: var(--dashboard-text-primary, #ffffff);
681 margin-top: 8px;
682 overflow-x: auto;
683 max-height: 500px;
684 overflow-y: auto;
685 white-space: pre-wrap;
686 word-break: break-word;
687 }
688
689 .metasync-preview-code code {
690 font-family: inherit;
691 font-size: inherit;
692 color: inherit;
693 background: none;
694 padding: 0;
695 border: none;
696 }
697
698 .metasync-preview-code::-webkit-scrollbar {
699 width: 8px;
700 height: 8px;
701 }
702
703 .metasync-preview-code::-webkit-scrollbar-track {
704 background: rgba(0, 0, 0, 0.2);
705 border-radius: 4px;
706 }
707
708 .metasync-preview-code::-webkit-scrollbar-thumb {
709 background: var(--dashboard-accent, #3b82f6);
710 border-radius: 4px;
711 }
712
713 /* Larger modal for preview */
714 .metasync-modal-content.preview {
715 max-width: 900px;
716 }
717
718 /* Preview button styling */
719 .metasync-preview-backup {
720 background: var(--dashboard-card-hover, #222831);
721 border: 1px solid var(--dashboard-border, #374151);
722 color: var(--dashboard-text-primary, #ffffff);
723 }
724
725 .metasync-preview-backup:hover {
726 background: rgba(59, 130, 246, 0.2);
727 border-color: var(--dashboard-accent, #3b82f6);
728 color: var(--dashboard-accent, #3b82f6);
729 }
730
731 .metasync-preview-backup:disabled {
732 opacity: 0.6;
733 cursor: not-allowed;
734 }
735
736 .dashicons-spin {
737 animation: spin 1s linear infinite;
738 }
739
740 @keyframes spin {
741 from { transform: rotate(0deg); }
742 to { transform: rotate(360deg); }
743 }
744 </style>
745