PluginProbe
Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) / 1.8.11
Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) v1.8.11
1.8.13 1.8.12.3 1.8.12.2 1.8.12.1 1.8.12 1.8.11.3 1.8.11.2 1.8.11.1 1.8.11 1.6.6 1.6.60 1.6.7 1.6.8 1.6.9 1.7.0 1.7.0.1 1.7.0.11 1.7.0.12 1.7.0.14 1.7.0.2 1.7.0.3 1.7.0.5 1.7.0.6 1.7.0.7 1.7.0.9 All 211 releases
charitable / assets / css / paypal-commerce.css

paypal-commerce.css in Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) 1.8.11, at assets/css/paypal-commerce.css

806 lines 24.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * Charitable PayPal Commerce Gateway Styles
3 *
4 * Styles for PayPal buttons and Card Fields (ACDC) integration.
5 *
6 * @package Charitable/Gateways/PayPal Commerce
7 * @since 1.9.0
8 */
9
10 /* Container */
11 #charitable-paypal-commerce-container {
12 position: relative;
13 margin: 20px 0;
14 }
15
16 #charitable-paypal-commerce-container.processing {
17 pointer-events: none;
18 opacity: 0.7;
19 }
20
21 /* Payment Wrapper */
22 .charitable-paypal-payment-wrapper {
23 width: 100%;
24 }
25
26 /* Payment Method Tabs */
27 .charitable-paypal-payment-tabs {
28 display: flex;
29 gap: 10px;
30 margin-bottom: 20px;
31 border-bottom: 2px solid #e5e5e5;
32 padding-bottom: 0;
33 }
34
35 .charitable-paypal-payment-method-tab {
36 display: flex;
37 align-items: center;
38 gap: 8px;
39 padding: 12px 20px;
40 background: transparent;
41 border: none;
42 border-bottom: 2px solid transparent;
43 margin-bottom: -2px;
44 cursor: pointer;
45 font-size: 14px;
46 font-weight: 500;
47 color: #666;
48 transition: none;
49 }
50
51 .charitable-paypal-payment-method-tab:hover {
52 color: #333;
53 background: transparent;
54 }
55
56 .charitable-paypal-payment-method-tab.active {
57 color: #0070ba;
58 border-bottom-color: #0070ba;
59 }
60
61 .charitable-paypal-payment-method-tab .tab-icon {
62 width: 24px;
63 height: 16px;
64 display: inline-block;
65 background-size: contain;
66 background-repeat: no-repeat;
67 background-position: center;
68 }
69
70 .charitable-paypal-payment-method-tab .tab-icon.paypal-icon {
71 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23003087' d='M7.076 21.337H2.47a.641.641 0 0 1-.633-.74L4.944 3.72a.777.777 0 0 1 .766-.66h7.394c2.613 0 4.46.662 5.49 1.968.47.594.77 1.27.904 2.013.14.77.116 1.69-.072 2.81l-.01.055v.485l.378.214c.318.18.572.38.77.602.368.41.608.92.714 1.52.108.613.082 1.34-.08 2.16-.185.94-.49 1.76-.907 2.44a4.954 4.954 0 0 1-1.41 1.49c-.548.384-1.188.66-1.91.82-.7.16-1.483.24-2.34.24h-.555a1.68 1.68 0 0 0-1.66 1.42l-.04.218-.63 3.99-.03.14c-.03.21-.07.34-.14.44a.627.627 0 0 1-.507.26H7.076z'/%3E%3Cpath fill='%230070e0' d='M19.54 7.966c-.01.06-.02.12-.04.18-1.17 5.94-5.19 7.99-10.32 7.99H6.55a1.27 1.27 0 0 0-1.26 1.08l-.89 5.59-.25 1.59c-.07.43.26.81.7.81h4.07a1.12 1.12 0 0 0 1.1-.94l.05-.23.87-5.51.06-.31c.08-.48.49-.82.98-.82h.62c4.01 0 7.15-1.63 8.07-6.33.38-1.97.19-3.61-.81-4.77a3.98 3.98 0 0 0-1.16-.95z'/%3E%3C/svg%3E");
72 }
73
74 .charitable-paypal-payment-method-tab .tab-icon.card-icon {
75 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='1' y1='10' x2='23' y2='10'%3E%3C/line%3E%3C/svg%3E");
76 }
77
78 .charitable-paypal-payment-method-tab.active .tab-icon.card-icon {
79 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230070ba' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='1' y1='10' x2='23' y2='10'%3E%3C/line%3E%3C/svg%3E");
80 }
81
82 .charitable-paypal-payment-method-tab .tab-icon.apple-pay-icon {
83 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z'/%3E%3C/svg%3E");
84 }
85
86 .charitable-paypal-payment-method-tab.active .tab-icon.apple-pay-icon {
87 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230070ba'%3E%3Cpath d='M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z'/%3E%3C/svg%3E");
88 }
89
90 .charitable-paypal-payment-method-tab .tab-icon.google-pay-icon {
91 width: 48px;
92 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16'%3E%3Cpath fill='%234285F4' d='M19.26 6.68c0 1.48-.58 2.86-1.63 3.9-1.05 1.04-2.43 1.62-3.91 1.62s-2.86-.58-3.91-1.62c-1.05-1.04-1.63-2.42-1.63-3.9s.58-2.86 1.63-3.9c1.05-1.04 2.43-1.62 3.91-1.62s2.86.58 3.91 1.62c1.05 1.04 1.63 2.42 1.63 3.9z'/%3E%3Cpath fill='%23EA4335' d='M13.72 4.12c-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85s1.54-.32 2.08-.85c.54-.53.86-1.26.86-2.07 0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85z'/%3E%3Cpath fill='%23FBBC04' d='M26.44 6.68c0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85.81 0 1.54-.32 2.08-.85.54-.53.86-1.26.86-2.07z'/%3E%3Cpath fill='%2334A853' d='M33.16 6.68c0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85.81 0 1.54-.32 2.08-.85.54-.53.86-1.26.86-2.07z'/%3E%3C/svg%3E");
93 }
94
95 .charitable-paypal-payment-method-tab.active .tab-icon.google-pay-icon {
96 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16'%3E%3Cpath fill='%234285F4' d='M19.26 6.68c0 1.48-.58 2.86-1.63 3.9-1.05 1.04-2.43 1.62-3.91 1.62s-2.86-.58-3.91-1.62c-1.05-1.04-1.63-2.42-1.63-3.9s.58-2.86 1.63-3.9c1.05-1.04 2.43-1.62 3.91-1.62s2.86.58 3.91 1.62c1.05 1.04 1.63 2.42 1.63 3.9z'/%3E%3Cpath fill='%23EA4335' d='M13.72 4.12c-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85s1.54-.32 2.08-.85c.54-.53.86-1.26.86-2.07 0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85z'/%3E%3Cpath fill='%23FBBC04' d='M26.44 6.68c0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85.81 0 1.54-.32 2.08-.85.54-.53.86-1.26.86-2.07z'/%3E%3Cpath fill='%2334A853' d='M33.16 6.68c0-.81-.32-1.54-.86-2.07-.54-.53-1.27-.85-2.08-.85-.81 0-1.54.32-2.08.85-.54.53-.86 1.26-.86 2.07 0 .81.32 1.54.86 2.07.54.53 1.27.85 2.08.85.81 0 1.54-.32 2.08-.85.54-.53.86-1.26.86-2.07z'/%3E%3C/svg%3E");
97 }
98
99 /* Payment Panes */
100 .charitable-paypal-pane {
101 display: none;
102 }
103
104 .charitable-paypal-pane.active {
105 display: block;
106 }
107
108 /* PayPal Buttons Pane */
109 .charitable-paypal-buttons-pane {
110 min-height: 150px;
111 width: 100%;
112 }
113
114 /* Match PayPal SDK button container sizing */
115 .charitable-paypal-payment-wrapper {
116 min-width: 300px;
117 max-width: 750px;
118 }
119
120 @media only screen and (min-width: 500px) {
121 .charitable-paypal-payment-wrapper {
122 min-width: 500px;
123 max-width: 750px;
124 }
125 }
126
127 .charitable-paypal-buttons-pane + .charitable-notice.charitable-notice-info,
128 .charitable-paypal-card-pane + .charitable-notice.charitable-notice-info,
129 .charitable-paypal-pane + .charitable-notice.charitable-notice-info,
130 .charitable-notice.charitable-notice-info {
131 min-width: 300px;
132 max-width: 750px;
133 }
134
135 @media only screen and (min-width: 500px) {
136 .charitable-paypal-buttons-pane + .charitable-notice.charitable-notice-info,
137 .charitable-paypal-card-pane + .charitable-notice.charitable-notice-info,
138 .charitable-paypal-pane + .charitable-notice.charitable-notice-info,
139 .charitable-notice.charitable-notice-info {
140 min-width: 500px;
141 max-width: 750px;
142 }
143 }
144
145 /* Card Fields Pane */
146 .charitable-paypal-card-pane {
147 padding: 10px 0;
148 }
149
150 /* Apple Pay Pane */
151 .charitable-paypal-applepay-pane {
152 padding: 20px 0;
153 }
154
155 .charitable-apple-pay-container {
156 min-height: 60px;
157 display: flex;
158 align-items: center;
159 justify-content: center;
160 }
161
162 /* Google Pay Pane */
163 .charitable-paypal-googlepay-pane {
164 padding: 20px 0;
165 }
166
167 .charitable-google-pay-container {
168 min-height: 60px;
169 display: flex;
170 align-items: center;
171 justify-content: center;
172 }
173
174 /* Apple Pay Button */
175 .charitable-apple-pay-button {
176 width: 100%;
177 max-width: 320px;
178 height: 50px;
179 background: #000;
180 border: none;
181 border-radius: 8px;
182 color: #fff;
183 font-size: 16px;
184 font-weight: 500;
185 cursor: pointer;
186 display: flex;
187 align-items: center;
188 justify-content: center;
189 transition: all 0.2s ease;
190 -webkit-appearance: none;
191 }
192
193 .charitable-apple-pay-button:hover {
194 background: #333;
195 transform: translateY(-1px);
196 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
197 }
198
199 .charitable-apple-pay-button:active {
200 transform: translateY(0);
201 }
202
203 .charitable-apple-pay-button .apple-pay-logo {
204 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z'/%3E%3C/svg%3E");
205 background-repeat: no-repeat;
206 background-size: contain;
207 background-position: center;
208 width: 20px;
209 height: 20px;
210 margin-right: 8px;
211 display: inline-block;
212 }
213
214 .charitable-apple-pay-button .apple-pay-text {
215 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
216 font-weight: 500;
217 letter-spacing: 0.3px;
218 font-size: 16px;
219 color: white;
220 }
221
222 /* Google Pay Button */
223 .charitable-google-pay-button {
224 width: 100%;
225 max-width: 320px;
226 height: 50px;
227 background: #fff;
228 border: 1px solid #dadce0;
229 border-radius: 8px;
230 color: #3c4043;
231 font-size: 14px;
232 font-weight: 500;
233 cursor: pointer;
234 display: flex;
235 align-items: center;
236 justify-content: center;
237 transition: all 0.2s ease;
238 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
239 }
240
241 .charitable-google-pay-button:hover {
242 background: #f8f9fa;
243 border-color: #c1c7cd;
244 transform: translateY(-1px);
245 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
246 }
247
248 .charitable-google-pay-button:active {
249 transform: translateY(0);
250 }
251
252 .charitable-google-pay-button .google-pay-logo {
253 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 16'%3E%3Cpath fill='%234285F4' d='M15.41 7.35c0 1.19-.46 2.29-1.3 3.12-.84.83-1.94 1.3-3.13 1.3s-2.29-.47-3.13-1.3c-.84-.83-1.3-1.93-1.3-3.12s.46-2.29 1.3-3.12c.84-.83 1.94-1.3 3.13-1.3s2.29.47 3.13 1.3c.84.83 1.3 1.93 1.3 3.12z'/%3E%3Cpath fill='%23EA4335' d='M10.98 3.93c-.65 0-1.23.26-1.66.68-.43.42-.69 1.01-.69 1.66 0 .65.26 1.24.69 1.66.43.42 1.01.68 1.66.68s1.23-.26 1.66-.68c.43-.42.69-1.01.69-1.66 0-.65-.26-1.24-.69-1.66-.43-.42-1.01-.68-1.66-.68z'/%3E%3Cpath fill='%23FBBC04' d='M21.15 7.35c0-.65-.26-1.24-.69-1.66-.43-.42-1.01-.68-1.66-.68-.65 0-1.23.26-1.66.68-.43.42-.69 1.01-.69 1.66 0 .65.26 1.24.69 1.66.43.42 1.01.68 1.66.68.65 0 1.23-.26 1.66-.68.43-.42.69-1.01.69-1.66z'/%3E%3Cpath fill='%2334A853' d='M26.53 7.35c0-.65-.26-1.24-.69-1.66-.43-.42-1.01-.68-1.66-.68-.65 0-1.23.26-1.66.68-.43.42-.69 1.01-.69 1.66 0 .65.26 1.24.69 1.66.43.42 1.01.68 1.66.68.65 0 1.23-.26 1.66-.68.43-.42.69-1.01.69-1.66z'/%3E%3C/svg%3E");
254 background-repeat: no-repeat;
255 background-size: contain;
256 background-position: center;
257 width: 73px;
258 min-height: 37px;
259 margin-right: 8px;
260 display: inline-block;
261 }
262
263 .charitable-google-pay-button .google-pay-text {
264 font-family: 'Google Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
265 font-weight: 500;
266 font-size: 14px;
267 color: #3c4043;
268 }
269
270 /* Card Form */
271 .charitable-paypal-card-form {
272 max-width: 100%;
273 }
274
275 .charitable-paypal-card-field-wrapper {
276 margin-bottom: 16px;
277 /* Reset theme fieldset/legend styles */
278 border: none !important;
279 padding: 0 !important;
280 margin-inline: 0 !important;
281 min-inline-size: 0 !important;
282 }
283
284 .charitable-paypal-card-field-wrapper label {
285 display: block !important;
286 position: static !important;
287 float: none !important;
288 margin-bottom: 6px !important;
289 margin-top: 0 !important;
290 font-size: 14px !important;
291 font-weight: 500 !important;
292 color: #333 !important;
293 background: none !important;
294 transform: none !important;
295 line-height: 1.4 !important;
296 padding: 0 !important;
297 opacity: 1 !important;
298 visibility: visible !important;
299 pointer-events: auto;
300 white-space: nowrap;
301 width: auto !important;
302 max-width: none !important;
303 /* Reset legend-in-fieldset behavior */
304 border: none !important;
305 clip: auto !important;
306 overflow: visible !important;
307 }
308
309 .charitable-paypal-card-field {
310 /* Minimal styling — let PayPal SDK iframes handle their own look */
311 background: #fff;
312 padding: 0 !important;
313 margin: 0;
314 overflow: hidden;
315 }
316
317 .charitable-paypal-card-field iframe {
318 display: block !important;
319 margin: 0 0 0 -5px !important;
320 padding: 0 !important;
321 border: none !important;
322 }
323
324 /* Card Row (Expiry + CVV) */
325 .charitable-paypal-card-row {
326 display: flex;
327 gap: 16px;
328 }
329
330 .charitable-paypal-card-row .charitable-paypal-card-field-wrapper {
331 flex: 1;
332 }
333
334 .charitable-paypal-card-expiry {
335 flex: 1.2 !important;
336 }
337
338 .charitable-paypal-card-cvv {
339 flex: 0.8 !important;
340 }
341
342 /* Card Name Input */
343 .charitable-paypal-card-name-input {
344 width: 100% !important;
345 max-width: 100% !important;
346 height: 44px;
347 padding: 10px 12px;
348 border: 1px solid #d2d5db;
349 border-radius: 4px;
350 font-size: 16px;
351 font-family: inherit;
352 color: #333;
353 box-sizing: border-box;
354 transition: border-color 0.2s ease, box-shadow 0.2s ease;
355 }
356
357 .charitable-paypal-card-name-input:focus {
358 outline: none;
359 border-color: #0070ba;
360 box-shadow: 0 0 0 2px rgba(0, 112, 186, 0.1);
361 }
362
363 .charitable-paypal-card-name-input::placeholder {
364 color: #999;
365 }
366
367 /* Card Submit Button */
368 .charitable-paypal-card-submit-wrapper {
369 margin-top: 20px;
370 }
371
372 .charitable-paypal-card-submit {
373 width: 100%;
374 padding: 14px 20px;
375 background: #0070ba;
376 color: #fff;
377 border: none;
378 border-radius: 4px;
379 font-size: 16px;
380 font-weight: 600;
381 cursor: pointer;
382 transition: background 0.2s ease;
383 }
384
385 .charitable-paypal-card-submit:hover {
386 background: #005c99;
387 }
388
389 .charitable-paypal-card-submit:disabled,
390 .charitable-paypal-card-submit.processing {
391 background: #ccc;
392 cursor: not-allowed;
393 }
394
395 /* Card Errors */
396 .charitable-paypal-card-errors {
397 margin-top: 15px;
398 display: none;
399 }
400
401 .charitable-paypal-card-errors .charitable-notice {
402 margin: 0;
403 padding: 12px 15px;
404 background: #fdf2f2;
405 border: 1px solid #f5c6cb;
406 border-radius: 4px;
407 color: #721c24;
408 font-size: 14px;
409 }
410
411 /* Processing Overlay */
412 .charitable-paypal-processing {
413 position: absolute;
414 top: 0;
415 left: 0;
416 right: 0;
417 bottom: 0;
418 background: rgba(255, 255, 255, 0.8);
419 display: flex;
420 align-items: center;
421 justify-content: center;
422 z-index: 100;
423 }
424
425 .charitable-paypal-processing span {
426 padding: 15px 25px;
427 background: #fff;
428 border-radius: 4px;
429 box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
430 font-size: 14px;
431 color: #333;
432 }
433
434 /* Success Notice */
435 .charitable-notice.charitable-notice-success {
436 padding: 15px;
437 background: #d4edda;
438 border: 1px solid #c3e6cb;
439 border-radius: 4px;
440 color: #155724;
441 font-size: 14px;
442 }
443
444 /* ===== VAULTING STYLES ===== */
445
446 /* Vaulting Section */
447 .charitable-vaulting-section {
448 margin: 15px 0;
449 padding: 15px;
450 background: #f9f9f9;
451 border-radius: 6px;
452 border: 1px solid #e5e5e5;
453 }
454
455 /* Vault Option */
456 .charitable-vault-option {
457 margin: 15px 0;
458 padding: 12px 15px;
459 background: #f0f7fc;
460 border: 1px solid #d1e7f4;
461 border-radius: 6px;
462 display: flex;
463 align-items: flex-start;
464 gap: 8px;
465 }
466
467 .charitable-vault-option input[type="checkbox"] {
468 margin: 1px 0 0 0;
469 flex-shrink: 0;
470 transform: scale(1.1);
471 }
472
473 .charitable-vault-option label {
474 margin: -2px 0 0 4px;
475 font-weight: 500;
476 color: #333;
477 cursor: pointer;
478 }
479
480 .charitable-vault-option small {
481 display: block;
482 margin-top: 6px;
483 font-size: 12px;
484 color: #666;
485 font-weight: 400;
486 }
487
488 /* Saved Methods Section */
489 .charitable-saved-methods-section {
490 margin: 20px 0;
491 padding: 20px;
492 background: #fff;
493 border: 1px solid #e5e5e5;
494 border-radius: 6px;
495 }
496
497 .charitable-saved-methods-section h4 {
498 margin: 0 0 15px 0;
499 font-size: 16px;
500 font-weight: 600;
501 color: #333;
502 }
503
504 /* Saved Methods List */
505 .charitable-saved-methods-list {
506 margin-top: 0;
507 }
508
509 .charitable-saved-method {
510 display: flex;
511 align-items: center;
512 justify-content: space-between;
513 padding: 12px 15px;
514 margin-bottom: 10px;
515 background: #fafafa;
516 border: 1px solid #e5e5e5;
517 border-radius: 6px;
518 transition: all 0.2s ease;
519 }
520
521 .charitable-saved-method:hover {
522 background: #f0f7fc;
523 border-color: #d1e7f4;
524 }
525
526 .charitable-saved-method input[type="radio"] {
527 margin-right: 12px;
528 transform: scale(1.1);
529 }
530
531 .charitable-saved-method label {
532 flex: 1;
533 margin: 0;
534 cursor: pointer;
535 display: flex;
536 align-items: center;
537 gap: 8px;
538 }
539
540 .charitable-saved-method .method-type {
541 font-weight: 600;
542 color: #333;
543 }
544
545 .charitable-saved-method .method-details {
546 color: #666;
547 font-size: 14px;
548 }
549
550 .charitable-saved-method .method-default {
551 color: #0070ba;
552 font-size: 12px;
553 font-weight: 500;
554 }
555
556 .charitable-saved-method .method-badge {
557 display: inline-block;
558 padding: 2px 8px;
559 background: #e7f3ff;
560 color: #0070ba;
561 border: 1px solid #b3d9ff;
562 border-radius: 10px;
563 font-size: 11px;
564 font-weight: 600;
565 }
566
567 .charitable-use-new-method {
568 background: #f8f8f8 !important;
569 border-style: dashed !important;
570 }
571
572 .charitable-saved-method .method-actions {
573 display: flex;
574 gap: 8px;
575 margin-left: 12px;
576 }
577
578 .charitable-saved-method .method-actions button {
579 padding: 6px 12px;
580 font-size: 12px;
581 border: none;
582 border-radius: 4px;
583 cursor: pointer;
584 transition: all 0.2s ease;
585 font-weight: 500;
586 }
587
588 .charitable-set-default-payment-method {
589 background: #f0f7fc;
590 color: #0070ba;
591 border: 1px solid #d1e7f4 !important;
592 }
593
594 .charitable-set-default-payment-method:hover {
595 background: #e1f0fc;
596 color: #005c99;
597 }
598
599 .charitable-delete-payment-method {
600 background: #fdf2f2;
601 color: #c0392b;
602 border: 1px solid #f5c6cb !important;
603 }
604
605 .charitable-delete-payment-method:hover {
606 background: #f8d7da;
607 color: #a71e2a;
608 }
609
610 /* Recurring Vault Notice */
611 .charitable-notice.charitable-notice-info {
612 background: #e7f3ff;
613 border: 1px solid #b3d9ff;
614 border-left: 4px solid #0073aa;
615 color: #0073aa;
616 padding: 12px 15px;
617 border-radius: 4px;
618 margin: 15px 0;
619 }
620
621 .charitable-notice.charitable-notice-info p {
622 margin: 0;
623 font-size: 14px;
624 line-height: 1.4;
625 }
626
627 /* Vault Success Messages */
628 .charitable-vaulting-success {
629 background: #d4edda;
630 border: 1px solid #c3e6cb;
631 border-left: 4px solid #28a745;
632 color: #155724;
633 padding: 12px 15px;
634 border-radius: 4px;
635 margin: 15px 0;
636 font-size: 14px;
637 }
638
639 /* Vault Error Messages */
640 .charitable-vaulting-error {
641 background: #fdf2f2;
642 border: 1px solid #f5c6cb;
643 border-left: 4px solid #dc3545;
644 color: #721c24;
645 padding: 12px 15px;
646 border-radius: 4px;
647 margin: 15px 0;
648 font-size: 14px;
649 }
650
651 /* Loading States for Vaulting */
652 .charitable-saved-methods-section.loading {
653 opacity: 0.6;
654 pointer-events: none;
655 position: relative;
656 }
657
658 .charitable-saved-methods-section.loading::after {
659 content: "Loading...";
660 position: absolute;
661 top: 50%;
662 left: 50%;
663 transform: translate(-50%, -50%);
664 background: rgba(255, 255, 255, 0.9);
665 padding: 10px 20px;
666 border-radius: 4px;
667 box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
668 font-size: 14px;
669 color: #333;
670 }
671
672 /* Payment Method Icons */
673 .charitable-saved-method .method-icon {
674 width: 24px;
675 height: 18px;
676 background-size: contain;
677 background-repeat: no-repeat;
678 background-position: center;
679 margin-right: 8px;
680 }
681
682 .charitable-saved-method .method-icon.paypal-icon {
683 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23003087' d='M7.076 21.337H2.47a.641.641 0 0 1-.633-.74L4.944 3.72a.777.777 0 0 1 .766-.66h7.394c2.613 0 4.46.662 5.49 1.968.47.594.77 1.27.904 2.013.14.77.116 1.69-.072 2.81l-.01.055v.485l.378.214c.318.18.572.38.77.602.368.41.608.92.714 1.52.108.613.082 1.34-.08 2.16-.185.94-.49 1.76-.907 2.44a4.954 4.954 0 0 1-1.41 1.49c-.548.384-1.188.66-1.91.82-.7.16-1.483.24-2.34.24h-.555a1.68 1.68 0 0 0-1.66 1.42l-.04.218-.63 3.99-.03.14c-.03.21-.07.34-.14.44a.627.627 0 0 1-.507.26H7.076z'/%3E%3Cpath fill='%230070e0' d='M19.54 7.966c-.01.06-.02.12-.04.18-1.17 5.94-5.19 7.99-10.32 7.99H6.55a1.27 1.27 0 0 0-1.26 1.08l-.89 5.59-.25 1.59c-.07.43.26.81.7.81h4.07a1.12 1.12 0 0 0 1.1-.94l.05-.23.87-5.51.06-.31c.08-.48.49-.82.98-.82h.62c4.01 0 7.15-1.63 8.07-6.33.38-1.97.19-3.61-.81-4.77a3.98 3.98 0 0 0-1.16-.95z'/%3E%3C/svg%3E");
684 }
685
686 .charitable-saved-method .method-icon.card-icon {
687 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='1' y1='10' x2='23' y2='10'%3E%3C/line%3E%3C/svg%3E");
688 }
689
690 .charitable-saved-method .method-icon.venmo-icon {
691 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%233D95CE'%3E%3Cpath d='M19.14 2c.95 0 1.57.4 1.97.84.4.43.69 1.07.69 2.05 0 2.22-2.09 6.27-3.91 8.8L14.4 22h-3.8l-1.7-12.8h3.6l.8 9.5c1.1-1.9 2.4-4.7 2.4-6.8 0-.9-.3-1.4-.8-1.4-.2 0-.4.1-.6.2l-.6-2.8c.5-.3 1.3-.6 2.2-.6 1.3 0 2.3.7 2.3 2.2 0 1.8-.9 4.2-1.8 6.1h.1l1.6-13.5H19.14z'/%3E%3C/svg%3E");
692 }
693
694 .charitable-saved-method .method-icon.apple-pay-icon {
695 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z'/%3E%3C/svg%3E");
696 }
697
698 /* Responsive Vaulting Styles */
699 @media (max-width: 768px) {
700 .charitable-saved-method {
701 flex-direction: column;
702 align-items: flex-start;
703 gap: 12px;
704 }
705
706 .charitable-saved-method label {
707 width: 100%;
708 }
709
710 .charitable-saved-method .method-actions {
711 margin-left: 0;
712 align-self: flex-end;
713 }
714
715 .charitable-vaulting-section,
716 .charitable-saved-methods-section {
717 padding: 15px 12px;
718 }
719 }
720
721 @media (max-width: 480px) {
722 .charitable-saved-method .method-actions {
723 flex-direction: column;
724 width: 100%;
725 gap: 6px;
726 }
727
728 .charitable-saved-method .method-actions button {
729 width: 100%;
730 padding: 8px 12px;
731 }
732 }
733
734 /* Theme override — ensure all elements inside the PayPal container respect full width */
735 #charitable-paypal-commerce-container,
736 #charitable-paypal-commerce-container * {
737 box-sizing: border-box;
738 }
739
740 #charitable-paypal-commerce-container .charitable-paypal-payment-wrapper {
741 width: 100% !important;
742 max-width: 750px !important;
743 }
744
745 /* Responsive */
746 @media (max-width: 480px) {
747 .charitable-paypal-payment-tabs {
748 flex-direction: column;
749 gap: 0;
750 }
751
752 .charitable-paypal-payment-method-tab {
753 width: 100%;
754 justify-content: center;
755 border-bottom: 1px solid #e5e5e5;
756 margin-bottom: 0;
757 }
758
759 .charitable-paypal-payment-method-tab.active {
760 background: transparent;
761 border-bottom-color: #e5e5e5;
762 }
763
764 .charitable-paypal-card-row {
765 flex-direction: column;
766 gap: 0;
767 }
768
769 .charitable-paypal-card-row .charitable-paypal-card-field-wrapper {
770 flex: 1 !important;
771 }
772 }
773
774 /* Fix: zoid injects a full-size __detect_close__ iframe inside each card field container.
775 * The zoid CSS rule `> iframe { width: 100%; height: 100% }` makes it cover the real
776 * card field iframe, blocking all pointer events. Set pointer-events: none so clicks
777 * pass through to the actual PayPal card field iframe underneath. */
778 iframe[name^="__detect_close"] {
779 pointer-events: none !important;
780 }
781
782 /* Subscription redirect button - shown in place of PayPal SDK buttons for recurring subscriptions */
783 .charitable-paypal-subscription-redirect {
784 padding: 4px 0;
785 }
786
787 .charitable-paypal-subscribe-btn {
788 display: block;
789 width: 100%;
790 padding: 13px 20px;
791 background-color: #ffc439;
792 border: 1px solid #f5b83d;
793 border-radius: 4px;
794 font-size: 14px;
795 font-weight: 600;
796 color: #111;
797 cursor: pointer;
798 text-align: center;
799 transition: background-color 0.2s;
800 }
801
802 .charitable-paypal-subscribe-btn:hover {
803 background-color: #f5b83d;
804 }
805
806