/*! Spectre.css v0.5.9 | MIT License | github.com/picturepan2/spectre */
/* Manually forked from Normalize.css */
/* normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/** 1. Change the default font family in all browsers (opinionated). 2. Correct the line height in all browsers. 3. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS. */
/* Document ========================================================================== */
html
{
    font-family: sans-serif; /* 1 */

        -ms-text-size-adjust: 100%; /* 3 */
    -webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections ========================================================================== */
/** Remove the margin in all browsers (opinionated). */
body
{
    margin: 0;
}

/** Add the correct display in IE 9-. */
article, aside, footer, header, nav, section
{
    display: block;
}

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1
{
    font-size: 2em;

    margin: .67em 0;
}

/* Grouping content ========================================================================== */
/** Add the correct display in IE 9-. 1. Add the correct display in IE. */
figcaption, figure, main
{ /* 1 */
    display: block;
}

/** Add the correct margin in IE 8 (removed). */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr
{
    overflow: visible; /* 2 */

    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
}

/** 1. Correct the inheritance and scaling of font size in all browsers. (removed) 2. Correct the odd `em` font sizing in all browsers. */
/* Text-level semantics ========================================================================== */
/** 1. Remove the gray background on active links in IE 10. 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */
a
{
    background-color: transparent; /* 1 */

    -webkit-text-decoration-skip: objects; /* 2 */
}

/** Remove the outline on focused links when they are also active or hovered in all browsers (opinionated). */
a:active, a:hover
{
    outline-width: 0;
}

/** Modify default styling of address. */
address
{
    font-style: normal;
}

/** 1. Remove the bottom border in Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. (removed) */
/** Prevent the duplicate application of `bolder` by the next rule in Safari 6. */
b, strong
{
    font-weight: inherit;
}

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong
{
    font-weight: bolder;
}

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, pre, samp
{
    font-family: 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', Menlo, Courier, monospace; /* 1 (changed) */
    font-size: 1em; /* 2 */
}

/** Add the correct font style in Android 4.3-. */
dfn
{
    font-style: italic;
}

/** Add the correct background and color in IE 9-. (Removed) */
/** Add the correct font size in all browsers. */
small
{
    font-size: 80%;
    font-weight: 400; /* (added) */
}

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sub
{
    bottom: -.25em;
}

sup
{
    top: -.5em;
}

/* Embedded content ========================================================================== */
/** Add the correct display in IE 9-. */
audio, video
{
    display: inline-block;
}

/** Add the correct display in iOS 4-7. */
audio:not([controls])
{
    display: none;

    height: 0;
}

/** Remove the border on images inside links in IE 10-. */
img
{
    border-style: none;
}

/** Hide the overflow in IE. */
svg:not(:root)
{
    overflow: hidden;
}

/* Forms ========================================================================== */
/** 1. Change the font styles in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea
{
    font-family: inherit; /* 1 (changed) */
    font-size: inherit; /* 1 (changed) */
    line-height: inherit; /* 1 (changed) */

    margin: 0; /* 2 */
}

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input
{ /* 1 */
    overflow: visible;
}

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select
{ /* 1 */
    text-transform: none;
}

/** 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` controls in Android 4. 2. Correct the inability to style clickable types in iOS and Safari. */
button, html [type='button'], [type='reset'], [type='submit']
{
    -webkit-appearance: button; /* 2 */
}

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner
{
    padding: 0;

    border-style: none;
}

/** Restore the focus styles unset by the previous rule (removed). */
/** Change the border, margin, and padding in all browsers (opinionated) (changed). */
fieldset
{
    margin: 0;
    padding: 0;

    border: 0;
}

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend
{
    display: table; /* 1 */

    box-sizing: border-box; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */

    white-space: normal; /* 1 */

    color: inherit; /* 2 */
}

/** 1. Add the correct display in IE 9-. 2. Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress
{
    display: inline-block; /* 1 */

    vertical-align: baseline; /* 2 */
}

/** Remove the default vertical scrollbar in IE. */
textarea
{
    overflow: auto;
}

/** 1. Add the correct box sizing in IE 10-. 2. Remove the padding in IE 10-. */
[type='checkbox'], [type='radio']
{
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type='number']::-webkit-inner-spin-button, [type='number']::-webkit-outer-spin-button
{
    height: auto;
}

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type='search']
{
    outline-offset: -2px; /* 2 */

    -webkit-appearance: textfield; /* 1 */
}

/** Remove the inner padding and cancel buttons in Chrome and Safari on macOS. */
[type='search']::-webkit-search-cancel-button, [type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button
{
    font: inherit; /* 2 */

    -webkit-appearance: button; /* 1 */
}

/* Interactive ========================================================================== */
/* Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. */
details, menu
{
    display: block;
}

/* Add the correct display in all browsers. */
summary
{
    display: list-item;

    outline: none;
}

/* Scripting ========================================================================== */
/** Add the correct display in IE 9-. */
canvas
{
    display: inline-block;
}

/** Add the correct display in IE. */
template
{
    display: none;
}

/* Hidden ========================================================================== */
/** Add the correct display in IE 10-. */
[hidden]
{
    display: none;
}

:root
{
    --header-height: 0;
    --container-height: calc(100vh - var(--header-height));
    --scrollbar-background: $pink-color-dark;
    --thumb-background: $pink-color;
}

*, *::before, *::after
{
    box-sizing: inherit;
}

html
{
    font-size: 20px;
    line-height: 1.5;

    box-sizing: border-box;

    -webkit-tap-highlight-color: transparent;
}

body
{
    font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
    font-size: .8rem;

    overflow-x: hidden;

    color: #321945;
    background: #fff;

    text-rendering: optimizeLegibility;
    scrollbar-width: thin;
    scrollbar-color: var(--thumb-background) var(--scrollbar-background);
}

body::-webkit-scrollbar
{
    width: 16px;
}

body::-webkit-scrollbar-track
{
    background: var(--scrollbar-background);
}

body::-webkit-scrollbar-thumb
{
    border: 3px solid var(--scrollbar-background);
    border-radius: 6px;
    background-color: var(--thumb-background);
}

a
{
    text-decoration: none;

    color: #e71e63;
    outline: none;
}

a:focus
{
    box-shadow: 0 0 0 .1rem rgba(231, 30, 99, .2);
}

a:focus, a:hover, a:active, a.active
{
    text-decoration: underline;

    color: #be144e;
}

a:visited
{
    color: #ec4c83;
}

.wh-100
{
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
}

.w-100
{
    width: 100%;
    max-width: 100%;
}

.h-100
{
    height: 100%;
    max-height: 100%;
}

h1, h2, h3, h4, h5, h6
{
    font-weight: 500;
    line-height: 1.2;

    margin-top: 0;
    margin-bottom: .5em;

    color: inherit;
}

.h1, .h2, .h3, .h4, .h5, .h6
{
    font-weight: 500;
}

h1, .h1
{
    font-size: 2rem;
}

h2, .h2
{
    font-size: 1.6rem;
}

h3, .h3
{
    font-size: 1.4rem;
}

h4, .h4
{
    font-size: 1.2rem;
}

h5, .h5
{
    font-size: 1rem;
}

h6, .h6
{
    font-size: .8rem;
}

p
{
    margin: 0 0 1.2rem;
}

a, ins, u
{
    text-decoration-skip: ink edges;
}

abbr[title]
{
    cursor: help;
    text-decoration: none;

    border-bottom: .05rem dotted;
}

kbd
{
    font-size: .7rem;
    line-height: 1.25;

    padding: .1rem .2rem;

    color: #fff;
    border-radius: .4rem;
    background: #241232;
}

mark
{
    padding: .05rem .1rem 0;

    color: #321945;
    border-bottom: .05rem solid #ffd367;
    border-radius: .4rem;
    background: #ffe9b3;
}

blockquote
{
    margin-left: 0;
    padding: .4rem .8rem;

    border-left: .1rem solid #cbaee2;
}

blockquote p:last-child
{
    margin-bottom: 0;
}

ul, ol
{
    margin: .8rem 0 .8rem .8rem;
    padding: 0;
}

ul ul, ul ol, ol ul, ol ol
{
    margin: .8rem 0 .8rem .8rem;
}

ul li, ol li
{
    margin-top: .4rem;
}

ul
{
    list-style: disc inside;
}

ul ul
{
    list-style-type: circle;
}

ol
{
    list-style: decimal inside;
}

ol ol
{
    list-style-type: lower-alpha;
}

dl dt
{
    font-weight: bold;
}

dl dd
{
    margin: .4rem 0 .8rem 0;
}

html:lang(zh), html:lang(zh-Hans), .lang-zh, .lang-zh-hans
{
    font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', sans-serif;
}

html:lang(zh-Hant), .lang-zh-hant
{
    font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'PingFang TC', 'Hiragino Sans CNS', 'Microsoft JhengHei', 'Helvetica Neue', sans-serif;
}

html:lang(ja), .lang-ja
{
    font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'Yu Gothic', YuGothic, Meiryo, 'Helvetica Neue', sans-serif;
}

html:lang(ko), .lang-ko
{
    font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Malgun Gothic', 'Helvetica Neue', sans-serif;
}

:lang(zh) ins, :lang(zh) u, :lang(ja) ins, :lang(ja) u, .lang-cjk ins, .lang-cjk u
{
    text-decoration: none;

    border-bottom: .05rem solid;
}

:lang(zh) del + del, :lang(zh) del + s, :lang(zh) ins + ins, :lang(zh) ins + u, :lang(zh) s + del, :lang(zh) s + s, :lang(zh) u + ins, :lang(zh) u + u, :lang(ja) del + del, :lang(ja) del + s, :lang(ja) ins + ins, :lang(ja) ins + u, :lang(ja) s + del, :lang(ja) s + s, :lang(ja) u + ins, :lang(ja) u + u, .lang-cjk del + del, .lang-cjk del + s, .lang-cjk ins + ins, .lang-cjk ins + u, .lang-cjk s + del, .lang-cjk s + s, .lang-cjk u + ins, .lang-cjk u + u
{
    margin-left: .125em;
}

.table
{
    width: 100%;

    border-spacing: 0;
    border-collapse: collapse;

    text-align: left;
}

.table.table-striped tbody tr:nth-of-type(odd)
{
    background: #e3d3ef;
}

.table tbody tr.active, .table.table-striped tbody tr.active
{
    background: #dcc8eb;
}

.table.table-hover tbody tr:hover
{
    background: #dcc8eb;
}

.table.table-scroll
{
    display: block;
    overflow-x: auto;

    padding-bottom: .75rem;

    white-space: nowrap;
}

.table td, .table th
{
    padding: .6rem .4rem;

    border-bottom: .05rem solid #cbaee2;
}

.table th
{
    border-bottom-width: .1rem;
}

.btn
{
    font-size: .8rem;
    line-height: 1.2rem;

    display: inline-block;

    height: 1.8rem;
    padding: .25rem .4rem;

    cursor: pointer;
    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none;
    transition: background .2s, border .2s, box-shadow .2s, color .2s;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    text-decoration: none;

    color: #e71e63;
    border: .05rem solid #e71e63;
    border-radius: .4rem;
    outline: none;
    background: #fff;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.btn:focus
{
    box-shadow: 0 0 0 .1rem rgba(231, 30, 99, .2);
}

.btn:focus, .btn:hover
{
    text-decoration: none;

    border-color: #de185c;
    background: #f9cbdb;
}

.btn:active, .btn.active
{
    text-decoration: none;

    color: #fff;
    border-color: #c71552;
    background: #de185c;
}

.btn:active.loading::after, .btn.active.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn[disabled], .btn:disabled, .btn.disabled
{
    cursor: default;
    pointer-events: none;

    opacity: .5;
}

.btn.btn-primary
{
    color: #fff;
    border-color: #de185c;
    background: #e71e63;
}

.btn.btn-primary:focus, .btn.btn-primary:hover
{
    color: #fff;
    border-color: #c71552;
    background: #d51758;
}

.btn.btn-primary:active, .btn.btn-primary.active
{
    color: #fff;
    border-color: #be144e;
    background: #cc1654;
}

.btn.btn-primary.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn.btn-success
{
    color: #fff;
    border-color: #008812;
    background: #009714;
}

.btn.btn-success:focus
{
    box-shadow: 0 0 0 .1rem rgba(0, 151, 20, .2);
}

.btn.btn-success:focus, .btn.btn-success:hover
{
    color: #fff;
    border-color: #007e11;
    background: #008d13;
}

.btn.btn-success:active, .btn.btn-success.active
{
    color: #fff;
    border-color: #00640d;
    background: #00730f;
}

.btn.btn-success.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn.btn-error
{
    color: #fff;
    border-color: #c50d00;
    background: #d40e00;
}

.btn.btn-error:focus
{
    box-shadow: 0 0 0 .1rem rgba(212, 14, 0, .2);
}

.btn.btn-error:focus, .btn.btn-error:hover
{
    color: #fff;
    border-color: #bb0c00;
    background: #ca0d00;
}

.btn.btn-error:active, .btn.btn-error.active
{
    color: #fff;
    border-color: #a10b00;
    background: #b00c00;
}

.btn.btn-error.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn.btn-dark
{
    color: #fff;
    border-color: #6c072e;
    background: #7a0834;
}

.btn.btn-dark:focus
{
    box-shadow: 0 0 0 .1rem rgba(122, 8, 52, .2);
}

.btn.btn-dark:focus, .btn.btn-dark:hover
{
    color: #fff;
    border-color: #62062a;
    background: #700730;
}

.btn.btn-dark:active, .btn.btn-dark.active
{
    color: #fff;
    border-color: #4a0520;
    background: #580626;
}

.btn.btn-dark.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn.btn-blue
{
    color: #fff;
    border-color: #3600c9;
    background: #3a00d8;
}

.btn.btn-blue:focus
{
    box-shadow: 0 0 0 .1rem rgba(58, 0, 216, .2);
}

.btn.btn-blue:focus, .btn.btn-blue:hover
{
    color: #fff;
    border-color: #3300bf;
    background: #3700ce;
}

.btn.btn-blue:active, .btn.btn-blue.active
{
    color: #fff;
    border-color: #2c00a5;
    background: #3000b4;
}

.btn.btn-blue.loading::after
{
    border-bottom-color: #fff;
    border-left-color: #fff;
}

.btn.btn-bordered
{
    color: currentColor;
    border: 1px solid;
    border-color: #fff;
    background: transparent;
}

.btn.btn-bordered:focus, .btn.btn-bordered:active, .btn.btn-bordered.active
{
    color: currentColor;
    border: 1px;
    border-color: #fff;
    background: transparent;
}

.btn.btn-bordered:hover
{
    color: #fff;
    border-color: #be144e;
    background: #e71e63;
}

.btn.btn-bordered-round
{
    color: currentColor;
    border: 1px solid;
    border-color: #fff;
    border-radius: 6px;
    background: transparent;
}

.btn.btn-bordered-round:focus, .btn.btn-bordered-round:active, .btn.btn-bordered-round.active
{
    color: currentColor;
    border: 1px;
    border-color: #fff;
    background: transparent;
}

.btn.btn-bordered-round:hover
{
    color: #fff;
    border-color: #be144e;
    background: #e71e63;
}

.btn.btn-link
{
    color: #e71e63;
    border-color: transparent;
    background: transparent;
}

.btn.btn-link:focus, .btn.btn-link:hover, .btn.btn-link:active, .btn.btn-link.active
{
    color: #be144e;
}

.btn.btn-sm
{
    font-size: .7rem;

    height: 1.4rem;
    padding: .05rem .3rem;
}

.btn.btn-lg
{
    font-size: .9rem;

    height: 2rem;
    padding: .35rem .6rem;
}

.btn.btn-block
{
    display: block;

    width: 100%;
}

.btn.btn-action
{
    width: 1.8rem;
    padding-right: 0;
    padding-left: 0;
}

.btn.btn-action.btn-sm
{
    width: 1.4rem;
}

.btn.btn-action.btn-lg
{
    width: 2rem;
}

.btn.btn-clear
{
    line-height: .8rem;

    width: 1rem;
    height: 1rem;
    margin-right: -2px;
    margin-left: .2rem;
    padding: .1rem;

    text-decoration: none;

    opacity: 1;
    color: currentColor;
    border: 0;
    background: transparent;
}

.btn.btn-clear:focus, .btn.btn-clear:hover
{
    opacity: .95;
    background: rgba(227, 211, 239, .5);
}

.btn.btn-clear::before
{
    content: '\2715';
}

.btn-group
{
    display: -ms-inline-flexbox;
    display: inline-flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.btn-group .btn
{
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
}

.btn-group .btn:first-child:not(:last-child)
{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group .btn:not(:first-child):not(:last-child)
{
    margin-left: -.05rem;

    border-radius: 0;
}

.btn-group .btn:last-child:not(:first-child)
{
    margin-left: -.05rem;

    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group .btn:focus, .btn-group .btn:hover, .btn-group .btn:active, .btn-group .btn.active
{
    z-index: 1;
}

.btn-group.btn-group-block
{
    display: -ms-flexbox;
    display: flex;
}

.btn-group.btn-group-block .btn
{
    -ms-flex: 1 0 0;
        flex: 1 0 0;
}

.form-group:not(:last-child)
{
    margin-bottom: .4rem;
}

fieldset
{
    margin-bottom: .8rem;
}

legend
{
    font-size: .9rem;
    font-weight: 500;

    margin-bottom: .8rem;
}

.form-label
{
    line-height: 1.2rem;

    display: block;

    padding: .3rem 0;
}

.form-label.label-sm
{
    font-size: .7rem;

    padding: .1rem 0;
}

.form-label.label-lg
{
    font-size: .9rem;

    padding: .4rem 0;
}

.form-input
{
    font-size: .8rem;
    line-height: 1.2rem;

    position: relative;

    display: block;

    width: 100%;
    max-width: 100%;
    height: 1.8rem;
    padding: .25rem .4rem;

    transition: background .2s, border .2s, box-shadow .2s, color .2s;

    color: #321945;
    border: .05rem solid #b388d4;
    border-radius: .4rem;
    outline: none;
    background: #fff;
    background-image: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.form-input:focus
{
    border-color: #e71e63;
    box-shadow: 0 0 0 .1rem rgba(231, 30, 99, .2);
}

.form-input:-ms-input-placeholder
{
    color: #b388d4;
}

.form-input::-ms-input-placeholder
{
    color: #b388d4;
}

.form-input::placeholder
{
    color: #b388d4;
}

.form-input.input-sm
{
    font-size: .7rem;

    height: 1.4rem;
    padding: .05rem .3rem;
}

.form-input.input-lg
{
    font-size: .9rem;

    height: 2rem;
    padding: .35rem .6rem;
}

.form-input.input-inline
{
    display: inline-block;

    width: auto;

    vertical-align: middle;
}

.form-input[type='file']
{
    height: auto;
}

textarea.form-input, textarea.form-input.input-lg, textarea.form-input.input-sm
{
    height: auto;
}

.form-input-hint
{
    font-size: .7rem;

    margin-top: .2rem;

    color: #b388d4;
}

.has-success .form-input-hint, .is-success + .form-input-hint
{
    color: #009714;
}

.has-error .form-input-hint, .is-error + .form-input-hint
{
    color: #d40e00;
}

.form-select
{
    font-size: .8rem;
    line-height: 1.2rem;

    width: 100%;
    height: 1.8rem;
    padding: .25rem .4rem;

    vertical-align: middle;

    color: inherit;
    border: .05rem solid #b388d4;
    border-radius: .4rem;
    outline: none;
    background: #fff;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.form-select:focus
{
    border-color: #e71e63;
    box-shadow: 0 0 0 .1rem rgba(231, 30, 99, .2);
}

.form-select::-ms-expand
{
    display: none;
}

.form-select.select-sm
{
    font-size: .7rem;

    height: 1.4rem;
    padding: .05rem 1.1rem .05rem .3rem;
}

.form-select.select-lg
{
    font-size: .9rem;

    height: 2rem;
    padding: .35rem 1.4rem .35rem .6rem;
}

.form-select[size], .form-select[multiple]
{
    height: auto;
    padding: .25rem .4rem;
}

.form-select[size] option, .form-select[multiple] option
{
    padding: .1rem .2rem;
}

.form-select:not([multiple]):not([size])
{
    padding-right: 1.2rem;

    background: #fff url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns=\'http://www.w3.org/2000/svg\'%20viewBox=\'0%200%204%205\'%3E%3Cpath%20fill=\'%23667189\'%20d=\'M2%200L0%202h4zm0%205L0%203h4z\'/%3E%3C/svg%3E') no-repeat right .35rem center/.4rem .5rem;
}

.has-icon-left, .has-icon-right
{
    position: relative;
}

.has-icon-left .form-icon, .has-icon-right .form-icon
{
    position: absolute;
    z-index: 2;
    top: 50%;

    width: .8rem;
    height: .8rem;
    margin: 0 .25rem;

    transform: translateY(-50%);
}

.has-icon-left .form-icon
{
    left: .05rem;
}

.has-icon-left .form-input
{
    padding-left: 1.3rem;
}

.has-icon-right .form-icon
{
    right: .05rem;
}

.has-icon-right .form-input
{
    padding-right: 1.3rem;
}

.form-checkbox, .form-radio, .form-switch
{
    line-height: 1.2rem;

    position: relative;

    display: block;

    min-height: 1.4rem;
    margin: .2rem 0;
    padding: .1rem .4rem .1rem 1.2rem;
}

.form-checkbox input, .form-radio input, .form-switch input
{
    position: absolute;

    overflow: hidden;
    clip: rect(0, 0, 0, 0);

    width: 1px;
    height: 1px;
    margin: -1px;
}

.form-checkbox input:focus + .form-icon, .form-radio input:focus + .form-icon, .form-switch input:focus + .form-icon
{
    border-color: #e71e63;
    box-shadow: 0 0 0 .1rem rgba(231, 30, 99, .2);
}

.form-checkbox input:checked + .form-icon, .form-radio input:checked + .form-icon, .form-switch input:checked + .form-icon
{
    border-color: #e71e63;
    background: #e71e63;
}

.form-checkbox .form-icon, .form-radio .form-icon, .form-switch .form-icon
{
    position: absolute;

    display: inline-block;

    cursor: pointer;
    transition: background .2s, border .2s, box-shadow .2s, color .2s;

    border: .05rem solid #b388d4;
}

.form-checkbox.input-sm, .form-radio.input-sm, .form-switch.input-sm
{
    font-size: .7rem;

    margin: 0;
}

.form-checkbox.input-lg, .form-radio.input-lg, .form-switch.input-lg
{
    font-size: .9rem;

    margin: .3rem 0;
}

.form-checkbox .form-icon, .form-radio .form-icon
{
    top: .3rem;
    left: 0;

    width: .8rem;
    height: .8rem;

    background: #fff;
}

.form-checkbox input:active + .form-icon, .form-radio input:active + .form-icon
{
    background: #dcc8eb;
}

.form-checkbox .form-icon
{
    border-radius: .4rem;
}

.form-checkbox input:checked + .form-icon::before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 6px;
    height: 9px;
    margin-top: -6px;
    margin-left: -3px;

    content: '';
    transform: rotate(45deg);

    border: .1rem solid #fff;
    border-top-width: 0;
    border-left-width: 0;
    background-clip: padding-box;
}

.form-checkbox input:indeterminate + .form-icon
{
    border-color: #e71e63;
    background: #e71e63;
}

.form-checkbox input:indeterminate + .form-icon::before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 10px;
    height: 2px;
    margin-top: -1px;
    margin-left: -5px;

    content: '';

    background: #fff;
}

.form-radio .form-icon
{
    border-radius: 50%;
}

.form-radio input:checked + .form-icon::before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 6px;
    height: 6px;

    content: '';
    transform: translate(-50%, -50%);

    border-radius: 50%;
    background: #fff;
}

.form-switch
{
    padding-left: 2rem;
}

.form-switch .form-icon
{
    top: .25rem;
    left: 0;

    width: 1.6rem;
    height: .9rem;

    border-radius: .45rem;
    background: #b388d4;
    background-clip: padding-box;
}

.form-switch .form-icon::before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: .8rem;
    height: .8rem;

    content: '';
    transition: background .2s, border .2s, box-shadow .2s, color .2s, left .2s;

    border-radius: 50%;
    background: #fff;
}

.form-switch input:checked + .form-icon::before
{
    left: 14px;
}

.form-switch input:active + .form-icon::before
{
    background: #e3d3ef;
}

.input-group
{
    display: -ms-flexbox;
    display: flex;
}

.input-group .input-group-addon
{
    line-height: 1.2rem;

    padding: .25rem .4rem;

    white-space: nowrap;

    border: .05rem solid #b388d4;
    border-radius: .4rem;
    background: #e3d3ef;
}

.input-group .input-group-addon.addon-sm
{
    font-size: .7rem;

    padding: .05rem .3rem;
}

.input-group .input-group-addon.addon-lg
{
    font-size: .9rem;

    padding: .35rem .6rem;
}

.input-group .form-input, .input-group .form-select
{
    width: 1%;

    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
}

.input-group .input-group-btn
{
    z-index: 1;
}

.input-group .form-input:first-child:not(:last-child), .input-group .form-select:first-child:not(:last-child), .input-group .input-group-addon:first-child:not(:last-child), .input-group .input-group-btn:first-child:not(:last-child)
{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group .form-input:not(:first-child):not(:last-child), .input-group .form-select:not(:first-child):not(:last-child), .input-group .input-group-addon:not(:first-child):not(:last-child), .input-group .input-group-btn:not(:first-child):not(:last-child)
{
    margin-left: -.05rem;

    border-radius: 0;
}

.input-group .form-input:last-child:not(:first-child), .input-group .form-select:last-child:not(:first-child), .input-group .input-group-addon:last-child:not(:first-child), .input-group .input-group-btn:last-child:not(:first-child)
{
    margin-left: -.05rem;

    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group .form-input:focus, .input-group .form-select:focus, .input-group .input-group-addon:focus, .input-group .input-group-btn:focus
{
    z-index: 2;
}

.input-group .form-select
{
    width: auto;
}

.input-group.input-inline
{
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.has-success .form-input, .form-input.is-success, .has-success .form-select, .form-select.is-success
{
    border-color: #009714;
    background: #a6ffb2;
}

.has-success .form-input:focus, .form-input.is-success:focus, .has-success .form-select:focus, .form-select.is-success:focus
{
    box-shadow: 0 0 0 .1rem rgba(0, 151, 20, .2);
}

.has-error .form-input, .form-input.is-error, .has-error .form-select, .form-select.is-error
{
    border-color: #d40e00;
    background: #ffe5e3;
}

.has-error .form-input:focus, .form-input.is-error:focus, .has-error .form-select:focus, .form-select.is-error:focus
{
    box-shadow: 0 0 0 .1rem rgba(212, 14, 0, .2);
}

.has-error .form-checkbox .form-icon, .form-checkbox.is-error .form-icon, .has-error .form-radio .form-icon, .form-radio.is-error .form-icon, .has-error .form-switch .form-icon, .form-switch.is-error .form-icon
{
    border-color: #d40e00;
}

.has-error .form-checkbox input:checked + .form-icon, .form-checkbox.is-error input:checked + .form-icon, .has-error .form-radio input:checked + .form-icon, .form-radio.is-error input:checked + .form-icon, .has-error .form-switch input:checked + .form-icon, .form-switch.is-error input:checked + .form-icon
{
    border-color: #d40e00;
    background: #d40e00;
}

.has-error .form-checkbox input:focus + .form-icon, .form-checkbox.is-error input:focus + .form-icon, .has-error .form-radio input:focus + .form-icon, .form-radio.is-error input:focus + .form-icon, .has-error .form-switch input:focus + .form-icon, .form-switch.is-error input:focus + .form-icon
{
    border-color: #d40e00;
    box-shadow: 0 0 0 .1rem rgba(212, 14, 0, .2);
}

.has-error .form-checkbox input:indeterminate + .form-icon, .form-checkbox.is-error input:indeterminate + .form-icon
{
    border-color: #d40e00;
    background: #d40e00;
}

.form-input:not(:-ms-input-placeholder):invalid
{
    border-color: #d40e00;
}

.form-input:not(:placeholder-shown):invalid
{
    border-color: #d40e00;
}

.form-input:not(:-ms-input-placeholder):invalid:focus
{
    background: #ffe5e3;
    box-shadow: 0 0 0 .1rem rgba(212, 14, 0, .2);
}

.form-input:not(:placeholder-shown):invalid:focus
{
    background: #ffe5e3;
    box-shadow: 0 0 0 .1rem rgba(212, 14, 0, .2);
}

.form-input:not(:-ms-input-placeholder):invalid + .form-input-hint
{
    color: #d40e00;
}

.form-input:not(:placeholder-shown):invalid + .form-input-hint
{
    color: #d40e00;
}

.form-input:disabled, .form-input.disabled, .form-select:disabled, .form-select.disabled
{
    cursor: not-allowed;

    opacity: .5;
    background-color: #dcc8eb;
}

.form-input[readonly]
{
    background-color: #e3d3ef;
}

input:disabled + .form-icon, input.disabled + .form-icon
{
    cursor: not-allowed;

    opacity: .5;
    background: #dcc8eb;
}

.form-switch input:disabled + .form-icon::before, .form-switch input.disabled + .form-icon::before
{
    background: #fff;
}

.form-horizontal
{
    padding: .4rem 0;
}

.form-horizontal .form-group
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.form-inline
{
    display: inline-block;
}

.label
{
    line-height: 1.25;

    display: inline-block;

    padding: .1rem .2rem;

    color: #3f2058;
    border-radius: .4rem;
    background: #dcc8eb;
}

.label.label-rounded
{
    padding-right: .4rem;
    padding-left: .4rem;

    border-radius: 5rem;
}

.label.label-primary
{
    color: #fff;
    background: #e71e63;
}

.label.label-secondary
{
    color: #e71e63;
    background: #f9cbdb;
}

.label.label-success
{
    color: #fff;
    background: #009714;
}

.label.label-warning
{
    color: #fff;
    background: #ffb700;
}

.label.label-error
{
    color: #fff;
    background: #d40e00;
}

code
{
    font-size: 85%;
    line-height: 1.25;

    padding: .1rem .2rem;

    color: #d73e48;
    border-radius: .4rem;
    background: #fcf2f2;
}

.code
{
    position: relative;

    color: #321945;
    border-radius: .4rem;
}

.code::before
{
    font-size: .7rem;

    position: absolute;
    top: .1rem;
    right: .4rem;

    content: attr(data-lang);

    color: #b388d4;
}

.code code
{
    line-height: 1.5;

    display: block;
    overflow-x: auto;

    width: 100%;
    padding: 1rem;

    color: inherit;
    background: #e3d3ef;
}

.img-responsive
{
    display: block;

    max-width: 100%;
    height: auto;
}

.img-fit-cover
{
    object-fit: cover;
}

.img-fit-contain
{
    object-fit: contain;
}

.video-responsive
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 100%;
    padding: 0;
}

.video-responsive::before
{
    display: block;

    padding-bottom: 56.25%;

    content: '';
}

.video-responsive iframe, .video-responsive object, .video-responsive embed
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 100%;

    border: 0;
}

video.video-responsive
{
    max-width: 100%;
    height: auto;
}

video.video-responsive::before
{
    content: none;
}

.video-responsive-4-3::before
{
    padding-bottom: 75%;
}

.video-responsive-1-1::before
{
    padding-bottom: 100%;
}

.figure
{
    margin: 0 0 .4rem 0;
}

.figure .figure-caption
{
    margin-top: .4rem;

    color: #683490;
}

.container
{
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: .4rem;
    padding-left: .4rem;
}

.container.grid-xl
{
    max-width: 1296px;
}

.container.grid-lg
{
    max-width: 976px;
}

.container.grid-md
{
    max-width: 856px;
}

.container.grid-sm
{
    max-width: 616px;
}

.container.grid-xs
{
    max-width: 496px;
}

.show-xs, .show-sm, .show-md, .show-lg, .show-xl
{
    display: none !important;
}

.cols, .columns
{
    display: -ms-flexbox;
    display: flex;

    margin-right: -.4rem;
    margin-left: -.4rem;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.cols.col-gapless, .columns.col-gapless
{
    margin-right: 0;
    margin-left: 0;
}

.cols.col-gapless > .column, .columns.col-gapless > .column
{
    padding-right: 0;
    padding-left: 0;
}

.cols.col-oneline, .columns.col-oneline
{
    overflow-x: auto;

    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
}

[class~='col-'], .column
{
    max-width: 100%;
    padding-right: .4rem;
    padding-left: .4rem;

    -ms-flex: 1;
        flex: 1;
}

[class~='col-'].col-12, [class~='col-'].col-11, [class~='col-'].col-10, [class~='col-'].col-9, [class~='col-'].col-8, [class~='col-'].col-7, [class~='col-'].col-6, [class~='col-'].col-5, [class~='col-'].col-4, [class~='col-'].col-3, [class~='col-'].col-2, [class~='col-'].col-1, [class~='col-'].col-auto, .column.col-12, .column.col-11, .column.col-10, .column.col-9, .column.col-8, .column.col-7, .column.col-6, .column.col-5, .column.col-4, .column.col-3, .column.col-2, .column.col-1, .column.col-auto
{
    -ms-flex: none;
        flex: none;
}

.col-12
{
    width: 100%;
}

.col-11
{
    width: 91.66666667%;
}

.col-10
{
    width: 83.33333333%;
}

.col-9
{
    width: 75%;
}

.col-8
{
    width: 66.66666667%;
}

.col-7
{
    width: 58.33333333%;
}

.col-6
{
    width: 50%;
}

.col-5
{
    width: 41.66666667%;
}

.col-4
{
    width: 33.33333333%;
}

.col-3
{
    width: 25%;
}

.col-2
{
    width: 16.66666667%;
}

.col-1
{
    width: 8.33333333%;
}

.col-auto
{
    width: auto;
    max-width: none;

    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
}

.col-mx-auto
{
    margin-right: auto;
    margin-left: auto;
}

.col-ml-auto
{
    margin-left: auto;
}

.col-mr-auto
{
    margin-right: auto;
}

@media (max-width: 1280px)
{
    .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-xl-auto
    {
        -ms-flex: none;
            flex: none;
    }
    .col-xl-12
    {
        width: 100%;
    }
    .col-xl-11
    {
        width: 91.66666667%;
    }
    .col-xl-10
    {
        width: 83.33333333%;
    }
    .col-xl-9
    {
        width: 75%;
    }
    .col-xl-8
    {
        width: 66.66666667%;
    }
    .col-xl-7
    {
        width: 58.33333333%;
    }
    .col-xl-6
    {
        width: 50%;
    }
    .col-xl-5
    {
        width: 41.66666667%;
    }
    .col-xl-4
    {
        width: 33.33333333%;
    }
    .col-xl-3
    {
        width: 25%;
    }
    .col-xl-2
    {
        width: 16.66666667%;
    }
    .col-xl-1
    {
        width: 8.33333333%;
    }
    .col-xl-auto
    {
        width: auto;
    }
    .hide-xl
    {
        display: none !important;
    }
    .show-xl
    {
        display: block !important;
    }
}

@media (max-width: 960px)
{
    .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-lg-auto
    {
        -ms-flex: none;
            flex: none;
    }
    .col-lg-12
    {
        width: 100%;
    }
    .col-lg-11
    {
        width: 91.66666667%;
    }
    .col-lg-10
    {
        width: 83.33333333%;
    }
    .col-lg-9
    {
        width: 75%;
    }
    .col-lg-8
    {
        width: 66.66666667%;
    }
    .col-lg-7
    {
        width: 58.33333333%;
    }
    .col-lg-6
    {
        width: 50%;
    }
    .col-lg-5
    {
        width: 41.66666667%;
    }
    .col-lg-4
    {
        width: 33.33333333%;
    }
    .col-lg-3
    {
        width: 25%;
    }
    .col-lg-2
    {
        width: 16.66666667%;
    }
    .col-lg-1
    {
        width: 8.33333333%;
    }
    .col-lg-auto
    {
        width: auto;
    }
    .hide-lg
    {
        display: none !important;
    }
    .show-lg
    {
        display: block !important;
    }
}

@media (max-width: 840px)
{
    .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-md-auto
    {
        -ms-flex: none;
            flex: none;
    }
    .col-md-12
    {
        width: 100%;
    }
    .col-md-11
    {
        width: 91.66666667%;
    }
    .col-md-10
    {
        width: 83.33333333%;
    }
    .col-md-9
    {
        width: 75%;
    }
    .col-md-8
    {
        width: 66.66666667%;
    }
    .col-md-7
    {
        width: 58.33333333%;
    }
    .col-md-6
    {
        width: 50%;
    }
    .col-md-5
    {
        width: 41.66666667%;
    }
    .col-md-4
    {
        width: 33.33333333%;
    }
    .col-md-3
    {
        width: 25%;
    }
    .col-md-2
    {
        width: 16.66666667%;
    }
    .col-md-1
    {
        width: 8.33333333%;
    }
    .col-md-auto
    {
        width: auto;
    }
    .hide-md
    {
        display: none !important;
    }
    .show-md
    {
        display: block !important;
    }
}

@media (max-width: 600px)
{
    .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col-sm-auto
    {
        -ms-flex: none;
            flex: none;
    }
    .col-sm-12
    {
        width: 100%;
    }
    .col-sm-11
    {
        width: 91.66666667%;
    }
    .col-sm-10
    {
        width: 83.33333333%;
    }
    .col-sm-9
    {
        width: 75%;
    }
    .col-sm-8
    {
        width: 66.66666667%;
    }
    .col-sm-7
    {
        width: 58.33333333%;
    }
    .col-sm-6
    {
        width: 50%;
    }
    .col-sm-5
    {
        width: 41.66666667%;
    }
    .col-sm-4
    {
        width: 33.33333333%;
    }
    .col-sm-3
    {
        width: 25%;
    }
    .col-sm-2
    {
        width: 16.66666667%;
    }
    .col-sm-1
    {
        width: 8.33333333%;
    }
    .col-sm-auto
    {
        width: auto;
    }
    .hide-sm
    {
        display: none !important;
    }
    .show-sm
    {
        display: block !important;
    }
}

@media (max-width: 480px)
{
    .col-xs-12, .col-xs-11, .col-xs-10, .col-xs-9, .col-xs-8, .col-xs-7, .col-xs-6, .col-xs-5, .col-xs-4, .col-xs-3, .col-xs-2, .col-xs-1, .col-xs-auto
    {
        -ms-flex: none;
            flex: none;
    }
    .col-xs-12
    {
        width: 100%;
    }
    .col-xs-11
    {
        width: 91.66666667%;
    }
    .col-xs-10
    {
        width: 83.33333333%;
    }
    .col-xs-9
    {
        width: 75%;
    }
    .col-xs-8
    {
        width: 66.66666667%;
    }
    .col-xs-7
    {
        width: 58.33333333%;
    }
    .col-xs-6
    {
        width: 50%;
    }
    .col-xs-5
    {
        width: 41.66666667%;
    }
    .col-xs-4
    {
        width: 33.33333333%;
    }
    .col-xs-3
    {
        width: 25%;
    }
    .col-xs-2
    {
        width: 16.66666667%;
    }
    .col-xs-1
    {
        width: 8.33333333%;
    }
    .col-xs-auto
    {
        width: auto;
    }
    .hide-xs
    {
        display: none !important;
    }
    .show-xs
    {
        display: block !important;
    }
}

.hero
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding-top: 4rem;
    padding-bottom: 4rem;

    -ms-flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.hero.hero-sm
{
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.hero.hero-lg
{
    padding-top: 8rem;
    padding-bottom: 8rem;
}

.hero .hero-body
{
    padding: .4rem;
}

.navbar
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.navbar .navbar-section
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex: 1 0 0;
        flex: 1 0 0;
}

.navbar .navbar-section:not(:first-child):last-child
{
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.navbar .navbar-center
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
}

.navbar .navbar-brand
{
    font-size: .9rem;

    text-decoration: none;
}

.accordion input:checked ~ .accordion-header > .icon:first-child, .accordion[open] .accordion-header > .icon:first-child
{
    transform: rotate(90deg);
}

.accordion input:checked ~ .accordion-body, .accordion[open] .accordion-body
{
    max-height: 50rem;
}

.accordion .accordion-header
{
    display: block;

    padding: .2rem .4rem;
}

.accordion .accordion-header .icon
{
    transition: transform .25s;
}

.accordion .accordion-body
{
    overflow: hidden;

    max-height: 0;
    margin-bottom: .4rem;

    transition: max-height .25s;
}

summary.accordion-header::-webkit-details-marker
{
    display: none;
}

.avatar
{
    font-size: .8rem;
    font-weight: 300;
    line-height: 1.25;

    position: relative;

    display: inline-block;

    width: 1.6rem;
    height: 1.6rem;
    margin: 0;

    vertical-align: middle;

    color: rgba(255, 255, 255, .85);
    border-radius: 50%;
    background: #e71e63;
}

.avatar.avatar-xs
{
    font-size: .4rem;

    width: .8rem;
    height: .8rem;
}

.avatar.avatar-sm
{
    font-size: .6rem;

    width: 1.2rem;
    height: 1.2rem;
}

.avatar.avatar-lg
{
    font-size: 1.2rem;

    width: 2.4rem;
    height: 2.4rem;
}

.avatar.avatar-xl
{
    font-size: 1.6rem;

    width: 3.2rem;
    height: 3.2rem;
}

.avatar img
{
    position: relative;
    z-index: 1;

    width: 100%;
    height: 100%;

    border-radius: 50%;
}

.avatar .avatar-icon, .avatar .avatar-presence
{
    position: absolute;
    z-index: 2;
    right: 14.64%;
    bottom: 14.64%;

    width: 50%;
    height: 50%;
    padding: .1rem;

    transform: translate(50%, 50%);

    background: #fff;
}

.avatar .avatar-presence
{
    width: .5em;
    height: .5em;

    border-radius: 50%;
    background: #b388d4;
    box-shadow: 0 0 0 .1rem #fff;
}

.avatar .avatar-presence.online
{
    background: #009714;
}

.avatar .avatar-presence.busy
{
    background: #d40e00;
}

.avatar .avatar-presence.away
{
    background: #ffb700;
}

.avatar[data-initial]::before
{
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;

    content: attr(data-initial);
    transform: translate(-50%, -50%);

    color: currentColor;
}

.badge
{
    position: relative;

    white-space: nowrap;
}

.badge[data-badge]::after, .badge:not([data-badge])::after
{
    display: inline-block;

    content: attr(data-badge);
    transform: translate(-.05rem, -.5rem);

    color: #fff;
    border-radius: .5rem;
    background: #e71e63;
    background-clip: padding-box;
    box-shadow: 0 0 0 .1rem #fff;
}

.badge[data-badge]::after
{
    font-size: .7rem;
    line-height: 1;

    min-width: .9rem;
    height: .9rem;
    padding: .1rem .2rem;

    text-align: center;
    white-space: nowrap;
}

.badge:not([data-badge])::after, .badge[data-badge='']::after
{
    width: 6px;
    min-width: 6px;
    height: 6px;
    padding: 0;
}

.badge.btn::after
{
    position: absolute;
    top: 0;
    right: 0;

    transform: translate(50%, -50%);
}

.badge.avatar::after
{
    position: absolute;
    z-index: 100;
    top: 14.64%;
    right: 14.64%;

    transform: translate(50%, -50%);
}

.breadcrumb
{
    margin: .2rem 0;
    padding: .2rem 0;

    list-style: none;
}

.breadcrumb .breadcrumb-item
{
    display: inline-block;

    margin: 0;
    padding: .2rem 0;

    color: #683490;
}

.breadcrumb .breadcrumb-item:not(:last-child)
{
    margin-right: .2rem;
}

.breadcrumb .breadcrumb-item:not(:last-child) a
{
    color: #683490;
}

.breadcrumb .breadcrumb-item:not(:first-child)::before
{
    padding-right: .4rem;

    content: '/';

    color: #683490;
}

.bar
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: .8rem;

    border-radius: .4rem;
    background: #dcc8eb;

    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
}

.bar.bar-sm
{
    height: .2rem;
}

.bar .bar-item
{
    font-size: .7rem;
    line-height: .8rem;

    position: relative;

    display: block;

    width: 0;
    height: 100%;

    text-align: center;

    color: #fff;
    background: #e71e63;

    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.bar .bar-item:first-child
{
    border-top-left-radius: .4rem;
    border-bottom-left-radius: .4rem;
}

.bar .bar-item:last-child
{
    border-top-right-radius: .4rem;
    border-bottom-right-radius: .4rem;

    -ms-flex-negative: 1;
    flex-shrink: 1;
}

.bar-slider
{
    position: relative;

    height: .1rem;
    margin: .4rem 0;
}

.bar-slider .bar-item
{
    position: absolute;
    left: 0;

    padding: 0;
}

.bar-slider .bar-item:not(:last-child):first-child
{
    z-index: 1;

    background: #dcc8eb;
}

.bar-slider .bar-slider-btn
{
    position: absolute;
    top: 50%;
    right: 0;

    width: .6rem;
    height: .6rem;
    padding: 0;

    transform: translate(50%, -50%);

    border: 0;
    border-radius: 50%;
    background: #e71e63;
}

.bar-slider .bar-slider-btn:active
{
    box-shadow: 0 0 0 .1rem #e71e63;
}

.card
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    border: .05rem solid #cbaee2;
    border-radius: .4rem;
    background: #fff;

    -ms-flex-direction: column;
}

.card .card-header, .card .card-body, .card .card-footer
{
    padding: .8rem;
    padding-bottom: 0;
}

.card .card-header:last-child, .card .card-body:last-child, .card .card-footer:last-child
{
    padding-bottom: .8rem;
}

.card .card-body
{
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
}

.card .card-image
{
    padding-top: .8rem;
}

.card .card-image:first-child
{
    padding-top: 0;
}

.card .card-image:first-child img
{
    border-top-left-radius: .4rem;
    border-top-right-radius: .4rem;
}

.card .card-image:last-child img
{
    border-bottom-right-radius: .4rem;
    border-bottom-left-radius: .4rem;
}

.chip
{
    font-size: 90%;
    line-height: .8rem;

    display: -ms-inline-flexbox;
    display: inline-flex;
    overflow: hidden;

    max-width: 320px;
    height: 1.2rem;
    margin: .1rem;
    padding: .2rem .4rem;

    vertical-align: middle;
    white-space: nowrap;
    text-decoration: none;
    text-overflow: ellipsis;

    border-radius: 5rem;
    background: #dcc8eb;

    -ms-flex-align: center;
    align-items: center;
}

.chip.active
{
    color: #fff;
    background: #e71e63;
}

.chip .avatar
{
    margin-right: .2rem;
    margin-left: -.4rem;
}

.chip .btn-clear
{
    transform: scale(.75);

    border-radius: 50%;
}

.dropdown
{
    position: relative;

    display: inline-block;
}

.dropdown .menu
{
    position: absolute;
    top: 100%;
    left: 0;

    display: none;
    overflow-y: auto;

    max-height: 50vh;

    animation: slide-down .15s ease 1;
}

.dropdown.dropdown-right .menu
{
    right: 0;
    left: auto;
}

.dropdown.active .menu, .dropdown .dropdown-toggle:focus + .menu, .dropdown .menu:hover
{
    display: block;
}

.dropdown .btn-group .dropdown-toggle:nth-last-child(2)
{
    border-top-right-radius: .4rem;
    border-bottom-right-radius: .4rem;
}

.empty
{
    padding: 3.2rem 1.6rem;

    text-align: center;

    color: #683490;
    border-radius: .4rem;
    background: #e3d3ef;
}

.empty .empty-icon
{
    margin-bottom: .8rem;
}

.empty .empty-title, .empty .empty-subtitle
{
    margin: .4rem auto;
}

.empty .empty-action
{
    margin-top: .8rem;
}

.menu
{
    z-index: 300;

    min-width: 180px;
    margin: 0;
    padding: .4rem;

    list-style: none;

    transform: translateY(.2rem);

    border-radius: .4rem;
    background: #fff;
    box-shadow: 0 .05rem .2rem rgba(36, 18, 50, .3);
}

.menu.menu-nav
{
    background: transparent;
    box-shadow: none;
}

.menu .menu-item
{
    position: relative;

    margin-top: 0;
    padding: 0 .4rem;

    text-decoration: none;
}

.menu .menu-item > a
{
    display: block;

    margin: 0 -.4rem;
    padding: .2rem .4rem;

    text-decoration: none;

    color: inherit;
    border-radius: .4rem;
}

.menu .menu-item > a:focus, .menu .menu-item > a:hover
{
    color: #e71e63;
    background: #f9cbdb;
}

.menu .menu-item > a:active, .menu .menu-item > a.active
{
    color: #e71e63;
    background: #f9cbdb;
}

.menu .menu-item .form-checkbox, .menu .menu-item .form-radio, .menu .menu-item .form-switch
{
    margin: .1rem 0;
}

.menu .menu-item + .menu-item
{
    margin-top: .2rem;
}

.menu .menu-badge
{
    position: absolute;
    top: 0;
    right: 0;

    display: -ms-flexbox;
    display: flex;

    height: 100%;

    -ms-flex-align: center;
    align-items: center;
}

.menu .menu-badge .label
{
    margin-right: .4rem;
}

.modal
{
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: none;
    overflow: hidden;

    padding: .4rem;

    opacity: 0;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.modal:target, .modal.active
{
    z-index: 400;

    display: -ms-flexbox;
    display: flex;

    opacity: 1;
}

.modal:target .modal-overlay, .modal.active .modal-overlay
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    cursor: default;

    background: rgba(227, 211, 239, .75);
}

.modal:target .modal-container, .modal.active .modal-container
{
    z-index: 1;

    animation: slide-down .2s ease 1;
}

.modal.modal-sm .modal-container
{
    max-width: 320px;
    padding: 0 .4rem;
}

.modal.modal-lg .modal-overlay
{
    background: #fff;
}

.modal.modal-lg .modal-container
{
    max-width: 960px;

    box-shadow: none;
}

.modal-container
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    width: 100%;
    max-width: 640px;
    max-height: 75vh;
    padding: 0 .8rem;

    border-radius: .4rem;
    background: #fff;
    box-shadow: 0 .2rem .5rem rgba(36, 18, 50, .3);

    -ms-flex-direction: column;
}

.modal-container.modal-fullheight
{
    max-height: 100vh;
}

.modal-container .modal-header
{
    padding: .8rem;

    color: #241232;
}

.modal-container .modal-body
{
    position: relative;

    overflow-y: auto;

    padding: .8rem;
}

.modal-container .modal-footer
{
    padding: .8rem;

    text-align: right;
}

.nav
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    margin: .2rem 0;

    list-style: none;

    -ms-flex-direction: column;
}

.nav .nav-item a
{
    padding: .2rem .4rem;

    text-decoration: none;

    color: #683490;
}

.nav .nav-item a:focus, .nav .nav-item a:hover
{
    color: #e71e63;
}

.nav .nav-item.active > a
{
    font-weight: bold;

    color: #4d266a;
}

.nav .nav-item.active > a:focus, .nav .nav-item.active > a:hover
{
    color: #e71e63;
}

.nav .nav
{
    margin-bottom: .4rem;
    margin-left: .8rem;
}

.pagination
{
    display: -ms-flexbox;
    display: flex;

    margin: .2rem 0;
    padding: .2rem 0;

    list-style: none;
}

.pagination .page-item
{
    margin: .2rem .05rem;
}

.pagination .page-item span
{
    display: inline-block;

    padding: .2rem .2rem;
}

.pagination .page-item a
{
    display: inline-block;

    padding: .2rem .4rem;

    text-decoration: none;

    border-radius: .4rem;
}

.pagination .page-item a:focus, .pagination .page-item a:hover
{
    color: #e71e63;
}

.pagination .page-item.disabled a
{
    cursor: default;
    pointer-events: none;

    opacity: .5;
}

.pagination .page-item.active a
{
    color: #fff;
    background: #e71e63;
}

.pagination .page-item.page-prev, .pagination .page-item.page-next
{
    -ms-flex: 1 0 50%;
        flex: 1 0 50%;
}

.pagination .page-item.page-next
{
    text-align: right;
}

.pagination .page-item .page-item-title
{
    margin: 0;
}

.pagination .page-item .page-item-subtitle
{
    margin: 0;

    opacity: .5;
}

.panel
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    border: .05rem solid #cbaee2;
    border-radius: .4rem;

    -ms-flex-direction: column;
}

.panel .panel-header, .panel .panel-footer
{
    padding: .8rem;

    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
}

.panel .panel-nav
{
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
}

.panel .panel-body
{
    overflow-y: auto;

    padding: 0 .8rem;

    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
}

.popover
{
    position: relative;

    display: inline-block;
}

.popover .popover-container
{
    position: absolute;
    z-index: 300;
    top: 0;
    left: 50%;

    width: 320px;
    padding: .4rem;

    transition: transform .2s;
    transform: translate(-50%, -50%) scale(0);

    opacity: 0;
}

.popover *:focus + .popover-container, .popover:hover .popover-container
{
    display: block;

    transform: translate(-50%, -100%) scale(1);

    opacity: 1;
}

.popover.popover-right .popover-container
{
    top: 50%;
    left: 100%;
}

.popover.popover-right *:focus + .popover-container, .popover.popover-right:hover .popover-container
{
    transform: translate(0, -50%) scale(1);
}

.popover.popover-bottom .popover-container
{
    top: 100%;
    left: 50%;
}

.popover.popover-bottom *:focus + .popover-container, .popover.popover-bottom:hover .popover-container
{
    transform: translate(-50%, 0) scale(1);
}

.popover.popover-left .popover-container
{
    top: 50%;
    left: 0;
}

.popover.popover-left *:focus + .popover-container, .popover.popover-left:hover .popover-container
{
    transform: translate(-100%, -50%) scale(1);
}

.popover .card
{
    border: 0;
    box-shadow: 0 .2rem .5rem rgba(36, 18, 50, .3);
}

.step
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin: .2rem 0;

    list-style: none;

    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
}

.step .step-item
{
    position: relative;

    min-height: 1rem;
    margin-top: 0;

    text-align: center;

    -ms-flex: 1 1 0;
        flex: 1 1 0;
}

.step .step-item:not(:first-child)::before
{
    position: absolute;
    top: 9px;
    left: -50%;

    width: 100%;
    height: 2px;

    content: '';

    background: #e71e63;
}

.step .step-item a
{
    display: inline-block;

    padding: 20px 10px 0;

    text-decoration: none;

    color: #e71e63;
}

.step .step-item a::before
{
    position: absolute;
    z-index: 1;
    top: .2rem;
    left: 50%;

    display: block;

    width: .6rem;
    height: .6rem;

    content: '';
    transform: translateX(-50%);

    border: .1rem solid #fff;
    border-radius: 50%;
    background: #e71e63;
}

.step .step-item.active a::before
{
    border: .1rem solid #e71e63;
    background: #fff;
}

.step .step-item.active ~ .step-item::before
{
    background: #cbaee2;
}

.step .step-item.active ~ .step-item a
{
    color: #b388d4;
}

.step .step-item.active ~ .step-item a::before
{
    background: #cbaee2;
}

.tab
{
    display: -ms-flexbox;
    display: flex;

    margin: .2rem 0 .15rem 0;

    list-style: none;

    border-bottom: .05rem solid #cbaee2;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.tab .tab-item
{
    margin-top: 0;
}

.tab .tab-item a
{
    display: block;

    margin: 0 .4rem 0 0;
    padding: .4rem .2rem .3rem .2rem;

    text-decoration: none;

    color: inherit;
    border-bottom: .1rem solid transparent;
}

.tab .tab-item a:focus, .tab .tab-item a:hover
{
    color: #e71e63;
}

.tab .tab-item.active a, .tab .tab-item a.active
{
    color: #e71e63;
    border-bottom-color: #e71e63;
}

.tab .tab-item.tab-action
{
    text-align: right;

    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
}

.tab .tab-item .btn-clear
{
    margin-top: -.2rem;
}

.tab.tab-block .tab-item
{
    text-align: center;

    -ms-flex: 1 0 0;
        flex: 1 0 0;
}

.tab.tab-block .tab-item a
{
    margin: 0;
}

.tab.tab-block .tab-item .badge[data-badge]::after
{
    position: absolute;
    top: .1rem;
    right: .1rem;

    transform: translate(0, 0);
}

.tab:not(.tab-block) .badge
{
    padding-right: 0;
}

.tile
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-line-pack: justify;
    align-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
}

.tile .tile-icon, .tile .tile-action
{
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
}

.tile .tile-content
{
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
}

.tile .tile-content:not(:first-child)
{
    padding-left: .4rem;
}

.tile .tile-content:not(:last-child)
{
    padding-right: .4rem;
}

.tile .tile-title, .tile .tile-subtitle
{
    line-height: 1.2rem;
}

.tile.tile-centered
{
    -ms-flex-align: center;
    align-items: center;
}

.tile.tile-centered .tile-content
{
    overflow: hidden;
}

.tile.tile-centered .tile-title, .tile.tile-centered .tile-subtitle
{
    overflow: hidden;

    margin-bottom: 0;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.toast
{
    display: block;

    width: 100%;
    padding: .4rem;

    color: #fff;
    border: .05rem solid #241232;
    border-color: #241232;
    border-radius: .4rem;
    background: rgba(36, 18, 50, .95);
}

.toast.toast-primary
{
    border-color: #e71e63;
    background: rgba(231, 30, 99, .95);
}

.toast.toast-success
{
    border-color: #009714;
    background: rgba(0, 151, 20, .95);
}

.toast.toast-warning
{
    border-color: #ffb700;
    background: rgba(255, 183, 0, .95);
}

.toast.toast-error
{
    border-color: #d40e00;
    background: rgba(212, 14, 0, .95);
}

.toast a
{
    text-decoration: underline;

    color: #fff;
}

.toast a:focus, .toast a:hover, .toast a:active, .toast a.active
{
    opacity: .75;
}

.toast .btn-clear
{
    margin: .1rem;
}

.toast p:last-child
{
    margin-bottom: 0;
}

.tooltip
{
    position: relative;
}

.tooltip::after
{
    font-size: .7rem;

    position: absolute;
    z-index: 300;
    bottom: 100%;
    left: 50%;

    display: block;
    overflow: hidden;

    max-width: 320px;
    padding: .2rem .4rem;

    content: attr(data-tooltip);
    transition: opacity .2s, transform .2s;
    transform: translate(-50%, .4rem);
    white-space: pre;
    text-overflow: ellipsis;
    pointer-events: none;

    opacity: 0;
    color: #fff;
    border-radius: .4rem;
    background: rgba(36, 18, 50, .95);
}

.tooltip:focus::after, .tooltip:hover::after
{
    transform: translate(-50%, -.2rem);

    opacity: 1;
}

.tooltip[disabled], .tooltip.disabled
{
    pointer-events: auto;
}

.tooltip.tooltip-right::after
{
    bottom: 50%;
    left: 100%;

    transform: translate(-.2rem, 50%);
}

.tooltip.tooltip-right:focus::after, .tooltip.tooltip-right:hover::after
{
    transform: translate(.2rem, 50%);
}

.tooltip.tooltip-bottom::after
{
    top: 100%;
    bottom: auto;

    transform: translate(-50%, -.4rem);
}

.tooltip.tooltip-bottom:focus::after, .tooltip.tooltip-bottom:hover::after
{
    transform: translate(-50%, .2rem);
}

.tooltip.tooltip-left::after
{
    right: 100%;
    bottom: 50%;
    left: auto;

    transform: translate(.4rem, 50%);
}

.tooltip.tooltip-left:focus::after, .tooltip.tooltip-left:hover::after
{
    transform: translate(-.2rem, 50%);
}

@keyframes loading
{
    0%
    {
        transform: rotate(0deg);
    }
    100%
    {
        transform: rotate(360deg);
    }
}

@keyframes slide-down
{
    0%
    {
        transform: translateY(-1.6rem);

        opacity: 0;
    }
    100%
    {
        transform: translateY(0);

        opacity: 1;
    }
}

@keyframes fadein
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

@keyframes fadeout
{
    0%
    {
        opacity: 1;
    }
    100%
    {
        opacity: 0;
    }
}

.text-primary
{
    color: #e71e63 !important;
}

a.text-primary:focus, a.text-primary:hover
{
    color: #d51758;
}

a.text-primary:visited
{
    color: #e93573;
}

.text-secondary
{
    color: #f8bdd1 !important;
}

a.text-secondary:focus, a.text-secondary:hover
{
    color: #f6a6c1;
}

a.text-secondary:visited
{
    color: #fad4e1;
}

.text-gray
{
    color: #b388d4 !important;
}

a.text-gray:focus, a.text-gray:hover
{
    color: #a776ce;
}

a.text-gray:visited
{
    color: #bf9bdb;
}

.text-light
{
    color: #fff !important;
}

a.text-light:focus, a.text-light:hover
{
    color: #f2f2f2;
}

a.text-light:visited
{
    color: white;
}

.text-dark
{
    color: #321945 !important;
}

a.text-dark:focus, a.text-dark:hover
{
    color: #241232;
}

a.text-dark:visited
{
    color: #3f2058;
}

.text-success
{
    color: #009714 !important;
}

a.text-success:focus, a.text-success:hover
{
    color: #007e11;
}

a.text-success:visited
{
    color: #00b117;
}

.text-warning
{
    color: #ffb700 !important;
}

a.text-warning:focus, a.text-warning:hover
{
    color: #e6a500;
}

a.text-warning:visited
{
    color: #ffbe1a;
}

.text-error
{
    color: #d40e00 !important;
}

a.text-error:focus, a.text-error:hover
{
    color: #bb0c00;
}

a.text-error:visited
{
    color: #ee1000;
}

.bg-primary
{
    color: #fff;
    background: #e71e63 !important;
}

.bg-secondary
{
    background: #f9cbdb !important;
}

.bg-dark
{
    color: #fff;
    background: #241232 !important;
}

.bg-gray
{
    background: #e3d3ef !important;
}

.bg-success
{
    color: #fff;
    background: #009714 !important;
}

.bg-warning
{
    color: #fff;
    background: #ffb700 !important;
}

.bg-error
{
    color: #fff;
    background: #d40e00 !important;
}

.c-hand
{
    cursor: pointer;
}

.c-move
{
    cursor: move;
}

.c-zoom-in
{
    cursor: zoom-in;
}

.c-zoom-out
{
    cursor: zoom-out;
}

.c-not-allowed
{
    cursor: not-allowed;
}

.c-auto
{
    cursor: auto;
}

.d-block
{
    display: block;
}

.d-inline
{
    display: inline;
}

.d-inline-block
{
    display: inline-block;
}

.d-flex
{
    display: -ms-flexbox;
    display: flex;
}

.d-inline-flex
{
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.d-none, .d-hide
{
    display: none !important;
}

.d-visible
{
    visibility: visible;
}

.d-invisible
{
    visibility: hidden;
}

.text-hide
{
    font-size: 0;
    line-height: 0;

    color: transparent;
    border: 0;
    background: transparent;
    text-shadow: none;
}

.text-assistive
{
    position: absolute;

    overflow: hidden;
    clip: rect(0, 0, 0, 0);

    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;

    border: 0;
}

.divider, .divider-vert
{
    position: relative;

    display: block;
}

.divider[data-content]::after, .divider-vert[data-content]::after
{
    font-size: .7rem;

    display: inline-block;

    padding: 0 .4rem;

    content: attr(data-content);
    transform: translateY(-.65rem);

    color: #b388d4;
    background: #fff;
}

.divider
{
    height: .05rem;
    margin: .4rem 0;

    border-top: .05rem solid #decced;
}

.divider[data-content]
{
    margin: .8rem 0;
}

.divider-vert
{
    display: block;

    padding: .8rem;
}

.divider-vert::before
{
    position: absolute;
    top: .4rem;
    bottom: .4rem;
    left: 50%;

    display: block;

    content: '';
    transform: translateX(-50%);

    border-left: .05rem solid #cbaee2;
}

.divider-vert[data-content]::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    padding: .2rem 0;

    transform: translate(-50%, -50%);
}

.loading
{
    position: relative;

    min-height: .8rem;

    pointer-events: none;

    color: transparent !important;
}

.loading::after
{
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;

    display: block;

    width: .8rem;
    height: .8rem;
    margin-top: -.4rem;
    margin-left: -.4rem;
    padding: 0;

    content: '';
    animation: loading 500ms infinite linear;

    opacity: 1;
    border: .1rem solid #e71e63;
    border-top-color: transparent;
    border-right-color: transparent;
    border-radius: 50%;
    background: transparent;
}

.loading.loading-lg
{
    min-height: 2rem;
}

.loading.loading-lg::after
{
    width: 1.6rem;
    height: 1.6rem;
    margin-top: -.8rem;
    margin-left: -.8rem;
}

.clearfix::after
{
    display: table;
    clear: both;

    content: '';
}

.float-left
{
    float: left !important;
}

.float-right
{
    float: right !important;
}

.p-relative
{
    position: relative !important;
}

.p-absolute
{
    position: absolute !important;
}

.p-fixed
{
    position: fixed !important;
}

.p-sticky
{
    position: -webkit-sticky !important;
    position:         sticky !important;
}

.p-centered
{
    display: block;
    float: none;

    margin-right: auto;
    margin-left: auto;
}

.flex-centered
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.m-0
{
    margin: 0 !important;
}

.mb-0
{
    margin-bottom: 0 !important;
}

.ml-0
{
    margin-left: 0 !important;
}

.mr-0
{
    margin-right: 0 !important;
}

.mt-0
{
    margin-top: 0 !important;
}

.mx-0
{
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.my-0
{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.m-1
{
    margin: .2rem !important;
}

.mb-1
{
    margin-bottom: .2rem !important;
}

.ml-1
{
    margin-left: .2rem !important;
}

.mr-1
{
    margin-right: .2rem !important;
}

.mt-1
{
    margin-top: .2rem !important;
}

.mx-1
{
    margin-right: .2rem !important;
    margin-left: .2rem !important;
}

.my-1
{
    margin-top: .2rem !important;
    margin-bottom: .2rem !important;
}

.m-2
{
    margin: .4rem !important;
}

.mb-2
{
    margin-bottom: .4rem !important;
}

.ml-2
{
    margin-left: .4rem !important;
}

.mr-2
{
    margin-right: .4rem !important;
}

.mt-2
{
    margin-top: .4rem !important;
}

.mx-2
{
    margin-right: .4rem !important;
    margin-left: .4rem !important;
}

.my-2
{
    margin-top: .4rem !important;
    margin-bottom: .4rem !important;
}

.m-3
{
    margin: .6rem !important;
}

.mb-3
{
    margin-bottom: .6rem !important;
}

.ml-3
{
    margin-left: .6rem !important;
}

.mr-3
{
    margin-right: .6rem !important;
}

.mt-3
{
    margin-top: .6rem !important;
}

.mx-3
{
    margin-right: .6rem !important;
    margin-left: .6rem !important;
}

.my-3
{
    margin-top: .6rem !important;
    margin-bottom: .6rem !important;
}

.m-4
{
    margin: .8rem !important;
}

.mb-4
{
    margin-bottom: .8rem !important;
}

.ml-4
{
    margin-left: .8rem !important;
}

.mr-4
{
    margin-right: .8rem !important;
}

.mt-4
{
    margin-top: .8rem !important;
}

.mx-4
{
    margin-right: .8rem !important;
    margin-left: .8rem !important;
}

.my-4
{
    margin-top: .8rem !important;
    margin-bottom: .8rem !important;
}

.m-5
{
    margin: 1rem !important;
}

.mb-5
{
    margin-bottom: 1rem !important;
}

.ml-5
{
    margin-left: 1rem !important;
}

.mr-5
{
    margin-right: 1rem !important;
}

.mt-5
{
    margin-top: 1rem !important;
}

.mx-5
{
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.my-5
{
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.m-6
{
    margin: 1.2rem !important;
}

.mb-6
{
    margin-bottom: 1.2rem !important;
}

.ml-6
{
    margin-left: 1.2rem !important;
}

.mr-6
{
    margin-right: 1.2rem !important;
}

.mt-6
{
    margin-top: 1.2rem !important;
}

.mx-6
{
    margin-right: 1.2rem !important;
    margin-left: 1.2rem !important;
}

.my-6
{
    margin-top: 1.2rem !important;
    margin-bottom: 1.2rem !important;
}

.p-0
{
    padding: 0 !important;
}

.pb-0
{
    padding-bottom: 0 !important;
}

.pl-0
{
    padding-left: 0 !important;
}

.pr-0
{
    padding-right: 0 !important;
}

.pt-0
{
    padding-top: 0 !important;
}

.px-0
{
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.py-0
{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.p-1
{
    padding: .2rem !important;
}

.pb-1
{
    padding-bottom: .2rem !important;
}

.pl-1
{
    padding-left: .2rem !important;
}

.pr-1
{
    padding-right: .2rem !important;
}

.pt-1
{
    padding-top: .2rem !important;
}

.px-1
{
    padding-right: .2rem !important;
    padding-left: .2rem !important;
}

.py-1
{
    padding-top: .2rem !important;
    padding-bottom: .2rem !important;
}

.p-2
{
    padding: .4rem !important;
}

.pb-2
{
    padding-bottom: .4rem !important;
}

.pl-2
{
    padding-left: .4rem !important;
}

.pr-2
{
    padding-right: .4rem !important;
}

.pt-2
{
    padding-top: .4rem !important;
}

.px-2
{
    padding-right: .4rem !important;
    padding-left: .4rem !important;
}

.py-2
{
    padding-top: .4rem !important;
    padding-bottom: .4rem !important;
}

.p-3
{
    padding: .6rem !important;
}

.pb-3
{
    padding-bottom: .6rem !important;
}

.pl-3
{
    padding-left: .6rem !important;
}

.pr-3
{
    padding-right: .6rem !important;
}

.pt-3
{
    padding-top: .6rem !important;
}

.px-3
{
    padding-right: .6rem !important;
    padding-left: .6rem !important;
}

.py-3
{
    padding-top: .6rem !important;
    padding-bottom: .6rem !important;
}

.p-4
{
    padding: .8rem !important;
}

.pb-4
{
    padding-bottom: .8rem !important;
}

.pl-4
{
    padding-left: .8rem !important;
}

.pr-4
{
    padding-right: .8rem !important;
}

.pt-4
{
    padding-top: .8rem !important;
}

.px-4
{
    padding-right: .8rem !important;
    padding-left: .8rem !important;
}

.py-4
{
    padding-top: .8rem !important;
    padding-bottom: .8rem !important;
}

.p-5
{
    padding: 1rem !important;
}

.pb-5
{
    padding-bottom: 1rem !important;
}

.pl-5
{
    padding-left: 1rem !important;
}

.pr-5
{
    padding-right: 1rem !important;
}

.pt-5
{
    padding-top: 1rem !important;
}

.px-5
{
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.py-5
{
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.p-6
{
    padding: 1.2rem !important;
}

.pb-6
{
    padding-bottom: 1.2rem !important;
}

.pl-6
{
    padding-left: 1.2rem !important;
}

.pr-6
{
    padding-right: 1.2rem !important;
}

.pt-6
{
    padding-top: 1.2rem !important;
}

.px-6
{
    padding-right: 1.2rem !important;
    padding-left: 1.2rem !important;
}

.py-6
{
    padding-top: 1.2rem !important;
    padding-bottom: 1.2rem !important;
}

.s-rounded
{
    border-radius: .4rem;
}

.s-circle
{
    border-radius: 50%;
}

.text-left
{
    text-align: left;
}

.text-right
{
    text-align: right;
}

.text-center
{
    text-align: center;
}

.text-justify
{
    text-align: justify;
}

.text-lowercase
{
    text-transform: lowercase;
}

.text-uppercase
{
    text-transform: uppercase;
}

.text-capitalize
{
    text-transform: capitalize;
}

.text-normal
{
    font-weight: normal;
}

.text-bold
{
    font-weight: bold;
}

.text-italic
{
    font-style: italic;
}

.text-large
{
    font-size: 1.2em;
}

.text-small
{
    font-size: .9em;
}

.text-tiny
{
    font-size: .8em;
}

.text-muted
{
    opacity: .8;
}

.text-ellipsis
{
    overflow: hidden;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.text-clip
{
    overflow: hidden;

    white-space: nowrap;
    text-overflow: clip;
}

.text-break
{
    word-wrap: break-word;
    word-break: break-word;
    -webkit-hyphens: auto;
            hyphens: auto;

        -ms-hyphens: auto;
}
