PluginProbe ʕ •ᴥ•ʔ
Autoload Optimizer / 2.0
Autoload Optimizer v2.0
trunk 1.0 2.0
autoload-optimizer / assets / style.css
autoload-optimizer / assets Last commit date
script.js 6 days ago style.css 6 days ago
style.css
416 lines
1 /* ============================================
2 Autoload Manager — Admin Styles
3 ============================================ */
4
5 .alm-wrap {
6 max-width: 1100px;
7 }
8
9 /* ----- Header ----- */
10 .alm-header {
11 display: flex;
12 align-items: center;
13 justify-content: space-between;
14 background: #fff;
15 border: 1px solid #e0e0e0;
16 border-radius: 8px;
17 padding: 20px 24px;
18 margin: 16px 0 24px;
19 box-shadow: 0 1px 4px rgba(0,0,0,.06);
20 }
21
22 .alm-header-title {
23 display: flex;
24 align-items: center;
25 gap: 16px;
26 }
27
28 .alm-header-icon {
29 font-size: 36px !important;
30 width: 36px !important;
31 height: 36px !important;
32 color: #2271b1;
33 }
34
35 .alm-header h1 {
36 margin: 0 0 4px;
37 font-size: 22px;
38 color: #1d2327;
39 }
40
41 .alm-header p {
42 margin: 0;
43 color: #646970;
44 font-size: 13px;
45 }
46
47 .alm-stat-badges {
48 display: flex;
49 gap: 12px;
50 flex-shrink: 0;
51 }
52
53 .alm-stat-badge {
54 text-align: center;
55 background: #f0f6fc;
56 border: 1px solid #c3d9f0;
57 border-radius: 8px;
58 padding: 12px 24px;
59 min-width: 140px;
60 }
61
62 .alm-stat-badge-db {
63 background: #f5f0fc;
64 border-color: #d9c3f0;
65 }
66
67 .alm-stat-badge-db .alm-stat-value {
68 color: #7c3aed;
69 }
70
71 .alm-stat-label {
72 display: block;
73 font-size: 11px;
74 text-transform: uppercase;
75 letter-spacing: .05em;
76 color: #646970;
77 margin-bottom: 4px;
78 }
79
80 .alm-stat-value {
81 display: block;
82 font-size: 24px;
83 font-weight: 700;
84 color: #2271b1;
85 line-height: 1;
86 }
87
88 /* ----- Warning box ----- */
89 .alm-warning-box {
90 background: #fffbf0;
91 border: 1px solid #f0c040;
92 border-left: 4px solid #dba617;
93 border-radius: 6px;
94 padding: 16px 20px;
95 margin-bottom: 20px;
96 font-size: 13px;
97 color: #3c3000;
98 }
99
100 .alm-warning-title {
101 display: flex;
102 align-items: center;
103 gap: 6px;
104 font-weight: 700;
105 font-size: 14px;
106 color: #8a5700;
107 margin-bottom: 8px;
108 }
109
110 .alm-warning-title .dashicons {
111 color: #dba617;
112 font-size: 18px;
113 width: 18px;
114 height: 18px;
115 }
116
117 .alm-warning-box p {
118 margin: 6px 0;
119 color: #3c3000;
120 }
121
122 .alm-warning-checklist {
123 margin: 10px 0;
124 }
125
126 .alm-warning-checklist strong {
127 display: block;
128 margin-bottom: 6px;
129 color: #5a3e00;
130 }
131
132 .alm-warning-checklist ul {
133 margin: 0;
134 padding: 0;
135 list-style: none;
136 }
137
138 .alm-warning-checklist li {
139 display: flex;
140 align-items: center;
141 gap: 6px;
142 margin-bottom: 4px;
143 color: #3c3000;
144 }
145
146 .alm-warning-checklist .dashicons {
147 color: #00a32a;
148 font-size: 16px;
149 width: 16px;
150 height: 16px;
151 }
152
153 .alm-warning-footer {
154 margin-top: 10px !important;
155 font-weight: 600;
156 color: #8a5700 !important;
157 }
158
159 /* ----- Tabs nav ----- */
160 .alm-tabs-nav {
161 display: flex;
162 gap: 4px;
163 margin-bottom: 0;
164 border-bottom: 2px solid #e0e0e0;
165 }
166
167 .alm-tab-btn {
168 display: inline-flex;
169 align-items: center;
170 gap: 7px;
171 background: #f6f7f7;
172 border: 1px solid #e0e0e0;
173 border-bottom: none;
174 border-radius: 6px 6px 0 0;
175 padding: 10px 20px;
176 font-size: 13px;
177 font-weight: 500;
178 color: #50575e;
179 cursor: pointer;
180 position: relative;
181 bottom: -2px;
182 transition: background .15s, color .15s;
183 }
184
185 .alm-tab-btn:hover {
186 background: #fff;
187 color: #1d2327;
188 }
189
190 .alm-tab-btn.alm-tab-active {
191 background: #fff;
192 color: #2271b1;
193 border-color: #e0e0e0;
194 border-bottom-color: #fff;
195 font-weight: 600;
196 }
197
198 .alm-tab-btn .dashicons {
199 font-size: 16px;
200 width: 16px;
201 height: 16px;
202 }
203
204 .alm-tab-count {
205 display: inline-flex;
206 align-items: center;
207 justify-content: center;
208 background: #e0e0e0;
209 color: #50575e;
210 border-radius: 20px;
211 font-size: 11px;
212 font-weight: 700;
213 min-width: 20px;
214 height: 20px;
215 padding: 0 6px;
216 line-height: 1;
217 }
218
219 .alm-tab-btn.alm-tab-active .alm-tab-count {
220 background: #2271b1;
221 color: #fff;
222 }
223
224 .alm-tab-hidden {
225 display: none !important;
226 }
227
228 /* ----- Sections / Tab panels ----- */
229 .alm-section {
230 background: #fff;
231 border: 1px solid #e0e0e0;
232 border-top: none;
233 border-radius: 0 0 8px 8px;
234 margin-bottom: 28px;
235 box-shadow: 0 1px 4px rgba(0,0,0,.06);
236 overflow: hidden;
237 }
238
239 .alm-section-header {
240 padding: 18px 24px 14px;
241 border-bottom: 1px solid #f0f0f1;
242 }
243
244 .alm-section-header h2 {
245 margin: 0 0 6px;
246 font-size: 16px;
247 color: #1d2327;
248 display: flex;
249 align-items: center;
250 gap: 8px;
251 }
252
253 .alm-section-header h2 .dashicons {
254 color: #2271b1;
255 }
256
257 .alm-section-disabled .alm-section-header h2 .dashicons {
258 color: #787c82;
259 }
260
261 .alm-section-desc {
262 margin: 0;
263 font-size: 13px;
264 color: #646970;
265 }
266
267 /* ----- Table ----- */
268 .alm-table {
269 border: none !important;
270 border-radius: 0 !important;
271 }
272
273 .alm-table thead th {
274 background: #f6f7f7;
275 font-size: 12px;
276 text-transform: uppercase;
277 letter-spacing: .04em;
278 color: #50575e;
279 padding: 10px 14px;
280 border-bottom: 1px solid #e0e0e0 !important;
281 }
282
283 .alm-table tbody td {
284 padding: 12px 14px;
285 vertical-align: middle;
286 border-bottom: 1px solid #f0f0f1 !important;
287 }
288
289 .alm-table tbody tr:last-child td {
290 border-bottom: none !important;
291 }
292
293 .alm-table tbody tr:hover {
294 background: #f9f9f9;
295 }
296
297 .alm-row-disabled {
298 opacity: .9;
299 }
300
301 /* index column */
302 .alm-index {
303 color: #a0a5aa;
304 font-size: 12px;
305 font-weight: 600;
306 width: 32px;
307 text-align: center;
308 }
309
310 /* option name */
311 .alm-option-name code {
312 background: #f6f7f7;
313 border: 1px solid #e7e7e7;
314 border-radius: 4px;
315 padding: 2px 6px;
316 font-size: 12px;
317 color: #1d2327;
318 word-break: break-all;
319 }
320
321 /* plugin badge */
322 .alm-plugin-badge {
323 display: inline-block;
324 background: #edf2fb;
325 color: #2271b1;
326 border-radius: 20px;
327 padding: 2px 10px;
328 font-size: 12px;
329 font-weight: 500;
330 }
331
332 .alm-plugin-unknown {
333 color: #a0a5aa;
334 font-size: 12px;
335 }
336
337 /* size pills */
338 .alm-size-pill {
339 display: inline-block;
340 border-radius: 4px;
341 padding: 2px 8px;
342 font-size: 12px;
343 font-weight: 600;
344 }
345
346 .alm-size-high { background: #fce8e8; color: #cc1818; }
347 .alm-size-medium { background: #fef3cd; color: #8a5700; }
348 .alm-size-low { background: #e8f5e9; color: #1b6c26; }
349
350 /* autoload badges */
351 .alm-badge {
352 display: inline-block;
353 border-radius: 20px;
354 padding: 2px 10px;
355 font-size: 11px;
356 font-weight: 700;
357 text-transform: uppercase;
358 letter-spacing: .04em;
359 }
360
361 .alm-badge-enabled { background: #e8f5e9; color: #1b6c26; }
362 .alm-badge-disabled { background: #f5f5f5; color: #787c82; }
363
364 /* action column */
365 .alm-action {
366 text-align: right;
367 white-space: nowrap;
368 }
369
370 /* empty state */
371 .alm-empty {
372 padding: 32px 24px;
373 text-align: center;
374 color: #646970;
375 font-size: 14px;
376 }
377
378 /* ----- Notice / Toast ----- */
379 .alm-notice {
380 position: fixed;
381 bottom: 28px;
382 right: 28px;
383 background: #1d2327;
384 color: #fff;
385 padding: 12px 20px;
386 border-radius: 6px;
387 font-size: 13px;
388 box-shadow: 0 4px 16px rgba(0,0,0,.2);
389 z-index: 99999;
390 opacity: 0;
391 transform: translateY(8px);
392 transition: opacity .25s, transform .25s;
393 max-width: 340px;
394 }
395
396 .alm-notice.alm-notice-success { border-left: 4px solid #00a32a; }
397 .alm-notice.alm-notice-error { border-left: 4px solid #d63638; }
398 .alm-notice.alm-notice-show { opacity: 1; transform: translateY(0); }
399
400 /* ----- Loading spinner ----- */
401 .alm-spinner {
402 display: inline-block;
403 width: 14px;
404 height: 14px;
405 border: 2px solid rgba(0,0,0,.15);
406 border-top-color: #2271b1;
407 border-radius: 50%;
408 animation: alm-spin .6s linear infinite;
409 vertical-align: middle;
410 margin-right: 6px;
411 }
412
413 @keyframes alm-spin {
414 to { transform: rotate(360deg); }
415 }
416