PluginProbe
Search Atlas SEO – OTTO AI SEO Automation for WordPress / 2.6.7
Search Atlas SEO – OTTO AI SEO Automation for WordPress v2.6.7
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 / admin / css / metasync-layout.css

metasync-layout.css in Search Atlas SEO – OTTO AI SEO Automation for WordPress 2.6.7, at admin/css/metasync-layout.css

507 lines 12.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*
2 * MetaSync — Yoast-style 3-column page layout
3 *
4 * Structure:
5 * .metasync-layout
6 * ├── .metasync-layout-nav (left sticky sidenav)
7 * ├── .metasync-layout-main (main content)
8 * └── .metasync-layout-promo (right promotional sidebar)
9 */
10
11 /* ── Layout grid ────────────────────────────────────────────────────── */
12
13 .metasync-layout {
14 display: grid;
15 grid-template-columns: 220px 1fr 260px;
16 gap: 24px;
17 align-items: start;
18 margin-top: 16px;
19 }
20
21 /* No promo sidebar — main column fills remaining space */
22 .metasync-layout:not(:has(.metasync-layout-promo)) {
23 grid-template-columns: 220px 1fr;
24 }
25
26 @media (max-width: 1400px) {
27 .metasync-layout {
28 grid-template-columns: 200px 1fr;
29 grid-template-rows: auto auto;
30 }
31 .metasync-layout-nav {
32 grid-column: 1;
33 grid-row: 1 / -1;
34 }
35 .metasync-layout-main {
36 grid-column: 2;
37 grid-row: 1;
38 }
39 .metasync-layout-promo {
40 grid-column: 2;
41 grid-row: 2;
42 position: static;
43 }
44 }
45
46 @media (max-width: 900px) {
47 .metasync-layout {
48 grid-template-columns: 1fr;
49 }
50 .metasync-layout-nav {
51 display: none;
52 }
53 .metasync-layout-promo {
54 position: static;
55 }
56 }
57
58 /* ── Left sidebar nav ────────────────────────────────────────────────── */
59
60 .metasync-layout-nav {
61 position: sticky;
62 top: 52px; /* WP admin bar (32px) + breathing room */
63 max-height: calc(100vh - 72px);
64 overflow-y: auto;
65 overflow-x: hidden;
66 min-width: 0; /* prevent grid blowout */
67 background: var(--dashboard-card-bg);
68 border: 1px solid var(--dashboard-border);
69 border-radius: 12px;
70 padding: 8px;
71 scrollbar-width: thin;
72 scrollbar-color: var(--dashboard-border) transparent;
73 }
74
75 .metasync-layout-nav::-webkit-scrollbar {
76 width: 4px;
77 }
78 .metasync-layout-nav::-webkit-scrollbar-track {
79 background: transparent;
80 }
81 .metasync-layout-nav::-webkit-scrollbar-thumb {
82 background: var(--dashboard-border);
83 border-radius: 4px;
84 }
85
86 /* Sidenav groups */
87 .metasync-sidenav-group {
88 margin-bottom: 4px;
89 }
90
91 .metasync-sidenav-group + .metasync-sidenav-group {
92 border-top: 1px solid var(--dashboard-border);
93 padding-top: 8px;
94 margin-top: 8px;
95 }
96
97 .metasync-sidenav-group-title {
98 font-size: 10px;
99 font-weight: 700;
100 text-transform: uppercase;
101 letter-spacing: 0.08em;
102 color: var(--dashboard-text-secondary);
103 padding: 4px 10px 6px;
104 opacity: 0.7;
105 }
106
107 .metasync-sidenav ul {
108 list-style: none;
109 margin: 0;
110 padding: 0;
111 }
112
113 .metasync-sidenav li a {
114 display: flex;
115 align-items: center;
116 gap: 9px;
117 padding: 7px 10px;
118 border-radius: 8px;
119 color: var(--dashboard-text-secondary);
120 text-decoration: none;
121 font-size: 13px;
122 font-weight: 500;
123 transition: background 0.15s ease, color 0.15s ease;
124 line-height: 1.3;
125 white-space: nowrap;
126 overflow: hidden;
127 text-overflow: ellipsis;
128 }
129
130 .metasync-sidenav li a:hover {
131 background: var(--dashboard-card-hover, rgba(255,255,255,0.05));
132 color: var(--dashboard-text-primary);
133 }
134
135 .metasync-sidenav li.metasync-sidenav-active > a {
136 background: var(--dashboard-gradient-primary);
137 color: #fff;
138 font-weight: 600;
139 box-shadow: 0 2px 8px rgba(102,126,234,0.3);
140 }
141
142 /* ── Sidenav icons (Dashicons) ──────────────────────────────────────── */
143
144 .metasync-sidenav-icon {
145 flex-shrink: 0;
146 width: 18px;
147 display: flex;
148 align-items: center;
149 justify-content: center;
150 }
151
152 .metasync-sidenav-icon .dashicons {
153 font-size: 15px;
154 width: 15px;
155 height: 15px;
156 color: inherit; /* inherits link color — grey normally, white when active */
157 }
158
159 /* ── Main content area ──────────────────────────────────────────────── */
160
161 .metasync-layout-main {
162 min-width: 0; /* prevent grid blowout */
163 }
164
165 /* Override the dashboard form-grid (metasync-dashboard.css) inside the
166 3-column layout so content stays within the main column. */
167 .metasync-layout-main form {
168 display: block;
169 }
170
171 .metasync-page-header {
172 margin-bottom: 20px;
173 }
174
175 .metasync-page-header h1 {
176 font-size: 1.5rem;
177 font-weight: 700;
178 color: var(--dashboard-text-primary);
179 margin: 0 0 6px;
180 padding: 0;
181 line-height: 1.3;
182 }
183
184 [data-theme="light"] .metasync-page-header h1 {
185 color: #1a1f26;
186 }
187
188 .metasync-page-header p {
189 color: var(--dashboard-text-secondary);
190 font-size: 14px;
191 margin: 0;
192 }
193
194 /* ── Right promotional sidebar ──────────────────────────────────────── */
195
196 .metasync-layout-promo {
197 position: sticky;
198 top: 52px;
199 display: flex;
200 min-width: 0; /* allow sticky column to shrink within its grid cell */
201 flex-direction: column;
202 gap: 16px;
203 }
204
205 /* Promo card base */
206 .metasync-promo-card {
207 background: var(--dashboard-card-bg);
208 border: 1px solid var(--dashboard-border);
209 border-radius: 12px;
210 padding: 20px;
211 overflow: hidden;
212 }
213
214 .metasync-promo-card--accent {
215 border-color: rgba(102,126,234,0.5);
216 background: linear-gradient(
217 145deg,
218 rgba(102,126,234,0.08) 0%,
219 rgba(118,75,162,0.06) 100%
220 );
221 }
222
223 .metasync-promo-card--connect {
224 border-color: rgba(59,130,246,0.6);
225 background: linear-gradient(
226 145deg,
227 rgba(59,130,246,0.10) 0%,
228 rgba(16,185,129,0.05) 100%
229 );
230 }
231
232 /* Promo card header */
233 .metasync-promo-card-header {
234 display: flex;
235 align-items: center;
236 gap: 12px;
237 margin-bottom: 14px;
238 }
239
240 .metasync-promo-card-icon {
241 width: 38px;
242 height: 38px;
243 border-radius: 10px;
244 background: var(--dashboard-gradient-primary);
245 display: flex;
246 align-items: center;
247 justify-content: center;
248 flex-shrink: 0;
249 }
250
251 .metasync-promo-card-icon .dashicons {
252 font-size: 18px;
253 width: 18px;
254 height: 18px;
255 color: #ffffff;
256 }
257
258 .metasync-promo-card-icon img {
259 width: 22px;
260 height: 22px;
261 object-fit: contain;
262 }
263
264 .metasync-promo-card h3 {
265 font-size: 14px;
266 font-weight: 700;
267 color: var(--dashboard-text-primary);
268 margin: 0 0 2px;
269 line-height: 1.3;
270 }
271
272 .metasync-promo-card .metasync-promo-tagline {
273 font-size: 12px;
274 color: var(--dashboard-text-secondary);
275 margin: 0 0 14px;
276 line-height: 1.5;
277 }
278
279 /* Promo benefits list */
280 .metasync-promo-benefits {
281 list-style: none;
282 margin: 0 0 16px;
283 padding: 0;
284 display: flex;
285 flex-direction: column;
286 gap: 8px;
287 }
288
289 .metasync-promo-benefits li {
290 display: flex;
291 align-items: flex-start;
292 gap: 8px;
293 font-size: 12px;
294 color: var(--dashboard-text-secondary);
295 line-height: 1.5;
296 }
297
298 .metasync-promo-benefits li .promo-check {
299 display: inline-flex;
300 align-items: center;
301 justify-content: center;
302 width: 15px;
303 height: 15px;
304 min-width: 15px;
305 background: var(--dashboard-success);
306 color: #fff;
307 border-radius: 50%;
308 font-size: 9px;
309 font-weight: 700;
310 margin-top: 1px;
311 }
312
313 /* Promo CTA button */
314 .metasync-promo-btn {
315 display: block;
316 width: 100%;
317 padding: 10px 16px;
318 border-radius: 8px;
319 font-size: 13px;
320 font-weight: 700;
321 text-align: center;
322 text-decoration: none;
323 cursor: pointer;
324 border: none;
325 transition: all 0.2s ease;
326 box-sizing: border-box;
327 }
328
329 .metasync-promo-btn--primary {
330 background: var(--dashboard-gradient-primary);
331 color: #fff !important;
332 box-shadow: 0 4px 12px rgba(102,126,234,0.35);
333 }
334
335 .metasync-promo-btn--primary:hover {
336 opacity: 0.92;
337 transform: translateY(-1px);
338 box-shadow: 0 6px 18px rgba(102,126,234,0.45);
339 color: #fff !important;
340 }
341
342 .metasync-promo-btn--outline {
343 background: transparent;
344 color: var(--dashboard-accent) !important;
345 border: 1.5px solid var(--dashboard-accent);
346 margin-top: 8px;
347 }
348
349 .metasync-promo-btn--outline:hover {
350 background: var(--dashboard-accent);
351 color: #fff !important;
352 }
353
354 .metasync-promo-support {
355 font-size: 11px;
356 color: var(--dashboard-text-secondary);
357 text-align: center;
358 margin-top: 10px;
359 line-height: 1.5;
360 }
361
362 /* Quick links card */
363 .metasync-promo-links {
364 list-style: none;
365 margin: 0;
366 padding: 0;
367 display: flex;
368 flex-direction: column;
369 gap: 4px;
370 }
371
372 .metasync-promo-links li a {
373 display: flex;
374 align-items: center;
375 gap: 8px;
376 padding: 7px 4px;
377 font-size: 12px;
378 color: var(--dashboard-accent);
379 text-decoration: none;
380 border-bottom: 1px solid var(--dashboard-border);
381 transition: color 0.15s;
382 }
383
384 .metasync-promo-links li:last-child a {
385 border-bottom: none;
386 }
387
388 .metasync-promo-links li a:hover {
389 color: var(--dashboard-text-primary);
390 }
391
392 .metasync-promo-links li a .dashicons {
393 font-size: 14px;
394 width: 14px;
395 height: 14px;
396 color: inherit;
397 flex-shrink: 0;
398 }
399
400 /* Compact top header for layout pages (replaces the full header) */
401 .metasync-header-compact {
402 display: flex;
403 align-items: center;
404 justify-content: space-between;
405 padding: 12px 16px;
406 background: var(--dashboard-card-bg);
407 border: 1px solid var(--dashboard-border);
408 border-radius: 10px;
409 margin-bottom: 0;
410 }
411
412 .metasync-header-compact .metasync-logo {
413 height: 28px;
414 width: auto;
415 }
416
417 .metasync-header-compact-right {
418 display: flex;
419 align-items: center;
420 gap: 12px;
421 }
422
423 .metasync-header-compact .metasync-status {
424 font-size: 12px;
425 }
426
427 .metasync-header-compact .metasync-theme-toggle {
428 padding: 4px 8px;
429 font-size: 13px;
430 color: var(--dashboard-text-secondary);
431 }
432
433 /* ── Old nav tab-icon: dashicons override ───────────────────────────── */
434 /* Neutralize emoji-specific filter/text-shadow; let dashicons use color */
435
436 .metasync-dashboard-wrap .metasync-nav-tab .tab-icon,
437 .metasync-dashboard-wrap .metasync-nav-tab .tab-icon:hover,
438 .metasync-dashboard-wrap .metasync-nav-dropdown-btn .tab-icon,
439 .metasync-nav-dropdown-item .tab-icon,
440 #metasync-nav-portal-menu .metasync-nav-dropdown-item .tab-icon {
441 filter: none;
442 text-shadow: none;
443 display: inline-flex;
444 align-items: center;
445 justify-content: center;
446 width: 18px;
447 min-width: 18px;
448 }
449
450 .metasync-dashboard-wrap .metasync-nav-tab .tab-icon .dashicons,
451 .metasync-dashboard-wrap .metasync-nav-dropdown-btn .tab-icon .dashicons,
452 .metasync-nav-dropdown-item .tab-icon .dashicons,
453 #metasync-nav-portal-menu .metasync-nav-dropdown-item .tab-icon .dashicons {
454 font-size: 15px;
455 width: 15px;
456 height: 15px;
457 color: inherit;
458 }
459
460 /* ── Connection status indicator ────────────────────────────────────── */
461
462 .metasync-header-compact .metasync-status {
463 display: flex;
464 align-items: center;
465 gap: 6px;
466 font-size: 12px;
467 color: var(--dashboard-text-secondary);
468 }
469
470 .metasync-header-compact .status-dot {
471 width: 7px;
472 height: 7px;
473 border-radius: 50%;
474 flex-shrink: 0;
475 background: var(--dashboard-error);
476 }
477
478 .metasync-header-compact .metasync-status.connected .status-dot {
479 background: var(--dashboard-success);
480 }
481
482 .metasync-header-compact .metasync-status.connected .status-text {
483 color: var(--dashboard-success);
484 }
485
486 .metasync-header-compact .metasync-status.disconnected .status-text {
487 color: var(--dashboard-error);
488 }
489
490 .metasync-header-compact .metasync-status.warning .status-dot {
491 background: var(--dashboard-warning, #ffb900);
492 }
493
494 .metasync-header-compact .metasync-status.warning .status-text {
495 color: var(--dashboard-warning, #ffb900);
496 }
497
498 /* ── Theme toggle icon sizing ────────────────────────────────────────── */
499
500 .theme-icon-light,
501 .theme-icon-dark {
502 font-size: 14px;
503 line-height: 1;
504 color: var(--dashboard-text-secondary);
505 /* rendered as unicode text chars — monochrome by design */
506 }
507