PluginProbe
Subscriptions for WooCommerce with Stripe Recurring Payments / 2.0.0
Subscriptions for WooCommerce with Stripe Recurring Payments v2.0.0
2.0.0 1.11.2 1.11.1 1.11.0 1.10.9 1.10.8 1.10.7 1.10.6 1.10.5 1.10.4 1.10.3 1.10.2 1.10.1 1.10.0 1.9.6 1.9.5 trunk 1.3.0 1.3.1 1.3.2 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 All 61 releases
← All changes | assets/css/admin.css +584 -376 1.4.02.0.0 View file →
@@ -26,10 +26,10 @@
26 26 margin-top: 5px !important;
27 27 }
28 28
29 29 .subscrpt-order-label {
30 - background: #e1edf7;
31 - color: #2683aa;
30 + background: #dbeafe;
31 + color: #1e40af;
32 32 display: inline-block;
33 33 padding: 5px 10px;
34 34 font-weight: 500;
35 35 font-size: 14px;
@@ -35,8 +35,9 @@
35 35 font-size: 14px;
36 36 margin-top: 10px;
37 37 clear: both;
38 38 margin-bottom: 5px;
39 + border-radius: 5px;
39 40 }
40 41
41 42 @media (min-width: 1024px) {
42 43 .subscrpt_field > select {
@@ -45,130 +46,179 @@
45 46 }
46 47
47 48 /* Utility Classes */
48 49 .wp-subscription-flex {
49 - display: flex;
50 - align-items: center;
50 + display: flex;
51 + align-items: center;
51 52 }
52 53 .wp-subscription-space-between {
53 - justify-content: space-between;
54 + justify-content: space-between;
54 55 }
55 56 .wp-subscription-full-width {
56 - width: 100%;
57 + width: 100%;
57 58 }
58 59
59 60 /* Admin Header */
60 61 .wp-subscription-admin-header {
61 - background: #fff;
62 - border-bottom: 1px solid #e2e4e7;
63 - padding: 0 32px;
64 - display: flex;
65 - align-items: center;
66 - justify-content: space-between;
67 - min-height: 64px;
68 - position: sticky;
69 - top: 32px;
70 - z-index: 100;
71 - width: 100%;
72 - box-sizing: border-box;
62 + background: #fff;
63 + border-bottom: 1px solid #e2e4e7;
64 + padding: 0 24px;
65 + position: sticky;
66 + top: 32px;
67 + z-index: 100;
68 + width: 100%;
69 + box-sizing: border-box;
73 70 }
74 71
72 +.wp-subscription-admin-header-inner {
73 + max-width: 1240px;
74 + margin: 0 auto;
75 + display: flex;
76 + align-items: center;
77 + justify-content: space-between;
78 + min-height: 72px;
79 +}
80 +
75 81 .wp-subscription-admin-header-left {
76 - display: flex;
77 - align-items: center;
78 - gap: 32px;
82 + display: flex;
83 + flex-direction: column;
84 + gap: 2px;
79 85 }
80 86
87 +.wp-subscription-breadcrumb {
88 + display: flex;
89 + align-items: center;
90 + gap: 8px;
91 +}
92 +
93 +.wp-subscription-breadcrumb-home {
94 + display: inline-flex;
95 + align-items: center;
96 + color: #646970;
97 + text-decoration: none;
98 + transition: color 0.2s;
99 +}
100 +
101 +.wp-subscription-breadcrumb-home:hover {
102 + color: #2271b1;
103 +}
104 +
105 +.wp-subscription-breadcrumb-home .dashicons {
106 + font-size: 20px;
107 + width: 20px;
108 + height: 20px;
109 +}
110 +
111 +.wp-subscription-breadcrumb-sep {
112 + color: #c3c4c7;
113 + font-size: 16px;
114 + line-height: 1;
115 + user-select: none;
116 +}
117 +
118 +.wp-subscription-breadcrumb-link {
119 + color: #646970;
120 + font-weight: 500;
121 + font-size: 14px;
122 + text-decoration: none;
123 + transition: color 0.2s;
124 +}
125 +
126 +.wp-subscription-breadcrumb-link:hover {
127 + color: #2271b1;
128 +}
129 +
130 +.wp-subscription-breadcrumb-current {
131 + color: #1d2327;
132 + font-weight: 500;
133 + font-size: 14px;
134 +}
135 +
81 136 .wp-subscription-logo {
82 - height: 38px;
83 - width: auto;
84 - display: block;
137 + /* Deliberately small. It is a persistent header mark, not the page's
138 + subject — the breadcrumb on the left is what identifies the screen. */
139 + height: 22px;
140 + width: auto;
141 + display: block;
85 142 }
86 143
87 -.wp-subscription-admin-header-menu {
88 - display: flex;
89 - align-items: center;
90 - gap: 8px;
91 - margin-left: 32px;
144 +/* The licence badge sits before the logo and must not pick up the underline
145 + that admin anchors get, since the inactive state is a link. */
146 +.wp-subscription-license-badge,
147 +.wp-subscription-license-badge:hover,
148 +.wp-subscription-license-badge:focus {
149 + text-decoration: none;
92 150 }
93 151
94 -.wp-subscription-admin-header-menu a {
95 - color: #1d2327;
96 - text-decoration: none;
97 - padding: 8px 18px;
98 - border-radius: 4px;
99 - font-weight: 500;
100 - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
101 - font-size: 15px;
102 - transition: background 0.2s, color 0.2s, box-shadow 0.2s;
103 - background: transparent;
104 - border: none;
105 - outline: none;
106 - box-shadow: none;
152 +a.wp-subscription-license-badge:hover {
153 + filter: brightness(0.97);
107 154 }
108 155
109 -.wp-subscription-admin-header-menu a.current,
110 -.wp-subscription-admin-header-menu a.active {
111 - background: #f0f0f1;
112 - color: #2271b1;
156 +a.wp-subscription-license-badge:focus {
157 + box-shadow: 0 0 0 3px var(--wpsubs-brand-ring, rgba(255, 77, 0, 0.2));
158 + outline: none;
113 159 }
114 160
115 -.wp-subscription-admin-header-menu a:hover {
116 - background: #eaf6ff;
117 - color: #2271b1;
118 - box-shadow: 0 2px 8px rgba(34,113,177,0.06);
161 +.wp-subscription-admin-header-right {
162 + display: flex;
163 + align-items: center;
164 + gap: 12px;
119 165 }
120 166
121 -.wp-subscription-admin-header-right {
122 - display: flex;
123 - align-items: center;
124 - margin-left: auto;
167 +.wp-subscription-help-btn {
168 + display: inline-flex;
169 + align-items: center;
170 + gap: 5px;
171 + padding: 6px 14px;
172 + border: 1px solid #c3c4c7;
173 + border-radius: 4px;
174 + color: #1d2327;
175 + text-decoration: none;
176 + font-size: 13px;
177 + font-weight: 500;
178 + background: #fff;
179 + line-height: 1.4;
180 + transition:
181 + border-color 0.2s,
182 + color 0.2s,
183 + background 0.2s;
125 184 }
126 185
127 -.wp-subscription-upgrade-btn {
128 - background: #2271b1;
129 - color: #fff;
130 - padding: 10px 22px;
131 - border-radius: 4px;
132 - text-decoration: none;
133 - font-weight: 600;
134 - font-size: 15px;
135 - margin-left: 16px;
136 - transition: background 0.2s, box-shadow 0.2s;
137 - box-shadow: 0 1px 3px rgba(34,113,177,0.08);
138 - border: none;
139 - outline: none;
140 - display: inline-block;
186 +.wp-subscription-help-btn:hover {
187 + border-color: #2271b1;
188 + color: #2271b1;
189 + background: #f0f6fc;
141 190 }
142 191
143 -.wp-subscription-upgrade-btn:hover {
144 - background: #135e96;
145 - color: #fff;
146 - box-shadow: 0 3px 12px rgba(34,113,177,0.13);
192 +.wp-subscription-help-btn .dashicons {
193 + font-size: 16px;
194 + width: 16px;
195 + height: 16px;
196 + margin-top: 1px;
147 197 }
148 198
149 199 /* Admin Content */
150 200
151 201 .wp-subscription-admin-box {
152 - background: #fff;
153 - border-radius: 6px;
154 - box-shadow: 0 1px 3px rgba(0,0,0,0.1);
155 - padding: 25px;
156 - margin-bottom: 20px;
157 - transition: box-shadow 0.3s ease;
202 + background: #fff;
203 + border-radius: 6px;
204 + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
205 + padding: 25px;
206 + margin-bottom: 20px;
207 + transition: box-shadow 0.3s ease;
158 208 }
159 209
160 210 .wp-subscription-admin-box:hover {
161 - box-shadow: 0 3px 6px rgba(0,0,0,0.1);
211 + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
162 212 }
163 213
164 214 /* Typography */
165 215 .wp-subscription-admin-title {
166 - font-family: Georgia, 'Times New Roman', serif;
167 - font-size: 24px;
168 - color: #1d2327;
169 - margin: 0 0 20px 0;
170 - padding: 0;
216 + font-family: Georgia, "Times New Roman", serif;
217 + font-size: 24px;
218 + color: #1d2327;
219 + margin: 0 0 20px 0;
220 + padding: 0;
171 221 }
172 222
173 223 .wp-subscription-admin-content p,
174 224 .wp-subscription-admin-content li,
@@ -173,440 +223,598 @@
173 223 .wp-subscription-admin-content p,
174 224 .wp-subscription-admin-content li,
175 225 .wp-subscription-admin-content td,
176 226 .wp-subscription-admin-content th {
177 - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
178 - font-size: 14px;
179 - line-height: 1.5;
180 - color: #1d2327;
227 + font-family:
228 + -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
229 + font-size: 14px;
230 + line-height: 1.5;
231 + color: #1d2327;
181 232 }
182 233
183 234 /* Navigation (legacy, for reference) */
184 235 .wp-subscription-admin-nav {
185 - display: flex;
186 - gap: 20px;
187 - margin-bottom: 20px;
236 + display: flex;
237 + gap: 20px;
238 + margin-bottom: 20px;
188 239 }
189 240
190 241 .wp-subscription-admin-nav a {
191 - color: #1d2327;
192 - text-decoration: none;
193 - padding: 8px 16px;
194 - border-radius: 4px;
195 - transition: all 0.3s ease;
242 + color: #1d2327;
243 + text-decoration: none;
244 + padding: 8px 16px;
245 + border-radius: 4px;
246 + transition: all 0.3s ease;
196 247 }
197 248
198 249 .wp-subscription-admin-nav a:hover {
199 - background: #f0f0f1;
250 + background: #f0f0f1;
200 251 }
201 252
202 253 .wp-subscription-admin-nav a.current {
203 - background: #2271b1;
204 - color: #fff;
254 + background: #2271b1;
255 + color: #fff;
205 256 }
206 257
207 258 /* Stats Cards */
208 259 .wp-subscription-stats-grid {
209 - display: grid;
210 - grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
211 - gap: 20px;
212 - margin-bottom: 30px;
260 + display: grid;
261 + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
262 + gap: 20px;
263 + margin-bottom: 30px;
213 264 }
214 265
215 266 .wp-subscription-stat-card {
216 - background: #fff;
217 - border-radius: 6px;
218 - padding: 20px;
219 - box-shadow: 0 1px 3px rgba(0,0,0,0.1);
220 - transition: all 0.3s ease;
267 + background: #fff;
268 + border-radius: 6px;
269 + padding: 20px;
270 + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
271 + transition: all 0.3s ease;
221 272 }
222 273
223 274 .wp-subscription-stat-card:hover {
224 - box-shadow: 0 3px 6px rgba(0,0,0,0.1);
225 - transform: translateY(-2px);
275 + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
276 + transform: translateY(-2px);
226 277 }
227 278
228 279 .wp-subscription-stat-title {
229 - font-family: Georgia, 'Times New Roman', serif;
230 - font-size: 16px;
231 - color: #1d2327;
232 - margin: 0 0 10px 0;
280 + font-family: Georgia, "Times New Roman", serif;
281 + font-size: 16px;
282 + color: #1d2327;
283 + margin: 0 0 10px 0;
233 284 }
234 285
235 286 .wp-subscription-stat-value {
236 - font-size: 24px;
237 - font-weight: 600;
238 - color: #2271b1;
287 + font-size: 24px;
288 + font-weight: 600;
289 + color: #2271b1;
239 290 }
240 291
241 292 /* Support Grid */
242 293 .wp-subscription-support-grid {
243 - display: grid;
244 - grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
245 - gap: 20px;
294 + display: grid;
295 + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
296 + gap: 20px;
246 297 }
247 298
248 299 .wp-subscription-support-card {
249 - background: #fff;
250 - border-radius: 6px;
251 - padding: 25px;
252 - box-shadow: 0 1px 3px rgba(0,0,0,0.1);
253 - transition: all 0.3s ease;
300 + background: #fff;
301 + border-radius: 6px;
302 + padding: 25px;
303 + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
304 + transition: all 0.3s ease;
254 305 }
255 306
256 307 .wp-subscription-support-card:hover {
257 - box-shadow: 0 3px 6px rgba(0,0,0,0.1);
258 - transform: translateY(-2px);
308 + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
309 + transform: translateY(-2px);
259 310 }
260 311
261 312 /* Responsive Design */
262 313 @media screen and (max-width: 900px) {
263 - .wp-subscription-admin-header {
264 - flex-direction: column;
265 - gap: 10px;
266 - text-align: center;
267 - padding: 0 10px;
268 - }
269 - .wp-subscription-admin-header-left {
270 - flex-direction: column;
271 - gap: 10px;
272 - }
273 - .wp-subscription-admin-header-menu {
274 - margin-left: 0;
275 - gap: 4px;
276 - }
277 - .wp-subscription-admin-content {
278 - padding: 10px;
279 - }
314 + .wp-subscription-admin-header {
315 + padding: 0 16px;
316 + }
317 + .wp-subscription-admin-header-inner {
318 + flex-wrap: wrap;
319 + gap: 10px;
320 + }
321 + .wp-subscription-admin-content {
322 + padding: 10px;
323 + }
280 324 }
281 325
282 326 @media screen and (max-width: 600px) {
283 - .wp-subscription-admin-header {
284 - min-height: 48px;
285 - padding: 0 4px;
286 - }
287 - .wp-subscription-logo {
288 - height: 28px;
289 - }
290 - .wp-subscription-admin-header-menu a {
291 - font-size: 13px;
292 - padding: 6px 10px;
293 - }
294 - .wp-subscription-upgrade-btn {
295 - font-size: 13px;
296 - padding: 7px 12px;
297 - }
327 + .wp-subscription-admin-header {
328 + padding: 0 12px;
329 + }
330 + .wp-subscription-admin-header-inner {
331 + flex-direction: column;
332 + align-items: flex-start;
333 + gap: 8px;
334 + }
335 + .wp-subscription-admin-header-right {
336 + gap: 8px;
337 + }
338 + .wp-subscription-logo {
339 + height: 18px;
340 + }
298 341 }
299 342
300 -/* Remove left padding on WP Subscription admin pages only */
343 +/* Remove left padding on WPSubscription admin pages only */
301 344 body.toplevel_page_wp-subscription #wpcontent,
302 -body.wp-subscription_page_wp-subscription-stats #wpcontent,
303 -body.wp-subscription_page_wp-subscription-settings #wpcontent,
304 -body.wp-subscription_page_wp-subscription-tools #wpcontent,
305 -body.wp-subscription_page_wp-subscription-support #wpcontent {
306 - padding-left: 0 !important;
345 +body[class*="wpsubscription_page_wp-subscription"] #wpcontent {
346 + padding-left: 0 !important;
307 347 }
308 348
349 +/* Remove onboarding page menu item */
350 +.wp-submenu a[href*="page=wp-subscription-onboarding"],
351 +.wp-submenu a[href*="page=wp-subscription-details"] {
352 + display: none !important;
353 +}
354 +
309 355 /* Table & List Styles */
310 356 .wp-subscription-list-table {
311 - border: none !important;
312 - border-radius: 8px;
313 - box-shadow: 0 1px 6px rgba(0,0,0,0.04);
314 - overflow: hidden;
357 + border: none !important;
358 + border-radius: 8px;
359 + box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04);
360 + overflow: hidden;
315 361 }
316 362 .wp-subscription-list-table th,
317 363 .wp-subscription-list-table td {
318 - border: none;
319 - border-bottom: 1px solid #f0f0f1;
320 - background: #fff;
364 + border: none;
365 + border-bottom: 1px solid #f0f0f1;
366 + background: #fff;
321 367 }
322 368 .wp-subscription-list-table tr:last-child td {
323 - /* border-bottom: none; */
369 + /* border-bottom: none; */
324 370 }
325 371
326 -
327 372 .wp-subscription-list-table .button-small {
328 - font-size: 13px;
329 - padding: 5px 14px;
330 - border-radius: 5px;
373 + font-size: 13px;
374 + padding: 5px 14px;
375 + border-radius: 5px;
331 376 }
332 377
333 378 /* Remove default table border */
334 379 .wp-subscription-list-table {
335 - border-collapse: separate !important;
336 - border-spacing: 0;
380 + border-collapse: separate !important;
381 + border-spacing: 0;
337 382 }
338 383
339 384 /* Row Actions on Title Hover */
340 385 .wp-subscription-title-wrap {
341 - position: relative;
386 + position: relative;
342 387 }
343 388 .wp-subscription-row-actions {
344 - visibility: hidden;
345 - gap: 8px;
346 - display: flex;
389 + visibility: hidden;
390 + gap: 8px;
391 + display: flex;
347 392 }
348 393 .wp-subscription-title-wrap:hover .wp-subscription-row-actions {
349 - visibility: visible;
394 + visibility: visible;
350 395 }
351 396 .wp-subscription-row-actions a {
352 - color: #2271b1;
353 - font-size: 13px;
354 - text-decoration: none;
355 - padding: 2px 8px;
356 - border-radius: 4px;
357 - background: #f0f6ff;
358 - transition: background 0.2s, color 0.2s;
397 + color: #2271b1;
398 + font-size: 13px;
399 + text-decoration: none;
400 + padding: 2px 8px;
401 + border-radius: 4px;
402 + background: #f0f6ff;
403 + transition:
404 + background 0.2s,
405 + color 0.2s;
359 406 }
360 407 .wp-subscription-row-actions a:hover {
361 - background: #2271b1;
362 - color: #fff;
408 + background: #2271b1;
409 + color: #fff;
363 410 }
364 411
365 -/* Status Label Styles */
366 -.wp-subscription-list-table .subscrpt-active {
367 - background: #e6f4ea;
368 - color: #1a7f37;
369 - border-radius: 999px;
370 - padding: 4px 16px;
371 - font-weight: 600;
372 - font-size: 13px;
373 - display: inline-block;
374 -}
375 -.wp-subscription-list-table .subscrpt-cancelled {
376 - background: #fbeaea;
377 - color: #d93025;
378 - border-radius: 999px;
379 - padding: 4px 16px;
380 - font-weight: 600;
381 - font-size: 13px;
382 - display: inline-block;
383 -}
384 -.wp-subscription-list-table .subscrpt-draft {
385 - background: #f3f3f3;
386 - color: #888;
387 - border-radius: 999px;
388 - padding: 4px 16px;
389 - font-weight: 600;
390 - font-size: 13px;
391 - display: inline-block;
392 -}
393 -
394 412 /* =====================
395 413 Subscriptions List Page
396 414 ===================== */
397 415 .wp-subscription-title-wrap:hover .wp-subscription-row-actions {
398 - opacity: 1 !important;
399 - pointer-events: auto !important;
416 + opacity: 1 !important;
417 + pointer-events: auto !important;
400 418 }
401 419 .wp-subscription-row-actions {
402 - display: flex;
403 - align-items: center;
404 - gap: 8px;
405 - background: none;
406 - box-shadow: none;
407 - position: static;
408 - padding: 0;
409 - border-radius: 0;
410 - white-space: nowrap;
420 + display: flex;
421 + align-items: center;
422 + gap: 8px;
423 + background: none;
424 + box-shadow: none;
425 + position: static;
426 + padding: 0;
427 + border-radius: 0;
428 + white-space: nowrap;
411 429 }
412 430 .wp-subscription-row-actions a {
413 - color: #2271b1;
414 - text-decoration: none;
415 - font-size: 13px;
416 - padding: 2px 4px;
417 - transition: color 0.15s;
431 + color: #2271b1;
432 + text-decoration: none;
433 + font-size: 13px;
434 + padding: 2px 4px;
435 + transition: color 0.15s;
418 436 }
419 -.wp-subscription-row-actions a[style*='color:#d93025'] {
420 - color: #d93025 !important;
437 +.wp-subscription-row-actions a[style*="color:#d93025"] {
438 + color: #d93025 !important;
421 439 }
422 440 .wp-subscription-modern-table {
423 - border-radius: 10px;
424 - overflow: hidden;
425 - background: #fff;
426 - border: none !important;
427 - box-shadow: none !important;
441 + border-radius: 10px;
442 + overflow: hidden;
443 + background: #fff;
444 + border: none !important;
445 + box-shadow: none !important;
428 446 }
429 447 .wp-subscription-modern-table thead tr {
430 - background: #e6f0fa !important;
431 - border-bottom: 2px solid #b6d4f7 !important;
448 + background: #e6f0fa !important;
449 + border-bottom: 2px solid #b6d4f7 !important;
432 450 }
433 451 .wp-subscription-modern-table th {
434 - font-weight: 600 !important;
435 - color: #1e293b !important;
436 - background: none !important;
452 + font-weight: 600 !important;
453 + color: #1e293b !important;
454 + background: none !important;
437 455 }
438 456 .wp-subscription-modern-table th,
439 457 .wp-subscription-modern-table td {
440 - border: none !important;
441 - padding: 14px 18px !important;
442 - background: none !important;
458 + border: none !important;
459 + padding: 14px 18px !important;
460 + background: none !important;
443 461 }
444 462 .wp-subscription-modern-table tr {
445 - border-bottom: 1px solid #f1f3f7 !important;
446 - transition: background 0.18s;
463 + border-bottom: 1px solid #f1f3f7 !important;
464 + transition: background 0.18s;
447 465 }
448 466 .wp-subscription-modern-table tr:last-child {
449 - border-bottom: none !important;
467 + border-bottom: none !important;
450 468 }
451 469 .wp-subscription-modern-table tbody tr:hover {
452 - background: #f0f6ff !important;
453 - box-shadow: none !important;
454 - z-index: 1;
470 + background: #f0f6ff !important;
471 + box-shadow: none !important;
472 + z-index: 1;
455 473 }
456 474 .subscrpt-id-link {
457 - color: #2563eb;
458 - font-weight: 600;
459 - text-decoration: none;
460 - transition: color 0.16s;
475 + color: #2563eb;
476 + font-weight: 600;
477 + text-decoration: none;
478 + transition: color 0.16s;
461 479 }
462 480 .subscrpt-id-link:hover {
463 - color: #1e40af;
464 - text-decoration: underline;
481 + color: #1e40af;
482 + text-decoration: underline;
465 483 }
466 -.subscrpt-status-badge {
467 - display: inline-block;
468 - min-width: 48px;
469 - padding: 2px 8px;
470 - border-radius: 4px;
471 - font-size: 12px;
472 - font-weight: 500;
473 - color: #222;
474 - text-align: center;
475 - letter-spacing: 0.01em;
476 - background: #e9ecef;
477 - box-shadow: none;
478 - text-transform: capitalize;
479 -}
480 -.subscrpt-status-active { background: #27c775 !important; color: #ffffff !important; }
481 -.subscrpt-status-cancelled { background: #fee2e2 !important; color: #b91c1c !important; }
482 -.subscrpt-status-draft { background: #e0e7ef !important; color: #374151 !important; }
483 -.subscrpt-status-pending { background: #fef9c3 !important; color: #b45309 !important; }
484 -.subscrpt-status-expired { background: #e5e7eb !important; color: #6b7280 !important; }
485 -.subscrpt-status-pe_cancelled { background: #ffedd5 !important; color: #b45309 !important; }
486 484 .subscrpt-id-title {
487 - font-size: 11px;
488 - color: #888;
489 - margin-top: 2px;
490 - line-height: 1.3;
491 - max-width: 120px;
492 - white-space: nowrap;
493 - overflow: hidden;
494 - text-overflow: ellipsis;
485 + font-size: 11px;
486 + color: #888;
487 + margin-top: 2px;
488 + line-height: 1.3;
489 + max-width: 120px;
490 + white-space: nowrap;
491 + overflow: hidden;
492 + text-overflow: ellipsis;
495 493 }
496 494
497 495 /* Subscriptions List Page Layout */
498 496 .wp-subscription-admin-content.list-page {
499 - max-width: 1240px;
500 - background: #fff;
501 - padding: 32px 24px 24px 24px;
502 - border-radius: 12px;
497 + max-width: 1240px;
498 + margin: 24px auto 32px auto;
499 + background: transparent;
500 + padding: 0px 24px;
503 501 }
504 502 .wp-subscription-list-header {
505 - margin-bottom: 28px;
506 - display: flex;
507 - justify-content: flex-start;
508 - align-items: center;
509 - flex-wrap: wrap;
510 - gap: 12px;
503 + margin-bottom: 28px;
504 + display: flex;
505 + justify-content: space-between;
506 + align-items: center;
507 + flex-wrap: wrap;
508 + gap: 16px;
511 509 }
512 -.wp-subscription-list-header form {
513 - display: flex;
514 - align-items: center;
515 - gap: 10px;
516 - flex-wrap: wrap;
510 +.wp-subscription-filters {
511 + display: flex;
512 + align-items: center;
513 + gap: 10px;
514 + flex-wrap: wrap;
515 + flex: 1;
517 516 }
517 +.wp-subscription-bulk-actions {
518 + display: flex;
519 + align-items: center;
520 + gap: 8px;
521 + flex-shrink: 0;
522 +}
518 523 .wp-subscription-pagination {
519 - display: flex;
520 - justify-content: flex-end;
521 - align-items: center;
522 - gap: 8px;
523 - margin-top: 24px;
524 + display: flex;
525 + justify-content: flex-end;
526 + align-items: center;
527 + gap: 8px;
528 + margin-top: 24px;
524 529 }
525 530 .wp-subscription-pagination .total {
526 - color: #888;
527 - font-size: 13px;
531 + color: #888;
532 + font-size: 13px;
528 533 }
529 534 .wp-subscription-pagination .goto-label {
530 - margin-left: 16px;
531 - color: #888;
532 - font-size: 13px;
535 + margin-left: 16px;
536 + color: #888;
537 + font-size: 13px;
533 538 }
534 539 .wp-subscription-pagination form {
535 - display: inline-block;
536 - margin: 0;
540 + display: inline-block;
541 + margin: 0;
537 542 }
538 543 .wp-subscription-pagination input[type="number"] {
539 - width: 48px;
544 + width: 48px;
540 545 }
541 546 .wp-subscription-customer-email {
542 - color: #888;
543 - font-size: 12px;
544 - line-height: 1.3;
545 - word-break: break-all;
547 + color: #888;
548 + font-size: 12px;
549 + line-height: 1.3;
550 + word-break: break-all;
546 551 }
547 -@keyframes floatY { 0% { transform: translateY(0); } 100% { transform: translateY(-10px); } }
548 -.wp-subscription-admin-box:hover { box-shadow:0 4px 16px #e0e7ef; transition:box-shadow .2s; }
549 -.wp-subscription-pro-callout { background:#2271b1!important; }
550 -.wp-subscription-pro-callout h2, .wp-subscription-pro-callout p { color:#fff!important; }
551 -.wp-subscription-pro-callout .button-primary { background:#fff!important;color:#2271b1!important; }
552 -.wp-subscription-pro-callout .button-primary:hover { background:#e0e7ef!important; }
552 +@keyframes floatY {
553 + 0% {
554 + transform: translateY(0);
555 + }
556 + 100% {
557 + transform: translateY(-10px);
558 + }
559 +}
560 +.wp-subscription-admin-box:hover {
561 + box-shadow: 0 4px 16px #e0e7ef;
562 + transition: box-shadow 0.2s;
563 +}
564 +.wp-subscription-pro-callout {
565 + background: #2271b1 !important;
566 +}
567 +.wp-subscription-pro-callout h2,
568 +.wp-subscription-pro-callout p {
569 + color: #fff !important;
570 +}
571 +.wp-subscription-pro-callout .button-primary {
572 + background: #fff !important;
573 + color: #2271b1 !important;
574 +}
575 +.wp-subscription-pro-callout .button-primary:hover {
576 + background: #e0e7ef !important;
577 +}
553 578 @media (max-width: 900px) {
554 - .wp-subscription-support-resources { grid-template-columns:1fr!important; }
579 + .wp-subscription-support-resources {
580 + grid-template-columns: 1fr !important;
581 + }
555 582 }
556 583 .wp-subscription-hero-upgrade {
557 - position: relative;
558 - display: flex;
559 - align-items: center;
560 - justify-content: space-between;
561 - background: #2196f3;
562 - border-radius: 12px;
563 - padding: 32px 36px;
564 - margin-bottom: 28px;
565 - overflow: hidden;
566 - min-height: 90px;
584 + position: relative;
585 + display: flex;
586 + align-items: center;
587 + justify-content: space-between;
588 + background: #2196f3;
589 + border-radius: 12px;
590 + padding: 32px 36px;
591 + margin-bottom: 28px;
592 + overflow: hidden;
593 + min-height: 90px;
567 594 }
568 595 .wp-subscription-hero-upgrade::before {
569 - content: "";
570 - position: absolute;
571 - inset: 0;
572 - background-image: repeating-linear-gradient(135deg, rgba(255,255,255,0.07) 0 2px, transparent 2px 40px);
573 - opacity: 0.25;
574 - pointer-events: none;
596 + content: "";
597 + position: absolute;
598 + inset: 0;
599 + background-image: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.07) 0 2px, transparent 2px 40px);
600 + opacity: 0.25;
601 + pointer-events: none;
575 602 }
576 603 .wp-subscription-hero-content {
577 - display: flex;
578 - align-items: center;
579 - gap: 18px;
580 - z-index: 1;
604 + display: flex;
605 + align-items: center;
606 + gap: 18px;
607 + z-index: 1;
581 608 }
582 609 .wp-subscription-hero-icon {
583 - font-size: 2em;
584 - line-height: 1;
610 + font-size: 2em;
611 + line-height: 1;
585 612 }
586 613 .wp-subscription-hero-title {
587 - font-size: 2em;
588 - font-weight: bold;
589 - color: #fff;
590 - line-height: 1.2;
614 + font-size: 2em;
615 + font-weight: bold;
616 + color: #fff;
617 + line-height: 1.2;
591 618 }
592 619 .wp-subscription-hero-btn {
593 - z-index: 1;
594 - background: #fff;
595 - color: #2196f3;
596 - font-weight: 600;
597 - font-size: 1.1em;
598 - padding: 16px 32px;
599 - border-radius: 8px;
600 - text-decoration: none;
601 - box-shadow: 0 2px 8px rgba(33,150,243,0.08);
602 - transition: background 0.18s, color 0.18s, transform 0.18s;
603 - border: none;
604 - outline: none;
605 - display: inline-block;
606 - text-align: center;
620 + z-index: 1;
621 + background: #fff;
622 + color: #2196f3;
623 + font-weight: 600;
624 + font-size: 1.1em;
625 + padding: 16px 32px;
626 + border-radius: 8px;
627 + text-decoration: none;
628 + box-shadow: 0 2px 8px rgba(33, 150, 243, 0.08);
629 + transition:
630 + background 0.18s,
631 + color 0.18s,
632 + transform 0.18s;
633 + border: none;
634 + outline: none;
635 + display: inline-block;
636 + text-align: center;
607 637 }
608 638 .wp-subscription-hero-btn:hover {
609 - background: #e3f0fd;
610 - color: #1565c0;
611 - transform: translateY(-2px) scale(1.03);
612 -}
639 + background: #e3f0fd;
640 + color: #1565c0;
641 + transform: translateY(-2px) scale(1.03);
642 +}
643 +
644 +/* Bulk Actions Styling */
645 +.tablenav {
646 + margin: 8px 0 16px 0;
647 + display: flex;
648 + align-items: center;
649 + justify-content: space-between;
650 +}
651 +
652 +.tablenav .bulkactions {
653 + display: flex;
654 + align-items: center;
655 + gap: 8px;
656 +}
657 +
658 +.tablenav select {
659 + min-width: 120px;
660 +}
661 +
662 +.tablenav .button {
663 + margin: 0;
664 +}
665 +
666 +/* Checkbox styling */
667 +.wp-subscription-modern-table input[type="checkbox"] {
668 + margin: 0;
669 +}
670 +
671 +/* Trash row styling */
672 +.wp-subscription-modern-table tr[data-status="trash"] {
673 + opacity: 0.7;
674 +}
675 +
676 +.wp-subscription-modern-table tr[data-status="trash"]:hover {
677 + opacity: 1;
678 +}
679 +
680 +/* Empty Trash button styling */
681 +.button-link-delete {
682 + color: #d63638 !important;
683 + text-decoration: none;
684 + border: 1px solid #d63638;
685 + border-radius: 4px;
686 + padding: 4px 12px;
687 + font-size: 13px;
688 + line-height: 1.4;
689 + transition: all 0.2s;
690 +}
691 +
692 +.button-link-delete:hover {
693 + background: #d63638;
694 + color: #fff !important;
695 + text-decoration: none;
696 +}
697 +
698 +/* --------------------------------------------------------------------------
699 + Integrations: sticky filter rail + results
700 +
701 + Three facet groups and a dozen chips do not fit across the top without
702 + pushing the first card off the fold, and a bar up there scrolls away exactly
703 + when a long list needs narrowing. They live in a column instead, which stays
704 + in reach while the results scroll.
705 + -------------------------------------------------------------------------- */
706 +
707 +/*
708 + * The `hidden` attribute is only `display: none` in the UA stylesheet, so any
709 + * class that sets `display` outranks it. `.wpsubs-btn` is `inline-flex`, which
710 + * meant the Reset button stayed on screen with `hidden` set — visible, and
711 + * still clickable. Anything toggled by the filter script needs this.
712 + */
713 +.subscrpt-int-filters [hidden],
714 +.subscrpt-int-card[hidden],
715 +[data-subscrpt-int-section][hidden],
716 +[data-subscrpt-int-empty][hidden],
717 +[data-subscrpt-integration-filters][hidden] {
718 + display: none !important;
719 +}
720 +
721 +.subscrpt-int-layout {
722 + display: grid;
723 + grid-template-columns: 232px minmax(0, 1fr);
724 + gap: 32px;
725 + align-items: start;
726 +}
727 +
728 +.subscrpt-int-results {
729 + min-width: 0;
730 +}
731 +
732 +/* The rail sticks below the page header, which is itself sticky at 32px. */
733 +.subscrpt-int-sidebar {
734 + position: sticky;
735 + top: 104px;
736 + max-height: calc(100vh - 124px);
737 + overflow-y: auto;
738 + overscroll-behavior: contain;
739 +}
740 +
741 +.subscrpt-int-filters {
742 + display: flex;
743 + flex-direction: column;
744 + gap: 14px;
745 +}
746 +
747 +.subscrpt-int-filters__reset {
748 + align-self: stretch;
749 + justify-content: center;
750 + margin: 0 4px;
751 +}
752 +
753 +/* The filter rail is the shared `wpsubs-vnav` component (one nav per facet).
754 + Only the count badge at the end of each row is page-specific. */
755 +.subscrpt-int-chip__count {
756 + font-size: 11px;
757 + font-variant-numeric: tabular-nums;
758 + padding: 0 6px;
759 + border-radius: 9999px;
760 + background: var(--wpsubs-surface-muted, #f3f4f6);
761 + color: var(--wpsubs-text-muted, #6b7280);
762 + flex-shrink: 0;
763 +}
764 +
765 +.wpsubs-vnav__item.is-active .subscrpt-int-chip__count {
766 + background: var(--wpsubs-brand, #ff4d00);
767 + color: #fff;
768 +}
769 +
770 +.subscrpt-int-empty {
771 + margin: 0 0 20px;
772 + padding: 40px 24px;
773 + text-align: center;
774 + font-size: 13px;
775 + color: var(--wpsubs-text-muted, #6b7280);
776 + background: var(--wpsubs-surface, #fff);
777 + border: 1px solid var(--wpsubs-border, #e5e7eb);
778 + border-radius: var(--wpsubs-radius, 8px);
779 +}
780 +
781 +/* Below this the rail would squeeze the card grid to one column, so it goes
782 + back on top and stops sticking.
783 +
784 + Measured against WordPress's own fold point rather than a round number: at
785 + 960px the admin menu collapses to 36px, so the content gains 124px exactly
786 + as the viewport loses room, and the rail plus two card columns still fit.
787 + The previous 1200px threshold fired on an ordinary laptop — a 1196px window
788 + put the filters back on top with 756px of space going spare beside them. */
789 +@media screen and (max-width: 960px) {
790 + .subscrpt-int-layout {
791 + grid-template-columns: minmax(0, 1fr);
792 + }
793 +
794 + .subscrpt-int-sidebar {
795 + position: static;
796 + max-height: none;
797 + overflow: visible;
798 + }
799 +
800 + .subscrpt-int-filters {
801 + flex-direction: row;
802 + flex-wrap: wrap;
803 + align-items: flex-start;
804 + gap: 12px 20px;
805 + }
806 +
807 + /* Each facet's vnav sits as its own column in the wrapped rail. */
808 + .subscrpt-int-filters .wpsubs-vnav {
809 + flex: 1 1 180px;
810 + }
811 +
812 + /* Reset keeps its place under the filters: a full-width last line. */
813 + .subscrpt-int-filters__reset {
814 + flex: 1 1 100%;
815 + }
816 +
817 + [data-subscrpt-int-reset] {
818 + flex: 0 0 100%;
819 + }
820 +}