Methods Documentation
Edit on
Codepen.io
Codepen.io
Modal Carts
Modal cart example using the FastSpring Store Builder Library and Handlebars JS.
x
704
1
2
<html>
3
<head>
4
<meta charset="utf-8">
5
<title>
6
Full Cart Catalog Page
7
</title>
8
</head>
9
<body>
10
<!--
11
Spinner to display action taking place.
12
-->
13
<div id="fastspring_spinner">
14
<img src="https://d1f8f9xcsvx3ha.cloudfront.net/pinhole/spin.svg" />
15
</div>
16
<!--
17
Example buttons to populate the shopping cart.
18
-->
19
<h1>
20
Open Cart Buttons
21
</h1>
22
<a class="fastspring_btn fastspring_btn-success" data-fsc-opencart="Modal">Open modal cart</a>
23
<a class="fastspring_btn fastspring_btn-success" data-fsc-opencart="ModalSmall">Open small modal cart</a>
24
<a class="fastspring_btn fastspring_btn-success" data-fsc-opencart="Left">Open left cart</a>
25
<a class="fastspring_btn fastspring_btn-success" data-fsc-opencart="Right">Open right cart</a>
26
<a class="fastspring_btn fastspring_btn-success" data-fsc-opencart="Bottom">Open bottom cart</a>
27
28
<h1>
29
Add to cart buttons Modal Cart
30
</h1>
31
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="base" data-fsc-item-path="base" data-fsc-addthis="base" data-fsc-cart="Modal">Buy The Photo.io App</button>
32
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="xsell" data-fsc-item-path="xsell" data-fsc-addthis="xsell" data-fsc-cart="Modal">Buy The Photo.io App with Cross-Sell</button>
33
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="upsell" data-fsc-item-path="upsell" data-fsc-addthis="upsell" data-fsc-cart="Modal">Buy The Photo.io App with Upsell</button>
34
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="sub" data-fsc-item-path="sub" data-fsc-addthis="sub" data-fsc-cart="Modal">Buy The Photo.io App Subscription</button>
35
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="bogus" data-fsc-item-path="bogus" data-fsc-addthis="bogus" data-fsc-cart="Modal">Buy Bogus Product To Trigger Error</button>
36
<h1>
37
Add to cart buttons Small Modal Cart
38
</h1>
39
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="base" data-fsc-item-path="base" data-fsc-addthis="base" data-fsc-cart="ModalSmall">Buy The Photo.io App</button>
40
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="xsell" data-fsc-item-path="xsell" data-fsc-addthis="xsell" data-fsc-cart="ModalSmall">Buy The Photo.io App with Cross-Sell</button>
41
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="upsell" data-fsc-item-path="upsell" data-fsc-addthis="upsell" data-fsc-cart="ModalSmall">Buy The Photo.io App with Upsell</button>
42
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="sub" data-fsc-item-path="sub" data-fsc-addthis="sub" data-fsc-cart="ModalSmall">Buy The Photo.io App Subscription</button>
43
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="bogus" data-fsc-item-path="bogus" data-fsc-addthis="bogus" data-fsc-cart="fsb-ModalSmall">Buy Bogus Product To Trigger Error</button>
44
45
<h1>
46
Add to cart buttons Left Sheet Cart
47
</h1>
48
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="base" data-fsc-item-path="base" data-fsc-addthis="base" data-fsc-cart="Left">Buy The Photo.io App</button>
49
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="xsell" data-fsc-item-path="xsell" data-fsc-addthis="xsell" data-fsc-cart="Left">Buy The Photo.io App with Cross-Sell</button>
50
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="upsell" data-fsc-item-path="upsell" data-fsc-addthis="upsell" data-fsc-cart="Left">Buy The Photo.io App with Upsell</button>
51
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="sub" data-fsc-item-path="sub" data-fsc-addthis="sub" data-fsc-cart="Left">Buy The Photo.io App Subscription</button>
52
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="bogus" data-fsc-item-path="bogus" data-fsc-addthis="bogus" data-fsc-cart="Left">Buy Bogus Product To Trigger Error</button>
53
54
<h1>
55
Add to cart buttons Right Sheet Cart
56
</h1>
57
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="base" data-fsc-item-path="base" data-fsc-addthis="base" data-fsc-cart="Right">Buy The Photo.io App</button>
58
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="xsell" data-fsc-item-path="xsell" data-fsc-addthis="xsell" data-fsc-cart="Right">Buy The Photo.io App with Cross-Sell</button>
59
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="upsell" data-fsc-item-path="upsell" data-fsc-addthis="upsell" data-fsc-cart="Right">Buy The Photo.io App with Upsell</button>
60
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="sub" data-fsc-item-path="sub" data-fsc-addthis="sub" data-fsc-cart="Right">Buy The Photo.io App Subscription</button>
61
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="bogus" data-fsc-item-path="bogus" data-fsc-addthis="bogus" data-fsc-cart="Right">Buy Bogus Product To Trigger Error</button>
62
63
<h1>
64
Add to cart buttons Bottom Sheet Cart
65
</h1>
66
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="base" data-fsc-item-path="base" data-fsc-addthis="base" data-fsc-cart="Bottom">Buy The Photo.io App</button>
67
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="xsell" data-fsc-item-path="xsell" data-fsc-addthis="xsell" data-fsc-cart="Bottom">Buy The Photo.io App with Cross-Sell</button>
68
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="upsell" data-fsc-item-path="upsell" data-fsc-addthis="upsell" data-fsc-cart="Bottom">Buy The Photo.io App with Upsell</button>
69
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="sub" data-fsc-item-path="sub" data-fsc-addthis="sub" data-fsc-cart="Bottom">Buy The Photo.io App Subscription</button>
70
<button class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="bogus" data-fsc-item-path="bogus" data-fsc-addthis="bogus" data-fsc-cart="Bottom">Buy Bogus Product To Trigger Error</button>
71
72
<br /><br />
73
<!--
74
This is the modal shopping cart. The contents of the below will be populated by the handlebars script defined below.
75
-->
76
<div id="fsb-modal" class="fsb-modal">
77
<div class="fsb-modal-content" id="fsb-modal-content">
78
<div class="fsb-modal-header" style="background: #28a745; color: #ffffff;">
79
<span id="fsb-close" class="fsb-close">×</span>
80
<span class="fsb-cart_title">Shopping Cart</span>
81
</div>
82
<div class="fsb-modal-body">
83
<div id="fsb_error" class="fsb-alert fsb-alert-danger" role="alert">
84
<p class="fsb-alert-heading"><strong>I'm sorry, there was an issue.</strong></p>
85
<p id="fsb_error_msg"></p>
86
</div>
87
<div id="fsb" data-fsc-selections-smartdisplay>
88
<div data-fsc-selections-smartdisplay data-fsc-items-container='fastspring_shopping_cart' data-fsc-filter="selected=true" class="fsb-container-fluid px-5 py5">
89
</div>
90
</div>
91
<div data-fsc-selections-smartdisplay-inverse>
92
<p class="fsb-emptyCart">Your cart is empty.</p>
93
</div>
94
</div>
95
</div>
96
</div>
97
98
<!--
99
Initialize the Store Builder Library
100
Callbacks are located in fullcart.js
101
-->
102
<script
103
id="fsc-api"
104
src="https://d1f8f9xcsvx3ha.cloudfront.net/sbl/0.8.1/fastspring-builder.min.js" type="text/javascript"
105
data-storefront="fastspringexamples.test.onfastspring.com/popup-fastspringexamples"
106
data-markup-helpers-callback="markupHelpersCallback"
107
data-before-requests-callback="beforeRequestsCallbackFunction"
108
data-after-markup-callback="afterMarkupCallbackFunction"
109
data-popup-closed="popupClosed"
110
/*uncomment the following line if using Google Analytics*/
111
/*data-decorate-callback="decorateCallback"*/
112
data-error-callback="errorCallback"
113
data-data-callback="dataCallback"
114
data-continuous="true">
115
</script>
116
117
<!--
118
fsb_shopping_cart handlebars template
119
This is the base shopping cart template and will loop through the items currently in the shopping cart.
120
-->
121
<script data-fsc-template-for="fastspring_shopping_cart" type="text/x-handlebars-template">
122
<div class="fsb-row fsb-align-items-center fsb-mb-4">
123
<!--start cart item row-->
124
{{#each items}}
125
{{#each items}}
126
{{#iff path '!=' 'SystemExtension.shippingcalculation'}}
127
<div class="fsb-col-lg-12 fsb-border fsb-mb-4 fsb-rounded">
128
{{#if removable}}
129
<p class="fsb-removeX" style="position: absolute; top: 0px; right: 5px;">
130
<a href="#" class="fsb-remove fsb-d-md-none" data-fsc-action="Remove" data-fsc-item-path-value="{{path}}" style="line-height:75%;"> ×</a>
131
</p>
132
{{/if}}
133
<div class="fsb-row fsb-mt-4 fsb-mb-4">
134
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-4 fsb-offset-4 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
135
{{#if image}}
136
<img src="{{image}}" class="fsb-img-fluid fsb-cartimage" />
137
{{/if}}
138
</div>
139
<div class="fsb-col-lg-6 fsb-col-md-4 fsb-col-sm-8 fsb-col-12 fsb-text-center fsb-text-sm-left">
140
<p class="fsb-display">{{display}}</p>
141
{{#if description.summary}}
142
{{{description.summary}}}
143
{{/if}}
144
</div>
145
<div class="fsb-col-lg-3 fsb-col-md-4 fsb-col-12 fsb-text-center fsb-align-top fsb-mt-4 fsb-mt-sm-2">
146
{{>pricing}}
147
{{>quantity}}
148
</div>
149
<div class="fsb-d-none fsb-d-md-block fsb-col-lg-2 fsb-col-md-3 fsb-col-12 fsb-text-center fsb-text-md-right fsb-align-top fsb-mt-4 fsb-mt-sm-2">
150
<p class="fsb-extPrice fsb-text-nowrap">
151
{{#iff totalValue '>' '0'}}
152
{{total}}
153
{{else}}
154
FREE
155
{{/iff}}
156
{{#if removable}}
157
<a href="#" class="fsb-d-none fsb-d-md-inline-block fsb-remove" data-fsc-action="Remove" data-fsc-item-path-value="{{path}}"> ×</a>
158
{{/if}}
159
</p>
160
</div>
161
</div>
162
163
{{#each groups}}
164
<!--Up-Sells-->
165
{{#iff type '==' 'replace'}}
166
{{#iff selectableReplacements '==' true}}
167
{{>upsell}}
168
{{/iff}}
169
{{/iff}}
170
<!--Bundle-->
171
{{#iff type '==' 'bundle'}}
172
<div class="fsb-row">
173
<div class="fsb-col fsb-offset-md-1">
174
<div class="fsb-card fsb-mt-2 fsb-mb-3">
175
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
176
{{display}} includes the following:
177
</div>
178
<div class="fsb-card-body fsb-pb-4">
179
{{#each items}}
180
{{#if image}}
181
<img src='{{image}}' class="fsb-bundleimage" alt='{{display}}' />
182
{{/if}}
183
{{/each}}
184
</div>
185
</div>
186
</div>
187
</div>
188
{{/iff}}
189
<!--Alternatives-->
190
{{#iff type '==' 'options'}}
191
<div class="fsb-row">
192
<div class="fsb-col-md-11 fsb-offset-md-1">
193
<div class="fsb-card fsb-mt-2 fsb-mb-3">
194
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
195
{{display}}
196
</div>
197
<div class="fsb-card-body fsb-pb-0">
198
{{#each items}}
199
<div class="fsb-row fsb-mb-4">
200
<div class="fsb-col-1">
201
<input class="fsb-option-input fsb-radio" type="radio" {{#if selected}} checked{{/if}} name="{{display}}" id="{{path}}" data-fsc-action="Add" data-fsc-item-path-value="{{path}}" >
202
</div>
203
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-12 fsb-text-center fsb-pr-0">
204
{{#if image}}
205
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="{{display}}" />
206
{{/if}}
207
</div>
208
<div class=" fsb-col-12 fsb-col-md-7 fsb-col-9 fsb-text-center fsb-text-md-left">
209
<p class="fsb-display">{{display}}</p>
210
{{#if description.summary}}
211
{{{description.summary}}}
212
{{/if}}
213
<div class="fsb-d-md-none fsb-row fsb-mt-4 fsb-text-center fsb-text-md-left">
214
<div class=" fsb-col-md-7 fsb-col-12">
215
{{>pricing2}}
216
{{>volume-discount}}
217
</div>
218
</div>
219
</div>
220
<div class=" fsb-col-12 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
221
{{>pricing2}}
222
</div>
223
</div>
224
<hr />
225
{{/each}}
226
</div>
227
</div>
228
</div>
229
</div>
230
{{/iff}}
231
<!--Single Choice Option-->
232
{{#iff type '==' 'config-one'}}
233
{{>singlechoice}}
234
{{/iff}}
235
<!--Multiple Choice Option-->
236
{{#iff type '==' 'config-many'}}
237
{{>multichoice}}
238
{{/iff}}
239
<!--Single Choice Subscription Addon-->
240
{{#iff type '==' 'addon-one'}}
241
{{>singlechoice}}
242
{{/iff}}
243
<!--Multiple Choice Subscription Addon-->
244
{{#iff type '==' 'addon-many'}}
245
{{>multichoice}}
246
{{/iff}}
247
{{/each}}
248
<!--Cross Sells-->
249
{{#each @root.groups}}
250
{{#iff type '==' 'add'}}
251
{{#iff driver '==' ../../path}}
252
{{#iff selectableAdditions '==' true}}
253
{{#iff driverType '==' 'product'}}
254
{{>xsell}}
255
{{/iff}}
256
{{/iff}}
257
{{/iff}}
258
{{/iff}}
259
{{/each}}
260
</div>
261
{{/iff}}
262
{{/each}}
263
{{/each}}
264
<!--end cart item row-->
265
<div class="fsb-col-12">
266
<div class="fsb-row">
267
<div class="fsb-col-12 fsb-col-md-6 fsb-order-md-12 fsb-order-1 fsb-mb-4">
268
{{#each items}}
269
{{#each items}}
270
{{#iff path '==' 'SystemExtension.shippingcalculation'}}
271
<div class="fsb-row">
272
<div class="fsb-col-8 fsb-text-right">
273
<p class="fsb-shipping">Shipping:</p>
274
</div>
275
<div class="fsb-col-4 fsb-text-right">
276
<p class="fsb-shipping">{{total}}</p>
277
</div>
278
</div>
279
{{/iff}}
280
{{/each}}
281
{{/each}}
282
<div class="fsb-row">
283
<div class="fsb-col-8 fsb-text-right">
284
<p class="fsb-total">Total:</p>
285
</div>
286
<div class="fsb-col-4 fsb-text-right">
287
{{#each order}}
288
{{#iff totalValue '>' '0'}}
289
<p class="fsb-total" data-fsc-order-total ></p>
290
{{else}}
291
<p class="fsb-total">FREE</p>
292
{{/iff}}
293
{{#if discountTotalValue}}
294
<p class="fsb-text-success">You save {{discountTotal}}!</p>
295
{{/if}}
296
{{/each}}
297
</div>
298
</div>
299
<div class="fsb-row">
300
<div class="fsb-col-12 mt-2">
301
<button id="checkout" data-fsc-selections-smartdisplay class="fastspring_btn fastspring_btn-success" style="float:right;" data-fsc-action="Checkout">
302
Checkout
303
</button>
304
</div>
305
</div>
306
</div>
307
<div class="fsb-col-md-6 fsb-col-12 fsb-order-md-1 fsb-order-12">
308
<div class="fsb-col-12 fsb-text-nowrap fsb-text-center fsb-text-md-left">
309
<label for="couponcode" class="fsb-promocode">Have a promo code?</label><br />
310
<input type="text" id="couponcode" data-fsc-order-promocode class="fsb-form-control" placeholder="Coupon ID" style="display:inline-block; width:200px;">
311
<button class="fastspring_btn fastspring_btn-success" onclick="applycoupon();">Apply</button>
312
</div>
313
</div>
314
</div>
315
{{#each groups}}
316
{{#iff driverType '==' 'storefront'}}
317
{{#each items}}
318
{{#iff path '==' 'SystemExtension.eds'}}
319
{{#iff selected '==' false}}
320
<div class="fsb-row">
321
<div class="fsb-col-md-12 fsb-mt-4">
322
<div class="fsb-card fsb-mt-2 fsb-mb-3">
323
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
324
{{display}}
325
</div>
326
<div class="fsb-card-body fsb-pb-0">
327
<div class="fsb-row fsb-mb-4">
328
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-4 fsb-offset-4 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
329
{{#if image}}
330
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="{{display}}" />
331
{{/if}}
332
</div>
333
<div class="fsb-col-lg-6 fsb-col-md-4 fsb-col-sm-8 fsb-col-12 fsb-text-center fsb-text-sm-left">
334
<p class="fsb-display">{{display}}</p>
335
{{#if description.summary}}
336
{{{description.summary}}}
337
{{/if}}
338
<div class="fsb-d-md-none fsb-row fsb-mt-4">
339
<div class=" fsb-col-sm-7 fsb-col-12 fsb-text-center fsb-text-sm-left">
340
{{>pricing}}
341
{{>volume-discount}}
342
</div>
343
<div class="fsb-col-sm-5 fsb-col-12 fsb-text-center fsb-text-sm-right">
344
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-item-path="{{path}}" data-fsc-action="Add" data-fsc-item-description-action>Add to Order</button>
345
</div>
346
</div>
347
</div>
348
<div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-center">
349
{{>pricing}}
350
</div>
351
<div class="fsb-col-lg-2 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-right">
352
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
353
</div>
354
</div>
355
</div>
356
</div>
357
</div>
358
</div>
359
{{/iff}}
360
{{/iff}}
361
{{/each}}
362
{{/iff}}
363
{{/each}}
364
</div>
365
</div>
366
</script>
367
368
<!--
369
pricing-partial handlebars partial
370
This partial controls how line item prices are displayedin the shopping cart.
371
-->
372
<script id="pricing-partial" type='text/x-handlebars-template'>
373
<span class='pricing'>
374
{{#if discountTotalValue}}
375
<p class="fsb-price fsb-inline-item"><s>{{price}}</s></p>
376
{{/if}}
377
{{#iff totalValue '>' '0'}}
378
<p class="fsb-price fsb-inline-item">{{unitPrice}}</p>
379
{{else}}
380
<p class="fsb-price fsb-inline-item fsb-text-success"> Free </p>
381
{{/iff}}
382
</span>
383
</script>
384
385
<!--
386
pricing-partial handlebars partial
387
This partial controls how line item prices are displayedin the shopping cart.
388
-->
389
<script id="pricing-partial2" type='text/x-handlebars-template'>
390
<span class='pricing'>
391
{{#if discountTotalValue}}
392
<p class="fsb-price fsb-inline-item"><s>{{price}}</s></p>
393
{{/if}}
394
{{#iff totalValue '>' '0'}}
395
<p class="fsb-price fsb-inline-item">{{unitPrice}}</p>
396
{{else}}
397
<p class="fsb-price fsb-inline-item fsb-text-success"> Free </p>
398
{{/iff}}
399
{{#if subscription}}
400
<div>
401
<em style="font-size:75%;">
402
{{#iff subscription.intervalUnit '==' 'adhoc'}}
403
Renews automatically by the seller
404
{{else}}
405
Renews every
406
{{#iff subscription.intervalLength '>=' '2' }}
407
{{subscription.intervalLength}} {{subscription.intervalUnit}}s
408
{{/iff}}
409
{{#iff subscription.intervalLength '==' '1' }}
410
{{subscription.intervalUnit}}
411
{{/iff}}.
412
<br />Next charge: {{subscription.nextChargeTotal}} on {{subscription.nextChargeDate}}
413
{{/iff}}
414
</em>
415
</div>
416
{{/if}}
417
</span>
418
</script>
419
420
<!--
421
quantity-partial handlebars partial
422
This partial controls how the quantity fields are displayed on the shopping cart.
423
-->
424
<script id="quantity-partial" type='text/x-handlebars-template'>
425
{{#if selected}}
426
{{#iff pricing.quantity '==' 'allow'}}
427
{{#iff selected '==' true}}
428
<strong>×</strong>
429
{{/iff}}
430
<div class="fsb-number">
431
<span class="fsb-minus">−</span>
432
<input class="fsb-qtyinput" type="text" value="{{quantity}}" data-fsc-autoapply data-fsc-item-quantity-value data-fsc-item-quantity data-fsc-item-path-value="{{path}}" data-fsc-item-path="{{path}}" data-fsc-action="Update"/>
433
<span class="fsb-plus">+</span>
434
</div>
435
<p class="fsb-qtyPrice fsb-d-inline-block fsb-d-md-none fsb-ml-2">
436
{{#iff totalValue '>' '0'}}
437
- {{total}}
438
{{else}}
439
- FREE
440
{{/iff}}
441
</p>
442
{{/iff}}
443
{{#iff pricing.quantity '==' 'lock'}}
444
<p class="fsb-multiply fsb-inline-item">× {{quantity}}</p>
445
{{/iff}}
446
{{#if subscription}}
447
<div>
448
<em style="font-size:75%;">
449
{{#iff subscription.intervalUnit '==' 'adhoc'}}
450
Renews automatically by the seller
451
{{else}}
452
Renews every
453
{{#iff subscription.intervalLength '>=' '2' }}
454
{{subscription.intervalLength}} {{subscription.intervalUnit}}s
455
{{/iff}}
456
{{#iff subscription.intervalLength '==' '1' }}
457
{{subscription.intervalUnit}}
458
{{/iff}}.
459
<br />Next charge: {{subscription.nextChargeTotal}} on {{subscription.nextChargeDate}}
460
{{/iff}}
461
</em>
462
</div>
463
{{/if}}
464
{{>volume-discount}}
465
{{/if}}
466
</script>
467
468
<!--
469
volume-discount handlebars partial
470
This partial controls how volume discounts are displayed in the shopping cart.
471
-->
472
<script id="volume-discount" type='text/x-handlebars-template'>
473
{{#if discountTotalValue}}
474
<div class="fsb-text-success">
475
You save {{discountTotal}} ({{discountPercent}})
476
</div>
477
{{/if}}
478
{{#if discount.data.tiers}}
479
<div style="font-size:75%;">
480
<strong>Volume Discounts Available</strong>
481
{{#each discount.data.tiers}}
482
<div>
483
{{quantity}}+ : {{percent}}{{amount}} off
484
</div>
485
{{/each}}
486
</div>
487
{{/if}}
488
</script>
489
490
<!--
491
multichoice handlebars partial
492
This partial is used to display multiple choice options or subscription addons.
493
-->
494
<script id="multichoice" type='text/x-handlebars-template'>
495
<div class="fsb-row">
496
<div class="fsb-col-md-11 fsb-offset-md-1">
497
<div class="fsb-card fsb-mt-2 fsb-mb-3">
498
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
499
{{display}}
500
</div>
501
<div class="fsb-card-body fsb-pb-0">
502
{{#each items}}
503
<div class="fsb-row fsb-mb-4">
504
<div class="fsb-col-1">
505
{{#if selected}}
506
<input class="fsb-option-input fsb-checkbox" type="checkbox" name="{{display}}" id="{{path}}" checked data-fsc-action="Remove" data-fsc-item-path-value="{{path}}">
507
{{else}}
508
<input class="fsb-option-input fsb-checkbox" type="checkbox" name="{{display}}" id="{{path}}" data-fsc-action="Add" data-fsc-item-path-value="{{path}}">
509
{{/if}}
510
</div>
511
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-12 fsb-text-center fsb-pr-0 fsb-d-md-none fsb-d-lg-block">
512
{{#if image}}
513
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="{{display}}" />
514
{{/if}}
515
</div>
516
<div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-text-md-left">
517
<p class="fsb-display">{{display}}</p>
518
{{#if description.summary}}
519
{{{description.summary}}}
520
{{/if}}
521
</div>
522
<div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-mt-3">
523
{{>pricing}}
524
{{>quantity}}
525
</div>
526
<div class="fsb-d-none fsb-d-md-block fsb-col-md-3 fsb-col-lg-2 fsb-col-6 fsb-text-left fsb-text-md-right fsb-mt-3">
527
{{#if selected}}
528
<p class="fsb-qtyPrice">
529
{{#iff totalValue '>' '0'}}
530
{{total}}
531
{{else}}
532
FREE
533
{{/iff}}
534
</p>
535
{{else}}
536
---
537
{{/if}}
538
</div>
539
</div>
540
<hr />
541
{{/each}}
542
</div>
543
</div>
544
</div>
545
</div>
546
</script>
547
548
<!--
549
singlechoice handlebars partial
550
This partial is used to display single choice options or subscription addons.
551
-->
552
<script id="singlechoice" type='text/x-handlebars-template'>
553
<div class="fsb-row">
554
<div class="fsb-col-md-11 fsb-offset-md-1">
555
<div class="fsb-card fsb-mt-2 fsb-mb-3">
556
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
557
{{display}}
558
</div>
559
<div class="fsb-card-body fsb-pb-0">
560
{{#each items}}
561
<div class="fsb-row fsb-mb-4">
562
<div class="fsb-col-1">
563
<input class="fsb-option-input fsb-radio" type="radio" {{#if selected}} checked{{/if}} name="{{display}}" id="{{path}}" data-fsc-action="Add" data-fsc-item-path-value="{{path}}" >
564
</div>
565
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-12 fsb-text-center fsb-pr-0 fsb-d-md-none fsb-d-lg-block">
566
{{#if image}}
567
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="" />
568
{{/if}}
569
</div>
570
<div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-text-md-left">
571
<p class="fsb-display">{{display}}</p>
572
{{#if description.summary}}
573
{{{description.summary}}}
574
{{/if}}
575
</div>
576
<div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-mt-3">
577
{{>pricing}}
578
{{>quantity}}
579
</div>
580
<div class="fsb-d-none fsb-d-md-block fsb-fsb-col-md-3 fsb-fsb-col-lg-2 fsb-fsb-col-6 fsb-text-left fsb-text-md-right fsb-mt-3">
581
{{#if selected}}
582
<p class="fsb-qtyPrice">
583
{{#iff totalValue '>' '0'}}
584
{{total}}
585
{{else}}
586
FREE
587
{{/iff}}
588
</p>
589
{{else}}
590
---
591
{{/if}}
592
</div>
593
</div>
594
<hr />
595
{{/each}}
596
</div>
597
</div>
598
</div>
599
</div>
600
</script>
601
602
<!--
603
upsell handlebars partial
604
This partial controls how upsells are displayed in the shopping cart.
605
-->
606
<script id="upsell" type='text/x-handlebars-template'>
607
<div class="fsb-row">
608
<div class="fsb-col-md-11 fsb-offset-md-1">
609
<div class="fsb-card fsb-mt-2 fsb-mb-3">
610
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
611
{{display}}
612
</div>
613
<div class="fsb-card-body fsb-pb-0">
614
{{#each items}}
615
{{#iff selected '==' false}}
616
<div class="fsb-row fsb-mb-4">
617
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-3 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
618
{{#if image}}
619
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="" />
620
{{/if}}
621
</div>
622
<div class="fsb-col-lg-5 fsb-col-md-4 fsb-col-sm-9 fsb-col-12 fsb-text-center fsb-text-sm-left">
623
<p class="fsb-display">{{display}}</p>
624
{{#if description.summary}}
625
{{{description.summary}}}
626
{{/if}}
627
<div class="fsb-d-md-none fsb-row">
628
<div class=" fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-left">
629
{{>pricing}}
630
{{>volume-discount}}
631
</div>
632
<div class="fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-right">
633
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Upgrade Now</button>
634
</div>
635
</div>
636
</div>
637
<div class="fsb-col-lg-3 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
638
{{>pricing}}
639
</div>
640
<div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-right">
641
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Upgrade Now</button>
642
</div>
643
</div>
644
<hr />
645
{{/iff}}
646
{{/each}}
647
</div>
648
</div>
649
</div>
650
</div>
651
</script>
652
653
<!--
654
upsell handlebars partial
655
This partial controls how cross sells are displayed in the shopping cart.
656
-->
657
<script id="xsell" type='text/x-handlebars-template'>
658
<div class="fsb-row">
659
<div class="fsb-col-md-11 fsb-offset-md-1">
660
<div class="fsb-card fsb-mt-2 fsb-mb-3">
661
<div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
662
{{display}}
663
</div>
664
<div class="fsb-card-body fsb-pb-0">
665
{{#each items}}
666
{{#iff selected '==' false}}
667
<div class="fsb-row fsb-mb-4">
668
<div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-3 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
669
{{#if image}}
670
<img src="{{image}}" class="fsb-img-fluid fsb-ximage" alt="" />
671
{{/if}}
672
</div>
673
<div class="fsb-col-lg-5 fsb-col-md-4 fsb-col-sm-9 fsb-col-12 fsb-text-center fsb-text-sm-left">
674
<p class="fsb-display">{{display}}</p>
675
{{#if description.summary}}
676
{{{description.summary}}}
677
{{/if}}
678
<div class="fsb-d-md-none fsb-row">
679
<div class=" fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-left">
680
{{>pricing}}
681
{{>volume-discount}}
682
</div>
683
<div class="fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-right">
684
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
685
</div>
686
</div>
687
</div>
688
<div class="fsb-col-lg-3 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
689
{{>pricing}}
690
</div>
691
<div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-right">
692
<button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
693
</div>
694
</div>
695
<hr />
696
{{/iff}}
697
{{/each}}
698
</div>
699
</div>
700
</div>
701
</div>
702
</script>
703
</body>
704
</html>
1
2817
1
#fsb *,
2
#fsb ::after,
3
#fsb ::before {
4
box-sizing: border-box;
5
box-sizing: border-box; }
6
7
body.fsb-modalOpen {
8
overflow: hidden; }
9
10
#fastspring_spinner
11
{
12
width: 100%;
13
height: 100%;
14
z-index: 99999998;
15
background: rgba(0,0,0,0.4);
16
position: fixed;
17
top: 0;
18
left: 0;
19
}
20
21
#fastspring_spinner img
22
{
23
animation-duration: .4s;
24
animation-duration: .4s;
25
animation-delay: .4s;
26
animation-delay: .4s;
27
animation-name: fsb-fadeIn;
28
animation-name: fsb-fadeIn;
29
position: fixed;
30
top: 50%;
31
margin-top: -50px;
32
left: 50%;
33
margin-left: -50px;
34
z-index: 99999999;
35
}
36
37
.fsb-alert-danger {
38
color: #a94442;
39
background-color: #f2dede;
40
border-color: #ebccd1; }
41
42
.fsb-alert {
43
display: none; }
44
45
.fsb-alert,
46
.fsb-mod_alert {
47
animation-duration: .4s;
48
animation-duration: .4s;
49
animation-name: fsb-mod_animatetop;
50
animation-name: fsb-mod_animatetop;
51
padding: 15px;
52
margin-bottom: 20px;
53
border: 1px solid transparent;
54
border-radius: 4px;
55
z-index: 999999999; }
56
57
.fsb-inline-item {
58
display: inline-block; }
59
60
.fsb-img-fluid {
61
height: auto;
62
max-width: 100%; }
63
64
.fsb-container-fluid {
65
margin-left: auto;
66
margin-right: auto;
67
padding-left: 15px;
68
padding-right: 15px;
69
width: 100%; }
70
71
.fsb-row {
72
display: flexbox;
73
display: flex;
74
flex-wrap: wrap;
75
flex-wrap: wrap;
76
margin-left: -15px;
77
margin-right: -15px; }
78
79
.fsb-col-1, .fsb-col-2, .fsb-col-3, .fsb-col-4, .fsb-col-5, .fsb-col-6, .fsb-col-7, .fsb-col-8, .fsb-col-9, .fsb-col-10, .fsb-col-11, .fsb-col-12, .fsb-col,
80
.fsb-col-auto, .fsb-col-sm-1, .fsb-col-sm-2, .fsb-col-sm-3, .fsb-col-sm-4, .fsb-col-sm-5, .fsb-col-sm-6, .fsb-col-sm-7, .fsb-col-sm-8, .fsb-col-sm-9, .fsb-col-sm-10, .fsb-col-sm-11, .fsb-col-sm-12, .fsb-col-sm,
81
.fsb-col-sm-auto, .fsb-col-md-1, .fsb-col-md-2, .fsb-col-md-3, .fsb-col-md-4, .fsb-col-md-5, .fsb-col-md-6, .fsb-col-md-7, .fsb-col-md-8, .fsb-col-md-9, .fsb-col-md-10, .fsb-col-md-11, .fsb-col-md-12, .fsb-col-md,
82
.fsb-col-md-auto, .fsb-col-lg-1, .fsb-col-lg-2, .fsb-col-lg-3, .fsb-col-lg-4, .fsb-col-lg-5, .fsb-col-lg-6, .fsb-col-lg-7, .fsb-col-lg-8, .fsb-col-lg-9, .fsb-col-lg-10, .fsb-col-lg-11, .fsb-col-lg-12, .fsb-col-lg,
83
.fsb-col-lg-auto, .fsb-col-xl-1, .fsb-col-xl-2, .fsb-col-xl-3, .fsb-col-xl-4, .fsb-col-xl-5, .fsb-col-xl-6, .fsb-col-xl-7, .fsb-col-xl-8, .fsb-col-xl-9, .fsb-col-xl-10, .fsb-col-xl-11, .fsb-col-xl-12, .fsb-col-xl,
84
.fsb-col-xl-auto {
85
min-height: 1px;
86
padding-left: 15px;
87
padding-right: 15px;
88
position: relative;
89
width: 100%; }
90
91
.fsb-col-1 {
92
flex: 0 0 8.333333%;
93
flex: 0 0 8.333333%;
94
max-width: 8.333333%; }
95
96
.fsb-col-2 {
97
flex: 0 0 16.666667%;
98
flex: 0 0 16.666667%;
99
max-width: 16.666667%; }
100
101
.fsb-col-3 {
102
flex: 0 0 25%;
103
flex: 0 0 25%;
104
max-width: 25%; }
105
106
.fsb-col-4 {
107
flex: 0 0 33.333333%;
108
flex: 0 0 33.333333%;
109
max-width: 33.333333%; }
110
111
.fsb-col-5 {
112
flex: 0 0 41.666667%;
113
flex: 0 0 41.666667%;
114
max-width: 41.666667%; }
115
116
.fsb-col-6 {
117
flex: 0 0 50%;
118
flex: 0 0 50%;
119
max-width: 50%; }
120
121
.fsb-col-7 {
122
flex: 0 0 58.333333%;
123
flex: 0 0 58.333333%;
124
max-width: 58.333333%; }
125
126
.fsb-col-8 {
127
flex: 0 0 66.666667%;
128
flex: 0 0 66.666667%;
129
max-width: 66.666667%; }
130
131
.fsb-col-9 {
132
flex: 0 0 75%;
133
flex: 0 0 75%;
134
max-width: 75%; }
135
136
.fsb-col-10 {
137
flex: 0 0 83.333333%;
138
flex: 0 0 83.333333%;
139
max-width: 83.333333%; }
140
141
.fsb-col-11 {
142
flex: 0 0 91.666667%;
143
flex: 0 0 91.666667%;
144
max-width: 91.666667%; }
145
146
.fsb-col-12 {
147
flex: 0 0 100%;
148
flex: 0 0 100%;
149
max-width: 100%; }
150
151
.fsb-order-first {
152
flex-order: -1;
153
order: -1; }
154
155
.fsb-order-last {
156
flex-order: 13;
157
order: 13; }
158
159
.fsb-order-0 {
160
flex-order: 0;
161
order: 0; }
162
163
.fsb-order-1 {
164
flex-order: 1;
165
order: 1; }
166
167
.fsb-order-2 {
168
flex-order: 2;
169
order: 2; }
170
171
.fsb-order-3 {
172
flex-order: 3;
173
order: 3; }
174
175
.fsb-order-4 {
176
flex-order: 4;
177
order: 4; }
178
179
.fsb-order-5 {
180
flex-order: 5;
181
order: 5; }
182
183
.fsb-order-6 {
184
flex-order: 6;
185
order: 6; }
186
187
.fsb-order-7 {
188
flex-order: 7;
189
order: 7; }
190
191
.fsb-order-8 {
192
flex-order: 8;
193
order: 8; }
194
195
.fsb-order-9 {
196
flex-order: 9;
197
order: 9; }
198
199
.fsb-order-10 {
200
flex-order: 10;
201
order: 10; }
202
203
.fsb-order-11 {
204
flex-order: 11;
205
order: 11; }
206
207
.fsb-order-12 {
208
flex-order: 12;
209
order: 12; }
210
211
.fsb-offset-1 {
212
margin-left: 8.333333%; }
213
214
.fsb-offset-2 {
215
margin-left: 16.666667%; }
216
217
.fsb-offset-3 {
218
margin-left: 25%; }
219
220
.fsb-offset-4 {
221
margin-left: 33.333333%; }
222
223
.fsb-offset-5 {
224
margin-left: 41.666667%; }
225
226
.fsb-offset-6 {
227
margin-left: 50%; }
228
229
.fsb-offset-7 {
230
margin-left: 58.333333%; }
231
232
.fsb-offset-8 {
233
margin-left: 66.666667%; }
234
235
.fsb-offset-9 {
236
margin-left: 75%; }
237
238
.fsb-offset-10 {
239
margin-left: 83.333333%; }
240
241
.fsb-offset-11 {
242
margin-left: 91.666667%; }
243
244
@media (min-width: 576px) {
245
.fsb-col-sm {
246
flex-preferred-size: 0;
247
flex-basis: 0;
248
flex-positive: 1;
249
flex-grow: 1;
250
max-width: 100%; }
251
.fsb-col-sm-auto {
252
flex: 0 0 auto;
253
flex: 0 0 auto;
254
width: auto;
255
max-width: 100%; }
256
.fsb-col-sm-1 {
257
flex: 0 0 8.333333%;
258
flex: 0 0 8.333333%;
259
max-width: 8.333333%; }
260
.fsb-col-sm-2 {
261
flex: 0 0 16.666667%;
262
flex: 0 0 16.666667%;
263
max-width: 16.666667%; }
264
.fsb-col-sm-3 {
265
flex: 0 0 25%;
266
flex: 0 0 25%;
267
max-width: 25%; }
268
.fsb-col-sm-4 {
269
flex: 0 0 33.333333%;
270
flex: 0 0 33.333333%;
271
max-width: 33.333333%; }
272
.fsb-col-sm-5 {
273
flex: 0 0 41.666667%;
274
flex: 0 0 41.666667%;
275
max-width: 41.666667%; }
276
.fsb-col-sm-6 {
277
flex: 0 0 50%;
278
flex: 0 0 50%;
279
max-width: 50%; }
280
.fsb-col-sm-7 {
281
flex: 0 0 58.333333%;
282
flex: 0 0 58.333333%;
283
max-width: 58.333333%; }
284
.fsb-col-sm-8 {
285
flex: 0 0 66.666667%;
286
flex: 0 0 66.666667%;
287
max-width: 66.666667%; }
288
.fsb-col-sm-9 {
289
flex: 0 0 75%;
290
flex: 0 0 75%;
291
max-width: 75%; }
292
.fsb-col-sm-10 {
293
flex: 0 0 83.333333%;
294
flex: 0 0 83.333333%;
295
max-width: 83.333333%; }
296
.fsb-col-sm-11 {
297
flex: 0 0 91.666667%;
298
flex: 0 0 91.666667%;
299
max-width: 91.666667%; }
300
.fsb-col-sm-12 {
301
flex: 0 0 100%;
302
flex: 0 0 100%;
303
max-width: 100%; }
304
.fsb-order-sm-first {
305
flex-order: -1;
306
order: -1; }
307
.fsb-order-sm-last {
308
flex-order: 13;
309
order: 13; }
310
.fsb-order-sm-0 {
311
flex-order: 0;
312
order: 0; }
313
.fsb-order-sm-1 {
314
flex-order: 1;
315
order: 1; }
316
.fsb-order-sm-2 {
317
flex-order: 2;
318
order: 2; }
319
.fsb-order-sm-3 {
320
flex-order: 3;
321
order: 3; }
322
.fsb-order-sm-4 {
323
flex-order: 4;
324
order: 4; }
325
.fsb-order-sm-5 {
326
flex-order: 5;
327
order: 5; }
328
.fsb-order-sm-6 {
329
flex-order: 6;
330
order: 6; }
331
.fsb-order-sm-7 {
332
flex-order: 7;
333
order: 7; }
334
.fsb-order-sm-8 {
335
flex-order: 8;
336
order: 8; }
337
.fsb-order-sm-9 {
338
flex-order: 9;
339
order: 9; }
340
.fsb-order-sm-10 {
341
flex-order: 10;
342
order: 10; }
343
.fsb-order-sm-11 {
344
flex-order: 11;
345
order: 11; }
346
.fsb-order-sm-12 {
347
flex-order: 12;
348
order: 12; }
349
.fsb-offset-sm-0 {
350
margin-left: 0; }
351
.fsb-offset-sm-1 {
352
margin-left: 8.333333%; }
353
.fsb-offset-sm-2 {
354
margin-left: 16.666667%; }
355
.fsb-offset-sm-3 {
356
margin-left: 25%; }
357
.fsb-offset-sm-4 {
358
margin-left: 33.333333%; }
359
.fsb-offset-sm-5 {
360
margin-left: 41.666667%; }
361
.fsb-offset-sm-6 {
362
margin-left: 50%; }
363
.fsb-offset-sm-7 {
364
margin-left: 58.333333%; }
365
.fsb-offset-sm-8 {
366
margin-left: 66.666667%; }
367
.fsb-offset-sm-9 {
368
margin-left: 75%; }
369
.fsb-offset-sm-10 {
370
margin-left: 83.333333%; }
371
.fsb-offset-sm-11 {
372
margin-left: 91.666667%; } }
373
374
@media (min-width: 768px) {
375
.fsb-col-md {
376
flex-preferred-size: 0;
377
flex-basis: 0;
378
flex-positive: 1;
379
flex-grow: 1;
380
max-width: 100%; }
381
.fsb-col-md-auto {
382
flex: 0 0 auto;
383
flex: 0 0 auto;
384
width: auto;
385
max-width: 100%; }
386
.fsb-col-md-1 {
387
flex: 0 0 8.333333%;
388
flex: 0 0 8.333333%;
389
max-width: 8.333333%; }
390
.fsb-col-md-2 {
391
flex: 0 0 16.666667%;
392
flex: 0 0 16.666667%;
393
max-width: 16.666667%; }
394
.fsb-col-md-3 {
395
flex: 0 0 25%;
396
flex: 0 0 25%;
397
max-width: 25%; }
398
.fsb-col-md-4 {
399
flex: 0 0 33.333333%;
400
flex: 0 0 33.333333%;
401
max-width: 33.333333%; }
402
.fsb-col-md-5 {
403
flex: 0 0 41.666667%;
404
flex: 0 0 41.666667%;
405
max-width: 41.666667%; }
406
.fsb-col-md-6 {
407
flex: 0 0 50%;
408
flex: 0 0 50%;
409
max-width: 50%; }
410
.fsb-col-md-7 {
411
flex: 0 0 58.333333%;
412
flex: 0 0 58.333333%;
413
max-width: 58.333333%; }
414
.fsb-col-md-8 {
415
flex: 0 0 66.666667%;
416
flex: 0 0 66.666667%;
417
max-width: 66.666667%; }
418
.fsb-col-md-9 {
419
flex: 0 0 75%;
420
flex: 0 0 75%;
421
max-width: 75%; }
422
.fsb-col-md-10 {
423
flex: 0 0 83.333333%;
424
flex: 0 0 83.333333%;
425
max-width: 83.333333%; }
426
.fsb-col-md-11 {
427
flex: 0 0 91.666667%;
428
flex: 0 0 91.666667%;
429
max-width: 91.666667%; }
430
.fsb-col-md-12 {
431
flex: 0 0 100%;
432
flex: 0 0 100%;
433
max-width: 100%; }
434
.fsb-order-md-first {
435
flex-order: -1;
436
order: -1; }
437
.fsb-order-md-last {
438
flex-order: 13;
439
order: 13; }
440
.fsb-order-md-0 {
441
flex-order: 0;
442
order: 0; }
443
.fsb-order-md-1 {
444
flex-order: 1;
445
order: 1; }
446
.fsb-order-md-2 {
447
flex-order: 2;
448
order: 2; }
449
.fsb-order-md-3 {
450
flex-order: 3;
451
order: 3; }
452
.fsb-order-md-4 {
453
flex-order: 4;
454
order: 4; }
455
.fsb-order-md-5 {
456
flex-order: 5;
457
order: 5; }
458
.fsb-order-md-6 {
459
flex-order: 6;
460
order: 6; }
461
.fsb-order-md-7 {
462
flex-order: 7;
463
order: 7; }
464
.fsb-order-md-8 {
465
flex-order: 8;
466
order: 8; }
467
.fsb-order-md-9 {
468
flex-order: 9;
469
order: 9; }
470
.fsb-order-md-10 {
471
flex-order: 10;
472
order: 10; }
473
.fsb-order-md-11 {
474
flex-order: 11;
475
order: 11; }
476
.fsb-order-md-12 {
477
flex-order: 12;
478
order: 12; }
479
.fsb-offset-md-0 {
480
margin-left: 0; }
481
.fsb-offset-md-1 {
482
margin-left: 8.333333%; }
483
.fsb-offset-md-2 {
484
margin-left: 16.666667%; }
485
.fsb-offset-md-3 {
486
margin-left: 25%; }
487
.fsb-offset-md-4 {
488
margin-left: 33.333333%; }
489
.fsb-offset-md-5 {
490
margin-left: 41.666667%; }
491
.fsb-offset-md-6 {
492
margin-left: 50%; }
493
.fsb-offset-md-7 {
494
margin-left: 58.333333%; }
495
.fsb-offset-md-8 {
496
margin-left: 66.666667%; }
497
.fsb-offset-md-9 {
498
margin-left: 75%; }
499
.fsb-offset-md-10 {
500
margin-left: 83.333333%; }
501
.fsb-offset-md-11 {
502
margin-left: 91.666667%; } }
503
504
@media (min-width: 992px) {
505
.fsb-col-lg {
506
flex-preferred-size: 0;
507
flex-basis: 0;
508
flex-positive: 1;
509
flex-grow: 1;
510
max-width: 100%; }
511
.fsb-col-lg-auto {
512
flex: 0 0 auto;
513
flex: 0 0 auto;
514
width: auto;
515
max-width: 100%; }
516
.fsb-col-lg-1 {
517
flex: 0 0 8.333333%;
518
flex: 0 0 8.333333%;
519
max-width: 8.333333%; }
520
.fsb-col-lg-2 {
521
flex: 0 0 16.666667%;
522
flex: 0 0 16.666667%;
523
max-width: 16.666667%; }
524
.fsb-col-lg-3 {
525
flex: 0 0 25%;
526
flex: 0 0 25%;
527
max-width: 25%; }
528
.fsb-col-lg-4 {
529
flex: 0 0 33.333333%;
530
flex: 0 0 33.333333%;
531
max-width: 33.333333%; }
532
.fsb-col-lg-5 {
533
flex: 0 0 41.666667%;
534
flex: 0 0 41.666667%;
535
max-width: 41.666667%; }
536
.fsb-col-lg-6 {
537
flex: 0 0 50%;
538
flex: 0 0 50%;
539
max-width: 50%; }
540
.fsb-col-lg-7 {
541
flex: 0 0 58.333333%;
542
flex: 0 0 58.333333%;
543
max-width: 58.333333%; }
544
.fsb-col-lg-8 {
545
flex: 0 0 66.666667%;
546
flex: 0 0 66.666667%;
547
max-width: 66.666667%; }
548
.fsb-col-lg-9 {
549
flex: 0 0 75%;
550
flex: 0 0 75%;
551
max-width: 75%; }
552
.fsb-col-lg-10 {
553
flex: 0 0 83.333333%;
554
flex: 0 0 83.333333%;
555
max-width: 83.333333%; }
556
.fsb-col-lg-11 {
557
flex: 0 0 91.666667%;
558
flex: 0 0 91.666667%;
559
max-width: 91.666667%; }
560
.fsb-col-lg-12 {
561
flex: 0 0 100%;
562
flex: 0 0 100%;
563
max-width: 100%; }
564
.fsb-order-lg-first {
565
flex-order: -1;
566
order: -1; }
567
.fsb-order-lg-last {
568
flex-order: 13;
569
order: 13; }
570
.fsb-order-lg-0 {
571
flex-order: 0;
572
order: 0; }
573
.fsb-order-lg-1 {
574
flex-order: 1;
575
order: 1; }
576
.fsb-order-lg-2 {
577
flex-order: 2;
578
order: 2; }
579
.fsb-order-lg-3 {
580
flex-order: 3;
581
order: 3; }
582
.fsb-order-lg-4 {
583
flex-order: 4;
584
order: 4; }
585
.fsb-order-lg-5 {
586
flex-order: 5;
587
order: 5; }
588
.fsb-order-lg-6 {
589
flex-order: 6;
590
order: 6; }
591
.fsb-order-lg-7 {
592
flex-order: 7;
593
order: 7; }
594
.fsb-order-lg-8 {
595
flex-order: 8;
596
order: 8; }
597
.fsb-order-lg-9 {
598
flex-order: 9;
599
order: 9; }
600
.fsb-order-lg-10 {
601
flex-order: 10;
602
order: 10; }
603
.fsb-order-lg-11 {
604
flex-order: 11;
605
order: 11; }
606
.fsb-order-lg-12 {
607
flex-order: 12;
608
order: 12; }
609
.fsb-offset-lg-0 {
610
margin-left: 0; }
611
.fsb-offset-lg-1 {
612
margin-left: 8.333333%; }
613
.fsb-offset-lg-2 {
614
margin-left: 16.666667%; }
615
.fsb-offset-lg-3 {
616
margin-left: 25%; }
617
.fsb-offset-lg-4 {
618
margin-left: 33.333333%; }
619
.fsb-offset-lg-5 {
620
margin-left: 41.666667%; }
621
.fsb-offset-lg-6 {
622
margin-left: 50%; }
623
.fsb-offset-lg-7 {
624
margin-left: 58.333333%; }
625
.fsb-offset-lg-8 {
626
margin-left: 66.666667%; }
627
.fsb-offset-lg-9 {
628
margin-left: 75%; }
629
.fsb-offset-lg-10 {
630
margin-left: 83.333333%; }
631
.fsb-offset-lg-11 {
632
margin-left: 91.666667%; } }
633
634
@media (min-width: 1200px) {
635
.fsb-col-xl {
636
flex-preferred-size: 0;
637
flex-basis: 0;
638
flex-positive: 1;
639
flex-grow: 1;
640
max-width: 100%; }
641
.fsb-col-xl-auto {
642
flex: 0 0 auto;
643
flex: 0 0 auto;
644
width: auto;
645
max-width: 100%; }
646
.fsb-col-xl-1 {
647
flex: 0 0 8.333333%;
648
flex: 0 0 8.333333%;
649
max-width: 8.333333%; }
650
.fsb-col-xl-2 {
651
flex: 0 0 16.666667%;
652
flex: 0 0 16.666667%;
653
max-width: 16.666667%; }
654
.fsb-col-xl-3 {
655
flex: 0 0 25%;
656
flex: 0 0 25%;
657
max-width: 25%; }
658
.fsb-col-xl-4 {
659
flex: 0 0 33.333333%;
660
flex: 0 0 33.333333%;
661
max-width: 33.333333%; }
662
.fsb-col-xl-5 {
663
flex: 0 0 41.666667%;
664
flex: 0 0 41.666667%;
665
max-width: 41.666667%; }
666
.fsb-col-xl-6 {
667
flex: 0 0 50%;
668
flex: 0 0 50%;
669
max-width: 50%; }
670
.fsb-col-xl-7 {
671
flex: 0 0 58.333333%;
672
flex: 0 0 58.333333%;
673
max-width: 58.333333%; }
674
.fsb-col-xl-8 {
675
flex: 0 0 66.666667%;
676
flex: 0 0 66.666667%;
677
max-width: 66.666667%; }
678
.fsb-col-xl-9 {
679
flex: 0 0 75%;
680
flex: 0 0 75%;
681
max-width: 75%; }
682
.fsb-col-xl-10 {
683
flex: 0 0 83.333333%;
684
flex: 0 0 83.333333%;
685
max-width: 83.333333%; }
686
.fsb-col-xl-11 {
687
flex: 0 0 91.666667%;
688
flex: 0 0 91.666667%;
689
max-width: 91.666667%; }
690
.fsb-col-xl-12 {
691
flex: 0 0 100%;
692
flex: 0 0 100%;
693
max-width: 100%; }
694
.fsb-order-xl-first {
695
flex-order: -1;
696
order: -1; }
697
.fsb-order-xl-last {
698
flex-order: 13;
699
order: 13; }
700
.fsb-order-xl-0 {
701
flex-order: 0;
702
order: 0; }
703
.fsb-order-xl-1 {
704
flex-order: 1;
705
order: 1; }
706
.fsb-order-xl-2 {
707
flex-order: 2;
708
order: 2; }
709
.fsb-order-xl-3 {
710
flex-order: 3;
711
order: 3; }
712
.fsb-order-xl-4 {
713
flex-order: 4;
714
order: 4; }
715
.fsb-order-xl-5 {
716
flex-order: 5;
717
order: 5; }
718
.fsb-order-xl-6 {
719
flex-order: 6;
720
order: 6; }
721
.fsb-order-xl-7 {
722
flex-order: 7;
723
order: 7; }
724
.fsb-order-xl-8 {
725
flex-order: 8;
726
order: 8; }
727
.fsb-order-xl-9 {
728
flex-order: 9;
729
order: 9; }
730
.fsb-order-xl-10 {
731
flex-order: 10;
732
order: 10; }
733
.fsb-order-xl-11 {
734
flex-order: 11;
735
order: 11; }
736
.fsb-order-xl-12 {
737
flex-order: 12;
738
order: 12; }
739
.fsb-offset-xl-0 {
740
margin-left: 0; }
741
.fsb-offset-xl-1 {
742
margin-left: 8.333333%; }
743
.fsb-offset-xl-2 {
744
margin-left: 16.666667%; }
745
.fsb-offset-xl-3 {
746
margin-left: 25%; }
747
.fsb-offset-xl-4 {
748
margin-left: 33.333333%; }
749
.fsb-offset-xl-5 {
750
margin-left: 41.666667%; }
751
.fsb-offset-xl-6 {
752
margin-left: 50%; }
753
.fsb-offset-xl-7 {
754
margin-left: 58.333333%; }
755
.fsb-offset-xl-8 {
756
margin-left: 66.666667%; }
757
.fsb-offset-xl-9 {
758
margin-left: 75%; }
759
.fsb-offset-xl-10 {
760
margin-left: 83.333333%; }
761
.fsb-offset-xl-11 {
762
margin-left: 91.666667%; } }
763
764
.fsb-form-control {
765
background-clip: padding-box;
766
font-size: 1rem;
767
line-height: 1.5;
768
padding: .375rem .75rem;
769
transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
770
transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
771
transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
772
transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
773
transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out, box-shadow .15s ease-in-out;
774
width: 100%;
775
height: 34px;
776
border: 1px solid #ddd;
777
border-radius: 4px;
778
display: inline-block;
779
vertical-align: middle; }
780
781
.fsb-form-control::expand {
782
background-color: transparent;
783
border: 0; }
784
785
.fsb-form-control:focus {
786
border-color: #80bdff;
787
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
788
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
789
outline: 0; }
790
791
select.fsb-form-control:not([size]):not([multiple]) {
792
height: calc(2.25rem + 2px); }
793
794
.fsb-btn {
795
border: 1px solid transparent;
796
border-radius: .25rem;
797
display: inline-block;
798
font-size: 1rem;
799
font-weight: 400;
800
line-height: 1.5;
801
padding: .375rem .75rem;
802
text-align: center;
803
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
804
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
805
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
806
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
807
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, box-shadow .15s ease-in-out;
808
user-select: none;
809
user-select: none;
810
user-select: none;
811
user-select: none;
812
vertical-align: middle;
813
/*white-space: nowrap;*/
814
text-decoration: none;
815
text-transform: none;
816
margin-bottom: 0px; }
817
818
.fsb-btn:focus,
819
.fsb-btn:hover {
820
text-decoration: none; }
821
822
.fsb-btn:focus {
823
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
824
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
825
outline: 0; }
826
827
.fsb-btn:disabled {
828
opacity: .65; }
829
830
.fsb-btn:not(:disabled):not(.disabled) {
831
cursor: pointer; }
832
833
.fsb-btn-success {
834
background-color: #28a745;
835
border-color: #28a745;
836
color: #fff; }
837
838
.fsb-btn-success:hover {
839
background-color: #218838;
840
border-color: #1e7e34;
841
color: #fff; }
842
843
.fsb-btn-success:focus {
844
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
845
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
846
847
.fsb-btn-success:disabled {
848
background-color: #28a745;
849
border-color: #28a745;
850
color: #fff; }
851
852
.fsb-btn-block {
853
display: block;
854
width: 100%; }
855
856
.fssmall {
857
font-size: 10px;
858
font-style: italic;
859
margin-bottom: 10px; }
860
861
.editor-styles-wrapper i {
862
font-style: normal !important; }
863
864
.fsb-btn:active {
865
color: white; }
866
867
.fsb-btn-align-center {
868
text-align: center; }
869
870
.fsb-btn-align-left {
871
text-align: left; }
872
873
.fsb-btn-align-right {
874
text-align: right; }
875
876
.fsb-btn {
877
display: inline-block;
878
font-weight: 400;
879
color: #212529;
880
text-align: center;
881
vertical-align: middle;
882
user-select: none;
883
user-select: none;
884
user-select: none;
885
user-select: none;
886
background-color: transparent;
887
border: 1px solid transparent;
888
padding: 0.375rem 0.75rem;
889
font-size: 1rem;
890
line-height: 1.5;
891
border-radius: 0.25rem;
892
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
893
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
894
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
895
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
896
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
897
color: white; }
898
899
@media (prefers-reduced-motion: reduce) {
900
.fsb-btn {
901
transition: none;
902
transition: none;
903
transition: none; } }
904
905
.fsb-btn:hover {
906
color: #212529;
907
text-decoration: none; }
908
909
.fsb-btn:focus, .fsb-btn.focus {
910
outline: 0;
911
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
912
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
913
914
.fsb-btn.disabled, .fsb-btn:disabled {
915
opacity: 0.65; }
916
917
a.fsb-btn.disabled,
918
fieldset:disabled a.fsb-btn {
919
pointer-events: none; }
920
921
.fsb-btn-primary {
922
color: #fff;
923
background-color: #007bff;
924
border-color: #007bff; }
925
926
.fsb-btn-primary:hover {
927
color: #fff;
928
background-color: #0069d9;
929
border-color: #0062cc; }
930
931
.fsb-btn-primary:focus, .fsb-btn-primary.focus {
932
box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
933
box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }
934
935
.fsb-btn-primary.disabled, .fsb-btn-primary:disabled {
936
color: #fff;
937
background-color: #007bff;
938
border-color: #007bff; }
939
940
.fsb-btn-primary:not(:disabled):not(.disabled):active, .fsb-btn-primary:not(:disabled):not(.disabled).active,
941
.show > .fsb-btn-primary.dropdown-toggle {
942
color: #fff;
943
background-color: #0062cc;
944
border-color: #005cbf; }
945
946
.fsb-btn-primary:not(:disabled):not(.disabled):active:focus, .fsb-btn-primary:not(:disabled):not(.disabled).active:focus,
947
.show > .fsb-btn-primary.dropdown-toggle:focus {
948
box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
949
box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }
950
951
.fsb-btn-secondary {
952
color: #fff;
953
background-color: #6c757d;
954
border-color: #6c757d; }
955
956
.fsb-btn-secondary:hover {
957
color: #fff;
958
background-color: #5a6268;
959
border-color: #545b62; }
960
961
.fsb-btn-secondary:focus, .fsb-btn-secondary.focus {
962
box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
963
box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); }
964
965
.fsb-btn-secondary.disabled, .fsb-btn-secondary:disabled {
966
color: #fff;
967
background-color: #6c757d;
968
border-color: #6c757d; }
969
970
.fsb-btn-secondary:not(:disabled):not(.disabled):active, .fsb-btn-secondary:not(:disabled):not(.disabled).active,
971
.show > .fsb-btn-secondary.dropdown-toggle {
972
color: #fff;
973
background-color: #545b62;
974
border-color: #4e555b; }
975
976
.fsb-btn-secondary:not(:disabled):not(.disabled):active:focus, .fsb-btn-secondary:not(:disabled):not(.disabled).active:focus,
977
.show > .fsb-btn-secondary.dropdown-toggle:focus {
978
box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
979
box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); }
980
981
.fsb-btn-success {
982
color: #fff;
983
background-color: #28a745;
984
border-color: #28a745; }
985
986
.fsb-btn-success:hover {
987
color: #fff;
988
background-color: #218838;
989
border-color: #1e7e34; }
990
991
.fsb-btn-success:focus, .fsb-btn-success.focus {
992
box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
993
box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }
994
995
.fsb-btn-success.disabled, .fsb-btn-success:disabled {
996
color: #fff;
997
background-color: #28a745;
998
border-color: #28a745; }
999
1000
.fsb-btn-success:not(:disabled):not(.disabled):active, .fsb-btn-success:not(:disabled):not(.disabled).active,
1001
.show > .fsb-btn-success.dropdown-toggle {
1002
color: #fff;
1003
background-color: #1e7e34;
1004
border-color: #1c7430; }
1005
1006
.fsb-btn-success:not(:disabled):not(.disabled):active:focus, .fsb-btn-success:not(:disabled):not(.disabled).active:focus,
1007
.show > .fsb-btn-success.dropdown-toggle:focus {
1008
box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
1009
box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }
1010
1011
.fsb-btn-info {
1012
color: #fff;
1013
background-color: #17a2b8;
1014
border-color: #17a2b8; }
1015
1016
.fsb-btn-info:hover {
1017
color: #fff;
1018
background-color: #138496;
1019
border-color: #117a8b; }
1020
1021
.fsb-btn-info:focus, .fsb-btn-info.focus {
1022
box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1023
box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }
1024
1025
.fsb-btn-info.disabled, .fsb-btn-info:disabled {
1026
color: #fff;
1027
background-color: #17a2b8;
1028
border-color: #17a2b8; }
1029
1030
.fsb-btn-info:not(:disabled):not(.disabled):active, .fsb-btn-info:not(:disabled):not(.disabled).active,
1031
.show > .fsb-btn-info.dropdown-toggle {
1032
color: #fff;
1033
background-color: #117a8b;
1034
border-color: #10707f; }
1035
1036
.fsb-btn-info:not(:disabled):not(.disabled):active:focus, .fsb-btn-info:not(:disabled):not(.disabled).active:focus,
1037
.show > .fsb-btn-info.dropdown-toggle:focus {
1038
box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1039
box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }
1040
1041
.fsb-btn-warning {
1042
color: #212529;
1043
background-color: #ffc107;
1044
border-color: #ffc107; }
1045
1046
.fsb-btn-warning:hover {
1047
color: #212529;
1048
background-color: #e0a800;
1049
border-color: #d39e00; }
1050
1051
.fsb-btn-warning:focus, .fsb-btn-warning.focus {
1052
box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1053
box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); }
1054
1055
.fsb-btn-warning.disabled, .fsb-btn-warning:disabled {
1056
color: #212529;
1057
background-color: #ffc107;
1058
border-color: #ffc107; }
1059
1060
.fsb-btn-warning:not(:disabled):not(.disabled):active, .fsb-btn-warning:not(:disabled):not(.disabled).active,
1061
.show > .fsb-btn-warning.dropdown-toggle {
1062
color: #212529;
1063
background-color: #d39e00;
1064
border-color: #c69500; }
1065
1066
.fsb-btn-warning:not(:disabled):not(.disabled):active:focus, .fsb-btn-warning:not(:disabled):not(.disabled).active:focus,
1067
.show > .fsb-btn-warning.dropdown-toggle:focus {
1068
box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1069
box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); }
1070
1071
.fsb-btn-danger {
1072
color: #fff;
1073
background-color: #dc3545;
1074
border-color: #dc3545; }
1075
1076
.fsb-btn-danger:hover {
1077
color: #fff;
1078
background-color: #c82333;
1079
border-color: #bd2130; }
1080
1081
.fsb-btn-danger:focus, .fsb-btn-danger.focus {
1082
box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1083
box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); }
1084
1085
.fsb-btn-danger.disabled, .fsb-btn-danger:disabled {
1086
color: #fff;
1087
background-color: #dc3545;
1088
border-color: #dc3545; }
1089
1090
.fsb-btn-danger:not(:disabled):not(.disabled):active, .fsb-btn-danger:not(:disabled):not(.disabled).active,
1091
.show > .fsb-btn-danger.dropdown-toggle {
1092
color: #fff;
1093
background-color: #bd2130;
1094
border-color: #b21f2d; }
1095
1096
.fsb-btn-danger:not(:disabled):not(.disabled):active:focus, .fsb-btn-danger:not(:disabled):not(.disabled).active:focus,
1097
.show > .fsb-btn-danger.dropdown-toggle:focus {
1098
box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1099
box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); }
1100
1101
.fsb-btn-light {
1102
color: #212529;
1103
background-color: #f8f9fa;
1104
border-color: #f8f9fa; }
1105
1106
.fsb-btn-light:hover {
1107
color: #212529;
1108
background-color: #e2e6ea;
1109
border-color: #dae0e5; }
1110
1111
.fsb-btn-light:focus, .fsb-btn-light.focus {
1112
box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1113
box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }
1114
1115
.fsb-btn-light.disabled, .fsb-btn-light:disabled {
1116
color: #212529;
1117
background-color: #f8f9fa;
1118
border-color: #f8f9fa; }
1119
1120
.fsb-btn-light:not(:disabled):not(.disabled):active, .fsb-btn-light:not(:disabled):not(.disabled).active,
1121
.show > .fsb-btn-light.dropdown-toggle {
1122
color: #212529;
1123
background-color: #dae0e5;
1124
border-color: #d3d9df; }
1125
1126
.fsb-btn-light:not(:disabled):not(.disabled):active:focus, .fsb-btn-light:not(:disabled):not(.disabled).active:focus,
1127
.show > .fsb-btn-light.dropdown-toggle:focus {
1128
box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1129
box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }
1130
1131
.fsb-btn-dark {
1132
color: #fff;
1133
background-color: #343a40;
1134
border-color: #343a40; }
1135
1136
.fsb-btn-dark:hover {
1137
color: #fff;
1138
background-color: #23272b;
1139
border-color: #1d2124; }
1140
1141
.fsb-btn-dark:focus, .fsb-btn-dark.focus {
1142
box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1143
box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }
1144
1145
.fsb-btn-dark.disabled, .fsb-btn-dark:disabled {
1146
color: #fff;
1147
background-color: #343a40;
1148
border-color: #343a40; }
1149
1150
.fsb-btn-dark:not(:disabled):not(.disabled):active, .fsb-btn-dark:not(:disabled):not(.disabled).active,
1151
.show > .fsb-btn-dark.dropdown-toggle {
1152
color: #fff;
1153
background-color: #1d2124;
1154
border-color: #171a1d; }
1155
1156
.fsb-btn-dark:not(:disabled):not(.disabled):active:focus, .fsb-btn-dark:not(:disabled):not(.disabled).active:focus,
1157
.show > .fsb-btn-dark.dropdown-toggle:focus {
1158
box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1159
box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }
1160
1161
.fsb-btn-outline-primary {
1162
color: #007bff;
1163
border-color: #007bff; }
1164
1165
.fsb-btn-outline-primary:hover {
1166
color: #fff;
1167
background-color: #007bff;
1168
border-color: #007bff; }
1169
1170
.fsb-btn-outline-primary:focus, .fsb-btn-outline-primary.focus {
1171
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1172
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }
1173
1174
.fsb-btn-outline-primary.disabled, .fsb-btn-outline-primary:disabled {
1175
color: #007bff;
1176
background-color: transparent; }
1177
1178
.fsb-btn-outline-primary:not(:disabled):not(.disabled):active, .fsb-btn-outline-primary:not(:disabled):not(.disabled).active,
1179
.show > .fsb-btn-outline-primary.dropdown-toggle {
1180
color: #fff;
1181
background-color: #007bff;
1182
border-color: #007bff; }
1183
1184
.fsb-btn-outline-primary:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-primary:not(:disabled):not(.disabled).active:focus,
1185
.show > .fsb-btn-outline-primary.dropdown-toggle:focus {
1186
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1187
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }
1188
1189
.fsb-btn-outline-secondary {
1190
color: #6c757d;
1191
border-color: #6c757d; }
1192
1193
.fsb-btn-outline-secondary:hover {
1194
color: #fff;
1195
background-color: #6c757d;
1196
border-color: #6c757d; }
1197
1198
.fsb-btn-outline-secondary:focus, .fsb-btn-outline-secondary.focus {
1199
box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1200
box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }
1201
1202
.fsb-btn-outline-secondary.disabled, .fsb-btn-outline-secondary:disabled {
1203
color: #6c757d;
1204
background-color: transparent; }
1205
1206
.fsb-btn-outline-secondary:not(:disabled):not(.disabled):active, .fsb-btn-outline-secondary:not(:disabled):not(.disabled).active,
1207
.show > .fsb-btn-outline-secondary.dropdown-toggle {
1208
color: #fff;
1209
background-color: #6c757d;
1210
border-color: #6c757d; }
1211
1212
.fsb-btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
1213
.show > .fsb-btn-outline-secondary.dropdown-toggle:focus {
1214
box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1215
box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }
1216
1217
.fsb-btn-outline-success {
1218
color: #28a745;
1219
border-color: #28a745; }
1220
1221
.fsb-btn-outline-success:hover {
1222
color: #fff;
1223
background-color: #28a745;
1224
border-color: #28a745; }
1225
1226
.fsb-btn-outline-success:focus, .fsb-btn-outline-success.focus {
1227
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1228
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
1229
1230
.fsb-btn-outline-success.disabled, .fsb-btn-outline-success:disabled {
1231
color: #28a745;
1232
background-color: transparent; }
1233
1234
.fsb-btn-outline-success:not(:disabled):not(.disabled):active, .fsb-btn-outline-success:not(:disabled):not(.disabled).active,
1235
.show > .fsb-btn-outline-success.dropdown-toggle {
1236
color: #fff;
1237
background-color: #28a745;
1238
border-color: #28a745; }
1239
1240
.fsb-btn-outline-success:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-success:not(:disabled):not(.disabled).active:focus,
1241
.show > .fsb-btn-outline-success.dropdown-toggle:focus {
1242
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1243
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }
1244
1245
.fsb-btn-outline-info {
1246
color: #17a2b8;
1247
border-color: #17a2b8; }
1248
1249
.fsb-btn-outline-info:hover {
1250
color: #fff;
1251
background-color: #17a2b8;
1252
border-color: #17a2b8; }
1253
1254
.fsb-btn-outline-info:focus, .fsb-btn-outline-info.focus {
1255
box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1256
box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }
1257
1258
.fsb-btn-outline-info.disabled, .fsb-btn-outline-info:disabled {
1259
color: #17a2b8;
1260
background-color: transparent; }
1261
1262
.fsb-btn-outline-info:not(:disabled):not(.disabled):active, .fsb-btn-outline-info:not(:disabled):not(.disabled).active,
1263
.show > .fsb-btn-outline-info.dropdown-toggle {
1264
color: #fff;
1265
background-color: #17a2b8;
1266
border-color: #17a2b8; }
1267
1268
.fsb-btn-outline-info:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-info:not(:disabled):not(.disabled).active:focus,
1269
.show > .fsb-btn-outline-info.dropdown-toggle:focus {
1270
box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1271
box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }
1272
1273
.fsb-btn-outline-warning {
1274
color: #ffc107;
1275
border-color: #ffc107; }
1276
1277
.fsb-btn-outline-warning:hover {
1278
color: #212529;
1279
background-color: #ffc107;
1280
border-color: #ffc107; }
1281
1282
.fsb-btn-outline-warning:focus, .fsb-btn-outline-warning.focus {
1283
box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
1284
box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }
1285
1286
.fsb-btn-outline-warning.disabled, .fsb-btn-outline-warning:disabled {
1287
color: #ffc107;
1288
background-color: transparent; }
1289
1290
.fsb-btn-outline-warning:not(:disabled):not(.disabled):active, .fsb-btn-outline-warning:not(:disabled):not(.disabled).active,
1291
.show > .fsb-btn-outline-warning.dropdown-toggle {
1292
color: #212529;
1293
background-color: #ffc107;
1294
border-color: #ffc107; }
1295
1296
.fsb-btn-outline-warning:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-warning:not(:disabled):not(.disabled).active:focus,
1297
.show > .fsb-btn-outline-warning.dropdown-toggle:focus {
1298
box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
1299
box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }
1300
1301
.fsb-btn-outline-danger {
1302
color: #dc3545;
1303
border-color: #dc3545; }
1304
1305
.fsb-btn-outline-danger:hover {
1306
color: #fff;
1307
background-color: #dc3545;
1308
border-color: #dc3545; }
1309
1310
.fsb-btn-outline-danger:focus, .fsb-btn-outline-danger.focus {
1311
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
1312
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
1313
1314
.fsb-btn-outline-danger.disabled, .fsb-btn-outline-danger:disabled {
1315
color: #dc3545;
1316
background-color: transparent; }
1317
1318
.fsb-btn-outline-danger:not(:disabled):not(.disabled):active, .fsb-btn-outline-danger:not(:disabled):not(.disabled).active,
1319
.show > .fsb-btn-outline-danger.dropdown-toggle {
1320
color: #fff;
1321
background-color: #dc3545;
1322
border-color: #dc3545; }
1323
1324
.fsb-btn-outline-danger:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-danger:not(:disabled):not(.disabled).active:focus,
1325
.show > .fsb-btn-outline-danger.dropdown-toggle:focus {
1326
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
1327
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }
1328
1329
.fsb-btn-outline-light {
1330
color: #f8f9fa;
1331
border-color: #f8f9fa; }
1332
1333
.fsb-btn-outline-light:hover {
1334
color: #212529;
1335
background-color: #f8f9fa;
1336
border-color: #f8f9fa; }
1337
1338
.fsb-btn-outline-light:focus, .fsb-btn-outline-light.focus {
1339
box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
1340
box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }
1341
1342
.fsb-btn-outline-light.disabled, .fsb-btn-outline-light:disabled {
1343
color: #f8f9fa;
1344
background-color: transparent; }
1345
1346
.fsb-btn-outline-light:not(:disabled):not(.disabled):active, .fsb-btn-outline-light:not(:disabled):not(.disabled).active,
1347
.show > .fsb-btn-outline-light.dropdown-toggle {
1348
color: #212529;
1349
background-color: #f8f9fa;
1350
border-color: #f8f9fa; }
1351
1352
.fsb-btn-outline-light:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-light:not(:disabled):not(.disabled).active:focus,
1353
.show > .fsb-btn-outline-light.dropdown-toggle:focus {
1354
box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
1355
box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }
1356
1357
.fsb-btn-outline-dark {
1358
color: #343a40;
1359
border-color: #343a40; }
1360
1361
.fsb-btn-outline-dark:hover {
1362
color: #fff;
1363
background-color: #343a40;
1364
border-color: #343a40; }
1365
1366
.fsb-btn-outline-dark:focus, .fsb-btn-outline-dark.focus {
1367
box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
1368
box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
1369
1370
.fsb-btn-outline-dark.disabled, .fsb-btn-outline-dark:disabled {
1371
color: #343a40;
1372
background-color: transparent; }
1373
1374
.fsb-btn-outline-dark:not(:disabled):not(.disabled):active, .fsb-btn-outline-dark:not(:disabled):not(.disabled).active,
1375
.show > .fsb-btn-outline-dark.dropdown-toggle {
1376
color: #fff;
1377
background-color: #343a40;
1378
border-color: #343a40; }
1379
1380
.fsb-btn-outline-dark:not(:disabled):not(.disabled):active:focus, .fsb-btn-outline-dark:not(:disabled):not(.disabled).active:focus,
1381
.show > .fsb-btn-outline-dark.dropdown-toggle:focus {
1382
box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
1383
box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }
1384
1385
.fsb-btn-link {
1386
font-weight: 400;
1387
color: #007bff;
1388
text-decoration: none; }
1389
1390
.fsb-btn-link:hover {
1391
color: #0056b3;
1392
text-decoration: underline; }
1393
1394
.fsb-btn-link:focus, .fsb-btn-link.focus {
1395
text-decoration: underline;
1396
box-shadow: none;
1397
box-shadow: none; }
1398
1399
.fsb-btn-link:disabled, .fsb-btn-link.disabled {
1400
color: #6c757d;
1401
pointer-events: none; }
1402
1403
.fsb-btn-lg, .fsb-btn-group-lg > .fsb-btn {
1404
padding: 0.5rem 1rem;
1405
font-size: 1.25rem;
1406
line-height: 1.5;
1407
border-radius: 0.3rem; }
1408
1409
.fsb-btn-sm, .fsb-btn-group-sm > .fsb-btn {
1410
padding: 0.25rem 0.5rem;
1411
font-size: 0.875rem;
1412
line-height: 1.5;
1413
border-radius: 0.2rem; }
1414
1415
.fsb-btn-block {
1416
display: block;
1417
width: 100%; }
1418
1419
.fsb-btn-block + .fsb-btn-block {
1420
margin-top: 0.5rem; }
1421
1422
input[type="submit"].fsb-btn-block,
1423
input[type="reset"].fsb-btn-block,
1424
input[type="button"].fsb-btn-block {
1425
width: 100%; }
1426
1427
.fsb-card {
1428
background-color: #fff;
1429
border: 1px solid rgba(0, 0, 0, 0.125);
1430
border-radius: 0px;
1431
position: relative;
1432
display: flexbox;
1433
display: flex;
1434
flex-direction: column;
1435
flex-direction: column;
1436
min-width: 0;
1437
word-wrap: break-word;
1438
background-color: #fff;
1439
background-clip: border-box;
1440
border: 1px solid rgba(0, 0, 0, 0.125); }
1441
1442
.fsb-card-body {
1443
flex: 1 1 auto;
1444
flex: 1 1 auto;
1445
padding: 1.25rem; }
1446
1447
.fsb-card-header {
1448
background-color: rgba(0, 0, 0, 0.03);
1449
border-bottom: 1px solid rgba(0, 0, 0, 0.125);
1450
margin-bottom: 0;
1451
padding: 0 1em; }
1452
1453
.fsb-card-header:first-child {
1454
border-radius: 0px; }
1455
1456
.fsb-align-top {
1457
vertical-align: top !important; }
1458
1459
.fsb-border {
1460
border: 1px solid #dee2e6 !important; }
1461
1462
.fsb-rounded {
1463
border-radius: 0.25rem !important; }
1464
1465
.fsb-d-none {
1466
display: none !important; }
1467
1468
.fsb-d-inline-block {
1469
display: inline-block !important; }
1470
1471
@media (min-width: 576px) {
1472
.fsb-d-sm-none {
1473
display: none !important; }
1474
.fsb-d-sm-block {
1475
display: block !important; } }
1476
1477
@media (min-width: 768px) {
1478
.fsb-d-md-none {
1479
display: none !important; }
1480
.fsb-d-md-inline-block {
1481
display: inline-block !important; }
1482
.fsb-d-md-block {
1483
display: block !important; } }
1484
1485
@media (min-width: 992px) {
1486
.fsb-d-lg-none {
1487
display: none !important; }
1488
.fsb-d-lg-block {
1489
display: block !important; } }
1490
1491
@media (min-width: 1200px) {
1492
.fsb-d-xl-none {
1493
display: none !important; }
1494
.fsb-d-xl-block {
1495
display: block !important; } }
1496
1497
.fsb-align-items-center {
1498
align-items: center !important;
1499
box-align: center !important;
1500
flex-align: center !important; }
1501
1502
.fsb-mt-2 {
1503
margin-top: 0.5rem !important; }
1504
1505
.fsb-ml-2 {
1506
margin-left: 0.5rem !important; }
1507
1508
.fsb-mt-3 {
1509
margin-top: 1rem !important; }
1510
1511
.fsb-mb-3 {
1512
margin-bottom: 1rem !important; }
1513
1514
.fsb-mt-4 {
1515
margin-top: 1.5rem !important; }
1516
1517
.fsb-m-4 {
1518
margin: 1.5rem !important; }
1519
1520
.fsb-mb-4 {
1521
margin-bottom: 1.5rem !important; }
1522
1523
.fsb-pr-0 {
1524
padding-right: 0 !important; }
1525
1526
.fsb-pl-0 {
1527
padding-left: 0 !important; }
1528
1529
.fsb-pb-0 {
1530
padding-bottom: 0 !important; }
1531
1532
.fsb-pb-4 {
1533
padding-bottom: 1.5rem !important; }
1534
1535
.fsb-px-5 {
1536
padding-right: 3rem !important; }
1537
1538
.fsb-px-5 {
1539
padding-left: 3rem !important; }
1540
1541
.fsb-p-1 {
1542
padding: 1rem !important; }
1543
1544
.fsb-p-0 {
1545
padding: 0px !important; }
1546
1547
@media (min-width: 576px) {
1548
.fsb-mt-sm-2 {
1549
margin-top: 0.5rem !important; } }
1550
1551
.fsb-text-nowrap {
1552
white-space: nowrap !important; }
1553
1554
.fsb-text-left {
1555
text-align: left !important; }
1556
1557
.fsb-text-right {
1558
text-align: right !important; }
1559
1560
.fsb-text-center {
1561
text-align: center !important; }
1562
1563
@media (min-width: 576px) {
1564
.fsb-text-sm-left {
1565
text-align: left !important; }
1566
.fsb-text-sm-right {
1567
text-align: right !important; } }
1568
1569
@media (min-width: 768px) {
1570
.fsb-text-md-left {
1571
text-align: left !important; }
1572
.fsb-text-md-right {
1573
text-align: right !important; } }
1574
1575
.fsb-text-success {
1576
color: #28a745 !important; }
1577
1578
.fsb-card-body hr:last-child {
1579
display: none; }
1580
1581
.fsb-remove
1582
{
1583
color: #b3b3b3;
1584
text-decoration: none;
1585
font-size: 28px;
1586
vertical-align: sub;
1587
}
1588
1589
.fsb-remove:hover {
1590
color: black; }
1591
1592
.fsb-option-input {
1593
appearance: none;
1594
appearance: none;
1595
appearance: none;
1596
appearance: none;
1597
appearance: none;
1598
background: #c0c0c0;
1599
border: none;
1600
bottom: 0;
1601
color: #fff;
1602
cursor: pointer;
1603
display: inline-block;
1604
font-family: initial;
1605
height: 25px;
1606
left: 0;
1607
margin-right: .5rem;
1608
outline: none;
1609
position: relative;
1610
position: relative;
1611
right: 0;
1612
transition: all .15s ease-out 0s;
1613
transition: all .15s ease-out 0s;
1614
transition: all .15s ease-out 0s;
1615
width: 25px;
1616
z-index: 2; }
1617
1618
.fsb-option-input:hover {
1619
background: #9faab7; }
1620
1621
.fsb-option-input:checked {
1622
background: #9faab7; }
1623
1624
.fsb-option-input:checked::before {
1625
content: '2714';
1626
display: inline-block;
1627
font-size: 18px;
1628
height: 25px;
1629
line-height: 26px;
1630
position: absolute;
1631
text-align: center;
1632
width: 25px; }
1633
1634
.fsb-cart-input {
1635
width: 70px;
1636
display: inline-block; }
1637
1638
.fsb-remove-small {
1639
position: absolute;
1640
top: 0px;
1641
right: 5px;
1642
font-weight: bold; }
1643
1644
.fsb-coupon-entry {
1645
display: inline-block;
1646
width: 200px; }
1647
1648
.fsb-bundle-image {
1649
width: 60px;
1650
height: auto;
1651
display: inline; }
1652
1653
.fsb-75 {
1654
font-size: 75%; }
1655
1656
.fsb-option-input:checked::after {
1657
background: #40e0d0;
1658
content: '';
1659
display: block;
1660
position: relative;
1661
z-index: 3; }
1662
1663
.fsb-option-input.fsb-radio {
1664
border-radius: 50%; }
1665
1666
.fsb-option-input.fsb-radio::after {
1667
border-radius: 50%; }
1668
1669
.fsb-bg-success {
1670
background-color: #28a745 !important;
1671
color: white; }
1672
1673
.fsb-price-ext, .fsb-prod-name, .fsb-total {
1674
display: block;
1675
font-size: 1.17em;
1676
font-weight: bold; }
1677
1678
.fsb-unit-price {
1679
font-size: 1.17em;
1680
font-weight: bold; }
1681
1682
.fsb-shipping {
1683
display: block;
1684
font-weight: bold; }
1685
1686
.fsb-total {
1687
margin: 10px 0px; }
1688
1689
.fsb-normal {
1690
font-weight: normal; }
1691
1692
/* The Modal (background) */
1693
.fsb-modal {
1694
animation-duration: .4s;
1695
animation-duration: .4s;
1696
animation-name: fsb-fadeIn;
1697
/* Fade in the background */
1698
animation-name: fsb-fadeIn;
1699
background-color: black;
1700
/* Fallback color */
1701
background-color: rgba(0, 0, 0, 0.8);
1702
/* Black w/ opacity */
1703
display: none;
1704
/* Hidden by default */
1705
height: 100%;
1706
/* Full height */
1707
left: 0;
1708
overflow: auto;
1709
/* Enable scroll if needed */
1710
position: fixed;
1711
/* Stay in place */
1712
top: 0;
1713
width: 100%;
1714
/* Full width */
1715
z-index: 999999;
1716
/* Sit on top */ }
1717
1718
.fsb-RS .fsb-modal-content {
1719
animation-duration: .4s;
1720
animation-duration: .4s;
1721
animation-name: fsb-rs_slideIn;
1722
animation-name: fsb-rs_slideIn;
1723
background-color: #fefefe;
1724
bottom: 0;
1725
box-shadow: -4px 0 8px 0 rgba(0, 0, 0, 0.2), -6px 0 20px 0 rgba(0, 0, 0, 0.19);
1726
box-shadow: -4px 0 8px 0 rgba(0, 0, 0, 0.2), -6px 0 20px 0 rgba(0, 0, 0, 0.19);
1727
height: 100%;
1728
overflow-y: scroll;
1729
position: fixed;
1730
right: 0;
1731
width: 60%; }
1732
1733
.fsb-RS .fsb-modal-content .fsb-close {
1734
padding-right: 20px;
1735
margin: 11px 20px; }
1736
1737
.fsb-RS .fsb-modal-content .fsb-cart_title {
1738
padding-left: 20px; }
1739
1740
.fsb-RS .fsb-modal-body {
1741
padding: 2px 16px;
1742
margin-top: 60px; }
1743
1744
.fsb-RS .fsb-modal-header {
1745
background-color: #28a745;
1746
color: white;
1747
position: fixed;
1748
z-index: 4;
1749
width: 60%; }
1750
1751
.fsb-LS .fsb-modal-content {
1752
animation-duration: .4s;
1753
animation-duration: .4s;
1754
animation-name: fsb-ls_slideIn;
1755
animation-name: fsb-ls_slideIn;
1756
background-color: #fefefe;
1757
bottom: 0;
1758
box-shadow: 4px 0 8px 0 rgba(0, 0, 0, 0.2), 6px 0 20px 0 rgba(0, 0, 0, 0.19);
1759
box-shadow: 4px 0 8px 0 rgba(0, 0, 0, 0.2), 6px 0 20px 0 rgba(0, 0, 0, 0.19);
1760
height: 100%;
1761
left: 0;
1762
overflow-y: scroll;
1763
position: fixed;
1764
width: 60%; }
1765
1766
.fsb-LS .fsb-modal-content .fsb-close {
1767
padding-right: 20px;
1768
margin: 11px 20px; }
1769
1770
.fsb-LS .fsb-modal-content .fsb-cart_title {
1771
padding-left: 20px; }
1772
1773
.fsb-LS .fsb-modal-body {
1774
padding: 2px 16px;
1775
margin-top: 60px; }
1776
1777
.fsb-LS .fsb-modal-header {
1778
background-color: #28a745;
1779
color: white;
1780
position: fixed;
1781
z-index: 4;
1782
width: 60%; }
1783
1784
/* Modal Content */
1785
.fsb-BS .fsb-modal-content {
1786
animation-duration: .4s;
1787
animation-duration: .4s;
1788
animation-name: fsb-bs_slideIn;
1789
animation-name: fsb-bs_slideIn;
1790
background-color: #fefefe;
1791
bottom: 0;
1792
box-shadow: 0 -4px 8px 0 rgba(0, 0, 0, 0.2), 0 -6px 20px 0 rgba(0, 0, 0, 0.19);
1793
box-shadow: 0 -4px 8px 0 rgba(0, 0, 0, 0.2), 0 -6px 20px 0 rgba(0, 0, 0, 0.19);
1794
max-height: 75%;
1795
overflow-y: scroll;
1796
position: fixed;
1797
width: 100%; }
1798
1799
.fsb-BS .fsb-modal-body {
1800
margin-top: 60px;
1801
padding: 2px 16px; }
1802
1803
.fsb-BS .fsb-modal-header {
1804
background-color: #28a745;
1805
color: white;
1806
left: 0;
1807
padding: 0 25px 0 0;
1808
position: fixed;
1809
right: 0;
1810
z-index: 4; }
1811
1812
.fsb-BS .fsb-modal-header .fsb-close {
1813
margin: 11px 20px; }
1814
1815
.fsb-BS .fsb-modal-header .fsb-cart_title {
1816
padding-left: 20px; }
1817
1818
/* Modal Content */
1819
.fsb-MOD .fsb-modal-content {
1820
animation-duration: .4s;
1821
animation-duration: .4s;
1822
animation-name: fsb-mod_animatetop;
1823
animation-name: fsb-mod_animatetop;
1824
background-color: #fefefe;
1825
border: 1px solid #888;
1826
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
1827
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
1828
margin: 5% auto;
1829
padding: 0;
1830
position: relative;
1831
width: 80%; }
1832
1833
.fsb-MOD .fsb-modal-body {
1834
padding: 10px 16px 0; }
1835
1836
.fsb-MOD .fsb-modal-header .fsb-close, .fsb-cart_title {
1837
padding: 11px 0; }
1838
.fsb-card-header {
1839
padding: 10px;
1840
}
1841
.fsb-MOD .fsb-modal-header {
1842
background-color: #28a745;
1843
color: white;
1844
padding: 2px 16px; }
1845
1846
.fsb-MODSM .fsb-modal-content {
1847
animation-duration: .4s;
1848
animation-duration: .4s;
1849
animation-name: fsb-mod_animatetop;
1850
animation-name: fsb-mod_animatetop;
1851
background-color: #fefefe;
1852
border: 1px solid #888;
1853
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
1854
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
1855
margin: 5% auto;
1856
padding: 0;
1857
position: relative;
1858
max-width: 1024px; }
1859
1860
.fsb-MODSM .fsb-modal-body {
1861
padding: 10px 16px 0; }
1862
1863
.fsb-MODSM .fsb-modal-header .fsb-close {
1864
margin: 11px 0; }
1865
1866
.fsb-MODSM .fsb-modal-header {
1867
background-color: #28a745;
1868
color: white;
1869
padding: 2px 16px; }
1870
1871
/* The Close Button */
1872
.fsb-close,
1873
.fsb-cart_title {
1874
color: white;
1875
display: block;
1876
font-size: 1.5em;
1877
font-weight: bold; }
1878
1879
.fsb-close:hover,
1880
.fsb-close:focus {
1881
color: #000;
1882
cursor: pointer; }
1883
1884
.fsb-close {
1885
float: right;
1886
font-size: 40px;
1887
line-height: 30px; }
1888
1889
/* Add Animation Bottom Sheet */
1890
@-webkit-keyframes fsb-bs_slideIn {
1891
from {
1892
bottom: -300px;
1893
opacity: 0; }
1894
to {
1895
bottom: 0;
1896
opacity: 1; } }
1897
1898
@keyframes fsb-bs_slideIn {
1899
from {
1900
bottom: -300px;
1901
opacity: 0; }
1902
to {
1903
bottom: 0;
1904
opacity: 1; } }
1905
1906
@-webkit-keyframes fsb-bs_revslideIn {
1907
from {
1908
bottom: 0;
1909
opacity: 1; }
1910
to {
1911
bottom: -300px;
1912
opacity: 0; } }
1913
1914
@keyframes fsb-bs_revslideIn {
1915
from {
1916
bottom: 0;
1917
opacity: 1; }
1918
to {
1919
bottom: -300px;
1920
opacity: 0; } }
1921
1922
/* Add Animation modal */
1923
@-webkit-keyframes fsb-mod_animatetop {
1924
from {
1925
opacity: 0;
1926
top: -300px; }
1927
to {
1928
opacity: 1;
1929
top: 0; } }
1930
1931
@keyframes fsb-mod_animatetop {
1932
from {
1933
opacity: 0;
1934
top: -300px; }
1935
to {
1936
opacity: 1;
1937
top: 0; } }
1938
1939
@-webkit-keyframes fsb-mod_revanimatetop {
1940
from {
1941
opacity: 1;
1942
top: 0; }
1943
to {
1944
opacity: 0;
1945
top: -300; } }
1946
1947
@keyframes fsb-mod_revanimatetop {
1948
from {
1949
opacity: 1;
1950
top: 0; }
1951
to {
1952
opacity: 0;
1953
top: -330px; } }
1954
1955
/* Add Animation right sheet */
1956
@-webkit-keyframes fsb-rs_slideIn {
1957
from {
1958
opacity: 1;
1959
right: -50%; }
1960
to {
1961
opacity: 1;
1962
right: 0; } }
1963
1964
@keyframes fsb-rs_slideIn {
1965
from {
1966
opacity: 1;
1967
right: -50%; }
1968
to {
1969
opacity: 1;
1970
right: 0; } }
1971
1972
@-webkit-keyframes fsb-rs_revslideIn {
1973
from {
1974
opacity: 1;
1975
right: 0; }
1976
to {
1977
opacity: 1;
1978
right: -50%; } }
1979
1980
@keyframes fsb-rs_revslideIn {
1981
from {
1982
opacity: 1;
1983
right: 0; }
1984
to {
1985
opacity: 1;
1986
right: -50%; } }
1987
1988
/* Add Animation left sheet */
1989
@-webkit-keyframes fsb-ls_slideIn {
1990
from {
1991
left: -50%;
1992
opacity: 1; }
1993
to {
1994
left: 0;
1995
opacity: 1; } }
1996
1997
@keyframes fsb-ls_slideIn {
1998
from {
1999
left: -50%;
2000
opacity: 1; }
2001
to {
2002
left: 0;
2003
opacity: 1; } }
2004
2005
@-webkit-keyframes fsb-ls_revslideIn {
2006
from {
2007
left: 0;
2008
opacity: 1; }
2009
to {
2010
left: -50%;
2011
opacity: 1; } }
2012
2013
@keyframes fsb-ls_revslideIn {
2014
from {
2015
left: 0;
2016
opacity: 1; }
2017
to {
2018
left: -50%;
2019
opacity: 1; } }
2020
2021
@-webkit-keyframes fsb-fadeIn {
2022
from {
2023
opacity: 0; }
2024
to {
2025
opacity: 1; } }
2026
2027
@keyframes fsb-fadeIn {
2028
from {
2029
opacity: 0; }
2030
to {
2031
opacity: 1; } }
2032
2033
@-webkit-keyframes fsb-revfadeIn {
2034
from {
2035
opacity: 1; }
2036
to {
2037
opacity: 0; } }
2038
2039
@keyframes fsb-revfadeIn {
2040
from {
2041
opacity: 1; }
2042
to {
2043
opacity: 0; } }
2044
2045
@media (max-width: 1199.98px) {
2046
.fsb-RS .fsb-modal-header,
2047
.fsb-LS .fsb-modal-header {
2048
width: 80%; }
2049
.fsb-MOD .fsb-modal-content {
2050
width: 90%; } }
2051
2052
@media (max-width: 991.98px) {
2053
.fsb-RS .fsb-modal-header,
2054
.fsb-LS .fsb-modal-header {
2055
width: 90%; }
2056
.fsb-RS .fsb-modal-content,
2057
.fsb-LS .fsb-modal-content,
2058
.fsb-MOD .fsb-modal-content {
2059
width: 90%; } }
2060
2061
@media (max-width: 767.98px) {
2062
.fsb-RS .fsb-modal-header,
2063
.fsb-LS .fsb-modal-header {
2064
width: 100%; }
2065
.fsb-MOD .fsb-modal-content {
2066
margin: 0;
2067
width: 100%; }
2068
.fsb-RS .fsb-modal-content {
2069
width: 100%; }
2070
.fsb-BS .fsb-modal-content {
2071
max-height: 100%; } }
2072
2073
.minicart {
2074
border-radius: 5px;
2075
position: fixed;
2076
box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.2);
2077
box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.2);
2078
transition: box-shadow 0.3s ease-in-out;
2079
transition: box-shadow 0.3s ease-in-out;
2080
transition: box-shadow 0.3s ease-in-out;
2081
transition: box-shadow 0.3s ease-in-out;
2082
transition: box-shadow 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
2083
transition: width 0.3s, height 0.3s;
2084
/* For Safari 3.1 to 6.0 */
2085
transition: width 0.3s, height 0.3s;
2086
transition: width 0.3s, height 0.3s;
2087
color: black;
2088
background: white;
2089
z-index: 999998;
2090
height: 58px;
2091
width: 58px; }
2092
2093
.minicart.open {
2094
border-radius: 0px; }
2095
2096
.minicart.topright {
2097
top: 20px;
2098
right: 20px; }
2099
2100
.minicart.topleft {
2101
top: 20px;
2102
left: 20px; }
2103
2104
.minicart.bottomright {
2105
bottom: 20px;
2106
right: 20px; }
2107
2108
.minicart.bottomleft {
2109
bottom: 20px;
2110
left: 20px; }
2111
2112
.minicart:hover {
2113
box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.5);
2114
box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.5); }
2115
2116
.minicart .fa {
2117
font-size: 25px;
2118
padding: 15px; }
2119
2120
.minicart-count {
2121
position: absolute;
2122
background: red;
2123
border-radius: 50%;
2124
height: 20px;
2125
width: 20px;
2126
line-height: 21px;
2127
text-align: center;
2128
color: white;
2129
font-size: 12px; }
2130
2131
.topleft .minicart-count, .bottomleft .minicart-count {
2132
top: -10px;
2133
right: -10px; }
2134
2135
.topright .minicart-count, .bottomright .minicart-count {
2136
top: -10px;
2137
left: -10px; }
2138
2139
.fsb-display {
2140
font-weight: bold; }
2141
2142
.fsb-extPrice {
2143
font-weight: bold; }
2144
2145
.fsb-cartimage {
2146
max-height: 100px; }
2147
2148
.fsb-bundleimage {
2149
width: 60px;
2150
height: auto;
2151
display: inline; }
2152
2153
.fsb-ximage {
2154
max-height: 75px; }
2155
2156
#fs p {
2157
margin: 0px; }
2158
2159
.fsb-minus, .fsb-plus
2160
{
2161
cursor: pointer;
2162
width: 34px;
2163
height: 34px;
2164
background: #f2f2f2;
2165
border-radius: 4px;
2166
border: 1px solid #ddd;
2167
display: inline-block;
2168
vertical-align: middle;
2169
text-align: center;
2170
font-size: 24px;
2171
line-height: 32px;
2172
}
2173
2174
input[type="text"].fsb-qtyinput {
2175
height: 34px;
2176
width: 60px;
2177
text-align: center;
2178
border: 1px solid #ddd;
2179
border-radius: 4px;
2180
display: inline-block;
2181
vertical-align: middle; }
2182
2183
.fsb-number {
2184
display: inline-block; }
2185
2186
.fastspring_btn {
2187
display: inline-block;
2188
font-weight: normal;
2189
line-height: 1.25;
2190
text-align: center;
2191
white-space: nowrap;
2192
vertical-align: middle;
2193
cursor: pointer;
2194
user-select: none;
2195
user-select: none;
2196
user-select: none;
2197
user-select: none;
2198
border: 1px solid transparent;
2199
padding: 6px 12px;
2200
font-size: 14px;
2201
border-radius: 4px;
2202
text-decoration: none; }
2203
2204
.fastspring_btn:focus, .fastspring_btn.focus, .fastspring_btn:active:focus, .fastspring_btn:active.focus, .fastspring_btn.active:focus, .fastspring_btn.active.focus {
2205
outline: 5px auto focus-ring-color;
2206
outline-offset: -2px; }
2207
2208
.fastspring_btn:focus, .fastspring_btn:hover {
2209
text-decoration: none; }
2210
2211
.fastspring_btn.focus {
2212
text-decoration: none; }
2213
2214
.fastspring_btn:active, .fastspring_btn.active {
2215
background-image: none;
2216
outline: 0; }
2217
2218
.fastspring_btn.disabled, .fastspring_btn:disabled {
2219
cursor: not-allowed;
2220
opacity: .65; }
2221
2222
a.fastspring_btn.disabled,
2223
fieldset[disabled] a.fastspring_btn {
2224
pointer-events: none; }
2225
2226
.fastspring_btn-primary {
2227
color: #fff !important;
2228
background-color: #0275d8;
2229
border-color: #0275d8; }
2230
2231
.fastspring_btn-primary:hover {
2232
color: #fff !important;
2233
background-color: #025aa5;
2234
border-color: #01549b; }
2235
2236
.fastspring_btn-primary:focus, .fastspring_btn-primary.focus {
2237
color: #fff !important;
2238
background-color: #025aa5;
2239
border-color: #01549b; }
2240
2241
.fastspring_btn-primary:active, .fastspring_btn-primary.active,
2242
.open > .fastspring_btn-primary.dropdown-toggle {
2243
color: #fff !important;
2244
background-color: #025aa5;
2245
border-color: #01549b;
2246
background-image: none; }
2247
2248
.fastspring_btn-primary:active:hover, .fastspring_btn-primary:active:focus, .fastspring_btn-primary:active.focus, .fastspring_btn-primary.active:hover, .fastspring_btn-primary.active:focus, .fastspring_btn-primary.active.focus,
2249
.open > .fastspring_btn-primary.dropdown-toggle:hover,
2250
.open > .fastspring_btn-primary.dropdown-toggle:focus,
2251
.open > .fastspring_btn-primary.dropdown-toggle.focus {
2252
color: #fff !important;
2253
background-color: #014682;
2254
border-color: #01315a; }
2255
2256
.fastspring_btn-primary.disabled:focus, .fastspring_btn-primary.disabled.focus, .fastspring_btn-primary:disabled:focus, .fastspring_btn-primary:disabled.focus {
2257
background-color: #0275d8;
2258
border-color: #0275d8; }
2259
2260
.fastspring_btn-primary.disabled:hover, .fastspring_btn-primary:disabled:hover {
2261
background-color: #0275d8;
2262
border-color: #0275d8; }
2263
2264
.fastspring_btn-secondary {
2265
color: #373a3c !important;
2266
background-color: #fff;
2267
border-color: #ccc; }
2268
2269
.fastspring_btn-secondary:hover {
2270
color: #373a3c !important;
2271
background-color: #e6e6e6;
2272
border-color: #adadad; }
2273
2274
.fastspring_btn-secondary:focus, .fastspring_btn-secondary.focus {
2275
color: #373a3c !important;
2276
background-color: #e6e6e6;
2277
border-color: #adadad; }
2278
2279
.fastspring_btn-secondary:active, .fastspring_btn-secondary.active,
2280
.open > .fastspring_btn-secondary.dropdown-toggle {
2281
color: #373a3c !important;
2282
background-color: #e6e6e6;
2283
border-color: #adadad;
2284
background-image: none; }
2285
2286
.fastspring_btn-secondary:active:hover, .fastspring_btn-secondary:active:focus, .fastspring_btn-secondary:active.focus, .fastspring_btn-secondary.active:hover, .fastspring_btn-secondary.active:focus, .fastspring_btn-secondary.active.focus,
2287
.open > .fastspring_btn-secondary.dropdown-toggle:hover,
2288
.open > .fastspring_btn-secondary.dropdown-toggle:focus,
2289
.open > .fastspring_btn-secondary.dropdown-toggle.focus {
2290
color: #373a3c !important;
2291
background-color: #d4d4d4;
2292
border-color: #8c8c8c; }
2293
2294
.fastspring_btn-secondary.disabled:focus, .fastspring_btn-secondary.disabled.focus, .fastspring_btn-secondary:disabled:focus, .fastspring_btn-secondary:disabled.focus {
2295
background-color: #fff;
2296
border-color: #ccc; }
2297
2298
.fastspring_btn-secondary.disabled:hover, .fastspring_btn-secondary:disabled:hover {
2299
background-color: #fff;
2300
border-color: #ccc; }
2301
2302
.fastspring_btn-default {
2303
color: #373a3c !important;
2304
background-color: #fff;
2305
border: 2px solid #ccc; }
2306
2307
.fastspring_btn-default:hover {
2308
color: #373a3c !important;
2309
background-color: #e6e6e6;
2310
border-color: #adadad; }
2311
2312
.fastspring_btn-default:focus, .fastspring_btn-default.focus {
2313
color: #373a3c !important;
2314
background-color: #e6e6e6;
2315
border-color: #adadad; }
2316
2317
.fastspring_btn-default:active, .fastspring_btn-default.active,
2318
.open > .fastspring_btn-default.dropdown-toggle {
2319
color: #373a3c !important;
2320
background-color: #e6e6e6;
2321
border-color: #adadad;
2322
background-image: none; }
2323
2324
.fastspring_btn-default:active:hover, .fastspring_btn-default:active:focus, .fastspring_btn-default:active.focus, .fastspring_btn-default.active:hover, .fastspring_btn-default.active:focus, .fastspring_btn-default.active.focus,
2325
.open > .fastspring_btn-default.dropdown-toggle:hover,
2326
.open > .fastspring_btn-default.dropdown-toggle:focus,
2327
.open > .fastspring_btn-default.dropdown-toggle.focus {
2328
color: #373a3c !important;
2329
background-color: #d4d4d4;
2330
border-color: #8c8c8c; }
2331
2332
.fastspring_btn-default.disabled:focus, .fastspring_btn-default.disabled.focus, .fastspring_btn-default:disabled:focus, .fastspring_btn-default:disabled.focus {
2333
background-color: #fff;
2334
border-color: #ccc; }
2335
2336
.fastspring_btn-default.disabled:hover, .fastspring_btn-default:disabled:hover {
2337
background-color: #fff;
2338
border-color: #ccc; }
2339
2340
.fastspring_btn-info {
2341
color: #fff !important;
2342
background-color: #5bc0de;
2343
border-color: #5bc0de; }
2344
2345
.fastspring_btn-info:hover {
2346
color: #fff !important;
2347
background-color: #31b0d5;
2348
border-color: #2aabd2; }
2349
2350
.fastspring_btn-info:focus, .fastspring_btn-info.focus {
2351
color: #fff !important;
2352
background-color: #31b0d5;
2353
border-color: #2aabd2; }
2354
2355
.fastspring_btn-info:active, .fastspring_btn-info.active,
2356
.open > .fastspring_btn-info.dropdown-toggle {
2357
color: #fff !important;
2358
background-color: #31b0d5;
2359
border-color: #2aabd2;
2360
background-image: none; }
2361
2362
.fastspring_btn-info:active:hover, .fastspring_btn-info:active:focus, .fastspring_btn-info:active.focus, .fastspring_btn-info.active:hover, .fastspring_btn-info.active:focus, .fastspring_btn-info.active.focus,
2363
.open > .fastspring_btn-info.dropdown-toggle:hover,
2364
.open > .fastspring_btn-info.dropdown-toggle:focus,
2365
.open > .fastspring_btn-info.dropdown-toggle.focus {
2366
color: #fff !important;
2367
background-color: #269abc;
2368
border-color: #1f7e9a; }
2369
2370
.fastspring_btn-info.disabled:focus, .fastspring_btn-info.disabled.focus, .fastspring_btn-info:disabled:focus, .fastspring_btn-info:disabled.focus {
2371
background-color: #5bc0de;
2372
border-color: #5bc0de; }
2373
2374
.fastspring_btn-info.disabled:hover, .fastspring_btn-info:disabled:hover {
2375
background-color: #5bc0de;
2376
border-color: #5bc0de; }
2377
2378
.fastspring_btn-success {
2379
color: #fff !important;
2380
background-color: #5cb85c;
2381
border-color: #5cb85c; }
2382
2383
.fastspring_btn-success:hover {
2384
color: #fff !important;
2385
background-color: #449d44;
2386
border-color: #419641; }
2387
2388
.fastspring_btn-success:focus, .fastspring_btn-success.focus {
2389
color: #fff !important;
2390
background-color: #449d44;
2391
border-color: #419641; }
2392
2393
.fastspring_btn-success:active, .fastspring_btn-success.active,
2394
.open > .fastspring_btn-success.dropdown-toggle {
2395
color: #fff !important;
2396
background-color: #449d44;
2397
border-color: #419641;
2398
background-image: none; }
2399
2400
.fastspring_btn-success:active:hover, .fastspring_btn-success:active:focus, .fastspring_btn-success:active.focus, .fastspring_btn-success.active:hover, .fastspring_btn-success.active:focus, .fastspring_btn-success.active.focus,
2401
.open > .fastspring_btn-success.dropdown-toggle:hover,
2402
.open > .fastspring_btn-success.dropdown-toggle:focus,
2403
.open > .fastspring_btn-success.dropdown-toggle.focus {
2404
color: #fff !important;
2405
background-color: #398439;
2406
border-color: #2d672d; }
2407
2408
.fastspring_btn-success.disabled:focus, .fastspring_btn-success.disabled.focus, .fastspring_btn-success:disabled:focus, .fastspring_btn-success:disabled.focus {
2409
background-color: #5cb85c;
2410
border-color: #5cb85c; }
2411
2412
.fastspring_btn-success.disabled:hover, .fastspring_btn-success:disabled:hover {
2413
background-color: #5cb85c;
2414
border-color: #5cb85c; }
2415
2416
.fastspring_btn-warning {
2417
color: #fff !important;
2418
background-color: #f0ad4e;
2419
border-color: #f0ad4e; }
2420
2421
.fastspring_btn-warning:hover {
2422
color: #fff !important;
2423
background-color: #ec971f;
2424
border-color: #eb9316; }
2425
2426
.fastspring_btn-warning:focus, .fastspring_btn-warning.focus {
2427
color: #fff !important;
2428
background-color: #ec971f;
2429
border-color: #eb9316; }
2430
2431
.fastspring_btn-warning:active, .fastspring_btn-warning.active,
2432
.open > .fastspring_btn-warning.dropdown-toggle {
2433
color: #fff !important;
2434
background-color: #ec971f;
2435
border-color: #eb9316;
2436
background-image: none; }
2437
2438
.fastspring_btn-warning:active:hover, .fastspring_btn-warning:active:focus, .fastspring_btn-warning:active.focus, .fastspring_btn-warning.active:hover, .fastspring_btn-warning.active:focus, .fastspring_btn-warning.active.focus,
2439
.open > .fastspring_btn-warning.dropdown-toggle:hover,
2440
.open > .fastspring_btn-warning.dropdown-toggle:focus,
2441
.open > .fastspring_btn-warning.dropdown-toggle.focus {
2442
color: #fff !important;
2443
background-color: #d58512;
2444
border-color: #b06d0f; }
2445
2446
.fastspring_btn-warning.disabled:focus, .fastspring_btn-warning.disabled.focus, .fastspring_btn-warning:disabled:focus, .fastspring_btn-warning:disabled.focus {
2447
background-color: #f0ad4e;
2448
border-color: #f0ad4e; }
2449
2450
.fastspring_btn-warning.disabled:hover, .fastspring_btn-warning:disabled:hover {
2451
background-color: #f0ad4e;
2452
border-color: #f0ad4e; }
2453
2454
.fastspring_btn-danger {
2455
color: #fff !important;
2456
background-color: #d9534f;
2457
border-color: #d9534f; }
2458
2459
.fastspring_btn-danger:hover {
2460
color: #fff !important;
2461
background-color: #c9302c;
2462
border-color: #c12e2a; }
2463
2464
.fastspring_btn-danger:focus, .fastspring_btn-danger.focus {
2465
color: #fff !important;
2466
background-color: #c9302c;
2467
border-color: #c12e2a; }
2468
2469
.fastspring_btn-danger:active, .fastspring_btn-danger.active,
2470
.open > .fastspring_btn-danger.dropdown-toggle {
2471
color: #fff !important;
2472
background-color: #c9302c;
2473
border-color: #c12e2a;
2474
background-image: none; }
2475
2476
.fastspring_btn-danger:active:hover, .fastspring_btn-danger:active:focus, .fastspring_btn-danger:active.focus, .fastspring_btn-danger.active:hover, .fastspring_btn-danger.active:focus, .fastspring_btn-danger.active.focus,
2477
.open > .fastspring_btn-danger.dropdown-toggle:hover,
2478
.open > .fastspring_btn-danger.dropdown-toggle:focus,
2479
.open > .fastspring_btn-danger.dropdown-toggle.focus {
2480
color: #fff !important;
2481
background-color: #ac2925;
2482
border-color: #8b211e; }
2483
2484
.fastspring_btn-danger.disabled:focus, .fastspring_btn-danger.disabled.focus, .fastspring_btn-danger:disabled:focus, .fastspring_btn-danger:disabled.focus {
2485
background-color: #d9534f;
2486
border-color: #d9534f; }
2487
2488
.fastspring_btn-danger.disabled:hover, .fastspring_btn-danger:disabled:hover {
2489
background-color: #d9534f;
2490
border-color: #d9534f; }
2491
2492
.fastspring_btn-outline-primary {
2493
color: #0275d8 !important;
2494
background-image: none;
2495
background-color: transparent;
2496
border-color: #0275d8;
2497
border: 2px solid; }
2498
2499
.fastspring_btn-outline-primary:hover {
2500
color: #fff !important;
2501
background-color: #0275d8;
2502
border-color: #0275d8; }
2503
2504
.fastspring_btn-outline-primary:focus, .fastspring_btn-outline-primary.focus {
2505
color: #fff !important;
2506
background-color: #0275d8;
2507
border-color: #0275d8; }
2508
2509
.fastspring_btn-outline-primary:active, .fastspring_btn-outline-primary.active,
2510
.open > .fastspring_btn-outline-primary.dropdown-toggle {
2511
color: #fff !important;
2512
background-color: #0275d8;
2513
border-color: #0275d8; }
2514
2515
.fastspring_btn-outline-primary:active:hover, .fastspring_btn-outline-primary:active:focus, .fastspring_btn-outline-primary:active.focus, .fastspring_btn-outline-primary.active:hover, .fastspring_btn-outline-primary.active:focus, .fastspring_btn-outline-primary.active.focus,
2516
.open > .fastspring_btn-outline-primary.dropdown-toggle:hover,
2517
.open > .fastspring_btn-outline-primary.dropdown-toggle:focus,
2518
.open > .fastspring_btn-outline-primary.dropdown-toggle.focus {
2519
color: #fff !important;
2520
background-color: #014682;
2521
border-color: #01315a; }
2522
2523
.fastspring_btn-outline-primary.disabled:focus, .fastspring_btn-outline-primary.disabled.focus, .fastspring_btn-outline-primary:disabled:focus, .fastspring_btn-outline-primary:disabled.focus {
2524
border-color: #43a7fd; }
2525
2526
.fastspring_btn-outline-primary.disabled:hover, .fastspring_btn-outline-primary:disabled:hover {
2527
border-color: #43a7fd; }
2528
2529
.fastspring_btn-outline-secondary {
2530
color: #ccc !important;
2531
background-image: none;
2532
background-color: transparent;
2533
border-color: #ccc;
2534
border: 2px solid; }
2535
2536
.fastspring_btn-outline-secondary:hover {
2537
color: #fff !important;
2538
background-color: #ccc;
2539
border-color: #ccc; }
2540
2541
.fastspring_btn-outline-secondary:focus, .fastspring_btn-outline-secondary.focus {
2542
color: #fff !important;
2543
background-color: #ccc;
2544
border-color: #ccc; }
2545
2546
.fastspring_btn-outline-secondary:active, .fastspring_btn-outline-secondary.active,
2547
.open > .fastspring_btn-outline-secondary.dropdown-toggle {
2548
color: #fff !important;
2549
background-color: #ccc;
2550
border-color: #ccc; }
2551
2552
.fastspring_btn-outline-secondary:active:hover, .fastspring_btn-outline-secondary:active:focus, .fastspring_btn-outline-secondary:active.focus, .fastspring_btn-outline-secondary.active:hover, .fastspring_btn-outline-secondary.active:focus, .fastspring_btn-outline-secondary.active.focus,
2553
.open > .fastspring_btn-outline-secondary.dropdown-toggle:hover,
2554
.open > .fastspring_btn-outline-secondary.dropdown-toggle:focus,
2555
.open > .fastspring_btn-outline-secondary.dropdown-toggle.focus {
2556
color: #fff !important;
2557
background-color: #a1a1a1;
2558
border-color: #8c8c8c; }
2559
2560
.fastspring_btn-outline-secondary.disabled:focus, .fastspring_btn-outline-secondary.disabled.focus, .fastspring_btn-outline-secondary:disabled:focus, .fastspring_btn-outline-secondary:disabled.focus {
2561
border-color: white; }
2562
2563
.fastspring_btn-outline-secondary.disabled:hover, .fastspring_btn-outline-secondary:disabled:hover {
2564
border-color: white; }
2565
2566
.fastspring_btn-outline-info {
2567
color: #5bc0de !important;
2568
background-image: none;
2569
background-color: transparent;
2570
border-color: #5bc0de;
2571
border: 2px solid; }
2572
2573
.fastspring_btn-outline-info:hover {
2574
color: #fff !important;
2575
background-color: #5bc0de;
2576
border-color: #5bc0de; }
2577
2578
.fastspring_btn-outline-info:focus, .fastspring_btn-outline-info.focus {
2579
color: #fff !important;
2580
background-color: #5bc0de;
2581
border-color: #5bc0de; }
2582
2583
.fastspring_btn-outline-info:active, .fastspring_btn-outline-info.active,
2584
.open > .fastspring_btn-outline-info.dropdown-toggle {
2585
color: #fff !important;
2586
background-color: #5bc0de;
2587
border-color: #5bc0de; }
2588
2589
.fastspring_btn-outline-info:active:hover, .fastspring_btn-outline-info:active:focus, .fastspring_btn-outline-info:active.focus, .fastspring_btn-outline-info.active:hover, .fastspring_btn-outline-info.active:focus, .fastspring_btn-outline-info.active.focus,
2590
.open > .fastspring_btn-outline-info.dropdown-toggle:hover,
2591
.open > .fastspring_btn-outline-info.dropdown-toggle:focus,
2592
.open > .fastspring_btn-outline-info.dropdown-toggle.focus {
2593
color: #fff !important;
2594
background-color: #269abc;
2595
border-color: #1f7e9a; }
2596
2597
.fastspring_btn-outline-info.disabled:focus, .fastspring_btn-outline-info.disabled.focus, .fastspring_btn-outline-info:disabled:focus, .fastspring_btn-outline-info:disabled.focus {
2598
border-color: #b0e1ef; }
2599
2600
.fastspring_btn-outline-info.disabled:hover, .fastspring_btn-outline-info:disabled:hover {
2601
border-color: #b0e1ef; }
2602
2603
.fastspring_btn-outline-success {
2604
color: #5cb85c !important;
2605
background-image: none;
2606
background-color: transparent;
2607
border-color: #5cb85c;
2608
border: 2px solid; }
2609
2610
.fastspring_btn-outline-success:hover {
2611
color: #fff !important;
2612
background-color: #5cb85c;
2613
border-color: #5cb85c; }
2614
2615
.fastspring_btn-outline-success:focus, .fastspring_btn-outline-success.focus {
2616
color: #fff !important;
2617
background-color: #5cb85c;
2618
border-color: #5cb85c; }
2619
2620
.fastspring_btn-outline-success:active, .fastspring_btn-outline-success.active,
2621
.open > .fastspring_btn-outline-success.dropdown-toggle {
2622
color: #fff !important;
2623
background-color: #5cb85c;
2624
border-color: #5cb85c; }
2625
2626
.fastspring_btn-outline-success:active:hover, .fastspring_btn-outline-success:active:focus, .fastspring_btn-outline-success:active.focus, .fastspring_btn-outline-success.active:hover, .fastspring_btn-outline-success.active:focus, .fastspring_btn-outline-success.active.focus,
2627
.open > .fastspring_btn-outline-success.dropdown-toggle:hover,
2628
.open > .fastspring_btn-outline-success.dropdown-toggle:focus,
2629
.open > .fastspring_btn-outline-success.dropdown-toggle.focus {
2630
color: #fff !important;
2631
background-color: #398439;
2632
border-color: #2d672d; }
2633
2634
.fastspring_btn-outline-success.disabled:focus, .fastspring_btn-outline-success.disabled.focus, .fastspring_btn-outline-success:disabled:focus, .fastspring_btn-outline-success:disabled.focus {
2635
border-color: #a3d7a3; }
2636
2637
.fastspring_btn-outline-success.disabled:hover, .fastspring_btn-outline-success:disabled:hover {
2638
border-color: #a3d7a3; }
2639
2640
.fastspring_btn-outline-warning {
2641
color: #f0ad4e !important;
2642
background-image: none;
2643
background-color: transparent;
2644
border-color: #f0ad4e;
2645
border: 2px solid; }
2646
2647
.fastspring_btn-outline-warning:hover {
2648
color: #fff !important;
2649
background-color: #f0ad4e;
2650
border-color: #f0ad4e; }
2651
2652
.fastspring_btn-outline-warning:focus, .fastspring_btn-outline-warning.focus {
2653
color: #fff !important;
2654
background-color: #f0ad4e;
2655
border-color: #f0ad4e; }
2656
2657
.fastspring_btn-outline-warning:active, .fastspring_btn-outline-warning.active,
2658
.open > .fastspring_btn-outline-warning.dropdown-toggle {
2659
color: #fff !important;
2660
background-color: #f0ad4e;
2661
border-color: #f0ad4e; }
2662
2663
.fastspring_btn-outline-warning:active:hover, .fastspring_btn-outline-warning:active:focus, .fastspring_btn-outline-warning:active.focus, .fastspring_btn-outline-warning.active:hover, .fastspring_btn-outline-warning.active:focus, .fastspring_btn-outline-warning.active.focus,
2664
.open > .fastspring_btn-outline-warning.dropdown-toggle:hover,
2665
.open > .fastspring_btn-outline-warning.dropdown-toggle:focus,
2666
.open > .fastspring_btn-outline-warning.dropdown-toggle.focus {
2667
color: #fff !important;
2668
background-color: #d58512;
2669
border-color: #b06d0f; }
2670
2671
.fastspring_btn-outline-warning.disabled:focus, .fastspring_btn-outline-warning.disabled.focus, .fastspring_btn-outline-warning:disabled:focus, .fastspring_btn-outline-warning:disabled.focus {
2672
border-color: #f8d9ac; }
2673
2674
.fastspring_btn-outline-warning.disabled:hover, .fastspring_btn-outline-warning:disabled:hover {
2675
border-color: #f8d9ac; }
2676
2677
.fastspring_btn-outline-danger {
2678
color: #d9534f !important;
2679
background-image: none;
2680
background-color: transparent;
2681
border-color: #d9534f;
2682
border: 2px solid; }
2683
2684
.fastspring_btn-outline-danger:hover {
2685
color: #fff !important;
2686
background-color: #d9534f;
2687
border-color: #d9534f; }
2688
2689
.fastspring_btn-outline-danger:focus, .fastspring_btn-outline-danger.focus {
2690
color: #fff !important;
2691
background-color: #d9534f;
2692
border-color: #d9534f; }
2693
2694
.fastspring_btn-outline-danger:active, .fastspring_btn-outline-danger.active,
2695
.open > .fastspring_btn-outline-danger.dropdown-toggle {
2696
color: #fff !important;
2697
background-color: #d9534f;
2698
border-color: #d9534f; }
2699
2700
.fastspring_btn-outline-danger:active:hover, .fastspring_btn-outline-danger:active:focus, .fastspring_btn-outline-danger:active.focus, .fastspring_btn-outline-danger.active:hover, .fastspring_btn-outline-danger.active:focus, .fastspring_btn-outline-danger.active.focus,
2701
.open > .fastspring_btn-outline-danger.dropdown-toggle:hover,
2702
.open > .fastspring_btn-outline-danger.dropdown-toggle:focus,
2703
.open > .fastspring_btn-outline-danger.dropdown-toggle.focus {
2704
color: #fff;
2705
background-color: #ac2925;
2706
border-color: #8b211e; }
2707
2708
.fastspring_btn-outline-danger.disabled:focus, .fastspring_btn-outline-danger.disabled.focus, .fastspring_btn-outline-danger:disabled:focus, .fastspring_btn-outline-danger:disabled.focus {
2709
border-color: #eba5a3; }
2710
2711
.fastspring_btn-outline-danger.disabled:hover, .fastspring_btn-outline-danger:disabled:hover {
2712
border-color: #eba5a3; }
2713
2714
.fastspring_btn-link {
2715
font-weight: normal;
2716
color: #0275d8 !important;
2717
border-radius: 0; }
2718
2719
.fastspring_btn-link, .fastspring_btn-link:active, .fastspring_btn-link.active, .fastspring_btn-link:disabled {
2720
background-color: transparent; }
2721
2722
.fastspring_btn-link, .fastspring_btn-link:focus, .fastspring_btn-link:active {
2723
border-color: transparent; }
2724
2725
.fastspring_btn-link:hover {
2726
border-color: transparent; }
2727
2728
.fastspring_btn-link:focus, .fastspring_btn-link:hover {
2729
color: #014c8c !important;
2730
text-decoration: underline;
2731
background-color: transparent; }
2732
2733
.fastspring_btn-link:disabled:focus, .fastspring_btn-link:disabled:hover {
2734
color: #818a91 !important;
2735
text-decoration: none; }
2736
2737
.fastspring_btn-lg, .fastspring_btn-group-lg > .fastspring_btn {
2738
padding: 10px 16px;
2739
font-size: 18px;
2740
border-radius: 6px;
2741
line-height: 45px; }
2742
2743
.fastspring_btn-sm, .fastspring_btn-group-sm > .fastspring_btn {
2744
padding: 5px 10px;
2745
font-size: 12px;
2746
border-radius: 3px; }
2747
2748
.fastspring_btn-block {
2749
display: block;
2750
width: 100%;
2751
font-weight: normal;
2752
line-height: 1.25;
2753
text-align: center;
2754
white-space: nowrap;
2755
vertical-align: middle;
2756
cursor: pointer;
2757
user-select: none;
2758
user-select: none;
2759
user-select: none;
2760
user-select: none;
2761
padding: 6px 12px;
2762
font-size: 14px;
2763
border-radius: 4px;
2764
text-decoration: none; }
2765
2766
.fastspring_btn-block + .fastspring_btn-block {
2767
margin-top: 0.5rem; }
2768
2769
@media (max-width: 575.98px) {
2770
.fastspring_btn.responsive-xs, .fastspring_btn-lg.responsive-xs, .fastspring_btn-sm.responsive-xs {
2771
display: block;
2772
width: 100%; } }
2773
2774
@media (max-width: 767.98px) {
2775
.fastspring_btn.responsive-sm, .fastspring_btn-lg.responsive-sm, .fastspring_btn-sm.responsive-sm {
2776
display: block;
2777
width: 100%; } }
2778
2779
.fastspring_btn-block {
2780
display: block;
2781
width: 100%;
2782
font-weight: normal;
2783
line-height: 1.25;
2784
text-align: center;
2785
white-space: nowrap;
2786
vertical-align: middle;
2787
cursor: pointer;
2788
user-select: none;
2789
user-select: none;
2790
user-select: none;
2791
user-select: none;
2792
padding: 6px 12px;
2793
font-size: 14px;
2794
border-radius: 4px;
2795
text-decoration: none; }
2796
2797
.fastspring_btn-block + .fastspring_btn-block {
2798
margin-top: 0.5rem; }
2799
2800
@media (max-width: 575.98px) {
2801
.fastspring_btn.responsive-xs, .fastspring_btn-lg.responsive-xs, .fastspring_btn-sm.responsive-xs {
2802
display: block;
2803
width: 100%; } }
2804
2805
@media (max-width: 767.98px) {
2806
.fastspring_btn.responsive-sm, .fastspring_btn-lg.responsive-sm, .fastspring_btn-sm.responsive-sm {
2807
display: block;
2808
width: 100%; } }
2809
2810
.fsb-img-align-right {
2811
text-align: right; }
2812
2813
.fsb-img-align-center {
2814
text-align: center; }
2815
2816
.fsb-row a.fsb_productcatalog {
2817
text-decoration: none !important; }
1
294
1
document.addEventListener('click', function (event) {
2
if (event.target.matches('.fsb-close')) {
3
event.preventDefault();
4
closeitall();
5
return
6
}
7
if(event.target.hasAttribute('data-fsc-addthis')) {
8
var product = event.target.getAttribute("data-fsc-addthis");
9
var cart = event.target.getAttribute("data-fsc-cart");
10
fsaddProd(product, cart);
11
return
12
}
13
if(event.target.hasAttribute('data-fsc-opencart')) {
14
openCart(event.target.getAttribute("data-fsc-opencart"));
15
return
16
}
17
return
18
}, false);
19
20
function fsaddProd(prod, type) {
21
fastspring.builder.add(prod, function(data){
22
if(type != 'fsb-MOD' && type != 'fsb-MODSM' && type!= 'fsb-RS' && type!= 'fsb-LS' && type!= 'fsb-BS' && type!= 'Modal' && type!= 'SmallModal' && type!= 'Right' && type!= 'Left' && type!= 'Bottom') {
23
openCart('fsb-MOD');
24
} else {
25
openCart(type);
26
}
27
});
28
}
29
30
function applycoupon() {
31
var couponid= document.getElementById('couponcode').value;
32
fastspring.builder.promo(couponid);
33
}
34
35
function markupHelpersCallback() {
36
Handlebars.registerHelper('iff', function(lvalue, operator, rvalue, options) {
37
var functions = {
38
'==': function(l,r) { return l == r; },
39
'===': function(l,r) { return l === r; },
40
'!=': function(l,r) { return l != r; },
41
'<': function(l,r) { return l < r; },
42
'>': function(l,r) { return l > r; },
43
'<=': function(l,r) { return l <= r; },
44
'>=': function(l,r) { return l >= r; },
45
'typeof': function(l,r) { return typeof l === r; }
46
};
47
if (!functions.hasOwnProperty(operator)){
48
throw new Error("Handlerbars Helper 'iff' doesn't know the operator " + operator);
49
}
50
var result = functions[operator](lvalue,rvalue);
51
if( result ) {
52
return options.fn(this);
53
} else {
54
return options.inverse(this);
55
}
56
});
57
Handlebars.registerPartial("pricing", document.getElementById('pricing-partial').innerHTML);
58
Handlebars.registerPartial("quantity", document.getElementById('quantity-partial').innerHTML);
59
Handlebars.registerPartial("pricing2", document.getElementById('pricing-partial2').innerHTML);
60
Handlebars.registerPartial("volume-discount", document.getElementById('volume-discount').innerHTML);
61
Handlebars.registerPartial("xsell", document.getElementById('xsell').innerHTML);
62
Handlebars.registerPartial("upsell", document.getElementById('upsell').innerHTML);
63
Handlebars.registerPartial("singlechoice", document.getElementById('singlechoice').innerHTML);
64
Handlebars.registerPartial("multichoice", document.getElementById('multichoice').innerHTML);
65
}
66
67
function beforeRequestsCallbackFunction() {
68
var fsb_spinner=document.getElementById("fastspring_spinner");
69
fsb_spinner.style.display = "block";
70
}
71
72
function afterMarkupCallbackFunction() {
73
init();
74
var fsb_spinner=document.getElementById("fastspring_spinner");
75
fsb_spinner.style.animationName="fsb-revfadeIn";
76
setTimeout(function(){
77
fsb_spinner.style.animationName = "fsb-fadeIn";
78
fsb_spinner.style.display = "none";
79
},450);
80
}
81
82
function decorateCallback(url) {
83
var linkerParam = null;
84
if ( ga && typeof ga === 'function') {
85
ga(function() {
86
var trackers = ga.getAll();
87
linkerParam = trackers[0].get('linkerParam');
88
});
89
}
90
return (linkerParam ? url + '?' + linkerParam : url);
91
}
92
93
function errorCallback(code, string) {
94
var fsb_spinner=document.getElementById("fastspring_spinner");
95
fsb_spinner.style.animationName="fsb-revfadeIn";
96
setTimeout(function(){
97
fsb_spinner.style.animationName = "fsb-fadeIn";
98
fsb_spinner.style.display = "none";
99
},450);
100
var fsb_modal = document.getElementById('fsb-modal');
101
if(fsb_modal.style.display === 'block') {
102
var fsb_error=document.getElementById("fsb_error");
103
var fsb_error_msg=document.getElementById("fsb_error_msg");
104
fsb_error.style.display = "block";
105
fsb_error.style.animationName = "fsb-mod_animatetop";
106
fsb_error_msg.innerHTML = "Error: " + code + " - " + string;
107
setTimeout(function(){
108
fsb_error.style.animationName = "fsb-mod_revanimatetop";
109
setTimeout(function(){
110
fsb_error.style.display = "none";
111
}, 400)
112
},5000);
113
} else {
114
var fsb_error=document.getElementById("fsb_error");
115
var fsb_error_msg=document.getElementById("fsb_error_msg");
116
fsb_error.style.display = "block";
117
fsb_error.style.animationName = "fsb-mod_animatetop";
118
fsb_error_msg.innerHTML = "Error: " + code + " - " + string;
119
setTimeout(function(){
120
fsb_error.style.animationName = "fsb-mod_revanimatetop";
121
setTimeout(function(){
122
fsb_error.style.display = "none";
123
}, 400)
124
},5000);
125
}
126
}
127
128
function dataCallback(data) {
129
if(data.messages[0]) {
130
var fsb_modal = document.getElementById('fsb-modal');
131
if(fsb_modal.style.display === 'block') {
132
var fsb_error=document.getElementById("fsb_error");
133
var fsb_error_msg=document.getElementById("fsb_error_msg");
134
fsb_error.style.display = "block";
135
fsb_error.style.animationName = "fsb-mod_animatetop";
136
fsb_error_msg.innerHTML = data.messages[0].phrase;
137
setTimeout(function(){
138
fsb_error.style.animationName = "fsb-mod_revanimatetop";
139
setTimeout(function(){
140
fsb_error.style.display = "none";
141
}, 400)
142
},5000);
143
} else {
144
var fsb_error=document.getElementById("fsb_error");
145
var fsb_error_msg=document.getElementById("fsb_error_msg");
146
fsb_error.style.display = "block";
147
fsb_error.style.animationName = "fsb-mod_animatetop";
148
fsb_error_msg.innerHTML = data.messages[0].phrase;
149
setTimeout(function(){
150
fsb_error.style.animationName = "fsb-mod_revanimatetop";
151
setTimeout(function(){
152
fsb_error.style.display = "none";
153
}, 400)
154
},5000);
155
}
156
}
157
var minicart = document.getElementById("minicart-count");
158
if(minicart) {
159
let inCart = 0;
160
if (data && data.hasOwnProperty('groups')) {
161
const { groups } = data;
162
groups.forEach(group => {
163
if (group.items && Array.isArray(group.items)) {
164
group.items.forEach(item => {
165
if (item.selected) {
166
inCart += item.quantity;
167
}
168
});
169
}
170
});
171
}
172
document.getElementById("minicart-count").innerHTML = inCart;
173
}
174
}
175
176
var fsb_modal = document.getElementById('fsb-modal');
177
var fsb_modalcontent = document.querySelectorAll('#fsb-modal .fsb-modal-content');
178
179
function openCart(type) {
180
if(type== 'Modal') { type='fsb-MOD'; }
181
if(type== 'ModalSmall') { type='fsb-MODSM'; }
182
if(type== 'Left') { type='fsb-LS'; }
183
if(type== 'Right') { type='fsb-RS'; }
184
if(type== 'Bottom') { type='fsb-BS'; }
185
var fsb_modal = document.getElementById('fsb-modal');
186
var fsb_modalcontent = document.querySelectorAll('#fsb-modal .fsb-modal-content');
187
if(!type) {
188
type = 'fsb-MOD';
189
}
190
fsb_modal.classList.add(type);
191
if(type=='fsb-LS') {
192
fsb_modalcontent[0].style.animationName = "fsb-ls_slideIn";
193
}
194
if(type=='fsb-RS') {
195
fsb_modalcontent[0].style.animationName = "fsb-rs_slideIn";
196
}
197
if(type=='fsb-BS') {
198
fsb_modalcontent[0].style.animationName = "fsb-bs_slideIn";
199
}
200
if(type=='fsb-MOD' || type=='fsb-MODSM') {
201
fsb_modalcontent[0].style.animationName = "fsb-mod_animatetop";
202
}
203
fsb_modal.style.display = "block";
204
document.body.classList.add("fsb-modalOpen");
205
}
206
207
function closeitall() {
208
var fsb_modal = document.getElementById('fsb-modal');
209
var fsb_modalcontent = document.querySelectorAll('#fsb-modal .fsb-modal-content');
210
document.body.classList.remove("fsb-modalOpen");
211
if (fsb_modal.classList.contains('fsb-BS')) {
212
fsb_modalcontent[0].style.animationName = "fsb-bs_revslideIn";
213
fsb_modal.style.animationName="fsb-revfadeIn";
214
setTimeout(function(){
215
fsb_modal.style.display = "none";
216
fsb_modalcontent[0].style.animationName = "fsb-bs_slideIn";
217
fsb_modal.style.animationName="fsb-fadeIn";
218
},350);
219
}
220
if (fsb_modal.classList.contains('fsb-LS')) {
221
fsb_modalcontent[0].style.animationName = "fsb-ls_revslideIn";
222
fsb_modal.style.animationName="fsb-revfadeIn";
223
setTimeout(function(){
224
fsb_modal.style.display = "none";
225
fsb_modalcontent[0].style.animationName = "fsb-ls_slideIn";
226
fsb_modal.style.animationName="fsb-fadeIn";
227
},350);
228
}
229
if (fsb_modal.classList.contains('fsb-RS')) {
230
fsb_modalcontent[0].style.animationName = "fsb-rs_revslideIn";
231
fsb_modal.style.animationName="fsb-revfadeIn";
232
setTimeout(function(){
233
fsb_modal.style.display = "none";
234
fsb_modalcontent[0].style.animationName = "fsb-rs_slideIn";
235
fsb_modal.style.animationName="fsb-fadeIn";
236
},350);
237
}
238
if (fsb_modal.classList.contains('fsb-MOD') || fsb_modal.classList.contains('fsb-MODSM')) {
239
fsb_modalcontent[0].style.animationName = "fsb-mod_revanimatetop";
240
fsb_modal.style.animationName="fsb-revfadeIn";
241
setTimeout(function(){
242
fsb_modal.style.display = "none";
243
fsb_modalcontent[0].style.animationName = "fsb-mod_animatetop";
244
fsb_modal.style.animationName="fsb-fadeIn";
245
},350);
246
}
247
setTimeout(function(){
248
document.getElementById('fsb-modal').classList.remove("fsb-RS");
249
document.getElementById('fsb-modal').classList.remove("fsb-LS");
250
document.getElementById('fsb-modal').classList.remove("fsb-BS");
251
document.getElementById('fsb-modal').classList.remove("fsb-MOD");
252
document.getElementById('fsb-modal').classList.remove("fsb-MODSM");
253
},350);
254
}
255
256
window.onclick = function(event) {
257
if (event.target.id == "fsb-modal") {
258
closeitall();
259
}
260
}
261
262
var value,
263
quantity = document.getElementsByClassName('fsb-number');
264
function createBindings(quantityContainer) {
265
var quantityAmount = quantityContainer.getElementsByClassName('fsb-qtyinput')[0];
266
var increase = quantityContainer.getElementsByClassName('fsb-plus')[0];
267
var decrease = quantityContainer.getElementsByClassName('fsb-minus')[0];
268
increase.addEventListener('click', function () { increaseValue(this, quantityAmount); });
269
decrease.addEventListener('click', function () { decreaseValue(this, quantityAmount); });
270
}
271
272
function init() {
273
for (var i = 0; i < quantity.length; i++ ) {
274
createBindings(quantity[i]);
275
}
276
};
277
278
function increaseValue(clicker, quantityAmount) {
279
value = parseInt(quantityAmount.value, 10);
280
product = quantityAmount.getAttribute("data-fsc-item-path");
281
value = isNaN(value) ? 0 : value;
282
value++;
283
quantityAmount.value = value;
284
fastspring.builder.update(product, value);
285
}
286
287
function decreaseValue(clicker, quantityAmount) {
288
value = parseInt(quantityAmount.value, 10);
289
product = quantityAmount.getAttribute("data-fsc-item-path");
290
value = isNaN(value) ? 0 : value;
291
if (value > 0) value--;
292
quantityAmount.value = value;
293
fastspring.builder.update(product, value);
294
}