Select Page
Methods Documentation
Edit on
Codepen.io

Full Cart

Full cart example using the FastSpring Store Builder Library and Handlebars JS.


x
652
 
1
<!DOCTYPE html>
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 buy buttons to populate the shopping cart.
18
        -->
19
        <h1>
20
            Add to cart buttons
21
        </h1>
22
        <a class="fastspring_btn fastspring_btn-success" onclick="fastspring.builder.reset();">Reset Cart</a>
23
        <a class="fastspring_btn fastspring_btn-success"  data-fsc-item-path-value="base" data-fsc-action="Add">Buy The Photo.io App</a>
24
        <a class="fastspring_btn fastspring_btn-success"  data-fsc-item-path-value="xsell" data-fsc-action="Add">Buy The Photo.io App with Cross-Sell</a>
25
        <a class="fastspring_btn fastspring_btn-success"  data-fsc-item-path-value="upsell" data-fsc-action="Add">Buy The Photo.io App with Upsell</a>
26
        <a class="fastspring_btn fastspring_btn-success"  data-fsc-item-path-value="sub" data-fsc-action="Add">Buy The Photo.io App Subscription</a>
27
        <a class="fastspring_btn fastspring_btn-success"  data-fsc-item-path-value="bogus" data-fsc-action="Add">Buy Bogus Product To Trigger Error </a>
28
        <br /><br />
29
30
        <!--
31
            Error messages will be displayed below if the Store Builder Library receives an error.
32
        -->
33
        <div id="fsb_error" class="fsb_alert fsb_alert-danger" role="alert" style="display:none;">
34
            <h4 class="fs_alert-heading">Error</h4>
35
            <p id="fsb_error_msg"></p>
36
        </div>
37
38
        <!--
39
            The below div will be replaced with the shopping cart that is generated from the handlebars scripts defined below
40
        -->
41
        <div id="fsb" data-fsc-selections-smartdisplay>
42
            <div data-fsc-selections-smartdisplay data-fsc-items-container='fastspring_shopping_cart' data-fsc-filter="selected=true" class="fs-container-fluid px-5 py5">
43
            </div>
44
        </div>
45
        
46
        <!--
47
        Initialize the Store Builder Library
48
        Callbacks are located in fullcart.js
49
        -->
50
        <script
51
            id="fsc-api"
52
            src="https://d1f8f9xcsvx3ha.cloudfront.net/sbl/0.8.1/fastspring-builder.min.js" type="text/javascript"
53
            data-storefront="fastspringexamples.test.onfastspring.com/popup-fastspringexamples"
54
            data-markup-helpers-callback="markupHelpersCallback"
55
            data-before-requests-callback="beforeRequestsCallbackFunction"
56
            data-after-markup-callback="afterMarkupCallbackFunction"
57
            data-popup-closed="popupClosed"
58
            /*uncomment the following line if using Google Analytics*/
59
            /*data-decorate-callback="decorateCallback"*/
60
            data-error-callback="errorCallback"
61
            data-data-callback="dataCallback"
62
            data-continuous="true">
63
        </script>
64
65
        <!--
66
           fsb_shopping_cart handlebars template
67
           This is the base shopping cart template and will loop through the items currently in the shopping cart.
68
        -->
69
        <script data-fsc-template-for="fastspring_shopping_cart" type="text/x-handlebars-template">
70
            <div class="fsb-row fsb-align-items-center fsb-mb-4">
71
                <!--start cart item row-->
72
                {{#each items}}
73
                    {{#each items}}
74
                        {{#iff path '!=' 'SystemExtension.shippingcalculation'}}
75
                        <div class="fsb-col-lg-12 fsb-border fsb-mb-4 fsb-rounded">
76
                            {{#if removable}}
77
                                <p class="fsb-removeX" style="position: absolute; top: 0px; right: 5px;">
78
                                    <a href="#" class="fsb-remove fsb-d-md-none" data-fsc-action="Remove" data-fsc-item-path-value="{{path}}" style="line-height:75%;"> &times;</a>
79
                                </p>
80
                            {{/if}}
81
                            <div class="fsb-row  fsb-mt-4 fsb-mb-4">
82
                                <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">
83
                                    {{#if image}}
84
                                        <img src="{{image}}" class="fsb-img-fluid fsb-cartimage" />
85
                                    {{/if}}
86
                                </div>
87
                                <div class="fsb-col-lg-6 fsb-col-md-4 fsb-col-sm-8 fsb-col-12 fsb-text-center fsb-text-sm-left">
88
                                    <p class="fsb-display">{{display}}</p>
89
                                    {{#if description.summary}}
90
                                        {{{description.summary}}}
91
                                    {{/if}}
92
                                </div>
93
                                <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">
94
                                    {{>pricing}}
95
                                    {{>quantity}}
96
                                </div>
97
                                <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">
98
                                    <p class="fsb-extPrice fsb-text-nowrap">
99
                                        {{#iff totalValue '>' '0'}}
100
                                            {{total}}
101
                                        {{else}}
102
                                            FREE
103
                                        {{/iff}}
104
                                        {{#if removable}}
105
                                            <a href="#" class="fsb-d-none fsb-d-md-inline-block fsb-remove" data-fsc-action="Remove" data-fsc-item-path-value="{{path}}"> &times;</a>
106
                                        {{/if}}
107
                                    </p>
108
                                </div>
109
                            </div>
110
                            
111
                            {{#each groups}}
112
                                <!--Up-Sells-->
113
                                {{#iff type '==' 'replace'}}
114
                                    {{#iff selectableReplacements '==' true}}
115
                                        {{>upsell}}
116
                                    {{/iff}}
117
                                {{/iff}}
118
                                <!--Bundle-->
119
                                {{#iff type '==' 'bundle'}}
120
                                    <div class="fsb-row">
121
                                        <div class="fsb-col fsb-offset-md-1">
122
                                            <div class="fsb-card fsb-mt-2 fsb-mb-3">
123
                                                <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
124
                                                    {{display}} includes the following:
125
                                                </div>
126
                                                <div class="fsb-card-body fsb-pb-4">
127
                                                    {{#each items}}
128
                                                        {{#if image}}
129
                                                            <img src='{{image}}' class="fsb-bundleimage" alt='{{display}}' />
130
                                                        {{/if}}
131
                                                    {{/each}}
132
                                                </div>
133
                                            </div>
134
                                        </div>
135
                                    </div>
136
                                {{/iff}}
137
                                <!--Alternatives-->
138
                                {{#iff type '==' 'options'}}
139
                                    <div class="fsb-row">
140
                                        <div class="fsb-col-md-11 fsb-offset-md-1">
141
                                            <div class="fsb-card fsb-mt-2 fsb-mb-3">
142
                                                <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
143
                                                    {{display}}&nbsp;
144
                                                </div>
145
                                                <div class="fsb-card-body fsb-pb-0">
146
                                                    {{#each items}}
147
                                                    <div class="fsb-row fsb-mb-4">
148
                                                        <div class="fsb-col-1">
149
                                                            <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}}" >
150
                                                        </div>
151
                                                        <div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-12 fsb-text-center fsb-pr-0">
152
                                                            {{#if image}}
153
                                                                <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="{{display}}" />                                                     
154
                                                            {{/if}}
155
                                                        </div>
156
                                                        <div class=" fsb-col-12 fsb-col-md-7 fsb-col-9  fsb-text-center fsb-text-md-left">
157
                                                            <p class="fsb-display">{{display}}</p>
158
                                                            {{#if description.summary}}
159
                                                                {{{description.summary}}}
160
                                                            {{/if}}
161
                                                            <div class="fsb-d-md-none fsb-row fsb-mt-4  fsb-text-center fsb-text-md-left">
162
                                                                <div class=" fsb-col-md-7 fsb-col-12">
163
                                                                    {{>pricing2}}
164
                                                                    {{>volume-discount}}
165
                                                                </div>
166
                                                            </div>
167
                                                        </div>
168
                                                        <div class=" fsb-col-12 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
169
                                                            {{>pricing2}}
170
                                                        </div>
171
                                                    </div>
172
                                                    <hr />
173
                                                    {{/each}}
174
                                                </div>
175
                                            </div>
176
                                        </div>
177
                                    </div>
178
                                {{/iff}}
179
                                <!--Single Choice Option-->
180
                                {{#iff type '==' 'config-one'}}
181
                                    {{>singlechoice}}
182
                                {{/iff}}
183
                                <!--Multiple Choice Option-->
184
                                {{#iff type '==' 'config-many'}}
185
                                    {{>multichoice}}
186
                                {{/iff}}
187
                                <!--Single Choice Subscription Addon-->
188
                                {{#iff type '==' 'addon-one'}}
189
                                    {{>singlechoice}}
190
                                {{/iff}}
191
                                <!--Multiple Choice Subscription Addon-->
192
                                {{#iff type '==' 'addon-many'}}
193
                                    {{>multichoice}}
194
                                {{/iff}}
195
                            {{/each}}                           
196
                            <!--Cross Sells-->
197
                            {{#each @root.groups}}
198
                                {{#iff type '==' 'add'}}
199
                                    {{#iff driver '==' ../../path}}
200
                                        {{#iff selectableAdditions '==' true}}
201
                                            {{#iff driverType '==' 'product'}}
202
                                                {{>xsell}}
203
                                            {{/iff}}
204
                                        {{/iff}}
205
                                    {{/iff}}
206
                                {{/iff}}
207
                            {{/each}}
208
                        </div>
209
                        {{/iff}}
210
                    {{/each}}
211
                {{/each}}
212
                <!--end cart item row-->
213
                <div class="fsb-col-12">
214
                    <div class="fsb-row">
215
                        <div class="fsb-col-12 fsb-col-md-6 fsb-order-md-12 fsb-order-1 fsb-mb-4">
216
                            {{#each items}}
217
                                {{#each items}}
218
                                    {{#iff path '==' 'SystemExtension.shippingcalculation'}}
219
                                        <div class="fsb-row">
220
                                            <div class="fsb-col-8 fsb-text-right">
221
                                                <p class="fsb-shipping">Shipping:</p>
222
                                            </div>
223
                                            <div class="fsb-col-4 fsb-text-right">
224
                                                <p class="fsb-shipping">{{total}}</p>
225
                                            </div>
226
                                        </div>
227
                                    {{/iff}}
228
                                {{/each}}
229
                            {{/each}}
230
                            <div class="fsb-row">
231
                                <div class="fsb-col-8 fsb-text-right">
232
                                    <p class="fsb-total">Total:</p>
233
                                </div>
234
                                <div class="fsb-col-4 fsb-text-right">
235
                                    {{#each order}}
236
                                        {{#iff totalValue '>' '0'}}
237
                                            <p class="fsb-total" data-fsc-order-total ></p>
238
                                        {{else}}
239
                                            <p class="fsb-total">FREE</p>
240
                                        {{/iff}}
241
                                        {{#if discountTotalValue}}
242
                                            <p class="fsb-text-success">You save {{discountTotal}}!</p>
243
                                        {{/if}}
244
                                    {{/each}}
245
                                </div>
246
                            </div>
247
                            <div class="fsb-row">
248
                                <div class="fsb-col-12 mt-2">
249
                                    <button id="checkout" data-fsc-selections-smartdisplay class="fastspring_btn fastspring_btn-success" style="float:right;" data-fsc-action="Checkout">
250
                                        Checkout 
251
                                    </button>
252
                                </div>
253
                            </div>
254
                        </div>                      
255
                        <div class="fsb-col-md-6 fsb-col-12 fsb-order-md-1 fsb-order-12">
256
                            <div class="fsb-col-12 fsb-text-nowrap fsb-text-center fsb-text-md-left">
257
                                <label for="couponcode" class="fsb-promocode">Have a promo code?</label><br />
258
                                <input type="text" id="couponcode" data-fsc-order-promocode class="fsb-form-control" placeholder="Coupon ID" style="display:inline-block; width:200px;">
259
                                <button class="fastspring_btn fastspring_btn-success" onclick="applycoupon();">Apply</button>
260
                            </div>                          
261
                        </div>
262
                    </div>
263
                    {{#each groups}}
264
                        {{#iff driverType '==' 'storefront'}}
265
                            {{#each items}}
266
                                {{#iff path '==' 'SystemExtension.eds'}}
267
                                    {{#iff selected '==' false}}
268
                                        <div class="fsb-row">
269
                                            <div class="fsb-col-md-12 fsb-mt-4">
270
                                                <div class="fsb-card fsb-mt-2 fsb-mb-3">
271
                                                    <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
272
                                                        {{display}}&nbsp;
273
                                                    </div>
274
                                                    <div class="fsb-card-body fsb-pb-0">
275
                                                        <div class="fsb-row fsb-mb-4">
276
                                                            <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">
277
                                                                {{#if image}}
278
                                                                    <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="{{display}}" />
279
                                                                {{/if}}
280
                                                            </div>
281
                                                            <div class="fsb-col-lg-6 fsb-col-md-4 fsb-col-sm-8 fsb-col-12 fsb-text-center fsb-text-sm-left">
282
                                                                <p class="fsb-display">{{display}}</p>
283
                                                                {{#if description.summary}}
284
                                                                    {{{description.summary}}}
285
                                                                {{/if}}
286
                                                                <div class="fsb-d-md-none fsb-row fsb-mt-4">
287
                                                                    <div class=" fsb-col-sm-7 fsb-col-12 fsb-text-center fsb-text-sm-left">
288
                                                                        {{>pricing}}
289
                                                                        {{>volume-discount}}
290
                                                                    </div>
291
                                                                    <div class="fsb-col-sm-5 fsb-col-12 fsb-text-center fsb-text-sm-right">
292
                                                                         <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>
293
                                                                    </div>
294
                                                                </div>
295
                                                            </div>
296
                                                            <div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-center">
297
                                                                {{>pricing}}
298
                                                            </div>
299
                                                            <div class="fsb-col-lg-2 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-right">
300
                                                                <button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
301
                                                            </div>
302
                                                        </div>
303
                                                    </div>
304
                                                </div>
305
                                            </div>
306
                                        </div>
307
                                    {{/iff}}
308
                                {{/iff}}
309
                            {{/each}}
310
                        {{/iff}}
311
                    {{/each}}
312
                </div>
313
            </div>
314
        </script>
315
316
        <!--
317
            pricing-partial handlebars partial
318
            This partial controls how line item prices are displayedin the shopping cart.
319
        -->
320
        <script id="pricing-partial" type='text/x-handlebars-template'>
321
            <span class='pricing'>
322
                {{#if discountTotalValue}}
323
                    <p class="fsb-price fsb-inline-item"><s>{{price}}</s></p>
324
                {{/if}}
325
                {{#iff totalValue '>' '0'}}
326
                    <p class="fsb-price fsb-inline-item">{{unitPrice}}</p>
327
                {{else}}
328
                    <p class="fsb-price fsb-inline-item fsb-text-success"> Free </p>
329
                {{/iff}}
330
            </span>
331
        </script>
332
333
        <!--
334
            pricing-partial handlebars partial
335
            This partial controls how line item prices are displayedin the shopping cart.
336
        -->
337
        <script id="pricing-partial2" type='text/x-handlebars-template'>
338
            <span class='pricing'>
339
                {{#if discountTotalValue}}
340
                    <p class="fsb-price fsb-inline-item"><s>{{price}}</s></p>
341
                {{/if}}
342
                {{#iff totalValue '>' '0'}}
343
                    <p class="fsb-price fsb-inline-item">{{unitPrice}}</p>
344
                {{else}}
345
                    <p class="fsb-price fsb-inline-item fsb-text-success"> Free </p>
346
                {{/iff}}
347
                {{#if subscription}}
348
                    <div>
349
                        <em style="font-size:75%;">
350
                            {{#iff subscription.intervalUnit '==' 'adhoc'}}
351
                                Renews automatically by the seller
352
                            {{else}}
353
                                Renews every
354
                            {{#iff subscription.intervalLength '>=' '2' }}
355
                                {{subscription.intervalLength}} {{subscription.intervalUnit}}s
356
                            {{/iff}}
357
                            {{#iff subscription.intervalLength '==' '1' }}
358
                                {{subscription.intervalUnit}}
359
                            {{/iff}}.
360
                            <br />Next charge: {{subscription.nextChargeTotal}} on {{subscription.nextChargeDate}}
361
                            {{/iff}}
362
                        </em>
363
                    </div>
364
                {{/if}}
365
            </span>
366
        </script>
367
368
        <!--
369
            quantity-partial handlebars partial
370
            This partial controls how the quantity fields are displayed on the shopping cart.
371
        -->
372
        <script id="quantity-partial" type='text/x-handlebars-template'>
373
            {{#if selected}}
374
                {{#iff pricing.quantity '==' 'allow'}}
375
                    {{#iff selected '==' true}}
376
                        <strong>&times</strong>
377
                    {{/iff}}
378
                    <div class="fsb-number">
379
                        <span class="fsb-minus">&minus;</span>
380
                            <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"/>
381
                        <span class="fsb-plus">&plus;</span>
382
                    </div>
383
                    <p class="fsb-qtyPrice fsb-d-inline-block fsb-d-md-none fsb-ml-2">
384
                        {{#iff totalValue '>' '0'}}
385
                            - {{total}}
386
                        {{else}}
387
                            - FREE
388
                        {{/iff}}
389
                    </p>
390
                {{/iff}}
391
                {{#iff pricing.quantity '==' 'lock'}}
392
                    <p class="fsb-multiply fsb-inline-item">&times {{quantity}}</p>
393
                {{/iff}}
394
                {{#if subscription}}
395
                    <div>
396
                        <em style="font-size:75%;">
397
                            {{#iff subscription.intervalUnit '==' 'adhoc'}}
398
                                Renews automatically by the seller
399
                            {{else}}
400
                                Renews every
401
                            {{#iff subscription.intervalLength '>=' '2' }}
402
                                {{subscription.intervalLength}} {{subscription.intervalUnit}}s
403
                            {{/iff}}
404
                            {{#iff subscription.intervalLength '==' '1' }}
405
                                {{subscription.intervalUnit}}
406
                            {{/iff}}.
407
                            <br />Next charge: {{subscription.nextChargeTotal}} on {{subscription.nextChargeDate}}
408
                            {{/iff}}
409
                        </em>
410
                    </div>
411
                {{/if}}
412
                {{>volume-discount}}
413
            {{/if}}
414
        </script>
415
416
        <!--
417
            volume-discount handlebars partial
418
            This partial controls how volume discounts are displayed in the shopping cart.
419
        -->
420
        <script id="volume-discount" type='text/x-handlebars-template'>
421
            {{#if discountTotalValue}}
422
                <div class="fsb-text-success">
423
                    You save {{discountTotal}} ({{discountPercent}})
424
                </div>
425
            {{/if}}
426
            {{#if discount.data.tiers}}
427
                <div style="font-size:75%;">
428
                    <strong>Volume Discounts Available</strong>
429
                    {{#each discount.data.tiers}}
430
                        <div>
431
                            {{quantity}}+ : {{percent}}{{amount}} off
432
                        </div>
433
                    {{/each}}
434
                </div>
435
            {{/if}}
436
        </script>
437
438
        <!--
439
            multichoice handlebars partial
440
            This partial is used to display multiple choice options or subscription addons.
441
        -->
442
        <script id="multichoice" type='text/x-handlebars-template'>
443
            <div class="fsb-row">
444
                <div class="fsb-col-md-11 fsb-offset-md-1">
445
                    <div class="fsb-card fsb-mt-2 fsb-mb-3">
446
                        <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
447
                            {{display}}&nbsp;
448
                        </div>
449
                        <div class="fsb-card-body fsb-pb-0">
450
                            {{#each items}}
451
                                <div class="fsb-row fsb-mb-4">
452
                                    <div class="fsb-col-1">
453
                                        {{#if selected}}
454
                                            <input class="fsb-option-input fsb-checkbox" type="checkbox" name="{{display}}" id="{{path}}" checked data-fsc-action="Remove" data-fsc-item-path-value="{{path}}">
455
                                        {{else}}
456
                                            <input class="fsb-option-input fsb-checkbox" type="checkbox" name="{{display}}" id="{{path}}" data-fsc-action="Add" data-fsc-item-path-value="{{path}}">
457
                                        {{/if}}
458
                                    </div>
459
                                    <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">
460
                                        {{#if image}}
461
                                            <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="{{display}}" />
462
                                        {{/if}} 
463
                                    </div>
464
                                    <div class="fsb-col-md-4 fsb-col-12  fsb-text-center fsb-text-md-left">
465
                                        <p class="fsb-display">{{display}}</p>
466
                                        {{#if description.summary}}
467
                                            {{{description.summary}}}
468
                                        {{/if}}
469
                                    </div>
470
                                    <div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-mt-3">
471
                                        {{>pricing}}
472
                                        {{>quantity}}
473
                                    </div>
474
                                    <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">
475
                                        {{#if selected}}
476
                                            <p class="fsb-qtyPrice">
477
                                                {{#iff totalValue '>' '0'}}
478
                                                    {{total}}
479
                                                {{else}}
480
                                                    FREE
481
                                                {{/iff}}
482
                                            </p>
483
                                        {{else}}
484
                                            ---
485
                                        {{/if}}
486
                                    </div>
487
                                </div>
488
                                <hr />
489
                            {{/each}}
490
                        </div>
491
                    </div>
492
                </div>
493
            </div>
494
        </script>
495
496
        <!--
497
            singlechoice handlebars partial
498
            This partial is used to display single choice options or subscription addons.
499
        -->
500
        <script id="singlechoice" type='text/x-handlebars-template'>
501
            <div class="fsb-row">
502
                <div class="fsb-col-md-11 fsb-offset-md-1">
503
                    <div class="fsb-card fsb-mt-2 fsb-mb-3">
504
                        <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
505
                            {{display}}&nbsp;
506
                        </div>
507
                        <div class="fsb-card-body fsb-pb-0">
508
                            {{#each items}}
509
                                <div class="fsb-row fsb-mb-4">
510
                                    <div class="fsb-col-1">
511
                                        <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}}" >
512
                                    </div>
513
                                    <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">
514
                                        {{#if image}}
515
                                            <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="" />
516
                                        {{/if}}
517
                                    </div>
518
                                    <div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-text-md-left">
519
                                        <p class="fsb-display">{{display}}</p>
520
                                        {{#if description.summary}}
521
                                            {{{description.summary}}}
522
                                        {{/if}}
523
                                    </div>
524
                                    <div class="fsb-col-md-4 fsb-col-12 fsb-text-center fsb-mt-3">
525
                                        {{>pricing}}
526
                                        {{>quantity}}
527
                                    </div>
528
                                    <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">
529
                                        {{#if selected}}
530
                                            <p class="fsb-qtyPrice">
531
                                                {{#iff totalValue '>' '0'}}
532
                                                    {{total}}
533
                                                {{else}}
534
                                                    FREE
535
                                                {{/iff}}
536
                                            </p>
537
                                        {{else}}
538
                                                    ---
539
                                        {{/if}}
540
                                    </div>
541
                                </div>
542
                                <hr />
543
                            {{/each}}
544
                        </div>
545
                    </div>
546
                </div>
547
            </div>
548
        </script>
549
550
        <!--
551
            upsell handlebars partial
552
            This partial controls how upsells are displayed in the shopping cart.
553
        -->
554
        <script id="upsell" type='text/x-handlebars-template'>
555
            <div class="fsb-row">
556
                <div class="fsb-col-md-11 fsb-offset-md-1">
557
                    <div class="fsb-card fsb-mt-2 fsb-mb-3">
558
                        <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
559
                            {{display}}&nbsp;
560
                        </div>
561
                        <div class="fsb-card-body fsb-pb-0">
562
                            {{#each items}}
563
                                {{#iff selected '==' false}}
564
                                    <div class="fsb-row fsb-mb-4">
565
                                        <div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-3 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
566
                                            {{#if image}}
567
                                                <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="" />
568
                                            {{/if}}
569
                                        </div>
570
                                        <div class="fsb-col-lg-5 fsb-col-md-4 fsb-col-sm-9 fsb-col-12 fsb-text-center fsb-text-sm-left">
571
                                            <p class="fsb-display">{{display}}</p>
572
                                            {{#if description.summary}}
573
                                                {{{description.summary}}}
574
                                            {{/if}}
575
                                            <div class="fsb-d-md-none fsb-row">
576
                                                <div class=" fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-left">
577
                                                    {{>pricing}}
578
                                                    {{>volume-discount}}
579
                                                </div>
580
                                                <div class="fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-right">
581
                                                    <button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Upgrade Now</button>
582
                                                </div>
583
                                            </div>
584
                                        </div>
585
                                        <div class="fsb-col-lg-3 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
586
                                            {{>pricing}}
587
                                        </div>
588
                                        <div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-right">
589
                                            <button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Upgrade Now</button>
590
                                        </div>
591
                                    </div>
592
                                    <hr />
593
                                {{/iff}}
594
                            {{/each}}
595
                        </div>
596
                    </div>
597
                </div>
598
            </div>
599
        </script>
600
601
        <!--
602
            upsell handlebars partial
603
            This partial controls how cross sells are displayed in the shopping cart.
604
        -->
605
        <script id="xsell" type='text/x-handlebars-template'>
606
            <div class="fsb-row">
607
                <div class="fsb-col-md-11 fsb-offset-md-1">
608
                    <div class="fsb-card fsb-mt-2 fsb-mb-3">
609
                        <div class="fsb-card-header" style="background: #28a745; color: #ffffff;">
610
                            {{display}}&nbsp;
611
                        </div>
612
                        <div class="fsb-card-body fsb-pb-0">
613
                            {{#each items}}
614
                                {{#iff selected '==' false}}
615
                                    <div class="fsb-row fsb-mb-4">
616
                                        <div class="fsb-col-lg-1 fsb-col-md-1 fsb-col-3 fsb-offset-sm-0 fsb-text-center fsb-pr-0">
617
                                            {{#if image}}
618
                                                <img src="{{image}}" class="fsb-img-fluid fsb-ximage"  alt="" />
619
                                            {{/if}}
620
                                        </div>
621
                                        <div class="fsb-col-lg-5 fsb-col-md-4 fsb-col-sm-9 fsb-col-12 fsb-text-center fsb-text-sm-left">
622
                                            <p class="fsb-display">{{display}}</p>
623
                                            {{#if description.summary}}
624
                                                {{{description.summary}}}
625
                                            {{/if}}
626
                                            <div class="fsb-d-md-none fsb-row">
627
                                                <div class=" fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-left">
628
                                                    {{>pricing}}
629
                                                    {{>volume-discount}}
630
                                                </div>
631
                                                <div class="fsb-col-sm-6 fsb-col-12 fsb-text-center fsb-text-sm-right">
632
                                                    <button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
633
                                                </div>
634
                                            </div>
635
                                        </div>
636
                                        <div class="fsb-col-lg-3 fsb-col-md-3 fsb-d-none fsb-d-md-block fsb-text-center">
637
                                            {{>pricing}}
638
                                        </div>
639
                                        <div class="fsb-col-lg-3 fsb-col-md-4 fsb-d-none fsb-d-md-block fsb-text-right">
640
                                            <button type="button" class="fastspring_btn fastspring_btn-success" data-fsc-item-path-value="{{path}}" data-fsc-action="Add">Add to Order</button>
641
                                        </div>
642
                                    </div>
643
                                    <hr />
644
                                {{/iff}}
645
                            {{/each}}
646
                        </div>
647
                    </div>
648
                </div>
649
            </div>
650
        </script>
651
    </body>
652
</html>
1
4227
 
1
#fsb
2
{
3
    margin: 30px;
4
}
5
#fsb,
6
#fsb *,
7
#fsb ::after,
8
#fsb ::before
9
{
10
    -webkit-box-sizing: border-box;
11
    box-sizing: border-box;
12
}
13
14
body.fsb-modalOpen
15
{
16
    overflow: hidden;
17
}
18
19
#fastspring_spinner
20
{
21
    width: 100%;
22
    height: 100%;
23
    z-index: 99999998;
24
    background: rgba(0,0,0,0.4);
25
    position: fixed;
26
    top: 0;
27
    left: 0;
28
}
29
30
#fastspring_spinner img
31
{
32
    -webkit-animation-duration: .4s;
33
    animation-duration: .4s;
34
    -webkit-animation-delay: .4s;
35
    animation-delay: .4s;
36
    -webkit-animation-name: fsb-fadeIn;
37
    animation-name: fsb-fadeIn;
38
    position: fixed;
39
    top: 50%;
40
    margin-top: -50px;
41
    left: 50%;
42
    margin-left: -50px;
43
    z-index: 99999999;
44
}
45
46
.fsb-alert-danger
47
{
48
    color: #a94442;
49
    background-color: #f2dede;
50
    border-color: #ebccd1;
51
}
52
53
.fsb-alert
54
{
55
    display: none;
56
}
57
58
.fsb-alert,
59
.fsb-mod_alert
60
{
61
    -webkit-animation-duration: .4s;
62
    animation-duration: .4s;
63
    -webkit-animation-name: fsb-mod_animatetop;
64
    animation-name: fsb-mod_animatetop;
65
    padding: 15px;
66
    margin-bottom: 20px;
67
    border: 1px solid transparent;
68
    border-radius: 4px;
69
    z-index: 999999999;
70
}
71
72
.fsb-inline-item
73
{
74
    display: inline-block;
75
}
76
77
.fsb-img-fluid
78
{
79
    height: auto;
80
    max-width: 100%;
81
}
82
83
.fsb-container-fluid
84
{
85
    margin-left: auto;
86
    margin-right: auto;
87
    padding-left: 15px;
88
    padding-right: 15px;
89
    width: 100%;
90
}
91
92
.fsb-row
93
{
94
    display: -ms-flexbox;
95
    display: flex;
96
    -ms-flex-wrap: wrap;
97
    flex-wrap: wrap;
98
    margin-left: -15px;
99
    margin-right: -15px;
100
}
101
102
.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,
103
.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,
104
.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,
105
.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,
106
.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,
107
.fsb-col-xl-auto
108
{
109
    min-height: 1px;
110
    padding-left: 15px;
111
    padding-right: 15px;
112
    position: relative;
113
    width: 100%;
114
}
115
116
.fsb-col-1
117
{
118
    -ms-flex: 0 0 8.333333%;
119
    flex: 0 0 8.333333%;
120
    max-width: 8.333333%;
121
}
122
123
.fsb-col-2
124
{
125
    -ms-flex: 0 0 16.666667%;
126
    flex: 0 0 16.666667%;
127
    max-width: 16.666667%;
128
}
129
130
.fsb-col-3
131
{
132
    -ms-flex: 0 0 25%;
133
    flex: 0 0 25%;
134
    max-width: 25%;
135
}
136
137
.fsb-col-4
138
{
139
    -ms-flex: 0 0 33.333333%;
140
    flex: 0 0 33.333333%;
141
    max-width: 33.333333%;
142
}
143
144
.fsb-col-5
145
{
146
    -ms-flex: 0 0 41.666667%;
147
    flex: 0 0 41.666667%;
148
    max-width: 41.666667%;
149
}
150
151
.fsb-col-6
152
{
153
    -ms-flex: 0 0 50%;
154
    flex: 0 0 50%;
155
    max-width: 50%;
156
}
157
158
.fsb-col-7
159
{
160
    -ms-flex: 0 0 58.333333%;
161
    flex: 0 0 58.333333%;
162
    max-width: 58.333333%;
163
}
164
165
.fsb-col-8
166
{
167
    -ms-flex: 0 0 66.666667%;
168
    flex: 0 0 66.666667%;
169
    max-width: 66.666667%;
170
}
171
172
.fsb-col-9
173
{
174
    -ms-flex: 0 0 75%;
175
    flex: 0 0 75%;
176
    max-width: 75%;
177
}
178
179
.fsb-col-10
180
{
181
    -ms-flex: 0 0 83.333333%;
182
    flex: 0 0 83.333333%;
183
    max-width: 83.333333%;
184
}
185
186
.fsb-col-11
187
{
188
    -ms-flex: 0 0 91.666667%;
189
    flex: 0 0 91.666667%;
190
    max-width: 91.666667%;
191
}
192
193
.fsb-col-12
194
{
195
    -ms-flex: 0 0 100%;
196
    flex: 0 0 100%;
197
    max-width: 100%;
198
}
199
200
.fsb-order-first
201
{
202
    -ms-flex-order: -1;
203
    order: -1;
204
}
205
206
.fsb-order-last
207
{
208
    -ms-flex-order: 13;
209
    order: 13;
210
}
211
212
.fsb-order-0
213
{
214
    -ms-flex-order: 0;
215
    order: 0;
216
}
217
218
.fsb-order-1
219
{
220
    -ms-flex-order: 1;
221
    order: 1;
222
}
223
224
.fsb-order-2
225
{
226
    -ms-flex-order: 2;
227
    order: 2;
228
}
229
230
.fsb-order-3
231
{
232
    -ms-flex-order: 3;
233
    order: 3;
234
}
235
236
.fsb-order-4
237
{
238
    -ms-flex-order: 4;
239
    order: 4;
240
}
241
242
.fsb-order-5
243
{
244
    -ms-flex-order: 5;
245
    order: 5;
246
}
247
248
.fsb-order-6
249
{
250
    -ms-flex-order: 6;
251
    order: 6;
252
}
253
254
.fsb-order-7
255
{
256
    -ms-flex-order: 7;
257
    order: 7;
258
}
259
260
.fsb-order-8
261
{
262
    -ms-flex-order: 8;
263
    order: 8;
264
}
265
266
.fsb-order-9
267
{
268
    -ms-flex-order: 9;
269
    order: 9;
270
}
271
272
.fsb-order-10
273
{
274
    -ms-flex-order: 10;
275
    order: 10;
276
}
277
278
.fsb-order-11
279
{
280
    -ms-flex-order: 11;
281
    order: 11;
282
}
283
284
.fsb-order-12
285
{
286
    -ms-flex-order: 12;
287
    order: 12;
288
}
289
290
.fsb-offset-1
291
{
292
    margin-left: 8.333333%;
293
}
294
295
.fsb-offset-2
296
{
297
    margin-left: 16.666667%;
298
}
299
300
.fsb-offset-3
301
{
302
    margin-left: 25%;
303
}
304
305
.fsb-offset-4
306
{
307
    margin-left: 33.333333%;
308
}
309
310
.fsb-offset-5
311
{
312
    margin-left: 41.666667%;
313
}
314
315
.fsb-offset-6
316
{
317
    margin-left: 50%;
318
}
319
320
.fsb-offset-7
321
{
322
    margin-left: 58.333333%;
323
}
324
325
.fsb-offset-8
326
{
327
    margin-left: 66.666667%;
328
}
329
330
.fsb-offset-9
331
{
332
    margin-left: 75%;
333
}
334
335
.fsb-offset-10
336
{
337
    margin-left: 83.333333%;
338
}
339
340
.fsb-offset-11
341
{
342
    margin-left: 91.666667%;
343
}
344
345
@media (min-width: 576px)
346
{
347
    .fsb-col-sm
348
    {
349
        -ms-flex-preferred-size: 0;
350
        flex-basis: 0;
351
        -ms-flex-positive: 1;
352
        flex-grow: 1;
353
        max-width: 100%;
354
    }
355
    .fsb-col-sm-auto
356
    {
357
        -ms-flex: 0 0 auto;
358
        flex: 0 0 auto;
359
        width: auto;
360
        max-width: 100%;
361
    }
362
    .fsb-col-sm-1
363
    {
364
        -ms-flex: 0 0 8.333333%;
365
        flex: 0 0 8.333333%;
366
        max-width: 8.333333%;
367
    }
368
    .fsb-col-sm-2
369
    {
370
        -ms-flex: 0 0 16.666667%;
371
        flex: 0 0 16.666667%;
372
        max-width: 16.666667%;
373
    }
374
    .fsb-col-sm-3
375
    {
376
        -ms-flex: 0 0 25%;
377
        flex: 0 0 25%;
378
        max-width: 25%;
379
    }
380
    .fsb-col-sm-4
381
    {
382
        -ms-flex: 0 0 33.333333%;
383
        flex: 0 0 33.333333%;
384
        max-width: 33.333333%;
385
    }
386
    .fsb-col-sm-5
387
    {
388
        -ms-flex: 0 0 41.666667%;
389
        flex: 0 0 41.666667%;
390
        max-width: 41.666667%;
391
    }
392
    .fsb-col-sm-6
393
    {
394
        -ms-flex: 0 0 50%;
395
        flex: 0 0 50%;
396
        max-width: 50%;
397
    }
398
    .fsb-col-sm-7
399
    {
400
        -ms-flex: 0 0 58.333333%;
401
        flex: 0 0 58.333333%;
402
        max-width: 58.333333%;
403
    }
404
    .fsb-col-sm-8
405
    {
406
        -ms-flex: 0 0 66.666667%;
407
        flex: 0 0 66.666667%;
408
        max-width: 66.666667%;
409
    }
410
    .fsb-col-sm-9
411
    {
412
        -ms-flex: 0 0 75%;
413
        flex: 0 0 75%;
414
        max-width: 75%;
415
    }
416
    .fsb-col-sm-10
417
    {
418
        -ms-flex: 0 0 83.333333%;
419
        flex: 0 0 83.333333%;
420
        max-width: 83.333333%;
421
    }
422
    .fsb-col-sm-11
423
    {
424
        -ms-flex: 0 0 91.666667%;
425
        flex: 0 0 91.666667%;
426
        max-width: 91.666667%;
427
    }
428
    .fsb-col-sm-12
429
    {
430
        -ms-flex: 0 0 100%;
431
        flex: 0 0 100%;
432
        max-width: 100%;
433
    }
434
    .fsb-order-sm-first
435
    {
436
        -ms-flex-order: -1;
437
        order: -1;
438
    }
439
    .fsb-order-sm-last
440
    {
441
        -ms-flex-order: 13;
442
        order: 13;
443
    }
444
    .fsb-order-sm-0
445
    {
446
        -ms-flex-order: 0;
447
        order: 0;
448
    }
449
    .fsb-order-sm-1
450
    {
451
        -ms-flex-order: 1;
452
        order: 1;
453
    }
454
    .fsb-order-sm-2
455
    {
456
        -ms-flex-order: 2;
457
        order: 2;
458
    }
459
    .fsb-order-sm-3
460
    {
461
        -ms-flex-order: 3;
462
        order: 3;
463
    }
464
    .fsb-order-sm-4
465
    {
466
        -ms-flex-order: 4;
467
        order: 4;
468
    }
469
    .fsb-order-sm-5
470
    {
471
        -ms-flex-order: 5;
472
        order: 5;
473
    }
474
    .fsb-order-sm-6
475
    {
476
        -ms-flex-order: 6;
477
        order: 6;
478
    }
479
    .fsb-order-sm-7
480
    {
481
        -ms-flex-order: 7;
482
        order: 7;
483
    }
484
    .fsb-order-sm-8
485
    {
486
        -ms-flex-order: 8;
487
        order: 8;
488
    }
489
    .fsb-order-sm-9
490
    {
491
        -ms-flex-order: 9;
492
        order: 9;
493
    }
494
    .fsb-order-sm-10
495
    {
496
        -ms-flex-order: 10;
497
        order: 10;
498
    }
499
    .fsb-order-sm-11
500
    {
501
        -ms-flex-order: 11;
502
        order: 11;
503
    }
504
    .fsb-order-sm-12
505
    {
506
        -ms-flex-order: 12;
507
        order: 12;
508
    }
509
    .fsb-offset-sm-0
510
    {
511
        margin-left: 0;
512
    }
513
    .fsb-offset-sm-1
514
    {
515
        margin-left: 8.333333%;
516
    }
517
    .fsb-offset-sm-2
518
    {
519
        margin-left: 16.666667%;
520
    }
521
    .fsb-offset-sm-3
522
    {
523
        margin-left: 25%;
524
    }
525
    .fsb-offset-sm-4
526
    {
527
        margin-left: 33.333333%;
528
    }
529
    .fsb-offset-sm-5
530
    {
531
        margin-left: 41.666667%;
532
    }
533
    .fsb-offset-sm-6
534
    {
535
        margin-left: 50%;
536
    }
537
    .fsb-offset-sm-7
538
    {
539
        margin-left: 58.333333%;
540
    }
541
    .fsb-offset-sm-8
542
    {
543
        margin-left: 66.666667%;
544
    }
545
    .fsb-offset-sm-9
546
    {
547
        margin-left: 75%;
548
    }
549
    .fsb-offset-sm-10
550
    {
551
        margin-left: 83.333333%;
552
    }
553
    .fsb-offset-sm-11
554
    {
555
        margin-left: 91.666667%;
556
    }
557
}
558
559
@media (min-width: 768px)
560
{
561
    .fsb-col-md
562
    {
563
        -ms-flex-preferred-size: 0;
564
        flex-basis: 0;
565
        -ms-flex-positive: 1;
566
        flex-grow: 1;
567
        max-width: 100%;
568
    }
569
    .fsb-col-md-auto
570
    {
571
        -ms-flex: 0 0 auto;
572
        flex: 0 0 auto;
573
        width: auto;
574
        max-width: 100%;
575
    }
576
    .fsb-col-md-1
577
    {
578
        -ms-flex: 0 0 8.333333%;
579
        flex: 0 0 8.333333%;
580
        max-width: 8.333333%;
581
    }
582
    .fsb-col-md-2
583
    {
584
        -ms-flex: 0 0 16.666667%;
585
        flex: 0 0 16.666667%;
586
        max-width: 16.666667%;
587
    }
588
    .fsb-col-md-3
589
    {
590
        -ms-flex: 0 0 25%;
591
        flex: 0 0 25%;
592
        max-width: 25%;
593
    }
594
    .fsb-col-md-4
595
    {
596
        -ms-flex: 0 0 33.333333%;
597
        flex: 0 0 33.333333%;
598
        max-width: 33.333333%;
599
    }
600
    .fsb-col-md-5
601
    {
602
        -ms-flex: 0 0 41.666667%;
603
        flex: 0 0 41.666667%;
604
        max-width: 41.666667%;
605
    }
606
    .fsb-col-md-6
607
    {
608
        -ms-flex: 0 0 50%;
609
        flex: 0 0 50%;
610
        max-width: 50%;
611
    }
612
    .fsb-col-md-7
613
    {
614
        -ms-flex: 0 0 58.333333%;
615
        flex: 0 0 58.333333%;
616
        max-width: 58.333333%;
617
    }
618
    .fsb-col-md-8
619
    {
620
        -ms-flex: 0 0 66.666667%;
621
        flex: 0 0 66.666667%;
622
        max-width: 66.666667%;
623
    }
624
    .fsb-col-md-9
625
    {
626
        -ms-flex: 0 0 75%;
627
        flex: 0 0 75%;
628
        max-width: 75%;
629
    }
630
    .fsb-col-md-10
631
    {
632
        -ms-flex: 0 0 83.333333%;
633
        flex: 0 0 83.333333%;
634
        max-width: 83.333333%;
635
    }
636
    .fsb-col-md-11
637
    {
638
        -ms-flex: 0 0 91.666667%;
639
        flex: 0 0 91.666667%;
640
        max-width: 91.666667%;
641
    }
642
    .fsb-col-md-12
643
    {
644
        -ms-flex: 0 0 100%;
645
        flex: 0 0 100%;
646
        max-width: 100%;
647
    }
648
    .fsb-order-md-first
649
    {
650
        -ms-flex-order: -1;
651
        order: -1;
652
    }
653
    .fsb-order-md-last
654
    {
655
        -ms-flex-order: 13;
656
        order: 13;
657
    }
658
    .fsb-order-md-0
659
    {
660
        -ms-flex-order: 0;
661
        order: 0;
662
    }
663
    .fsb-order-md-1
664
    {
665
        -ms-flex-order: 1;
666
        order: 1;
667
    }
668
    .fsb-order-md-2
669
    {
670
        -ms-flex-order: 2;
671
        order: 2;
672
    }
673
    .fsb-order-md-3
674
    {
675
        -ms-flex-order: 3;
676
        order: 3;
677
    }
678
    .fsb-order-md-4
679
    {
680
        -ms-flex-order: 4;
681
        order: 4;
682
    }
683
    .fsb-order-md-5
684
    {
685
        -ms-flex-order: 5;
686
        order: 5;
687
    }
688
    .fsb-order-md-6
689
    {
690
        -ms-flex-order: 6;
691
        order: 6;
692
    }
693
    .fsb-order-md-7
694
    {
695
        -ms-flex-order: 7;
696
        order: 7;
697
    }
698
    .fsb-order-md-8
699
    {
700
        -ms-flex-order: 8;
701
        order: 8;
702
    }
703
    .fsb-order-md-9
704
    {
705
        -ms-flex-order: 9;
706
        order: 9;
707
    }
708
    .fsb-order-md-10
709
    {
710
        -ms-flex-order: 10;
711
        order: 10;
712
    }
713
    .fsb-order-md-11
714
    {
715
        -ms-flex-order: 11;
716
        order: 11;
717
    }
718
    .fsb-order-md-12
719
    {
720
        -ms-flex-order: 12;
721
        order: 12;
722
    }
723
    .fsb-offset-md-0
724
    {
725
        margin-left: 0;
726
    }
727
    .fsb-offset-md-1
728
    {
729
        margin-left: 8.333333%;
730
    }
731
    .fsb-offset-md-2
732
    {
733
        margin-left: 16.666667%;
734
    }
735
    .fsb-offset-md-3
736
    {
737
        margin-left: 25%;
738
    }
739
    .fsb-offset-md-4
740
    {
741
        margin-left: 33.333333%;
742
    }
743
    .fsb-offset-md-5
744
    {
745
        margin-left: 41.666667%;
746
    }
747
    .fsb-offset-md-6
748
    {
749
        margin-left: 50%;
750
    }
751
    .fsb-offset-md-7
752
    {
753
        margin-left: 58.333333%;
754
    }
755
    .fsb-offset-md-8
756
    {
757
        margin-left: 66.666667%;
758
    }
759
    .fsb-offset-md-9
760
    {
761
        margin-left: 75%;
762
    }
763
    .fsb-offset-md-10
764
    {
765
        margin-left: 83.333333%;
766
    }
767
    .fsb-offset-md-11
768
    {
769
        margin-left: 91.666667%;
770
    }
771
}
772
773
@media (min-width: 992px)
774
{
775
    .fsb-col-lg
776
    {
777
        -ms-flex-preferred-size: 0;
778
        flex-basis: 0;
779
        -ms-flex-positive: 1;
780
        flex-grow: 1;
781
        max-width: 100%;
782
    }
783
    .fsb-col-lg-auto
784
    {
785
        -ms-flex: 0 0 auto;
786
        flex: 0 0 auto;
787
        width: auto;
788
        max-width: 100%;
789
    }
790
    .fsb-col-lg-1
791
    {
792
        -ms-flex: 0 0 8.333333%;
793
        flex: 0 0 8.333333%;
794
        max-width: 8.333333%;
795
    }
796
    .fsb-col-lg-2
797
    {
798
        -ms-flex: 0 0 16.666667%;
799
        flex: 0 0 16.666667%;
800
        max-width: 16.666667%;
801
    }
802
    .fsb-col-lg-3
803
    {
804
        -ms-flex: 0 0 25%;
805
        flex: 0 0 25%;
806
        max-width: 25%;
807
    }
808
    .fsb-col-lg-4
809
    {
810
        -ms-flex: 0 0 33.333333%;
811
        flex: 0 0 33.333333%;
812
        max-width: 33.333333%;
813
    }
814
    .fsb-col-lg-5
815
    {
816
        -ms-flex: 0 0 41.666667%;
817
        flex: 0 0 41.666667%;
818
        max-width: 41.666667%;
819
    }
820
    .fsb-col-lg-6
821
    {
822
        -ms-flex: 0 0 50%;
823
        flex: 0 0 50%;
824
        max-width: 50%;
825
    }
826
    .fsb-col-lg-7
827
    {
828
        -ms-flex: 0 0 58.333333%;
829
        flex: 0 0 58.333333%;
830
        max-width: 58.333333%;
831
    }
832
    .fsb-col-lg-8
833
    {
834
        -ms-flex: 0 0 66.666667%;
835
        flex: 0 0 66.666667%;
836
        max-width: 66.666667%;
837
    }
838
    .fsb-col-lg-9
839
    {
840
        -ms-flex: 0 0 75%;
841
        flex: 0 0 75%;
842
        max-width: 75%;
843
    }
844
    .fsb-col-lg-10
845
    {
846
        -ms-flex: 0 0 83.333333%;
847
        flex: 0 0 83.333333%;
848
        max-width: 83.333333%;
849
    }
850
    .fsb-col-lg-11
851
    {
852
        -ms-flex: 0 0 91.666667%;
853
        flex: 0 0 91.666667%;
854
        max-width: 91.666667%;
855
    }
856
    .fsb-col-lg-12
857
    {
858
        -ms-flex: 0 0 100%;
859
        flex: 0 0 100%;
860
        max-width: 100%;
861
    }
862
    .fsb-order-lg-first
863
    {
864
        -ms-flex-order: -1;
865
        order: -1;
866
    }
867
    .fsb-order-lg-last
868
    {
869
        -ms-flex-order: 13;
870
        order: 13;
871
    }
872
    .fsb-order-lg-0
873
    {
874
        -ms-flex-order: 0;
875
        order: 0;
876
    }
877
    .fsb-order-lg-1
878
    {
879
        -ms-flex-order: 1;
880
        order: 1;
881
    }
882
    .fsb-order-lg-2
883
    {
884
        -ms-flex-order: 2;
885
        order: 2;
886
    }
887
    .fsb-order-lg-3
888
    {
889
        -ms-flex-order: 3;
890
        order: 3;
891
    }
892
    .fsb-order-lg-4
893
    {
894
        -ms-flex-order: 4;
895
        order: 4;
896
    }
897
    .fsb-order-lg-5
898
    {
899
        -ms-flex-order: 5;
900
        order: 5;
901
    }
902
    .fsb-order-lg-6
903
    {
904
        -ms-flex-order: 6;
905
        order: 6;
906
    }
907
    .fsb-order-lg-7
908
    {
909
        -ms-flex-order: 7;
910
        order: 7;
911
    }
912
    .fsb-order-lg-8
913
    {
914
        -ms-flex-order: 8;
915
        order: 8;
916
    }
917
    .fsb-order-lg-9
918
    {
919
        -ms-flex-order: 9;
920
        order: 9;
921
    }
922
    .fsb-order-lg-10
923
    {
924
        -ms-flex-order: 10;
925
        order: 10;
926
    }
927
    .fsb-order-lg-11
928
    {
929
        -ms-flex-order: 11;
930
        order: 11;
931
    }
932
    .fsb-order-lg-12
933
    {
934
        -ms-flex-order: 12;
935
        order: 12;
936
    }
937
    .fsb-offset-lg-0
938
    {
939
        margin-left: 0;
940
    }
941
    .fsb-offset-lg-1
942
    {
943
        margin-left: 8.333333%;
944
    }
945
    .fsb-offset-lg-2
946
    {
947
        margin-left: 16.666667%;
948
    }
949
    .fsb-offset-lg-3
950
    {
951
        margin-left: 25%;
952
    }
953
    .fsb-offset-lg-4
954
    {
955
        margin-left: 33.333333%;
956
    }
957
    .fsb-offset-lg-5
958
    {
959
        margin-left: 41.666667%;
960
    }
961
    .fsb-offset-lg-6
962
    {
963
        margin-left: 50%;
964
    }
965
    .fsb-offset-lg-7
966
    {
967
        margin-left: 58.333333%;
968
    }
969
    .fsb-offset-lg-8
970
    {
971
        margin-left: 66.666667%;
972
    }
973
    .fsb-offset-lg-9
974
    {
975
        margin-left: 75%;
976
    }
977
    .fsb-offset-lg-10
978
    {
979
        margin-left: 83.333333%;
980
    }
981
    .fsb-offset-lg-11
982
    {
983
        margin-left: 91.666667%;
984
    }
985
}
986
987
@media (min-width: 1200px)
988
{
989
    .fsb-col-xl
990
    {
991
        -ms-flex-preferred-size: 0;
992
        flex-basis: 0;
993
        -ms-flex-positive: 1;
994
        flex-grow: 1;
995
        max-width: 100%;
996
    }
997
    .fsb-col-xl-auto
998
    {
999
        -ms-flex: 0 0 auto;
1000
        flex: 0 0 auto;
1001
        width: auto;
1002
        max-width: 100%;
1003
    }
1004
    .fsb-col-xl-1
1005
    {
1006
        -ms-flex: 0 0 8.333333%;
1007
        flex: 0 0 8.333333%;
1008
        max-width: 8.333333%;
1009
    }
1010
    .fsb-col-xl-2
1011
    {
1012
        -ms-flex: 0 0 16.666667%;
1013
        flex: 0 0 16.666667%;
1014
        max-width: 16.666667%;
1015
    }
1016
    .fsb-col-xl-3
1017
    {
1018
        -ms-flex: 0 0 25%;
1019
        flex: 0 0 25%;
1020
        max-width: 25%;
1021
    }
1022
    .fsb-col-xl-4
1023
    {
1024
        -ms-flex: 0 0 33.333333%;
1025
        flex: 0 0 33.333333%;
1026
        max-width: 33.333333%;
1027
    }
1028
    .fsb-col-xl-5
1029
    {
1030
        -ms-flex: 0 0 41.666667%;
1031
        flex: 0 0 41.666667%;
1032
        max-width: 41.666667%;
1033
    }
1034
    .fsb-col-xl-6
1035
    {
1036
        -ms-flex: 0 0 50%;
1037
        flex: 0 0 50%;
1038
        max-width: 50%;
1039
    }
1040
    .fsb-col-xl-7
1041
    {
1042
        -ms-flex: 0 0 58.333333%;
1043
        flex: 0 0 58.333333%;
1044
        max-width: 58.333333%;
1045
    }
1046
    .fsb-col-xl-8
1047
    {
1048
        -ms-flex: 0 0 66.666667%;
1049
        flex: 0 0 66.666667%;
1050
        max-width: 66.666667%;
1051
    }
1052
    .fsb-col-xl-9
1053
    {
1054
        -ms-flex: 0 0 75%;
1055
        flex: 0 0 75%;
1056
        max-width: 75%;
1057
    }
1058
    .fsb-col-xl-10
1059
    {
1060
        -ms-flex: 0 0 83.333333%;
1061
        flex: 0 0 83.333333%;
1062
        max-width: 83.333333%;
1063
    }
1064
    .fsb-col-xl-11
1065
    {
1066
        -ms-flex: 0 0 91.666667%;
1067
        flex: 0 0 91.666667%;
1068
        max-width: 91.666667%;
1069
    }
1070
    .fsb-col-xl-12
1071
    {
1072
        -ms-flex: 0 0 100%;
1073
        flex: 0 0 100%;
1074
        max-width: 100%;
1075
    }
1076
    .fsb-order-xl-first
1077
    {
1078
        -ms-flex-order: -1;
1079
        order: -1;
1080
    }
1081
    .fsb-order-xl-last
1082
    {
1083
        -ms-flex-order: 13;
1084
        order: 13;
1085
    }
1086
    .fsb-order-xl-0
1087
    {
1088
        -ms-flex-order: 0;
1089
        order: 0;
1090
    }
1091
    .fsb-order-xl-1
1092
    {
1093
        -ms-flex-order: 1;
1094
        order: 1;
1095
    }
1096
    .fsb-order-xl-2
1097
    {
1098
        -ms-flex-order: 2;
1099
        order: 2;
1100
    }
1101
    .fsb-order-xl-3
1102
    {
1103
        -ms-flex-order: 3;
1104
        order: 3;
1105
    }
1106
    .fsb-order-xl-4
1107
    {
1108
        -ms-flex-order: 4;
1109
        order: 4;
1110
    }
1111
    .fsb-order-xl-5
1112
    {
1113
        -ms-flex-order: 5;
1114
        order: 5;
1115
    }
1116
    .fsb-order-xl-6
1117
    {
1118
        -ms-flex-order: 6;
1119
        order: 6;
1120
    }
1121
    .fsb-order-xl-7
1122
    {
1123
        -ms-flex-order: 7;
1124
        order: 7;
1125
    }
1126
    .fsb-order-xl-8
1127
    {
1128
        -ms-flex-order: 8;
1129
        order: 8;
1130
    }
1131
    .fsb-order-xl-9
1132
    {
1133
        -ms-flex-order: 9;
1134
        order: 9;
1135
    }
1136
    .fsb-order-xl-10
1137
    {
1138
        -ms-flex-order: 10;
1139
        order: 10;
1140
    }
1141
    .fsb-order-xl-11
1142
    {
1143
        -ms-flex-order: 11;
1144
        order: 11;
1145
    }
1146
    .fsb-order-xl-12
1147
    {
1148
        -ms-flex-order: 12;
1149
        order: 12;
1150
    }
1151
    .fsb-offset-xl-0
1152
    {
1153
        margin-left: 0;
1154
    }
1155
    .fsb-offset-xl-1
1156
    {
1157
        margin-left: 8.333333%;
1158
    }
1159
    .fsb-offset-xl-2
1160
    {
1161
        margin-left: 16.666667%;
1162
    }
1163
    .fsb-offset-xl-3
1164
    {
1165
        margin-left: 25%;
1166
    }
1167
    .fsb-offset-xl-4
1168
    {
1169
        margin-left: 33.333333%;
1170
    }
1171
    .fsb-offset-xl-5
1172
    {
1173
        margin-left: 41.666667%;
1174
    }
1175
    .fsb-offset-xl-6
1176
    {
1177
        margin-left: 50%;
1178
    }
1179
    .fsb-offset-xl-7
1180
    {
1181
        margin-left: 58.333333%;
1182
    }
1183
    .fsb-offset-xl-8
1184
    {
1185
        margin-left: 66.666667%;
1186
    }
1187
    .fsb-offset-xl-9
1188
    {
1189
        margin-left: 75%;
1190
    }
1191
    .fsb-offset-xl-10
1192
    {
1193
        margin-left: 83.333333%;
1194
    }
1195
    .fsb-offset-xl-11
1196
    {
1197
        margin-left: 91.666667%;
1198
    }
1199
}
1200
1201
.fsb-form-control
1202
{
1203
    background-clip: padding-box;
1204
    font-size: 1rem;
1205
    line-height: 1.5;
1206
    padding: .375rem .75rem;
1207
    -webkit-transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1208
    transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1209
    -o-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
1210
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
1211
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1212
    width: 100%;
1213
    height: 34px;
1214
    border: 1px solid #ddd;
1215
    border-radius: 4px;
1216
    display: inline-block;
1217
    vertical-align: middle;
1218
}
1219
1220
.fsb-form-control::-ms-expand
1221
{
1222
    background-color: transparent;
1223
    border: 0;
1224
}
1225
1226
.fsb-form-control:focus
1227
{
1228
    border-color: #80bdff;
1229
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1230
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1231
    outline: 0;
1232
}
1233
1234
select.fsb-form-control:not([size])
1235
:not([multiple])
1236
{
1237
    height: calc(2.25rem + 2px);
1238
}
1239
1240
.fsb-btn
1241
{
1242
    border: 1px solid transparent;
1243
    border-radius: .25rem;
1244
    display: inline-block;
1245
    font-size: 1rem;
1246
    font-weight: 400;
1247
    line-height: 1.5;
1248
    padding: .375rem .75rem;
1249
    text-align: center;
1250
    -webkit-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1251
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1252
    -o-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
1253
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
1254
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
1255
    -webkit-user-select: none;
1256
    -moz-user-select: none;
1257
    -ms-user-select: none;
1258
    user-select: none;
1259
    vertical-align: middle;
1260
    /*white-space: nowrap;*/
1261
    text-decoration: none;
1262
    text-transform: none;
1263
    margin-bottom: 0px;
1264
}
1265
1266
.fsb-btn:focus,
1267
.fsb-btn:hover
1268
{
1269
    text-decoration: none;
1270
}
1271
1272
.fsb-btn:focus
1273
{
1274
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1275
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1276
    outline: 0;
1277
}
1278
1279
.fsb-btn:disabled
1280
{
1281
    opacity: .65;
1282
}
1283
1284
.fsb-btn:not(:disabled)
1285
:not(.disabled)
1286
{
1287
    cursor: pointer;
1288
}
1289
1290
.fsb-btn-success
1291
{
1292
    background-color: #28a745;
1293
    border-color: #28a745;
1294
    color: #fff;
1295
}
1296
1297
.fsb-btn-success:hover
1298
{
1299
    background-color: #218838;
1300
    border-color: #1e7e34;
1301
    color: #fff;
1302
}
1303
1304
.fsb-btn-success:focus
1305
{
1306
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1307
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1308
}
1309
1310
.fsb-btn-success:disabled
1311
{
1312
    background-color: #28a745;
1313
    border-color: #28a745;
1314
    color: #fff;
1315
}
1316
1317
.fsb-btn-block
1318
{
1319
    display: block;
1320
    width: 100%;
1321
}
1322
1323
.fssmall
1324
{
1325
    font-size: 10px;
1326
    font-style: italic;
1327
    margin-bottom: 10px;
1328
}
1329
1330
.editor-styles-wrapper i
1331
{
1332
    font-style: normal !important;
1333
}
1334
1335
.fsb-btn:active
1336
{
1337
    color: white;
1338
}
1339
1340
.fsb-btn-align-center
1341
{
1342
    text-align: center;
1343
}
1344
1345
.fsb-btn-align-left
1346
{
1347
    text-align: left;
1348
}
1349
1350
.fsb-btn-align-right
1351
{
1352
    text-align: right;
1353
}
1354
1355
.fsb-btn
1356
{
1357
    display: inline-block;
1358
    font-weight: 400;
1359
    color: #212529;
1360
    text-align: center;
1361
    vertical-align: middle;
1362
    -webkit-user-select: none;
1363
    -moz-user-select: none;
1364
    -ms-user-select: none;
1365
    user-select: none;
1366
    background-color: transparent;
1367
    border: 1px solid transparent;
1368
    padding: 0.375rem 0.75rem;
1369
    font-size: 1rem;
1370
    line-height: 1.5;
1371
    border-radius: 0.25rem;
1372
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
1373
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
1374
    -o-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;
1375
    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;
1376
    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, -webkit-box-shadow 0.15s ease-in-out;
1377
    color: white;
1378
}
1379
1380
@media (prefers-reduced-motion: reduce)
1381
{
1382
    .fsb-btn
1383
    {
1384
        -webkit-transition: none;
1385
        -o-transition: none;
1386
        transition: none;
1387
    }
1388
}
1389
1390
.fsb-btn:hover
1391
{
1392
    color: #212529;
1393
    text-decoration: none;
1394
}
1395
1396
.fsb-btn:focus, .fsb-btn.focus
1397
{
1398
    outline: 0;
1399
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1400
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
1401
}
1402
1403
.fsb-btn.disabled, .fsb-btn:disabled
1404
{
1405
    opacity: 0.65;
1406
}
1407
1408
a.fsb-btn.disabled,
1409
fieldset:disabled a.fsb-btn
1410
{
1411
    pointer-events: none;
1412
}
1413
1414
.fsb-btn-primary
1415
{
1416
    color: #fff;
1417
    background-color: #007bff;
1418
    border-color: #007bff;
1419
}
1420
1421
.fsb-btn-primary:hover
1422
{
1423
    color: #fff;
1424
    background-color: #0069d9;
1425
    border-color: #0062cc;
1426
}
1427
1428
.fsb-btn-primary:focus, .fsb-btn-primary.focus
1429
{
1430
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
1431
    box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
1432
}
1433
1434
.fsb-btn-primary.disabled, .fsb-btn-primary:disabled
1435
{
1436
    color: #fff;
1437
    background-color: #007bff;
1438
    border-color: #007bff;
1439
}
1440
1441
.fsb-btn-primary:not(:disabled)
1442
:not(.disabled):active, .fsb-btn-primary:not(:disabled)
1443
:not(.disabled).active,
1444
.show > .fsb-btn-primary.dropdown-toggle
1445
{
1446
    color: #fff;
1447
    background-color: #0062cc;
1448
    border-color: #005cbf;
1449
}
1450
1451
.fsb-btn-primary:not(:disabled)
1452
:not(.disabled):active:focus, .fsb-btn-primary:not(:disabled)
1453
:not(.disabled).active:focus,
1454
.show > .fsb-btn-primary.dropdown-toggle:focus
1455
{
1456
    -webkit-box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
1457
    box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
1458
}
1459
1460
.fsb-btn-secondary
1461
{
1462
    color: #fff;
1463
    background-color: #6c757d;
1464
    border-color: #6c757d;
1465
}
1466
1467
.fsb-btn-secondary:hover
1468
{
1469
    color: #fff;
1470
    background-color: #5a6268;
1471
    border-color: #545b62;
1472
}
1473
1474
.fsb-btn-secondary:focus, .fsb-btn-secondary.focus
1475
{
1476
    -webkit-box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
1477
    box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
1478
}
1479
1480
.fsb-btn-secondary.disabled, .fsb-btn-secondary:disabled
1481
{
1482
    color: #fff;
1483
    background-color: #6c757d;
1484
    border-color: #6c757d;
1485
}
1486
1487
.fsb-btn-secondary:not(:disabled)
1488
:not(.disabled):active, .fsb-btn-secondary:not(:disabled)
1489
:not(.disabled).active,
1490
.show > .fsb-btn-secondary.dropdown-toggle
1491
{
1492
    color: #fff;
1493
    background-color: #545b62;
1494
    border-color: #4e555b;
1495
}
1496
1497
.fsb-btn-secondary:not(:disabled)
1498
:not(.disabled):active:focus, .fsb-btn-secondary:not(:disabled)
1499
:not(.disabled).active:focus,
1500
.show > .fsb-btn-secondary.dropdown-toggle:focus
1501
{
1502
    -webkit-box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
1503
    box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
1504
}
1505
1506
.fsb-btn-success
1507
{
1508
    color: #fff;
1509
    background-color: #28a745;
1510
    border-color: #28a745;
1511
}
1512
1513
.fsb-btn-success:hover
1514
{
1515
    color: #fff;
1516
    background-color: #218838;
1517
    border-color: #1e7e34;
1518
}
1519
1520
.fsb-btn-success:focus, .fsb-btn-success.focus
1521
{
1522
    -webkit-box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
1523
    box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
1524
}
1525
1526
.fsb-btn-success.disabled, .fsb-btn-success:disabled
1527
{
1528
    color: #fff;
1529
    background-color: #28a745;
1530
    border-color: #28a745;
1531
}
1532
1533
.fsb-btn-success:not(:disabled)
1534
:not(.disabled):active, .fsb-btn-success:not(:disabled)
1535
:not(.disabled).active,
1536
.show > .fsb-btn-success.dropdown-toggle
1537
{
1538
    color: #fff;
1539
    background-color: #1e7e34;
1540
    border-color: #1c7430;
1541
}
1542
1543
.fsb-btn-success:not(:disabled)
1544
:not(.disabled):active:focus, .fsb-btn-success:not(:disabled)
1545
:not(.disabled).active:focus,
1546
.show > .fsb-btn-success.dropdown-toggle:focus
1547
{
1548
    -webkit-box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
1549
    box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
1550
}
1551
1552
.fsb-btn-info
1553
{
1554
    color: #fff;
1555
    background-color: #17a2b8;
1556
    border-color: #17a2b8;
1557
}
1558
1559
.fsb-btn-info:hover
1560
{
1561
    color: #fff;
1562
    background-color: #138496;
1563
    border-color: #117a8b;
1564
}
1565
1566
.fsb-btn-info:focus, .fsb-btn-info.focus
1567
{
1568
    -webkit-box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1569
    box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1570
}
1571
1572
.fsb-btn-info.disabled, .fsb-btn-info:disabled
1573
{
1574
    color: #fff;
1575
    background-color: #17a2b8;
1576
    border-color: #17a2b8;
1577
}
1578
1579
.fsb-btn-info:not(:disabled)
1580
:not(.disabled):active, .fsb-btn-info:not(:disabled)
1581
:not(.disabled).active,
1582
.show > .fsb-btn-info.dropdown-toggle
1583
{
1584
    color: #fff;
1585
    background-color: #117a8b;
1586
    border-color: #10707f;
1587
}
1588
1589
.fsb-btn-info:not(:disabled)
1590
:not(.disabled):active:focus, .fsb-btn-info:not(:disabled)
1591
:not(.disabled).active:focus,
1592
.show > .fsb-btn-info.dropdown-toggle:focus
1593
{
1594
    -webkit-box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1595
    box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
1596
}
1597
1598
.fsb-btn-warning
1599
{
1600
    color: #212529;
1601
    background-color: #ffc107;
1602
    border-color: #ffc107;
1603
}
1604
1605
.fsb-btn-warning:hover
1606
{
1607
    color: #212529;
1608
    background-color: #e0a800;
1609
    border-color: #d39e00;
1610
}
1611
1612
.fsb-btn-warning:focus, .fsb-btn-warning.focus
1613
{
1614
    -webkit-box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1615
    box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1616
}
1617
1618
.fsb-btn-warning.disabled, .fsb-btn-warning:disabled
1619
{
1620
    color: #212529;
1621
    background-color: #ffc107;
1622
    border-color: #ffc107;
1623
}
1624
1625
.fsb-btn-warning:not(:disabled)
1626
:not(.disabled):active, .fsb-btn-warning:not(:disabled)
1627
:not(.disabled).active,
1628
.show > .fsb-btn-warning.dropdown-toggle
1629
{
1630
    color: #212529;
1631
    background-color: #d39e00;
1632
    border-color: #c69500;
1633
}
1634
1635
.fsb-btn-warning:not(:disabled)
1636
:not(.disabled):active:focus, .fsb-btn-warning:not(:disabled)
1637
:not(.disabled).active:focus,
1638
.show > .fsb-btn-warning.dropdown-toggle:focus
1639
{
1640
    -webkit-box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1641
    box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
1642
}
1643
1644
.fsb-btn-danger
1645
{
1646
    color: #fff;
1647
    background-color: #dc3545;
1648
    border-color: #dc3545;
1649
}
1650
1651
.fsb-btn-danger:hover
1652
{
1653
    color: #fff;
1654
    background-color: #c82333;
1655
    border-color: #bd2130;
1656
}
1657
1658
.fsb-btn-danger:focus, .fsb-btn-danger.focus
1659
{
1660
    -webkit-box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1661
    box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1662
}
1663
1664
.fsb-btn-danger.disabled, .fsb-btn-danger:disabled
1665
{
1666
    color: #fff;
1667
    background-color: #dc3545;
1668
    border-color: #dc3545;
1669
}
1670
1671
.fsb-btn-danger:not(:disabled)
1672
:not(.disabled):active, .fsb-btn-danger:not(:disabled)
1673
:not(.disabled).active,
1674
.show > .fsb-btn-danger.dropdown-toggle
1675
{
1676
    color: #fff;
1677
    background-color: #bd2130;
1678
    border-color: #b21f2d;
1679
}
1680
1681
.fsb-btn-danger:not(:disabled)
1682
:not(.disabled):active:focus, .fsb-btn-danger:not(:disabled)
1683
:not(.disabled).active:focus,
1684
.show > .fsb-btn-danger.dropdown-toggle:focus
1685
{
1686
    -webkit-box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1687
    box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
1688
}
1689
1690
.fsb-btn-light
1691
{
1692
    color: #212529;
1693
    background-color: #f8f9fa;
1694
    border-color: #f8f9fa;
1695
}
1696
1697
.fsb-btn-light:hover
1698
{
1699
    color: #212529;
1700
    background-color: #e2e6ea;
1701
    border-color: #dae0e5;
1702
}
1703
1704
.fsb-btn-light:focus, .fsb-btn-light.focus
1705
{
1706
    -webkit-box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1707
    box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1708
}
1709
1710
.fsb-btn-light.disabled, .fsb-btn-light:disabled
1711
{
1712
    color: #212529;
1713
    background-color: #f8f9fa;
1714
    border-color: #f8f9fa;
1715
}
1716
1717
.fsb-btn-light:not(:disabled)
1718
:not(.disabled):active, .fsb-btn-light:not(:disabled)
1719
:not(.disabled).active,
1720
.show > .fsb-btn-light.dropdown-toggle
1721
{
1722
    color: #212529;
1723
    background-color: #dae0e5;
1724
    border-color: #d3d9df;
1725
}
1726
1727
.fsb-btn-light:not(:disabled)
1728
:not(.disabled):active:focus, .fsb-btn-light:not(:disabled)
1729
:not(.disabled).active:focus,
1730
.show > .fsb-btn-light.dropdown-toggle:focus
1731
{
1732
    -webkit-box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1733
    box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
1734
}
1735
1736
.fsb-btn-dark
1737
{
1738
    color: #fff;
1739
    background-color: #343a40;
1740
    border-color: #343a40;
1741
}
1742
1743
.fsb-btn-dark:hover
1744
{
1745
    color: #fff;
1746
    background-color: #23272b;
1747
    border-color: #1d2124;
1748
}
1749
1750
.fsb-btn-dark:focus, .fsb-btn-dark.focus
1751
{
1752
    -webkit-box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1753
    box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1754
}
1755
1756
.fsb-btn-dark.disabled, .fsb-btn-dark:disabled
1757
{
1758
    color: #fff;
1759
    background-color: #343a40;
1760
    border-color: #343a40;
1761
}
1762
1763
.fsb-btn-dark:not(:disabled)
1764
:not(.disabled):active, .fsb-btn-dark:not(:disabled)
1765
:not(.disabled).active,
1766
.show > .fsb-btn-dark.dropdown-toggle
1767
{
1768
    color: #fff;
1769
    background-color: #1d2124;
1770
    border-color: #171a1d;
1771
}
1772
1773
.fsb-btn-dark:not(:disabled)
1774
:not(.disabled):active:focus, .fsb-btn-dark:not(:disabled)
1775
:not(.disabled).active:focus,
1776
.show > .fsb-btn-dark.dropdown-toggle:focus
1777
{
1778
    -webkit-box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1779
    box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
1780
}
1781
1782
.fsb-btn-outline-primary
1783
{
1784
    color: #007bff;
1785
    border-color: #007bff;
1786
}
1787
1788
.fsb-btn-outline-primary:hover
1789
{
1790
    color: #fff;
1791
    background-color: #007bff;
1792
    border-color: #007bff;
1793
}
1794
1795
.fsb-btn-outline-primary:focus, .fsb-btn-outline-primary.focus
1796
{
1797
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1798
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1799
}
1800
1801
.fsb-btn-outline-primary.disabled, .fsb-btn-outline-primary:disabled
1802
{
1803
    color: #007bff;
1804
    background-color: transparent;
1805
}
1806
1807
.fsb-btn-outline-primary:not(:disabled)
1808
:not(.disabled):active, .fsb-btn-outline-primary:not(:disabled)
1809
:not(.disabled).active,
1810
.show > .fsb-btn-outline-primary.dropdown-toggle
1811
{
1812
    color: #fff;
1813
    background-color: #007bff;
1814
    border-color: #007bff;
1815
}
1816
1817
.fsb-btn-outline-primary:not(:disabled)
1818
:not(.disabled):active:focus, .fsb-btn-outline-primary:not(:disabled)
1819
:not(.disabled).active:focus,
1820
.show > .fsb-btn-outline-primary.dropdown-toggle:focus
1821
{
1822
    -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1823
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
1824
}
1825
1826
.fsb-btn-outline-secondary
1827
{
1828
    color: #6c757d;
1829
    border-color: #6c757d;
1830
}
1831
1832
.fsb-btn-outline-secondary:hover
1833
{
1834
    color: #fff;
1835
    background-color: #6c757d;
1836
    border-color: #6c757d;
1837
}
1838
1839
.fsb-btn-outline-secondary:focus, .fsb-btn-outline-secondary.focus
1840
{
1841
    -webkit-box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1842
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1843
}
1844
1845
.fsb-btn-outline-secondary.disabled, .fsb-btn-outline-secondary:disabled
1846
{
1847
    color: #6c757d;
1848
    background-color: transparent;
1849
}
1850
1851
.fsb-btn-outline-secondary:not(:disabled)
1852
:not(.disabled):active, .fsb-btn-outline-secondary:not(:disabled)
1853
:not(.disabled).active,
1854
.show > .fsb-btn-outline-secondary.dropdown-toggle
1855
{
1856
    color: #fff;
1857
    background-color: #6c757d;
1858
    border-color: #6c757d;
1859
}
1860
1861
.fsb-btn-outline-secondary:not(:disabled)
1862
:not(.disabled):active:focus, .fsb-btn-outline-secondary:not(:disabled)
1863
:not(.disabled).active:focus,
1864
.show > .fsb-btn-outline-secondary.dropdown-toggle:focus
1865
{
1866
    -webkit-box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1867
    box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
1868
}
1869
1870
.fsb-btn-outline-success
1871
{
1872
    color: #28a745;
1873
    border-color: #28a745;
1874
}
1875
1876
.fsb-btn-outline-success:hover
1877
{
1878
    color: #fff;
1879
    background-color: #28a745;
1880
    border-color: #28a745;
1881
}
1882
1883
.fsb-btn-outline-success:focus, .fsb-btn-outline-success.focus
1884
{
1885
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1886
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1887
}
1888
1889
.fsb-btn-outline-success.disabled, .fsb-btn-outline-success:disabled
1890
{
1891
    color: #28a745;
1892
    background-color: transparent;
1893
}
1894
1895
.fsb-btn-outline-success:not(:disabled)
1896
:not(.disabled):active, .fsb-btn-outline-success:not(:disabled)
1897
:not(.disabled).active,
1898
.show > .fsb-btn-outline-success.dropdown-toggle
1899
{
1900
    color: #fff;
1901
    background-color: #28a745;
1902
    border-color: #28a745;
1903
}
1904
1905
.fsb-btn-outline-success:not(:disabled)
1906
:not(.disabled):active:focus, .fsb-btn-outline-success:not(:disabled)
1907
:not(.disabled).active:focus,
1908
.show > .fsb-btn-outline-success.dropdown-toggle:focus
1909
{
1910
    -webkit-box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1911
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
1912
}
1913
1914
.fsb-btn-outline-info
1915
{
1916
    color: #17a2b8;
1917
    border-color: #17a2b8;
1918
}
1919
1920
.fsb-btn-outline-info:hover
1921
{
1922
    color: #fff;
1923
    background-color: #17a2b8;
1924
    border-color: #17a2b8;
1925
}
1926
1927
.fsb-btn-outline-info:focus, .fsb-btn-outline-info.focus
1928
{
1929
    -webkit-box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1930
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1931
}
1932
1933
.fsb-btn-outline-info.disabled, .fsb-btn-outline-info:disabled
1934
{
1935
    color: #17a2b8;
1936
    background-color: transparent;
1937
}
1938
1939
.fsb-btn-outline-info:not(:disabled)
1940
:not(.disabled):active, .fsb-btn-outline-info:not(:disabled)
1941
:not(.disabled).active,
1942
.show > .fsb-btn-outline-info.dropdown-toggle
1943
{
1944
    color: #fff;
1945
    background-color: #17a2b8;
1946
    border-color: #17a2b8;
1947
}
1948
1949
.fsb-btn-outline-info:not(:disabled)
1950
:not(.disabled):active:focus, .fsb-btn-outline-info:not(:disabled)
1951
:not(.disabled).active:focus,
1952
.show > .fsb-btn-outline-info.dropdown-toggle:focus
1953
{
1954
    -webkit-box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1955
    box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
1956
}
1957
1958
.fsb-btn-outline-warning
1959
{
1960
    color: #ffc107;
1961
    border-color: #ffc107;
1962
}
1963
1964
.fsb-btn-outline-warning:hover
1965
{
1966
    color: #212529;
1967
    background-color: #ffc107;
1968
    border-color: #ffc107;
1969
}
1970
1971
.fsb-btn-outline-warning:focus, .fsb-btn-outline-warning.focus
1972
{
1973
    -webkit-box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
1974
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
1975
}
1976
1977
.fsb-btn-outline-warning.disabled, .fsb-btn-outline-warning:disabled
1978
{
1979
    color: #ffc107;
1980
    background-color: transparent;
1981
}
1982
1983
.fsb-btn-outline-warning:not(:disabled)
1984
:not(.disabled):active, .fsb-btn-outline-warning:not(:disabled)
1985
:not(.disabled).active,
1986
.show > .fsb-btn-outline-warning.dropdown-toggle
1987
{
1988
    color: #212529;
1989
    background-color: #ffc107;
1990
    border-color: #ffc107;
1991
}
1992
1993
.fsb-btn-outline-warning:not(:disabled)
1994
:not(.disabled):active:focus, .fsb-btn-outline-warning:not(:disabled)
1995
:not(.disabled).active:focus,
1996
.show > .fsb-btn-outline-warning.dropdown-toggle:focus
1997
{
1998
    -webkit-box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
1999
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
2000
}
2001
2002
.fsb-btn-outline-danger
2003
{
2004
    color: #dc3545;
2005
    border-color: #dc3545;
2006
}
2007
2008
.fsb-btn-outline-danger:hover
2009
{
2010
    color: #fff;
2011
    background-color: #dc3545;
2012
    border-color: #dc3545;
2013
}
2014
2015
.fsb-btn-outline-danger:focus, .fsb-btn-outline-danger.focus
2016
{
2017
    -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
2018
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
2019
}
2020
2021
.fsb-btn-outline-danger.disabled, .fsb-btn-outline-danger:disabled
2022
{
2023
    color: #dc3545;
2024
    background-color: transparent;
2025
}
2026
2027
.fsb-btn-outline-danger:not(:disabled)
2028
:not(.disabled):active, .fsb-btn-outline-danger:not(:disabled)
2029
:not(.disabled).active,
2030
.show > .fsb-btn-outline-danger.dropdown-toggle
2031
{
2032
    color: #fff;
2033
    background-color: #dc3545;
2034
    border-color: #dc3545;
2035
}
2036
2037
.fsb-btn-outline-danger:not(:disabled)
2038
:not(.disabled):active:focus, .fsb-btn-outline-danger:not(:disabled)
2039
:not(.disabled).active:focus,
2040
.show > .fsb-btn-outline-danger.dropdown-toggle:focus
2041
{
2042
    -webkit-box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
2043
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
2044
}
2045
2046
.fsb-btn-outline-light
2047
{
2048
    color: #f8f9fa;
2049
    border-color: #f8f9fa;
2050
}
2051
2052
.fsb-btn-outline-light:hover
2053
{
2054
    color: #212529;
2055
    background-color: #f8f9fa;
2056
    border-color: #f8f9fa;
2057
}
2058
2059
.fsb-btn-outline-light:focus, .fsb-btn-outline-light.focus
2060
{
2061
    -webkit-box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
2062
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
2063
}
2064
2065
.fsb-btn-outline-light.disabled, .fsb-btn-outline-light:disabled
2066
{
2067
    color: #f8f9fa;
2068
    background-color: transparent;
2069
}
2070
2071
.fsb-btn-outline-light:not(:disabled)
2072
:not(.disabled):active, .fsb-btn-outline-light:not(:disabled)
2073
:not(.disabled).active,
2074
.show > .fsb-btn-outline-light.dropdown-toggle
2075
{
2076
    color: #212529;
2077
    background-color: #f8f9fa;
2078
    border-color: #f8f9fa;
2079
}
2080
2081
.fsb-btn-outline-light:not(:disabled)
2082
:not(.disabled):active:focus, .fsb-btn-outline-light:not(:disabled)
2083
:not(.disabled).active:focus,
2084
.show > .fsb-btn-outline-light.dropdown-toggle:focus
2085
{
2086
    -webkit-box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
2087
    box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
2088
}
2089
2090
.fsb-btn-outline-dark
2091
{
2092
    color: #343a40;
2093
    border-color: #343a40;
2094
}
2095
2096
.fsb-btn-outline-dark:hover
2097
{
2098
    color: #fff;
2099
    background-color: #343a40;
2100
    border-color: #343a40;
2101
}
2102
2103
.fsb-btn-outline-dark:focus, .fsb-btn-outline-dark.focus
2104
{
2105
    -webkit-box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
2106
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
2107
}
2108
2109
.fsb-btn-outline-dark.disabled, .fsb-btn-outline-dark:disabled
2110
{
2111
    color: #343a40;
2112
    background-color: transparent;
2113
}
2114
2115
.fsb-btn-outline-dark:not(:disabled)
2116
:not(.disabled):active, .fsb-btn-outline-dark:not(:disabled)
2117
:not(.disabled).active,
2118
.show > .fsb-btn-outline-dark.dropdown-toggle
2119
{
2120
    color: #fff;
2121
    background-color: #343a40;
2122
    border-color: #343a40;
2123
}
2124
2125
.fsb-btn-outline-dark:not(:disabled)
2126
:not(.disabled):active:focus, .fsb-btn-outline-dark:not(:disabled)
2127
:not(.disabled).active:focus,
2128
.show > .fsb-btn-outline-dark.dropdown-toggle:focus
2129
{
2130
    -webkit-box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
2131
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
2132
}
2133
2134
.fsb-btn-link
2135
{
2136
    font-weight: 400;
2137
    color: #007bff;
2138
    text-decoration: none;
2139
}
2140
2141
.fsb-btn-link:hover
2142
{
2143
    color: #0056b3;
2144
    text-decoration: underline;
2145
}
2146
2147
.fsb-btn-link:focus, .fsb-btn-link.focus
2148
{
2149
    text-decoration: underline;
2150
    -webkit-box-shadow: none;
2151
    box-shadow: none;
2152
}
2153
2154
.fsb-btn-link:disabled, .fsb-btn-link.disabled
2155
{
2156
    color: #6c757d;
2157
    pointer-events: none;
2158
}
2159
2160
.fsb-btn-lg, .fsb-btn-group-lg > .fsb-btn
2161
{
2162
    padding: 0.5rem 1rem;
2163
    font-size: 1.25rem;
2164
    line-height: 1.5;
2165
    border-radius: 0.3rem;
2166
}
2167
2168
.fsb-btn-sm, .fsb-btn-group-sm > .fsb-btn
2169
{
2170
    padding: 0.25rem 0.5rem;
2171
    font-size: 0.875rem;
2172
    line-height: 1.5;
2173
    border-radius: 0.2rem;
2174
}
2175
2176
.fsb-btn-block
2177
{
2178
    display: block;
2179
    width: 100%;
2180
}
2181
2182
.fsb-btn-block + .fsb-btn-block
2183
{
2184
    margin-top: 0.5rem;
2185
}
2186
2187
input[type="submit"].fsb-btn-block,
2188
input[type="reset"].fsb-btn-block,
2189
input[type="button"].fsb-btn-block
2190
{
2191
    width: 100%;
2192
}
2193
2194
.fsb-card
2195
{
2196
    background-color: #fff;
2197
    border: 1px solid rgba(0, 0, 0, 0.125);
2198
    border-radius: 0px;
2199
    position: relative;
2200
    display: -ms-flexbox;
2201
    display: flex;
2202
    -ms-flex-direction: column;
2203
    flex-direction: column;
2204
    min-width: 0;
2205
    word-wrap: break-word;
2206
    background-color: #fff;
2207
    background-clip: border-box;
2208
    border: 1px solid rgba(0, 0, 0, 0.125);
2209
}
2210
2211
.fsb-card-body
2212
{
2213
    -ms-flex: 1 1 auto;
2214
    flex: 1 1 auto;
2215
    padding: 1.25rem;
2216
}
2217
2218
.fsb-card-header
2219
{
2220
    background-color: rgba(0, 0, 0, 0.03);
2221
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
2222
    margin-bottom: 0;
2223
    padding: 0 1em;
2224
}
2225
2226
.fsb-card-header:first-child
2227
{
2228
    border-radius: 0px;
2229
}
2230
2231
.fsb-align-top
2232
{
2233
    vertical-align: top !important;
2234
}
2235
2236
.fsb-border
2237
{
2238
    border: 1px solid #dee2e6 !important;
2239
}
2240
2241
.fsb-rounded
2242
{
2243
    border-radius: 0.25rem !important;
2244
}
2245
2246
.fsb-d-none
2247
{
2248
    display: none !important;
2249
}
2250
2251
.fsb-d-inline-block
2252
{
2253
    display: inline-block !important;
2254
}
2255
2256
@media (min-width: 576px)
2257
{
2258
    .fsb-d-sm-none
2259
    {
2260
        display: none !important;
2261
    }
2262
    .fsb-d-sm-block
2263
    {
2264
        display: block !important;
2265
    }
2266
}
2267
2268
@media (min-width: 768px)
2269
{
2270
    .fsb-d-md-none
2271
    {
2272
        display: none !important;
2273
    }
2274
    .fsb-d-md-inline-block
2275
    {
2276
        display: inline-block !important;
2277
    }
2278
    .fsb-d-md-block
2279
    {
2280
        display: block !important;
2281
    }
2282
}
2283
2284
@media (min-width: 992px)
2285
{
2286
    .fsb-d-lg-none
2287
    {
2288
        display: none !important;
2289
    }
2290
    .fsb-d-lg-block
2291
    {
2292
        display: block !important;
2293
    }
2294
}
2295
2296
@media (min-width: 1200px)
2297
{
2298
    .fsb-d-xl-none
2299
    {
2300
        display: none !important;
2301
    }
2302
    .fsb-d-xl-block
2303
    {
2304
        display: block !important;
2305
    }
2306
}
2307
2308
.fsb-align-items-center
2309
{
2310
    align-items: center !important;
2311
    -webkit-box-align: center !important;
2312
    -ms-flex-align: center !important;
2313
}
2314
2315
.fsb-mt-2
2316
{
2317
    margin-top: 0.5rem !important;
2318
}
2319
2320
.fsb-ml-2
2321
{
2322
    margin-left: 0.5rem !important;
2323
}
2324
2325
.fsb-mt-3
2326
{
2327
    margin-top: 1rem !important;
2328
}
2329
2330
.fsb-mb-3
2331
{
2332
    margin-bottom: 1rem !important;
2333
}
2334
2335
.fsb-mt-4
2336
{
2337
    margin-top: 1.5rem !important;
2338
}
2339
2340
.fsb-m-4
2341
{
2342
    margin: 1.5rem !important;
2343
}
2344
2345
.fsb-mb-4
2346
{
2347
    margin-bottom: 1.5rem !important;
2348
}
2349
2350
.fsb-pr-0
2351
{
2352
    padding-right: 0 !important;
2353
}
2354
2355
.fsb-pl-0
2356
{
2357
    padding-left: 0 !important;
2358
}
2359
2360
.fsb-pb-0
2361
{
2362
    padding-bottom: 0 !important;
2363
}
2364
2365
.fsb-pb-4
2366
{
2367
    padding-bottom: 1.5rem !important;
2368
}
2369
2370
.fsb-px-5
2371
{
2372
    padding-right: 3rem !important;
2373
}
2374
2375
.fsb-px-5
2376
{
2377
    padding-left: 3rem !important;
2378
}
2379
2380
.fsb-p-1
2381
{
2382
    padding: 1rem !important;
2383
}
2384
2385
.fsb-p-0
2386
{
2387
    padding: 0px !important;
2388
}
2389
2390
@media (min-width: 576px)
2391
{
2392
    .fsb-mt-sm-2
2393
    {
2394
        margin-top: 0.5rem !important;
2395
    }
2396
}
2397
2398
.fsb-text-nowrap
2399
{
2400
    white-space: nowrap !important;
2401
}
2402
2403
.fsb-text-left
2404
{
2405
    text-align: left !important;
2406
}
2407
2408
.fsb-text-right
2409
{
2410
    text-align: right !important;
2411
}
2412
2413
.fsb-text-center
2414
{
2415
    text-align: center !important;
2416
}
2417
2418
@media (min-width: 576px)
2419
{
2420
    .fsb-text-sm-left
2421
    {
2422
        text-align: left !important;
2423
    }
2424
    .fsb-text-sm-right
2425
    {
2426
        text-align: right !important;
2427
    }
2428
}
2429
2430
@media (min-width: 768px)
2431
{
2432
    .fsb-text-md-left
2433
    {
2434
        text-align: left !important;
2435
    }
2436
    .fsb-text-md-right
2437
    {
2438
        text-align: right !important;
2439
    }
2440
}
2441
2442
.fsb-text-success
2443
{
2444
    color: #28a745 !important;
2445
}
2446
2447
.fsb-card-body hr:last-child
2448
{
2449
    display: none;
2450
}
2451
2452
.fsb-remove
2453
{
2454
    color: #b3b3b3;
2455
    text-decoration: none;
2456
    font-size: 28px;
2457
    vertical-align: sub;
2458
}
2459
2460
.fsb-remove:hover
2461
{
2462
    color: black;
2463
}
2464
2465
.fsb-option-input
2466
{
2467
    -webkit-appearance: none;
2468
    -moz-appearance: none;
2469
    -ms-appearance: none;
2470
    -o-appearance: none;
2471
    appearance: none;
2472
    background: #c0c0c0;
2473
    border: none;
2474
    bottom: 0;
2475
    color: #fff;
2476
    cursor: pointer;
2477
    display: inline-block;
2478
    font-family: initial;
2479
    height: 25px;
2480
    left: 0;
2481
    margin-right: .5rem;
2482
    outline: none;
2483
    position: relative;
2484
    position: relative;
2485
    right: 0;
2486
    -webkit-transition: all .15s ease-out 0s;
2487
    -o-transition: all .15s ease-out 0s;
2488
    transition: all .15s ease-out 0s;
2489
    width: 25px;
2490
    z-index: 2;
2491
}
2492
2493
.fsb-option-input:hover
2494
{
2495
    background: #9faab7;
2496
}
2497
2498
.fsb-option-input:checked
2499
{
2500
    background: #9faab7;
2501
}
2502
2503
.fsb-option-input:checked::before
2504
{
2505
    content: '2714';
2506
    display: inline-block;
2507
    font-size: 18px;
2508
    height: 25px;
2509
    line-height: 26px;
2510
    position: absolute;
2511
    text-align: center;
2512
    width: 25px;
2513
}
2514
2515
.fsb-cart-input
2516
{
2517
    width: 70px;
2518
    display: inline-block;
2519
}
2520
2521
.fsb-remove-small
2522
{
2523
    position: absolute;
2524
    top: 0px;
2525
    right: 5px;
2526
    font-weight: bold;
2527
}
2528
2529
.fsb-coupon-entry
2530
{
2531
    display: inline-block;
2532
    width: 200px;
2533
}
2534
2535
.fsb-bundle-image
2536
{
2537
    width: 60px;
2538
    height: auto;
2539
    display: inline;
2540
}
2541
2542
.fsb-75
2543
{
2544
    font-size: 75%;
2545
}
2546
2547
.fsb-option-input:checked::after
2548
{
2549
    background: #40e0d0;
2550
    content: '';
2551
    display: block;
2552
    position: relative;
2553
    z-index: 3;
2554
}
2555
2556
.fsb-option-input.fsb-radio
2557
{
2558
    border-radius: 50%;
2559
}
2560
2561
.fsb-option-input.fsb-radio::after
2562
{
2563
    border-radius: 50%;
2564
}
2565
2566
.fsb-bg-success
2567
{
2568
    background-color: #28a745 !important;
2569
    color: white;
2570
}
2571
2572
.fsb-price-ext, .fsb-prod-name, .fsb-total
2573
{
2574
    display: block;
2575
    font-size: 1.17em;
2576
    font-weight: bold;
2577
}
2578
2579
.fsb-unit-price
2580
{
2581
    font-size: 1.17em;
2582
    font-weight: bold;
2583
}
2584
2585
.fsb-shipping
2586
{
2587
    display: block;
2588
    font-weight: bold;
2589
}
2590
2591
.fsb-total
2592
{
2593
    margin: 10px 0px;
2594
}
2595
2596
.fsb-normal
2597
{
2598
    font-weight: normal;
2599
}
2600
2601
/* The Modal (background) */
2602
.fsb-modal
2603
{
2604
    -webkit-animation-duration: .4s;
2605
    animation-duration: .4s;
2606
    -webkit-animation-name: fsb-fadeIn;
2607
    /* Fade in the background */
2608
    animation-name: fsb-fadeIn;
2609
    background-color: black;
2610
    /* Fallback color */
2611
    background-color: rgba(0, 0, 0, 0.8);
2612
    /* Black w/ opacity */
2613
    display: none;
2614
    /* Hidden by default */
2615
    height: 100%;
2616
    /* Full height */
2617
    left: 0;
2618
    overflow: auto;
2619
    /* Enable scroll if needed */
2620
    position: fixed;
2621
    /* Stay in place */
2622
    top: 0;
2623
    width: 100%;
2624
    /* Full width */
2625
    z-index: 999999;
2626
    /* Sit on top */
2627
}
2628
2629
.fsb-RS .fsb-modal-content
2630
{
2631
    -webkit-animation-duration: .4s;
2632
    animation-duration: .4s;
2633
    -webkit-animation-name: fsb-rs_slideIn;
2634
    animation-name: fsb-rs_slideIn;
2635
    background-color: #fefefe;
2636
    bottom: 0;
2637
    -webkit-box-shadow: -4px 0 8px 0 rgba(0, 0, 0, 0.2), -6px 0 20px 0 rgba(0, 0, 0, 0.19);
2638
    box-shadow: -4px 0 8px 0 rgba(0, 0, 0, 0.2), -6px 0 20px 0 rgba(0, 0, 0, 0.19);
2639
    height: 100%;
2640
    overflow-y: scroll;
2641
    position: fixed;
2642
    right: 0;
2643
    width: 60%;
2644
}
2645
2646
.fsb-RS .fsb-modal-content .fsb-close
2647
{
2648
    padding-right: 20px;
2649
    margin: 11px 20px;
2650
}
2651
2652
.fsb-RS .fsb-modal-content .fsb-cart_title
2653
{
2654
    padding-left: 20px;
2655
}
2656
2657
.fsb-RS .fsb-modal-body
2658
{
2659
    padding: 2px 16px;
2660
    margin-top: 60px;
2661
}
2662
2663
.fsb-RS .fsb-modal-header
2664
{
2665
    background-color: #28a745;
2666
    color: white;
2667
    position: fixed;
2668
    z-index: 4;
2669
    width: 60%;
2670
}
2671
2672
.fsb-LS .fsb-modal-content
2673
{
2674
    -webkit-animation-duration: .4s;
2675
    animation-duration: .4s;
2676
    -webkit-animation-name: fsb-ls_slideIn;
2677
    animation-name: fsb-ls_slideIn;
2678
    background-color: #fefefe;
2679
    bottom: 0;
2680
    -webkit-box-shadow: 4px 0 8px 0 rgba(0, 0, 0, 0.2), 6px 0 20px 0 rgba(0, 0, 0, 0.19);
2681
    box-shadow: 4px 0 8px 0 rgba(0, 0, 0, 0.2), 6px 0 20px 0 rgba(0, 0, 0, 0.19);
2682
    height: 100%;
2683
    left: 0;
2684
    overflow-y: scroll;
2685
    position: fixed;
2686
    width: 60%;
2687
}
2688
2689
.fsb-LS .fsb-modal-content .fsb-close
2690
{
2691
    padding-right: 20px;
2692
    margin: 11px 20px;
2693
}
2694
2695
.fsb-LS .fsb-modal-content .fsb-cart_title
2696
{
2697
    padding-left: 20px;
2698
}
2699
2700
.fsb-LS .fsb-modal-body
2701
{
2702
    padding: 2px 16px;
2703
    margin-top: 60px;
2704
}
2705
2706
.fsb-LS .fsb-modal-header
2707
{
2708
    background-color: #28a745;
2709
    color: white;
2710
    position: fixed;
2711
    z-index: 4;
2712
    width: 60%;
2713
}
2714
2715
/* Modal Content */
2716
.fsb-BS .fsb-modal-content
2717
{
2718
    -webkit-animation-duration: .4s;
2719
    animation-duration: .4s;
2720
    -webkit-animation-name: fsb-bs_slideIn;
2721
    animation-name: fsb-bs_slideIn;
2722
    background-color: #fefefe;
2723
    bottom: 0;
2724
    -webkit-box-shadow: 0 -4px 8px 0 rgba(0, 0, 0, 0.2), 0 -6px 20px 0 rgba(0, 0, 0, 0.19);
2725
    box-shadow: 0 -4px 8px 0 rgba(0, 0, 0, 0.2), 0 -6px 20px 0 rgba(0, 0, 0, 0.19);
2726
    max-height: 75%;
2727
    overflow-y: scroll;
2728
    position: fixed;
2729
    width: 100%;
2730
}
2731
2732
.fsb-BS .fsb-modal-body
2733
{
2734
    margin-top: 60px;
2735
    padding: 2px 16px;
2736
}
2737
2738
.fsb-BS .fsb-modal-header
2739
{
2740
    background-color: #28a745;
2741
    color: white;
2742
    left: 0;
2743
    padding: 0 25px 0 0;
2744
    position: fixed;
2745
    right: 0;
2746
    z-index: 4;
2747
}
2748
2749
.fsb-BS .fsb-modal-header .fsb-close
2750
{
2751
    margin: 11px 20px;
2752
}
2753
2754
.fsb-BS .fsb-modal-header .fsb-cart_title
2755
{
2756
    padding-left: 20px;
2757
}
2758
2759
/* Modal Content */
2760
.fsb-MOD .fsb-modal-content
2761
{
2762
    -webkit-animation-duration: .4s;
2763
    animation-duration: .4s;
2764
    -webkit-animation-name: fsb-mod_animatetop;
2765
    animation-name: fsb-mod_animatetop;
2766
    background-color: #fefefe;
2767
    border: 1px solid #888;
2768
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
2769
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
2770
    margin: 5% auto;
2771
    padding: 0;
2772
    position: relative;
2773
    width: 80%;
2774
}
2775
2776
.fsb-MOD .fsb-modal-body
2777
{
2778
    padding: 10px 16px 0;
2779
}
2780
2781
.fsb-MOD .fsb-modal-header .fsb-close
2782
{
2783
    margin: 11px 0;
2784
}
2785
2786
.fsb-MOD .fsb-modal-header
2787
{
2788
    background-color: #28a745;
2789
    color: white;
2790
    padding: 2px 16px;
2791
}
2792
2793
.fsb-MODSM .fsb-modal-content
2794
{
2795
    -webkit-animation-duration: .4s;
2796
    animation-duration: .4s;
2797
    -webkit-animation-name: fsb-mod_animatetop;
2798
    animation-name: fsb-mod_animatetop;
2799
    background-color: #fefefe;
2800
    border: 1px solid #888;
2801
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
2802
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
2803
    margin: 5% auto;
2804
    padding: 0;
2805
    position: relative;
2806
    max-width: 1024px;
2807
}
2808
2809
.fsb-MODSM .fsb-modal-body
2810
{
2811
    padding: 10px 16px 0;
2812
}
2813
2814
.fsb-MODSM .fsb-modal-header .fsb-close
2815
{
2816
    margin: 11px 0;
2817
}
2818
2819
.fsb-MODSM .fsb-modal-header
2820
{
2821
    background-color: #28a745;
2822
    color: white;
2823
    padding: 2px 16px;
2824
}
2825
2826
/* The Close Button */
2827
.fsb-close,
2828
.fsb-cart_title
2829
{
2830
    color: white;
2831
    display: block;
2832
    font-size: 1.5em;
2833
    font-weight: bold;
2834
}
2835
2836
.fsb-close:hover,
2837
.fsb-close:focus
2838
{
2839
    color: #000;
2840
    cursor: pointer;
2841
}
2842
2843
.fsb-close
2844
{
2845
    float: right;
2846
    font-size: 40px;
2847
    line-height: 30px;
2848
}
2849
2850
/* Add Animation Bottom Sheet */
2851
@-webkit-keyframes fsb-bs_slideIn
2852
{
2853
    from
2854
    {
2855
        bottom: -300px;
2856
        opacity: 0;
2857
    }
2858
    to
2859
    {
2860
        bottom: 0;
2861
        opacity: 1;
2862
    }
2863
}
2864
2865
@keyframes fsb-bs_slideIn
2866
{
2867
    from
2868
    {
2869
        bottom: -300px;
2870
        opacity: 0;
2871
    }
2872
    to
2873
    {
2874
        bottom: 0;
2875
        opacity: 1;
2876
    }
2877
}
2878
2879
@-webkit-keyframes fsb-bs_revslideIn
2880
{
2881
    from
2882
    {
2883
        bottom: 0;
2884
        opacity: 1;
2885
    }
2886
    to
2887
    {
2888
        bottom: -300px;
2889
        opacity: 0;
2890
    }
2891
}
2892
2893
@keyframes fsb-bs_revslideIn
2894
{
2895
    from
2896
    {
2897
        bottom: 0;
2898
        opacity: 1;
2899
    }
2900
    to
2901
    {
2902
        bottom: -300px;
2903
        opacity: 0;
2904
    }
2905
}
2906
2907
/* Add Animation modal */
2908
@-webkit-keyframes fsb-mod_animatetop
2909
{
2910
    from
2911
    {
2912
        opacity: 0;
2913
        top: -300px;
2914
    }
2915
    to
2916
    {
2917
        opacity: 1;
2918
        top: 0;
2919
    }
2920
}
2921
2922
@keyframes fsb-mod_animatetop
2923
{
2924
    from
2925
    {
2926
        opacity: 0;
2927
        top: -300px;
2928
    }
2929
    to
2930
    {
2931
        opacity: 1;
2932
        top: 0;
2933
    }
2934
}
2935
2936
@-webkit-keyframes fsb-mod_revanimatetop
2937
{
2938
    from
2939
    {
2940
        opacity: 1;
2941
        top: 0;
2942
    }
2943
    to
2944
    {
2945
        opacity: 0;
2946
        top: -300;
2947
    }
2948
}
2949
2950
@keyframes fsb-mod_revanimatetop
2951
{
2952
    from
2953
    {
2954
        opacity: 1;
2955
        top: 0;
2956
    }
2957
    to
2958
    {
2959
        opacity: 0;
2960
        top: -330px;
2961
    }
2962
}
2963
2964
/* Add Animation right sheet */
2965
@-webkit-keyframes fsb-rs_slideIn
2966
{
2967
    from
2968
    {
2969
        opacity: 1;
2970
        right: -50%;
2971
    }
2972
    to
2973
    {
2974
        opacity: 1;
2975
        right: 0;
2976
    }
2977
}
2978
2979
@keyframes fsb-rs_slideIn
2980
{
2981
    from
2982
    {
2983
        opacity: 1;
2984
        right: -50%;
2985
    }
2986
    to
2987
    {
2988
        opacity: 1;
2989
        right: 0;
2990
    }
2991
}
2992
2993
@-webkit-keyframes fsb-rs_revslideIn
2994
{
2995
    from
2996
    {
2997
        opacity: 1;
2998
        right: 0;
2999
    }
3000
    to
3001
    {
3002
        opacity: 1;
3003
        right: -50%;
3004
    }
3005
}
3006
3007
@keyframes fsb-rs_revslideIn
3008
{
3009
    from
3010
    {
3011
        opacity: 1;
3012
        right: 0;
3013
    }
3014
    to
3015
    {
3016
        opacity: 1;
3017
        right: -50%;
3018
    }
3019
}
3020
3021
/* Add Animation left sheet */
3022
@-webkit-keyframes fsb-ls_slideIn
3023
{
3024
    from
3025
    {
3026
        left: -50%;
3027
        opacity: 1;
3028
    }
3029
    to
3030
    {
3031
        left: 0;
3032
        opacity: 1;
3033
    }
3034
}
3035
3036
@keyframes fsb-ls_slideIn
3037
{
3038
    from
3039
    {
3040
        left: -50%;
3041
        opacity: 1;
3042
    }
3043
    to
3044
    {
3045
        left: 0;
3046
        opacity: 1;
3047
    }
3048
}
3049
3050
@-webkit-keyframes fsb-ls_revslideIn
3051
{
3052
    from
3053
    {
3054
        left: 0;
3055
        opacity: 1;
3056
    }
3057
    to
3058
    {
3059
        left: -50%;
3060
        opacity: 1;
3061
    }
3062
}
3063
3064
@keyframes fsb-ls_revslideIn
3065
{
3066
    from
3067
    {
3068
        left: 0;
3069
        opacity: 1;
3070
    }
3071
    to
3072
    {
3073
        left: -50%;
3074
        opacity: 1;
3075
    }
3076
}
3077
3078
@-webkit-keyframes fsb-fadeIn
3079
{
3080
    from
3081
    {
3082
        opacity: 0;
3083
    }
3084
    to
3085
    {
3086
        opacity: 1;
3087
    }
3088
}
3089
3090
@keyframes fsb-fadeIn
3091
{
3092
    from
3093
    {
3094
        opacity: 0;
3095
    }
3096
    to
3097
    {
3098
        opacity: 1;
3099
    }
3100
}
3101
3102
@-webkit-keyframes fsb-revfadeIn
3103
{
3104
    from
3105
    {
3106
        opacity: 1;
3107
    }
3108
    to
3109
    {
3110
        opacity: 0;
3111
    }
3112
}
3113
3114
@keyframes fsb-revfadeIn
3115
{
3116
    from
3117
    {
3118
        opacity: 1;
3119
    }
3120
    to
3121
    {
3122
        opacity: 0;
3123
    }
3124
}
3125
3126
@media (max-width: 1199.98px)
3127
{
3128
    .fsb-RS .fsb-modal-header,
3129
    .fsb-LS .fsb-modal-header
3130
    {
3131
        width: 80%;
3132
    }
3133
    .fsb-MOD .fsb-modal-content
3134
    {
3135
        width: 90%;
3136
    }
3137
}
3138
3139
@media (max-width: 991.98px)
3140
{
3141
    .fsb-RS .fsb-modal-header,
3142
    .fsb-LS .fsb-modal-header
3143
    {
3144
        width: 90%;
3145
    }
3146
    .fsb-RS .fsb-modal-content,
3147
    .fsb-LS .fsb-modal-content,
3148
    .fsb-MOD .fsb-modal-content
3149
    {
3150
        width: 90%;
3151
    }
3152
}
3153
3154
@media (max-width: 767.98px)
3155
{
3156
    .fsb-RS .fsb-modal-header,
3157
    .fsb-LS .fsb-modal-header
3158
    {
3159
        width: 100%;
3160
    }
3161
    .fsb-MOD .fsb-modal-content
3162
    {
3163
        margin: 0;
3164
        width: 100%;
3165
    }
3166
    .fsb-RS .fsb-modal-content
3167
    {
3168
        width: 100%;
3169
    }
3170
    .fsb-BS .fsb-modal-content
3171
    {
3172
        max-height: 100%;
3173
    }
3174
}
3175
3176
.minicart
3177
{
3178
    border-radius: 5px;
3179
    position: fixed;
3180
    -webkit-box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.2);
3181
    box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.2);
3182
    -webkit-transition: -webkit-box-shadow 0.3s ease-in-out;
3183
    transition: -webkit-box-shadow 0.3s ease-in-out;
3184
    -o-transition: box-shadow 0.3s ease-in-out;
3185
    transition: box-shadow 0.3s ease-in-out;
3186
    transition: box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
3187
    -webkit-transition: width 0.3s, height 0.3s;
3188
    /* For Safari 3.1 to 6.0 */
3189
    -o-transition: width 0.3s, height 0.3s;
3190
    transition: width 0.3s, height 0.3s;
3191
    color: black;
3192
    background: white;
3193
    z-index: 999998;
3194
    height: 58px;
3195
    width: 58px;
3196
}
3197
3198
.minicart.open
3199
{
3200
    border-radius: 0px;
3201
}
3202
3203
.minicart.topright
3204
{
3205
    top: 20px;
3206
    right: 20px;
3207
}
3208
3209
.minicart.topleft
3210
{
3211
    top: 20px;
3212
    left: 20px;
3213
}
3214
3215
.minicart.bottomright
3216
{
3217
    bottom: 20px;
3218
    right: 20px;
3219
}
3220
3221
.minicart.bottomleft
3222
{
3223
    bottom: 20px;
3224
    left: 20px;
3225
}
3226
3227
.minicart:hover
3228
{
3229
    -webkit-box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.5);
3230
    box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.5);
3231
}
3232
3233
.minicart .fa
3234
{
3235
    font-size: 25px;
3236
    padding: 15px;
3237
}
3238
3239
.minicart-count
3240
{
3241
    position: absolute;
3242
    background: red;
3243
    border-radius: 50%;
3244
    height: 20px;
3245
    width: 20px;
3246
    line-height: 21px;
3247
    text-align: center;
3248
    color: white;
3249
    font-size: 12px;
3250
}
3251
3252
.topleft .minicart-count, .bottomleft .minicart-count
3253
{
3254
    top: -10px;
3255
    right: -10px;
3256
}
3257
3258
.topright .minicart-count, .bottomright .minicart-count
3259
{
3260
    top: -10px;
3261
    left: -10px;
3262
}
3263
3264
.fsb-display
3265
{
3266
    font-weight: bold;
3267
}
3268
3269
.fsb-extPrice
3270
{
3271
    font-weight: bold;
3272
}
3273
3274
.fsb-cartimage
3275
{
3276
    max-height: 100px;
3277
}
3278
3279
.fsb-bundleimage
3280
{
3281
    width: 60px;
3282
    height: auto;
3283
    display: inline;
3284
}
3285
3286
.fsb-ximage
3287
{
3288
    max-height: 75px;
3289
}
3290
3291
#fs p
3292
{
3293
    margin: 0px;
3294
}
3295
3296
.fsb-minus, .fsb-plus
3297
{
3298
    cursor: pointer;
3299
    width: 34px;
3300
    height: 34px;
3301
    background: #f2f2f2;
3302
    border-radius: 4px;
3303
    border: 1px solid #ddd;
3304
    display: inline-block;
3305
    vertical-align: middle;
3306
    text-align: center;
3307
    font-size: 30px;
3308
    line-height: 32px;
3309
}
3310
3311
input[type="text"].fsb-qtyinput
3312
{
3313
    height: 34px;
3314
    width: 60px;
3315
    text-align: center;
3316
    border: 1px solid #ddd;
3317
    border-radius: 4px;
3318
    display: inline-block;
3319
    vertical-align: middle;
3320
}
3321
3322
.fsb-number
3323
{
3324
    display: inline-block;
3325
}
3326
3327
.fastspring_btn
3328
{
3329
    display: inline-block;
3330
    font-weight: normal;
3331
    line-height: 1.25;
3332
    text-align: center;
3333
    white-space: nowrap;
3334
    vertical-align: middle;
3335
    cursor: pointer;
3336
    -webkit-user-select: none;
3337
    -moz-user-select: none;
3338
    -ms-user-select: none;
3339
    user-select: none;
3340
    border: 1px solid transparent;
3341
    padding: 6px 12px;
3342
    font-size: 14px;
3343
    border-radius: 4px;
3344
    text-decoration: none;
3345
}
3346
3347
.fastspring_btn:focus, .fastspring_btn.focus, .fastspring_btn:active:focus, .fastspring_btn:active.focus, .fastspring_btn.active:focus, .fastspring_btn.active.focus
3348
{
3349
    outline: 5px auto -webkit-focus-ring-color;
3350
    outline-offset: -2px;
3351
}
3352
3353
.fastspring_btn:focus, .fastspring_btn:hover
3354
{
3355
    text-decoration: none;
3356
}
3357
3358
.fastspring_btn.focus
3359
{
3360
    text-decoration: none;
3361
}
3362
3363
.fastspring_btn:active, .fastspring_btn.active
3364
{
3365
    background-image: none;
3366
    outline: 0;
3367
}
3368
3369
.fastspring_btn.disabled, .fastspring_btn:disabled
3370
{
3371
    cursor: not-allowed;
3372
    opacity: .65;
3373
}
3374
3375
a.fastspring_btn.disabled,
3376
fieldset[disabled] a.fastspring_btn
3377
{
3378
    pointer-events: none;
3379
}
3380
3381
.fastspring_btn-primary
3382
{
3383
    color: #fff !important;
3384
    background-color: #0275d8;
3385
    border-color: #0275d8;
3386
}
3387
3388
.fastspring_btn-primary:hover
3389
{
3390
    color: #fff !important;
3391
    background-color: #025aa5;
3392
    border-color: #01549b;
3393
}
3394
3395
.fastspring_btn-primary:focus, .fastspring_btn-primary.focus
3396
{
3397
    color: #fff !important;
3398
    background-color: #025aa5;
3399
    border-color: #01549b;
3400
}
3401
3402
.fastspring_btn-primary:active, .fastspring_btn-primary.active,
3403
.open > .fastspring_btn-primary.dropdown-toggle
3404
{
3405
    color: #fff !important;
3406
    background-color: #025aa5;
3407
    border-color: #01549b;
3408
    background-image: none;
3409
}
3410
3411
.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,
3412
.open > .fastspring_btn-primary.dropdown-toggle:hover,
3413
.open > .fastspring_btn-primary.dropdown-toggle:focus,
3414
.open > .fastspring_btn-primary.dropdown-toggle.focus
3415
{
3416
    color: #fff !important;
3417
    background-color: #014682;
3418
    border-color: #01315a;
3419
}
3420
3421
.fastspring_btn-primary.disabled:focus, .fastspring_btn-primary.disabled.focus, .fastspring_btn-primary:disabled:focus, .fastspring_btn-primary:disabled.focus
3422
{
3423
    background-color: #0275d8;
3424
    border-color: #0275d8;
3425
}
3426
3427
.fastspring_btn-primary.disabled:hover, .fastspring_btn-primary:disabled:hover
3428
{
3429
    background-color: #0275d8;
3430
    border-color: #0275d8;
3431
}
3432
3433
.fastspring_btn-secondary
3434
{
3435
    color: #373a3c !important;
3436
    background-color: #fff;
3437
    border-color: #ccc;
3438
}
3439
3440
.fastspring_btn-secondary:hover
3441
{
3442
    color: #373a3c !important;
3443
    background-color: #e6e6e6;
3444
    border-color: #adadad;
3445
}
3446
3447
.fastspring_btn-secondary:focus, .fastspring_btn-secondary.focus
3448
{
3449
    color: #373a3c !important;
3450
    background-color: #e6e6e6;
3451
    border-color: #adadad;
3452
}
3453
3454
.fastspring_btn-secondary:active, .fastspring_btn-secondary.active,
3455
.open > .fastspring_btn-secondary.dropdown-toggle
3456
{
3457
    color: #373a3c !important;
3458
    background-color: #e6e6e6;
3459
    border-color: #adadad;
3460
    background-image: none;
3461
}
3462
3463
.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,
3464
.open > .fastspring_btn-secondary.dropdown-toggle:hover,
3465
.open > .fastspring_btn-secondary.dropdown-toggle:focus,
3466
.open > .fastspring_btn-secondary.dropdown-toggle.focus
3467
{
3468
    color: #373a3c !important;
3469
    background-color: #d4d4d4;
3470
    border-color: #8c8c8c;
3471
}
3472
3473
.fastspring_btn-secondary.disabled:focus, .fastspring_btn-secondary.disabled.focus, .fastspring_btn-secondary:disabled:focus, .fastspring_btn-secondary:disabled.focus
3474
{
3475
    background-color: #fff;
3476
    border-color: #ccc;
3477
}
3478
3479
.fastspring_btn-secondary.disabled:hover, .fastspring_btn-secondary:disabled:hover
3480
{
3481
    background-color: #fff;
3482
    border-color: #ccc;
3483
}
3484
3485
.fastspring_btn-default
3486
{
3487
    color: #373a3c !important;
3488
    background-color: #fff;
3489
    border: 2px solid #ccc;
3490
}
3491
3492
.fastspring_btn-default:hover
3493
{
3494
    color: #373a3c !important;
3495
    background-color: #e6e6e6;
3496
    border-color: #adadad;
3497
}
3498
3499
.fastspring_btn-default:focus, .fastspring_btn-default.focus
3500
{
3501
    color: #373a3c !important;
3502
    background-color: #e6e6e6;
3503
    border-color: #adadad;
3504
}
3505
3506
.fastspring_btn-default:active, .fastspring_btn-default.active,
3507
.open > .fastspring_btn-default.dropdown-toggle
3508
{
3509
    color: #373a3c !important;
3510
    background-color: #e6e6e6;
3511
    border-color: #adadad;
3512
    background-image: none;
3513
}
3514
3515
.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,
3516
.open > .fastspring_btn-default.dropdown-toggle:hover,
3517
.open > .fastspring_btn-default.dropdown-toggle:focus,
3518
.open > .fastspring_btn-default.dropdown-toggle.focus
3519
{
3520
    color: #373a3c !important;
3521
    background-color: #d4d4d4;
3522
    border-color: #8c8c8c;
3523
}
3524
3525
.fastspring_btn-default.disabled:focus, .fastspring_btn-default.disabled.focus, .fastspring_btn-default:disabled:focus, .fastspring_btn-default:disabled.focus
3526
{
3527
    background-color: #fff;
3528
    border-color: #ccc;
3529
}
3530
3531
.fastspring_btn-default.disabled:hover, .fastspring_btn-default:disabled:hover
3532
{
3533
    background-color: #fff;
3534
    border-color: #ccc;
3535
}
3536
3537
.fastspring_btn-info
3538
{
3539
    color: #fff !important;
3540
    background-color: #5bc0de;
3541
    border-color: #5bc0de;
3542
}
3543
3544
.fastspring_btn-info:hover
3545
{
3546
    color: #fff !important;
3547
    background-color: #31b0d5;
3548
    border-color: #2aabd2;
3549
}
3550
3551
.fastspring_btn-info:focus, .fastspring_btn-info.focus
3552
{
3553
    color: #fff !important;
3554
    background-color: #31b0d5;
3555
    border-color: #2aabd2;
3556
}
3557
3558
.fastspring_btn-info:active, .fastspring_btn-info.active,
3559
.open > .fastspring_btn-info.dropdown-toggle
3560
{
3561
    color: #fff !important;
3562
    background-color: #31b0d5;
3563
    border-color: #2aabd2;
3564
    background-image: none;
3565
}
3566
3567
.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,
3568
.open > .fastspring_btn-info.dropdown-toggle:hover,
3569
.open > .fastspring_btn-info.dropdown-toggle:focus,
3570
.open > .fastspring_btn-info.dropdown-toggle.focus
3571
{
3572
    color: #fff !important;
3573
    background-color: #269abc;
3574
    border-color: #1f7e9a;
3575
}
3576
3577
.fastspring_btn-info.disabled:focus, .fastspring_btn-info.disabled.focus, .fastspring_btn-info:disabled:focus, .fastspring_btn-info:disabled.focus
3578
{
3579
    background-color: #5bc0de;
3580
    border-color: #5bc0de;
3581
}
3582
3583
.fastspring_btn-info.disabled:hover, .fastspring_btn-info:disabled:hover
3584
{
3585
    background-color: #5bc0de;
3586
    border-color: #5bc0de;
3587
}
3588
3589
.fastspring_btn-success
3590
{
3591
    color: #fff !important;
3592
    background-color: #5cb85c;
3593
    border-color: #5cb85c;
3594
}
3595
3596
.fastspring_btn-success:hover
3597
{
3598
    color: #fff !important;
3599
    background-color: #449d44;
3600
    border-color: #419641;
3601
}
3602
3603
.fastspring_btn-success:focus, .fastspring_btn-success.focus
3604
{
3605
    color: #fff !important;
3606
    background-color: #449d44;
3607
    border-color: #419641;
3608
}
3609
3610
.fastspring_btn-success:active, .fastspring_btn-success.active,
3611
.open > .fastspring_btn-success.dropdown-toggle
3612
{
3613
    color: #fff !important;
3614
    background-color: #449d44;
3615
    border-color: #419641;
3616
    background-image: none;
3617
}
3618
3619
.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,
3620
.open > .fastspring_btn-success.dropdown-toggle:hover,
3621
.open > .fastspring_btn-success.dropdown-toggle:focus,
3622
.open > .fastspring_btn-success.dropdown-toggle.focus
3623
{
3624
    color: #fff !important;
3625
    background-color: #398439;
3626
    border-color: #2d672d;
3627
}
3628
3629
.fastspring_btn-success.disabled:focus, .fastspring_btn-success.disabled.focus, .fastspring_btn-success:disabled:focus, .fastspring_btn-success:disabled.focus
3630
{
3631
    background-color: #5cb85c;
3632
    border-color: #5cb85c;
3633
}
3634
3635
.fastspring_btn-success.disabled:hover, .fastspring_btn-success:disabled:hover
3636
{
3637
    background-color: #5cb85c;
3638
    border-color: #5cb85c;
3639
}
3640
3641
.fastspring_btn-warning
3642
{
3643
    color: #fff !important;
3644
    background-color: #f0ad4e;
3645
    border-color: #f0ad4e;
3646
}
3647
3648
.fastspring_btn-warning:hover
3649
{
3650
    color: #fff !important;
3651
    background-color: #ec971f;
3652
    border-color: #eb9316;
3653
}
3654
3655
.fastspring_btn-warning:focus, .fastspring_btn-warning.focus
3656
{
3657
    color: #fff !important;
3658
    background-color: #ec971f;
3659
    border-color: #eb9316;
3660
}
3661
3662
.fastspring_btn-warning:active, .fastspring_btn-warning.active,
3663
.open > .fastspring_btn-warning.dropdown-toggle
3664
{
3665
    color: #fff !important;
3666
    background-color: #ec971f;
3667
    border-color: #eb9316;
3668
    background-image: none;
3669
}
3670
3671
.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,
3672
.open > .fastspring_btn-warning.dropdown-toggle:hover,
3673
.open > .fastspring_btn-warning.dropdown-toggle:focus,
3674
.open > .fastspring_btn-warning.dropdown-toggle.focus
3675
{
3676
    color: #fff !important;
3677
    background-color: #d58512;
3678
    border-color: #b06d0f;
3679
}
3680
3681
.fastspring_btn-warning.disabled:focus, .fastspring_btn-warning.disabled.focus, .fastspring_btn-warning:disabled:focus, .fastspring_btn-warning:disabled.focus
3682
{
3683
    background-color: #f0ad4e;
3684
    border-color: #f0ad4e;
3685
}
3686
3687
.fastspring_btn-warning.disabled:hover, .fastspring_btn-warning:disabled:hover
3688
{
3689
    background-color: #f0ad4e;
3690
    border-color: #f0ad4e;
3691
}
3692
3693
.fastspring_btn-danger
3694
{
3695
    color: #fff !important;
3696
    background-color: #d9534f;
3697
    border-color: #d9534f;
3698
}
3699
3700
.fastspring_btn-danger:hover
3701
{
3702
    color: #fff !important;
3703
    background-color: #c9302c;
3704
    border-color: #c12e2a;
3705
}
3706
3707
.fastspring_btn-danger:focus, .fastspring_btn-danger.focus
3708
{
3709
    color: #fff !important;
3710
    background-color: #c9302c;
3711
    border-color: #c12e2a;
3712
}
3713
3714
.fastspring_btn-danger:active, .fastspring_btn-danger.active,
3715
.open > .fastspring_btn-danger.dropdown-toggle
3716
{
3717
    color: #fff !important;
3718
    background-color: #c9302c;
3719
    border-color: #c12e2a;
3720
    background-image: none;
3721
}
3722
3723
.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,
3724
.open > .fastspring_btn-danger.dropdown-toggle:hover,
3725
.open > .fastspring_btn-danger.dropdown-toggle:focus,
3726
.open > .fastspring_btn-danger.dropdown-toggle.focus
3727
{
3728
    color: #fff !important;
3729
    background-color: #ac2925;
3730
    border-color: #8b211e;
3731
}
3732
3733
.fastspring_btn-danger.disabled:focus, .fastspring_btn-danger.disabled.focus, .fastspring_btn-danger:disabled:focus, .fastspring_btn-danger:disabled.focus
3734
{
3735
    background-color: #d9534f;
3736
    border-color: #d9534f;
3737
}
3738
3739
.fastspring_btn-danger.disabled:hover, .fastspring_btn-danger:disabled:hover
3740
{
3741
    background-color: #d9534f;
3742
    border-color: #d9534f;
3743
}
3744
3745
.fastspring_btn-outline-primary
3746
{
3747
    color: #0275d8 !important;
3748
    background-image: none;
3749
    background-color: transparent;
3750
    border-color: #0275d8;
3751
    border: 2px solid;
3752
}
3753
3754
.fastspring_btn-outline-primary:hover
3755
{
3756
    color: #fff !important;
3757
    background-color: #0275d8;
3758
    border-color: #0275d8;
3759
}
3760
3761
.fastspring_btn-outline-primary:focus, .fastspring_btn-outline-primary.focus
3762
{
3763
    color: #fff !important;
3764
    background-color: #0275d8;
3765
    border-color: #0275d8;
3766
}
3767
3768
.fastspring_btn-outline-primary:active, .fastspring_btn-outline-primary.active,
3769
.open > .fastspring_btn-outline-primary.dropdown-toggle
3770
{
3771
    color: #fff !important;
3772
    background-color: #0275d8;
3773
    border-color: #0275d8;
3774
}
3775
3776
.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,
3777
.open > .fastspring_btn-outline-primary.dropdown-toggle:hover,
3778
.open > .fastspring_btn-outline-primary.dropdown-toggle:focus,
3779
.open > .fastspring_btn-outline-primary.dropdown-toggle.focus
3780
{
3781
    color: #fff !important;
3782
    background-color: #014682;
3783
    border-color: #01315a;
3784
}
3785
3786
.fastspring_btn-outline-primary.disabled:focus, .fastspring_btn-outline-primary.disabled.focus, .fastspring_btn-outline-primary:disabled:focus, .fastspring_btn-outline-primary:disabled.focus
3787
{
3788
    border-color: #43a7fd;
3789
}
3790
3791
.fastspring_btn-outline-primary.disabled:hover, .fastspring_btn-outline-primary:disabled:hover
3792
{
3793
    border-color: #43a7fd;
3794
}
3795
3796
.fastspring_btn-outline-secondary
3797
{
3798
    color: #ccc !important;
3799
    background-image: none;
3800
    background-color: transparent;
3801
    border-color: #ccc;
3802
    border: 2px solid;
3803
}
3804
3805
.fastspring_btn-outline-secondary:hover
3806
{
3807
    color: #fff !important;
3808
    background-color: #ccc;
3809
    border-color: #ccc;
3810
}
3811
3812
.fastspring_btn-outline-secondary:focus, .fastspring_btn-outline-secondary.focus
3813
{
3814
    color: #fff !important;
3815
    background-color: #ccc;
3816
    border-color: #ccc;
3817
}
3818
3819
.fastspring_btn-outline-secondary:active, .fastspring_btn-outline-secondary.active,
3820
.open > .fastspring_btn-outline-secondary.dropdown-toggle
3821
{
3822
    color: #fff !important;
3823
    background-color: #ccc;
3824
    border-color: #ccc;
3825
}
3826
3827
.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,
3828
.open > .fastspring_btn-outline-secondary.dropdown-toggle:hover,
3829
.open > .fastspring_btn-outline-secondary.dropdown-toggle:focus,
3830
.open > .fastspring_btn-outline-secondary.dropdown-toggle.focus
3831
{
3832
    color: #fff !important;
3833
    background-color: #a1a1a1;
3834
    border-color: #8c8c8c;
3835
}
3836
3837
.fastspring_btn-outline-secondary.disabled:focus, .fastspring_btn-outline-secondary.disabled.focus, .fastspring_btn-outline-secondary:disabled:focus, .fastspring_btn-outline-secondary:disabled.focus
3838
{
3839
    border-color: white;
3840
}
3841
3842
.fastspring_btn-outline-secondary.disabled:hover, .fastspring_btn-outline-secondary:disabled:hover
3843
{
3844
    border-color: white;
3845
}
3846
3847
.fastspring_btn-outline-info
3848
{
3849
    color: #5bc0de !important;
3850
    background-image: none;
3851
    background-color: transparent;
3852
    border-color: #5bc0de;
3853
    border: 2px solid;
3854
}
3855
3856
.fastspring_btn-outline-info:hover
3857
{
3858
    color: #fff !important;
3859
    background-color: #5bc0de;
3860
    border-color: #5bc0de;
3861
}
3862
3863
.fastspring_btn-outline-info:focus, .fastspring_btn-outline-info.focus
3864
{
3865
    color: #fff !important;
3866
    background-color: #5bc0de;
3867
    border-color: #5bc0de;
3868
}
3869
3870
.fastspring_btn-outline-info:active, .fastspring_btn-outline-info.active,
3871
.open > .fastspring_btn-outline-info.dropdown-toggle
3872
{
3873
    color: #fff !important;
3874
    background-color: #5bc0de;
3875
    border-color: #5bc0de;
3876
}
3877
3878
.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,
3879
.open > .fastspring_btn-outline-info.dropdown-toggle:hover,
3880
.open > .fastspring_btn-outline-info.dropdown-toggle:focus,
3881
.open > .fastspring_btn-outline-info.dropdown-toggle.focus
3882
{
3883
    color: #fff !important;
3884
    background-color: #269abc;
3885
    border-color: #1f7e9a;
3886
}
3887
3888
.fastspring_btn-outline-info.disabled:focus, .fastspring_btn-outline-info.disabled.focus, .fastspring_btn-outline-info:disabled:focus, .fastspring_btn-outline-info:disabled.focus
3889
{
3890
    border-color: #b0e1ef;
3891
}
3892
3893
.fastspring_btn-outline-info.disabled:hover, .fastspring_btn-outline-info:disabled:hover
3894
{
3895
    border-color: #b0e1ef;
3896
}
3897
3898
.fastspring_btn-outline-success
3899
{
3900
    color: #5cb85c !important;
3901
    background-image: none;
3902
    background-color: transparent;
3903
    border-color: #5cb85c;
3904
    border: 2px solid;
3905
}
3906
3907
.fastspring_btn-outline-success:hover
3908
{
3909
    color: #fff !important;
3910
    background-color: #5cb85c;
3911
    border-color: #5cb85c;
3912
}
3913
3914
.fastspring_btn-outline-success:focus, .fastspring_btn-outline-success.focus
3915
{
3916
    color: #fff !important;
3917
    background-color: #5cb85c;
3918
    border-color: #5cb85c;
3919
}
3920
3921
.fastspring_btn-outline-success:active, .fastspring_btn-outline-success.active,
3922
.open > .fastspring_btn-outline-success.dropdown-toggle
3923
{
3924
    color: #fff !important;
3925
    background-color: #5cb85c;
3926
    border-color: #5cb85c;
3927
}
3928
3929
.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,
3930
.open > .fastspring_btn-outline-success.dropdown-toggle:hover,
3931
.open > .fastspring_btn-outline-success.dropdown-toggle:focus,
3932
.open > .fastspring_btn-outline-success.dropdown-toggle.focus
3933
{
3934
    color: #fff !important;
3935
    background-color: #398439;
3936
    border-color: #2d672d;
3937
}
3938
3939
.fastspring_btn-outline-success.disabled:focus, .fastspring_btn-outline-success.disabled.focus, .fastspring_btn-outline-success:disabled:focus, .fastspring_btn-outline-success:disabled.focus
3940
{
3941
    border-color: #a3d7a3;
3942
}
3943
3944
.fastspring_btn-outline-success.disabled:hover, .fastspring_btn-outline-success:disabled:hover
3945
{
3946
    border-color: #a3d7a3;
3947
}
3948
3949
.fastspring_btn-outline-warning
3950
{
3951
    color: #f0ad4e !important;
3952
    background-image: none;
3953
    background-color: transparent;
3954
    border-color: #f0ad4e;
3955
    border: 2px solid;
3956
}
3957
3958
.fastspring_btn-outline-warning:hover
3959
{
3960
    color: #fff !important;
3961
    background-color: #f0ad4e;
3962
    border-color: #f0ad4e;
3963
}
3964
3965
.fastspring_btn-outline-warning:focus, .fastspring_btn-outline-warning.focus
3966
{
3967
    color: #fff !important;
3968
    background-color: #f0ad4e;
3969
    border-color: #f0ad4e;
3970
}
3971
3972
.fastspring_btn-outline-warning:active, .fastspring_btn-outline-warning.active,
3973
.open > .fastspring_btn-outline-warning.dropdown-toggle
3974
{
3975
    color: #fff !important;
3976
    background-color: #f0ad4e;
3977
    border-color: #f0ad4e;
3978
}
3979
3980
.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,
3981
.open > .fastspring_btn-outline-warning.dropdown-toggle:hover,
3982
.open > .fastspring_btn-outline-warning.dropdown-toggle:focus,
3983
.open > .fastspring_btn-outline-warning.dropdown-toggle.focus
3984
{
3985
    color: #fff !important;
3986
    background-color: #d58512;
3987
    border-color: #b06d0f;
3988
}
3989
3990
.fastspring_btn-outline-warning.disabled:focus, .fastspring_btn-outline-warning.disabled.focus, .fastspring_btn-outline-warning:disabled:focus, .fastspring_btn-outline-warning:disabled.focus
3991
{
3992
    border-color: #f8d9ac;
3993
}
3994
3995
.fastspring_btn-outline-warning.disabled:hover, .fastspring_btn-outline-warning:disabled:hover
3996
{
3997
    border-color: #f8d9ac;
3998
}
3999
4000
.fastspring_btn-outline-danger
4001
{
4002
    color: #d9534f !important;
4003
    background-image: none;
4004
    background-color: transparent;
4005
    border-color: #d9534f;
4006
    border: 2px solid;
4007
}
4008
4009
.fastspring_btn-outline-danger:hover
4010
{
4011
    color: #fff !important;
4012
    background-color: #d9534f;
4013
    border-color: #d9534f;
4014
}
4015
4016
.fastspring_btn-outline-danger:focus, .fastspring_btn-outline-danger.focus
4017
{
4018
    color: #fff !important;
4019
    background-color: #d9534f;
4020
    border-color: #d9534f;
4021
}
4022
4023
.fastspring_btn-outline-danger:active, .fastspring_btn-outline-danger.active,
4024
.open > .fastspring_btn-outline-danger.dropdown-toggle
4025
{
4026
    color: #fff !important;
4027
    background-color: #d9534f;
4028
    border-color: #d9534f;
4029
}
4030
4031
.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,
4032
.open > .fastspring_btn-outline-danger.dropdown-toggle:hover,
4033
.open > .fastspring_btn-outline-danger.dropdown-toggle:focus,
4034
.open > .fastspring_btn-outline-danger.dropdown-toggle.focus
4035
{
4036
    color: #fff;
4037
    background-color: #ac2925;
4038
    border-color: #8b211e;
4039
}
4040
4041
.fastspring_btn-outline-danger.disabled:focus, .fastspring_btn-outline-danger.disabled.focus, .fastspring_btn-outline-danger:disabled:focus, .fastspring_btn-outline-danger:disabled.focus
4042
{
4043
    border-color: #eba5a3;
4044
}
4045
4046
.fastspring_btn-outline-danger.disabled:hover, .fastspring_btn-outline-danger:disabled:hover
4047
{
4048
    border-color: #eba5a3;
4049
}
4050
4051
.fastspring_btn-link
4052
{
4053
    font-weight: normal;
4054
    color: #0275d8 !important;
4055
    border-radius: 0;
4056
}
4057
4058
.fastspring_btn-link, .fastspring_btn-link:active, .fastspring_btn-link.active, .fastspring_btn-link:disabled
4059
{
4060
    background-color: transparent;
4061
}
4062
4063
.fastspring_btn-link, .fastspring_btn-link:focus, .fastspring_btn-link:active
4064
{
4065
    border-color: transparent;
4066
}
4067
4068
.fastspring_btn-link:hover
4069
{
4070
    border-color: transparent;
4071
}
4072
4073
.fastspring_btn-link:focus, .fastspring_btn-link:hover
4074
{
4075
    color: #014c8c !important;
4076
    text-decoration: underline;
4077
    background-color: transparent;
4078
}
4079
4080
.fastspring_btn-link:disabled:focus, .fastspring_btn-link:disabled:hover
4081
{
4082
    color: #818a91 !important;
4083
    text-decoration: none;
4084
}
4085
4086
.fastspring_btn-lg, .fastspring_btn-group-lg > .fastspring_btn
4087
{
4088
    padding: 10px 16px;
4089
    font-size: 18px;
4090
    border-radius: 6px;
4091
    line-height: 45px;
4092
}
4093
4094
.fastspring_btn-sm, .fastspring_btn-group-sm > .fastspring_btn
4095
{
4096
    padding: 5px 10px;
4097
    font-size: 12px;
4098
    border-radius: 3px;
4099
}
4100
4101
.fastspring_btn-block
4102
{
4103
    display: block;
4104
    width: 100%;
4105
    font-weight: normal;
4106
    line-height: 1.25;
4107
    text-align: center;
4108
    white-space: nowrap;
4109
    vertical-align: middle;
4110
    cursor: pointer;
4111
    -webkit-user-select: none;
4112
    -moz-user-select: none;
4113
    -ms-user-select: none;
4114
    user-select: none;
4115
    padding: 6px 12px;
4116
    font-size: 14px;
4117
    border-radius: 4px;
4118
    text-decoration: none;
4119
}
4120
4121
.fastspring_btn-block + .fastspring_btn-block
4122
{
4123
    margin-top: 0.5rem;
4124
}
4125
4126
@media (max-width: 575.98px)
4127
{
4128
    .fastspring_btn.responsive-xs, .fastspring_btn-lg.responsive-xs, .fastspring_btn-sm.responsive-xs
4129
    {
4130
        display: block;
4131
        width: 100%;
4132
    }
4133
}
4134
4135
@media (max-width: 767.98px)
4136
{
4137
    .fastspring_btn.responsive-sm, .fastspring_btn-lg.responsive-sm, .fastspring_btn-sm.responsive-sm
4138
    {
4139
        display: block;
4140
        width: 100%;
4141
    }
4142
}
4143
4144
.fastspring_btn-block
4145
{
4146
    display: block;
4147
    width: 100%;
4148
    font-weight: normal;
4149
    line-height: 1.25;
4150
    text-align: center;
4151
    white-space: nowrap;
4152
    vertical-align: middle;
4153
    cursor: pointer;
4154
    -webkit-user-select: none;
4155
    -moz-user-select: none;
4156
    -ms-user-select: none;
4157
    user-select: none;
4158
    padding: 6px 12px;
4159
    font-size: 14px;
4160
    border-radius: 4px;
4161
    text-decoration: none;
4162
}
4163
4164
.fastspring_btn-block + .fastspring_btn-block
4165
{
4166
    margin-top: 0.5rem;
4167
}
4168
4169
@media (max-width: 575.98px)
4170
{
4171
    .fastspring_btn.responsive-xs, .fastspring_btn-lg.responsive-xs, .fastspring_btn-sm.responsive-xs
4172
    {
4173
        display: block;
4174
        width: 100%;
4175
    }
4176
}
4177
4178
@media (max-width: 767.98px)
4179
{
4180
    .fastspring_btn.responsive-sm, .fastspring_btn-lg.responsive-sm, .fastspring_btn-sm.responsive-sm
4181
    {
4182
        display: block;
4183
        width: 100%;
4184
    }
4185
}
4186
4187
.fsb-img-align-right
4188
{
4189
    text-align: right;
4190
}
4191
4192
.fsb-img-align-center
4193
{
4194
    text-align: center;
4195
}
4196
4197
.fsb-row a.fsb_productcatalog
4198
{
4199
    text-decoration: none !important;
4200
}
4201
4202
4203
.fsb_alert-danger
4204
{
4205
    color: #a94442;
4206
    background-color: #f2dede;
4207
    border-color: #ebccd1;
4208
}
4209
4210
.fsb_alert, .fs_mod_alert
4211
{
4212
    -webkit-animation-duration: .4s;
4213
    animation-duration: .4s;
4214
    -webkit-animation-name: fs_mod_animatetop;
4215
    animation-name: fs_mod_animatetop;
4216
    padding: 15px;
4217
    margin-bottom: 20px;
4218
    border: 1px solid transparent;
4219
    border-radius: 4px;
4220
    z-index: 999999999;
4221
}
4222
4223
.fsb_alert h4
4224
{
4225
    margin-top: 0;
4226
    color: inherit;
4227
}
1
164
 
1
function applycoupon() {
2
    var couponid= document.getElementById('couponcode').value;
3
    fastspring.builder.promo(couponid);
4
}
5
6
function markupHelpersCallback() {
7
    Handlebars.registerHelper('iff', function(lvalue, operator, rvalue, options) {
8
        var functions = {
9
            '==':       function(l,r) { return l == r; },
10
            '===':      function(l,r) { return l === r; },
11
            '!=':       function(l,r) { return l != r; },
12
            '<':        function(l,r) { return l < r; },
13
            '>':        function(l,r) { return l > r; },
14
            '<=':       function(l,r) { return l <= r; },
15
            '>=':       function(l,r) { return l >= r; },
16
            'typeof':   function(l,r) { return typeof l === r; }
17
        };
18
        if (!functions.hasOwnProperty(operator)){
19
            throw new Error("Handlerbars Helper 'iff' doesn't know the operator " + operator);
20
        }
21
        var result = functions[operator](lvalue,rvalue);
22
        if( result ) {
23
            return options.fn(this);
24
        } else {
25
            return options.inverse(this);
26
        }
27
    });
28
    Handlebars.registerPartial("pricing", document.getElementById('pricing-partial').innerHTML);
29
    Handlebars.registerPartial("quantity", document.getElementById('quantity-partial').innerHTML);
30
    Handlebars.registerPartial("pricing2", document.getElementById('pricing-partial2').innerHTML);
31
    Handlebars.registerPartial("volume-discount", document.getElementById('volume-discount').innerHTML);
32
    Handlebars.registerPartial("xsell", document.getElementById('xsell').innerHTML);
33
    Handlebars.registerPartial("upsell", document.getElementById('upsell').innerHTML);
34
    Handlebars.registerPartial("singlechoice", document.getElementById('singlechoice').innerHTML);
35
    Handlebars.registerPartial("multichoice", document.getElementById('multichoice').innerHTML);
36
}
37
38
function beforeRequestsCallbackFunction() {
39
    var fastspring_spinner=document.getElementById("fastspring_spinner");
40
    fastspring_spinner.style.display = "block";
41
}
42
43
function afterMarkupCallbackFunction() {
44
    init();
45
    var fastspring_spinner=document.getElementById("fastspring_spinner");
46
    fastspring_spinner.style.animationName="fsb-revfadeIn";
47
    setTimeout(function(){
48
        fastspring_spinner.style.animationName = "fsb-fadeIn";
49
        fastspring_spinner.style.display = "none";
50
    },450);    
51
}
52
53
function popupClosed(data) {
54
    var fastspring_spinner=document.getElementById("fastspring_spinner");
55
    fastspring_spinner.style.animationName="fs_revfadeIn";
56
    setTimeout(function(){
57
        fastspring_spinner.style.animationName = "fs_fadeIn";
58
        fastspring_spinner.style.display = "none";
59
    },450);
60
    if (data) {
61
        fastspring.builder.reset();
62
        /*If you want to redirect you can do the following*/
63
        /*window.location.replace("https://myDomain.com/?orderId=" + data.reference);*/
64
    }
65
}
66
67
/*If using Google Analytics, you can use the following function to decorate the links*/
68
function decorateCallback(url) {
69
    var linkerParam = null;
70
    if ( ga && typeof ga === 'function') {
71
        ga(function() {
72
            var trackers = ga.getAll();
73
            linkerParam = trackers[0].get('linkerParam');
74
        });
75
    }
76
    return (linkerParam ? url + '?' + linkerParam : url);
77
}
78
79
function errorCallback(code, string) {
80
    var fastspring_spinner=document.getElementById("fastspring_spinner");
81
    fastspring_spinner.style.animationName="fsb-revfadeIn";
82
    setTimeout(function(){
83
        fastspring_spinner.style.animationName = "fsb-fadeIn";
84
        fastspring_spinner.style.display = "none";
85
    },450);
86
    var fsb_error=document.getElementById("fsb_error");
87
    var fsb_error_msg=document.getElementById("fsb_error_msg");
88
    fsb_error.style.display = "block";
89
    fsb_error.style.animationName = "fsb-mod_animatetop";
90
    fsb_error_msg.innerHTML = "Error: " + code + " - " + string;
91
    setTimeout(function(){
92
        fsb_error.style.animationName = "fsb-mod_revanimatetop";
93
        setTimeout(function(){
94
            fsb_error.style.display = "none";
95
        }, 400)
96
    },5000);
97
}
98
99
function dataCallback(data) {
100
    if(data.messages[0]) {
101
        var fsb_error=document.getElementById("fsb_error");
102
        var fsb_error_msg=document.getElementById("fsb_error_msg");
103
        fsb_error.style.display = "block";
104
        fsb_error.style.animationName = "fsb-mod_animatetop";
105
        fsb_error_msg.innerHTML = data.messages[0].phrase;
106
        setTimeout(function(){
107
            fsb_error.style.animationName = "fsb-mod_revanimatetop";
108
            setTimeout(function(){
109
                fsb_error.style.display = "none";
110
            }, 400)
111
        },5000);
112
    }
113
    var minicart = document.getElementById("minicart-count");
114
    if(minicart) {
115
        let inCart = 0;
116
        if (data && data.hasOwnProperty('groups')) {
117
            const { groups } = data;
118
            groups.forEach(group => {
119
                if (group.items && Array.isArray(group.items)) {
120
                    group.items.forEach(item => {
121
                        if (item.selected) {
122
                            inCart += item.quantity;
123
                        }
124
                    });
125
                }
126
            });
127
        }
128
        document.getElementById("minicart-count").innerHTML = inCart;
129
    }
130
}
131
132
var value,
133
    quantity = document.getElementsByClassName('fsb-number');
134
function createBindings(quantityContainer) {
135
    var quantityAmount = quantityContainer.getElementsByClassName('fsb-qtyinput')[0];
136
    var increase = quantityContainer.getElementsByClassName('fsb-plus')[0];
137
    var decrease = quantityContainer.getElementsByClassName('fsb-minus')[0];
138
    increase.addEventListener('click', function () { increaseValue(this, quantityAmount); });
139
    decrease.addEventListener('click', function () { decreaseValue(this, quantityAmount); });
140
}
141
142
function init() {
143
    for (var i = 0; i < quantity.length; i++ ) {
144
        createBindings(quantity[i]);
145
    }
146
};
147
148
function increaseValue(clicker, quantityAmount) {
149
    value = parseInt(quantityAmount.value, 10);
150
    product = quantityAmount.getAttribute("data-fsc-item-path");
151
    value = isNaN(value) ? 0 : value;
152
    value++;
153
    quantityAmount.value = value;
154
    fastspring.builder.update(product, value);
155
}
156
157
function decreaseValue(clicker, quantityAmount) {
158
    value = parseInt(quantityAmount.value, 10);
159
    product = quantityAmount.getAttribute("data-fsc-item-path");
160
    value = isNaN(value) ? 0 : value;
161
    if (value > 0) value--;
162
    quantityAmount.value = value;
163
    fastspring.builder.update(product, value);
164
}

Related Topics