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 +550 -408 1.5.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,506 +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 -body.wp-subscription_page_wp-subscription-delivery #wpcontent,
307 -body.wp-subscription_page_wp-subscription-integrations #wpcontent
308 - {
309 - padding-left: 0 !important;
345 +body[class*="wpsubscription_page_wp-subscription"] #wpcontent {
346 + padding-left: 0 !important;
310 347 }
311 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 +
312 355 /* Table & List Styles */
313 356 .wp-subscription-list-table {
314 - border: none !important;
315 - border-radius: 8px;
316 - box-shadow: 0 1px 6px rgba(0,0,0,0.04);
317 - 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;
318 361 }
319 362 .wp-subscription-list-table th,
320 363 .wp-subscription-list-table td {
321 - border: none;
322 - border-bottom: 1px solid #f0f0f1;
323 - background: #fff;
364 + border: none;
365 + border-bottom: 1px solid #f0f0f1;
366 + background: #fff;
324 367 }
325 368 .wp-subscription-list-table tr:last-child td {
326 - /* border-bottom: none; */
369 + /* border-bottom: none; */
327 370 }
328 371
329 -
330 372 .wp-subscription-list-table .button-small {
331 - font-size: 13px;
332 - padding: 5px 14px;
333 - border-radius: 5px;
373 + font-size: 13px;
374 + padding: 5px 14px;
375 + border-radius: 5px;
334 376 }
335 377
336 378 /* Remove default table border */
337 379 .wp-subscription-list-table {
338 - border-collapse: separate !important;
339 - border-spacing: 0;
380 + border-collapse: separate !important;
381 + border-spacing: 0;
340 382 }
341 383
342 384 /* Row Actions on Title Hover */
343 385 .wp-subscription-title-wrap {
344 - position: relative;
386 + position: relative;
345 387 }
346 388 .wp-subscription-row-actions {
347 - visibility: hidden;
348 - gap: 8px;
349 - display: flex;
389 + visibility: hidden;
390 + gap: 8px;
391 + display: flex;
350 392 }
351 393 .wp-subscription-title-wrap:hover .wp-subscription-row-actions {
352 - visibility: visible;
394 + visibility: visible;
353 395 }
354 396 .wp-subscription-row-actions a {
355 - color: #2271b1;
356 - font-size: 13px;
357 - text-decoration: none;
358 - padding: 2px 8px;
359 - border-radius: 4px;
360 - background: #f0f6ff;
361 - 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;
362 406 }
363 407 .wp-subscription-row-actions a:hover {
364 - background: #2271b1;
365 - color: #fff;
408 + background: #2271b1;
409 + color: #fff;
366 410 }
367 411
368 -/* Status Label Styles */
369 -.wp-subscription-list-table .subscrpt-active {
370 - background: #e6f4ea;
371 - color: #1a7f37;
372 - border-radius: 999px;
373 - padding: 4px 16px;
374 - font-weight: 600;
375 - font-size: 13px;
376 - display: inline-block;
377 -}
378 -.wp-subscription-list-table .subscrpt-cancelled {
379 - background: #fbeaea;
380 - color: #d93025;
381 - border-radius: 999px;
382 - padding: 4px 16px;
383 - font-weight: 600;
384 - font-size: 13px;
385 - display: inline-block;
386 -}
387 -.wp-subscription-list-table .subscrpt-draft {
388 - background: #f3f3f3;
389 - color: #888;
390 - border-radius: 999px;
391 - padding: 4px 16px;
392 - font-weight: 600;
393 - font-size: 13px;
394 - display: inline-block;
395 -}
396 -
397 412 /* =====================
398 413 Subscriptions List Page
399 414 ===================== */
400 415 .wp-subscription-title-wrap:hover .wp-subscription-row-actions {
401 - opacity: 1 !important;
402 - pointer-events: auto !important;
416 + opacity: 1 !important;
417 + pointer-events: auto !important;
403 418 }
404 419 .wp-subscription-row-actions {
405 - display: flex;
406 - align-items: center;
407 - gap: 8px;
408 - background: none;
409 - box-shadow: none;
410 - position: static;
411 - padding: 0;
412 - border-radius: 0;
413 - 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;
414 429 }
415 430 .wp-subscription-row-actions a {
416 - color: #2271b1;
417 - text-decoration: none;
418 - font-size: 13px;
419 - padding: 2px 4px;
420 - transition: color 0.15s;
431 + color: #2271b1;
432 + text-decoration: none;
433 + font-size: 13px;
434 + padding: 2px 4px;
435 + transition: color 0.15s;
421 436 }
422 -.wp-subscription-row-actions a[style*='color:#d93025'] {
423 - color: #d93025 !important;
437 +.wp-subscription-row-actions a[style*="color:#d93025"] {
438 + color: #d93025 !important;
424 439 }
425 440 .wp-subscription-modern-table {
426 - border-radius: 10px;
427 - overflow: hidden;
428 - background: #fff;
429 - border: none !important;
430 - box-shadow: none !important;
441 + border-radius: 10px;
442 + overflow: hidden;
443 + background: #fff;
444 + border: none !important;
445 + box-shadow: none !important;
431 446 }
432 447 .wp-subscription-modern-table thead tr {
433 - background: #e6f0fa !important;
434 - border-bottom: 2px solid #b6d4f7 !important;
448 + background: #e6f0fa !important;
449 + border-bottom: 2px solid #b6d4f7 !important;
435 450 }
436 451 .wp-subscription-modern-table th {
437 - font-weight: 600 !important;
438 - color: #1e293b !important;
439 - background: none !important;
452 + font-weight: 600 !important;
453 + color: #1e293b !important;
454 + background: none !important;
440 455 }
441 456 .wp-subscription-modern-table th,
442 457 .wp-subscription-modern-table td {
443 - border: none !important;
444 - padding: 14px 18px !important;
445 - background: none !important;
458 + border: none !important;
459 + padding: 14px 18px !important;
460 + background: none !important;
446 461 }
447 462 .wp-subscription-modern-table tr {
448 - border-bottom: 1px solid #f1f3f7 !important;
449 - transition: background 0.18s;
463 + border-bottom: 1px solid #f1f3f7 !important;
464 + transition: background 0.18s;
450 465 }
451 466 .wp-subscription-modern-table tr:last-child {
452 - border-bottom: none !important;
467 + border-bottom: none !important;
453 468 }
454 469 .wp-subscription-modern-table tbody tr:hover {
455 - background: #f0f6ff !important;
456 - box-shadow: none !important;
457 - z-index: 1;
470 + background: #f0f6ff !important;
471 + box-shadow: none !important;
472 + z-index: 1;
458 473 }
459 474 .subscrpt-id-link {
460 - color: #2563eb;
461 - font-weight: 600;
462 - text-decoration: none;
463 - transition: color 0.16s;
475 + color: #2563eb;
476 + font-weight: 600;
477 + text-decoration: none;
478 + transition: color 0.16s;
464 479 }
465 480 .subscrpt-id-link:hover {
466 - color: #1e40af;
467 - text-decoration: underline;
481 + color: #1e40af;
482 + text-decoration: underline;
468 483 }
469 -.subscrpt-status-badge {
470 - display: inline-block;
471 - min-width: 48px;
472 - padding: 2px 8px;
473 - border-radius: 4px;
474 - font-size: 12px;
475 - font-weight: 500;
476 - color: #222;
477 - text-align: center;
478 - letter-spacing: 0.01em;
479 - background: #e9ecef;
480 - box-shadow: none;
481 - text-transform: capitalize;
482 -}
483 -.subscrpt-status-active { background: #27c775 !important; color: #ffffff !important; }
484 -.subscrpt-status-cancelled { background: #fee2e2 !important; color: #b91c1c !important; }
485 -.subscrpt-status-draft { background: #e0e7ef !important; color: #374151 !important; }
486 -.subscrpt-status-pending { background: #fef9c3 !important; color: #b45309 !important; }
487 -.subscrpt-status-expired { background: #e5e7eb !important; color: #6b7280 !important; }
488 -.subscrpt-status-pe_cancelled { background: #ffedd5 !important; color: #b45309 !important; }
489 -.subscrpt-status-trash { background: #fef2f2 !important; color: #dc2626 !important; }
490 484 .subscrpt-id-title {
491 - font-size: 11px;
492 - color: #888;
493 - margin-top: 2px;
494 - line-height: 1.3;
495 - max-width: 120px;
496 - white-space: nowrap;
497 - overflow: hidden;
498 - 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;
499 493 }
500 494
501 495 /* Subscriptions List Page Layout */
502 496 .wp-subscription-admin-content.list-page {
503 - max-width: 1240px;
504 - margin: 32px auto 0 auto;
505 - background: #fff;
506 - padding: 32px 24px 24px 24px;
507 - border-radius: 12px;
497 + max-width: 1240px;
498 + margin: 24px auto 32px auto;
499 + background: transparent;
500 + padding: 0px 24px;
508 501 }
509 502 .wp-subscription-list-header {
510 - margin-bottom: 28px;
511 - display: flex;
512 - justify-content: space-between;
513 - align-items: center;
514 - flex-wrap: wrap;
515 - gap: 16px;
503 + margin-bottom: 28px;
504 + display: flex;
505 + justify-content: space-between;
506 + align-items: center;
507 + flex-wrap: wrap;
508 + gap: 16px;
516 509 }
517 510 .wp-subscription-filters {
518 - display: flex;
519 - align-items: center;
520 - gap: 10px;
521 - flex-wrap: wrap;
522 - flex: 1;
511 + display: flex;
512 + align-items: center;
513 + gap: 10px;
514 + flex-wrap: wrap;
515 + flex: 1;
523 516 }
524 517 .wp-subscription-bulk-actions {
525 - display: flex;
526 - align-items: center;
527 - gap: 8px;
528 - flex-shrink: 0;
518 + display: flex;
519 + align-items: center;
520 + gap: 8px;
521 + flex-shrink: 0;
529 522 }
530 523 .wp-subscription-pagination {
531 - display: flex;
532 - justify-content: flex-end;
533 - align-items: center;
534 - gap: 8px;
535 - margin-top: 24px;
524 + display: flex;
525 + justify-content: flex-end;
526 + align-items: center;
527 + gap: 8px;
528 + margin-top: 24px;
536 529 }
537 530 .wp-subscription-pagination .total {
538 - color: #888;
539 - font-size: 13px;
531 + color: #888;
532 + font-size: 13px;
540 533 }
541 534 .wp-subscription-pagination .goto-label {
542 - margin-left: 16px;
543 - color: #888;
544 - font-size: 13px;
535 + margin-left: 16px;
536 + color: #888;
537 + font-size: 13px;
545 538 }
546 539 .wp-subscription-pagination form {
547 - display: inline-block;
548 - margin: 0;
540 + display: inline-block;
541 + margin: 0;
549 542 }
550 543 .wp-subscription-pagination input[type="number"] {
551 - width: 48px;
544 + width: 48px;
552 545 }
553 546 .wp-subscription-customer-email {
554 - color: #888;
555 - font-size: 12px;
556 - line-height: 1.3;
557 - word-break: break-all;
547 + color: #888;
548 + font-size: 12px;
549 + line-height: 1.3;
550 + word-break: break-all;
558 551 }
559 -@keyframes floatY { 0% { transform: translateY(0); } 100% { transform: translateY(-10px); } }
560 -.wp-subscription-admin-box:hover { box-shadow:0 4px 16px #e0e7ef; transition:box-shadow .2s; }
561 -.wp-subscription-pro-callout { background:#2271b1!important; }
562 -.wp-subscription-pro-callout h2, .wp-subscription-pro-callout p { color:#fff!important; }
563 -.wp-subscription-pro-callout .button-primary { background:#fff!important;color:#2271b1!important; }
564 -.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 +}
565 578 @media (max-width: 900px) {
566 - .wp-subscription-support-resources { grid-template-columns:1fr!important; }
579 + .wp-subscription-support-resources {
580 + grid-template-columns: 1fr !important;
581 + }
567 582 }
568 583 .wp-subscription-hero-upgrade {
569 - position: relative;
570 - display: flex;
571 - align-items: center;
572 - justify-content: space-between;
573 - background: #2196f3;
574 - border-radius: 12px;
575 - padding: 32px 36px;
576 - margin-bottom: 28px;
577 - overflow: hidden;
578 - 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;
579 594 }
580 595 .wp-subscription-hero-upgrade::before {
581 - content: "";
582 - position: absolute;
583 - inset: 0;
584 - background-image: repeating-linear-gradient(135deg, rgba(255,255,255,0.07) 0 2px, transparent 2px 40px);
585 - opacity: 0.25;
586 - 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;
587 602 }
588 603 .wp-subscription-hero-content {
589 - display: flex;
590 - align-items: center;
591 - gap: 18px;
592 - z-index: 1;
604 + display: flex;
605 + align-items: center;
606 + gap: 18px;
607 + z-index: 1;
593 608 }
594 609 .wp-subscription-hero-icon {
595 - font-size: 2em;
596 - line-height: 1;
610 + font-size: 2em;
611 + line-height: 1;
597 612 }
598 613 .wp-subscription-hero-title {
599 - font-size: 2em;
600 - font-weight: bold;
601 - color: #fff;
602 - line-height: 1.2;
614 + font-size: 2em;
615 + font-weight: bold;
616 + color: #fff;
617 + line-height: 1.2;
603 618 }
604 619 .wp-subscription-hero-btn {
605 - z-index: 1;
606 - background: #fff;
607 - color: #2196f3;
608 - font-weight: 600;
609 - font-size: 1.1em;
610 - padding: 16px 32px;
611 - border-radius: 8px;
612 - text-decoration: none;
613 - box-shadow: 0 2px 8px rgba(33,150,243,0.08);
614 - transition: background 0.18s, color 0.18s, transform 0.18s;
615 - border: none;
616 - outline: none;
617 - display: inline-block;
618 - 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;
619 637 }
620 638 .wp-subscription-hero-btn:hover {
621 - background: #e3f0fd;
622 - color: #1565c0;
623 - transform: translateY(-2px) scale(1.03);
639 + background: #e3f0fd;
640 + color: #1565c0;
641 + transform: translateY(-2px) scale(1.03);
624 642 }
625 643
626 644 /* Bulk Actions Styling */
627 645 .tablenav {
628 - margin: 8px 0 16px 0;
629 - display: flex;
630 - align-items: center;
631 - justify-content: space-between;
646 + margin: 8px 0 16px 0;
647 + display: flex;
648 + align-items: center;
649 + justify-content: space-between;
632 650 }
633 651
634 652 .tablenav .bulkactions {
635 - display: flex;
636 - align-items: center;
637 - gap: 8px;
653 + display: flex;
654 + align-items: center;
655 + gap: 8px;
638 656 }
639 657
640 658 .tablenav select {
641 - min-width: 120px;
659 + min-width: 120px;
642 660 }
643 661
644 662 .tablenav .button {
645 - margin: 0;
663 + margin: 0;
646 664 }
647 665
648 666 /* Checkbox styling */
649 667 .wp-subscription-modern-table input[type="checkbox"] {
650 - margin: 0;
668 + margin: 0;
651 669 }
652 670
653 671 /* Trash row styling */
654 672 .wp-subscription-modern-table tr[data-status="trash"] {
655 - opacity: 0.7;
673 + opacity: 0.7;
656 674 }
657 675
658 676 .wp-subscription-modern-table tr[data-status="trash"]:hover {
659 - opacity: 1;
677 + opacity: 1;
660 678 }
661 679
662 680 /* Empty Trash button styling */
663 681 .button-link-delete {
664 - color: #d63638 !important;
665 - text-decoration: none;
666 - border: 1px solid #d63638;
667 - border-radius: 4px;
668 - padding: 4px 12px;
669 - font-size: 13px;
670 - line-height: 1.4;
671 - transition: all 0.2s;
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;
672 690 }
673 691
674 692 .button-link-delete:hover {
675 - background: #d63638;
676 - color: #fff !important;
677 - text-decoration: none;
678 -}
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 +}