/*Below is the css content from : https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap*/

/* cyrillic-ext */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-cyrillic-ext.woff2)
    format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-cyrillic.woff2)
    format("woff2");
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-greek-ext.woff2)
    format("woff2");
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-greek.woff2)
    format("woff2");
    unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1,
    U+03A3-03FF;
}
/* hebrew */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-hebrew.woff2)
    format("woff2");
    unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC,
    U+FB1D-FB4F;
}
/* math */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-math.woff2)
    format("woff2");
    unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315,
    U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A,
    U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6,
    U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043,
    U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C,
    U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121,
    U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2,
    U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319,
    U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1,
    U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB,
    U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE,
    U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-symbols.woff2)
    format("woff2");
    unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4,
    U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3,
    U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF,
    U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF,
    U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0,
    U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F,
    U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C,
    U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F,
    U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE,
    U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415,
    U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449,
    U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9,
    U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6,
    U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B,
    U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F,
    U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA,
    U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3,
    U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859,
    U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B,
    U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C,
    U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8,
    U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-vietnamese.woff2)
    format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329,
    U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-latin-ext.woff2)
    format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Open Sans";
    font-style: italic;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-italic-latin.woff2)
    format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-cyrillic-ext.woff2)
    format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-cyrillic.woff2)
    format("woff2");
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-greek-ext.woff2)
    format("woff2");
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-greek.woff2)
    format("woff2");
    unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1,
    U+03A3-03FF;
}
/* hebrew */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-hebrew.woff2)
    format("woff2");
    unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC,
    U+FB1D-FB4F;
}
/* math */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-math.woff2)
    format("woff2");
    unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315,
    U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A,
    U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6,
    U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043,
    U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C,
    U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121,
    U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2,
    U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319,
    U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1,
    U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB,
    U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE,
    U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-symbols.woff2)
    format("woff2");
    unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4,
    U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3,
    U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF,
    U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF,
    U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0,
    U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F,
    U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C,
    U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F,
    U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE,
    U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415,
    U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449,
    U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9,
    U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6,
    U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B,
    U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F,
    U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA,
    U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3,
    U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859,
    U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B,
    U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C,
    U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8,
    U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-vietnamese.woff2)
    format("woff2");
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329,
    U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-latin-ext.woff2)
    format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 300 800;
    font-stretch: 100%;
    font-display: swap;
    src: url(/app/build/img/opensans/webfonts/open-sans-normal-latin.woff2)
    format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@charset "utf-8";.fak.fa-broken-link-circle-1,.fa-kit.fa-broken-link-circle-1{--fa:""}.fak.fa-broken-link-circle-2,.fa-kit.fa-broken-link-circle-2{--fa:""}.fak.fa-calendar-circle-right-up-arrow-solid,.fa-kit.fa-calendar-circle-right-up-arrow-solid{--fa:""}.fak.fa-calendar-up-right-arrow-regular,.fa-kit.fa-calendar-up-right-arrow-regular{--fa:""}.fak.fa-incomplete-check-icon,.fa-kit.fa-incomplete-check-icon{--fa:""}.fak.fa-multi-select,.fa-kit.fa-multi-select{--fa:""}.fak.fa-select-all-deselected,.fa-kit.fa-select-all-deselected{--fa:""}.fak.fa-select-all-selected,.fa-kit.fa-select-all-selected{--fa:""}.fak.fa-solid-eye-gear,.fa-kit.fa-solid-eye-gear{--fa:""}.fak.fa-undo-resolved-button,.fa-kit.fa-undo-resolved-button{--fa:""}.fak,.fa-kit{--fa-family:"Font Awesome Kit";--fa-style:400;--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome Kit"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,400);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}.fak:before,.fa-kit:before{content:var(--fa)/""}@supports not (content:''/''){.fak:before,.fa-kit:before{content:var(--fa)}}@font-face{font-family:Font Awesome Kit;font-style:normal;font-display:block;src:url(/app/build/img/fontawesome/webfonts/custom-icons.woff2)format("woff2")}.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fas,.far,.fab,.fal,.fat,.fad,.fadr,.fadl,.fadt,.fass,.fasr,.fasl,.fast,.fasds,.fasdr,.fasdl,.fasdt,.faslr,.faslpr,.fawsb,.fatl,.fans,.fands,.faes,.fagt,.fajr,.fajfr,.fajdr,.facr,.fausb,.faudsb,.faufsb,.fa-solid,.fa-semibold,.fa-regular,.fa-light,.fa-thin,.fa-brands,.fa-classic,.fa-duotone,.fa-sharp,.fa-sharp-duotone,.fa-chisel,.fa-etch,.fa-graphite,.fa-jelly,.fa-jelly-duo,.fa-jelly-fill,.fa-notdog,.fa-notdog-duo,.fa-slab,.fa-slab-press,.fa-thumbprint,.fa-utility,.fa-utility-duo,.fa-utility-fill,.fa-whiteboard,.fa{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Pro"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.fass,.far,.fasr,.fal,.fasl,.fat,.fast,.fad,.fadr,.fadl,.fadt,.fasds,.fasdr,.fasdl,.fasdt,.fab,.faslr,.faslpr,.fawsb,.fatl,.fans,.fands,.faes,.fagt,.fajr,.fajfr,.fajdr,.facr,.fausb,.faudsb,.faufsb,.fa-solid,.fa-semibold,.fa-regular,.fa-light,.fa-thin,.fa-brands,.fa-classic,.fa-duotone,.fa-sharp,.fa-sharp-duotone,.fa-chisel,.fa-etch,.fa-graphite,.fa-jelly,.fa-jelly-duo,.fa-jelly-fill,.fa-notdog,.fa-notdog-duo,.fa-slab,.fa-slab-press,.fa-thumbprint,.fa-utility,.fa-utility-duo,.fa-utility-fill,.fa-whiteboard,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.fass,.far,.fasr,.fal,.fasl,.fat,.fast,.fad,.fadr,.fadl,.fadt,.fasds,.fasdr,.fasdl,.fasdt,.fab,.faslr,.faslpr,.fawsb,.fatl,.fans,.fands,.faes,.fagt,.fajr,.fajfr,.fajdr,.facr,.fausb,.faudsb,.faufsb,.fa-solid,.fa-semibold,.fa-regular,.fa-light,.fa-thin,.fa-brands,.fa-classic,.fa-duotone,.fa-sharp,.fa-sharp-duotone,.fa-chisel,.fa-etch,.fa-graphite,.fa-jelly,.fa-jelly-duo,.fa-jelly-fill,.fa-notdog,.fa-notdog-duo,.fa-slab,.fa-slab-press,.fa-thumbprint,.fa-utility,.fa-utility-duo,.fa-utility-fill,.fa-whiteboard,.fa):before{content:var(--fa)}}:is(.fad,.fa-duotone,.fadr,.fadl,.fadt,.fasds,.fa-sharp-duotone,.fasdr,.fasdl,.fasdt,.fatl,.fa-thumbprint,.fands,.fa-notdog-duo,.fajdr,.fa-jelly-duo,.faudsb,.fa-utility-duo):after{content:var(--fa)/"";font-feature-settings:"ss01"}@supports not (content:""/""){:is(.fad,.fa-duotone,.fadr,.fadl,.fadt,.fasds,.fa-sharp-duotone,.fasdr,.fasdl,.fasdt,.fatl,.fa-thumbprint,.fands,.fa-notdog-duo,.fajdr,.fa-jelly-duo,.faudsb,.fa-utility-duo):after{content:var(--fa)}}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.0833333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.0714286em;vertical-align:.0535715em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.0416667em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(-1*var(--fa-li-width,2em));position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1)translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9))translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1))translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95))translateY(0)}57%{transform:scale(1,1)translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1)translateY(0)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0{--fa:"0"}.fa-00{--fa:""}.fa-1{--fa:"1"}.fa-100{--fa:""}.fa-2{--fa:"2"}.fa-3{--fa:"3"}.fa-360-degrees{--fa:""}.fa-4{--fa:"4"}.fa-5{--fa:"5"}.fa-6{--fa:"6"}.fa-7{--fa:"7"}.fa-8{--fa:"8"}.fa-9{--fa:"9"}.fa-a{--fa:"A"}.fa-abacus{--fa:""}.fa-accent-grave{--fa:"`"}.fa-acorn{--fa:""}.fa-ad{--fa:""}.fa-add{--fa:"+"}.fa-address-book{--fa:""}.fa-address-card{--fa:""}.fa-adjust{--fa:""}.fa-aeropress{--fa:""}.fa-air-conditioner{--fa:""}.fa-air-freshener{--fa:""}.fa-airplay{--fa:""}.fa-airplay-audio{--fa:""}.fa-alarm-clock{--fa:""}.fa-alarm-exclamation{--fa:""}.fa-alarm-minus{--fa:""}.fa-alarm-plus{--fa:""}.fa-alarm-snooze{--fa:""}.fa-album{--fa:""}.fa-album-circle-plus{--fa:""}.fa-album-circle-user{--fa:""}.fa-album-collection{--fa:""}.fa-album-collection-circle-plus{--fa:""}.fa-album-collection-circle-user{--fa:""}.fa-alicorn{--fa:""}.fa-alien{--fa:""}.fa-alien-8bit{--fa:""}.fa-alien-monster{--fa:""}.fa-align-center{--fa:""}.fa-align-justify{--fa:""}.fa-align-left{--fa:""}.fa-align-right{--fa:""}.fa-align-slash{--fa:""}.fa-allergies{--fa:""}.fa-almost-equal-to{--fa:""}.fa-alt{--fa:""}.fa-ambulance{--fa:""}.fa-american-sign-language-interpreting{--fa:""}.fa-amp-guitar{--fa:""}.fa-ampersand{--fa:"&"}.fa-analytics{--fa:""}.fa-anchor{--fa:""}.fa-anchor-circle-check{--fa:""}.fa-anchor-circle-exclamation{--fa:""}.fa-anchor-circle-xmark{--fa:""}.fa-anchor-lock{--fa:""}.fa-angel{--fa:""}.fa-angle{--fa:""}.fa-angle-90{--fa:""}.fa-angle-double-down{--fa:""}.fa-angle-double-left{--fa:""}.fa-angle-double-right{--fa:""}.fa-angle-double-up{--fa:""}.fa-angle-down{--fa:""}.fa-angle-left{--fa:""}.fa-angle-right{--fa:""}.fa-angle-up{--fa:""}.fa-angles-down{--fa:""}.fa-angles-left{--fa:""}.fa-angles-right{--fa:""}.fa-angles-up{--fa:""}.fa-angles-up-down{--fa:""}.fa-angry{--fa:""}.fa-ankh{--fa:""}.fa-ant{--fa:""}.fa-apartment{--fa:""}.fa-aperture{--fa:""}.fa-apostrophe{--fa:"'"}.fa-apple-alt{--fa:""}.fa-apple-core{--fa:""}.fa-apple-crate{--fa:""}.fa-apple-whole{--fa:""}.fa-aquarius{--fa:""}.fa-archive{--fa:""}.fa-archway{--fa:""}.fa-area-chart{--fa:""}.fa-aries{--fa:""}.fa-arrow-alt-circle-down{--fa:""}.fa-arrow-alt-circle-left{--fa:""}.fa-arrow-alt-circle-right{--fa:""}.fa-arrow-alt-circle-up{--fa:""}.fa-arrow-alt-down{--fa:""}.fa-arrow-alt-from-bottom{--fa:""}.fa-arrow-alt-from-left{--fa:""}.fa-arrow-alt-from-right{--fa:""}.fa-arrow-alt-from-top{--fa:""}.fa-arrow-alt-left{--fa:""}.fa-arrow-alt-right{--fa:""}.fa-arrow-alt-square-down{--fa:""}.fa-arrow-alt-square-left{--fa:""}.fa-arrow-alt-square-right{--fa:""}.fa-arrow-alt-square-up{--fa:""}.fa-arrow-alt-to-bottom{--fa:""}.fa-arrow-alt-to-left{--fa:""}.fa-arrow-alt-to-right{--fa:""}.fa-arrow-alt-to-top{--fa:""}.fa-arrow-alt-up{--fa:""}.fa-arrow-archery{--fa:""}.fa-arrow-circle-down{--fa:""}.fa-arrow-circle-left{--fa:""}.fa-arrow-circle-right{--fa:""}.fa-arrow-circle-up{--fa:""}.fa-arrow-down{--fa:""}.fa-arrow-down-1-9{--fa:""}.fa-arrow-down-9-1{--fa:""}.fa-arrow-down-a-z{--fa:""}.fa-arrow-down-arrow-up{--fa:""}.fa-arrow-down-big-small{--fa:""}.fa-arrow-down-from-arc{--fa:""}.fa-arrow-down-from-bracket{--fa:""}.fa-arrow-down-from-dotted-line{--fa:""}.fa-arrow-down-from-line{--fa:""}.fa-arrow-down-left{--fa:""}.fa-arrow-down-left-and-arrow-up-right-to-center{--fa:""}.fa-arrow-down-long{--fa:""}.fa-arrow-down-long-to-line{--fa:""}.fa-arrow-down-right{--fa:""}.fa-arrow-down-short-wide{--fa:""}.fa-arrow-down-small-big{--fa:""}.fa-arrow-down-square-triangle{--fa:""}.fa-arrow-down-to-arc{--fa:""}.fa-arrow-down-to-bracket{--fa:""}.fa-arrow-down-to-dotted-line{--fa:""}.fa-arrow-down-to-line{--fa:""}.fa-arrow-down-to-square{--fa:""}.fa-arrow-down-triangle-square{--fa:""}.fa-arrow-down-up-across-line{--fa:""}.fa-arrow-down-up-lock{--fa:""}.fa-arrow-down-wide-short{--fa:""}.fa-arrow-down-z-a{--fa:""}.fa-arrow-from-bottom{--fa:""}.fa-arrow-from-left{--fa:""}.fa-arrow-from-right{--fa:""}.fa-arrow-from-top{--fa:""}.fa-arrow-left{--fa:""}.fa-arrow-left-arrow-right{--fa:""}.fa-arrow-left-from-arc{--fa:""}.fa-arrow-left-from-bracket{--fa:""}.fa-arrow-left-from-dotted-line{--fa:""}.fa-arrow-left-from-line{--fa:""}.fa-arrow-left-long{--fa:""}.fa-arrow-left-long-to-line{--fa:""}.fa-arrow-left-rotate{--fa:""}.fa-arrow-left-to-arc{--fa:""}.fa-arrow-left-to-bracket{--fa:""}.fa-arrow-left-to-dotted-line{--fa:""}.fa-arrow-left-to-line{--fa:""}.fa-arrow-pointer{--fa:""}.fa-arrow-progress{--fa:""}.fa-arrow-right{--fa:""}.fa-arrow-right-arrow-left{--fa:""}.fa-arrow-right-from-arc{--fa:""}.fa-arrow-right-from-bracket{--fa:""}.fa-arrow-right-from-dotted-line{--fa:""}.fa-arrow-right-from-file{--fa:""}.fa-arrow-right-from-line{--fa:""}.fa-arrow-right-long{--fa:""}.fa-arrow-right-long-to-line{--fa:""}.fa-arrow-right-rotate{--fa:""}.fa-arrow-right-to-arc{--fa:""}.fa-arrow-right-to-bracket{--fa:""}.fa-arrow-right-to-city{--fa:""}.fa-arrow-right-to-dotted-line{--fa:""}.fa-arrow-right-to-file{--fa:""}.fa-arrow-right-to-line{--fa:""}.fa-arrow-rotate-back{--fa:""}.fa-arrow-rotate-backward{--fa:""}.fa-arrow-rotate-forward{--fa:""}.fa-arrow-rotate-left{--fa:""}.fa-arrow-rotate-left-10{--fa:""}.fa-arrow-rotate-left-15{--fa:""}.fa-arrow-rotate-left-30{--fa:""}.fa-arrow-rotate-right{--fa:""}.fa-arrow-rotate-right-10{--fa:""}.fa-arrow-rotate-right-15{--fa:""}.fa-arrow-rotate-right-30{--fa:""}.fa-arrow-square-down{--fa:""}.fa-arrow-square-left{--fa:""}.fa-arrow-square-right{--fa:""}.fa-arrow-square-up{--fa:""}.fa-arrow-to-bottom{--fa:""}.fa-arrow-to-left{--fa:""}.fa-arrow-to-right{--fa:""}.fa-arrow-to-top{--fa:""}.fa-arrow-trend-down{--fa:""}.fa-arrow-trend-up{--fa:""}.fa-arrow-turn-down{--fa:""}.fa-arrow-turn-down-left{--fa:""}.fa-arrow-turn-down-right{--fa:""}.fa-arrow-turn-left{--fa:""}.fa-arrow-turn-left-down{--fa:""}.fa-arrow-turn-left-up{--fa:""}.fa-arrow-turn-right{--fa:""}.fa-arrow-turn-up{--fa:""}.fa-arrow-u-turn-down-left{--fa:""}.fa-arrow-u-turn-down-right{--fa:""}.fa-arrow-u-turn-left-down{--fa:""}.fa-arrow-u-turn-left-up{--fa:""}.fa-arrow-u-turn-right-down{--fa:""}.fa-arrow-u-turn-right-up{--fa:""}.fa-arrow-u-turn-up-left{--fa:""}.fa-arrow-u-turn-up-right{--fa:""}.fa-arrow-up{--fa:""}.fa-arrow-up-1-9{--fa:""}.fa-arrow-up-9-1{--fa:""}.fa-arrow-up-a-z{--fa:""}.fa-arrow-up-arrow-down{--fa:""}.fa-arrow-up-big-small{--fa:""}.fa-arrow-up-from-arc{--fa:""}.fa-arrow-up-from-bracket{--fa:""}.fa-arrow-up-from-dotted-line{--fa:""}.fa-arrow-up-from-ground-water{--fa:""}.fa-arrow-up-from-line{--fa:""}.fa-arrow-up-from-square{--fa:""}.fa-arrow-up-from-water-pump{--fa:""}.fa-arrow-up-left{--fa:""}.fa-arrow-up-left-from-circle{--fa:""}.fa-arrow-up-long{--fa:""}.fa-arrow-up-long-to-line{--fa:""}.fa-arrow-up-right{--fa:""}.fa-arrow-up-right-and-arrow-down-left-from-center{--fa:""}.fa-arrow-up-right-dots{--fa:""}.fa-arrow-up-right-from-square{--fa:""}.fa-arrow-up-short-wide{--fa:""}.fa-arrow-up-small-big{--fa:""}.fa-arrow-up-square-triangle{--fa:""}.fa-arrow-up-to-arc{--fa:""}.fa-arrow-up-to-bracket{--fa:""}.fa-arrow-up-to-dotted-line{--fa:""}.fa-arrow-up-to-line{--fa:""}.fa-arrow-up-triangle-square{--fa:""}.fa-arrow-up-wide-short{--fa:""}.fa-arrow-up-z-a{--fa:""}.fa-arrows{--fa:""}.fa-arrows-alt{--fa:""}.fa-arrows-alt-h{--fa:""}.fa-arrows-alt-v{--fa:""}.fa-arrows-cross{--fa:""}.fa-arrows-down-to-line{--fa:""}.fa-arrows-down-to-people{--fa:""}.fa-arrows-from-dotted-line{--fa:""}.fa-arrows-from-line{--fa:""}.fa-arrows-h{--fa:""}.fa-arrows-left-right{--fa:""}.fa-arrows-left-right-to-line{--fa:""}.fa-arrows-maximize{--fa:""}.fa-arrows-minimize{--fa:""}.fa-arrows-repeat{--fa:""}.fa-arrows-repeat-1{--fa:""}.fa-arrows-retweet{--fa:""}.fa-arrows-rotate{--fa:""}.fa-arrows-rotate-reverse{--fa:""}.fa-arrows-spin{--fa:""}.fa-arrows-split-up-and-left{--fa:""}.fa-arrows-to-circle{--fa:""}.fa-arrows-to-dot{--fa:""}.fa-arrows-to-dotted-line{--fa:""}.fa-arrows-to-eye{--fa:""}.fa-arrows-to-line{--fa:""}.fa-arrows-turn-right{--fa:""}.fa-arrows-turn-to-dots{--fa:""}.fa-arrows-up-down{--fa:""}.fa-arrows-up-down-left-right{--fa:""}.fa-arrows-up-to-line{--fa:""}.fa-arrows-v{--fa:""}.fa-asl-interpreting{--fa:""}.fa-assistive-listening-systems{--fa:""}.fa-asterisk{--fa:"*"}.fa-at{--fa:"@"}.fa-atlas{--fa:""}.fa-atom{--fa:""}.fa-atom-alt{--fa:""}.fa-atom-simple{--fa:""}.fa-audio-description{--fa:""}.fa-audio-description-slash{--fa:""}.fa-austral-sign{--fa:""}.fa-australian-dollar-sign{--fa:""}.fa-automobile{--fa:""}.fa-avocado{--fa:""}.fa-award{--fa:""}.fa-award-simple{--fa:""}.fa-axe{--fa:""}.fa-axe-battle{--fa:""}.fa-b{--fa:"B"}.fa-baby{--fa:""}.fa-baby-carriage{--fa:""}.fa-backpack{--fa:""}.fa-backspace{--fa:""}.fa-backward{--fa:""}.fa-backward-fast{--fa:""}.fa-backward-step{--fa:""}.fa-bacon{--fa:""}.fa-bacteria{--fa:""}.fa-bacterium{--fa:""}.fa-badge{--fa:""}.fa-badge-check{--fa:""}.fa-badge-dollar{--fa:""}.fa-badge-percent{--fa:""}.fa-badge-sheriff{--fa:""}.fa-badger-honey{--fa:""}.fa-badminton{--fa:""}.fa-bag-seedling{--fa:""}.fa-bag-shopping{--fa:""}.fa-bag-shopping-minus{--fa:""}.fa-bag-shopping-plus{--fa:""}.fa-bagel{--fa:""}.fa-bags-shopping{--fa:""}.fa-baguette{--fa:""}.fa-bahai{--fa:""}.fa-baht-sign{--fa:""}.fa-balance-scale{--fa:""}.fa-balance-scale-left{--fa:""}.fa-balance-scale-right{--fa:""}.fa-ball-pile{--fa:""}.fa-ball-yarn{--fa:""}.fa-balloon{--fa:""}.fa-balloons{--fa:""}.fa-ballot{--fa:""}.fa-ballot-check{--fa:""}.fa-ban{--fa:""}.fa-ban-bug{--fa:""}.fa-ban-parking{--fa:""}.fa-ban-smoking{--fa:""}.fa-banana{--fa:""}.fa-band-aid{--fa:""}.fa-bandage{--fa:""}.fa-bangladeshi-taka-sign{--fa:""}.fa-banjo{--fa:""}.fa-bank{--fa:""}.fa-bar-chart{--fa:""}.fa-bar-progress{--fa:""}.fa-bar-progress-empty{--fa:""}.fa-bar-progress-full{--fa:""}.fa-bar-progress-half{--fa:""}.fa-bar-progress-quarter{--fa:""}.fa-bar-progress-three-quarters{--fa:""}.fa-barcode{--fa:""}.fa-barcode-alt{--fa:""}.fa-barcode-read{--fa:""}.fa-barcode-scan{--fa:""}.fa-barn{--fa:""}.fa-barn-silo{--fa:""}.fa-bars{--fa:""}.fa-bars-filter{--fa:""}.fa-bars-progress{--fa:""}.fa-bars-sort{--fa:""}.fa-bars-staggered{--fa:""}.fa-baseball{--fa:""}.fa-baseball-ball{--fa:""}.fa-baseball-bat{--fa:""}.fa-baseball-bat-ball{--fa:""}.fa-basket-shopping{--fa:""}.fa-basket-shopping-minus{--fa:""}.fa-basket-shopping-plus{--fa:""}.fa-basket-shopping-simple{--fa:""}.fa-basketball{--fa:""}.fa-basketball-ball{--fa:""}.fa-basketball-hoop{--fa:""}.fa-bat{--fa:""}.fa-bath{--fa:""}.fa-bathtub{--fa:""}.fa-battery{--fa:""}.fa-battery-0{--fa:""}.fa-battery-1{--fa:""}.fa-battery-2{--fa:""}.fa-battery-3{--fa:""}.fa-battery-4{--fa:""}.fa-battery-5{--fa:""}.fa-battery-bolt{--fa:""}.fa-battery-car{--fa:""}.fa-battery-empty{--fa:""}.fa-battery-exclamation{--fa:""}.fa-battery-full{--fa:""}.fa-battery-half{--fa:""}.fa-battery-low{--fa:""}.fa-battery-quarter{--fa:""}.fa-battery-slash{--fa:""}.fa-battery-three-quarters{--fa:""}.fa-bed{--fa:""}.fa-bed-alt{--fa:""}.fa-bed-bunk{--fa:""}.fa-bed-empty{--fa:""}.fa-bed-front{--fa:""}.fa-bed-pulse{--fa:""}.fa-bee{--fa:""}.fa-beer{--fa:""}.fa-beer-foam{--fa:""}.fa-beer-mug{--fa:""}.fa-beer-mug-empty{--fa:""}.fa-bell{--fa:""}.fa-bell-concierge{--fa:""}.fa-bell-exclamation{--fa:""}.fa-bell-on{--fa:""}.fa-bell-plus{--fa:""}.fa-bell-ring{--fa:""}.fa-bell-school{--fa:""}.fa-bell-school-slash{--fa:""}.fa-bell-slash{--fa:""}.fa-bells{--fa:""}.fa-bench-tree{--fa:""}.fa-betamax{--fa:""}.fa-bezier-curve{--fa:""}.fa-bible{--fa:""}.fa-bicep{--fa:""}.fa-bicycle{--fa:""}.fa-biking{--fa:""}.fa-biking-mountain{--fa:""}.fa-billboard{--fa:""}.fa-bin{--fa:""}.fa-bin-bottles{--fa:""}.fa-bin-bottles-recycle{--fa:""}.fa-bin-recycle{--fa:""}.fa-binary{--fa:""}.fa-binary-circle-check{--fa:""}.fa-binary-lock{--fa:""}.fa-binary-slash{--fa:""}.fa-binoculars{--fa:""}.fa-biohazard{--fa:""}.fa-bird{--fa:""}.fa-birthday-cake{--fa:""}.fa-bitcoin-sign{--fa:""}.fa-blackboard{--fa:""}.fa-blanket{--fa:""}.fa-blanket-fire{--fa:""}.fa-blender{--fa:""}.fa-blender-phone{--fa:""}.fa-blind{--fa:""}.fa-blinds{--fa:""}.fa-blinds-open{--fa:""}.fa-blinds-raised{--fa:""}.fa-block{--fa:""}.fa-block-brick{--fa:""}.fa-block-brick-fire{--fa:""}.fa-block-question{--fa:""}.fa-block-quote{--fa:""}.fa-blog{--fa:""}.fa-blueberries{--fa:""}.fa-bluetooth{--fa:""}.fa-bold{--fa:""}.fa-bolt{--fa:""}.fa-bolt-auto{--fa:""}.fa-bolt-lightning{--fa:""}.fa-bolt-slash{--fa:""}.fa-bomb{--fa:""}.fa-bone{--fa:""}.fa-bone-break{--fa:""}.fa-bong{--fa:""}.fa-book{--fa:""}.fa-book-alt{--fa:""}.fa-book-arrow-right{--fa:""}.fa-book-arrow-up{--fa:""}.fa-book-atlas{--fa:""}.fa-book-bible{--fa:""}.fa-book-blank{--fa:""}.fa-book-bookmark{--fa:""}.fa-book-circle{--fa:""}.fa-book-circle-arrow-right{--fa:""}.fa-book-circle-arrow-up{--fa:""}.fa-book-copy{--fa:""}.fa-book-dead{--fa:""}.fa-book-font{--fa:""}.fa-book-heart{--fa:""}.fa-book-journal-whills{--fa:""}.fa-book-law{--fa:""}.fa-book-medical{--fa:""}.fa-book-open{--fa:""}.fa-book-open-alt{--fa:""}.fa-book-open-cover{--fa:""}.fa-book-open-lines{--fa:""}.fa-book-open-reader{--fa:""}.fa-book-quran{--fa:""}.fa-book-reader{--fa:""}.fa-book-section{--fa:""}.fa-book-skull{--fa:""}.fa-book-sparkles{--fa:""}.fa-book-spells{--fa:""}.fa-book-spine{--fa:""}.fa-book-tanakh{--fa:""}.fa-book-user{--fa:""}.fa-bookmark{--fa:""}.fa-bookmark-circle{--fa:""}.fa-bookmark-plus{--fa:""}.fa-bookmark-slash{--fa:""}.fa-books{--fa:""}.fa-books-medical{--fa:""}.fa-boombox{--fa:""}.fa-boot{--fa:""}.fa-boot-heeled{--fa:""}.fa-booth-curtain{--fa:""}.fa-border-all{--fa:""}.fa-border-bottom{--fa:""}.fa-border-bottom-right{--fa:""}.fa-border-center-h{--fa:""}.fa-border-center-v{--fa:""}.fa-border-inner{--fa:""}.fa-border-left{--fa:""}.fa-border-none{--fa:""}.fa-border-outer{--fa:""}.fa-border-right{--fa:""}.fa-border-style{--fa:""}.fa-border-style-alt{--fa:""}.fa-border-top{--fa:""}.fa-border-top-left{--fa:""}.fa-bore-hole{--fa:""}.fa-bottle-baby{--fa:""}.fa-bottle-droplet{--fa:""}.fa-bottle-water{--fa:""}.fa-bow-archery{--fa:""}.fa-bow-arrow{--fa:""}.fa-bowl-chopsticks{--fa:""}.fa-bowl-chopsticks-noodles{--fa:""}.fa-bowl-food{--fa:""}.fa-bowl-hot{--fa:""}.fa-bowl-rice{--fa:""}.fa-bowl-salad{--fa:""}.fa-bowl-scoop{--fa:""}.fa-bowl-scoops{--fa:""}.fa-bowl-shaved-ice{--fa:""}.fa-bowl-soft-serve{--fa:""}.fa-bowl-spoon{--fa:""}.fa-bowling-ball{--fa:""}.fa-bowling-ball-pin{--fa:""}.fa-bowling-pins{--fa:""}.fa-box{--fa:""}.fa-box-alt{--fa:""}.fa-box-archive{--fa:""}.fa-box-arrow-down{--fa:""}.fa-box-arrow-down-arrow-up{--fa:""}.fa-box-arrow-down-magnifying-glass{--fa:""}.fa-box-arrow-up{--fa:""}.fa-box-ballot{--fa:""}.fa-box-check{--fa:""}.fa-box-circle-check{--fa:""}.fa-box-dollar{--fa:""}.fa-box-fragile{--fa:""}.fa-box-full{--fa:""}.fa-box-heart{--fa:""}.fa-box-isometric{--fa:""}.fa-box-isometric-tape{--fa:""}.fa-box-magnifying-glass{--fa:""}.fa-box-open{--fa:""}.fa-box-open-full{--fa:""}.fa-box-taped{--fa:""}.fa-box-tissue{--fa:""}.fa-box-up{--fa:""}.fa-box-usd{--fa:""}.fa-boxes{--fa:""}.fa-boxes-alt{--fa:""}.fa-boxes-packing{--fa:""}.fa-boxes-stacked{--fa:""}.fa-boxing-glove{--fa:""}.fa-bra{--fa:""}.fa-bracket{--fa:"["}.fa-bracket-curly{--fa:"{"}.fa-bracket-curly-left{--fa:"{"}.fa-bracket-curly-right{--fa:"}"}.fa-bracket-left{--fa:"["}.fa-bracket-round{--fa:"("}.fa-bracket-round-right{--fa:")"}.fa-bracket-square{--fa:"["}.fa-bracket-square-right{--fa:"]"}.fa-brackets{--fa:""}.fa-brackets-curly{--fa:""}.fa-brackets-round{--fa:""}.fa-brackets-square{--fa:""}.fa-braille{--fa:""}.fa-brain{--fa:""}.fa-brain-arrow-curved-right{--fa:""}.fa-brain-circuit{--fa:""}.fa-brake-warning{--fa:""}.fa-brazilian-real-sign{--fa:""}.fa-bread-loaf{--fa:""}.fa-bread-slice{--fa:""}.fa-bread-slice-butter{--fa:""}.fa-bridge{--fa:""}.fa-bridge-circle-check{--fa:""}.fa-bridge-circle-exclamation{--fa:""}.fa-bridge-circle-xmark{--fa:""}.fa-bridge-lock{--fa:""}.fa-bridge-suspension{--fa:""}.fa-bridge-water{--fa:""}.fa-briefcase{--fa:""}.fa-briefcase-arrow-right{--fa:""}.fa-briefcase-blank{--fa:""}.fa-briefcase-clock{--fa:""}.fa-briefcase-medical{--fa:""}.fa-briefs{--fa:""}.fa-brightness{--fa:""}.fa-brightness-low{--fa:""}.fa-bring-forward{--fa:""}.fa-bring-front{--fa:""}.fa-broadcast-tower{--fa:""}.fa-broccoli{--fa:""}.fa-broom{--fa:""}.fa-broom-ball{--fa:""}.fa-broom-wide{--fa:""}.fa-browser{--fa:""}.fa-browsers{--fa:""}.fa-brush{--fa:""}.fa-bucket{--fa:""}.fa-bug{--fa:""}.fa-bug-slash{--fa:""}.fa-bugs{--fa:""}.fa-building{--fa:""}.fa-building-circle-arrow-right{--fa:""}.fa-building-circle-check{--fa:""}.fa-building-circle-exclamation{--fa:""}.fa-building-circle-xmark{--fa:""}.fa-building-columns{--fa:""}.fa-building-flag{--fa:""}.fa-building-lock{--fa:""}.fa-building-magnifying-glass{--fa:""}.fa-building-memo{--fa:""}.fa-building-ngo{--fa:""}.fa-building-shield{--fa:""}.fa-building-un{--fa:""}.fa-building-user{--fa:""}.fa-building-wheat{--fa:""}.fa-buildings{--fa:""}.fa-bulldozer{--fa:""}.fa-bullhorn{--fa:""}.fa-bullseye{--fa:""}.fa-bullseye-arrow{--fa:""}.fa-bullseye-pointer{--fa:""}.fa-buoy{--fa:""}.fa-buoy-mooring{--fa:""}.fa-burger{--fa:""}.fa-burger-cheese{--fa:""}.fa-burger-fries{--fa:""}.fa-burger-glass{--fa:""}.fa-burger-lettuce{--fa:""}.fa-burger-soda{--fa:""}.fa-burn{--fa:""}.fa-burrito{--fa:""}.fa-burst{--fa:""}.fa-burst-new{--fa:""}.fa-bus{--fa:""}.fa-bus-alt{--fa:""}.fa-bus-school{--fa:""}.fa-bus-side{--fa:""}.fa-bus-simple{--fa:""}.fa-bus-stop{--fa:""}.fa-business-front{--fa:""}.fa-business-time{--fa:""}.fa-butter{--fa:""}.fa-butterfly{--fa:""}.fa-c{--fa:"C"}.fa-cab{--fa:""}.fa-cabin{--fa:""}.fa-cabinet-filing{--fa:""}.fa-cable-car{--fa:""}.fa-cactus{--fa:""}.fa-caduceus{--fa:""}.fa-cake{--fa:""}.fa-cake-candles{--fa:""}.fa-cake-slice{--fa:""}.fa-calculator{--fa:""}.fa-calculator-alt{--fa:""}.fa-calculator-simple{--fa:""}.fa-calendar{--fa:""}.fa-calendar-alt{--fa:""}.fa-calendar-arrow-down{--fa:""}.fa-calendar-arrow-up{--fa:""}.fa-calendar-check{--fa:""}.fa-calendar-circle{--fa:""}.fa-calendar-circle-exclamation{--fa:""}.fa-calendar-circle-minus{--fa:""}.fa-calendar-circle-plus{--fa:""}.fa-calendar-circle-user{--fa:""}.fa-calendar-clock{--fa:""}.fa-calendar-day{--fa:""}.fa-calendar-days{--fa:""}.fa-calendar-download{--fa:""}.fa-calendar-edit{--fa:""}.fa-calendar-exclamation{--fa:""}.fa-calendar-heart{--fa:""}.fa-calendar-image{--fa:""}.fa-calendar-lines{--fa:""}.fa-calendar-lines-pen{--fa:""}.fa-calendar-minus{--fa:""}.fa-calendar-note{--fa:""}.fa-calendar-pen{--fa:""}.fa-calendar-plus{--fa:""}.fa-calendar-range{--fa:""}.fa-calendar-star{--fa:""}.fa-calendar-time{--fa:""}.fa-calendar-times{--fa:""}.fa-calendar-upload{--fa:""}.fa-calendar-users{--fa:""}.fa-calendar-week{--fa:""}.fa-calendar-xmark{--fa:""}.fa-calendars{--fa:""}.fa-camcorder{--fa:""}.fa-camera{--fa:""}.fa-camera-alt{--fa:""}.fa-camera-cctv{--fa:""}.fa-camera-circle{--fa:""}.fa-camera-circle-ellipsis{--fa:""}.fa-camera-clock{--fa:""}.fa-camera-home{--fa:""}.fa-camera-movie{--fa:""}.fa-camera-polaroid{--fa:""}.fa-camera-retro{--fa:""}.fa-camera-rotate{--fa:""}.fa-camera-security{--fa:""}.fa-camera-shutter{--fa:""}.fa-camera-slash{--fa:""}.fa-camera-viewfinder{--fa:""}.fa-camera-web{--fa:""}.fa-camera-web-slash{--fa:""}.fa-campfire{--fa:""}.fa-campground{--fa:""}.fa-can-food{--fa:""}.fa-cancel{--fa:""}.fa-cancer{--fa:""}.fa-candle-holder{--fa:""}.fa-candy{--fa:""}.fa-candy-bar{--fa:""}.fa-candy-cane{--fa:""}.fa-candy-corn{--fa:""}.fa-cannabis{--fa:""}.fa-cannon{--fa:""}.fa-canoe-person{--fa:""}.fa-capricorn{--fa:""}.fa-capsule{--fa:""}.fa-capsules{--fa:""}.fa-car{--fa:""}.fa-car-alt{--fa:""}.fa-car-battery{--fa:""}.fa-car-bolt{--fa:""}.fa-car-building{--fa:""}.fa-car-bump{--fa:""}.fa-car-burst{--fa:""}.fa-car-bus{--fa:""}.fa-car-circle-bolt{--fa:""}.fa-car-crash{--fa:""}.fa-car-garage{--fa:""}.fa-car-key{--fa:""}.fa-car-mechanic{--fa:""}.fa-car-mirrors{--fa:""}.fa-car-on{--fa:""}.fa-car-people{--fa:""}.fa-car-rear{--fa:""}.fa-car-side{--fa:""}.fa-car-side-bolt{--fa:""}.fa-car-siren{--fa:""}.fa-car-siren-on{--fa:""}.fa-car-tilt{--fa:""}.fa-car-tunnel{--fa:""}.fa-car-wash{--fa:""}.fa-car-wrench{--fa:""}.fa-caravan{--fa:""}.fa-caravan-alt{--fa:""}.fa-caravan-simple{--fa:""}.fa-card-club{--fa:""}.fa-card-diamond{--fa:""}.fa-card-heart{--fa:""}.fa-card-spade{--fa:""}.fa-cards{--fa:""}.fa-cards-blank{--fa:""}.fa-caret-circle-down{--fa:""}.fa-caret-circle-left{--fa:""}.fa-caret-circle-right{--fa:""}.fa-caret-circle-up{--fa:""}.fa-caret-down{--fa:""}.fa-caret-large-down{--fa:""}.fa-caret-large-left{--fa:""}.fa-caret-large-right{--fa:""}.fa-caret-large-up{--fa:""}.fa-caret-left{--fa:""}.fa-caret-right{--fa:""}.fa-caret-square-down{--fa:""}.fa-caret-square-left{--fa:""}.fa-caret-square-right{--fa:""}.fa-caret-square-up{--fa:""}.fa-caret-up{--fa:""}.fa-carpool{--fa:""}.fa-carriage-baby{--fa:""}.fa-carrot{--fa:""}.fa-cars{--fa:""}.fa-cart-arrow-down{--fa:""}.fa-cart-arrow-up{--fa:""}.fa-cart-circle-arrow-down{--fa:""}.fa-cart-circle-arrow-up{--fa:""}.fa-cart-circle-check{--fa:""}.fa-cart-circle-exclamation{--fa:""}.fa-cart-circle-plus{--fa:""}.fa-cart-circle-xmark{--fa:""}.fa-cart-flatbed{--fa:""}.fa-cart-flatbed-boxes{--fa:""}.fa-cart-flatbed-empty{--fa:""}.fa-cart-flatbed-suitcase{--fa:""}.fa-cart-minus{--fa:""}.fa-cart-plus{--fa:""}.fa-cart-shopping{--fa:""}.fa-cart-shopping-fast{--fa:""}.fa-cart-xmark{--fa:""}.fa-cash-register{--fa:""}.fa-cassette-betamax{--fa:""}.fa-cassette-tape{--fa:""}.fa-cassette-vhs{--fa:""}.fa-castle{--fa:""}.fa-cat{--fa:""}.fa-cat-space{--fa:""}.fa-cauldron{--fa:""}.fa-cctv{--fa:""}.fa-cedi-sign{--fa:""}.fa-cent-sign{--fa:""}.fa-certificate{--fa:""}.fa-chain{--fa:""}.fa-chain-broken{--fa:""}.fa-chain-horizontal{--fa:""}.fa-chain-horizontal-slash{--fa:""}.fa-chain-slash{--fa:""}.fa-chair{--fa:""}.fa-chair-office{--fa:""}.fa-chalkboard{--fa:""}.fa-chalkboard-teacher{--fa:""}.fa-chalkboard-user{--fa:""}.fa-champagne-glass{--fa:""}.fa-champagne-glasses{--fa:""}.fa-charging-station{--fa:""}.fa-chart-area{--fa:""}.fa-chart-bar{--fa:""}.fa-chart-bullet{--fa:""}.fa-chart-candlestick{--fa:""}.fa-chart-column{--fa:""}.fa-chart-diagram{--fa:""}.fa-chart-fft{--fa:""}.fa-chart-gantt{--fa:""}.fa-chart-kanban{--fa:""}.fa-chart-line{--fa:""}.fa-chart-line-down{--fa:""}.fa-chart-line-up{--fa:""}.fa-chart-line-up-down{--fa:""}.fa-chart-mixed{--fa:""}.fa-chart-mixed-up-circle-currency{--fa:""}.fa-chart-mixed-up-circle-dollar{--fa:""}.fa-chart-network{--fa:""}.fa-chart-pie{--fa:""}.fa-chart-pie-alt{--fa:""}.fa-chart-pie-simple{--fa:""}.fa-chart-pie-simple-circle-currency{--fa:""}.fa-chart-pie-simple-circle-dollar{--fa:""}.fa-chart-pyramid{--fa:""}.fa-chart-radar{--fa:""}.fa-chart-scatter{--fa:""}.fa-chart-scatter-3d{--fa:""}.fa-chart-scatter-bubble{--fa:""}.fa-chart-simple{--fa:""}.fa-chart-simple-horizontal{--fa:""}.fa-chart-sine{--fa:""}.fa-chart-tree-map{--fa:""}.fa-chart-user{--fa:""}.fa-chart-waterfall{--fa:""}.fa-check{--fa:""}.fa-check-circle{--fa:""}.fa-check-double{--fa:""}.fa-check-square{--fa:""}.fa-check-to-slot{--fa:""}.fa-cheese{--fa:""}.fa-cheese-swiss{--fa:""}.fa-cheeseburger{--fa:""}.fa-chemex{--fa:""}.fa-cherries{--fa:""}.fa-chess{--fa:""}.fa-chess-bishop{--fa:""}.fa-chess-bishop-alt{--fa:""}.fa-chess-bishop-piece{--fa:""}.fa-chess-board{--fa:""}.fa-chess-clock{--fa:""}.fa-chess-clock-alt{--fa:""}.fa-chess-clock-flip{--fa:""}.fa-chess-king{--fa:""}.fa-chess-king-alt{--fa:""}.fa-chess-king-piece{--fa:""}.fa-chess-knight{--fa:""}.fa-chess-knight-alt{--fa:""}.fa-chess-knight-piece{--fa:""}.fa-chess-pawn{--fa:""}.fa-chess-pawn-alt{--fa:""}.fa-chess-pawn-piece{--fa:""}.fa-chess-queen{--fa:""}.fa-chess-queen-alt{--fa:""}.fa-chess-queen-piece{--fa:""}.fa-chess-rook{--fa:""}.fa-chess-rook-alt{--fa:""}.fa-chess-rook-piece{--fa:""}.fa-chest-drawers{--fa:""}.fa-chestnut{--fa:""}.fa-chevron-circle-down{--fa:""}.fa-chevron-circle-left{--fa:""}.fa-chevron-circle-right{--fa:""}.fa-chevron-circle-up{--fa:""}.fa-chevron-double-down{--fa:""}.fa-chevron-double-left{--fa:""}.fa-chevron-double-right{--fa:""}.fa-chevron-double-up{--fa:""}.fa-chevron-down{--fa:""}.fa-chevron-left{--fa:""}.fa-chevron-right{--fa:""}.fa-chevron-square-down{--fa:""}.fa-chevron-square-left{--fa:""}.fa-chevron-square-right{--fa:""}.fa-chevron-square-up{--fa:""}.fa-chevron-up{--fa:""}.fa-chevrons-down{--fa:""}.fa-chevrons-left{--fa:""}.fa-chevrons-right{--fa:""}.fa-chevrons-up{--fa:""}.fa-chf-sign{--fa:""}.fa-child{--fa:""}.fa-child-combatant{--fa:""}.fa-child-dress{--fa:""}.fa-child-reaching{--fa:""}.fa-child-rifle{--fa:""}.fa-children{--fa:""}.fa-chimney{--fa:""}.fa-chocolate-bar{--fa:""}.fa-chopsticks{--fa:""}.fa-church{--fa:""}.fa-circle{--fa:""}.fa-circle-0{--fa:""}.fa-circle-1{--fa:""}.fa-circle-2{--fa:""}.fa-circle-3{--fa:""}.fa-circle-4{--fa:""}.fa-circle-5{--fa:""}.fa-circle-6{--fa:""}.fa-circle-7{--fa:""}.fa-circle-8{--fa:""}.fa-circle-9{--fa:""}.fa-circle-a{--fa:""}.fa-circle-ampersand{--fa:""}.fa-circle-arrow-down{--fa:""}.fa-circle-arrow-down-left{--fa:""}.fa-circle-arrow-down-right{--fa:""}.fa-circle-arrow-left{--fa:""}.fa-circle-arrow-right{--fa:""}.fa-circle-arrow-up{--fa:""}.fa-circle-arrow-up-left{--fa:""}.fa-circle-arrow-up-right{--fa:""}.fa-circle-austral{--fa:""}.fa-circle-australian-dollar{--fa:""}.fa-circle-b{--fa:""}.fa-circle-baht{--fa:""}.fa-circle-bangladeshi-taka{--fa:""}.fa-circle-bitcoin{--fa:""}.fa-circle-bolt{--fa:""}.fa-circle-book-open{--fa:""}.fa-circle-bookmark{--fa:""}.fa-circle-brazilian-real{--fa:""}.fa-circle-c{--fa:""}.fa-circle-calendar{--fa:""}.fa-circle-camera{--fa:""}.fa-circle-caret-down{--fa:""}.fa-circle-caret-left{--fa:""}.fa-circle-caret-right{--fa:""}.fa-circle-caret-up{--fa:""}.fa-circle-cedi{--fa:""}.fa-circle-cent{--fa:""}.fa-circle-check{--fa:""}.fa-circle-chevron-down{--fa:""}.fa-circle-chevron-left{--fa:""}.fa-circle-chevron-right{--fa:""}.fa-circle-chevron-up{--fa:""}.fa-circle-chf{--fa:""}.fa-circle-colon{--fa:""}.fa-circle-cruzeiro{--fa:""}.fa-circle-currency{--fa:""}.fa-circle-d{--fa:""}.fa-circle-danish-krone{--fa:""}.fa-circle-dashed{--fa:""}.fa-circle-divide{--fa:""}.fa-circle-dollar{--fa:""}.fa-circle-dollar-to-slot{--fa:""}.fa-circle-dong{--fa:""}.fa-circle-dot{--fa:""}.fa-circle-down{--fa:""}.fa-circle-down-left{--fa:""}.fa-circle-down-right{--fa:""}.fa-circle-e{--fa:""}.fa-circle-ellipsis{--fa:""}.fa-circle-ellipsis-vertical{--fa:""}.fa-circle-envelope{--fa:""}.fa-circle-equals{--fa:""}.fa-circle-euro{--fa:""}.fa-circle-eurozone{--fa:""}.fa-circle-exclamation{--fa:""}.fa-circle-exclamation-check{--fa:""}.fa-circle-f{--fa:""}.fa-circle-florin{--fa:""}.fa-circle-franc{--fa:""}.fa-circle-g{--fa:""}.fa-circle-gf{--fa:""}.fa-circle-guarani{--fa:""}.fa-circle-h{--fa:""}.fa-circle-half{--fa:""}.fa-circle-half-horizontal{--fa:""}.fa-circle-half-stroke{--fa:""}.fa-circle-half-stroke-horizontal{--fa:""}.fa-circle-heart{--fa:""}.fa-circle-house{--fa:""}.fa-circle-hryvnia{--fa:""}.fa-circle-i{--fa:""}.fa-circle-indian-rupee{--fa:""}.fa-circle-info{--fa:""}.fa-circle-j{--fa:""}.fa-circle-k{--fa:""}.fa-circle-kip{--fa:""}.fa-circle-l{--fa:""}.fa-circle-lari{--fa:""}.fa-circle-left{--fa:""}.fa-circle-lira{--fa:""}.fa-circle-litecoin{--fa:""}.fa-circle-location-arrow{--fa:""}.fa-circle-m{--fa:""}.fa-circle-malaysian-ringgit{--fa:""}.fa-circle-manat{--fa:""}.fa-circle-microphone{--fa:""}.fa-circle-microphone-lines{--fa:""}.fa-circle-mill{--fa:""}.fa-circle-minus{--fa:""}.fa-circle-moon{--fa:""}.fa-circle-n{--fa:""}.fa-circle-naira{--fa:""}.fa-circle-nodes{--fa:""}.fa-circle-norwegian-krone{--fa:""}.fa-circle-notch{--fa:""}.fa-circle-o{--fa:""}.fa-circle-p{--fa:""}.fa-circle-parking{--fa:""}.fa-circle-pause{--fa:""}.fa-circle-peruvian-soles{--fa:""}.fa-circle-peseta{--fa:""}.fa-circle-peso{--fa:""}.fa-circle-phone{--fa:""}.fa-circle-phone-flip{--fa:""}.fa-circle-phone-hangup{--fa:""}.fa-circle-play{--fa:""}.fa-circle-plus{--fa:""}.fa-circle-polish-zloty{--fa:""}.fa-circle-q{--fa:""}.fa-circle-quarter{--fa:""}.fa-circle-quarter-stroke{--fa:""}.fa-circle-quarters{--fa:""}.fa-circle-question{--fa:""}.fa-circle-r{--fa:""}.fa-circle-radiation{--fa:""}.fa-circle-renminbi{--fa:""}.fa-circle-right{--fa:""}.fa-circle-ruble{--fa:""}.fa-circle-rupee{--fa:""}.fa-circle-rupiah{--fa:""}.fa-circle-s{--fa:""}.fa-circle-share-nodes{--fa:""}.fa-circle-shekel{--fa:""}.fa-circle-small{--fa:""}.fa-circle-sort{--fa:""}.fa-circle-sort-down{--fa:""}.fa-circle-sort-up{--fa:""}.fa-circle-star{--fa:""}.fa-circle-sterling{--fa:""}.fa-circle-stop{--fa:""}.fa-circle-swedish-krona{--fa:""}.fa-circle-t{--fa:""}.fa-circle-tenge{--fa:""}.fa-circle-three-quarters{--fa:""}.fa-circle-three-quarters-stroke{--fa:""}.fa-circle-trash{--fa:""}.fa-circle-tugrik{--fa:""}.fa-circle-turkish-lira{--fa:""}.fa-circle-u{--fa:""}.fa-circle-up{--fa:""}.fa-circle-up-left{--fa:""}.fa-circle-up-right{--fa:""}.fa-circle-user{--fa:""}.fa-circle-user-circle-check{--fa:""}.fa-circle-user-circle-exclamation{--fa:""}.fa-circle-user-circle-minus{--fa:""}.fa-circle-user-circle-moon{--fa:""}.fa-circle-user-circle-plus{--fa:""}.fa-circle-user-circle-question{--fa:""}.fa-circle-user-circle-user{--fa:""}.fa-circle-user-circle-xmark{--fa:""}.fa-circle-user-clock{--fa:""}.fa-circle-v{--fa:""}.fa-circle-video{--fa:""}.fa-circle-w{--fa:""}.fa-circle-waveform-lines{--fa:""}.fa-circle-wifi{--fa:""}.fa-circle-wifi-circle-wifi{--fa:""}.fa-circle-wifi-group{--fa:""}.fa-circle-won{--fa:""}.fa-circle-x{--fa:""}.fa-circle-xmark{--fa:""}.fa-circle-y{--fa:""}.fa-circle-yen{--fa:""}.fa-circle-z{--fa:""}.fa-circleapore-dollar{--fa:""}.fa-circles-overlap{--fa:""}.fa-circles-overlap-3{--fa:""}.fa-citrus{--fa:""}.fa-citrus-slice{--fa:""}.fa-city{--fa:""}.fa-clapperboard{--fa:""}.fa-clapperboard-play{--fa:""}.fa-clarinet{--fa:""}.fa-claw-marks{--fa:""}.fa-clinic-medical{--fa:""}.fa-clipboard{--fa:""}.fa-clipboard-check{--fa:""}.fa-clipboard-clock{--fa:""}.fa-clipboard-exclamation{--fa:""}.fa-clipboard-list{--fa:""}.fa-clipboard-list-check{--fa:""}.fa-clipboard-medical{--fa:""}.fa-clipboard-prescription{--fa:""}.fa-clipboard-question{--fa:""}.fa-clipboard-user{--fa:""}.fa-clock{--fa:""}.fa-clock-desk{--fa:""}.fa-clock-eight{--fa:""}.fa-clock-eight-thirty{--fa:""}.fa-clock-eleven{--fa:""}.fa-clock-eleven-thirty{--fa:""}.fa-clock-five{--fa:""}.fa-clock-five-thirty{--fa:""}.fa-clock-four{--fa:""}.fa-clock-four-thirty{--fa:""}.fa-clock-nine{--fa:""}.fa-clock-nine-thirty{--fa:""}.fa-clock-one{--fa:""}.fa-clock-one-thirty{--fa:""}.fa-clock-rotate-left{--fa:""}.fa-clock-seven{--fa:""}.fa-clock-seven-thirty{--fa:""}.fa-clock-six{--fa:""}.fa-clock-six-thirty{--fa:""}.fa-clock-ten{--fa:""}.fa-clock-ten-thirty{--fa:""}.fa-clock-three{--fa:""}.fa-clock-three-thirty{--fa:""}.fa-clock-twelve{--fa:""}.fa-clock-twelve-thirty{--fa:""}.fa-clock-two{--fa:""}.fa-clock-two-thirty{--fa:""}.fa-clone{--fa:""}.fa-clone-plus{--fa:""}.fa-close{--fa:""}.fa-closed-captioning{--fa:""}.fa-closed-captioning-slash{--fa:""}.fa-clothes-hanger{--fa:""}.fa-cloud{--fa:""}.fa-cloud-arrow-down{--fa:""}.fa-cloud-arrow-up{--fa:""}.fa-cloud-binary{--fa:""}.fa-cloud-bolt{--fa:""}.fa-cloud-bolt-moon{--fa:""}.fa-cloud-bolt-sun{--fa:""}.fa-cloud-check{--fa:""}.fa-cloud-download{--fa:""}.fa-cloud-download-alt{--fa:""}.fa-cloud-drizzle{--fa:""}.fa-cloud-exclamation{--fa:""}.fa-cloud-fog{--fa:""}.fa-cloud-hail{--fa:""}.fa-cloud-hail-mixed{--fa:""}.fa-cloud-meatball{--fa:""}.fa-cloud-minus{--fa:""}.fa-cloud-moon{--fa:""}.fa-cloud-moon-rain{--fa:""}.fa-cloud-music{--fa:""}.fa-cloud-plus{--fa:""}.fa-cloud-question{--fa:""}.fa-cloud-rain{--fa:""}.fa-cloud-rainbow{--fa:""}.fa-cloud-showers{--fa:""}.fa-cloud-showers-heavy{--fa:""}.fa-cloud-showers-water{--fa:""}.fa-cloud-slash{--fa:""}.fa-cloud-sleet{--fa:""}.fa-cloud-snow{--fa:""}.fa-cloud-sun{--fa:""}.fa-cloud-sun-rain{--fa:""}.fa-cloud-upload{--fa:""}.fa-cloud-upload-alt{--fa:""}.fa-cloud-word{--fa:""}.fa-cloud-xmark{--fa:""}.fa-clouds{--fa:""}.fa-clouds-moon{--fa:""}.fa-clouds-sun{--fa:""}.fa-clover{--fa:""}.fa-club{--fa:""}.fa-cny{--fa:""}.fa-cocktail{--fa:""}.fa-coconut{--fa:""}.fa-code{--fa:""}.fa-code-branch{--fa:""}.fa-code-commit{--fa:""}.fa-code-compare{--fa:""}.fa-code-fork{--fa:""}.fa-code-merge{--fa:""}.fa-code-pull-request{--fa:""}.fa-code-pull-request-closed{--fa:""}.fa-code-pull-request-draft{--fa:""}.fa-code-simple{--fa:""}.fa-coffee{--fa:""}.fa-coffee-bean{--fa:""}.fa-coffee-beans{--fa:""}.fa-coffee-pot{--fa:""}.fa-coffee-togo{--fa:""}.fa-coffin{--fa:""}.fa-coffin-cross{--fa:""}.fa-cog{--fa:""}.fa-cogs{--fa:""}.fa-coin{--fa:""}.fa-coin-blank{--fa:""}.fa-coin-front{--fa:""}.fa-coin-vertical{--fa:""}.fa-coins{--fa:""}.fa-colon{--fa:":"}.fa-colon-sign{--fa:""}.fa-columns{--fa:""}.fa-columns-3{--fa:""}.fa-comet{--fa:""}.fa-comma{--fa:","}.fa-command{--fa:""}.fa-comment{--fa:""}.fa-comment-alt{--fa:""}.fa-comment-alt-arrow-down{--fa:""}.fa-comment-alt-arrow-up{--fa:""}.fa-comment-alt-captions{--fa:""}.fa-comment-alt-check{--fa:""}.fa-comment-alt-dollar{--fa:""}.fa-comment-alt-dots{--fa:""}.fa-comment-alt-edit{--fa:""}.fa-comment-alt-exclamation{--fa:""}.fa-comment-alt-image{--fa:""}.fa-comment-alt-lines{--fa:""}.fa-comment-alt-medical{--fa:""}.fa-comment-alt-minus{--fa:""}.fa-comment-alt-music{--fa:""}.fa-comment-alt-plus{--fa:""}.fa-comment-alt-quote{--fa:""}.fa-comment-alt-slash{--fa:""}.fa-comment-alt-smile{--fa:""}.fa-comment-alt-text{--fa:""}.fa-comment-alt-times{--fa:""}.fa-comment-arrow-down{--fa:""}.fa-comment-arrow-up{--fa:""}.fa-comment-arrow-up-right{--fa:""}.fa-comment-captions{--fa:""}.fa-comment-check{--fa:""}.fa-comment-code{--fa:""}.fa-comment-dollar{--fa:""}.fa-comment-dot{--fa:""}.fa-comment-dots{--fa:""}.fa-comment-edit{--fa:""}.fa-comment-exclamation{--fa:""}.fa-comment-heart{--fa:""}.fa-comment-image{--fa:""}.fa-comment-lines{--fa:""}.fa-comment-medical{--fa:""}.fa-comment-middle{--fa:""}.fa-comment-middle-alt{--fa:""}.fa-comment-middle-top{--fa:""}.fa-comment-middle-top-alt{--fa:""}.fa-comment-minus{--fa:""}.fa-comment-music{--fa:""}.fa-comment-nodes{--fa:""}.fa-comment-pen{--fa:""}.fa-comment-plus{--fa:""}.fa-comment-question{--fa:""}.fa-comment-quote{--fa:""}.fa-comment-slash{--fa:""}.fa-comment-smile{--fa:""}.fa-comment-sms{--fa:""}.fa-comment-text{--fa:""}.fa-comment-times{--fa:""}.fa-comment-waveform{--fa:""}.fa-comment-xmark{--fa:""}.fa-commenting{--fa:""}.fa-comments{--fa:""}.fa-comments-alt{--fa:""}.fa-comments-alt-dollar{--fa:""}.fa-comments-dollar{--fa:""}.fa-comments-question{--fa:""}.fa-comments-question-check{--fa:""}.fa-compact-disc{--fa:""}.fa-compass{--fa:""}.fa-compass-drafting{--fa:""}.fa-compass-slash{--fa:""}.fa-compress{--fa:""}.fa-compress-alt{--fa:""}.fa-compress-arrows{--fa:""}.fa-compress-arrows-alt{--fa:""}.fa-compress-wide{--fa:""}.fa-computer{--fa:""}.fa-computer-classic{--fa:""}.fa-computer-mouse{--fa:""}.fa-computer-mouse-button-left{--fa:""}.fa-computer-mouse-button-right{--fa:""}.fa-computer-mouse-scrollwheel{--fa:""}.fa-computer-speaker{--fa:""}.fa-concierge-bell{--fa:""}.fa-construction{--fa:""}.fa-contact-book{--fa:""}.fa-contact-card{--fa:""}.fa-container-storage{--fa:""}.fa-conveyor-belt{--fa:""}.fa-conveyor-belt-alt{--fa:""}.fa-conveyor-belt-arm{--fa:""}.fa-conveyor-belt-boxes{--fa:""}.fa-conveyor-belt-empty{--fa:""}.fa-cookie{--fa:""}.fa-cookie-bite{--fa:""}.fa-copy{--fa:""}.fa-copyright{--fa:""}.fa-corn{--fa:""}.fa-corner{--fa:""}.fa-couch{--fa:""}.fa-couch-small{--fa:""}.fa-court-sport{--fa:""}.fa-cow{--fa:""}.fa-cowbell{--fa:""}.fa-cowbell-circle-plus{--fa:""}.fa-cowbell-more{--fa:""}.fa-crab{--fa:""}.fa-crate-apple{--fa:""}.fa-crate-empty{--fa:""}.fa-credit-card{--fa:""}.fa-credit-card-alt{--fa:""}.fa-credit-card-blank{--fa:""}.fa-credit-card-front{--fa:""}.fa-creemee{--fa:""}.fa-cricket{--fa:""}.fa-cricket-bat-ball{--fa:""}.fa-croissant{--fa:""}.fa-crop{--fa:""}.fa-crop-alt{--fa:""}.fa-crop-simple{--fa:""}.fa-cross{--fa:""}.fa-crosshairs{--fa:""}.fa-crosshairs-simple{--fa:""}.fa-crow{--fa:""}.fa-crown{--fa:""}.fa-crutch{--fa:""}.fa-crutches{--fa:""}.fa-cruzeiro-sign{--fa:""}.fa-crystal-ball{--fa:""}.fa-cube{--fa:""}.fa-cubes{--fa:""}.fa-cubes-stacked{--fa:""}.fa-cucumber{--fa:""}.fa-cup-straw{--fa:""}.fa-cup-straw-swoosh{--fa:""}.fa-cup-togo{--fa:""}.fa-cupcake{--fa:""}.fa-curling{--fa:""}.fa-curling-stone{--fa:""}.fa-currency-sign{--fa:""}.fa-custard{--fa:""}.fa-cut{--fa:""}.fa-cutlery{--fa:""}.fa-d{--fa:"D"}.fa-dagger{--fa:""}.fa-danish-krone-sign{--fa:""}.fa-dash{--fa:""}.fa-dashboard{--fa:""}.fa-database{--fa:""}.fa-deaf{--fa:""}.fa-deafness{--fa:""}.fa-debug{--fa:""}.fa-dedent{--fa:""}.fa-deer{--fa:""}.fa-deer-rudolph{--fa:""}.fa-delete-left{--fa:""}.fa-delete-right{--fa:""}.fa-democrat{--fa:""}.fa-desk{--fa:""}.fa-desktop{--fa:""}.fa-desktop-alt{--fa:""}.fa-desktop-arrow-down{--fa:""}.fa-desktop-code{--fa:""}.fa-desktop-medical{--fa:""}.fa-desktop-slash{--fa:""}.fa-dewpoint{--fa:""}.fa-dharmachakra{--fa:""}.fa-diagnoses{--fa:""}.fa-diagram-cells{--fa:""}.fa-diagram-lean-canvas{--fa:""}.fa-diagram-nested{--fa:""}.fa-diagram-next{--fa:""}.fa-diagram-predecessor{--fa:""}.fa-diagram-previous{--fa:""}.fa-diagram-project{--fa:""}.fa-diagram-sankey{--fa:""}.fa-diagram-subtask{--fa:""}.fa-diagram-successor{--fa:""}.fa-diagram-venn{--fa:""}.fa-dial{--fa:""}.fa-dial-high{--fa:""}.fa-dial-low{--fa:""}.fa-dial-max{--fa:""}.fa-dial-med{--fa:""}.fa-dial-med-high{--fa:""}.fa-dial-med-low{--fa:""}.fa-dial-min{--fa:""}.fa-dial-off{--fa:""}.fa-dialpad{--fa:""}.fa-diamond{--fa:""}.fa-diamond-exclamation{--fa:""}.fa-diamond-half{--fa:""}.fa-diamond-half-stroke{--fa:""}.fa-diamond-turn-right{--fa:""}.fa-diamonds-4{--fa:""}.fa-dice{--fa:""}.fa-dice-d10{--fa:""}.fa-dice-d12{--fa:""}.fa-dice-d20{--fa:""}.fa-dice-d4{--fa:""}.fa-dice-d6{--fa:""}.fa-dice-d8{--fa:""}.fa-dice-five{--fa:""}.fa-dice-four{--fa:""}.fa-dice-one{--fa:""}.fa-dice-six{--fa:""}.fa-dice-three{--fa:""}.fa-dice-two{--fa:""}.fa-digging{--fa:""}.fa-digital-tachograph{--fa:""}.fa-dinosaur{--fa:""}.fa-diploma{--fa:""}.fa-direction-left-right{--fa:""}.fa-direction-up-down{--fa:""}.fa-directions{--fa:""}.fa-disc-drive{--fa:""}.fa-disease{--fa:""}.fa-display{--fa:""}.fa-display-arrow-down{--fa:""}.fa-display-chart-up{--fa:""}.fa-display-chart-up-circle-currency{--fa:""}.fa-display-chart-up-circle-dollar{--fa:""}.fa-display-code{--fa:""}.fa-display-medical{--fa:""}.fa-display-slash{--fa:""}.fa-distribute-spacing-horizontal{--fa:""}.fa-distribute-spacing-vertical{--fa:""}.fa-ditto{--fa:"\""}.fa-divide{--fa:""}.fa-dizzy{--fa:""}.fa-dna{--fa:""}.fa-do-not-enter{--fa:""}.fa-dog{--fa:""}.fa-dog-leashed{--fa:""}.fa-dollar{--fa:"$"}.fa-dollar-circle{--fa:""}.fa-dollar-sign{--fa:"$"}.fa-dollar-square{--fa:""}.fa-dolly{--fa:""}.fa-dolly-box{--fa:""}.fa-dolly-empty{--fa:""}.fa-dolly-flatbed{--fa:""}.fa-dolly-flatbed-alt{--fa:""}.fa-dolly-flatbed-empty{--fa:""}.fa-dolphin{--fa:""}.fa-donate{--fa:""}.fa-dong-sign{--fa:""}.fa-donut{--fa:""}.fa-door-closed{--fa:""}.fa-door-open{--fa:""}.fa-dot{--fa:""}.fa-dot-circle{--fa:""}.fa-doughnut{--fa:""}.fa-dove{--fa:""}.fa-down{--fa:""}.fa-down-from-bracket{--fa:""}.fa-down-from-dotted-line{--fa:""}.fa-down-from-line{--fa:""}.fa-down-left{--fa:""}.fa-down-left-and-up-right-to-center{--fa:""}.fa-down-long{--fa:""}.fa-down-long-to-line{--fa:""}.fa-down-right{--fa:""}.fa-down-to-bracket{--fa:""}.fa-down-to-dotted-line{--fa:""}.fa-down-to-line{--fa:""}.fa-down-up{--fa:""}.fa-download{--fa:""}.fa-drafting-compass{--fa:""}.fa-dragon{--fa:""}.fa-draw-circle{--fa:""}.fa-draw-polygon{--fa:""}.fa-draw-square{--fa:""}.fa-dreidel{--fa:""}.fa-dress{--fa:""}.fa-dresser{--fa:""}.fa-drivers-license{--fa:""}.fa-drone{--fa:""}.fa-drone-alt{--fa:""}.fa-drone-front{--fa:""}.fa-droplet{--fa:""}.fa-droplet-degree{--fa:""}.fa-droplet-percent{--fa:""}.fa-droplet-plus{--fa:""}.fa-droplet-slash{--fa:""}.fa-drum{--fa:""}.fa-drum-steelpan{--fa:""}.fa-drumstick{--fa:""}.fa-drumstick-bite{--fa:""}.fa-dryer{--fa:""}.fa-dryer-alt{--fa:""}.fa-dryer-heat{--fa:""}.fa-duck{--fa:""}.fa-dumbbell{--fa:""}.fa-dumpster{--fa:""}.fa-dumpster-fire{--fa:""}.fa-dungeon{--fa:""}.fa-e{--fa:"E"}.fa-ear{--fa:""}.fa-ear-circle-checkmark{--fa:""}.fa-ear-deaf{--fa:""}.fa-ear-listen{--fa:""}.fa-ear-muffs{--fa:""}.fa-ear-triangle-exclamation{--fa:""}.fa-ear-waveform{--fa:""}.fa-earth{--fa:""}.fa-earth-africa{--fa:""}.fa-earth-america{--fa:""}.fa-earth-americas{--fa:""}.fa-earth-asia{--fa:""}.fa-earth-europe{--fa:""}.fa-earth-oceania{--fa:""}.fa-eclipse{--fa:""}.fa-eclipse-alt{--fa:""}.fa-edit{--fa:""}.fa-egg{--fa:""}.fa-egg-fried{--fa:""}.fa-eggplant{--fa:""}.fa-eject{--fa:""}.fa-elephant{--fa:""}.fa-elevator{--fa:""}.fa-ellipsis{--fa:""}.fa-ellipsis-h{--fa:""}.fa-ellipsis-h-alt{--fa:""}.fa-ellipsis-stroke{--fa:""}.fa-ellipsis-stroke-vertical{--fa:""}.fa-ellipsis-v{--fa:""}.fa-ellipsis-v-alt{--fa:""}.fa-ellipsis-vertical{--fa:""}.fa-empty-set{--fa:""}.fa-engine{--fa:""}.fa-engine-exclamation{--fa:""}.fa-engine-warning{--fa:""}.fa-envelope{--fa:""}.fa-envelope-badge{--fa:""}.fa-envelope-certificate{--fa:""}.fa-envelope-circle{--fa:""}.fa-envelope-circle-check{--fa:""}.fa-envelope-circle-user{--fa:""}.fa-envelope-dot{--fa:""}.fa-envelope-open{--fa:""}.fa-envelope-open-dollar{--fa:""}.fa-envelope-open-text{--fa:""}.fa-envelope-ribbon{--fa:""}.fa-envelope-square{--fa:""}.fa-envelopes{--fa:""}.fa-envelopes-bulk{--fa:""}.fa-equals{--fa:"="}.fa-eraser{--fa:""}.fa-escalator{--fa:""}.fa-ethernet{--fa:""}.fa-eur{--fa:""}.fa-euro{--fa:""}.fa-euro-sign{--fa:""}.fa-eurozone-sign{--fa:""}.fa-excavator{--fa:""}.fa-exchange{--fa:""}.fa-exchange-alt{--fa:""}.fa-exclamation{--fa:"!"}.fa-exclamation-circle{--fa:""}.fa-exclamation-square{--fa:""}.fa-exclamation-triangle{--fa:""}.fa-expand{--fa:""}.fa-expand-alt{--fa:""}.fa-expand-arrows{--fa:""}.fa-expand-arrows-alt{--fa:""}.fa-expand-wide{--fa:""}.fa-exploding-head{--fa:""}.fa-explosion{--fa:""}.fa-external-link{--fa:""}.fa-external-link-alt{--fa:""}.fa-external-link-square{--fa:""}.fa-external-link-square-alt{--fa:""}.fa-eye{--fa:""}.fa-eye-closed{--fa:""}.fa-eye-dropper{--fa:""}.fa-eye-dropper-empty{--fa:""}.fa-eye-dropper-full{--fa:""}.fa-eye-dropper-half{--fa:""}.fa-eye-evil{--fa:""}.fa-eye-low-vision{--fa:""}.fa-eye-slash{--fa:""}.fa-eyedropper{--fa:""}.fa-eyes{--fa:""}.fa-f{--fa:"F"}.fa-face-angry{--fa:""}.fa-face-angry-horns{--fa:""}.fa-face-anguished{--fa:""}.fa-face-anxious-sweat{--fa:""}.fa-face-astonished{--fa:""}.fa-face-awesome{--fa:""}.fa-face-beam-hand-over-mouth{--fa:""}.fa-face-clouds{--fa:""}.fa-face-confounded{--fa:""}.fa-face-confused{--fa:""}.fa-face-cowboy-hat{--fa:""}.fa-face-diagonal-mouth{--fa:""}.fa-face-disappointed{--fa:""}.fa-face-disguise{--fa:""}.fa-face-dizzy{--fa:""}.fa-face-dotted{--fa:""}.fa-face-downcast-sweat{--fa:""}.fa-face-drooling{--fa:""}.fa-face-exhaling{--fa:""}.fa-face-explode{--fa:""}.fa-face-expressionless{--fa:""}.fa-face-eyes-xmarks{--fa:""}.fa-face-fearful{--fa:""}.fa-face-flushed{--fa:""}.fa-face-frown{--fa:""}.fa-face-frown-open{--fa:""}.fa-face-frown-slight{--fa:""}.fa-face-glasses{--fa:""}.fa-face-grimace{--fa:""}.fa-face-grin{--fa:""}.fa-face-grin-beam{--fa:""}.fa-face-grin-beam-sweat{--fa:""}.fa-face-grin-hearts{--fa:""}.fa-face-grin-squint{--fa:""}.fa-face-grin-squint-tears{--fa:""}.fa-face-grin-stars{--fa:""}.fa-face-grin-tears{--fa:""}.fa-face-grin-tongue{--fa:""}.fa-face-grin-tongue-squint{--fa:""}.fa-face-grin-tongue-wink{--fa:""}.fa-face-grin-wide{--fa:""}.fa-face-grin-wink{--fa:""}.fa-face-hand-over-mouth{--fa:""}.fa-face-hand-peeking{--fa:""}.fa-face-hand-yawn{--fa:""}.fa-face-head-bandage{--fa:""}.fa-face-holding-back-tears{--fa:""}.fa-face-hushed{--fa:""}.fa-face-icicles{--fa:""}.fa-face-kiss{--fa:""}.fa-face-kiss-beam{--fa:""}.fa-face-kiss-closed-eyes{--fa:""}.fa-face-kiss-wink-heart{--fa:""}.fa-face-laugh{--fa:""}.fa-face-laugh-beam{--fa:""}.fa-face-laugh-squint{--fa:""}.fa-face-laugh-wink{--fa:""}.fa-face-lying{--fa:""}.fa-face-mask{--fa:""}.fa-face-meh{--fa:""}.fa-face-meh-blank{--fa:""}.fa-face-melting{--fa:""}.fa-face-monocle{--fa:""}.fa-face-nauseated{--fa:""}.fa-face-nose-steam{--fa:""}.fa-face-party{--fa:""}.fa-face-pensive{--fa:""}.fa-face-persevering{--fa:""}.fa-face-pleading{--fa:""}.fa-face-pouting{--fa:""}.fa-face-raised-eyebrow{--fa:""}.fa-face-relieved{--fa:""}.fa-face-rolling-eyes{--fa:""}.fa-face-sad-cry{--fa:""}.fa-face-sad-sweat{--fa:""}.fa-face-sad-tear{--fa:""}.fa-face-saluting{--fa:""}.fa-face-scream{--fa:""}.fa-face-shaking{--fa:""}.fa-face-shaking-horizontal{--fa:""}.fa-face-shaking-vertical{--fa:""}.fa-face-shush{--fa:""}.fa-face-sleeping{--fa:""}.fa-face-sleepy{--fa:""}.fa-face-smile{--fa:""}.fa-face-smile-beam{--fa:""}.fa-face-smile-halo{--fa:""}.fa-face-smile-hearts{--fa:""}.fa-face-smile-horns{--fa:""}.fa-face-smile-plus{--fa:""}.fa-face-smile-relaxed{--fa:""}.fa-face-smile-tear{--fa:""}.fa-face-smile-tongue{--fa:""}.fa-face-smile-upside-down{--fa:""}.fa-face-smile-wink{--fa:""}.fa-face-smiling-hands{--fa:""}.fa-face-smirking{--fa:""}.fa-face-spiral-eyes{--fa:""}.fa-face-sunglasses{--fa:""}.fa-face-surprise{--fa:""}.fa-face-swear{--fa:""}.fa-face-thermometer{--fa:""}.fa-face-thinking{--fa:""}.fa-face-tired{--fa:""}.fa-face-tissue{--fa:""}.fa-face-tongue-money{--fa:""}.fa-face-tongue-sweat{--fa:""}.fa-face-unamused{--fa:""}.fa-face-viewfinder{--fa:""}.fa-face-vomit{--fa:""}.fa-face-weary{--fa:""}.fa-face-woozy{--fa:""}.fa-face-worried{--fa:""}.fa-face-zany{--fa:""}.fa-face-zipper{--fa:""}.fa-falafel{--fa:""}.fa-family{--fa:""}.fa-family-dress{--fa:""}.fa-family-pants{--fa:""}.fa-fan{--fa:""}.fa-fan-table{--fa:""}.fa-farm{--fa:""}.fa-fast-backward{--fa:""}.fa-fast-forward{--fa:""}.fa-faucet{--fa:""}.fa-faucet-drip{--fa:""}.fa-fax{--fa:""}.fa-feather{--fa:""}.fa-feather-alt{--fa:""}.fa-feather-pointed{--fa:""}.fa-feed{--fa:""}.fa-female{--fa:""}.fa-fence{--fa:""}.fa-ferris-wheel{--fa:""}.fa-ferry{--fa:""}.fa-field-hockey{--fa:""}.fa-field-hockey-stick-ball{--fa:""}.fa-fighter-jet{--fa:""}.fa-file{--fa:""}.fa-file-aiff{--fa:""}.fa-file-alt{--fa:""}.fa-file-archive{--fa:""}.fa-file-arrow-down{--fa:""}.fa-file-arrow-up{--fa:""}.fa-file-audio{--fa:""}.fa-file-award{--fa:""}.fa-file-ban{--fa:""}.fa-file-binary{--fa:""}.fa-file-brackets-curly{--fa:""}.fa-file-cad{--fa:""}.fa-file-caret-down{--fa:""}.fa-file-caret-up{--fa:""}.fa-file-certificate{--fa:""}.fa-file-chart-column{--fa:""}.fa-file-chart-line{--fa:""}.fa-file-chart-pie{--fa:""}.fa-file-check{--fa:""}.fa-file-circle-check{--fa:""}.fa-file-circle-exclamation{--fa:""}.fa-file-circle-info{--fa:""}.fa-file-circle-minus{--fa:""}.fa-file-circle-plus{--fa:""}.fa-file-circle-question{--fa:""}.fa-file-circle-xmark{--fa:""}.fa-file-clipboard{--fa:""}.fa-file-code{--fa:""}.fa-file-contract{--fa:""}.fa-file-css{--fa:""}.fa-file-csv{--fa:""}.fa-file-dashed-line{--fa:""}.fa-file-doc{--fa:""}.fa-file-download{--fa:""}.fa-file-edit{--fa:""}.fa-file-eps{--fa:""}.fa-file-excel{--fa:""}.fa-file-exclamation{--fa:""}.fa-file-export{--fa:""}.fa-file-fragment{--fa:""}.fa-file-gif{--fa:""}.fa-file-half-dashed{--fa:""}.fa-file-heart{--fa:""}.fa-file-html{--fa:""}.fa-file-icns{--fa:""}.fa-file-image{--fa:""}.fa-file-import{--fa:""}.fa-file-invoice{--fa:""}.fa-file-invoice-dollar{--fa:""}.fa-file-jpg{--fa:""}.fa-file-js{--fa:""}.fa-file-lines{--fa:""}.fa-file-lock{--fa:""}.fa-file-magnifying-glass{--fa:""}.fa-file-medical{--fa:""}.fa-file-medical-alt{--fa:""}.fa-file-midi{--fa:""}.fa-file-minus{--fa:""}.fa-file-mov{--fa:""}.fa-file-mp3{--fa:""}.fa-file-mp4{--fa:""}.fa-file-music{--fa:""}.fa-file-odf{--fa:""}.fa-file-pdf{--fa:""}.fa-file-pen{--fa:""}.fa-file-plus{--fa:""}.fa-file-plus-minus{--fa:""}.fa-file-png{--fa:""}.fa-file-powerpoint{--fa:""}.fa-file-ppt{--fa:""}.fa-file-prescription{--fa:""}.fa-file-search{--fa:""}.fa-file-shield{--fa:""}.fa-file-signature{--fa:""}.fa-file-slash{--fa:""}.fa-file-spreadsheet{--fa:""}.fa-file-svg{--fa:""}.fa-file-tex{--fa:""}.fa-file-text{--fa:""}.fa-file-times{--fa:""}.fa-file-upload{--fa:""}.fa-file-user{--fa:""}.fa-file-vector{--fa:""}.fa-file-video{--fa:""}.fa-file-wav{--fa:""}.fa-file-waveform{--fa:""}.fa-file-word{--fa:""}.fa-file-xls{--fa:""}.fa-file-xmark{--fa:""}.fa-file-xml{--fa:""}.fa-file-zip{--fa:""}.fa-file-zipper{--fa:""}.fa-files{--fa:""}.fa-files-medical{--fa:""}.fa-fill{--fa:""}.fa-fill-drip{--fa:""}.fa-film{--fa:""}.fa-film-alt{--fa:""}.fa-film-canister{--fa:""}.fa-film-cannister{--fa:""}.fa-film-music{--fa:""}.fa-film-simple{--fa:""}.fa-film-slash{--fa:""}.fa-film-stack{--fa:""}.fa-films{--fa:""}.fa-filter{--fa:""}.fa-filter-circle-dollar{--fa:""}.fa-filter-circle-xmark{--fa:""}.fa-filter-list{--fa:""}.fa-filter-slash{--fa:""}.fa-filters{--fa:""}.fa-fingerprint{--fa:""}.fa-fire{--fa:""}.fa-fire-alt{--fa:""}.fa-fire-burner{--fa:""}.fa-fire-extinguisher{--fa:""}.fa-fire-flame{--fa:""}.fa-fire-flame-curved{--fa:""}.fa-fire-flame-simple{--fa:""}.fa-fire-hydrant{--fa:""}.fa-fire-smoke{--fa:""}.fa-fireplace{--fa:""}.fa-firewall{--fa:""}.fa-first-aid{--fa:""}.fa-fish{--fa:""}.fa-fish-bones{--fa:""}.fa-fish-cooked{--fa:""}.fa-fish-fins{--fa:""}.fa-fishing-rod{--fa:""}.fa-fist-raised{--fa:""}.fa-flag{--fa:""}.fa-flag-alt{--fa:""}.fa-flag-checkered{--fa:""}.fa-flag-pennant{--fa:""}.fa-flag-swallowtail{--fa:""}.fa-flag-usa{--fa:""}.fa-flame{--fa:""}.fa-flashlight{--fa:""}.fa-flask{--fa:""}.fa-flask-gear{--fa:""}.fa-flask-poison{--fa:""}.fa-flask-potion{--fa:""}.fa-flask-round-poison{--fa:""}.fa-flask-round-potion{--fa:""}.fa-flask-vial{--fa:""}.fa-flatbread{--fa:""}.fa-flatbread-stuffed{--fa:""}.fa-floppy-disk{--fa:""}.fa-floppy-disk-circle-arrow-right{--fa:""}.fa-floppy-disk-circle-xmark{--fa:""}.fa-floppy-disk-pen{--fa:""}.fa-floppy-disk-times{--fa:""}.fa-floppy-disks{--fa:""}.fa-florin-sign{--fa:""}.fa-flower{--fa:""}.fa-flower-daffodil{--fa:""}.fa-flower-tulip{--fa:""}.fa-flushed{--fa:""}.fa-flute{--fa:""}.fa-flux-capacitor{--fa:""}.fa-flying-disc{--fa:""}.fa-fog{--fa:""}.fa-folder{--fa:""}.fa-folder-arrow-down{--fa:""}.fa-folder-arrow-left{--fa:""}.fa-folder-arrow-right{--fa:""}.fa-folder-arrow-up{--fa:""}.fa-folder-blank{--fa:""}.fa-folder-bookmark{--fa:""}.fa-folder-check{--fa:""}.fa-folder-closed{--fa:""}.fa-folder-cog{--fa:""}.fa-folder-download{--fa:""}.fa-folder-gear{--fa:""}.fa-folder-grid{--fa:""}.fa-folder-heart{--fa:""}.fa-folder-image{--fa:""}.fa-folder-magnifying-glass{--fa:""}.fa-folder-medical{--fa:""}.fa-folder-minus{--fa:""}.fa-folder-music{--fa:""}.fa-folder-open{--fa:""}.fa-folder-plus{--fa:""}.fa-folder-search{--fa:""}.fa-folder-times{--fa:""}.fa-folder-tree{--fa:""}.fa-folder-upload{--fa:""}.fa-folder-user{--fa:""}.fa-folder-xmark{--fa:""}.fa-folders{--fa:""}.fa-fondue-pot{--fa:""}.fa-font{--fa:""}.fa-font-awesome{--fa:""}.fa-font-awesome-flag{--fa:""}.fa-font-awesome-logo-full{--fa:""}.fa-font-case{--fa:""}.fa-foot-wing{--fa:""}.fa-football{--fa:""}.fa-football-ball{--fa:""}.fa-football-helmet{--fa:""}.fa-fork{--fa:""}.fa-fork-knife{--fa:""}.fa-forklift{--fa:""}.fa-fort{--fa:""}.fa-forward{--fa:""}.fa-forward-fast{--fa:""}.fa-forward-step{--fa:""}.fa-fragile{--fa:""}.fa-frame{--fa:""}.fa-franc-sign{--fa:""}.fa-french-fries{--fa:""}.fa-frog{--fa:""}.fa-frosty-head{--fa:""}.fa-frown{--fa:""}.fa-frown-open{--fa:""}.fa-function{--fa:""}.fa-funnel-dollar{--fa:""}.fa-futbol{--fa:""}.fa-futbol-ball{--fa:""}.fa-g{--fa:"G"}.fa-galaxy{--fa:""}.fa-gallery-thumbnails{--fa:""}.fa-game-board{--fa:""}.fa-game-board-alt{--fa:""}.fa-game-board-simple{--fa:""}.fa-game-console-handheld{--fa:""}.fa-game-console-handheld-crank{--fa:""}.fa-gamepad{--fa:""}.fa-gamepad-alt{--fa:""}.fa-gamepad-modern{--fa:""}.fa-garage{--fa:""}.fa-garage-car{--fa:""}.fa-garage-empty{--fa:""}.fa-garage-open{--fa:""}.fa-garlic{--fa:""}.fa-gas-pump{--fa:""}.fa-gas-pump-left{--fa:""}.fa-gas-pump-right{--fa:""}.fa-gas-pump-slash{--fa:""}.fa-gauge{--fa:""}.fa-gauge-circle-bolt{--fa:""}.fa-gauge-circle-minus{--fa:""}.fa-gauge-circle-plus{--fa:""}.fa-gauge-high{--fa:""}.fa-gauge-low{--fa:""}.fa-gauge-max{--fa:""}.fa-gauge-med{--fa:""}.fa-gauge-min{--fa:""}.fa-gauge-simple{--fa:""}.fa-gauge-simple-high{--fa:""}.fa-gauge-simple-low{--fa:""}.fa-gauge-simple-max{--fa:""}.fa-gauge-simple-med{--fa:""}.fa-gauge-simple-min{--fa:""}.fa-gave-dandy{--fa:""}.fa-gavel{--fa:""}.fa-gbp{--fa:""}.fa-gear{--fa:""}.fa-gear-api{--fa:""}.fa-gear-code{--fa:""}.fa-gear-complex{--fa:""}.fa-gear-complex-api{--fa:""}.fa-gear-complex-code{--fa:""}.fa-gears{--fa:""}.fa-gem{--fa:""}.fa-gemini{--fa:""}.fa-genderless{--fa:""}.fa-ghost{--fa:""}.fa-gif{--fa:""}.fa-gift{--fa:""}.fa-gift-card{--fa:""}.fa-gifts{--fa:""}.fa-gingerbread-man{--fa:""}.fa-glass{--fa:""}.fa-glass-champagne{--fa:""}.fa-glass-cheers{--fa:""}.fa-glass-citrus{--fa:""}.fa-glass-empty{--fa:""}.fa-glass-half{--fa:""}.fa-glass-half-empty{--fa:""}.fa-glass-half-full{--fa:""}.fa-glass-martini{--fa:""}.fa-glass-martini-alt{--fa:""}.fa-glass-water{--fa:""}.fa-glass-water-droplet{--fa:""}.fa-glass-whiskey{--fa:""}.fa-glass-whiskey-rocks{--fa:""}.fa-glasses{--fa:""}.fa-glasses-alt{--fa:""}.fa-glasses-round{--fa:""}.fa-globe{--fa:""}.fa-globe-africa{--fa:""}.fa-globe-americas{--fa:""}.fa-globe-asia{--fa:""}.fa-globe-europe{--fa:""}.fa-globe-oceania{--fa:""}.fa-globe-pointer{--fa:""}.fa-globe-snow{--fa:""}.fa-globe-stand{--fa:""}.fa-globe-wifi{--fa:""}.fa-globe-www{--fa:""}.fa-glove-boxing{--fa:""}.fa-goal-net{--fa:""}.fa-golf-ball{--fa:""}.fa-golf-ball-tee{--fa:""}.fa-golf-club{--fa:""}.fa-golf-flag-hole{--fa:""}.fa-gopuram{--fa:""}.fa-gpu{--fa:""}.fa-graduation-cap{--fa:""}.fa-gramophone{--fa:""}.fa-grapes{--fa:""}.fa-grate{--fa:""}.fa-grate-droplet{--fa:""}.fa-greater-than{--fa:">"}.fa-greater-than-equal{--fa:""}.fa-grid{--fa:""}.fa-grid-2{--fa:""}.fa-grid-2-minus{--fa:""}.fa-grid-2-plus{--fa:""}.fa-grid-3{--fa:""}.fa-grid-4{--fa:""}.fa-grid-5{--fa:""}.fa-grid-dividers{--fa:""}.fa-grid-horizontal{--fa:""}.fa-grid-round{--fa:""}.fa-grid-round-2{--fa:""}.fa-grid-round-2-minus{--fa:""}.fa-grid-round-2-plus{--fa:""}.fa-grid-round-4{--fa:""}.fa-grid-round-5{--fa:""}.fa-grid-vertical{--fa:""}.fa-grill{--fa:""}.fa-grill-fire{--fa:""}.fa-grill-hot{--fa:""}.fa-grimace{--fa:""}.fa-grin{--fa:""}.fa-grin-alt{--fa:""}.fa-grin-beam{--fa:""}.fa-grin-beam-sweat{--fa:""}.fa-grin-hearts{--fa:""}.fa-grin-squint{--fa:""}.fa-grin-squint-tears{--fa:""}.fa-grin-stars{--fa:""}.fa-grin-tears{--fa:""}.fa-grin-tongue{--fa:""}.fa-grin-tongue-squint{--fa:""}.fa-grin-tongue-wink{--fa:""}.fa-grin-wink{--fa:""}.fa-grip{--fa:""}.fa-grip-dots{--fa:""}.fa-grip-dots-vertical{--fa:""}.fa-grip-horizontal{--fa:""}.fa-grip-lines{--fa:""}.fa-grip-lines-vertical{--fa:""}.fa-grip-vertical{--fa:""}.fa-group-arrows-rotate{--fa:""}.fa-guarani-sign{--fa:""}.fa-guitar{--fa:""}.fa-guitar-electric{--fa:""}.fa-guitars{--fa:""}.fa-gun{--fa:""}.fa-gun-slash{--fa:""}.fa-gun-squirt{--fa:""}.fa-h{--fa:"H"}.fa-h-square{--fa:""}.fa-h1{--fa:""}.fa-h2{--fa:""}.fa-h3{--fa:""}.fa-h4{--fa:""}.fa-h5{--fa:""}.fa-h6{--fa:""}.fa-hamburger{--fa:""}.fa-hammer{--fa:""}.fa-hammer-brush{--fa:""}.fa-hammer-crash{--fa:""}.fa-hammer-war{--fa:""}.fa-hamsa{--fa:""}.fa-hand{--fa:""}.fa-hand-back-fist{--fa:""}.fa-hand-back-point-down{--fa:""}.fa-hand-back-point-left{--fa:""}.fa-hand-back-point-ribbon{--fa:""}.fa-hand-back-point-right{--fa:""}.fa-hand-back-point-up{--fa:""}.fa-hand-dots{--fa:""}.fa-hand-fingers-crossed{--fa:""}.fa-hand-fist{--fa:""}.fa-hand-heart{--fa:""}.fa-hand-holding{--fa:""}.fa-hand-holding-box{--fa:""}.fa-hand-holding-circle-dollar{--fa:""}.fa-hand-holding-dollar{--fa:""}.fa-hand-holding-droplet{--fa:""}.fa-hand-holding-hand{--fa:""}.fa-hand-holding-heart{--fa:""}.fa-hand-holding-magic{--fa:""}.fa-hand-holding-medical{--fa:""}.fa-hand-holding-seedling{--fa:""}.fa-hand-holding-skull{--fa:""}.fa-hand-holding-star{--fa:""}.fa-hand-holding-usd{--fa:""}.fa-hand-holding-water{--fa:""}.fa-hand-horns{--fa:""}.fa-hand-lizard{--fa:""}.fa-hand-love{--fa:""}.fa-hand-middle-finger{--fa:""}.fa-hand-paper{--fa:""}.fa-hand-peace{--fa:""}.fa-hand-point-down{--fa:""}.fa-hand-point-left{--fa:""}.fa-hand-point-ribbon{--fa:""}.fa-hand-point-right{--fa:""}.fa-hand-point-up{--fa:""}.fa-hand-pointer{--fa:""}.fa-hand-receiving{--fa:""}.fa-hand-rock{--fa:""}.fa-hand-scissors{--fa:""}.fa-hand-shaka{--fa:""}.fa-hand-sparkles{--fa:""}.fa-hand-spock{--fa:""}.fa-hand-wave{--fa:""}.fa-handcuffs{--fa:""}.fa-hands{--fa:""}.fa-hands-american-sign-language-interpreting{--fa:""}.fa-hands-asl-interpreting{--fa:""}.fa-hands-bound{--fa:""}.fa-hands-bubbles{--fa:""}.fa-hands-clapping{--fa:""}.fa-hands-heart{--fa:""}.fa-hands-helping{--fa:""}.fa-hands-holding{--fa:""}.fa-hands-holding-child{--fa:""}.fa-hands-holding-circle{--fa:""}.fa-hands-holding-diamond{--fa:""}.fa-hands-holding-dollar{--fa:""}.fa-hands-holding-heart{--fa:""}.fa-hands-praying{--fa:""}.fa-hands-usd{--fa:""}.fa-hands-wash{--fa:""}.fa-handshake{--fa:""}.fa-handshake-alt{--fa:""}.fa-handshake-alt-slash{--fa:""}.fa-handshake-angle{--fa:""}.fa-handshake-simple{--fa:""}.fa-handshake-simple-slash{--fa:""}.fa-handshake-slash{--fa:""}.fa-hanukiah{--fa:""}.fa-hard-drive{--fa:""}.fa-hard-hat{--fa:""}.fa-hard-of-hearing{--fa:""}.fa-hashtag{--fa:"#"}.fa-hashtag-lock{--fa:""}.fa-hat-beach{--fa:""}.fa-hat-chef{--fa:""}.fa-hat-cowboy{--fa:""}.fa-hat-cowboy-side{--fa:""}.fa-hat-hard{--fa:""}.fa-hat-santa{--fa:""}.fa-hat-winter{--fa:""}.fa-hat-witch{--fa:""}.fa-hat-wizard{--fa:""}.fa-haykal{--fa:""}.fa-hdd{--fa:""}.fa-head-side{--fa:""}.fa-head-side-brain{--fa:""}.fa-head-side-circuit{--fa:""}.fa-head-side-cough{--fa:""}.fa-head-side-cough-slash{--fa:""}.fa-head-side-gear{--fa:""}.fa-head-side-goggles{--fa:""}.fa-head-side-headphones{--fa:""}.fa-head-side-heart{--fa:""}.fa-head-side-mask{--fa:""}.fa-head-side-medical{--fa:""}.fa-head-side-speak{--fa:""}.fa-head-side-virus{--fa:""}.fa-head-vr{--fa:""}.fa-header{--fa:""}.fa-heading{--fa:""}.fa-headphones{--fa:""}.fa-headphones-alt{--fa:""}.fa-headphones-simple{--fa:""}.fa-headphones-slash{--fa:""}.fa-headset{--fa:""}.fa-heart{--fa:""}.fa-heart-broken{--fa:""}.fa-heart-circle{--fa:""}.fa-heart-circle-bolt{--fa:""}.fa-heart-circle-check{--fa:""}.fa-heart-circle-exclamation{--fa:""}.fa-heart-circle-minus{--fa:""}.fa-heart-circle-plus{--fa:""}.fa-heart-circle-xmark{--fa:""}.fa-heart-crack{--fa:""}.fa-heart-half{--fa:""}.fa-heart-half-alt{--fa:""}.fa-heart-half-stroke{--fa:""}.fa-heart-music-camera-bolt{--fa:""}.fa-heart-pulse{--fa:""}.fa-heart-rate{--fa:""}.fa-heart-slash{--fa:""}.fa-heart-square{--fa:""}.fa-heartbeat{--fa:""}.fa-hearts{--fa:""}.fa-heat{--fa:""}.fa-helicopter{--fa:""}.fa-helicopter-symbol{--fa:""}.fa-helmet-battle{--fa:""}.fa-helmet-safety{--fa:""}.fa-helmet-un{--fa:""}.fa-heptagon{--fa:""}.fa-hexagon{--fa:""}.fa-hexagon-check{--fa:""}.fa-hexagon-divide{--fa:""}.fa-hexagon-equals{--fa:""}.fa-hexagon-exclamation{--fa:""}.fa-hexagon-image{--fa:""}.fa-hexagon-minus{--fa:""}.fa-hexagon-nodes{--fa:""}.fa-hexagon-nodes-bolt{--fa:""}.fa-hexagon-plus{--fa:""}.fa-hexagon-vertical-nft{--fa:""}.fa-hexagon-vertical-nft-slanted{--fa:""}.fa-hexagon-xmark{--fa:""}.fa-high-definition{--fa:""}.fa-highlighter{--fa:""}.fa-highlighter-line{--fa:""}.fa-hiking{--fa:""}.fa-hill-avalanche{--fa:""}.fa-hill-rockslide{--fa:""}.fa-hippo{--fa:""}.fa-history{--fa:""}.fa-hockey-mask{--fa:""}.fa-hockey-puck{--fa:""}.fa-hockey-stick{--fa:""}.fa-hockey-stick-puck{--fa:""}.fa-hockey-sticks{--fa:""}.fa-holly-berry{--fa:""}.fa-home{--fa:""}.fa-home-alt{--fa:""}.fa-home-blank{--fa:""}.fa-home-heart{--fa:""}.fa-home-lg{--fa:""}.fa-home-lg-alt{--fa:""}.fa-home-user{--fa:""}.fa-honey-pot{--fa:""}.fa-hood-cloak{--fa:""}.fa-horizontal-rule{--fa:""}.fa-horse{--fa:""}.fa-horse-head{--fa:""}.fa-horse-saddle{--fa:""}.fa-horseshoe{--fa:""}.fa-hose{--fa:""}.fa-hose-reel{--fa:""}.fa-hospital{--fa:""}.fa-hospital-alt{--fa:""}.fa-hospital-symbol{--fa:""}.fa-hospital-user{--fa:""}.fa-hospital-wide{--fa:""}.fa-hospitals{--fa:""}.fa-hot-tub{--fa:""}.fa-hot-tub-person{--fa:""}.fa-hotdog{--fa:""}.fa-hotel{--fa:""}.fa-hourglass{--fa:""}.fa-hourglass-1{--fa:""}.fa-hourglass-2{--fa:""}.fa-hourglass-3{--fa:""}.fa-hourglass-clock{--fa:""}.fa-hourglass-empty{--fa:""}.fa-hourglass-end{--fa:""}.fa-hourglass-half{--fa:""}.fa-hourglass-start{--fa:""}.fa-house{--fa:""}.fa-house-blank{--fa:""}.fa-house-building{--fa:""}.fa-house-chimney{--fa:""}.fa-house-chimney-blank{--fa:""}.fa-house-chimney-crack{--fa:""}.fa-house-chimney-heart{--fa:""}.fa-house-chimney-medical{--fa:""}.fa-house-chimney-user{--fa:""}.fa-house-chimney-window{--fa:""}.fa-house-circle-check{--fa:""}.fa-house-circle-exclamation{--fa:""}.fa-house-circle-xmark{--fa:""}.fa-house-crack{--fa:""}.fa-house-damage{--fa:""}.fa-house-day{--fa:""}.fa-house-fire{--fa:""}.fa-house-flag{--fa:""}.fa-house-flood{--fa:""}.fa-house-flood-water{--fa:""}.fa-house-flood-water-circle-arrow-right{--fa:""}.fa-house-heart{--fa:""}.fa-house-laptop{--fa:""}.fa-house-leave{--fa:""}.fa-house-lock{--fa:""}.fa-house-medical{--fa:""}.fa-house-medical-circle-check{--fa:""}.fa-house-medical-circle-exclamation{--fa:""}.fa-house-medical-circle-xmark{--fa:""}.fa-house-medical-flag{--fa:""}.fa-house-night{--fa:""}.fa-house-person-arrive{--fa:""}.fa-house-person-depart{--fa:""}.fa-house-person-leave{--fa:""}.fa-house-person-return{--fa:""}.fa-house-return{--fa:""}.fa-house-signal{--fa:""}.fa-house-tree{--fa:""}.fa-house-tsunami{--fa:""}.fa-house-turret{--fa:""}.fa-house-unlock{--fa:""}.fa-house-user{--fa:""}.fa-house-water{--fa:""}.fa-house-window{--fa:""}.fa-hryvnia{--fa:""}.fa-hryvnia-sign{--fa:""}.fa-humidity{--fa:""}.fa-hundred-points{--fa:""}.fa-hurricane{--fa:""}.fa-hydra{--fa:""}.fa-hyphen{--fa:"-"}.fa-i{--fa:"I"}.fa-i-cursor{--fa:""}.fa-ice-cream{--fa:""}.fa-ice-skate{--fa:""}.fa-icicles{--fa:""}.fa-icons{--fa:""}.fa-icons-alt{--fa:""}.fa-id-badge{--fa:""}.fa-id-card{--fa:""}.fa-id-card-alt{--fa:""}.fa-id-card-clip{--fa:""}.fa-igloo{--fa:""}.fa-ils{--fa:""}.fa-image{--fa:""}.fa-image-broken{--fa:""}.fa-image-circle-arrow-down{--fa:""}.fa-image-circle-check{--fa:""}.fa-image-circle-plus{--fa:""}.fa-image-circle-xmark{--fa:""}.fa-image-landscape{--fa:""}.fa-image-music{--fa:""}.fa-image-polaroid{--fa:""}.fa-image-polaroid-user{--fa:""}.fa-image-portrait{--fa:""}.fa-image-slash{--fa:""}.fa-image-stack{--fa:""}.fa-image-user{--fa:""}.fa-images{--fa:""}.fa-images-user{--fa:""}.fa-inbox{--fa:""}.fa-inbox-arrow-down{--fa:""}.fa-inbox-arrow-up{--fa:""}.fa-inbox-full{--fa:""}.fa-inbox-in{--fa:""}.fa-inbox-out{--fa:""}.fa-inboxes{--fa:""}.fa-indent{--fa:""}.fa-indian-rupee{--fa:""}.fa-indian-rupee-sign{--fa:""}.fa-industry{--fa:""}.fa-industry-alt{--fa:""}.fa-industry-windows{--fa:""}.fa-infinity{--fa:""}.fa-info{--fa:""}.fa-info-circle{--fa:""}.fa-info-square{--fa:""}.fa-inhaler{--fa:""}.fa-input-numeric{--fa:""}.fa-input-password{--fa:""}.fa-input-pipe{--fa:""}.fa-input-text{--fa:""}.fa-inr{--fa:""}.fa-institution{--fa:""}.fa-integral{--fa:""}.fa-interrobang{--fa:""}.fa-intersection{--fa:""}.fa-inventory{--fa:""}.fa-island-tree-palm{--fa:""}.fa-island-tropical{--fa:""}.fa-italic{--fa:""}.fa-j{--fa:"J"}.fa-jack-o-lantern{--fa:""}.fa-jar{--fa:""}.fa-jar-wheat{--fa:""}.fa-jeans{--fa:""}.fa-jeans-straight{--fa:""}.fa-jedi{--fa:""}.fa-jet-fighter{--fa:""}.fa-jet-fighter-up{--fa:""}.fa-joint{--fa:""}.fa-journal-whills{--fa:""}.fa-joystick{--fa:""}.fa-jpy{--fa:""}.fa-jug{--fa:""}.fa-jug-bottle{--fa:""}.fa-jug-detergent{--fa:""}.fa-k{--fa:"K"}.fa-kaaba{--fa:""}.fa-kayak{--fa:""}.fa-kazoo{--fa:""}.fa-kerning{--fa:""}.fa-kettlebell{--fa:""}.fa-key{--fa:""}.fa-key-skeleton{--fa:""}.fa-key-skeleton-left-right{--fa:""}.fa-keyboard{--fa:""}.fa-keyboard-brightness{--fa:""}.fa-keyboard-brightness-low{--fa:""}.fa-keyboard-down{--fa:""}.fa-keyboard-left{--fa:""}.fa-keynote{--fa:""}.fa-khanda{--fa:""}.fa-kidneys{--fa:""}.fa-kip-sign{--fa:""}.fa-kiss{--fa:""}.fa-kiss-beam{--fa:""}.fa-kiss-wink-heart{--fa:""}.fa-kit-medical{--fa:""}.fa-kitchen-set{--fa:""}.fa-kite{--fa:""}.fa-kiwi-bird{--fa:""}.fa-kiwi-fruit{--fa:""}.fa-knife{--fa:""}.fa-knife-kitchen{--fa:""}.fa-krw{--fa:""}.fa-l{--fa:"L"}.fa-label{--fa:""}.fa-lacrosse-stick{--fa:""}.fa-lacrosse-stick-ball{--fa:""}.fa-ladder-water{--fa:""}.fa-lambda{--fa:""}.fa-lamp{--fa:""}.fa-lamp-desk{--fa:""}.fa-lamp-floor{--fa:""}.fa-lamp-street{--fa:""}.fa-land-mine-on{--fa:""}.fa-landmark{--fa:""}.fa-landmark-alt{--fa:""}.fa-landmark-dome{--fa:""}.fa-landmark-flag{--fa:""}.fa-landmark-magnifying-glass{--fa:""}.fa-landscape{--fa:""}.fa-language{--fa:""}.fa-laptop{--fa:""}.fa-laptop-arrow-down{--fa:""}.fa-laptop-binary{--fa:""}.fa-laptop-code{--fa:""}.fa-laptop-file{--fa:""}.fa-laptop-house{--fa:""}.fa-laptop-medical{--fa:""}.fa-laptop-mobile{--fa:""}.fa-laptop-slash{--fa:""}.fa-lari-sign{--fa:""}.fa-lasso{--fa:""}.fa-lasso-sparkles{--fa:""}.fa-laugh{--fa:""}.fa-laugh-beam{--fa:""}.fa-laugh-squint{--fa:""}.fa-laugh-wink{--fa:""}.fa-layer{--fa:""}.fa-layer-group{--fa:""}.fa-layer-group-minus{--fa:""}.fa-layer-group-plus{--fa:""}.fa-layer-minus{--fa:""}.fa-layer-plus{--fa:""}.fa-leaf{--fa:""}.fa-leaf-heart{--fa:""}.fa-leaf-maple{--fa:""}.fa-leaf-oak{--fa:""}.fa-leafy-green{--fa:""}.fa-left{--fa:""}.fa-left-from-bracket{--fa:""}.fa-left-from-dotted-line{--fa:""}.fa-left-from-line{--fa:""}.fa-left-long{--fa:""}.fa-left-long-to-line{--fa:""}.fa-left-right{--fa:""}.fa-left-to-bracket{--fa:""}.fa-left-to-dotted-line{--fa:""}.fa-left-to-line{--fa:""}.fa-legal{--fa:""}.fa-lemon{--fa:""}.fa-leo{--fa:""}.fa-less-than{--fa:"<"}.fa-less-than-equal{--fa:""}.fa-level-down{--fa:""}.fa-level-down-alt{--fa:""}.fa-level-up{--fa:""}.fa-level-up-alt{--fa:""}.fa-libra{--fa:""}.fa-life-ring{--fa:""}.fa-light-ceiling{--fa:""}.fa-light-emergency{--fa:""}.fa-light-emergency-on{--fa:""}.fa-light-switch{--fa:""}.fa-light-switch-off{--fa:""}.fa-light-switch-on{--fa:""}.fa-lightbulb{--fa:""}.fa-lightbulb-cfl{--fa:""}.fa-lightbulb-cfl-on{--fa:""}.fa-lightbulb-dollar{--fa:""}.fa-lightbulb-exclamation{--fa:""}.fa-lightbulb-exclamation-on{--fa:""}.fa-lightbulb-gear{--fa:""}.fa-lightbulb-message{--fa:""}.fa-lightbulb-on{--fa:""}.fa-lightbulb-slash{--fa:""}.fa-lighthouse{--fa:""}.fa-lights-holiday{--fa:""}.fa-line-chart{--fa:""}.fa-line-columns{--fa:""}.fa-line-height{--fa:""}.fa-lines-leaning{--fa:""}.fa-link{--fa:""}.fa-link-broken{--fa:""}.fa-link-horizontal{--fa:""}.fa-link-horizontal-slash{--fa:""}.fa-link-simple{--fa:""}.fa-link-simple-slash{--fa:""}.fa-link-slash{--fa:""}.fa-lips{--fa:""}.fa-lira-sign{--fa:""}.fa-list{--fa:""}.fa-list-1-2{--fa:""}.fa-list-alt{--fa:""}.fa-list-check{--fa:""}.fa-list-dots{--fa:""}.fa-list-dropdown{--fa:""}.fa-list-music{--fa:""}.fa-list-numeric{--fa:""}.fa-list-ol{--fa:""}.fa-list-radio{--fa:""}.fa-list-squares{--fa:""}.fa-list-timeline{--fa:""}.fa-list-tree{--fa:""}.fa-list-ul{--fa:""}.fa-litecoin-sign{--fa:""}.fa-loader{--fa:""}.fa-lobster{--fa:""}.fa-location{--fa:""}.fa-location-arrow{--fa:""}.fa-location-arrow-slash{--fa:""}.fa-location-arrow-up{--fa:""}.fa-location-check{--fa:""}.fa-location-circle{--fa:""}.fa-location-crosshairs{--fa:""}.fa-location-crosshairs-slash{--fa:""}.fa-location-dot{--fa:""}.fa-location-dot-slash{--fa:""}.fa-location-exclamation{--fa:""}.fa-location-minus{--fa:""}.fa-location-pen{--fa:""}.fa-location-pin{--fa:""}.fa-location-pin-lock{--fa:""}.fa-location-pin-slash{--fa:""}.fa-location-plus{--fa:""}.fa-location-question{--fa:""}.fa-location-slash{--fa:""}.fa-location-smile{--fa:""}.fa-location-xmark{--fa:""}.fa-lock{--fa:""}.fa-lock-a{--fa:""}.fa-lock-alt{--fa:""}.fa-lock-hashtag{--fa:""}.fa-lock-keyhole{--fa:""}.fa-lock-keyhole-open{--fa:""}.fa-lock-open{--fa:""}.fa-lock-open-alt{--fa:""}.fa-locust{--fa:""}.fa-lollipop{--fa:""}.fa-lollypop{--fa:""}.fa-long-arrow-alt-down{--fa:""}.fa-long-arrow-alt-left{--fa:""}.fa-long-arrow-alt-right{--fa:""}.fa-long-arrow-alt-up{--fa:""}.fa-long-arrow-down{--fa:""}.fa-long-arrow-left{--fa:""}.fa-long-arrow-right{--fa:""}.fa-long-arrow-up{--fa:""}.fa-loveseat{--fa:""}.fa-low-vision{--fa:""}.fa-luchador{--fa:""}.fa-luchador-mask{--fa:""}.fa-luggage-cart{--fa:""}.fa-lungs{--fa:""}.fa-lungs-virus{--fa:""}.fa-lychee{--fa:""}.fa-m{--fa:"M"}.fa-mace{--fa:""}.fa-magic{--fa:""}.fa-magic-wand-sparkles{--fa:""}.fa-magnet{--fa:""}.fa-magnifying-glass{--fa:""}.fa-magnifying-glass-arrow-right{--fa:""}.fa-magnifying-glass-arrows-rotate{--fa:""}.fa-magnifying-glass-chart{--fa:""}.fa-magnifying-glass-dollar{--fa:""}.fa-magnifying-glass-location{--fa:""}.fa-magnifying-glass-minus{--fa:""}.fa-magnifying-glass-music{--fa:""}.fa-magnifying-glass-play{--fa:""}.fa-magnifying-glass-plus{--fa:""}.fa-magnifying-glass-waveform{--fa:""}.fa-mail-bulk{--fa:""}.fa-mail-forward{--fa:""}.fa-mail-reply{--fa:""}.fa-mail-reply-all{--fa:""}.fa-mailbox{--fa:""}.fa-mailbox-flag-up{--fa:""}.fa-mailbox-open-empty{--fa:""}.fa-mailbox-open-letter{--fa:""}.fa-maki-roll{--fa:""}.fa-makizushi{--fa:""}.fa-malaysian-ringgit-sign{--fa:""}.fa-male{--fa:""}.fa-manat-sign{--fa:""}.fa-mandolin{--fa:""}.fa-mango{--fa:""}.fa-manhole{--fa:""}.fa-map{--fa:""}.fa-map-location{--fa:""}.fa-map-location-dot{--fa:""}.fa-map-marked{--fa:""}.fa-map-marked-alt{--fa:""}.fa-map-marker{--fa:""}.fa-map-marker-alt{--fa:""}.fa-map-marker-alt-slash{--fa:""}.fa-map-marker-check{--fa:""}.fa-map-marker-edit{--fa:""}.fa-map-marker-exclamation{--fa:""}.fa-map-marker-minus{--fa:""}.fa-map-marker-plus{--fa:""}.fa-map-marker-question{--fa:""}.fa-map-marker-slash{--fa:""}.fa-map-marker-smile{--fa:""}.fa-map-marker-times{--fa:""}.fa-map-marker-xmark{--fa:""}.fa-map-pin{--fa:""}.fa-map-signs{--fa:""}.fa-marker{--fa:""}.fa-mars{--fa:""}.fa-mars-and-venus{--fa:""}.fa-mars-and-venus-burst{--fa:""}.fa-mars-double{--fa:""}.fa-mars-stroke{--fa:""}.fa-mars-stroke-h{--fa:""}.fa-mars-stroke-right{--fa:""}.fa-mars-stroke-up{--fa:""}.fa-mars-stroke-v{--fa:""}.fa-martini-glass{--fa:""}.fa-martini-glass-citrus{--fa:""}.fa-martini-glass-empty{--fa:""}.fa-mask{--fa:""}.fa-mask-face{--fa:""}.fa-mask-luchador{--fa:""}.fa-mask-snorkel{--fa:""}.fa-mask-ventilator{--fa:""}.fa-masks-theater{--fa:""}.fa-mattress-pillow{--fa:""}.fa-maximize{--fa:""}.fa-meat{--fa:""}.fa-medal{--fa:""}.fa-medkit{--fa:""}.fa-megaphone{--fa:""}.fa-meh{--fa:""}.fa-meh-blank{--fa:""}.fa-meh-rolling-eyes{--fa:""}.fa-melon{--fa:""}.fa-melon-slice{--fa:""}.fa-memo{--fa:""}.fa-memo-circle-check{--fa:""}.fa-memo-circle-info{--fa:""}.fa-memo-pad{--fa:""}.fa-memory{--fa:""}.fa-menorah{--fa:""}.fa-mercury{--fa:""}.fa-merge{--fa:""}.fa-message{--fa:""}.fa-message-arrow-down{--fa:""}.fa-message-arrow-up{--fa:""}.fa-message-arrow-up-right{--fa:""}.fa-message-bot{--fa:""}.fa-message-captions{--fa:""}.fa-message-check{--fa:""}.fa-message-code{--fa:""}.fa-message-dollar{--fa:""}.fa-message-dot{--fa:""}.fa-message-dots{--fa:""}.fa-message-edit{--fa:""}.fa-message-exclamation{--fa:""}.fa-message-heart{--fa:""}.fa-message-image{--fa:""}.fa-message-lines{--fa:""}.fa-message-medical{--fa:""}.fa-message-middle{--fa:""}.fa-message-middle-top{--fa:""}.fa-message-minus{--fa:""}.fa-message-music{--fa:""}.fa-message-pen{--fa:""}.fa-message-plus{--fa:""}.fa-message-question{--fa:""}.fa-message-quote{--fa:""}.fa-message-slash{--fa:""}.fa-message-smile{--fa:""}.fa-message-sms{--fa:""}.fa-message-text{--fa:""}.fa-message-times{--fa:""}.fa-message-waveform{--fa:""}.fa-message-xmark{--fa:""}.fa-messages{--fa:""}.fa-messages-dollar{--fa:""}.fa-messages-question{--fa:""}.fa-messaging{--fa:""}.fa-meteor{--fa:""}.fa-meter{--fa:""}.fa-meter-bolt{--fa:""}.fa-meter-droplet{--fa:""}.fa-meter-fire{--fa:""}.fa-microchip{--fa:""}.fa-microchip-ai{--fa:""}.fa-microphone{--fa:""}.fa-microphone-alt{--fa:""}.fa-microphone-alt-slash{--fa:""}.fa-microphone-circle{--fa:""}.fa-microphone-circle-alt{--fa:""}.fa-microphone-circle-plus{--fa:""}.fa-microphone-circle-xmark{--fa:""}.fa-microphone-lines{--fa:""}.fa-microphone-lines-slash{--fa:""}.fa-microphone-signal-meter{--fa:""}.fa-microphone-slash{--fa:""}.fa-microphone-stand{--fa:""}.fa-microscope{--fa:""}.fa-microwave{--fa:""}.fa-midi{--fa:""}.fa-mill-sign{--fa:""}.fa-mind-share{--fa:""}.fa-minimize{--fa:""}.fa-minus{--fa:""}.fa-minus-circle{--fa:""}.fa-minus-hexagon{--fa:""}.fa-minus-large{--fa:""}.fa-minus-octagon{--fa:""}.fa-minus-square{--fa:""}.fa-mistletoe{--fa:""}.fa-mitten{--fa:""}.fa-mobile{--fa:""}.fa-mobile-alt{--fa:""}.fa-mobile-android{--fa:""}.fa-mobile-android-alt{--fa:""}.fa-mobile-arrow-down{--fa:""}.fa-mobile-button{--fa:""}.fa-mobile-iphone{--fa:""}.fa-mobile-notch{--fa:""}.fa-mobile-phone{--fa:""}.fa-mobile-retro{--fa:""}.fa-mobile-rotate{--fa:""}.fa-mobile-rotate-reverse{--fa:""}.fa-mobile-screen{--fa:""}.fa-mobile-screen-button{--fa:""}.fa-mobile-signal{--fa:""}.fa-mobile-signal-out{--fa:""}.fa-mobile-slash{--fa:""}.fa-mobile-vibrate{--fa:""}.fa-mobile-vibrate-slash{--fa:""}.fa-money-bill{--fa:""}.fa-money-bill-1{--fa:""}.fa-money-bill-1-wave{--fa:""}.fa-money-bill-alt{--fa:""}.fa-money-bill-simple{--fa:""}.fa-money-bill-simple-wave{--fa:""}.fa-money-bill-transfer{--fa:""}.fa-money-bill-trend-up{--fa:""}.fa-money-bill-wave{--fa:""}.fa-money-bill-wave-alt{--fa:""}.fa-money-bill-wheat{--fa:""}.fa-money-bills{--fa:""}.fa-money-bills-alt{--fa:""}.fa-money-bills-simple{--fa:""}.fa-money-check{--fa:""}.fa-money-check-alt{--fa:""}.fa-money-check-dollar{--fa:""}.fa-money-check-dollar-pen{--fa:""}.fa-money-check-edit{--fa:""}.fa-money-check-edit-alt{--fa:""}.fa-money-check-pen{--fa:""}.fa-money-from-bracket{--fa:""}.fa-money-simple-from-bracket{--fa:""}.fa-monitor-heart-rate{--fa:""}.fa-monitor-waveform{--fa:""}.fa-monkey{--fa:""}.fa-monument{--fa:""}.fa-moon{--fa:""}.fa-moon-cloud{--fa:""}.fa-moon-first-quarter{--fa:""}.fa-moon-first-quarter-inverse{--fa:""}.fa-moon-full{--fa:""}.fa-moon-full-inverse{--fa:""}.fa-moon-last-quarter{--fa:""}.fa-moon-last-quarter-inverse{--fa:""}.fa-moon-new{--fa:""}.fa-moon-new-inverse{--fa:""}.fa-moon-over-sun{--fa:""}.fa-moon-star{--fa:""}.fa-moon-stars{--fa:""}.fa-moon-waning-crescent{--fa:""}.fa-moon-waning-crescent-inverse{--fa:""}.fa-moon-waning-gibbous{--fa:""}.fa-moon-waning-gibbous-inverse{--fa:""}.fa-moon-waxing-crescent{--fa:""}.fa-moon-waxing-crescent-inverse{--fa:""}.fa-moon-waxing-gibbous{--fa:""}.fa-moon-waxing-gibbous-inverse{--fa:""}.fa-moped{--fa:""}.fa-mortar-board{--fa:""}.fa-mortar-pestle{--fa:""}.fa-mosque{--fa:""}.fa-mosquito{--fa:""}.fa-mosquito-net{--fa:""}.fa-motorcycle{--fa:""}.fa-mound{--fa:""}.fa-mountain{--fa:""}.fa-mountain-city{--fa:""}.fa-mountain-sun{--fa:""}.fa-mountains{--fa:""}.fa-mouse{--fa:""}.fa-mouse-alt{--fa:""}.fa-mouse-field{--fa:""}.fa-mouse-pointer{--fa:""}.fa-mp3-player{--fa:""}.fa-mug{--fa:""}.fa-mug-hot{--fa:""}.fa-mug-marshmallows{--fa:""}.fa-mug-saucer{--fa:""}.fa-mug-tea{--fa:""}.fa-mug-tea-saucer{--fa:""}.fa-multiply{--fa:""}.fa-museum{--fa:""}.fa-mushroom{--fa:""}.fa-music{--fa:""}.fa-music-alt{--fa:""}.fa-music-alt-slash{--fa:""}.fa-music-magnifying-glass{--fa:""}.fa-music-note{--fa:""}.fa-music-note-slash{--fa:""}.fa-music-slash{--fa:""}.fa-mustache{--fa:""}.fa-n{--fa:"N"}.fa-naira-sign{--fa:""}.fa-narwhal{--fa:""}.fa-nas{--fa:""}.fa-navicon{--fa:""}.fa-nesting-dolls{--fa:""}.fa-network-wired{--fa:""}.fa-neuter{--fa:""}.fa-newspaper{--fa:""}.fa-nfc{--fa:""}.fa-nfc-lock{--fa:""}.fa-nfc-magnifying-glass{--fa:""}.fa-nfc-pen{--fa:""}.fa-nfc-signal{--fa:""}.fa-nfc-slash{--fa:""}.fa-nfc-symbol{--fa:""}.fa-nfc-trash{--fa:""}.fa-nigiri{--fa:""}.fa-non-binary{--fa:""}.fa-norwegian-krone-sign{--fa:""}.fa-nose{--fa:""}.fa-not-equal{--fa:""}.fa-notdef{--fa:""}.fa-note{--fa:""}.fa-note-medical{--fa:""}.fa-note-sticky{--fa:""}.fa-notebook{--fa:""}.fa-notes{--fa:""}.fa-notes-medical{--fa:""}.fa-notes-sticky{--fa:""}.fa-numpad{--fa:""}.fa-o{--fa:"O"}.fa-oar{--fa:""}.fa-oars{--fa:""}.fa-object-exclude{--fa:""}.fa-object-group{--fa:""}.fa-object-intersect{--fa:""}.fa-object-subtract{--fa:""}.fa-object-ungroup{--fa:""}.fa-object-union{--fa:""}.fa-objects-align-bottom{--fa:""}.fa-objects-align-center-horizontal{--fa:""}.fa-objects-align-center-vertical{--fa:""}.fa-objects-align-left{--fa:""}.fa-objects-align-right{--fa:""}.fa-objects-align-top{--fa:""}.fa-objects-column{--fa:""}.fa-octagon{--fa:""}.fa-octagon-check{--fa:""}.fa-octagon-divide{--fa:""}.fa-octagon-equals{--fa:""}.fa-octagon-exclamation{--fa:""}.fa-octagon-minus{--fa:""}.fa-octagon-plus{--fa:""}.fa-octagon-xmark{--fa:""}.fa-octopus{--fa:""}.fa-oil-can{--fa:""}.fa-oil-can-drip{--fa:""}.fa-oil-temp{--fa:""}.fa-oil-temperature{--fa:""}.fa-oil-well{--fa:""}.fa-olive{--fa:""}.fa-olive-branch{--fa:""}.fa-om{--fa:""}.fa-omega{--fa:""}.fa-onion{--fa:""}.fa-open-captioning{--fa:""}.fa-opossum{--fa:""}.fa-option{--fa:""}.fa-ornament{--fa:""}.fa-otter{--fa:""}.fa-outdent{--fa:""}.fa-outlet{--fa:""}.fa-oven{--fa:""}.fa-overline{--fa:""}.fa-owl{--fa:""}.fa-p{--fa:"P"}.fa-page{--fa:""}.fa-page-break{--fa:""}.fa-page-caret-down{--fa:""}.fa-page-caret-up{--fa:""}.fa-pager{--fa:""}.fa-paint-brush{--fa:""}.fa-paint-brush-alt{--fa:""}.fa-paint-brush-fine{--fa:""}.fa-paint-roller{--fa:""}.fa-paintbrush{--fa:""}.fa-paintbrush-alt{--fa:""}.fa-paintbrush-fine{--fa:""}.fa-paintbrush-fine-slash{--fa:""}.fa-paintbrush-pencil{--fa:""}.fa-paintbrush-slash{--fa:""}.fa-palette{--fa:""}.fa-palette-boxes{--fa:""}.fa-pallet{--fa:""}.fa-pallet-alt{--fa:""}.fa-pallet-box{--fa:""}.fa-pallet-boxes{--fa:""}.fa-pan-food{--fa:""}.fa-pan-frying{--fa:""}.fa-pancakes{--fa:""}.fa-panel-ews{--fa:""}.fa-panel-fire{--fa:""}.fa-panorama{--fa:""}.fa-panties{--fa:""}.fa-pants{--fa:""}.fa-pants-straight{--fa:""}.fa-paper-plane{--fa:""}.fa-paper-plane-alt{--fa:""}.fa-paper-plane-top{--fa:""}.fa-paperclip{--fa:""}.fa-paperclip-vertical{--fa:""}.fa-parachute-box{--fa:""}.fa-paragraph{--fa:""}.fa-paragraph-left{--fa:""}.fa-paragraph-rtl{--fa:""}.fa-parentheses{--fa:""}.fa-parenthesis{--fa:"("}.fa-parking{--fa:""}.fa-parking-circle{--fa:""}.fa-parking-circle-slash{--fa:""}.fa-parking-slash{--fa:""}.fa-party-back{--fa:""}.fa-party-bell{--fa:""}.fa-party-horn{--fa:""}.fa-passport{--fa:""}.fa-pastafarianism{--fa:""}.fa-paste{--fa:""}.fa-pause{--fa:""}.fa-pause-circle{--fa:""}.fa-paw{--fa:""}.fa-paw-alt{--fa:""}.fa-paw-claws{--fa:""}.fa-paw-simple{--fa:""}.fa-peace{--fa:""}.fa-peach{--fa:""}.fa-peanut{--fa:""}.fa-peanuts{--fa:""}.fa-peapod{--fa:""}.fa-pear{--fa:""}.fa-pedestal{--fa:""}.fa-pegasus{--fa:""}.fa-pen{--fa:""}.fa-pen-alt{--fa:""}.fa-pen-alt-slash{--fa:""}.fa-pen-circle{--fa:""}.fa-pen-clip{--fa:""}.fa-pen-clip-slash{--fa:""}.fa-pen-fancy{--fa:""}.fa-pen-fancy-slash{--fa:""}.fa-pen-field{--fa:""}.fa-pen-line{--fa:""}.fa-pen-nib{--fa:""}.fa-pen-nib-slash{--fa:""}.fa-pen-paintbrush{--fa:""}.fa-pen-ruler{--fa:""}.fa-pen-slash{--fa:""}.fa-pen-square{--fa:""}.fa-pen-swirl{--fa:""}.fa-pen-to-square{--fa:""}.fa-pencil{--fa:""}.fa-pencil-alt{--fa:""}.fa-pencil-line{--fa:""}.fa-pencil-mechanical{--fa:""}.fa-pencil-paintbrush{--fa:""}.fa-pencil-ruler{--fa:""}.fa-pencil-slash{--fa:""}.fa-pencil-square{--fa:""}.fa-pennant{--fa:""}.fa-pentagon{--fa:""}.fa-people{--fa:""}.fa-people-arrows{--fa:""}.fa-people-arrows-left-right{--fa:""}.fa-people-carry{--fa:""}.fa-people-carry-box{--fa:""}.fa-people-dress{--fa:""}.fa-people-dress-simple{--fa:""}.fa-people-group{--fa:""}.fa-people-line{--fa:""}.fa-people-pants{--fa:""}.fa-people-pants-simple{--fa:""}.fa-people-pulling{--fa:""}.fa-people-robbery{--fa:""}.fa-people-roof{--fa:""}.fa-people-simple{--fa:""}.fa-pepper{--fa:""}.fa-pepper-hot{--fa:""}.fa-percent{--fa:"%"}.fa-percentage{--fa:"%"}.fa-period{--fa:"."}.fa-person{--fa:""}.fa-person-arms-raised{--fa:""}.fa-person-arrow-down-to-line{--fa:""}.fa-person-arrow-up-from-line{--fa:""}.fa-person-basketball{--fa:""}.fa-person-biking{--fa:""}.fa-person-biking-mountain{--fa:""}.fa-person-booth{--fa:""}.fa-person-breastfeeding{--fa:""}.fa-person-burst{--fa:""}.fa-person-cane{--fa:""}.fa-person-carry{--fa:""}.fa-person-carry-box{--fa:""}.fa-person-carry-empty{--fa:""}.fa-person-chalkboard{--fa:""}.fa-person-circle-check{--fa:""}.fa-person-circle-exclamation{--fa:""}.fa-person-circle-minus{--fa:""}.fa-person-circle-plus{--fa:""}.fa-person-circle-question{--fa:""}.fa-person-circle-xmark{--fa:""}.fa-person-digging{--fa:""}.fa-person-dolly{--fa:""}.fa-person-dolly-empty{--fa:""}.fa-person-dots-from-line{--fa:""}.fa-person-dress{--fa:""}.fa-person-dress-burst{--fa:""}.fa-person-dress-fairy{--fa:""}.fa-person-dress-simple{--fa:""}.fa-person-drowning{--fa:""}.fa-person-fairy{--fa:""}.fa-person-falling{--fa:""}.fa-person-falling-burst{--fa:""}.fa-person-from-portal{--fa:""}.fa-person-golfing{--fa:""}.fa-person-half-dress{--fa:""}.fa-person-harassing{--fa:""}.fa-person-hiking{--fa:""}.fa-person-limbs-wide{--fa:""}.fa-person-meditating{--fa:""}.fa-person-military-pointing{--fa:""}.fa-person-military-rifle{--fa:""}.fa-person-military-to-person{--fa:""}.fa-person-pinball{--fa:""}.fa-person-praying{--fa:""}.fa-person-pregnant{--fa:""}.fa-person-rays{--fa:""}.fa-person-rifle{--fa:""}.fa-person-running{--fa:""}.fa-person-running-fast{--fa:""}.fa-person-seat{--fa:""}.fa-person-seat-reclined{--fa:""}.fa-person-seat-window{--fa:""}.fa-person-shelter{--fa:""}.fa-person-sign{--fa:""}.fa-person-simple{--fa:""}.fa-person-skating{--fa:""}.fa-person-ski-jumping{--fa:""}.fa-person-ski-lift{--fa:""}.fa-person-skiing{--fa:""}.fa-person-skiing-nordic{--fa:""}.fa-person-sledding{--fa:""}.fa-person-snowboarding{--fa:""}.fa-person-snowmobiling{--fa:""}.fa-person-soccer{--fa:""}.fa-person-swimming{--fa:""}.fa-person-swimming-pool{--fa:""}.fa-person-swimming-water{--fa:""}.fa-person-through-window{--fa:""}.fa-person-to-door{--fa:""}.fa-person-to-portal{--fa:""}.fa-person-walking{--fa:""}.fa-person-walking-arrow-loop-left{--fa:""}.fa-person-walking-arrow-right{--fa:""}.fa-person-walking-dashed-line-arrow-right{--fa:""}.fa-person-walking-luggage{--fa:""}.fa-person-walking-with-cane{--fa:""}.fa-person-water-arms-raised{--fa:""}.fa-person-waving{--fa:""}.fa-peruvian-soles-sign{--fa:""}.fa-peseta-sign{--fa:""}.fa-peso-sign{--fa:""}.fa-phone{--fa:""}.fa-phone-alt{--fa:""}.fa-phone-arrow-down{--fa:""}.fa-phone-arrow-down-left{--fa:""}.fa-phone-arrow-right{--fa:""}.fa-phone-arrow-up{--fa:""}.fa-phone-arrow-up-right{--fa:""}.fa-phone-circle{--fa:""}.fa-phone-circle-alt{--fa:""}.fa-phone-circle-down{--fa:""}.fa-phone-connection{--fa:""}.fa-phone-flip{--fa:""}.fa-phone-hangup{--fa:""}.fa-phone-incoming{--fa:""}.fa-phone-intercom{--fa:""}.fa-phone-laptop{--fa:""}.fa-phone-missed{--fa:""}.fa-phone-office{--fa:""}.fa-phone-outgoing{--fa:""}.fa-phone-plus{--fa:""}.fa-phone-rotary{--fa:""}.fa-phone-slash{--fa:""}.fa-phone-square{--fa:""}.fa-phone-square-alt{--fa:""}.fa-phone-square-down{--fa:""}.fa-phone-volume{--fa:""}.fa-phone-waveform{--fa:""}.fa-phone-xmark{--fa:""}.fa-photo-film{--fa:""}.fa-photo-film-music{--fa:""}.fa-photo-video{--fa:""}.fa-pi{--fa:""}.fa-piano{--fa:""}.fa-piano-keyboard{--fa:""}.fa-pickaxe{--fa:""}.fa-pickleball{--fa:""}.fa-picture-in-picture{--fa:""}.fa-pie{--fa:""}.fa-pie-chart{--fa:""}.fa-pig{--fa:""}.fa-piggy-bank{--fa:""}.fa-pills{--fa:""}.fa-pinata{--fa:""}.fa-pinball{--fa:""}.fa-pineapple{--fa:""}.fa-ping-pong-paddle-ball{--fa:""}.fa-pipe{--fa:"|"}.fa-pipe-circle-check{--fa:""}.fa-pipe-collar{--fa:""}.fa-pipe-section{--fa:""}.fa-pipe-smoking{--fa:""}.fa-pipe-valve{--fa:""}.fa-pisces{--fa:""}.fa-pizza{--fa:""}.fa-pizza-slice{--fa:""}.fa-place-of-worship{--fa:""}.fa-plane{--fa:""}.fa-plane-alt{--fa:""}.fa-plane-arrival{--fa:""}.fa-plane-circle-check{--fa:""}.fa-plane-circle-exclamation{--fa:""}.fa-plane-circle-xmark{--fa:""}.fa-plane-departure{--fa:""}.fa-plane-engines{--fa:""}.fa-plane-flying{--fa:""}.fa-plane-landing-gear{--fa:""}.fa-plane-lock{--fa:""}.fa-plane-prop{--fa:""}.fa-plane-slash{--fa:""}.fa-plane-tail{--fa:""}.fa-plane-up{--fa:""}.fa-plane-up-slash{--fa:""}.fa-planet-moon{--fa:""}.fa-planet-ringed{--fa:""}.fa-plant-wilt{--fa:""}.fa-plate-utensils{--fa:""}.fa-plate-wheat{--fa:""}.fa-play{--fa:""}.fa-play-circle{--fa:""}.fa-play-flip{--fa:""}.fa-play-pause{--fa:""}.fa-plug{--fa:""}.fa-plug-circle-bolt{--fa:""}.fa-plug-circle-check{--fa:""}.fa-plug-circle-exclamation{--fa:""}.fa-plug-circle-minus{--fa:""}.fa-plug-circle-plus{--fa:""}.fa-plug-circle-xmark{--fa:""}.fa-plus{--fa:"+"}.fa-plus-circle{--fa:""}.fa-plus-hexagon{--fa:""}.fa-plus-large{--fa:""}.fa-plus-minus{--fa:""}.fa-plus-octagon{--fa:""}.fa-plus-square{--fa:""}.fa-podcast{--fa:""}.fa-podium{--fa:""}.fa-podium-star{--fa:""}.fa-poker-chip{--fa:""}.fa-police-box{--fa:""}.fa-polish-zloty-sign{--fa:""}.fa-poll{--fa:""}.fa-poll-h{--fa:""}.fa-poll-people{--fa:""}.fa-pompebled{--fa:""}.fa-poo{--fa:""}.fa-poo-bolt{--fa:""}.fa-poo-storm{--fa:""}.fa-pool-8-ball{--fa:""}.fa-poop{--fa:""}.fa-popcorn{--fa:""}.fa-popsicle{--fa:""}.fa-portal-enter{--fa:""}.fa-portal-exit{--fa:""}.fa-portrait{--fa:""}.fa-possum{--fa:""}.fa-postage-stamp{--fa:""}.fa-pot-food{--fa:""}.fa-potato{--fa:""}.fa-pound-sign{--fa:""}.fa-power-off{--fa:""}.fa-pray{--fa:""}.fa-praying-hands{--fa:""}.fa-prescription{--fa:""}.fa-prescription-bottle{--fa:""}.fa-prescription-bottle-alt{--fa:""}.fa-prescription-bottle-medical{--fa:""}.fa-prescription-bottle-pill{--fa:""}.fa-presentation{--fa:""}.fa-presentation-screen{--fa:""}.fa-pretzel{--fa:""}.fa-print{--fa:""}.fa-print-magnifying-glass{--fa:""}.fa-print-search{--fa:""}.fa-print-slash{--fa:""}.fa-pro{--fa:""}.fa-procedures{--fa:""}.fa-project-diagram{--fa:""}.fa-projector{--fa:""}.fa-pronoun{--fa:""}.fa-pump{--fa:""}.fa-pump-impeller{--fa:""}.fa-pump-medical{--fa:""}.fa-pump-soap{--fa:""}.fa-pumpkin{--fa:""}.fa-puzzle{--fa:""}.fa-puzzle-piece{--fa:""}.fa-puzzle-piece-alt{--fa:""}.fa-puzzle-piece-simple{--fa:""}.fa-q{--fa:"Q"}.fa-qrcode{--fa:""}.fa-qrcode-read{--fa:""}.fa-question{--fa:"?"}.fa-question-circle{--fa:""}.fa-question-square{--fa:""}.fa-quidditch{--fa:""}.fa-quidditch-broom-ball{--fa:""}.fa-quote-left{--fa:""}.fa-quote-left-alt{--fa:""}.fa-quote-right{--fa:""}.fa-quote-right-alt{--fa:""}.fa-quotes{--fa:""}.fa-quran{--fa:""}.fa-r{--fa:"R"}.fa-rabbit{--fa:""}.fa-rabbit-fast{--fa:""}.fa-rabbit-running{--fa:""}.fa-raccoon{--fa:""}.fa-racquet{--fa:""}.fa-radar{--fa:""}.fa-radiation{--fa:""}.fa-radiation-alt{--fa:""}.fa-radio{--fa:""}.fa-radio-alt{--fa:""}.fa-radio-tuner{--fa:""}.fa-rainbow{--fa:""}.fa-rainbow-half{--fa:""}.fa-raindrops{--fa:""}.fa-ram{--fa:""}.fa-ramp-loading{--fa:""}.fa-random{--fa:""}.fa-ranking-star{--fa:""}.fa-raygun{--fa:""}.fa-receipt{--fa:""}.fa-record-vinyl{--fa:""}.fa-rectangle{--fa:""}.fa-rectangle-4k{--fa:""}.fa-rectangle-ad{--fa:""}.fa-rectangle-api{--fa:""}.fa-rectangle-barcode{--fa:""}.fa-rectangle-beta{--fa:""}.fa-rectangle-code{--fa:""}.fa-rectangle-hd{--fa:""}.fa-rectangle-hdr{--fa:""}.fa-rectangle-high-dynamic-range{--fa:""}.fa-rectangle-history{--fa:""}.fa-rectangle-history-circle-plus{--fa:""}.fa-rectangle-history-circle-user{--fa:""}.fa-rectangle-irc{--fa:""}.fa-rectangle-landscape{--fa:""}.fa-rectangle-list{--fa:""}.fa-rectangle-minus{--fa:""}.fa-rectangle-n-a{--fa:""}.fa-rectangle-new{--fa:""}.fa-rectangle-plus{--fa:""}.fa-rectangle-portrait{--fa:""}.fa-rectangle-pro{--fa:""}.fa-rectangle-sd{--fa:""}.fa-rectangle-tall{--fa:""}.fa-rectangle-terminal{--fa:""}.fa-rectangle-times{--fa:""}.fa-rectangle-vertical{--fa:""}.fa-rectangle-vertical-history{--fa:""}.fa-rectangle-video-on-demand{--fa:""}.fa-rectangle-wide{--fa:""}.fa-rectangle-xmark{--fa:""}.fa-rectangles-mixed{--fa:""}.fa-recycle{--fa:""}.fa-redo{--fa:""}.fa-redo-alt{--fa:""}.fa-reel{--fa:""}.fa-reflect-both{--fa:""}.fa-reflect-horizontal{--fa:""}.fa-reflect-vertical{--fa:""}.fa-refresh{--fa:""}.fa-refrigerator{--fa:""}.fa-registered{--fa:""}.fa-remote{--fa:""}.fa-remove{--fa:""}.fa-remove-format{--fa:""}.fa-renminbi-sign{--fa:""}.fa-reorder{--fa:""}.fa-repeat{--fa:""}.fa-repeat-1{--fa:""}.fa-repeat-1-alt{--fa:""}.fa-repeat-alt{--fa:""}.fa-reply{--fa:""}.fa-reply-all{--fa:""}.fa-reply-clock{--fa:""}.fa-reply-time{--fa:""}.fa-republican{--fa:""}.fa-restroom{--fa:""}.fa-restroom-simple{--fa:""}.fa-retweet{--fa:""}.fa-retweet-alt{--fa:""}.fa-rhombus{--fa:""}.fa-ribbon{--fa:""}.fa-right{--fa:""}.fa-right-from-bracket{--fa:""}.fa-right-from-dotted-line{--fa:""}.fa-right-from-line{--fa:""}.fa-right-left{--fa:""}.fa-right-left-large{--fa:""}.fa-right-long{--fa:""}.fa-right-long-to-line{--fa:""}.fa-right-to-bracket{--fa:""}.fa-right-to-dotted-line{--fa:""}.fa-right-to-line{--fa:""}.fa-ring{--fa:""}.fa-ring-diamond{--fa:""}.fa-rings-wedding{--fa:""}.fa-rmb{--fa:""}.fa-road{--fa:""}.fa-road-barrier{--fa:""}.fa-road-bridge{--fa:""}.fa-road-circle-check{--fa:""}.fa-road-circle-exclamation{--fa:""}.fa-road-circle-xmark{--fa:""}.fa-road-lock{--fa:""}.fa-road-spikes{--fa:""}.fa-robot{--fa:""}.fa-robot-astromech{--fa:""}.fa-rocket{--fa:""}.fa-rocket-launch{--fa:""}.fa-rocket-vertical{--fa:""}.fa-rod-asclepius{--fa:""}.fa-rod-snake{--fa:""}.fa-roller-coaster{--fa:""}.fa-rotate{--fa:""}.fa-rotate-back{--fa:""}.fa-rotate-backward{--fa:""}.fa-rotate-exclamation{--fa:""}.fa-rotate-forward{--fa:""}.fa-rotate-left{--fa:""}.fa-rotate-reverse{--fa:""}.fa-rotate-right{--fa:""}.fa-rouble{--fa:""}.fa-route{--fa:""}.fa-route-highway{--fa:""}.fa-route-interstate{--fa:""}.fa-router{--fa:""}.fa-rows{--fa:""}.fa-rows-3{--fa:""}.fa-rss{--fa:""}.fa-rss-square{--fa:""}.fa-rub{--fa:""}.fa-ruble{--fa:""}.fa-ruble-sign{--fa:""}.fa-rug{--fa:""}.fa-rugby-ball{--fa:""}.fa-ruler{--fa:""}.fa-ruler-combined{--fa:""}.fa-ruler-horizontal{--fa:""}.fa-ruler-triangle{--fa:""}.fa-ruler-vertical{--fa:""}.fa-running{--fa:""}.fa-rupee{--fa:""}.fa-rupee-sign{--fa:""}.fa-rupiah-sign{--fa:""}.fa-rv{--fa:""}.fa-s{--fa:"S"}.fa-sack{--fa:""}.fa-sack-dollar{--fa:""}.fa-sack-xmark{--fa:""}.fa-sad-cry{--fa:""}.fa-sad-tear{--fa:""}.fa-sagittarius{--fa:""}.fa-sailboat{--fa:""}.fa-salad{--fa:""}.fa-salt-shaker{--fa:""}.fa-sandwich{--fa:""}.fa-satellite{--fa:""}.fa-satellite-dish{--fa:""}.fa-sausage{--fa:""}.fa-save{--fa:""}.fa-save-circle-arrow-right{--fa:""}.fa-save-circle-xmark{--fa:""}.fa-save-times{--fa:""}.fa-sax-hot{--fa:""}.fa-saxophone{--fa:""}.fa-saxophone-fire{--fa:""}.fa-scale-balanced{--fa:""}.fa-scale-unbalanced{--fa:""}.fa-scale-unbalanced-flip{--fa:""}.fa-scalpel{--fa:""}.fa-scalpel-line-dashed{--fa:""}.fa-scalpel-path{--fa:""}.fa-scanner{--fa:""}.fa-scanner-gun{--fa:""}.fa-scanner-image{--fa:""}.fa-scanner-keyboard{--fa:""}.fa-scanner-touchscreen{--fa:""}.fa-scarecrow{--fa:""}.fa-scarf{--fa:""}.fa-school{--fa:""}.fa-school-circle-check{--fa:""}.fa-school-circle-exclamation{--fa:""}.fa-school-circle-xmark{--fa:""}.fa-school-flag{--fa:""}.fa-school-lock{--fa:""}.fa-school-unlock{--fa:""}.fa-scissors{--fa:""}.fa-scooter{--fa:""}.fa-scorpio{--fa:""}.fa-screen-users{--fa:""}.fa-screencast{--fa:""}.fa-screenshot{--fa:""}.fa-screwdriver{--fa:""}.fa-screwdriver-wrench{--fa:""}.fa-scribble{--fa:""}.fa-scroll{--fa:""}.fa-scroll-old{--fa:""}.fa-scroll-ribbon{--fa:""}.fa-scroll-torah{--fa:""}.fa-scrubber{--fa:""}.fa-scythe{--fa:""}.fa-sd-card{--fa:""}.fa-sd-cards{--fa:""}.fa-seal{--fa:""}.fa-seal-exclamation{--fa:""}.fa-seal-question{--fa:""}.fa-search{--fa:""}.fa-search-dollar{--fa:""}.fa-search-location{--fa:""}.fa-search-minus{--fa:""}.fa-search-plus{--fa:""}.fa-seat{--fa:""}.fa-seat-airline{--fa:""}.fa-seat-airline-window{--fa:""}.fa-seats{--fa:""}.fa-section{--fa:""}.fa-seedling{--fa:""}.fa-semicolon{--fa:";"}.fa-send{--fa:""}.fa-send-back{--fa:""}.fa-send-backward{--fa:""}.fa-sensor{--fa:""}.fa-sensor-alert{--fa:""}.fa-sensor-cloud{--fa:""}.fa-sensor-fire{--fa:""}.fa-sensor-on{--fa:""}.fa-sensor-smoke{--fa:""}.fa-sensor-triangle-exclamation{--fa:""}.fa-septagon{--fa:""}.fa-server{--fa:""}.fa-shapes{--fa:""}.fa-share{--fa:""}.fa-share-all{--fa:""}.fa-share-alt{--fa:""}.fa-share-alt-square{--fa:""}.fa-share-from-square{--fa:""}.fa-share-nodes{--fa:""}.fa-share-square{--fa:""}.fa-sheep{--fa:""}.fa-sheet-plastic{--fa:""}.fa-shekel{--fa:""}.fa-shekel-sign{--fa:""}.fa-shelves{--fa:""}.fa-shelves-empty{--fa:""}.fa-sheqel{--fa:""}.fa-sheqel-sign{--fa:""}.fa-shield{--fa:""}.fa-shield-alt{--fa:""}.fa-shield-blank{--fa:""}.fa-shield-cat{--fa:""}.fa-shield-check{--fa:""}.fa-shield-cross{--fa:""}.fa-shield-dog{--fa:""}.fa-shield-exclamation{--fa:""}.fa-shield-halved{--fa:""}.fa-shield-heart{--fa:""}.fa-shield-keyhole{--fa:""}.fa-shield-minus{--fa:""}.fa-shield-plus{--fa:""}.fa-shield-quartered{--fa:""}.fa-shield-slash{--fa:""}.fa-shield-times{--fa:""}.fa-shield-user{--fa:""}.fa-shield-virus{--fa:""}.fa-shield-xmark{--fa:""}.fa-ship{--fa:""}.fa-ship-large{--fa:""}.fa-shipping-fast{--fa:""}.fa-shipping-timed{--fa:""}.fa-shirt{--fa:""}.fa-shirt-jersey{--fa:""}.fa-shirt-long-sleeve{--fa:""}.fa-shirt-running{--fa:""}.fa-shirt-tank-top{--fa:""}.fa-shish-kebab{--fa:""}.fa-shoe{--fa:""}.fa-shoe-prints{--fa:""}.fa-shop{--fa:""}.fa-shop-24{--fa:""}.fa-shop-lock{--fa:""}.fa-shop-slash{--fa:""}.fa-shopping-bag{--fa:""}.fa-shopping-basket{--fa:""}.fa-shopping-basket-alt{--fa:""}.fa-shopping-cart{--fa:""}.fa-shortcake{--fa:""}.fa-shorts{--fa:""}.fa-shovel{--fa:""}.fa-shovel-snow{--fa:""}.fa-shower{--fa:""}.fa-shower-alt{--fa:""}.fa-shower-down{--fa:""}.fa-shredder{--fa:""}.fa-shrimp{--fa:""}.fa-shuffle{--fa:""}.fa-shutters{--fa:""}.fa-shuttle-space{--fa:""}.fa-shuttle-space-vertical{--fa:""}.fa-shuttle-van{--fa:""}.fa-shuttlecock{--fa:""}.fa-sickle{--fa:""}.fa-sidebar{--fa:""}.fa-sidebar-flip{--fa:""}.fa-sigma{--fa:""}.fa-sign{--fa:""}.fa-sign-hanging{--fa:""}.fa-sign-in{--fa:""}.fa-sign-in-alt{--fa:""}.fa-sign-language{--fa:""}.fa-sign-out{--fa:""}.fa-sign-out-alt{--fa:""}.fa-sign-post{--fa:""}.fa-sign-posts{--fa:""}.fa-sign-posts-wrench{--fa:""}.fa-signal{--fa:""}.fa-signal-1{--fa:""}.fa-signal-2{--fa:""}.fa-signal-3{--fa:""}.fa-signal-4{--fa:""}.fa-signal-5{--fa:""}.fa-signal-alt{--fa:""}.fa-signal-alt-1{--fa:""}.fa-signal-alt-2{--fa:""}.fa-signal-alt-3{--fa:""}.fa-signal-alt-4{--fa:""}.fa-signal-alt-slash{--fa:""}.fa-signal-bars{--fa:""}.fa-signal-bars-fair{--fa:""}.fa-signal-bars-good{--fa:""}.fa-signal-bars-slash{--fa:""}.fa-signal-bars-strong{--fa:""}.fa-signal-bars-weak{--fa:""}.fa-signal-fair{--fa:""}.fa-signal-good{--fa:""}.fa-signal-perfect{--fa:""}.fa-signal-slash{--fa:""}.fa-signal-stream{--fa:""}.fa-signal-stream-slash{--fa:""}.fa-signal-strong{--fa:""}.fa-signal-weak{--fa:""}.fa-signapore-dollar-sign{--fa:""}.fa-signature{--fa:""}.fa-signature-lock{--fa:""}.fa-signature-slash{--fa:""}.fa-signing{--fa:""}.fa-signs-post{--fa:""}.fa-sim-card{--fa:""}.fa-sim-cards{--fa:""}.fa-single-quote-left{--fa:""}.fa-single-quote-right{--fa:""}.fa-sink{--fa:""}.fa-siren{--fa:""}.fa-siren-on{--fa:""}.fa-sitemap{--fa:""}.fa-skating{--fa:""}.fa-skeleton{--fa:""}.fa-skeleton-ribs{--fa:""}.fa-ski-boot{--fa:""}.fa-ski-boot-ski{--fa:""}.fa-ski-jump{--fa:""}.fa-ski-lift{--fa:""}.fa-skiing{--fa:""}.fa-skiing-nordic{--fa:""}.fa-skull{--fa:""}.fa-skull-cow{--fa:""}.fa-skull-crossbones{--fa:""}.fa-slash{--fa:""}.fa-slash-back{--fa:"\\"}.fa-slash-forward{--fa:"/"}.fa-sledding{--fa:""}.fa-sleigh{--fa:""}.fa-slider{--fa:""}.fa-slider-circle{--fa:""}.fa-sliders{--fa:""}.fa-sliders-h{--fa:""}.fa-sliders-h-square{--fa:""}.fa-sliders-simple{--fa:""}.fa-sliders-up{--fa:""}.fa-sliders-v{--fa:""}.fa-sliders-v-square{--fa:""}.fa-slot-machine{--fa:""}.fa-smile{--fa:""}.fa-smile-beam{--fa:""}.fa-smile-plus{--fa:""}.fa-smile-wink{--fa:""}.fa-smog{--fa:""}.fa-smoke{--fa:""}.fa-smoking{--fa:""}.fa-smoking-ban{--fa:""}.fa-sms{--fa:""}.fa-snake{--fa:""}.fa-sneaker{--fa:""}.fa-sneaker-running{--fa:""}.fa-snooze{--fa:""}.fa-snow-blowing{--fa:""}.fa-snowboarding{--fa:""}.fa-snowflake{--fa:""}.fa-snowflake-droplets{--fa:""}.fa-snowflakes{--fa:""}.fa-snowman{--fa:""}.fa-snowman-head{--fa:""}.fa-snowmobile{--fa:""}.fa-snowmobile-blank{--fa:""}.fa-snowplow{--fa:""}.fa-soap{--fa:""}.fa-soccer-ball{--fa:""}.fa-socks{--fa:""}.fa-soft-serve{--fa:""}.fa-solar-panel{--fa:""}.fa-solar-system{--fa:""}.fa-sort{--fa:""}.fa-sort-alpha-asc{--fa:""}.fa-sort-alpha-desc{--fa:""}.fa-sort-alpha-down{--fa:""}.fa-sort-alpha-down-alt{--fa:""}.fa-sort-alpha-up{--fa:""}.fa-sort-alpha-up-alt{--fa:""}.fa-sort-alt{--fa:""}.fa-sort-amount-asc{--fa:""}.fa-sort-amount-desc{--fa:""}.fa-sort-amount-down{--fa:""}.fa-sort-amount-down-alt{--fa:""}.fa-sort-amount-up{--fa:""}.fa-sort-amount-up-alt{--fa:""}.fa-sort-asc{--fa:""}.fa-sort-circle{--fa:""}.fa-sort-circle-down{--fa:""}.fa-sort-circle-up{--fa:""}.fa-sort-desc{--fa:""}.fa-sort-down{--fa:""}.fa-sort-numeric-asc{--fa:""}.fa-sort-numeric-desc{--fa:""}.fa-sort-numeric-down{--fa:""}.fa-sort-numeric-down-alt{--fa:""}.fa-sort-numeric-up{--fa:""}.fa-sort-numeric-up-alt{--fa:""}.fa-sort-shapes-down{--fa:""}.fa-sort-shapes-down-alt{--fa:""}.fa-sort-shapes-up{--fa:""}.fa-sort-shapes-up-alt{--fa:""}.fa-sort-size-down{--fa:""}.fa-sort-size-down-alt{--fa:""}.fa-sort-size-up{--fa:""}.fa-sort-size-up-alt{--fa:""}.fa-sort-up{--fa:""}.fa-sort-up-down{--fa:""}.fa-soup{--fa:""}.fa-spa{--fa:""}.fa-space-shuttle{--fa:""}.fa-space-station-moon{--fa:""}.fa-space-station-moon-alt{--fa:""}.fa-space-station-moon-construction{--fa:""}.fa-spade{--fa:""}.fa-spaghetti-monster-flying{--fa:""}.fa-sparkle{--fa:""}.fa-sparkles{--fa:""}.fa-speaker{--fa:""}.fa-speakers{--fa:""}.fa-spell-check{--fa:""}.fa-spider{--fa:""}.fa-spider-black-widow{--fa:""}.fa-spider-web{--fa:""}.fa-spine{--fa:""}.fa-spinner{--fa:""}.fa-spinner-scale{--fa:""}.fa-spinner-third{--fa:""}.fa-spiral{--fa:""}.fa-split{--fa:""}.fa-splotch{--fa:""}.fa-spoon{--fa:""}.fa-sportsball{--fa:""}.fa-spray-can{--fa:""}.fa-spray-can-sparkles{--fa:""}.fa-sprinkler{--fa:""}.fa-sprinkler-ceiling{--fa:""}.fa-sprout{--fa:""}.fa-square{--fa:""}.fa-square-0{--fa:""}.fa-square-1{--fa:""}.fa-square-2{--fa:""}.fa-square-3{--fa:""}.fa-square-4{--fa:""}.fa-square-5{--fa:""}.fa-square-6{--fa:""}.fa-square-7{--fa:""}.fa-square-8{--fa:""}.fa-square-9{--fa:""}.fa-square-a{--fa:""}.fa-square-a-lock{--fa:""}.fa-square-ampersand{--fa:""}.fa-square-arrow-down{--fa:""}.fa-square-arrow-down-left{--fa:""}.fa-square-arrow-down-right{--fa:""}.fa-square-arrow-left{--fa:""}.fa-square-arrow-right{--fa:""}.fa-square-arrow-up{--fa:""}.fa-square-arrow-up-left{--fa:""}.fa-square-arrow-up-right{--fa:""}.fa-square-austral{--fa:""}.fa-square-australian-dollar{--fa:""}.fa-square-b{--fa:""}.fa-square-baht{--fa:""}.fa-square-bangladeshi-taka{--fa:""}.fa-square-binary{--fa:""}.fa-square-bitcoin{--fa:""}.fa-square-bolt{--fa:""}.fa-square-brazilian-real{--fa:""}.fa-square-c{--fa:""}.fa-square-caret-down{--fa:""}.fa-square-caret-left{--fa:""}.fa-square-caret-right{--fa:""}.fa-square-caret-up{--fa:""}.fa-square-cedi{--fa:""}.fa-square-cent{--fa:""}.fa-square-check{--fa:""}.fa-square-chevron-down{--fa:""}.fa-square-chevron-left{--fa:""}.fa-square-chevron-right{--fa:""}.fa-square-chevron-up{--fa:""}.fa-square-chf{--fa:""}.fa-square-code{--fa:""}.fa-square-colon{--fa:""}.fa-square-cruzeiro{--fa:""}.fa-square-currency{--fa:""}.fa-square-d{--fa:""}.fa-square-danish-krone{--fa:""}.fa-square-dashed{--fa:""}.fa-square-dashed-circle-plus{--fa:""}.fa-square-divide{--fa:""}.fa-square-dollar{--fa:""}.fa-square-dong{--fa:""}.fa-square-down{--fa:""}.fa-square-down-left{--fa:""}.fa-square-down-right{--fa:""}.fa-square-e{--fa:""}.fa-square-ellipsis{--fa:""}.fa-square-ellipsis-vertical{--fa:""}.fa-square-envelope{--fa:""}.fa-square-equals{--fa:""}.fa-square-euro{--fa:""}.fa-square-eurozone{--fa:""}.fa-square-exclamation{--fa:""}.fa-square-f{--fa:""}.fa-square-florin{--fa:""}.fa-square-fragile{--fa:""}.fa-square-franc{--fa:""}.fa-square-full{--fa:""}.fa-square-g{--fa:""}.fa-square-guarani{--fa:""}.fa-square-h{--fa:""}.fa-square-half{--fa:""}.fa-square-half-horizontal{--fa:""}.fa-square-half-stroke{--fa:""}.fa-square-half-stroke-horizontal{--fa:""}.fa-square-heart{--fa:""}.fa-square-hryvnia{--fa:""}.fa-square-i{--fa:""}.fa-square-indian-rupee{--fa:""}.fa-square-info{--fa:""}.fa-square-j{--fa:""}.fa-square-k{--fa:""}.fa-square-kanban{--fa:""}.fa-square-kip{--fa:""}.fa-square-l{--fa:""}.fa-square-lari{--fa:""}.fa-square-left{--fa:""}.fa-square-lira{--fa:""}.fa-square-list{--fa:""}.fa-square-litecoin{--fa:""}.fa-square-m{--fa:""}.fa-square-malaysian-ringgit{--fa:""}.fa-square-manat{--fa:""}.fa-square-microphone{--fa:""}.fa-square-mill{--fa:""}.fa-square-minus{--fa:""}.fa-square-n{--fa:""}.fa-square-naira{--fa:""}.fa-square-nfi{--fa:""}.fa-square-norwegian-krone{--fa:""}.fa-square-o{--fa:""}.fa-square-p{--fa:""}.fa-square-parking{--fa:""}.fa-square-parking-slash{--fa:""}.fa-square-pen{--fa:""}.fa-square-person-confined{--fa:""}.fa-square-peruvian-soles{--fa:""}.fa-square-peseta{--fa:""}.fa-square-peso{--fa:""}.fa-square-phone{--fa:""}.fa-square-phone-flip{--fa:""}.fa-square-phone-hangup{--fa:""}.fa-square-plus{--fa:""}.fa-square-polish-zloty{--fa:""}.fa-square-poll-horizontal{--fa:""}.fa-square-poll-vertical{--fa:""}.fa-square-q{--fa:""}.fa-square-quarters{--fa:""}.fa-square-question{--fa:""}.fa-square-quote{--fa:""}.fa-square-r{--fa:""}.fa-square-renminbi{--fa:""}.fa-square-right{--fa:""}.fa-square-ring{--fa:""}.fa-square-root{--fa:""}.fa-square-root-alt{--fa:""}.fa-square-root-variable{--fa:""}.fa-square-rss{--fa:""}.fa-square-ruble{--fa:""}.fa-square-rupee{--fa:""}.fa-square-rupiah{--fa:""}.fa-square-s{--fa:""}.fa-square-share-nodes{--fa:""}.fa-square-shekel{--fa:""}.fa-square-sliders{--fa:""}.fa-square-sliders-vertical{--fa:""}.fa-square-small{--fa:""}.fa-square-star{--fa:""}.fa-square-sterling{--fa:""}.fa-square-swedish-krona{--fa:""}.fa-square-t{--fa:""}.fa-square-tenge{--fa:""}.fa-square-terminal{--fa:""}.fa-square-this-way-up{--fa:""}.fa-square-tugrik{--fa:""}.fa-square-turkish-lira{--fa:""}.fa-square-u{--fa:""}.fa-square-up{--fa:""}.fa-square-up-left{--fa:""}.fa-square-up-right{--fa:""}.fa-square-user{--fa:""}.fa-square-v{--fa:""}.fa-square-virus{--fa:""}.fa-square-w{--fa:""}.fa-square-wine-glass-crack{--fa:""}.fa-square-won{--fa:""}.fa-square-x{--fa:""}.fa-square-xmark{--fa:""}.fa-square-y{--fa:""}.fa-square-yen{--fa:""}.fa-square-z{--fa:""}.fa-squareapore-dollar{--fa:""}.fa-squid{--fa:""}.fa-squirrel{--fa:""}.fa-stadium{--fa:""}.fa-staff{--fa:""}.fa-staff-aesculapius{--fa:""}.fa-staff-snake{--fa:""}.fa-stair-car{--fa:""}.fa-stairs{--fa:""}.fa-stamp{--fa:""}.fa-standard-definition{--fa:""}.fa-stapler{--fa:""}.fa-star{--fa:""}.fa-star-and-crescent{--fa:""}.fa-star-christmas{--fa:""}.fa-star-circle{--fa:""}.fa-star-exclamation{--fa:""}.fa-star-half{--fa:""}.fa-star-half-alt{--fa:""}.fa-star-half-stroke{--fa:""}.fa-star-of-david{--fa:""}.fa-star-of-life{--fa:""}.fa-star-sharp{--fa:""}.fa-star-sharp-half{--fa:""}.fa-star-sharp-half-alt{--fa:""}.fa-star-sharp-half-stroke{--fa:""}.fa-star-shooting{--fa:""}.fa-starfighter{--fa:""}.fa-starfighter-alt{--fa:""}.fa-starfighter-alt-advanced{--fa:""}.fa-starfighter-twin-ion-engine{--fa:""}.fa-starfighter-twin-ion-engine-advanced{--fa:""}.fa-stars{--fa:""}.fa-starship{--fa:""}.fa-starship-freighter{--fa:""}.fa-steak{--fa:""}.fa-steering-wheel{--fa:""}.fa-step-backward{--fa:""}.fa-step-forward{--fa:""}.fa-sterling-sign{--fa:""}.fa-stethoscope{--fa:""}.fa-sticky-note{--fa:""}.fa-stocking{--fa:""}.fa-stomach{--fa:""}.fa-stool{--fa:""}.fa-stop{--fa:""}.fa-stop-circle{--fa:""}.fa-stopwatch{--fa:""}.fa-stopwatch-20{--fa:""}.fa-store{--fa:""}.fa-store-24{--fa:""}.fa-store-alt{--fa:""}.fa-store-alt-slash{--fa:""}.fa-store-lock{--fa:""}.fa-store-slash{--fa:""}.fa-strawberry{--fa:""}.fa-stream{--fa:""}.fa-street-view{--fa:""}.fa-stretcher{--fa:""}.fa-strikethrough{--fa:""}.fa-stroopwafel{--fa:""}.fa-subscript{--fa:""}.fa-subtitles{--fa:""}.fa-subtitles-slash{--fa:""}.fa-subtract{--fa:""}.fa-subway{--fa:""}.fa-subway-tunnel{--fa:""}.fa-suitcase{--fa:""}.fa-suitcase-medical{--fa:""}.fa-suitcase-rolling{--fa:""}.fa-sun{--fa:""}.fa-sun-alt{--fa:""}.fa-sun-bright{--fa:""}.fa-sun-cloud{--fa:""}.fa-sun-dust{--fa:""}.fa-sun-haze{--fa:""}.fa-sun-plant-wilt{--fa:""}.fa-sunglasses{--fa:""}.fa-sunrise{--fa:""}.fa-sunset{--fa:""}.fa-superscript{--fa:""}.fa-surprise{--fa:""}.fa-sushi{--fa:""}.fa-sushi-roll{--fa:""}.fa-swap{--fa:""}.fa-swap-arrows{--fa:""}.fa-swatchbook{--fa:""}.fa-swedish-krona-sign{--fa:""}.fa-swimmer{--fa:""}.fa-swimming-pool{--fa:""}.fa-sword{--fa:""}.fa-sword-laser{--fa:""}.fa-sword-laser-alt{--fa:""}.fa-swords{--fa:""}.fa-swords-laser{--fa:""}.fa-symbols{--fa:""}.fa-synagogue{--fa:""}.fa-sync{--fa:""}.fa-sync-alt{--fa:""}.fa-syringe{--fa:""}.fa-t{--fa:"T"}.fa-t-rex{--fa:""}.fa-t-shirt{--fa:""}.fa-table{--fa:""}.fa-table-bar{--fa:""}.fa-table-cells{--fa:""}.fa-table-cells-column-lock{--fa:""}.fa-table-cells-column-unlock{--fa:""}.fa-table-cells-columns{--fa:""}.fa-table-cells-header{--fa:""}.fa-table-cells-header-lock{--fa:""}.fa-table-cells-header-unlock{--fa:""}.fa-table-cells-large{--fa:""}.fa-table-cells-lock{--fa:""}.fa-table-cells-merge{--fa:""}.fa-table-cells-row-lock{--fa:""}.fa-table-cells-row-unlock{--fa:""}.fa-table-cells-rows{--fa:""}.fa-table-cells-split{--fa:""}.fa-table-cells-unlock{--fa:""}.fa-table-columns{--fa:""}.fa-table-columns-add-after{--fa:""}.fa-table-columns-add-before{--fa:""}.fa-table-columns-merge-next{--fa:""}.fa-table-columns-merge-previous{--fa:""}.fa-table-columns-remove-after{--fa:""}.fa-table-columns-remove-before{--fa:""}.fa-table-dining{--fa:""}.fa-table-layout{--fa:""}.fa-table-list{--fa:""}.fa-table-picnic{--fa:""}.fa-table-pivot{--fa:""}.fa-table-rows{--fa:""}.fa-table-rows-add-above{--fa:""}.fa-table-rows-add-below{--fa:""}.fa-table-rows-merge-next{--fa:""}.fa-table-rows-merge-previous{--fa:""}.fa-table-rows-remove-above{--fa:""}.fa-table-rows-remove-below{--fa:""}.fa-table-slash{--fa:""}.fa-table-tennis{--fa:""}.fa-table-tennis-paddle-ball{--fa:""}.fa-table-tree{--fa:""}.fa-tablet{--fa:""}.fa-tablet-alt{--fa:""}.fa-tablet-android{--fa:""}.fa-tablet-android-alt{--fa:""}.fa-tablet-button{--fa:""}.fa-tablet-rugged{--fa:""}.fa-tablet-screen{--fa:""}.fa-tablet-screen-button{--fa:""}.fa-tablets{--fa:""}.fa-tachograph-digital{--fa:""}.fa-tachometer{--fa:""}.fa-tachometer-alt{--fa:""}.fa-tachometer-alt-average{--fa:""}.fa-tachometer-alt-fast{--fa:""}.fa-tachometer-alt-fastest{--fa:""}.fa-tachometer-alt-slow{--fa:""}.fa-tachometer-alt-slowest{--fa:""}.fa-tachometer-average{--fa:""}.fa-tachometer-fast{--fa:""}.fa-tachometer-fastest{--fa:""}.fa-tachometer-slow{--fa:""}.fa-tachometer-slowest{--fa:""}.fa-taco{--fa:""}.fa-tag{--fa:""}.fa-tags{--fa:""}.fa-tally{--fa:""}.fa-tally-1{--fa:""}.fa-tally-2{--fa:""}.fa-tally-3{--fa:""}.fa-tally-4{--fa:""}.fa-tally-5{--fa:""}.fa-tamale{--fa:""}.fa-tanakh{--fa:""}.fa-tank-recovery{--fa:""}.fa-tank-water{--fa:""}.fa-tape{--fa:""}.fa-tarp{--fa:""}.fa-tarp-droplet{--fa:""}.fa-tasks{--fa:""}.fa-tasks-alt{--fa:""}.fa-taurus{--fa:""}.fa-taxi{--fa:""}.fa-taxi-bus{--fa:""}.fa-teddy-bear{--fa:""}.fa-teeth{--fa:""}.fa-teeth-open{--fa:""}.fa-telescope{--fa:""}.fa-teletype{--fa:""}.fa-teletype-answer{--fa:""}.fa-television{--fa:""}.fa-temperature-0{--fa:""}.fa-temperature-1{--fa:""}.fa-temperature-2{--fa:""}.fa-temperature-3{--fa:""}.fa-temperature-4{--fa:""}.fa-temperature-arrow-down{--fa:""}.fa-temperature-arrow-up{--fa:""}.fa-temperature-down{--fa:""}.fa-temperature-empty{--fa:""}.fa-temperature-frigid{--fa:""}.fa-temperature-full{--fa:""}.fa-temperature-half{--fa:""}.fa-temperature-high{--fa:""}.fa-temperature-hot{--fa:""}.fa-temperature-list{--fa:""}.fa-temperature-low{--fa:""}.fa-temperature-quarter{--fa:""}.fa-temperature-slash{--fa:""}.fa-temperature-snow{--fa:""}.fa-temperature-sun{--fa:""}.fa-temperature-three-quarters{--fa:""}.fa-temperature-up{--fa:""}.fa-tenge{--fa:""}.fa-tenge-sign{--fa:""}.fa-tennis-ball{--fa:""}.fa-tent{--fa:""}.fa-tent-arrow-down-to-line{--fa:""}.fa-tent-arrow-left-right{--fa:""}.fa-tent-arrow-turn-left{--fa:""}.fa-tent-arrows-down{--fa:""}.fa-tent-circus{--fa:""}.fa-tent-double-peak{--fa:""}.fa-tents{--fa:""}.fa-terminal{--fa:""}.fa-text{--fa:""}.fa-text-height{--fa:""}.fa-text-size{--fa:""}.fa-text-slash{--fa:""}.fa-text-width{--fa:""}.fa-th{--fa:""}.fa-th-large{--fa:""}.fa-th-list{--fa:""}.fa-theater-masks{--fa:""}.fa-thermometer{--fa:""}.fa-thermometer-0{--fa:""}.fa-thermometer-1{--fa:""}.fa-thermometer-2{--fa:""}.fa-thermometer-3{--fa:""}.fa-thermometer-4{--fa:""}.fa-thermometer-empty{--fa:""}.fa-thermometer-full{--fa:""}.fa-thermometer-half{--fa:""}.fa-thermometer-quarter{--fa:""}.fa-thermometer-three-quarters{--fa:""}.fa-theta{--fa:""}.fa-thought-bubble{--fa:""}.fa-thumb-tack{--fa:""}.fa-thumb-tack-slash{--fa:""}.fa-thumbs-down{--fa:""}.fa-thumbs-up{--fa:""}.fa-thumbtack{--fa:""}.fa-thumbtack-angle{--fa:""}.fa-thumbtack-angle-slash{--fa:""}.fa-thumbtack-slash{--fa:""}.fa-thunderstorm{--fa:""}.fa-thunderstorm-moon{--fa:""}.fa-thunderstorm-sun{--fa:""}.fa-tick{--fa:""}.fa-ticket{--fa:""}.fa-ticket-airline{--fa:""}.fa-ticket-alt{--fa:""}.fa-ticket-perforated{--fa:""}.fa-ticket-perforated-plane{--fa:""}.fa-ticket-plane{--fa:""}.fa-ticket-simple{--fa:""}.fa-tickets{--fa:""}.fa-tickets-airline{--fa:""}.fa-tickets-perforated{--fa:""}.fa-tickets-perforated-plane{--fa:""}.fa-tickets-plane{--fa:""}.fa-tickets-simple{--fa:""}.fa-tilde{--fa:"~"}.fa-timeline{--fa:""}.fa-timeline-arrow{--fa:""}.fa-timer{--fa:""}.fa-times{--fa:""}.fa-times-circle{--fa:""}.fa-times-hexagon{--fa:""}.fa-times-octagon{--fa:""}.fa-times-rectangle{--fa:""}.fa-times-square{--fa:""}.fa-times-to-slot{--fa:""}.fa-tint{--fa:""}.fa-tint-slash{--fa:""}.fa-tire{--fa:""}.fa-tire-flat{--fa:""}.fa-tire-pressure-warning{--fa:""}.fa-tire-rugged{--fa:""}.fa-tired{--fa:""}.fa-toggle-large-off{--fa:""}.fa-toggle-large-on{--fa:""}.fa-toggle-off{--fa:""}.fa-toggle-on{--fa:""}.fa-toilet{--fa:""}.fa-toilet-paper{--fa:""}.fa-toilet-paper-alt{--fa:""}.fa-toilet-paper-blank{--fa:""}.fa-toilet-paper-blank-under{--fa:""}.fa-toilet-paper-check{--fa:""}.fa-toilet-paper-reverse{--fa:""}.fa-toilet-paper-reverse-alt{--fa:""}.fa-toilet-paper-reverse-slash{--fa:""}.fa-toilet-paper-slash{--fa:""}.fa-toilet-paper-under{--fa:""}.fa-toilet-paper-under-slash{--fa:""}.fa-toilet-paper-xmark{--fa:""}.fa-toilet-portable{--fa:""}.fa-toilets-portable{--fa:""}.fa-tomato{--fa:""}.fa-tombstone{--fa:""}.fa-tombstone-alt{--fa:""}.fa-tombstone-blank{--fa:""}.fa-toolbox{--fa:""}.fa-tools{--fa:""}.fa-tooth{--fa:""}.fa-toothbrush{--fa:""}.fa-torah{--fa:""}.fa-torii-gate{--fa:""}.fa-tornado{--fa:""}.fa-tower-broadcast{--fa:""}.fa-tower-cell{--fa:""}.fa-tower-control{--fa:""}.fa-tower-observation{--fa:""}.fa-tower-receive{--fa:""}.fa-tractor{--fa:""}.fa-trademark{--fa:""}.fa-traffic-cone{--fa:""}.fa-traffic-light{--fa:""}.fa-traffic-light-go{--fa:""}.fa-traffic-light-slow{--fa:""}.fa-traffic-light-stop{--fa:""}.fa-trailer{--fa:""}.fa-train{--fa:""}.fa-train-stop{--fa:""}.fa-train-subway{--fa:""}.fa-train-subway-tunnel{--fa:""}.fa-train-track{--fa:""}.fa-train-tram{--fa:""}.fa-train-tunnel{--fa:""}.fa-tram{--fa:""}.fa-transducer{--fa:""}.fa-transformer-bolt{--fa:""}.fa-transgender{--fa:""}.fa-transgender-alt{--fa:""}.fa-transmission{--fa:""}.fa-transporter{--fa:""}.fa-transporter-1{--fa:""}.fa-transporter-2{--fa:""}.fa-transporter-3{--fa:""}.fa-transporter-4{--fa:""}.fa-transporter-5{--fa:""}.fa-transporter-6{--fa:""}.fa-transporter-7{--fa:""}.fa-transporter-empty{--fa:""}.fa-trash{--fa:""}.fa-trash-alt{--fa:""}.fa-trash-alt-slash{--fa:""}.fa-trash-arrow-turn-left{--fa:""}.fa-trash-arrow-up{--fa:""}.fa-trash-can{--fa:""}.fa-trash-can-arrow-turn-left{--fa:""}.fa-trash-can-arrow-up{--fa:""}.fa-trash-can-check{--fa:""}.fa-trash-can-clock{--fa:""}.fa-trash-can-list{--fa:""}.fa-trash-can-plus{--fa:""}.fa-trash-can-slash{--fa:""}.fa-trash-can-undo{--fa:""}.fa-trash-can-xmark{--fa:""}.fa-trash-check{--fa:""}.fa-trash-circle{--fa:""}.fa-trash-clock{--fa:""}.fa-trash-list{--fa:""}.fa-trash-plus{--fa:""}.fa-trash-restore{--fa:""}.fa-trash-restore-alt{--fa:""}.fa-trash-slash{--fa:""}.fa-trash-undo{--fa:""}.fa-trash-undo-alt{--fa:""}.fa-trash-xmark{--fa:""}.fa-treasure-chest{--fa:""}.fa-tree{--fa:""}.fa-tree-alt{--fa:""}.fa-tree-christmas{--fa:""}.fa-tree-city{--fa:""}.fa-tree-deciduous{--fa:""}.fa-tree-decorated{--fa:""}.fa-tree-large{--fa:""}.fa-tree-palm{--fa:""}.fa-trees{--fa:""}.fa-trian-balbot{--fa:""}.fa-triangle{--fa:""}.fa-triangle-circle-square{--fa:""}.fa-triangle-exclamation{--fa:""}.fa-triangle-instrument{--fa:""}.fa-triangle-music{--fa:""}.fa-triangle-person-digging{--fa:""}.fa-tricycle{--fa:""}.fa-tricycle-adult{--fa:""}.fa-trillium{--fa:""}.fa-triple-chevrons-down{--fa:""}.fa-triple-chevrons-left{--fa:""}.fa-triple-chevrons-right{--fa:""}.fa-triple-chevrons-up{--fa:""}.fa-trombone{--fa:""}.fa-trophy{--fa:""}.fa-trophy-alt{--fa:""}.fa-trophy-star{--fa:""}.fa-trowel{--fa:""}.fa-trowel-bricks{--fa:""}.fa-truck{--fa:""}.fa-truck-arrow-right{--fa:""}.fa-truck-bolt{--fa:""}.fa-truck-clock{--fa:""}.fa-truck-container{--fa:""}.fa-truck-container-empty{--fa:""}.fa-truck-couch{--fa:""}.fa-truck-droplet{--fa:""}.fa-truck-fast{--fa:""}.fa-truck-field{--fa:""}.fa-truck-field-un{--fa:""}.fa-truck-fire{--fa:""}.fa-truck-flatbed{--fa:""}.fa-truck-front{--fa:""}.fa-truck-ladder{--fa:""}.fa-truck-loading{--fa:""}.fa-truck-medical{--fa:""}.fa-truck-monster{--fa:""}.fa-truck-moving{--fa:""}.fa-truck-pickup{--fa:""}.fa-truck-plane{--fa:""}.fa-truck-plow{--fa:""}.fa-truck-ramp{--fa:""}.fa-truck-ramp-box{--fa:""}.fa-truck-ramp-couch{--fa:""}.fa-truck-suv{--fa:""}.fa-truck-tow{--fa:""}.fa-truck-utensils{--fa:""}.fa-trumpet{--fa:""}.fa-try{--fa:""}.fa-tshirt{--fa:""}.fa-tty{--fa:""}.fa-tty-answer{--fa:""}.fa-tugrik-sign{--fa:""}.fa-turkey{--fa:""}.fa-turkish-lira{--fa:""}.fa-turkish-lira-sign{--fa:""}.fa-turn-down{--fa:""}.fa-turn-down-left{--fa:""}.fa-turn-down-right{--fa:""}.fa-turn-left{--fa:""}.fa-turn-left-down{--fa:""}.fa-turn-left-up{--fa:""}.fa-turn-right{--fa:""}.fa-turn-up{--fa:""}.fa-turntable{--fa:""}.fa-turtle{--fa:""}.fa-tv{--fa:""}.fa-tv-alt{--fa:""}.fa-tv-music{--fa:""}.fa-tv-retro{--fa:""}.fa-typewriter{--fa:""}.fa-u{--fa:"U"}.fa-u-turn{--fa:""}.fa-u-turn-down-left{--fa:""}.fa-u-turn-down-right{--fa:""}.fa-u-turn-left-down{--fa:""}.fa-u-turn-left-up{--fa:""}.fa-u-turn-right-down{--fa:""}.fa-u-turn-right-up{--fa:""}.fa-u-turn-up-left{--fa:""}.fa-u-turn-up-right{--fa:""}.fa-ufo{--fa:""}.fa-ufo-beam{--fa:""}.fa-umbrella{--fa:""}.fa-umbrella-alt{--fa:""}.fa-umbrella-beach{--fa:""}.fa-umbrella-simple{--fa:""}.fa-underline{--fa:""}.fa-undo{--fa:""}.fa-undo-alt{--fa:""}.fa-unicorn{--fa:""}.fa-unicycle{--fa:""}.fa-uniform-martial-arts{--fa:""}.fa-union{--fa:""}.fa-universal-access{--fa:""}.fa-university{--fa:""}.fa-unlink{--fa:""}.fa-unlock{--fa:""}.fa-unlock-alt{--fa:""}.fa-unlock-keyhole{--fa:""}.fa-unsorted{--fa:""}.fa-up{--fa:""}.fa-up-down{--fa:""}.fa-up-down-left-right{--fa:""}.fa-up-from-bracket{--fa:""}.fa-up-from-dotted-line{--fa:""}.fa-up-from-line{--fa:""}.fa-up-left{--fa:""}.fa-up-long{--fa:""}.fa-up-long-to-line{--fa:""}.fa-up-right{--fa:""}.fa-up-right-and-down-left-from-center{--fa:""}.fa-up-right-from-square{--fa:""}.fa-up-to-bracket{--fa:""}.fa-up-to-dotted-line{--fa:""}.fa-up-to-line{--fa:""}.fa-upload{--fa:""}.fa-usb-drive{--fa:""}.fa-usd{--fa:"$"}.fa-usd-circle{--fa:""}.fa-usd-square{--fa:""}.fa-user{--fa:""}.fa-user-alien{--fa:""}.fa-user-alt{--fa:""}.fa-user-alt-slash{--fa:""}.fa-user-astronaut{--fa:""}.fa-user-beard{--fa:""}.fa-user-beard-bolt{--fa:""}.fa-user-bounty-hunter{--fa:""}.fa-user-chart{--fa:""}.fa-user-check{--fa:""}.fa-user-chef{--fa:""}.fa-user-chef-hair-long{--fa:""}.fa-user-circle{--fa:""}.fa-user-circle-minus{--fa:""}.fa-user-circle-plus{--fa:""}.fa-user-clock{--fa:""}.fa-user-cog{--fa:""}.fa-user-construction{--fa:""}.fa-user-cowboy{--fa:""}.fa-user-crown{--fa:""}.fa-user-dashed{--fa:""}.fa-user-doctor{--fa:""}.fa-user-doctor-hair{--fa:""}.fa-user-doctor-hair-long{--fa:""}.fa-user-doctor-hair-mullet{--fa:""}.fa-user-doctor-message{--fa:""}.fa-user-edit{--fa:""}.fa-user-friends{--fa:""}.fa-user-gear{--fa:""}.fa-user-graduate{--fa:""}.fa-user-group{--fa:""}.fa-user-group-crown{--fa:""}.fa-user-group-simple{--fa:""}.fa-user-hair{--fa:""}.fa-user-hair-buns{--fa:""}.fa-user-hair-long{--fa:""}.fa-user-hair-mullet{--fa:""}.fa-user-hard-hat{--fa:""}.fa-user-hat-tie{--fa:""}.fa-user-hat-tie-magnifying-glass{--fa:""}.fa-user-headset{--fa:""}.fa-user-helmet-safety{--fa:""}.fa-user-hoodie{--fa:""}.fa-user-injured{--fa:""}.fa-user-key{--fa:""}.fa-user-large{--fa:""}.fa-user-large-slash{--fa:""}.fa-user-lock{--fa:""}.fa-user-magnifying-glass{--fa:""}.fa-user-md{--fa:""}.fa-user-md-chat{--fa:""}.fa-user-message{--fa:""}.fa-user-microphone{--fa:""}.fa-user-minus{--fa:""}.fa-user-music{--fa:""}.fa-user-ninja{--fa:""}.fa-user-nurse{--fa:""}.fa-user-nurse-hair{--fa:""}.fa-user-nurse-hair-long{--fa:""}.fa-user-pen{--fa:""}.fa-user-pilot{--fa:""}.fa-user-pilot-hair-long{--fa:""}.fa-user-pilot-tie{--fa:""}.fa-user-pilot-tie-hair-long{--fa:""}.fa-user-plus{--fa:""}.fa-user-police{--fa:""}.fa-user-police-hair-long{--fa:""}.fa-user-police-tie{--fa:""}.fa-user-police-tie-hair-long{--fa:""}.fa-user-question{--fa:""}.fa-user-robot{--fa:""}.fa-user-robot-xmarks{--fa:""}.fa-user-secret{--fa:""}.fa-user-shakespeare{--fa:""}.fa-user-shield{--fa:""}.fa-user-sith{--fa:""}.fa-user-slash{--fa:""}.fa-user-tag{--fa:""}.fa-user-tie{--fa:""}.fa-user-tie-hair{--fa:""}.fa-user-tie-hair-long{--fa:""}.fa-user-tie-hair-mullet{--fa:""}.fa-user-times{--fa:""}.fa-user-unlock{--fa:""}.fa-user-viewfinder{--fa:""}.fa-user-visor{--fa:""}.fa-user-vneck{--fa:""}.fa-user-vneck-hair{--fa:""}.fa-user-vneck-hair-long{--fa:""}.fa-user-vneck-hair-mullet{--fa:""}.fa-user-xmark{--fa:""}.fa-users{--fa:""}.fa-users-between-lines{--fa:""}.fa-users-class{--fa:""}.fa-users-cog{--fa:""}.fa-users-crown{--fa:""}.fa-users-gear{--fa:""}.fa-users-line{--fa:""}.fa-users-medical{--fa:""}.fa-users-rays{--fa:""}.fa-users-rectangle{--fa:""}.fa-users-slash{--fa:""}.fa-users-viewfinder{--fa:""}.fa-utensil-fork{--fa:""}.fa-utensil-knife{--fa:""}.fa-utensil-spoon{--fa:""}.fa-utensils{--fa:""}.fa-utensils-alt{--fa:""}.fa-utensils-slash{--fa:""}.fa-utility-can{--fa:""}.fa-utility-pole{--fa:""}.fa-utility-pole-double{--fa:""}.fa-v{--fa:"V"}.fa-vacuum{--fa:""}.fa-vacuum-robot{--fa:""}.fa-value-absolute{--fa:""}.fa-van{--fa:""}.fa-van-shuttle{--fa:""}.fa-vault{--fa:""}.fa-vcard{--fa:""}.fa-vector-circle{--fa:""}.fa-vector-polygon{--fa:""}.fa-vector-square{--fa:""}.fa-vent-damper{--fa:""}.fa-venus{--fa:""}.fa-venus-double{--fa:""}.fa-venus-mars{--fa:""}.fa-vest{--fa:""}.fa-vest-patches{--fa:""}.fa-vhs{--fa:""}.fa-vial{--fa:""}.fa-vial-circle-check{--fa:""}.fa-vial-vertical{--fa:""}.fa-vial-virus{--fa:""}.fa-vials{--fa:""}.fa-video{--fa:""}.fa-video-arrow-down-left{--fa:""}.fa-video-arrow-up-right{--fa:""}.fa-video-camera{--fa:""}.fa-video-circle{--fa:""}.fa-video-down-to-line{--fa:""}.fa-video-handheld{--fa:""}.fa-video-plus{--fa:""}.fa-video-question{--fa:""}.fa-video-slash{--fa:""}.fa-vihara{--fa:""}.fa-violin{--fa:""}.fa-virgo{--fa:""}.fa-virus{--fa:""}.fa-virus-covid{--fa:""}.fa-virus-covid-slash{--fa:""}.fa-virus-slash{--fa:""}.fa-viruses{--fa:""}.fa-voicemail{--fa:""}.fa-volcano{--fa:""}.fa-volleyball{--fa:""}.fa-volleyball-ball{--fa:""}.fa-volume{--fa:""}.fa-volume-control-phone{--fa:""}.fa-volume-down{--fa:""}.fa-volume-high{--fa:""}.fa-volume-low{--fa:""}.fa-volume-medium{--fa:""}.fa-volume-mute{--fa:""}.fa-volume-off{--fa:""}.fa-volume-slash{--fa:""}.fa-volume-times{--fa:""}.fa-volume-up{--fa:""}.fa-volume-xmark{--fa:""}.fa-vote-nay{--fa:""}.fa-vote-yea{--fa:""}.fa-vr-cardboard{--fa:""}.fa-w{--fa:"W"}.fa-waffle{--fa:""}.fa-wagon-covered{--fa:""}.fa-walker{--fa:""}.fa-walkie-talkie{--fa:""}.fa-walking{--fa:""}.fa-wall-brick{--fa:""}.fa-wallet{--fa:""}.fa-wand{--fa:""}.fa-wand-magic{--fa:""}.fa-wand-magic-sparkles{--fa:""}.fa-wand-sparkles{--fa:""}.fa-wardrobe{--fa:""}.fa-warehouse{--fa:""}.fa-warehouse-alt{--fa:""}.fa-warehouse-full{--fa:""}.fa-warning{--fa:""}.fa-washer{--fa:""}.fa-washing-machine{--fa:""}.fa-watch{--fa:""}.fa-watch-apple{--fa:""}.fa-watch-calculator{--fa:""}.fa-watch-fitness{--fa:""}.fa-watch-smart{--fa:""}.fa-water{--fa:""}.fa-water-arrow-down{--fa:""}.fa-water-arrow-up{--fa:""}.fa-water-ladder{--fa:""}.fa-water-lower{--fa:""}.fa-water-rise{--fa:""}.fa-water-temp{--fa:""}.fa-water-temperature{--fa:""}.fa-watermelon-slice{--fa:""}.fa-wave{--fa:""}.fa-wave-pulse{--fa:""}.fa-wave-sine{--fa:""}.fa-wave-square{--fa:""}.fa-wave-triangle{--fa:""}.fa-waveform{--fa:""}.fa-waveform-circle{--fa:""}.fa-waveform-lines{--fa:""}.fa-waveform-path{--fa:""}.fa-waves-sine{--fa:""}.fa-web-awesome{--fa:""}.fa-webcam{--fa:""}.fa-webcam-slash{--fa:""}.fa-webhook{--fa:""}.fa-weight{--fa:""}.fa-weight-hanging{--fa:""}.fa-weight-scale{--fa:""}.fa-whale{--fa:""}.fa-wheat{--fa:""}.fa-wheat-alt{--fa:""}.fa-wheat-awn{--fa:""}.fa-wheat-awn-circle-exclamation{--fa:""}.fa-wheat-awn-slash{--fa:""}.fa-wheat-slash{--fa:""}.fa-wheelchair{--fa:""}.fa-wheelchair-alt{--fa:""}.fa-wheelchair-move{--fa:""}.fa-whiskey-glass{--fa:""}.fa-whiskey-glass-ice{--fa:""}.fa-whistle{--fa:""}.fa-wifi{--fa:""}.fa-wifi-1{--fa:""}.fa-wifi-2{--fa:""}.fa-wifi-3{--fa:""}.fa-wifi-exclamation{--fa:""}.fa-wifi-fair{--fa:""}.fa-wifi-slash{--fa:""}.fa-wifi-strong{--fa:""}.fa-wifi-weak{--fa:""}.fa-wind{--fa:""}.fa-wind-circle-exclamation{--fa:""}.fa-wind-turbine{--fa:""}.fa-wind-warning{--fa:""}.fa-window{--fa:""}.fa-window-alt{--fa:""}.fa-window-close{--fa:""}.fa-window-flip{--fa:""}.fa-window-frame{--fa:""}.fa-window-frame-open{--fa:""}.fa-window-maximize{--fa:""}.fa-window-minimize{--fa:""}.fa-window-restore{--fa:""}.fa-windsock{--fa:""}.fa-wine-bottle{--fa:""}.fa-wine-glass{--fa:""}.fa-wine-glass-alt{--fa:""}.fa-wine-glass-crack{--fa:""}.fa-wine-glass-empty{--fa:""}.fa-wireless{--fa:""}.fa-won{--fa:""}.fa-won-sign{--fa:""}.fa-worm{--fa:""}.fa-wreath{--fa:""}.fa-wreath-laurel{--fa:""}.fa-wrench{--fa:""}.fa-wrench-simple{--fa:""}.fa-x{--fa:"X"}.fa-x-ray{--fa:""}.fa-xmark{--fa:""}.fa-xmark-circle{--fa:""}.fa-xmark-hexagon{--fa:""}.fa-xmark-large{--fa:""}.fa-xmark-octagon{--fa:""}.fa-xmark-square{--fa:""}.fa-xmark-to-slot{--fa:""}.fa-xmarks-lines{--fa:""}.fa-y{--fa:"Y"}.fa-yen{--fa:""}.fa-yen-sign{--fa:""}.fa-yin-yang{--fa:""}.fa-z{--fa:"Z"}.fa-zap{--fa:""}.fa-zzz{--fa:""}:root,:host{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-brands-400.woff2)}.fab,.fa-brands,.fa-classic.fa-brands{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:""}.fa-ideal{--fa:""}.fa-microblog{--fa:""}.fa-square-pied-piper{--fa:""}.fa-pied-piper-square{--fa:""}.fa-unity{--fa:""}.fa-dailymotion{--fa:""}.fa-square-instagram{--fa:""}.fa-instagram-square{--fa:""}.fa-mixer{--fa:""}.fa-shopify{--fa:""}.fa-deezer{--fa:""}.fa-edge-legacy{--fa:""}.fa-google-pay{--fa:""}.fa-rust{--fa:""}.fa-tiktok{--fa:""}.fa-unsplash{--fa:""}.fa-cloudflare{--fa:""}.fa-guilded{--fa:""}.fa-hive{--fa:""}.fa-42-group{--fa:""}.fa-innosoft{--fa:""}.fa-instalod{--fa:""}.fa-octopus-deploy{--fa:""}.fa-perbyte{--fa:""}.fa-uncharted{--fa:""}.fa-watchman-monitoring{--fa:""}.fa-wodu{--fa:""}.fa-wirsindhandwerk{--fa:""}.fa-wsh{--fa:""}.fa-bots{--fa:""}.fa-cmplid{--fa:""}.fa-bilibili{--fa:""}.fa-golang{--fa:""}.fa-pix{--fa:""}.fa-sitrox{--fa:""}.fa-hashnode{--fa:""}.fa-meta{--fa:""}.fa-padlet{--fa:""}.fa-nfc-directional{--fa:""}.fa-nfc-symbol{--fa:""}.fa-screenpal{--fa:""}.fa-space-awesome{--fa:""}.fa-square-font-awesome{--fa:""}.fa-square-gitlab{--fa:""}.fa-gitlab-square{--fa:""}.fa-odysee{--fa:""}.fa-stubber{--fa:""}.fa-debian{--fa:""}.fa-shoelace{--fa:""}.fa-threads{--fa:""}.fa-square-threads{--fa:""}.fa-square-x-twitter{--fa:""}.fa-x-twitter{--fa:""}.fa-opensuse{--fa:""}.fa-letterboxd{--fa:""}.fa-square-letterboxd{--fa:""}.fa-mintbit{--fa:""}.fa-google-scholar{--fa:""}.fa-brave{--fa:""}.fa-brave-reverse{--fa:""}.fa-pixiv{--fa:""}.fa-upwork{--fa:""}.fa-webflow{--fa:""}.fa-signal-messenger{--fa:""}.fa-bluesky{--fa:""}.fa-jxl{--fa:""}.fa-square-upwork{--fa:""}.fa-web-awesome{--fa:""}.fa-square-web-awesome{--fa:""}.fa-square-web-awesome-stroke{--fa:""}.fa-dart-lang{--fa:""}.fa-flutter{--fa:""}.fa-files-pinwheel{--fa:""}.fa-css{--fa:""}.fa-square-bluesky{--fa:""}.fa-openai{--fa:""}.fa-square-linkedin{--fa:""}.fa-cash-app{--fa:""}.fa-disqus{--fa:""}.fa-eleventy{--fa:""}.fa-11ty{--fa:""}.fa-kakao-talk{--fa:""}.fa-linktree{--fa:""}.fa-notion{--fa:""}.fa-pandora{--fa:""}.fa-pixelfed{--fa:""}.fa-tidal{--fa:""}.fa-vsco{--fa:""}.fa-w3c{--fa:""}.fa-lumon{--fa:""}.fa-lumon-drop{--fa:""}.fa-square-figma{--fa:""}.fa-tex{--fa:""}.fa-duolingo{--fa:""}.fa-supportnow{--fa:""}.fa-tor-browser{--fa:""}.fa-typescript{--fa:""}.fa-square-deskpro{--fa:""}.fa-circle-zulip{--fa:""}.fa-julia{--fa:""}.fa-zulip{--fa:""}.fa-unison{--fa:""}.fa-board-game-geek{--fa:""}.fa-bgg{--fa:""}.fa-ko-fi{--fa:""}.fa-kubernetes{--fa:""}.fa-postgresql{--fa:""}.fa-scaleway{--fa:""}.fa-venmo{--fa:""}.fa-venmo-v{--fa:""}.fa-unreal-engine{--fa:""}.fa-globaleaks{--fa:""}.fa-solana{--fa:""}.fa-threema{--fa:""}.fa-forgejo{--fa:""}.fa-claude{--fa:""}.fa-gitee{--fa:""}.fa-xmpp{--fa:""}.fa-fediverse{--fa:""}.fa-tailwind-css{--fa:""}.fa-arch-linux{--fa:""}.fa-svelte{--fa:""}.fa-hugging-face{--fa:""}.fa-leetcode{--fa:""}.fa-openstreetmap{--fa:""}.fa-ultralytics{--fa:""}.fa-ultralytics-hub{--fa:""}.fa-ultralytics-yolo{--fa:""}.fa-obsidian{--fa:""}.fa-zoom{--fa:""}.fa-vim{--fa:""}.fa-symfonycasts{--fa:""}.fa-square-twitter{--fa:""}.fa-twitter-square{--fa:""}.fa-square-facebook{--fa:""}.fa-facebook-square{--fa:""}.fa-linkedin{--fa:""}.fa-square-github{--fa:""}.fa-github-square{--fa:""}.fa-twitter{--fa:""}.fa-facebook{--fa:""}.fa-github{--fa:""}.fa-pinterest{--fa:""}.fa-square-pinterest{--fa:""}.fa-pinterest-square{--fa:""}.fa-square-google-plus{--fa:""}.fa-google-plus-square{--fa:""}.fa-google-plus-g{--fa:""}.fa-linkedin-in{--fa:""}.fa-github-alt{--fa:""}.fa-maxcdn{--fa:""}.fa-html5{--fa:""}.fa-css3{--fa:""}.fa-btc{--fa:""}.fa-youtube{--fa:""}.fa-xing{--fa:""}.fa-square-xing{--fa:""}.fa-xing-square{--fa:""}.fa-dropbox{--fa:""}.fa-stack-overflow{--fa:""}.fa-instagram{--fa:""}.fa-flickr{--fa:""}.fa-adn{--fa:""}.fa-bitbucket{--fa:""}.fa-tumblr{--fa:""}.fa-square-tumblr{--fa:""}.fa-tumblr-square{--fa:""}.fa-apple{--fa:""}.fa-windows{--fa:""}.fa-android{--fa:""}.fa-linux{--fa:""}.fa-dribbble{--fa:""}.fa-skype{--fa:""}.fa-foursquare{--fa:""}.fa-trello{--fa:""}.fa-gratipay{--fa:""}.fa-vk{--fa:""}.fa-weibo{--fa:""}.fa-renren{--fa:""}.fa-pagelines{--fa:""}.fa-stack-exchange{--fa:""}.fa-square-vimeo{--fa:""}.fa-vimeo-square{--fa:""}.fa-slack{--fa:""}.fa-slack-hash{--fa:""}.fa-wordpress{--fa:""}.fa-openid{--fa:""}.fa-yahoo{--fa:""}.fa-google{--fa:""}.fa-reddit{--fa:""}.fa-square-reddit{--fa:""}.fa-reddit-square{--fa:""}.fa-stumbleupon-circle{--fa:""}.fa-stumbleupon{--fa:""}.fa-delicious{--fa:""}.fa-digg{--fa:""}.fa-pied-piper-pp{--fa:""}.fa-pied-piper-alt{--fa:""}.fa-drupal{--fa:""}.fa-joomla{--fa:""}.fa-behance{--fa:""}.fa-square-behance{--fa:""}.fa-behance-square{--fa:""}.fa-steam{--fa:""}.fa-square-steam{--fa:""}.fa-steam-square{--fa:""}.fa-spotify{--fa:""}.fa-deviantart{--fa:""}.fa-soundcloud{--fa:""}.fa-vine{--fa:""}.fa-codepen{--fa:""}.fa-jsfiddle{--fa:""}.fa-rebel{--fa:""}.fa-empire{--fa:""}.fa-square-git{--fa:""}.fa-git-square{--fa:""}.fa-git{--fa:""}.fa-hacker-news{--fa:""}.fa-tencent-weibo{--fa:""}.fa-qq{--fa:""}.fa-weixin{--fa:""}.fa-slideshare{--fa:""}.fa-twitch{--fa:""}.fa-yelp{--fa:""}.fa-paypal{--fa:""}.fa-google-wallet{--fa:""}.fa-cc-visa{--fa:""}.fa-cc-mastercard{--fa:""}.fa-cc-discover{--fa:""}.fa-cc-amex{--fa:""}.fa-cc-paypal{--fa:""}.fa-cc-stripe{--fa:""}.fa-lastfm{--fa:""}.fa-square-lastfm{--fa:""}.fa-lastfm-square{--fa:""}.fa-ioxhost{--fa:""}.fa-angellist{--fa:""}.fa-buysellads{--fa:""}.fa-connectdevelop{--fa:""}.fa-dashcube{--fa:""}.fa-forumbee{--fa:""}.fa-leanpub{--fa:""}.fa-sellsy{--fa:""}.fa-shirtsinbulk{--fa:""}.fa-simplybuilt{--fa:""}.fa-skyatlas{--fa:""}.fa-pinterest-p{--fa:""}.fa-whatsapp{--fa:""}.fa-viacoin{--fa:""}.fa-medium{--fa:""}.fa-medium-m{--fa:""}.fa-y-combinator{--fa:""}.fa-optin-monster{--fa:""}.fa-opencart{--fa:""}.fa-expeditedssl{--fa:""}.fa-cc-jcb{--fa:""}.fa-cc-diners-club{--fa:""}.fa-creative-commons{--fa:""}.fa-gg{--fa:""}.fa-gg-circle{--fa:""}.fa-odnoklassniki{--fa:""}.fa-square-odnoklassniki{--fa:""}.fa-odnoklassniki-square{--fa:""}.fa-get-pocket{--fa:""}.fa-wikipedia-w{--fa:""}.fa-safari{--fa:""}.fa-chrome{--fa:""}.fa-firefox{--fa:""}.fa-opera{--fa:""}.fa-internet-explorer{--fa:""}.fa-contao{--fa:""}.fa-500px{--fa:""}.fa-amazon{--fa:""}.fa-houzz{--fa:""}.fa-vimeo-v{--fa:""}.fa-black-tie{--fa:""}.fa-fonticons{--fa:""}.fa-reddit-alien{--fa:""}.fa-edge{--fa:""}.fa-codiepie{--fa:""}.fa-modx{--fa:""}.fa-fort-awesome{--fa:""}.fa-usb{--fa:""}.fa-product-hunt{--fa:""}.fa-mixcloud{--fa:""}.fa-scribd{--fa:""}.fa-bluetooth{--fa:""}.fa-bluetooth-b{--fa:""}.fa-gitlab{--fa:""}.fa-wpbeginner{--fa:""}.fa-wpforms{--fa:""}.fa-envira{--fa:""}.fa-glide{--fa:""}.fa-glide-g{--fa:""}.fa-viadeo{--fa:""}.fa-square-viadeo{--fa:""}.fa-viadeo-square{--fa:""}.fa-snapchat{--fa:""}.fa-snapchat-ghost{--fa:""}.fa-square-snapchat{--fa:""}.fa-snapchat-square{--fa:""}.fa-pied-piper{--fa:""}.fa-first-order{--fa:""}.fa-yoast{--fa:""}.fa-themeisle{--fa:""}.fa-google-plus{--fa:""}.fa-font-awesome{--fa:""}.fa-font-awesome-flag{--fa:""}.fa-font-awesome-logo-full{--fa:""}.fa-linode{--fa:""}.fa-quora{--fa:""}.fa-free-code-camp{--fa:""}.fa-telegram{--fa:""}.fa-telegram-plane{--fa:""}.fa-bandcamp{--fa:""}.fa-grav{--fa:""}.fa-etsy{--fa:""}.fa-imdb{--fa:""}.fa-ravelry{--fa:""}.fa-sellcast{--fa:""}.fa-superpowers{--fa:""}.fa-wpexplorer{--fa:""}.fa-meetup{--fa:""}.fa-square-font-awesome-stroke{--fa:""}.fa-font-awesome-alt{--fa:""}.fa-accessible-icon{--fa:""}.fa-accusoft{--fa:""}.fa-adversal{--fa:""}.fa-affiliatetheme{--fa:""}.fa-algolia{--fa:""}.fa-amilia{--fa:""}.fa-angrycreative{--fa:""}.fa-app-store{--fa:""}.fa-app-store-ios{--fa:""}.fa-apper{--fa:""}.fa-asymmetrik{--fa:""}.fa-audible{--fa:""}.fa-avianex{--fa:""}.fa-aws{--fa:""}.fa-bimobject{--fa:""}.fa-bitcoin{--fa:""}.fa-bity{--fa:""}.fa-blackberry{--fa:""}.fa-blogger{--fa:""}.fa-blogger-b{--fa:""}.fa-buromobelexperte{--fa:""}.fa-centercode{--fa:""}.fa-cloudscale{--fa:""}.fa-cloudsmith{--fa:""}.fa-cloudversify{--fa:""}.fa-cpanel{--fa:""}.fa-css3-alt{--fa:""}.fa-cuttlefish{--fa:""}.fa-d-and-d{--fa:""}.fa-deploydog{--fa:""}.fa-deskpro{--fa:""}.fa-digital-ocean{--fa:""}.fa-discord{--fa:""}.fa-discourse{--fa:""}.fa-dochub{--fa:""}.fa-docker{--fa:""}.fa-draft2digital{--fa:""}.fa-square-dribbble{--fa:""}.fa-dribbble-square{--fa:""}.fa-dyalog{--fa:""}.fa-earlybirds{--fa:""}.fa-erlang{--fa:""}.fa-facebook-f{--fa:""}.fa-facebook-messenger{--fa:""}.fa-firstdraft{--fa:""}.fa-fonticons-fi{--fa:""}.fa-fort-awesome-alt{--fa:""}.fa-freebsd{--fa:""}.fa-gitkraken{--fa:""}.fa-gofore{--fa:""}.fa-goodreads{--fa:""}.fa-goodreads-g{--fa:""}.fa-google-drive{--fa:""}.fa-google-play{--fa:""}.fa-gripfire{--fa:""}.fa-grunt{--fa:""}.fa-gulp{--fa:""}.fa-square-hacker-news{--fa:""}.fa-hacker-news-square{--fa:""}.fa-hire-a-helper{--fa:""}.fa-hotjar{--fa:""}.fa-hubspot{--fa:""}.fa-itunes{--fa:""}.fa-itunes-note{--fa:""}.fa-jenkins{--fa:""}.fa-joget{--fa:""}.fa-js{--fa:""}.fa-square-js{--fa:""}.fa-js-square{--fa:""}.fa-keycdn{--fa:""}.fa-kickstarter{--fa:""}.fa-square-kickstarter{--fa:""}.fa-kickstarter-k{--fa:""}.fa-laravel{--fa:""}.fa-line{--fa:""}.fa-lyft{--fa:""}.fa-magento{--fa:""}.fa-medapps{--fa:""}.fa-medrt{--fa:""}.fa-microsoft{--fa:""}.fa-mix{--fa:""}.fa-mizuni{--fa:""}.fa-monero{--fa:""}.fa-napster{--fa:""}.fa-node-js{--fa:""}.fa-npm{--fa:""}.fa-ns8{--fa:""}.fa-nutritionix{--fa:""}.fa-page4{--fa:""}.fa-palfed{--fa:""}.fa-patreon{--fa:""}.fa-periscope{--fa:""}.fa-phabricator{--fa:""}.fa-phoenix-framework{--fa:""}.fa-playstation{--fa:""}.fa-pushed{--fa:""}.fa-python{--fa:""}.fa-red-river{--fa:""}.fa-wpressr{--fa:""}.fa-rendact{--fa:""}.fa-replyd{--fa:""}.fa-resolving{--fa:""}.fa-rocketchat{--fa:""}.fa-rockrms{--fa:""}.fa-schlix{--fa:""}.fa-searchengin{--fa:""}.fa-servicestack{--fa:""}.fa-sistrix{--fa:""}.fa-speakap{--fa:""}.fa-staylinked{--fa:""}.fa-steam-symbol{--fa:""}.fa-sticker-mule{--fa:""}.fa-studiovinari{--fa:""}.fa-supple{--fa:""}.fa-uber{--fa:""}.fa-uikit{--fa:""}.fa-uniregistry{--fa:""}.fa-untappd{--fa:""}.fa-ussunnah{--fa:""}.fa-vaadin{--fa:""}.fa-viber{--fa:""}.fa-vimeo{--fa:""}.fa-vnv{--fa:""}.fa-square-whatsapp{--fa:""}.fa-whatsapp-square{--fa:""}.fa-whmcs{--fa:""}.fa-wordpress-simple{--fa:""}.fa-xbox{--fa:""}.fa-yandex{--fa:""}.fa-yandex-international{--fa:""}.fa-apple-pay{--fa:""}.fa-cc-apple-pay{--fa:""}.fa-fly{--fa:""}.fa-node{--fa:""}.fa-osi{--fa:""}.fa-react{--fa:""}.fa-autoprefixer{--fa:""}.fa-less{--fa:""}.fa-sass{--fa:""}.fa-vuejs{--fa:""}.fa-angular{--fa:""}.fa-aviato{--fa:""}.fa-ember{--fa:""}.fa-gitter{--fa:""}.fa-hooli{--fa:""}.fa-strava{--fa:""}.fa-stripe{--fa:""}.fa-stripe-s{--fa:""}.fa-typo3{--fa:""}.fa-amazon-pay{--fa:""}.fa-cc-amazon-pay{--fa:""}.fa-ethereum{--fa:""}.fa-korvue{--fa:""}.fa-elementor{--fa:""}.fa-square-youtube{--fa:""}.fa-youtube-square{--fa:""}.fa-flipboard{--fa:""}.fa-hips{--fa:""}.fa-php{--fa:""}.fa-quinscape{--fa:""}.fa-readme{--fa:""}.fa-java{--fa:""}.fa-pied-piper-hat{--fa:""}.fa-creative-commons-by{--fa:""}.fa-creative-commons-nc{--fa:""}.fa-creative-commons-nc-eu{--fa:""}.fa-creative-commons-nc-jp{--fa:""}.fa-creative-commons-nd{--fa:""}.fa-creative-commons-pd{--fa:""}.fa-creative-commons-pd-alt{--fa:""}.fa-creative-commons-remix{--fa:""}.fa-creative-commons-sa{--fa:""}.fa-creative-commons-sampling{--fa:""}.fa-creative-commons-sampling-plus{--fa:""}.fa-creative-commons-share{--fa:""}.fa-creative-commons-zero{--fa:""}.fa-ebay{--fa:""}.fa-keybase{--fa:""}.fa-mastodon{--fa:""}.fa-r-project{--fa:""}.fa-researchgate{--fa:""}.fa-teamspeak{--fa:""}.fa-first-order-alt{--fa:""}.fa-fulcrum{--fa:""}.fa-galactic-republic{--fa:""}.fa-galactic-senate{--fa:""}.fa-jedi-order{--fa:""}.fa-mandalorian{--fa:""}.fa-old-republic{--fa:""}.fa-phoenix-squadron{--fa:""}.fa-sith{--fa:""}.fa-trade-federation{--fa:""}.fa-wolf-pack-battalion{--fa:""}.fa-hornbill{--fa:""}.fa-mailchimp{--fa:""}.fa-megaport{--fa:""}.fa-nimblr{--fa:""}.fa-rev{--fa:""}.fa-shopware{--fa:""}.fa-squarespace{--fa:""}.fa-themeco{--fa:""}.fa-weebly{--fa:""}.fa-wix{--fa:""}.fa-ello{--fa:""}.fa-hackerrank{--fa:""}.fa-kaggle{--fa:""}.fa-markdown{--fa:""}.fa-neos{--fa:""}.fa-zhihu{--fa:""}.fa-alipay{--fa:""}.fa-the-red-yeti{--fa:""}.fa-critical-role{--fa:""}.fa-d-and-d-beyond{--fa:""}.fa-dev{--fa:""}.fa-fantasy-flight-games{--fa:""}.fa-wizards-of-the-coast{--fa:""}.fa-think-peaks{--fa:""}.fa-reacteurope{--fa:""}.fa-artstation{--fa:""}.fa-atlassian{--fa:""}.fa-canadian-maple-leaf{--fa:""}.fa-centos{--fa:""}.fa-confluence{--fa:""}.fa-dhl{--fa:""}.fa-diaspora{--fa:""}.fa-fedex{--fa:""}.fa-fedora{--fa:""}.fa-figma{--fa:""}.fa-intercom{--fa:""}.fa-invision{--fa:""}.fa-jira{--fa:""}.fa-mendeley{--fa:""}.fa-raspberry-pi{--fa:""}.fa-redhat{--fa:""}.fa-sketch{--fa:""}.fa-sourcetree{--fa:""}.fa-suse{--fa:""}.fa-ubuntu{--fa:""}.fa-ups{--fa:""}.fa-usps{--fa:""}.fa-yarn{--fa:""}.fa-airbnb{--fa:""}.fa-battle-net{--fa:""}.fa-bootstrap{--fa:""}.fa-buffer{--fa:""}.fa-chromecast{--fa:""}.fa-evernote{--fa:""}.fa-itch-io{--fa:""}.fa-salesforce{--fa:""}.fa-speaker-deck{--fa:""}.fa-symfony{--fa:""}.fa-waze{--fa:""}.fa-yammer{--fa:""}.fa-git-alt{--fa:""}.fa-stackpath{--fa:""}.fa-cotton-bureau{--fa:""}.fa-buy-n-large{--fa:""}.fa-mdb{--fa:""}.fa-orcid{--fa:""}.fa-swift{--fa:""}.fa-umbraco{--fa:""}:root,:host{--fa-family-classic:"Font Awesome 7 Pro";--fa-font-light:normal 300 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:300;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-light-300.woff2)}.fal{--fa-family:var(--fa-family-classic);--fa-style:300}.fa-classic{--fa-family:var(--fa-family-classic)}.fa-light{--fa-style:300}:root,:host{--fa-family-classic:"Font Awesome 7 Pro";--fa-font-regular:normal 400 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-regular-400.woff2)}.far{--fa-family:var(--fa-family-classic);--fa-style:400}.fa-classic{--fa-family:var(--fa-family-classic)}.fa-regular{--fa-style:400}:root,:host{--fa-family-classic:"Font Awesome 7 Pro";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:900;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-solid-900.woff2)}.fas{--fa-family:var(--fa-family-classic);--fa-style:900}.fa-classic{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}:root,:host{--fa-family-classic:"Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Pro";font-style:normal;font-weight:100;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-thin-100.woff2)}.fat{--fa-family:var(--fa-family-classic);--fa-style:100}.fa-classic{--fa-family:var(--fa-family-classic)}.fa-thin{--fa-style:100}:root,:host{--fa-family-duotone:"Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 var(--fa-family-duotone);--fa-style-family-duotone:var(--fa-family-duotone)}@font-face{font-family:"Font Awesome 7 Duotone";font-style:normal;font-weight:300;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-duotone-light-300.woff2)}.fadl{--fa-family:var(--fa-family-duotone);--fa-style:300;position:relative;letter-spacing:normal}.fa-duotone{--fa-family:var(--fa-family-duotone);position:relative;letter-spacing:normal}.fa-light{--fa-style:300}.fadl:before,.fa-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fadl:after,.fa-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadl:before,.fa-swap-opacity .fa-duotone:before,.fa-swap-opacity.fadl:before,.fa-swap-opacity.fa-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadl:after,.fa-swap-opacity .fa-duotone:after,.fa-swap-opacity.fadl:after,.fa-swap-opacity.fa-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fadl,.fa-li.fa-duotone,.fa-stack-1x.fadl,.fa-stack-1x.fa-duotone,.fa-stack-2x.fadl,.fa-stack-2x.fa-duotone{position:absolute}:root,:host{--fa-family-duotone:"Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 var(--fa-family-duotone);--fa-style-family-duotone:var(--fa-family-duotone)}@font-face{font-family:"Font Awesome 7 Duotone";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-duotone-regular-400.woff2)}.fadr{--fa-family:var(--fa-family-duotone);--fa-style:400;position:relative;letter-spacing:normal}.fa-duotone{--fa-family:var(--fa-family-duotone);position:relative;letter-spacing:normal}.fa-regular{--fa-style:400}.fadr:before,.fa-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fadr:after,.fa-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadr:before,.fa-swap-opacity .fa-duotone:before,.fa-swap-opacity.fadr:before,.fa-swap-opacity.fa-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadr:after,.fa-swap-opacity .fa-duotone:after,.fa-swap-opacity.fadr:after,.fa-swap-opacity.fa-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fadr,.fa-li.fa-duotone,.fa-stack-1x.fadr,.fa-stack-1x.fa-duotone,.fa-stack-2x.fadr,.fa-stack-2x.fa-duotone{position:absolute}:root,:host{--fa-family-duotone:"Font Awesome 7 Duotone";--fa-font-duotone:normal 900 1em/1 var(--fa-family-duotone);--fa-style-family-duotone:var(--fa-family-duotone)}@font-face{font-family:"Font Awesome 7 Duotone";font-style:normal;font-weight:900;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-duotone-900.woff2)}.fad,.fa-duotone{--fa-family:var(--fa-family-duotone);--fa-style:900;position:relative;letter-spacing:normal}.fad:before,.fa-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fad:after,.fa-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fad:before,.fa-swap-opacity .fa-duotone:before,.fad.fa-swap-opacity:before,.fa-duotone.fa-swap-opacity:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fad:after,.fa-swap-opacity .fa-duotone:after,.fad.fa-swap-opacity:after,.fa-duotone.fa-swap-opacity:after{opacity:var(--fa-primary-opacity,1)}.fad.fa-li,.fa-duotone.fa-li,.fad.fa-stack-1x,.fa-duotone.fa-stack-1x,.fad.fa-stack-2x,.fa-duotone.fa-stack-2x{position:absolute}:root,:host{--fa-family-duotone:"Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 var(--fa-family-duotone);--fa-style-family-duotone:var(--fa-family-duotone)}@font-face{font-family:"Font Awesome 7 Duotone";font-style:normal;font-weight:100;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-duotone-thin-100.woff2)}.fadt{--fa-family:var(--fa-family-duotone);--fa-style:100;position:relative;letter-spacing:normal}.fa-duotone{--fa-family:var(--fa-family-duotone);position:relative;letter-spacing:normal}.fa-thin{--fa-style:100}.fadt:before,.fa-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fadt:after,.fa-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadt:before,.fa-swap-opacity .fa-duotone:before,.fa-swap-opacity.fadt:before,.fa-swap-opacity.fa-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fadt:after,.fa-swap-opacity .fa-duotone:after,.fa-swap-opacity.fadt:after,.fa-swap-opacity.fa-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fadt,.fa-li.fa-duotone,.fa-stack-1x.fadt,.fa-stack-1x.fa-duotone,.fa-stack-2x.fadt,.fa-stack-2x.fa-duotone{position:absolute}:root,:host{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:300;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-light-300.woff2)}.fasl{--fa-family:var(--fa-family-sharp);--fa-style:300}.fa-sharp{--fa-family:var(--fa-family-sharp)}.fa-light{--fa-style:300}:root,:host{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-regular-400.woff2)}.fasr{--fa-family:var(--fa-family-sharp);--fa-style:400}.fa-sharp{--fa-family:var(--fa-family-sharp)}.fa-regular{--fa-style:400}:root,:host{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-solid:normal 900 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:900;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-solid-900.woff2)}.fass{--fa-family:var(--fa-family-sharp);--fa-style:900}.fa-sharp{--fa-family:var(--fa-family-sharp)}.fa-solid{--fa-style:900}:root,:host{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:100;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-thin-100.woff2)}.fast{--fa-family:var(--fa-family-sharp);--fa-style:100}.fa-sharp{--fa-family:var(--fa-family-sharp)}.fa-thin{--fa-style:100}:root,:host{--fa-family-sharp-duotone:"Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 var(--fa-family-sharp-duotone);--fa-style-family-sharp-duotone:var(--fa-family-sharp-duotone)}@font-face{font-family:"Font Awesome 7 Sharp Duotone";font-style:normal;font-weight:300;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-duotone-light-300.woff2)}.fasdl{--fa-family:var(--fa-family-sharp-duotone);--fa-style:300;position:relative;letter-spacing:normal}.fa-sharp-duotone{--fa-family:var(--fa-family-sharp-duotone);position:relative;letter-spacing:normal}.fa-light{--fa-style:300}.fasdl:before,.fa-sharp-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fasdl:after,.fa-sharp-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdl:before,.fa-swap-opacity .fa-sharp-duotone:before,.fa-swap-opacity.fasdl:before,.fa-swap-opacity.fa-sharp-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdl:after,.fa-swap-opacity .fa-sharp-duotone:after,.fa-swap-opacity.fasdl:after,.fa-swap-opacity.fa-sharp-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fasdl,.fa-li.fa-sharp-duotone,.fa-stack-1x.fasdl,.fa-stack-1x.fa-sharp-duotone,.fa-stack-2x.fasdl,.fa-stack-2x.fa-sharp-duotone{position:absolute}:root,:host{--fa-family-sharp-duotone:"Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 var(--fa-family-sharp-duotone);--fa-style-family-sharp-duotone:var(--fa-family-sharp-duotone)}@font-face{font-family:"Font Awesome 7 Sharp Duotone";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-duotone-regular-400.woff2)}.fasdr{--fa-family:var(--fa-family-sharp-duotone);--fa-style:400;position:relative;letter-spacing:normal}.fa-sharp-duotone{--fa-family:var(--fa-family-sharp-duotone);position:relative;letter-spacing:normal}.fa-regular{--fa-style:400}.fasdr:before,.fa-sharp-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fasdr:after,.fa-sharp-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdr:before,.fa-swap-opacity .fa-sharp-duotone:before,.fa-swap-opacity.fasdr:before,.fa-swap-opacity.fa-sharp-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdr:after,.fa-swap-opacity .fa-sharp-duotone:after,.fa-swap-opacity.fasdr:after,.fa-swap-opacity.fa-sharp-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fasdr,.fa-li.fa-sharp-duotone,.fa-stack-1x.fasdr,.fa-stack-1x.fa-sharp-duotone,.fa-stack-2x.fasdr,.fa-stack-2x.fa-sharp-duotone{position:absolute}:root,:host{--fa-family-sharp-duotone:"Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-solid:normal 900 1em/1 var(--fa-family-sharp-duotone);--fa-style-family-sharp-duotone:var(--fa-family-sharp-duotone)}@font-face{font-family:"Font Awesome 7 Sharp Duotone";font-style:normal;font-weight:900;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-duotone-solid-900.woff2)}.fasds{--fa-family:var(--fa-family-sharp-duotone);--fa-style:900;position:relative;letter-spacing:normal}.fa-sharp-duotone{--fa-family:var(--fa-family-sharp-duotone);position:relative;letter-spacing:normal}.fa-solid{--fa-style:900}.fasds:before,.fa-sharp-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fasds:after,.fa-sharp-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasds:before,.fa-swap-opacity .fa-sharp-duotone:before,.fa-swap-opacity.fasds:before,.fa-swap-opacity.fa-sharp-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasds:after,.fa-swap-opacity .fa-sharp-duotone:after,.fa-swap-opacity.fasds:after,.fa-swap-opacity.fa-sharp-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fasds,.fa-li.fa-sharp-duotone,.fa-stack-1x.fasds,.fa-stack-1x.fa-sharp-duotone,.fa-stack-2x.fasds,.fa-stack-2x.fa-sharp-duotone{position:absolute}:root,:host{--fa-family-sharp-duotone:"Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 var(--fa-family-sharp-duotone);--fa-style-family-sharp-duotone:var(--fa-family-sharp-duotone)}@font-face{font-family:"Font Awesome 7 Sharp Duotone";font-style:normal;font-weight:100;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-duotone-thin-100.woff2)}.fasdt{--fa-family:var(--fa-family-sharp-duotone);--fa-style:100;position:relative;letter-spacing:normal}.fa-sharp-duotone{--fa-family:var(--fa-family-sharp-duotone);position:relative;letter-spacing:normal}.fa-thin{--fa-style:100}.fasdt:before,.fa-sharp-duotone:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fasdt:after,.fa-sharp-duotone:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdt:before,.fa-swap-opacity .fa-sharp-duotone:before,.fa-swap-opacity.fasdt:before,.fa-swap-opacity.fa-sharp-duotone:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity .fasdt:after,.fa-swap-opacity .fa-sharp-duotone:after,.fa-swap-opacity.fasdt:after,.fa-swap-opacity.fa-sharp-duotone:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fasdt,.fa-li.fa-sharp-duotone,.fa-stack-1x.fasdt,.fa-stack-1x.fa-sharp-duotone,.fa-stack-2x.fasdt,.fa-stack-2x.fa-sharp-duotone{position:absolute}
/*!
 * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:300;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-light-300.woff2)}.fasl{--fa-style:300}.fa-sharp,.fasl{--fa-family:var(--fa-family-sharp)}.fa-light{--fa-style:300}
/*!
 * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:400;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-regular-400.woff2)}.fasr{--fa-style:400}.fa-sharp,.fasr{--fa-family:var(--fa-family-sharp)}.fa-regular{--fa-style:400}
/*!
 * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-solid:normal 900 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:900;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-solid-900.woff2)}.fass{--fa-style:900}.fa-sharp,.fass{--fa-family:var(--fa-family-sharp)}.fa-solid{--fa-style:900}
/*!
 * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-sharp:"Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 var(--fa-family-sharp);--fa-style-family-sharp:var(--fa-family-sharp)}@font-face{font-family:"Font Awesome 7 Sharp";font-style:normal;font-weight:100;font-display:block;src:url(/app/build/img/fontawesome/webfonts/fa-sharp-thin-100.woff2)}.fast{--fa-style:100}.fa-sharp,.fast{--fa-family:var(--fa-family-sharp)}.fa-thin{--fa-style:100}
@charset "utf-8";.fak.fa-broken-link-circle-1,.fa-kit.fa-broken-link-circle-1{--fa:""}.fak.fa-broken-link-circle-2,.fa-kit.fa-broken-link-circle-2{--fa:""}.fak.fa-calendar-circle-right-up-arrow-solid,.fa-kit.fa-calendar-circle-right-up-arrow-solid{--fa:""}.fak.fa-calendar-up-right-arrow-regular,.fa-kit.fa-calendar-up-right-arrow-regular{--fa:""}.fak.fa-incomplete-check-icon,.fa-kit.fa-incomplete-check-icon{--fa:""}.fak.fa-multi-select,.fa-kit.fa-multi-select{--fa:""}.fak.fa-select-all-deselected,.fa-kit.fa-select-all-deselected{--fa:""}.fak.fa-select-all-selected,.fa-kit.fa-select-all-selected{--fa:""}.fak.fa-solid-eye-gear,.fa-kit.fa-solid-eye-gear{--fa:""}.fak.fa-undo-resolved-button,.fa-kit.fa-undo-resolved-button{--fa:""}.fak,.fa-kit{--fa-family:"Font Awesome Kit";--fa-style:400;--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome Kit"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,400);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}.fak:before,.fa-kit:before{content:var(--fa)/""}@supports not (content:''/''){.fak:before,.fa-kit:before{content:var(--fa)}}@font-face{font-family:Font Awesome Kit;font-style:normal;font-display:block;src:url(/app/build/img/fontawesome/webfonts/custom-icons.woff2)format("woff2")}
:root {
    --white: #fff;
    --sizes-button-default: 35px;
    --sizes-button-mini: 24px;
    --sizes-button-small: 28px;
    --sizes-field-default: 35px;
    --border-lg: 4px;
    --border-md: 3px;
    --border-sm: 2px;
    --border-xs: 1px;
    --border-zero: 0px;
    --border-radius-0: 0px;
    --border-radius-circle: 100px;
    --border-radius-default: 4px;
    --border-radius-lg: 8px;
    --padding-0: 0rem;
    --padding-2xl: 2.5rem;
    --padding-3xl: 3rem;
    --padding-lg: 1.5rem;
    --padding-md: 1rem;
    --padding-sm: 0.75rem;
    --padding-xl: 1.75rem;
    --padding-xs: 0.5rem;
    --padding-xxs: 0.25rem;
    --font-family-body: Open Sans;
    --font-family-heading: Open Sans;
    --font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
    --font-size-body-small: 11px;
    --font-size-h1: 1.5rem;
    --font-size-h2: 1.25rem;
    --font-size-h3: 1rem;
    --font-size-h4: 1rem;
    --font-size-h5: 0.875rem;
    --font-size-h6: 0.75rem;
    --font-size-medium: 0.875rem;
    --font-size-small: 0.75rem;
    --font-size-extra-small: 0.6875rem;
    --font-weight-bold: 700;
    --font-weight-regular: 400;
    --font-weight-semibold: 600;
    --text-accent: #4c5172;
    --text-danger-strong: #6a042a;
    --text-danger: #a3003c;
    --text-default: #222430;
    --text-disabled: #6a708f;
    --text-emphasis: #3d425c;
    --text-highlight: #cbbefc;
    --text-info-dark: #293b6b;
    --text-info: #4462b2;
    --text-inverse: #fff;
    --text-link-color: #7059e8;
    --text-link-hover-color: #4f3fa0;
    --text-primary-emphasis: #403577;
    --text-primary-strong: #322862;
    --text-primary: #4f3fa0;
    --text-subtle: #6a708f;
    --text-success: #03431c;
    --text-warning: #b65800;
    --surface-accent: #e2e3e9;
    --surface-container-default: rgba(152, 155, 182, 0.15);
    --surface-container-hover: rgba(152, 155, 182, 0.2);
    --surface-container-selected: rgba(152, 155, 182, 0.3);
    --surface-danger-strong: #880434;
    --surface-danger-subtle: #feecf2;
    --surface-danger: #a3003c;
    --surface-data-monochromatic-dark: #105960;
    --surface-data-monochromatic-light: #86d4db;
    --surface-data-monochromatic: #167983;
    --surface-data-primary: #ff8d6c;
    --surface-data-quatery: #0295b2;
    --surface-data-recessive: #babfd1;
    --surface-data-secondary: #6881c5;
    --surface-data-strong: #1a0142;
    --surface-data-tertiary: #e869a8;
    --surface-data-warning: #b65800;
    --surface-default: #fff;
    --surface-disabled-light: #f1f1f4;
    --surface-disabled: #989bb6;
    --surface-emphasis: #4c5172;
    --surface-eng-00: #ff8d6c;
    --surface-eng-01: #0295b2;
    --surface-eng-02: #e869a8;
    --surface-eng-03: #babfd1;
    --surface-eng-04: #6881c5;
    --surface-focus-danger: #cd0f53;
    --surface-info-accent: #dae0f1;
    --surface-info-subtle: #edf0f8;
    --surface-inverse-blue: #27233d;
    --surface-inverse: #222430;
    --surface-list-item-hover: #f1f1f4;
    --surface-list-item-selected-dark: #4f3fa0;
    --surface-list-item-selected-light: #f0effb;
    --surface-nav-bg: rgba(255, 255, 255, 0.3);
    --surface-overlay: rgba(0, 0, 0, 0.5);
    --surface-primary-accent: #dedaf4;
    --surface-primary-emphasis: #403577;
    --surface-primary-focus: #9b8bf0;
    --surface-primary-strong: #322862;
    --surface-primary-subtle: #f0effb;
    --surface-primary: #4f3fa0;
    --surface-strong: #3d425c;
    --surface-subtle-dark: #f1f1f4;
    --surface-subtle-light: #f8f8f8;
    --surface-success-accent: #c9efd8;
    --surface-success-strong: #085326;
    --surface-success-subtle: #e1faeb;
    --surface-success: #078138;
    --surface-warning: #fff0e0;
    --icon-size-2xl: 48px;
    --icon-size-default: 14px;
    --icon-size-lg: 20px;
    --icon-size-sm: 10px;
    --icon-size-xl: 32px;
    --icon-size-xxl: 40px;
    --icon-accent: #4c5172;
    --icon-danger: #a3003c;
    --icon-default: #222430;
    --icon-disabled: #989bb6;
    --icon-emphasis: #3d425c;
    --icon-info-strong: #1b2646;
    --icon-info: #4462b2;
    --icon-inverse: #fff;
    --icon-link-hover: #4f3fa0;
    --icon-link: #7059e8;
    --icon-primary-emphasis: #403577;
    --icon-primary-strong: #322862;
    --icon-primary: #4f3fa0;
    --icon-subtle: #6a708f;
    --icon-success-strong: #03431c;
    --icon-success: #078138;
    --icon-warning: #b65800;
    --beta-strong: #005a6c;
    --beta-subtle: #cff4fc;
    --beta: #6edff6;
    --danger-emphasis: #880434;
    --danger-strong: #6a042a;
    --danger-subtle: #faaec9;
    --dayshape-orange: #ff593b;
    --info-strong: #1b2646;
    --info-subtle: #dae0f1;
    --primary-accent: #dedaf4;
    --primary-emphasis: #403577;
    --primary-strong: #322862;
    --primary-subtle: #f0effb;
    --secondary-accent: #babfd1;
    --secondary-emphasis: #4c5172;
    --secondary-strong: #3d425c;
    --secondary-subtle: #f1f1f4;
    --success-background: #e1faeb;
    --success-strong: #03431c;
    --success-subtle: #c9efd8;
    --warning-strong: #804003;
    --warning-subtle: #ffd9ad;
    --border-accent: #4c5172;
    --border-danger-strong: #6a042a;
    --border-danger: #a3003c;
    --border-dayshape: #ff8d6c;
    --border-default: #babfd1;
    --border-disabled-dark: #e2e3e9;
    --border-disabled: #f1f1f4;
    --border-emphasis: #6a708f;
    --border-info: #4462b2;
    --border-inverse: #fff;
    --border-primary-accent: #c5bee8;
    --border-primary-emphasis: #403577;
    --border-primary-focus: #9b8bf0;
    --border-primary-strong: #322862;
    --border-primary-subtle: #dedaf4;
    --border-primary: #4f3fa0;
    --border-subtle: #e2e3e9;
    --border-success-strong: #03431c;
    --border-success-subtle: #c9efd8;
    --border-success: #078138;
    --border-warning: #b65800;
    --primary: #4f3fa0;
    --secondary: #4c5172;
    --success: #078138;
    --info: #4462b2;
    --warning: #e27209;
    --danger: #a3003c;
    --light: #f8f8f8;
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --font-family-sans-serif: '"Open Sans"', '"Helvetica Neue"', '"Helvetica"', Helvetica, Arial, sans-serif;
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
    display: block;
}

body {
    margin: 0;
    font-family: '"Open Sans"', '"Helvetica Neue"', '"Helvetica"', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
    outline: 0 !important;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
    text-decoration: underline;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small {
    font-size: 80%;
}

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    color: #7059e8;
    text-decoration: none;
    background-color: transparent;
}

a:hover {
    color: #4f3fa0;
    text-decoration: underline;
}

a:not([href]):not([class]) {
    color: inherit;
    text-decoration: none;
}

a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

pre,
code,
kbd,
samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 1em;
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    -ms-overflow-style: scrollbar;
}

figure {
    margin: 0 0 1rem;
}

img {
    vertical-align: middle;
    border-style: none;
}

svg {
    overflow: hidden;
    vertical-align: middle;
}

table {
    border-collapse: collapse;
}

caption {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

button {
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

[role="button"] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0;
}

textarea {
    overflow: auto;
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    outline-offset: -2px;
    -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

output {
    display: inline-block;
}

summary {
    display: list-item;
    cursor: pointer;
}

template {
    display: none;
}

[hidden] {
    display: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
}

h1,
.h1 {
    font-size: 2.5rem;
}

h2,
.h2 {
    font-size: 2rem;
}

h3,
.h3 {
    font-size: 1.75rem;
}

h4,
.h4 {
    font-size: 1.5rem;
}

h5,
.h5 {
    font-size: 1.25rem;
}

h6,
.h6 {
    font-size: 1rem;
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: 6rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-2 {
    font-size: 5.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-3 {
    font-size: 4.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-4 {
    font-size: 3.5rem;
    font-weight: 300;
    line-height: 1.2;
}

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
    font-size: 0.875em;
    font-weight: 400;
}

mark,
.mark {
    padding: 0.2em;
    background-color: #fcf8e3;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.list-inline {
    padding-left: 0;
    list-style: none;
}

.list-inline-item {
    display: inline-block;
}

.list-inline-item:not(:last-child) {
    margin-right: 0.5rem;
}

.initialism {
    font-size: 90%;
    text-transform: uppercase;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.blockquote-footer {
    display: block;
    font-size: 0.875em;
    color: #6c757d;
}

.blockquote-footer::before {
    content: "\2014\00A0";
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: 0.25rem;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 90%;
    color: #6c757d;
}

code {
    font-size: 87.5%;
    color: #e83e8c;
    word-wrap: break-word;
}

a > code {
    color: inherit;
}

kbd {
    padding: 0.2rem 0.4rem;
    font-size: 87.5%;
    color: #fff;
    background-color: #212529;
    border-radius: 0.2rem;
}

kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700;
}

pre {
    display: block;
    font-size: 87.5%;
    color: #212529;
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

.pre-scrollable {
    max-height: 340px;
    overflow-y: scroll;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container,
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container,
    .container-sm,
    .container-md {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
        max-width: 1140px;
    }
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm,
.col-sm-auto,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md,
.col-md-auto,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg,
.col-lg-auto,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.row-cols-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
}

.row-cols-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
}

.row-cols-3 > * {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.row-cols-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
}

.row-cols-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
}

.row-cols-6 > * {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.col-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
}

.col-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.col-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
}

.col-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.col-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
}

.col-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.order-first {
    order: -1;
}

.order-last {
    order: 13;
}

.order-0 {
    order: 0;
}

.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.order-3 {
    order: 3;
}

.order-4 {
    order: 4;
}

.order-5 {
    order: 5;
}

.order-6 {
    order: 6;
}

.order-7 {
    order: 7;
}

.order-8 {
    order: 8;
}

.order-9 {
    order: 9;
}

.order-10 {
    order: 10;
}

.order-11 {
    order: 11;
}

.order-12 {
    order: 12;
}

.offset-1 {
    margin-left: 8.333333%;
}

.offset-2 {
    margin-left: 16.666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.333333%;
}

.offset-5 {
    margin-left: 41.666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.333333%;
}

.offset-8 {
    margin-left: 66.666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.333333%;
}

.offset-11 {
    margin-left: 91.666667%;
}

@media (min-width: 576px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-sm-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-sm-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-sm-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .row-cols-sm-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-sm-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-sm-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-sm-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-sm-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-sm-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-sm-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-sm-first {
        order: -1;
    }

    .order-sm-last {
        order: 13;
    }

    .order-sm-0 {
        order: 0;
    }

    .order-sm-1 {
        order: 1;
    }

    .order-sm-2 {
        order: 2;
    }

    .order-sm-3 {
        order: 3;
    }

    .order-sm-4 {
        order: 4;
    }

    .order-sm-5 {
        order: 5;
    }

    .order-sm-6 {
        order: 6;
    }

    .order-sm-7 {
        order: 7;
    }

    .order-sm-8 {
        order: 8;
    }

    .order-sm-9 {
        order: 9;
    }

    .order-sm-10 {
        order: 10;
    }

    .order-sm-11 {
        order: 11;
    }

    .order-sm-12 {
        order: 12;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.333333%;
    }

    .offset-sm-2 {
        margin-left: 16.666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.333333%;
    }

    .offset-sm-5 {
        margin-left: 41.666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.333333%;
    }

    .offset-sm-8 {
        margin-left: 66.666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.333333%;
    }

    .offset-sm-11 {
        margin-left: 91.666667%;
    }
}

@media (min-width: 768px) {
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-md-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-md-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-md-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .row-cols-md-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-md-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-md-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-md-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-md-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-md-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-md-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-md-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-md-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-md-first {
        order: -1;
    }

    .order-md-last {
        order: 13;
    }

    .order-md-0 {
        order: 0;
    }

    .order-md-1 {
        order: 1;
    }

    .order-md-2 {
        order: 2;
    }

    .order-md-3 {
        order: 3;
    }

    .order-md-4 {
        order: 4;
    }

    .order-md-5 {
        order: 5;
    }

    .order-md-6 {
        order: 6;
    }

    .order-md-7 {
        order: 7;
    }

    .order-md-8 {
        order: 8;
    }

    .order-md-9 {
        order: 9;
    }

    .order-md-10 {
        order: 10;
    }

    .order-md-11 {
        order: 11;
    }

    .order-md-12 {
        order: 12;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.333333%;
    }

    .offset-md-2 {
        margin-left: 16.666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.333333%;
    }

    .offset-md-5 {
        margin-left: 41.666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.333333%;
    }

    .offset-md-8 {
        margin-left: 66.666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.333333%;
    }

    .offset-md-11 {
        margin-left: 91.666667%;
    }
}

@media (min-width: 992px) {
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-lg-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-lg-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-lg-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .row-cols-lg-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-lg-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-lg-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-lg-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-lg-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-lg-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-lg-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-lg-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-lg-first {
        order: -1;
    }

    .order-lg-last {
        order: 13;
    }

    .order-lg-0 {
        order: 0;
    }

    .order-lg-1 {
        order: 1;
    }

    .order-lg-2 {
        order: 2;
    }

    .order-lg-3 {
        order: 3;
    }

    .order-lg-4 {
        order: 4;
    }

    .order-lg-5 {
        order: 5;
    }

    .order-lg-6 {
        order: 6;
    }

    .order-lg-7 {
        order: 7;
    }

    .order-lg-8 {
        order: 8;
    }

    .order-lg-9 {
        order: 9;
    }

    .order-lg-10 {
        order: 10;
    }

    .order-lg-11 {
        order: 11;
    }

    .order-lg-12 {
        order: 12;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.333333%;
    }

    .offset-lg-2 {
        margin-left: 16.666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.333333%;
    }

    .offset-lg-5 {
        margin-left: 41.666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.333333%;
    }

    .offset-lg-8 {
        margin-left: 66.666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.333333%;
    }

    .offset-lg-11 {
        margin-left: 91.666667%;
    }
}

@media (min-width: 1200px) {
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-xl-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-xl-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-xl-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .row-cols-xl-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-xl-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-xl-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-xl-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-xl-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-xl-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-xl-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-xl-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-xl-first {
        order: -1;
    }

    .order-xl-last {
        order: 13;
    }

    .order-xl-0 {
        order: 0;
    }

    .order-xl-1 {
        order: 1;
    }

    .order-xl-2 {
        order: 2;
    }

    .order-xl-3 {
        order: 3;
    }

    .order-xl-4 {
        order: 4;
    }

    .order-xl-5 {
        order: 5;
    }

    .order-xl-6 {
        order: 6;
    }

    .order-xl-7 {
        order: 7;
    }

    .order-xl-8 {
        order: 8;
    }

    .order-xl-9 {
        order: 9;
    }

    .order-xl-10 {
        order: 10;
    }

    .order-xl-11 {
        order: 11;
    }

    .order-xl-12 {
        order: 12;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.333333%;
    }

    .offset-xl-2 {
        margin-left: 16.666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.333333%;
    }

    .offset-xl-5 {
        margin-left: 41.666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.333333%;
    }

    .offset-xl-8 {
        margin-left: 66.666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.333333%;
    }

    .offset-xl-11 {
        margin-left: 91.666667%;
    }
}

.table {
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
}

.table th,
.table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #babfd1;
}

.table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #babfd1;
}

.table tbody + tbody {
    border-top: 2px solid #babfd1;
}

.table-sm th,
.table-sm td {
    padding: 0.3rem;
}

.table-bordered {
    border: 1px solid #babfd1;
}

.table-bordered th,
.table-bordered td {
    border: 1px solid #babfd1;
}

.table-bordered thead th,
.table-bordered thead td {
    border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
    border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
    color: #212529;
    background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
    background-color: #cec9e4;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
    border-color: #a39bce;
}

.table-hover .table-primary:hover {
    background-color: #bfb8dc;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
    background-color: #bfb8dc;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
    background-color: #cdced8;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
    border-color: #a2a5b6;
}

.table-hover .table-secondary:hover {
    background-color: #bfc0cd;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
    background-color: #bfc0cd;
}

.table-success,
.table-success > th,
.table-success > td {
    background-color: #badcc7;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
    border-color: #7ebd98;
}

.table-hover .table-success:hover {
    background-color: #a9d3b9;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
    background-color: #a9d3b9;
}

.table-info,
.table-info > th,
.table-info > td {
    background-color: #cbd3e9;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
    border-color: #9eadd7;
}

.table-hover .table-info:hover {
    background-color: #b9c4e1;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
    background-color: #b9c4e1;
}

.table-warning,
.table-warning > th,
.table-warning > td {
    background-color: #f7d8ba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
    border-color: #f0b67f;
}

.table-hover .table-warning:hover {
    background-color: #f4cba3;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
    background-color: #f4cba3;
}

.table-danger,
.table-danger > th,
.table-danger > td {
    background-color: #e5b8c8;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
    border-color: #cf7a9a;
}

.table-hover .table-danger:hover {
    background-color: #dea5ba;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
    background-color: #dea5ba;
}

.table-light,
.table-light > th,
.table-light > td {
    background-color: #fdfdfd;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
    border-color: #fbfbfb;
}

.table-hover .table-light:hover {
    background-color: #f0f0f0;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
    background-color: #f0f0f0;
}

.table-active,
.table-active > th,
.table-active > td {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
    background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
    color: #fff;
    background-color: #343a40;
    border-color: #454d55;
}

.table .thead-light th {
    color: #495057;
    background-color: #e9ecef;
    border-color: #babfd1;
}

.table-dark {
    color: #fff;
    background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
    border-color: #454d55;
}

.table-dark.table-bordered {
    border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
    .table-responsive-sm {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive-sm > .table-bordered {
        border: 0;
    }
}

@media (max-width: 767.98px) {
    .table-responsive-md {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive-md > .table-bordered {
        border: 0;
    }
}

@media (max-width: 991.98px) {
    .table-responsive-lg {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive-lg > .table-bordered {
        border: 0;
    }
}

@media (max-width: 1199.98px) {
    .table-responsive-xl {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive-xl > .table-bordered {
        border: 0;
    }
}

.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
    border: 0;
}

.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    transition:
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control {
        transition: none;
    }
}

.form-control::-ms-expand {
    background-color: transparent;
    border: 0;
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #988dd2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
    appearance: none;
}

select.form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057;
}

select.form-control:focus::-ms-value {
    color: #495057;
    background-color: #fff;
}

.form-control-file,
.form-control-range {
    display: block;
    width: 100%;
}

.col-form-label {
    padding-top: calc(0.375rem + 1px);
    padding-bottom: calc(0.375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.col-form-label-lg {
    padding-top: calc(0.5rem + 1px);
    padding-bottom: calc(0.5rem + 1px);
    font-size: 1.25rem;
    line-height: 1.5;
}

.col-form-label-sm {
    padding-top: calc(0.25rem + 1px);
    padding-bottom: calc(0.25rem + 1px);
    font-size: 0.875rem;
    line-height: 1.5;
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding: 0.375rem 0;
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.5;
    color: #212529;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
}

.form-control-plaintext.form-control-sm,
.form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0;
}

.form-control-sm {
    height: calc(1.5em + 0.5rem + 2px);
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
}

.form-control-lg {
    height: calc(1.5em + 1rem + 2px);
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}

select.form-control[size],
select.form-control[multiple] {
    height: auto;
}

textarea.form-control {
    height: auto;
}

.form-group {
    margin-bottom: 1rem;
}

.form-text {
    display: block;
    margin-top: 0.25rem;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px;
}

.form-check {
    position: relative;
    display: block;
    padding-left: 1.25rem;
}

.form-check-input {
    position: absolute;
    margin-top: 0.3rem;
    margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
    color: #6c757d;
}

.form-check-label {
    margin-bottom: 0;
}

.form-check-inline {
    display: inline-flex;
    align-items: center;
    padding-left: 0;
    margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
    position: static;
    margin-top: 0;
    margin-right: 0.3125rem;
    margin-left: 0;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #078138;
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #fff;
    background-color: rgba(7, 129, 56, 0.9);
    border-radius: 0.25rem;
}

.form-row > .col > .valid-tooltip,
.form-row > [class*="col-"] > .valid-tooltip {
    left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .form-control:valid,
.form-control.is-valid {
    border-color: #078138;
    padding-right: calc(1.5em + 0.75rem) !important;
    background-image: url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M6 10.5C8.48528 10.5 10.5 8.48528 10.5 6C10.5 3.51472 8.48528 1.5 6 1.5C3.51472 1.5 1.5 3.51472 1.5 6C1.5 8.48528 3.51472 10.5 6 10.5Z' stroke='%2353A451'/%3e%3cpath d='M8.72581 4.53931L8.2621 4.0756C8.18145 3.9748 8.02016 3.9748 7.91936 4.0756L5.07661 6.89819L3.86694 5.68851C3.76613 5.5877 3.625 5.5877 3.52419 5.68851L3.06048 6.13206C2.97984 6.23286 2.97984 6.39415 3.06048 6.4748L4.89516 8.32964C4.99597 8.43044 5.1371 8.43044 5.2379 8.32964L8.72581 4.88206C8.80645 4.78125 8.80645 4.61996 8.72581 4.53931Z' fill='%2353A451'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.was-validated select.form-control:valid,
select.form-control.is-valid {
    padding-right: 3rem !important;
    background-position: right 1.5rem center;
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid,
.custom-select.is-valid {
    border-color: #078138;
    padding-right: calc(0.75em + 2.3125rem) !important;
    background:
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
            right 0.75rem center/8px 10px no-repeat,
        #fff
            url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M6 10.5C8.48528 10.5 10.5 8.48528 10.5 6C10.5 3.51472 8.48528 1.5 6 1.5C3.51472 1.5 1.5 3.51472 1.5 6C1.5 8.48528 3.51472 10.5 6 10.5Z' stroke='%2353A451'/%3e%3cpath d='M8.72581 4.53931L8.2621 4.0756C8.18145 3.9748 8.02016 3.9748 7.91936 4.0756L5.07661 6.89819L3.86694 5.68851C3.76613 5.5877 3.625 5.5877 3.52419 5.68851L3.06048 6.13206C2.97984 6.23286 2.97984 6.39415 3.06048 6.4748L4.89516 8.32964C4.99597 8.43044 5.1371 8.43044 5.2379 8.32964L8.72581 4.88206C8.80645 4.78125 8.80645 4.61996 8.72581 4.53931Z' fill='%2353A451'/%3e%3c/svg%3e")
            center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:valid:focus,
.custom-select.is-valid:focus {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label,
.form-check-input.is-valid ~ .form-check-label {
    color: #078138;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip,
.form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label,
.custom-control-input.is-valid ~ .custom-control-label {
    color: #078138;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before,
.custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #078138;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,
.custom-control-input.is-valid:checked ~ .custom-control-label::before {
    border-color: #0ab14d;
    background-color: #0ab14d;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,
.custom-control-input.is-valid:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #078138;
}

.was-validated .custom-file-input:valid ~ .custom-file-label,
.custom-file-input.is-valid ~ .custom-file-label {
    border-color: #078138;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label,
.custom-file-input.is-valid:focus ~ .custom-file-label {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #a3003c;
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #fff;
    background-color: rgba(163, 0, 60, 0.9);
    border-radius: 0.25rem;
}

.form-row > .col > .invalid-tooltip,
.form-row > [class*="col-"] > .invalid-tooltip {
    left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: #a3003c;
    padding-right: calc(1.5em + 0.75rem) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23a3003c' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a3003c' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.was-validated select.form-control:invalid,
select.form-control.is-invalid {
    padding-right: 3rem !important;
    background-position: right 1.5rem center;
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid,
.custom-select.is-invalid {
    border-color: #a3003c;
    padding-right: calc(0.75em + 2.3125rem) !important;
    background:
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
            right 0.75rem center/8px 10px no-repeat,
        #fff
            url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23a3003c' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a3003c' stroke='none'/%3e%3c/svg%3e")
            center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:invalid:focus,
.custom-select.is-invalid:focus {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label,
.form-check-input.is-invalid ~ .form-check-label {
    color: #a3003c;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip,
.form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label,
.custom-control-input.is-invalid ~ .custom-control-label {
    color: #a3003c;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before,
.custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #a3003c;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,
.custom-control-input.is-invalid:checked ~ .custom-control-label::before {
    border-color: #d6004f;
    background-color: #d6004f;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #a3003c;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label,
.custom-file-input.is-invalid ~ .custom-file-label {
    border-color: #a3003c;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,
.custom-file-input.is-invalid:focus ~ .custom-file-label {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.form-inline {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.form-inline .form-check {
    width: 100%;
}

@media (min-width: 576px) {
    .form-inline label {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0;
    }

    .form-inline .form-group {
        display: flex;
        flex: 0 0 auto;
        flex-flow: row wrap;
        align-items: center;
        margin-bottom: 0;
    }

    .form-inline .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle;
    }

    .form-inline .form-control-plaintext {
        display: inline-block;
    }

    .form-inline .input-group,
    .form-inline .custom-select {
        width: auto;
    }

    .form-inline .form-check {
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;
        padding-left: 0;
    }

    .form-inline .form-check-input {
        position: relative;
        flex-shrink: 0;
        margin-top: 0;
        margin-right: 0.25rem;
        margin-left: 0;
    }

    .form-inline .custom-control {
        align-items: center;
        justify-content: center;
    }

    .form-inline .custom-control-label {
        margin-bottom: 0;
    }
}

.btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.25rem;
    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;
}

@media (prefers-reduced-motion: reduce) {
    .btn {
        transition: none;
    }
}

.btn:hover {
    color: #212529;
    text-decoration: none;
}

.btn:focus,
.btn.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.btn.disabled,
.btn:disabled {
    opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
    pointer-events: none;
}

.btn-primary {
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.btn-primary:hover {
    color: #fff;
    background-color: #413485;
    border-color: #3d317b;
}

.btn-primary:focus,
.btn-primary.focus {
    color: #fff;
    background-color: #413485;
    border-color: #3d317b;
    box-shadow: 0 0 0 0.2rem rgba(105, 92, 174, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #3d317b;
    border-color: #382d72;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(105, 92, 174, 0.5);
}

.btn-secondary {
    color: #fff;
    background-color: #4c5172;
    border-color: #4c5172;
}

.btn-secondary:hover {
    color: #fff;
    background-color: #3d415b;
    border-color: #383b53;
}

.btn-secondary:focus,
.btn-secondary.focus {
    color: #fff;
    background-color: #3d415b;
    border-color: #383b53;
    box-shadow: 0 0 0 0.2rem rgba(103, 107, 135, 0.5);
}

.btn-secondary.disabled,
.btn-secondary:disabled {
    color: #fff;
    background-color: #4c5172;
    border-color: #4c5172;
}

.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #383b53;
    border-color: #33364c;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(103, 107, 135, 0.5);
}

.btn-success {
    color: #fff;
    background-color: #078138;
    border-color: #078138;
}

.btn-success:hover {
    color: #fff;
    background-color: #055d28;
    border-color: #045123;
}

.btn-success:focus,
.btn-success.focus {
    color: #fff;
    background-color: #055d28;
    border-color: #045123;
    box-shadow: 0 0 0 0.2rem rgba(44, 148, 86, 0.5);
}

.btn-success.disabled,
.btn-success:disabled {
    color: #fff;
    background-color: #078138;
    border-color: #078138;
}

.btn-success:not(:disabled):not(.disabled):active,
.btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #045123;
    border-color: #04451e;
}

.btn-success:not(:disabled):not(.disabled):active:focus,
.btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(44, 148, 86, 0.5);
}

.btn-info {
    color: #fff;
    background-color: #4462b2;
    border-color: #4462b2;
}

.btn-info:hover {
    color: #fff;
    background-color: #395396;
    border-color: #364e8d;
}

.btn-info:focus,
.btn-info.focus {
    color: #fff;
    background-color: #395396;
    border-color: #364e8d;
    box-shadow: 0 0 0 0.2rem rgba(96, 122, 190, 0.5);
}

.btn-info.disabled,
.btn-info:disabled {
    color: #fff;
    background-color: #4462b2;
    border-color: #4462b2;
}

.btn-info:not(:disabled):not(.disabled):active,
.btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #364e8d;
    border-color: #324984;
}

.btn-info:not(:disabled):not(.disabled):active:focus,
.btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(96, 122, 190, 0.5);
}

.btn-warning {
    color: #fff;
    background-color: #e27209;
    border-color: #e27209;
}

.btn-warning:hover {
    color: #fff;
    background-color: #bd5f08;
    border-color: #b15907;
}

.btn-warning:focus,
.btn-warning.focus {
    color: #fff;
    background-color: #bd5f08;
    border-color: #b15907;
    box-shadow: 0 0 0 0.2rem rgba(230, 135, 46, 0.5);
}

.btn-warning.disabled,
.btn-warning:disabled {
    color: #fff;
    background-color: #e27209;
    border-color: #e27209;
}

.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #b15907;
    border-color: #a55307;
}

.btn-warning:not(:disabled):not(.disabled):active:focus,
.btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(230, 135, 46, 0.5);
}

.btn-danger {
    color: #fff;
    background-color: #a3003c;
    border-color: #a3003c;
}

.btn-danger:hover {
    color: #fff;
    background-color: #7d002e;
    border-color: #700029;
}

.btn-danger:focus,
.btn-danger.focus {
    color: #fff;
    background-color: #7d002e;
    border-color: #700029;
    box-shadow: 0 0 0 0.2rem rgba(177, 38, 89, 0.5);
}

.btn-danger.disabled,
.btn-danger:disabled {
    color: #fff;
    background-color: #a3003c;
    border-color: #a3003c;
}

.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #700029;
    border-color: #630025;
}

.btn-danger:not(:disabled):not(.disabled):active:focus,
.btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(177, 38, 89, 0.5);
}

.btn-light {
    color: #212529;
    background-color: #f8f8f8;
    border-color: #f8f8f8;
}

.btn-light:hover {
    color: #212529;
    background-color: #e5e5e5;
    border-color: #dfdfdf;
}

.btn-light:focus,
.btn-light.focus {
    color: #212529;
    background-color: #e5e5e5;
    border-color: #dfdfdf;
    box-shadow: 0 0 0 0.2rem rgba(216, 216, 217, 0.5);
}

.btn-light.disabled,
.btn-light:disabled {
    color: #212529;
    background-color: #f8f8f8;
    border-color: #f8f8f8;
}

.btn-light:not(:disabled):not(.disabled):active,
.btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
    color: #212529;
    background-color: #dfdfdf;
    border-color: #d8d8d8;
}

.btn-light:not(:disabled):not(.disabled):active:focus,
.btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(216, 216, 217, 0.5);
}

.btn-outline-primary {
    color: #4f3fa0;
    border-color: #4f3fa0;
}

.btn-outline-primary:hover {
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.5);
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
    color: #4f3fa0;
    background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.5);
}

.btn-outline-secondary {
    color: #4c5172;
    border-color: #4c5172;
}

.btn-outline-secondary:hover {
    color: #fff;
    background-color: #4c5172;
    border-color: #4c5172;
}

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
    box-shadow: 0 0 0 0.2rem rgba(76, 81, 114, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
    color: #4c5172;
    background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
    color: #fff;
    background-color: #4c5172;
    border-color: #4c5172;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(76, 81, 114, 0.5);
}

.btn-outline-success {
    color: #078138;
    border-color: #078138;
}

.btn-outline-success:hover {
    color: #fff;
    background-color: #078138;
    border-color: #078138;
}

.btn-outline-success:focus,
.btn-outline-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.5);
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
    color: #078138;
    background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active,
.btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
    color: #fff;
    background-color: #078138;
    border-color: #078138;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus,
.btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.5);
}

.btn-outline-info {
    color: #4462b2;
    border-color: #4462b2;
}

.btn-outline-info:hover {
    color: #fff;
    background-color: #4462b2;
    border-color: #4462b2;
}

.btn-outline-info:focus,
.btn-outline-info.focus {
    box-shadow: 0 0 0 0.2rem rgba(68, 98, 178, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
    color: #4462b2;
    background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
    color: #fff;
    background-color: #4462b2;
    border-color: #4462b2;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(68, 98, 178, 0.5);
}

.btn-outline-warning {
    color: #e27209;
    border-color: #e27209;
}

.btn-outline-warning:hover {
    color: #fff;
    background-color: #e27209;
    border-color: #e27209;
}

.btn-outline-warning:focus,
.btn-outline-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(226, 114, 9, 0.5);
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
    color: #e27209;
    background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
    color: #fff;
    background-color: #e27209;
    border-color: #e27209;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus,
.btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(226, 114, 9, 0.5);
}

.btn-outline-danger {
    color: #a3003c;
    border-color: #a3003c;
}

.btn-outline-danger:hover {
    color: #fff;
    background-color: #a3003c;
    border-color: #a3003c;
}

.btn-outline-danger:focus,
.btn-outline-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.5);
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
    color: #a3003c;
    background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
    color: #fff;
    background-color: #a3003c;
    border-color: #a3003c;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus,
.btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.5);
}

.btn-outline-light {
    color: #f8f8f8;
    border-color: #f8f8f8;
}

.btn-outline-light:hover {
    color: #212529;
    background-color: #f8f8f8;
    border-color: #f8f8f8;
}

.btn-outline-light:focus,
.btn-outline-light.focus {
    box-shadow: 0 0 0 0.2rem rgba(248, 248, 248, 0.5);
}

.btn-outline-light.disabled,
.btn-outline-light:disabled {
    color: #f8f8f8;
    background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active,
.btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
    color: #212529;
    background-color: #f8f8f8;
    border-color: #f8f8f8;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus,
.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(248, 248, 248, 0.5);
}

.btn-link {
    font-weight: 400;
    color: #7059e8;
    text-decoration: none;
}

.btn-link:hover {
    color: #4f3fa0;
    text-decoration: underline;
}

.btn-link:focus,
.btn-link.focus {
    text-decoration: underline;
}

.btn-link:disabled,
.btn-link.disabled {
    color: #6c757d;
    pointer-events: none;
}

.btn-lg,
.btn-group-lg > .btn {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}

.btn-sm,
.btn-group-sm > .btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
}

.btn-block {
    display: block;
    width: 100%;
}

.btn-block + .btn-block {
    margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
    width: 100%;
}

.fade {
    transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
    .fade {
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.collapse:not(.show) {
    display: none;
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing {
        transition: none;
    }
}

.collapsing.width {
    width: 0;
    height: auto;
    transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing.width {
        transition: none;
    }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: 0.5rem 0;
    margin: 0.125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
}

.dropdown-menu-left {
    right: auto;
    left: 0;
}

.dropdown-menu-right {
    right: 0;
    left: auto;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-right {
        right: 0;
        left: auto;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-right {
        right: 0;
        left: auto;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-right {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-left {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-right {
        right: 0;
        left: auto;
    }
}

.dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0;
    border-right: 0.3em solid transparent;
    border-bottom: 0.3em solid;
    border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropright .dropdown-menu {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropright .dropdown-toggle::after {
    vertical-align: 0;
}

.dropleft .dropdown-menu {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
}

.dropleft .dropdown-toggle::after {
    display: none;
}

.dropleft .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0.3em solid;
    border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropleft .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-menu[x-placement^="top"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"] {
    right: auto;
    bottom: auto;
}

.dropdown-divider {
    height: 0;
    margin: 0.5rem 0;
    overflow: hidden;
    border-top: 1px solid #e9ecef;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: 0.25rem 1.5rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: #16181b;
    text-decoration: none;
    background-color: #e9ecef;
}

.dropdown-item.active,
.dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #4f3fa0;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: #adb5bd;
    pointer-events: none;
    background-color: transparent;
}

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: 0.5rem 1.5rem;
    margin-bottom: 0;
    font-size: 0.875rem;
    color: #6c757d;
    white-space: nowrap;
}

.dropdown-item-text {
    display: block;
    padding: 0.25rem 1.5rem;
    color: #212529;
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
    position: relative;
    flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
    z-index: 1;
}

.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
    z-index: 1;
}

.btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.btn-toolbar .input-group {
    width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
    margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
    padding-right: 0.5625rem;
    padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
    margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
    margin-right: 0;
}

.btn-sm + .dropdown-toggle-split,
.btn-group-sm > .btn + .dropdown-toggle-split {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split,
.btn-group-lg > .btn + .dropdown-toggle-split {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
}

.btn-group-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
    width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
    margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
    margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
    margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
    z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
    z-index: 4;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group > .custom-file {
    display: flex;
    align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group.has-validation > .form-control:nth-last-child(n + 3),
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
    display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
    position: relative;
    z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
    z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
    margin-left: -1px;
}

.input-group-prepend {
    margin-right: -1px;
}

.input-group-append {
    margin-left: -1px;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
    margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
    height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
    padding: 0.5rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
    height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
    padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.custom-control {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5rem;
    print-color-adjust: exact;
}

.custom-control-inline {
    display: inline-flex;
    margin-right: 1rem;
}

.custom-control-input {
    position: absolute;
    left: 0;
    z-index: -1;
    width: 1rem;
    height: 1.25rem;
    opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #4f3fa0;
    background-color: #4f3fa0;
}

.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #988dd2;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: #fff;
    background-color: #b9b1e0;
    border-color: #b9b1e0;
}

.custom-control-input[disabled] ~ .custom-control-label,
.custom-control-input:disabled ~ .custom-control-label {
    color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before,
.custom-control-input:disabled ~ .custom-control-label::before {
    background-color: #e9ecef;
}

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
}

.custom-control-label::before {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    pointer-events: none;
    content: "";
    background-color: #fff;
    border: 1px solid #adb5bd;
}

.custom-control-label::after {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: block;
    width: 1rem;
    height: 1rem;
    content: "";
    background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
    border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
    border-color: #4f3fa0;
    background-color: #4f3fa0;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(79, 63, 160, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
    background-color: rgba(79, 63, 160, 0.5);
}

.custom-radio .custom-control-label::before {
    border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(79, 63, 160, 0.5);
}

.custom-switch {
    padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
    left: -2.25rem;
    width: 1.75rem;
    pointer-events: all;
    border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
    top: calc(0.25rem + 2px);
    left: calc(-2.25rem + 2px);
    width: calc(1rem - 4px);
    height: calc(1rem - 4px);
    background-color: #adb5bd;
    border-radius: 0.5rem;
    transition:
        transform 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;
}

@media (prefers-reduced-motion: reduce) {
    .custom-switch .custom-control-label::after {
        transition: none;
    }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    background-color: #fff;
    transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(79, 63, 160, 0.5);
}

.custom-select {
    display: inline-block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 1.75rem 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    vertical-align: middle;
    background: #fff
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
        right 0.75rem center/8px 10px no-repeat;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    appearance: none;
}

.custom-select:focus {
    border-color: #988dd2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-select:focus::-ms-value {
    color: #495057;
    background-color: #fff;
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0.75rem;
    background-image: none;
}

.custom-select:disabled {
    color: #6c757d;
    background-color: #e9ecef;
}

.custom-select::-ms-expand {
    display: none;
}

.custom-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
    height: calc(1.5em + 0.5rem + 2px);
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    font-size: 0.875rem;
}

.custom-select-lg {
    height: calc(1.5em + 1rem + 2px);
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    font-size: 1.25rem;
}

.custom-file {
    position: relative;
    display: inline-block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    margin-bottom: 0;
}

.custom-file-input {
    position: relative;
    z-index: 2;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    margin: 0;
    overflow: hidden;
    opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
    border-color: #988dd2;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
    background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
    content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
    content: attr(data-browse);
}

.custom-file-label {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    overflow: hidden;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}

.custom-file-label::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(1.5em + 0.75rem);
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    color: #495057;
    content: "Browse";
    background-color: #e9ecef;
    border-left: inherit;
    border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
    width: 100%;
    height: 1.4rem;
    padding: 0;
    background-color: transparent;
    appearance: none;
}

.custom-range:focus {
    outline: 0;
}

.custom-range:focus::-webkit-slider-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-range:focus::-moz-range-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-range:focus::-ms-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.custom-range::-moz-focus-outer {
    border: 0;
}

.custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #4f3fa0;
    border: 0;
    border-radius: 1rem;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-webkit-slider-thumb {
        transition: none;
    }
}

.custom-range::-webkit-slider-thumb:active {
    background-color: #b9b1e0;
}

.custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #4f3fa0;
    border: 0;
    border-radius: 1rem;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-moz-range-thumb {
        transition: none;
    }
}

.custom-range::-moz-range-thumb:active {
    background-color: #b9b1e0;
}

.custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: 0.2rem;
    margin-left: 0.2rem;
    background-color: #4f3fa0;
    border: 0;
    border-radius: 1rem;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-ms-thumb {
        transition: none;
    }
}

.custom-range::-ms-thumb:active {
    background-color: #b9b1e0;
}

.custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
    background-color: #dee2e6;
    border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
    margin-right: 15px;
    background-color: #dee2e6;
    border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
    background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
    cursor: default;
}

.custom-range:disabled::-ms-thumb {
    background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .custom-control-label::before,
    .custom-file-label,
    .custom-select {
        transition: none;
    }
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.nav-link {
    display: block;
    padding: 0.5rem 1rem;
}

.nav-link:hover,
.nav-link:focus {
    text-decoration: none;
}

.nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default;
}

.nav-tabs {
    border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
    margin-bottom: -1px;
    background-color: transparent;
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
    isolation: isolate;
    border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
    color: #6c757d;
    background-color: transparent;
    border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav-pills .nav-link {
    background: none;
    border: 0;
    border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    color: #fff;
    background-color: #4f3fa0;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
    flex-basis: 0;
    flex-grow: 1;
    text-align: center;
}

.tab-content > .tab-pane {
    display: none;
}

.tab-content > .active {
    display: block;
}

.navbar {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.navbar-brand {
    display: inline-block;
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    line-height: inherit;
    white-space: nowrap;
}

.navbar-brand:hover,
.navbar-brand:focus {
    text-decoration: none;
}

.navbar-nav {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0;
}

.navbar-nav .dropdown-menu {
    position: static;
    float: none;
}

.navbar-text {
    display: inline-block;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.navbar-toggler {
    padding: 0.25rem 0.75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.navbar-toggler:hover,
.navbar-toggler:focus {
    text-decoration: none;
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    content: "";
    background: 50% / 100% 100% no-repeat;
}

.navbar-nav-scroll {
    max-height: 75vh;
    overflow-y: auto;
}

@media (max-width: 575.98px) {
    .navbar-expand-sm > .container,
    .navbar-expand-sm > .container-fluid,
    .navbar-expand-sm > .container-sm,
    .navbar-expand-sm > .container-md,
    .navbar-expand-sm > .container-lg,
    .navbar-expand-sm > .container-xl {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 576px) {
    .navbar-expand-sm {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-sm .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }

    .navbar-expand-sm > .container,
    .navbar-expand-sm > .container-fluid,
    .navbar-expand-sm > .container-sm,
    .navbar-expand-sm > .container-md,
    .navbar-expand-sm > .container-lg,
    .navbar-expand-sm > .container-xl {
        flex-wrap: nowrap;
    }

    .navbar-expand-sm .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-sm .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-sm .navbar-toggler {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .navbar-expand-md > .container,
    .navbar-expand-md > .container-fluid,
    .navbar-expand-md > .container-sm,
    .navbar-expand-md > .container-md,
    .navbar-expand-md > .container-lg,
    .navbar-expand-md > .container-xl {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-md .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }

    .navbar-expand-md > .container,
    .navbar-expand-md > .container-fluid,
    .navbar-expand-md > .container-sm,
    .navbar-expand-md > .container-md,
    .navbar-expand-md > .container-lg,
    .navbar-expand-md > .container-xl {
        flex-wrap: nowrap;
    }

    .navbar-expand-md .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-md .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-md .navbar-toggler {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .navbar-expand-lg > .container,
    .navbar-expand-lg > .container-fluid,
    .navbar-expand-lg > .container-sm,
    .navbar-expand-lg > .container-md,
    .navbar-expand-lg > .container-lg,
    .navbar-expand-lg > .container-xl {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-lg .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }

    .navbar-expand-lg > .container,
    .navbar-expand-lg > .container-fluid,
    .navbar-expand-lg > .container-sm,
    .navbar-expand-lg > .container-md,
    .navbar-expand-lg > .container-lg,
    .navbar-expand-lg > .container-xl {
        flex-wrap: nowrap;
    }

    .navbar-expand-lg .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-lg .navbar-toggler {
        display: none;
    }
}

@media (max-width: 1199.98px) {
    .navbar-expand-xl > .container,
    .navbar-expand-xl > .container-fluid,
    .navbar-expand-xl > .container-sm,
    .navbar-expand-xl > .container-md,
    .navbar-expand-xl > .container-lg,
    .navbar-expand-xl > .container-xl {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        flex-flow: row nowrap;
        justify-content: flex-start;
    }

    .navbar-expand-xl .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }

    .navbar-expand-xl > .container,
    .navbar-expand-xl > .container-fluid,
    .navbar-expand-xl > .container-sm,
    .navbar-expand-xl > .container-md,
    .navbar-expand-xl > .container-lg,
    .navbar-expand-xl > .container-xl {
        flex-wrap: nowrap;
    }

    .navbar-expand-xl .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-xl .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-xl .navbar-toggler {
        display: none;
    }
}

.navbar-expand {
    flex-flow: row nowrap;
    justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
    padding-right: 0;
    padding-left: 0;
}

.navbar-expand .navbar-nav {
    flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
    flex-wrap: nowrap;
}

.navbar-expand .navbar-nav-scroll {
    overflow: visible;
}

.navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
}

.navbar-expand .navbar-toggler {
    display: none;
}

.navbar-light .navbar-brand {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0,0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
    color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
    color: #fff;
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
    color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
    color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
    color: #fff;
}

.navbar-dark .navbar-toggler {
    color: rgba(255, 255, 255, 0.5);
    border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
    color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
    color: #fff;
}

.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
    color: #fff;
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0.25rem;
}

.card > hr {
    margin-right: 0;
    margin-left: 0;
}

.card > .list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card > .list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.card > .list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
    border-top: 0;
}

.card-body {
    flex: 1 1 auto;
    min-height: 1px;
    padding: 1.25rem;
}

.card-title {
    margin-bottom: 0.75rem;
}

.card-subtitle {
    margin-top: -0.375rem;
    margin-bottom: 0;
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link:hover {
    text-decoration: none;
}

.card-link + .card-link {
    margin-left: 1.25rem;
}

.card-header {
    padding: 0.75rem 1.25rem;
    margin-bottom: 0;
    background-color: rgba(0, 0, 0, 0.03);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
    border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
    padding: 0.75rem 1.25rem;
    background-color: rgba(0, 0, 0, 0.03);
    border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
    border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
    margin-right: -0.625rem;
    margin-bottom: -0.75rem;
    margin-left: -0.625rem;
    border-bottom: 0;
}

.card-header-pills {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
    border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
    flex-shrink: 0;
    width: 100%;
}

.card-img,
.card-img-top {
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
    margin-bottom: 15px;
}

@media (min-width: 576px) {
    .card-deck {
        display: flex;
        flex-flow: row wrap;
        margin-right: -15px;
        margin-left: -15px;
    }

    .card-deck .card {
        flex: 1 0 0%;
        margin-right: 15px;
        margin-bottom: 0;
        margin-left: 15px;
    }
}

.card-group > .card {
    margin-bottom: 15px;
}

@media (min-width: 576px) {
    .card-group {
        display: flex;
        flex-flow: row wrap;
    }

    .card-group > .card {
        flex: 1 0 0%;
        margin-bottom: 0;
    }

    .card-group > .card + .card {
        margin-left: 0;
        border-left: 0;
    }

    .card-group > .card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .card-group > .card:not(:last-child) .card-img-top,
    .card-group > .card:not(:last-child) .card-header {
        border-top-right-radius: 0;
    }

    .card-group > .card:not(:last-child) .card-img-bottom,
    .card-group > .card:not(:last-child) .card-footer {
        border-bottom-right-radius: 0;
    }

    .card-group > .card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .card-group > .card:not(:first-child) .card-img-top,
    .card-group > .card:not(:first-child) .card-header {
        border-top-left-radius: 0;
    }

    .card-group > .card:not(:first-child) .card-img-bottom,
    .card-group > .card:not(:first-child) .card-footer {
        border-bottom-left-radius: 0;
    }
}

.card-columns .card {
    margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
    .card-columns {
        column-count: 3;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1;
    }

    .card-columns .card {
        display: inline-block;
        width: 100%;
    }
}

.accordion {
    overflow-anchor: none;
}

.accordion > .card {
    overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
    border-bottom: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.accordion > .card > .card-header {
    border-radius: 0;
    margin-bottom: -1px;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #e9ecef;
    border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
    padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
    float: left;
    padding-right: 0.5rem;
    color: #6c757d;
    content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
    text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
    text-decoration: none;
}

.breadcrumb-item.active {
    color: #6c757d;
}

.pagination {
    display: flex;
    padding-left: 0;
    list-style: none;
    border-radius: 0.25rem;
}

.page-link {
    position: relative;
    display: block;
    padding: 0.5rem 0.75rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #7059e8;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

.page-link:hover {
    z-index: 2;
    color: #4f3fa0;
    text-decoration: none;
    background-color: #e9ecef;
    border-color: #dee2e6;
}

.page-link:focus {
    z-index: 3;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.page-item:first-child .page-link {
    margin-left: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.page-item.disabled .page-link {
    color: #6c757d;
    pointer-events: none;
    cursor: auto;
    background-color: #fff;
    border-color: #dee2e6;
}

.pagination-lg .page-link {
    padding: 0.75rem 1.5rem;
    font-size: 1.25rem;
    line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
    border-top-left-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
    border-top-right-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
    border-top-left-radius: 0.2rem;
    border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
    border-top-right-radius: 0.2rem;
    border-bottom-right-radius: 0.2rem;
}

.badge {
    display: inline-block;
    padding: 0.25em 0.4em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
    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;
}

@media (prefers-reduced-motion: reduce) {
    .badge {
        transition: none;
    }
}

a.badge:hover,
a.badge:focus {
    text-decoration: none;
}

.badge:empty {
    display: none;
}

.btn .badge {
    position: relative;
    top: -1px;
}

.badge-pill {
    padding-right: 0.6em;
    padding-left: 0.6em;
    border-radius: 10rem;
}

.badge-primary {
    color: #fff;
    background-color: #4f3fa0;
}

a.badge-primary:hover,
a.badge-primary:focus {
    color: #fff;
    background-color: #3d317b;
}

a.badge-primary:focus,
a.badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.5);
}

.badge-secondary {
    color: #fff;
    background-color: #4c5172;
}

a.badge-secondary:hover,
a.badge-secondary:focus {
    color: #fff;
    background-color: #383b53;
}

a.badge-secondary:focus,
a.badge-secondary.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(76, 81, 114, 0.5);
}

.badge-success {
    color: #fff;
    background-color: #078138;
}

a.badge-success:hover,
a.badge-success:focus {
    color: #fff;
    background-color: #045123;
}

a.badge-success:focus,
a.badge-success.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.5);
}

.badge-info {
    color: #fff;
    background-color: #4462b2;
}

a.badge-info:hover,
a.badge-info:focus {
    color: #fff;
    background-color: #364e8d;
}

a.badge-info:focus,
a.badge-info.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(68, 98, 178, 0.5);
}

.badge-warning {
    color: #fff;
    background-color: #e27209;
}

a.badge-warning:hover,
a.badge-warning:focus {
    color: #fff;
    background-color: #b15907;
}

a.badge-warning:focus,
a.badge-warning.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(226, 114, 9, 0.5);
}

.badge-danger {
    color: #fff;
    background-color: #a3003c;
}

a.badge-danger:hover,
a.badge-danger:focus {
    color: #fff;
    background-color: #700029;
}

a.badge-danger:focus,
a.badge-danger.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.5);
}

.badge-light {
    color: #212529;
    background-color: #f8f8f8;
}

a.badge-light:hover,
a.badge-light:focus {
    color: #212529;
    background-color: #dfdfdf;
}

a.badge-light:focus,
a.badge-light.focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(248, 248, 248, 0.5);
}

.jumbotron {
    padding: 2rem 1rem;
    margin-bottom: 2rem;
    background-color: #e9ecef;
    border-radius: 0.3rem;
}

@media (min-width: 576px) {
    .jumbotron {
        padding: 4rem 2rem;
    }
}

.jumbotron-fluid {
    padding-right: 0;
    padding-left: 0;
    border-radius: 0;
}

.alert {
    position: relative;
    padding: 0.75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.alert-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
}

.alert-dismissible {
    padding-right: 4rem;
}

.alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    padding: 0.75rem 1.25rem;
    color: inherit;
}

.alert-primary {
    color: #292153;
    background-color: #dcd9ec;
    border-color: #cec9e4;
}

.alert-primary hr {
    border-top-color: #bfb8dc;
}

.alert-primary .alert-link {
    color: #17122f;
}

.alert-secondary {
    color: #282a3b;
    background-color: #dbdce3;
    border-color: #cdced8;
}

.alert-secondary hr {
    border-top-color: #bfc0cd;
}

.alert-secondary .alert-link {
    color: #13141d;
}

.alert-success {
    color: #04431d;
    background-color: #cde6d7;
    border-color: #badcc7;
}

.alert-success hr {
    border-top-color: #a9d3b9;
}

.alert-success .alert-link {
    color: #011308;
}

.alert-info {
    color: #23335d;
    background-color: #dae0f0;
    border-color: #cbd3e9;
}

.alert-info hr {
    border-top-color: #b9c4e1;
}

.alert-info .alert-link {
    color: #151f38;
}

.alert-warning {
    color: #763b05;
    background-color: #f9e3ce;
    border-color: #f7d8ba;
}

.alert-warning hr {
    border-top-color: #f4cba3;
}

.alert-warning .alert-link {
    color: #452303;
}

.alert-danger {
    color: #55001f;
    background-color: #edccd8;
    border-color: #e5b8c8;
}

.alert-danger hr {
    border-top-color: #dea5ba;
}

.alert-danger .alert-link {
    color: #22000c;
}

.alert-light {
    color: #818181;
    background-color: #fefefe;
    border-color: #fdfdfd;
}

.alert-light hr {
    border-top-color: #f0f0f0;
}

.alert-light .alert-link {
    color: #686868;
}

@keyframes progress-bar-stripes {
    from {
        background-position: 1rem 0;
    }
    to {
        background-position: 0 0;
    }
}

.progress {
    display: flex;
    height: 1rem;
    overflow: hidden;
    line-height: 0;
    font-size: 0.75rem;
    background-color: #e9ecef;
    border-radius: 0.25rem;
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #4f3fa0;
    transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(
        45deg,
        rgba(255, 255, 255, 0.15) 25%,
        transparent 25%,
        transparent 50%,
        rgba(255, 255, 255, 0.15) 50%,
        rgba(255, 255, 255, 0.15) 75%,
        transparent 75%,
        transparent
    );
    background-size: 1rem 1rem;
}

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

.media {
    display: flex;
    align-items: flex-start;
}

.media-body {
    flex: 1;
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: 0.25rem;
}

.list-group-item-action {
    width: 100%;
    color: #495057;
    text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    z-index: 1;
    color: #495057;
    text-decoration: none;
    background-color: #f8f9fa;
}

.list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef;
}

.list-group-item {
    position: relative;
    display: block;
    padding: 0.75rem 1.25rem;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff;
}

.list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #4f3fa0;
    border-color: #4f3fa0;
}

.list-group-item + .list-group-item {
    border-top-width: 0;
}

.list-group-item + .list-group-item.active {
    margin-top: -1px;
    border-top-width: 1px;
}

.list-group-horizontal {
    flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
    margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
}

@media (min-width: 576px) {
    .list-group-horizontal-sm {
        flex-direction: row;
    }

    .list-group-horizontal-sm > .list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-sm > .list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-sm > .list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-sm > .list-group-item + .list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }

    .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 768px) {
    .list-group-horizontal-md {
        flex-direction: row;
    }

    .list-group-horizontal-md > .list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-md > .list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-md > .list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-md > .list-group-item + .list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }

    .list-group-horizontal-md > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 992px) {
    .list-group-horizontal-lg {
        flex-direction: row;
    }

    .list-group-horizontal-lg > .list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-lg > .list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-lg > .list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-lg > .list-group-item + .list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }

    .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

@media (min-width: 1200px) {
    .list-group-horizontal-xl {
        flex-direction: row;
    }

    .list-group-horizontal-xl > .list-group-item:first-child {
        border-bottom-left-radius: 0.25rem;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xl > .list-group-item:last-child {
        border-top-right-radius: 0.25rem;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xl > .list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xl > .list-group-item + .list-group-item {
        border-top-width: 1px;
        border-left-width: 0;
    }

    .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
        margin-left: -1px;
        border-left-width: 1px;
    }
}

.list-group-flush {
    border-radius: 0;
}

.list-group-flush > .list-group-item {
    border-width: 0 0 1px;
}

.list-group-flush > .list-group-item:last-child {
    border-bottom-width: 0;
}

.list-group-item-primary {
    color: #292153;
    background-color: #cec9e4;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
    color: #292153;
    background-color: #bfb8dc;
}

.list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #292153;
    border-color: #292153;
}

.list-group-item-secondary {
    color: #282a3b;
    background-color: #cdced8;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
    color: #282a3b;
    background-color: #bfc0cd;
}

.list-group-item-secondary.list-group-item-action.active {
    color: #fff;
    background-color: #282a3b;
    border-color: #282a3b;
}

.list-group-item-success {
    color: #04431d;
    background-color: #badcc7;
}

.list-group-item-success.list-group-item-action:hover,
.list-group-item-success.list-group-item-action:focus {
    color: #04431d;
    background-color: #a9d3b9;
}

.list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #04431d;
    border-color: #04431d;
}

.list-group-item-info {
    color: #23335d;
    background-color: #cbd3e9;
}

.list-group-item-info.list-group-item-action:hover,
.list-group-item-info.list-group-item-action:focus {
    color: #23335d;
    background-color: #b9c4e1;
}

.list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: #23335d;
    border-color: #23335d;
}

.list-group-item-warning {
    color: #763b05;
    background-color: #f7d8ba;
}

.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
    color: #763b05;
    background-color: #f4cba3;
}

.list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #763b05;
    border-color: #763b05;
}

.list-group-item-danger {
    color: #55001f;
    background-color: #e5b8c8;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
    color: #55001f;
    background-color: #dea5ba;
}

.list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #55001f;
    border-color: #55001f;
}

.list-group-item-light {
    color: #818181;
    background-color: #fdfdfd;
}

.list-group-item-light.list-group-item-action:hover,
.list-group-item-light.list-group-item-action:focus {
    color: #818181;
    background-color: #f0f0f0;
}

.list-group-item-light.list-group-item-action.active {
    color: #fff;
    background-color: #818181;
    border-color: #818181;
}

.close {
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: 0.5;
}

.close:hover {
    color: #000;
    text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover,
.close:not(:disabled):not(.disabled):focus {
    opacity: 0.75;
}

button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
}

a.close.disabled {
    pointer-events: none;
}

.toast {
    flex-basis: 350px;
    max-width: 350px;
    font-size: 0.875rem;
    background-color: rgba(255, 255, 255, 0.85);
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
    opacity: 0;
    border-radius: 0.25rem;
}

.toast:not(:last-child) {
    margin-bottom: 0.75rem;
}

.toast.showing {
    opacity: 1;
}

.toast.show {
    display: block;
    opacity: 1;
}

.toast.hide {
    display: none;
}

.toast-header {
    display: flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    color: #6c757d;
    background-color: rgba(255, 255, 255, 0.85);
    background-clip: padding-box;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
    padding: 0.75rem;
}

.modal-open {
    overflow: hidden;
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 0.5rem;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    display: flex;
    max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 1rem);
    overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
    flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
}

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
    display: block;
    height: calc(100vh - 1rem);
    height: min-content;
    content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
    max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
    content: none;
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: 0.5;
}

.modal-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #babfd1;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
    padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto;
}

.modal-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: 0.75rem;
    border-top: 1px solid #babfd1;
    border-bottom-right-radius: calc(0.3rem - 1px);
    border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer > * {
    margin: 0.25rem;
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto;
    }

    .modal-dialog-scrollable {
        max-height: calc(100% - 3.5rem);
    }

    .modal-dialog-scrollable .modal-content {
        max-height: calc(100vh - 3.5rem);
    }

    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }

    .modal-dialog-centered::before {
        height: calc(100vh - 3.5rem);
        height: min-content;
    }

    .modal-sm {
        max-width: 300px;
    }
}

@media (min-width: 992px) {
    .modal-lg,
    .modal-xl {
        max-width: 800px;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        max-width: 1140px;
    }
}

.tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    margin: 0;
    font-family: '"Open Sans"', '"Helvetica Neue"', '"Helvetica"', Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: 0.875rem;
    word-wrap: break-word;
    opacity: 0;
}

.tooltip.show {
    opacity: 0.9;
}

.tooltip .arrow {
    position: absolute;
    display: block;
    width: 0.8rem;
    height: 0.4rem;
}

.tooltip .arrow::before {
    position: absolute;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.bs-tooltip-top,
.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="top"],
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="top"] {
    padding: 0.4rem 0;
}

.bs-tooltip-top .arrow,
.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="top"] .arrow,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="top"] .arrow {
    bottom: 0;
}

.bs-tooltip-top .arrow::before,
.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="top"] .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    top: 0;
    border-width: 0.4rem 0.4rem 0;
    border-top-color: #000;
}

.bs-tooltip-right,
.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="right"],
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="right"] {
    padding: 0 0.4rem;
}

.bs-tooltip-right .arrow,
.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="right"] .arrow {
    left: 0;
    width: 0.4rem;
    height: 0.8rem;
}

.bs-tooltip-right .arrow::before,
.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="right"] .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    right: 0;
    border-width: 0.4rem 0.4rem 0.4rem 0;
    border-right-color: #000;
}

.bs-tooltip-bottom,
.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="bottom"],
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="bottom"] {
    padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow,
.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="bottom"] .arrow,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="bottom"] .arrow {
    top: 0;
}

.bs-tooltip-bottom .arrow::before,
.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="bottom"] .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    bottom: 0;
    border-width: 0 0.4rem 0.4rem;
    border-bottom-color: #000;
}

.bs-tooltip-left,
.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="left"],
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="left"] {
    padding: 0 0.4rem;
}

.bs-tooltip-left .arrow,
.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="left"] .arrow,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="left"] .arrow {
    right: 0;
    width: 0.4rem;
    height: 0.8rem;
}

.bs-tooltip-left .arrow::before,
.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="left"] .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    left: 0;
    border-width: 0.4rem 0 0.4rem 0.4rem;
    border-left-color: #000;
}

.tooltip-inner {
    max-width: 200px;
    padding: 0.25rem 0.5rem;
    color: #fff;
    text-align: center;
    background-color: #000;
    border-radius: 0.25rem;
}

.popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: block;
    max-width: 276px;
    font-family: '"Open Sans"', '"Helvetica Neue"', '"Helvetica"', Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: 0.875rem;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
}

.popover .arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: 0.5rem;
    margin: 0 0.3rem;
}

.popover .arrow::before,
.popover .arrow::after {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.bs-popover-top,
.bs-popover-auto[x-placement^="top"],
.b-popover-primary.bs-popover-auto[x-placement^="top"],
.b-popover-secondary.bs-popover-auto[x-placement^="top"],
.b-popover-success.bs-popover-auto[x-placement^="top"],
.b-popover-info.bs-popover-auto[x-placement^="top"],
.b-popover-warning.bs-popover-auto[x-placement^="top"],
.b-popover-danger.bs-popover-auto[x-placement^="top"],
.b-popover-light.bs-popover-auto[x-placement^="top"] {
    margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow,
.bs-popover-auto[x-placement^="top"] > .arrow {
    bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before,
.bs-popover-auto[x-placement^="top"] > .arrow::before {
    bottom: 0;
    border-width: 0.5rem 0.5rem 0;
    border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after,
.bs-popover-auto[x-placement^="top"] > .arrow::after {
    bottom: 1px;
    border-width: 0.5rem 0.5rem 0;
    border-top-color: #fff;
}

.bs-popover-right,
.bs-popover-auto[x-placement^="right"],
.b-popover-primary.bs-popover-auto[x-placement^="right"],
.b-popover-secondary.bs-popover-auto[x-placement^="right"],
.b-popover-success.bs-popover-auto[x-placement^="right"],
.b-popover-info.bs-popover-auto[x-placement^="right"],
.b-popover-warning.bs-popover-auto[x-placement^="right"],
.b-popover-danger.bs-popover-auto[x-placement^="right"],
.b-popover-light.bs-popover-auto[x-placement^="right"] {
    margin-left: 0.5rem;
}

.bs-popover-right > .arrow,
.bs-popover-auto[x-placement^="right"] > .arrow {
    left: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before,
.bs-popover-auto[x-placement^="right"] > .arrow::before {
    left: 0;
    border-width: 0.5rem 0.5rem 0.5rem 0;
    border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after,
.bs-popover-auto[x-placement^="right"] > .arrow::after {
    left: 1px;
    border-width: 0.5rem 0.5rem 0.5rem 0;
    border-right-color: #fff;
}

.bs-popover-bottom,
.bs-popover-auto[x-placement^="bottom"],
.b-popover-primary.bs-popover-auto[x-placement^="bottom"],
.b-popover-secondary.bs-popover-auto[x-placement^="bottom"],
.b-popover-success.bs-popover-auto[x-placement^="bottom"],
.b-popover-info.bs-popover-auto[x-placement^="bottom"],
.b-popover-warning.bs-popover-auto[x-placement^="bottom"],
.b-popover-danger.bs-popover-auto[x-placement^="bottom"],
.b-popover-light.bs-popover-auto[x-placement^="bottom"] {
    margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow,
.bs-popover-auto[x-placement^="bottom"] > .arrow {
    top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before,
.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    top: 0;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after,
.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    top: 1px;
    border-width: 0 0.5rem 0.5rem 0.5rem;
    border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before,
.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 1rem;
    margin-left: -0.5rem;
    content: "";
    border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left,
.bs-popover-auto[x-placement^="left"],
.b-popover-primary.bs-popover-auto[x-placement^="left"],
.b-popover-secondary.bs-popover-auto[x-placement^="left"],
.b-popover-success.bs-popover-auto[x-placement^="left"],
.b-popover-info.bs-popover-auto[x-placement^="left"],
.b-popover-warning.bs-popover-auto[x-placement^="left"],
.b-popover-danger.bs-popover-auto[x-placement^="left"],
.b-popover-light.bs-popover-auto[x-placement^="left"] {
    margin-right: 0.5rem;
}

.bs-popover-left > .arrow,
.bs-popover-auto[x-placement^="left"] > .arrow {
    right: calc(-0.5rem - 1px);
    width: 0.5rem;
    height: 1rem;
    margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before,
.bs-popover-auto[x-placement^="left"] > .arrow::before {
    right: 0;
    border-width: 0.5rem 0 0.5rem 0.5rem;
    border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after,
.bs-popover-auto[x-placement^="left"] > .arrow::after {
    right: 1px;
    border-width: 0.5rem 0 0.5rem 0.5rem;
    border-left-color: #fff;
}

.popover-header {
    padding: 0.5rem 0.75rem;
    margin-bottom: 0;
    font-size: 1rem;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
    display: none;
}

.popover-body {
    padding: 0.5rem 0.75rem;
    color: #212529;
}

.carousel {
    position: relative;
}

.carousel.pointer-event {
    touch-action: pan-y;
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-inner::after {
    display: block;
    clear: both;
    content: "";
}

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    backface-visibility: hidden;
    transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition: none;
    }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
    display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
    transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
    transform: translateX(-100%);
}

.carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
    z-index: 1;
    opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-right {
        transition: none;
    }
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 15%;
    padding: 0;
    color: #fff;
    text-align: center;
    background: none;
    border: 0;
    opacity: 0.5;
    transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
        transition: none;
    }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: 50% / 100% 100% no-repeat;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 15;
    display: flex;
    justify-content: center;
    padding-left: 0;
    margin-right: 15%;
    margin-left: 15%;
    list-style: none;
}

.carousel-indicators li {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: 0.5;
    transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-indicators li {
        transition: none;
    }
}

.carousel-indicators .active {
    opacity: 1;
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 20px;
    left: 15%;
    z-index: 10;
    padding-top: 20px;
    padding-bottom: 20px;
    color: #fff;
    text-align: center;
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg);
    }
}

.spinner-border {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: -0.125em;
    border: 0.25em solid currentcolor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
    width: 1rem;
    height: 1rem;
    border-width: 0.2em;
}

@keyframes spinner-grow {
    0% {
        transform: scale(0);
    }
    50% {
        opacity: 1;
        transform: none;
    }
}

.spinner-grow {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: -0.125em;
    background-color: currentcolor;
    border-radius: 50%;
    opacity: 0;
    animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
    width: 1rem;
    height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
    .spinner-border,
    .spinner-grow {
        animation-duration: 1.5s;
    }
}

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}

.bg-primary {
    background-color: #4f3fa0 !important;
}

a.bg-primary:hover,
a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
    background-color: #3d317b !important;
}

.bg-secondary {
    background-color: #4c5172 !important;
}

a.bg-secondary:hover,
a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
    background-color: #383b53 !important;
}

.bg-success {
    background-color: #078138 !important;
}

a.bg-success:hover,
a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
    background-color: #045123 !important;
}

.bg-info {
    background-color: #4462b2 !important;
}

a.bg-info:hover,
a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
    background-color: #364e8d !important;
}

.bg-warning {
    background-color: #e27209 !important;
}

a.bg-warning:hover,
a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
    background-color: #b15907 !important;
}

.bg-danger {
    background-color: #a3003c !important;
}

a.bg-danger:hover,
a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
    background-color: #700029 !important;
}

.bg-light {
    background-color: #f8f8f8 !important;
}

a.bg-light:hover,
a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
    background-color: #dfdfdf !important;
}

.bg-white {
    background-color: #fff !important;
}

.bg-transparent {
    background-color: transparent !important;
}

.border {
    border: 1px solid #babfd1 !important;
}

.border-top {
    border-top: 1px solid #babfd1 !important;
}

.border-right {
    border-right: 1px solid #babfd1 !important;
}

.border-bottom {
    border-bottom: 1px solid #babfd1 !important;
}

.border-left {
    border-left: 1px solid #babfd1 !important;
}

.border-0 {
    border: 0 !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-right-0 {
    border-right: 0 !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-left-0 {
    border-left: 0 !important;
}

.border-primary {
    border-color: #4f3fa0 !important;
}

.border-secondary {
    border-color: #4c5172 !important;
}

.border-success {
    border-color: #078138 !important;
}

.border-info {
    border-color: #4462b2 !important;
}

.border-warning {
    border-color: #e27209 !important;
}

.border-danger {
    border-color: #a3003c !important;
}

.border-light {
    border-color: #f8f8f8 !important;
}

.border-white {
    border-color: #fff !important;
}

.rounded-sm {
    border-radius: 0.2rem !important;
}

.rounded {
    border-radius: 0.25rem !important;
}

.rounded-top {
    border-top-left-radius: 0.25rem !important;
    border-top-right-radius: 0.25rem !important;
}

.rounded-right {
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
    border-bottom-right-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
    border-top-left-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
    border-radius: 0.3rem !important;
}

.rounded-circle {
    border-radius: 50% !important;
}

.rounded-pill {
    border-radius: 50rem !important;
}

.rounded-0 {
    border-radius: 0 !important;
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.d-none {
    display: none !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

@media (min-width: 576px) {
    .d-sm-none {
        display: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: flex !important;
    }

    .d-md-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 992px) {
    .d-lg-none {
        display: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 1200px) {
    .d-xl-none {
        display: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: inline-flex !important;
    }
}

@media print {
    .d-print-none {
        display: none !important;
    }

    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: flex !important;
    }

    .d-print-inline-flex {
        display: inline-flex !important;
    }
}

.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}

.embed-responsive::before {
    display: block;
    content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.embed-responsive-21by9::before {
    padding-top: 42.857143%;
}

.embed-responsive-16by9::before {
    padding-top: 56.25%;
}

.embed-responsive-4by3::before {
    padding-top: 75%;
}

.embed-responsive-1by1::before {
    padding-top: 100%;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

.align-content-center {
    align-content: center !important;
}

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

.align-self-center {
    align-self: center !important;
}

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

@media (min-width: 576px) {
    .flex-sm-row {
        flex-direction: row !important;
    }

    .flex-sm-column {
        flex-direction: column !important;
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-sm-fill {
        flex: 1 1 auto !important;
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-sm-start {
        justify-content: flex-start !important;
    }

    .justify-content-sm-end {
        justify-content: flex-end !important;
    }

    .justify-content-sm-center {
        justify-content: center !important;
    }

    .justify-content-sm-between {
        justify-content: space-between !important;
    }

    .justify-content-sm-around {
        justify-content: space-around !important;
    }

    .align-items-sm-start {
        align-items: flex-start !important;
    }

    .align-items-sm-end {
        align-items: flex-end !important;
    }

    .align-items-sm-center {
        align-items: center !important;
    }

    .align-items-sm-baseline {
        align-items: baseline !important;
    }

    .align-items-sm-stretch {
        align-items: stretch !important;
    }

    .align-content-sm-start {
        align-content: flex-start !important;
    }

    .align-content-sm-end {
        align-content: flex-end !important;
    }

    .align-content-sm-center {
        align-content: center !important;
    }

    .align-content-sm-between {
        align-content: space-between !important;
    }

    .align-content-sm-around {
        align-content: space-around !important;
    }

    .align-content-sm-stretch {
        align-content: stretch !important;
    }

    .align-self-sm-auto {
        align-self: auto !important;
    }

    .align-self-sm-start {
        align-self: flex-start !important;
    }

    .align-self-sm-end {
        align-self: flex-end !important;
    }

    .align-self-sm-center {
        align-self: center !important;
    }

    .align-self-sm-baseline {
        align-self: baseline !important;
    }

    .align-self-sm-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 768px) {
    .flex-md-row {
        flex-direction: row !important;
    }

    .flex-md-column {
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-md-wrap {
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-md-fill {
        flex: 1 1 auto !important;
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-md-start {
        justify-content: flex-start !important;
    }

    .justify-content-md-end {
        justify-content: flex-end !important;
    }

    .justify-content-md-center {
        justify-content: center !important;
    }

    .justify-content-md-between {
        justify-content: space-between !important;
    }

    .justify-content-md-around {
        justify-content: space-around !important;
    }

    .align-items-md-start {
        align-items: flex-start !important;
    }

    .align-items-md-end {
        align-items: flex-end !important;
    }

    .align-items-md-center {
        align-items: center !important;
    }

    .align-items-md-baseline {
        align-items: baseline !important;
    }

    .align-items-md-stretch {
        align-items: stretch !important;
    }

    .align-content-md-start {
        align-content: flex-start !important;
    }

    .align-content-md-end {
        align-content: flex-end !important;
    }

    .align-content-md-center {
        align-content: center !important;
    }

    .align-content-md-between {
        align-content: space-between !important;
    }

    .align-content-md-around {
        align-content: space-around !important;
    }

    .align-content-md-stretch {
        align-content: stretch !important;
    }

    .align-self-md-auto {
        align-self: auto !important;
    }

    .align-self-md-start {
        align-self: flex-start !important;
    }

    .align-self-md-end {
        align-self: flex-end !important;
    }

    .align-self-md-center {
        align-self: center !important;
    }

    .align-self-md-baseline {
        align-self: baseline !important;
    }

    .align-self-md-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 992px) {
    .flex-lg-row {
        flex-direction: row !important;
    }

    .flex-lg-column {
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-lg-fill {
        flex: 1 1 auto !important;
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-lg-start {
        justify-content: flex-start !important;
    }

    .justify-content-lg-end {
        justify-content: flex-end !important;
    }

    .justify-content-lg-center {
        justify-content: center !important;
    }

    .justify-content-lg-between {
        justify-content: space-between !important;
    }

    .justify-content-lg-around {
        justify-content: space-around !important;
    }

    .align-items-lg-start {
        align-items: flex-start !important;
    }

    .align-items-lg-end {
        align-items: flex-end !important;
    }

    .align-items-lg-center {
        align-items: center !important;
    }

    .align-items-lg-baseline {
        align-items: baseline !important;
    }

    .align-items-lg-stretch {
        align-items: stretch !important;
    }

    .align-content-lg-start {
        align-content: flex-start !important;
    }

    .align-content-lg-end {
        align-content: flex-end !important;
    }

    .align-content-lg-center {
        align-content: center !important;
    }

    .align-content-lg-between {
        align-content: space-between !important;
    }

    .align-content-lg-around {
        align-content: space-around !important;
    }

    .align-content-lg-stretch {
        align-content: stretch !important;
    }

    .align-self-lg-auto {
        align-self: auto !important;
    }

    .align-self-lg-start {
        align-self: flex-start !important;
    }

    .align-self-lg-end {
        align-self: flex-end !important;
    }

    .align-self-lg-center {
        align-self: center !important;
    }

    .align-self-lg-baseline {
        align-self: baseline !important;
    }

    .align-self-lg-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 1200px) {
    .flex-xl-row {
        flex-direction: row !important;
    }

    .flex-xl-column {
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-xl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-xl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        justify-content: center !important;
    }

    .justify-content-xl-between {
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        justify-content: space-around !important;
    }

    .align-items-xl-start {
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        align-items: center !important;
    }

    .align-items-xl-baseline {
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        align-items: stretch !important;
    }

    .align-content-xl-start {
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        align-content: center !important;
    }

    .align-content-xl-between {
        align-content: space-between !important;
    }

    .align-content-xl-around {
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        align-self: auto !important;
    }

    .align-self-xl-start {
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        align-self: center !important;
    }

    .align-self-xl-baseline {
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        align-self: stretch !important;
    }
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.float-none {
    float: none !important;
}

@media (min-width: 576px) {
    .float-sm-left {
        float: left !important;
    }

    .float-sm-right {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }
}

@media (min-width: 768px) {
    .float-md-left {
        float: left !important;
    }

    .float-md-right {
        float: right !important;
    }

    .float-md-none {
        float: none !important;
    }
}

@media (min-width: 992px) {
    .float-lg-left {
        float: left !important;
    }

    .float-lg-right {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-left {
        float: left !important;
    }

    .float-xl-right {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }
}

.user-select-all {
    user-select: all !important;
}

.user-select-auto {
    user-select: auto !important;
}

.user-select-none {
    user-select: none !important;
}

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: sticky !important;
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

@supports (position: sticky) {
    .sticky-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

.shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
    box-shadow: none !important;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.mh-100 {
    max-height: 100% !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

.vw-100 {
    width: 100vw !important;
}

.vh-100 {
    height: 100vh !important;
}

.m-0 {
    margin: 0 !important;
}

.mt-0,
.my-0 {
    margin-top: 0 !important;
}

.mr-0,
.mx-0 {
    margin-right: 0 !important;
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
    margin-left: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.mt-1,
.my-1 {
    margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
    margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
    margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
    margin-left: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.mt-2,
.my-2 {
    margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
    margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
    margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
    margin-left: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.mt-3,
.my-3 {
    margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important;
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-5,
.my-5 {
    margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important;
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important;
}

.p-0 {
    padding: 0 !important;
}

.pt-0,
.py-0 {
    padding-top: 0 !important;
}

.pr-0,
.px-0 {
    padding-right: 0 !important;
}

.pb-0,
.py-0 {
    padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
    padding-left: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.pt-1,
.py-1 {
    padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
    padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
    padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
    padding-left: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.pt-2,
.py-2 {
    padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
    padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
    padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
    padding-left: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.pt-3,
.py-3 {
    padding-top: 1rem !important;
}

.pr-3,
.px-3 {
    padding-right: 1rem !important;
}

.pb-3,
.py-3 {
    padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
    padding-left: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.pt-4,
.py-4 {
    padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
    padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
    padding-left: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.pt-5,
.py-5 {
    padding-top: 3rem !important;
}

.pr-5,
.px-5 {
    padding-right: 3rem !important;
}

.pb-5,
.py-5 {
    padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
    padding-left: 3rem !important;
}

.m-n1 {
    margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
    margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
    margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
    margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
    margin-left: -0.25rem !important;
}

.m-n2 {
    margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
    margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
    margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
    margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
    margin-left: -0.5rem !important;
}

.m-n3 {
    margin: -1rem !important;
}

.mt-n3,
.my-n3 {
    margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
    margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
    margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
    margin-left: -1rem !important;
}

.m-n4 {
    margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
    margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
    margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
    margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
    margin-left: -1.5rem !important;
}

.m-n5 {
    margin: -3rem !important;
}

.mt-n5,
.my-n5 {
    margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
    margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
    margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
    margin-left: -3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mt-auto,
.my-auto {
    margin-top: auto !important;
}

.mr-auto,
.mx-auto {
    margin-right: auto !important;
}

.mb-auto,
.my-auto {
    margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
    margin-left: auto !important;
}

@media (min-width: 576px) {
    .m-sm-0 {
        margin: 0 !important;
    }

    .mt-sm-0,
    .my-sm-0 {
        margin-top: 0 !important;
    }

    .mr-sm-0,
    .mx-sm-0 {
        margin-right: 0 !important;
    }

    .mb-sm-0,
    .my-sm-0 {
        margin-bottom: 0 !important;
    }

    .ml-sm-0,
    .mx-sm-0 {
        margin-left: 0 !important;
    }

    .m-sm-1 {
        margin: 0.25rem !important;
    }

    .mt-sm-1,
    .my-sm-1 {
        margin-top: 0.25rem !important;
    }

    .mr-sm-1,
    .mx-sm-1 {
        margin-right: 0.25rem !important;
    }

    .mb-sm-1,
    .my-sm-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-sm-1,
    .mx-sm-1 {
        margin-left: 0.25rem !important;
    }

    .m-sm-2 {
        margin: 0.5rem !important;
    }

    .mt-sm-2,
    .my-sm-2 {
        margin-top: 0.5rem !important;
    }

    .mr-sm-2,
    .mx-sm-2 {
        margin-right: 0.5rem !important;
    }

    .mb-sm-2,
    .my-sm-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-sm-2,
    .mx-sm-2 {
        margin-left: 0.5rem !important;
    }

    .m-sm-3 {
        margin: 1rem !important;
    }

    .mt-sm-3,
    .my-sm-3 {
        margin-top: 1rem !important;
    }

    .mr-sm-3,
    .mx-sm-3 {
        margin-right: 1rem !important;
    }

    .mb-sm-3,
    .my-sm-3 {
        margin-bottom: 1rem !important;
    }

    .ml-sm-3,
    .mx-sm-3 {
        margin-left: 1rem !important;
    }

    .m-sm-4 {
        margin: 1.5rem !important;
    }

    .mt-sm-4,
    .my-sm-4 {
        margin-top: 1.5rem !important;
    }

    .mr-sm-4,
    .mx-sm-4 {
        margin-right: 1.5rem !important;
    }

    .mb-sm-4,
    .my-sm-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-sm-4,
    .mx-sm-4 {
        margin-left: 1.5rem !important;
    }

    .m-sm-5 {
        margin: 3rem !important;
    }

    .mt-sm-5,
    .my-sm-5 {
        margin-top: 3rem !important;
    }

    .mr-sm-5,
    .mx-sm-5 {
        margin-right: 3rem !important;
    }

    .mb-sm-5,
    .my-sm-5 {
        margin-bottom: 3rem !important;
    }

    .ml-sm-5,
    .mx-sm-5 {
        margin-left: 3rem !important;
    }

    .p-sm-0 {
        padding: 0 !important;
    }

    .pt-sm-0,
    .py-sm-0 {
        padding-top: 0 !important;
    }

    .pr-sm-0,
    .px-sm-0 {
        padding-right: 0 !important;
    }

    .pb-sm-0,
    .py-sm-0 {
        padding-bottom: 0 !important;
    }

    .pl-sm-0,
    .px-sm-0 {
        padding-left: 0 !important;
    }

    .p-sm-1 {
        padding: 0.25rem !important;
    }

    .pt-sm-1,
    .py-sm-1 {
        padding-top: 0.25rem !important;
    }

    .pr-sm-1,
    .px-sm-1 {
        padding-right: 0.25rem !important;
    }

    .pb-sm-1,
    .py-sm-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-sm-1,
    .px-sm-1 {
        padding-left: 0.25rem !important;
    }

    .p-sm-2 {
        padding: 0.5rem !important;
    }

    .pt-sm-2,
    .py-sm-2 {
        padding-top: 0.5rem !important;
    }

    .pr-sm-2,
    .px-sm-2 {
        padding-right: 0.5rem !important;
    }

    .pb-sm-2,
    .py-sm-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-sm-2,
    .px-sm-2 {
        padding-left: 0.5rem !important;
    }

    .p-sm-3 {
        padding: 1rem !important;
    }

    .pt-sm-3,
    .py-sm-3 {
        padding-top: 1rem !important;
    }

    .pr-sm-3,
    .px-sm-3 {
        padding-right: 1rem !important;
    }

    .pb-sm-3,
    .py-sm-3 {
        padding-bottom: 1rem !important;
    }

    .pl-sm-3,
    .px-sm-3 {
        padding-left: 1rem !important;
    }

    .p-sm-4 {
        padding: 1.5rem !important;
    }

    .pt-sm-4,
    .py-sm-4 {
        padding-top: 1.5rem !important;
    }

    .pr-sm-4,
    .px-sm-4 {
        padding-right: 1.5rem !important;
    }

    .pb-sm-4,
    .py-sm-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-sm-4,
    .px-sm-4 {
        padding-left: 1.5rem !important;
    }

    .p-sm-5 {
        padding: 3rem !important;
    }

    .pt-sm-5,
    .py-sm-5 {
        padding-top: 3rem !important;
    }

    .pr-sm-5,
    .px-sm-5 {
        padding-right: 3rem !important;
    }

    .pb-sm-5,
    .py-sm-5 {
        padding-bottom: 3rem !important;
    }

    .pl-sm-5,
    .px-sm-5 {
        padding-left: 3rem !important;
    }

    .m-sm-n1 {
        margin: -0.25rem !important;
    }

    .mt-sm-n1,
    .my-sm-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-sm-n1,
    .mx-sm-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-sm-n1,
    .my-sm-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-sm-n1,
    .mx-sm-n1 {
        margin-left: -0.25rem !important;
    }

    .m-sm-n2 {
        margin: -0.5rem !important;
    }

    .mt-sm-n2,
    .my-sm-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-sm-n2,
    .mx-sm-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-sm-n2,
    .my-sm-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-sm-n2,
    .mx-sm-n2 {
        margin-left: -0.5rem !important;
    }

    .m-sm-n3 {
        margin: -1rem !important;
    }

    .mt-sm-n3,
    .my-sm-n3 {
        margin-top: -1rem !important;
    }

    .mr-sm-n3,
    .mx-sm-n3 {
        margin-right: -1rem !important;
    }

    .mb-sm-n3,
    .my-sm-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-sm-n3,
    .mx-sm-n3 {
        margin-left: -1rem !important;
    }

    .m-sm-n4 {
        margin: -1.5rem !important;
    }

    .mt-sm-n4,
    .my-sm-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-sm-n4,
    .mx-sm-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-sm-n4,
    .my-sm-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-sm-n4,
    .mx-sm-n4 {
        margin-left: -1.5rem !important;
    }

    .m-sm-n5 {
        margin: -3rem !important;
    }

    .mt-sm-n5,
    .my-sm-n5 {
        margin-top: -3rem !important;
    }

    .mr-sm-n5,
    .mx-sm-n5 {
        margin-right: -3rem !important;
    }

    .mb-sm-n5,
    .my-sm-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-sm-n5,
    .mx-sm-n5 {
        margin-left: -3rem !important;
    }

    .m-sm-auto {
        margin: auto !important;
    }

    .mt-sm-auto,
    .my-sm-auto {
        margin-top: auto !important;
    }

    .mr-sm-auto,
    .mx-sm-auto {
        margin-right: auto !important;
    }

    .mb-sm-auto,
    .my-sm-auto {
        margin-bottom: auto !important;
    }

    .ml-sm-auto,
    .mx-sm-auto {
        margin-left: auto !important;
    }
}

@media (min-width: 768px) {
    .m-md-0 {
        margin: 0 !important;
    }

    .mt-md-0,
    .my-md-0 {
        margin-top: 0 !important;
    }

    .mr-md-0,
    .mx-md-0 {
        margin-right: 0 !important;
    }

    .mb-md-0,
    .my-md-0 {
        margin-bottom: 0 !important;
    }

    .ml-md-0,
    .mx-md-0 {
        margin-left: 0 !important;
    }

    .m-md-1 {
        margin: 0.25rem !important;
    }

    .mt-md-1,
    .my-md-1 {
        margin-top: 0.25rem !important;
    }

    .mr-md-1,
    .mx-md-1 {
        margin-right: 0.25rem !important;
    }

    .mb-md-1,
    .my-md-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-md-1,
    .mx-md-1 {
        margin-left: 0.25rem !important;
    }

    .m-md-2 {
        margin: 0.5rem !important;
    }

    .mt-md-2,
    .my-md-2 {
        margin-top: 0.5rem !important;
    }

    .mr-md-2,
    .mx-md-2 {
        margin-right: 0.5rem !important;
    }

    .mb-md-2,
    .my-md-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-md-2,
    .mx-md-2 {
        margin-left: 0.5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .mt-md-3,
    .my-md-3 {
        margin-top: 1rem !important;
    }

    .mr-md-3,
    .mx-md-3 {
        margin-right: 1rem !important;
    }

    .mb-md-3,
    .my-md-3 {
        margin-bottom: 1rem !important;
    }

    .ml-md-3,
    .mx-md-3 {
        margin-left: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .mt-md-4,
    .my-md-4 {
        margin-top: 1.5rem !important;
    }

    .mr-md-4,
    .mx-md-4 {
        margin-right: 1.5rem !important;
    }

    .mb-md-4,
    .my-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-md-4,
    .mx-md-4 {
        margin-left: 1.5rem !important;
    }

    .m-md-5 {
        margin: 3rem !important;
    }

    .mt-md-5,
    .my-md-5 {
        margin-top: 3rem !important;
    }

    .mr-md-5,
    .mx-md-5 {
        margin-right: 3rem !important;
    }

    .mb-md-5,
    .my-md-5 {
        margin-bottom: 3rem !important;
    }

    .ml-md-5,
    .mx-md-5 {
        margin-left: 3rem !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .pt-md-0,
    .py-md-0 {
        padding-top: 0 !important;
    }

    .pr-md-0,
    .px-md-0 {
        padding-right: 0 !important;
    }

    .pb-md-0,
    .py-md-0 {
        padding-bottom: 0 !important;
    }

    .pl-md-0,
    .px-md-0 {
        padding-left: 0 !important;
    }

    .p-md-1 {
        padding: 0.25rem !important;
    }

    .pt-md-1,
    .py-md-1 {
        padding-top: 0.25rem !important;
    }

    .pr-md-1,
    .px-md-1 {
        padding-right: 0.25rem !important;
    }

    .pb-md-1,
    .py-md-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-md-1,
    .px-md-1 {
        padding-left: 0.25rem !important;
    }

    .p-md-2 {
        padding: 0.5rem !important;
    }

    .pt-md-2,
    .py-md-2 {
        padding-top: 0.5rem !important;
    }

    .pr-md-2,
    .px-md-2 {
        padding-right: 0.5rem !important;
    }

    .pb-md-2,
    .py-md-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-md-2,
    .px-md-2 {
        padding-left: 0.5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .pt-md-3,
    .py-md-3 {
        padding-top: 1rem !important;
    }

    .pr-md-3,
    .px-md-3 {
        padding-right: 1rem !important;
    }

    .pb-md-3,
    .py-md-3 {
        padding-bottom: 1rem !important;
    }

    .pl-md-3,
    .px-md-3 {
        padding-left: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .pt-md-4,
    .py-md-4 {
        padding-top: 1.5rem !important;
    }

    .pr-md-4,
    .px-md-4 {
        padding-right: 1.5rem !important;
    }

    .pb-md-4,
    .py-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-md-4,
    .px-md-4 {
        padding-left: 1.5rem !important;
    }

    .p-md-5 {
        padding: 3rem !important;
    }

    .pt-md-5,
    .py-md-5 {
        padding-top: 3rem !important;
    }

    .pr-md-5,
    .px-md-5 {
        padding-right: 3rem !important;
    }

    .pb-md-5,
    .py-md-5 {
        padding-bottom: 3rem !important;
    }

    .pl-md-5,
    .px-md-5 {
        padding-left: 3rem !important;
    }

    .m-md-n1 {
        margin: -0.25rem !important;
    }

    .mt-md-n1,
    .my-md-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-md-n1,
    .mx-md-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-md-n1,
    .my-md-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-md-n1,
    .mx-md-n1 {
        margin-left: -0.25rem !important;
    }

    .m-md-n2 {
        margin: -0.5rem !important;
    }

    .mt-md-n2,
    .my-md-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-md-n2,
    .mx-md-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-md-n2,
    .my-md-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-md-n2,
    .mx-md-n2 {
        margin-left: -0.5rem !important;
    }

    .m-md-n3 {
        margin: -1rem !important;
    }

    .mt-md-n3,
    .my-md-n3 {
        margin-top: -1rem !important;
    }

    .mr-md-n3,
    .mx-md-n3 {
        margin-right: -1rem !important;
    }

    .mb-md-n3,
    .my-md-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-md-n3,
    .mx-md-n3 {
        margin-left: -1rem !important;
    }

    .m-md-n4 {
        margin: -1.5rem !important;
    }

    .mt-md-n4,
    .my-md-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-md-n4,
    .mx-md-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-md-n4,
    .my-md-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-md-n4,
    .mx-md-n4 {
        margin-left: -1.5rem !important;
    }

    .m-md-n5 {
        margin: -3rem !important;
    }

    .mt-md-n5,
    .my-md-n5 {
        margin-top: -3rem !important;
    }

    .mr-md-n5,
    .mx-md-n5 {
        margin-right: -3rem !important;
    }

    .mb-md-n5,
    .my-md-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-md-n5,
    .mx-md-n5 {
        margin-left: -3rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mt-md-auto,
    .my-md-auto {
        margin-top: auto !important;
    }

    .mr-md-auto,
    .mx-md-auto {
        margin-right: auto !important;
    }

    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important;
    }

    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important;
    }
}

@media (min-width: 992px) {
    .m-lg-0 {
        margin: 0 !important;
    }

    .mt-lg-0,
    .my-lg-0 {
        margin-top: 0 !important;
    }

    .mr-lg-0,
    .mx-lg-0 {
        margin-right: 0 !important;
    }

    .mb-lg-0,
    .my-lg-0 {
        margin-bottom: 0 !important;
    }

    .ml-lg-0,
    .mx-lg-0 {
        margin-left: 0 !important;
    }

    .m-lg-1 {
        margin: 0.25rem !important;
    }

    .mt-lg-1,
    .my-lg-1 {
        margin-top: 0.25rem !important;
    }

    .mr-lg-1,
    .mx-lg-1 {
        margin-right: 0.25rem !important;
    }

    .mb-lg-1,
    .my-lg-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-lg-1,
    .mx-lg-1 {
        margin-left: 0.25rem !important;
    }

    .m-lg-2 {
        margin: 0.5rem !important;
    }

    .mt-lg-2,
    .my-lg-2 {
        margin-top: 0.5rem !important;
    }

    .mr-lg-2,
    .mx-lg-2 {
        margin-right: 0.5rem !important;
    }

    .mb-lg-2,
    .my-lg-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-lg-2,
    .mx-lg-2 {
        margin-left: 0.5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .mt-lg-3,
    .my-lg-3 {
        margin-top: 1rem !important;
    }

    .mr-lg-3,
    .mx-lg-3 {
        margin-right: 1rem !important;
    }

    .mb-lg-3,
    .my-lg-3 {
        margin-bottom: 1rem !important;
    }

    .ml-lg-3,
    .mx-lg-3 {
        margin-left: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .mt-lg-4,
    .my-lg-4 {
        margin-top: 1.5rem !important;
    }

    .mr-lg-4,
    .mx-lg-4 {
        margin-right: 1.5rem !important;
    }

    .mb-lg-4,
    .my-lg-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-lg-4,
    .mx-lg-4 {
        margin-left: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 3rem !important;
    }

    .mt-lg-5,
    .my-lg-5 {
        margin-top: 3rem !important;
    }

    .mr-lg-5,
    .mx-lg-5 {
        margin-right: 3rem !important;
    }

    .mb-lg-5,
    .my-lg-5 {
        margin-bottom: 3rem !important;
    }

    .ml-lg-5,
    .mx-lg-5 {
        margin-left: 3rem !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .pt-lg-0,
    .py-lg-0 {
        padding-top: 0 !important;
    }

    .pr-lg-0,
    .px-lg-0 {
        padding-right: 0 !important;
    }

    .pb-lg-0,
    .py-lg-0 {
        padding-bottom: 0 !important;
    }

    .pl-lg-0,
    .px-lg-0 {
        padding-left: 0 !important;
    }

    .p-lg-1 {
        padding: 0.25rem !important;
    }

    .pt-lg-1,
    .py-lg-1 {
        padding-top: 0.25rem !important;
    }

    .pr-lg-1,
    .px-lg-1 {
        padding-right: 0.25rem !important;
    }

    .pb-lg-1,
    .py-lg-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-lg-1,
    .px-lg-1 {
        padding-left: 0.25rem !important;
    }

    .p-lg-2 {
        padding: 0.5rem !important;
    }

    .pt-lg-2,
    .py-lg-2 {
        padding-top: 0.5rem !important;
    }

    .pr-lg-2,
    .px-lg-2 {
        padding-right: 0.5rem !important;
    }

    .pb-lg-2,
    .py-lg-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-lg-2,
    .px-lg-2 {
        padding-left: 0.5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .pt-lg-3,
    .py-lg-3 {
        padding-top: 1rem !important;
    }

    .pr-lg-3,
    .px-lg-3 {
        padding-right: 1rem !important;
    }

    .pb-lg-3,
    .py-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pl-lg-3,
    .px-lg-3 {
        padding-left: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .pt-lg-4,
    .py-lg-4 {
        padding-top: 1.5rem !important;
    }

    .pr-lg-4,
    .px-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pb-lg-4,
    .py-lg-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-lg-4,
    .px-lg-4 {
        padding-left: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 3rem !important;
    }

    .pt-lg-5,
    .py-lg-5 {
        padding-top: 3rem !important;
    }

    .pr-lg-5,
    .px-lg-5 {
        padding-right: 3rem !important;
    }

    .pb-lg-5,
    .py-lg-5 {
        padding-bottom: 3rem !important;
    }

    .pl-lg-5,
    .px-lg-5 {
        padding-left: 3rem !important;
    }

    .m-lg-n1 {
        margin: -0.25rem !important;
    }

    .mt-lg-n1,
    .my-lg-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-lg-n1,
    .mx-lg-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-lg-n1,
    .my-lg-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-lg-n1,
    .mx-lg-n1 {
        margin-left: -0.25rem !important;
    }

    .m-lg-n2 {
        margin: -0.5rem !important;
    }

    .mt-lg-n2,
    .my-lg-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-lg-n2,
    .mx-lg-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-lg-n2,
    .my-lg-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-lg-n2,
    .mx-lg-n2 {
        margin-left: -0.5rem !important;
    }

    .m-lg-n3 {
        margin: -1rem !important;
    }

    .mt-lg-n3,
    .my-lg-n3 {
        margin-top: -1rem !important;
    }

    .mr-lg-n3,
    .mx-lg-n3 {
        margin-right: -1rem !important;
    }

    .mb-lg-n3,
    .my-lg-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-lg-n3,
    .mx-lg-n3 {
        margin-left: -1rem !important;
    }

    .m-lg-n4 {
        margin: -1.5rem !important;
    }

    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -1.5rem !important;
    }

    .m-lg-n5 {
        margin: -3rem !important;
    }

    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -3rem !important;
    }

    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -3rem !important;
    }

    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -3rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important;
    }

    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important;
    }

    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important;
    }
}

@media (min-width: 1200px) {
    .m-xl-0 {
        margin: 0 !important;
    }

    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important;
    }

    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important;
    }

    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important;
    }

    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important;
    }

    .m-xl-1 {
        margin: 0.25rem !important;
    }

    .mt-xl-1,
    .my-xl-1 {
        margin-top: 0.25rem !important;
    }

    .mr-xl-1,
    .mx-xl-1 {
        margin-right: 0.25rem !important;
    }

    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-xl-1,
    .mx-xl-1 {
        margin-left: 0.25rem !important;
    }

    .m-xl-2 {
        margin: 0.5rem !important;
    }

    .mt-xl-2,
    .my-xl-2 {
        margin-top: 0.5rem !important;
    }

    .mr-xl-2,
    .mx-xl-2 {
        margin-right: 0.5rem !important;
    }

    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-xl-2,
    .mx-xl-2 {
        margin-left: 0.5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .mt-xl-3,
    .my-xl-3 {
        margin-top: 1rem !important;
    }

    .mr-xl-3,
    .mx-xl-3 {
        margin-right: 1rem !important;
    }

    .mb-xl-3,
    .my-xl-3 {
        margin-bottom: 1rem !important;
    }

    .ml-xl-3,
    .mx-xl-3 {
        margin-left: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .mt-xl-4,
    .my-xl-4 {
        margin-top: 1.5rem !important;
    }

    .mr-xl-4,
    .mx-xl-4 {
        margin-right: 1.5rem !important;
    }

    .mb-xl-4,
    .my-xl-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-xl-4,
    .mx-xl-4 {
        margin-left: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 3rem !important;
    }

    .mt-xl-5,
    .my-xl-5 {
        margin-top: 3rem !important;
    }

    .mr-xl-5,
    .mx-xl-5 {
        margin-right: 3rem !important;
    }

    .mb-xl-5,
    .my-xl-5 {
        margin-bottom: 3rem !important;
    }

    .ml-xl-5,
    .mx-xl-5 {
        margin-left: 3rem !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .pt-xl-0,
    .py-xl-0 {
        padding-top: 0 !important;
    }

    .pr-xl-0,
    .px-xl-0 {
        padding-right: 0 !important;
    }

    .pb-xl-0,
    .py-xl-0 {
        padding-bottom: 0 !important;
    }

    .pl-xl-0,
    .px-xl-0 {
        padding-left: 0 !important;
    }

    .p-xl-1 {
        padding: 0.25rem !important;
    }

    .pt-xl-1,
    .py-xl-1 {
        padding-top: 0.25rem !important;
    }

    .pr-xl-1,
    .px-xl-1 {
        padding-right: 0.25rem !important;
    }

    .pb-xl-1,
    .py-xl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-xl-1,
    .px-xl-1 {
        padding-left: 0.25rem !important;
    }

    .p-xl-2 {
        padding: 0.5rem !important;
    }

    .pt-xl-2,
    .py-xl-2 {
        padding-top: 0.5rem !important;
    }

    .pr-xl-2,
    .px-xl-2 {
        padding-right: 0.5rem !important;
    }

    .pb-xl-2,
    .py-xl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-xl-2,
    .px-xl-2 {
        padding-left: 0.5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .pt-xl-3,
    .py-xl-3 {
        padding-top: 1rem !important;
    }

    .pr-xl-3,
    .px-xl-3 {
        padding-right: 1rem !important;
    }

    .pb-xl-3,
    .py-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pl-xl-3,
    .px-xl-3 {
        padding-left: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .pt-xl-4,
    .py-xl-4 {
        padding-top: 1.5rem !important;
    }

    .pr-xl-4,
    .px-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pb-xl-4,
    .py-xl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-xl-4,
    .px-xl-4 {
        padding-left: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 3rem !important;
    }

    .pt-xl-5,
    .py-xl-5 {
        padding-top: 3rem !important;
    }

    .pr-xl-5,
    .px-xl-5 {
        padding-right: 3rem !important;
    }

    .pb-xl-5,
    .py-xl-5 {
        padding-bottom: 3rem !important;
    }

    .pl-xl-5,
    .px-xl-5 {
        padding-left: 3rem !important;
    }

    .m-xl-n1 {
        margin: -0.25rem !important;
    }

    .mt-xl-n1,
    .my-xl-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-xl-n1,
    .mx-xl-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-xl-n1,
    .my-xl-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-xl-n1,
    .mx-xl-n1 {
        margin-left: -0.25rem !important;
    }

    .m-xl-n2 {
        margin: -0.5rem !important;
    }

    .mt-xl-n2,
    .my-xl-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-xl-n2,
    .mx-xl-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-xl-n2,
    .my-xl-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-xl-n2,
    .mx-xl-n2 {
        margin-left: -0.5rem !important;
    }

    .m-xl-n3 {
        margin: -1rem !important;
    }

    .mt-xl-n3,
    .my-xl-n3 {
        margin-top: -1rem !important;
    }

    .mr-xl-n3,
    .mx-xl-n3 {
        margin-right: -1rem !important;
    }

    .mb-xl-n3,
    .my-xl-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-xl-n3,
    .mx-xl-n3 {
        margin-left: -1rem !important;
    }

    .m-xl-n4 {
        margin: -1.5rem !important;
    }

    .mt-xl-n4,
    .my-xl-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-xl-n4,
    .mx-xl-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-xl-n4,
    .my-xl-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-xl-n4,
    .mx-xl-n4 {
        margin-left: -1.5rem !important;
    }

    .m-xl-n5 {
        margin: -3rem !important;
    }

    .mt-xl-n5,
    .my-xl-n5 {
        margin-top: -3rem !important;
    }

    .mr-xl-n5,
    .mx-xl-n5 {
        margin-right: -3rem !important;
    }

    .mb-xl-n5,
    .my-xl-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-xl-n5,
    .mx-xl-n5 {
        margin-left: -3rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important;
    }

    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important;
    }

    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important;
    }
}

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    pointer-events: auto;
    content: "";
    background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

.text-justify {
    text-align: justify !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

@media (min-width: 576px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-right {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .text-md-left {
        text-align: left !important;
    }

    .text-md-right {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .text-lg-left {
        text-align: left !important;
    }

    .text-lg-right {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-left {
        text-align: left !important;
    }

    .text-xl-right {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.font-weight-light {
    font-weight: 300 !important;
}

.font-weight-lighter {
    font-weight: lighter !important;
}

.font-weight-normal {
    font-weight: 400 !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.font-weight-bolder {
    font-weight: bolder !important;
}

.font-italic {
    font-style: italic !important;
}

.text-white {
    color: #fff !important;
}

.text-primary {
    color: #4f3fa0 !important;
}

a.text-primary:hover,
a.text-primary:focus {
    color: #342969 !important;
}

.text-secondary {
    color: #4c5172 !important;
}

a.text-secondary:hover,
a.text-secondary:focus {
    color: #2d3044 !important;
}

.text-success {
    color: #078138 !important;
}

a.text-success:hover,
a.text-success:focus {
    color: #033819 !important;
}

.text-info {
    color: #4462b2 !important;
}

a.text-info:hover,
a.text-info:focus {
    color: #2f447b !important;
}

.text-warning {
    color: #e27209 !important;
}

a.text-warning:hover,
a.text-warning:focus {
    color: #984d06 !important;
}

.text-danger {
    color: #a3003c !important;
}

a.text-danger:hover,
a.text-danger:focus {
    color: #570020 !important;
}

.text-light {
    color: #f8f8f8 !important;
}

a.text-light:hover,
a.text-light:focus {
    color: #d2d2d2 !important;
}

.text-body {
    color: #212529 !important;
}

.text-muted {
    color: #6c757d !important;
}

.text-black-50 {
    color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-break {
    word-break: break-word !important;
    word-wrap: break-word !important;
}

.text-reset {
    color: inherit !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

@media print {
    *,
    *::before,
    *::after {
        text-shadow: none !important;
        box-shadow: none !important;
    }

    a:not(.btn) {
        text-decoration: underline;
    }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #adb5bd;
        page-break-inside: avoid;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    @page {
        size: a3;
    }

    body {
        min-width: 992px !important;
    }

    .container {
        min-width: 992px !important;
    }

    .navbar {
        display: none;
    }

    .badge {
        border: 1px solid #000;
    }

    .table {
        border-collapse: collapse !important;
    }

    .table td,
    .table th {
        background-color: #fff !important;
    }

    .table-bordered th,
    .table-bordered td {
        border: 1px solid #dee2e6 !important;
    }

    .table-dark {
        color: inherit;
    }

    .table-dark th,
    .table-dark td,
    .table-dark thead th,
    .table-dark tbody + tbody {
        border-color: #babfd1;
    }

    .table .thead-dark th {
        color: inherit;
        border-color: #babfd1;
    }
}

.bv-no-focus-ring:focus {
    outline: none;
}

@media (max-width: 575.98px) {
    .bv-d-xs-down-none {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .bv-d-sm-down-none {
        display: none !important;
    }
}

@media (max-width: 991.98px) {
    .bv-d-md-down-none {
        display: none !important;
    }
}

@media (max-width: 1199.98px) {
    .bv-d-lg-down-none {
        display: none !important;
    }
}

.bv-d-xl-down-none {
    display: none !important;
}

.form-control.focus {
    color: #495057;
    background-color: #fff;
    border-color: #988dd2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.form-control.focus.is-valid {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.form-control.focus.is-invalid {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.b-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    font-size: inherit;
    font-weight: 400;
    line-height: 1;
    max-width: 100%;
    max-height: auto;
    text-align: center;
    overflow: visible;
    position: relative;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

.b-avatar:focus {
    outline: 0;
}

.b-avatar.btn,
.b-avatar[href] {
    padding: 0;
    border: 0;
}

.b-avatar.btn .b-avatar-img img,
.b-avatar[href] .b-avatar-img img {
    transition: transform 0.15s ease-in-out;
}

.b-avatar.btn:not(:disabled):not(.disabled),
.b-avatar[href]:not(:disabled):not(.disabled) {
    cursor: pointer;
}

.b-avatar.btn:not(:disabled):not(.disabled):hover .b-avatar-img img,
.b-avatar[href]:not(:disabled):not(.disabled):hover .b-avatar-img img {
    transform: scale(1.15);
}

.b-avatar.disabled,
.b-avatar:disabled,
.b-avatar[disabled] {
    opacity: 0.65;
    pointer-events: none;
}

.b-avatar .b-avatar-custom,
.b-avatar .b-avatar-text,
.b-avatar .b-avatar-img {
    border-radius: inherit;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    mask-image: radial-gradient(white, black);
}

.b-avatar .b-avatar-text {
    text-transform: uppercase;
    white-space: nowrap;
}

.b-avatar[href] {
    text-decoration: none;
}

.b-avatar > .b-icon {
    width: 60%;
    height: auto;
    max-width: 100%;
}

.b-avatar .b-avatar-img img {
    width: 100%;
    height: 100%;
    max-height: auto;
    border-radius: inherit;
    object-fit: cover;
}

.b-avatar .b-avatar-badge {
    position: absolute;
    min-height: 1.5em;
    min-width: 1.5em;
    padding: 0.25em;
    line-height: 1;
    border-radius: 10em;
    font-size: 70%;
    font-weight: 700;
    z-index: 1;
}

.b-avatar-sm {
    width: 1.5rem;
    height: 1.5rem;
}

.b-avatar-sm .b-avatar-text {
    font-size: calc(0.6rem);
}

.b-avatar-sm .b-avatar-badge {
    font-size: calc(0.42rem);
}

.b-avatar-lg {
    width: 3.5rem;
    height: 3.5rem;
}

.b-avatar-lg .b-avatar-text {
    font-size: calc(1.4rem);
}

.b-avatar-lg .b-avatar-badge {
    font-size: calc(0.98rem);
}

.b-avatar-group .b-avatar-group-inner {
    display: flex;
    flex-wrap: wrap;
}

.b-avatar-group .b-avatar {
    border: 1px solid #babfd1;
}

.b-avatar-group a.b-avatar:hover:not(.disabled):not(disabled),
.b-avatar-group .btn.b-avatar:hover:not(.disabled):not(disabled) {
    z-index: 1;
}

.b-calendar {
    display: inline-flex;
}

.b-calendar .b-calendar-inner {
    min-width: 250px;
}

.b-calendar .b-calendar-header,
.b-calendar .b-calendar-nav {
    margin-bottom: 0.25rem;
}

.b-calendar .b-calendar-nav .btn {
    padding: 0.25rem;
}

.b-calendar output {
    padding: 0.25rem;
    font-size: 80%;
}

.b-calendar output.readonly {
    background-color: #e9ecef;
    opacity: 1;
}

.b-calendar .b-calendar-footer {
    margin-top: 0.5rem;
}

.b-calendar .b-calendar-grid {
    padding: 0;
    margin: 0;
    overflow: hidden;
}

.b-calendar .b-calendar-grid .row {
    flex-wrap: nowrap;
}

.b-calendar .b-calendar-grid-caption {
    padding: 0.25rem;
}

.b-calendar .b-calendar-grid-body .col[data-date] .btn {
    width: 32px;
    height: 32px;
    font-size: 14px;
    line-height: 1;
    margin: 3px auto;
    padding: 9px 0;
}

.b-calendar .btn:disabled,
.b-calendar .btn.disabled,
.b-calendar .btn[aria-disabled="true"] {
    cursor: default;
    pointer-events: none;
}

.card-img-left {
    border-top-left-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-img-right {
    border-top-right-radius: calc(0.25rem - 1px);
    border-bottom-right-radius: calc(0.25rem - 1px);
}

.dropdown:not(.dropleft) .dropdown-toggle.dropdown-toggle-no-caret::after {
    display: none !important;
}

.dropdown.dropleft .dropdown-toggle.dropdown-toggle-no-caret::before {
    display: none !important;
}

.dropdown .dropdown-menu:focus {
    outline: none;
}

.b-dropdown-form {
    display: inline-block;
    padding: 0.25rem 1.5rem;
    width: 100%;
    clear: both;
    font-weight: 400;
}

.b-dropdown-form:focus {
    outline: 1px dotted !important;
    outline: 5px auto -webkit-focus-ring-color !important;
}

.b-dropdown-form.disabled,
.b-dropdown-form:disabled {
    outline: 0 !important;
    color: #adb5bd;
    pointer-events: none;
}

.b-dropdown-text {
    display: inline-block;
    padding: 0.25rem 1.5rem;
    margin-bottom: 0;
    width: 100%;
    clear: both;
    font-weight: lighter;
}

.custom-checkbox.b-custom-control-lg,
.input-group-lg .custom-checkbox {
    font-size: 1.25rem;
    line-height: 1.5;
    padding-left: 1.875rem;
}

.custom-checkbox.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-checkbox .custom-control-label::before {
    top: 0.3125rem;
    left: -1.875rem;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 0.3rem;
}

.custom-checkbox.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-checkbox .custom-control-label::after {
    top: 0.3125rem;
    left: -1.875rem;
    width: 1.25rem;
    height: 1.25rem;
    background-size: 50% 50%;
}

.custom-checkbox.b-custom-control-sm,
.input-group-sm .custom-checkbox {
    font-size: 0.875rem;
    line-height: 1.5;
    padding-left: 1.3125rem;
}

.custom-checkbox.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-checkbox .custom-control-label::before {
    top: 0.21875rem;
    left: -1.3125rem;
    width: 0.875rem;
    height: 0.875rem;
    border-radius: 0.2rem;
}

.custom-checkbox.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-checkbox .custom-control-label::after {
    top: 0.21875rem;
    left: -1.3125rem;
    width: 0.875rem;
    height: 0.875rem;
    background-size: 50% 50%;
}

.custom-switch.b-custom-control-lg,
.input-group-lg .custom-switch {
    padding-left: 2.8125rem;
}

.custom-switch.b-custom-control-lg .custom-control-label,
.input-group-lg .custom-switch .custom-control-label {
    font-size: 1.25rem;
    line-height: 1.5;
}

.custom-switch.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-switch .custom-control-label::before {
    top: 0.3125rem;
    height: 1.25rem;
    left: -2.8125rem;
    width: 2.1875rem;
    border-radius: 0.625rem;
}

.custom-switch.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-switch .custom-control-label::after {
    top: calc(0.3125rem + 2px);
    left: calc(-2.8125rem + 2px);
    width: calc(1.25rem - 4px);
    height: calc(1.25rem - 4px);
    border-radius: 0.625rem;
    background-size: 50% 50%;
}

.custom-switch.b-custom-control-lg .custom-control-input:checked ~ .custom-control-label::after,
.input-group-lg .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    transform: translateX(0.9375rem);
}

.custom-switch.b-custom-control-sm,
.input-group-sm .custom-switch {
    padding-left: 1.96875rem;
}

.custom-switch.b-custom-control-sm .custom-control-label,
.input-group-sm .custom-switch .custom-control-label {
    font-size: 0.875rem;
    line-height: 1.5;
}

.custom-switch.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-switch .custom-control-label::before {
    top: 0.21875rem;
    left: -1.96875rem;
    width: 1.53125rem;
    height: 0.875rem;
    border-radius: 0.4375rem;
}

.custom-switch.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-switch .custom-control-label::after {
    top: calc(0.21875rem + 2px);
    left: calc(-1.96875rem + 2px);
    width: calc(0.875rem - 4px);
    height: calc(0.875rem - 4px);
    border-radius: 0.4375rem;
    background-size: 50% 50%;
}

.custom-switch.b-custom-control-sm .custom-control-input:checked ~ .custom-control-label::after,
.input-group-sm .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
    transform: translateX(0.65625rem);
}

.input-group > .input-group-prepend > .btn-group > .btn,
.input-group > .input-group-append:not(:last-child) > .btn-group > .btn,
.input-group > .input-group-append:last-child > .btn-group:not(:last-child):not(.dropdown-toggle) > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn-group > .btn,
.input-group > .input-group-prepend:not(:first-child) > .btn-group > .btn,
.input-group > .input-group-prepend:first-child > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.b-form-btn-label-control.form-control {
    display: flex;
    align-items: stretch;
    height: auto;
    padding: 0;
    background-image: none;
}

.input-group .b-form-btn-label-control.form-control {
    padding: 0;
}

[dir="rtl"] .b-form-btn-label-control.form-control,
.b-form-btn-label-control.form-control[dir="rtl"] {
    flex-direction: row-reverse;
}

[dir="rtl"] .b-form-btn-label-control.form-control > label,
.b-form-btn-label-control.form-control[dir="rtl"] > label {
    text-align: right;
}

.b-form-btn-label-control.form-control > .btn {
    line-height: 1;
    font-size: inherit;
    box-shadow: none !important;
    border: 0;
}

.b-form-btn-label-control.form-control > .btn:disabled {
    pointer-events: none;
}

.b-form-btn-label-control.form-control.is-valid > .btn {
    color: #078138;
}

.b-form-btn-label-control.form-control.is-invalid > .btn {
    color: #a3003c;
}

.b-form-btn-label-control.form-control > .dropdown-menu {
    padding: 0.5rem;
}

.b-form-btn-label-control.form-control > .form-control {
    height: auto;
    min-height: calc(calc(1.5em + 0.75rem + 2px) - 2px);
    padding-left: 0.25rem;
    margin: 0;
    border: 0;
    outline: 0;
    background: transparent;
    word-break: break-word;
    font-size: inherit;
    white-space: normal;
    cursor: pointer;
}

.b-form-btn-label-control.form-control > .form-control.form-control-sm {
    min-height: calc(calc(1.5em + 0.5rem + 2px) - 2px);
}

.b-form-btn-label-control.form-control > .form-control.form-control-lg {
    min-height: calc(calc(1.5em + 1rem + 2px) - 2px);
}

.input-group.input-group-sm .b-form-btn-label-control.form-control > .form-control {
    min-height: calc(calc(1.5em + 0.5rem + 2px) - 2px);
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.input-group.input-group-lg .b-form-btn-label-control.form-control > .form-control {
    min-height: calc(calc(1.5em + 1rem + 2px) - 2px);
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.b-form-btn-label-control.form-control[aria-disabled="true"],
.b-form-btn-label-control.form-control[aria-readonly="true"] {
    background-color: #e9ecef;
    opacity: 1;
}

.b-form-btn-label-control.form-control[aria-disabled="true"] {
    pointer-events: none;
}

.b-form-btn-label-control.form-control[aria-disabled="true"] > label {
    cursor: default;
}

.b-form-btn-label-control.btn-group > .dropdown-menu {
    padding: 0.5rem;
}

.custom-file-label {
    white-space: nowrap;
    overflow-x: hidden;
}

.b-custom-control-lg.custom-file,
.b-custom-control-lg .custom-file-input,
.b-custom-control-lg .custom-file-label,
.input-group-lg.custom-file,
.input-group-lg .custom-file-input,
.input-group-lg .custom-file-label {
    font-size: 1.25rem;
    height: calc(1.5em + 1rem + 2px);
}

.b-custom-control-lg .custom-file-label,
.b-custom-control-lg .custom-file-label:after,
.input-group-lg .custom-file-label,
.input-group-lg .custom-file-label:after {
    padding: 0.5rem 1rem;
    line-height: 1.5;
}

.b-custom-control-lg .custom-file-label,
.input-group-lg .custom-file-label {
    border-radius: 0.3rem;
}

.b-custom-control-lg .custom-file-label::after,
.input-group-lg .custom-file-label::after {
    font-size: inherit;
    height: calc(1.5em + 1rem);
    border-radius: 0 0.3rem 0.3rem 0;
}

.b-custom-control-sm.custom-file,
.b-custom-control-sm .custom-file-input,
.b-custom-control-sm .custom-file-label,
.input-group-sm.custom-file,
.input-group-sm .custom-file-input,
.input-group-sm .custom-file-label {
    font-size: 0.875rem;
    height: calc(1.5em + 0.5rem + 2px);
}

.b-custom-control-sm .custom-file-label,
.b-custom-control-sm .custom-file-label:after,
.input-group-sm .custom-file-label,
.input-group-sm .custom-file-label:after {
    padding: 0.25rem 0.5rem;
    line-height: 1.5;
}

.b-custom-control-sm .custom-file-label,
.input-group-sm .custom-file-label {
    border-radius: 0.2rem;
}

.b-custom-control-sm .custom-file-label::after,
.input-group-sm .custom-file-label::after {
    font-size: inherit;
    height: calc(1.5em + 0.5rem);
    border-radius: 0 0.2rem 0.2rem 0;
}

.was-validated .form-control:invalid,
.was-validated .form-control:valid,
.form-control.is-invalid,
.form-control.is-valid {
    background-position: right calc(0.375em + 0.1875rem) center;
}

input[type="color"].form-control {
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.125rem 0.25rem;
}

input[type="color"].form-control.form-control-sm,
.input-group-sm input[type="color"].form-control {
    height: calc(1.5em + 0.5rem + 2px);
    padding: 0.125rem 0.25rem;
}

input[type="color"].form-control.form-control-lg,
.input-group-lg input[type="color"].form-control {
    height: calc(1.5em + 1rem + 2px);
    padding: 0.125rem 0.25rem;
}

input[type="color"].form-control:disabled {
    background-color: #adb5bd;
    opacity: 0.65;
}

.input-group > .custom-range {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    margin-bottom: 0;
}

.input-group > .custom-range + .form-control,
.input-group > .custom-range + .form-control-plaintext,
.input-group > .custom-range + .custom-select,
.input-group > .custom-range + .custom-range,
.input-group > .custom-range + .custom-file {
    margin-left: -1px;
}

.input-group > .form-control + .custom-range,
.input-group > .form-control-plaintext + .custom-range,
.input-group > .custom-select + .custom-range,
.input-group > .custom-range + .custom-range,
.input-group > .custom-file + .custom-range {
    margin-left: -1px;
}

.input-group > .custom-range:focus {
    z-index: 3;
}

.input-group > .custom-range:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .custom-range:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group > .custom-range {
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0 0.75rem;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    height: calc(1.5em + 0.75rem + 2px);
    border-radius: 0.25rem;
    transition:
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .input-group > .custom-range {
        transition: none;
    }
}

.input-group > .custom-range:focus {
    color: #495057;
    background-color: #fff;
    border-color: #988dd2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.input-group > .custom-range:disabled,
.input-group > .custom-range[readonly] {
    background-color: #e9ecef;
}

.input-group-lg > .custom-range {
    height: calc(1.5em + 1rem + 2px);
    padding: 0 1rem;
    border-radius: 0.3rem;
}

.input-group-sm > .custom-range {
    height: calc(1.5em + 0.5rem + 2px);
    padding: 0 0.5rem;
    border-radius: 0.2rem;
}

.was-validated .input-group .custom-range:valid,
.input-group .custom-range.is-valid {
    border-color: #078138;
}

.was-validated .input-group .custom-range:valid:focus,
.input-group .custom-range.is-valid:focus {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.was-validated .custom-range:valid:focus::-webkit-slider-thumb,
.custom-range.is-valid:focus::-webkit-slider-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #46f58c;
}

.was-validated .custom-range:valid:focus::-moz-range-thumb,
.custom-range.is-valid:focus::-moz-range-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #46f58c;
}

.was-validated .custom-range:valid:focus::-ms-thumb,
.custom-range.is-valid:focus::-ms-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #46f58c;
}

.was-validated .custom-range:valid::-webkit-slider-thumb,
.custom-range.is-valid::-webkit-slider-thumb {
    background-color: #078138;
    background-image: none;
}

.was-validated .custom-range:valid::-webkit-slider-thumb:active,
.custom-range.is-valid::-webkit-slider-thumb:active {
    background-color: #46f58c;
    background-image: none;
}

.was-validated .custom-range:valid::-webkit-slider-runnable-track,
.custom-range.is-valid::-webkit-slider-runnable-track {
    background-color: rgba(7, 129, 56, 0.35);
}

.was-validated .custom-range:valid::-moz-range-thumb,
.custom-range.is-valid::-moz-range-thumb {
    background-color: #078138;
    background-image: none;
}

.was-validated .custom-range:valid::-moz-range-thumb:active,
.custom-range.is-valid::-moz-range-thumb:active {
    background-color: #46f58c;
    background-image: none;
}

.was-validated .custom-range:valid::-moz-range-track,
.custom-range.is-valid::-moz-range-track {
    background: rgba(7, 129, 56, 0.35);
}

.was-validated .custom-range:valid ~ .valid-feedback,
.was-validated .custom-range:valid ~ .valid-tooltip,
.custom-range.is-valid ~ .valid-feedback,
.custom-range.is-valid ~ .valid-tooltip {
    display: block;
}

.was-validated .custom-range:valid::-ms-thumb,
.custom-range.is-valid::-ms-thumb {
    background-color: #078138;
    background-image: none;
}

.was-validated .custom-range:valid::-ms-thumb:active,
.custom-range.is-valid::-ms-thumb:active {
    background-color: #46f58c;
    background-image: none;
}

.was-validated .custom-range:valid::-ms-track-lower,
.custom-range.is-valid::-ms-track-lower {
    background: rgba(7, 129, 56, 0.35);
}

.was-validated .custom-range:valid::-ms-track-upper,
.custom-range.is-valid::-ms-track-upper {
    background: rgba(7, 129, 56, 0.35);
}

.was-validated .input-group .custom-range:invalid,
.input-group .custom-range.is-invalid {
    border-color: #a3003c;
}

.was-validated .input-group .custom-range:invalid:focus,
.input-group .custom-range.is-invalid:focus {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.was-validated .custom-range:invalid:focus::-webkit-slider-thumb,
.custom-range.is-invalid:focus::-webkit-slider-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #ff5795;
}

.was-validated .custom-range:invalid:focus::-moz-range-thumb,
.custom-range.is-invalid:focus::-moz-range-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #ff5795;
}

.was-validated .custom-range:invalid:focus::-ms-thumb,
.custom-range.is-invalid:focus::-ms-thumb {
    box-shadow:
        0 0 0 1px #fff,
        0 0 0 0.2rem #ff5795;
}

.was-validated .custom-range:invalid::-webkit-slider-thumb,
.custom-range.is-invalid::-webkit-slider-thumb {
    background-color: #a3003c;
    background-image: none;
}

.was-validated .custom-range:invalid::-webkit-slider-thumb:active,
.custom-range.is-invalid::-webkit-slider-thumb:active {
    background-color: #ff5795;
    background-image: none;
}

.was-validated .custom-range:invalid::-webkit-slider-runnable-track,
.custom-range.is-invalid::-webkit-slider-runnable-track {
    background-color: rgba(163, 0, 60, 0.35);
}

.was-validated .custom-range:invalid::-moz-range-thumb,
.custom-range.is-invalid::-moz-range-thumb {
    background-color: #a3003c;
    background-image: none;
}

.was-validated .custom-range:invalid::-moz-range-thumb:active,
.custom-range.is-invalid::-moz-range-thumb:active {
    background-color: #ff5795;
    background-image: none;
}

.was-validated .custom-range:invalid::-moz-range-track,
.custom-range.is-invalid::-moz-range-track {
    background: rgba(163, 0, 60, 0.35);
}

.was-validated .custom-range:invalid ~ .invalid-feedback,
.was-validated .custom-range:invalid ~ .invalid-tooltip,
.custom-range.is-invalid ~ .invalid-feedback,
.custom-range.is-invalid ~ .invalid-tooltip {
    display: block;
}

.was-validated .custom-range:invalid::-ms-thumb,
.custom-range.is-invalid::-ms-thumb {
    background-color: #a3003c;
    background-image: none;
}

.was-validated .custom-range:invalid::-ms-thumb:active,
.custom-range.is-invalid::-ms-thumb:active {
    background-color: #ff5795;
    background-image: none;
}

.was-validated .custom-range:invalid::-ms-track-lower,
.custom-range.is-invalid::-ms-track-lower {
    background: rgba(163, 0, 60, 0.35);
}

.was-validated .custom-range:invalid::-ms-track-upper,
.custom-range.is-invalid::-ms-track-upper {
    background: rgba(163, 0, 60, 0.35);
}

.custom-radio.b-custom-control-lg,
.input-group-lg .custom-radio {
    font-size: 1.25rem;
    line-height: 1.5;
    padding-left: 1.875rem;
}

.custom-radio.b-custom-control-lg .custom-control-label::before,
.input-group-lg .custom-radio .custom-control-label::before {
    top: 0.3125rem;
    left: -1.875rem;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
}

.custom-radio.b-custom-control-lg .custom-control-label::after,
.input-group-lg .custom-radio .custom-control-label::after {
    top: 0.3125rem;
    left: -1.875rem;
    width: 1.25rem;
    height: 1.25rem;
    background: no-repeat 50% / 50% 50%;
}

.custom-radio.b-custom-control-sm,
.input-group-sm .custom-radio {
    font-size: 0.875rem;
    line-height: 1.5;
    padding-left: 1.3125rem;
}

.custom-radio.b-custom-control-sm .custom-control-label::before,
.input-group-sm .custom-radio .custom-control-label::before {
    top: 0.21875rem;
    left: -1.3125rem;
    width: 0.875rem;
    height: 0.875rem;
    border-radius: 50%;
}

.custom-radio.b-custom-control-sm .custom-control-label::after,
.input-group-sm .custom-radio .custom-control-label::after {
    top: 0.21875rem;
    left: -1.3125rem;
    width: 0.875rem;
    height: 0.875rem;
    background: no-repeat 50% / 50% 50%;
}

.b-rating {
    text-align: center;
}

.b-rating.d-inline-flex {
    width: auto;
}

.b-rating .b-rating-star,
.b-rating .b-rating-value {
    padding: 0 0.25em;
}

.b-rating .b-rating-value {
    min-width: 2.5em;
}

.b-rating .b-rating-star {
    display: inline-flex;
    justify-content: center;
    outline: 0;
}

.b-rating .b-rating-star .b-rating-icon {
    display: inline-flex;
    transition: all 0.15s ease-in-out;
}

.b-rating.disabled,
.b-rating:disabled {
    background-color: #e9ecef;
    color: #6c757d;
}

.b-rating:not(.disabled):not(.readonly) .b-rating-star {
    cursor: pointer;
}

.b-rating:not(.disabled):not(.readonly):focus:not(:hover) .b-rating-star.focused .b-rating-icon,
.b-rating:not(.disabled):not(.readonly) .b-rating-star:hover .b-rating-icon {
    transform: scale(1.5);
}

.b-rating[dir="rtl"] .b-rating-star-half {
    transform: scale(-1, 1);
}

.b-form-spinbutton {
    text-align: center;
    overflow: hidden;
    background-image: none;
    padding: 0;
}

[dir="rtl"] .b-form-spinbutton:not(.flex-column),
.b-form-spinbutton[dir="rtl"]:not(.flex-column) {
    flex-direction: row-reverse;
}

.b-form-spinbutton output {
    font-size: inherit;
    outline: 0;
    border: 0;
    background-color: transparent;
    width: auto;
    margin: 0;
    padding: 0 0.25rem;
}

.b-form-spinbutton output > div,
.b-form-spinbutton output > bdi {
    display: block;
    min-width: 2.25em;
    height: 1.5em;
}

.b-form-spinbutton.flex-column {
    height: auto;
    width: auto;
}

.b-form-spinbutton.flex-column output {
    margin: 0 0.25rem;
    padding: 0.25rem 0;
}

.b-form-spinbutton:not(.d-inline-flex):not(.flex-column) {
    output-width: 100%;
}

.b-form-spinbutton.d-inline-flex:not(.flex-column) {
    width: auto;
}

.b-form-spinbutton .btn {
    line-height: 1;
    box-shadow: none !important;
}

.b-form-spinbutton .btn:disabled {
    pointer-events: none;
}

.b-form-spinbutton .btn:hover:not(:disabled) > div > .b-icon {
    transform: scale(1.25);
}

.b-form-spinbutton.disabled,
.b-form-spinbutton.readonly {
    background-color: #e9ecef;
}

.b-form-spinbutton.disabled {
    pointer-events: none;
}

.b-form-tags.focus {
    color: #495057;
    background-color: #fff;
    border-color: #988dd2;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 63, 160, 0.25);
}

.b-form-tags.focus.is-valid {
    border-color: #078138;
    box-shadow: 0 0 0 0.2rem rgba(7, 129, 56, 0.25);
}

.b-form-tags.focus.is-invalid {
    border-color: #a3003c;
    box-shadow: 0 0 0 0.2rem rgba(163, 0, 60, 0.25);
}

.b-form-tags.disabled {
    background-color: #e9ecef;
}

.b-form-tags-list {
    margin-top: -0.25rem;
}

.b-form-tags-list .b-form-tags-field,
.b-form-tags-list .b-form-tag {
    margin-top: 0.25rem;
}

.b-form-tags-input {
    color: #495057;
}

.b-form-tag {
    font-size: 75%;
    font-weight: normal;
    line-height: 1.5;
    margin-right: 0.25rem;
}

.b-form-tag.disabled {
    opacity: 0.75;
}

.b-form-tag > button.b-form-tag-remove {
    color: inherit;
    font-size: 125%;
    line-height: 1;
    float: none;
    margin-left: 0.25rem;
}

.form-control-sm .b-form-tag {
    line-height: 1.5;
}

.form-control-lg .b-form-tag {
    line-height: 1.5;
}

.media-aside {
    display: flex;
    margin-right: 1rem;
}

.media-aside-right {
    margin-right: 0;
    margin-left: 1rem;
}

.modal-backdrop {
    opacity: 0.5;
}

.b-pagination-pills .page-item .page-link {
    border-radius: 50rem !important;
    margin-left: 0.25rem;
    line-height: 1;
}

.b-pagination-pills .page-item:first-child .page-link {
    margin-left: 0;
}

.popover.b-popover {
    display: block;
    opacity: 1;
    outline: 0;
}

.popover.b-popover.fade:not(.show) {
    opacity: 0;
}

.popover.b-popover.show {
    opacity: 1;
}

.b-popover-primary.popover {
    background-color: #dcd9ec;
    border-color: #cec9e4;
}

.b-popover-primary.bs-popover-top > .arrow::before,
.b-popover-primary.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #cec9e4;
}

.b-popover-primary.bs-popover-top > .arrow::after,
.b-popover-primary.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #dcd9ec;
}

.b-popover-primary.bs-popover-right > .arrow::before,
.b-popover-primary.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #cec9e4;
}

.b-popover-primary.bs-popover-right > .arrow::after,
.b-popover-primary.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #dcd9ec;
}

.b-popover-primary.bs-popover-bottom > .arrow::before,
.b-popover-primary.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #cec9e4;
}

.b-popover-primary.bs-popover-bottom > .arrow::after,
.b-popover-primary.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #d3cfe7;
}

.b-popover-primary.bs-popover-bottom .popover-header::before,
.b-popover-primary.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #d3cfe7;
}

.b-popover-primary.bs-popover-left > .arrow::before,
.b-popover-primary.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #cec9e4;
}

.b-popover-primary.bs-popover-left > .arrow::after,
.b-popover-primary.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #dcd9ec;
}

.b-popover-primary .popover-header {
    color: #212529;
    background-color: #d3cfe7;
    border-bottom-color: #c3bede;
}

.b-popover-primary .popover-body {
    color: #292153;
}

.b-popover-secondary.popover {
    background-color: #dbdce3;
    border-color: #cdced8;
}

.b-popover-secondary.bs-popover-top > .arrow::before,
.b-popover-secondary.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #cdced8;
}

.b-popover-secondary.bs-popover-top > .arrow::after,
.b-popover-secondary.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #dbdce3;
}

.b-popover-secondary.bs-popover-right > .arrow::before,
.b-popover-secondary.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #cdced8;
}

.b-popover-secondary.bs-popover-right > .arrow::after,
.b-popover-secondary.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #dbdce3;
}

.b-popover-secondary.bs-popover-bottom > .arrow::before,
.b-popover-secondary.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #cdced8;
}

.b-popover-secondary.bs-popover-bottom > .arrow::after,
.b-popover-secondary.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #d2d4dc;
}

.b-popover-secondary.bs-popover-bottom .popover-header::before,
.b-popover-secondary.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #d2d4dc;
}

.b-popover-secondary.bs-popover-left > .arrow::before,
.b-popover-secondary.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #cdced8;
}

.b-popover-secondary.bs-popover-left > .arrow::after,
.b-popover-secondary.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #dbdce3;
}

.b-popover-secondary .popover-header {
    color: #212529;
    background-color: #d2d4dc;
    border-bottom-color: #c4c6d1;
}

.b-popover-secondary .popover-body {
    color: #282a3b;
}

.b-popover-success.popover {
    background-color: #cde6d7;
    border-color: #badcc7;
}

.b-popover-success.bs-popover-top > .arrow::before,
.b-popover-success.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #badcc7;
}

.b-popover-success.bs-popover-top > .arrow::after,
.b-popover-success.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #cde6d7;
}

.b-popover-success.bs-popover-right > .arrow::before,
.b-popover-success.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #badcc7;
}

.b-popover-success.bs-popover-right > .arrow::after,
.b-popover-success.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #cde6d7;
}

.b-popover-success.bs-popover-bottom > .arrow::before,
.b-popover-success.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #badcc7;
}

.b-popover-success.bs-popover-bottom > .arrow::after,
.b-popover-success.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #c3e1cf;
}

.b-popover-success.bs-popover-bottom .popover-header::before,
.b-popover-success.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #c3e1cf;
}

.b-popover-success.bs-popover-left > .arrow::before,
.b-popover-success.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #badcc7;
}

.b-popover-success.bs-popover-left > .arrow::after,
.b-popover-success.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #cde6d7;
}

.b-popover-success .popover-header {
    color: #212529;
    background-color: #c3e1cf;
    border-bottom-color: #b2d8c1;
}

.b-popover-success .popover-body {
    color: #04431d;
}

.b-popover-info.popover {
    background-color: #dae0f0;
    border-color: #cbd3e9;
}

.b-popover-info.bs-popover-top > .arrow::before,
.b-popover-info.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #cbd3e9;
}

.b-popover-info.bs-popover-top > .arrow::after,
.b-popover-info.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #dae0f0;
}

.b-popover-info.bs-popover-right > .arrow::before,
.b-popover-info.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #cbd3e9;
}

.b-popover-info.bs-popover-right > .arrow::after,
.b-popover-info.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #dae0f0;
}

.b-popover-info.bs-popover-bottom > .arrow::before,
.b-popover-info.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #cbd3e9;
}

.b-popover-info.bs-popover-bottom > .arrow::after,
.b-popover-info.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #cfd7ec;
}

.b-popover-info.bs-popover-bottom .popover-header::before,
.b-popover-info.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #cfd7ec;
}

.b-popover-info.bs-popover-left > .arrow::before,
.b-popover-info.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #cbd3e9;
}

.b-popover-info.bs-popover-left > .arrow::after,
.b-popover-info.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #dae0f0;
}

.b-popover-info .popover-header {
    color: #212529;
    background-color: #cfd7ec;
    border-bottom-color: #bdc8e4;
}

.b-popover-info .popover-body {
    color: #23335d;
}

.b-popover-warning.popover {
    background-color: #f9e3ce;
    border-color: #f7d8ba;
}

.b-popover-warning.bs-popover-top > .arrow::before,
.b-popover-warning.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #f7d8ba;
}

.b-popover-warning.bs-popover-top > .arrow::after,
.b-popover-warning.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #f9e3ce;
}

.b-popover-warning.bs-popover-right > .arrow::before,
.b-popover-warning.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #f7d8ba;
}

.b-popover-warning.bs-popover-right > .arrow::after,
.b-popover-warning.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #f9e3ce;
}

.b-popover-warning.bs-popover-bottom > .arrow::before,
.b-popover-warning.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #f7d8ba;
}

.b-popover-warning.bs-popover-bottom > .arrow::after,
.b-popover-warning.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #f7dbc0;
}

.b-popover-warning.bs-popover-bottom .popover-header::before,
.b-popover-warning.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #f7dbc0;
}

.b-popover-warning.bs-popover-left > .arrow::before,
.b-popover-warning.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #f7d8ba;
}

.b-popover-warning.bs-popover-left > .arrow::after,
.b-popover-warning.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #f9e3ce;
}

.b-popover-warning .popover-header {
    color: #212529;
    background-color: #f7dbc0;
    border-bottom-color: #f5ceaa;
}

.b-popover-warning .popover-body {
    color: #763b05;
}

.b-popover-danger.popover {
    background-color: #edccd8;
    border-color: #e5b8c8;
}

.b-popover-danger.bs-popover-top > .arrow::before,
.b-popover-danger.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #e5b8c8;
}

.b-popover-danger.bs-popover-top > .arrow::after,
.b-popover-danger.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #edccd8;
}

.b-popover-danger.bs-popover-right > .arrow::before,
.b-popover-danger.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #e5b8c8;
}

.b-popover-danger.bs-popover-right > .arrow::after,
.b-popover-danger.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #edccd8;
}

.b-popover-danger.bs-popover-bottom > .arrow::before,
.b-popover-danger.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #e5b8c8;
}

.b-popover-danger.bs-popover-bottom > .arrow::after,
.b-popover-danger.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #e9c1cf;
}

.b-popover-danger.bs-popover-bottom .popover-header::before,
.b-popover-danger.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #e9c1cf;
}

.b-popover-danger.bs-popover-left > .arrow::before,
.b-popover-danger.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #e5b8c8;
}

.b-popover-danger.bs-popover-left > .arrow::after,
.b-popover-danger.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #edccd8;
}

.b-popover-danger .popover-header {
    color: #212529;
    background-color: #e9c1cf;
    border-bottom-color: #e2aec1;
}

.b-popover-danger .popover-body {
    color: #55001f;
}

.b-popover-light.popover {
    background-color: #fefefe;
    border-color: #fdfdfd;
}

.b-popover-light.bs-popover-top > .arrow::before,
.b-popover-light.bs-popover-auto[x-placement^="top"] > .arrow::before {
    border-top-color: #fdfdfd;
}

.b-popover-light.bs-popover-top > .arrow::after,
.b-popover-light.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #fefefe;
}

.b-popover-light.bs-popover-right > .arrow::before,
.b-popover-light.bs-popover-auto[x-placement^="right"] > .arrow::before {
    border-right-color: #fdfdfd;
}

.b-popover-light.bs-popover-right > .arrow::after,
.b-popover-light.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #fefefe;
}

.b-popover-light.bs-popover-bottom > .arrow::before,
.b-popover-light.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: #fdfdfd;
}

.b-popover-light.bs-popover-bottom > .arrow::after,
.b-popover-light.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #f6f6f6;
}

.b-popover-light.bs-popover-bottom .popover-header::before,
.b-popover-light.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    border-bottom-color: #f6f6f6;
}

.b-popover-light.bs-popover-left > .arrow::before,
.b-popover-light.bs-popover-auto[x-placement^="left"] > .arrow::before {
    border-left-color: #fdfdfd;
}

.b-popover-light.bs-popover-left > .arrow::after,
.b-popover-light.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #fefefe;
}

.b-popover-light .popover-header {
    color: #212529;
    background-color: #f6f6f6;
    border-bottom-color: #eaeaea;
}

.b-popover-light .popover-body {
    color: #818181;
}

.b-sidebar-outer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    overflow: visible;
    z-index: calc(1030 + 5);
}

.b-sidebar-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    opacity: 0.6;
}

.b-sidebar {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    width: 320px;
    max-width: 100%;
    height: 100vh;
    max-height: 100%;
    margin: 0;
    outline: 0;
    transform: translateX(0);
}

.b-sidebar.slide {
    transition: transform 0.3s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .b-sidebar.slide {
        transition: none;
    }
}

.b-sidebar:not(.b-sidebar-right) {
    left: 0;
    right: auto;
}

.b-sidebar:not(.b-sidebar-right).slide:not(.show) {
    transform: translateX(-100%);
}

.b-sidebar:not(.b-sidebar-right) > .b-sidebar-header .close {
    margin-left: auto;
}

.b-sidebar.b-sidebar-right {
    left: auto;
    right: 0;
}

.b-sidebar.b-sidebar-right.slide:not(.show) {
    transform: translateX(100%);
}

.b-sidebar.b-sidebar-right > .b-sidebar-header .close {
    margin-right: auto;
}

.b-sidebar > .b-sidebar-header {
    font-size: 1.5rem;
    padding: 0.5rem 1rem;
    display: flex;
    flex-direction: row;
    flex-grow: 0;
    align-items: center;
}

[dir="rtl"] .b-sidebar > .b-sidebar-header {
    flex-direction: row-reverse;
}

.b-sidebar > .b-sidebar-header .close {
    float: none;
    font-size: 1.5rem;
}

.b-sidebar > .b-sidebar-body {
    flex-grow: 1;
    height: 100%;
    overflow-y: auto;
}

.b-sidebar > .b-sidebar-footer {
    flex-grow: 0;
}

.b-skeleton-wrapper {
    cursor: wait;
}

.b-skeleton {
    position: relative;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.12);
    cursor: wait;
    mask-image: radial-gradient(white, black);
}

.b-skeleton::before {
    content: "\00a0";
}

.b-skeleton-text {
    height: 1rem;
    margin-bottom: 0.25rem;
    border-radius: 0.25rem;
}

.b-skeleton-button {
    width: 75px;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 0.25rem;
}

.b-skeleton-avatar {
    width: 2.5em;
    height: 2.5em;
    border-radius: 50%;
}

.b-skeleton-input {
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    line-height: 1.5;
    border: #ced4da solid 1px;
    border-radius: 0.25rem;
}

.b-skeleton-icon-wrapper svg {
    color: rgba(0, 0, 0, 0.12);
}

.b-skeleton-img {
    height: 100%;
    width: 100%;
}

.b-skeleton-animate-wave::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    animation: b-skeleton-animate-wave 1.75s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .b-skeleton-animate-wave::after {
        background: none;
        animation: none;
    }
}

@keyframes b-skeleton-animate-wave {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(100%);
    }
}

.b-skeleton-animate-fade {
    animation: b-skeleton-animate-fade 0.875s ease-in-out alternate infinite;
}

@media (prefers-reduced-motion: reduce) {
    .b-skeleton-animate-fade {
        animation: none;
    }
}

@keyframes b-skeleton-animate-fade {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0.4;
    }
}

.b-skeleton-animate-throb {
    animation: b-skeleton-animate-throb 0.875s ease-in alternate infinite;
}

@media (prefers-reduced-motion: reduce) {
    .b-skeleton-animate-throb {
        animation: none;
    }
}

@keyframes b-skeleton-animate-throb {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0.975);
    }
}

.table.b-table.b-table-fixed {
    table-layout: fixed;
}

.table.b-table.b-table-no-border-collapse {
    border-collapse: separate;
    border-spacing: 0;
}

.table.b-table[aria-busy="true"] {
    opacity: 0.55;
}

.table.b-table > tbody > tr.b-table-details > td {
    border-top: none !important;
}

.table.b-table > caption {
    caption-side: bottom;
}

.table.b-table.b-table-caption-top > caption {
    caption-side: top !important;
}

.table.b-table > tbody > .table-active,
.table.b-table > tbody > .table-active > th,
.table.b-table > tbody > .table-active > td {
    background-color: rgba(0, 0, 0, 0.075);
}

.table.b-table.table-hover > tbody > tr.table-active:hover td,
.table.b-table.table-hover > tbody > tr.table-active:hover th {
    color: #212529;
    background-image: linear-gradient(rgba(0, 0, 0, 0.075), rgba(0, 0, 0, 0.075));
    background-repeat: no-repeat;
}

.table.b-table > tbody > .bg-active,
.table.b-table > tbody > .bg-active > th,
.table.b-table > tbody > .bg-active > td {
    background-color: rgba(255, 255, 255, 0.075) !important;
}

.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover td,
.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover th {
    color: #fff;
    background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
    background-repeat: no-repeat;
}

.b-table-sticky-header,
.table-responsive,
[class*="table-responsive-"] {
    margin-bottom: 1rem;
}

.b-table-sticky-header > .table,
.table-responsive > .table,
[class*="table-responsive-"] > .table {
    margin-bottom: 0;
}

.b-table-sticky-header {
    overflow-y: auto;
    max-height: 300px;
}

@media print {
    .b-table-sticky-header {
        overflow-y: visible !important;
        max-height: none !important;
    }
}

@supports (position: sticky) {
    .b-table-sticky-header > .table.b-table > thead > tr > th {
        position: sticky;
        top: 0;
        z-index: 2;
    }

    .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
    .b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
    .b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > thead > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > thead > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > tbody > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > tfoot > tr > .b-table-sticky-column {
        position: sticky;
        left: 0;
    }

    .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > thead > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > thead > tr > .b-table-sticky-column {
        z-index: 5;
    }

    .b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
    .b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
    .table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > tbody > tr > .b-table-sticky-column,
    [class*="table-responsive-"] > .table.b-table > tfoot > tr > .b-table-sticky-column {
        z-index: 2;
    }

    .table.b-table > thead > tr > .table-b-table-default,
    .table.b-table > tbody > tr > .table-b-table-default,
    .table.b-table > tfoot > tr > .table-b-table-default {
        color: #212529;
        background-color: #fff;
    }

    .table.b-table.table-dark > thead > tr > .bg-b-table-default,
    .table.b-table.table-dark > tbody > tr > .bg-b-table-default,
    .table.b-table.table-dark > tfoot > tr > .bg-b-table-default {
        color: #fff;
        background-color: #343a40;
    }

    .table.b-table.table-striped > tbody > tr:nth-of-type(odd) > .table-b-table-default {
        background-image: linear-gradient(rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05));
        background-repeat: no-repeat;
    }

    .table.b-table.table-striped.table-dark > tbody > tr:nth-of-type(odd) > .bg-b-table-default {
        background-image: linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05));
        background-repeat: no-repeat;
    }

    .table.b-table.table-hover > tbody > tr:hover > .table-b-table-default {
        color: #212529;
        background-image: linear-gradient(rgba(0, 0, 0, 0.075), rgba(0, 0, 0, 0.075));
        background-repeat: no-repeat;
    }

    .table.b-table.table-hover.table-dark > tbody > tr:hover > .bg-b-table-default {
        color: #fff;
        background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
        background-repeat: no-repeat;
    }
}

.table.b-table > thead > tr > [aria-sort],
.table.b-table > tfoot > tr > [aria-sort] {
    cursor: pointer;
    background-image: none;
    background-repeat: no-repeat;
    background-size: 0.65em 1em;
}

.table.b-table > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
    background-position: right calc(0.75rem / 2) center;
    padding-right: calc(0.75rem + 0.65em);
}

.table.b-table > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table > tfoot > tr > [aria-sort].b-table-sort-icon-left {
    background-position: left calc(0.75rem / 2) center;
    padding-left: calc(0.75rem + 0.65em);
}

.table.b-table > thead > tr > [aria-sort="none"],
.table.b-table > tfoot > tr > [aria-sort="none"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table > thead > tr > [aria-sort="ascending"],
.table.b-table > tfoot > tr > [aria-sort="ascending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table > thead > tr > [aria-sort="descending"],
.table.b-table > tfoot > tr > [aria-sort="descending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table.table-dark > thead > tr > [aria-sort="none"],
.table.b-table.table-dark > tfoot > tr > [aria-sort="none"],
.table.b-table > .thead-dark > tr > [aria-sort="none"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table.table-dark > thead > tr > [aria-sort="ascending"],
.table.b-table.table-dark > tfoot > tr > [aria-sort="ascending"],
.table.b-table > .thead-dark > tr > [aria-sort="ascending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table.table-dark > thead > tr > [aria-sort="descending"],
.table.b-table.table-dark > tfoot > tr > [aria-sort="descending"],
.table.b-table > .thead-dark > tr > [aria-sort="descending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table > thead > tr > .table-dark[aria-sort="none"],
.table.b-table > tfoot > tr > .table-dark[aria-sort="none"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table > thead > tr > .table-dark[aria-sort="ascending"],
.table.b-table > tfoot > tr > .table-dark[aria-sort="ascending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table > thead > tr > .table-dark[aria-sort="descending"],
.table.b-table > tfoot > tr > .table-dark[aria-sort="descending"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}

.table.b-table.table-sm > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table.table-sm > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
    background-position: right calc(0.3rem / 2) center;
    padding-right: calc(0.3rem + 0.65em);
}

.table.b-table.table-sm > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table.table-sm > tfoot > tr > [aria-sort].b-table-sort-icon-left {
    background-position: left calc(0.3rem / 2) center;
    padding-left: calc(0.3rem + 0.65em);
}

.table.b-table.b-table-selectable:not(.b-table-selectable-no-click) > tbody > tr {
    cursor: pointer;
}

.table.b-table.b-table-selectable:not(.b-table-selectable-no-click).b-table-selecting.b-table-select-range > tbody > tr {
    user-select: none;
}

@media (max-width: 575.98px) {
    .table.b-table.b-table-stacked-sm {
        display: block;
        width: 100%;
    }

    .table.b-table.b-table-stacked-sm > caption,
    .table.b-table.b-table-stacked-sm > tbody,
    .table.b-table.b-table-stacked-sm > tbody > tr,
    .table.b-table.b-table-stacked-sm > tbody > tr > td,
    .table.b-table.b-table-stacked-sm > tbody > tr > th {
        display: block;
    }

    .table.b-table.b-table-stacked-sm > thead,
    .table.b-table.b-table-stacked-sm > tfoot {
        display: none;
    }

    .table.b-table.b-table-stacked-sm > thead > tr.b-table-top-row,
    .table.b-table.b-table-stacked-sm > thead > tr.b-table-bottom-row,
    .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-top-row,
    .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-sm > caption {
        caption-side: top !important;
    }

    .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::before {
        content: attr(data-label);
        width: 40%;
        float: left;
        text-align: right;
        overflow-wrap: break-word;
        font-weight: bold;
        font-style: normal;
        padding: 0 calc(1rem / 2) 0 0;
        margin: 0;
    }

    .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::after {
        display: block;
        clear: both;
        content: "";
    }

    .table.b-table.b-table-stacked-sm > tbody > tr > [data-label] > div {
        display: inline-block;
        width: calc(100% - 40%);
        padding: 0 0 0 calc(1rem / 2);
        margin: 0;
    }

    .table.b-table.b-table-stacked-sm > tbody > tr.top-row,
    .table.b-table.b-table-stacked-sm > tbody > tr.bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-sm > tbody > tr > :first-child {
        border-top-width: 3px;
    }

    .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + td,
    .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + th {
        border-top-width: 3px;
    }
}

@media (max-width: 767.98px) {
    .table.b-table.b-table-stacked-md {
        display: block;
        width: 100%;
    }

    .table.b-table.b-table-stacked-md > caption,
    .table.b-table.b-table-stacked-md > tbody,
    .table.b-table.b-table-stacked-md > tbody > tr,
    .table.b-table.b-table-stacked-md > tbody > tr > td,
    .table.b-table.b-table-stacked-md > tbody > tr > th {
        display: block;
    }

    .table.b-table.b-table-stacked-md > thead,
    .table.b-table.b-table-stacked-md > tfoot {
        display: none;
    }

    .table.b-table.b-table-stacked-md > thead > tr.b-table-top-row,
    .table.b-table.b-table-stacked-md > thead > tr.b-table-bottom-row,
    .table.b-table.b-table-stacked-md > tfoot > tr.b-table-top-row,
    .table.b-table.b-table-stacked-md > tfoot > tr.b-table-bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-md > caption {
        caption-side: top !important;
    }

    .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::before {
        content: attr(data-label);
        width: 40%;
        float: left;
        text-align: right;
        overflow-wrap: break-word;
        font-weight: bold;
        font-style: normal;
        padding: 0 calc(1rem / 2) 0 0;
        margin: 0;
    }

    .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::after {
        display: block;
        clear: both;
        content: "";
    }

    .table.b-table.b-table-stacked-md > tbody > tr > [data-label] > div {
        display: inline-block;
        width: calc(100% - 40%);
        padding: 0 0 0 calc(1rem / 2);
        margin: 0;
    }

    .table.b-table.b-table-stacked-md > tbody > tr.top-row,
    .table.b-table.b-table-stacked-md > tbody > tr.bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-md > tbody > tr > :first-child {
        border-top-width: 3px;
    }

    .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + td,
    .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + th {
        border-top-width: 3px;
    }
}

@media (max-width: 991.98px) {
    .table.b-table.b-table-stacked-lg {
        display: block;
        width: 100%;
    }

    .table.b-table.b-table-stacked-lg > caption,
    .table.b-table.b-table-stacked-lg > tbody,
    .table.b-table.b-table-stacked-lg > tbody > tr,
    .table.b-table.b-table-stacked-lg > tbody > tr > td,
    .table.b-table.b-table-stacked-lg > tbody > tr > th {
        display: block;
    }

    .table.b-table.b-table-stacked-lg > thead,
    .table.b-table.b-table-stacked-lg > tfoot {
        display: none;
    }

    .table.b-table.b-table-stacked-lg > thead > tr.b-table-top-row,
    .table.b-table.b-table-stacked-lg > thead > tr.b-table-bottom-row,
    .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-top-row,
    .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-lg > caption {
        caption-side: top !important;
    }

    .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::before {
        content: attr(data-label);
        width: 40%;
        float: left;
        text-align: right;
        overflow-wrap: break-word;
        font-weight: bold;
        font-style: normal;
        padding: 0 calc(1rem / 2) 0 0;
        margin: 0;
    }

    .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::after {
        display: block;
        clear: both;
        content: "";
    }

    .table.b-table.b-table-stacked-lg > tbody > tr > [data-label] > div {
        display: inline-block;
        width: calc(100% - 40%);
        padding: 0 0 0 calc(1rem / 2);
        margin: 0;
    }

    .table.b-table.b-table-stacked-lg > tbody > tr.top-row,
    .table.b-table.b-table-stacked-lg > tbody > tr.bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-lg > tbody > tr > :first-child {
        border-top-width: 3px;
    }

    .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + td,
    .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + th {
        border-top-width: 3px;
    }
}

@media (max-width: 1199.98px) {
    .table.b-table.b-table-stacked-xl {
        display: block;
        width: 100%;
    }

    .table.b-table.b-table-stacked-xl > caption,
    .table.b-table.b-table-stacked-xl > tbody,
    .table.b-table.b-table-stacked-xl > tbody > tr,
    .table.b-table.b-table-stacked-xl > tbody > tr > td,
    .table.b-table.b-table-stacked-xl > tbody > tr > th {
        display: block;
    }

    .table.b-table.b-table-stacked-xl > thead,
    .table.b-table.b-table-stacked-xl > tfoot {
        display: none;
    }

    .table.b-table.b-table-stacked-xl > thead > tr.b-table-top-row,
    .table.b-table.b-table-stacked-xl > thead > tr.b-table-bottom-row,
    .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-top-row,
    .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-xl > caption {
        caption-side: top !important;
    }

    .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::before {
        content: attr(data-label);
        width: 40%;
        float: left;
        text-align: right;
        overflow-wrap: break-word;
        font-weight: bold;
        font-style: normal;
        padding: 0 calc(1rem / 2) 0 0;
        margin: 0;
    }

    .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::after {
        display: block;
        clear: both;
        content: "";
    }

    .table.b-table.b-table-stacked-xl > tbody > tr > [data-label] > div {
        display: inline-block;
        width: calc(100% - 40%);
        padding: 0 0 0 calc(1rem / 2);
        margin: 0;
    }

    .table.b-table.b-table-stacked-xl > tbody > tr.top-row,
    .table.b-table.b-table-stacked-xl > tbody > tr.bottom-row {
        display: none;
    }

    .table.b-table.b-table-stacked-xl > tbody > tr > :first-child {
        border-top-width: 3px;
    }

    .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + td,
    .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + th {
        border-top-width: 3px;
    }
}

.table.b-table.b-table-stacked {
    display: block;
    width: 100%;
}

.table.b-table.b-table-stacked > caption,
.table.b-table.b-table-stacked > tbody,
.table.b-table.b-table-stacked > tbody > tr,
.table.b-table.b-table-stacked > tbody > tr > td,
.table.b-table.b-table-stacked > tbody > tr > th {
    display: block;
}

.table.b-table.b-table-stacked > thead,
.table.b-table.b-table-stacked > tfoot {
    display: none;
}

.table.b-table.b-table-stacked > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-bottom-row {
    display: none;
}

.table.b-table.b-table-stacked > caption {
    caption-side: top !important;
}

.table.b-table.b-table-stacked > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
}

.table.b-table.b-table-stacked > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
}

.table.b-table.b-table-stacked > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
}

.table.b-table.b-table-stacked > tbody > tr.top-row,
.table.b-table.b-table-stacked > tbody > tr.bottom-row {
    display: none;
}

.table.b-table.b-table-stacked > tbody > tr > :first-child {
    border-top-width: 3px;
}

.table.b-table.b-table-stacked > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
}

.b-time {
    min-width: 150px;
}

.b-time[aria-disabled="true"] output,
.b-time[aria-readonly="true"] output,
.b-time output.disabled {
    background-color: #e9ecef;
    opacity: 1;
}

.b-time[aria-disabled="true"] output {
    pointer-events: none;
}

[dir="rtl"] .b-time > .d-flex:not(.flex-column) {
    flex-direction: row-reverse;
}

.b-time .b-time-header {
    margin-bottom: 0.5rem;
}

.b-time .b-time-header output {
    padding: 0.25rem;
    font-size: 80%;
}

.b-time .b-time-footer {
    margin-top: 0.5rem;
}

.b-time .b-time-ampm {
    margin-left: 0.5rem;
}

.b-toast {
    display: block;
    position: relative;
    max-width: 350px;
    backface-visibility: hidden;
    background-clip: padding-box;
    z-index: 1;
    border-radius: 0.25rem;
}

.b-toast .toast {
    background-color: rgba(255, 255, 255, 0.85);
}

.b-toast:not(:last-child) {
    margin-bottom: 0.75rem;
}

.b-toast.b-toast-solid .toast {
    background-color: #fff;
}

.b-toast .toast {
    opacity: 1;
}

.b-toast .toast.fade:not(.show) {
    opacity: 0;
}

.b-toast .toast .toast-body {
    display: block;
}

.b-toast-primary .toast {
    background-color: rgba(236, 234, 245, 0.85);
    border-color: rgba(206, 201, 228, 0.85);
    color: #292153;
}

.b-toast-primary .toast .toast-header {
    color: #292153;
    background-color: rgba(220, 217, 236, 0.85);
    border-bottom-color: rgba(206, 201, 228, 0.85);
}

.b-toast-primary.b-toast-solid .toast {
    background-color: #eceaf5;
}

.b-toast-secondary .toast {
    background-color: rgba(233, 234, 238, 0.85);
    border-color: rgba(205, 206, 216, 0.85);
    color: #282a3b;
}

.b-toast-secondary .toast .toast-header {
    color: #282a3b;
    background-color: rgba(219, 220, 227, 0.85);
    border-bottom-color: rgba(205, 206, 216, 0.85);
}

.b-toast-secondary.b-toast-solid .toast {
    background-color: #e9eaee;
}

.b-toast-success .toast {
    background-color: rgba(222, 239, 229, 0.85);
    border-color: rgba(186, 220, 199, 0.85);
    color: #04431d;
}

.b-toast-success .toast .toast-header {
    color: #04431d;
    background-color: rgba(205, 230, 215, 0.85);
    border-bottom-color: rgba(186, 220, 199, 0.85);
}

.b-toast-success.b-toast-solid .toast {
    background-color: #deefe5;
}

.b-toast-info .toast {
    background-color: rgba(236, 239, 247, 0.85);
    border-color: rgba(203, 211, 233, 0.85);
    color: #23335d;
}

.b-toast-info .toast .toast-header {
    color: #23335d;
    background-color: rgba(218, 224, 240, 0.85);
    border-bottom-color: rgba(203, 211, 233, 0.85);
}

.b-toast-info.b-toast-solid .toast {
    background-color: #eceff7;
}

.b-toast-warning .toast {
    background-color: rgba(252, 240, 229, 0.85);
    border-color: rgba(247, 216, 186, 0.85);
    color: #763b05;
}

.b-toast-warning .toast .toast-header {
    color: #763b05;
    background-color: rgba(249, 227, 206, 0.85);
    border-bottom-color: rgba(247, 216, 186, 0.85);
}

.b-toast-warning.b-toast-solid .toast {
    background-color: #fcf0e5;
}

.b-toast-danger .toast {
    background-color: rgba(244, 223, 230, 0.85);
    border-color: rgba(229, 184, 200, 0.85);
    color: #55001f;
}

.b-toast-danger .toast .toast-header {
    color: #55001f;
    background-color: rgba(237, 204, 216, 0.85);
    border-bottom-color: rgba(229, 184, 200, 0.85);
}

.b-toast-danger.b-toast-solid .toast {
    background-color: #f4dfe6;
}

.b-toast-light .toast {
    background-color: rgba(255, 255, 255, 0.85);
    border-color: rgba(253, 253, 253, 0.85);
    color: #818181;
}

.b-toast-light .toast .toast-header {
    color: #818181;
    background-color: rgba(254, 254, 254, 0.85);
    border-bottom-color: rgba(253, 253, 253, 0.85);
}

.b-toast-light.b-toast-solid .toast {
    background-color: #fff;
}

.b-toaster {
    z-index: 1100;
}

.b-toaster .b-toaster-slot {
    position: relative;
    display: block;
}

.b-toaster .b-toaster-slot:empty {
    display: none !important;
}

.b-toaster.b-toaster-top-right,
.b-toaster.b-toaster-top-left,
.b-toaster.b-toaster-top-center,
.b-toaster.b-toaster-top-full,
.b-toaster.b-toaster-bottom-right,
.b-toaster.b-toaster-bottom-left,
.b-toaster.b-toaster-bottom-center,
.b-toaster.b-toaster-bottom-full {
    position: fixed;
    left: 0.5rem;
    right: 0.5rem;
    margin: 0;
    padding: 0;
    height: 0;
    overflow: visible;
}

.b-toaster.b-toaster-top-right .b-toaster-slot,
.b-toaster.b-toaster-top-left .b-toaster-slot,
.b-toaster.b-toaster-top-center .b-toaster-slot,
.b-toaster.b-toaster-top-full .b-toaster-slot,
.b-toaster.b-toaster-bottom-right .b-toaster-slot,
.b-toaster.b-toaster-bottom-left .b-toaster-slot,
.b-toaster.b-toaster-bottom-center .b-toaster-slot,
.b-toaster.b-toaster-bottom-full .b-toaster-slot {
    position: absolute;
    max-width: 350px;
    width: 100%;
    left: 0;
    right: 0;
    padding: 0;
    margin: 0;
}

.b-toaster.b-toaster-top-full .b-toaster-slot,
.b-toaster.b-toaster-bottom-full .b-toaster-slot {
    width: 100%;
    max-width: 100%;
}

.b-toaster.b-toaster-top-full .b-toaster-slot .b-toast,
.b-toaster.b-toaster-top-full .b-toaster-slot .toast,
.b-toaster.b-toaster-bottom-full .b-toaster-slot .b-toast,
.b-toaster.b-toaster-bottom-full .b-toaster-slot .toast {
    width: 100%;
    max-width: 100%;
}

.b-toaster.b-toaster-top-right,
.b-toaster.b-toaster-top-left,
.b-toaster.b-toaster-top-center,
.b-toaster.b-toaster-top-full {
    top: 0;
}

.b-toaster.b-toaster-top-right .b-toaster-slot,
.b-toaster.b-toaster-top-left .b-toaster-slot,
.b-toaster.b-toaster-top-center .b-toaster-slot,
.b-toaster.b-toaster-top-full .b-toaster-slot {
    top: 0.5rem;
}

.b-toaster.b-toaster-bottom-right,
.b-toaster.b-toaster-bottom-left,
.b-toaster.b-toaster-bottom-center,
.b-toaster.b-toaster-bottom-full {
    bottom: 0;
}

.b-toaster.b-toaster-bottom-right .b-toaster-slot,
.b-toaster.b-toaster-bottom-left .b-toaster-slot,
.b-toaster.b-toaster-bottom-center .b-toaster-slot,
.b-toaster.b-toaster-bottom-full .b-toaster-slot {
    bottom: 0.5rem;
}

.b-toaster.b-toaster-top-right .b-toaster-slot,
.b-toaster.b-toaster-bottom-right .b-toaster-slot,
.b-toaster.b-toaster-top-center .b-toaster-slot,
.b-toaster.b-toaster-bottom-center .b-toaster-slot {
    margin-left: auto;
}

.b-toaster.b-toaster-top-left .b-toaster-slot,
.b-toaster.b-toaster-bottom-left .b-toaster-slot,
.b-toaster.b-toaster-top-center .b-toaster-slot,
.b-toaster.b-toaster-bottom-center .b-toaster-slot {
    margin-right: auto;
}

.b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-active,
.b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-top-right .b-toast.b-toaster-move,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-active,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-move,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-active,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-move,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-active,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-move {
    transition: transform 0.175s;
}

.b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-to .toast.fade,
.b-toaster.b-toaster-top-right .b-toast.b-toaster-enter-active .toast.fade,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-to .toast.fade,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-enter-active .toast.fade,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-to .toast.fade,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-enter-active .toast.fade,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-to .toast.fade,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-enter-active .toast.fade {
    transition-delay: 0.175s;
}

.b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active {
    position: absolute;
    transition-delay: 0.175s;
}

.b-toaster.b-toaster-top-right .b-toast.b-toaster-leave-active .toast.fade,
.b-toaster.b-toaster-top-left .b-toast.b-toaster-leave-active .toast.fade,
.b-toaster.b-toaster-bottom-right .b-toast.b-toaster-leave-active .toast.fade,
.b-toaster.b-toaster-bottom-left .b-toast.b-toaster-leave-active .toast.fade {
    transition-delay: 0s;
}

.tooltip.b-tooltip {
    display: block;
    opacity: 0.9;
    outline: 0;
}

.tooltip.b-tooltip.fade:not(.show) {
    opacity: 0;
}

.tooltip.b-tooltip.show {
    opacity: 0.9;
}

.tooltip.b-tooltip.noninteractive {
    pointer-events: none;
}

.tooltip.b-tooltip .arrow {
    margin: 0 0.25rem;
}

.tooltip.b-tooltip.bs-tooltip-right .arrow,
.tooltip.b-tooltip.bs-tooltip-auto[x-placement^="right"] .arrow,
.tooltip.b-tooltip.bs-tooltip-left .arrow,
.tooltip.b-tooltip.bs-tooltip-auto[x-placement^="left"] .arrow {
    margin: 0.25rem 0;
}

.tooltip.b-tooltip-primary.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #4f3fa0;
}

.tooltip.b-tooltip-primary.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #4f3fa0;
}

.tooltip.b-tooltip-primary.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #4f3fa0;
}

.tooltip.b-tooltip-primary.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-primary.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #4f3fa0;
}

.tooltip.b-tooltip-primary .tooltip-inner {
    color: #fff;
    background-color: #4f3fa0;
}

.tooltip.b-tooltip-secondary.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #4c5172;
}

.tooltip.b-tooltip-secondary.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #4c5172;
}

.tooltip.b-tooltip-secondary.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #4c5172;
}

.tooltip.b-tooltip-secondary.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-secondary.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #4c5172;
}

.tooltip.b-tooltip-secondary .tooltip-inner {
    color: #fff;
    background-color: #4c5172;
}

.tooltip.b-tooltip-success.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #078138;
}

.tooltip.b-tooltip-success.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #078138;
}

.tooltip.b-tooltip-success.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #078138;
}

.tooltip.b-tooltip-success.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-success.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #078138;
}

.tooltip.b-tooltip-success .tooltip-inner {
    color: #fff;
    background-color: #078138;
}

.tooltip.b-tooltip-info.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #4462b2;
}

.tooltip.b-tooltip-info.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #4462b2;
}

.tooltip.b-tooltip-info.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #4462b2;
}

.tooltip.b-tooltip-info.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-info.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #4462b2;
}

.tooltip.b-tooltip-info .tooltip-inner {
    color: #fff;
    background-color: #4462b2;
}

.tooltip.b-tooltip-warning.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #e27209;
}

.tooltip.b-tooltip-warning.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #e27209;
}

.tooltip.b-tooltip-warning.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #e27209;
}

.tooltip.b-tooltip-warning.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-warning.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #e27209;
}

.tooltip.b-tooltip-warning .tooltip-inner {
    color: #fff;
    background-color: #e27209;
}

.tooltip.b-tooltip-danger.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #a3003c;
}

.tooltip.b-tooltip-danger.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #a3003c;
}

.tooltip.b-tooltip-danger.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #a3003c;
}

.tooltip.b-tooltip-danger.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-danger.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #a3003c;
}

.tooltip.b-tooltip-danger .tooltip-inner {
    color: #fff;
    background-color: #a3003c;
}

.tooltip.b-tooltip-light.bs-tooltip-top .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #f8f8f8;
}

.tooltip.b-tooltip-light.bs-tooltip-right .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: #f8f8f8;
}

.tooltip.b-tooltip-light.bs-tooltip-bottom .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
    border-bottom-color: #f8f8f8;
}

.tooltip.b-tooltip-light.bs-tooltip-left .arrow::before,
.tooltip.b-tooltip-light.bs-tooltip-auto[x-placement^="left"] .arrow::before {
    border-left-color: #f8f8f8;
}

.tooltip.b-tooltip-light .tooltip-inner {
    color: #212529;
    background-color: #f8f8f8;
}

.b-icon.bi {
    display: inline-block;
    overflow: visible;
    vertical-align: -0.15em;
}

.b-icon.b-icon-animation-cylon,
.b-icon.b-iconstack .b-icon-animation-cylon > g {
    transform-origin: center;
    animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-cylon,
    .b-icon.b-iconstack .b-icon-animation-cylon > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-cylon-vertical,
.b-icon.b-iconstack .b-icon-animation-cylon-vertical > g {
    transform-origin: center;
    animation: 0.75s infinite ease-in-out alternate b-icon-animation-cylon-vertical;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-cylon-vertical,
    .b-icon.b-iconstack .b-icon-animation-cylon-vertical > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-fade,
.b-icon.b-iconstack .b-icon-animation-fade > g {
    transform-origin: center;
    animation: 0.75s infinite ease-in-out alternate b-icon-animation-fade;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-fade,
    .b-icon.b-iconstack .b-icon-animation-fade > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-spin,
.b-icon.b-iconstack .b-icon-animation-spin > g {
    transform-origin: center;
    animation: 2s infinite linear normal b-icon-animation-spin;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-spin,
    .b-icon.b-iconstack .b-icon-animation-spin > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-spin-reverse,
.b-icon.b-iconstack .b-icon-animation-spin-reverse > g {
    transform-origin: center;
    animation: 2s infinite linear reverse b-icon-animation-spin;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-spin-reverse,
    .b-icon.b-iconstack .b-icon-animation-spin-reverse > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-spin-pulse,
.b-icon.b-iconstack .b-icon-animation-spin-pulse > g {
    transform-origin: center;
    animation: 1s infinite steps(8) normal b-icon-animation-spin;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-spin-pulse,
    .b-icon.b-iconstack .b-icon-animation-spin-pulse > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-spin-reverse-pulse,
.b-icon.b-iconstack .b-icon-animation-spin-reverse-pulse > g {
    transform-origin: center;
    animation: 1s infinite steps(8) reverse b-icon-animation-spin;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-spin-reverse-pulse,
    .b-icon.b-iconstack .b-icon-animation-spin-reverse-pulse > g {
        animation: none;
    }
}

.b-icon.b-icon-animation-throb,
.b-icon.b-iconstack .b-icon-animation-throb > g {
    transform-origin: center;
    animation: 0.75s infinite ease-in-out alternate b-icon-animation-throb;
}

@media (prefers-reduced-motion: reduce) {
    .b-icon.b-icon-animation-throb,
    .b-icon.b-iconstack .b-icon-animation-throb > g {
        animation: none;
    }
}

@keyframes b-icon-animation-cylon {
    0% {
        transform: translateX(-25%);
    }
    100% {
        transform: translateX(25%);
    }
}

@keyframes b-icon-animation-cylon-vertical {
    0% {
        transform: translateY(25%);
    }
    100% {
        transform: translateY(-25%);
    }
}

@keyframes b-icon-animation-fade {
    0% {
        opacity: 0.1;
    }
    100% {
        opacity: 1;
    }
}

@keyframes b-icon-animation-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(359deg);
    }
}

@keyframes b-icon-animation-throb {
    0% {
        opacity: 0.5;
        transform: scale(0.5);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.btn .b-icon.bi,
.nav-link .b-icon.bi,
.dropdown-toggle .b-icon.bi,
.dropdown-item .b-icon.bi,
.input-group-text .b-icon.bi {
    font-size: 125%;
    vertical-align: text-bottom;
}

/*# sourceMappingURL=dayshape-bootstrap.css.map */

.vue-recycle-scroller{position:relative}.vue-recycle-scroller.direction-vertical:not(.page-mode){overflow-y:auto}.vue-recycle-scroller.direction-horizontal:not(.page-mode){overflow-x:auto}.vue-recycle-scroller.direction-horizontal{display:-webkit-box;display:-ms-flexbox;display:flex}.vue-recycle-scroller__slot{-webkit-box-flex:1;-ms-flex:auto 0 0px;flex:auto 0 0}.vue-recycle-scroller__item-wrapper{-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;position:relative}.vue-recycle-scroller.ready .vue-recycle-scroller__item-view{position:absolute;top:0;left:0;will-change:transform}.vue-recycle-scroller.direction-vertical .vue-recycle-scroller__item-wrapper{width:100%}.vue-recycle-scroller.direction-horizontal .vue-recycle-scroller__item-wrapper{height:100%}.vue-recycle-scroller.ready.direction-vertical .vue-recycle-scroller__item-view{width:100%}.vue-recycle-scroller.ready.direction-horizontal .vue-recycle-scroller__item-view{height:100%}.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}
a[data-v-a8f1feb6]:not(.disabled){cursor:pointer}a.disabled[data-v-a8f1feb6]{cursor:default;pointer-events:none}.vbt-autcomplete-list[data-v-3e7373b6]{-ms-overflow-style:-ms-autohiding-scrollbar;max-height:350px;overflow-y:auto;padding-top:5px;position:absolute;z-index:999}.vbt-autcomplete-list[data-v-3e7373b6] .vbt-matched-text{font-weight:700}
:root{--cc-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--cc-font-size:16px;--cc-bg:#fff;--cc-z-index:2147483647;--cc-text:#2d4156;--cc-border-radius:.45rem;--cc-btn-primary-bg:#2d4156;--cc-btn-primary-text:var(--cc-bg);--cc-btn-primary-hover-bg:#1d2e38;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#eaeff2;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#d8e0e6;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-btn-border-radius:0.375rem;--cc-toggle-bg-off:#919ea6;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#d5dee2;--cc-toggle-knob-bg:#fff;--cc-toggle-knob-icon-color:#ecf2fa;--cc-block-text:var(--cc-text);--cc-cookie-category-block-bg:#f0f4f7;--cc-cookie-category-block-bg-hover:#e9eff4;--cc-section-border:#f1f3f5;--cc-cookie-table-border:#e9edf2;--cc-overlay-bg:#040608;--cc-overlay-opacity:.85;--cc-consent-modal-box-shadow:0 0.625rem 1.875rem rgba(2,2,3,.28);--cc-webkit-scrollbar-bg:#cfd5db;--cc-webkit-scrollbar-bg-hover:#9199a0}.c_darkmode{--cc-bg:#181b1d;--cc-text:#d8e5ea;--cc-btn-primary-bg:#a6c4dd;--cc-btn-primary-text:#000;--cc-btn-primary-hover-bg:#c2dff7;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#33383c;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#3e454a;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-toggle-bg-off:#667481;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#454c54;--cc-toggle-knob-bg:var(--cc-cookie-category-block-bg);--cc-toggle-knob-icon-color:var(--cc-bg);--cc-block-text:#b3bfc5;--cc-cookie-category-block-bg:#23272a;--cc-cookie-category-block-bg-hover:#2b3035;--cc-section-border:#292d31;--cc-cookie-table-border:#2b3035;--cc-webkit-scrollbar-bg:#667481;--cc-webkit-scrollbar-bg-hover:#9199a0}#cc--main{z-index:2147483647;z-index:var(--cc-z-index)}.cc_div *,.cc_div :after,.cc_div :before,.cc_div :hover{animation:none;background:none;border:none;border-radius:unset;box-shadow:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;float:none;font-family:inherit;font-size:1em;font-style:inherit;font-variant:normal;font-weight:inherit;height:auto;letter-spacing:unset;line-height:1.2;margin:0;padding:0;text-align:left;text-decoration:none;text-transform:none;transition:none;vertical-align:baseline;visibility:unset}.cc_div{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2d4156;color:var(--cc-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--cc-font-family);font-size:16px;font-size:var(--cc-font-size);font-weight:400;text-rendering:optimizeLegibility}#c-ttl,#s-bl td:before,#s-ttl,.cc_div .b-tl,.cc_div .c-bn{font-weight:600}#cm,#s-bl .act .b-acc,#s-inr,.cc_div .b-tl,.cc_div .c-bl{border-radius:.45rem;border-radius:var(--cc-border-radius)}#s-bl .act .b-acc{border-top-left-radius:0;border-top-right-radius:0}.cc_div a,.cc_div button,.cc_div input{-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden}.cc_div a{border-bottom:1px solid}.cc_div a:hover{border-color:transparent;text-decoration:none}.cc_div .c-bn>span{pointer-events:none}#cm-ov,#cs-ov,.c--anim #cm,.c--anim #s-cnt,.c--anim #s-inr{transition:visibility .25s linear,opacity .25s ease,transform .25s ease!important}.c--anim .c-bn{transition:background-color .25s ease!important}.c--anim #cm.bar.slide,.c--anim #cm.bar.slide+#cm-ov,.c--anim .bar.slide #s-inr,.c--anim .bar.slide+#cs-ov{transition:visibility .4s ease,opacity .4s ease,transform .4s ease!important}#cm.bar.slide,.cc_div .bar.slide #s-inr{opacity:1;transform:translateX(100%)}#cm.bar.top.slide,.cc_div .bar.left.slide #s-inr{opacity:1;transform:translateX(-100%)}#cm.slide,.cc_div .slide #s-inr{transform:translateY(1.6em)}#cm.top.slide{transform:translateY(-1.6em)}#cm.bar.slide{transform:translateY(100%)}#cm.bar.top.slide{transform:translateY(-100%)}.show--consent .c--anim #cm,.show--consent .c--anim #cm.bar,.show--settings .c--anim #s-inr,.show--settings .c--anim .bar.slide #s-inr{opacity:1;transform:scale(1);visibility:visible!important}.show--consent .c--anim #cm.box.middle,.show--consent .c--anim #cm.cloud.middle{transform:scale(1) translateY(-50%)}.show--settings .c--anim #s-cnt{visibility:visible!important}.force--consent.show--consent .c--anim #cm-ov,.show--settings .c--anim #cs-ov{opacity:.85!important;opacity:var(--cc-overlay-opacity)!important;visibility:visible!important}#cm{background:#fff;background:var(--cc-bg);bottom:1.25em;box-shadow:0 .625em 1.875em #000;box-shadow:0 .625rem 1.875rem rgba(2,2,3,.28);box-shadow:var(--cc-consent-modal-box-shadow);font-family:inherit;line-height:normal;max-width:24.2em;opacity:0;padding:1em 1.4em 1.3em;position:fixed;right:1.25em;transform:scale(.95);visibility:hidden;width:100%;z-index:1}#cc_div #cm{display:block!important}#c-ttl{font-size:1.05em;margin-bottom:.7em}.cloud #c-ttl{margin-top:-.15em}#c-txt{font-size:.9em;line-height:1.5em}.cc_div #c-bns{display:flex;justify-content:space-between;margin-top:1.4em}.cc_div .c-bn{background:#eaeff2;background:var(--cc-btn-secondary-bg);border-radius:.375rem;border-radius:var(--cc-btn-border-radius);color:#2d4156;color:var(--cc-btn-secondary-text);cursor:pointer;display:inline-block;flex:1;font-size:.82em;padding:1em 1.7em;text-align:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none}#c-bns button+button,#s-c-bn,#s-cnt button+button{float:right;margin-left:.5rem}#s-cnt #s-rall-bn{float:none}#cm .c_link:active,#cm .c_link:hover,#s-c-bn:active,#s-c-bn:hover,#s-cnt button+button:active,#s-cnt button+button:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-cnt{display:table;height:100%;left:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}#s-bl{outline:none;scrollbar-width:thin}#s-bl .title{margin-top:1.4em}#s-bl .b-bn,#s-bl .title:first-child{margin-top:0}#s-bl .b-acc .p{margin-top:0;padding:1em}#s-cnt .b-bn .b-tl{background:none;display:block;font-family:inherit;font-size:.95em;padding:1.3em 6.4em 1.3em 2.7em;position:relative;transition:background-color .25s ease;width:100%}#s-cnt .b-bn .b-tl.exp{cursor:pointer}#s-cnt .act .b-bn .b-tl{border-bottom-left-radius:0;border-bottom-right-radius:0}#s-cnt .b-bn .b-tl:active,#s-cnt .b-bn .b-tl:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl .b-bn{position:relative}#s-bl .c-bl{border:1px solid #f1f3f5;border:1px solid var(--cc-section-border);margin-bottom:.4rem;padding:1em;transition:background-color .25s ease}#s-bl .c-bl:hover{background:#f0f4f7;background:var(--cc-cookie-category-block-bg)}#s-bl .c-bl:last-child{margin-bottom:.5em}#s-bl .c-bl:first-child{border:none;margin-bottom:2em;margin-top:0;padding:0;transition:none}#s-bl .c-bl:not(.b-ex):first-child:hover{background:transparent;background:unset}#s-bl .c-bl.b-ex{background:#f0f4f7;background:var(--cc-cookie-category-block-bg);border:none;padding:0;transition:none}#s-bl .c-bl.b-ex+.c-bl{margin-top:2em}#s-bl .c-bl.b-ex+.c-bl.b-ex{margin-top:0}#s-bl .c-bl.b-ex:first-child{margin-bottom:1em;margin-bottom:.5em}#s-bl .b-acc{display:none;margin-bottom:0;max-height:0;overflow:hidden;padding-top:0}#s-bl .act .b-acc{display:block;max-height:100%;overflow:hidden}#s-cnt .p{color:#2d4156;color:var(--cc-block-text);font-size:.9em;line-height:1.5em;margin-top:.85em}.cc_div .b-tg .c-tgl:disabled{cursor:not-allowed}#c-vln{display:table-cell;position:relative;vertical-align:middle}#cs{bottom:0;left:0;padding:0 1.7em;position:fixed;right:0;top:0;width:100%}#cs,#s-inr{height:100%}#s-inr{box-shadow:0 13px 27px -5px rgba(3,6,9,.26);margin:0 auto;max-width:45em;opacity:0;overflow:hidden;padding-bottom:4.75em;padding-top:4.75em;position:relative;transform:scale(.96);visibility:hidden}#s-bns,#s-hdr,#s-inr{background:#fff;background:var(--cc-bg)}#s-bl{display:block;height:100%;overflow-x:hidden;overflow-y:auto;overflow-y:overlay;padding:1.3em 1.6em;width:100%}#s-bns{border-top:1px solid #f1f3f5;border-top:1px solid var(--cc-section-border);bottom:0;height:4.75em;left:0;padding:1em 1.8em;position:absolute;right:0}.cc_div .cc-link{border-bottom:1px solid #2d4156;border-bottom:1px solid var(--cc-btn-primary-bg);color:#2d4156;color:var(--cc-btn-primary-bg);cursor:pointer;display:inline;font-weight:600;padding-bottom:0;text-decoration:none}.cc_div .cc-link:active,.cc_div .cc-link:hover{border-color:transparent}#c-bns button:first-child,#s-bns button:first-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}#c-bns.swap button:first-child{background:#eaeff2;background:var(--cc-btn-secondary-bg);color:#2d4156;color:var(--cc-btn-secondary-text)}#c-bns.swap button:last-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}.cc_div .b-tg .c-tgl:checked~.c-tg{background:#2d4156;background:var(--cc-toggle-bg-on)}#c-bns button:first-child:active,#c-bns button:first-child:hover,#c-bns.swap button:last-child:active,#c-bns.swap button:last-child:hover,#s-bns button:first-child:active,#s-bns button:first-child:hover{background:#1d2e38;background:var(--cc-btn-primary-hover-bg);color:#fff;color:var(--cc-btn-primary-hover-text)}#c-bns.swap button:first-child:active,#c-bns.swap button:first-child:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-hdr{border-bottom:1px solid #f1f3f5;border-bottom:1px solid var(--cc-section-border);display:table;height:4.75em;padding:0 1.8em;position:absolute;top:0;width:100%;z-index:2}#s-hdr,#s-ttl{vertical-align:middle}#s-ttl{display:table-cell;font-size:1em}#s-c-bn{font-size:1.45em;font-weight:400;height:1.7em;margin:0;overflow:hidden;padding:0;position:relative;width:1.7em}#s-c-bnc{display:table-cell;vertical-align:middle}.cc_div span.t-lb{opacity:0;overflow:hidden;pointer-events:none;position:absolute;top:0;z-index:-1}#c_policy__text{height:31.25em;margin-top:1.25em;overflow-y:auto}#c-s-in{height:100%;height:calc(100% - 2.5em);max-height:37.5em;position:relative;top:50%;transform:translateY(-50%)}@media screen and (min-width:688px){#s-bl::-webkit-scrollbar{background:transparent;border-radius:0 .25em .25em 0;height:100%;width:.8em}#s-bl::-webkit-scrollbar-thumb{background:#cfd5db;background:var(--cc-webkit-scrollbar-bg);border:.25em solid #fff;border:.25em solid var(--cc-bg);border-radius:100em}#s-bl::-webkit-scrollbar-thumb:hover{background:#9199a0;background:var(--cc-webkit-scrollbar-bg-hover)}#s-bl::-webkit-scrollbar-button{height:5px;width:10px}}.cc_div .b-tg{bottom:0;display:inline-block;margin:auto;right:0;right:1.2em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.cc_div .b-tg,.cc_div .b-tg .c-tgl{cursor:pointer;position:absolute;top:0}.cc_div .b-tg .c-tgl{border:0;display:block;left:0;margin:0}.cc_div .b-tg .c-tg{background:#919ea6;background:var(--cc-toggle-bg-off);pointer-events:none;position:absolute;transition:background-color .25s ease,box-shadow .25s ease}.cc_div .b-tg,.cc_div .b-tg .c-tg,.cc_div .b-tg .c-tgl,.cc_div span.t-lb{border-radius:4em;height:1.5em;width:3.4em}.cc_div .b-tg .c-tg.c-ro{cursor:not-allowed}.cc_div .b-tg .c-tgl~.c-tg.c-ro{background:#d5dee2;background:var(--cc-toggle-bg-readonly)}.cc_div .b-tg .c-tgl~.c-tg.c-ro:after{box-shadow:none}.cc_div .b-tg .c-tg:after{background:#fff;background:var(--cc-toggle-knob-bg);border:none;border-radius:100%;box-shadow:0 1px 2px rgba(24,32,35,.36);box-sizing:content-box;content:"";display:block;height:1.25em;left:.125em;position:relative;top:.125em;transition:transform .25s ease;width:1.25em}.cc_div .b-tg .c-tgl:checked~.c-tg:after{transform:translateX(1.9em)}#s-bl table,#s-bl td,#s-bl th{border:none}#s-bl tbody tr{transition:background-color .25s ease}#s-bl tbody tr:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl table{border-collapse:collapse;margin:0;overflow:hidden;padding:0;text-align:left;width:100%}#s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);font-size:.9em;font-weight:600;padding:.5rem 1rem}#s-bl td,#s-bl th{font-size:.8em;padding:.8em .625em .8em 1.2em;text-align:left;vertical-align:top}#s-bl th{font-family:inherit;font-weight:600;padding:1em 1rem}#s-bl thead tr:first-child{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border)}.force--consent #cs,.force--consent #s-cnt{width:100vw}#cm-ov,#cs-ov{background:#070707;background:#040608;background:var(--cc-overlay-bg);bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;transition:none;visibility:hidden}.c--anim #cs-ov,.force--consent .c--anim #cm-ov,.force--consent.show--consent #cm-ov,.show--settings #cs-ov{display:block}#cs-ov{z-index:2}.force--consent .cc_div{bottom:0;left:0;position:fixed;top:0;transition:visibility .25s linear;visibility:hidden;width:100%;width:100vw}.force--consent.show--consent .c--anim .cc_div,.force--consent.show--settings .c--anim .cc_div{visibility:visible}.force--consent #cm{position:absolute}.force--consent #cm.bar{max-width:100vw;width:100vw}html.force--consent.show--consent{overflow-y:hidden!important}html.force--consent.show--consent,html.force--consent.show--consent body{height:auto!important;overflow-x:hidden!important}.cc_div .act .b-bn .exp:before,.cc_div .b-bn .exp:before{border:solid #2d4156;border:solid var(--cc-btn-secondary-text);border-width:0 2px 2px 0;content:"";display:inline-block;left:1.2em;margin-right:15px;padding:.2em;position:absolute;top:50%;transform:translateY(-50%) rotate(45deg)}.cc_div .act .b-bn .b-tl:before{transform:translateY(-20%) rotate(225deg)}.cc_div .on-i:before{border:solid #ecf2fa;border:solid var(--cc-toggle-knob-icon-color);border-width:0 2px 2px 0;display:inline-block;left:.75em;padding:.1em .1em .45em;top:.37em}#s-c-bn:after,#s-c-bn:before,.cc_div .on-i:before{content:"";margin:0 auto;position:absolute;transform:rotate(45deg)}#s-c-bn:after,#s-c-bn:before{background:#2d4156;background:var(--cc-btn-secondary-text);border-radius:1em;height:.6em;left:.82em;top:.58em;width:1.5px}#s-c-bn:after{transform:rotate(-45deg)}.cc_div .off-i,.cc_div .on-i{display:block;height:100%;position:absolute;right:0;text-align:center;transition:opacity .15s ease;width:50%}.cc_div .on-i{left:0;opacity:0}.cc_div .off-i:after,.cc_div .off-i:before{background:#ecf2fa;background:var(--cc-toggle-knob-icon-color);content:" ";display:block;height:.7em;margin:0 auto;position:absolute;right:.8em;top:.42em;transform-origin:center;width:.09375em}.cc_div .off-i:before{transform:rotate(45deg)}.cc_div .off-i:after{transform:rotate(-45deg)}.cc_div .b-tg .c-tgl:checked~.c-tg .on-i{opacity:1}.cc_div .b-tg .c-tgl:checked~.c-tg .off-i{opacity:0}#cm.box.middle,#cm.cloud.middle{bottom:auto;top:50%;transform:translateY(-37%)}#cm.box.middle.zoom,#cm.cloud.middle.zoom{transform:scale(.95) translateY(-50%)}#cm.box.center,#cm.cloud{left:1em;margin:0 auto;right:1em}#cm.cloud{max-width:50em;overflow:hidden;padding:1.2em 1.7em;text-align:center;width:unset}.cc_div .cloud #c-inr{display:table;width:100%}.cc_div .cloud #c-inr-i{display:table-cell;padding-right:2.4em;vertical-align:top;width:70%}.cc_div .cloud #c-txt{font-size:.85em}.cc_div .cloud #c-bns{display:table-cell;min-width:170px;vertical-align:middle}#cm.cloud .c-bn{margin:.5rem 0 0;width:100%}#cm.cloud .c-bn:first-child{margin:0}#cm.cloud.left{margin-right:1.25em}#cm.cloud.right{margin-left:1.25em}#cm.bar{border-radius:0;bottom:0;left:0;max-width:100%;padding:2em;position:fixed;right:0;width:100%}#cm.bar #c-inr{margin:0 auto;max-width:32em}#cm.bar #c-bns{max-width:33.75em}#cm.bar #cs{padding:0}.cc_div .bar #c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .bar #s-bl,.cc_div .bar #s-bns,.cc_div .bar #s-hdr{padding-left:1.4em;padding-right:1.4em}.cc_div .bar #cs{padding:0}.cc_div .bar #s-inr{border-radius:0;margin:0 0 0 auto;max-width:32em}.cc_div .bar.left #s-inr{margin-left:0;margin-right:auto}.cc_div .bar #s-bl table,.cc_div .bar #s-bl tbody,.cc_div .bar #s-bl td,.cc_div .bar #s-bl th,.cc_div .bar #s-bl thead,.cc_div .bar #s-bl tr,.cc_div .bar #s-cnt{display:block}.cc_div .bar #s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);border-top:0;display:block}.cc_div .bar #s-bl thead tr{left:-9999px;position:absolute;top:-9999px}.cc_div .bar #s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}.cc_div .bar #s-bl td{border:none;padding-left:35%;position:relative}.cc_div .bar #s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm.top{bottom:auto;top:1.25em}#cm.left{left:1.25em;right:auto}#cm.right{left:auto;right:1.25em}#cm.bar.left,#cm.bar.right{left:0;right:0}#cm.bar.top{top:0}@media (prefers-reduced-motion){#cc--main #cm,#cc--main #s-cnt,#cc--main #s-inr{transition:none!important}}@media screen and (max-width:688px){#cm,#cm.cloud,#cm.left,#cm.right{bottom:1em;display:block;left:1em;margin:0;max-width:100%;padding:1.2em!important;right:1em;width:auto}.force--consent #cm,.force--consent #cm.cloud{max-width:100vw;width:auto}#cm.top{bottom:auto;top:1em}#cm.bottom{bottom:1em;top:auto}#cm.bar.bottom{bottom:0}#cm.cloud .c-bn{font-size:.85em}#s-bns,.cc_div .bar #s-bns{padding:1em 1.3em}.cc_div .bar #s-inr{max-width:100%;width:100%}.cc_div .cloud #c-inr-i{padding-right:0}#cs{border-radius:0;padding:0}#c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .b-tg{right:1.1em;transform:scale(1.1)}#s-inr{border-radius:0;margin:0;padding-bottom:7.9em}#s-bns{height:7.9em}#s-bl,.cc_div .bar #s-bl{padding:1.2em}#s-hdr,.cc_div .bar #s-hdr{padding:0 1.2em}#s-bl table{width:100%}#s-inr.bns-t{padding-bottom:10.5em}.bns-t #s-bns{height:10.5em}.cc_div .bns-t .c-bn{font-size:.83em;padding:.9em 1.6em}#s-cnt .b-bn .b-tl{padding-bottom:1.2em;padding-top:1.2em}#s-bl table,#s-bl tbody,#s-bl td,#s-bl th,#s-bl thead,#s-bl tr,#s-cnt{display:block}#s-bl caption{border-bottom:0;display:block}#s-bl thead tr{left:-9999px;position:absolute;top:-9999px}#s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}#s-bl td{border:none;padding-left:35%;position:relative}#s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm .c-bn,.cc_div .c-bn{margin-right:0;width:100%}#s-cnt #s-rall-bn{margin-left:0}.cc_div #c-bns{flex-direction:column}#c-bns button+button,#s-cnt button+button{float:unset;margin-left:0;margin-top:.625em}#cm.box,#cm.cloud{left:1em;right:1em;width:auto}#cm.cloud.left,#cm.cloud.right{margin:0}.cc_div .cloud #c-bns,.cc_div .cloud #c-inr,.cc_div .cloud #c-inr-i{display:block;min-width:unset;width:auto}.cc_div .cloud #c-txt{font-size:.9em}.cc_div .cloud #c-bns{margin-top:1.625em}}
/* nvd3 version 1.8.2-dev (https://github.com/novus/nvd3) 2016-02-05 */
.nvd3 .nv-axis {
    pointer-events:none;
    opacity: 1;
}

.nvd3 .nv-axis path {
    fill: none;
    stroke: #000;
    stroke-opacity: .75;
    shape-rendering: crispEdges;
}

.nvd3 .nv-axis path.domain {
    stroke-opacity: .75;
}

.nvd3 .nv-axis.nv-x path.domain {
    stroke-opacity: 0;
}

.nvd3 .nv-axis line {
    fill: none;
    stroke: #e5e5e5;
    shape-rendering: crispEdges;
}

.nvd3 .nv-axis .zero line,
    /*this selector may not be necessary*/ .nvd3 .nv-axis line.zero {
    stroke-opacity: .75;
}

.nvd3 .nv-axis .nv-axisMaxMin text {
    font-weight: bold;
}

.nvd3 .x  .nv-axis .nv-axisMaxMin text,
.nvd3 .x2 .nv-axis .nv-axisMaxMin text,
.nvd3 .x3 .nv-axis .nv-axisMaxMin text {
    text-anchor: middle
}

.nvd3 .nv-axis.nv-disabled {
    opacity: 0;
}

.nvd3 .nv-bars rect {
    fill-opacity: .75;

    transition: fill-opacity 250ms linear;
    -moz-transition: fill-opacity 250ms linear;
    -webkit-transition: fill-opacity 250ms linear;
}

.nvd3 .nv-bars rect.hover {
    fill-opacity: 1;
}

.nvd3 .nv-bars .hover rect {
    fill: lightblue;
}

.nvd3 .nv-bars text {
    fill: rgba(0,0,0,0);
}

.nvd3 .nv-bars .hover text {
    fill: rgba(0,0,0,1);
}

.nvd3 .nv-multibar .nv-groups rect,
.nvd3 .nv-multibarHorizontal .nv-groups rect,
.nvd3 .nv-discretebar .nv-groups rect {
    stroke-opacity: 0;

    transition: fill-opacity 250ms linear;
    -moz-transition: fill-opacity 250ms linear;
    -webkit-transition: fill-opacity 250ms linear;
}

.nvd3 .nv-multibar .nv-groups rect:hover,
.nvd3 .nv-multibarHorizontal .nv-groups rect:hover,
.nvd3 .nv-candlestickBar .nv-ticks rect:hover,
.nvd3 .nv-discretebar .nv-groups rect:hover {
    fill-opacity: 1;
}

.nvd3 .nv-discretebar .nv-groups text,
.nvd3 .nv-multibarHorizontal .nv-groups text {
    font-weight: bold;
    fill: rgba(0,0,0,1);
    stroke: rgba(0,0,0,0);
}

/* boxplot CSS */
.nvd3 .nv-boxplot circle {
  fill-opacity: 0.5;
}

.nvd3 .nv-boxplot circle:hover {
  fill-opacity: 1;
}

.nvd3 .nv-boxplot rect:hover {
  fill-opacity: 1;
}

.nvd3 line.nv-boxplot-median {
  stroke: black;
}

.nv-boxplot-tick:hover {
  stroke-width: 2.5px;
}
/* bullet */
.nvd3.nv-bullet { font: 10px sans-serif; }
.nvd3.nv-bullet .nv-measure { fill-opacity: .8; }
.nvd3.nv-bullet .nv-measure:hover { fill-opacity: 1; }
.nvd3.nv-bullet .nv-marker { stroke: #000; stroke-width: 2px; }
.nvd3.nv-bullet .nv-markerTriangle { stroke: #000; fill: #fff; stroke-width: 1.5px; }
.nvd3.nv-bullet .nv-tick line { stroke: #666; stroke-width: .5px; }
.nvd3.nv-bullet .nv-range.nv-s0 { fill: #eee; }
.nvd3.nv-bullet .nv-range.nv-s1 { fill: #ddd; }
.nvd3.nv-bullet .nv-range.nv-s2 { fill: #ccc; }
.nvd3.nv-bullet .nv-title { font-size: 14px; font-weight: bold; }
.nvd3.nv-bullet .nv-subtitle { fill: #999; }


.nvd3.nv-bullet .nv-range {
    fill: #bababa;
    fill-opacity: .4;
}
.nvd3.nv-bullet .nv-range:hover {
    fill-opacity: .7;
}

.nvd3.nv-candlestickBar .nv-ticks .nv-tick {
    stroke-width: 1px;
}

.nvd3.nv-candlestickBar .nv-ticks .nv-tick.hover {
    stroke-width: 2px;
}

.nvd3.nv-candlestickBar .nv-ticks .nv-tick.positive rect {
    stroke: #2ca02c;
    fill: #2ca02c;
}

.nvd3.nv-candlestickBar .nv-ticks .nv-tick.negative rect {
    stroke: #d62728;
    fill: #d62728;
}

.with-transitions .nv-candlestickBar .nv-ticks .nv-tick {
    transition: stroke-width 250ms linear, stroke-opacity 250ms linear;
    -moz-transition: stroke-width 250ms linear, stroke-opacity 250ms linear;
    -webkit-transition: stroke-width 250ms linear, stroke-opacity 250ms linear;

}

.nvd3.nv-candlestickBar .nv-ticks line {
    stroke: #333;
}


.nvd3 .nv-legend .nv-disabled rect {
    /*fill-opacity: 0;*/
}

.nvd3 .nv-check-box .nv-box {
    fill-opacity:0;
    stroke-width:2;
}

.nvd3 .nv-check-box .nv-check {
    fill-opacity:0;
    stroke-width:4;
}

.nvd3 .nv-series.nv-disabled .nv-check-box .nv-check {
    fill-opacity:0;
    stroke-opacity:0;
}

.nvd3 .nv-controlsWrap .nv-legend .nv-check-box .nv-check {
    opacity: 0;
}

/* line plus bar */
.nvd3.nv-linePlusBar .nv-bar rect {
    fill-opacity: .75;
}

.nvd3.nv-linePlusBar .nv-bar rect:hover {
    fill-opacity: 1;
}
.nvd3 .nv-groups path.nv-line {
    fill: none;
}

.nvd3 .nv-groups path.nv-area {
    stroke: none;
}

.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point {
    fill-opacity: 0;
    stroke-opacity: 0;
}

.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point {
    fill-opacity: .5 !important;
    stroke-opacity: .5 !important;
}


.with-transitions .nvd3 .nv-groups .nv-point {
    transition: stroke-width 250ms linear, stroke-opacity 250ms linear;
    -moz-transition: stroke-width 250ms linear, stroke-opacity 250ms linear;
    -webkit-transition: stroke-width 250ms linear, stroke-opacity 250ms linear;

}

.nvd3.nv-scatter .nv-groups .nv-point.hover,
.nvd3 .nv-groups .nv-point.hover {
    stroke-width: 7px;
    fill-opacity: .95 !important;
    stroke-opacity: .95 !important;
}


.nvd3 .nv-point-paths path {
    stroke: #aaa;
    stroke-opacity: 0;
    fill: #eee;
    fill-opacity: 0;
}



.nvd3 .nv-indexLine {
    cursor: ew-resize;
}

/********************
 * SVG CSS
 */

/********************
  Default CSS for an svg element nvd3 used
*/
svg.nvd3-svg {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    display: block;
    width:100%;
    height:100%;
}

/********************
  Box shadow and border radius styling
*/
.nvtooltip.with-3d-shadow, .with-3d-shadow .nvtooltip {
    -moz-box-shadow: 0 5px 10px rgba(0,0,0,.2);
    -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2);
    box-shadow: 0 5px 10px rgba(0,0,0,.2);

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}


.nvd3 text {
    font: normal 12px Arial;
}

.nvd3 .title {
    font: bold 14px Arial;
}

.nvd3 .nv-background {
    fill: white;
    fill-opacity: 0;
}

.nvd3.nv-noData {
    font-size: 18px;
    font-weight: bold;
}


/**********
*  Brush
*/

.nv-brush .extent {
    fill-opacity: .125;
    shape-rendering: crispEdges;
}

.nv-brush .resize path {
    fill: #eee;
    stroke: #666;
}


/**********
*  Legend
*/

.nvd3 .nv-legend .nv-series {
    cursor: pointer;
}

.nvd3 .nv-legend .nv-disabled circle {
    fill-opacity: 0;
}

/* focus */
.nvd3 .nv-brush .extent {
    fill-opacity: 0 !important;
}

.nvd3 .nv-brushBackground rect {
    stroke: #000;
    stroke-width: .4;
    fill: #fff;
    fill-opacity: .7;
}


.nvd3.nv-ohlcBar .nv-ticks .nv-tick {
    stroke-width: 1px;
}

.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover {
    stroke-width: 2px;
}

.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive {
    stroke: #2ca02c;
}

.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative {
    stroke: #d62728;
}


.nvd3 .background path {
    fill: none;
    stroke: #EEE;
    stroke-opacity: .4;
    shape-rendering: crispEdges;
}

.nvd3 .foreground path {
    fill: none;
    stroke-opacity: .7;
}

.nvd3 .nv-parallelCoordinates-brush .extent 
{
    fill: #fff;
    fill-opacity: .6;
    stroke: gray;
    shape-rendering: crispEdges;
}

.nvd3 .nv-parallelCoordinates .hover  {
    fill-opacity: 1;
	stroke-width: 3px;
}


.nvd3 .missingValuesline line {
  fill: none;
  stroke: black;
  stroke-width: 1;
  stroke-opacity: 1;
  stroke-dasharray: 5, 5; 
}
.nvd3.nv-pie path {
    stroke-opacity: 0;
    transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear;
    -moz-transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear;
    -webkit-transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear;

}

.nvd3.nv-pie .nv-pie-title {
    font-size: 24px;
    fill: rgba(19, 196, 249, 0.59);
}

.nvd3.nv-pie .nv-slice text {
    stroke: #000;
    stroke-width: 0;
}

.nvd3.nv-pie path {
    stroke: #fff;
    stroke-width: 1px;
    stroke-opacity: 1;
}

.nvd3.nv-pie path {
    fill-opacity: .7;
}
.nvd3.nv-pie .hover path {
    fill-opacity: 1;
}
.nvd3.nv-pie .nv-label {
    pointer-events: none;
}
.nvd3.nv-pie .nv-label rect {
    fill-opacity: 0;
    stroke-opacity: 0;
}

/* scatter */
.nvd3 .nv-groups .nv-point.hover {
    stroke-width: 20px;
    stroke-opacity: .5;
}

.nvd3 .nv-scatter .nv-point.hover {
    fill-opacity: 1;
}
.nv-noninteractive {
    pointer-events: none;
}

.nv-distx, .nv-disty {
    pointer-events: none;
}

/* sparkline */
.nvd3.nv-sparkline path {
    fill: none;
}

.nvd3.nv-sparklineplus g.nv-hoverValue {
    pointer-events: none;
}

.nvd3.nv-sparklineplus .nv-hoverValue line {
    stroke: #333;
    stroke-width: 1.5px;
}

.nvd3.nv-sparklineplus,
.nvd3.nv-sparklineplus g {
    pointer-events: all;
}

.nvd3 .nv-hoverArea {
    fill-opacity: 0;
    stroke-opacity: 0;
}

.nvd3.nv-sparklineplus .nv-xValue,
.nvd3.nv-sparklineplus .nv-yValue {
    stroke-width: 0;
    font-size: .9em;
    font-weight: normal;
}

.nvd3.nv-sparklineplus .nv-yValue {
    stroke: #f66;
}

.nvd3.nv-sparklineplus .nv-maxValue {
    stroke: #2ca02c;
    fill: #2ca02c;
}

.nvd3.nv-sparklineplus .nv-minValue {
    stroke: #d62728;
    fill: #d62728;
}

.nvd3.nv-sparklineplus .nv-currentValue {
    font-weight: bold;
    font-size: 1.1em;
}
/* stacked area */
.nvd3.nv-stackedarea path.nv-area {
    fill-opacity: .7;
    stroke-opacity: 0;
    transition: fill-opacity 250ms linear, stroke-opacity 250ms linear;
    -moz-transition: fill-opacity 250ms linear, stroke-opacity 250ms linear;
    -webkit-transition: fill-opacity 250ms linear, stroke-opacity 250ms linear;
}

.nvd3.nv-stackedarea path.nv-area.hover {
    fill-opacity: .9;
}


.nvd3.nv-stackedarea .nv-groups .nv-point {
    stroke-opacity: 0;
    fill-opacity: 0;
}


.nvtooltip {
    position: absolute;
    background-color: rgba(255,255,255,1.0);
    color: rgba(0,0,0,1.0);
    padding: 1px;
    border: 1px solid rgba(0,0,0,.2);
    z-index: 10000;
    display: block;

    font-family: Arial;
    font-size: 13px;
    text-align: left;
    pointer-events: none;

    white-space: nowrap;

    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.nvtooltip {
    background: rgba(255,255,255, 0.8);
    border: 1px solid rgba(0,0,0,0.5);
    border-radius: 4px;
}

/*Give tooltips that old fade in transition by
    putting a "with-transitions" class on the container div.
*/
.nvtooltip.with-transitions, .with-transitions .nvtooltip {
    transition: opacity 50ms linear;
    -moz-transition: opacity 50ms linear;
    -webkit-transition: opacity 50ms linear;

    transition-delay: 200ms;
    -moz-transition-delay: 200ms;
    -webkit-transition-delay: 200ms;
}

.nvtooltip.x-nvtooltip,
.nvtooltip.y-nvtooltip {
    padding: 8px;
}

.nvtooltip h3 {
    margin: 0;
    padding: 4px 14px;
    line-height: 18px;
    font-weight: normal;
    background-color: rgba(247,247,247,0.75);
    color: rgba(0,0,0,1.0);
    text-align: center;

    border-bottom: 1px solid #ebebeb;

    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
}

.nvtooltip p {
    margin: 0;
    padding: 5px 14px;
    text-align: center;
}

.nvtooltip span {
    display: inline-block;
    margin: 2px 0;
}

.nvtooltip table {
    margin: 6px;
    border-spacing:0;
}


.nvtooltip table td {
    padding: 2px 9px 2px 0;
    vertical-align: middle;
}

.nvtooltip table td.key {
    font-weight: normal;
}
.nvtooltip table td.key.total {
    font-weight: bold;
}
.nvtooltip table td.value {
    text-align: right;
    font-weight: bold;
}

.nvtooltip table tr.highlight td {
    padding: 1px 9px 1px 0;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-top-style: solid;
    border-top-width: 1px;
}

.nvtooltip table td.legend-color-guide div {
    width: 8px;
    height: 8px;
    vertical-align: middle;
}

.nvtooltip table td.legend-color-guide div {
    width: 12px;
    height: 12px;
    border: 1px solid #999;
}

.nvtooltip .footer {
    padding: 3px;
    text-align: center;
}

.nvtooltip-pending-removal {
    pointer-events: none;
    display: none;
}


/****
Interactive Layer
*/
.nvd3 .nv-interactiveGuideLine {
    pointer-events:none;
}
.nvd3 line.nv-guideline {
    stroke: #ccc;
}

/*!
angular-xeditable - 0.1.8
Edit-in-place for angular.js
Build date: 2014-01-10 
*/

.editable-wrap{display:inline-block;white-space:nowrap;margin:0}.editable-wrap .editable-controls,.editable-wrap .editable-error{margin-bottom:0}.editable-wrap .editable-controls>input,.editable-wrap .editable-controls>select,.editable-wrap .editable-controls>textarea{margin-bottom:0}.editable-wrap .editable-input{display:inline-block}.editable-buttons{display:inline-block;vertical-align:top}.editable-buttons button{margin-left:5px}.editable-input.editable-has-buttons{width:auto}.editable-bstime .editable-input input[type=text]{width:46px}.editable-bstime .well-small{margin-bottom:0;padding:10px}.editable-range output{display:inline-block;min-width:30px;vertical-align:top;text-align:center}.editable-color input[type=color]{width:50px}.editable-checkbox label span,.editable-checklist label span,.editable-radiolist label span{margin-left:7px;margin-right:10px}.editable-hide{display:none!important}.editable-click,a.editable-click{text-decoration:none;color:#428bca;border-bottom:dashed 1px #428bca}.editable-click:hover,a.editable-click:hover{text-decoration:none;color:#2a6496;border-bottom-color:#2a6496}.editable-empty,.editable-empty:hover,.editable-empty:focus,a.editable-empty,a.editable-empty:hover,a.editable-empty:focus{font-style:italic;color:#D14;text-decoration:none}
/*!
   angular-inform v0.0.18
   (c) 2014 (null) McNull https://github.com/McNull/angular-inform
   License: MIT
*/

/*
   This has been modified from the original vendor file (increase z-index and treatment of white-space)
*/


.inform-fixed {
  position: fixed;
  top: 55px;
  left: 20px;
  right: 5px;
  z-index: 10000;
}

.inform-fixed .inform-message {
  width: auto;
}

@media screen and (min-width: 480px) {
  .inform-fixed {
    left: auto;
    width: 440px;
  }

  .inform-fixed.inform-center {
    right: 0;
    left: 0;
    margin-left: auto;
    margin-right: auto;
  }
}

.inform-message {
    overflow: hidden;
    white-space: pre-line;
}

.inform-message > button.close {
  margin-left: 15px;
}

.inform-shadow .inform-message {
  box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.25);
}

.inform-message.alert-primary {
  color: #FFF;
  background-color: #007bff;
}

.inform-message.alert-default {
  background-color: #F5F5F5;
  border: 1px solid #CCC;
  color: #333;
}


.inform-message-wrap {
  /*overflow: hidden;*/
}
.inform-animate .inform-message-wrap.ng-enter {
  -webkit-animation: 1.0s inform-message-slide-in;
          animation: 1.0s inform-message-slide-in;
}

.inform-animate .inform-message-wrap.ng-leave {
  -webkit-animation: 1.0s inform-message-fade-out;
          animation: 1.0s inform-message-fade-out;
}

.inform-animate .inform-badge.ng-enter {
  -webkit-animation: inform-badge-scale 0.5s;
          animation: inform-badge-scale 0.5s;
}

@-webkit-keyframes inform-badge-scale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  25% {
    opacity: 1;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes inform-badge-scale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  25% {
    opacity: 1;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes inform-message-slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    max-height: 0px;
  }
  50% {
    opacity: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    max-height: 1000px;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    max-height: 1000px;
  }
}

@keyframes inform-message-slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    max-height: 0px;
  }
  50% {
    opacity: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    max-height: 1000px;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    max-height: 1000px;
  }
}

@-webkit-keyframes inform-message-fade-out {
  0% {
    opacity: 1;
    max-height: 1000px;
  }
  50% {
    opacity: 0;
    max-height: 1000px;
  }
  100% {
    opacity: 0;
    max-height: 0px;
  }
}

@keyframes inform-message-fade-out {
  0% {
    opacity: 1;
    max-height: 1000px;
  }
  50% {
    opacity: 0;
    max-height: 1000px;
  }
  100% {
    opacity: 0;
    max-height: 0px;
  }
}
/*! 
 * angular-hotkeys v1.4.5
 * https://chieffancypants.github.io/angular-hotkeys
 * Copyright (c) 2014 Wes Cruver
 * License: MIT
 */
.cfp-hotkeys-container {
  display: table !important;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #333;
  font-size: 1em;
  background-color: rgba(255,255,255,0.9);
}

.cfp-hotkeys-container.fade {
  z-index: -1024;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -moz-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}

.cfp-hotkeys-container.fade.in {
  z-index: 10002;
  visibility: visible;
  opacity: 1;
}

.cfp-hotkeys-title {
  font-weight: bold;
  text-align: center;
  font-size: 1.2em;
}

.cfp-hotkeys {
  width: 100%;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}

.cfp-hotkeys table {
  margin: auto;
  color: #333;
}

.cfp-content {
  display: table-cell;
  vertical-align: middle;
}

.cfp-hotkeys-keys {
  padding: 5px;
  text-align: right;
}

.cfp-hotkeys-key {
  display: inline-block;
  color: #fff;
  background-color: #333;
  border: 1px solid #333;
  border-radius: 5px;
  text-align: center;
  margin-right: 5px;
  box-shadow: inset 0 1px 0 #666, 0 1px 0 #bbb;
  padding: 5px 9px;
  font-size: 1em;
}

.cfp-hotkeys-text {
  padding-left: 10px;
  font-size: 1em;
}

.cfp-hotkeys-close {
  position: fixed;
  top: 20px;
  right: 20px;
  font-size: 2em;
  font-weight: bold;
  padding: 5px 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  min-height: 45px;
  min-width: 45px;
  text-align: center;
}

.cfp-hotkeys-close:hover {
  background-color: #fff;
  cursor: pointer;
}

@media all and (max-width: 500px) {
  .cfp-hotkeys {
    font-size: 0.8em;
  }
}

@media all and (min-width: 750px) {
  .cfp-hotkeys {
    font-size: 1.2em;
  }
}

tags-input {
  display: block;
}
tags-input *, tags-input *:before, tags-input *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
tags-input .host {
  position: relative;
  margin-top: 5px;
  margin-bottom: 5px;
  height: 100%;
}
tags-input .host:active {
  outline: none;
}

tags-input .tags {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
  padding: 1px;
  overflow: hidden;
  word-wrap: break-word;
  cursor: text;
  background-color: #fff;
  border: 1px solid darkgray;
  box-shadow: 1px 1px 1px 0 lightgray inset;
  height: 100%;
}
tags-input .tags.focused {
  outline: none;
  -webkit-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
  -moz-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
  box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
}
tags-input .tags .tag-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
tags-input .tags .tag-item {
  margin: 2px;
  padding: 0 5px;
  display: inline-block;
  float: left;
  font: 14px "Helvetica Neue", Helvetica, Arial, sans-serif;
  height: 26px;
  line-height: 25px;
  border: 1px solid #acacac;
  border-radius: 3px;
  background: -webkit-linear-gradient(top, #f0f9ff 0%, #cbebff 47%, #a1dbff 100%);
  background: linear-gradient(to bottom, #f0f9ff 0%, #cbebff 47%, #a1dbff 100%);
}
tags-input .tags .tag-item.selected {
  background: -webkit-linear-gradient(top, #febbbb 0%, #fe9090 45%, #ff5c5c 100%);
  background: linear-gradient(to bottom, #febbbb 0%, #fe9090 45%, #ff5c5c 100%);
}
tags-input .tags .tag-item .remove-button {
  margin: 0 0 0 5px;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  vertical-align: middle;
  font: bold 16px Arial, sans-serif;
  color: #585858;
}
tags-input .tags .tag-item .remove-button:active {
  color: #ff0000;
}
tags-input .tags .input {
  border: 0;
  outline: none;
  margin: 2px;
  padding: 0;
  padding-left: 5px;
  float: left;
  height: 26px;
  font: 14px "Helvetica Neue", Helvetica, Arial, sans-serif;
}
tags-input .tags .input.invalid-tag {
  color: #ff0000;
}
tags-input .tags .input::-ms-clear {
  display: none;
}
tags-input.ng-invalid .tags {
  -webkit-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
  -moz-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
  box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
}
tags-input[disabled] .host:focus {
  outline: none;
}
tags-input[disabled] .tags {
  background-color: #eee;
  cursor: default;
}
tags-input[disabled] .tags .tag-item {
  opacity: 0.65;
  background: -webkit-linear-gradient(top, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%);
  background: linear-gradient(to bottom, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%);
}
tags-input[disabled] .tags .tag-item .remove-button {
  cursor: default;
}
tags-input[disabled] .tags .tag-item .remove-button:active {
  color: #585858;
}
tags-input[disabled] .tags .input {
  background-color: #eee;
  cursor: default;
}

tags-input .autocomplete {
  margin-top: 5px;
  position: absolute;
  padding: 5px 0;
  z-index: 999;
  width: 100%;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
tags-input .autocomplete .suggestion-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  max-height: 280px;
  overflow-y: auto;
  position: relative;
}
tags-input .autocomplete .suggestion-item {
  padding: 5px 10px;
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #000;
  background-color: #fff;
}
tags-input .autocomplete .suggestion-item.selected {
  color: #fff;
  background-color: #0097cf;
}
tags-input .autocomplete .suggestion-item.selected em {
  color: #fff;
  background-color: #0097cf;
}
tags-input .autocomplete .suggestion-item em {
  font: normal bold 16px "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #000;
  background-color: #fff;
}

/*# sourceMappingURL=ng-tags-input.css.map */

/* 
 * Don't modify things marked with ! - unless you know what you're doing
 */

/* ! vertical layout */
.multiSelect .vertical {
    float: none;
}

/* ! horizontal layout */
.multiSelect .horizontal:not(.multiSelectGroup) {
    float: left;
}

/* ! create a "row" */
.multiSelect .line {
    max-height: 34px;   
    overflow: hidden;
}

/* ! create a "column" */
.multiSelect .acol {
    display: inline-block;    
    min-width: 12px;
}

/* ! */
.multiSelect .inlineBlock {
    display: inline-block;
}

/* the multiselect button */
.multiSelect .button {
    display: block;
    position: relative;
    text-align: left;    
    cursor: pointer;
    border: 1px solid #ccc;    
    padding: 1px 8px 1px 8px;    
    font-size: 14px;
    min-height: 34px !important;
    border-radius: 4px;
    color: #555;   
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none; 
    white-space:normal;
    background-color: #fff;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    /* background-image: linear-gradient(#fff, #f7f7f7); */      
    width: 100%;
}

/* button: hover */
.multiSelect .button:hover {    
    /* background-image: linear-gradient(#fff, #e9e9e9); */    
}

.multiSelect .button[disabled], .multiselect .button[disabled]:hover {
    cursor: not-allowed;
    background-color: #eee;
    background-image: none;
}


/* button: clicked */
.multiSelect .buttonClicked {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* labels on the button */
.multiSelect .buttonLabel {
    display: inline-block;
    padding: 5px 0px 5px 0px; 
}

/* downward pointing arrow */
.multiSelect .caret {
    width: 0;
    height: 0;
    border-top: 6px solid rgb(85,85,85);
    border-right: 3px solid transparent;
    border-left: 3px solid transparent;
    right: 6px;
    position: absolute;
    top: 50%;
}

/* the main checkboxes and helper layer */
.multiSelect .checkboxLayer {
    background-color: #fff;
    position: absolute;
    z-index: 999;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);    
    min-width:278px;
    display: none !important;
    margin-right: 30px;
}

/* container of helper elements */
.multiSelect .helperContainer {
    border-bottom: 1px solid #ddd;
    padding: 8px 8px 0px 8px;
}

/* helper buttons (select all, none, reset); */
.multiSelect .helperButton {
    display: inline;
    text-align: center;
    cursor: pointer;
    border: 1px solid #ccc;
    height: 26px;
    font-size: 13px;
    border-radius: 2px;
    color: #666;    
    background-color: #f1f1f1;
    line-height: 1.6;
    margin: 0px 0px 8px 0px;
}

/* clear button */
.multiSelect .clearButton {
    position: absolute;
    display: inline;
    text-align: center;
    cursor: pointer;
    border: 1px solid #ccc;
    height: 22px;
    width: 22px;
    font-size: 13px;
    border-radius: 2px;
    color: #666;    
    background-color: #f1f1f1;
    line-height: 1.4;
    right : 2px;
    top: 2px;
}

/* filter */
.multiSelect .inputFilter {
    border-radius: 2px; 
    border: 1px solid #ccc;
    height: 26px;
    font-size: 14px;
    width:100%;    
    padding-left:7px;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */    
    color: #888;
    margin: 0px 0px 8px 0px;
}

/* helper elements on hover & focus */
.multiSelect .clearButton:hover,
.multiSelect .helperButton:hover {
    border: 1px solid #ccc;
    color: #999;    
    background-color: #f4f4f4;    
}

.multiSelect .clearButton:focus,
.multiSelect .helperButton:focus,
.multiSelect .inputFilter:focus {
    border: 1px solid #66AFE9 !important;
    box-shadow: inset 0 0px 1px rgba(0,0,0,.035), 0 0 5px rgba(82,168,236,.7) !important;
}

/* container of multi select items */
.multiSelect .checkBoxContainer {
    display: inline-block;
    padding: 8px;   
}

/* ! to show / hide the checkbox layer above */
.multiSelect .show {
    display: block !important;
}

/* item labels */
.multiSelect .multiSelectItem {
    display: block;
    padding: 3px;
    color: #444;       
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;      
    border: 1px solid transparent;
    position: relative;
    min-width:278px;
}

.multiSelect .multiSelectItem label {
    font-weight: normal;
}

/* Item labels: selected - Enable this if you want to apply styling on selected items */
.multiSelect .multiSelectItem:not(.multiSelectGroup).selected
{
    background-image: linear-gradient( #e9e9e9, #f1f1f1 );    
    color: #555;        
    cursor: pointer;        
    border-top: 1px solid #e4e4e4;
    border-left: 1px solid #e4e4e4;    
    border-right: 1px solid #d9d9d9;            
}

/* item labels focus on mouse hover */
.multiSelect .multiSelectItem:hover, 
.multiSelect .multiSelectGroup:hover {
    background-image: linear-gradient( #c1c1c1, #999 ) !important;    
    color: #fff !important;    
    cursor: pointer;        
    border: 1px solid #ccc !important;
}

/* item labels focus using keyboard */
.multiSelect .multiSelectFocus { 
    background-image: linear-gradient( #c1c1c1, #999 ) !important;    
    color: #fff !important;    
    cursor: pointer;        
    border: 1px solid #ccc !important;
}

/* change mouse pointer into the pointing finger */
.multiSelect .multiSelectItem span:hover, 
.multiSelect .multiSelectGroup span:hover
{    
    cursor: pointer;  
}

/* ! group labels */
.multiSelect .multiSelectGroup {    
    display: block;
    clear: both;
}

/* right-align the tick mark (&#10004;) */
.multiSelect .tickMark {
    display:inline-block; 
    position: absolute; 
    right: 10px; 
    top: 7px;
    font-size: 10px;          
}

/* hide the original HTML checkbox away */
.multiSelect .checkbox {    
    color: #ddd !important;    
    position: absolute;
    left: -9999px;
    cursor: pointer;    
}

/* checkboxes currently disabled */
.multiSelect .disabled, 
.multiSelect .disabled:hover,
.multiSelect .disabled label input:hover ~ span {
    color: #c4c4c4 !important;
    cursor: not-allowed !important;
}

/* If you use images in button / checkbox label, you might want to change the image style here. */
.multiSelect img {
    vertical-align: middle;
    margin-bottom:0px;
    height: 22px;
    width:22px;
}

/**
 * @license angular-bootstrap-datetimepicker  version: 0.4.0
 * Copyright 2016 Knight Rider Consulting, Inc. http://www.knightrider.com
 * License: MIT
 */
.datetimepicker {
  border-radius: 4px;
  direction: ltr;
  display: block;
  margin-top: 1px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  width: 320px;
}
.datetimepicker > div {
  display: none;
}
.datetimepicker .hour,
.datetimepicker .minute {
  height: 34px;
  line-height: 34px;
  margin: 0;
  width: 25%;
}
.datetimepicker .table {
  margin: 0;
}
.datetimepicker .table td,
.datetimepicker .table th {
  border: 0;
  border-radius: 4px;
  height: 20px;
  text-align: center;
}
.datetimepicker .minute:hover,
.datetimepicker .hour:hover,
.datetimepicker .day:hover,
.datetimepicker .switch:hover,
.datetimepicker .left:hover,
.datetimepicker .right:hover {
  background: #eeeeee;
  cursor: pointer;
}
.datetimepicker .disabled,
.datetimepicker .disabled:hover {
  background: none;
  color: #ebebeb;
  cursor: default;
}
.datetimepicker .active,
.datetimepicker .active:hover,
.datetimepicker .active.disabled,
.datetimepicker .active.disabled:hover {
    background-color: var(--primary);
  background-repeat: repeat-x;
  border-color: #0044cc #0044cc #002a80;
  color: #ffffff;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#04c', GradientType=0);
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datetimepicker .active:hover,
.datetimepicker .active:hover:hover,
.datetimepicker .active.disabled:hover,
.datetimepicker .active.disabled:hover:hover,
.datetimepicker .active:active,
.datetimepicker .active:hover:active,
.datetimepicker .active.disabled:active,
.datetimepicker .active.disabled:hover:active,
.datetimepicker .active.active,
.datetimepicker .active:hover.active,
.datetimepicker .active.disabled.active,
.datetimepicker .active.disabled:hover.active,
.datetimepicker .active.disabled,
.datetimepicker .active:hover.disabled,
.datetimepicker .active.disabled.disabled,
.datetimepicker .active.disabled:hover.disabled,
.datetimepicker td.active[disabled],
.datetimepicker td.active:hover[disabled],
.datetimepicker td.active.disabled[disabled],
.datetimepicker td.active.disabled:hover[disabled],
.datetimepicker span.active[disabled],
.datetimepicker span.active:hover[disabled],
.datetimepicker span.active.disabled[disabled],
.datetimepicker span.active.disabled:hover[disabled] {
    background-color: var(--primary);
}
.datetimepicker span {
  border-radius: 4px;
  cursor: pointer;
  display: block;
  float: left;
  height: 54px;
  line-height: 54px;
  margin: 1%;
  width: 23%;
}
.datetimepicker span:hover {
  background: #eeeeee;
}
.datetimepicker .past,
.datetimepicker .future {
  color: #999999;
}

/*# sourceMappingURL=datetimepicker.css.map */

/*!
 * ui-select
 * http://github.com/angular-ui/ui-select
 * Version: 0.12.0 - 2015-05-28T07:44:11.364Z
 * License: MIT
 */


/* Style when highlighting a search. */
.ui-select-highlight {
  font-weight: bold;
}

.ui-select-offscreen {
  clip: rect(0 0 0 0) !important;
  width: 1px !important;
  height: 1px !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  outline: 0 !important;
  left: 0px !important;
  top: 0px !important;
}

/* Select2 theme */

/* Mark invalid Select2 */
.ng-dirty.ng-invalid > a.select2-choice {
    border-color: #D44950;
}

.select2-result-single {
  padding-left: 0;
}

.select2-locked > .select2-search-choice-close{
  display:none;
}

.select-locked > .ui-select-match-close{
    display:none;
}

body > .select2-container.open {
  z-index: 9999; /* The z-index Select2 applies to the select2-drop */
}

/* Handle up direction Select2 */
.ui-select-container[theme="select2"].direction-up .ui-select-match {
    border-radius: 4px; /* FIXME hardcoded value :-/ */
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.ui-select-container[theme="select2"].direction-up .ui-select-dropdown {
    border-radius: 4px; /* FIXME hardcoded value :-/ */
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;

    border-top-width: 1px;  /* FIXME hardcoded value :-/ */
    border-top-style: solid;

    box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.25);

    margin-top: -4px; /* FIXME hardcoded value :-/ */
}
.ui-select-container[theme="select2"].direction-up .ui-select-dropdown .select2-search {
    margin-top: 4px; /* FIXME hardcoded value :-/ */
}
.ui-select-container[theme="select2"].direction-up.select2-dropdown-open .ui-select-match {
    border-bottom-color: #5897fb;
}

/* Selectize theme */

/* Helper class to show styles when focus */
.selectize-input.selectize-focus{
  border-color: #007FBB !important;
}

/* Fix input width for Selectize theme */
.selectize-control > .selectize-input > input {
  width: 100%;
}

/* Fix dropdown width for Selectize theme */
.selectize-control > .selectize-dropdown {
  width: 100%;
}

/* Mark invalid Selectize */
.ng-dirty.ng-invalid > div.selectize-input {
    border-color: #D44950;
}

/* Handle up direction Selectize */
.ui-select-container[theme="selectize"].direction-up .ui-select-dropdown {
    box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.25);

    margin-top: -2px; /* FIXME hardcoded value :-/ */
}

/* Bootstrap theme */

/* Helper class to show styles when focus */
.btn-default-focus {
  color: #333;
  background-color: #EBEBEB;
  border-color: #ADADAD;
  text-decoration: none;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.ui-select-bootstrap .ui-select-toggle {
  position: relative;
  cursor: pointer;
}

.ui-select-bootstrap .ui-select-toggle[disabled] {
  cursor:not-allowed;
}

.ui-select-bootstrap .ui-select-toggle > .caret {
  position: absolute;
  height: 10px;
  top: 50%;
  right: 4px;
  margin-top: -2px;
}

/* Fix Bootstrap dropdown position when inside a input-group */
.input-group > .ui-select-bootstrap.dropdown {
  /* Instead of relative */
  position: static;
}

.input-group > .ui-select-bootstrap > input.ui-select-search.form-control {
  border-radius: 4px; /* FIXME hardcoded value :-/ */
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .ui-select-bootstrap > input.ui-select-search.form-control.direction-up {
  border-radius: 4px !important; /* FIXME hardcoded value :-/ */
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.ui-select-bootstrap > .ui-select-match > .btn{
  /* Instead of center because of .btn */
  text-align: left !important;
}

.ui-select-bootstrap > .ui-select-match > .caret {
  position: absolute;
  top: 45%;
  right: 15px;
}

.ui-select-bootstrap .ui-select-match-text {
  position:absolute;
  left:12px;
  right: 16px;
  white-space: nowrap;
  overflow-x: hidden
}

/* See Scrollable Menu with Bootstrap 3 http://stackoverflow.com/questions/19227496 */
.ui-select-bootstrap > .ui-select-choices {
  height: auto;
  max-height: 200px;
  overflow-x: hidden;
  margin-top: -1px;
  width: 200%;
}

body > .ui-select-bootstrap.open {
  z-index: 1000; /* Standard Bootstrap dropdown z-index */
}

.ui-select-multiple.ui-select-bootstrap {
  height: auto;
  padding: 3px 3px 0 3px;
}

.ui-select-multiple.ui-select-bootstrap input.ui-select-search {
  background-color: transparent !important; /* To prevent double background when disabled */
  border: none;
  outline: none;
  height: 1.666666em;
  margin-bottom: 3px;
}

.ui-select-multiple.ui-select-bootstrap .ui-select-match .close {
  font-size: 1.6em;
  line-height: 0.75;
}

.ui-select-multiple.ui-select-bootstrap .ui-select-match-item {
  outline: 0;
  margin: 0 3px 3px 0;
}

.ui-select-multiple .ui-select-match-item {
  position: relative;
}

.ui-select-multiple .ui-select-match-item.dropping-before:before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  margin-right: 2px;
  border-left: 1px solid #007bff;
}

.ui-select-multiple .ui-select-match-item.dropping-after:after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  height: 100%;
  margin-left: 2px;
  border-right: 1px solid #007bff;
}

.ui-select-bootstrap .ui-select-choices-row>a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857143;
    color: #333;
    white-space: nowrap;
}

.ui-select-bootstrap .ui-select-choices-row>a:hover, .ui-select-bootstrap .ui-select-choices-row>a:focus {
    text-decoration: none;
    color: #262626;
    background-color: #f5f5f5;
}

.ui-select-bootstrap .ui-select-choices-row.active>a {
    color: #fff;
    text-decoration: none;
    outline: 0;
    background-color: #007bff;
}

.ui-select-bootstrap .ui-select-choices-row.disabled>a,
.ui-select-bootstrap .ui-select-choices-row.active.disabled>a {
    color: #777;
    cursor: not-allowed;
    background-color: #fff;
}

/* fix hide/show angular animation */
.ui-select-match.ng-hide-add,
.ui-select-search.ng-hide-add {
    display: none !important;
}

/* Mark invalid Bootstrap */
.ui-select-bootstrap.ng-dirty.ng-invalid > button.btn.ui-select-match {
    border-color: #D44950;
}

/* Handle up direction Bootstrap */
.ui-select-container[theme="bootstrap"].direction-up .ui-select-dropdown {
    box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.25);
}

.clr-picker{display:none;flex-wrap:wrap;position:absolute;width:200px;z-index:1000;border-radius:10px;background-color:#fff;justify-content:flex-end;direction:ltr;box-shadow:0 0 5px rgba(0,0,0,.05),0 5px 20px rgba(0,0,0,.1);-moz-user-select:none;-webkit-user-select:none;user-select:none}.clr-picker.clr-open,.clr-picker[data-inline=true]{display:flex}.clr-picker[data-inline=true]{position:relative}.clr-gradient{position:relative;width:100%;height:100px;margin-bottom:15px;border-radius:3px 3px 0 0;background-image:linear-gradient(rgba(0,0,0,0),#000),linear-gradient(90deg,#fff,currentColor);cursor:pointer}.clr-marker{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border:1px solid #fff;border-radius:50%;background-color:currentColor;cursor:pointer}.clr-picker input[type=range]::-webkit-slider-runnable-track{width:100%;height:16px}.clr-picker input[type=range]::-webkit-slider-thumb{width:16px;height:16px;-webkit-appearance:none}.clr-picker input[type=range]::-moz-range-track{width:100%;height:16px;border:0}.clr-picker input[type=range]::-moz-range-thumb{width:16px;height:16px;border:0}.clr-hue{background-image:linear-gradient(to right,red 0,#ff0 16.66%,#0f0 33.33%,#0ff 50%,#00f 66.66%,#f0f 83.33%,red 100%)}.clr-alpha,.clr-hue{position:relative;width:calc(100% - 40px);height:8px;margin:5px 20px;border-radius:4px}.clr-alpha span{display:block;height:100%;width:100%;border-radius:inherit;background-image:linear-gradient(90deg,rgba(0,0,0,0),currentColor)}.clr-alpha input,.clr-hue input{position:absolute;width:calc(100% + 32px);height:16px;left:-16px;top:-4px;margin:0;background-color:transparent;opacity:0;cursor:pointer;appearance:none;-webkit-appearance:none}.clr-alpha div,.clr-hue div{position:absolute;width:16px;height:16px;left:0;top:50%;margin-left:-8px;transform:translateY(-50%);border:2px solid #fff;border-radius:50%;background-color:currentColor;box-shadow:0 0 1px #888;pointer-events:none}.clr-alpha div:before{content:'';position:absolute;height:100%;width:100%;left:0;top:0;border-radius:50%;background-color:currentColor}.clr-format{display:none;order:1;width:calc(100% - 40px);margin:0 20px 20px}.clr-segmented{display:flex;position:relative;width:100%;margin:0;padding:0;border:1px solid #ddd;border-radius:15px;box-sizing:border-box;color:#999;font-size:12px}.clr-segmented input,.clr-segmented legend{position:absolute;width:100%;height:100%;margin:0;padding:0;border:0;left:0;top:0;opacity:0;pointer-events:none}.clr-segmented label{flex-grow:1;margin:0;padding:4px 0;font-size:inherit;font-weight:400;line-height:initial;text-align:center;cursor:pointer}.clr-segmented label:first-of-type{border-radius:10px 0 0 10px}.clr-segmented label:last-of-type{border-radius:0 10px 10px 0}.clr-segmented input:checked+label{color:#fff;background-color:#666}.clr-swatches{order:2;width:calc(100% - 32px);margin:0 16px}.clr-swatches div{display:flex;flex-wrap:wrap;padding-bottom:12px;justify-content:center}.clr-swatches button{position:relative;width:20px;height:20px;margin:0 4px 6px 4px;padding:0;border:0;border-radius:50%;color:inherit;text-indent:-1000px;white-space:nowrap;overflow:hidden;cursor:pointer}.clr-swatches button:after{content:'';display:block;position:absolute;width:100%;height:100%;left:0;top:0;border-radius:inherit;background-color:currentColor;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}input.clr-color{order:1;width:calc(100% - 80px);height:32px;margin:15px 20px 20px auto;padding:0 10px;border:1px solid #ddd;border-radius:16px;color:#444;background-color:#fff;font-family:sans-serif;font-size:14px;text-align:center;box-shadow:none}input.clr-color:focus{outline:0;border:1px solid #1e90ff}.clr-clear,.clr-close{display:none;order:2;height:24px;margin:0 20px 20px;padding:0 20px;border:0;border-radius:12px;color:#fff;background-color:#666;font-family:inherit;font-size:12px;font-weight:400;cursor:pointer}.clr-close{display:block;margin:0 20px 20px auto}.clr-preview{position:relative;width:32px;height:32px;margin:15px 0 20px 20px;border-radius:50%;overflow:hidden}.clr-preview:after,.clr-preview:before{content:'';position:absolute;height:100%;width:100%;left:0;top:0;border:1px solid #fff;border-radius:50%}.clr-preview:after{border:0;background-color:currentColor;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.clr-preview button{position:absolute;width:100%;height:100%;z-index:1;margin:0;padding:0;border:0;border-radius:50%;outline-offset:-2px;background-color:transparent;text-indent:-9999px;cursor:pointer;overflow:hidden}.clr-alpha div,.clr-color,.clr-hue div,.clr-marker{box-sizing:border-box}.clr-field{display:inline-block;position:relative;color:transparent}.clr-field input{margin:0;direction:ltr}.clr-field.clr-rtl input{text-align:right}.clr-field button{position:absolute;width:30px;height:100%;right:0;top:50%;transform:translateY(-50%);margin:0;padding:0;border:0;color:inherit;text-indent:-1000px;white-space:nowrap;overflow:hidden;pointer-events:none}.clr-field.clr-rtl button{right:auto;left:0}.clr-field button:after{content:'';display:block;position:absolute;width:100%;height:100%;left:0;top:0;border-radius:inherit;background-color:currentColor;box-shadow:inset 0 0 1px rgba(0,0,0,.5)}.clr-alpha,.clr-alpha div,.clr-field button,.clr-preview:before,.clr-swatches button{background-image:repeating-linear-gradient(45deg,#aaa 25%,transparent 25%,transparent 75%,#aaa 75%,#aaa),repeating-linear-gradient(45deg,#aaa 25%,#fff 25%,#fff 75%,#aaa 75%,#aaa);background-position:0 0,4px 4px;background-size:8px 8px}.clr-marker:focus{outline:0}.clr-keyboard-nav .clr-alpha input:focus+div,.clr-keyboard-nav .clr-hue input:focus+div,.clr-keyboard-nav .clr-marker:focus,.clr-keyboard-nav .clr-segmented input:focus+label{outline:0;box-shadow:0 0 0 2px #1e90ff,0 0 2px 2px #fff}.clr-picker[data-alpha=false] .clr-alpha{display:none}.clr-picker[data-minimal=true]{padding-top:16px}.clr-picker[data-minimal=true] .clr-alpha,.clr-picker[data-minimal=true] .clr-color,.clr-picker[data-minimal=true] .clr-gradient,.clr-picker[data-minimal=true] .clr-hue,.clr-picker[data-minimal=true] .clr-preview{display:none}.clr-dark{background-color:#444}.clr-dark .clr-segmented{border-color:#777}.clr-dark .clr-swatches button:after{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}.clr-dark input.clr-color{color:#fff;border-color:#777;background-color:#555}.clr-dark input.clr-color:focus{border-color:#1e90ff}.clr-dark .clr-preview:after{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.clr-dark .clr-alpha,.clr-dark .clr-alpha div,.clr-dark .clr-preview:before,.clr-dark .clr-swatches button{background-image:repeating-linear-gradient(45deg,#666 25%,transparent 25%,transparent 75%,#888 75%,#888),repeating-linear-gradient(45deg,#888 25%,#444 25%,#444 75%,#888 75%,#888)}.clr-picker.clr-polaroid{border-radius:6px;box-shadow:0 0 5px rgba(0,0,0,.1),0 5px 30px rgba(0,0,0,.2)}.clr-picker.clr-polaroid:before{content:'';display:block;position:absolute;width:16px;height:10px;left:20px;top:-10px;border:solid transparent;border-width:0 8px 10px 8px;border-bottom-color:currentColor;box-sizing:border-box;color:#fff;filter:drop-shadow(0 -4px 3px rgba(0,0,0,.1));pointer-events:none}.clr-picker.clr-polaroid.clr-dark:before{color:#444}.clr-picker.clr-polaroid.clr-left:before{left:auto;right:20px}.clr-picker.clr-polaroid.clr-top:before{top:auto;bottom:-10px;transform:rotateZ(180deg)}.clr-polaroid .clr-gradient{width:calc(100% - 20px);height:120px;margin:10px;border-radius:3px}.clr-polaroid .clr-alpha,.clr-polaroid .clr-hue{width:calc(100% - 30px);height:10px;margin:6px 15px;border-radius:5px}.clr-polaroid .clr-alpha div,.clr-polaroid .clr-hue div{box-shadow:0 0 5px rgba(0,0,0,.2)}.clr-polaroid .clr-format{width:calc(100% - 20px);margin:0 10px 15px}.clr-polaroid .clr-swatches{width:calc(100% - 12px);margin:0 6px}.clr-polaroid .clr-swatches div{padding-bottom:10px}.clr-polaroid .clr-swatches button{width:22px;height:22px}.clr-polaroid input.clr-color{width:calc(100% - 60px);margin:10px 10px 15px auto}.clr-polaroid .clr-clear{margin:0 10px 15px 10px}.clr-polaroid .clr-close{margin:0 10px 15px auto}.clr-polaroid .clr-preview{margin:10px 0 15px 10px}.clr-picker.clr-large{width:275px}.clr-large .clr-gradient{height:150px}.clr-large .clr-swatches button{width:22px;height:22px}.clr-picker.clr-pill{width:380px;padding-left:180px;box-sizing:border-box}.clr-pill .clr-gradient{position:absolute;width:180px;height:100%;left:0;top:0;margin-bottom:0;border-radius:3px 0 0 3px}.clr-pill .clr-hue{margin-top:20px}
/*  Using CSS variables
    https://googlechrome.github.io/samples/css-custom-properties/
*/
@supports (--css: variables) {
    :root {
        /*************************** Page-wide variables ****************************/

        /* Pixels per hour */
        --pixels-per-hour: 6px;

        /* Number of hours per separator (on top of gantt) */
        --hours-per-separator: 2;

        /* Gantt bottom scroll bar height */
        --gantt-bottom-scrollbar-height: 10px;

        /* The height of the utilisation heatmap */
        --utilisation-row-height: 5px;

        /***************************** Calculated values ****************************/
        /* We don't use calc here because we don't want to resolve the values yet.
        You can think of these as simple textual replacements. */

        /* The size of the margin around the card grid. */
        /* --margin-size: (var(--margins) * 2); */
        /* How much internal padding each cell should have */
        /* --cell-padding: (4 * var(--spacing-unit)); */
        /* How big the space between cells should be */
        /* --grid-gutter: (var(--margins) * var(--spacing-unit)); */
        /* How big the space should be around the grid */
        /* --grid-margin: (var(--margin-size) * var(--spacing-unit)); */
        /* Calculated cell margin */
        /* --cell-margin: (var(--grid-gutter) / 2); */
    }

    .positions-normal .gantt-item,
    .positions-normal .limit-block,
    .positions-normal .unavailability-block {
        width: calc(var(--n-w) * var(--pixels-per-hour));
        left: calc(var(--n-l) * var(--pixels-per-hour));
    }

    .positions-extended .gantt-item,
    .positions-extended .nw-block,
    .positions-extended .limit-block,
    .positions-extended .unavailability-block {
        width: calc(var(--e-w) * var(--pixels-per-hour));
        left: calc(var(--e-l) * var(--pixels-per-hour));
    }

    .positions-calendar .gantt-item,
    .positions-calendar .limit-block,
    .positions-calendar .unavailability-block {
        width: calc(var(--c-w) * var(--pixels-per-hour));
        left: calc(var(--c-l) * var(--pixels-per-hour));
    }

    .positions-full .gantt-item,
    .positions-full .limit-block,
    .positions-full .unavailability-block {
        width: calc(var(--f-w) * var(--pixels-per-hour));
        left: calc(var(--f-l) * var(--pixels-per-hour));
    }

    .positions-custom .gantt-item,
    .positions-custom .limit-block,
    .positions-custom .unavailability-block {
        width: calc(var(--cu-w) * var(--pixels-per-hour));
        left: calc(var(--cu-l) * var(--pixels-per-hour));
    }

    .positions-auto .gantt-item,
    .positions-auto .limit-block,
    .positions-auto .unavailability-block {
        width: calc(var(--a-w) * var(--pixels-per-hour));
        left: calc(var(--a-l) * var(--pixels-per-hour));
    }

    .gantt ::-webkit-scrollbar {
        width: 8px;
        height: var(--gantt-bottom-scrollbar-height);
        box-sizing: content-box;
    }
}

@supports not (--css: variables) {
    /*
        THIS COMMENT PROBABLY ISN'T RELEVANT ANY MORE?

        gantt items have a pixel based fallback so they are ok
        however, utilisation blocks do not, so we use font-size as a
        pseudo variable as we can position the blocks using em units
        it's not perfect because it just gives us one value rather than two
        so we can deal with scaling but not with switching between
        normal/extended hours, but we don't have to go for a
        pixel based approach
        if you want to know more check out where/how ds.tools.dom.insertCSSRule is used
        or how we treat things in ganttTemplates.js
    */
}

.gantt-view {
    position: relative;
}

.individual-gantt {
    min-height: 350px;
}

/* Other gantt styling */
.gantt {
    width: 100%;
    line-height: 1;
    -webkit-transform: translateZ(0);
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
    overflow: visible;
}

/* -- suggestion create, review adn solve mode styles -- */
/* -- display suggestion mode indicator line on the left -- */
.mode-indicator {
    display: block;
    width: 4px;
    height: 100%;
    position: absolute;
    z-index: 904;
    left: -4px;
    transition: left 0.3s ease-in-out;
}

.mode-indicator.hide {
    z-index: 0;
}

.suggestions-mode.create .mode-indicator,
.suggestions-mode.review .mode-indicator,
.suggestions-mode.solve .mode-indicator {
    background-color: var(--secondary-teal-d2);
    width: 4px;
    left: -4px;
}

#menu-panel #menu-inner.sub-visible + #main .mode-indicator {
    z-index: 0;
}

/* -- END of display suggestion mode indicator line on the left -- */

/* .solver-range-from in solver mode */
.suggestions-mode.solve .solver-range-from,
.suggestions-mode.solve .solver-range-to {
    border-color: #29c8d8;
}

/* -- suggestion create, review, solve mode styles -- */

.unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.gantt-scrollable {
    overflow-y: auto;
    overflow-x: scroll;
}

.gantt-head,
.gantt-labels {
    cursor: default;
}

.gantt-labels {
    border-right: 1px solid #dddddd;
    position: sticky;
    left: 0;
    display: inline-block;
    z-index: 1000000;
    background-color: white;
}

.gantt-labels-head {
    border-right: 1px solid #dddddd;
    border-bottom: 1px solid var(--neutral-grey);
    display: flex;
    flex-direction: column;
    height: 72px;
    background-color: white;
    width: 240px; /* Should be kept in sync with minRowLabelWidth in ganttController.js and with any 240px styles in ganttView.html */
    z-index: 1000000;
    position: absolute;
    padding-top: 5px;
}

.job-edit .gantt-labels-head {
    justify-content: flex-end;
}

.gantt-labels-resize-handle {
    width: 8px;
    display: inline-block;
    position: absolute;
    left: 240px;
    cursor: ew-resize;
    z-index: 500;
}

.GanttView-selectAllResourcesControl {
    display: flex;
    align-items: center;
}

.gantt-labels-resize-handle:hover,
.gantt-labels-resize-handle.hover {
    background-color: rgba(0, 0, 0, 0.1);
}

.gantt-labels-resize-handle.dragging {
    background-color: rgba(0, 0, 0, 0.16);
}

.gantt-overlay {
    background-color: rgba(255, 255, 255, 0.6); /* White background with opacity */
    bottom: 0;
    cursor: not-allowed;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1000001; /* 1 more than gantt-labels-head */
}

/* Overlay used to keep the correct cursor when resizing the labels or the unassigned gantt */
#drag-overlay {
    left: 0;
    right: 0;
    height: 100%;
    position: fixed;
    z-index: 100000000;
    display: none;
    opacity: 0;
}

#drag-overlay.column-resizing {
    cursor: ew-resize !important;
    display: flex;
}

#drag-overlay.row-resizing {
    cursor: ns-resize !important;
    display: flex;
}

#drag-overlay.select-drag {
    cursor: crosshair !important;
    display: flex;
}

#unscheduled-gantt .gantt-labels-head {
    padding-top: 2px;
    height: 32px;
}

.unscheduled-gantt-ellipsis:last-of-type {
    max-width: 240px !important;
}

.unscheduled-gantt-ellipsis {
    width: 130px;
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.unscheduled-gantt-ellipsis:first-of-type {
    margin-left: 5px;
}

.gantt-ellipsis-wrapper {
    position: sticky;
    left: var(--gantt-label-div-width, 300px); /* This is set in ganttController.js to account for the label width changing */
    display: flex;
    align-items: center;
}

.gantt-labels-head-row {
    display: flex;
    flex-direction: row;
    padding: 0 5px;
    margin-bottom: 5px;
    height: auto;
    overflow: visible;
}
.njeg-gantt-labels-head-row {
    align-items: center;
}

.gantt-labels-head-row .form-control {
    height: 28px;
}

.gantt-labels-head-row .form-control + .clear-selection-btn {
    /* clear selection button should be applied as an input group Lu 29-04-21 */
    color: #ccc;
    position: absolute;
    right: 15px;
}

/*style="text-align:right;color:#ccc;margin-top:7px;margin-left:-20px;z-index:500;" */

.gantt-labels-head-row .menu-button {
    min-width: 45px;
    height: 28px;
    padding: 0 6px;
}

#unscheduledGanttLabelsHead .gantt-labels-head-row .btn:not(:last-of-type) {
    margin-right: 5px;
}

#unscheduledGanttLabelsHead .gantt-labels-head-row .unscheduled-sort {
    margin-left: auto;
}

.gantt-icons > div:not(.MainGanttFiltersDropdown) {
    margin-right: 5px;
}

.gantt-icons > div:last-child {
    margin-right: 0;
}

span.gantt-label-name {
    overflow: hidden;
    text-overflow: ellipsis;
}

span.gantt-label-job {
    padding-left: 19px;
}

span.gantt-label-resource {
    display: flex;
    flex-direction: row;
    align-items: center;
    overflow: hidden;
    flex-grow: 3;
    flex-shrink: 1;
    flex-basis: 0;
}

.utilisation-slim-view-visible .gantt-label-resource {
    padding-top: 5px;
}

.gantt-labels-resource-row-hours {
    border-left: 1px solid #ddd;
}

.engagement-view span.gantt-label-job {
    padding-left: 30px;
}

.engagement-view .unassignable-separator,
.engagement-view .gantt-label-unassignable,
.engagement-view .assigned-separator {
    padding-left: 50px;
}

.engagement-view .gantt-labels-row-name {
    margin-left: 1px;
}

.gantt-labels-row-unavailability-trait {
    margin-left: 50px;
}

.unscheduled-header-row-data-label {
    display: inline-block;
    vertical-align: baseline;
    padding: 7px 5px;
}

/* -- END of devo 518 - performance issues with sticky headers */

#ganttUnscheduledRows .header-row {
    display: flex;
}

.section .dropdown-menu {
    max-height: calc(100vh - 50px);
    overflow-y: auto;
}

.section .dropdown-menu {
    max-height: 75vh;
}

/*bootstrap 4 changed the above .dropdown-menu*/
#mainGanttLabelsHead #filterButton .dropdown-menu {
    flex-direction: column;
    background-color: transparent;
}

#mainGanttLabelsHead #filterButton .dropdown-menu-content {
    background-color: white;
}

.dropdown-menu-content {
    display: flex;
    flex-direction: row;
}

#mainGanttLabelsHead #filterButton .dropdown-menu-content .dropdown-menu-first-level {
    border-top: solid thin #e9ecef;
    border-right: solid thin #e9ecef;

    margin-bottom: 0;
    padding-bottom: 1rem;
}

#savedViewsButton .dropdown-menu.show,
#settingsButton .dropdown-menu.show,
#unscheduledGanttLabelsHead .dropdown-menu.show {
    display: flex;
}

#runSolveButton .dropdown-menu.show {
    display: block;
}

#mainGanttLabelsHead .dropdown-menu-header {
    padding: 0.5rem 1.5rem;
    border-bottom: 1px solid #e9ecef;
    height: auto;
    display: flex;
    align-items: center;
}

#mainGanttLabelsHead #filterButton .dropdown-menu-content .main-dropdown-secondLevel {
    border-top: solid thin #e9ecef;
    border-right: solid thin #e9ecef;
    border-left: none;
}

.gantt-labels-head-row .dropdown-menu-header #filtersOnOffToggle {
    margin-left: auto;
}

.gantt-labels-head-row .dropdown-menu-header #filtersOnOffToggle .toggle-handle {
    padding: 1px 5px;
    margin-top: 0;
}

.gantt-labels-head-row #filtersOnOffToggle .toggle-off.btn-xs {
    line-height: 17px;
    padding-left: 10px;
}

.gantt-labels-head-row #filtersOnOffToggle .toggle-on.btn-xs {
    line-height: 17px;
}

.gantt-labels-head-row .dropdown-menu-header #filtersOnOffToggle.disabled {
    border-color: #6c757d;
}

.gantt-labels-head-row .dropdown-menu-header #filtersOnOffToggle.disabled .toggle-off {
    background-color: lightgrey;
    color: #6c757d;
}

.gantt-labels-head-row .dropdown-menu-header #resetFiltersButton {
    margin-left: 5px;
}

#mainGanttLabelsHead .dropdown-menu > ul {
    flex-basis: 0;
}

#mainGanttLabelsHead #filterButton {
    margin-right: 0;
    z-index: 1;
}

#mainGanttLabelsHead #filterButton {
    margin-right: 0;
    z-index: 1;
}

#mainGanttLabelsHead #filterButton .dropdown-toggle {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

#mainGanttLabelsHead #filterButton .dropdown-menu {
    border-top: none;
    border-right: none;
}

#mainGanttLabelsHead #filterButton .dropdown-menu-header-content {
    display: flex;
    align-items: center;
    width: 100%;
}

#mainGanttLabelsHead #filterButton .count-label {
    font-size: smaller;
    display: inline-block;
}

#mainGanttLabelsHead #filterButton .count-label.hidden {
    display: none;
}

#mainGanttLabelsHead #savedViewsButton {
    margin-left: auto;
}

#mainGanttLabelsHead #searchTextInput {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
}

#mainGanttLabelsHead #settingsButton {
    margin-right: 0;
}

#mainGanttLabelsHead #engagementViewButton {
    margin-left: 5px;
}

#mainGanttLabelsHead .gantt-worker-load-wrapper {
    margin-right: 0;
}

#mainGanttLabelsHead .task-assignment-button-wrapper {
    margin-left: 5px;
}

/* fixing bootstrap4 layout of filters: saved views, workers filters, display settings */
.main-dropdown-secondLevel {
    background: white;
    line-height: 20px;
    height: auto;
    overflow: hidden; /*it's important that the parent element of the tree picker does not scroll */
    border-left: 1px solid rgba(0, 0, 0, 0.15);
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    min-width: 320px;
}

.main-dropdown-secondLevel .treepicker {
    padding: 0 10px;
}

.main-dropdown-secondLevel .treepicker span {
    line-height: 1.7em;
}

#filterButton .main-dropdown-secondLevel form tree-picker {
    min-width: 300px;
    height: 434px;
}

/* END of fixing bootstrap4* filters layout*/

/* gantt - date range picker, align the to-date dropdown to the right */
#solverRangeDatePickers .date-end .dropdown-menu {
    transform: translate3d(-179px, 35px, 0px) !important;
}

/* ENF of gantt - date range picker, align the to-date dropdown to the right */

.main-dropdown-secondLevel > form .treepicker .tree-picker-scrollable {
    max-height: 500px !important;
}

.main-dropdown-secondLevel h4 {
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* saved views */
.main-dropdown-secondLevel > .saved-views-list {
    margin-bottom: 0;
    max-height: 400px;
    overflow: auto;
}

#mainGanttLabelsHead .open-saved-view-link .saved-view-name {
    margin-left: 20px;
    padding-right: 0;
}

.save-view-form .gantt-horizon-date,
#manage-saved-views .gantt-horizon-date {
    padding: 0.375rem 0.75rem;
}

.form-control-plaintext:focus-visible {
    outline: none;
}

.open-saved-view-link .fixed-relative-icon,
#manage-saved-views .date-arrow,
.save-view-form .date-arrow {
    color: #aaaaaa;
    line-height: inherit;
    padding: 0.375rem 0;
}

.open-saved-view-link .fixed-relative-icon,
#manage-saved-views .date-arrow {
    cursor: help;
    width: 20px;
    text-align: center;
}

.open-saved-view-link:hover .fixed-relative-icon {
    color: var(--white);
}

.fa.icon-rotated-45,
.fas.icon-rotated-45 {
    transform: rotate(45deg);
}

/* utilisation selection -->> this should be on a second level of the popup */
.dropdown-menu .utilisation-settings {
    padding: 0.3rem 1.5rem;
}

.utilisation-settings .radio {
    display: flex;
    align-items: center;
}

.utilisation-settings .radio label,
.utilisation-settings li label:not(.btn) {
    padding-bottom: 2px;
    padding-left: 6px;
    margin-bottom: 0;
    display: inherit;
    font-weight: var(--font-weight-regular);
}

.utilisation-settings li label.btn {
    height: 100%;
    width: 50%;
    padding: 0.375rem 0.75rem;
}

.dropdown-menu .utilisation-settings li {
    padding: 0.2rem 0;
    display: flex;
    align-items: center;
}

.dropdown-menu .utilisation-settings li.dropdown-header {
    padding: 0.5rem 0;
}

/* dropdown on the popover to unassign worker - to style the spans acting as disabled links */
.dropdown-menu .unassigned-disabled {
    padding: 0.2rem 1.5rem;
    display: flex;
    align-items: center;
    clear: both;
    font-weight: var(--font-weight-regular);
    line-height: 1.42857143;
    color: #ddd;
    transition: all 0.05s linear;
    cursor: not-allowed;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    word-break: break-all;
}

.gantt-label-name-noskills {
    color: purple;
}

i.icon-restriction,
i.icon-incomplete {
    padding-left: 3px;
}

i.icon-restriction {
    font-size: 0.8em;
}

i.icon-incomplete {
    color: var(--warning);
}

i.icon-restriction {
    color: var(--danger);
}

.hide-button-styles {
    border: none;
    background: none;
}

.hide-button-styles:disabled {
    cursor: not-allowed;
    border: none;
    background: none;
    opacity: 0.5;
}

.partial-assign-disable {
    cursor: not-allowed;
    opacity: 0.5;
}

/* .gantt-background-row.highlight {
    background-color: rgb(212,238,212);
} */

/* suitability tooltip */

.suitability-score-tooltip {
    text-align: left;
    padding: 0 15px;
}

.suitability-score-title,
.suitability-score-fail-reason {
    display: none;
}

.suitability-score-tooltip ul {
    list-style-type: none;
    padding: 0;
}

.suitability-score-tooltip ul li {
    list-style-type: none;
    padding: 6px 0 3px 0;
    width: 100%;
    border-bottom: 1px solid #c8c8c8;
}

.suitability-score-tooltip ul li.suitability-score-group {
    border-bottom: none;
    padding-top: 18px;
}

.suitability-score-tooltip ul li.suitability-score-group:first-of-type {
    padding-top: 5px;
}

.suitability-score-subsection,
.suitability-score-subsection.suitability-score {
    text-transform: uppercase;
    font-weight: 900;
}

.suitability-score-subsection .suitability-score > span + span {
    margin-right: 0;
}

.suitability-score-tooltip .suitability-score-label {
    padding-left: 0;
    font-weight: var(--font-weight-semibold);
}

.suitability-score-tooltip .suitability-score {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.suitability-score-tooltip .suitability-score .label {
    margin-right: 15px;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 200px;
    font-weight: 300;
}

.suitability-score-tooltip .suitability-score .fa {
    font-size: 17px;
}

.suitability-score-tooltip .not-ran {
    color: var(--text-muted-light);
}

/* resource matcher now provides a decimal suitability score, so we need a range of highlight colours (a = best match) */
/* AR: probably want to use the new colour palette for suitability badges */

.gantt-labels-row span.badge.highlight-a,
.suggestion-row span.badge.highlight-a,
.suitability-score-subsection span.badge.highlight-a {
    background-color: hsl(120, 80%, 40%);
    min-width: 40px;
}

.gantt-labels-row span.badge.highlight-b,
.suggestion-row span.badge.highlight-b,
.suitability-score-subsection span.badge.highlight-b {
    background-color: hsl(120, 50%, 40%);
    min-width: 34px;
}

.gantt-labels-row span.badge.highlight-c,
.suggestion-row span.badge.highlight-c,
.suitability-score-subsection span.badge.highlight-c {
    background-color: hsl(120, 20%, 60%);
    min-width: 23px;
}

.gantt-labels-row span.badge.highlight-d,
.suggestion-row span.badge.highlight-d {
    background-color: hsl(120, 20%, 60%);
}

.gantt-labels-row span.badge.highlight-e,
.suggestion-row span.badge.highlight-e {
    background-color: hsl(0, 85%, 49%);
}

.gantt-labels-row span.badge,
.suggestion-row span.badge {
    background-color: hsl(120, 0%, 80%);
    color: var(--text-inverse);
    cursor: help;
}

/* end of suitability score tooltip styles */

#mainGanttHeaders,
#unscheduledGanttHeaders {
    border-bottom: 1px solid var(--neutral-grey);
}

.gantt-labels-row span.gantt-label-solver {
    display: none;
}

.gantt-labels-row.highlighted span.gantt-label-solver {
    display: inline-block;
}

.gantt-labels-row span.gantt-label-grade {
    padding-left: 12px;
    padding-right: 5px;
    color: grey;
    width: 60px;
    font-size: small;
    overflow: auto;
    cursor: default;
}

.gantt-labels-row span.gantt-label-cost {
    color: grey;
    width: 60px;
    padding-left: 5px;
    text-align: right;
    font-size: small;
    overflow: hidden;
}

.gantt-row-user {
    color: indianred;
    font-weight: var(--font-weight-bold);
}

.gantt-head {
    position: sticky;
    top: 0;
    z-index: 999999; /* 1 less than gantt-labels z-index in order to hide now dot */
    height: 72px;
    margin-bottom: -1px; /* hacky - prevents double border between this and the main Gantt */
}

#unscheduled-gantt .gantt-head {
    height: 32px;
}

.gantt-background-timelines {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    height: 100%;
    white-space: nowrap;
    display: flex;
    position: absolute;
    border-bottom: 1px solid #e9e9e9;
}

.gantt-head-row {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    height: 24px;
    white-space: nowrap;
    display: flex;
}

#unscheduled-gantt .gantt-head-row {
    height: 32px;
}

.month-row {
    border-bottom: 1px solid #dddddd;
}

.gantt-head.show-hours .month-row {
    display: none;
}

.gantt-head.show-hours .week-row {
    border-bottom: 1px solid #dddddd;
}

.time-column {
    border-top: 1px solid #eeeeee;
    border-right: 1px solid #eeeeee;
    text-align: center;
    display: inline;
    padding-top: 4px;
}

.day-column {
    left: calc(var(--col-l) * var(--pixels-per-hour));
    width: calc(var(--col-w) * var(--pixels-per-hour));
    height: 100%;
}

/* day column header should be bold if it's the current day, and the time column headers are hidden */
/* day column headers in the unscheduled gantt should be bold if it's the current day (no time column headers show up here) */
/* time column headers should be bold if it's the current day and time, and time column headers are shown (at the correct zoom level) */
/* week column headers should be bold if it's the current year and week, and the day column headers are hidden*/

.day-column-is-today:not(.gantt-head.show-hours .day-column-is-today),
#unscheduledGanttHeaders .day-column-is-today,
.gantt-head.show-hours .time-column-is-currentTime,
.week-column-is-currentWeek:not(.gantt-head.show-days .week-column-is-currentWeek) {
    color: var(--deep-black);
    font-weight: var(--font-weight-bold);
}

.gantt-head.show-hours #mainGanttHeaders .day-column {
    height: 48px;
}

.hour-column-container {
    height: 24px;
    width: 100%;
    display: none;
}

.gantt-head.show-hours .hour-column-container {
    display: block;
}

.hour-column,
.time-column,
.day-column,
.week-column,
.month-column {
    font-size: 11px;
    font-weight: var(--font-weight-regular);
    line-height: 15px;
    color: var(--deep-black);
}

.hour-column {
    width: calc(var(--col-w) * var(--pixels-per-hour));
    border-right: 1px dashed #eeeeee;
    height: 100%;
    margin: 0;
    display: inline-block;
    text-align: left;
    padding-top: 8px;
    padding-left: 1px;
    overflow-x: hidden;
}

.gantt-background-timelines .day-column {
    display: flex;
}

.gantt-background-timelines .hour-column {
    display: none;
}

.gantt-body-content.show-hours .gantt-background-timelines .hour-column {
    display: inline;
}

.gantt-head-row .time-column.variable-hours,
.variable-hours {
    background-color: rgba(218, 189, 189, 0.3);
    border-right: 1px solid rgb(223, 223, 223);
}

.defaultpop-column {
    /* border-right: 1px solid #eeeeee; */
    text-align: center;
    margin-top: -4px;
    height: 100vh;
    background-color: var(--surface-default);
    max-width: calc(100% - 1px);
    position: absolute;
}

.open > div.dropdown-menu.dropdown-div {
    display: flex;
}

.dropdown-menu .gantt-start-date-picker {
    border: 0;
    position: relative;
    top: 0;
    box-shadow: none;
    padding: 0 10px;
}

.gantt-head-row .time-column.month-column {
    border-right: 4px solid #eeeeee;
}

/* Row gets progressively taller as we add sub rows for days then weeks */

.gantt-head-row .time-column.week-column {
    border-right: 4px solid #eeeeee;
    border-bottom: 1px solid #dddddd;
    height: 47px;
}

#ganttUnscheduledWrapper .gantt-head-row .time-column.week-column {
    border-bottom: 1px solid var(--neutral-grey);
}

.gantt-head-row.show-days .time-column.week-column {
    border-bottom: none;
    height: 48px;
}

#unscheduled-gantt .gantt-head-row .time-column.week-column {
    height: 32px;
}

#unscheduled-gantt .gantt-head-row .time-column.week-column,
#unscheduled-gantt .gantt-head-row .time-column.day-column {
    padding-top: 8px;
}

#unscheduled-gantt .gantt-head .week-row {
    display: none;
}

#unscheduled-gantt .gantt-head.show-week .week-row {
    display: flex;
}

#unscheduled-gantt .gantt-head .days-row {
    display: none;
    position: absolute;
}

#unscheduled-gantt .gantt-head.show-days .days-row {
    display: flex;
}

.month-column {
    left: calc(var(--col-l) * var(--pixels-per-hour));
    width: calc(var(--col-w) * var(--pixels-per-hour));
}

.week-column {
    left: calc(var(--col-l) * var(--pixels-per-hour));
    width: calc(var(--col-w) * var(--pixels-per-hour));
    height: 100%;
    border-right: 4px solid #eeeeee;
}

.gantt-head-row .time-column span {
    width: 100%;
    height: 100%;
    border-right: none;
}

.gantt-head-row .time-column .dropdown-menu span {
    width: 23%;
}

/* Always show this row in order to show now dot */
#ganttWrapper .gantt-head .days-hours-row {
    display: flex;
    padding-bottom: 1px; /* AR: stops vertical borders from each column bleeding into the bottom border */
    position: absolute;
}

/* Hide day columns by default */
#ganttWrapper .gantt-head .days-hours-row .time-column {
    display: none;
}

/* Show days if gantt-head has class .show-days */
#ganttWrapper .gantt-head.show-days .days-hours-row .time-column {
    display: inline;
}

/* Always show this row in order to show now dot */
#ganttUnscheduledWrapper .gantt-head .days-row {
    display: flex;
    padding-bottom: 1px; /* AR: stops vertical borders from each column bleeding into the bottom border */
    position: absolute;
}

/* Hide day columns by default */
#ganttUnscheduledWrapper .gantt-head .days-row .time-column {
    display: none;
}

/* Show days if gantt-head has class .show-days */
#ganttUnscheduledWrapper .gantt-head.show-days .days-row .time-column {
    display: flex;
}

.gantt-head .week-including-prefix {
    display: none;
}

.gantt-head .week-excluding-prefix {
    display: inline;
    position: relative;
}

.gantt-head.show-week-prefix .week-including-prefix {
    display: inline;
    position: relative;
}

.gantt-head.show-week-prefix .week-excluding-prefix {
    display: none;
}

div.gantt-head.show-day-names span.date-including-day {
    display: inline;
    position: relative;
}

div.gantt-head.show-day-names span.date-excluding-day {
    display: none;
}

div.gantt-head-row span.date-including-day {
    display: none;
}

div.gantt-head-row span.date-excluding-day {
    display: inline;
    position: relative;
}

span.date .gantt-head-row span.friday {
    border-right: 1px solid #ccc;
}

.gantt-labels-row > span:not(.badge),
.gantt-head-row > span:not(.badge),
.gantt-labels-row > a:not(.badge):not(.button-select),
.engagement-view span.gantt-label-job,
.gantt-ellipsis-wrapper {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    align-items: center;
    display: flex;
    line-height: 25px;
    max-width: 100%;
    float: left;
}

.gantt-view.job-edit {
    border-top: 1px solid #ddd;
    margin-top: 10px;
    padding-right: 15px;
    max-height: var(--njeg-max-height);
}

.gantt-loader {
    min-height: 300px;
}

@media (min-height: 720px) {
    /* Media query ensures high browser zoom isn't ridiculous height-wise */
    .gantt-view.job-edit {
        min-height: var(--blank-slate-height);
    }
}

/* positioning of the zoom panel on the gantt views */
.gantt-view .ZoomButtonGroup {
    position: absolute;
    bottom: 15px;
    right: 15px;
    z-index: 10;
}

.ojeg .GanttSidebar {
    height: auto;
}

/* Sidebar on NJEG */
.njeg .GanttSidebar {
    border-right: 1px solid #ddd;
    height: auto;
    max-height: var(--njeg-max-height);
}

.teamSkills .SkillsTable .b-sidebar-outer,
.teamSkills .SkillsTable .b-sidebar {
    min-height: 500px;
    z-index: 1000;
}

.teamSkills .picker-container {
    height: fit-content;
    min-height: 320px;
}

.job-edit .gantt-labels-row > span:not(.badge),
.job-edit .gantt-head-row > span:not(.badge),
.job-edit .gantt-labels-row > a:not(.badge):not(.button-select),
.job-edit .gantt-ellipsis-wrapper {
    max-width: calc(100% - 30px);
}

/*icon for a specialist*/
.gantt-labels-row .fa-user {
    color: #83b0ff;
}

/*row label for a coach*/
.gantt-labels-row .fa-user-plus {
    color: #5b78ab;
}

/*row label icon for a person outside coaching model*/
.gantt-labels-row .fa-user-times {
    color: #868686;
}

.gantt-labels-row {
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
    width: 100%;
    font-weight: var(--font-weight-regular);
    font-size: 13px;
    color: var(--neutral-grey-d5);
}

.gantt-labels-row.selected {
    color: #212529;
    font-weight: var(--font-weight-bold);
}

/*aligning checkbox and label on the unassigned gantt for check all - provisional until proper component is used LU: 11-01-2023 */
.gantt-labels-head-row .form-check {
    display: flex;
    align-items: center;
}

.gantt-labels-head-row .form-check input[type="checkbox"] {
    margin-top: 0;
}

.gantt-labels-head-row .form-check label {
    margin-bottom: 0;
}

/* END of select all checkbox and label */

.gantt-labels-head-row .form-check .form-check-input,
.gantt-labels-row .form-check .form-check-input {
    /* this will be cleaned up once the gantt code will be updated LU:11-01-2023 and the proper component will be used */
    width: 16px;
    height: 16px;
}

.gantt-label-endCell {
    align-items: center;
    display: flex;
    float: right;
    flex: 0 0 40px;
    max-width: 40px;
    flex-direction: row-reverse;
    padding-right: 2px;
    padding-top: 2px;
}

.utilisation-slim-view-visible .gantt-label-endCell {
    padding-top: 7px;
}

.gantt-label-link,
.gantt-label-link-individual-gantt {
    color: var(--neutral-grey-d5);
    font-size: 13px;
    max-width: 100%;
    line-height: 24px;
    height: 100%;
    padding-top: 1px;
    vertical-align: top;
}

.gantt-label-link:hover,
.gantt-label-link:active,
.gantt-label-link:visited {
    color: var(--neutral-black-14);
}
.gantt-label-link-individual-gantt:active,
.gantt-label-link-individual-gantt:visited {
    color: var(--neutral-grey-d5);
}

.gantt-label-link-individual-gantt:hover {
    color: var(--neutral-black-14);
}

a:not([href]):hover {
    color: initial;
    text-decoration: underline;
}

.gantt-label-name {
    padding-left: 0;
}

.gantt-body {
    display: inline-block;
}

.gantt-body-background {
    position: absolute;
    width: 100%;
}

.gantt-body-foreground {
    position: absolute;
    height: 100%;
}

.gantt-foreground-col,
.gantt-foreground-col-weekend,
.gantt-foreground-col-nonworkhour {
    position: absolute;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    height: 100%;
    border-right: 1px solid #dddddd;
}

.gantt-foreground-col-weekend,
.gantt-foreground-col-nonworkhour {
    background-color: rgba(200, 200, 200, 0.3);
}

.gantt-background-row-alt.row-selected,
.gantt-background-row.row-selected {
    background-color: rgba(0, 0, 0, 0.15);
}

.gantt-background-row-alt {
    background-color: rgba(197, 205, 222, 0.12); /* result is --tinted-grey-14 when overlaid on white */
}

.resource-row {
    height: 27px;
    /* background-color: rgb(219, 219, 219); */
    /* color: white; */
}

.gantt-row {
    position: absolute;
    width: 100%;
}

.gantt-row .job-details {
    left: calc(260px + var(--horizontal-scroll));
}

.gantt-row.no-rows {
    width: auto;
    position: relative;
    left: 0;
    margin-top: 1px;
    height: 28px;
}

.gantt-group {
    position: absolute;
    width: 100%;
}

.items {
    position: absolute;
    height: 100%;
    z-index: 10;
}

.non-working-blocks,
.limit-blocks,
.unavailability-blocks,
.job-details {
    position: absolute;
    height: 100%;
}

.non-working-blocks {
    z-index: 1;
}

.limit-blocks {
    z-index: 2;
    top: 0;
}

.unavailability-blocks {
    z-index: 3;
}

.utilisation-canvas {
    z-index: 4;
}

.gantt-utilisation-text-row {
    z-index: 5;
}

.job-details span {
    display: inline-block;
    height: 15px;
    margin-top: 5px;
    padding-left: 5px;
    padding-right: 5px;
    border-right: 1px solid #9d9d9d;
}

.nw-block {
    background-color: rgba(218, 189, 189, 0.3);
    position: absolute;
    height: 100%;
}

/* unit population */
.unit-row .nw-block {
    background-color: transparent;
}

.limit-block {
    background-color: rgba(219, 145, 145, 0.3);
    position: absolute;
    height: 100%;
}

.limit-block.final {
    background-color: rgba(217, 145, 219, 0.3);
}

.unavailability-block {
    background-color: rgba(218, 189, 189, 0.4);
    position: absolute;
    height: 100%;
}

.utilisationcanvas-visible .items {
    top: var(--utilisation-row-height);
    height: calc(100% - 3px);
}

canvas.utilisation-canvas {
    position: absolute;
    top: 0;
    width: 100%;
    height: var(--utilisation-row-height);
    display: none;
    image-rendering: pixelated;
}

.utilisationcanvas-visible canvas.utilisation-canvas {
    display: block;
}

/* In block view .gantt-utilisation-text-row stack higher than the canvas for text legibility */
.utilisationcanvas-visible:not(.utilisation-blocks) canvas.utilisation-canvas {
    z-index: 100;
}

.gantt-utilisation-text-row {
    --left: 0;
    --width: 0;
    height: var(--utilisation-row-height);
    line-height: var(--utilisation-row-height);
    position: relative;
    white-space: nowrap;
}

.gantt-utilisation-hours-text {
    display: inline-block;
    font-weight: var(--font-weight-regular);
    text-align: center;
    position: relative;
    left: calc(var(--left) * var(--pixels-per-hour));
    width: calc(var(--width) * var(--pixels-per-hour));
    border-right: 0.5px solid #ffffffba;
    border-left: 0.5px solid #ffffffba;
}

canvas.non-working-blocks {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    image-rendering: pixelated;
}

#utilisationTooltip {
    visibility: hidden; /* using visibility:hidden rather than display:none so that the element always has a height */
    pointer-events: none;
    z-index: 2000020;
    display: block;
}

#utilisationTooltip .arrow {
    left: 54px; /* left should be (utilisationTooltipContent.width / 2) - 6 */
}

#utilisationTooltipContent {
    width: 120px; /* if changing this, change the style above too and the left positioning code in initUtilisationTooltip in ganttController*/
}

#utilisationBlockShadow {
    transition: box-shadow 0.1s;
    position: absolute;
    height: var(--utilisation-row-height);
    z-index: 500;
    pointer-events: none;
    display: none;
}

#utilisationBlockShadow.hovered {
    box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.2);
    display: block;
}

#itemTooltip {
    opacity: 0; /* using opacity rather than display:none so that the element always has a height */
    pointer-events: none;
    z-index: 2000020;
    display: block;
}

/*  Default colours commented out
    DOT specific colours uncommented
*/

.umin {
    /* background-color: rgba(69, 117, 180, 0.8); */
    /* background-color: rgba(57, 208, 59, 0.8); */
    background-color: rgba(17, 116, 255, 0.8);
}

.u-3 {
    /* background-color: rgba(116, 173, 209, 0.8); */
    background-color: rgba(255, 252, 103, 0.8);
}

.u-2 {
    /* background-color: rgba(171, 217, 233, 0.8); */
    background-color: rgba(255, 252, 103, 0.8);
}

.u-1 {
    /* background-color: rgba(224, 243, 248, 0.8); */
    background-color: rgba(255, 252, 103, 0.8);
}

.uneutral {
    /* background-color: rgba(255, 255, 191, 0.8); */
    background-color: none;
}

.u1 {
    /* background-color: rgba(254, 224, 144, 0.8); */
    background-color: rgba(253, 174, 97, 0.8);
}

.u2 {
    /* background-color: rgba(253, 174, 97, 0.8); */
    background-color: rgba(215, 48, 39, 0.8);
}

.u3 {
    /* background-color: rgba(244, 109, 67, 0.8); */
    background-color: rgba(215, 48, 39, 0.8);
}

.umax {
    /* background-color: rgba(215, 48, 39, 0.8); */
    background-color: rgba(215, 48, 39, 0.8);
}

.gantt-row-height {
    height: 2em;
}

.row-label-selectable {
    transition: background-color 0.4s;
}

.row-label-selectable:hover {
    background-color: rgba(0, 0, 0, 0.1);
    cursor: pointer;
}

.main-gantt-time-header-selectable:hover {
    background-color: rgba(0, 0, 0, 0.1);
    cursor: pointer;
}

.gantt-item {
    /* These variables are set in ganttHTML, below are just fallbacks */
    --borderColor: rgb(0 0 0 / 30%);
    /* AR: a fallback bg color would be nice but there's a flash of the default when a solve completes - we'll need to stop that initial render flash first */
    /*--backgroundColor: rgba(103,185,91,1.0);*/
    --color: var(--text-white);
    position: absolute;
    height: 23px;
    min-width: 2px;
    border-radius: 3px;
    border: 1px solid var(--borderColor);
    background-color: var(--backgroundColor);
    color: var(--color);
    transition: box-shadow 0.1s;
    display: flex;
    justify-content: space-between;
}

.gantt-item .gantt-item-content .fa.error-flag {
    flex-grow: 0;
    flex-basis: 0;
}

.gantt-item .gantt-item-content .item-name {
    flex-grow: 1;
}

.task-overlay-copy {
    cursor: not-allowed;
    display: flex;
    box-shadow: none !important;
    position: fixed !important;
}

.task-overlay-copy .item-resize-handle-start {
    border-radius: 2px 0 0 2px;
    flex-shrink: 0;
    position: static;
}

.task-overlay-copy .item-name {
    cursor: default;
}

.task-overlay-copy .fas {
    cursor: not-allowed;
}

.engagement-view .gantt-item .gantt-item-content .item-name,
.individual-gantt .gantt-item .gantt-item-content .item-name {
    text-align: center;
}

.utilisation-block {
    text-align: center;
}

.gantt-item.unselected,
.job-editor-gantt-item-default.unselected {
    opacity: 0.65;
}

.gantt-item-filtered {
    opacity: 0.3 !important;
}

.gantt-item-filtered .gantt-item-content {
    font-weight: var(--font-weight-regular) !important;
}

.gantt-item:hover {
    -webkit-box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.3);
    -moz-box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.3);
    box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.3);
}

.gantt-item.unselected:hover {
    -webkit-box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.2);
    -moz-box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.2);
    box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.2);
}

.gantt-item-filtered.unselected:hover {
    -webkit-box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.6);
    -moz-box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.6);
    box-shadow: 1px 1px 4px 1px rgba(58, 58, 58, 0.6);
    opacity: 0.28;
}

.gantt-item.unavailability {
    /* default unavailability color but can be set via javascript e.g. trait colors */
    --backgroundColor: var(--neutral-brown-12);

    background-color: var(--backgroundColor);
    background-image: linear-gradient(transparent 50%, rgba(255, 255, 255, 0.15) 50%);
    background-size: 10px 10px;
}

.gantt-item.placeholder {
    background-color: rgba(211, 211, 211, 0.8);
    background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.2) 5px, rgba(255, 255, 255, 0.2) 10px);
    background-size: 1000px 1000px;
}

.gantt-item,
.gantt-item .gantt-item-content {
    cursor: pointer;
}

.gantt-item.worker-editable,
.gantt-item.worker-editable .gantt-item-content {
    cursor: ns-resize;
}

.gantt-item.time-editable,
.gantt-item.time-editable .gantt-item-content {
    cursor: ew-resize;
}

.gantt-item.worker-editable.time-editable,
.gantt-item.worker-editable.time-editable .gantt-item-content {
    cursor: move;
}

.gantt-item-time-fixed,
.gantt-item-time-fixed.selected-item {
    border-left: 2px solid black;
    border-right: 2px solid black;
}

.gantt-item-worker-fixed,
.gantt-item-worker-fixed.selected-item {
    border-top: 2px solid black;
    border-bottom: 2px solid black;
}

.gantt-item-resolve-fixed,
.gantt-item-resolve-fixed.selected-item,
.gantt-item-resolve-fixed.unselected {
    border: 2px solid black !important;
}

.gantt-item-worker-fixed > .gantt-item-content {
    height: 19px;
    line-height: 19px;
}

.gantt-item-drag-shadow {
    background-color: rgba(0, 0, 0, 0.15);
}

.gantt-item.gantt-item-dragging {
    z-index: 1000001; /* 1 higher than the main gantt labels so as to be above job rows in engagement view */
}

.gantt-drag-unassign-zone {
    z-index: 1000002;
    position: absolute;
    width: 100%;
    height: 100px;
    top: 0px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5em;
    background-color: #000000;
    opacity: 0;
    transition: opacity 0.25s ease-in-out;
    -moz-transition: opacity 0.25s ease-in-out;
    -webkit-transition: opacity 0.25s ease-in-out;
}

.gantt-drag-unassign-zone-uneditable:hover {
    opacity: 0.25;
}

.gantt-item-content {
    font-size: 13px;
    overflow: hidden;
    white-space: nowrap;
    padding-left: 2px;
    height: 21px;
    line-height: 22px;
    border-radius: 2px;
    position: relative;
    flex-grow: 1;
    display: flex;
}

.worker-task .gantt-item-content {
    display: block;
}

.hat-container {
    height: 100%;
    width: 20px;
}

.suggestions-mode .hat-container > .suggestion-num {
    position: absolute;
    z-index: 3;
    font-size: 10px;
    top: 0;
    right: 3px;
}

.suggestions-mode .hat-container > .suggestion-hat {
    width: 0;
    height: 0;
    border: solid 10px;
    position: absolute;
    top: 0;
    right: 0;
}

.hat-container.with-handle > .suggestion-hat {
    margin-right: 7px;
}

.hat-container.with-handle > .suggestion-num {
    right: 9px;
}

.gantt-item:not(.selected-item) > .gantt-item-content {
    font-weight: 300;
}

.gantt-item-content.with-handle {
    margin-right: 7px; /* .item-resize-handle width */
}

.gantt-item-draft .gantt-item-content {
    color: black;
    background: white;
    margin: 1px;
    height: 19px;
    line-height: 19px;
}

.gantt-item-draft .item-resize-handle ~ .gantt-item-content {
    margin-right: 6px;
}

.gantt-item-delete-proposal {
    text-decoration: line-through;
}

.suggestions-mode .gantt-item-proposal {
    transition: background-color 0.2s;
}

.gantt-item-proposal .gantt-item-content {
    background: transparent;
    color: black;
}

.gantt-item-proposal .item-resize-handle ~ .gantt-item-content {
    margin-right: 6px;
}

.gantt-item-worker-fixed .item-resize-handle {
    height: 20px; /* Smaller height to account for border */
}

.item-resize-handle {
    z-index: 10;
    position: absolute;
    right: 0;
    height: 22px;
    text-align: center;
    width: 7px;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
    color: var(--text-inverse);
    cursor: col-resize;
    border-radius: 0 2px 2px 0; /*TL, TR, BR, BL*/
    line-height: 19px;
}

.handle {
    cursor: col-resize;
}

.bounds-container {
    position: absolute;
    height: 100%;
    width: 100%;
}

.gantt-item-bounds {
    --row-height: inherit;
    pointer-events: none;
    height: var(--row-height);
    position: absolute;
    border-top: 1px dotted rgb(151, 167, 151);
    border-bottom: 1px dotted rgb(151, 167, 151);
    z-index: 39;
    text-align: center;
}

.utilisationcanvas-visible .gantt-item-bounds,
.utilisationcanvas-visible .gantt-job-bounds {
    height: calc(var(--row-height) - var(--utilisation-row-height));
}

/* AR: probably want to use the new colour palette for bounds */

.gantt-item-bounds-in {
    border-color: rgba(151, 210, 151, 0.9);
    background-color: rgba(151, 210, 151, 0.4);
}

.gantt-item-bounds-out {
    border-color: rgba(255, 177, 163, 0.9);
    background-color: rgba(255, 177, 163, 0.4);
}

.gantt-item-bounds-default {
    border-color: rgba(200, 200, 200, 0.9);
    background-color: rgba(200, 200, 200, 0.4);
}

.gantt-item-bounds-selected {
    border-color: rgba(70, 172, 255, 0.9);
    background-color: rgba(70, 172, 255, 0.4);
    z-index: 50;
}

.gantt-job-bounds {
    --row-height: inherit;
    pointer-events: none;
    height: var(--row-height);
    position: absolute;
    border-top: 1px dashed rgb(151, 167, 151);
    border-bottom: 1px dashed rgb(151, 167, 151);
    z-index: 38;
    text-align: center;
}

.gantt-job-bounds-in {
    border-color: rgba(70, 172, 255, 0.9);
    /*background-color: rgba(151,210,151,0.4);*/
}

.gantt-job-bounds-out {
    border-color: rgba(255, 177, 163, 0.9);
    /*background-color: rgba(255,177,163,0.4);*/
}

.gantt-job-bounds-default {
    border-color: rgba(200, 200, 200, 0.9);
    /*background-color: rgba(200, 200, 200, 0.4);*/
}

.gantt-job-bounds-selected {
    border-color: rgba(70, 172, 255, 0.9);
    /*background-color: rgba(70, 172, 255, 0.4);*/
    z-index: 50;
}

.btn-job-bounds {
    color: white;
    border-color: rgba(70, 172, 255, 0.9);
    background-color: rgba(70, 172, 255, 0.9);
}

.btn-job-bounds:hover,
.btn-job-bounds:focus,
.btn-job-bounds:active,
.open > .dropdown-toggle.btn-job-bounds {
    color: white;
    background-color: rgba(70, 172, 255, 0.9);
}

.btn-task-bounds {
    color: white;
    border-color: rgba(151, 210, 151, 0.9);
    background-color: rgba(151, 210, 151, 0.9);
}

.btn-task-bounds:hover,
.btn-task-bounds:focus,
.btn-task-bounds:active,
.open > .dropdown-toggle.btn-task-bounds {
    color: white;
    background-color: rgba(151, 210, 151, 0.9);
}

.bounds-handle-left {
    width: 4px;
    height: 100%;
    left: -4px;
    background-color: rgba(151, 210, 151, 0.9);
    position: absolute;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    z-index: 50;
}

.bounds-handle-right {
    width: 4px;
    height: 100%;
    right: -4px;
    background-color: rgba(151, 210, 151, 0.9);
    position: absolute;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    z-index: 50;
}

.gantt-item-bounds.editable-bounds .bounds-handle-left {
    width: 6px;
    left: -6px;
}

.gantt-item-bounds.editable-bounds .bounds-handle-right {
    width: 6px;
    right: -6px;
}

.gantt-item-bounds.editable-bounds .bounds-handle-left,
.gantt-item-bounds.editable-bounds .bounds-handle-right,
.gantt-job-bounds.editable-bounds .bounds-handle-left,
.gantt-job-bounds.editable-bounds .bounds-handle-right {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gantt-item-bounds.editable-bounds .bounds-handle-left,
.gantt-item-bounds.editable-bounds .bounds-handle-right {
    cursor: col-resize;
    pointer-events: initial;
    z-index: 10000;
}

.gantt-item-bounds.editable-bounds .bounds-handle-left > span,
.gantt-item-bounds.editable-bounds .bounds-handle-right > span,
.gantt-job-bounds.editable-bounds .bounds-handle-left > span,
.gantt-job-bounds.editable-bounds .bounds-handle-right > span {
    line-height: 26px;
    color: white;
}

.gantt-item-bounds-out .bounds-handle-right,
.gantt-item-bounds-out .bounds-handle-left {
    background-color: rgba(255, 177, 163, 0.9);
}

.gantt-item-bounds-default .bounds-handle-right,
.gantt-item-bounds-default .bounds-handle-left {
    background-color: rgba(200, 200, 200, 0.9);
}

.gantt-item-bounds-selected .bounds-handle-right,
.gantt-item-bounds-selected .bounds-handle-left {
    background-color: rgba(70, 172, 255, 0.9);
}

.gantt-job-bounds-out .bounds-handle-right,
.gantt-job-bounds-out .bounds-handle-left {
    background-color: rgba(255, 177, 163, 0.9);
}

.gantt-job-bounds-default .bounds-handle-right,
.gantt-job-bounds-default .bounds-handle-left {
    background-color: rgba(200, 200, 200, 0.9);
}

.gantt-job-bounds-in .bounds-handle-right,
.gantt-job-bounds-in .bounds-handle-left {
    background-color: rgba(70, 172, 255, 0.9);
}

.request .bounds-handle-right {
    cursor: e-resize;
}

.request .bounds-handle-left {
    cursor: w-resize;
}

.gantt-item-notvalidated {
    opacity: 0.6;
}

.gantt-item-bounds:not(.editable-bounds) .bounds-inner-span,
.gantt-item-bounds:not(.editable-bounds) .bounds-inner-span {
    display: none;
}

.gantt-item-bounds.editable-bounds .bounds-inner-span,
.gantt-item-bounds.editable-bounds .bounds-inner-span {
    display: block;
}

.error-flag {
    align-items: center;
    background-color: white;
    display: none;
    flex-shrink: 0;
    margin-right: 2px;
    position: relative;
    right: 2px;
    color: var(--warning);
    width: 12px;
    border-radius: 1px;
    z-index: 1;
}

.gantt-item-error .error-flag {
    color: var(--danger);
}

.gantt-item-warning .error-flag,
.gantt-item-error .error-flag {
    display: flex;
}

.gantt-item-warning .error-flag::before,
.gantt-item-error .error-flag::before {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

.gantt-item-warning .error-flag.fa-incomplete-check-icon::before,
.gantt-item-error .error-flag.fa-minus-circle::before {
    font-size: 10px;
}

.e-resize {
    cursor: e-resize !important;
}

.w-resize {
    cursor: w-resize !important;
}

body.move,
body.move *,
.move,
.move * {
    cursor: move !important;
}

body.horizontal,
body.horizontal *,
.horizontal,
.horizontal * {
    cursor: e-resize;
}

body.vertical,
body.vertical *,
.vertical,
.vertical * {
    cursor: n-resize;
}

body.resize,
body.resize *,
.resize,
.resize * {
    cursor: col-resize !important;
}

body.bounds-resize,
body.bounds-resize *,
.bounds-resize,
.bounds-resize * {
    cursor: col-resize !important;
}

body.no-drop,
body.no-drop * {
    cursor: no-drop !important;
}

.over {
    background-color: red !important;
    color: var(--text-inverse);
}

.gantt-item-review .gantt-item-content {
    font-weight: bolder;
}

.middle-task .gantt-item-content {
    font-weight: bolder;
}

.last-task .gantt-item-content {
    font-style: italic;
}

.stale .gantt-item-content span {
    text-decoration: line-through;
}

div[class^="fixed"] {
    color: var(--text-inverse);
    opacity: 0.7;
}

i.icon-continuity {
    color: gold;
    width: unset;
}

i.suggested-star {
    padding-top: 0.5em;
    position: absolute;
    left: 6px;
    color: rgb(102, 160, 102);
}

i.preferred-skill {
    padding-top: 0.5em;
    position: absolute;
    left: 6px;
    color: rgb(102, 160, 102);
}

i.disabled-skill {
    padding-top: 0.5em;
    position: absolute;
    left: 6px;
    color: #777;
}

.timeLine {
    z-index: 50;
    pointer-events: none;
}

.nowLine {
    border-right: 2px solid var(--accent-11);
    z-index: 101; /* 1 more than utilisation z-index*/
}

.nowLine-shadow {
    position: absolute;
    right: -2px;
    top: 0;
    bottom: 0;
    width: 2px;
    box-shadow: 0 0 5px rgba(0 0 0 / 40%);
}

.nowLine.job-edit-now-line {
    left: 0;
    background-color: rgba(0, 0, 0, 0.15);
    border-right: 2px solid rgba(0, 0, 0, 0.2);
}

.nowDot {
    background: var(--accent-11);
    height: 10px;
    width: 10px;
    bottom: -5px;
    border-radius: 5px;
    position: absolute;
    z-index: 1;
}

.show-hours #mainGanttHeaders .nowDot {
    bottom: -30px;
}

.show-week #unscheduledGanttHeaders .nowDot {
    bottom: 28px;
}

#dragSelectRectangle,
#unscheduledDragSelectRectangle {
    border: 2px solid rgba(0, 0, 0, 0.2);
    background-color: rgba(0, 0, 0, 0.15);
    position: absolute;
    z-index: 50;
}

.unscheduled-range-from,
.unscheduled-range-to,
.solver-range-from,
.solver-range-to {
    background-color: rgba(0, 0, 0, 0.15);
}

.unscheduled-range-from,
.solver-range-from {
    border-right: 2px solid rgba(0, 0, 0, 0.2);
}

.unscheduled-range-to,
.solver-range-to {
    border-left: 2px solid rgba(0, 0, 0, 0.2);
}

.solver-range-resize-handle {
    width: 8px;
    height: 100%;
    display: inline-block;
    position: absolute;
    cursor: ew-resize;
    z-index: 500;
}

.solver-range-resize-handle:hover,
.solver-range-resize-handle.hover {
    background-color: rgba(0, 0, 0, 0.1);
}

.solver-range-resize-handle.dragging {
    background-color: rgba(0, 0, 0, 0.16);
}

#fromLine {
    border-right: 2px dashed rgba(0, 0, 0, 0.5);
}

#toLine {
    border-right: 2px dashed rgba(0, 0, 0, 0.5);
}

.btn[disabled] {
    pointer-events: auto;
}

.nvd3.multiChart .axis .nv-axis line {
    stroke: #e0e0e0;
    fill: none;
}

.drag:after,
.drag:after {
    content: attr(title);
    font-size: 10px;
    background-color: var(--surface-overlay);
    color: var(--text-inverse);
    width: 100%;
    height: 100%;
    top: 0px;
    position: absolute;
}

/* removes the added x in Edge in the Search Gantt */
input::-ms-clear {
    display: none;
}

.invisible,
.hidden-common-parent,
.gantt-item-invisible,
.drag-rectangle-invisible {
    display: none !important;
}

/*
This means any event on any elements tagged with this will be pass through any mouse events.
As a consequence, no clicks or any other mouse actions will be possible while the element is tagged.
Use sparingly and only temporarily.
*/
.mouse-invisible {
    pointer-events: none;
}

.coach {
    border-top: 1px solid #b4b4b4;
}

.specialist {
    padding-left: 40px;
}

.selected-item {
    z-index: 1000;
    opacity: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transform-style: preserve-3d;
    animation-delay: 1s;
    font-weight: 500;
    -webkit-box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.4);
    -moz-box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.4);
    box-shadow: 1px 1px 6px 2px rgba(64, 64, 64, 0.4);
    filter: brightness(90%);
}

.selected-item .gantt-item-content {
    -webkit-backface-visibility: hidden;
}

@-webkit-keyframes pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4);
    }
    100% {
        -webkit-box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
    }
}

@keyframes pulse {
    0% {
        -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4);
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4);
    }
    100% {
        -moz-box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
        box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
    }
}

.gantt-left-edge {
    position: relative;
}

.btn.slim {
    padding-left: 6px;
    padding-right: 6px;
}

div.signalr-updated {
    border-radius: 0px;
}

div.signalr-updated div.gantt-item-content {
    color: red;
    border-radius: 0px;
}

div.signalr-updated .error-flag {
    background-color: blue;
}

#popover,
.tabbed-sidebar {
    border-left: 1px solid #ccc;
    width: 390px;
}

#selection div.header,
#popover div.header {
    border-bottom: 1px solid #6c757d;
    padding: 10px;
}

.popover-section-content {
    padding-left: 23px;
}

/* --- errors and warnings styles to accomodate for a button at the end of the row - will work anywhere else if the .errors-warnings class taken out of css --- */
.errors-warnings .popover-section-content {
    margin-top: 8px;
}

.errors-warnings .popover-section-content .row {
    justify-content: space-between;
    min-height: 28px;
    align-items: center;
}

.errors-warnings .popover-section-content .row .bullet-icon {
    flex-basis: 0;
    flex-grow: 0;
}

.economics .popover-section-content .row .bullet-text,
.errors-warnings .popover-section-content .row .bullet-text {
    flex-basis: 0;
    flex-grow: 1;
}

.errors-warnings .popover-section-content .row .gantt-sidebar-btn {
    flex-basis: 0;
    flex-grow: 0;
    margin-left: 10px;
}

.errors-warnings .popover-section-content .row .gantt-sidebar-btn.ng-hide {
    display: block !important;
    visibility: hidden;
}

/* end of errors-warnings styles */

.popover-section-content .row.flex-align-right {
    justify-content: flex-end !important;
}

.popover-section-content .label,
.popover-section-content .label-custom {
    margin-top: 10px;
}

.popover-section-heading {
    display: flex;
    align-content: center;
    justify-content: space-between;
}

.popover-section-heading .collapsible-header {
    width: 100%;
}

.popover-section-heading .collapsible-header,
.popover-section-heading .collapsible-header > div {
    display: flex;
    align-items: center;
}

#selection .pending-data,
#popover .pending-data {
    color: rgba(0, 0, 0, 0.3);
}

#selection div.content .section,
#popover div.content .section {
    padding: 10px;
    border-bottom: 1px solid #6c757d;
}

#selection.job-editor-team-sidebar div.content .section,
#popover.job-editor-team-sidebar div.content .section {
    padding-right: 10px;
}

#selection div.content .section-header,
#popover div.content .section-header {
    font-weight: var(--font-weight-bold);
    margin-right: 5px;
    max-width: 220px;
}

#selection div.content .job-stat-box,
#popover div.content .job-stat-box {
    width: 100%;
    margin-bottom: 10px;
}

#selection div.content .job-stat-box h3,
#popover div.content .job-stat-box h3 {
    font-size: 0.9em;
    margin-bottom: 0px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#selection div.content .job-stat-box p,
#popover div.content .job-stat-box p {
    font-weight: var(--font-weight-bold);
    margin: 0;
}

#selection div.content .row,
#selection div.header .row,
#popover div.content .row,
#popover div.header .row {
    margin: 2px 0 0px 0;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: start;
    flex-direction: row;
    flex-wrap: wrap;
}

#selection div.content .row custom-member,
#popover div.content .row custom-member {
    width: 100%;
}

#selection div.content .row.buttons,
#selection div.header .row.buttons,
#popover div.content .row.buttons,
#popover div.header .row.buttons {
    justify-content: flex-start;
    margin-top: 8px;
}

.row.buttons > div,
.row.buttons > button {
    margin-right: 5px;
}

#selection div.header .job-name,
#popover div.header .job-name {
    margin: 0;
    max-width: 270px;
    overflow-wrap: break-word;
}

#selection div.header .task-name,
#popover div.header .task-name {
    margin-bottom: 0;
    max-width: 270px;
    overflow-wrap: break-word;
    color: #666;
    font-weight: var(--font-weight-semibold);
}

#selection div.content .row .flex,
#selection div.header .row .flex,
#popover div.content .row .flex,
#popover div.header .row .flex {
    flex-grow: 1;
}

#selection div.content .section .row .center,
#popover div.content .section .row .center {
    text-align: center;
}

#selection .section .date-input-wrapper,
#selection .section .dates-wrapper,
#popover .section .date-input-wrapper,
#popover .section .dates-wrapper {
    width: 40%;
    flex-grow: 1;
    text-align: center;
}

.suggestion-row .date-input-wrapper {
    flex-grow: 1;
}

#selection .section .dates-wrapper > span,
#popover .section .dates-wrapper > span {
    padding: 0 5px;
    text-align: center;
}

#selection div.content div.bullet-icon,
#popover div.content div.bullet-icon {
    margin-right: 10px;
    text-align: center;
    color: #444;
}

#selection div.content .section .show-priority .fal,
#popover div.content .section .show-priority .fal {
    /* the icon to show priority is smaller than the other icons - font-awesome issue; the styles are to make the icon the same size*/
    font-size: 18px;
    padding: 3px 3px 0 3px;
}

#selection div.content div.bullet-button,
#popover div.content div.bullet-button {
    width: 28px;
    margin-right: 3px;
    float: left;
    text-align: center;
}

#selection div.content div.bullet-text,
#popover div.content div.bullet-text {
    display: flex;
    flex: 1;
}

#selection .bounds-separator,
#popover .bounds-separator {
    text-align: center;
    margin: 0 3px;
}

#selection .bounds-separator.bounds-separator-editable,
#popover .bounds-separator.bounds-separator-editable {
    width: 29px;
}

.delete-suggestion {
    text-decoration: line-through;
}

/* AR: all these flex bits give us the correct heights for adding a scrollbar to child elements of the sidebar
 Test scrolling in ODA Summary screen v2 if removing
 */
.tabbed-sidebar {
    display: flex;
    flex-direction: column;
}

.tabbed-sidebar .tab-content {
    display: flex;
    flex-direction: column;
    overflow-y: hidden;
    height: 100%;
}

.tabbed-sidebar .tab-pane {
    position: relative;
}

#metrics.active,
#selection.active {
    height: 100%;
    display: flex;
    flex-direction: column;
}

#selection .content {
    overflow-y: auto;
}

/* AR: scrollbar end */

#panelResizer:hover {
    cursor: ns-resize;
    background-color: rgba(0, 0, 0, 0.1);
}

#panelResizer.dragging {
    background-color: rgba(0, 0, 0, 0.1);
}

/* first clause lets Vue DropdownButton which lacks stable id / datatest
* assume the same size as regular .gantt-sidebar-btn (for DEVO-155859)
*/
div.gantt-sidebar-row > div.DropdownButton > button,
.gantt-sidebar-btn {
    height: 28px;
    padding: 0 8px;
}

.gantt-sidebar-btn:not(:last-of-type) {
    margin-right: 5px;
}

.gantt-sidebar-btn-slim {
    background-color: white;
    border-color: white;
    color: #6c757d;
    height: 24px;
    margin-right: 5px;
    margin-left: 5px;
    padding: 0 7px;
}

.gantt-sidebar-btn-slim:hover {
    background-color: #6c757d;
    border-color: #6c757d;
    color: var(--text-inverse);
}

.btn-group > .gantt-sidebar-btn {
    margin-right: 0;
}

.progress-label {
    font-size: 22px;
    color: #999;
    margin-bottom: 5px;
}

.date-bounds button {
    margin: 0 3px;
}

.task-traits-table {
    display: flex;
    width: 100%;
    min-width: 0;
    justify-content: space-between;
}

.trait-category-group {
    flex-grow: 1;
}

.trait-category-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border: 1px solid #ced4da;
    padding: 10px;
    align-items: center;
    border-right: transparent;
}

.task-traits-table .trait-category-group:last-of-type {
    border-right: 1px solid #ced4da;
}

.trait-category-header > div {
    overflow: hidden;
    text-overflow: ellipsis;
}

.trait-category-header button {
    background-color: var(--surface-default);
    max-height: 35px;
}

.trait-category-header button:hover {
    background-color: #6c757d;
}

.trait-category-header-title {
    line-height: 30px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.trait-category-header.badge {
    font-weight: var(--font-weight-regular);
    margin: 0 5px;
}

#selection div.content .gantt-sidebar-engagements.row,
#popover div.content .gantt-sidebar-engagements.row {
    align-items: center;

    /* reversed for the 'red on mousedown' selector trickery below */
    flex-direction: row;
    margin-top: 5px;
}

#selection div.content .gantt-sidebar-engagements.row:not(:last-child),
#popover div.content .gantt-sidebar-engagements.row:not(:last-child) {
    border-bottom: 1px dashed #ced4da;
    padding-bottom: 5px;
}

/* deselect engagement button and sibling text turns red on mousedown */
.gantt-sidebar-engagements .gantt-sidebar-btn-slim:not(:disabled):not(.disabled):active {
    background-color: var(--danger);
    color: var(--text-inverse);
}

#selection div.content .gantt-sidebar-engagements .flex-text-truncated,
#popover div.content .gantt-sidebar-engagements .flex-text-truncated {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#selection div.content .gantt-sidebar-engagements .flex-text-fixed,
#popover div.content .gantt-sidebar-engagements .flex-text-fixed {
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* --- gantt search modal, engagement view modal --- */
.viewLoad-feedback {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 1rem;
    position: sticky;
    width: 100%;
    justify-content: space-between;
}

.modify-report {
    margin-right: 1rem;
    display: inline;
    padding-left: 1rem;
}

.viewLoad-feedback .viewLoad-validation {
    display: flex;
    align-self: center;
    justify-content: flex-end;
    flex-grow: 1;
    margin-right: 0.3rem;
    max-width: 700px;
}

.viewLoad-feedback .search-warning,
.viewLoad-feedback .search-error {
    color: var(--warning);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.viewLoad-feedback .search-error {
    color: var(--danger);
}

.viewLoad-feedback .results-text {
    align-self: center;
    margin-right: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}

.viewLoad-feedback .results-n-confirm {
    display: flex;
    justify-content: flex-end;
    flex-grow: 1;
}

/* --- END of gantt search modal, engagement view modal --- */

/* ---- Gantt Overlay and shadow item css */

.split-point-indicator {
    position: absolute;
    top: -0.8px; /* AR: This is the task border width, believe it or not */
    left: 0;
    border-right: 2px solid black;
    z-index: 10;
    height: 23px;
    pointer-events: none;
}

.gantt-item-worker-fixed .split-point-indicator {
    height: 20px; /* Smaller height to account for border */
}

.debug-snap-line {
    position: absolute;
    top: -2px;
    left: -3px;
    border-left: 2px dashed salmon;
    z-index: 10;
    height: 26px;
}

.split-popup {
    align-items: center;
    background-color: #61656c;
    border-color: #61656c;
    border-radius: 0.25rem;
    bottom: 30px;
    color: white;
    display: flex;
    height: 60px;
    justify-content: center;
    margin-left: -17px;
    padding: 15px;
    pointer-events: none;
    position: absolute;
    text-align: center;
    width: 220px;
}

.split-popup.with-split-point {
    bottom: 31px;
    left: calc(100% - 7px); /* 7px to offset one .item-resize-handle element */
}

.split-popup::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 12px;
    border-top: 6px solid black;
    border-top-color: inherit;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
}

.scheduled-warning-label {
    height: 28px;
}

.GanttView-closeUnscheduledGanttButton {
    border-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    position: absolute;
    right: 0;
    top: 10px;
}

.sidebar-open .GanttView-closeUnscheduledGanttButton {
    right: 15px;
}

.GanttView-loadingText {
    padding-top: 10px;
    font-size: 14px;
    color: var(--text-subtle);
}

/* AR: Party Dayshape easter egg */
.party-dayshape .gantt-item {
    animation: party-dayshape 0.8s linear infinite !important;
}

/* Tone down the animation to avoid vestibular motion triggers. */
@media (prefers-reduced-motion) {
    .party-dayshape .gantt-item {
        transition: none !important;
        animation: none !important;
        background-color: #ff479e;
    }
}

@keyframes party-dayshape {
    0%,
    100% {
        background-color: #3df2c2;
        transform: rotate(8deg);
    }
    25% {
        background-color: #7272e9;
        transform: rotate(0deg);
    }
    50% {
        background-color: #ff479e;
        transform: rotate(-8deg);
    }
    75% {
        background-color: #ff8c62;
        transform: rotate(0deg);
    }
}

/* Easter egg end */

.gantt-row-grouping,
.gantt-unscheduled-grouping,
.unit-row,
.header-row {
    height: 27px;
    background-color: var(--surface-accent);
    color: var(--text-default);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.33px;
    border-top: 2px solid var(--border-default);
    z-index: 35;
}

.gantt-unscheduled-grouping .gantt-label-link {
    font-size: 11px;
}

.gantt-row-grouping span .icon-contracted,
.gantt-row-grouping span .icon-expanded,
.gantt-row-grouping span .icon-filter-expanded {
    margin-right: 6px;
    padding-left: 2px;
}

.gantt-row-grouping > span > span {
    padding-left: 0 !important;
    width: 100%;
}

.gantt-row-grouping > span {
    position: relative;
}

.gantt-row-grouping .button-expand,
.gantt-row-grouping .button-collapse {
    display: none;
    margin-left: auto;
    margin-right: 3px;
}

.unit-row,
.header-row {
    display: flex;
}

.engagement-view .unit-row.separator,
.engagement-view .gantt-row-grouping.separator {
    background-color: var(--surface-subtle-dark);
    color: var(--text-accent);
    border: none;
}

.gantt-job-header {
    background-color: var(--surface-accent);
    color: var(--text-default);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.33px;
}

span.gantt-job-header .icon-expanded,
span.gantt-job-header .icon-contracted {
    flex-shrink: 0;
}

/*devo 518 - performance issues with sticky headers */
.gantt-unscheduled-grouping,
.gantt-labels-row {
    overflow: visible !important;
    padding-left: 2px;
}

.unit-row.separator {
    padding-left: 40px;
}

.gantt-unscheduled-grouping span:not(.gantt-resource-header):not(.gantt-priority-icon) {
    padding-left: 2px;
}

span.gantt-label-name,
.gantt-unscheduled-grouping span:not(.gantt-resource-header):not(.unscheduled-gantt-ellipsis):not(.gantt-priority-icon) {
    width: 100%;
}

.gantt-unscheduled-grouping .gantt-priority-icon {
    background: rgba(240, 240, 240, 0.6);
    padding: 2px 5px;
    border-radius: 3px;
    display: flex;
    flex: 0;
}

.gantt-labels-row .gantt-priority-icon {
    background: rgba(240, 240, 240, 0.6);
    padding: 2px 5px;
    border-radius: 3px;
    margin-right: 5px;
    display: flex;
    flex: 0;
}

.engagement-view .gantt-labels-row-name {
    margin-left: 1px;
}

.gantt-row-grouping i.icon-enabled,
.gantt-row-grouping i.icon-home {
    display: none;
}

.gantt-row-grouping.enabled i.icon-enabled,
.gantt-row-grouping.home i.icon-home {
    display: inline-block;
}

.gantt-row-grouping.contracted i.icon-expanded,
.gantt-row-grouping.contracted i.icon-filter-expanded,
.gantt-row-grouping.expanded i.icon-contracted,
.gantt-row-grouping.expanded i.icon-filter-expanded,
.gantt-row-grouping.filter-expanded i.icon-expanded,
.gantt-row-grouping.filter-expanded i.icon-contracted,
.gantt-unscheduled-grouping.contracted i.icon-expanded,
.gantt-unscheduled-grouping.expanded i.icon-contracted,
.gantt-unscheduled-grouping.contracted i.icon-filter-expanded,
.gantt-unscheduled-grouping.expanded i.icon-filter-expanded,
.gantt-unscheduled-grouping.filter-expanded i.icon-expanded,
.gantt-unscheduled-grouping.filter-expanded i.icon-contracted {
    display: none;
}

i.icon-filter-expanded {
    color: #999999;
}

.gantt-row-grouping.expanded i.icon-expanded,
.gantt-row-grouping.contracted i.contracted,
.gantt-unscheduled-grouping.expanded i.icon-expanded,
.gantt-unscheduled-grouping.contracted i.icon-contracted {
    display: inline-block;
}

.gantt-labels-row.no-rows {
    height: 28px;
    padding-left: 8px;
}

/* todo could maybe be combined with gantt-labels-row */
.gantt-labels-row-flex {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.gantt-labels-row-asgn {
    width: 50px;
    min-width: 50px;
    padding-top: 1px;
}

.utilisation-slim-view-visible .gantt-labels-row-asgn {
    padding-top: 6px;
}

.gantt-job-header .icon-expanded,
.gantt-job-header .icon-contracted,
.gantt-resource-header-label .icon-expanded,
.gantt-resource-header-label .icon-contracted {
    flex-shrink: 0;
    width: 17px;
}

.gantt-resource-header-label {
    align-items: center;
}

.gantt-resource-header-label .GanttTemplates-rowselect-checkbox {
    margin-left: 2px;
}

/* reserved blank section in the beginning of certain separator
 rows for future compatibility and padding */
.gantt-labels-separator-row-reserved-area {
    min-width: 10px;
    width: 10px;
}

.gantt-labels-resource-row-checkbox-area {
    flex-direction: row-reverse;
    min-width: 50px;
    width: 50px;
}

#unscheduledGanttLabelsBody .gantt-labels-resource-row-checkbox-area {
    min-width: 43px;
    width: 43px;
}

/* Bootstrap positions its checkbox pseudo-elements with rems, which doesn't leave us with much flexibility. This resets positioning. */
.GanttView-selectAllResourcesControl .custom-control-label::before,
.GanttView-selectAllResourcesControl .custom-control-label::after {
    top: 0;
}

.GanttTemplates-rowselect-checkbox {
    padding-left: 0.2rem;
}

.gantt-labels-row-name {
    flex-grow: 3;
    flex-shrink: 1;
    flex-basis: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    height: 27px;
}

.gantt-labels-row-data {
    display: flex;
    flex-wrap: wrap;
    align-content: normal;
    flex-grow: 3;
    flex-shrink: 1;
    flex-basis: 0;
    padding: 6px 3px;
    border-left: 1px solid #ddd;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 100%;
}

.gantt-labels-row-data.narrow {
    flex-grow: 1;
}

.utilisation-slim-view-visible .gantt-labels-row-data {
    padding-top: 11px;
}

.gantt-labels-row .button-assignable,
.gantt-labels-row .button-partial-assignable,
.gantt-labels-row .button-expand-collapse {
    display: inline-block;
    width: 15px;
    height: 15px;
    position: absolute;
}

.gantt-labels-row .button-assignable {
    visibility: hidden;
    left: 3px;
}

.gantt-labels-row .button-partial-assignable {
    visibility: hidden;
    left: 23px;
}

.gantt-labels-row-expand {
    display: none;
    margin-right: 3px;
}

.utilisation-blocks-view .gantt-labels-row-expand {
    display: block;
}

.gantt-labels-row .button-expand,
.gantt-labels-row .button-collapse {
    color: var(--interactive-primary-d2);
    padding: 2px;
}

.gantt-labels-row .button-expand:hover,
.gantt-labels-row .button-collapse:hover {
    background-color: rgb(144 144 144 / 40%);
    color: #7a7a7a;
}

.gantt-row-grouping.gantt-labels-row .button-expand,
.gantt-row-grouping.gantt-labels-row .button-collapse {
    color: var(--interactive-primary-d2);
    padding: 2px;
}

.gantt-row-grouping.gantt-labels-row .button-expand:hover,
.gantt-row-grouping.gantt-labels-row .button-collapse:hover {
    background-color: rgb(144 144 144 / 40%);
    color: var(--text-inverse);
}

.gantt-labels-row .button-collapse {
    display: none;
}

.gantt-labels-row.utilisation-expanded .button-expand {
    display: none;
}

.utilisation-blocks-view .gantt-labels-row.utilisation-expanded .button-collapse {
    display: inline-block;
}

.utilisation-blocks-view .gantt-labels-row:not(.utilisation-expanded) .button-expand {
    display: inline-block;
}

.gantt-labels-row-suitability {
    width: 40px;
}

.utilisation-slim-view-visible .gantt-labels-row-suitability {
    padding-top: 5px;
}

.gantt-labels-row span.badge {
    float: right;
    margin: 0 5px;
    padding: 4px;
    position: relative;
    top: 3px;
}

.gantt-labels-row i.icon-restriction,
.gantt-labels-row i.icon-incomplete,
.gantt-labels-row i.icon-continuity,
.gantt-labels-row i.icon-unlinked,
.gantt-labels-row .button-select {
    display: none;
    visibility: hidden;
}

.gantt-labels-row.assignable:hover .button-assignable,
.gantt-labels-row.assignable:hover .button-partial-assignable,
.gantt-labels-row.selectable .button-select {
    display: inline-block;
    visibility: visible;
    padding-top: 5px;
}

.gantt-labels-row.restriction i.icon-restriction,
.gantt-labels-row.incomplete i.icon-incomplete,
.gantt-labels-row.continuity i.icon-continuity {
    display: block;
    padding-left: 5px;
    /* AR: 1px top for visual alignment with label text */
    padding-top: 1px;
    padding-right: 5px;
    visibility: visible;
}

.gantt-labels-row.unlinked i.icon-unlinked {
    display: inline-block;
    visibility: visible;
    padding-right: 1.5em;
    font-size: 12px;
}

.gantt-worker-row-identifier {
    display: flex;
    flex-direction: row;
    align-items: center;
    overflow: hidden;
    flex-grow: 3;
    flex-shrink: 1;
    flex-basis: 0;
}

.utilisation-slim-view-visible .gantt-worker-row-identifier {
    padding-top: 5px;
}

.gantt-labels-row-name {
    padding-right: 5px;
}

/* If we color-code the assign work icon */
/*
.gantt-labels-row.assignable.highlight-a .button-assignable {
    color: #5cb85c;
}

.gantt-labels-row.assignable.highlight-b .button-assignable
    color:  #f0ad4e;
}

.gantt-labels-row.assignable.highlight-c .button-assignable {
    color: var(--danger);
} */

.gantt-labels-row.highlight-review {
    font-weight: var(--font-weight-bold);
}

.vert {
    height: 100%;
    /*width: 100%;*/
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    padding: -15px;
}

.vert .column {
    display: flex;
    flex: 1 1 auto;
    /*height: calc(100vh - 49px);*/
    flex-direction: column;
    order: 1;
    padding: 0;
    transform: translate3d(0px, 0px, 0px);
    background-color: white;
}

.dashboard-component.vert .column {
    height: auto;
}

.vert .column.menu {
    flex: none;
    width: 40px;
    padding-top: 10px;
    border-right: 1px solid #e9e9e9;
    overflow-x: hidden;
    overflow-y: auto;
}
.vert .column.menu ul {
    padding: 0;
    white-space: nowrap;
    list-style-type: none;
    transform: rotate(90deg);
}

.vert .column.menu ul li {
    display: inline;
    padding: 10px 10px 10px 10px;
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
    white-space: nowrap;
    color: #a8a8a8;
    cursor: pointer;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    border-left: 1px solid white;
    border-right: 1px solid white;
}

.vert .column.menu ul li:hover {
    background-color: #f6f6f6;
    color: #979797;
}

.vert .column.menu ul li.selected {
    color: black;
    border-left: 1px solid black;
    border-right: 1px solid black;
}

.vert .column.menu ul li.selected:hover {
    color: #000;
}

.vert .column.menuitem {
    flex: none;
    border-right: 1px solid #e9e9e9;
}
.vert .column .header {
    order: 1;
    padding: 5px 8px 3px 8px;
    width: 100%;
    flex: none;
    /*text-align: center;*/
}
.vert .column .content {
    order: 2;
    flex: auto;
    overflow-y: auto;
}
.vert .column ul.content {
    min-width: 12em;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.vert-list {
    border-top: 1px solid #e9e9e9;
    list-style-type: none;
    padding: 0;
    overflow-y: auto;
    height: 100%;
    width: 100%;
}
.vert-item {
    width: 100%;
    border-bottom: 1px solid #e9e9e9;
    padding: 5px;
    padding-left: 15px;
}

.vert-item.last {
    border-bottom: none;
}

.vert-sublist {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: block;
}
.vert-subitem {
    white-space: nowrap;
    padding-right: 8px;
    cursor: pointer;
    position: relative;
}

.rd-days {
    width: 13em;
}
.rd-container {
    border: 1px solid #ccc;
    border-radius: 5px;
}
.padded {
    padding: 15px;
}
.margined {
    margin: 15px;
}
.notch {
    width: 20px;
    height: 20px;
    border-bottom: 1px solid #e9e9e9;
    border-left: 1px solid #e9e9e9;
    background-color: var(--surface-default);
    transform: translateX(15px) rotate(45deg);
}

/*for attribute view*/
.editable-wrap .editable-controls>input, /*.editable-wrap .editable-controls>select,*/ .editable-wrap .editable-controls>textarea {
    width: 100%;
}

/* for profile view */
.tabular-list {
    padding-left: 0;
    list-style: none;
}

.tabular-list li label {
    width: 150px;
}

.clickable {
    cursor: pointer !important;
}

span.selected {
    font-weight: var(--font-weight-bold);
}

span.highlighted {
    color: #e45400;
}

.highlighted-team {
    /*color: #10A8D0;*/
    color: #5796b5;
}

.vert-item .not-selectable {
    color: #ccc;
    cursor: not-allowed;
    font-weight: var(--font-weight-regular) !important;
}

.vert-item .read-only {
    cursor: not-allowed;
}

span.no-valid-children {
    color: #ccc;
    cursor: not-allowed;
}

.delete-button {
    /*position: absolute;
    right: 15px;
    top: 3px;*/
    /* padding-left:3px;*/
    float: right;
    color: var(--danger);
    display: none;
}

.vert-flat:hover .delete-button,
.vert-subitem:hover .delete-button,
.qr-rule:hover .delete-button,
.deletable:hover .delete-button {
    display: block;
}

* {
    -webkit-hyphens: auto;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 3;
    -webkit-hyphenate-limit-chars: 6 3 3;
    -webkit-hyphenate-limit-lines: 2;
    -webkit-hyphenate-limit-last: always;
    -webkit-hyphenate-limit-zone: 8%;
    -moz-hyphens: auto;
    -moz-hyphenate-limit-chars: 6 3 3;
    -moz-hyphenate-limit-lines: 2;
    -moz-hyphenate-limit-last: always;
    -moz-hyphenate-limit-zone: 8%;
    -ms-hyphens: auto;
    -ms-hyphenate-limit-chars: 6 3 3;
    -ms-hyphenate-limit-lines: 2;
    -ms-hyphenate-limit-last: always;
    -ms-hyphenate-limit-last: always;
    -ms-hyphenate-limit-zone: 8%;
    hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    hyphenate-limit-lines: 2;
    hyphenate-limit-last: always;
    hyphenate-limit-zone: 8%;
}

body {
    /* position:relative;  */
    min-height: 100%;
    height: 100%;
    font-family: var(--font-family);
}

body,
.form-control,
.btn,
.dropdown-menu,
.input-group-text,
.custom-select {
    font-size: 0.875rem;
}

/*
 * TYPOGRAPHY
 */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: var(--font-family);
    font-weight: var(--font-weight-regular);
    line-height: 1.42;
    color: #333;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
    font-weight: var(--font-weight-regular);
    line-height: 1;
    color: #c2c7d1;
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
    margin-top: 0;
    margin-bottom: 10px;
}

h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
    font-size: 70%;
}

h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin-top: 9.5px;
    margin-bottom: 9.5px;
}

h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
    font-size: 75%;
}

h1,
.h1 {
    font-size: 28px;
}

h2,
.h2 {
    font-size: 24px;
}

h3,
.h3 {
    font-size: 19px;
}

h4,
.h4 {
    font-size: 16px;
    /* font-weight: 500; */
}

h5,
.h5 {
    font-size: 14px;
}

h6,
.h6 {
    font-size: 12px;
}

/* input group styles*/
.input-group-prepend > input {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
}

.input-group-text {
    color: #898d91;
}

/* end of input group styles*/

/*
 * ***************************************************
 * MAIN LAYOUT
 * ***************************************************
 */

aside#menu-panel {
    min-height: 100%;
    width: 180px;
}

.settings-page-header {
    padding: 15px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    position: relative;
    height: 66px;
}

.setting-category {
    margin-bottom: 15px;
}

.setting-category > .setting-category-title {
    margin-top: 12px;
    margin-left: 1px;
}

.setting-category > .setting-category-content {
    margin-left: 30px;
}

.config-setting {
    width: 100%;
    margin-top: 5px;
}

.config-setting-name {
    width: 30%;
}

.config-setting-value {
    width: 20%;
}

.config-setting-description {
    width: 50%;
}

.config-setting-description > div {
    padding-left: 5px;
}

.config-setting-label {
    padding-top: 5px;
    font-size: 14px;
}

.config-setting-toggle {
    width: 90px;
    height: 32px;
}

/* * HIDDEN MENU  */
.minified #hide-menu {
    display: none;
}

i.blinker {
    -webkit-animation: blinker 1s linear infinite;
    animation: blinker 1s linear infinite;
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}

/* END of tray */

/* * MAIN PANEL */
#main {
    margin-left: 180px;
    margin-right: 0;
    padding: 0;
    height: 100%;
    -webkit-transition: margin-left 150ms ease-in;
    transition: margin-left 150ms ease-in;
}

#content {
    position: relative;
    height: 100%;
}

div.well {
    background-color: #f6f6f6;
    border-bottom: 1px solid #e9e9e9;
    box-shadow: none;
    -webkit-box-shadow: none;
}

/* All levels */
#menu-panel nav ul {
    padding: 0;
    margin: 0;
    font-size: 13px;
    line-height: 0.5em;
    list-style: none;
    position: relative;
}

#menu-panel nav ul li {
    overflow: hidden;
}

#menu-panel nav ul li.active.open > a:before {
    content: "";
}

#menu-panel nav > ul > li:last-child.open {
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

#menu-panel nav ul li a {
    line-height: normal;
    font-size: 14px;
    padding: 10px 10px 10px 10px;
    color: white;
    display: flex;
    align-items: center;
    font-weight: var(--font-weight-regular);
    text-decoration: none !important;
    position: relative;
    transition: all 200ms ease-in;
    flex-basis: 0;
    flex-grow: 0;
}

/* --END of icon sizes -- */

/* -- END of All levels -- */

/* Minified */

.Nav-minified #main,
.minified #main {
    margin-left: 48px;
}

/*
 * New menu stuff
 */

#menu-inner {
    left: 0;
    position: relative;
    display: flex;
    transition: left 150ms ease-in;
    -webkit-transition: left 150ms ease-in;
    -moz-transition: left 150ms ease-in;
    -o-transition: left 150ms ease-in;
}

#menu-inner i {
    margin-right: 5px;
}

.minified #menu-inner {
    width: 100%;
}

#menu-panel.sub-visible #menu-inner {
    left: -100%;
}

#menu-panel.sub-visible {
    z-index: 905;
    transition: none;
}

.minified #menu-panel.sub-visible #menu-inner {
    left: 0;
}

.minified nav > ul > ul {
    min-height: 100px !important;
    max-height: 180px !important;
    overflow-y: scroll;
    overflow-x: hidden;
    background: #ed1c24 !important;
}

.minified nav > ul > li,
.minified nav > ul > li a {
    position: relative;
}

#menu-panel nav > ul > li > a .fa-lg {
    vertical-align: -4%;
}

.minified nav > ul > li.active > a::before {
    content: "\f0d9";
}

.minified nav ul ul li a {
    padding-left: 14px;
}

.minified nav ul ul li li a {
    padding-left: 25px;
}

.minified nav > ul ul li::before {
    left: 12px;
}

.minified nav > ul > li > ul::before {
    left: 12px;
}

.minified nav > ul > li > a .menu-item-parent,
.minified nav > ul > li > a > b {
    display: none;
}

.minified nav > ul > li > ul {
    display: none !important;
    position: absolute;
    left: 40px;
    width: 200px;
    z-index: 5;
    border: 1px solid #bfbfbf;
    min-height: 180px;
    -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    background: #3a3633;
    margin-top: -3px;
}

.minified .flask-text {
    display: none !important;
    position: absolute;
    left: 40px;
    width: 200px;
    z-index: 5;
    border: 1px solid #bfbfbf;
    min-height: 180px;
    -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.2);
    background: #3a3633;
    margin-top: -3px;
}

.flask {
    color: #25a1eccc;
    white-space: nowrap;
}

.minified nav ul > li > ul > li > ul {
    position: relative;
    left: 13px;
    border: none;
    width: auto;
    margin-left: -12px;
    width: 197px;
}

.minified nav > ul > li > ul > li {
    background-color: rgba(69, 69, 69, 0.9);
}

.minified nav > ul > li > ul > li > ul > li {
    background-color: #484b50;
}

.minified nav > ul > li > ul::before {
    border-left: none;
}

.minified nav > ul ul li::before {
    border: none;
}

.slimScrollDiv,
.slimScrollDiv > :first-child {
    overflow: hidden;
}

.minified .slimScrollDiv,
.minified .slimScrollDiv > :first-child {
    overflow: visible !important;
}

.minified .slimScrollBar,
.minified .slimScrollRail {
    display: none;
}

.minified nav > ul > li > ul > li > a {
    padding-top: 7px;
    padding-bottom: 7px;
}

.minified nav > ul > li > ul > li > ul > li > a {
    padding-top: 7px;
    padding-bottom: 7px;
}

.minified nav > ul > li > ul > li > ul > li a {
    padding-top: 6px;
    padding-bottom: 6px;
}

.page-title {
    margin: 12px 0 28px;
}

.page-title span {
    font-size: 16px;
    color: #333;
    display: inline-block;
    vertical-align: 1px;
}

.page-footer {
    height: 52px;
    padding: 15px 13px 0;
    padding-left: 233px;
    border-top: 1px solid #cecece;
    background: #2a2725;
    width: 100%;
    position: absolute;
    display: block;
    bottom: 0;
}

.minified .page-footer {
    padding-left: 58px;
}

span[btn-checkbox].active {
    background: #7eaa90;
    color: var(--text-inverse);
}

/*
    Custom file upload picker
*/

.btn-file {
    position: relative;
    overflow: hidden;
}

.btn-file input[type="file"] {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    min-height: 100%;
    font-size: 999px;
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    background: red;
    cursor: inherit;
    display: block;
}

input[readonly] {
    background-color: white !important;
}

input[readonly][disabled] {
    background-color: #eee !important;
}

@keyframes scale-out-hor-left {
    0% {
        transform: scaleX(1);
        transform-origin: 0 0;
        opacity: 1;
    }

    100% {
        transform: scaleX(0);
        transform-origin: 0 0;
        opacity: 0;
    }
}

.Index-dayshapeIcon,
.Index-dayshapeLogo {
    background-color: white;
    border-radius: 2px;
    border-color: var(--neutral-deep-grey-14);
    height: 38px;
    object-fit: cover;
}

.logo-wrapper {
    margin: 5px 5px 30px;
}

.Index-dayshapeLogo {
    width: 100%;
}

body.minified .Index-dayshapeLogo {
    animation: scale-out-hor-left 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    position: absolute;
    opacity: 0;
}

body:not(.minified) .Index-dayshapeIcon {
    opacity: 0;
    position: absolute;
}

/* Fix default cursor behaviour */
a,
input[type="submit"],
input[type="image"],
label[for],
select,
button,
.pointer {
    cursor: pointer;
}

ul.header-right-nav {
    list-style: none;
    height: 100%;
}

ul.header-right-nav > li {
    float: left;
    padding: 13px;
    border-left: 1px solid #e9e9e9;
    height: 100%;
}

ul.header-right-nav > li > a {
    text-decoration: none;
    color: #333333;
}

.dropdown-menu.with-arrow:before {
    content: " ";
    position: absolute;
    left: 12px;
    top: -16px;
    border: 8px solid transparent;
    border-bottom: 8px solid rgba(0, 0, 0, 0.15);
}

.dropdown-menu.with-arrow:after {
    content: " ";
    position: absolute;
    left: 13px;
    top: -14px;
    border: 7px solid transparent;
    border-bottom: 7px solid var(--border-inverse);
}

.dropdown-menu.with-arrow.pull-right {
    margin-top: 0;
}

.dropdown-menu.with-arrow.pull-right:before {
    left: auto;
    right: 12px;
}

.dropdown-menu.with-arrow.pull-right:after {
    left: auto;
    right: 13px;
}

.dropdown-menu.with-arrow.panel {
    border: 0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.dropdown-menu li > a > i.fa-angle-right,
.dropdown-menu li > form > a > i.fa-angle-right,
.dropdown-menu li > a > i.fa-angle-left,
.dropdown-menu li > form > a > i.fa-angle-left,
.dropdown-menu li > a.selected:hover > i.fa-angle-right,
.dropdown-menu li > form > a.selected:hover > i.fa-angle-right {
    display: none;
}

.dropdown-menu li > a:hover > i.fa-angle-right,
.dropdown-menu li > form > a:hover > i.fa-angle-right,
.dropdown-menu li > a.selected:hover > i.fa-angle-left,
.dropdown-menu li > form > a.selected:hover > i.fa-angle-left,
.dropdown-menu li > a.selected > i.fa-angle-right,
.dropdown-menu li > form > a.selected > i.fa-angle-right {
    display: flex;
}

.dropdown-menu li.disabled > a > i.fa-angle-right,
.dropdown-menu li.disabled > form > a > i.fa-angle-right,
.dropdown-menu li.disabled > a > i.fa-angle-left,
.dropdown-menu li.disabled > form > a > i.fa-angle-left,
.dropdown-menu li.disabled > a.selected:hover > i.fa-angle-right,
.dropdown-menu li.disabled > form > a.selected:hover > i.fa-angle-right {
    display: none;
}

/* --- dropdown in the gantt view menu indicating filter is selected --- */
.dropdown-menu li a {
    margin-bottom: 1px; /* added for dividing backgrounds when selected filters shown */
}

.dropdown-menu li a.filter-active {
    font-weight: var(--font-weight-semibold);
    background-color: #f5f5f5;
}

.dropdown-menu li a.filter-active i.fa-angle-right {
    display: flex;
}

/* --- # of filters applied --- this is allowing space for the number indicating how many filters are selected. i specified this only for the gantt menu */
#mainGanttLabelsHead .dropdown-menu li a span,
#mainGanttLabelsHead.list-menu li a span {
    position: relative;
    height: 24px;
    padding-right: 26px;
    width: 100%;
}

#mainGanttLabelsHead .dropdown-menu li a span > span,
#mainGanttLabelsHead.list-menu li a span > span {
    position: absolute;
    right: 0;
    top: 0;
    width: 26px;
    padding: 0;
}

/* --- # of filters applied --- this is allowing space for the number indicating how many filters are selected. i specified this only for the gantt menu */
/* --- END of dropdown in the gantt view menu indicating filter is selected --- */

/*For fixed header tables*/

th {
    font-weight: 500;
}

.sticky-table {
    border-collapse: collapse;
}

.sticky-table thead tr th {
    border-top: none;
    /* border-bottom: 3px solid #dee2e6;  the border in sticky tables scrolled with the body and disappeared when scrolling - thus, added the box shadow as a cheat */
    box-shadow: 0px 2px 0px #dee2e6;
}

.sticky-table thead tr th.narrow {
    width: 2%;
}

.sticky-table tbody tr td.narrow {
    width: 2%;
}

.sticky-table thead tr:nth-child(1) th {
    position: sticky;
    background: var(--surface-default);
    top: 0;
    z-index: 10;
}

.table thead tr th.fixed-header {
    padding: 0px;
    border: none;
}

.table thead tr th.fixed-header div {
    position: absolute;
    top: 0px;
    cursor: pointer;
    border-left: 1px solid gainsboro;
    padding: 8px;
    height: 52px;
}

.table thead tr th.no-sort div {
    cursor: default;
}

.table thead tr th.fixed-header.contracted div {
    border-left: none;
}

.table thead tr th.fixed-header div.first {
    border: none;
}

div.fixed-header-bar {
    background-color: white;
    height: 52px;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    border: 1px solid #dddddd;
    margin-right: 1px;
}

/* --- FLEX TABLE styles - Another way to do sticky tables --> assign class .flex-table to the table element --- */
.flex-table {
    display: block;
    width: 100%;
}

.flex-table > thead,
.flex-table > tbody {
    display: block;
}

.flex-table > thead {
    /*background:#f5f5f5;  --> optional */
}

.flex-table > tbody {
    overflow-x: hidden;
    overflow-y: auto;
}

.flex-table > thead > tr,
.flex-table > tbody > tr {
    display: flex;
    flex-wrap: wrap;
    /* padding: 7px 15px;
     border-bottom:1px solid #ddd;*/
}

.flex-table > tbody > tr > td,
.flex-table > thead > tr > th {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

/* --- END of  FLEX TABLE styles --- */

/* --- zebra-striped tables row color adjustment  --- */
.table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--surface-subtle-light);
}

/*To allow background-color inherit for white rows*/
.table-striped tbody tr:nth-of-type(even) {
    background-color: var(--surface-default);
}

.about-table.table td {
    border-top: 1px solid #ececec;
}

.about-table.table th {
    border-top: none;
}

/* --- zebra-striped tables color adjustment  --- */

.report-table table th,
.report-table table td {
    max-width: 140px;
    border-right: 1px solid #e9e9e9;
}

.report-table table th.data-column,
.report-table table td.data-column {
    min-width: 100px;
}

.report-table table td {
    overflow-wrap: break-word;
}

.report-table th:last-child,
.report-table td:last-child {
    border-right: none;
}

.report-table thead span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.report-table.modal-table .table-checkbox th:first-of-type,
.report-table.modal-table .table-checkbox th:first-of-type {
    /* for columns which hold checkboxes*/
    width: 50px;
    min-width: 50px;
    max-width: 50px;
}

.report-table td > a,
.report-table td > .claim-btn {
    word-break: break-all;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* For Field Behaviours page */
.property-behaviour-editor {
    margin-top: -15px;
}

.property-behaviour-editor tbody tr:first-child td {
    border-top: 0;
}

.property-behaviour-editor-container {
    position: sticky;
    top: 0;
    background: white;
    width: calc(100% + 30px);
    margin-left: -15px;
    z-index: 2;
}

.property-behaviour-editor-header {
    padding: 15px;
}

.property-behaviour-editor-table {
    width: calc(100% + 30px);
    margin-left: -15px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 0;
}

.property-behaviour-editor-table-header {
    position: sticky;
    top: 138px;
    background: var(--surface-default);
    z-index: 2;
}

.property-behaviour-editor-table-headerCell {
    border-bottom: 1px solid #dee2e6;
}

/*End of Field Behaviours page */

/* For solve history page */

@-webkit-keyframes updateHighlight {
    from {
        background-color: #449d44;
    }
    to {
        background-color: inherit;
    }
}

@keyframes updateHighlight {
    from {
        background-color: #449d44;
    }
    to {
        background-color: inherit;
    }
}

.solve-history.ng-enter {
    -moz-animation: updateHighlight 1s;
    -o-animation: updateHighlight 1s;
    -webkit-animation: updateHighlight 1s;
    animation: updateHighlight 1s;
}

/* page content padding on User Preferences based Job Edit pages --> padding on job edit page on the left allows space for the close icon, which is not needed on the user preferences page */
#userPreferencesSection .section-content {
    padding-left: 15px;
}

/*
*  For the job editor economic summary table, and similar tables
*/

/* #job-editor-summary-table div {
    border: 1px solid magenta;
} */
.job-editor-section {
    max-width: calc(100vw - 90px);
    padding: 2px; /* something is causing the content to cut off - so had to add the padding */
    overflow-x: auto; /* this should cause only the econ table to scroll, rather than the whole page container. the scroll will only apply on very small res, as the column widths in should prevent the scroll on most sensible screen res.*/
}

.job-editor-summary-table {
    display: flex;
    flex-direction: row;
    flex-grow: 0;
}

#job-editor-summary-table .subsection {
    background-color: rgba(0, 0, 0, 0.05);
}

#job-editor-summary-table .jobed-sum-col {
    flex-grow: 0;
    padding-bottom: 10px;
}

.jobed-sum-col {
    flex-grow: 1;
}

/* custom styles for the display settings dropdown button at the top of the job economics table */
.custom-toggle {
    width: 180px;
    overflow: hidden;
    text-align: initial;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media screen and (min-width: 1367px) {
    .jobed-sum-col {
        min-width: 265px;
        max-width: 265px;
    }

    .jobed-sum-col.jobed-sum-bar-col {
        max-width: initial;
    }
}

.jobed-sum-col.jobed-sum-bar-col {
    display: inline-block;
    flex-grow: 4;
}

@media screen and (max-width: 1366px) {
    .jobed-sum-col {
        min-width: 265px;
        max-width: 265px;
    }
}

.jobed-sum-heading {
    height: 110px;
    text-align: center;
    margin-top: 6px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: break-all;
    width: 100%;
    margin-right: 5px;
    display: flex;
    flex-direction: column;
}

.economics-table-header {
    position: relative;
}

.economics-table-header-margin {
    margin-right: 20px;
}

.approved-date {
    display: block;
    white-space: nowrap;
    width: 100%;
}

.economics-icon-layout {
    position: absolute;
    top: 5px;
    right: 6px;
}

.economics-navigation {
    display: inline-flex;
    padding: 0;
    margin: auto auto 8px;
    justify-items: end;
}

.economics-navigation li {
    display: block;
    width: 12px;
    height: 12px;
    background-color: white;
    border: 1px solid #aaa;
    border-radius: 99.9px;
    margin: 2px;
}

.economics-navigation li.active {
    background-color: #aaa;
}

.jobed-sum-col.current-column {
    margin-top: -2px;
    border: 2px solid var(--primary);
    border-radius: 0.5rem 0.5rem 0 0;
}

.jobed-sum-col.current-column.expanded {
    border-left: none;
    background-color: hsla(212, 100%, 50%, 0.05);
    border-radius: 0 0.5rem 0 0;
}

.jobed-sum-col.forecast-column {
    margin-top: -2px;
    border-top: 2px solid var(--primary);
    border-bottom: 2px solid var(--primary);
}

.jobed-sum-col.actual-column {
    margin-top: -2px;
    border-top: 2px solid var(--primary);
    border-left: 2px solid var(--primary);
    border-bottom: 2px solid var(--primary);
    border-radius: 0.5rem 0 0 0;
}

.jobed-sum-heading-right {
    font-weight: 500;
    height: 24px;
    text-align: right;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    word-break: break-all;
}

.jobed-sum-bold {
    font-weight: 500;
}

.jobed-sum-flex-cell {
    border-top: 1px solid #ddd;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    padding: 0 15px 0 5px;
}

.jobed-sum-heading-row {
    height: 120px;
}

.jobed-sum-high-cell {
    height: 100px;
}

.jobed-sum-converted-span {
    width: 8px;
    display: inline-block;
}

.jobed-sum-cost-col {
    width: 60%;
    text-align: right;
    height: 24px;
    padding: 2px;
}

.jobed-sum-hours-col {
    width: 40%;
    text-align: right;
    height: 24px;
    padding: 2px;
}

.jobed-sum-hours-sm {
    width: 20%;
    text-align: right;
    height: 24px;
    padding: 2px;
}

.jobed-sum-cost-sm {
    width: 35%;
    text-align: right;
    height: 24px;
    padding: 2px;
}

.jobed-sum-diff {
    width: 25%;
    text-align: right;
    height: 24px;
    padding: 2px;
    color: #aaa;
}

.jobed-sum-cell {
    height: 24px;
    padding: 2px;
}

@media screen and (max-width: 1600px) {
    .jobed-sum-cell {
        max-width: 350px;
    }
}

.no-top-border {
    border-top: none;
}

.white-border {
    border-top: 1px solid white;
}

.jobed-sum-bar-cell {
    height: 24px;
    padding: 2px;
    width: 100%;
}

.table-bar {
    display: block;
    height: 10px;
}

.comparator-bar {
    background-color: var(--interactive-primary-200);
    max-width: 100%;
}

.current-bar {
    max-width: 100%;
    background-color: var(--primary);
}

.bar-key-comparator {
    background-color: var(--interactive-primary-200);
}

.bar-key-current {
    background-color: var(--primary);
}

.text-truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.retired-row {
    color: grey;
}

.nvd3 text {
    font-family: var(--font-family);
}

.nvd3 .title {
    font-family: var(--font-family);
}

.nvtooltip {
    font-family: var(--font-family);
}

/* jobEditGant - teams section on job edit page */
#jobEditGantt .gantt-labels-head {
    max-height: 60px;
    width: 295px;
}

#jobEditGantt .gantt-labels-head #label-header {
    margin-top: 30px;
    display: flex;
}

#label-header .faux-column:nth-child(1) {
    width: 210px;
}

#label-header .faux-column:nth-child(2) {
    width: 60px;
}

#label-header .faux-column:last-child .col-head {
    overflow: visible;
    padding-right: 3px;
}

#label-header .col-head {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
    max-height: 25px;
}

#sorting-section > div {
    display: flex;
}

#sorting-section > div > .dropdown-menu {
    transform: translate3d(5px, 25px, 0px) !important;
}

/* job edit page - priority settings */
#prioritySetting {
    position: relative;
}

#prioritySetting > i {
    font-size: 1.2em;
    color: #e9e9e9;
    position: absolute;
    top: 16px;
    left: calc(40% + 12px);
}

#prioritySetting select {
    padding-left: 25px !important;
}

#prioritySetting.read-only-mode > i {
    left: 40%;
}

#prioritySetting.read-only-mode #priorityValue,
#prioritySetting.read-only-mode #priorityValue + div {
    padding-left: 18px;
}

/* END of jobEditGant - teams section on job edit page */

/*
 *  For the job edit page
 */

/* priorities - environment settings page (prioritiesEditor) */
#managePriorities .dashboard-widget {
    padding: 10px;
    margin: 10px 0;
}

.priorities-tools {
    display: flex;
    justify-content: space-between;
}

.group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.group-header > div {
    display: flex;
    align-items: center;
    padding: 3px 0;
}

.reorder-buttons {
    display: inline-flex;
}

#managePriorities .group-header button,
#managePriorities .reorder-buttons button {
    margin-left: 5px;
}

#managePriorities table {
    margin-bottom: 0;
}

#managePriorities table .toggle {
    min-width: 90px;
    max-width: 180px;
}

#managePriorities table td {
    vertical-align: middle;
}

#managePriorities table td.button-footer,
#managePriorities table td.pull-right {
    padding: 0.75rem 0;
}

#managePriorities table td.pull-right {
    float: none;
    text-align: right;
}

/* END of priorities - environment settings page (prioritiesEditor) */

ul.skills {
    list-style-type: none;
    padding-left: 0;
}

ul.skills li {
    cursor: default;
}

i.delete {
    color: darkred;
    display: none;
    cursor: pointer;
}

li:hover i.delete {
    display: inline;
}

table.tasktimes {
    width: 100%;
    margin-top: 20px;
}

table.tasktimes tr td {
    padding-bottom: 8px;
}

table.tasktimes tr.total {
    border-top: 1px solid gainsboro;
}

table.tasktimes tr.total td {
    padding-top: 5px;
}

input.numberonly {
    width: 50px;
    text-align: right;
    padding-right: 2px;
    display: inline-block;
}

input.numberonly.inline {
    border: none;
    background: transparent;
    outline: none;
    box-shadow: none;
    text-decoration: underline;
}

input.numberonly.inline:focus {
    border: none;
    background: transparent;
    outline: none;
    box-shadow: none;
    text-decoration: underline;
}

/* Customised Popover */

.popover-container {
    position: absolute;
    /*right: 40px;
    bottom: 40px;*/
    min-height: 150px;
    perspective: 800px;
    transform-style: preserve-3d;
    transition: transform 0.4s;
}

.popover-container.unavailability {
    height: 120px;
}

.popover-card {
    min-height: 190px;
}

.popover-container.flipped {
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
    transform-origin: 50% 50%;
}

.popover-content .container-fluid {
    padding: 0px;
    width: 500px;
    color: #000;
}

.popover-content div[class^="col-"] {
    padding: 0;
}

.popover-content .unavailability-delete-options {
    margin: 15px 0 15px 0;
    display: inline-block;
}

.unavailability-delete-options input[type="radio"] {
    margin-right: 5px;
}

.audit-popover .row {
    padding: 2px 10px;
}

.audit-popover:last-child {
    border-bottom: none;
}

.popover-title #taskType {
    width: 80px;
    text-align: center;
}

.popover.schedule {
    display: block;
    max-width: 540px;
    position: absolute;
    backface-visibility: hidden;
}

.popover.schedule.back {
    -moz-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    -o-transform: rotateX(180deg);
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
    transform-origin: 50% 50%;
}

.popover .nopadding {
    padding: 0 !important;
    margin: 0 !important;
}

.popover .attr {
    padding-right: 5%;
    padding-left: 7px;
    float: left;
    list-style-position: inside;
    white-space: nowrap;
}

.popover .error {
    padding-right: 5%;
    padding-left: 7px;
    float: left;
    list-style-position: inside;
}

/* overwriting bootstraps' reset styles - all links which do not have href attribute or are not tab-indexed ; TO DO: these should most likely be buttons */
.form-group.with-validation-msg {
    margin-bottom: 0.5rem;
}

.form-group.with-validation-msg > .validation-msg-container {
    min-height: 16px;
    display: block;
}

.fakelink:hover {
    text-decoration: underline;
    cursor: pointer;
}

.mini-button {
    cursor: default;
}

.limitedHeightModal {
    max-height: 90%;
}

.attribute-color-box {
    float: left;
    height: 15px;
    width: 15px;
    margin: 2px 0 0 3px;
    background-color: white;
    border: 1px solid black;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

div.flex {
    display: flex;
    flex-wrap: wrap;
}

div.flex div {
    /*I need to take these out as they are affecting other things in the layout. these margins seem like more specific LU: 19/032020 */
    /* margin-left: 20px;
     margin-right: 20px;*/
}

.flex-break {
    flex-basis: 100%;
    height: 0;
}

span[contenteditable="true"],
.editable {
    display: inline-block;
    cursor: pointer;
    padding: 0 4px 0 4px;
    min-width: 13px;
}

span[contenteditable="true"]:not(.suggestion-conflict),
.editable {
    color: var(--primary);
}

span[contenteditable="false"] {
    display: inline-block;
    min-width: 13px;
}

span[contenteditable="true"][number-only="true"] {
    text-align: right;
}

span[contenteditable="true"]:focus,
.editable:focus {
    outline: 1px solid #66afe9;
    cursor: text;
}

.contenteditable-placeholder {
    /* color: #999; */
    width: 100%;
    display: inline-block;
}

.mimic-tags {
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
    padding: 1px;
    overflow: hidden;
    overflow-wrap: break-word;
    cursor: text;
    background-color: var(--surface-default);
    border: 1px solid darkgray;
    box-shadow: 1px 1px 1px 0 lightgray inset;
    height: 100%;
}

.mimic-tag-list {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.mimic-tag-item {
    background: var(--surface-default);
    border: 1px solid #ccc;
    border-radius: 4px;
    color: #000;
    margin: 2px;
    padding: 0 5px;
    display: inline-block;
    float: left;
    font:
        14px "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif;
    height: 26px;
    line-height: 25px;
    border: 1px solid #acacac;
    border-radius: 3px;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    box-sizing: content-box;
}

::-webkit-scrollbar-track {
    /*-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); */
    background-color: #e9e9e9;
    border-radius: 8px;
}

::-webkit-scrollbar-thumb {
    border-radius: 8px;
    background-color: #aaa;
    /*border: 2px solid white*/
    /*-webkit-box-shadow: inset 0 0 6px #ddd; */
}

::-webkit-scrollbar-thumb:hover {
    background-color: #777;
}

.dropdownCloseBackdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 950;
}

.toggle {
    position: relative;
    overflow: hidden;
}

.toggle input[type="checkbox"] {
    display: none;
}

.toggle-group {
    position: absolute;
    width: 200%;
    top: 0;
    bottom: 0;
    left: 0;
    transition: left 0.35s;
    -webkit-transition: left 0.35s;
    -moz-user-select: none;
    -webkit-user-select: none;
}

.toggle.off .toggle-group {
    left: -100%;
}

.toggle-on {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 50%;
    margin: 0;
    border: 0;
    border-radius: 0;
}

.toggle-off {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
}

.toggle-handle {
    position: relative;
    margin: 0 auto;
    padding-top: 0px;
    padding-bottom: 0px;
    height: 100%;
    width: 0px;
    border-width: 0 1px;
}

.btn-small {
    font-size: 11px;
    margin-top: -6px;
    padding: 2px 4px;
}

.toggle.btn {
    min-width: 59px;
    min-height: 34px;
}

.toggle.btn:active,
.toggle-on.btn:active,
.toggle-off.btn:active {
    box-shadow: none;
}

.toggle-on.btn {
    padding-right: 24px;
}

.toggle-off.btn {
    padding-left: 24px;
}

.toggle.btn-lg {
    min-width: 79px;
    min-height: 45px;
}

.toggle-on.btn-lg {
    padding-right: 31px;
}

.toggle-off.btn-lg {
    padding-left: 31px;
}

.toggle-handle.btn-lg {
    width: 40px;
}

.btn.btn-xs > .toggle-group > .toggle-handle {
    margin-top: -1px;
    padding: 0 10px;
    border-radius: 3px;
}

.toggle.btn-sm {
    min-width: 50px;
    min-height: 30px;
}

.toggle-on.btn-sm {
    padding-right: 20px;
}

.toggle-off.btn-sm {
    padding-left: 20px;
}

.toggle.btn-xs {
    min-width: 35px;
    min-height: 22px;
}

.toggle-on.btn-xs {
    padding-right: 12px;
}

.toggle-off.btn-xs {
    padding-left: 12px;
}

.toggle.rectangular {
    border-radius: 0px;
}

.toggle.rectangular .toggle-handle {
    border-radius: 0px;
}

.toggle[disabled] {
    pointer-events: none;
}

/* Dashboard */

.dashboard-widget {
    border: 1px solid #ccc;
    margin: 0;
    box-shadow: 3px 3px #f9f9f9;
    border-radius: 4px;
}

.dashboard-container {
    padding: 15px;
}

.dashboard-container > * {
    margin-top: 15px;
    display: block;
}

.dashboard-container > *:first-child {
    margin-top: 0;
}

.dashboard-component {
    border: 1px solid #ccc;
    margin: 15px 0;
    box-shadow: 3px 3px #f9f9f9;
    border-radius: 4px;
}

.dashboard-widget h4 {
    margin-top: 0;
}

.dashboard-widget .table-wrapper {
    overflow: auto;
    max-height: 350px;
    max-width: calc(
        100% - 1px
    ); /* had to do this as when there was nothing to scroll, the scrollbar was still visible due to some layout discrepency - need to revise the whole page layout epor*/
}

div.activity-label {
    padding: 0 3px;
    color: white;
    border-radius: 2px;
    width: 90%;
    width: calc(100% - 10px);
    white-space: nowrap;
    margin-bottom: 2px;
    overflow: hidden;
    position: absolute;
}

.large-spinner {
    font-size: 94px;
    position: absolute;
    top: calc(50% - 47px);
    left: calc(50% - 47px);
}

.loader-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    /*opacity:0.75;*/
    background-color: var(--surface-default);
    z-index: 900;
    display: flex;
    justify-content: center;
    align-items: center;
}

.splash-screen-overlay {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.loader {
    width: 100%;
    height: 100%;
    background-color: var(--surface-default);
    display: flex;
    justify-content: center;
    align-items: center;
}

.error-tooltip:disabled:hover:after {
    display: block;
    border-radius: 3px;
    padding: 5px;
    content: attr(title);
    font-size: 15px;
    background-color: rgba(0, 0, 0, 1);
    color: #ff7a7a;
    right: 0;
    top: 34px;
    position: absolute;
}

.error-tooltip .fa-circle {
    font-size: 1.2em;
}

.error-tooltip .fa-exclamation {
    font-size: 1em;
}

.error-tooltip .fa-stack {
    height: 1em;
    width: 1em;
}

.error-tooltip .fa-stack-1x {
    top: -8px;
}

.save-button {
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 1000;
    max-width: 230px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#grades-editor-body .button-wrapper {
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 1000;
    display: flex;
    align-content: flex-end;
}

#grades-editor-body .button-wrapper .save-button {
    position: initial;
    margin-left: 10px;
}

a[disabled] {
    color: lightgray;
}

a[disabled]:hover {
    color: lightgray;
}

@keyframes fa-blink {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0.9;
    }
    50% {
        opacity: 0.2;
    }
    75% {
        opacity: 0.9;
    }
    100% {
        opacity: 1;
    }
}

.fa-blink {
    -webkit-animation: fa-blink 2s linear infinite;
    -moz-animation: fa-blink 2s linear infinite;
    -ms-animation: fa-blink 2s linear infinite;
    -o-animation: fa-blink 2s linear infinite;
    animation: fa-blink 2s linear infinite;
}

.fa-times,
.fa-sort,
.fa-sort-up,
.fa-sort-down {
    /* These icon are bigger with fa7 so to account for sizing with new fixed width, we default to a smaller font */
    font-size: 0.875em;
}

.bootstrap .tags {
    background-color: var(--surface-default);
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    transition:
        border-color ease-in-out 0.15s,
        box-shadow ease-in-out 0.15s;
}

tags-input .tags.focused {
    border-color: #66afe9;
    box-shadow:
        inset 0 1px 1px rgba(0, 0, 0, 0.075),
        0 0 8px rgba(102, 175, 233, 0.6);
}

tags-input {
    height: auto !important;
}

tags-input.is-valid .tag-list .is-valid,
tags-input.is-invalid .tag-list .is-valid {
    border-color: var(--success) !important;
}

tags-input.is-valid .tag-list .is-invalid,
tags-input.is-invalid .tag-list .is-invalid {
    border-color: var(--danger) !important; /*bootstrap danger*/
}

.bootstrap .tags .tag-item {
    background: var(--surface-default);
    border: 1px solid #ccc;
    border-radius: 4px;
    color: #111;
}

tags-input[disabled] .tags .tag-item {
    background: #ddd;
    border: 1px solid #ccc;
    border-radius: 4px;
    color: #111;
}

.bootstrap .tags .tag-item.selected {
    background: var(--danger);
    border: 1px solid var(--danger);
    border-radius: 4px;
    color: var(--text-inverse);
}

.bootstrap .tags .tag-item button {
    background: transparent;
    color: #000;
    opacity: 0.4;
}

/* bootstrap tags on job edit page  - the disabled (or read only) field must match the rest of the read-only fields on that page */
#financial-details tags-input[disabled] .tags {
    background-color: transparent;
    border: none;
    box-shadow: none;
    -moz-box-shadow: none;
    -o-box-shadow: none;
    -webkit-box-shadow: none;
}

#financial-details tags-input[disabled] .tags .input {
    background: transparent;
    display: none;
}

#financial-details tags-input[disabled].ng-empty {
    width: 0 !important;
}

/* END of ootstrap tags on job edit page */

.bootstrap .autocomplete {
    border-radius: 4px;
}

.bootstrap .autocomplete .suggestion-item.selected {
    color: #262626;
    background-color: #e9e9e9;
}

.bootstrap .autocomplete .suggestion-item em {
    font-weight: var(--font-weight-regular);
    background-color: #ffff00;
}

.bootstrap .autocomplete .suggestion-item.selected em {
    color: #262626;
    background-color: #ffff00;
}

.editable-wrap {
    position: absolute;
}

i.filter {
    margin-left: 10px;
    cursor: pointer;
    color: #ddd;
}

.vert .column ul li.error-hint {
    /*background-image: -webkit-radial-gradient(circle closest-side at 17px 21px, #d63333, rgba(255, 255, 255, 0));
    background-image: radial-gradient(circle closest-side at 17px 21px, rgba(255, 255, 255, 0) 0%, #d63333 50%, rgba(255, 255, 255, 0) 100%);*/
    color: var(--danger);
}

/*.error-hint i {
    padding: 0px;
    border: solid 3px var(--danger);
    border-radius: 25px;
}*/

i.filter-active,
.vert .column ul li.filter-active:hover,
.vert .column ul li.filter-active,
.vert .column ul li.selected.filter-active {
    /*color: #2c8434; !*rgb(44, 132, 52);*!*/
    color: var(--success);
}

i.filter-warning,
.vert .column ul li.filter-warning:hover,
.vert .column ul li.filter-warning {
    /*color: #f0ad4e;*/
    color: var(--warning);
}

/* Used to make the datetimepicker sufficiently wide in hour view */
.hour-view,
.minute-view {
    min-width: 240px;
}

div.dashboard-control {
    padding-top: 10px;
    padding-left: 10px;
}

.dashboard-control button.btn {
    padding: 4px 12px;
}

.dashboard-control div.toggle {
    height: 30px;
}

.dashboard-control div.toggle label {
    padding-top: 2px;
    font-size: 14px;
}

.ellipsis {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}

/*the above ellipsis class does not always work, especially with flexbox styles - needs revising lw march 21*/
.alternative-ellipsis {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}

.minimal-select {
    border: 1px solid #eee;
    border-radius: 3px;
    cursor: pointer;
    width: 100%;
    padding: 0 5px;
    text-align: center;
    background: rgba(255, 255, 255, 0.5);
}

.minimal-select[readonly] {
    cursor: default;
    color: #333;
    background: rgba(255, 255, 255, 0.5) !important;
}

.minimal-select[readonly]:focus {
    outline: none;
}

.minimal-select[disabled="disabled"] {
    color: inherit;
    cursor: default;
    -moz-appearance: none; /*for chrome*/
    -webkit-appearance: none;
    padding-left: 4px;
    padding-top: 1px;
}

.minimal-select.utilisation-input {
    text-align: left;
    width: 4em;
}

tags-input.minimal-tags-input .host {
    margin-bottom: 0;
    margin-top: 0;
}

tags-input.minimal-tags-input .tags {
    box-shadow: none;
    border-radius: 0;
    border: none;
    padding: 0;
}

tags-input.minimal-tags-input .tags .input {
    height: 22px;
    margin: 0;
    padding: 0 4px;
    font-family: inherit;
}

tags-input.minimal-tags-input .tags .tag-item {
    height: 22px;
    line-height: 21px;
    font-family: inherit;
}

.sm-inline .sm-container {
    display: flex;
    height: auto;
}

.sm-container {
    height: 50px;
    min-height: 50px;
}

.table .sm-container {
    height: auto;
    min-height: auto;
}

.sm-vcentered {
    float: left;
    height: 100%;
    display: flex;
    align-items: center;
}

.sm-inline .sm-name {
    width: auto;
    margin-right: 15px;
}

.sm-name {
    width: 40%;
    font-weight: 500;
}

.sm-inline .sm-name {
    width: auto;
    margin-right: 15px;
}

.sm-inline .sm-setting {
    flex-grow: 1;
    width: auto;
}

.sm-setting {
    width: 60%;
}

.sm-extras:not(.sm-extras-position) .settingsMemberConfigProfileWarningContainer {
    width: 0px;
}

/* input groups offer a button next to the input field. bootstrap sizes these by padding, which causes width inconsistencies. this is to overwrite the sizes - at the moment only
  on the job-edit add resource dialog. note to self: create global styles and include in the UX patter library - LU: 22/jan/2020 */
.input-group-append {
    min-width: 37px;
}

.input-group-append i,
.input-group > .input-group-append > .btn:last-child {
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

#add-resource-content .input-group-append {
    width: 37px;
    height: 37px;
}

#add-resource-content .input-group-append .btn {
    padding: 0;
    height: 35px;
    width: 37px;
    line-height: 37px;
}

.input-group-append .fas,
.input-group-append .far:not(.fa-building, .fa-calendar-alt),
.input-group-append .fal,
.btn.fas {
    font-family: "Font Awesome 7 Pro";
    font-weight: 900;
}

.sm-treepicker-dropdown-input {
    display: block;
    width: 100%;
    height: 34px;
    padding: 6px 25px 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: var(--surface-default);
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition:
        border-color ease-in-out 0.15s,
        -webkit-box-shadow ease-in-out 0.15s;
    -o-transition:
        border-color ease-in-out 0.15s,
        box-shadow ease-in-out 0.15s;
    transition:
        border-color ease-in-out 0.15s,
        box-shadow ease-in-out 0.15s;
}

.sm-treepicker-dropdown-input:focus {
    border-color: #66afe9;
    -webkit-box-shadow:
        inset 0 1px 1px rgba(0, 0, 0, 0.075),
        0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow:
        inset 0 1px 1px rgba(0, 0, 0, 0.075),
        0 0 8px rgba(102, 175, 233, 0.6);
}

/* DEVO-5555 - fix for double scrollbar, based on height in modal */
#addResourceContent .treepicker .tree-picker-scrollable {
    height: 100% !important;
    max-height: calc(100% - 120px) !important;
}

.sm-treepicker-dropdown-caret {
    color: #555 !important;
    position: absolute;
    right: 10px;
    top: 11px;
}

.sm-extras {
    display: flex;
}

.sm-extras.sm-extras-position {
    position: absolute;
    right: 50px;
    line-height: 34px;
}

#jobGroupDetails .sm-extras,
#ganttCreateModalBody .sm-extras {
    right: 65px;
}

.sm-full-width {
    width: 100%;
    display: flex;
}

.sm-not-set {
    color: #cccccc;
}

.sm-text-disabled {
    border: none;
    background: none;
    cursor: text;
}

.tree-picker-backdrop {
    background-color: #000;
    opacity: 0.5;
}

.btn-muted,
.btn-muted:active {
    color: var(--text-inverse) !important;
    background-color: #8cafc3;
    border-color: #83a4b7;
}

.btn-muted:hover {
    color: var(--text-inverse);
    background-color: #7b9bad;
    border-color: #718e9e;
}

/*
.btn:focus {
    outline: 0;
    box-shadow: 0 0 6px 1px rgba(102, 175, 233, 0.7);
}
 this is overwriting default bootstrap styles which causes inconsistency with other interactive elements. taking it out for now - LU 21/January 2020 */

.btn:active:focus,
.btn.active:focus {
    outline: 0;
    box-shadow:
        inset 0 3px 5px rgba(0, 0, 0, 0.125),
        0 0 6px 1px rgba(102, 175, 233, 0.7);
}

/* bootstrap4 causes some buttons to break into multiple lines - forcing buttons to display long names in one line, with ellipsis */
.btn {
    white-space: nowrap;
    word-break: keep-all;
    text-overflow: ellipsis;
}

#workflow-dropdown .btn[disabled] {
    background: #eee;
}

#notifications-wrapper {
    display: flex;
    flex-direction: column;
    background-color: var(--surface-default);
    min-width: 350px;
    width: 450px;
    height: 620px;
    z-index: 9;
    position: fixed;
    left: 180px;
    top: 0;
    border-right: 3px solid var(--deep-black);
    border-bottom: 3px solid var(--deep-black);
    border-left: 1px solid var(--deep-black);
}

.disabled-anchor {
    color: #aaaaaa;
    cursor: not-allowed;
    text-decoration: none;
}

.minified #notifications-wrapper {
    left: 46px;
}

#notifications-closer {
    opacity: 0;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}

.notification {
    border-bottom: 1px solid #e8e8e8;
    min-height: 70px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    background-color: #eeeeee;
    color: #777;
}

.notification .tab {
    padding-left: 5px;
}

.notification .large-tab {
    padding-left: 10px;
}

.notification .approved {
    font-weight: var(--font-weight-bold);
    color: #28a745;
}

.notification .rejected {
    font-weight: var(--font-weight-bold);
    color: var(--danger);
}

.notification-content {
    font-size: 14px;
}

.notification-time {
    font-size: 11px;
    text-align: right;
    color: #777;
    width: 100%;
}

#notification-header {
    border-bottom: 1px solid #e8e8e8;
    height: 25px;
    line-height: 25px;
    padding: 0 10px;
    flex-grow: 0;
    background-color: var(--deep-black);
    color: white;
}

#notification-scroll-panel {
    background-color: #f3f3f3;
    overflow-x: hidden;
    overflow-y: auto;
    flex-grow: 1;
}

#notification-footer {
    height: 25px;
    line-height: 25px;
    padding: 0 10px;
    flex-grow: 0;
    text-align: center;
    border-top: 1px solid #e8e8e8;
}

.notification-unread {
    background-color: var(--surface-default);
    color: #333;
}

.warning {
    color: var(--warning);
}

.danger {
    color: var(--danger);
}

.success {
    color: var(--success);
}

.info {
    color: var(--info);
}

.default {
    color: #666666; /* TODO: what colour should this be? */
}

.close-icon {
    color: grey;
    cursor: pointer;
}

.treepicker {
    background-color: white;
}

.treepicker.treepicker-dropdown {
    border: 1px solid lightgray;
    height: 20vh;
    z-index: 1000000;
    position: absolute;
    width: calc(100% - var(--scroll-width));
    padding: 1px 0 0 0;
}

.filter-reports .treepicker.treepicker-dropdown {
    padding: 0 0 0.5rem 0;
}

.filter-reports .treepicker.treepicker-dropdown .treepicker-node {
    margin-top: 1px;
    margin-left: 0px;
}

.filter-reports .treepicker.treepicker-dropdown .parent-node {
    padding: 0.23rem 0.5rem;
    width: 100%;
}

.treepicker.treepicker-dropdown#reportTypeTreepicker {
    height: auto;
}

.treepicker.treepicker-dropdown#reportTypeTreepicker .tree-picker-scrollable {
    height: auto !important;
    max-height: 90vh !important;
}

/* For the competency stars directive */

.editable-rating i.far,
.hover-rating i.far {
    color: #ccc;
}

.editable-rating i.fas,
.hover-rating i.fas {
    color: var(--primary);
}

.hover-rating i.far:hover {
    font-weight: 900;
    color: var(--primary);
}

.hover-rating {
    unicode-bidi: bidi-override;
    direction: rtl;
    text-align: left;
}

i.star {
    padding-right: 5px;
}

.hover-rating i.star {
    cursor: pointer;
}

.hover-rating i.star:hover:before,
.hover-rating i.star:hover ~ i.star:before {
    content: "\f005";
    color: var(--primary);
}

.hover-rating i.star:before {
    content: "\f006";
    color: #ccc;
}

/* For jobSearch.html and the type-ahead in jobCreator.html */
.wrapping-inline-column {
    display: inline-block;
    overflow-wrap: break-word;
    padding-right: 2%;
}

/* DEVO-14827 to allow full results to be shown over multiple lines
https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-wrap
 */
.wrapping-inline-column.display-full-text {
    overflow-wrap: anywhere;
}

/* DEVO-14827 to reduce the real estate for job/group code */
.wrapping-inline-column.fix-column-width {
    flex: 0 0 20%;
}

.result-row {
    border-bottom: 1px solid #e5e5e5;
    cursor: pointer;
    height: 25px;
}

/* DEVO-14827 to allow full results to be shown over multiple lines */
.result-row.unrestrict-row-height {
    height: auto;
}

/* DEVO-14827 to allow results to be zebra striped */
.striped-rows > div:nth-child(odd) {
    background: var(--surface-subtle-light);
}

.result-header-wrapper {
    display: flex;
    flex-direction: row;
}

.result-header {
    flex-grow: 1;
    border-bottom: 1px solid #e5e5e5;
    font-weight: var(--font-weight-bold);
    padding: 5px 0 5px 0;
}

.result-header-spacer {
    height: 100%;
    flex-grow: 0;
}

.result-row:hover {
    background-color: #e9e9e9;
}

.selected-result {
    background-color: #e9e9e9;
    font-weight: var(--font-weight-bold);
}

.mandatory::before {
    content: "*";
    color: var(--danger);
    font-weight: 900;
}

#popover .sm-name,
#sidebar .sm-name {
    width: 100%;
    height: auto;
    padding-bottom: 5px;
}

#popover .sm-setting,
#sidebar .sm-setting {
    width: 100%;
    max-width: 100%;
    height: auto;
    position: relative;
    padding-bottom: 5px;
}

.mandatory.has-value::before {
    color: var(--success);
    content: "\f00c";
    font-family: "Font Awesome 7 Pro";
    font-style: normal;
    font-weight: var(--font-weight-bold);
    text-decoration: inherit;
    font-size: 10px;
    top: 0px;
    padding-left: 3px;
}

.sidebar-datepicker {
    max-width: 250px;
}

.gantt-sidebar-row {
    row-gap: 5px;
}

.gantt-sidebar-row .dropdown-menu ul {
    margin-block-end: 0;
}

/*Override standard bootstrap table for the date pickers in the sidebar*/

.sidebar-datepicker > .table > thead > tr > th,
.sidebar-datepicker > .table > tbody > tr > th,
.sidebar-datepicker > .table > tfoot > tr > th,
.sidebar-datepicker > .table > thead > tr > td,
.sidebar-datepicker > .table > tbody > tr > td,
.sidebar-datepicker > .table > tfoot > tr > td {
    padding: 4px;
}

/* Sidebar Trait Section for Gnatt & Job Edit Page */
.editMode {
    margin-left: 26px;
}

.sidebar-item.sidebar-selected {
    background: #f5f5f5;
    cursor: pointer;
}

.sidebar-item:not(.sidebar-selected):hover {
    background: #fafafa;
    cursor: pointer;
}

.sidebar-item,
.sidebar-selected,
.sidebar-handle {
    transition: background 0.3s;
}

.sidebar-selected .sidebar-handle {
    background: #bababa;
}

.sidebar-item:not(.sidebar-selected):hover .sidebar-handle {
    background: #e1e1e1;
}

.task-traits {
    padding: 0;
    margin: 5px 0 0 0;
}

.trait-category-header .fa-chevron-right,
.trait-category-header .fa-chevron-down {
    padding-right: 4px;
    padding-left: 15px;
}

.trait-category-header .fa-chevron-right {
    padding-top: 3px;
}

.trait-category-header .fa-chevron-down {
    padding-top: 2px;
}

.trait-category-header label span {
    padding-left: 0;
}

.delete-trait {
    padding: 2px 4px 0;
    margin-left: auto;
}

.row-hide-btn .btn {
    display: none;
}

.row-hide-btn:hover .btn {
    display: inline-block;
}

/* Dropdown/list menu styling */

.dropdown-menu a .fa-check {
    display: none;
}

#mainGanttLabelsHead .treepicker-node {
    margin-top: 0 !important;
}

.dropdown-menu a.dropdown-selected {
    font-weight: var(--font-weight-semibold);
}

.dropdown-menu a.dropdown-selected .fa-check {
    display: flex;
}

.dropdown-menu a.disabled {
    color: #777;
    cursor: not-allowed;
}

.dropdown-header,
.list-header {
    text-transform: uppercase;
    padding: 0.5rem 1.5rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    word-break: break-all;
    min-width: 260px;
    height: 1.6rem;
    margin-bottom: 6px;
    white-space: initial; /* i know this doesn't make sense but it's needed, the clamp method does the trick here */
}

/* links inside forms - the form stops the dropdown closing on click*/
.dropdown-menu li a,
.list-menu li a {
    padding: 0.2rem 1.5rem;
    display: flex;
    align-items: center;
    clear: both;
    font-weight: var(--font-weight-regular);
    line-height: 1.42857143;
    color: #333;
    transition: all 0.05s linear;
    justify-content: space-between;
}

.typeahead-wrapper .dropdown-menu li a {
    justify-content: left;
}

.dropdown-menu li a span,
.list-menu li a span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    word-break: break-all;
}

.dropdown-menu li a[disabled] {
    color: lightgrey;
    cursor: not-allowed;
}

.dropdown-menu li a.selected,
.list-menu li a.selected,
.dropdown-menu li span.selected,
.list-menu li span.selected {
    background-color: #e6e6e6;
}

.list-menu a:hover {
    text-decoration: none;
    color: white;
    background-color: var(--primary);
}

.dropdown-menu .disabled > form > a,
.dropdown-menu .disabled > form > :hover,
.dropdown-menu .disabled > form > a:focus,
.dropdown-menu .disabled > a,
.dropdown-menu .disabled > :hover,
.dropdown-menu .disabled > a:focus {
    color: #c8c8c8;
    text-decoration: none;
    background-color: transparent;
    background-image: none;
    pointer-events: none;
}

div.dropdown-menu ul,
div.list-menu ul {
    list-style: none;
    padding: 5px 0;
}

div.dropdown-menu,
div.list-menu {
    padding: 0;
}

/* drop-down menu custom width for the job edit page */
.economic-table-settings .dropdown-menu {
    min-width: 290px;
}

/* drop-down menu custom width for the job edit page */

/* Query Builder Classes */

.query-card-container {
    width: calc(100% - 20px);
    height: 100%;
    background-color: transparent;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    flex-grow: 1;
    align-items: stretch;
    padding: 5px 0;
    margin-left: 10px;
}

.query-card {
    min-width: 280px;
    max-width: 460px;
    background-color: white;
    margin: 10px 0px 10px 10px;
    border-radius: 3px;
    border: 1px solid #ddd;
    box-shadow: 3px 3px #f9f9f9;
}

.add-filter-animation {
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
    -webkit-animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        transform: translateX(-290px);
    }
    100% {
        transform: translateX(0);
    }
}

.query-card.add-query-card {
    box-shadow: none;
    border: 1px dashed #ccc;
    overflow: auto;
}

.query-card-header {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #ddd;
    background-color: #f4f4f4;
    border-radius: 3px 3px 0px 0px;
    height: 40px;
    text-transform: uppercase;
    font-size: 15px;
    color: #888;
}

.query-card-header h4 {
    margin: 0px;
    max-width: 200px;
}

.query-card-body {
    display: block;
    height: calc(100% - 40px);
    padding: 0.5rem 0 0.5rem 0;
}

.query-card-body .tree-picker-scrollable {
    padding: 0 0.5rem;
}

/* search job and job groups result tables*/

.result-header,
.result-row {
    display: flex;
}

.result-header > div,
.result-row > div {
    flex: 1 1;
}

.result-header > .alert-column,
.result-row > .alert-column {
    flex-basis: 34px;
    flex-grow: 0;
}

.sap-linking-result-table-container {
    padding: 1% 0 1% 0;
}

.sap-linking-result-table-container div {
    display: inline-block;
    width: auto;
    padding: 1% 0 1% 0;
    margin-right: 20px;
}

.sap-linking-result-table-header {
    font-weight: 500;
    display: inline-block;
    width: auto;
}

/*  end of search job and job groups result tables*/

.filter-active-signifier.active {
    border-bottom: 2px solid var(--primary);
}

.filter-active-signifier {
    border-bottom: 1px solid #ddd;
}

.clockwise-90-deg {
    transform: rotate(90deg);
}

.table-bar-key {
    height: 12px;
    width: 12px;
    display: inline-block;
    color: white;
    font-size: 9px;
    border-radius: 6px;
    position: relative;
    top: 1px;
}

.divider-row {
    background: rgba(128, 128, 128, 0.5);
}

.provisional-content {
    color: #888;
}

.palette-square {
    height: 20px;
    width: 20px;
    margin: 5px;
    cursor: pointer;
}

.palette-square:hover {
    box-shadow: 0 0 4px #333;
}

.report-results-top-bar {
    height: 65px;
    padding: 15px 15px;
    position: fixed;
    top: 0;
    right: 0;
    left: 180px; /*left hand menu width when not minimised*/
    -webkit-transition: 150ms ease-in;
    transition: 150ms ease-in;
    background: white;
}

body.minified .report-results-top-bar {
    left: 46px; /*left hand menu width when minimised*/
}

#groups-canvas-wrapper div.vis-tooltip {
    background-color: white;
    font-family: var(--font-family);
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}

.uploads-confirm {
    padding-left: 5px;
    padding-right: 5px;
}

.uploads-confirm tbody tr {
    border-top: 1px solid #ddd;
}

.uploads-confirm td,
.uploads-confirm th {
    padding: 2px;
}

.uploads-confirm td.numeric {
    text-align: right;
}

.nav-dots {
    display: flex;
}

.picker-container > .nav-dots {
    margin: auto;
    padding: 25px;
}

.nav-dots > .nav-dot {
    margin-right: 3px;
}

.nav-dots > .nav-dot:last-child {
    margin-right: 0;
}

.nav-dot {
    height: 8px;
    width: 8px;
    border-radius: 50%;
    border: 1px solid #7f7f7f;
    background: transparent;
}

.nav-dot.active {
    background: #dedede;
}

.nav-chevrons {
    display: flex;
    flex-direction: row;
}

.picker-container .nav-chevrons {
    position: absolute;
    top: 55px;
    right: 15px;
}

.nav-chevrons > .nav-chevron {
    margin-right: 3px;
}

.nav-chevrons > .nav-chevron:last-child {
    margin-right: 0;
}

.nav-chevron {
    font-size: 11px;
    background: #ededed;
    color: #7f7f7f;
    border: 1px solid #dedede;
}

.nav-chevron:not([disabled]):hover {
    background: #dedede;
}

.nav-chevron[disabled]:hover {
    background: #ededed;
}

.picker-container {
    top: 0;
    background: var(--surface-default);
    height: 100%;
    display: flex;
    flex-direction: column;
    min-width: 300px;
    max-width: 325px;
    position: absolute;
    z-index: 100;
}

.picker-container-buttons {
    display: flex;
    justify-content: flex-end;
    padding: 0 15px;
}

.picker-container-header {
    display: flex;
    background: #ededed;
}

.picker-container-header-title {
    line-height: 40px;
    padding: 0 5px;
}

.picker-container.picker-container-left {
    border-top-left-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
    box-shadow: 4px 0px 8px rgba(50, 50, 50, 0.06);
    left: 0;
}

.picker-container.picker-container-right {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
    box-shadow: -4px 0px 8px rgba(50, 50, 50, 0.06);
    right: 0;
}

.picker-container.picker-container-right .picker-container-header {
    border-top-right-radius: 6px !important;
}

.picker-container.picker-container-left .picker-container-header {
    border-top-left-radius: 6px !important;
}

.picker-container .close-sidebar-icon {
    line-height: 24px;
    padding: 8px 15px;
    color: #7f7f7f;
}

.picker-container .close-sidebar-icon:hover {
    background: #dedede;
}

.margin-left-10 {
    margin-left: 10px !important;
}

/* START bootstrap 4.0.0 upgrade fixes*/

/* Fix modal opacity issue using angular UI */
.fade.in {
    opacity: 1;
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.modal-backdrop.in {
    filter: alpha(opacity=50);
    opacity: 0.5;
}

/* bootstrap sizes modal-dialog at 576px; adding custom modal-dialog classes to create large and extra large dialog sizes. In the
 html, add the custom size after .modal-dialog class */

@media (min-width: 576px) {
    .modal-dialog {
        min-width: 650px;
    }

    .modal-lg {
        min-width: 870px;
    }

    .modal-xlarge {
        width: calc(100% - 60px);
        min-width: calc(100% - 60px);
        height: calc(100% - 60px);
        overflow: hidden;
    }

    /* tweaks to make modal-xlarge work */
    .modal-xlarge .modal-content {
        height: 100%;
    }
}

/*pull-right class does not work with bootstraps left-border of .3em - has to be auto; this affects the close icons on modals*/
.fas.pull-right {
    margin-left: auto;
    float: right;
}

.modal-title {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}

.modal-body.full-height-body {
    max-width: calc(100% - 1px);
    padding: 0px;
    height: calc(100% - 61px);
}

.modal-body hr {
    border-style: dashed;
}

.modal-body .section-header {
    font-weight: 300;
    font-size: large;
    margin-bottom: 5px;
}

.modal-body.full-width {
    padding: 0;
}

/* END of custom modal-dialog classes */

/* re-introduce the btn-xs style */
.btn-group-xs > .btn,
.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 18px;
    border-radius: 3px;
}

/* Upload table within a table fix. */
.table-striped table.uploads-confirmation-table tr,
.table-striped table.uploads-confirmation-table tr:hover {
    background-color: transparent;
}

.table-striped table.uploads-confirmation-table th {
    border-top: none;
    border-bottom: none;
    padding: 4px;
}

table.uploads-confirmation-table td,
table.uploads-confirmation-table th {
    padding: 0;
    text-align: center;
    border: none;
}

/*Uploads table styles. These are used to create Header and Subheader styles within thead*/

.table .multi-row-head .uploads-table-heading th {
    border-top: 1px solid #dee2e6;
    border-left: 1px solid #dee2e6;
    border-bottom: 0;
    padding-bottom: 0;
    white-space: nowrap;
}

.table .multi-row-head .uploads-table-subheading th {
    font-size: 12px;
    border-bottom: 2px solid #dee2e6;
    border-top: 0px;
    white-space: nowrap;
}

.uploads-border-left {
    border-left: 1px solid #dee2e6;
}

.uploads-border-right {
    border-right: 1px solid #dee2e6;
}

.upload-error-text {
    color: red;
}

.table .body-middle-align td {
    vertical-align: middle;
}

.table-padding-10 th,
.table-padding-10 td {
    padding: 10px;
}

.cell-text-medium {
    font-size: 13px;
}

.cell-center-align {
    text-align: center;
}

.number-right-align {
    text-align: right;
}

.uploads-column-width {
    min-width: 520px;
    max-width: 520px;
}

.sync-column-width {
    min-width: 400px;
    max-width: 400px;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.scrollable {
    overflow: auto;
    height: 100%;
}

.sortable {
    cursor: pointer;
}

@-webkit-keyframes flash {
    0%,
    50%,
    100% {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}

@keyframes flash {
    0%,
    50%,
    100% {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}

.animate-slow-flash {
    -webkit-animation: flash 5s ease infinite;
    animation: flash 5s ease infinite;
}

/*End of Uploads Table Styles*/

/* Bootstrap 4.x removed the not-allowed cursor on disabled buttons so adding it back for now*/

.btn[disabled] {
    cursor: not-allowed;
}

/* bootstrap 4 removed font weight from .label (it was 700)*/
.label,
label {
    font-weight: var(--font-weight-semibold);
    font-size: 0.875rem;
}

/* bootstrap 4 caused the primary disabled butos to be very bright */
.btn.disabled,
.btn:disabled {
    opacity: 0.35;
}

/*gantt overwrites this*/
.btn-primary:hover {
    color: white !important;
    text-decoration: none !important;
}

/**/

.custom-control-input:disabled ~ .custom-control-label {
    cursor: not-allowed;
}

/* END bootstrap 4.0.0 upgrade fixes*/

/*  badge class: saved reports, trait picker in gantt view - custom styles */
.badge {
    font-size: 90%;
    padding: 0.7em 0.9em;
    margin-right: 5px;
}

.badge-light {
    background: #eee;
}

.badge-count {
    display: inline-block;
    min-width: 20px;
    width: auto;
    height: 20px;
    color: var(--text-inverse);
    background-color: #b4b7ba;
    border-radius: 50%;
    padding: 0 !important;
    font-weight: 500;
    line-height: 20px !important;
    text-align: center;
    font-size: 85%;
}

/* END of badges - custom styles*/

/* new bootstrap4 table styles introduces some issues on the Manage saved views dialog*/
#manage-saved-views .table th {
    border-top: 0;
    text-align: center;
    white-space: nowrap;
}

#manage-saved-views .table td {
    vertical-align: middle;
    text-align: center;
    align-items: center;
}

/*alerts - badge disappeared? anyway, here it is*/
.alert .inform-badge {
    background-color: rgba(0, 0, 0, 0.1);
}

.inform button.close {
    padding-top: 0.5rem;
}

/* --- PANELS  --- */
/* left panel navigation - holding tree picker menu*/
.panel-left-navigation {
    width: 350px;
    min-width: 350px;
    /* Something is taking up 2px so we need to subtract those 2 pixels
    Finding out where those 2px are coming from is not a release week task*/
    height: calc(100vh - 2px);
    display: flex;
    flex-direction: column;
    border-right: 1px solid #e9e9e9;
}

.panel-left-navigation .header {
    /* overwriting vertical.css . header styles */
    order: initial !important;
    padding-bottom: 5px !important;
    display: flex;
}

.panel-left-navigation .header button {
    max-width: 340px;
    overflow: hidden;
}

.panel-left-navigation .header .button-group {
    display: flex;
    justify-content: space-between;
}

.panel-left-navigation .header.button-group > div {
    margin-right: 5px;
}

.panel-left-navigation .header.button-group > div:nth-child(2) {
    flex: 1;
}

.panel-left-navigation .header.button-group > div:last-of-type {
    margin-right: 0;
}

.panel-left-navigation .treepicker {
    width: 100%;
    flex-grow: 1;
    /* The flex-grow guarantees the picker will fill any vertical space, th 1ps height is just to set some kind of explicit value */
    height: 1px;
}

.panel-left-navigation .tree-picker-scrollable {
    padding: 0 0.5rem;
}

/* END of left panel navigation */

/* panel headers for panels such as: workhours editor, workers editor, traits editor .. etc*/
.panel-header .sync-date {
    display: inline;
    max-width: 400px;
    margin-left: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.panel-header {
    background: #f5f5f5;
    padding: 15px;
    margin-bottom: 20px;
    position: relative;
}

.radio-group {
    margin-bottom: 0.5rem;
}

.button-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.button-menu > div {
    display: flex;
}

.button-menu button {
    overflow: hidden;
    max-width: 350px;
    margin-right: 10px;
}

.panel-header h2 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}

.panel-header h2 > span {
    align-items: flex-end;
}

.panel-header h2 span .far {
    color: #666;
    margin-left: 8px;
    margin-right: 16px;
    font-size: 0.8em;
}

/* END of panel headings*/

/* panel content */
.panel-content {
    width: inherit;
    height: 100%;
    padding: 15px;
    flex-grow: 1;
}

#grades-editor-body.panel-content {
    /* this should be transfered to all the .panel-contents */
    overflow-y: hidden;
}

.panel-scrollable {
    overflow-y: auto;
    height: calc(100% - 88px);
}

/* OVERFLOWING CONTAINER STYLING */

.overflow-parent {
    padding: 0;
}

.overflow-parent.overflow-horizontal {
    overflow-x: auto;
}

.overflow-parent.overflow-vertical {
    overflow-y: auto;
}

.overflow-child {
    margin: 15px;
}

.custom-select {
    background: #fff
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 2 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
        no-repeat right 0.75rem center/8px 10px;
}

.empty-non-collapsible:before {
    content: "\200b";
}

#workhours-editor-body {
    overflow: hidden;
}

/* INFORM POPUP STYLING*/
.inform-message-content span {
    overflow-wrap: break-word;
}

/* placeholder for FORM styles */
.form-control {
    text-overflow: ellipsis;
}

/* END of placeholder for FORM styles */

/*workhours editor old edge hack */
.hide-y-overflow {
    overflow-y: hidden;
}

.tooltip-inner {
    max-width: 280px;
}
.tooltip-arrow,
.tooltip > .tooltip-inner {
    background-color: var(--surface-inverse);
    color: var(--text-inverse);
    font-size: 14px;
}

/*--- Bulk Localisation page --- */
/* filter and search tools */

.localization-tools {
    padding: 0 15px;
}

.filter-and-search {
    display: flex;
    width: 100%;
}

.button-wrap {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    flex-direction: row;
    height: 2.17rem;
}

.button-wrap button {
    margin-left: 0.5rem;
}

.localization-tools #entityTypes {
    flex: 1;
    flex-grow: 0;
    background-color: #e9ecef;
    margin-right: 10px;
    margin-bottom: 10px;
    height: 35px !important;
}

.localization-tools .localization-search {
    min-width: 300px;
    max-width: 400px;
    flex: 1;
    flex-basis: 300px;
}

.localization-tools .input-group {
    margin-bottom: 10px;
    margin-right: 10px;
}

.localization-tools .tags {
    display: flex;
    flex-direction: row;
    cursor: pointer;
    background-color: transparent;
}

.localization-tools tags-input.minimal-tags-input .tags .input {
    height: 100%;
    min-width: 190px;
    cursor: pointer;
    margin-top: 0.1rem;
    background: transparent;
    margin-right: 30px;
}

.localization-tools tags-input {
    padding: 0 0.75rem 0.2rem 0.75rem;
}

.localization-tools tags-input .fas {
    position: absolute;
    right: 0;
    top: 10px;
    cursor: pointer;
}

.localization-tools tags-input .tags .tag-list {
    display: none;
}

/* I added these as the tags did not displayed nicely when in the parent element - now they do display at the top, but leaving them in as they can be used on a more global level */
.localization-tools tags-input.minimal-tags-input .tags .tag-item {
    height: 1.66rem;
    font-family: inherit;
    display: flex;
    align-items: center;
}

.localization-tools tags-input .tags .tag-item {
    line-height: initial;
    padding: 0 0 0 5px;
    margin: 0.2rem 0.2rem 0 0;
}

.localization-tools tags-input .tags .tag-item * {
    display: flex;
    height: 100%;
    align-items: center;
    white-space: nowrap;
}

.localization-tools tags-input .tags .tag-item .remove-button {
    display: flex;
    align-items: center;
    height: 100%;
    margin: 0 0 0 5px;
    padding: 0.22rem 0.3rem 0 0.3rem;
    border: none;
    background: none;
    cursor: pointer;
    vertical-align: middle;
    font:
        bold 17px Arial,
        sans-serif;
    color: #585858;
}

.localization-tools tags-input .tags .tag-item .remove-button:hover {
    text-decoration: none;
    background: #f5f5f5;
}

.localization-tools tags-input .tags .tag-item .remove-button:focus {
    color: #000;
}

/* end of filter and search tools */

/*  ---Localization table styles  --- */
.localization-content table th {
    min-width: 115px;
}

.table-scroll-wrap {
    width: 100%;
    overflow: auto;
    z-index: 4;
}

.modified-item {
    font-style: italic;
    font-weight: var(--font-weight-bold);
}

/* grades editor*/
.view-rates > label {
    padding: 0 10px;
    font-weight: var(--font-weight-regular);
}

.view-rates > label > input {
    margin: 0 5px;
}

.view-rates .table th {
    cursor: pointer;
}

.consolidate-rates label > span {
    padding-left: 5px;
    font-weight: var(--font-weight-regular);
}

/* Apply the .with-char-limit to an input/textarea with a SIBLING
   small element that contains the char count info. Both must be
   contained within a parent relatively position element */
.with-char-limit ~ small {
    display: flex;
    justify-content: flex-end;
}

/* Bespoke icons */
.icon {
    font-size: 2em;
}

/* font awesome 5 pro upgrade classes fixed */
/* pull-right came with version 4 of font awesome css */
.pull-right {
    float: right;
}

/* END of font awesome classes fixed */

/* .badge-primary.beta */
.badge-beta {
    background-color: #0b6ad026 !important;
    color: #0033ee;
    font-size: 12px;
    max-height: 22px;
}

.badge-legacy {
    background-color: #fde48b !important;
    color: #3c3f4d;
    font-size: 12px;
    max-height: 22px;
}

.fit-parent {
    width: 100%;
    height: 100%;
}

/* @define utilities */
.u-ellipsis {
    vertical-align: bottom;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}

.u-oneLine {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}

.u-circleIndicatorInvalid,
.u-circleIndicatorValid {
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 3px;
}

.u-circleIndicatorInvalid {
    background-color: var(--danger);
}

.u-circleIndicatorValid {
    background-color: var(--success);
}

.u-invalidItem {
    color: var(--danger);
}

.u-validItem {
    color: var(--success);
}

.u-table {
    /*
     * Sets common table header styles.
     * See rules involving u-table in bootstrap-override.css for more details.
     * This class should be deprecated once the Vue transition is complete,
     * we just want to avoid interfering with AngularJS based tables until then.
     */
    overflow-wrap: break-word;
}

/* Sets common table header styles */
.u-table thead {
    position: sticky;
    top: 0;
    background-color: var(--surface-default);
}

/* Sets common table header styles */
.u-table thead th {
    cursor: pointer;
    user-select: none;
    vertical-align: top;
    background: var(--secondary-subtle);
    border-top: none;
}

.u-table.is-unsortable thead th {
    cursor: default;
}

/* Sets the common rule for the container that wraps a loading spinner.  */
.u-loader-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: var(--surface-default);
    z-index: 900;
    display: flex;
    justify-content: center;
    align-items: center;
}

.u-loader {
    font-size: 10vh;
}

.show-vue-background {
    background-color: rgba(66, 184, 131, 1) !important;
}

:root {
    /*************************** Page-wide variables ****************************/

    /* Colours */
    --text-muted-light: #969fa8 /* light gray on black background - will be used in suitability tooltip and floating nav */;
}

/* JD: I don't think the overrides up to the modal ones are needed any more. */
.form-control:focus {
    border-color: #3c307b;
    box-shadow: 0 0 0 0.2rem rgb(60 48 123 / 25%);
}

.was-validated .form-control:valid,
.form-control.is-valid {
    background-image: url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M6 10.5C8.48528 10.5 10.5 8.48528 10.5 6C10.5 3.51472 8.48528 1.5 6 1.5C3.51472 1.5 1.5 3.51472 1.5 6C1.5 8.48528 3.51472 10.5 6 10.5Z' stroke='%2353A451'/%3e%3cpath d='M8.72581 4.53931L8.2621 4.0756C8.18145 3.9748 8.02016 3.9748 7.91936 4.0756L5.07661 6.89819L3.86694 5.68851C3.76613 5.5877 3.625 5.5877 3.52419 5.68851L3.06048 6.13206C2.97984 6.23286 2.97984 6.39415 3.06048 6.4748L4.89516 8.32964C4.99597 8.43044 5.1371 8.43044 5.2379 8.32964L8.72581 4.88206C8.80645 4.78125 8.80645 4.61996 8.72581 4.53931Z' fill='%2353A451'/%3e%3c/svg%3e");
}

.custom-select:focus {
    border-color: #3c307b;
    box-shadow: 0 0 0 0.2rem rgb(60 48 123 / 25%);
}

.custom-select.is-valid,
.was-validated .custom-select:valid {
    background:
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 2 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
            right 0.75rem center/8px 10px no-repeat,
        #fff
            url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M6 10.5C8.48528 10.5 10.5 8.48528 10.5 6C10.5 3.51472 8.48528 1.5 6 1.5C3.51472 1.5 1.5 3.51472 1.5 6C1.5 8.48528 3.51472 10.5 6 10.5Z' stroke='%2353A451'/%3e%3cpath d='M8.72581 4.53931L8.2621 4.0756C8.18145 3.9748 8.02016 3.9748 7.91936 4.0756L5.07661 6.89819L3.86694 5.68851C3.76613 5.5877 3.625 5.5877 3.52419 5.68851L3.06048 6.13206C2.97984 6.23286 2.97984 6.39415 3.06048 6.4748L4.89516 8.32964C4.99597 8.43044 5.1371 8.43044 5.2379 8.32964L8.72581 4.88206C8.80645 4.78125 8.80645 4.61996 8.72581 4.53931Z' fill='%2353A451'/%3e%3c/svg%3e")
            center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.custom-select.is-invalid,
.was-validated .custom-select:invalid {
    background:
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 2 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
            right 0.75rem center/8px 10px no-repeat,
        #fff
            url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23a3003c' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e")
            center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.modal-header .close {
    margin: -7px;
    padding: 0;
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0.25rem;
    position: relative;
    font-size: 0;
}

.modal-header .close::before,
.modal-header .close::after {
    position: absolute;
    left: 21px;
    content: " ";
    height: 15px;
    width: 3px;
    background-color: #333;
}

.modal-header .close::before {
    transform: rotate(45deg);
}

.modal-header .close::after {
    transform: rotate(-45deg);
}

.modal-header .close:hover {
    background: #ebebeb;
}

/*
This is here to override a style from styles.css which otherwise makes headers look bad
This should be removed when we move away from styles.css
*/
.modal-header h5 {
    font-size: 19px;
    margin: 0;
}

label.custom-control-label {
    font-weight: var(--font-weight-regular);
}

.btn-outline-primary,
.btn-outline-secondary {
    background-color: white;
}

.input-group-text {
    cursor: pointer;
}

.input-group-text.is-disabled {
    cursor: default;
}

fieldset {
    border: 1px solid #eaeaea;
    border-radius: 4px;
}

fieldset legend {
    width: auto;
    margin-left: 10px;
    font-size: 100%;
    font-weight: var(--font-weight-bold);
    padding-left: 5px;
    padding-right: 5px;
}

/*  badge class: custom styles */
.badge-primary {
    background-color: var(--surface-primary-subtle);
    color: var(--text-primary);
}
.badge-secondary {
    background-color: var(--surface-subtle-dark);
    color: var(--text-subtle);
}
.badge-success {
    background-color: var(--surface-success-subtle);
    color: var(--text-success);
}
.badge-danger {
    background-color: var(--surface-danger-subtle);
    color: var(--text-danger);
}
.badge-danger--highlighted {
    background-color: var(--surface-danger);
    color: var(--text-inverse);
}
.badge-warning {
    background-color: var(--surface-warning);
    color: var(--text-warning);
}
.badge-info {
    background-color: var(--surface-info-subtle);
    color: var(--text-info);
}

/* END of badges - custom styles*/

/*Alert Class Custom Styles*/
.alert {
    display: flex;
    align-items: center;
    align-self: stretch;
    padding: var(--padding-md);
    gap: var(--padding-md);
    font-size: var(--font-size-h5);
}

.alert-dismissible .close {
    padding-top: var(--padding-md);
    padding-bottom: var(--padding-md);
}

.alert-warning {
    border-color: var(--warning);
    background-color: var(--warning-subtle);
}

/*END of Alert Class Custom Styles*/

/*
    CSS color variables for the redesigned ODA palette
    AR: I am preferring rgb colour format for the ease of adding opacity.
    You can convert hex to rgb in Rider by clicking the colour square next to the line number.
    AR: (7/4/25) the naming conventions have changed so many times in Figma and now this is completely out of whack. This needs a naming overhaul.
 */
:root {
    /* colour definition for v-calendar */
    --vc-primary-600: var(--primary);

    /* Grays */
    --basic-grey-12-base: 228 229 231; /* #E4E5E7 */
    --tinted-grey-14-base: 248, 249, 251; /* #F8F9FB */
    --neutral-grey-base: 192 194 206; /* #C0C2CE */
    --neutral-grey-13-base: 241 241 244; /* #C0C2CE */
    --neutral-grey-d5-base: 80 84 103; /* #505467 */
    --neutral-grey-d3-base: 137 141 164; /* #898DA4 */
    --neutral-grey-800-base: 112 116 143; /* #70748F */
    --neutral-deep-grey-11-base: 106 98 151; /* #6A6297 */
    --neutral-deep-grey-13-base: 180, 176, 203; /* #B4B0CB */
    --neutral-deep-grey-14-base: 218, 216, 229; /* #DAD8E5 */
    --neutral-deep-grey-15-base: 240, 239, 246; /* #F0EFF6 */
    --neutral-deep-grey-d1-base: 70, 65, 100; /* #464164 */
    --neutral-deep-grey-d2-base: 63 58 89; /* #3F3A59 */
    --basic-grey-12: rgb(var(--basic-grey-12-base));
    --tinted-grey-14: rgb(var(--tinted-grey-14-base));
    --neutral-grey: rgb(var(--neutral-grey-base));
    --neutral-grey-13: rgb(var(--neutral-grey-13-base));
    --neutral-grey-d3: rgb(var(--neutral-grey-d3-base));
    --neutral-grey-d5: rgb(var(--neutral-grey-d5-base));
    --grey-400: rgba(186, 191, 209, 1);
    --grey-200: rgb(241, 241, 244); /* #F1F1F4 */
    --grey-600: rgb(106 112 143); /* #6A708F */
    --neutral-grey-800: rgb(var(--neutral-grey-800-base));
    --neutral-deep-grey-11: rgb(var(--neutral-deep-grey-11-base));
    --neutral-deep-grey-13: rgb(var(--neutral-deep-grey-13-base));
    --neutral-deep-grey-14: rgb(var(--neutral-deep-grey-14-base));
    --neutral-deep-grey-15: rgb(var(--neutral-deep-grey-15-base));
    --neutral-deep-grey-d1: rgb(var(--neutral-deep-grey-d1-base));
    --neutral-deep-grey-d2: rgb(var(--neutral-deep-grey-d2-base));

    /* Blacks */
    --deep-black-base: 39 35 61; /* #27233D */
    --neutral-black-11-base: 73 66 114; /* #494272 */
    --deep-black: rgb(var(--deep-black-base));
    --neutral-black-13: rgb(157 150 195); /* #9D96C3 */
    --neutral-black-12: rgb(108 98 165); /* #6C62A5 */
    --neutral-black-11: rgb(var(--neutral-black-11-base));
    --neutral-black-14-base: 33 37 41;
    --neutral-black-14: rgb(var(--neutral-black-14-base)); /* #212529 */

    /* Greens */
    --success-green-d3-base: 25 143 72; /* #198f48 */
    --success-green-d3: rgb(var(--success-green-d3-base));

    /* Teals */
    --secondary-teal-base: 51 153 163; /* #3399A3 */
    --secondary-teal-d2-base: 41 123 130;
    --secondary-teal-d3-base: 36 107 114;
    --secondary-teal-d5-base: 26 77 81;
    --secondary-teal-11-base: 75 188 198;
    --secondary-teal: rgb(var(--secondary-teal-base));
    --secondary-teal-d2: rgb(var(--secondary-teal-d2-base));
    --secondary-teal-d3: rgb(var(--secondary-teal-d3-base));
    --secondary-teal-d5: rgb(var(--secondary-teal-d5-base));
    --secondary-teal-11: rgb(var(--secondary-teal-11-base));

    /* Blues */
    --data-blue-100: rgb(237, 240, 248); /* #EDF0F8 */
    --data-blue-500: rgb(104, 129, 197); /* #6881C5 */
    --info-blue: rgb(68 98 178); /* #4462B2 */
    --info-blue-subtle: rgba(226, 240, 255, 1); /* #E2F0FF */

    /* Yellows */
    --secondary-yellow-base: 252 222 110;
    --secondary-yellow: rgb(var(--secondary-yellow-base));

    /* Oranges */
    --orange-marketing-400: rgb(255 141 108); /* #FF8D6C */
    --orange-marketing-600: rgb(255, 89, 59); /* #FF593B */

    /* Browns */
    --neutral-brown-12-base: 232 225 248;
    --neutral-brown-12: rgb(var(--neutral-brown-12-base));

    /* Misc */
    --text-white: rgb(248 248 248); /* #F8F8F8 */

    /* Alerts */
    --alert-error: rgb(242 53 121); /* #F23579 */
    --alert-red-d1-base: 220 14 90; /* #DC0E5A */
    --alert-red-d1: rgb(var(--alert-red-d1-base));

    /* Interactive */
    --interactive-primary-base: 95 76 194;
    --interactive-primary-d2-base: 79 63 160;
    --interactive-primary-13-base: 217 211 255;
    --interactive-primary-15-base: 244 243 247;
    --interactive-primary-200-base: 217 211 255;
    --interactive-primary: rgb(var(--interactive-primary-base));
    --interactive-primary-d2: rgb(var(--interactive-primary-d2-base));
    --interactive-primary-13: rgb(var(--interactive-primary-13-base));
    --interactive-primary-15: rgb(var(--interactive-primary-15-base));
    --interactive-primary-200: rgb(var(--interactive-primary-200-base));

    /* Accent */
    --accent-11-base: 255 124 100;
    --accent-11: rgb(var(--accent-11-base));

    --border-color: rgb(222 226 230); /* #DEE2E6 */
}

.tabbed-sidebar {
    /* AR: I intended to only have color palette variables in this file, but it seems like the spec for the summary screen uses colors not present in the palette Figma file
        TODO - check with Lu whether the below colors should be global
     */
    --text-color: rgb(73 80 87); /* #495057 */
    --text-white: rgb(248 248 248); /* #F8F8F8 */
    --bg-color-light: rgb(229 231 234 / 70%); /* #E5E7EAB2 */
    --bg-color-light-focus-ring: rgb(229 231 234); /* #E5E7EA */ /* AR: I made this up increasing opacity of the above - it's not from Lu */
    --bg-color-dark: var(--neutral-deep-grey-d2);
    --bg-color-dark-focus-ring: rgb(var(--neutral-deep-grey-d2-base) / 50%); /* AR: I made this up decreasing opacity of the above - it's not from Lu */
}

.suggestions-mode .gantt-item-proposal,
.suggestions-mode .GanttModeDropdown,
.suggestions-mode .create-suggestion-btn,
.suggestions-mode.solve .gantt-item.selected-item.has-suggestions,
.suggestions-mode.solve .gantt-item.has-selected-suggestions {
    --backgroundColor: var(--secondary-teal-d2) !important;
    --borderColor: var(--secondary-teal-d5) !important;
    --color: var(--text-white) !important;
}

.suggestions-mode .gantt-item.has-selected-suggestions.gantt-item-filtered {
    opacity: 1 !important; /* AR: unfortunately .gantt-item-filtered already has an important flag which I don't feel safe removing in release week */
}

.suggestions-mode .gantt-item-proposal .gantt-item-content {
    color: inherit;
}

.suggestions-mode .gantt-item-proposal.gantt-item-draft .gantt-item-content {
    height: 100%;
    margin-bottom: 0;
    margin-left: 0;
    margin-top: 0;
}

.suggestions-mode .gantt-item-proposal .item-resize-handle {
    background-color: var(--secondary-teal-d5);
}

.suggestions-mode .gantt-item-proposal {
    border: 1px dashed var(--secondary-teal-d5);
    color: white !important;
}

.suggestions-mode .gantt-item-proposal.selected-item.gantt-item-warning {
    border-left-width: 2px;
}

.suggestions-mode .gantt-item-proposal::after,
.suggestions-mode .gantt-item.has-suggestions::after {
    background: var(--backgroundColor);
    background: linear-gradient(90deg, transparent 0%, var(--backgroundColor) 40%);
    content: "";
    height: 100%;
    position: absolute;
    right: 0;
    width: 12px;
}

.suggestions-mode .gantt-item-proposal.has-handle::after,
.suggestions-mode .gantt-item.has-suggestions.has-handle::after {
    right: 7px; /* .item-resize-handle width */
}

/* AR: .hat-container is our suggestions dot */
.suggestions-mode .gantt-item-proposal .hat-container,
.suggestions-mode .gantt-item.has-suggestions .hat-container {
    background-color: white;
    border-radius: 50%;
    box-shadow: 0 0 6px 0 rgb(0 0 0 / 30%);
    height: 9px;
    width: 9px;
    position: absolute;
    right: 3px;
    top: 3px;
    z-index: 1;
}

.suggestions-mode .gantt-item-proposal .hat-container.hat-container--half-circle {
    height: fit-content;
    width: fit-content;
    font-size: 9px;
    background: unset;
}

.suggestions-mode:not(.solve) .gantt-item.has-suggestions:not(.gantt-item-proposal) .hat-container {
    width: 14px;
    height: 14px;
    font-size: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: black;
}

.suggestions-mode:not(.solve) .gantt-item.has-suggestions.gantt-item-draft .hat-container {
    color: white;
}

.suggestions-mode .gantt-item.has-suggestions.gantt-item-draft:not(.gantt-item-proposal)::after {
    --backgroundColor: white;
    /* Account for extra border around draft item content */
    border-bottom-right-radius: 2px;
    border-top-right-radius: 2px;
    height: calc(100% - 2px);
    right: 1px;
    top: 1px;
}

.suggestions-mode .gantt-item-proposal.has-handle .hat-container,
.suggestions-mode .gantt-item.has-suggestions.has-handle .hat-container {
    right: 9px; /* 3 + .item-resize-handle width */
}

.suggestions-mode .gantt-item.has-suggestions.gantt-item-draft:not(.gantt-item-proposal) .hat-container {
    background-color: var(--secondary-teal-d2);
}

.suggestions-mode .gantt-job-bounds,
.suggestions-mode .gantt-item-bounds {
    top: 0;
}

.suggestions-mode .gantt-item-warning.unselected .error-flag,
.suggestions-mode .gantt-item-error.unselected .error-flag {
    color: #8a8c99;
}

.suggestions-mode .btn-secondary.GanttModeDropdown {
    color: var(--text-white);
    background-color: var(--backgroundColor);
    border-color: var(--backgroundColor);
}

.suggestions-mode .btn-secondary.GanttModeDropdown:hover {
    color: var(--text-white);
    background-color: var(--secondary-teal-d3);
    border-color: var(--secondary-teal-d3);
}

.suggestions-mode .btn-secondary.GanttModeDropdown:focus,
.suggestions-mode .btn-secondary.GanttModeDropdown.focus {
    box-shadow: 0 0 0 0.2rem rgb(var(--secondary-teal-d2-base) / 50%);
}

.suggestions-mode .btn-secondary.GanttModeDropdown.disabled,
.suggestions-mode .btn-secondary.GanttModeDropdown:disabled {
    color: var(--text-white);
    background-color: var(--backgroundColor);
    border-color: var(--backgroundColor);
}

.suggestions-mode .btn-secondary.GanttModeDropdown:not(:disabled, .disabled):active,
.suggestions-mode .btn-secondary.GanttModeDropdown:not(:disabled, .disabled).active,
.suggestions-mode .show > .btn-secondary.GanttModeDropdown.dropdown-toggle {
    color: var(--text-white);
    background-color: var(--borderColor);
    border-color: var(--borderColor);
}

.suggestions-mode .btn-secondary.GanttModeDropdown:not(:disabled, .disabled):active:focus,
.suggestions-mode .btn-secondary.GanttModeDropdown:not(:disabled, .disabled).active:focus,
.suggestions-mode .show > .btn-secondary.GanttModeDropdown.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgb(var(--secondary-teal-d2-base) / 50%);
}

.suggestions-mode .btn-secondary.create-suggestion-btn {
    color: var(--text-white);
    background-color: var(--backgroundColor);
    border-color: var(--backgroundColor);
}

.suggestions-mode .btn-secondary.create-suggestion-btn:hover {
    color: var(--text-white);
    background-color: var(--secondary-teal-d3);
    border-color: var(--secondary-teal-d3);
}

.suggestions-mode .btn-secondary.create-suggestion-btn:focus,
.suggestions-mode .btn-secondary.create-suggestion-btn.focus {
    box-shadow: 0 0 0 0.2rem rgb(var(--secondary-teal-d2-base) / 50%);
}

.suggestions-mode .btn-secondary.create-suggestion-btn.disabled,
.suggestions-mode .btn-secondary.create-suggestion-btn:disabled {
    color: var(--text-white);
    background-color: var(--backgroundColor);
    border-color: var(--backgroundColor);
}

.suggestions-mode .btn-secondary.create-suggestion-btn:not(:disabled, .disabled):active,
.suggestions-mode .btn-secondary.create-suggestion-btn:not(:disabled, .disabled).active,
.suggestions-mode .show > .btn-secondary.create-suggestion-btn.dropdown-toggle {
    color: var(--text-white);
    background-color: var(--borderColor);
    border-color: var(--borderColor);
}

.suggestions-mode .btn-secondary.create-suggestion-btn:not(:disabled, .disabled):active:focus,
.suggestions-mode .btn-secondary.create-suggestion-btn:not(:disabled, .disabled).active:focus,
.suggestions-mode .show > .btn-secondary.create-suggestion-btn.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgb(var(--secondary-teal-d2-base) / 50%);
}

.suggestion-conflict {
    color: var(--secondary-teal-d2);
}

.suggestion-conflict-border {
    border: 1px solid var(--secondary-teal-d2);
    color: var(--secondary-teal-d2);
}

.suggestion-row {
    margin: 10px -10px -10px !important;
}

.suggestion-item.suggestion-selected {
    background-color: var(--tinted-grey-14-base);
    cursor: pointer;
}

.suggestion-item,
.suggestion-selected,
.suggestion-handle {
    transition: background 0.3s;
}

.suggestion-item:not(.suggestion-selected):hover {
    background-color: var(--tinted-grey-14-base);
    cursor: pointer;
}

.suggestions-mode .suggestion-selected .suggestion-handle {
    background-color: var(--secondary-teal-d2);
}

.suggestions-mode .stale-warning {
    color: var(--secondary-teal-d2);
    display: inline-flex;
    align-items: center;
    height: 30px;
    font-size: 25px;
    cursor: help;
}

.suggestions-mode .suggestion-item:not(.suggestion-selected):hover .suggestion-handle {
    background-color: var(--secondary-teal-d2);
}

.BulkRollForwardCreator-loadingSpinner {
    font-size: 10vh;
}

.BulkRollForwardCreator {
    display: flex;
    flex-direction: column;
    order: 1;
    flex-grow: 1;
    height: 100%;
    width: 100%;
    position: relative;
    overflow-y: hidden;
}

.BulkRollForwardCreator-headerContainer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    border-bottom: 1px solid rgb(0 0 0 / 10%);
    position: fixed;
    left: 46px;
    right: 0;
    z-index: 4;
    background: white;
}

.BulkRollForwardCreator-header {
    margin: 0;
}

.BulkRollForwardCreator-rollForwardButton.is-invalid {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23ffffff' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ffffff' stroke='none'/%3e%3c/svg%3e");
    padding-right: calc(1.5em + 0.75rem);
    background-repeat: no-repeat;
    background-position: center right calc(0.375em + 0.1875rem);
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.BulkRollForwardCreator-body {
    position: fixed;
}

.BulkRollForwardCreator-statusContainer {
    min-height: 66px;
    display: flex;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    position: fixed;
    left: 46px;
    right: 0;
    top: 66px;
    background: white;
    border-bottom: 1px solid #dee2e6;
    z-index: 4;
}

.BulkRollForwardCreator-stagingForm {
    overflow-y: hidden;
}

.BulkRollForwardCreator-stagingFormContainer {
    position: relative;
    top: 132px;
    height: calc(100vh - 132px);
    margin-bottom: 132px;
    overflow-y: scroll;
}

/* ChatWidget - Fixed Position Widget Styles */
.ChatWidget-container {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1025; /* Above most other elements but below modals */
    border-radius: 8px;
    box-shadow: 0 4px 12px rgb(0 0 0 / 15%);
    background: white;
    border: 1px solid #dee2e6;
    max-width: 400px;
    transition: all 0.3s ease;
}

.ChatWidget-container.is-minimized {
    width: 280px;
    cursor: pointer;
}

.ChatWidget-container.is-minimized:hover {
    box-shadow: 0 6px 16px rgb(0 0 0 / 20%);
}

.ChatWidget-header {
    padding: 12px 16px;
    background: var(--primary) !important;
    color: white;
    border-radius: 8px 8px 0 0;
    display: flex;
    align-items: center;
    user-select: none;
}

.ChatWidget-header.is-minimized {
    border-radius: 8px;
    cursor: pointer;
}

.ChatWidget-headerContent {
    display: flex;
    align-items: center;
    width: 100%;
}

.ChatWidget-headerIcon {
    margin-right: 8px;
    font-size: 16px;
}

.ChatWidget-headerTitle {
    flex: 1;
    font-weight: var(--font-weight-semibold);
    font-size: 14px;
}

.ChatWidget-headerActions {
    display: flex;
    gap: 4px;
}

.ChatWidget-minimizeBtn,
.ChatWidget-closeBtn {
    color: white !important;
    padding: 4px 8px !important;
    line-height: 1 !important;
    border: none !important;
    background: transparent !important;
}

.ChatWidget-minimizeBtn:hover,
.ChatWidget-closeBtn:hover {
    background: rgb(255 255 255 / 20%) !important;
    color: white !important;
}

.ChatWidget.is-expanded {
    width: 380px;
    height: 500px;
    display: flex;
    flex-direction: column;
}

.ChatWidget-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 16px;
    overflow: hidden;
}

.ChatWidget-messages {
    flex: 1;
    overflow-y: auto;
    margin-bottom: 16px;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 12px;
}

.ChatWidget-message {
    margin-bottom: 12px;
}

.ChatWidget-message:last-child {
    margin-bottom: 0;
}

.ChatWidget-message--user {
    text-align: right;
}

.ChatWidget-message--agent {
    text-align: left;
}

.ChatWidget-messageContent {
    display: inline-block;
    max-width: 80%;
    background-color: var(--white);
    border-radius: 16px;
    padding: 8px 12px;
    box-shadow: 0 1px 2px rgb(0 0 0 / 10%);
}

.ChatWidget-message--user .ChatWidget-messageContent {
    background-color: var(--primary) !important;
    color: var(--light);
}

.ChatWidget-message--agent .ChatWidget-messageContent {
    background-color: var(--secondary) !important;
    color: var(--light);
}

.ChatWidget-messageText {
    margin-bottom: 4px;
    overflow-wrap: break-word;
    font-size: 14px;
    line-height: 1.4;
}

.ChatWidget-messageText code {
    background-color: rgb(0 0 0 / 10%);
    padding: 2px 4px;
    border-radius: 3px;
    font-size: 0.875em;
}

.ChatWidget-message--user .ChatWidget-messageText code {
    background-color: rgb(255 255 255 / 20%);
}

.ChatWidget-messageTime {
    font-size: 11px;
    opacity: 0.7;
    margin-top: 2px;
}

.ChatWidget-input {
    margin-top: auto;
}

.ChatWidget-input textarea {
    resize: none;
    border-radius: 6px;
    font-size: 14px;
    border: 1px solid #ced4da;
}

.ChatWidget-input textarea:focus {
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%);
}

.ChatWidget-input .input-group-append .btn {
    border-radius: 0 6px 6px 0;
    border-left: 0;
}

.ChatWidget-input .btn-primary {
    background-color: var(--primary) !important;
    border-color: var(--border-primary);
}

/* Error message styling */
.ChatWidget-content .alert {
    margin: 0 0 16px;
    padding: 8px 12px;
    font-size: 14px;
}

/* Custom scrollbar for chat messages */
.ChatWidget-messages::-webkit-scrollbar {
    width: 6px;
}

.ChatWidget-messages::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.ChatWidget-messages::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
}

.ChatWidget-messages::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

/* Chat Widget Menu Styles */
.ChatWidget-menuDropdown .ChatWidget-menuBtn {
    color: white !important;
    padding: 6px 12px !important;
    line-height: 1 !important;
    border: none !important;
    background: transparent !important;
    border-radius: 4px !important;
    min-width: 38px;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ChatWidget-menuDropdown .ChatWidget-menuBtn:hover,
.ChatWidget-menuDropdown .ChatWidget-menuBtn:focus {
    background: rgb(255 255 255 / 20%) !important;
    color: white !important;
    box-shadow: none !important;
}

.ChatWidget-menuDropdown .ChatWidget-menuBtn:active {
    background: rgb(255 255 255 / 30%) !important;
    color: white !important;
}

.ChatWidget-menuIcon {
    font-size: 16px;
}

/* Mobile responsiveness */
@media (width <= 768px) {
    .ChatWidget-container {
        right: 10px;
        bottom: 10px;
        left: 10px;
        max-width: none;
    }

    .ChatWidget.is-expanded {
        width: 100%;
        height: 400px;
    }

    .ChatWidget-container.is-minimized {
        width: auto;
        left: auto;
        right: 10px;
    }
}

/* @define ClientsEditor */
.ClientsEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.ClientsEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.ClientsEditor-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.ClientsEditor-tabPane {
    height: 100%;
}

.ClientsEditor-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

/* stylelint-disable plugin/selector-bem-pattern -- using the descendant or child selectors violates SUIT conventions */
.ClientsEditor-tabsBlock > div {
    flex-grow: 0;
}

.ClientsEditor-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}
/* stylelint-enable plugin/selector-bem-pattern */

.ClientsEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.ClientsEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.ClientsEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ClientsEditor-editorPaneHeaderText {
    margin: 0;
}

.ClientsEditor-restrictionCountBadge {
    margin-left: 5px;
    font-weight: 500;
    font-size: 9px;
    background: #ddd;
    min-width: 22px;
}

@media (width <= 992px) {
    .ClientsEditor-body {
        flex-direction: column;
    }

    .ClientsEditor-treeSelector {
        height: 300px;
    }

    .ClientsEditor-editorPane {
        padding-top: 15px;
        border-top: 1px solid var(--border-subtle);
    }
}

/* @define Btn */

.Btn.is-small {
    font-size: 0.75rem;
    padding: 2px 4px;
}

.Btn-close:hover {
    background: rgb(0 0 0 / 20%);
}

.Btn-link:hover,
.Btn-link:active {
    color: var(--primary) !important;
    text-decoration: underline;
}

.Btn--linkOutline {
    border: 1px solid var(--border-subtle);
}

/* Using !important so that custom styles are not overridden by dayshape-bootstrap.css */
.Btn--linkOutline:hover,
.Btn--linkOutline:focus,
.Btn--linkOutline:active {
    background-color: var(--white) !important;
    border: 1px solid var(--primary) !important;
    color: var(--primary) !important;
}

.DropdownButton .DropdownButton-button.disabled {
    border-right-color: transparent;
}

.DropdownButtonItem-disabled > .dropdown-item {
    pointer-events: auto;
    cursor: not-allowed;
}

.DropdownButton .DropdownButton-toggle {
    flex-grow: 0;
}

.DropdownButton--noToggle .DropdownButton-toggle {
    display: none;
}

/* Remove border radius adjustment on primary button when toggle is hidden */
.DropdownButton--noToggle .DropdownButton-button {
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

.NoPermissions {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.NoPermissions-body {
    margin-top: 200px;
    text-align: center;
}

.NoPermissions-iconHeader {
    color: #a00;
    font-size: 80px;
}

/* @define SavingToast */
.SavingToast-body {
    display: flex;
    align-items: center;
}

.SavingToast-icon {
    font-size: 50px;
    margin-right: 10px;
}

/* @define SettingGroup */

.SettingGroup-table {
    table-layout: fixed;
}

.SettingGroup-tableHeader {
    z-index: 2;
}

.SettingGroup-name,
.SettingGroup-value {
    width: 20%;
}

.SettingGroup-description {
    width: 60%;
}

/* stylelint-disable plugin/selector-bem-pattern */

/* customize tag width in tag input */

.SettingGroup-table .Tags .Tags-tag {
    max-width: unset;
}

/* stylelint-enable plugin/selector-bem-pattern */

.Sidebar-header {
    background-color: rgb(0 0 0 / 5%);
}

.Sidebar-headerContainer {
    white-space: nowrap;
    display: flex;
}

.Sidebar-headerCloseContainer {
    font-size: 14px;
    padding: 10px 17px;
    margin: -0.5rem -1rem;
}

.Sidebar-headerTitleContainer {
    display: inline-block;
    font-size: 14px;
    margin-bottom: 0;
    margin-left: 20px;
}

.Sidebar-headerCloseContainer:hover {
    background-color: #dedede;
}

.Sidebar-headerTitle {
    font-size: 14px;
    padding-top: 3px;
    margin-bottom: -3px;
}

.Sidebar-headerClose {
    font-size: 14px;
    color: #7f7f7f;
}

.Sidebar-content {
    padding: 15px 15px 0;
    height: 100%;
}

.Sidebar-footerContainer {
    width: 100%;
    padding: 15px 25px 20px;
    float: right;
}

.Sidebar-outer--inContainer {
    /* So the .Sidebar--inContainer height calc ignores this element */
    display: contents;
}

.Sidebar--inContainer {
    /* Override fixed positioning so we can position sidebar relative to closest ancestor with position: relative */
    position: absolute;
    height: 100%;
    z-index: 1035; /* Copied from Bootstrap's .b-sidebar-outer, which won't take effect with the display:contents */
}

.Sidebar-outer--inContainer .b-sidebar-backdrop {
    position: absolute;
    inset: 0;
    z-index: 100; /* Below 100 fails for sidebars in Gantt/NJEG and above 999 brings ot over in-container sidebars */
}

.ConfigProfilesEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.ConfigProfilesEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.ConfigProfilesEditor-savingToastIcon {
    font-size: 5vh;
}

.ConfigProfileToggleRowDelete-actionButton {
    width: 32px;
    height: 32px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cookie-policy-page {
    height: 100vh;
}

.cookie-policy-page p {
    padding: 5px 0 0 5px;
    margin: 0;
}

.cookie-policy-page li {
    margin: 8px 0;
}

.cookie-policy-table {
    width: 100%;
    border-collapse: collapse;
    border-left: 1px solid #a9a9a9;
    border-right: 1px solid #a9a9a9;
    border-top: 1px solid #a9a9a9;
    border-spacing: 0 0;
}

.cookie-policy-table th {
    border-right: 1px solid black;
    text-align: center;
    vertical-align: middle;
    background-color: #bfbebe;
    padding-top: 5px;
    padding-bottom: 5px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.cookie-policy-table td {
    padding: 10px;
    border-bottom: 1px solid black;
    text-align: left;
    vertical-align: middle;
    border-right: 1px solid black;
}

.cookie-policy-table-accent {
    font-weight: var(--font-weight-bold);
    color: #27233d;
}

.cookie-policy-necessary-cookies-explanation {
    display: flex;
}

.CustomFields {
    display: flex;
    flex-direction: column;
}

.CustomFields > .Header-main {
    border-bottom: none;
    flex: 0 0 auto;
}

.CustomFields-content {
    padding: 15px;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow: visible;
    min-height: 0;
}

.CustomFields-content > :first-child {
    flex: 0 0 auto;
}

.CustomFields-tabContent {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: visible;
}

.CustomFields-tabContent .GenericTable-tableContainer {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    max-height: 60vh;
}

.CustomFields-search {
    width: 320px;
}

.CustomFields-noSort .GenericTable-sortIcon {
    display: none;
}

.CustomFields-noSort {
    cursor: default;
    pointer-events: none;
}

.CustomFields-tabContent .GenericTable-tableContainer table {
    table-layout: fixed;
}

.CustomFields-editButton,
.CustomFields-deleteButton {
    display: grid;
    place-content: center;
}

.DataDeletionThresholdsEditor {
    max-width: 1200px;
    margin: auto;
}

.DataDeletionThresholdsTableWrapper {
    border: 1px solid #ccc;
    border-radius: 12px;
    overflow: hidden;
    background: var(--surface-default);
}

.DataDeletionThresholdsTable {
    margin: 0;
    border: none;
    border-radius: 0;
    width: 100%;
    background: transparent;
}

.DataDeletionThresholdsOverrideToggle {
    flex-grow: 0;
    flex-shrink: 0;
    width: 35px;
}

.DataDeletionThresholdsInheritLabel {
    flex-grow: 0;
    flex-shrink: 0;
    width: 150px;
}

.DataDeletionThresholdsOverrideLabel {
    width: 150px;
}

.DataDeletionNoSpinners > input::-webkit-inner-spin-button,
.DataDeletionNoSpinners > input::-webkit-outer-spin-button {
    appearance: none; /* Chrome/Safari/Edge */
    margin: 0;
}

.DataDeletionThresholdsInput {
    width: 62px;
}

.DataDeletionThresholdsTable-header {
    font-weight: 500;
    cursor: default !important;
}

.DataDeletionThresholdsTable-NodeExpander {
    cursor: pointer;
}

.DataDeletionThresholdsTable-node {
    font-weight: 500;
    cursor: default;
}

.DataDeletionThresholdsTable-ValidationText {
    color: var(--text-danger);
    font-size: 12px;
}

.data-threshold-right {
    gap: 15px;
}

/* @define Environments */
.Environments {
    display: flex;
    flex-direction: column;
}

.Environments-body {
    flex: 1;
    overflow: auto;
    padding: 1rem;
}

.Environments-form {
    max-width: 100%;
}

@media (width >= 768px) {
    .Environments-form {
        max-width: 80%;
    }
}

@media (width >= 992px) {
    .Environments-form {
        max-width: 50%;
    }
}

@media (width >= 1200px) {
    .Environments-form {
        max-width: 40%;
    }
}

/* @define EnvironmentSettings */
.EnvironmentSettings-body {
    padding: 15px;
}

/* visual grabbed from BookingTypes.css */
.EnvironmentSettings-editorHeader {
    border-bottom: none !important;
}

.EnvironmentSettings-tabBody {
    padding: 30px 0;
}

.EnvironmentSettings-search {
    width: 420px;
}

.GenericError {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.GenericError-header {
    display: flex;
    flex-direction: column;
    padding-top: 100px;
    align-items: center;
}

.GenericError-icon {
    color: #a00;
    font-size: 80px;
    padding-bottom: 20px;
}

.GenericError-body {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.GenericError-message {
    text-align: center;
    white-space: pre;
}

/* @define FieldBehavioursEditor */
.FieldBehavioursEditor-tableWrapper {
    margin-top: 4px;
    position: sticky;
    top: 0;
}

.FieldBehavioursEditor-table {
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 0;
    position: relative;
    table-layout: fixed;
}

.FieldBehavioursEditor-tableHeaderCell {
    border-top: none !important;
    border-bottom: var(--border-subtle);
    position: sticky;
    top: 0;
    background: var(--secondary-subtle);
    z-index: 2;
}

.FieldBehavioursEditor-tableCell,
.FieldBehavioursEditor-tableHeaderCell {
    padding: 8px 12px;
    white-space: nowrap;
}

.FieldBehavioursEditor-tableHeaderCell--helpIcon {
    color: var(--text-primary);
    margin-left: 4px;
}

.FieldBehavioursEditor-validationIndicator {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.FieldBehavioursEditor-tableCell--behaviourName {
    overflow: hidden;
    display: block;
    text-overflow: ellipsis;
}

.FieldBehavioursEditor-tableHeaderCell--container {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.FieldBehavioursEditor-tableHeaderCell--label {
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 90%;
    display: block;
    overflow: clip;
}

/* @define FormFieldset */
.FormFieldset {
    position: relative;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 20px;
    margin: 28px 0;
}

.FormFieldset-legend {
    position: absolute;
    left: 0;
    top: -24px;
    font-weight: var(--font-weight-semibold);
    font-size: 0.95rem;
    line-height: 1;
    margin: 0;
    white-space: nowrap;
}

.FormFieldset-content {
    display: flex;
    flex-direction: column;
}

/* @define FormGroup */
.FormGroup {
    margin-bottom: 0.5rem;
}

.FormGroup-label {
    display: flex;
    align-items: center;
}

.FormGroup-labelText {
    max-width: calc(100% - 1em);
}

.FormGroup-label.is-hidden {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* stylelint-disable */
.FormGroup-label.is-hidden {
    clip: rect(0 0 0 0);
}

.FormGroup.is-notMandatory .FormGroup-labelText,
.FormGroup.is-valid .FormGroup-labelText {
    margin-right: 0.78em;
}

.FormGroup.is-withTooltipIcon .FormGroup-labelText {
    margin-right: 0;
}

.FormGroup-mandatory {
    width: 0.5em;
    display: inline-block;
}

.FormGroup-body {
    /* This margin is to account for the height of the invalid feedback row.
     * It's purpose is to avoid the form jumping around when validation feedback
     * toggles between being shown and not being shown. */
    margin-bottom: 1.3rem;
}

.FormGroup-bodyNoMargin {
    margin-bottom: 0;
}

.FormGroup.is-invalid .FormGroup-body,
.FormGroup.is-withoutFeedback .FormGroup-body {
    margin-bottom: 0;
}

.FormGroup-invalidFeedback {
    display: none;
}

.FormGroup-description,
.FormGroup-warningText,
.FormGroup-invalidFeedback {
    font-size: 0.8rem;
}

.FormGroup.is-invalid .FormGroup-invalidFeedback {
    display: -webkit-box;
}

.FormGroup-labelTooltipIcon {
    color: var(--text-primary);
    cursor: pointer;
    width: 24px;
    aspect-ratio: 1;
    display: grid;
    place-content: center;
}

/* @define GradesSelector */
.GradesSelector-notInConfigProfileWarning {
    position: absolute;
    width: 70%;
    z-index: 9;
    display: grid;
    place-items: center;
    height: 100%;
}

/* @define GlobalSearch */
.GlobalSearch-modal {
    overflow: hidden !important;
}

.GlobalSearch-modalDialog {
    max-height: calc(100% - 5rem);
    min-height: 28rem;
}

.GlobalSearch-modalContent {
    border-radius: 0.5rem;
    min-height: 0;
}

.GlobalSearch-modalBody {
    min-height: 0;
}

.GlobalSearch-modalTitle {
    font-size: 1rem;
}

.GlobalSearch-resultsContainer {
    max-height: 35rem;
    min-height: 0;
}

.GlobalSearch-resultsContainerVertical {
    max-height: 93%;
}

.GlobalSearch-container {
    flex: 1;
    display: flex; /* Propagate flex behavior to children */
    flex-direction: column;
    overflow: hidden;
}

.GlobalSearch-resultsContainerVerticalHasResults {
    overflow: hidden auto;
}

.GlobalSearch-results {
    overflow-y: auto;
}

.GlobalSearch-maxResults {
    color: #004085;
    background: var(--info-blue-subtle);
    border: var(--info-blue-subtle);
}

.GlobalSearch-resetButton {
    color: var(--text-subtle);
}

.GlobalSearch-resetButton:hover {
    color: var(--primary) !important;
    text-decoration: underline !important;
}

.GlobalSearch-resetButton:focus {
    color: var(--primary) !important;
}

.GlobalSearch-verticalSeparator {
    height: 100%;
    width: 2px;
    border-right: 1px solid var(--border-subtle);
}

.GlobalSearch-spinner {
    width: 0.875rem;
    height: 0.875rem;
    border-width: 0.1em;
}

.GradeRatesSummary {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.GradeRatesSummary-filterRow {
    display: flex;
    flex-grow: 0;
}

.GradeRatesSummary-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.GradeRatesSummary-noRatesHelperText {
    padding: 10px 0 0 10px;
}

.GradeRatesSummary-consolidatedRatesBlock {
    padding-top: 15px;
}

.table .GradeRatesSummary-tableHeader {
    width: 100%;
    top: 20px;
}

.GradeRatesSummary-valueStartEndHeader {
    position: sticky;
    top: -1px;
    margin: 10px 0;
    background-color: var(--surface-default);
}

.GradeRatesSummary-columnHeader {
    white-space: nowrap;
}

.GradesEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.GradesEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.GradesEditor-tabContent {
    padding-top: 15px;
    height: 100%;
    overflow-x: hidden;
}

.GradesEditor-formTabContent {
    margin-left: -15px;
}

.GradesEditor-tabPane {
    height: 100%;
}

.GradesEditor-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.GradesEditor-tabsBlock > div {
    flex-grow: 0;
}

.GradesEditor-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}

.GradesEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.GradesEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.GradesEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.GradesEditor-editorPaneHeaderText {
    display: flex;
}

.GradesEditor-isDefaultIcon {
    font-size: 18px;
    padding: 10px 0 0 10px;
}

.GradesEditor-hasHoursIcon {
    font-size: 18px;
    padding: 10px 0 0 10px;
}

.GradesEditor-buttonContainer {
    display: flex;
}

.GradesEditor-markForDeletionButton {
    float: right;
    margin-left: 15px;
}

.GradesEditor-makeDefaultButton {
    float: right;
    margin-left: 15px;
}

@media (width <= 992px) {
    .GradesEditor-body {
        flex-direction: column;
        width: 100%;
    }

    .GradesEditor-treeSelector {
        height: 300px;
        width: 100%;
    }

    .GradesEditor-editorPane {
        padding-top: 15px;
        border-top: 1px solid var(--border-subtle);
    }
}

/* @define GradesSummaryTable */
.GradesSummaryTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.GradesSummaryTable-tableHead {
    flex-grow: 0;
    width: 100%;
}

.GradesSummaryTable-headerCell {
    border-top: none;
    cursor: pointer;
    user-select: none;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.GradesSummaryTable-validationBreadcrumb {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

/* @define HierarchyEditor */

/* stylelint-disable-next-line */
.HierarchyEditor > .Header-main {
    border-bottom: none;
}

.HierarchyEditor-body {
    padding: 15px;
}

.HierarchyEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.HierarchyEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.HierarchyEditor-linkToHighestAncestorEntityMarkedForDeletion {
    color: #806420;
    text-decoration: underline;
}

.HierarchyEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.HierarchyEditor-editorPaneHeaderText {
    margin: 0;
}

.HierarchyEditor-editorPaneHeaderButtonContainer {
    display: flex;
}

.HierarchyEditor-remoteLinkButton {
    float: right;
    margin-left: 15px;
}

.HierarchyEditor-addChildEntityButton {
    float: right;
    margin-left: 15px;
}

.HierarchyEditor-tabs {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.HierarchyEditor-tab {
    height: 100%;
}

.HierarchyEditor-tabContent {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: calc(100vh - 140px);
    max-height: calc(100vh - 140px);
}

.HierarchyEditor-tabContent--body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.HierarchyEditor-formTabContent {
    margin-left: -15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.HierarchyEditor-tabTitle {
    display: flex;
    align-items: center;
    gap: 6px;
}

.WorkerHeaderInfo {
    color: var(--text-subtle);
}

.WorkerHeaderInfo-item {
    font-size: 0.875rem;
}

/* @define HierarchyLevelsEditor */
.HierarchyLevelsEditor {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.HierarchyLevelsEditor-removeRowButton {
    text-decoration: none;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.HierarchyLevelsEditor > .Header-main {
    border-bottom: none;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.HierarchyLevelsEditor-table > .GenericTable-tableContainer > table {
    table-layout: fixed;
}

.HierarchyLevelsEditor-body {
    padding: 1rem;
    overflow: hidden;
}

a.ImpersonationIcon {
    background-color: var(--orange-marketing-600);
    margin-left: 2px;
    margin-right: 5px;
    border-radius: 2px;
    padding-left: 7px;
    color: var(--text-inverse);
}

.ImpersonationIcon:hover {
    color: var(--text-inverse);
}

.ImpersonationIcon:has(.NavBar-menuLabel:not(.is-minified)) {
    height: fit-content;
    margin-bottom: 5px;
    padding-right: 0;
}

.clr-swatches button {
    width: 26px;
    height: 26px;
}

.clr-field {
    display: inline;
    position: relative;
}

.clr-field button {
    border-bottom-left-radius: 0.25rem;
    border-top-left-radius: 0.25rem;
    left: 0;
    right: auto;
    width: 80px;
}

.clr-field input {
    padding-left: calc(80px + 0.75rem);
}

/* @define CurrencyCodeInput */

/* stylelint-disable plugin/selector-bem-pattern -- these variables violate the expected naming it wants them with the ComponentName too */
.CurrencyCodeInput {
    --currency-input-row-height: 47px;
    --currency-input-max-results: 5;
}

/* stylelint-end plugin/selector-bem-pattern */

.CurrencyCodeInput .list-group {
    max-height: calc(var(--currency-input-row-height) * var(--currency-input-max-results));
}

.vc-popover-content-wrapper.is-interactive .vc-popover-content-wrapper {
    /* This is to solve the issue of the un-aligned month/year popup. See DEVO-15816 */
    transform: translate3d(43px, 38px, 0) !important;
}

.DateTimeInput .vc-am-pm .active {
    background-color: var(--primary) !important;
}

.DateTimeInput .vc-am-pm button:focus {
    border-color: var(--primary) !important;
}

.RadioInput-box {
    display: inline-block;
    align-items: center;
    position: relative;
}

.RadioInput-input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.RadioInput-label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    cursor: pointer;
    border: 1px solid var(--border-subtle);
    border-radius: var(--border-radius-default);
    background: var(--surface-default);
    min-height: 38px;
    padding: 0.375em 1.25em 0.375em 0.75em;
    user-select: none;
    transition:
        background 0.15s,
        border 0.15s,
        color 0.15s;
    box-sizing: border-box;
    font-weight: var(--font-weight-regular);
}

.RadioInput-dot {
    display: inline-block;
    width: 1.1em;
    height: 1.1em;
    margin-right: 0.5em;
    border-radius: 50%;
    border: 1px solid var(--border-default);
    background: var(--surface-default);
    box-sizing: border-box;
    position: relative;
    transition: border-color 0.15s;
    z-index: 1;
    vertical-align: middle;
}

/* Colored ring, flush to edge, white center, when checked */
.RadioInput-dot::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border-radius: 50%;
    pointer-events: none;
    border: 0.25rem solid transparent;
    background: var(--surface-default);
    box-sizing: border-box;
    transition:
        border-color 0.18s,
        border-width 0.18s;
}

.RadioInput-input:checked + .RadioInput-label .RadioInput-dot::after {
    border-color: var(--primary);
}

.RadioInput-label:hover,
.RadioInput-input:focus + .RadioInput-label {
    border-color: var(--primary);
    background: var(--primary-subtle);
}

.RadioInput-input:checked + .RadioInput-label {
    background-color: var(--primary-subtle);
    border-color: var(--border-primary);
}

.RadioInput-input:focus + .RadioInput-label {
    box-shadow: 0 0 0 3px rgb(0 123 255 / 20%);
}

/* @define RemoteJobInput */
.RemoteJobInput-remoteSearchResults {
    min-width: 1000px;
    height: 20vh;
    overflow-y: auto;
    border: 1px solid lightgray;
    background-color: var(--surface-default);
    z-index: 1000000;
}

.RemoteJobInput-remoteSearchResultsRow {
    cursor: pointer;
    user-select: none;
}

.RemoteJobInput-remoteSearchResultsRow,
.RemoteJobInput-remoteSearchNoResultsRow {
    font-weight: var(--font-weight-regular);
}

/* stylelint-disable plugin/selector-bem-pattern -- these selectors violate the SUIT pattern */
.table-success .RemoteJobInput-remoteSearchResults th {
    border-color: lightgray;
}

.table-success .RemoteJobInput-remoteSearchResultsRow td {
    border: none;
}
/* stylelint-enable plugin/selector-bem-pattern */

.RemoteJobInput-remoteSearchResultsRow:hover td {
    background-color: var(--interactive-primary-13);
}

.RemoteJobInput-remoteSearchResultsRow.is-unselectable {
    cursor: not-allowed;
    color: lightgray;
}

.RemoteJobInput-remoteSearchResultsRow.is-selected {
    font-weight: var(--font-weight-bold);
    background-color: #ececec;
}

/* @define StarRatingInput */
.StarRatingInput-star {
    padding-right: 3px;
    color: #ccc;
}

.StarRatingInput-star.is-filled {
    color: var(--primary);
}

.StarRatingInput.is-disabled .StarRatingInput-star {
    color: #777;
}

.StarRatingInput.is-readOnly .StarRatingInput-star {
    color: #000;
}

.Tags {
    padding: 0 5px 5px;
    height: 100%;
}

.Tags.is-disabled {
    cursor: default;
    background: #e9ecef; /* couldn't find an existing variable for this */
}

.Tags:focus-within {
    border: 1px solid var(--primary);
    box-shadow: 0 0 0 0.2rem rgb(var(--interactive-primary-d2-base) / 25%);
}

.Tags.is-valid:focus-within {
    border: 1px solid var(--success);
    box-shadow: 0 0 0 0.2rem rgb(var(--success-green-d3-base) / 25%);
}

.Tags.is-invalid:focus-within {
    border: 1px solid var(--danger);
    box-shadow: 0 0 0 0.2rem rgb(220 53 69 / 25%);
}

.Tags-tagsList {
    list-style-type: none;
    padding: 0;
    margin: 0;
    overflow: auto;
}

.Tags-tagContainer {
    display: flex;
    align-items: center;
}

.Tags-tagText {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 5px;
}

.Tags-deleteTagButton {
    white-space: nowrap;
}

.Tags-tag {
    float: left;
    margin: 5px 5px 0 0;
    border: 1px solid var(--primary-accent);
    border-radius: 5px;
    padding: 0 5px;
    max-width: 150px;
}

.Tags-deleteTagIcon {
    cursor: pointer;
}

.Tags-deleteTagIcon.is-disabled {
    cursor: default;
}

.Tags-tag.is-deleted {
    text-decoration: line-through;
    cursor: pointer;
}

.Tags-tag.is-valid {
    border: 1px solid var(--success);
}

.Tags-tag.is-invalid {
    border: 1px solid var(--danger);
}

.Tags-tag.is-focused {
    background-color: var(--primary);
    color: white;
    border-color: var(--primary);
}

.Tags-tag.is-focused .Tags-deleteTagIcon {
    color: white;
}

.Tags-inputContainer {
    display: flex;
    min-width: 150px;
}

.Tags-input {
    border: none;
    margin-top: 5px;
    width: 100%;
    flex: 1;
}

.Tags-input.is-invalid {
    color: var(--danger);
}

.Tags-input:focus {
    outline: none;
}

.Tags-inputOptionLabel {
    background-color: var(--primary-accent);
    font-weight: bolder;
    color: var(--primary);
}

/* Dropdown positioning styles */
.Tags .Tags-suggestionMenu {
    position: absolute;
    z-index: 1000000;
}

.Tags .Tags-suggestionMenu.show {
    display: block;
    overflow: auto;
    max-height: 200px;
}

/* @define JobAndJobGroupHeader */

.JobAndJobGroupHeader {
    padding: 24px 24px 16px;
}

.JobAndJobGroupHeader-titleActionContainer {
    gap: 8px;
}

.JobAndJobGroupHeader-circleDivider {
    font-size: 2px;
    margin: 0 8px;
    color: var(--text-subtle);
}

.JobAndJobGroupHeader-remoteLinkingButton:focus {
    box-shadow: none;
    padding: 0;
}

.JobAndJobGroupHeader-subtitleText {
    color: var(--text-subtle);
}

.JobAndJobGroupHeader-actionButtons {
    gap: 8px;
    display: flex;
}

.JobAndJobGroupHeader-claimedBy {
    color: var(--primary);
    font-weight: var(--font-weight-bold);
}

.JobAndJobGroupHeader-lockedBy {
    color: var(--text-warning);
    font-weight: var(--font-weight-bold);
}

/* stylelint-disable plugin/selector-bem-pattern */

/* we need to disable stylelint here because descendant or child selectors violates SUIT conventions */
.JobAndJobGroupHeader-followingButton .dropdown-menu {
    min-width: 278px;
}

.JobAndJobGroupHeader-selectedFollowingType button.dropdown-item:disabled {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--text-primary);
}
/* stylelint-enable plugin/selector-bem-pattern */

/* @define JobAndJobGroupWorkflowTransition */

/* stylelint-disable plugin/selector-bem-pattern */
.JobAndJobGroupWorkflowTransition-dropdownButton .dropdown-toggle {
    background: var(--primary-subtle);
    border-radius: 50px;
    color: var(--primary);
    border: none;
}

.JobAndJobGroupWorkflowTransition-dropdownButton .dropdown-item {
    padding: 8px 12px;
}

.JobAndJobGroupWorkflowTransition-dropdownButton.show .btn-secondary.dropdown-toggle,
.JobAndJobGroupWorkflowTransition-dropdownButton .btn-secondary.dropdown-toggle:focus,
.JobAndJobGroupWorkflowTransition-dropdownButton .btn-secondary.dropdown-toggle:active {
    background-color: var(--primary-subtle);
    color: var(--primary);

    /* Not using the css variable here (supposed to be text-link-color) because of the alpha */
    box-shadow: 0 0 0 3.2px #7059e840;
}

.JobAndJobGroupWorkflowTransition-dropdownButton .dropdown-menu.show {
    margin-top: 8px;
    border-radius: 8px;
    border: 1px solid var(--border-default);
    padding: 8px 0;
    max-height: 350px;
    overflow-y: auto;
    min-width: 250px;
}

.JobAndJobGroupWorkflowTransition-dropdownButton .popover:has(.JobAndJobGroupWorkflowTransition-infoConditionsTitle) .arrow::after {
    border-bottom-color: var(--warning);
}

.JobAndJobGroupWorkflowTransition-dropdownButton .popover {
    width: 390px;
    max-width: 80vw;
    border-radius: 4px;
}

.JobAndJobGroupWorkflowTransition-dropdownButton .popover-body {
    padding: 0;
}

.JobAndJobGroupWorkflowTransition-dropdownButton .popover:not(.bs-popover-bottom) .JobAndJobGroupWorkflowTransition-infoConditionsTitle::after {
    display: none;
}

/* stylelint-enable plugin/selector-bem-pattern */

.JobAndJobGroupWorkflowTransition-info {
    width: 30px;
    height: 30px;
    border: 1px solid var(--border-subtle);
    background-color: var(--white);

    /* Abdul: the icon has an important text-primary class attached, that's why I added this here */
    color: var(--icon-subtle) !important;
    border-radius: 4px;
}

.JobAndJobGroupWorkflowTransition-info:focus {
    /* Not using the css variable here (supposed to be text-link-color) because of the alpha */
    box-shadow: 0 0 0 3.2px #7059e840;
}

.JobAndJobGroupWorkflowTransition-infoConditionsTitle {
    background: var(--warning);
    color: var(--text-inverse);
    padding: 20px 16px;
    border-radius: 4px 4px 0 0;
    font-weight: var(--font-weight-bold);
    position: relative;
}

.JobAndJobGroupWorkflowTransition-infoConditions {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.JobAndJobGroupWorkflowTransition-infoCondition {
    color: var(--text-accent);
    width: 380px;
    max-width: 100%;
    display: flex;
    align-items: start;
}

.JobAndJobGroupWorkflowTransition-infoCondition:not(:last-child) {
    margin-bottom: 24px;
}

/* @define JobAndJobGroupParentCard */

.JobAndJobGroupParentCard--container {
    background-color: var(--surface-subtle-light);
    padding: 12px;
    border: var(--border-subtle) solid 1px;
    width: 100%;
}

.JobAndJobGroupParentCard--wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
}

.JobAndJobGroupParentCard--actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
}

/* @define JobEditor */

.JobEditor-loadingSpinner {
    font-size: 10vh;
}

.JobEditor-body {
    padding: 1rem;
    overflow: hidden;
}

.JobEditorKeyPersonnelInput-Wrapper {
    display: flex;
    align-items: center;
    height: 50px;
}

.JobEditorKeyPersonnelInput-LabelWrapper {
    width: 40%;
}

.JobEditorKeyPersonnelInput-ValueWrapper {
    width: 60%;
    position: relative;
}

.JobEditorKeyPersonnelInput-Value {
    display: flex;
    flex-direction: column;
}

.JobEditorKeyPersonnelInput-ReadOnly {
    max-width: 100%; /* keeps the values constrained to their box */
}

/* @define JobGroupEditor */

.JobGroupEditor-loadingSpinner {
    font-size: 10vh;
}

.JobGroupEditor-tabs {
    padding-left: 24px;
    padding-right: 24px;
}

.JobHyperLink-islink {
    cursor: pointer;
}

.JobHyperLink-isnotlink {
    cursor: default;
    display: inline;
}

.JobLookup-filter {
    margin-bottom: 15px;
}

.JobLookup-textInput {
    max-width: 400px;
}

.JobLookup-alert {
    margin: 15px 0;
}

.JobLookup-results {
    margin-bottom: 15px;
    max-height: 200px;
    overflow-y: auto;
}

.JobLookup-results thead {
    z-index: 1000000;
}

.JobLookup-results-link-separator {
    margin: 5px;
}

.JobLookup-results th,
.JobLookup-results td {
    padding-right: 15px;
}

.Header-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    border-bottom: 1px solid rgb(0 0 0 / 10%);
}

.Header-mainHeading {
    font-size: 19px;
    margin: 0;
}

.Header-saveButton.is-invalid {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23ffffff' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23ffffff' stroke='none'/%3e%3c/svg%3e");
    padding-right: calc(1.5em + 0.75rem);
    background-repeat: no-repeat;
    background-position: center right calc(0.375em + 0.1875rem);
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.EntityEditorPane {
    border-left: 1px solid rgb(0 0 0 / 10%);
    display: flex;
    align-items: center;
    flex-direction: column;
    min-height: 100%;
    height: auto;
    overflow-y: auto;
}

.EntityEditorPane-selectEntityText {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.EntityEditorPane-header {
    flex-grow: 0;
    width: 100%;
    padding: 15px;
}

.EntityEditorPane-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
    padding: 15px;
}

@media (width <= 992px) {
    .EntityEditorPane {
        min-height: unset;
        height: unset;
        overflow-y: unset;
    }
}

/* define TreeSelector */
.TreeSelector {
    padding-top: 15px;
    display: flex;
    flex-direction: column;
    height: 100%;

    /* respect parent max-height if set while a specific height is not */
    max-height: inherit;

    /* overriding col-sm-3 padding so we can have the tree scrollbar on the edge */
    padding-right: 0;
}

.TreeSelector-slot {
    flex-grow: 0;
    margin-bottom: 1em;

    /* setting padding to restore even padding on both sides */
    padding-right: 15px;
}

.TreeSelector-controls {
    /* setting padding to restore even padding on both sides */
    padding-right: calc(4px + var(--scroll-width));
    display: flex;
}

.TreeSelector-tree {
    flex-grow: 1;
    flex-shrink: 1;
    overflow-y: auto;
}

/* @define NavBar */

@keyframes scale-out-hor-left {
    0% {
        transform: scaleX(1);
        transform-origin: 0 0;
        opacity: 1;
    }

    100% {
        transform: scaleX(0);
        transform-origin: 0 0;
        opacity: 0;
    }
}

.NavBar-dayshapeIcon,
.NavBar-dayshapeLogo {
    background-color: white;
    border-radius: 2px;
    border-color: var(--neutral-deep-grey-14);
    height: 38px;
    object-fit: cover;
}

.NavBar-logoWrapper {
    height: 42px;
    margin: 5px 5px 30px;
}

.NavBar-dayshapeLogo {
    width: 100%;
}

.NavBar-dayshapeLogo.is-minified {
    animation: scale-out-hor-left 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    position: absolute;
    opacity: 0;
}

.NavBar-menuInner {
    left: 0;
    position: relative;
    transition: left 150ms ease-in;
    display: flex;
    flex-shrink: 1;
    min-height: 100px;
    height: 100%;
}

.NavBar-menuIcon {
    width: 1.25rem;
    position: relative;
    line-height: normal;
    top: -2px;
}

.NavBar-menuInner.is-minified {
    width: 100%;
}

.NavBar-menuInner.is-subMenuVisible {
    left: -100%;
}

.NavBar.is-subMenuVisible {
    z-index: 905;
    transition: none;
}

.NavBar-menuInner.is-minified.is-subMenuVisible {
    left: 0;
}

.NavBar-mainMenu {
    flex: 1 1 0;
    min-width: 180px;
    transition: min-width 150ms linear;
    display: flex;
    flex-direction: column;
}

.NavBar-mainMenu.is-minified {
    min-width: 48px;
}

.NavBar-subMenuHeading {
    min-width: 180px;
}

.NavBar-menuLink,
.NavBar-environmentInfo {
    height: 40px;
    line-height: normal;
    padding: 12px 10px;
    color: var(--text-white);
    transition: all 200ms ease-in;
    display: flex;
    align-items: center;
}

.NavBar-menuLink:hover {
    color: var(--text-white);
    text-decoration: none;
}

.NavBar-subMenuHeadingIcon {
    padding: 8px 12px 10px 0;
}

.NavBar-expandButton,
.NavBar-expandButton:hover,
.NavBar-expandButton:active {
    background-color: var(--neutral-deep-grey-14) !important; /* Would otherwise be overridden by dayshape-bootstrap.css */
    height: 31px;
    width: 40px;
    display: flex;
    border-radius: 5px 0 0 5px;
    cursor: pointer;
    transition: all 0.1s linear 0s;
    align-items: center;
    margin-top: 15px;
    margin-bottom: 15px;
    align-self: flex-end;
    border: 0;
    padding: 0;
}

.NavBar-expandIcon {
    color: var(--deep-black);
    margin-left: 5px;
}

.NavBar-expandButton:hover .NavBar-expandIcon {
    font-weight: 900;
}

.NavBar {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 904;
    height: 100vh;
    background-color: var(--deep-black);
    display: flex;
    flex-direction: column;
    transition: 150ms ease-in;
    overflow: clip; /* prevent overflow for submenu sliding animation */
    width: 180px;
}

.NavBar-mainMenuContent {
    padding: 0;
    margin: 0;
    line-height: 0.5em;
    list-style: none;
    position: relative;
    overflow-y: auto;
}

.NavBar-menuBottom {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    flex-direction: column;
    width: 100%;
}

.NavBar-expander {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.NavBar-menuLabel {
    margin-left: 0.5rem;
}

.NavBar-menuLabel.is-minified {
    display: none;
}

.NavBar-separator {
    min-height: 0 !important; /* Would otherwise be overridden by main-nav.css */
}

.NavBar-hr {
    color: var(--neutral-grey-d3);
    border-top: solid 1px;
    margin: 15px 5px;
}

.NavBar-li {
    min-height: 42px;
}

.NavBar-chevron {
    display: none;
    position: absolute;
    right: 5px;
    text-align: end;
    width: 1.25rem;
}

.NavBar-subMenuHeadingLink:hover .NavBar-chevron.is-minified {
    display: contents;
    position: absolute;
    right: 5px;
    bottom: 10px;
}

.NavBar-menuLink:hover .NavBar-chevron {
    display: inline-block;
}

.NavBar-li:has(a.is-active) {
    border-left: solid 3px var(--text-white);
}

.NavBar-li:hover .NavBar-menuLabel,
.NavBar-menuLink.is-active .NavBar-menuLabel {
    font-weight: 500;
}

.NavBar-li:hover .NavBar-menuIcon,
.NavBar-li:hover .NavBar-chevron,
.NavBar-menuLink.is-active .NavBar-menuIcon {
    font-weight: 900;
}

.NavBar-environmentInfo,
.NavBar-li:has(.NavBar-menuLink:not(.is-active)) {
    border-left: solid 3px transparent;
}

.NavBar-li:hover:has(.NavBar-menuLink:not(.is-active)) {
    border-left: solid 3px var(--text-white);
}

.NavBar.is-minified {
    width: 48px;
}

.NavBar-expander.is-minified {
    justify-content: flex-end;
}

.NavBar-subMenuWrapper {
    height: 100%;
    max-width: 300px; /* max-width to prevent texts to carry on the page - increase if you think that more space for text is needed */
}

.NavBar-subMenu {
    display: flex;
    height: 100%;
    flex-direction: column;
}

.NavBar-subMenuContent {
    overflow-y: auto;
    padding: 0;
    margin: 0;
    line-height: 0.5em;
    list-style: none;
}

.NavBar-subMenu.is-minified {
    background-color: var(--deep-black);
    border-left: 1px solid #5e5e5e;
    padding-bottom: 10px;
    padding-top: 10px;
    position: fixed;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.NavBar-subMenuWrapper.is-minified.is-subMenuVisible {
    display: block;
}

.NavBar-subMenuCloser {
    position: fixed;
    width: 100%;
    height: 100%;
}

.NavBar-versionLabel {
    color: var(--text-white);
    padding: 8px;
}

/* Notifications */
.NavBar-menuIcon--hasNotification::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    top: -3px;
    left: 9px;
    background-color: var(--text-white);
}

.NavBar-li:hover .NavBar-menuIcon--hasNotification::after,
.NavBar-menuLink.is-active .NavBar-menuIcon--hasNotification::after {
    border: 2px solid var(--deep-black);
    width: 14px;
    height: 14px;
    border-radius: 7px;
    top: -5px;
    left: 7px;
}

.NavBar-notifications:not(.is-available) {
    cursor: not-allowed;
    opacity: 0.5;
}

/* @define OdlPanel */
.OdlPanel-odlSearchLabel {
    color: var(--text-accent);
}

/* we need this class name to use a computed class in BlankSlate */

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.OdlPanelSplashScreen-subText {
    color: var(--text-subtle);
}

.OdlPanel--unreachableGIS {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.OdlPanel-resultItems {
    overflow-y: auto;
    min-height: 0;
}

.OdlPanel-selectedItem {
    overflow-y: auto;
    min-height: 0;
}

.OdlPanel-searchResults {
    min-height: 0;
}

.OdlPanel-loader {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.OdlPanel-container {
    border-radius: var(--cc-border-radius);
    border-color: var(--border-subtle);
    border-width: 1px;
    border-style: solid;
}

.OdlPanel-container--selected {
    background-color: var(--surface-subtle-light);
}

.OdlPanel-container--search {
    background-color: var(--surface-subtle-light);
    min-height: 60vh;
}

.OdlPanel-subheading {
    font-weight: var(--font-weight-semibold);
    line-height: 20px;
}

.OdlPanel-reselectButton {
    background-color: var(--surface-subtle-dark);
}

/* @define OdlSearchResultItem */
.OdlSearchResultItem-info {
    color: var(--text-subtle);
    width: fit-content;
    max-width: 100%;
}

.OdlSearchResultItem {
    background-color: var(--surface-default);
    border-color: var(--border-subtle);
    border-width: 1px;
    border-style: solid;
    border-radius: 0;
}

.OdlSearchResultItem:first-of-type {
    border-radius: var(--cc-border-radius) var(--cc-border-radius) 0 0;
}

.OdlSearchResultItem:last-of-type {
    border-radius: 0 0 var(--cc-border-radius) var(--cc-border-radius);
}

.OdlSearchResultItem-isLinked {
    cursor: not-allowed;
}

.OdlSearchResultItem-isLinkedText {
    color: var(--text-disabled);
}

.OdlSearchResultItem-isSelectable {
    cursor: pointer;
}

.OdlSearchResultItem-isSelectable:hover {
    background: var(--surface-list-item-hover);
}

.OdlSearchResultItem:focus {
    background: var(--surface-list-item-hover);
}

.OdlSearchResultItem-selectedItem {
    border-radius: 4px;
    background-color: var(--surface-default);
    border-color: var(--border-subtle);
    border-width: 1px;
    border-style: solid;
}

.OdlSearchResultItem-validationErrorIndicator {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: 4px;
    vertical-align: middle;
    border-radius: 50%;
    background-color: var(--danger-strong);
}

/* @define OdlValidationIssues */
.OdlValidationIssues-container {
    border-color: var(--border-subtle);
    border-width: 1px;
    border-style: solid;
    border-radius: 8px;
    background-color: var(--surface-default);
}

.OdlValidationIssues-subheading {
    font-weight: 600;
    line-height: 20px;
}

.OdlValidationIssues-text {
    color: var(--text-accent);
}

.OdlValidationIssues-icon {
    color: var(--icon-subtle);
    width: var(--icon-size-default);
    height: var(--icon-size-default);
}

.ReferenceDataExportsTable-tableContainer {
    margin: 10px 10px 0;
    border-top: 1px solid #dee2e6;
}

.ReferenceDataExportsTable-tableContainer td {
    vertical-align: middle;
}

.ReferenceDataExportsTable-headerCell--setting {
    width: 30%;
}

.ReferenceDataExportsTable-headerCell--download {
    width: 50px;
}

.ReferenceDataExportsTable-noRowsToDisplay {
    display: flex;
    justify-content: center;
}

.RemoteLinkIcon {
    padding: 10px 0 0 10px;
    font-size: 18px;
}

.ReportQueryBuilder {
    position: relative;
    overflow: hidden;
}

.ReportQueryBuilder-mainContainer {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.ReportQueryBuilder-header {
    flex-flow: row nowrap;
    position: relative;
}

@media (width <= 1000px) {
    .ReportQueryBuilder-header {
        flex-flow: row wrap;
    }
}

.ReportQueryBuilder-header > div {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    flex-basis: auto;
}

.ReportQueryBuilder-headerInput {
    width: 15rem;
}

.ReportQueryBuilder-reverseEllipsis {
    direction: rtl;
    text-align: left;
}

.ReportQueryBuilder-openSavedReportsModalButton {
    flex-shrink: 2;
}

.ReportQueryBuilder-reportTitle {
    padding-left: 30px;
    padding-right: 10px;
    flex-grow: 1;
    min-width: 200px;
}

.ReportQueryBuilder-tabs,
.ReportQueryBuilder-tabs .tabs .tab-content {
    flex-shrink: 1;
    min-height: 1vh;
    flex-grow: 1;
}

.ReportQueryBuilder-tabsModal,
.ReportQueryBuilder-tabsModal .tabs .tab-content {
    height: 65vh;
}

.ReportQueryBuilder-tabs .tabs {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.ReportQueryBuilder-filtersTabContent {
    height: 100%;
    display: flex;
    flex-wrap: nowrap;
}

.ReportQueryBuilder-tab {
    background-color: transparent;
    height: 100%;
    padding: 5px 0;
    display: flex;
}

.ReportQueryBuilder-activeFiltersContainer {
    display: flex;
    flex-grow: 1;
    flex-direction: row;
    justify-content: flex-start;
    overflow: auto hidden;
    height: 100%;
    padding-right: 0.5rem;
}

.filter-transition-enter-active {
    transition: all 0.5s;
}

.filter-transition-enter,
.filter-transition-leave-to {
    opacity: 0;
    transform: translateX(-10px);
}

.ReportQueryBuilder-reportControls {
    flex-shrink: 0;
    display: flex;
    gap: 0.5em;
}

.ReportQueryBuilder-headerOptionsContainer {
    padding: 0.25rem 0.75rem;
    display: flex;
}

#report-modal-wrapper .ReportQueryBuilder {
    height: 100%;
}

.ReportResults {
    display: flex;
    flex-direction: column;
}

.ReportResults-table {
    flex-shrink: 1;
    min-height: 20vh;
}

.ReportResults-table-claimantsCell .claim-btn {
    min-width: 65px;
}

.ReportResults-table-claimantsCell .unclaim-btn {
    min-width: 80px;
}

.ReportResults-modal-selection-error {
    color: var(--danger);
}

.ReportResults-modal-selection-warning {
    color: var(--warning);
}

#report-modal-wrapper .ReportResults {
    height: 100%;
}

.ReportSelector-columnsFlex {
    display: flex;
}

.ReportSelector-leftColumn {
    padding: 20px 15px;
    height: inherit;
    overflow-y: auto;
}

.ReportSelector-rightColumn {
    border-left: 1px solid #d4d4d4;
    overflow-y: auto;
}

@media (width >= 720px) {
    .ReportSelector-leftColumn {
        width: 80%;
    }

    .ReportSelector-rightColumn {
        min-width: 300px;
        width: 20%;
    }

    .ReportSelector-columnsFlex {
        height: calc(100vh - 72px);
    }
}

.ReportSelector-rightColumnUpper {
    padding: 13px 10px 31px;
    border-bottom: 1px solid #d4d4d4;
}

.ReportSelector-rightColumnLower {
    overflow: hidden;
    height: 100%;
}

.ReportSelector-rightColumn-divider {
    display: block;
}

.ReportSelector-rightColumn-empty {
    padding: 10px;
    height: inherit;
}

.ReportSelector-rightColumn-populated {
    height: inherit;
    display: flex;
    flex-direction: column;
}

/* @define RollInto; weak */
.RollInto-modal {
    overflow: hidden !important;
}

.RollInto-radio {
    margin: 10px;
}

.RollInto-dateLabel {
    margin-bottom: 10px;
}

.RollInto-searchConfiguration {
    margin: 0 -15px;
}

.RollInto-selectedItem {
    border-radius: 0.25rem;
    border: 1px solid #ced4da;
}

.RollInto-stepText {
    color: var(--text-emphasis);
    align-self: center;
}

.RollInto-modalBody {
    height: 600px;
    display: flex;
    flex-direction: column;
    gap: 2.25rem;
}

.RollInto-radioContainer {
    display: flex;
    gap: 1rem;
}

.RollInto-radioInput {
    flex: 1;
}

.RollInto-radioInputLabel {
    justify-content: start;
}

.RollInto-searchInput {
    padding: 0 !important; /* !important is needed to override .p-1 used in GlobalSearch */

    /* These two rules are to stop the search input focus border being clipped */
    overflow: initial;
    width: 100%;
}

/* The following is hacked together to get engagement search results to scroll properly in the modal body */
.RollInto-searchFormGroup {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.RollInto-searchFormGroup .FormGroup-body {
    display: flex;
    height: 0;
    flex: 1;
}

.RollInto-searchFormGroup .FormGroup-label {
    flex: 0 1;
}

.RollInto-searchInput .GlobalSearch-resultsContainerVertical {
    height: 0;
    flex: 1;
}

/* Another hack to override .mt-3 used in the EngagementSearch component */
/* stylelint-disable-next-line selector-id-pattern */
.RollInto-searchInput #Engagement-search-input-group {
    margin-top: 0 !important;
}

.resourceRequirementsModal-dialog {
    min-height: 600px;
    position: relative;
}

.resourceRequirementsModal-dialog .modal-body {
    /* Want to position the sidebar relative to the dialog element, so revert position: relative here */
    position: static;
    padding: 1rem 0;
}

.resourceRequirementsModal-dialog .modal-header {
    padding: 1rem 15px;
}

.resourceRequirementsModal-dialog .modal-footer {
    padding: 1rem 15px;
}

.SkillsTableGroup .FormGroup-body {
    position: static;
}

.resourceRequirementsModal-Modal-Wrapper {
    min-height: 450px;
}

.ResourceRequirementsModal-Modal-Wrapper .custom-checkbox {
    margin: 15px;
}

.SkillsTable select {
    max-width: 250px;
}

.SkillsTable .table td {
    vertical-align: middle;
}

/* @define SkillsEditor */
.SkillsEditor {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: calc(100vh - 140px);
    max-height: calc(100vh - 140px);
}

.SkillsEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.SkillsEditor-sidebar {
    max-height: calc(100vh - 140px);
    overflow-y: auto;
    padding-right: 0.5rem;
}

.SkillsEditor-main {
    padding-left: 1rem;
}

/* Hide original left border in stacked layout */
@media (width <= 992px) {
    .SkillsEditor-sidebar {
        max-height: 300px;
        border-right: none;
    }

    .SkillsEditor-main {
        border-top: 1px solid #e9ecef;
        padding-top: 1rem;
        padding-left: 0;
    }
}

.SkillsEditor-editorPane {
    width: 100%;
}

.SkillsEditor-addTraitButton {
    float: right;
    margin-left: 15px;
}

.SkillsEditor-modalHeader {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.SkillsEditor-modalCloseIcon {
    color: grey;
    cursor: pointer;
    margin-right: 5px;
    margin-top: 5px;
}

.SkillsEditor-modalUserNotInDefaultLocaleWarning {
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 20px;
}

.SkillsEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.SkillsEditor-markedForDeletionBannerText {
    max-width: 85%;
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.SkillsEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.SkillsEditor-editorPaneHeaderText {
    margin: 0;
}

.SkillsEditor-linkToHighestAncestorEntityMarkedForDeletion {
    color: #806420;
    text-decoration: underline;
}

.SolverHistorySummaryTable-pagination {
    gap: 0.7rem;
    padding: 0.75rem; /* Same as table cell */
}

.SolverHistorySummaryTable-tableHead {
    font-weight: 500;
}

.SuitabilityComponent .row {
    padding: 10px 3px;
}

.SuitabilityComponent-displayName {
    margin-left: -15px;
}

.SuitabilityComponent-displayName .fa-flag {
    margin-left: 10px;
}

.SuitabilityComponent-rangeCol {
    display: flex;
    align-items: center;
}

.SuitabilityComponent-description {
    padding: 12px 0;
    margin-bottom: 30px;
    white-space: pre-line;
    color: #6c757d;
}

.SuitabilityComponent-buttonsCol {
    margin-left: auto;
    padding-left: 0;
    padding-right: 0;
}

.SuitabilityComponent .row.showInfo {
    border-bottom-style: none;
}

.SuitabilityComponent-row:hover,
.SuitabilityComponent-row.highlighted {
    background-color: var(--surface-subtle-light);
}

.SuitabilityConfigEditor-weightingsTab.active {
    display: flex;
}

.SuitabilityConfigEditor-tabLabel {
    align-items: center;
    display: flex;
}

.SuitabilityConfigEditor .TabGroup-validationIcon {
    margin-left: 6px;
}

.SuitabilityConfigEditor .SuitabilityWeightingsTable {
    overflow-y: auto;
    padding: 0 18px;
    max-height: calc(100vh - 205px); /* 205px accounts for height occupied by tabs at the top of the screen */
    width: 66.6%;
}

.SuitabilityConfigEditor .SuitabilityPieChart {
    padding-left: 18px;
    width: 33.3%;
    position: relative;
}

.SuitabilityConfigEditor-thresholdsTab {
    margin-top: 30px;
    margin-left: 2px;
    width: 50%;
}

.SuitabilityPieChart {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* This is a wrapper div. Applying % width directly to the canvas element forces its width to 0 */
.SuitabilityPieChart-chart {
    /* Additional pixels account for padding on grandparents
       We're happy for the pie chart labels to extend into padding whitespace
     */
    left: -18px;
    width: calc(100% + 18px + 15px);
}

.SuitabilityPieChart-invalidOverlay {
    align-items: center;
    background-color: rgb(255 255 255 / 90%);
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-top: 35px;
    position: absolute;
    width: 100%;
}

.SuitabilityPieChart-header {
    position: absolute;
    text-align: center;
    top: 35px;
    width: 100%;
}

.SuitabilityPieChart-totalPercentage {
    font-size: 19px;
    top: 30px;
    position: absolute;
    width: 100%;
}

.SuitabilityPieChart-totalPercentage.is-valid {
    color: var(--success);
}

.SuitabilityPieChart-totalPercentage.is-invalid {
    color: var(--danger);
}

/* AR: This could presumably be made available for general use in Vue components,
but I'm keeping the namespace scoped for now */
.SuitabilityPieChart-fade-enter-active,
.SuitabilityPieChart-fade-leave-active {
    transition: opacity 0.3s;
}

.SuitabilityPieChart-fade-enter,
.SuitabilityPieChart-fade-leave-to {
    opacity: 0;
}

.SuitabilityWeightingsTable {
    margin: 30px 0 10px;
}

.SuitabilityWeightingsTable .table-header {
    font-weight: var(--font-weight-bold);
    padding-right: 4px;
    padding-top: 4px;
    margin-bottom: 0.5rem;
}

.SuitabilityWeightingsTable-category {
    margin: 55px 0;
}

.SuitabilityWeightingsTable-category:first-of-type {
    margin-top: 0;
}

.SuitabilityWeightingsTable-header {
    border-bottom: 2px solid #dee2e6;
}

.SuitabilityWeightingsTable-header-fullWidthContent {
    display: flex;
    align-items: flex-start;
    padding: 2px 3px;
}

.SuitabilityWeightingsTable-description {
    padding: 12px 15px 15px 0;
    color: #6c757d;
    border-top: 1px solid rgb(203 206 207 / 30%);
}

.SuitabilityWeightingsTable-headerInfo {
    display: inline-block;
    width: 100%;
}

.SuitabilityWeightingsTable .info-button {
    color: var(--primary);
    cursor: pointer;
    text-align: right;
}

.SuitabilityWeightingsTable .row {
    border-bottom: 1px solid #dee2e6;
    display: flex;
    align-items: center;
}

/* temporary tertiary dropdown button styles before they become a thing in storybook */
.SuitabilityWeightingsTable .btn-outline-secondary {
    border: none;
    background: #f8f9fa;
    color: var(--primary);
}

.SuitabilityWeightingsTable .btn-outline-secondary:hover {
    border: none;
    background: #e5e7ea;
}

.SuitabilityWeightingsTable .btn-outline-secondary:focus,
.SuitabilityWeightingsTable .btn-outline-secondary.focus {
    background: #e5e7ea;
}

.SuitabilityWeightingsTable .btn-outline-secondary:not(:disabled, .disabled).active,
.SuitabilityWeightingsTable .btn-outline-secondary:not(:disabled, .disabled):active,
.SuitabilityWeightingsTable .show > .btn-outline-secondary.dropdown-toggle {
    background: #e5e7ea;
    color: var(--primary);
    box-shadow: 0 0 0 0.2rem rgb(108 117 125 / 50%);
}

/* @define SystemConfig */
.SystemConfig-body {
    padding: 15px;
}

/* visual grabbed from BookingTypes.css */
.SystemConfig-editorHeader {
    border-bottom: none;
}

.SystemConfig-tabBody {
    padding: 30px 0;
}

/* define TabGroup */
.TabGroup-tabLabel {
    display: flex;
    align-items: center;
}

.TabGroup-tabValidation {
    margin-left: 5px;
}

/* @define TraitsEditor */
.TraitsEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.TraitsEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.TraitsEditor-addTraitButton {
    float: right;
    margin-left: 15px;
}

.TraitsEditor-modalHeader {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.TraitsEditor-modalCloseIcon {
    color: grey;
    cursor: pointer;
    margin-right: 5px;
    margin-top: 5px;
}

.TraitsEditor-modalUserNotInDefaultLocaleWarning {
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 20px;
}

.TraitsEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.TraitsEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.TraitsEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.TraitsEditor-editorPaneHeaderText {
    margin: 0;
}

.TraitsEditor-linkToHighestAncestorEntityMarkedForDeletion {
    color: #806420;
    text-decoration: underline;
}

/* @define UserGroupCreateModal */
.UserGroupCreateModal-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    width: 100%;
}

.UserGroupCreateModal-footerLeft {
    margin: 0.25rem;
}

.UserGroupCreateModal-footerRight {
    padding: 0;
    border: none;
}

.UserGroupCreateModal-step2 {
    height: 100%;
}

/* @define UserGroupsEditor */
.UserGroupsEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.UserGroupsEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.UserGroupsEditor-tabContent {
    padding-left: 3px;
    padding-top: 15px;
    height: 100%;
    overflow-x: hidden;
}

.UserGroupsEditor-tabPane {
    height: 100%;
}

.UserGroupsEditor-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

/* stylelint-disable plugin/selector-bem-pattern -- these selectors violate the SUIT pattern */
.UserGroupsEditor-tabsBlock > div {
    flex-grow: 0;
}

.UserGroupsEditor-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}
/* stylelint-enable plugin/selector-bem-pattern */

.UserGroupsEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.UserGroupsEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.UserGroupsEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.UserGroupsEditor-editorPaneHeaderText {
    margin: 0;
}

.UserProfile-header {
    display: flex;
    border-bottom: 1px solid #ddd;
}

.UserProfile-heading,
.UserProfile-subheading {
    margin: 5px 15px;
}

.UserProfile-subheading {
    font-weight: 500;
}

.UserProfile-userName {
    margin: 0;
    padding: 0;
}

.UserProfile-userGuid,
.UserProfile-userEmail {
    max-width: 400px;
}

.UserProfile-userEmail {
    margin-left: 20px;
}

.UserProfile-body {
    padding: 45px 30px 30px 45px;
}

.UserProfile-saveButtonImage {
    margin-left: 5px;
}

.UserProfile-savingToastBody {
    display: flex;
    align-items: center;
}

.UserProfile-savingToastImage {
    font-size: 5vh;
}

.UserProfile-calendarButtonRow {
    display: flex;
    align-items: baseline;
}

.UserProfile-calendarOption {
    margin-top: 10px;
}

.UserProfile-calendarUrl {
    padding: 0 10px;
}

/* @define UsersEditor */
.UsersEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.UsersEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.UsersEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.UsersEditor-editorPaneHeaderText {
    margin: 0;
}

.UsersEditor-createButton {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    align-self: flex-start;
}

.UsersEditor-editorPane {
    position: static;
}

.UsersEditor-suspendLinkContainer {
    gap: var(--padding-xs);
}

.UsersEditor-suspendLinkInfoIcon {
    color: var(--icon-subtle);
}

.UsersEditor-suspendLinkInfoIcon:hover {
    color: var(--icon-primary);
    cursor: pointer;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.UserCreateModal-dialog .modal-body {
    position: static;
    padding: 1rem 0;
}

/* @define WorkhoursEditor */
.WorkhoursEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.WorkhoursEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.WorkhoursEditor-entityEditorPane {
    width: 100%;
}

.BulkRollForwardSearchForm {
    padding: 1rem;
    position: sticky;
    top: 0;
    z-index: 5;
    background: white;
}

.BulkRollForwardSearchForm-TopBar {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.BulkRollForwardSearchForm-Container {
    display: block;
    flex-direction: column;
    align-items: flex-start;
}

.BulkRollForwardSearchForm-ResetButton {
    margin-right: 10px;
}

.BulkRollForwardSearchForm-Controls {
    display: flex;
    flex-flow: row wrap;
}

.BulkRollForwardSearchForm-Spinner {
    width: 100%;
    font-size: 1em;
}

.BulkRollForwardSearchForm-FormGroup {
    max-width: 16%;
}

.BulkRollForwardSearchForm-UsageExplainerText {
    flex-grow: 5;
}

.BulkRollForwardSearchForm-ButtonContainer {
    display: flex;
    justify-content: flex-end;
}

.BulkRollForwardSearchForm-ResultsContainer {
    height: 20px;
    padding-left: 16px;
    padding-bottom: 34px;
}

.BulkRollForwardStagingForm-table {
    table-layout: fixed;
    margin-bottom: 0;
}

.BulkRollForwardStagingForm-table th {
    border-left: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}

.BulkRollForwardStagingForm-table td {
    vertical-align: middle;
    word-break: break-word;
    border: 1px solid #dee2e6;
}

.BulkRollForwardStagingForm-tableHeader {
    background-color: var(--surface-default);
    z-index: 2;
}

.BulkRollForwardStagingForm-tableHeader th {
    overflow-x: clip;
}

th.BulkRollForwardStagingForm-nameColumnHeader {
    width: 15%;
    padding-left: 34px;
}

.BulkRollForwardStagingForm-workFlowColumnHeader {
    width: 12%;
}

.BulkRollForwardStagingForm-toggleResourcingHeader {
    display: flex;
}

.BulkRollForwardStagingForm-toggleCopyResourcingText {
    overflow-wrap: anywhere;
}

.BulkRollForwardStagingForm-nameCellContent {
    display: flex;
    align-items: center;
}

.BulkRollForwardStagingForm-nameCellContent .BulkRollForwardStagingForm-nameCellContentName {
    display: flex;
    flex-direction: column;
    max-width: 90%;
}

.BulkRollForwardStagingForm-nameCellContent .BulkRollForwardStagingForm-nameCellContentName.indented {
    padding-left: 1.5em;
}

.BulkRollForwardStagingForm-indented-1 {
    margin-left: 1em;
}

.BulkRollForwardStagingForm-indented-2 {
    margin-left: 2em;
}

.BulkRollForwardStagingForm-row {
    padding-left: 0;
    width: 100%;
}

.BulkRollForwardStagingForm-chevronContainer {
    width: 18px;
    height: 18px;
}

.BulkRollForwardStagingForm-chevron {
    max-width: 1.25em;
    min-width: 1.25em;
    cursor: pointer;
    margin-right: 0.5em;
}

.BulkRollForwardStagingForm-actionButtonsContainer {
    width: 72px;
    display: flex;
    justify-content: space-between;
}

.BulkRollForwardStagingForm-actionButton {
    width: 32px;
    height: 32px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.BulkRollForwardStagingForm-saveSuccessText {
    /* color: #2c8434; */
    color: var(--success);
}

.BulkRollForwardStagingForm-actionButtonsColumnHeader {
    width: 100px;
}

.BulkRollForwardCreatorSearchModal-dialog {
    /*
    height property should maybe be removed later on once we start adding content,
    exists for now to help the modal match the designs */
    height: 100%;
    min-width: calc(100vw - 60px);
}

.modal-body.BulkRollForwardCreatorSearchModal-body {
    overflow-y: auto;
    width: 100%;
    display: flex;
    padding-bottom: 1rem;
}

.BulkRollForwardCreatorSearchModal-body {
    padding: 0;
}

.BulkRollForwardCreatorSearchModal-dialog .modal-footer {
    justify-content: space-between;
}

.BulkRollForwardCreatorSearchModal-buttonCancel {
    margin: 2px;
}

.BulkRollForwardCreatorSearchModal-buttonAddToRollForwardView {
    margin: 2px;
}

.BulkRollForwardCreatorSearchForm-container {
    flex-grow: 0;
    width: 100%;
}

.BulkRollForwardCreatorSearchResultsTable-container {
    flex-grow: 1;
    width: 100%;
}

.BulkRollForwardCreatorSearchResultsTable {
    table-layout: fixed;

    /**
        To make sticky elements boards work correctly.
        https://stackoverflow.com/questions/50361698/border-style-do-not-work-with-sticky-position-element
    **/
    border-collapse: separate;
    border-spacing: 0;
}

.BulkRollForwardCreatorSearchResultsTable thead {
    z-index: 2;
}

.BulkRollForwardCreatorSearchResultsTable th,
.BulkRollForwardCreatorSearchResultsTable td {
    border-left: 1px solid #dee2e6;
}

.BulkRollForwardCreatorSearchResultsTable tbody tr:first-child td {
    border-top: 0;
}

.u-table th.BulkRollForwardCreatorSearchResultsTable-headerCell {
    border-top: 1px solid #dee2e6;
}

th.BulkRollForwardCreatorSearchResultsTable-ColumnName {
    border-left: 0;
}

.BulkRollForwardCreatorSearchResultsTable-Name {
    padding-left: 5px;
}

.BulkRollForwardCreatorSearchResultsTable-CellCheckbox {
    width: 46px;
    text-align: center;
}

th.BulkRollForwardCreatorSearchResultsTable-CellCheckbox,
td.BulkRollForwardCreatorSearchResultsTable-CellCheckbox {
    border-right: 0;
}

td.BulkRollForwardCreatorSearchResultsTable-CellName {
    padding-left: 0;
}

th.BulkRollForwardCreatorSearchResultsTable-CellName,
td.BulkRollForwardCreatorSearchResultsTable-CellName {
    border-left: 0;
}

.BulkRollForwardCreatorSearchResultsTable-CellNameContentWrapper {
    display: flex;
}

.BulkRollForwardCreatorSearchResultsTable-name {
    word-break: break-word;
}

.BulkRollForwardCreatorSearchResultsTable-chevronContainer {
    width: 18px;
    height: 18px;
}

.BulkRollForwardCreatorSearchResultsTable-indented-1 {
    margin-left: 1em;
}

.BulkRollForwardCreatorSearchResultsTable-indented-2 {
    margin-left: 2em;
}

.BulkRollForwardCreatorSearchResultsTable-headerContainer {
    z-index: 9;
}

.ClientRestrictionsForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.ClientRestrictionsForm-firstRow {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.ClientRestrictionsForm-formGroup {
    padding-top: 15px;
    width: 50%;
}

.ClientRestrictionsForm-formGroup label {
    padding-left: 0;
}

.ClientRestrictionsForm-formGroup .FormGroup-body {
    padding-left: 0;
}

.ClientRestrictionsForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.ClientRestrictionsForm-table {
    width: 100%;
}

.ClientRestrictionsForm-tableBody {
    line-height: 2.5;
}

.ClientRestrictionsForm-forDeletion {
    text-decoration: line-through;
}

@media (width <= 992px) {
    .ClientRestrictionsForm-body {
        margin-bottom: 56px;
    }
}

/* @define Avatar */

.Avatar {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: var(--primary);
    font-size: 14px;
    text-transform: uppercase;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: var(--font-weight-bold);
    color: var(--text-inverse);
    cursor: pointer;
}

.Avatar.is-multiName {
    background: var(--surface-accent);
    color: var(--text-accent);
}

/* @define AvatarStack */

.AvatarStack {
    display: flex;
    align-items: center;
}

.AvatarStack-avatar {
    border: 2px solid var(--text-inverse);
}

.AvatarStack-avatar:not(:first-child) {
    margin-left: -10px;
}

.BlankSlate {
    max-width: 700px;
    margin: 0 auto;
    max-height: 100%;
}

.BlankSlate-image {
    width: 200px;
    height: 170px;
    margin: 0 auto;
    display: block;
}

.BlankSlate-subText {
    color: var(--text-subtle);
    margin-top: 12px;
}

.BlankSlate-action {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: center;
}

.BlankSlate--lightGrey {
    background-color: var(--surface-subtle-light);
    border: solid 1px var(--border-subtle);
}

/* @define CollapsibleSection */
.CollapsibleSection {
    border: 1px solid #ced4da;
    border-radius: 4px;
    margin-bottom: 15px;
}

.CollapsibleSection-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
}

.CollapsibleSection-header.is-enabled {
    cursor: pointer;
}

.CollapsibleSection-sectionHeaderLeft {
    display: flex;
    align-items: center;
}

.CollapsibleSection-expanderButton,
.CollapsibleSection-expanderButton:hover,
.CollapsibleSection-expanderButton:active {
    color: inherit !important; /* Would otherwise be overridden by Btn.css */
    padding: 3px 0 0;
    flex-shrink: 0;
}

.CollapsibleSection-chevron {
    font-size: 19px;
    transform: rotate(0);
    transition: transform 0.2s;
}

.CollapsibleSection-expanded .CollapsibleSection-chevron {
    transform: rotate(90deg);
}

.CollapsibleSection-headerText {
    margin: 0 0 0 5px;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-wrap: wrap;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.CollapsibleSection-sectionHeaderRight {
    cursor: default;
    flex-shrink: 0;
}

.CollapsibleSection-body {
    padding: 0 15px 15px;
}

/** Sidebar variant overrides **/
.CollapsibleSection-sidebar {
    border-radius: 0;
    margin-bottom: 0;
    border-width: 1px 0 0;
    border-color: var(--border-subtle);
}

.CollapsibleSection-sidebar:last-child {
    border-bottom-width: 1px; /* gives the last list item a bottom border */
}

.CollapsibleSection-sidebar .CollapsibleSection-header {
    padding: 12px 0.5rem;
    align-items: baseline;
    color: var(--text-accent);
    text-transform: uppercase;
}

.CollapsibleSection-sidebar .CollapsibleSection-header.is-enabled:hover {
    background-color: var(--border-subtle);
}

.CollapsibleSection-sidebar .CollapsibleSection-header:not(.is-enabled) {
    background-color: var(--text-white);
    color: var(--text-disabled);
}

.CollapsibleSection-sidebar .CollapsibleSection-sectionHeaderLeft {
    align-items: baseline;
}

.CollapsibleSection-sidebar .CollapsibleSection-chevron {
    font-size: 1rem;
}

.CollapsibleSection-sidebar .CollapsibleSection-header:not(.is-enabled) .CollapsibleSection-chevron {
    visibility: hidden;
}

.CollapsibleSection-sidebar .CollapsibleSection-body {
    padding: 0;
}

.EntityIcon-badge {
    height: 2.5rem;
    aspect-ratio: 1/1;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    position: relative;
}

.EntityIcon-badge--task {
    background-color: var(--data-blue-500);
    color: white;
}

.EntityIcon-badge--job {
    background-color: var(--data-blue-500);
    color: white;
}

.EntityIcon-badge--worker {
    background-color: var(--primary);
    color: white;
}

.EntityIcon-badge--jobGroup--rank0 {
    background-color: var(--surface-eng-00);
    color: white;
}

.EntityIcon-badge--jobGroup--rank1 {
    background-color: var(--surface-eng-01);
    color: white;
}

.EntityIcon-badge--jobGroup--rank2 {
    background-color: var(--surface-eng-02);
    color: white;
}

.EntityIcon-badge--jobGroup--rank3 {
    background-color: var(--surface-eng-03);
}

.EntityIcon-badge--jobGroup--rank4 {
    background-color: var(--surface-eng-04);
    color: white;
}

.EntityIcon-badge--unavailability {
    background-color: var(--secondary-accent);
}

.EntityIcon-circleIndicator {
    display: block;
    width: 6px;
    height: 6px;
    outline: 1.5px solid white;
    border-radius: 50%;
    background-color: var(--danger);
    position: absolute;
    top: 2px;
    right: 1px;
    z-index: 999;
}

.EntityIcon--notActive {
    background-color: var(--icon-disabled);
}

.EditableFilterLogic-groupAppend,
.EditableFilterLogic-itemAppend {
    margin-top: 0.75rem;
}

.EditableFilterLogic-itemOperator > .btn {
    margin-right: 0.5rem;
    width: 69px;
    border: 1px dashed var(--borders-border-default, #babfd1);
    opacity: 1;
}

.EditableFilterLogic-groupAddButton,
.EditableFilterLogic-groupOperatorButton,
.EditableFilterLogic-itemAddButton {
    margin-right: 0.5rem;
    width: 69px;
}

.EditableFilterLogic-toggleButtons {
    height: 35px;
}

.EditableFilterLogic-item .form-control {
    height: inherit;
}

.EditableFilterLogic-toggleButtons > .btn:not(:first-child) {
    margin-left: 0.5rem;
}

.EditableFilterLogic-itemDeleteButton {
    padding-left: 0.5rem;
}

.EditableFilterLogic-itemDeletePlaceholder {
    width: 36.5px;
}

.EditableFilterLogic-itemDropdown > .dropdown {
    width: 100%;
}

.EditableFilterLogic-itemDropdown > .dropdown > .dropdown-toggle {
    text-align: left;
}

.EditableFilterLogic-itemDropdown > .dropdown > .dropdown-toggle::after {
    float: right;
    margin-top: 7px;
}

.FilterLogic-wrapper > .FilterLogic-group {
    padding: 0;
    border: 0;
    background: rgb(0 0 0 / 0%);
}

.FilterLogic-wrapper {
    padding: 0;
    margin: 0;
    margin-top: 1rem;
}

.FilterLogic-group {
    margin-top: 0.75rem;
    padding: 1.5rem;
    border-radius: 0.25rem;
    border: 1px solid var(--borders-border-default, #babfd1);
    background: var(--surface-subtle-light);
}

.FilterLogic-groupChild:not(:first-child) {
    margin-top: 0.75rem;
}

.FilterLogicExample-wrapper {
    min-width: 28.75rem;
    padding: 0.5rem 0.75rem;
}

.FilterLogicExample-header {
    height: 42px;
    font-size: 14px;
    color: var(--gray-600);
    text-transform: uppercase;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.FilterLogicExample-description {
    min-height: 26px;
    margin-bottom: 1rem;
}

.SkillsFilterExample-wrapper {
    min-width: 52rem;
    padding: 0.5rem 0.75rem;
}

.SkillsFilterExample-header {
    height: 42px;
    font-size: 14px;
    color: var(--gray-600);
    text-transform: uppercase;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.SkillsFilterExample-description {
    min-height: 26px;
    margin-bottom: 1rem;
}

.NestedDropdown {
    position: static;
}

.NestedDropdown-toggleButton:hover,
.NestedDropdown-toggleButton:focus {
    background-color: var(--surface-list-item-hover);
    color: var(--neutral-black-14);
}

.NestedDropdown.selected,
.NestedDropdown.selected .NestedDropdown-toggleButton {
    background-color: var(--surface-list-item-selected-dark);
    color: var(--text-inverse);
}

.dropdown-menu:has(.NestedDropdown-submenu),
.NestedDropdown-submenu {
    /* AR: To line up the nested dropdown ul with the parent, the two uls have to overlap slightly. These border-color and border-width changes keep the overlapped uls lined up. */
    border: 1px solid #ccc;
}

.dropdown-menu:has(.NestedDropdown-submenu.show) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.NestedDropdown-submenu.show {
    display: flex;
    flex-direction: column;
    margin-top: -1px;
    margin-left: -1px;
    top: 0;
    left: 100%;
    min-height: calc(100% + 2px);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.NestedDropdown-toggleButtonContent {
    padding-right: 26px;
    width: 100%;
}

.NestedDropdown-toggleIcon {
    line-height: 1.5;
}

/* AR 30/09/22
    These styles are structured to match what is in gantt.css.
    This is so the two are not competing with each other.
    When gantt.css is eventually retired, we may want to restructure this component to better follow the SUIT methodology
 */

.SelectableDropdownItem .dropdown-selected {
    font-weight: var(--font-weight-semibold);
}

.SelectableDropdownItem .dropdown-item.disabled {
    color: #c8c8c8;
}

.SelectableDropdownItem .dropdown-item:hover,
.SelectableDropdownItem .dropdown-item:focus {
    background-color: var(--surface-list-item-hover);
    color: var(--neutral-black-14);
}

.SelectableDropdownItem-buttonContent {
    padding-right: 39px;
}

.SelectableDropdownItem .dropdown-selected .SelectableDropdownItem-buttonContent {
    padding-right: 26px;
}

.SelectableDropdownItem-icon {
    width: 13px;
}

/* define GenericTable */

.GenericTable {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.GenericTable-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.GenericTable-rowSummary {
    align-self: flex-end;
}

.GenericTable-filters {
    display: flex;
    z-index: 100;
    gap: 1rem;
}

.GenericTable-infoIcon {
    margin-right: 20px;
}

.GenericTable-tableContainer {
    overflow-y: auto;
}

.GenericTable-table--bordered {
    border-collapse: separate;
    border-spacing: 0;
}

.GenericTable-table--bordered td,
.GenericTable-table--bordered th {
    border-top: 0;
    border-bottom: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}

.GenericTable-table--bordered thead tr th {
    border-top: 1px solid #dee2e6;
}

.GenericTable-table--bordered tr td:first-of-type,
.GenericTable-table--bordered tr th:first-of-type {
    border-left: 1px solid #dee2e6;
}

.GenericTable-table--card tr:first-child th:first-child {
    border-top-left-radius: 4px;
}

.GenericTable-table--card tr:first-child th:last-child {
    border-top-right-radius: 4px;
}

.GenericTable-table--card tr:last-child td:first-child {
    border-bottom-left-radius: 4px;
}

.GenericTable-table--card tr:last-child td:last-child {
    border-bottom-right-radius: 4px;
}

.GenericTable-tableContainer tbody tr:last-of-type {
    border-bottom: 2px solid #dee2e6;
}

.GenericTable-table--fixed {
    table-layout: fixed;
}

.GenericTable-tableHead {
    z-index: 100;
}

.GenericTable-headerCell {
    user-select: none;
}

.GenericTable-headerCellContent {
    display: flex;
    align-items: start;
}

.GenericTable-sortIcon {
    margin-top: 0.25rem;
    margin-right: 0.5rem;
    width: unset;
}

.GenericTable-selectionHeaderCell {
    width: 50px;
}

.GenericTable-actionsHeaderCell {
    width: 64px;
}

.GenericTable-row.is-removed .GenericTable-cell {
    text-decoration: line-through;
}

.GenericTable-validationIndicator {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.GenericTable-removeRowButton {
    width: 32px;
    height: 32px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.GenericTable-noRowsToDisplay {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
}

.GenericTable-noRowsToDisplay--card {
    border: 1px solid #dee2e6;
    border-top: 0;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.GenericTable-footer {
    display: flex;
    justify-content: center;
}

.GenericTable-footer--card {
    justify-content: end;
}

.operation-insert-cell {
    color: green;
}

.operation-update-cell {
    color: blue;
}

.operation-delete-cell {
    color: red;
}

.GenericTable-row-checkbox-always-visible {
    position: sticky;
    left: 0;
    background-color: inherit;
}

.GenericTable-header-checkbox-always-visible {
    position: sticky;
    left: 0;
}

.GenericTable-headerTooltipIcon {
    margin-left: 4px;
    color: var(--text-primary);
    cursor: pointer;
    align-self: center;
}

.GenericTable-customButton {
    display: grid;
    align-items: end;
}

.PaginationControls-listItem {
    overflow: visible;
}

.PaginationControls-button {
    border-radius: 0.25rem;
    margin-left: 1px;
    margin-right: 1px;
}

.PaginationControls-ellipsis {
    height: 35px;
    padding: 0.375rem 0.2rem;
    margin-left: -1px;
    user-select: none;
    font-size: 1rem;
    line-height: 1.5;
}

/* @define Tab */

.Tab-navBar {
    display: flex;
    align-items: flex-end;
    padding: 0 var(--padding-lg);
    gap: 16px;
    border-bottom: 1px solid var(--border-subtle);
}

.Tab-navItems {
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    border: none;
    gap: 16px;
    flex: 1 1 auto;
}

.Tab-validationState {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    align-self: self-start;
    transform: translateY(-50%);
}

/* Dropdown menu styling for overflow tabs */
.Tab-moreButtonWrapper {
    flex-shrink: 0;
    display: none;
    position: relative;
    align-items: center;
    justify-content: center;
}

.Tab-dropdownItem {
    border: none;
    background: none;
    position: relative;
    padding-left: var(--padding-xxs);
}

.Tab-dropdownItem:hover {
    background-color: transparent;
}

.Tab-dropdownItemLink {
    gap: 4px;
}

/* stylelint-disable plugin/selector-bem-pattern */
.Tab-dropdownItem--active .dropdown-item {
    color: var(--primary-emphasis);
}

.Tab-navItems .nav-item {
    position: relative;
    flex-shrink: 0;
}

.Tab-navItems .nav-item .nav-link.disabled {
    color: var(--text-disabled);
}

.Tab-navItem--active.nav-link {
    border: none;
}

.Tab-moreButtonWrapper .nav-link,
.Tab-navItems .nav-item .nav-link {
    font-weight: var(--font-weight-semibold);
    padding: 5px var(--padding-xs);
    border: 2px solid transparent;
    line-height: 150%;
    font-size: var(--font-size-medium);
    color: var(--text-accent);
    margin-bottom: 3px;
    display: flex;
    align-items: center;
    gap: 4px;
    background-color: transparent;
}

.Tab-navItems .nav-item .nav-link:active {
    color: var(--primary-emphasis);
}

.Tab-navItems .nav-item .nav-link:active::after,
.Tab-navItems .nav-item .nav-link:hover::after,
.Tab-navBar .Tab-moreButtonWrapper:hover::after,
.Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreButton--active)::after,
.Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreDropdown.show)::after,
.Tab-navItem--active::after {
    content: "";
    width: 100%;
    height: 2px;
    background: var(--surface-primary);
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    border-radius: 2px;
}

.Tab-navItems .nav-item .nav-link:active::after {
    background: var(--primary-emphasis);
}

.Tab-navItems .nav-item .nav-link:focus-visible {
    outline: none;
    border-radius: var(--border-radius-default);
    border: 2px solid var(--border-primary-focus);
}

.Tab-moreDropdown .Tab-moreButton {
    cursor: pointer;
    text-decoration: none;
    background-color: transparent;
    border-radius: var(--border-radius-default);
}

.Tab-moreDropdown .btn:hover {
    color: var(--text-primary);
}

.Tab-moreDropdown .dropdown-menu {
    padding: 0;
    min-width: 200px;
    border-radius: var(--border-radius-default);
    margin-top: var(--padding-xs);
    border: 1px solid var(--border-subtle);

    /* ELEVATION/Dropdown shadow */
    box-shadow: 0 2px 4px 2px rgb(178 178 178 / 30%);
}

.Tab-moreDropdown .dropdown-menu.show {
    padding: var(--padding-xs) var(--padding-xs) var(--padding-xs) 0;
}

.Tab-dropdownItem .dropdown-item {
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-medium);
    color: var(--text-accent);
    display: flex;
    align-items: center;
    position: relative;
    padding: 7px var(--padding-xs);
    background: none;
    border: 2px solid transparent;
}

.Tab-dropdownItem--disabled,
.Tab-dropdownItem--disabled .dropdown-item {
    color: var(--text-disabled);
    cursor: not-allowed;
}

.Tab-dropdownItem .dropdown-item:focus-visible {
    outline: none;
    border-radius: var(--border-radius-default);
    border: 2px solid var(--border-primary-focus);
}

.Tab-dropdownItem .dropdown-item:hover {
    background: none;
}

.Tab-dropdownItem:not(.Tab-dropdownItem--disabled):hover .dropdown-item {
    color: var(--primary-emphasis);
}

/* Vertical tabs */
.Tabs--vertical,
.Tabs--vertical .col-auto {
    height: 100%;
}

.Tabs--vertical .Tab-navBar {
    flex-direction: column;
    align-items: stretch;
    padding: 0;
    gap: var(--padding-sm);
    height: 100%;
    border-bottom: none;
    border-left: 1px solid var(--border-subtle);
}

.Tabs--vertical .Tab-navItems {
    border-bottom: none;
    padding: 0;
    height: 100%;
}

.Tabs--vertical .Tab-navItems .nav-item .nav-link,
.Tabs--vertical .Tab-moreButtonWrapper .Tab-moreDropdown .Tab-moreButton.nav-link {
    margin-bottom: 0;
    margin-left: 3px;
}

.Tabs--vertical .Tab-moreButtonWrapper {
    width: 100%;
    justify-content: flex-start;
}

.Tab-dropdownItem .badge,
.Tab-navItems .nav-item .nav-link .badge {
    padding: var(--padding-xxs) var(--padding-xs);
    font-size: var(--font-size-small);
}

.Tab-navItems .nav-item .nav-link:hover,
.Tab-navItem--active.nav-link.active {
    color: var(--text-primary);
}

.Tab-navItems .nav-item .nav-link:active::after,
.Tab-navItems .nav-item .nav-link:hover::after,
.Tab-navBar .Tab-moreButtonWrapper:hover::after,
.Tabs--vertical .Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreButton--active)::after,
.Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreDropdown.show)::after,
.Tab-navItem--active::after {
    content: "";
    width: 100%;
    height: 2px;
    background: var(--surface-primary);
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    border-radius: 2px;
}

.Tab-moreButtonWrapper .Tab-moreDropdown .Tab-moreButton.nav-link:active,
.Tab-moreButtonWrapper .Tab-moreDropdown .Tab-moreButton.nav-link:focus,
.Tab-moreButtonWrapper .Tab-moreDropdown.show .Tab-moreButton.nav-link {
    color: var(--primary-emphasis);
    background-color: transparent;
    box-shadow: none;
    border: 2px solid var(--border-primary-focus);
    outline: none;
}

.Tab-dropdownItem:not(.Tab-dropdownItem--disabled):hover::after,
.Tab-dropdownItem--active::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--surface-primary);
    border-radius: 2px;
}

.Tabs--vertical .Tab-navItem--active::after,
.Tabs--vertical .Tab-navItems .nav-item .nav-link:active::after,
.Tabs--vertical .Tab-navBar .Tab-moreButtonWrapper:hover::after,
.Tabs--vertical .Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreButton--active)::after,
.Tabs--vertical .Tab-navBar .Tab-moreButtonWrapper:has(.Tab-moreDropdown.show)::after,
.Tabs--vertical .Tab-navItems .nav-item .nav-link:hover::after {
    width: 2px;
    height: 100%;
}

/* stylelint-enable plugin/selector-bem-pattern */

.TreeControls-buttonBar {
    margin-top: 5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 100%;
    margin-bottom: 5px;
}

.TreeControls__button {
    max-height: calc(1.5 * 1rem);
}

@media (width <= 1000px) {
    .TreeControls__button {
        margin-bottom: 0.25rem;
    }
}

.TreeControls-left {
    display: flex;
    flex-flow: row nowrap;
    flex-shrink: 1;
    min-width: 3rem;
}

.TreeControls-shrinkableCount {
    margin-left: 3px;
    flex-shrink: 1;
    min-width: 1rem;
}

.TreeControls-filters {
    flex-shrink: 0;
    display: flex;
    gap: 0.25rem;
}

.TreeControls-selectionReplaceIcon {
    font-size: 0.5em;
}

.TreeControls-selectionReplaceIcon .fa-plus {
    left: 4px;
    top: -6px;
}

.TreeControls__buttons {
    flex: 0 1 100%;
    min-width: 0;
    box-sizing: border-box;
}

.TreeControlsNew-buttonBar {
    margin-top: 5px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    max-height: calc(1.5 * 1rem);
    max-width: 100%;
}

.TreeControlsNew-left {
    display: flex;
    flex-flow: row nowrap;
    flex-shrink: 1;
    min-width: 3rem;
}

.TreeControlsNew-shrinkableCount {
    margin-left: 3px;
    flex-shrink: 1;
    min-width: 1rem;
}

.TreeControlsNew-filters {
    flex-shrink: 0;
}

.TreeControlsNew-selectionReplaceIcon {
    font-size: 0.5em;
}

.TreeControlsNew-selectionReplaceIcon .fa-plus {
    left: 4px;
    top: -6px;
}

/* define TreeInput */
.TreeInput {
    position: relative;
}

.TreeInput-treeView {
    display: none;
    height: 20vh;
    overflow-y: hidden;
    border: 1px solid lightgray;
    background-color: var(--surface-default);
    z-index: 1000000;
    padding: 1px 0 0;
}

.TreeInput-treeView.is-visible {
    display: block;
}

/* These styles are only needed in storybook */
.Storybook-demo .TreeInput-treeView {
    width: 50vw;
}

/* @define TreeView */
.TreeView {
    height: 100%;
    overflow-y: auto;

    /* respect parent max-height if set while a specific height is not */
    max-height: inherit;
}

.TreeView-node {
    user-select: none;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    height: 27px;
}

.TreeView-node.is-selected {
    background-color: #ececec;
}

/* Because this style is defined after .TreeView-node.is-selected, it wins (the selectors have the same specificity otherwise). */
.TreeView-node.is-potentiallySelected {
    background-color: var(--interactive-primary-13);
}

.TreeView-node--leaf {
    display: flex;
    padding-left: var(--fa-width, 1.25em); /* The value of the font awesome fixed width fa-fw class */
}

.TreeView-expander {
    cursor: pointer;
}

.TreeView-invalidItem,
.TreeView-validItem {
    margin-right: 5px;
}

.TreeView-invalidParent,
.TreeView-validParent {
    margin: 0 5px;
}

.TreeView-label {
    flex-grow: 1;
    cursor: default;
}

.TreeView-label.is-selectable {
    cursor: pointer;
}

.TreeView-label.is-selected {
    font-weight: var(--font-weight-bold);
}

.TreeView-label.is-deleted {
    text-decoration: line-through;
}

.TreeView-descendantToggle {
    margin-right: 3px;
    margin-left: auto;
    min-width: 2rem;
    flex-shrink: 0;
}

.TreeView-dataVisibilityToggle {
    display: flex;
    padding: 5px;
    align-items: center;
    border-bottom: 1px solid var(--border-default);
}

/* stylelint-disable-next-line */
.TreeView-dataVisibilityToggle .custom-control-label {
    padding-top: 1px;
}

.TreeView-dataVisibilityToggleLabel {
    padding-right: 5px;
}

.TreeView-dataVisibilityToggleButton {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.TreeView-label--notSelectable {
    color: var(--text-disabled);
}

.TreeView-node--notSelectable:hover {
    background-color: transparent;
}

.TreeView--additionalPadding {
    padding-bottom: 35px;
}

/* @define TreeViewNew */
.TreeViewNew {
    overflow-y: auto;
    height: 100%;

    /* respect parent max-height if set while a specific height is not */
    max-height: inherit;
}

.TreeViewNew-node {
    user-select: none;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    height: 30px;
    padding-left: 4px;
}

/* Because this style is defined after .TreeView-node.is-selected, it wins (the selectors have the same specificity otherwise). */
.TreeViewNew-node.is-potentiallySelected {
    background-color: var(--surface-list-item-hover);
}

.TreeViewNew-node--leaf:not(.is-rootLevel) {
    display: flex;
    padding-left: 0;
}

.TreeViewNew-expander {
    cursor: pointer;
}

.TreeViewNew-checkbox {
    margin-left: 5px;
}

.TreeViewNew-invalidItem,
.TreeViewNew-validItem {
    margin-right: 5px;
}

.TreeViewNew-invalidParent,
.TreeViewNew-validParent {
    margin: 0 5px;
}

.TreeViewNew-label {
    flex-grow: 1;
    cursor: default;
}

.TreeViewNew-label.is-selectable {
    cursor: pointer;
}

.TreeViewNew-node--leaf .TreeViewNew-label:not(.is-selectable) {
    color: var(--text-disabled);
}

.TreeViewNew-label.is-selected {
    font-weight: var(--font-weight-bold);
}

.TreeViewNew-label.is-deleted {
    text-decoration: line-through;
}

.TreeViewNew-nodeCount {
    margin: 0 12px;
    font-size: 12px;
    color: #505467;
}

.TreeViewNew-descendantToggle {
    margin-right: 3px;
    margin-left: auto;
    min-width: 2rem;
    flex-shrink: 0;
}

.ConfigProfileAwareWorkflowSelect.is-hidden {
    display: none;
}

.ConfigProfileAwareWorkflowSelect-hintText {
    margin-top: -20px;
}

.custom-select:disabled {
    background-color: #e9ecef !important;
}

/** @define ConfigProfileCustomFields */
.ConfigProfileCustomFields {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.ConfigProfileCustomFields-addRemoveToggleSection {
    display: flex;
    flex-grow: 0;
    flex-direction: column;
}

.ConfigProfileCustomFields-noneAssociated {
    padding: 0 0 0 20px;
}

.ConfigProfileCustomFields-customFieldsToggle {
    padding: 20px 0 10px 20px;
}

.ConfigProfileCustomFields-addRemoveCustomFieldsButton {
    width: 200px;
    white-space: nowrap;
    padding: 0 20px 20px;
}

/* @define ConfigProfileForm */

.ConfigProfileForm {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.ConfigProfileForm-tabPane {
    height: 100%;
}

.ConfigProfileForm-tabContent {
    height: 100%;
}

.ConfigProfileForm-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

/* stylelint-disable plugin/selector-bem-pattern -- these selectors violate the SUIT pattern */
.ConfigProfileForm-tabsBlock > div {
    flex-grow: 0;
}

.ConfigProfileForm-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}
/* stylelint-enable plugin/selector-bem-pattern */

.ConfigProfileForm-headerContainer {
    display: flex;
    align-items: center;
}

.ConfigProfileForm-headerValidationIndicator {
    margin: 0 0 5px 10px;
}

.ConfigProfileForm-editButton {
    margin: 0 0 5px 10px;
}

.ConfigProfileForm-openConfigProfileUnitsModalLink {
    display: flex;
    align-items: center;
}

.ConfigProfileForm-openConfigProfileUnitsModalLinkText {
    margin-left: 5px;
}

.ConfigProfileForm-unitsValidationIndicator {
    margin-left: 5px;
}

.ConfigProfileGrades {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.ConfigProfileGrades-addRemoveToggleSection {
    display: flex;
    flex-grow: 0;
    flex-direction: column;
}

.ConfigProfileGrades-tableContainer {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.ConfigProfileGrades-tableHead {
    flex-grow: 0;
    width: 100%;
}

.ConfigProfileGrades-headerCell {
    border-top: none;
    cursor: pointer;
    user-select: none;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ConfigProfileGrades-validationBreadcrumb {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.ConfigProfileGrades-noGradesHelperText {
    padding: 0 0 0 20px;
}

.ConfigProfileGrades-GradesToggle {
    padding: 20px 0 10px 20px;
}

.ConfigProfileGrades-gradeCell {
    vertical-align: middle !important;
}

.ConfigProfileGrades-forDeletion .ConfigProfileGrades-gradeCell {
    text-decoration: line-through;
}

.ConfigProfileGrades-actionsColumnHeader {
    width: 64px;
}

.ConfigProfileGrades-actionButton {
    width: 32px;
    height: 32px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ConfigProfileGrades .table {
    table-layout: fixed !important;
}

.ConfigProfileGrades-rows td {
    vertical-align: middle !important;
}

.ConfigProfileGrades-AddRemoveGrades-btn {
    width: 200px;
    white-space: nowrap;
    padding: 0 20px 20px;
}

.AssociatedUnitsTable-table {
    table-layout: fixed;
}

.AssociatedUnitsTable {
    height: 100%;
    overflow-y: auto;
}

.AssociatedUnitsTable-tableHeader {
    background-color: var(--surface-default);
    z-index: 2;
}

.AssociatedUnitsTable-node {
    user-select: none;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
    width: 350px;
}

.AssociatedUnitsTable-expander {
    cursor: pointer;
    padding-right: 12px;
}

.AssociatedUnitsTable-label {
    flex-grow: 1;
    cursor: default;
}

.AssociatedUnitsTable-lockIconCell {
    text-align: right;
    padding-right: 0 !important;
}

.AssociatedUnitsTable-profileCell {
    display: flex;
    align-items: center;
    word-break: break-word;
}

.AssociatedUnitsTable-validationIndicator {
    display: inline-block;
    margin-left: 2px;
    margin-bottom: 1px;
}

/* define ConfigProfileEditModal */

.ConfigProfileEditModal-isActiveLabel {
    color: black;
    font-weight: var(--font-weight-semibold);
}

.ConfigProfileUnitsModal-modalBody {
    padding-top: 0;
    display: flex;
    flex-direction: column;
}

.ConfigProfileUnitsModal-associatedUnitsFilter {
    padding: 15px 0;
    width: 50%;
    flex-grow: 0;
}

.ConfigProfileUnitsModal-associatedUnitsTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: scroll;
    max-height: 100%;
}

/* define ConfigProfileTraits */

.ConfigProfileTraits {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.ConfigProfileTraits-addRemoveToggleSection {
    display: flex;
    flex-grow: 0;
    flex-direction: column;
}

.ConfigProfileTraits-tableContainer {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.ConfigProfileTraits-noneAssociated {
    padding-left: 20px;
}

.ConfigProfileTraits-table {
    table-layout: fixed;
}

.ConfigProfileTraits-tableHeader {
    background-color: var(--surface-default);
    z-index: 2;
}

.ConfigProfileTraits-nameColumn {
    width: 200px;
}

.ConfigProfileTraits-node {
    user-select: none;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-grow: 1;
}

.ConfigProfileTraits-actionsColumnHeader {
    width: 64px;
}

.ConfigProfileTraits-actionButton {
    width: 32px;
    height: 32px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ConfigProfileTraits-forDeletion .ConfigProfileTraits-traitCell {
    text-decoration: line-through;
}

.ConfigProfileTraits-expander {
    cursor: pointer;
    padding-right: 12px;
}

.ConfigProfileTraits-label {
    flex-grow: 1;
    cursor: default;
}

.ConfigProfileTraits-TraitsToggle {
    padding: 20px 0 10px 20px;
}

.ConfigProfileTraits-AddRemoveTraits-btn {
    width: 200px;
    white-space: nowrap;
    padding: 0 20px 20px;
}

/* @define ConfigProfileWorkflows */

.ConfigProfileWorkflows {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.ConfigProfileWorkflows-workflowsToggle {
    padding: 20px 0 10px;
    border-bottom: 1px solid var(--border-subtle);
    margin-left: 15px;
    margin-right: 20px;
}

.ConfigProfileWorkflows-selectionSection {
    padding-top: 5px;
}

.ConfigProfileWorkflows-selection {
    width: 490px;
}

/* @define CustomFieldsModal */
.CustomFieldsModal {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.CustomFieldsModal-dialog .modal-body {
    position: static;
    padding: 1rem 0;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.CustomFieldsModal-count-badge {
    margin-left: 5px;
    font-weight: 500;
    font-size: 11px;
    background: #ddd;
    border-radius: 12px;
    padding: 2px 8px;
    display: inline-block;
}

/* @define DashboardPage */

/* stylelint-disable plugin/selector-bem-pattern */
:root {
    --dashboard-widget-height: 250px; /* A relative unit to express the height of each widget */
}
/* stylelint-enable plugin/selector-bem-pattern */

.DashboardPage {
    background: var(--surface-subtle-light);
    min-height: 100%;
}

.DashboardPage-heading {
    font-size: 1.5rem;
}

/* define ComparatorDropdownButton */
:root {
    --max-rows: 5;
    --row-height: 29px;
}

.ComparatorDropdownButton-Item > .dropdown-item {
    padding: 0.25rem;
}

.ComparatorDropdownButton .dropdown-menu.show {
    max-height: calc(var(--max-rows) * var(--row-height) + 1rem);
    overflow: auto;
}

.MulticurrencyDropdown {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 30%;
    min-width: 150px;
    max-width: 300px;
    margin-bottom: 15px;
}

.MulticurrencyDropdown-select {
    flex-grow: 1;
    margin-right: -1px; /* compensate for border */
    border-radius: 0.25rem 0 0 0.25rem;
}

.MulticurrencyDropdown-icon {
    border-radius: 0;
    border-bottom-right-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}

.DisplayMetricDropdown {
    justify-content: space-between;
    align-items: center;
    width: 30%;
    min-width: 150px;
    max-width: 300px;
    margin-bottom: 15px;
}

.DisplayMetricDropdown-form {
    padding: 3px 20px 10px;
}

.DisplayMetricDropdown-select {
    flex-grow: 1;
    height: 34px;
    margin-right: -1px; /* compensate for border */
}

.EconomicsAdditionalMetricsSection-cell {
    text-align: right;
    height: 24px;
    padding: 0 5px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.EconomicsTableSection-Cost-Cell {
    padding-right: 10px;
}

.EconomicsTableTotalsSection {
    width: 100%;
    display: flex;
    flex-direction: row;
}

.EconomicsTableTotalsSection-CategoryName {
    font-weight: 500;
}

.EconomicsTableTotalsSection-economics {
    display: flex;
    flex-direction: row;
    margin-top: -2px;
}

.EconomicsTableTotalsSection-economics > * {
    border-color: var(--primary);
    border-style: solid;
    border-width: 2px 0;
}

.EconomicsTableTotalsSection-economics > *:first-child {
    border-left-width: 2px;
    border-bottom-left-radius: 0.5rem;
}

.EconomicsTableTotalsSection-economics > *:last-child {
    border-right-width: 2px;
    border-bottom-right-radius: 0.5rem;
}

.EconomicTableTotalsSectionColumn-is-highlighted {
    background-color: hsl(212deg 100% 50% / 5%);
}

.EconomicTableTotalsSectionColumn-padding {
    padding-right: 11px;
}

.JobGroupEconomicsOverview {
    margin-bottom: 0;
    margin-right: 20px;
}

.JobGroupEconomicsOverview .jobed-sum-heading {
    height: 80px;
}

.JobGroupEconomicsOverview .jobed-sum-heading-row {
    height: 129px;
}

.JobGroupEconomicsOverview-Cost-Header {
    padding-right: 8px;
}

.JobGroupEconomicsOverview-Jobs-JobGroups {
    display: flex;
    flex-direction: row;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsRowLabels {
    flex: 1;
    min-width: 265px;
    max-width: 265px;
}

.JobGroupEconomicsOverview-displaySettings {
    margin-bottom: 5px;
}

.JobGroupEconomicsOverview-displaySettingsComparatorDropdownTooltip {
    padding: 3px 20px 10px;
}

.JobGroupEconomicsOverview-displaySettingsComparatorSelect {
    height: 34px;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsSection {
    cursor: pointer;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsTitle {
    font-weight: 500;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsName {
    font-weight: 500;
    max-width: 190px;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsCode {
    max-width: 190px;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsPerson {
    max-width: 190px;
}

.JobGroupEconomicsOverview-Jobs-JobGroupsState {
    max-width: 190px;
}

.JobGroupEconomicsOverview-actualTop {
    padding-right: 0;
}

.JobGroupEconomicsOverview-forecastTop {
    padding-right: 0;
}

.JobGroupEconomicsOverview-currentTop {
    padding-right: 0;
}

.JobGroupEconomicsOverview-comparatorTop {
    padding-right: 0;
}

.JobGroupEconomicsOverview-comparatorFullNamePointerCursor {
    cursor: pointer;
}

.JobGroupEconomicsOverview-comparatorFullNameDefaultCursor {
    cursor: default;
}

.JobGroupEconomicsOverview-comparatorLastUpdatedDatePointerCursor {
    cursor: pointer;
    margin-left: 5px;
}

.JobGroupEconomicsOverview-comparatorLastUpdatedDateDefaultCursor {
    cursor: default;
    margin-left: 5px;
}

.JobGroupEconomicsOverview-comparatorNavigationTooltip {
    cursor: pointer;
}

.JobGroupEconomicsOverview-summaryTableRows {
    flex: 1;
    min-width: 265px;
    max-width: 265px;
}

.JobGroupEconomicsOverview-summaryTableCategoryName {
    font-weight: 500;
}

.JobGroupEconomicsOverview-summaryTableActualMargin {
    margin-right: -11px;
}

.JobGroupEconomicsOverview-summaryTableActualNoMargin {
    margin-right: 0;
}

.JobGroupEconomicsOverview-summaryTableForecastMargin {
    margin-right: -11px;
}

.JobGroupEconomicsOverview-summaryTableForecastNoMargin {
    margin-right: 0;
}

.JobGroupEconomicsOverview-summaryTableCurrentMargin {
    margin-right: -11px;
}

.JobGroupEconomicsOverview-summaryTableCurrentNoMargin {
    margin-right: 0;
}

.JobGroupEconomicsOverview-summaryTableComparatorMargin {
    margin-right: -11px;
}

.JobGroupEconomicsOverview-summaryTableComparatorNoMargin {
    margin-right: 0;
}

.JobGroupEconomicsOverview-rowHeader {
    border-top: 1px solid #ddd;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    padding: 0 15px 0 5px;
    height: 48px;
}

.JobGroupEconomicsOverview-additionalMetrics {
    max-width: 610px;
    background-color: rgb(244 248 255 / 40%);
}

.JobGroupEconomicsOverview-additionalMetrics-sectionHeader {
    text-align: left !important;
    padding-left: 10px;
}

.JobGroupEconomicsOverview-additionalMetrics-col {
    text-align: center;
    height: 100%;
    padding: 5px;
    width: 20%;
}

.JobGroupEconomicsOverview-additionalMetrics-heading {
    font-weight: 500;
    height: 100%;
    display: flex;
    text-align: right;
    align-items: center;
    justify-content: flex-end;
    min-width: 75px;
    padding: 0 5px;
}

.JobGroupEconomicsOverview-additionalMetrics-headingContent {
    width: 100%;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.RatesOverrideSectionTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.RatesOverrideSectionTable-headerCell {
    border-top: none;
}

.RatesOverrideSectionTable-headerCell-interactable {
    cursor: pointer;
    user-select: none;
}

.RatesOverrideSectionTable-tableHead {
    flex-grow: 0;
    width: 100%;
}

.RowGroupingDropdown {
    justify-content: space-between;
    align-items: center;
    width: 30%;
    min-width: 150px;
    max-width: 300px;
    margin-bottom: 15px;
}

.RowGroupingDropdown-form {
    padding: 3px 20px 10px;
}

.RowGroupingDropdown-select {
    flex-grow: 1;
    height: 34px;
    margin-right: -1px; /* compensate for border */
}

/* @define ManageAvailability */
.ManageAvailability-colorBox {
    width: 37px;
    height: 37px;
    border-radius: 50px;
    margin: 0 auto;
    border: 1px solid var(--border-default);
}

.ManageAvailability-tableWrapper {
    width: 100%;
    overflow-x: auto;
}

.ManageAvailability-tableHelpIcon {
    color: var(--text-primary);
    margin-left: 4px;
}

.ManageAvailability-table {
    border-collapse: separate;
    border-spacing: 0;
    min-width: 960px;
    width: 100%;
}

.ManageAvailability-selectColorCell {
    border-top-left-radius: 0.25rem;
    min-width: 140px;
}

.ManageAvailability-tableInputGroup {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ManageAvailability-tableInput {
    width: 80px;
}

.ManageAvailability-workhoursInput {
    width: 70px;
}

.ManageAvailability-cellSubtleText {
    color: var(--text-subtle);
}

.ManageAvailability-specialCell {
    padding: 0 !important;
}

.ManageAvailability-specialCellContent {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    align-items: center;
    width: 220px;
}

.ManageAvailability-specialCellContentMin {
    grid-column: span 3;
}

.ManageAvailability-specialCellContentArrow {
    grid-column: span 2;
    text-align: center;
}

.ManageAvailability-specialCellContentMax {
    grid-column: span 3;
}

.ManageAvailability-specialCellContentUnit {
    grid-column: span 1;
}

/* stylelint-disable plugin/selector-bem-pattern */
.ManageAvailability-specialCellContent span {
    font-weight: 500;
    height: 100%;
    line-height: 61px;
    padding: 0 12px;
}

.ManageAvailability-specialCellContent span.is-modified {
    font-weight: var(--font-weight-bold);
    color: var(--text-primary);
    background-color: var(--surface-primary-subtle);
}

.ManageAvailability-table th,
.ManageAvailability-table td {
    border-color: var(--border-subtle) !important;
}

.ManageAvailability-lastRow td:first-of-type {
    border-bottom-left-radius: 0.25rem;
}

.ManageAvailability-lastRow td:last-of-type {
    border-bottom-right-radius: 0.25rem;
}

.ManageAvailability-table tr:first-of-type td:not(:first-child),
.ManageAvailability-table tr:nth-of-type(2) th {
    background-color: var(--secondary-subtle);
}

.ManageAvailability-table .is-modified {
    font-weight: var(--font-weight-bold);
}

.ManageAvailability-table .is-modified input {
    border-color: #e0d3b3;
    border-width: medium;
    font-weight: var(--font-weight-bold);
}
/* stylelint-enable plugin/selector-bem-pattern */

/* @define ManageRateTypes */

/* @define ExampleEditor */
.ExampleEditor {
    display: flex;
    flex-direction: column;
    height: 100vh;
    max-height: 100vh;
}

.ExampleEditor-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 1em;
    height: 100%;
}

.ExampleEditor-markedForDeletionBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.ExampleEditor-markedForDeletionBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.ExampleEditor-linkToHighestAncestorEntityMarkedForDeletion {
    color: #806420;
    text-decoration: underline;
}

.ExampleEditor-editorPaneHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ExampleEditor-editorPaneHeaderText {
    margin: 0;
}

.ExampleEditor-addChildEntityButton {
    float: right;
    margin-left: 15px;
}

.ExampleEditor-tabs {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.ExampleEditor-tab {
    height: 100%;
}

.ExampleEditor-tabContent {
    padding-top: 15px;
}

.ExampleSummaryTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.ExampleSummaryTable-headerCell {
    border-top: none;
    cursor: pointer;
    user-select: none;
}

.ExampleSummaryTable-tableHead {
    flex-grow: 0;
    width: 100%;
}

.ExampleSummaryTable-validationIndicator {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.AuditHistoryLog {
    padding: 10px 10px 0;
}

.AuditHistoryLog-displayMessages-emptyFieldValue {
    display: inline-block;
}

.AuditHistoryLog-actor-amendedBy {
    color: #777;
}

.AuditHistoryLog-actor-actorFullName {
    color: #212529;
    font-weight: 500;
}

.AuditHistoryLog-timestamp {
    font-size: 11px;
    color: #777;
    padding-bottom: 10px;
}

.AuditHistoryLog-separator {
    border-top: 1px;
    border-style: dashed;
    border-color: #ced4da;
    border-bottom: none;
    margin-bottom: 5px;
}

.AuditHistoryLog .badge {
    background-color: var(--surface-subtle-dark);
    color: var(--text-subtle);
}

.AuditHistoryLogs {
    overflow-y: auto;
}

.CustomMemberFilter-rangeCheckbox {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    margin-bottom: 0.75rem;
}

.CustomMemberFilter-rangeMenu {
    min-width: 320px;
}

.CustomMemberFilter-form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.CustomMemberFilter-description {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.CustomMemberFilter-formGroup {
    flex-basis: content;
    margin-bottom: 12px;
    padding: 0;
    min-width: 150px;
}

.CustomMemberFilter-formGroup .FormGroup-body {
    display: flex;
    margin-bottom: 0;
}

.CustomMemberFilter-formGroup .form-control {
    height: calc(1.5em + 0.75rem + 2px);
}

.CustomMemberFilter-dateGroup {
    width: 100%;
}

.CustomMemberFilter-dateGroup .form-control {
    width: 290px;
}

.GanttFilterControls-toggleAllFilters.custom-control.custom-switch .custom-control-label::before {
    top: 0.125rem;
}

.GanttFilterControls-toggleAllFilters.custom-control.custom-switch .custom-control-label::after {
    top: calc(0.125rem + 2px);
}

.GanttFilterControls-resetFiltersButton {
    padding: 1px 5px 0;
}

.GanttFilterControls-toggleAllFilters.custom-control.custom-switch .custom-control-label {
    font-size: 0.875rem;
}

.GanttSearchTextInput {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: row;
    width: 100%;
}

.GanttSearchTextInput-clearInputButton {
    height: 28px;
}

.GanttSearchTextInput .btn {
    /* removes the default z-index values of 2 given from bootstrap
    this was causing the clear button to render above the filters menu */
    z-index: auto;
}

.IndividualGanttHeader {
    padding: 15px;
    display: grid;
    grid-template:
        "top buttons" 1fr
        "bottom ." 1fr
        / 1fr auto;
    gap: 20px;
}

.IndividualGanttHeader-bottomRow {
    grid-area: bottom;
    display: flex;
    align-items: center;
}

.IndividualGanttHeader-topRow {
    grid-area: top;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.IndividualGanttHeader-scheduleDate {
    flex-shrink: 0;
    margin-right: 10px;
}

.IndividualGanttHeader-createUnavailability {
    min-width: 155px;
}

.IndividualGanttHeader-saveCancelButtons {
    grid-area: buttons;
}

.d-tabs {
    border-bottom: 1px solid #dee2e6;
}

.d-tabs .nav-item:not(:has(> .nav-link.active)):hover {
    background-color: rgb(0 0 0 / 5%);
}

.d-tabs .nav-item a.nav-link:not(.active) {
    background-color: rgb(0 0 0 / 0%);
}

.d-tabs .nav-link.active::after {
    content: "";
    position: absolute;
    background-color: var(--primary);
    bottom: 0;
    height: 4px;
    width: 100%;
}

.d-tabs .nav-link {
    position: relative;
}

.d-tabs .nav-item .nav-link {
    height: 100%;
    padding: 0.5rem 0.75rem;
    border: 0;
}

.d-tabs .nav-item .nav-link.disabled {
    /* AR: so we still get a tooltip when disabled */
    pointer-events: auto;
}

.TabWrapper,
.TabWrapper .tabs {
    height: 100%;
}

.TabWrapper {
    width: 500px;
}

.TabWrapper .tabs {
    display: flex;
    flex-direction: column;
}

.TabWrapper .tab-content {
    overflow-y: auto;
}

.TabWrapper .tabs .nav-item {
    width: 50%;
}

.TabWrapper-popover {
    background-color: #4c5057;
    border: 1px solid rgb(255 255 255 / 20%);
    color: white;
}

.TabWrapper-popover .arrow::before {
    border-bottom-color: rgb(255 255 255 / 25%);
    border-top-color: rgb(255 255 255 / 25%);
}

.TabWrapper-popover .arrow::after {
    border-bottom-color: #4c5057;
    border-top-color: #4c5057;
}

.TabWrapper-popover .popover-body {
    color: inherit;
}

/* This is so the tab hover highlight is not covered by the donut's white background */
.TabWrapper .d-tabs .nav-item .nav-link:not(.active) .PercentageDonutChart {
    background-color: rgb(0 0 0 / 0%);
}

.d-tabs {
    border-color: lightgray;
    border-left-width: 1px;
    border-right-width: 1px;
    border-style: solid;
    border-top: 0;
}

.selection-tab {
    border-color: lightgray;
    border-left-width: 1px;
    border-right-width: 1px;
    border-style: solid;
    border-top: 0;
    border-bottom-width: 1px;
}

.warning-list {
    list-style: none;
    margin-left: 0;
    padding-left: 2em;
    text-indent: -1em;
}

/* z-index is 1 higher than the highest sidebar component behind the wrapper (see extraFunctionalityTemplate) */
.FullHeightSidebarWrapper {
    background: white;
    display: flex;
    flex-direction: column;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 101;
    max-width: 389px; /* this mirrors the gantt.css sidebar width to allow tab nesting */
}

.FullHeightSidebarWrapper-headerWrapper,
.FullHeightSidebarWrapper-subtitle,
.FullHeightSidebarWrapper-default,
.FullHeightSidebarWrapper-actions {
    padding: 0 15px;
}

.FullHeightSidebarWrapper-content {
    flex: 1;
    display: flex; /* Propagate flex behavior to children */
    flex-direction: column;
    overflow: hidden;
}

.FullHeightSidebarWrapper-default {
    flex: 1;
    display: flex; /* Propagate flex behavior to children */
    flex-direction: column;
    overflow: hidden;
}

.FullHeightSidebarWrapper-headerWrapper {
    align-items: center;
    background-color: var(--surface-subtle-light);
    display: flex;
    justify-content: space-between;
    padding-bottom: 10px;
    padding-top: 10px;
}

.FullHeightSidebarWrapper-sidebarHeader {
    color: #5d6067;
    font-size: 16px;
    font-weight: var(--font-weight-bold);
    margin: 0;
}

.FullHeightSidebarWrapper-scrollable {
    overflow-y: auto;
}

.FullHeightSidebarWrapper-subtitle {
    margin: 15px 0 10px;
}

.FullHeightSidebarWrapper-text {
    margin: 10px 0;
}

.FullHeightSidebarWrapper-closeButton {
    align-items: center;
    background-color: var(--surface-subtle-light);
    border: none;
    border-radius: 0.25em;
    display: flex;
    height: 20px;
    justify-content: center;
    padding: 0;
    width: 20px;
}

.FullHeightSidebarWrapper-closeButton:hover,
.FullHeightSidebarWrapper-closeButton:active {
    background-color: #ebebeb;
    color: inherit;
}

.FullHeightSidebarWrapper-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
    padding: 10px 15px;
}

.FullHeightSidebarWrapper-actions .Btn {
    margin-left: 10px;
}

.ResourceSkillsAndExperience-wrapper {
    min-width: 32rem;
    padding: 0.5rem 0.75rem;
    overflow: auto;
    flex-grow: 1;
}

.ResourceSkillsAndExperience-header {
    height: 42px;
    font-size: 14px;
    color: var(--gray-600);
    text-transform: uppercase;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.ResourceSkillsAndExperience-description {
    min-height: 26px;
    margin-bottom: 1rem;
}

@media (width > 576px) {
    /* --breakpoint-sm */
    .EmptyTeam {
        min-width: 300px;
    }
}

.DurationSplitPanel-list {
    list-style-position: inside;
    margin: 0;
    padding: 0;
    overflow: hidden auto;
}

.DurationSplitPanel-listHeader {
    font-size: 18px;
}

.DurationSplitPanel-list li::marker {
    font-size: 18px;
}

.DurationSplitPanel-image {
    height: 28px;
    margin-left: 10px;
    width: 55px;
}

.DurationSplitPanel-info {
    display: flex;
    justify-content: space-between;
    margin-bottom: 18px;
}

.DurationSplitPanel-infoButton {
    flex-shrink: 0;
    height: 36px;
    margin-left: 8px;
    margin-top: -6px;
}

.DurationSplitPanel-additionalInfo {
    margin: 10px 0 30px;
    color: #6c757d;
}

.DurationSplitPanel-formGroup {
    flex-grow: 1;
}

.DurationSplitPanel-formGroup .FormGroup-label,
.DurationSplitPanel-formGroup .FormGroup-body {
    padding-left: 0;
    padding-right: 0;
}

/* locally overwriting ellipsis overflow until we can revise the Form group component globally  Lu: 30-11-2022 */
.DurationSplitPanel-formGroup small {
    -webkit-line-clamp: 2;
    overflow: auto;
    word-break: keep-all;
    hyphens: none;
}

.DurationSplitPanel-formGroup .FormGroup-invalidFeedback.u-oneLine {
    -webkit-line-clamp: 2;
    word-break: keep-all;
}

.DurationSplitPanel-splitDurationButton {
    margin-left: 5px;
    margin-top: 35px;
}

.EffortSplitPanel-header {
    font-size: 18px;
    margin-bottom: 22px;
}

.EffortSplitPanel-image {
    height: 28px;
    margin-left: 10px;
    width: 55px;
}

.EffortSplitPanel-info {
    margin-bottom: 18px;
}

.SingleTaskSplit {
    border-top: 1px dashed #ccc;
    margin-left: -15px;
    margin-right: -15px;
}

.SingleTaskSplit:last-of-type {
    border-bottom: 1px dashed #ccc;
}

.SingleTaskSplit-title {
    font-size: 12px;
    margin: 1em 0;
}

.SingleTaskSplit-title,
.SingleTaskSplit-rangeInput {
    padding-left: 15px;
    padding-right: 15px;
}

.SingleTaskSplit-form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.SingleTaskSplit-formGroup {
    flex-basis: content;
    margin-bottom: 12px;
    padding: 0;
}

.SingleTaskSplit-formGroup .FormGroup-body {
    display: flex;
    margin-bottom: 0;
}

/* AR: accounting for margin coming from empty <small> in FormGroup */
.SingleTaskSplit-formGroup .FormGroup-body .form-text {
    margin: 0;
}

.SingleTaskSplit-hoursNumberInput,
.SingleTaskSplit-minutesNumberInput,
.SingleTaskSplit-percentageNumberInput {
    width: 100px;
}

.SingleTaskSplit-rangeInput {
    align-self: stretch;
    margin-bottom: 24px;
}

/* define TaskTraitsTable */
.TaskTraitsTable-sidebar {
    z-index: 101;
}

.TaskTraitsTable-traitsTable td {
    vertical-align: middle;
}

.TaskTraitsTable-colorIcon {
    /* Default trait color */
    --trait-color: var(--icon-inverse);

    color: var(--trait-color);
}

.TraitsTreeSelector .TreeSelector-controls {
    padding: 0;
}

.TraitsTreeSelector .TreeView-descendantToggle {
    margin-right: 0;
}

.WorkerAvailabilityFilter-menu {
    padding-bottom: 0.5rem;
    min-width: 360px;
    overflow-y: auto;
}

.WorkerAvailabilityFilter-header {
    height: 42px;
    font-size: 14px;
    color: var(--gray-600);
    text-transform: uppercase;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 1rem;
}

.WorkerAvailabilityFilter-buttonGroup {
    width: 100%;
    padding: 0 1rem;
    margin-bottom: 1rem;
}

.WorkerAvailabilityFilter-buttonGroup .btn {
    width: 50%;
}

.FormGroup.WorkerAvailabilityFilter-formGroup {
    width: 180px;
}

.WorkerAvailabilityFilter-rangeGroup {
    margin-bottom: 12px;
}

.WorkerAvailabilityFilter-rangeGroupFields {
    display: flex;
}

.WorkerAvailabilityFilter-rangeGroup .form-control {
    height: calc(1.5em + 0.75rem + 2px);
}

.WorkerAvailabilityFilter-divider {
    margin: 0 1rem;
    border-top: 1px solid transparent;
    border-image: repeating-linear-gradient(90deg, grey 0, grey 2px, transparent 2px, transparent 4px);
    border-image-slice: 1;
}

.WorkerAvailabilityFilter-dateGroup {
    margin-bottom: 12px;
}

.WorkerAvailabilityFilter-dateGroupFields {
    display: flex;
}

.WorkerAvailabilityFilter-dateGroup .form-control {
    height: calc(1.5em + 0.75rem + 2px);
}

.WorkerAvailabilityFilter-actionGroup {
    display: flex;
    margin-bottom: 12px;
    justify-content: flex-end;
}

.WorkerAvailabilityFilter-formGroup .FormGroup-body {
    margin-bottom: 0;
}

.WorkerAvailabilityFilter-applyButton {
    margin-right: 1rem;
    margin-left: 0.25rem;
}

.WorkerAvailabilityFilter-rangeConnector {
    position: relative;
}

.WorkerAvailabilityFilter-rangeConnector div {
    width: 16px;
    border-top: 1px solid grey;
    height: 0;
    border-radius: 1px;
    bottom: 28px;
    left: -8px;
    position: absolute;
}

.WorkerAvailabilityFilter-fieldAppend {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.5rem;
    margin-bottom: 0;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--neutral-deep-grey-d1);
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    margin-left: -1px;
    z-index: 3;
}

.WorkerAvailabilityFilter-RangeField .form-control {
    border-radius: 0.25rem !important;
    padding-right: calc(0.75rem + 1.5rem) !important;
}

.WorkerAvailabilityFilter-RangeField .form-control.is-valid,
.WorkerAvailabilityFilter-RangeField .form-control.is-invalid {
    padding-right: calc(1.5em + 0.75rem + 1.5rem) !important;
}

.WorkerAvailabilityFilter-fieldAppend:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}

.WorkerAvailabilityFilter-rangeErrors {
    padding: 0 1rem;
    font-size: 0.75rem;
    height: 1rem;
}

.WorkerAvailabilityFilter-dateErrors {
    padding: 0 1rem;
    font-size: 0.65rem;
    height: 1rem;
}

.WorkerAvailabilityFilter-rangeGroupFields .input-group-append {
    position: absolute;
    right: 0;
}

.WorkerAvailabilityFilter-rangeGroupFields .is-valid .input-group-append {
    right: 1.5em !important;
}

.ZoomButtonGroup-zoomGroup {
    background-color: white;
    border-radius: 0.25rem;
}

.ZoomButtonGroup-btn,
.ZoomButtonGroup-zoomLabel {
    height: 28px;
    padding: 0 8px;
}

.ZoomButtonGroup-btn {
    min-width: 36px;
}

.ZoomButtonGroup-zoomLabel {
    color: var(--grey-600);
    background-color: white;
    border: 1px solid var(--secondary);
    min-width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.Btn.btn.EngagementSearch-searchSubmit,
.Btn.btn.EngagementSearch-searchReset {
    padding: 0.375rem 0.75rem;
    height: auto;
}

.Btn.btn.EngagementSearch-searchReset {
    border-top: 1px solid #ced4da !important;
    border-bottom: 1px solid #ced4da !important;
}

/* @define GlobalSearchFilterDropdown */
.GlobalSearchFilterDropdown-badge {
    background-color: #6a708f;
    padding: 0.15rem 0.25rem !important;
}

.GlobalSearchFilterDropdown-menu {
    min-width: 14rem;
    max-height: calc(100vh - 1rem);
    overflow-y: auto;
}

/* stylelint-disable-next-line */
.GlobalSearchFilterDropdown-menu.show {
    display: flex;
    flex-direction: column;
}

.GlobalSearchFilterDropdown-formContent {
    overflow-y: auto;
}

/* @define GlobalSearchResultsList */
@media (height < 540px) {
    /* stylelint-disable-next-line */
    .GlobalSearchResultsList-noResults .BlankSlate-image {
        display: none;
    }
}

/* @define GlobalSearchResultsListItem */
.GlobalSearchResultsListItem-hover:hover {
    background-color: rgb(0 0 0 / 7.5%);
    cursor: pointer;
}

.GlobalSearchResultsListItem-jobHyperLink {
    max-width: 8rem;
}

.GlobalSearchResultsListItem-info {
    color: var(--text-subtle);
    width: fit-content;
    max-width: 100%;
}

.GlobalSearchResultsListItem-status {
    background-color: var(--surface-list-item-selected-light);
    color: var(--text-default);
    font-weight: var(--font-weight-regular);
}

.GlobalSearchResultsListItem-status.is-cancelled {
    background-color: var(--danger-subtle);
}

.AlternativeGradesForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
    padding-top: 15px;
}

.AlternativeGradesForm-firstRow {
    align-items: center;
    display: flex;
    flex-grow: 0;
    margin-bottom: 20px;
    padding-left: 15px;
    width: 100%;
}

.AlternativeGradesForm-formGroup label {
    padding-left: 0;
}

.AlternativeGradesForm-formGroup .FormGroup-body {
    padding-left: 0;
}

.AlternativeGradesForm-replacementCategory {
    width: 33%;
}

.AlternativeGradesForm-addAlternativeGrade {
    width: 50%;
}

.AlternativeGradesForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.AlternativeGradesForm-noAlternativeGrades {
    padding-left: 15px;
}

.AlternativeGradesForm-table {
    width: 100%;
}

.AlternativeGradesForm-tableBody {
    line-height: 2.5;
}

/* Brings cell text in vertical alignment with tab + content above */
.AlternativeGradesForm-table tr th:first-child,
.AlternativeGradesForm-table tr td:first-child {
    padding-left: 15px;
}

.AlternativeGradesForm-forDeletion {
    text-decoration: line-through;
}

.AlternativeGradesForm-actionsColumn,
.AlternativeGradesForm-actionsColumnHeader {
    text-align: right;
}

/* @define GradeDetailsForm */
.GradeDetailsForm-fieldset {
    margin-bottom: 15px;
}

.GradeDetailsForm-row {
    margin-right: 0;
    margin-left: 0;
}

.EntityLinkageForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.EntityLinkageForm-firstRow {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.EntityLinkageForm-formGroup {
    padding-top: 15px;
    width: 50%;
}

.EntityLinkageForm-formGroup label {
    padding-left: 0;
}

.EntityLinkageForm-formGroup .FormGroup-body {
    padding-left: 0;
}

.EntityLinkageForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.EntityLinkageForm-table {
    width: 100%;
}

.EntityLinkageForm-tableBody {
    line-height: 2.5;
}

.EntityLinkageForm-forDeletion {
    text-decoration: line-through;
}

.EntityLinkageForm-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.EntityLinkageForm-actionsColumnHeader {
    cursor: none;
    pointer-events: none;
}

.EntityLinkageForm-tableHead {
    z-index: 10;
}

/* @define UnitDetailsForm */
.UnitDetailsForm-fieldset {
    margin-bottom: 15px;
}

.UnitDetailsForm-row {
    margin-right: 0;
    margin-left: 0;
}

.UnitForm-tabPane {
    height: 100%;
}

.UnitForm-tabsBlock {
    display: flex;
    flex-direction: column;
}

.UnitForm-tabsBlock > div {
    flex-grow: 0;
}

.UnitForm-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}

.UnitForm-formTabContent {
    margin-left: -15px;
}

.UnitForm-tabContent {
    padding-top: 15px;
    height: 100%;
    overflow-x: hidden;
}

/* @define WorkerDetailsForm */
.WorkerDetailsForm-fieldset {
    margin-bottom: 15px;
}

.WorkerDetailsForm-row {
    margin-right: 0;
    margin-left: 0;
}

.WorkerForm-tabPane {
    height: 100%;
}

.WorkerForm-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.WorkerForm-tabsBlock > div {
    flex-grow: 0;
}

.WorkerForm-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerForm-formTabContent {
    margin-left: -15px;
}

.WorkerForm-tabContent {
    padding-top: 15px;
    height: 100%;
    overflow-x: hidden;
}

.WorkerGradeForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.WorkerGradeForm-firstRow {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.WorkerGradeForm-formGroup {
    padding-top: 15px;
    width: 50%;
}

.WorkerGradeForm-formGroup label {
    padding-left: 0;
}

.WorkerGradeForm-formGroup .FormGroup-body {
    padding-left: 0;
}

.WorkerGradeForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerGradeForm-table {
    width: 100%;
}

.WorkerGradeForm-tableBody {
    line-height: 2.5;
}

.WorkerGradeForm-gradeCell {
    width: 30%;
}

.WorkerGradeForm-forDeletion {
    text-decoration: line-through;
}

.WorkerGradeForm-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.WorkerGradeForm-actionsColumnHeader {
    cursor: none;
    pointer-events: none;
}

.WorkerGradeForm-tableHead {
    z-index: 10;
}

tbody.WorkerGradeForm-tableBody td {
    padding: 0.85rem;
    vertical-align: middle;
}

.WorkerRestrictionsForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.WorkerRestrictionsForm-firstRow {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.WorkerRestrictionsForm-AddRemoveClients-btn {
    white-space: nowrap;
    padding: 15px 0 20px;
}

.WorkerRestrictionsForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerRestrictionsForm-table {
    width: 100%;
}

.WorkerRestrictionsForm-tableBody {
    line-height: 2.5;
}

.WorkerRestrictionsForm-forDeletion {
    text-decoration: line-through;
}

.WorkerRestrictionsForm-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.WorkerRestrictionsForm-actionsColumnHeader {
    cursor: none;
    pointer-events: none;
}

.WorkerTraitsForm {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.WorkerTraitsForm-firstRow {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.WorkerTraitsForm-formGroup {
    padding-top: 15px;
    width: 50%;
}

.WorkerTraitsForm-formGroup label {
    padding-left: 0;
}

.WorkerTraitsForm-formGroup .FormGroup-body {
    padding-left: 0;
}

.WorkerTraitsForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerTraitsForm-table {
    width: 100%;
}

.WorkerTraitsForm-tableBody {
    line-height: 2.5;
}

.WorkerTraitsForm-forDeletion {
    text-decoration: line-through;
}

.WorkerTraitsForm-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.WorkerTraitsForm-actionsColumnHeader {
    cursor: none;
    pointer-events: none;
}

.WorkerUserEditor-noUser {
    flex-grow: 0;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding-top: 20px;
}

.WorkerUserEditor-noUseTitle {
    padding-top: 15px;
    width: 50%;
}

.WorkerUserEditor-noUserButton {
    padding-left: 0;
}

.WorkerUserEditor-tabContent {
    padding-top: 15px;
    padding-left: 15px;
    height: 100%;
    overflow-x: hidden;
}

.WorkerUserEditor {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.UnitCreateModal-tabPane {
    height: 100%;
}

.UnitCreateModal-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.UnitCreateModal-tabsBlock > div {
    flex-grow: 0;
}

.UnitCreateModal-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}

.UnitCreateModal-formTabContent {
    margin-left: -1.5rem;
}

.UnitCreateModal-tabContent {
    padding-top: 1.5rem;
    height: 100%;
    overflow-x: hidden;
}

.UnitCreateModal-tabsBlock .EntityLinkageForm-body {
    min-height: 20vh;
}

.UnitCreateModal-tabPane {
    height: 100%;
}

.WorkerCreateModal-tabsBlock {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.WorkerCreateModal-tabsBlock > div {
    flex-grow: 0;
}

.WorkerCreateModal-tabsBlock div.tab-content {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerCreateModal-formTabContent {
    margin-left: -1.5rem;
}

.WorkerCreateModal-tabContent {
    padding-top: 1.5rem;
    height: 100%;
    overflow-x: hidden;
}

.WorkerCreateModal-tabsBlock .EntityLinkageForm-body {
    min-height: 20vh;
}

.WorkerCreateOrLinkModal-body .FormGroup-label {
    padding-left: 0;
}

.WorkerCreateOrLinkModal-body .FormGroup-body {
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
}

.WorkerCreateOrLinkModal-remoteReferenceOptions .FormGroup-body {
    gap: 0.75rem;
}

.UnitSummaryTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.UnitSummaryTable-headerCell {
    border-top: none;
    cursor: pointer;
    user-select: none;
}

.UnitSummaryTable-tableHead {
    flex-grow: 0;
    width: 100%;
}

.UnitSummaryTable-validationIndicator {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

.WorkerSummaryTable {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
}

.WorkerSummaryTable-headerCell {
    border-top: none;
    cursor: pointer;
    user-select: none;
}

.WorkerSummaryTable-tableHead {
    flex-grow: 0;
    width: 100%;
}

.WorkerSummaryTable-validationIndicator {
    display: inline-block;
    margin-bottom: 2px;
    margin-left: 2px;
}

/* @define ClaimManagementModal */

.ClaimManagementModal-inputWrapper {
    padding-bottom: 120px;
}

.ClaimManagementModal-listWrapper {
    border: 1px solid var(--border-default);
    border-radius: 4px;
}

.ClaimManagementModal-listItem {
    border-bottom: 1px solid var(--surface-accent);
    padding: 12px;
    cursor: pointer;
}

/* remove bottom border on the last item */
.ClaimManagementModal-listItem:last-child {
    border-bottom: none;
}

/* @define FollowersModal */

.FollowersModal-listWrapper {
    border: 1px solid var(--border-default);
    border-radius: 4px;
}

.FollowersModal-listItem {
    border-bottom: 1px solid var(--surface-accent);
    padding: 12px;
    cursor: pointer;
}

.FollowersModal-listItemActive {
    background-color: var(--surface-accent);
}

/* remove bottom border on the last item */
.FollowersModal-listItem:last-child {
    border-bottom: none;
}

/* @define JobAndJobGroupHeaderNavigationDropdown */

/* stylelint-disable plugin/selector-bem-pattern */
.JobAndJobGroupHeaderNavigationDropdown-dropdownButton .dropdown-menu {
    width: 500px;
    max-width: 100vw;
    padding: 0;
    overflow-y: auto;
    max-height: calc(100vh - 200px);
    margin-top: 8px;
}

.JobAndJobGroupHeaderNavigationDropdown-dropdownButton .dropdown-toggle {
    background: var(--surface-subtle-light);
    color: var(--primary);
    border: none;
}

.JobAndJobGroupHeaderNavigationDropdown-dropdownButton.show .btn-secondary.dropdown-toggle,
.JobAndJobGroupHeaderNavigationDropdown-dropdownButton .btn-secondary.dropdown-toggle:focus,
.JobAndJobGroupHeaderNavigationDropdown-dropdownButton .btn-secondary.dropdown-toggle:active {
    color: var(--primary);
    background: var(--surface-accent);
    box-shadow: 0 0 0 3.2px #d8d9db40;
}

.dropdown-menu a.JobAndJobGroupHeaderNavigationDropdown-treeListItem {
    padding: 16px 12px;
    line-height: 1;
    position: relative;
    margin-bottom: 0;
    border: 1px solid var(--border-subtle);
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItemToggle--isOpen i {
    transform: rotate(90deg);
}

/* stylelint-enable plugin/selector-bem-pattern */

.JobAndJobGroupHeaderNavigationDropdown-treeListItemTitle {
    font-weight: var(--font-weight-bold);
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem:hover .JobAndJobGroupHeaderNavigationDropdown-treeListItemTitle {
    text-decoration: underline;
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem:hover {
    text-decoration: none;
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem::after {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    bottom: 0;
    background-color: transparent;
    left: 0;
    z-index: -1;
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem:hover::after {
    background-color: var(--surface-list-item-hover);
}

.JobAndJobGroupHeaderNavigationDropdown-treeAvatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: var(--icon-inverse);
    background-color: var(--surface-eng-00);
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem--rootNode .JobAndJobGroupHeaderNavigationDropdown-treeAvatar {
    background-color: var(--surface-eng-01);
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem--leafNode .JobAndJobGroupHeaderNavigationDropdown-treeAvatar {
    background-color: var(--surface-data-secondary);
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItem--isSelected {
    background-color: var(--surface-list-item-selected-light);
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItemToggle {
    border-radius: 50%;
    background-color: transparent;
    border: none;
    transition: transform 150ms ease-in;
    width: 25px;
    height: 25px;
}

.JobAndJobGroupHeaderNavigationDropdown-treeListItemCount {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: var(--surface-subtle-dark);
    color: var(--text-accent);
    font-weight: var(--font-weight-bold);
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* @define CommentsSidebar */

.CommentsSidebar-author {
    gap: 8px;
}

.CommentsSidebar-comment {
    margin-left: 43px;
    margin-top: 10px;
    color: var(--text-accent);
    font-weight: var(--font-weight-semibold);
    max-width: calc(100% - 80px);
}

.CommentsSidebar-commentEditMode {
    max-width: unset;
}

.CommentsSidebar-authorName {
    font-weight: var(--font-weight-semibold);
    line-height: 1;
}

.CommentsSidebar-commentTimestamp {
    color: var(--text-subtle);
    font-size: 11px;
    font-weight: var(--font-weight-regular);
    line-height: 1;
}

.CommentsSidebar-blankSlate {
    background-color: var(--surface-subtle-light);
    color: var(--text-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
}

.CommentsSidebar-blankSlateIcon {
    text-align: center;
    color: var(--text-subtle);
    font-size: 28px;
    margin-bottom: 8px;
}

/* @define JobEditorDetailsTab */

.JobEditorDetailsTab {
    padding: 12px;
}

.JobEditorDetailsTab-form {
    column-count: 2;
    margin-top: 3em;
    column-gap: 3.5em;
}

.JobEditorDetailsTab-form--fieldset {
    display: inline-block;
    margin: 0 0 3.5em;
    width: 100%;
}

@media (width >= 2000px) {
    .JobEditorDetailsTab-form {
        column-count: 3;
    }
}

@media (width <= 992px) {
    .JobEditorDetailsTab-form {
        column-count: 1;
    }
}

.JobEditorDetailsTab-parent--container {
    background-color: var(--surface-subtle-light);
    padding: 12px;
    border: var(--border-subtle) solid 1px;
    width: 100%;
}

.JobEditorDetailsTab-parent--wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
}

.JobEditorDetailsTab-parent--actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
}

.JobEditorDetailsTab-periodEndDate--input {
    flex: auto;
}

/* stylelint-disable-next-line plugin/selector-bem-pattern */
.JobEditorDetailsTab-periodEndDate--input > input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* @define JobGroupDetailsTab */

.JobGroupDetailsTab {
    padding: 12px;
}

.JobGroupDetailsTab-form {
    column-count: 2;
    margin-top: 3em;
    column-gap: 3.5em;
}

.JobGroupDetailsTab-form--fieldset {
    display: inline-block;
    margin: 0 0 3.5em;
    width: 100%;
}

@media (width >= 2000px) {
    .JobGroupDetailsTab-form {
        column-count: 3;
    }
}

@media (width <= 950px) {
    .JobGroupDetailsTab-form {
        column-count: 1;
    }
}

.JobGroupHierarchyLinkingForm-nameCellContent {
    display: flex;

    /* this is here to trigger ellipses */
    max-width: 95%;
    align-items: center;
}

.JobGroupHierarchyLinkingForm-nameCellContent .JobGroupHierarchyLinkingForm-nameCellContentName {
    display: flex;
    flex-direction: column;
    max-width: 90%;
}

.JobGroupHierarchyLinkingForm-nameCellContent .JobGroupHierarchyLinkingForm-nameCellContentName.indented {
    padding-left: 1.5em;
}

.JobGroupHierarchyLinkingForm-nameCell {
    min-width: 25em;
    max-width: 25em;
    vertical-align: middle !important;
}

.JobGroupHierarchyLinkingForm-warningText {
    padding-top: 1em;
}

.JobGroupHierarchyLinkingForm-entityTypeCell {
    width: 20em;
    vertical-align: middle !important;
}

.JobGroupHierarchyLinkingForm-remoteIdCell {
    width: 40%;
    vertical-align: middle !important;
}

.JobGroupHierarchyLinkingForm-editButtonCell {
    width: 10%;
    vertical-align: middle !important;
}

.JobGroupHierarchyLinkingForm-indented-1 {
    margin-left: 1em;
}

.JobGroupHierarchyLinkingForm-indented-2 {
    margin-left: 2em;
}

.JobGroupHierarchyLinkingForm-row.is-selected {
    font-weight: var(--font-weight-bold);
    background-color: #ececec;
}

.JobGroupHierarchyLinkingForm-inputFormControl,
.JobGroupHierarchyLinkingForm-inputFormControl.is-valid,
.JobGroupHierarchyLinkingForm-inputFormControl.is-invalid {
    padding-right: 0 !important;
}

.JobGroupHierarchyLinkingForm-table {
    margin-bottom: 0;
    padding-left: 0.75em;
    padding-right: 0.75em;
}

.JobGroupHierarchyLinkingForm-headerCell {
    border-top: none !important;
}

.JobGroupHierarchyLinkingForm-remoteIdFormGroup {
    margin-bottom: 0;
}

.JobGroupHierarchyLinkingForm-remoteIdFormGroup .FormGroup-body {
    padding-left: 0;
    margin-bottom: 0;
}

.JobGroupHierarchyLinkingForm-row {
    padding-left: 0;
    width: 100%;
}

.JobGroupHierarchyLinkingForm-chevron {
    max-width: 1.25em;
    min-width: 1.25em;
    cursor: pointer;
    margin-right: 0.5em;
}

.JobGroupLinkingModal-footer {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
}

.JobGroupLinkingModal-footerGroup {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: center;
}

.JobGroupLinkingModal-confirmButton,
.JobGroupLinkingModal-saveButton {
    margin: 0.25rem 0 0.25rem 0.25rem;
}

.JobGroupLinkingModal-cancelConfirmButton,
.JobGroupLinkingModal-cancelSaveButton {
    margin: 0.25rem;
}

.JobGroupLinkingModal-footerConfirmationGroup {
    padding: 0.75rem 0 0;
}

.JobGroupLinkingModal-footerSaveCancelGroup {
    padding: 0.75rem;
}

.JobGroupLinkingModal-footerTextGroup {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.JobGroupLinkingModal-footerTextTitle {
    font-weight: var(--font-weight-bold);
}

.JobGroupLinkingModal-savingToastBody {
    display: flex;
    align-items: center;
}

.JobGroupLinkingModal-savingToastIcon {
    font-size: 5vh;
}

.MetricConfigEditor-visibility-column {
    width: 50px;
}

.MetricConfigEditor-name-column {
    /* 240px is smallest size that TotalAdjustedNetRevenuePerHour doesn't wrap :) */
    width: 240px;
    max-width: 240px;
}

/* On smaller screens accept some wrapping, and reduce the size of the name column */
@media (width <= 1600px) {
    .MetricConfigEditor-name-column {
        width: 200px;
        max-width: 200px;
    }
}

.MetricConfigEditor-description-column {
    min-width: 200px;
    width: 500px;
    max-width: 33%;
}

.MetricConfigEditor-expression-column {
    min-width: 300px;
}

.MetricsExpressionTable-header {
    border-bottom: 2px solid #dee2e6;
}

.MetricsExpressionTable-helperText {
    color: #6c757d;
    border-top: 1px solid rgb(203 206 207 / 30%);
}

.MetricsExpressionTable-headerInfo {
    display: inline-block;
    width: 100%;
}

.MetricsExpressionTable .info-button {
    color: var(--primary);
    cursor: pointer;
    text-align: right;
}

.MetricsPropertiesTable-header {
    border-bottom: 2px solid #dee2e6;
}

.MetricsPropertiesTable-helperText {
    color: #6c757d;
    border-top: 1px solid rgb(203 206 207 / 30%);
}

.MetricsPropertiesTable-headerInfo {
    display: inline-block;
    width: 100%;
}

.MetricsPropertiesTable .info-button {
    color: var(--primary);
    cursor: pointer;
    text-align: right;
}

/* @define NotificationsPanel */

.NotificationsPanel-closer {
    opacity: 0;
    position: fixed;
    inset: 0;
    z-index: 0;
}

.NotificationsPanel-wrapper {
    display: flex;
    flex-direction: column;
    background-color: var(--surface-default);
    min-width: 350px;
    width: 450px;
    height: 620px;
    max-height: 100vh;
    z-index: 9;
    position: fixed;
    left: 180px;
    top: 0;
    border-right: 3px solid var(--deep-black);
    border-bottom: 3px solid var(--deep-black);
    border-left: 1px solid var(--deep-black);
}

.NotificationsPanel-wrapper.is-minified {
    left: 46px;
}

.NotificationsPanel-header {
    border-bottom: 1px solid #e8e8e8;
    height: 25px;
    line-height: 25px;
    padding: 0 10px;
    flex-grow: 0;
    background-color: var(--deep-black);
    color: white;
    font-weight: 500;
}

.NotificationsPanel-scrollPanel {
    background-color: #f3f3f3;
    overflow: hidden auto;
    flex-grow: 1;
}

.NotificationsPanel-item {
    border-bottom: 1px solid #e8e8e8;
    min-height: 70px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    background-color: #eee;
    color: #777;
}

.NotificationsPanel-item.is-unread {
    background-color: var(--surface-default);
    color: #333;
}

.NotificationsPanel-content {
    font-size: 14px;
}

.NotificationsPanel-time {
    font-size: 11px;
    text-align: right;
    color: #777;
    width: 100%;
}

/*
    third party classes coming from backend
 */
/* stylelint-disable plugin/selector-bem-pattern */
.NotificationsPanel-item .tab {
    padding-left: 5px;
}

.NotificationsPanel-item .large-tab {
    padding-left: 10px;
}

.NotificationsPanel-item .approved {
    font-weight: var(--font-weight-bold);
    color: #28a745;
}

.NotificationsPanel-item .rejected {
    font-weight: var(--font-weight-bold);
    color: var(--danger);
}

.NotificationsPanel-item > div {
    width: 100%;
}
/* stylelint-enable plugin/selector-bem-pattern */

/* @define SignalrStatus */

.SignalrStatus {
    align-self: end;
    margin-right: 16px;
}

.SignalrStatus-icon {
    color: var(--secondary-yellow);
}

#report-modal-wrapper .modal-content footer {
    padding: 0;
    margin: 0;
    border: 0;
    height: 0;
}

.reportModalWrapper-dialog {
    min-width: calc(100% - 60px);
    min-height: calc(100% - 60px);
}

#report-modal-wrapper .FilterMenuCard {
    max-height: fit-content;
}

#report-modal-wrapper .ReportQueryBuilder-header {
    max-height: fit-content;
}

#report-modal-wrapper .Header-main {
    padding-bottom: 1rem;
    padding-top: 0;
}

#report-modal-wrapper .ReportQueryBuilder-headerOptionsContainer {
    padding: 0;
    height: 0;
}

#report-modal-wrapper .ReportQueryBuilder-tabsModal,
.ReportQueryBuilder-tabsModal .tabs .tab-content {
    height: 65vh;
}

.ReportQueryBuilder-tabs > div {
    height: 100%;
}

#report-modal-wrapper .ReportQueryBuilder-tab {
    padding: 0;
}

#report-modal-wrapper .nav-tabs {
    display: none !important;
}

#report-modal-wrapper .card-header {
    padding: 0;
    border: none;
}

.ReportModalWrapper-body {
    height: 100%;
}

.ReportModalWrapper-body .loader-overlay {
    position: static;
}

.PivotReportGroupByDropDown {
    max-width: 300px;
    margin-left: -15px;
}

.ReportMulticurrencyDropdown {
    display: inline;
    justify-content: space-between;
    align-items: center;
    width: 17rem;
}

.ReportMulticurrencyDropdown-select {
    text-overflow: ellipsis;
}

.ReportMulticurrencyDropdown-select-withIcon {
    border-radius: 0.25rem 0 0 0.25rem;
}

.ReportMulticurrencyDropdown-select-noIcon {
    border-radius: 0.25rem;
}

.ReportMulticurrencyDropdown-icon {
    border-radius: 0 0.25rem 0.25rem 0;
    margin-left: -5px;
}

/* Empty file - fill in some CSS */

.save-context-modal-definition {
    display: none;
}

/* JF - These styles were lifted from SelectableDropdownItem */
.SaveContextMenu-Dropdown ul .dropdown-selected {
    font-weight: var(--font-weight-semibold);
}

.SaveContextMenu-Dropdown ul .dropdown-item.disabled {
    color: #c8c8c8;
    pointer-events: auto;
}

.SaveContextMenu-Dropdown ul .dropdown-item:hover {
    background-color: var(--primary);
    color: var(--white);
}

.Report-cannotUseReport {
    height: 100%;
    width: 100%;
    position: absolute;
    display: flex;
    flex-direction: column;
    align-content: center;
    font-size: 2.5em;
}

.Report-cannotUseReportBody {
    margin: auto;
    text-align: center;
    width: 600px;
}

.ReportDescription-topContainer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.ReportDescription-title {
    color: #000;
}

.ReportDescription-closeRightSidebarButton {
    margin: auto 0;
}

.ReportDescription-description {
    padding: 10px;
    background-color: #fbfbfb;
    margin-top: 18px;
}

.ReportDescription-description p {
    color: #3c3c3c;
    white-space: pre-line;
    word-break: normal;
    overflow-wrap: anywhere;
    hyphens: none;
}

/* stylelint-disable media-feature-range-notation -- AA not sure what the intended range is  */
@media only screen and (max-width: 1800px) {
    .ReportDescription-title {
        max-width: 210px;
    }
}

/* stylelint-enable media-feature-range-notation  */

.ReportGroup {
    height: auto;
    margin: 0 0 25px;
}

.ReportGroup-title {
    margin: 0;
}

.ReportGroup-description {
    margin: 4px 0 0;
}

.ReportGroup-icon {
    color: #6c757d;
    margin-right: 4px;
}

.ReportGroup-list {
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    border: 1px solid #d4d4d4;
    background-color: var(--surface-default);
    padding: 0;
    margin-top: 5px;
}

.ReportGroup-list-darkBackground {
    background-color: var(--surface-subtle-light);
}

.ReportItem {
    background-color: var(--surface-default);
    padding: 7px 15px;
    width: 50%;
}

.ReportItem-firstColumn {
    border-right: 1px solid #d4d4d4;
}

.ReportItem:nth-child(odd of .ReportItem-firstColumn),
.ReportItem:nth-child(odd of .ReportItem-secondColumn) {
    background-color: var(--surface-subtle-light);
}

.ReportItem-nameLink {
    color: #000;
}

.ReportItem-reportDescription {
    font-size: 0.75rem;
    color: #3c3c3c;
    margin: 0 10px 0 0;
    word-break: normal;
    overflow-wrap: anywhere;
    hyphens: none;
}

.ReportItem-saved {
    font-size: 0.875rem;
    color: var(--interactive-primary);
    min-width: 50px;
    white-space: nowrap;
}

.ReportItem-saved:hover {
    cursor: pointer;
    color: #3c307b;
    text-decoration: underline;
}

.ReportNewIndicator-badge {
    background-color: #cae4cc;
    color: #237b37;
    font-size: 0.75rem;
    line-height: 16px;
    font-weight: var(--font-weight-semibold);
    padding: 2px 4px;
    margin: 0;
    width: 35px;
}

.ReportBetaIndicator-badge-leftAligned {
    margin: auto auto auto 5px;
}

.ReportSearch-container {
    margin-left: 1em;
    margin-right: 1em;
}

.ReportSearch-inputGroup {
    float: left;
    height: 35px;
}

@media (width >= 720px) {
    .ReportSearch-container {
        margin-left: 45px;
    }

    .ReportSearch-alert {
        margin-left: 45px;
    }

    .ReportSearch-inputGroup {
        width: 384px;
    }
}

.ReportSearch-inputGroup .vbt-autcomplete-list {
    min-width: 384px;
}

.ReportSearch-inputGroup .vbst-item:hover {
    text-decoration: underline;
}

.ReportSearch-inputGroup a {
    color: black;
}

.ReportSearch-alert {
    position: absolute;
    margin-top: 40px;
    width: 384px;
}

.ReportSelectorHeader-main {
    display: flex;
    align-items: center;
    justify-content: left;
    padding: 15px;
    border-bottom: 1px solid #d4d4d4;
}

/* Ideally at very small screens the elements would stack vertically */

.ReportSelectorHeader-mainHeading {
    margin-right: 1em;
    margin-bottom: 0;
}

.ReportSelectorHeader-checkbox {
    margin-left: auto;
}

.ReportSelectorTable-main {
    /* Empty block - needs some styles */
}

.SavedReports {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    height: 100%;
}

.SavedReports-inputs {
    padding: 17px 17px 0;
}

.SavedReports-inputs h4 {
    margin-bottom: 16px;
}

.SavedReports-list {
    overflow: hidden auto;
    display: flex;
    flex-direction: column;
    padding: 5px 17px;
}

.SavedReports-result {
    border-bottom: 1px solid #d4d4d4;
    padding: 10px 0;
}

.SavedReports-result:hover {
    background-color: var(--surface-subtle-light);
}

.SavedReports-result a {
    color: var(--interactive-primary);
}

.SavedReports-result a:hover {
    color: #3c307b;
}

.SavedReports-searchAlert {
    margin-top: 5px;
    width: 100%;
}

.ReportResults-table .rate-difference-cell {
    white-space: nowrap;
}

/* @define SkillFamilyForm */
/* stylelint-disable plugin/selector-bem-pattern -- these selectors violate the SUIT pattern, to be removed when all "TraitFamilyModal" switched to "SkillFamilyModal" during Form/Modals work */
.SkillFamilyForm-competencies {
    list-style: none;
    margin-bottom: 20px;
    padding-inline-start: 0;
}

.SkillFamilyForm-competency {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.SkillFamilyForm-competencyStar {
    color: var(--primary);
    padding-right: 2px;
}

.SkillFamilyForm-competencyDescription {
    flex-grow: 1;
    margin-left: 10px;
}

.SkillFamilyForm-competencyDeleteButton {
    margin-left: 10px;
}

/* @define BookingTypes */

.BookingTypes-body {
    padding: 15px;
}

/* stylelint-disable-next-line */
.BookingTypes > .Header-main {
    border-bottom: none;
}

.BookingTypes-tabTitle {
    display: flex;
    align-items: center;
}

.BookingTypes-infoIcon {
    height: 1.5rem;
    width: 1.5rem;
    padding-right: 0.25rem;
}

@media (width <= 992px) {
    .BookingTypes-body {
        border-top: 1px solid #e9ecef;
        padding-top: 1rem;
    }
}

/* @define SkillsAndAttributes */

.SkillsAndAttributes-body {
    padding: 15px;
}

/* stylelint-disable-next-line */
.SkillsAndAttributes > .Header-main {
    border-bottom: none;
}

.SkillsAndAttributes-tabTitle {
    display: flex;
    align-items: center;
}

.SkillsAndAttributes-infoIcon {
    height: 1.5rem;
    width: 1.5rem;
    padding-right: 0.25rem;
}

/* Responsive border for stacked layout */
@media (width <= 992px) {
    .SkillsAndAttributes-body {
        border-top: 1px solid #e9ecef;
        padding-top: 1rem;
    }
}

/* @define LanguagesTab */

.LanguagesTab-table .LanguagesTab-cell {
    vertical-align: middle;
}

.SettingsTab-hiddenSettingsToggle {
    display: flex;
}

.SettingsTab-hiddenSettingsToggleLabel {
    margin: 0;
    font-weight: var(--font-weight-regular);
}

/* @define TraitFamilyForm */
.TraitFamilyForm-competencies {
    list-style: none;
    margin-bottom: 20px;
    padding-inline-start: 0;
}

.TraitFamilyForm-competency {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.TraitFamilyForm-competencyStar {
    color: var(--primary);
    padding-right: 2px;
}

.TraitFamilyForm-competencyDescription {
    flex-grow: 1;
    margin-left: 10px;
}

.TraitFamilyForm-competencyDeleteButton {
    margin-left: 10px;
}

/* define SyncHistorySearch */

.SyncHistorySearch-container {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    height: 100%;
    padding: 15px;
}

.SyncHistorySearch-filters {
    display: flex;
    z-index: 100;
}

.SyncHistorySearch-filterFormGroup {
    width: 20%;
}

.SyncHistorySearch-filterBtnGroup {
    width: 10%;
    margin-bottom: 0.75rem;
    padding: 0 15px;
    display: flex;
}

.SyncHistorySearch-topTextContainer {
    display: inline;
}

.SyncHistorySearch-noResults {
    display: flex;
    justify-content: center;
}

.SyncHistorySearch-loader {
    margin-top: 200px;
}

/* This is needed to make sure that the date picker is visible above the table header */
.SyncHistorySearch-container .DateTimeInput > * {
    z-index: 150 !important;
}

/* define UploadsStagingModal */

.UploadsStagingModal-openButton.btn-transparent:not(:hover) {
    background: transparent;
}

.UploadsStagingModalHeader {
    background-color: #f8f9fa;
}

.UploadsStagingModal-uploadsAnalysisPanel {
    max-height: 250px;
    display: flex;
    width: 100%;
}

.UploadsStagingModal-downloadValidationErrorsButton,
.UploadsStagingModal-downloadValidationErrorsButton:focus {
    border: transparent !important;
    box-shadow: none !important;
    transition: none !important;
}

.UploadsStagingModal-uploadsAnalysisContainer {
    padding-right: 10px;
    flex: 1;
}

.UploadsStagingModal-uploadsAnalysisSection {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 10px;
}

.UploadsStagingModal-uploadsAnalysisButtonsContainer {
    display: flex;
    padding-left: 5px;
}

.UploadsStagingModal-uploadsAnalysisConfirmButton {
    margin-right: 5px;
}

.UploadsStagingModal-errorGroupsContainer {
    width: 100%;
    flex: 1;
}

.UploadsStagingModal-errorGroupsContainer.sectionSeparator {
    border-left: 1px solid #ddd;
    padding-left: 10px;
}

.UploadsStagingModal-confirmationTableContainer {
    margin-bottom: 5px;
    overflow: auto;
    max-height: 180px;
}

.UploadsStagingModal-confirmationTableEntryColumn {
    width: 40%;
}

.UploadsStagingModal-confirmationTableCreateColumn {
    width: 20%;
}

.UploadsStagingModal-confirmationTableUpdateColumn {
    width: 20%;
}

.UploadsStagingModal-confirmationTableDeleteColumn {
    width: 20%;
}

.UploadStagingModal-errorGroupsTableContainer .GenericTable-cell {
    padding: 0;
}

.UploadStagingModal-errorGroupsTableContainer .GenericTable-cell button {
    color: #212529;
    background: transparent;
    padding: 0.75rem;
    width: 100%;
    border: transparent;
    text-align: left;
}

.UploadStagingModal-errorGroupsTableContainer .GenericTable-cell button:hover,
.UploadStagingModal-errorGroupsTableContainer .GenericTable-cell button:active,
.UploadStagingModal-errorGroupsTableContainer .GenericTable-cell button:focus {
    color: #212529 !important;
    background: transparent !important;
    border: transparent !important;
    box-shadow: none !important;
}

.UploadsStagingModal-entityNameCell {
    padding-left: 6px;
}

.UploadsStagingModal-entityCheckboxCell {
    padding-left: 5px;
}

.UploadsStagingModal-uploadErrorMessage {
    margin-bottom: 5px;
}

.UploadStagingModal-errorGroupsTableContainer {
    margin-bottom: 5px;
    overflow: auto;
    max-height: 180px;
}

.UploadsStagingModal-errorGroupsTableFieldColumn {
    width: 25%;
    padding: 2px;
}

.UploadsStagingModal-errorGroupsTableNameColumn {
    width: 50%;
    padding: 2px;
}

.UploadsStagingModal-errorGroupsTableErrorsColumn {
    width: 25%;
    padding: 2px;
}

.UploadsStagingModal-errorGroupsTableWarningsColumn {
    width: 25%;
    padding: 2px;
}

.UploadsStagingModal-errorGroupsTableRow {
    cursor: pointer;
}

.UploadsStagingModal-errorDetailTableContainer {
    overflow: auto;
    max-height: 400px;
    margin-top: 10px;
}

/* define UserGroupPermissionsForm */
.UserGroupPermissionsForm {
    display: flex;
    align-items: center;
    flex-direction: column;
    max-height: 100%;
}

.UserGroupPermissionsForm-filterRow {
    flex-grow: 0;
    display: flex;
    width: 100%;
    margin-bottom: 15px;
    align-items: center;
    justify-content: space-between;
}

.UserGroupPermissionsForm-body {
    flex-grow: 1;
    width: 100%;
    overflow-y: auto;
    max-height: 100%;
    padding: 0 15px 0 0;
}

.UserGroupPermissionsForm-permissionsFilter {
    flex-grow: 8.5;
}

.UserGroupPermissionsForm-sectionHeaderRight {
    display: flex;
    align-items: center;
}

.UserGroupPermissionsForm-permissionCount {
    margin-left: 15px;
    margin-right: 0;
    min-width: 4rem;
}

.UserGroupPermissionsForm-hiddenPermissionToggle {
    flex-grow: 0;
    margin-left: 20px;
    margin-right: 20px;
}

/* @define UserSummaryTable */
.UserSummaryTable-cell--header {
    border-top: none;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 150px;
}

.UserSummaryTable-cell {
    max-width: 150px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Remove bullets and tighten group list spacing */
.UserSummaryTable-groups {
    list-style: none;
    padding: 0;
    margin: 0;
}

.UserSummaryTable-group {
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.UserDetailsForm-calendarFeedDisplayBanner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    margin-bottom: 15px;
    background: #fdf2d1;
    border: 1px solid #fceec0;
    border-radius: 4px;
}

.UserDetailsForm-calendarFeedDisplayBannerText {
    margin-right: 15px;
    font-size: 14px;
    color: #806420;
}

.UserDetailsForm-EditableUnits-btn,
.UserDetailsForm-ViewableUnits-btn {
    width: 200px;
    white-space: nowrap;
}

.UserDetailsForm-editableUnitsCountBadge,
.UserDetailsForm-viewableUnitsCountBadge {
    margin-left: 5px;
    font-weight: 500;
    font-size: 9px;
    background: #ddd;
    min-width: 22px;
}

.UserDetailsForm-calendarFeedInput,
.UserDetailsForm-calendarGuid,
.UserDetailsForm-noCalendarGuid {
    margin-bottom: 10px;
}

.UserDetailsForm-ViewableUnits-btn-betaTag {
    font-size: 60%;
    padding: 0.5em;
    margin-left: 5px;
}

.UserDetailsForm-groupsInput .custom-control-label {
    overflow-wrap: break-word;
    word-break: normal;
    white-space: normal;
    max-width: 100%;
}

.WorkhoursForm {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
}

.WorkhoursForm-controlsRow {
    flex-grow: 0;
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;

    /* The z-index is set to be higher than that of .WorkhoursForm-gridContainer */
    z-index: 5;
}

.WorkhoursForm-dayStartAndTimeWorked,
.WorkhoursForm-timeInputGroup,
.WorkhoursForm-otherInputs {
    display: flex;
}

.WorkhoursForm-dayStartAndTimeWorked,
.WorkhoursForm-timeInputGroup {
    flex-shrink: 0;
}

.WorkhoursForm-weekendsToggle {
    padding-top: 10px;
}

.WorkhoursForm-otherInputs {
    flex-shrink: 1;
    flex-grow: 1;
    display: flex;
}

.WorkhoursForm-timezoneGroup {
    flex-grow: 1;
    flex-shrink: 1;
    max-width: 25em;
}

.WorkhoursForm-weekendsFormGroup {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 12em;
    max-width: 20em;
}

.WorkhoursForm-hoursInput,
.WorkhoursForm-minutesInput {
    width: 70px;
}

.WorkhoursForm-hoursInput {
    margin-right: 10px;
}

.WorkhoursForm-hoursInput.is-warning,
.WorkhoursForm-minutesInput.is-warning {
    border-color: #ffc107;
}

.WorkhoursForm-minutesInput.is-error {
    border-color: var(--danger);
}

.WorkhoursForm-legendPopoverContainer {
    display: none;
}

.popover {
    max-width: 500px;
}

.WorkhoursForm-selectionInfo {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    padding: 4px 0;
    align-self: center;
    flex-grow: 1;
}

.WorkhoursForm-selectionBadge {
    margin-right: 0;
}

.WorkhoursForm-selectionShortcuts {
    color: var(--text-subtle);
    font-size: 0.875em;
}

.WorkhoursForm-gridContainer {
    flex-grow: 1;
    overflow-y: auto;
    max-height: 100%;
    margin: 15px -15px -15px;

    /* The z-index is set to be lower than that of .WorkhoursForm-controlsRow */
    z-index: 1;
}

.WorkhoursForm-grid {
    width: 100%;
    border-collapse: collapse;
}

.WorkhoursForm-gridYearRow {
    background-color: #767676;
    border: 1px solid #ccc;
    color: var(--text-inverse);
    text-align: center;
}

.WorkhoursForm-gridCell,
.WorkhoursForm-gridColumnHeader,
.WorkhoursForm-gridRowHeader {
    user-select: none;
}

.WorkhoursForm-gridFillerCell {
    background-color: #f2f2f2;
}

.WorkhoursForm-gridCell {
    border: 1px solid #ccc;
    text-align: center;
    height: 30px;
    min-width: 30px;
    cursor: pointer;
}

.WorkhoursForm-gridCell.is-selected {
    border: 2px solid var(--primary);
    font-weight: var(--font-weight-bold);
}

.WorkhoursForm-gridCell.is-self {
    background-color: #fde899;
}

.WorkhoursForm-gridCell.is-ancestor {
    background: linear-gradient(360deg, var(--surface-default) 3.51%, #fde899 97.37%);
}

.WorkhoursForm-gridCell.is-disabled {
    background-color: #f2f2f2;
    color: rgb(0 0 0 / 50%);
    cursor: default;
}

.WorkhoursForm-gridCell.is-past {
    position: relative;
    overflow: hidden;
}

/* This renders the strikethrough for days in the past */
.WorkhoursForm-gridCell.is-past::before {
    position: absolute;
    top: 50%;
    left: -25%;
    content: "";
    height: 1px;
    width: 150%;
    background-color: #ccc;
    transform-origin: center;
    transform: rotate(-45deg);
}

.WorkhoursForm-gridCell.is-today {
    background-color: var(--primary);
    color: var(--text-inverse);
}

.WorkhoursForm-unsavedCellIndicatorContainer {
    position: relative;
    padding: 0;
    margin: 0;
}

.WorkhoursForm-unsavedCellIndicator {
    position: absolute;
    margin-top: -3px;
}

.WorkhoursForm-dayPopover {
    font-size: 12px;
    text-align: center;
}

.WorkhoursForm-cornerCell {
    border: 1px solid #ccc;
    background-color: #f2f2f2;
    text-align: center;
    color: var(--primary);
}

.WorkhoursForm-gridColumnHeader {
    text-align: center;
    background-color: #f2f2f2;
    font-weight: var(--font-weight-regular);
}

.WorkhoursForm-gridRowHeader {
    padding: 0 1em 0 5px;
    border: 1px solid #ccc;
    background-color: #f2f2f2;
    cursor: pointer;
    font-weight: var(--font-weight-regular);
}

.WorkhoursForm-gridCell:not(.is-disabled):hover {
    background-color: var(--interactive-primary-13);
}

/* Ugly way to line up buttons with other form inputs */
.WorkhoursForm-button {
    margin-top: calc(14px * 1.5);
}

.WorkhoursForm-buttonDivider {
    height: 16px;
    width: 1px;
    background: var(--border-subtle);
}

.WorkhoursLegend {
    display: flex;
}

.WorkhoursLegend-row {
    padding: 5px;
}

.WorkhoursLegend-description {
    padding-left: 10px;
    display: table-cell;
    vertical-align: middle;
}

.WorkhoursLegend-gridCell {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #ccc;
    height: 30px;
    min-width: 30px;
    font-size: 13px;
}

.WorkhoursLegend-gridCell.is-selected {
    border: 2px solid var(--primary);
    box-shadow: 0 0 6px var(--primary);
    font-weight: var(--font-weight-bold);
}

.WorkhoursLegend-gridCell.is-self {
    background-color: #fde899;
}

.WorkhoursLegend-gridCell.is-ancestor {
    background: linear-gradient(360deg, var(--surface-default) 3.51%, #fde899 97.37%);
}

.WorkhoursLegend-gridCell.is-disabled {
    background-color: #f2f2f2;
    color: rgb(0 0 0 / 50%);
}

.WorkhoursLegend-gridCell.is-past {
    position: relative;
    overflow: hidden;
}

/* This renders the strikethrough for days in the past */
.WorkhoursLegend-gridCell.is-past::before {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    height: 1px;
    width: 150%;
    background-color: #ccc;
    transform-origin: bottom left;
    transform: rotate(-45deg);
}

.WorkhoursLegend-gridCell.is-today {
    background-color: var(--primary);
    color: var(--text-inverse);
}

/* define DayBubble */
.DayBubble-column {
    width: 1.25rem;
    margin: 1px;
}

.DayBubble-text {
    line-height: 1;
    color: var(--text-subtle);
    font-size: 0.75rem;
}

.DayBubble-box {
    min-height: 1.25rem;
    width: 1.25rem;
    background-color: var(--secondary-subtle);
}

.DayBubble-box.is-highlighted.DayBubble--task {
    background-color: var(--data-blue-500);
}

.DayBubble-box.is-highlighted.DayBubble--unavailability {
    background-color: var(--secondary-accent);
}

/* @define FilterSidebar */

/*
This is needed to offset the native internal padding on the sidebar compo
*/
.FilterSidebar-filterContainer {
    margin: -15px;
}

.icon-badge {
    background-color: var(--surface-subtle-light);
    height: fit-content;
    min-height: 2rem;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    width: fit-content;
}

/* @define LinkButtonsList */

/* stylelint-disable plugin/selector-bem-pattern -- these variables violate the expected naming it wants them with the ComponentName too */
.LinkButtonsList-buttonContainer {
    --button-height: 40px;
    --link-buttons-row-num: 5;

    display: flex;
    flex-direction: column;
    max-height: calc(var(--button-height) * var(--link-buttons-row-num));
    overflow: auto;
}
/* stylelint-enable plugin/selector-bem-pattern */

.LinkButtonsList-linkButton {
    flex-shrink: 0;
    text-align: start;
}

.LinkButtonsList-noResultsMessageContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 100%;
}

.LinkButtonsList-noResultsMessage {
    color: var(--text-subtle);
    font-style: normal;
    font-weight: var(--font-weight-regular);
    line-height: normal;
}

.ProgressArc-svg {
    margin: auto;
    display: block;
    width: 100%;
    height: auto;
}

.ProgressArc-bar-background {
    stroke: var(--data-blue-100);
}

.ProgressArc-bar-progress {
    stroke: var(--data-blue-500);

    /* Stroke-dasharray is set by (Math.PI x Radius) to get the length of the arc */
    stroke-dashoffset: 440px;
    stroke-dasharray: 440px;
    transition: stroke-dashoffset 1s linear;
}

.ProgressArc-bar {
    fill: none;
    stroke-width: 16;
}

.ProgressBar-text--percentage {
    text-anchor: middle;
    font-size: 3.375rem;
    font-weight: var(--font-weight-semibold);
    fill: var(--text-accent);
}

.ProgressBar-text--title {
    font-size: 1rem;
    fill: var(--text-accent);
}

.ProgressBar-text--progress {
    font-size: 1.125rem;
    font-weight: var(--font-weight-semibold);
    fill: var(--text-accent);
}

/* define SavedViewButton */
.SavedViewButton {
    text-align: left;
    color: var(--text-accent);
    padding: 0 0.75rem;
    min-height: 35px;
    border-radius: 0.25rem;
    border: 1px solid var(--border-primary-subtle);
    background-color: var(--surface-primary-subtle);
}

.SavedViewButton-star {
    color: var(--icon-subtle);
    flex-shrink: 0;
}

.SavedViewButton:hover {
    border: 1px solid var(--border-primary-accent);
    background-color: var(--primary-accent);
}

.SavedViewButton:hover .SavedViewButton-star {
    color: var(--icon-accent);
}

.SavedViewButton:focus {
    color: var(--text-primary-emphasis);
    border: 1px solid var(--border-primary);
    background-color: var(--primary-accent);
}

.SavedViewButton:focus .SavedViewButton-star {
    color: var(--icon-primary-emphasis);
}

/* do not use stylelint -- these variables violate the expected naming it wants them with the ComponentName too */
.SavedViewsDropdown-SavedViewButtonList {
    --button-height: 40px; /* button height and padding */
    --buttons-row-num: 5;

    padding: 0.25rem 0.75rem;
    max-width: 26.875rem;
    max-height: calc(var(--button-height) * var(--buttons-row-num));
    overflow: auto;
    gap: 0.25rem;
    min-width: 16.25rem;
}

.SavedViewsDropdown-menu {
    box-shadow: 0 2px 4px var(--surface-container-selected);
}

/* define SavedViewSummaryBar */

.SavedViewSummaryBar {
    display: flex;
    gap: 0.25rem;
    margin-top: 0.75rem;
    padding: 0.75rem 1rem;
    color: var(--text-accent);
    border: 1px solid var(--border-default);
    border-radius: 0.25rem;
    flex-direction: column;
    align-items: flex-start;
}

.SavedViewSummaryBar.has-currentView {
    background-color: var(--surface-primary-subtle);
    border: 1px solid var(--border-primary-subtle);
}

.SavedViewSummaryBar.has-currentView .SavedViewSummaryBar-icon {
    color: var(--icon-subtle);
}

.SavedViewSummaryBar-currentViewName {
    font-weight: var(--font-weight-semibold);
}

.SavedViewSummaryBar-modifiedText {
    font-size: 0.75rem;
}

.SavedViewSummaryBar-filterSection {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.SavedViewSummaryBar-filterTitles {
    display: flex;
    gap: 1rem;
    font-size: var(--font-size-small);
}

@media (width <= 1000px) {
    .SavedViewSummaryBar-filterSection {
        align-items: flex-start; /* icon aligns to top */
    }

    .SavedViewSummaryBar-filterTitles {
        flex-direction: column;
        gap: 0.5rem;
    }
}

.TimeBadge {
    min-width: 5.5rem;
}

/* @define WidgetContainer */

.WidgetContainer {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.WidgetContainer-heading {
    color: var(--text-default);
    font-size: 1.0625rem; /* this needs to be changed for screens larger than mobile ( >= 768 px ) */
    font-style: normal;
    font-weight: var(--font-weight-regular);
    line-height: normal;
    margin: 0;
}

.WidgetContainer-infotip {
    font-size: 0.875rem;
    color: var(--primary);
}

.WidgetContainer-card {
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: flex-start;
    border-radius: 8px;
    background: var(--surface-default);
    border-left: 2px solid var(--orange-marketing-400);
    box-shadow: 0 2px 6px 3.2px rgb(171 171 171 / 15%);
    overflow: auto;
}

/* On screen widths larger than mobile, we decrease the font size */
@media (width >= 768px) {
    .WidgetContainer-heading {
        font-size: 1rem;
    }
}

/* @define WidgetLastUpdated */

.WidgetLastUpdated {
    color: var(--text-subtle);
    font-size: 0.75rem;
}

/* @define CapacityVsDemandWidget */

/* stylelint-disable plugin/selector-bem-pattern */
.CapacityVsDemandWidget .WidgetContainer-card {
    min-height: calc(var(--dashboard-widget-height) * 2);
}
/* stylelint-enable plugin/selector-bem-pattern */

.GanttSavedViewsWidget-noViewsMessage {
    padding: 0 0 10px 17px;
}

.GanttSavedViewsWidget-stubContainer {
    padding: 0 0 5px 17px;
}

.GanttSavedViewsWidget-viewLink {
    margin-bottom: 5px;
}

/* @define PersonalScheduleWidget */
/* stylelint-disable plugin/selector-bem-pattern */
.PersonalScheduleWidget .WidgetContainer-card {
    min-height: calc(var(--dashboard-widget-height) * 2);
    max-height: calc(var(--dashboard-widget-height) * 2);
}
/* stylelint-enable plugin/selector-bem-pattern */

.PersonalScheduleWidget-content {
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
}

/* @define RelativeReportWidget */

.RelativeReportWidget-reportResultsTable {
    min-height: 0;
}

/* @define RevenueOverTimeWidget */

/* stylelint-disable plugin/selector-bem-pattern */
.RevenueOverTimeWidget .WidgetContainer-card {
    min-height: calc(var(--dashboard-widget-height) * 2);
}
/* stylelint-enable plugin/selector-bem-pattern */

/* @define UtilisationWidget */

/* stylelint-disable plugin/selector-bem-pattern */
.UtilisationWidget .WidgetContainer-card {
    height: 100%;
    min-height: calc(var(--dashboard-widget-height) * 2);
    max-height: calc(var(--dashboard-widget-height) * 2);
}
/* stylelint-enable plugin/selector-bem-pattern */

.UtilisationWidget-explainerText {
    color: var(--text-subtle);
}

.UtilisationWidget-cardBody {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    height: 100%;
}

.MainGanttFiltersDropdown {
    margin-right: 0;
}

.MainGanttFiltersDropdown .dropdown-divider {
    border-color: var(--border-subtle);
}

.MainGanttFiltersDropdown.dropdown .dropdown-menu {
    border-color: var(--secondary-accent);
    padding: 0.75rem 0 0;
    height: calc(100vh - 80px);
}

.GanttFiltersDropdown.dropdown .dropdown-menu {
    overflow-y: visible;
}

.MainGanttFiltersDropdown.dropdown .NestedDropdown-submenu {
    height: calc(100vh - 80px);
    overflow-y: hidden;
}

.MainGanttFiltersDropdown.dropdown .dropdown-menu:not(.NestedDropdown-submenu) {
    width: 300px;
    margin-top: 4px;
}

.MainGanttFiltersDropdown > button {
    border-radius: 0.25rem 0 0 0.25rem;
}

.GanttFiltersDropdown .TreeSelector {
    min-width: 320px;
    padding: 0;
    max-height: none;
    height: auto;
    overflow-y: auto;
}

.GanttFiltersDropdown .TreeSelector-tree {
    padding-left: 0.75rem;
}

.GanttFiltersDropdown .TreeViewNew {
    scrollbar-gutter: stable;
    height: 100%;
}

.GanttFiltersDropdown .TreeSelector .form-control {
    height: revert;
}

.GanttFiltersDropdown .filter-count {
    font-size: smaller;
    display: inline-block;
}

.GanttFiltersDropdown .hidden-filter-count {
    display: none;
}

.MainGanttFiltersDropdown .NestedDropdown .NestedDropdown-toggleButtonContent,
.MainGanttFiltersDropdown .SelectableDropdownItem .SelectableDropdownItem-buttonContent,
.MainGanttFiltersDropdown .NestedDropdown .NestedDropdown-toggleButtonContent span {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.GanttFiltersDropdown .NestedDropdown .NestedDropdown-toggleButtonContent {
    padding-right: 4px;
}

.GanttFiltersDropdown .NestedDropdown.filter-active .NestedDropdown-toggleButtonContent {
    font-weight: var(--font-weight-semibold);
}

.MainGanttFiltersDropdown .GanttFiltersDropdown-dropdownMenuContainer {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.GanttFiltersDropdown-ScrollableContainer {
    overflow-y: auto;
    flex-grow: 1;
}

.GanttFiltersDropdown-dropdownMenuContainer .GanttFiltersDropdown-ControlsGroup {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.GanttFiltersDropdown-ScrollableContainer .TreeSelector-controls {
    padding: 0 0.75rem 0.75rem;
}

.GanttFiltersDropdown .NestedDropdown-customButtonContent {
    flex-wrap: nowrap;
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.GanttModeDropdown {
    align-items: center;
    display: flex;
    justify-content: space-between;
    width: 129px;
}

.GanttModeDropdown-SelectableDropdownItem {
    min-width: 170px;
}

/* AR: violating SUIT convention for required specificity */
/* stylelint-disable selector-id-pattern */
#mainGanttLabelsHead .GanttSettingsDropdown .dropdown-menu {
    /* This causes DEVO-16324. Unfortunately changing overflow is completely throwing off the submenu position. */
    overflow-y: revert;
}

.GanttSettingsDropdown-colorSchemeOptions {
    margin: 4px 24px;
    width: 200px;
}

/* @define GanttSuitableWorkersModal */
.GanttSuitableWorkersModal-footer--workerProfile {
    justify-content: flex-start;
}

.GanttSuitableWorkersModal-body--workerProfile {
    padding: 0;
    display: flex;
    flex-direction: column;
}

/* @define SuggestedResources */
.SuggestedResources-table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

.SuggestedResources-badge {
    color: white;
    font-weight: var(--font-weight-bold);
    border-radius: 0.25rem;
    padding: 4px;
    top: 3px;
}

.SuggestedResources-highlight--a {
    background-color: hsl(120deg 80% 40%);
    min-width: 40px;
}

.SuggestedResources-highlight--b {
    background-color: hsl(120deg 50% 40%);
    min-width: 34px;
}

.SuggestedResources-highlight--c {
    background-color: hsl(120deg 20% 60%);
    min-width: 23px;
}

.SuggestedResources-table .SuggestedResources-tableCell {
    vertical-align: middle;
}

.SuggestedResources-workerLink {
    margin-left: -0.75rem;
    max-width: 200px;
}

/* @define WorkerProfile */
.WorkerProfile {
    display: flex;
    flex-direction: column;
    min-height: 0; /* makes the scroll on the profile body work */
}

.WorkerProfile-body {
    padding: 1rem;
    overflow-y: auto;
}

.WorkerProfile-cardGrid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem 2rem;
}

.WorkerProfile-nameHeader {
    background: var(--surface-subtle-light);
    border-radius: 0;
}

.WorkerProfile-aiSummaryContent {
    padding: 1rem;
    background: var(--surface-subtle-light);
    border-radius: 0.5rem;
}

.WorkerProfile-aiSectionHeader {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.WorkerProfile-aiSectionTitle {
    margin: 0;
    font-weight: var(--font-weight-semibold);
}

.WorkerProfile-aiSectionSubheader {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.WorkerProfile-aiSectionSubtitle {
    margin: 0;
    font-weight: var(--font-weight-semibold);
}

.WorkerProfile-aiBadge {
    padding: 0.25rem 0.5rem;
}

.WorkerProfile-aiSparklesIcon {
    color: var(--icon-primary);
}

.WorkerProfile-sectionContent {
    padding-left: 3%;
    padding-right: 3%;
    margin-top: 1rem;
}

.WorkerProfile-unlinkedWorkerIcon {
    color: #ccc;
}

.WorkerProfile-unlinkedWorkerIconWrapper {
    align-self: center;
    padding-left: 0.5em;
    padding-top: 1px;
    font-size: 14px;
}

.WorkerProfile-collapsibleHeader {
    cursor: pointer;
}

/* overwriting some Bootstrap non-sense  --> input group appending button styles are weird - temporary fix for bootstrap 4 fixes release. 07/02/2020 LU */
.WorkerProfile-inputGroupText {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    margin-left: -1px;
}

/* end of overwriting bootstrap non-sense */

.WorkerProfile-inputGroup {
    max-width: 40%;
}

.WorkerProfile-traitsTable {
    margin-bottom: 2rem;
}

/* @define WorkerProfileCard */
.WorkerProfileCard {
    min-width: 0; /* stops the cards growing when their content is too big */
}

.WorkerProfileCard-title {
    margin-bottom: 5px;
}

.WorkerProfileCard-subtitle {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.GanttTraitsEditModal-dialog {
    min-height: 600px;
    position: relative;
}

.GanttTraitsEditModal-dialog .modal-body {
    /* Want to position the sidebar relative to the dialog element, so revert position: relative here */
    position: static;
}

/* @define AiWorkerBioSection; weak */
.AiWorkerBioSection-summaryContent {
    background: var(--surface-subtle-light);
    padding: 0.5rem;
    border-radius: 0.5rem;
}

.AiWorkerBioSection .badge {
    padding: 0.25rem 0.5rem;
}

.GanttEffortInput {
    display: flex;
    flex-wrap: wrap;
}

.GanttEffortInput-hoursNumberInput,
.GanttEffortInput-minutesNumberInput,
.GanttEffortInput-percentageNumberInput {
    width: 110px;
}

/* AA - it would be nice if we didn't have to use !important here in "new" Vue component */
/* stylelint-disable selector-id-pattern */
input#GanttEffortInput-hoursNumberInput,
input#GanttEffortInput-minutesNumberInput,
input#GanttEffortInput-percentageNumberInput {
    padding-right: 0 !important; /* This !important is to override a deeply buried bootstrap !important for this specific case */
}
/* stylelint-enable selector-id-pattern */

.GanttEffortInput-percentageNumberInput {
    padding-left: 0.5rem;
}

.GanttEffortInput-effortIcon {
    padding-top: 0.5rem;
    padding-right: 5px;
}

.GanttEffortInput-conflict > input {
    border-color: var(--warning);
    background-position: right calc(0.375em + 0.1875rem) center;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.GanttEffortInput-error {
    display: flex;
}

.GanttSidebarSection {
    padding: 10px;
}

.GanttSidebarSection--withBorderBottom {
    border-bottom: 1px solid #6c757d;
}

.GanttSidebarSection-header {
    position: relative;
}

.GanttSidebarSection--collapsible .GanttSidebarSection-header {
    cursor: pointer;
}

.GanttSidebarSection--collapsible.is-expanded .GanttSidebarSection-header {
    margin-bottom: 8px;
}

.GanttSidebarSection-headerRight {
    align-items: center;
    display: flex;
    gap: 5px;
    justify-content: center;
}

.GanttSidebarSection-headerText--withHeaderRight {
    /* buttons on top-right give the header enough extra height */
    margin-bottom: 0;
}

/* AR: this targets slot content - we are intentionally avoiding our SUIT naming convention */
.GanttSidebarSection .Btn {
    height: 28px;
    padding: 0 10px;
}

.GanttSidebarSection--collapsible.is-expanded .GanttSidebarSection-content {
    padding-left: 22px;
}

.GanttSidebarSection .GanttSidebarSection-collapseButton,
.GanttSidebarSection .GanttSidebarSection-collapseButton:hover,
.GanttSidebarSection .GanttSidebarSection-collapseButton:active {
    background-color: transparent;
    border-color: transparent;
    color: inherit;
    height: auto;
    padding: 0;
    width: 20px;
}

.GanttSidebarSection-headerText {
    font-size: 1em;
    font-weight: var(--font-weight-bold);
    margin-bottom: 0;
    margin-right: 5px;
}

.GanttSidebarSection-headerSubtitle {
    flex: 1 0 0;
    overflow: hidden;
}

.GanttSidebarSection-headerSubtitle-text {
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*
 /* AR 11/08/2022 */

/* FOR STORYBOOK PRESENTATION ONLY - NOT PRECIOUS */

/* Due to the GanttSidebarSection component making heavy use of slots, */

/* we are passing a lot of content with styles scoped to a parent component */

/* I'm copy/pasting the relevant styles for the Storybook stories here */

/* to avoid importing the whole gantt.css monolith */

/* In time, these will hopefully be more nicely scoped to */

/* e.g. a GanttSidebar.css file which we can import  */

/* in the .stories.js in place of this. */

.GanttSidebarSection--storybook .row {
    margin: 2px 0 0;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: start;
    flex-flow: row wrap;
}

.GanttSidebarSection--storybook .bullet-icon {
    margin-right: 10px;
}

.GanttSidebarSection--storybook .flex-align-right {
    justify-content: flex-end;
}

.moveBookingsBetweenJobs-sidebarWrapper {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}

.MBBE-button {
    height: 34px !important;
}

:root {
    /* These need to be set on root because the popover appends to the bottom of the body */
    --color-approved: var(--secondary-teal-11);
    --color-rejected: var(--secondary-teal-d3);
}

.OdaProgressBar {
    padding: 0 15px;
}

.OdaProgressBar .GanttSidebarSection-content {
    align-content: flex-start;
    color: var(--text-color);
    display: flex;
    flex-wrap: wrap;

    /* Absolute height so there's no jumping when the progress count appears */
    height: 60px;
}

.OdaProgressBar-bar {
    border-radius: 6px;
    height: 12px;
    margin-top: 4px;
    width: 100%;
}

.OdaProgressBar-approvedBar,
.OdaProgressBar-popoverLegend--approved {
    background-color: var(--color-approved);
}

.OdaProgressBar-rejectedBar,
.OdaProgressBar-popoverLegend--rejected {
    background-color: var(--color-rejected);
}

.OdaProgressBar-popoverLegend--approved,
.OdaProgressBar-popoverLegend--rejected {
    display: inline-block;
    height: 16px;
    width: 16px;
}

.OdaProgressMetric table {
    display: flex;
}

.OdaProgressMetric tbody {
    width: 100%;
}

.OdaProgressMetric td,
.OdaProgressMetric tr {
    width: 100%;
}

.OdaProgressMetric table span.OdaProgressMetric-valueCell {
    font-weight: var(--font-weight-bold);
}

.OdaProgressMetric table td.OdaProgressMetric-percentageCell {
    text-align: right;
}

.OdaSuggestionActions {
    color: var(--text-color);
    padding: 15px;
}

.OdaSuggestionActions .GanttSidebarSection-headerRight {
    align-self: flex-start;
}

.OdaSuitabilityDistribution {
    padding: 13px 15px;
}

.OdaSuitabilityDistribution .GanttSidebarSection-header {
    padding-bottom: 13px;
}

/* AR: a load of this is duplicate of OdaSuitabilityDistribution */

.OdaSuitabilityDistribution-headerRow {
    font-weight: var(--font-weight-bold);
    margin-right: 44px;
}

.OdaSuitabilityDistribution-rowList {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.OdaSuitabilityDistribution-listItem {
    padding: 5px 0;
}

.OdaSuitabilityDistribution-listItem:not(:last-of-type) {
    border-bottom: 1px dashed var(--border-color);
}

.OdaSuitabilityDistribution-headerRow,
.OdaSuitabilityDistribution-row {
    border-radius: 4px;
    display: flex;
    gap: 6px;
    line-height: 17px;
    margin-left: -5px; /* AR: unique to Suitability distribution */
    margin-right: -5px;
    padding: 8px 5px;
}

.OdaSuitabilityDistribution-row {
    position: relative;
}

.OdaSuitabilityDistribution-row:hover {
    background-color: var(--bg-color-light);
}

.OdaSuitabilityDistribution-row.highlighted {
    background-color: var(--bg-color-dark);
    color: var(--text-white);
}

.OdaSuitabilityDistribution-workersCell,
.OdaSuitabilityDistribution-suggestionsCell {
    text-align: right;
}

.OdaSuitabilityDistribution-scoreCell {
    width: 69px;
}

.OdaSuitabilityDistribution-workersCell {
    width: 101px;
}

.OdaSuitabilityDistribution-suggestionsCell {
    width: 123px;
}

.OdaSuitabilityDistribution-filterButton {
    margin-left: auto;
}

/* Button overrides
    AR: high specificity is needed to override default iconOnly styles */
.OdaSuitabilityDistribution-filterButton.Btn {
    background-color: transparent;
    border-color: transparent;
    flex-shrink: 0;
    height: 18px;
}

.OdaSuitabilityDistribution-filterButton.Btn:focus {
    box-shadow: none;
}

.OdaSuitabilityDistribution-filterButton.Btn:focus-visible {
    outline: none;
}

.OdaSuitabilityDistribution-filterButton.Btn:not(:disabled, .disabled):active,
.OdaSuitabilityDistribution-filterButton.Btn:not(:disabled, .disabled):active:focus {
    /* AR: although bootstrap typically displays a focus ring on :focus */

    /* (i.e. shows up for keyboard focus and when clicked) */

    /* this looks a bit much for these large rows. */

    /* I've chosen to remove this and target :focus-visible instead (only visible via keyboard nav) */
    background-color: transparent;
    border-color: transparent;
    box-shadow: none;
}

.btn.btn-light .OdaSuitabilityDistribution-filterButtonIcon {
    color: var(--text-color);
}

.OdaSuitabilityDistribution-row.highlighted .OdaSuitabilityDistribution-filterButtonIcon {
    color: var(--text-white);
}

/* END: button overrides */

/* Making the row have the accessibility and target of a button:
    https://kittygiraudel.com/2022/04/02/accessible-cards/
 */

.OdaSuitabilityDistribution-filterButton::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 4px;
}

.OdaSuitabilityDistribution-filterButton:focus-visible::before {
    box-shadow: 0 0 0 0.2rem var(--bg-color-light-focus-ring);
}

.OdaSuitabilityDistribution-row.highlighted .OdaSuitabilityDistribution-filterButton:focus-visible::before {
    box-shadow: 0 0 0 0.2rem var(--bg-color-dark-focus-ring);
}

.OdaSummaryMetric.GanttSidebarSection {
    padding: 5px 15px 5px 5px;
}

.OdaSummaryMetric-taskCount--noFilterButton {
    margin-right: 44px;
    padding: 3px 0;
}

.OdaSummaryMetric-rowList {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.OdaSummaryMetric-listItem {
    padding: 5px 0;
}

.OdaSummaryMetric-listItem:not(:last-of-type) {
    border-bottom: 1px dashed var(--border-color);
}

.OdaSummaryMetric-row,
.OdaSummaryMetric .GanttSidebarSection-header {
    border-radius: 4px;
    margin-right: -5px;
    padding: 8px 5px;
    position: relative;
}

.OdaSummaryMetric .GanttSidebarSection-header {
    height: 30px;
}

.OdaSummaryMetric:not(.GanttSidebarSection--collapsible) .GanttSidebarSection-header {
    padding-left: 25px;
}

.OdaSummaryMetric-row {
    display: flex;
    gap: 6px;
}

.OdaSummaryMetric-row:hover,
.OdaSummaryMetric .GanttSidebarSection-header:hover {
    background-color: var(--bg-color-light);
}

.OdaSummaryMetric-row.highlighted,
.OdaSummaryMetric.highlighted .GanttSidebarSection-header {
    background-color: var(--bg-color-dark);
    color: var(--text-white);
}

.OdaSummaryMetric-rowText {
    line-height: 17px;
    align-self: center;
}

.OdaSummaryMetric-rowCount {
    margin-left: auto;
    text-align: right;
    width: 25px;
}

/* Button overrides
    AR: high specificity is needed to override default iconOnly styles */
.OdaSummaryMetric-filterButton.Btn {
    background-color: transparent;
    border-color: transparent;
    flex-shrink: 0;
    height: 18px;
}

.OdaSummaryMetric-filterButton.Btn:focus {
    box-shadow: none;
}

.OdaSummaryMetric-filterButton.Btn:focus-visible {
    outline: none;
}

.OdaSummaryMetric-filterButton.Btn:not(:disabled, .disabled):active,
.OdaSummaryMetric-filterButton.Btn:not(:disabled, .disabled):active:focus {
    /* AR: although bootstrap typically displays a focus ring on :focus */

    /* (i.e. shows up for keyboard focus and when clicked) */

    /* this looks a bit much for these large rows. I've chosen to remove this and target :focus-visible instead */

    /* (only visible via keyboard nav) */
    background-color: transparent;
    border-color: transparent;
    box-shadow: none;
}

.btn.btn-light .OdaSummaryMetric-filterButtonIcon {
    color: var(--text-color);
}

/* !important used here as this is an override - we always want all highlighted row's icons to be coloured white.
   This ensures that even if the icons change or new ones are added then colouring is covered.
   */
.OdaSummaryMetric-row.highlighted i,
.OdaSummaryMetric.highlighted i {
    color: var(--text-white) !important;
}

/* END: button overrides */

/* Making the row have the accessibility and target of a button:
    https://kittygiraudel.com/2022/04/02/accessible-cards/
 */

.OdaSummaryMetric-filterButton::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 4px;
}

.OdaSummaryMetric-filterButton:focus-visible::before {
    box-shadow: 0 0 0 0.2rem var(--bg-color-light-focus-ring);
}

.OdaSummaryMetric-row.highlighted .OdaSummaryMetric-filterButton:focus-visible::before,
.OdaSummaryMetric.highlighted .GanttSidebarSection-header .OdaSummaryMetric-filterButton:focus-visible::before {
    box-shadow: 0 0 0 0.2rem var(--bg-color-dark-focus-ring);
}

/* END: Making row have the accessibility of a button */

/* colour classes for icons */

.great-matches {
    color: var(--success);

    /* color: var(--success-green-d3); */
}

.trade-offs {
    /* color: var(--info-blue); */
    color: var(--info);
}

.unassignable {
    /* color: var(--alert-error); */
    color: var(--danger); /* NB: this colour is much darker than before */
}

/* stylelint-disable plugin/selector-bem-pattern -- the OdaSummaryScreen uses Bootstrap tabs and isn't pure SUIT */

/* AR: this is all for adding the scrollbar */
.OdaSummaryScreen,
.OdaSummaryScreen .tabs {
    height: 100%;
}

.OdaSummaryScreen .tabs {
    display: flex;
    flex-direction: column;
}

.OdaSummaryScreen .tab-content {
    overflow-y: auto;
}

.OdaSummaryScreen .tabs .nav-item {
    width: 50%;
}

/* AR: scrollbar end */

.OdaSummaryScreen {
    color: var(--text-color);
}

/* GanttSidebarSection overrides */
.OdaSummaryScreen .GanttSidebarSection {
    border-bottom: 1px solid var(--border-color);
}

.OdaSummaryScreen .GanttSidebarSection-header {
    line-height: 1;
}

.OdaSummaryScreen .GanttSidebarSection-headerRight {
    gap: 8px;
}

.OdaSummaryScreen .GanttSidebarSection--collapsible .GanttSidebarSection-header {
    padding-left: 2px;
}

.OdaSummaryScreen .GanttSidebarSection-collapseButton {
    margin-right: 4px;
}

.OdaSummaryScreen .GanttSidebarSection--collapsible .GanttSidebarSection-content {
    padding-left: 25px;
}

/* END: GanttSidebarSection overrides */

/* AR: Bootstrap doesn't offer a dark mode for the popover so we'll MAKE it happen */
.OdaSummaryScreen-popover {
    background-color: #4c5057;
    border: 1px solid rgb(255 255 255 / 20%);
    color: white;
}

.OdaSummaryScreen-popover .arrow::before {
    border-bottom-color: rgb(255 255 255 / 25%);
    border-top-color: rgb(255 255 255 / 25%);
}

.OdaSummaryScreen-popover .arrow::after {
    border-bottom-color: #4c5057;
    border-top-color: #4c5057;
}

.OdaSummaryScreen-popover .popover-body {
    color: inherit;
}

/* END Bootstrap popover override */

/* This is so the tab hover highlight is not covered by the donut's white background */
.OdaSummaryScreen .d-tabs .nav-item .nav-link:not(.active) .PercentageDonutChart {
    background-color: rgb(0 0 0 / 0%);
}

.OdaSummaryScreen .d-tabs .nav-tabs {
    padding-left: 15px;
    padding-right: 15px;
}

.OdaSummaryScreen .d-tabs .nav-item .nav-link {
    padding-left: 0;
    padding-right: 0;
}

.OdaUpdatePanel-animationContainer {
    border-bottom: 1px dashed var(--border-color);
    margin-bottom: 15px;
    position: relative;
}

.OdaUpdatePanel-animationImg {
    display: block;
    margin: 0 auto;
    max-height: 50vh;
}

.OdaUpdatePanel-messages {
    margin: 6vh 45px;
}

.OdaUpdatePanel-message {
    text-align: center;
    white-space: pre;
}

.OdaUpdatePanel-message:not(:last-child) {
    opacity: 0.5;
}

/* AR: copied from SuitabilityPieChart. Should probably make a generic global "fade" animation */
.OdaUpdatePanel-fade-enter-active,
.OdaUpdatePanel-fade-leave-active {
    transition: opacity 0.3s;
}

.OdaUpdatePanel-fade-enter,
.OdaUpdatePanel-fade-leave-to {
    opacity: 0;
}

.SelectedItemsSection-row {
    border-bottom: 1px dashed #ced4da;
    margin: 0;
    padding: 5px 0;
}

.SelectedItemsSection-row:first-of-type {
    padding-top: 0;
}

.SelectedItemsSection-row:last-of-type {
    border: none;
    padding-bottom: 0;
}

/** @define GanttSidebarBookingState */

.GanttSidebarBookingState-getTransitions {
    font-weight: 500;
}

.GanttSidebarBookingState-changeStateButton {
    display: block;
    margin-left: 28px;
    margin-top: 5px;
    width: calc(100% - 28px);
}

.GanttSidebarBookingState-loadingSpinner {
    font-size: 5vh;
}

/** @define GanttSidebarHeader */
/* stylelint-disable plugin/selector-bem-pattern */
.GanttSidebarHeader-jobName {
    margin-top: 0;
    max-width: 335px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    overflow-wrap: break-word;
}

.GanttSidebarHeader-jobNameLink {
    margin-left: 5px;
    font-size: 14px;
}

.GanttSidebarHeader-closeButton {
    overflow: unset;
}

.GanttSidebar-section-close-button-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: 100%;
}

.GanttSidebar-jobTaskAndName {
    margin-top: 0 !important;
    width: 100%;
}

.GanttSidebarHeader-splitTaskButton {
    padding: 0;
}

.GanttSidebarHeader-row {
    margin: 2px 0 0;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: start;
    flex-flow: row wrap;
    row-gap: 5px;
}

.GanttSidebarHeader-buttons {
    justify-content: flex-start;
    margin-top: 8px;
}

.GanttSidebarHeader-buttons > div,
.GanttSidebarHeader-buttons > button {
    margin-right: 5px;
}

.GanttSidebar-header .task-name {
    margin-bottom: 0;
    max-width: 270px;
    overflow-wrap: break-word;
    color: #666;
    font-weight: var(--font-weight-semibold);
}

/** @define GanttSidebarJob */

.GanttSidebarJob-maxWidth {
    max-width: 240px;
}

.GanttSidebarJob-noPriorityColor {
    color: #c8c8c8 !important;
}

.GanttSidebarJob-boundsSeparator {
    margin: 0 5px;
    display: inline;
}

.GanttSidebarJob-engagementHyperlink {
    margin-left: 15px;
    display: flex;
    align-items: center;
}

.GanttSidebarJob-engagementButton {
    margin-right: 0;
}

.GanttSidebarJob-planOwnedExternallyIndicator {
    background-color: var(--primary-subtle);
}

.GanttSidebarPercentageScheduled-grades-wrapper {
    display: flex;
    flex-direction: column;
    margin-top: 5px;
}

.GanttSidebarPercentageScheduled-each-grade-name {
    font-size: 0.9em;
    margin-bottom: 0;
    width: 60%;
}

.GanttSidebarPercentageScheduled-each-grade-percentage {
    width: 50px;
    font-size: 0.9em;
    text-align: right;
}

.GanttSidebarResourceRequirements-skill {
    max-width: 200px;
}

.GanttSidebarSchedule-startEndDate {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.GanttSidebarSchedule-startEndDateIcon {
    margin-right: 10px;
    text-align: center;
}

/* .GanttSidebarSection here is a hack to get around CSS specificity, and we should fix this up (DEVO-17096) */
.GanttSidebarSection .GanttSidebarSchedule-datePickerLock {
    margin-left: auto;
    padding: 1px 5px;
}

.GanttSidebarSchedule-datePickerSeparator {
    display: block;
    width: 29px;
    margin: 0 3px;
    flex-shrink: 0;
    text-align: center;
}

.GanttSidebarSchedule-startEndDate .DateTimeInput {
    width: 100%;
}

.GanttSidebarSchedule-startEndDate .DateTimeInput input {
    text-align: center;
}

.GanttSidebarSchedule-startDateInputConflictState,
.GanttSidebarSchedule-endDateInputConflictState {
    cursor: pointer;
}

.GanttSidebarSchedule-selectedItemWorker {
    display: flex;
}

.GanttSidebarSchedule-selectedItemWorkerIcon {
    margin-right: 10px;
    color: var(--text-subtle);
}

.GanttSidebarSchedule-selectedItemWorker .worker {
    max-width: 250px;
}

.GanttSidebarSchedule-workerPickerTreeSelector {
    overflow: auto;
}

.GanttSidebarSchedule-selectedItemWorkerPicker {
    background: none;
    list-style-type: none;
    padding: 0;
}

.GanttSidebarSchedule-selectedItemWorkerPicker .NestedDropdown-toggleButton {
    padding: 0;
    background: none;
    color: var(--primary);
}

.GanttSidebarSchedule-selectedItemWorkerPicker .NestedDropdown-toggleButton .NestedDropdown-toggleIcon {
    display: none;
}

.GanttSidebarSchedule-selectedItemWorkerPicker .TreeSelector-controls .input-group .btn {
    height: 100%;
}

.GanttSidebarSchedule-selectedItemWorkerPicker .NestedDropdown-submenu.show {
    left: 0;
    transform: translateX(-100%);
    padding: 10px;
    height: 100%;
    overflow-y: auto;
    min-width: 290px;
}

.GanttSidebarSchedule-closeWorkerPicker {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.GanttSidebarSchedule-actionButtonRow {
    margin-top: 10px;
    gap: 5px;
}

/* Another hack to get around CSS specificity problems, and we should fix this up (DEVO-17096) */
.GanttSidebarSection .GanttSidebarSchedule-addSuggestionsButton {
    padding: 6px 12px;
    height: fit-content;
}

.GanttSidebarScheduleTaskLockSettings .dropdown-toggle {
    height: 28px;
    padding: 0 8px;
}

.GanttSidebarTaskTraits-trait {
    max-width: 200px;
    margin-bottom: 0;
}

.GanttSidebarTaskTraits-traitList {
    margin-bottom: 0;
}

.GanttSidebarTaskTraits-primaryBadge {
    vertical-align: top;
    background-color: var(--primary-accent);
    color: var(--primary);
}

.GanttSidebarScheduleUnassignDropdown .DropdownButton-button {
    padding: 0 8px;
    line-height: 1;
}

.GanttSidebarScheduleUnassignDropdown .dropdown-toggle::after {
    margin-left: 0;
}

.GanttSidebarSchedule-unassignContainer {
    display: flex;
}

.GanttSidebarSchedule-unassignContainer .GanttSidebarSchedule-groupUnassignButton,
.GanttSidebarSchedule-unassignContainer .GanttSidebarSchedule-unassignDropdownButton {
    height: 28px;
    padding: 0 8px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.GanttSidebarSchedule-unassignContainer .GanttSidebarSchedule-unassignDropdownButton {
    border-left: none;
}

/** @define GanttSidebarUnavailabilityDetails */

.GanttSidebarUnavailabilityDetails-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.GanttSidebarUnavailabilityDetails-containerItem {
    display: flex;
    flex-direction: column;
}

.GanttSidebarUnavailabilityDetails-label {
    font-size: 0.9em;
    font-weight: var(--font-weight-regular);
}

.GanttSidebarUnavailabilityDetails-charCount {
    text-align: right;
}

/* @define TaskSplitDragBar */

.TaskSplitDragBar {
    cursor: col-resize;
    position: absolute;
    z-index: 1;
}

.TaskSplitDragBar::after {
    background-color: transparent;
    content: "";
    height: 100%;
    left: 3px;
    position: absolute;
    right: 3px;
}

.TaskSplitDragBar:hover::after {
    background-color: #61656c;
}

.ExpressionCell-table > tr.ExpressionCell-table-row,
.ExpressionCell-table > tr.ExpressionCell-table-row:hover {
    background-color: transparent !important;
}

.ExpressionCell {
    max-width: 1000px;
}

.ExpressionCell-table {
    width: inherit;
    border-left: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}

.ExpressionCell-table-headers {
    width: 1%;
    text-wrap: nowrap;
    text-transform: uppercase;
}

/* @define ColumnPicker */
.ColumnPicker {
    display: flex;
    height: 100%;
}

.ColumnPicker-filterInputGroup {
    max-width: 460px;
    margin-bottom: 15px;
}

.ColumnPicker-filterInputContainer {
    width: 100%;
}

/* Select all buttons in the middle */
.ColumnPicker-bulkColumnSelectors {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ColumnPicker-selectAllButton {
    margin: 10px 20px;
}

/* Sort Button */
.ColumnPicker-sortReportOnColumnButton {
    opacity: 0;
    margin: 3px;
    width: 3rem;
}

/* stylelint-disable */
/*.DragAndDropCard-item:hover .ColumnPicker-sortReportOnColumnButton,*/
.ColumnPicker-sortReportOnColumnButton:focus,
.ColumnPicker-sortReportOnColumnButton:hover,
.ColumnPicker-sortReportOnColumnButton[data-sortState="0"]:hover,
.ColumnPicker-sortReportOnColumnButton[data-sortState="1"],
.ColumnPicker-sortReportOnColumnButton[data-sortState="2"] {
    opacity: 1;
}

/* stylelint-enable */

/* Other containers */

.ColumnPicker-selectorContainer {
    display: flex;
    flex-direction: row;
    flex-grow: 2;
    max-height: calc(100% - 50px);
    min-height: 1vh;
}

.ColumnPicker-content {
    display: flex;
    flex-direction: column;
    margin: 10px 0 10px 10px;
}

.ColumnPicker-selectedColumnName,
.ColumnPicker-availableColumnName {
    margin: auto 5px;
    width: 100%;
}

.ColumnPicker-moveButton {
    flex-grow: 0;
    flex-shrink: 0;
    border: none;
    width: 2.3rem;
}

.ColumnPicker-moveColumnLeftButton {
    border-radius: 3px 0 0 3px;
    border-right: 1px solid #ddd;
    padding: var(--padding-xs) 0;
}

.ColumnPicker-moveColumnRightButton {
    border-radius: 0 3px 3px 0;
    border-left: 1px solid #ddd;
    padding: var(--padding-xs) 0;
}

.ColumnPicker-pivotTabDescription {
    margin: 0 0 10px;
}

.ColumnPicker-filterColumns {
    width: 490px;
    margin-left: -15px;
}

/* @define DragAndDropCard; weak */
.DragAndDropCard {
    margin: 0;
}

.DragAndDropCard-header {
    background-color: #f4f4f4;
}

.DragAndDropCard-title {
    padding: 10px;
    flex-grow: 1;
    width: 460px;
}

.DragAndDropCard-itemListContainer {
    flex-grow: 1;
    overflow-y: auto;
    padding: 0;
}

/* Item selectors */
.DragAndDropCard-itemList {
    min-height: 100%;
    list-style: none;
    padding: 15px;
    margin: 0;
}

/* sortable-ghost is a class from sortable.js, but maybe we can modify it via config. */
.DragAndDropCard--sortable li.sortable-ghost {
    background-color: rgb(194 213 238 / 25%);
    display: block;
    min-height: 33px;
}

/* sortable-ghost is a class from sortable.js, but maybe we can modify it via config. */
/* stylelint-disable-next-line */
.sortable-ghost *,
.DragAndDropCard--unsortable li.sortable-ghost {
    display: none !important;
}

/* sortable-ghost is a class from sortable.js, but maybe we can modify it via config. */
.DragAndDropCard--unsortable:has(.sortable-ghost) {
    background-color: rgb(194 213 238 / 25%);
}

/* sortable-ghost is a class from sortable.js, but maybe we can modify it via config. */
.DragAndDropCard-item:not(.sortable-ghost) {
    background: #efefef;
    border: 1px solid #ddd;
    box-shadow: 3px 3px rgb(0 0 0 / 2%);
    border-radius: 3px;
    display: flex;
    cursor: move;
}

.DragAndDropCard-cardText {
    position: relative;
    width: 100%;
}

.DragAndDropCard-guidance {
    margin: 20px;
}

.DragAndDropCard-content {
    display: flex;
    flex-direction: column;
    height: calc(100% - 40px);
}

.FilterCard {
    /* 22rem was picked because anything thinner would cause one of the filter headings to wrap. */
    min-width: 22rem;

    /* Setting the max to be lower than the min ensures the element will always be the min size, unlike using `width` or `height` alone. */
    max-width: 0;
    margin: 0.5rem 0 0.5rem 0.5rem;
    border-radius: 3px;
    border: 1px solid #ddd;
    box-shadow: 3px 3px #f9f9f9;
    display: flex;
    flex-direction: column;
}

.FilterCard-header {
    display: flex;
    border-bottom: 1px solid #ddd;
    background-color: #f4f4f4;
    height: 2.5rem;
    text-transform: uppercase;
    font-size: 1rem;
    flex-grow: 0;
    align-items: center;
    padding: 0.1rem 0.1rem 0.1rem 15px;
    flex-shrink: 0;
}

.FilterCard-header--dark {
    color: #333;
}

.FilterCard-displayName {
    flex-grow: 1;
}

.FilterCard-body {
    flex-grow: 1;
    min-height: 1vh;
    padding: 1rem 0;
    overflow-y: auto;
}

.CopyWeekModal-bodyText {
    padding-bottom: 10px;
}

.ManageViewRow {
    display: flex;
    justify-content: space-between;
    gap: 0.375rem;
    border-radius: 0.5rem;
    border: 1px solid var(--border-primary-subtle);
    background-color: var(--surface-primary-subtle);
}

.ManageViewRow-button {
    color: var(--text-accent);
}

.ManageViewRow-button.is-default {
    color: var(--icon-primary-emphasis);
}

.ManageViewRow-button:focus {
    color: var(--text-primary-strong);
    border-radius: 0.25rem;
    background-color: var(--surface-accent);
}

.ManageViewRow-button:hover,
.ManageViewRow-button:not(:disabled, .disabled):active,
.ManageViewRow-button:not(:disabled, .disabled).active {
    color: var(--text-primary-strong);
    border-radius: 0.25rem;
    background-color: var(--surface-container-hover);
    box-shadow: none;
}

/* @define WidgetLoader */

.WidgetLoader {
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.WidgetLoader-spinner {
    font-size: 1.5rem;
    color: var(--orange-marketing-600);
}

.WidgetLoader-error {
    color: var(--text-subtle);
}

.WidgetLoader-errorIcon {
    font-size: 1.5rem;
    color: var(--text-accent);
}

.WidgetLoader .WidgetLoader-loader,
.WidgetLoader .WidgetLoader-error {
    height: 100%;
    display: flex;
    padding: 1.5rem;
    justify-content: center;
    align-items: center;
}

.WidgetLoader .WidgetLoader-error {
    flex-direction: column;
}

/* @define CapacityVsDemandChart */
.CapacityVsDemandChart {
    flex: 1;
    width: 100%;
}

.CapacityVsDemandChart-tooltip {
    display: flex;
    align-items: center;
    position: absolute;
}

.CapacityVsDemandChart-tooltipCaret {
    height: 0;
    width: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right: 8px solid var(--border-inverse);
    z-index: 100;
}

.CapacityVsDemandChart-tooltipBox {
    padding: 1rem;
    background: var(--surface-default);
    border-radius: 8px;
    color: var(--text-default);
    pointer-events: none;
    box-shadow: 0 0 15px rgb(0 0 0 / 75%);
}

.CapacityVsDemandChart-tooltipHeader {
    font-size: 16px;
    padding-bottom: 0.5rem;
}

.CapacityVsDemandChart-tooltipLegend {
    margin-right: 0.25rem;
    width: 14px;
    height: 14px;
}

.CapacityVsDemandChart-tooltipLabel {
    display: flex;
    align-items: center;
    font-size: 14px;
}

.CapacityVsDemandChart-tooltipValue {
    font-size: 12px;
    padding-bottom: 0.5rem;
}

/* define PersonalScheduleItemCard */

.PersonalScheduleItemCard-nameText {
    font-size: 0.75rem;
}

/* @define PersonalScheduleList */

.PersonalScheduleList {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.PersonalScheduleList-container {
    gap: 1.25rem;
}

.PersonalScheduleList-week {
    border-color: var(--border-default);
    border-radius: 4px;
    border-style: solid;
    border-width: 1px;
}

.PersonalScheduleList-scheduleItem {
    border-width: 1px 0 0;
    border-style: solid;
    border-color: var(--border-color);
}

.PersonalScheduleList-bubbleTimeContainer {
    display: flex;
    gap: 1.5rem;
    flex-direction: row;
    flex-grow: 0;
    flex-shrink: 0;
    justify-content: space-between;
    margin-left: 3rem;
}

.PersonalScheduleList-noScheduleItems .PersonalScheduleList-bubbleTimeContainer {
    margin-left: 0;
}

.PersonalScheduleList-itemCardContainer {
    display: flex;
    justify-content: space-between;
    padding: 1rem;
    gap: 0.5rem;
}

/* define PersonalScheduleListHeader */

.PersonalScheduleListHeader {
    background-color: var(--secondary-subtle);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.PersonalScheduleListHeader-weekDayLongPeriodText {
    color: var(--text-accent);
}

/* @define RevenueOverTimeChart */
.RevenueOverTimeChart {
    flex: 1;
    width: 100%;
}

.GanttAvailabilitySettings-toggle {
    width: 100%;
    padding-bottom: 0.6rem;
}

.FilterMenuCard {
    box-shadow: none;
    border: 1px dashed #ccc;
}

.FilterMenuCard-header {
    border-bottom: 0;
}

.FilterMenuCard-list {
    overflow: auto;
}

.FilterMenuCard-listHeader {
    display: block;
    text-transform: uppercase;
}

.InOutPickerFilter {
    display: flex;
    flex-direction: column;
}

.InOutPickerFilter-Tree {
    padding-top: 0;
    flex-shrink: 1;
    min-height: 1vh;
}

.InOutPickerFilter-Tree > .TreeSelector-controls {
    padding-right: 0;
}

.PickerFilter-Tree {
    padding-top: 0;
}

.PickerFilter-Tree > .TreeSelector-controls {
    padding-right: 0;
}

/* Empty file - add some CSS */

.FilterMenuCardGroup-item {
    /* This is to reproduce the behaviour of .fieldset-label-offset class that design uses, but doesn't exist in the code base. */
    padding-left: 12px;
    padding-right: 12px;
}

.FilterMenuCardGroup-item:hover {
    background-color: var(--border-subtle);
}

.JobLeaderFilter-body {
    flex-direction: column;
    height: 100%;
}

.JobLeaderFilter-pickerContainer {
    min-height: 12rem;
}

.JobClaimFilter-pickerFilter {
    height: calc(100% - 6.5rem) !important;
}
