@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');

/****************************/

.material-symbols-outlined{
    font-variation-settings:
            'FILL' 0,
            'wght' 400,
            'GRAD' 0,
            'opsz' 24
}
.material-symbols-rounded{
    font-variation-settings:
            'FILL' 0,
            'wght' 400,
            'GRAD' 0,
            'opsz' 24
}
.material-symbols-sharp{
    font-variation-settings:
            'FILL' 0,
            'wght' 400,
            'GRAD' 0,
            'opsz' 24
}
.material-symbols-fill{
    font-variation-settings:
            'FILL' 1,
            'wght' 400,
            'GRAD' 0,
            'opsz' 24
}

[class*="material-symbols"]{
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    display: inline-block;
    width: 1em;
    height: 1em;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
    vertical-align: -4px;
    color: rgba(0, 0, 0, .54);
}
[class*="material-symbols"].md-18 {font-size: 18px;vertical-align: -4px;}
[class*="material-symbols"].md-22 {font-size: 22px;vertical-align: -6px;}
[class*="material-symbols"].md-24 {font-size: 24px;vertical-align: -8px;}
[class*="material-symbols"].md-32 {font-size: 30px;vertical-align: -14px;}
[class*="material-symbols"].md-36 {font-size: 36px;vertical-align: -16px;}
[class*="material-symbols"].md-48 {font-size: 48px;vertical-align: -24px;}
[class*="material-symbols"].md-light {
    color: #fff;
}
[class*="material-symbols"].md-light.md-inactive {
    color: rgba(255, 255, 255, .3);
}
[class*="material-symbols"].md-icon {
    font-size: 24px;
    line-height: 32px!important;
    height: 32px!important;
    width: 32px!important;
    color: #727272;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transition: background 280ms ease-out, color 280ms ease-out;
    transition: background 280ms ease-out, color 280ms ease-out;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}
[class*="material-symbols"].md-icon.active,
[class*="material-symbols"].md-icon:focus,
[class*="material-symbols"].md-icon:hover {
    color: #212121;
    background: rgba(0, 0, 0, .08);
}
[class*="material-symbols"].md-icon.md-icon-18 {
    font-size: 18px;
    line-height: 22px!important;
    height: 22px!important;
    width: 22px!important;
}
[class*="material-symbols"].md-icon.md-icon-22 {
    font-size: 22px;
    line-height: 26px!important;
    height: 26px!important;
    width: 26px!important;
}
[class*="material-symbols"].md-icon.md-icon-white{
    color: #fff;
}
[class*="material-symbols"].md-icon.md-icon-white.active,
[class*="material-symbols"].md-icon.md-icon-white:focus,
[class*="material-symbols"].md-icon.md-icon-white:hover {
    color: #e3e3e3;
}


/****************************/


:root {
    /*--font-family: "Kanit", serif;*/
    --font-family: "Work Sans", serif;
    /*--font-family: "Lexend", system-ui, sans-serif;*/
    --border-radius: 8px;

    --primary: #19585f; /** 25, 88, 95 **/
    /** Vert makze : hex: #19585f - rgb : 25, 88, 95 **/
    /** Bleu : #428bca **/
    --secondary: #212529;
    --error: #c62828;
    --accent: #C81B00;
    --white: #FFFFFF;
    --light: #e3e3e3;

    --shadow: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);
    --shadow-light: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .12);

    --calendar-primary: #19585f;
}

/****************************/


html {
    height: 100%;
    overflow-x: hidden;
    background: #ececec;
}
body {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 100%;
    width: 100vw;
    background: var(--white);
    overflow: hidden;
    box-sizing: border-box;
    font-size: 1rem;
    font-family: var(--font-family);
}

a, button {
    outline: 0!important;
    text-decoration: none;
}
a {
    color: var(--accent);
    -webkit-tap-highlight-color: transparent;
}
a:active, a:hover {
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6, p {
    font-family: var(--font-family);
    padding: 0;
    margin: 0;
}


/****************************/

.wrapper { margin: 0 auto; width: 800px; } .\!wrapper { margin: 0 auto; width: 800px; }
.wrapper-100 { max-width: 100px; } .\!wrapper-100 { max-width: 100px !important; }
.wrapper-200 { max-width: 200px; } .\!wrapper-200 { max-width: 200px !important; }
.wrapper-300 { max-width: 300px; } .\!wrapper-300 { max-width: 300px !important; }
.wrapper-400 { max-width: 400px; } .\!wrapper-400 { max-width: 400px !important; }
.wrapper-500 { max-width: 500px; } .\!wrapper-500 { max-width: 500px !important; }
.wrapper-600 { max-width: 600px; } .\!wrapper-600 { max-width: 600px !important; }
.wrapper-700 { max-width: 700px; } .\!wrapper-700 { max-width: 700px !important; }
.wrapper-800 { max-width: 800px; } .\!wrapper-800 { max-width: 800px !important; }
.wrapper-900 { max-width: 900px; } .\!wrapper-900 { max-width: 900px !important; }
.wrapper-1000 { max-width: 1000px; } .\!wrapper-1000 { max-width: 1000px !important; }
.wrapper-1100 { max-width: 1100px; } .\!wrapper-1100 { max-width: 1100px !important; }
.wrapper-1200 { max-width: 1200px; } .\!wrapper-1200 { max-width: 1200px !important; }
.wrapper-1300 { max-width: 1300px; } .\!wrapper-1300 { max-width: 1300px !important; }
.wrapper-1400 { max-width: 1400px; } .\!wrapper-1400 { max-width: 1400px !important; }
.wrapper-1500 { max-width: 1500px; } .\!wrapper-1500 { max-width: 1500px !important; }
.wrapper-1600 { max-width: 1600px; } .\!wrapper-1600 { max-width: 1600px !important; }
.wrapper-1700 { max-width: 1700px; } .\!wrapper-1700 { max-width: 1700px !important; }
.wrapper-1800 { max-width: 1800px; } .\!wrapper-1800 { max-width: 1800px !important; }
.wrapper-full { max-width: 100%; } .\!wrapper-full { max-width: 100% !important; }

.left-0 { left: 0; } .\!left-0 { left: 0 !important; }
.left-5 { left: 5px; } .\!left-5 { left: 5px !important; }
.left-10 { left: 10px; } .\!left-10 { left: 10px !important; }
.left-15 { left: 15px; } .\!left-15 { left: 15px !important; }
.left-20 { left: 20px; } .\!left-20 { left: 20px !important; }
.left-25 { left: 25px; } .\!left-25 { left: 25px !important; }
.left-30 { left: 30px; } .\!left-30 { left: 30px !important; }
.left-35 { left: 35px; } .\!left-35 { left: 35px !important; }
.left-40 { left: 40px; } .\!left-40 { left: 40px !important; }
.left-45 { left: 45px; } .\!left-45 { left: 45px !important; }
.left-50 { left: 50px; } .\!left-50 { left: 50px !important; }
.left-55 { left: 55px; } .\!left-55 { left: 55px !important; }
.left-60 { left: 60px; } .\!left-60 { left: 60px !important; }
.left-65 { left: 65px; } .\!left-65 { left: 65px !important; }
.left-70 { left: 70px; } .\!left-70 { left: 70px !important; }
.left-75 { left: 75px; } .\!left-75 { left: 75px !important; }
.left-80 { left: 80px; } .\!left-80 { left: 80px !important; }
.left-85 { left: 85px; } .\!left-85 { left: 85px !important; }
.left-90 { left: 90px; } .\!left-90 { left: 90px !important; }
.left-95 { left: 95px; } .\!left-95 { left: 95px !important; }
.left-100 { left: 100px; } .\!left-100 { left: 100px !important; }

.top-0 { top: 0; } .\!top-0 { top: 0 !important; }
.top-5 { top: 5px; } .\!top-5 { top: 5px !important; }
.top-10 { top: 10px; } .\!top-10 { top: 10px !important; }
.top-15 { top: 15px; } .\!top-15 { top: 15px !important; }
.top-20 { top: 20px; } .\!top-20 { top: 20px !important; }
.top-25 { top: 25px; } .\!top-25 { top: 25px !important; }
.top-30 { top: 30px; } .\!top-30 { top: 30px !important; }
.top-35 { top: 35px; } .\!top-35 { top: 35px !important; }
.top-40 { top: 40px; } .\!top-40 { top: 40px !important; }
.top-45 { top: 45px; } .\!top-45 { top: 45px !important; }
.top-50 { top: 50px; } .\!top-50 { top: 50px !important; }
.top-55 { top: 55px; } .\!top-55 { top: 55px !important; }
.top-60 { top: 60px; } .\!top-60 { top: 60px !important; }
.top-65 { top: 65px; } .\!top-65 { top: 65px !important; }
.top-70 { top: 70px; } .\!top-70 { top: 70px !important; }
.top-75 { top: 75px; } .\!top-75 { top: 75px !important; }
.top-80 { top: 80px; } .\!top-80 { top: 80px !important; }
.top-85 { top: 85px; } .\!top-85 { top: 85px !important; }
.top-90 { top: 90px; } .\!top-90 { top: 90px !important; }
.top-95 { top: 95px; } .\!top-95 { top: 95px !important; }
.top-100 { top: 100px; } .\!top-100 { top: 100px !important; }

.right-0 { right: 0; } .\!right-0 { right: 0 !important; }
.right-5 { right: 5px; } .\!right-5 { right: 5px !important; }
.right-10 { right: 10px; } .\!right-10 { right: 10px !important; }
.right-15 { right: 15px; } .\!right-15 { right: 15px !important; }
.right-20 { right: 20px; } .\!right-20 { right: 20px !important; }
.right-25 { right: 25px; } .\!right-25 { right: 25px !important; }
.right-30 { right: 30px; } .\!right-30 { right: 30px !important; }
.right-35 { right: 35px; } .\!right-35 { right: 35px !important; }
.right-40 { right: 40px; } .\!right-40 { right: 40px !important; }
.right-45 { right: 45px; } .\!right-45 { right: 45px !important; }
.right-50 { right: 50px; } .\!right-50 { right: 50px !important; }
.right-55 { right: 55px; } .\!right-55 { right: 55px !important; }
.right-60 { right: 60px; } .\!right-60 { right: 60px !important; }
.right-65 { right: 65px; } .\!right-65 { right: 65px !important; }
.right-70 { right: 70px; } .\!right-70 { right: 70px !important; }
.right-75 { right: 75px; } .\!right-75 { right: 75px !important; }
.right-80 { right: 80px; } .\!right-80 { right: 80px !important; }
.right-85 { right: 85px; } .\!right-85 { right: 85px !important; }
.right-90 { right: 90px; } .\!right-90 { right: 90px !important; }
.right-95 { right: 95px; } .\!right-95 { right: 95px !important; }
.right-100 { right: 100px; } .\!right-100 { right: 100px !important; }

.bottom-0 { bottom: 0; } .\!bottom-0 { bottom: 0 !important; }
.bottom-5 { bottom: 5px; } .\!bottom-5 { bottom: 5px !important; }
.bottom-10 { bottom: 10px; } .\!bottom-10 { bottom: 10px !important; }
.bottom-15 { bottom: 15px; } .\!bottom-15 { bottom: 15px !important; }
.bottom-20 { bottom: 20px; } .\!bottom-20 { bottom: 20px !important; }
.bottom-25 { bottom: 25px; } .\!bottom-25 { bottom: 25px !important; }
.bottom-30 { bottom: 30px; } .\!bottom-30 { bottom: 30px !important; }
.bottom-35 { bottom: 35px; } .\!bottom-35 { bottom: 35px !important; }
.bottom-40 { bottom: 40px; } .\!bottom-40 { bottom: 40px !important; }
.bottom-45 { bottom: 45px; } .\!bottom-45 { bottom: 45px !important; }
.bottom-50 { bottom: 50px; } .\!bottom-50 { bottom: 50px !important; }
.bottom-55 { bottom: 55px; } .\!bottom-55 { bottom: 55px !important; }
.bottom-60 { bottom: 60px; } .\!bottom-60 { bottom: 60px !important; }
.bottom-65 { bottom: 65px; } .\!bottom-65 { bottom: 65px !important; }
.bottom-70 { bottom: 70px; } .\!bottom-70 { bottom: 70px !important; }
.bottom-75 { bottom: 75px; } .\!bottom-75 { bottom: 75px !important; }
.bottom-80 { bottom: 80px; } .\!bottom-80 { bottom: 80px !important; }
.bottom-85 { bottom: 85px; } .\!bottom-85 { bottom: 85px !important; }
.bottom-90 { bottom: 90px; } .\!bottom-90 { bottom: 90px !important; }
.bottom-95 { bottom: 95px; } .\!bottom-95 { bottom: 95px !important; }
.bottom-100 { bottom: 100px; } .\!bottom-100 { bottom: 100px !important; }

.gap-0 { gap: 0; } .\!gap-0 { gap: 0 !important; }
.gap-5 { gap: 5px; } .\!gap-5 { gap: 5px !important; }
.gap-10 { gap: 10px; } .\!gap-10 { gap: 10px !important; }
.gap-15 { gap: 15px; } .\!gap-15 { gap: 15px !important; }
.gap-20 { gap: 20px; } .\!gap-20 { gap: 20px !important; }
.gap-25 { gap: 25px; } .\!gap-25 { gap: 25px !important; }
.gap-30 { gap: 30px; } .\!gap-30 { gap: 30px !important; }
.gap-35 { gap: 35px; } .\!gap-35 { gap: 35px !important; }
.gap-40 { gap: 40px; } .\!gap-40 { gap: 40px !important; }
.gap-45 { gap: 45px; } .\!gap-45 { gap: 45px !important; }
.gap-50 { gap: 50px; } .\!gap-50 { gap: 50px !important; }
.gap-55 { gap: 55px; } .\!gap-55 { gap: 55px !important; }
.gap-60 { gap: 60px; } .\!gap-60 { gap: 60px !important; }
.gap-65 { gap: 65px; } .\!gap-65 { gap: 65px !important; }
.gap-70 { gap: 70px; } .\!gap-70 { gap: 70px !important; }
.gap-75 { gap: 75px; } .\!gap-75 { gap: 75px !important; }
.gap-80 { gap: 80px; } .\!gap-80 { gap: 80px !important; }
.gap-85 { gap: 85px; } .\!gap-85 { gap: 85px !important; }
.gap-90 { gap: 90px; } .\!gap-90 { gap: 90px !important; }
.gap-95 { gap: 95px; } .\!gap-95 { gap: 95px !important; }
.gap-100 { gap: 100px; } .\!gap-100 { gap: 100px !important; }

.m-0 { margin: 0; } .\!m-0 { margin: 0 !important; }
.m-1 { margin: 1px; } .\!m-1 { margin: 1px !important; }
.m-2 { margin: 2px; } .\!m-2 { margin: 2px !important; }
.m-3 { margin: 3px; } .\!m-3 { margin: 3px !important; }
.m-4 { margin: 4px; } .\!m-4 { margin: 4px !important; }
.m-5 { margin: 5px; } .\!m-5 { margin: 5px !important; }
.m-10 { margin: 10px; } .\!m-10 { margin: 10px !important; }
.m-15 { margin: 15px; } .\!m-15 { margin: 15px !important; }
.m-20 { margin: 20px; } .\!m-20 { margin: 20px !important; }
.m-25 { margin: 25px; } .\!m-25 { margin: 25px !important; }
.m-30 { margin: 30px; } .\!m-30 { margin: 30px !important; }
.m-35 { margin: 35px; } .\!m-35 { margin: 35px !important; }
.m-40 { margin: 40px; } .\!m-40 { margin: 40px !important; }
.m-45 { margin: 45px; } .\!m-45 { margin: 45px !important; }
.m-50 { margin: 50px; } .\!m-50 { margin: 50px !important; }
.m-55 { margin: 55px; } .\!m-55 { margin: 55px !important; }
.m-60 { margin: 60px; } .\!m-60 { margin: 60px !important; }
.m-65 { margin: 65px; } .\!m-65 { margin: 65px !important; }
.m-70 { margin: 70px; } .\!m-70 { margin: 70px !important; }
.m-75 { margin: 75px; } .\!m-75 { margin: 75px !important; }
.m-80 { margin: 80px; } .\!m-80 { margin: 80px !important; }
.m-85 { margin: 85px; } .\!m-85 { margin: 85px !important; }
.m-90 { margin: 90px; } .\!m-90 { margin: 90px !important; }
.m-95 { margin: 95px; } .\!m-95 { margin: 95px !important; }
.m-100 { margin: 100px; } .\!m-100 { margin: 100px !important; }

.ml-0 { margin-left: 0; } .\!ml-0 { margin-left: 0 !important; }
.ml-5 { margin-left: 5px; } .\!ml-5 { margin-left: 5px !important; }
.ml-10 { margin-left: 10px; } .\!ml-10 { margin-left: 10px !important; }
.ml-15 { margin-left: 15px; } .\!ml-15 { margin-left: 15px !important; }
.ml-20 { margin-left: 20px; } .\!ml-20 { margin-left: 20px !important; }
.ml-25 { margin-left: 25px; } .\!ml-25 { margin-left: 25px !important; }
.ml-30 { margin-left: 30px; } .\!ml-30 { margin-left: 30px !important; }
.ml-35 { margin-left: 35px; } .\!ml-35 { margin-left: 35px !important; }
.ml-40 { margin-left: 40px; } .\!ml-40 { margin-left: 40px !important; }
.ml-45 { margin-left: 45px; } .\!ml-45 { margin-left: 45px !important; }
.ml-50 { margin-left: 50px; } .\!ml-50 { margin-left: 50px !important; }
.ml-55 { margin-left: 55px; } .\!ml-55 { margin-left: 55px !important; }
.ml-60 { margin-left: 60px; } .\!ml-60 { margin-left: 60px !important; }
.ml-65 { margin-left: 65px; } .\!ml-65 { margin-left: 65px !important; }
.ml-70 { margin-left: 70px; } .\!ml-70 { margin-left: 70px !important; }
.ml-75 { margin-left: 75px; } .\!ml-75 { margin-left: 75px !important; }
.ml-80 { margin-left: 80px; } .\!ml-80 { margin-left: 80px !important; }
.ml-85 { margin-left: 85px; } .\!ml-85 { margin-left: 85px !important; }
.ml-90 { margin-left: 90px; } .\!ml-90 { margin-left: 90px !important; }
.ml-95 { margin-left: 95px; } .\!ml-95 { margin-left: 95px !important; }
.ml-100 { margin-left: 100px; } .\!ml-100 { margin-left: 100px !important; }
.ml-230{ margin-left: 230px; } .ml-230 { margin-left: 230px !important; }

.mr-0 { margin-right: 0; } .\!mr-0 { margin-right: 0 !important; }
.mr-5 { margin-right: 5px; } .\!mr-5 { margin-right: 5px !important; }
.mr-10 { margin-right: 10px; } .\!mr-10 { margin-right: 10px !important; }
.mr-15 { margin-right: 15px; } .\!mr-15 { margin-right: 15px !important; }
.mr-20 { margin-right: 20px; } .\!mr-20 { margin-right: 20px !important; }
.mr-25 { margin-right: 25px; } .\!mr-25 { margin-right: 25px !important; }
.mr-30 { margin-right: 30px; } .\!mr-30 { margin-right: 30px !important; }
.mr-35 { margin-right: 35px; } .\!mr-35 { margin-right: 35px !important; }
.mr-40 { margin-right: 40px; } .\!mr-40 { margin-right: 40px !important; }
.mr-45 { margin-right: 45px; } .\!mr-45 { margin-right: 45px !important; }
.mr-50 { margin-right: 50px; } .\!mr-50 { margin-right: 50px !important; }
.mr-55 { margin-right: 55px; } .\!mr-55 { margin-right: 55px !important; }
.mr-60 { margin-right: 60px; } .\!mr-60 { margin-right: 60px !important; }
.mr-65 { margin-right: 65px; } .\!mr-65 { margin-right: 65px !important; }
.mr-70 { margin-right: 70px; } .\!mr-70 { margin-right: 70px !important; }
.mr-75 { margin-right: 75px; } .\!mr-75 { margin-right: 75px !important; }
.mr-80 { margin-right: 80px; } .\!mr-80 { margin-right: 80px !important; }
.mr-85 { margin-right: 85px; } .\!mr-85 { margin-right: 85px !important; }
.mr-90 { margin-right: 90px; } .\!mr-90 { margin-right: 90px !important; }
.mr-95 { margin-right: 95px; } .\!mr-95 { margin-right: 95px !important; }
.mr-100 { margin-right: 100px; } .\!mr-100 { margin-right: 100px !important; }

.mt-0 { margin-top: 0; } .\!mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: 1px; } .\!mt-1 { margin-top: 1px !important; }
.mt-2 { margin-top: 2px; } .\!mt-2 { margin-top: 2px !important; }
.mt-3 { margin-top: 3px; } .\!mt-3 { margin-top: 3px !important; }
.mt-4 { margin-top: 4px; } .\!mt-4 { margin-top: 4px !important; }
.mt-5 { margin-top: 5px; } .\!mt-5 { margin-top: 5px !important; }
.mt-10 { margin-top: 10px; } .\!mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px; } .\!mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px; } .\!mt-20 { margin-top: 20px !important; }
.mt-25 { margin-top: 25px; } .\!mt-25 { margin-top: 25px !important; }
.mt-30 { margin-top: 30px; } .\!mt-30 { margin-top: 30px !important; }
.mt-35 { margin-top: 35px; } .\!mt-35 { margin-top: 35px !important; }
.mt-40 { margin-top: 40px; } .\!mt-40 { margin-top: 40px !important; }
.mt-45 { margin-top: 45px; } .\!mt-45 { margin-top: 45px !important; }
.mt-50 { margin-top: 50px; } .\!mt-50 { margin-top: 50px !important; }
.mt-55 { margin-top: 55px; } .\!mt-55 { margin-top: 55px !important; }
.mt-60 { margin-top: 60px; } .\!mt-60 { margin-top: 60px !important; }
.mt-65 { margin-top: 65px; } .\!mt-65 { margin-top: 65px !important; }
.mt-70 { margin-top: 70px; } .\!mt-70 { margin-top: 70px !important; }
.mt-75 { margin-top: 75px; } .\!mt-75 { margin-top: 75px !important; }
.mt-80 { margin-top: 80px; } .\!mt-80 { margin-top: 80px !important; }
.mt-85 { margin-top: 85px; } .\!mt-85 { margin-top: 85px !important; }
.mt-90 { margin-top: 90px; } .\!mt-90 { margin-top: 90px !important; }
.mt-95 { margin-top: 95px; } .\!mt-95 { margin-top: 95px !important; }
.mt-100 { margin-top: 100px; } .\!mt-100 { margin-top: 100px !important; }

.mb-0 { margin-bottom: 0; } .\!mb-0 { margin-bottom: 0 !important; }
.mb-5 { margin-bottom: 5px; } .\!mb-5 { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px; } .\!mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px; } .\!mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px; } .\!mb-20 { margin-bottom: 20px !important; }
.mb-25 { margin-bottom: 25px; } .\!mb-25 { margin-bottom: 25px !important; }
.mb-30 { margin-bottom: 30px; } .\!mb-30 { margin-bottom: 30px !important; }
.mb-35 { margin-bottom: 35px; } .\!mb-35 { margin-bottom: 35px !important; }
.mb-40 { margin-bottom: 40px; } .\!mb-40 { margin-bottom: 40px !important; }
.mb-45 { margin-bottom: 45px; } .\!mb-45 { margin-bottom: 45px !important; }
.mb-50 { margin-bottom: 50px; } .\!mb-50 { margin-bottom: 50px !important; }
.mb-55 { margin-bottom: 55px; } .\!mb-55 { margin-bottom: 55px !important; }
.mb-60 { margin-bottom: 60px; } .\!mb-60 { margin-bottom: 60px !important; }
.mb-65 { margin-bottom: 65px; } .\!mb-65 { margin-bottom: 65px !important; }
.mb-70 { margin-bottom: 70px; } .\!mb-70 { margin-bottom: 70px !important; }
.mb-75 { margin-bottom: 75px; } .\!mb-75 { margin-bottom: 75px !important; }
.mb-80 { margin-bottom: 80px; } .\!mb-80 { margin-bottom: 80px !important; }
.mb-85 { margin-bottom: 85px; } .\!mb-85 { margin-bottom: 85px !important; }
.mb-90 { margin-bottom: 90px; } .\!mb-90 { margin-bottom: 90px !important; }
.mb-95 { margin-bottom: 95px; } .\!mb-95 { margin-bottom: 95px !important; }
.mb-100 { margin-bottom: 100px; } .\!mb-100 { margin-bottom: 100px !important; }

.p-0 { padding: 0; } .\!p-0 { padding: 0 !important; }
.p-1 { padding: 1px; } .\!p-1 { padding: 1px !important; }
.p-2 { padding: 2px; } .\!p-2 { padding: 2px !important; }
.p-3 { padding: 3px; } .\!p-3 { padding: 3px !important; }
.p-4 { padding: 4px; } .\!p-4 { padding: 4px !important; }
.p-5 { padding: 5px; } .\!p-5 { padding: 5px !important; }
.p-10 { padding: 10px; } .\!p-10 { padding: 10px !important; }
.p-12 { padding: 12px; } .\!p-12 { padding: 12px !important; }
.p-13 { padding: 13px; } .\!p-13 { padding: 13px !important; }
.p-15 { padding: 15px; } .\!p-15 { padding: 15px !important; }
.p-20 { padding: 20px; } .\!p-20 { padding: 20px !important; }
.p-25 { padding: 25px; } .\!p-25 { padding: 25px !important; }
.p-30 { padding: 30px; } .\!p-30 { padding: 30px !important; }
.p-35 { padding: 35px; } .\!p-35 { padding: 35px !important; }
.p-40 { padding: 40px; } .\!p-40 { padding: 40px !important; }
.p-45 { padding: 45px; } .\!p-45 { padding: 45px !important; }
.p-50 { padding: 50px; } .\!p-50 { padding: 50px !important; }
.p-55 { padding: 55px; } .\!p-55 { padding: 55px !important; }
.p-60 { padding: 60px; } .\!p-60 { padding: 60px !important; }
.p-65 { padding: 65px; } .\!p-65 { padding: 65px !important; }
.p-70 { padding: 70px; } .\!p-70 { padding: 70px !important; }
.p-75 { padding: 75px; } .\!p-75 { padding: 75px !important; }
.p-80 { padding: 80px; } .\!p-80 { padding: 80px !important; }
.p-85 { padding: 85px; } .\!p-85 { padding: 85px !important; }
.p-90 { padding: 90px; } .\!p-90 { padding: 90px !important; }
.p-95 { padding: 95px; } .\!p-95 { padding: 95px !important; }
.p-100 { padding: 100px; } .\!p-100 { padding: 100px !important; }

.pl-0 { padding-left: 0; } .\!pl-0 { padding-left: 0 !important; }
.pl-5 { padding-left: 5px; } .\!pl-5 { padding-left: 5px !important; }
.pl-10 { padding-left: 10px; } .\!pl-10 { padding-left: 10px !important; }
.pl-15 { padding-left: 15px; } .\!pl-15 { padding-left: 15px !important; }
.pl-20 { padding-left: 20px; } .\!pl-20 { padding-left: 20px !important; }
.pl-25 { padding-left: 25px; } .\!pl-25 { padding-left: 25px !important; }
.pl-30 { padding-left: 30px; } .\!pl-30 { padding-left: 30px !important; }
.pl-35 { padding-left: 35px; } .\!pl-35 { padding-left: 35px !important; }
.pl-40 { padding-left: 40px; } .\!pl-40 { padding-left: 40px !important; }
.pl-45 { padding-left: 45px; } .\!pl-45 { padding-left: 45px !important; }
.pl-50 { padding-left: 50px; } .\!pl-50 { padding-left: 50px !important; }
.pl-55 { padding-left: 55px; } .\!pl-55 { padding-left: 55px !important; }
.pl-60 { padding-left: 60px; } .\!pl-60 { padding-left: 60px !important; }
.pl-65 { padding-left: 65px; } .\!pl-65 { padding-left: 65px !important; }
.pl-70 { padding-left: 70px; } .\!pl-70 { padding-left: 70px !important; }
.pl-75 { padding-left: 75px; } .\!pl-75 { padding-left: 75px !important; }
.pl-80 { padding-left: 80px; } .\!pl-80 { padding-left: 80px !important; }
.pl-85 { padding-left: 85px; } .\!pl-85 { padding-left: 85px !important; }
.pl-90 { padding-left: 90px; } .\!pl-90 { padding-left: 90px !important; }
.pl-95 { padding-left: 95px; } .\!pl-95 { padding-left: 95px !important; }
.pl-100 { padding-left: 100px; } .\!pl-100 { padding-left: 100px !important; }
.pl-230 { padding-left: 230px; } .\!pl-230 { padding-left: 230px !important; }
.pl-250 { padding-left: 250px; } .\!pl-250 { padding-left: 250px !important; }

.pr-0 { padding-right: 0; } .\!pr-0 { padding-right: 0 !important; }
.pr-5 { padding-right: 5px; } .\!pr-5 { padding-right: 5px !important; }
.pr-10 { padding-right: 10px; } .\!pr-10 { padding-right: 10px !important; }
.pr-15 { padding-right: 15px; } .\!pr-15 { padding-right: 15px !important; }
.pr-20 { padding-right: 20px; } .\!pr-20 { padding-right: 20px !important; }
.pr-25 { padding-right: 25px; } .\!pr-25 { padding-right: 25px !important; }
.pr-30 { padding-right: 30px; } .\!pr-30 { padding-right: 30px !important; }
.pr-35 { padding-right: 35px; } .\!pr-35 { padding-right: 35px !important; }
.pr-40 { padding-right: 40px; } .\!pr-40 { padding-right: 40px !important; }
.pr-45 { padding-right: 45px; } .\!pr-45 { padding-right: 45px !important; }
.pr-50 { padding-right: 50px; } .\!pr-50 { padding-right: 50px !important; }
.pr-55 { padding-right: 55px; } .\!pr-55 { padding-right: 55px !important; }
.pr-60 { padding-right: 60px; } .\!pr-60 { padding-right: 60px !important; }
.pr-65 { padding-right: 65px; } .\!pr-65 { padding-right: 65px !important; }
.pr-70 { padding-right: 70px; } .\!pr-70 { padding-right: 70px !important; }
.pr-75 { padding-right: 75px; } .\!pr-75 { padding-right: 75px !important; }
.pr-80 { padding-right: 80px; } .\!pr-80 { padding-right: 80px !important; }
.pr-85 { padding-right: 85px; } .\!pr-85 { padding-right: 85px !important; }
.pr-90 { padding-right: 90px; } .\!pr-90 { padding-right: 90px !important; }
.pr-95 { padding-right: 95px; } .\!pr-95 { padding-right: 95px !important; }
.pr-100 { padding-right: 100px; } .\!pr-100 { padding-right: 100px !important; }

.pt-0 { padding-top: 0; } .\!pt-0 { padding-top: 0 !important; }
.pt-5 { padding-top: 5px; } .\!pt-5 { padding-top: 5px !important; }
.pt-10 { padding-top: 10px; } .\!pt-10 { padding-top: 10px !important; }
.pt-15 { padding-top: 15px; } .\!pt-15 { padding-top: 15px !important; }
.pt-20 { padding-top: 20px; } .\!pt-20 { padding-top: 20px !important; }
.pt-25 { padding-top: 25px; } .\!pt-25 { padding-top: 25px !important; }
.pt-30 { padding-top: 30px; } .\!pt-30 { padding-top: 30px !important; }
.pt-35 { padding-top: 35px; } .\!pt-35 { padding-top: 35px !important; }
.pt-40 { padding-top: 40px; } .\!pt-40 { padding-top: 40px !important; }
.pt-45 { padding-top: 45px; } .\!pt-45 { padding-top: 45px !important; }
.pt-50 { padding-top: 50px; } .\!pt-50 { padding-top: 50px !important; }
.pt-55 { padding-top: 55px; } .\!pt-55 { padding-top: 55px !important; }
.pt-60 { padding-top: 60px; } .\!pt-60 { padding-top: 60px !important; }
.pt-65 { padding-top: 65px; } .\!pt-65 { padding-top: 65px !important; }
.pt-70 { padding-top: 70px; } .\!pt-70 { padding-top: 70px !important; }
.pt-75 { padding-top: 75px; } .\!pt-75 { padding-top: 75px !important; }
.pt-80 { padding-top: 80px; } .\!pt-80 { padding-top: 80px !important; }
.pt-85 { padding-top: 85px; } .\!pt-85 { padding-top: 85px !important; }
.pt-90 { padding-top: 90px; } .\!pt-90 { padding-top: 90px !important; }
.pt-95 { padding-top: 95px; } .\!pt-95 { padding-top: 95px !important; }
.pt-100 { padding-top: 100px; } .\!pt-100 { padding-top: 100px !important; }

.pb-0 { padding-bottom: 0; } .\!pb-0 { padding-bottom: 0 !important; }
.pb-5 { padding-bottom: 5px; } .\!pb-5 { padding-bottom: 5px !important; }
.pb-10 { padding-bottom: 10px; } .\!pb-10 { padding-bottom: 10px !important; }
.pb-15 { padding-bottom: 15px; } .\!pb-15 { padding-bottom: 15px !important; }
.pb-20 { padding-bottom: 20px; } .\!pb-20 { padding-bottom: 20px !important; }
.pb-25 { padding-bottom: 25px; } .\!pb-25 { padding-bottom: 25px !important; }
.pb-30 { padding-bottom: 30px; } .\!pb-30 { padding-bottom: 30px !important; }
.pb-35 { padding-bottom: 35px; } .\!pb-35 { padding-bottom: 35px !important; }
.pb-40 { padding-bottom: 40px; } .\!pb-40 { padding-bottom: 40px !important; }
.pb-45 { padding-bottom: 45px; } .\!pb-45 { padding-bottom: 45px !important; }
.pb-50 { padding-bottom: 50px; } .\!pb-50 { padding-bottom: 50px !important; }
.pb-55 { padding-bottom: 55px; } .\!pb-55 { padding-bottom: 55px !important; }
.pb-60 { padding-bottom: 60px; } .\!pb-60 { padding-bottom: 60px !important; }
.pb-65 { padding-bottom: 65px; } .\!pb-65 { padding-bottom: 65px !important; }
.pb-70 { padding-bottom: 70px; } .\!pb-70 { padding-bottom: 70px !important; }
.pb-75 { padding-bottom: 75px; } .\!pb-75 { padding-bottom: 75px !important; }
.pb-80 { padding-bottom: 80px; } .\!pb-80 { padding-bottom: 80px !important; }
.pb-85 { padding-bottom: 85px; } .\!pb-85 { padding-bottom: 85px !important; }
.pb-90 { padding-bottom: 90px; } .\!pb-90 { padding-bottom: 90px !important; }
.pb-95 { padding-bottom: 95px; } .\!pb-95 { padding-bottom: 95px !important; }
.pb-100 { padding-bottom: 100px; } .\!pb-100 { padding-bottom: 100px !important; }
.pb-150 { padding-bottom: 150px; } .\!pb-150 { padding-bottom: 150px !important; }

.ph-50 { padding-left: 50px; padding-right: 50px;}
.ph-100 { padding-left: 100px; padding-right: 100px;}
.pv-50 {
    padding-top: 50px;
    padding-bottom: 50px;
}

.fw-100 { font-weight: 100; } .\!fw-100 { font-weight: 100 !important; }
.fw-200 { font-weight: 200; } .\!fw-200 { font-weight: 200 !important; }
.fw-300 { font-weight: 300; } .\!fw-300 { font-weight: 300 !important; }
.fw-400 { font-weight: 400; } .\!fw-400 { font-weight: 400 !important; }
.fw-500 { font-weight: 500; } .\!fw-500 { font-weight: 500 !important; }
.fw-600 { font-weight: 600; } .\!fw-600 { font-weight: 600 !important; }
.fw-700 { font-weight: 700; } .\!fw-700 { font-weight: 700 !important; }
.fw-800 { font-weight: 800; } .\!fw-800 { font-weight: 800 !important; }
.fw-900 { font-weight: 900; } .\!fw-900 { font-weight: 900 !important; }

.fs-0\.10 { font-size: 0.10em; } .\!fs-0\.10 { font-size: 0.10em !important; }
.fs-0\.15 { font-size: 0.15em; } .\!fs-0\.15 { font-size: 0.15em !important; }
.fs-0\.20 { font-size: 0.20em; } .\!fs-0\.20 { font-size: 0.20em !important; }
.fs-0\.25 { font-size: 0.25em; } .\!fs-0\.25 { font-size: 0.25em !important; }
.fs-0\.30 { font-size: 0.30em; } .\!fs-0\.30 { font-size: 0.30em !important; }
.fs-0\.35 { font-size: 0.35em; } .\!fs-0\.35 { font-size: 0.35em !important; }
.fs-0\.40 { font-size: 0.40em; } .\!fs-0\.40 { font-size: 0.40em !important; }
.fs-0\.45 { font-size: 0.45em; } .\!fs-0\.45 { font-size: 0.45em !important; }
.fs-0\.50 { font-size: 0.50em; } .\!fs-0\.50 { font-size: 0.50em !important; }
.fs-0\.55 { font-size: 0.55em; } .\!fs-0\.55 { font-size: 0.55em !important; }
.fs-0\.60 { font-size: 0.60em; } .\!fs-0\.60 { font-size: 0.60em !important; }
.fs-0\.65 { font-size: 0.65em; } .\!fs-0\.65 { font-size: 0.65em !important; }
.fs-0\.70 { font-size: 0.70em; } .\!fs-0\.70 { font-size: 0.70em !important; }
.fs-0\.75 { font-size: 0.75em; } .\!fs-0\.75 { font-size: 0.75em !important; }
.fs-0\.80 { font-size: 0.80em; } .\!fs-0\.80 { font-size: 0.80em !important; }
.fs-0\.85 { font-size: 0.85em; } .\!fs-0\.85 { font-size: 0.85em !important; }
.fs-0\.90 { font-size: 0.90em; } .\!fs-0\.90 { font-size: 0.90em !important; }
.fs-0\.95 { font-size: 0.95em; } .\!fs-0\.95 { font-size: 0.95em !important; }
.fs-1\.00 { font-size: 1.00em; } .\!fs-1\.00 { font-size: 1.00em !important; }
.fs-1\.05 { font-size: 1.05em; } .\!fs-1\.05 { font-size: 1.05em !important; }
.fs-1\.10 { font-size: 1.10em; } .\!fs-1\.10 { font-size: 1.10em !important; }
.fs-1\.15 { font-size: 1.15em; } .\!fs-1\.15 { font-size: 1.15em !important; }
.fs-1\.20 { font-size: 1.20em; } .\!fs-1\.20 { font-size: 1.20em !important; }
.fs-1\.25 { font-size: 1.25em; } .\!fs-1\.25 { font-size: 1.25em !important; }
.fs-1\.30 { font-size: 1.30em; } .\!fs-1\.30 { font-size: 1.30em !important; }
.fs-1\.35 { font-size: 1.35em; } .\!fs-1\.35 { font-size: 1.35em !important; }
.fs-1\.40 { font-size: 1.40em; } .\!fs-1\.40 { font-size: 1.40em !important; }
.fs-1\.45 { font-size: 1.45em; } .\!fs-1\.45 { font-size: 1.45em !important; }
.fs-1\.50 { font-size: 1.50em; } .\!fs-1\.50 { font-size: 1.50em !important; }
.fs-1\.55 { font-size: 1.55em; } .\!fs-1\.55 { font-size: 1.55em !important; }
.fs-1\.60 { font-size: 1.60em; } .\!fs-1\.60 { font-size: 1.60em !important; }
.fs-1\.65 { font-size: 1.65em; } .\!fs-1\.65 { font-size: 1.65em !important; }
.fs-1\.70 { font-size: 1.70em; } .\!fs-1\.70 { font-size: 1.70em !important; }
.fs-1\.75 { font-size: 1.75em; } .\!fs-1\.75 { font-size: 1.75em !important; }
.fs-1\.80 { font-size: 1.80em; } .\!fs-1\.80 { font-size: 1.80em !important; }
.fs-1\.85 { font-size: 1.85em; } .\!fs-1\.85 { font-size: 1.85em !important; }
.fs-1\.90 { font-size: 1.90em; } .\!fs-1\.90 { font-size: 1.90em !important; }
.fs-1\.95 { font-size: 1.95em; } .\!fs-1\.95 { font-size: 1.95em !important; }
.fs-2\.00 { font-size: 2.00em; } .\!fs-2\.00 { font-size: 2.00em !important; }
.fs-2\.05 { font-size: 2.05em; } .\!fs-2\.05 { font-size: 2.05em !important; }
.fs-2\.10 { font-size: 2.10em; } .\!fs-2\.10 { font-size: 2.10em !important; }
.fs-2\.15 { font-size: 2.15em; } .\!fs-2\.15 { font-size: 2.15em !important; }
.fs-2\.20 { font-size: 2.20em; } .\!fs-2\.20 { font-size: 2.20em !important; }
.fs-2\.25 { font-size: 2.25em; } .\!fs-2\.25 { font-size: 2.25em !important; }
.fs-2\.30 { font-size: 2.30em; } .\!fs-2\.30 { font-size: 2.30em !important; }
.fs-2\.35 { font-size: 2.35em; } .\!fs-2\.35 { font-size: 2.35em !important; }
.fs-2\.40 { font-size: 2.40em; } .\!fs-2\.40 { font-size: 2.40em !important; }
.fs-2\.45 { font-size: 2.45em; } .\!fs-2\.45 { font-size: 2.45em !important; }
.fs-2\.50 { font-size: 2.50em; } .\!fs-2\.50 { font-size: 2.50em !important; }
.fs-2\.55 { font-size: 2.55em; } .\!fs-2\.55 { font-size: 2.55em !important; }
.fs-2\.60 { font-size: 2.60em; } .\!fs-2\.60 { font-size: 2.60em !important; }
.fs-2\.65 { font-size: 2.65em; } .\!fs-2\.65 { font-size: 2.65em !important; }
.fs-2\.70 { font-size: 2.70em; } .\!fs-2\.70 { font-size: 2.70em !important; }
.fs-2\.75 { font-size: 2.75em; } .\!fs-2\.75 { font-size: 2.75em !important; }
.fs-2\.80 { font-size: 2.80em; } .\!fs-2\.80 { font-size: 2.80em !important; }
.fs-2\.85 { font-size: 2.85em; } .\!fs-2\.85 { font-size: 2.85em !important; }
.fs-2\.90 { font-size: 2.90em; } .\!fs-2\.90 { font-size: 2.90em !important; }
.fs-2\.95 { font-size: 2.95em; } .\!fs-2\.95 { font-size: 2.95em !important; }
.fs-3\.00 { font-size: 3.00em; } .\!fs-3\.00 { font-size: 3.00em !important; }

.fc-main { color: var(--primary); } .\!fc-main { color: var(--primary) !important; }
.fc-\#ffffff { color: #ffffff; } .\!fc-\#ffffff { color: #ffffff !important; }
.fc-\#444444 { color: #444444; } .\!fc-\#444444 { color: #444444 !important; }
.fc-\#555555 { color: #555555; } .\!fc-\#555555 { color: #555555 !important; }
.fc-\#666666 { color: #666666; } .\!fc-\#666666 { color: #666666 !important; }
.fc-\#777777 { color: #777777; } .\!fc-\#777777 { color: #777777 !important; }
.fc-\#888888 { color: #888888; } .\!fc-\#888888 { color: #888888 !important; }
.fc-\#999999 { color: #999999; } .\!fc-\#999999 { color: #999999 !important; }
.fc-\#a1a1a1 { color: #a1a1a1; } .\!fc-\#a1a1a1 { color: #a1a1a1 !important; }
.fc-\#e3e3e3 { color: #e3e3e3; } .\!fc-\#e3e3e3 { color: #e3e3e3 !important; }
.fc-error { color: #ff5252; } .\!fc-error  { color: #ff5252 !important; }
.fc-accent{ color: var(--accent); } .\!fc-accent  { color: var(--accent) !important; }

.bg-transparent { background-color: transparent; } .\!bg-transparent { background-color: transparent !important; }
.bg-\#ffffff { background-color: #ffffff; } .\!bg-\#ffffff { background-color: #ffffff !important; }
.bg-\#f7f7f7 { background-color: #f7f7f7; } .\!bg-\#f7f7f7 { background-color: #f7f7f7 !important; }
.bg-\#f5f5f5 { background-color: #f5f5f5; } .\!bg-\#f5f5f5 { background-color: #f5f5f5 !important; }
.bg-\#f3f3f3 { background-color: #f3f3f3; } .\!bg-\#f3f3f3 { background-color: #f3f3f3 !important; }
.bg-\#f1f1f1 { background-color: #f1f1f1; } .\!bg-\#f1f1f1 { background-color: #f1f1f1 !important; }
.bg-\#F7F8F9 { background-color: #F7F8F9; } .\!bg-\#F7F8F9 { background-color: #F7F8F9 !important; }
.bg-\#e3e3e3 { background-color: #e3e3e3; } .\!bg-\#e3e3e3 { background-color: #e3e3e3 !important; }
.bg-\#212529 { background-color: #212529; } .\!bg-\#212529 { background-color: #212529 !important; }
.bg-\#333333 { background-color: #333333; } .\!bg-\#333333 { background-color: #333333 !important; }
.bg-\#444444 { background-color: #444444; } .\!bg-\#444444 { background-color: #444444 !important; }
.bg-\#555555 { background-color: #555555; } .\!bg-\#555555 { background-color: #555555 !important; }

.bg-primary { background-color: var(--primary); } .\!bg-primary { background-color: var(--primary) !important; }
.bg-black { background-color: #000; } .\!bg-black { background-color: #000 !important; }

.border-\#c3c3c3 { border: 1px solid #c3c3c3; }
.border-\#e3e3e3 { border: 1px solid #e3e3e3; }
.border-\#f1f1f1 { border: 1px solid #f1f1f1; }
.border-top-\#e3e3e3 { border-top: 1px solid #e3e3e3; }
.border-top-\#666666 { border-top: 1px solid #666666; }
.border-bottom-\#e3e3e3 { border-bottom: 1px solid #e3e3e3; }
.border-bottom-\#555555{ border-bottom: 1px solid #555555; }
.border-right-\#222222 { border-right: 1px solid #222222; }
.border-right-\#333333 { border-right: 1px solid #333333; }
.border-right-\#e3e3e3 { border-right: 1px solid #e3e3e3; }

.shadow { box-shadow: var(--shadow); }
.shadow-light { box-shadow: var(--shadow-light); }
.unshadow { box-shadow: none; } .\!unshadow { box-shadow: none !important; }

.h-0\% { height: 0; } .\!h-0\% { height: 0 !important; }
.h-5\% { height: 5%; } .\!h-5\% { height: 5% !important; }
.h-10\% { height: 10%; } .\!h-10\% { height: 10% !important; }
.h-15\% { height: 15%; } .\!h-15\% { height: 15% !important; }
.h-20\% { height: 20%; } .\!h-20\% { height: 20% !important; }
.h-25\% { height: 25%; } .\!h-25\% { height: 25% !important; }
.h-30\% { height: 30%; } .\!h-30\% { height: 30% !important; }
.h-35\% { height: 35%; } .\!h-35\% { height: 35% !important; }
.h-40\% { height: 40%; } .\!h-40\% { height: 40% !important; }
.h-45\% { height: 45%; } .\!h-45\% { height: 45% !important; }
.h-50\% { height: 50%; } .\!h-50\% { height: 50% !important; }
.h-55\% { height: 55%; } .\!h-55\% { height: 55% !important; }
.h-60\% { height: 60%; } .\!h-60\% { height: 60% !important; }
.h-65\% { height: 65%; } .\!h-65\% { height: 65% !important; }
.h-70\% { height: 70%; } .\!h-70\% { height: 70% !important; }
.h-75\% { height: 75%; } .\!h-75\% { height: 75% !important; }
.h-80\% { height: 80%; } .\!h-80\% { height: 80% !important; }
.h-85\% { height: 85%; } .\!h-85\% { height: 85% !important; }
.h-90\% { height: 90%; } .\!h-90\% { height: 90% !important; }
.h-95\% { height: 95%; } .\!h-95\% { height: 95% !important; }
.h-100\% { height: 100%; } .\!h-100\% { height: 100% !important; }

.h-25px { height: 25px; } .\!h-25px { height: 25px !important; }
.h-30px { height: 30px; } .\!h-30px { height: 30px !important; }
.h-50px { height: 50px; } .\!h-50px { height: 50px !important; }
.h-70px { height: 70px; }
.h-150px { height: 150px; }
.h-170px { height: 170px; }



.w-0\% { width: 0; } .\!w-0\% { width: 0 !important; }
.w-5\% { width: 5%; } .\!w-5\% { width: 5% !important; }
.w-10\% { width: 10%; } .\!w-10\% { width: 10% !important; }
.w-15\% { width: 15%; } .\!w-15\% { width: 15% !important; }
.w-20\% { width: 20%; } .\!w-20\% { width: 20% !important; }
.w-25\% { width: 25%; } .\!w-25\% { width: 25% !important; }
.w-30\% { width: 30%; } .\!w-30\% { width: 30% !important; }
.w-35\% { width: 35%; } .\!w-35\% { width: 35% !important; }
.w-40\% { width: 40%; } .\!w-40\% { width: 40% !important; }
.w-45\% { width: 45%; } .\!w-45\% { width: 45% !important; }
.w-50\% { width: 50%; } .\!w-50\% { width: 50% !important; }
.w-55\% { width: 55%; } .\!w-55\% { width: 55% !important; }
.w-60\% { width: 60%; } .\!w-60\% { width: 60% !important; }
.w-65\% { width: 65%; } .\!w-65\% { width: 65% !important; }
.w-70\% { width: 70%; } .\!w-70\% { width: 70% !important; }
.w-75\% { width: 75%; } .\!w-75\% { width: 75% !important; }
.w-80\% { width: 80%; } .\!w-80\% { width: 80% !important; }
.w-85\% { width: 85%; } .\!w-85\% { width: 85% !important; }
.w-90\% { width: 90%; } .\!w-90\% { width: 90% !important; }
.w-95\% { width: 95%; } .\!w-95\% { width: 95% !important; }
.w-100\% { width: 100%; } .\!w-100\% { width: 100% !important; }

.w-10px { width: 10px; } .\!w-10px { width: 10px !important; }
.w-20px { width: 20px; } .\!w-20px { width: 20px !important; }
.w-30px { width: 30px; } .\!w-30px { width: 30px !important; }
.w-40px { width: 40px; } .\!w-40px { width: 40px !important; }
.w-50px { width: 50px; } .\!w-50px { width: 50px !important; }
.w-60px { width: 60px; } .\!w-60px { width: 60px !important; }
.w-70px { width: 70px; } .\!w-70px { width: 70px !important; }
.w-80px { width: 80px; } .\!w-80px { width: 80px !important; }
.w-90px { width: 90px; } .\!w-90px { width: 90px !important; }
.w-100px { width: 100px; } .\!w-100px { width: 100px !important; }
.w-110px { width: 110px; } .\!w-110px { width: 110px !important; }
.w-120px { width: 120px; } .\!w-120px { width: 120px !important; }
.w-130px { width: 130px; } .\!w-130px { width: 130px !important; }
.w-140px { width: 140px; } .\!w-140px { width: 140px !important; }
.w-150px { width: 150px; } .\!w-150px { width: 150px !important; }
.w-160px { width: 160px; } .\!w-160px { width: 160px !important; }
.w-170px { width: 170px; } .\!w-170px { width: 170px !important; }
.w-180px { width: 180px; } .\!w-180px { width: 180px !important; }
.w-190px { width: 190px; } .\!w-190px { width: 190px !important; }
.w-200px { width: 200px; } .\!w-200px { width: 200px !important; }
.w-210px { width: 210px; } .\!w-210px { width: 210px !important; }
.w-220px { width: 220px; } .\!w-220px { width: 220px !important; }
.w-230px { width: 230px; } .\!w-230px { width: 230px !important; }
.w-240px { width: 240px; } .\!w-240px { width: 240px !important; }
.w-250px { width: 250px; } .\!w-250px { width: 250px !important; }
.w-260px { width: 260px; } .\!w-260px { width: 260px !important; }
.w-270px { width: 270px; } .\!w-270px { width: 270px !important; }
.w-280px { width: 280px; } .\!w-280px { width: 280px !important; }
.w-290px { width: 290px; } .\!w-290px { width: 290px !important; }
.w-300px { width: 300px; } .\!w-300px { width: 300px !important; }
.w-310px { width: 310px; } .\!w-310px { width: 310px !important; }
.w-320px { width: 320px; } .\!w-320px { width: 320px !important; }
.w-330px { width: 330px; } .\!w-330px { width: 330px !important; }
.w-340px { width: 340px; } .\!w-340px { width: 340px !important; }
.w-350px { width: 350px; } .\!w-350px { width: 350px !important; }
.w-360px { width: 360px; } .\!w-360px { width: 360px !important; }
.w-370px { width: 370px; } .\!w-370px { width: 370px !important; }
.w-380px { width: 380px; } .\!w-380px { width: 380px !important; }
.w-390px { width: 390px; } .\!w-390px { width: 390px !important; }
.w-400px { width: 400px; } .\!w-400px { width: 400px !important; }
/***/
.w-500px { width: 500px; } .\!w-500px { width: 500px !important; }
/***/
.w-600px { width: 600px; } .\!w-600px { width: 600px !important; }
/***/
.w-700px { width: 700px; } .\!w-700px { width: 700px !important; }



.flex{display: flex;} .\!flex{ display: flex !important; }
.flex-fill {
    display: flex;
    flex: 1;
    min-height: 0;
    min-width: 0;
}
.flex-box{box-sizing: border-box} .\!flex-box{box-sizing: border-box}
.flex-wrap { flex-wrap: wrap }
.flex-shrink { flex-shrink: 0 }
.flex-auto { flex: 0 0 auto; } .\!flex-auto { flex: 0 0 auto !important; }
.flex-grow { flex: 1 1 auto }
.flex-column { flex-direction: column; }
.flex-0\.25{ flex: 0.25; }
.flex-0\.5{ flex: 0.5; }
.flex-0\.75{ flex: 0.75; }
.flex-0\.95{ flex: 0.95; }
.flex-1{ flex: 1; }
.flex-1-2{ flex: 1 1 calc(50% - 10px); }
.flex-1-3{ flex: 1 1 calc(33.33% - 10px); }
.flex-2-3{ flex: 1 1 calc(66.66% - 10px); }
.flex-30px { flex: 0 0 30px; }
.flex-40px { flex: 0 0 40px; }
.flex-50px { flex: 0 0 50px; }
.flex-100px { flex: 0 0 100px; }
.flex-150px { flex: 0 0 150px; }
.flex-250px { flex: 0 0 250px; }
.flex-300px { flex: 0 0 300px; }
.flex-justify-center{ justify-content: center; }
.flex-justify-space-between{ justify-content: space-between; }
.flex-align-start{ align-items: flex-start; }
.flex-align-center{ align-items: center; }
.flex-align-right{ margin-left: auto; } .\!flex-align-right{ margin-left: auto !important; }
.flex-truncate{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
}
.flex-0 { flex: 0.00; } .\!flex-0 { flex: 0.00 !important; }
.flex-0\.05 { flex: 0.05; } .\!flex-0\.05 { flex: 0.05 !important; }
.flex-0\.10 { flex: 0.10; } .\!flex-0\.10 { flex: 0.10 !important; }
.flex-0\.15 { flex: 0.15; } .\!flex-0\.15 { flex: 0.15 !important; }
.flex-0\.20 { flex: 0.20; } .\!flex-0\.20 { flex: 0.20 !important; }
.flex-0\.25 { flex: 0.25; } .\!flex-0\.25 { flex: 0.25 !important; }
.flex-0\.30 { flex: 0.30; } .\!flex-0\.30 { flex: 0.30 !important; }
.flex-0\.33 { flex: 0.33; } .\!flex-0\.33 { flex: 0.33 !important; }
.flex-0\.35 { flex: 0.35; } .\!flex-0\.35 { flex: 0.35 !important; }
.flex-0\.40 { flex: 0.40; } .\!flex-0\.40 { flex: 0.40 !important; }
.flex-0\.45 { flex: 0.45; } .\!flex-0\.45 { flex: 0.45 !important; }
.flex-0\.50 { flex: 0.50; } .\!flex-0\.50 { flex: 0.50 !important; }
.flex-0\.55 { flex: 0.55; } .\!flex-0\.55 { flex: 0.55 !important; }
.flex-0\.60 { flex: 0.60; } .\!flex-0\.60 { flex: 0.60 !important; }
.flex-0\.65 { flex: 0.65; } .\!flex-0\.65 { flex: 0.65 !important; }
.flex-0\.70 { flex: 0.70; } .\!flex-0\.70 { flex: 0.70 !important; }
.flex-0\.75 { flex: 0.75; } .\!flex-0\.75 { flex: 0.75 !important; }
.flex-0\.80 { flex: 0.80; } .\!flex-0\.80 { flex: 0.80 !important; }
.flex-0\.85 { flex: 0.85; } .\!flex-0\.85 { flex: 0.85 !important; }
.flex-0\.90 { flex: 0.90; } .\!flex-0\.90 { flex: 0.90 !important; }
.flex-0\.95 { flex: 0.95; } .\!flex-0\.95 { flex: 0.95 !important; }

.radius-0 { border-radius: 0; } .\!radius-0 { border-radius: 0 !important; }
.radius-1 { border-radius: 1px; } .\!radius-1 { border-radius: 1px !important; }
.radius-2 { border-radius: 2px; } .\!radius-2 { border-radius: 2px !important; }
.radius-3 { border-radius: 3px; } .\!radius-3 { border-radius: 3px !important; }
.radius-4 { border-radius: 4px; } .\!radius-4 { border-radius: 4px !important; }
.radius-5 { border-radius: 5px; } .\!radius-5 { border-radius: 5px !important; }
.radius-6 { border-radius: 6px; } .\!radius-6 { border-radius: 6px !important; }
.radius-7 { border-radius: 7px; } .\!radius-7 { border-radius: 7px !important; }
.radius-8 { border-radius: 8px; } .\!radius-8 { border-radius: 8px !important; }
.radius-9 { border-radius: 9px; } .\!radius-9 { border-radius: 9px !important; }
.radius-10 { border-radius: 10px; } .\!radius-10 { border-radius: 10px !important; }
.radius-11 { border-radius: 11px; } .\!radius-11 { border-radius: 11px !important; }
.radius-12 { border-radius: 12px; } .\!radius-12 { border-radius: 12px !important; }
.radius-13 { border-radius: 13px; } .\!radius-13 { border-radius: 13px !important; }
.radius-14 { border-radius: 14px; } .\!radius-14 { border-radius: 14px !important; }
.radius-15 { border-radius: 15px; } .\!radius-15 { border-radius: 15px !important; }
.radius-16 { border-radius: 16px; } .\!radius-16 { border-radius: 16px !important; }
.radius-17 { border-radius: 17px; } .\!radius-17 { border-radius: 17px !important; }
.radius-18 { border-radius: 18px; } .\!radius-18 { border-radius: 18px !important; }
.radius-19 { border-radius: 19px; } .\!radius-19 { border-radius: 19px !important; }
.radius-20 { border-radius: 20px; } .\!radius-20 { border-radius: 20px !important; }
.radius-21 { border-radius: 21px; } .\!radius-21 { border-radius: 21px !important; }
.radius-22 { border-radius: 22px; } .\!radius-22 { border-radius: 22px !important; }
.radius-23 { border-radius: 23px; } .\!radius-23 { border-radius: 23px !important; }
.radius-24 { border-radius: 24px; } .\!radius-24 { border-radius: 24px !important; }
.radius-25 { border-radius: 25px; } .\!radius-25 { border-radius: 25px !important; }

.cursor-auto { cursor: auto; }
.cursor-pointer { cursor: pointer; }
.cursor-move { cursor: move; }
.cursor-none { cursor: none; }

.box-shadow {
    -webkit-box-shadow: 0 0 4px 1px #e6e6e6 !important;
    box-shadow: 0 0 4px 1px #e6e6e6 !important;
}

.relative{ position: relative; }
.absolute{ position: absolute; } .\!absolute{ position: absolute !important; }
.fixed{ position: fixed; }
.hidden { display: none !important; visibility: hidden !important;}
.muted:empty{ display: none; }


.display-block{}
.display-block > span{ display: block }


.text-italic{ font-style: italic; }
.text-upper{ text-transform: uppercase; }
.text-block{ display: block }
.text-left { text-align: left }
.text-center { text-align: center } .\!text-center { text-align: center !important; }
.text-right { text-align: right }
.text-justify { text-align: justify }
.text-shadow { text-shadow: 0 2px 5px rgba(0,0,0,0.6); }
.text-underline { text-decoration: underline; }
.text-underline-none,
.text-underline-none:hover,
.text-underline-none:focus,
.text-underline-none:active {
    -webkit-tap-highlight-color: transparent;
    outline: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}
.text-clamp {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.text-clamp.required-rows {
    text-overflow: ellipsis;
    line-height: 1.5;
    height: calc(1.5em * 3);
}
.text-clamp.clamp-1 { -webkit-line-clamp: 1 }
.text-clamp.clamp-1.required-rows { height: calc(1.5em * 1); }
.text-clamp.clamp-2 { -webkit-line-clamp: 2 }
.text-clamp.clamp-2.required-rows { height: calc(1.5em * 2);}

.text-break-slash {
    word-break: break-word;
    overflow-wrap: anywhere;
}

.fit-content { width: fit-content }

.unselectable{ user-select: none; }



/*******************************/


.\@c-hidden-350px { }
.\@c-hidden-400px { }
.\@c-hidden-450px { }


/*******************************/

a.link{}
a.link:hover{ text-decoration: underline; }


/*#region -- Scroll */

.scroll-view{
    flex: 1 1 auto;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
    box-sizing: border-box;
}
.\!scroll-view{
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0 !important;
    box-sizing: border-box;
}
.scroll-custom::-webkit-scrollbar-thumb:hover{background: #888;}
.scroll-custom::-webkit-scrollbar-thumb{background: #bcc0c4;border-radius: 5px;border: 1px solid #c8cbce;}
.scroll-custom::-webkit-scrollbar{width:10px!important;height:10px!important;}
.scroll-custom::-webkit-scrollbar-track{right: 15px;background:transparent!important;}

.scroll-custom-medium::-webkit-scrollbar-thumb:hover{background: #888;}
.scroll-custom-medium::-webkit-scrollbar-thumb{background: #bcc0c4;border-radius: 2px;border: 1px solid #c8cbce;}
.scroll-custom-medium::-webkit-scrollbar{width:5px!important; height:5px!important;}
.scroll-custom-medium::-webkit-scrollbar-track{right: 2px; background:transparent!important;}

.scroll-custom-small::-webkit-scrollbar-thumb:hover{background: #888;}
.scroll-custom-small::-webkit-scrollbar-thumb{background: #bcc0c4;border-radius: 1px;border: 1px solid #c8cbce;}
.scroll-custom-small::-webkit-scrollbar{width:2px!important;height:2px!important;}
.scroll-custom-small::-webkit-scrollbar-track{right: 1px;background:transparent!important;}

.scroll-custom-light::-webkit-scrollbar-thumb:hover{background: #e3e3e3;}
.scroll-custom-light::-webkit-scrollbar-thumb{background: #e1e1e1;border: 1px solid #e1e1e1;}

.scroll-hidden{
    overflow-y: hidden;
}
/*#endregion*/

/*#region -- Avatar */
.avatar{
    background: transparent;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    flex: 0 0 44px;
}
.avatar-16{ width: 16px; height: 16px; flex: 0 0 16px; }
.avatar-20{ width: 20px; height: 20px; flex: 0 0 20px; }
.avatar-22{ width: 22px; height: 22px; flex: 0 0 22px; }
.avatar-28{ width: 28px; height: 28px; flex: 0 0 28px; }
.avatar-32{ width: 32px; height: 32px; flex: 0 0 32px; }
.avatar-42{ width: 42px; height: 42px; flex: 0 0 42px; }
.avatar-64{ width: 64px; height: 64px; flex: 0 0 64px; }
.avatar-96{ width: 96px; height: 96px; flex: 0 0 96px; }
.avatar-33\%{ width: 33%; height: 33%; flex: 0 0 33%; }
.avatar-100\%{ width: 100%; height: 100%; flex: 0 0 100%; }
.avatar-shape-rounded{ border-radius: 50% !important; }
.avatar-shape-rounded-square{ border-radius: 12px !important; }
.avatar-shape-square{ border-radius: 0 !important; }

.avatars {
    position: relative;
    z-index: 1500;
}
.avatars > div {
    position: absolute;
    top: 0;
    z-index: 1501;
    /*top: 50%;*/
    /*transform: translate(-50%, -50%);*/
}
.avatars > div > img { border: 2px solid #fff; cursor: pointer; }
.avatars > div:nth-child(1) { right: 0; z-index: 1502; }
.avatars > div:nth-child(2) { right: 16px; z-index: 1503; }
.avatars > div:nth-child(3) { right: 32px; z-index: 1504; }
.avatars > div:nth-child(4) { right: 48px; z-index: 1505; }
.avatars > div:nth-child(5) { right: 64px; z-index: 1506; }
.avatars .others {
    right: 100px;
    z-index: 1507;
    background: var(--primary);
    color: #fff;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}


/*#endregion*/

/*#region -- Modal */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
}
.modal-overlay.show {
    opacity: 1;
    visibility: visible;
}
.modal{
    background: var(--white);
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
    width: 90%;
    max-width: 500px;
    max-height: 80%;
    padding: 20px;
    position: relative;
    transform: translateY(-20px);
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
    overflow-y: auto;
    z-index: 9001;
}
.modal-footer {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    border-top: 1px solid #eee;
    padding-top: 10px;
}
.modal-description {
    display: flex;
    color: #666;
    font-size: 0.9rem;
    margin-bottom: 10px;
}
.modal-content{
    position: relative;
    z-index: 9100;
}
.modal-close {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    z-index: 9888;
}
.modal.show {
    transform: translateY(0);
    opacity: 1;
}

/*#endregion*/

/*#region -- Btn */

.btn{
    display: block;
    padding: 15px 22px;
    margin: 6px 0;
    width: max-content;
    /*width: 220px !important;*/
    background: var(--primary);
    border-radius: 25px;
    color: #fff;
    font-family: var(--font-family);
    font-weight: 500;
    transition: 0.3s;
    text-align: center;
    text-decoration: none;
    user-select: none;
    cursor: pointer;
}
.btn:hover{
    background: rgba(25, 88, 95, 0.8);
    color: #fff;
}
.btn.btn-dark{
    background: var(--secondary);
}
.btn.btn-dark:hover{
    background: rgba(57, 57, 57, 0.8);
    color: var(--white);
}
.btn.btn-light{
    background: var(--light);
    color: var(--secondary);
}
.btn.btn-light:hover{
    background: rgba(200, 200, 200, 0.8);
    color: var(--secondary);
}
.btn.btn-orange{
    /*background: var(--color-orange);*/
    color: #fff;
    transition: background-color 0.3s;
}
.btn.btn-orange:hover{
    background: #FF704399;
}
.btn.btn-transparent,
.btn.btn-flat{
    background: transparent;
    color: var(--primary);
}
.btn.btn-transparent i,
.btn.btn-flat i{
    color: var(--primary);
}
.btn.btn-transparent:hover,
.btn.btn-flat:hover{
    background: rgba(57, 57, 57, 0.8);
    color: #fff;
}
.btn.btn-transparent:hover i,
.btn.btn-flat:hover i{
    color: #fff;
}
.btn.btn-transparent-light,
.btn.btn-transparent-light i{
    transition: color 0.1s ease-in-out;
}
.btn.btn-transparent-light:hover{
    background: rgba(57, 57, 57, 0.01);
    color: #777;
}
.btn.btn-transparent-light:hover i{
    color: #777;
}


.btn-full{
    width: 100% !important;
    box-sizing: border-box;
    /*padding: 15px 0 !important;*/
    /*font-size: 14px !important;*/
}
.btn-medium,
.btn-medium-full{
    padding: 8px 20px;
    font-size: 14px;
}
.btn-small,
.btn-small-full{
    padding: 6px 15px;
    font-size: 12px;
}
.btn-small-full{
    width: calc(100% - 30px);
}
.btn-ultra-small{
    padding: 3px 12px;
}
.btn-inline{
    display: inline-block;
}
.btn i{
    color: var(--white);
}
.btn-light i{
    color: var(--secondary);
}
/****/
.btn-uploader{
    position: relative;
    cursor: pointer !important;
}
.btn-uploader input[type=file]{
    position: absolute;
    top: 0;
    z-index: 1;
    opacity: 0;
    cursor: pointer !important;
    left: 0;
    background: transparent;
    font-size: 500px;
    height: 100% !important;
    width: 100% !important;
}


[data-btn-icon]{
    padding: 8px !important;
}
[data-btn-icon] i{
    color: #b5b5b5;
}
[data-btn-icon]:hover i{
    color: #FFF;
}
[data-btn-icon]::before{
    content: attr(data-btn-icon);
    opacity: 0;
    display: none;
    transition: opacity 0.3s ease-in-out;
    padding: 0 5px;
}
[data-btn-icon]:hover::before{
    display: inline-block;
    opacity: 1;
}
[data-btn-icon]:hover i[class*="fc-"]{
    color: #FFF !important;
}


/*#endregion*/





/*#region -- Calendar */

.calendar{
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}
.calendar .calendar-header{
    flex: 0 0 auto;
}
.calendar .calendar-body{
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}
.calendar [data-view].active{
    background: var(--primary);
    color: #fff !important;
}

/*#endregion*/



/*#region -- Treeview */

.treeview ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.treeview li {
    display: block;
    cursor: pointer;
    position: relative;
    margin: 0;
    padding-left: 12px;
}
.treeview li i.collapser{
    color: #888;
    cursor: pointer;
}
.treeview > ul > li {
    padding: 0;
}
.treeview li.collapsed > ul {
    display: none;
    margin: 0;
    padding: 0;
}
.treeview li.empty i.collapser {
    color: transparent;
}
.treeview .label {
    position: relative;
    display: flex;
    margin: 0;
    padding: 1px 0 1px 12px;
    user-select: none;
    font-family: "Kanit", serif;
    font-size: 13px;
    font-weight: 400;
}
.treeview .label.selected {
    background-color: #007acc60;
    color: white;
    width: 100%;
}
.treeview .label:hover:not(.selected) {
    background-color: #88888840;
}
.treeview .label i{
    color: #fff;
    margin-right: 4px;
}
.treeview .label input{
    background: transparent;
    border: none;
    outline: none;
    color: #e3e3e3;
    font-family: "Kanit", serif;
    cursor: pointer;
    user-select: none;
    box-sizing: border-box;
    /*flex: 1;*/
}
.treeview .label input::selection {
    background: transparent;
    /*color: transparent;*/
}
.treeview .label input.edit{
    background: #444;
    outline: 1px solid #333;
}
.treeview .label input.edit::selection {
    background: #1a8aff70;
    /*color: transparent;*/
}
/*#endregion*/

/*

.context-menu{
    position: absolute;
    display: block;
    background: #333;
    color: white;
    border-radius: 5px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
    padding: 5px;
    z-index: 9999999;
}
.context-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 200px;
    font-weight: 400;
}
.context-menu ul li {
    cursor: pointer;
    transition: background 0.2s;
    display: flex;
    padding: 0;
    font-weight: 400;
}
.context-menu ul li.context-menu-header {
    flex: 1;
    padding: 5px;
    color: #c3c3c3;
    border-bottom: 1px solid #999;
}
.context-menu ul li.separator {
    border-top: 1px solid #ccc;
    margin: 4px 0;
    padding: 0;
}
.context-menu ul li a:hover {
    background: #555;
}
.context-menu ul li a{
    display: flex;
    color: #fff;
    text-decoration: none;
    flex: 1;
    padding: 5px;
    align-items: center;
    font-size: 12px;
}
.context-menu ul li.disabled a{
    color: #888;
}
.context-menu ul li span.shortcut{
    margin-left: auto;
    font-size: 11px;
    color: #e3e3e3;
}
.context-menu ul li.has-submenu {
    position: relative;
}
.context-menu ul li.has-submenu > a::after {
    content: "▶";
    font-size: 10px;
    margin-left: auto;
    color: #ccc;
}
.context-menu ul li .submenu {
    position: absolute;
    top: 0;
    left: 100%;
    background: #333;
    min-width: 200px;
    border-radius: 5px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
    display: none;
    padding: 5px 0;
    z-index: 9999999;
}
.context-menu ul li.has-submenu:hover > .submenu {
    display: block;
}
.context-menu ul li .submenu li.has-submenu > .submenu {
    top: 0;
    left: 100%;
}
.context-menu ul li .submenu li a:hover {
    background: #555;
}
.context-menu ul li .submenu li.separator {
    border-top: 1px solid #555;
    margin: 4px 0;
    padding: 0;
}

*/


/*#region -- Menu */

.menu{
    background: #555;
    height: 30px;
    display: flex;
    align-items: center;
    padding: 2px 10px 0;
    z-index: 9999;
    border-bottom: 2px solid #555;
}
.menu .menu-item {
    position: relative;
    cursor: pointer;
    user-select: none;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    align-items: center;
    padding: 3px 8px;
    border: 1px solid transparent;
    border-radius: 3px;
    z-index: 99999;
}
.menu .menu-item:hover {
    background: #444;
    border: 1px solid #999;
}
.menu .submenu {
    position: absolute;
    z-index: 9999999;
    top: 100%;
    left: 0;
    background: #444;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2);
    display: none;
    min-width: 150px;
    border: 1px solid #999;
}
.menu .menu-item:hover > .submenu {
    display: block;
}
.menu .submenu a {
    display: flex;
    justify-content: space-between;
    text-decoration: none;
    white-space: nowrap;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    align-items: center;
    padding: 3px 8px;
    border: 1px solid transparent;
    border-radius: 3px;
}
.menu .submenu a:hover {
    background: #333;
    /*border: 1px solid #999;*/
}
.menu .submenu .has-submenu {
    position: relative;
}
.menu .submenu .submenu-right {
    position: absolute;
    z-index: 9999999;
    top: 0;
    left: 100%;
    background: #444;
    border: 1px solid #999;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
    min-width: 200px;
    display: none;
}
.menu .submenu .has-submenu:hover > .submenu-right {
    display: block;
}
.menu .submenu a.has-submenu::after {
    content: "➤";
    font-size: 8px;
    margin-left: auto;
}
.menu .menu-separator {
    height: 1px;
    background: #ccc;
    margin: 5px 10px;
}
.menu .menu-shortcut {
    font-size: 12px;
    color: #a1a1a1;
    margin-left: 20px;
}

/*#endregion*/

.dump-json .json-document{
    background: #333;
    border-radius: 3px;
    margin-top: 3px;
    color: #f7f7f7;
}
.dump-json ul li{
    color: #f7f7f7;
}



/*#region -- Form */

.form{
    position: relative;
    display: flex;
    width: 100%;
    box-sizing: border-box;
    padding: 1px;
    flex: 1 1 auto;             /* prend l’espace restant */
    min-height: 0;
    flex-direction: column;
    /*padding-bottom: 56px;*/
}
.form.form-with-radius{
    border-radius: var(--border-radius);
}
.form.form-with-footer{
    padding-bottom: 64px;
}
.form .form-header{
    background: #f7f7f7;
    padding: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    color: var(--primary);
    font-weight: 400;
    border-bottom: 2px solid var(--primary);
    margin: 10px 0;
    display: flex;
}

.form input{
    outline: none;
    position: relative;
}


.form input[type="date"],
.form input[type="time"] {
    -webkit-appearance: none;
    appearance: none;
}
input[type="date"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-inner-spin-button {
    color: red;
}
/* placeholder text style */
input[type="date"]::-webkit-datetime-edit-text,
input[type="date"]::-webkit-datetime-edit-month-field,
input[type="date"]::-webkit-datetime-edit-day-field,
input[type="date"]::-webkit-datetime-edit-year-field {
    color: red;
}
/* regular text style */
input[type="date"].date-input--has-value::-webkit-datetime-edit-text,
input[type="date"].date-input--has-value::-webkit-datetime-edit-month-field,
input[type="date"].date-input--has-value::-webkit-datetime-edit-day-field,
input[type="date"].date-input--has-value::-webkit-datetime-edit-year-field {
    color: red;
}




.form input[type="text"],
.form input[type="password"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="date"],
.form input[type="time"],
.form input[type="number"]{
    /*margin: 1px;*/
    background: #fff;
    padding: 12px 10px;
    border: 1px solid #d1d1d1;
    border-radius: 4px;
    width: 100%;
    font-family: var(--font-family);
    font-weight: 400;
    box-sizing: border-box;
    font-size: 14px;
    transition: box-shadow 0.2s ease;
}
.form input[type="text"]:hover,
.form input[type="password"]:hover,
.form input[type="email"]:hover,
.form input[type="tel"]:hover,
.form input[type="date"]:hover,
.form input[type="time"]:hover,
.form input[type="number"]:hover{
    /*margin: 0;*/
    box-shadow: 0 0 0 1px var(--secondary);
    /*border-width: 2px;*/
    /*border-color: var(--primary);*/
}
.form input[type="text"]:focus,
.form input[type="password"]:focus,
.form input[type="email"]:focus,
.form input[type="tel"]:focus,
.form input[type="date"]:focus,
.form input[type="time"]:focus,
.form input[type="number"]:focus{
    box-shadow: 0 0 0 1px var(--secondary);
}
.form input[type="text"].error,
.form input[type="password"].error,
.form input[type="email"].error,
.form input[type="tel"].error,
.form input[type="date"].error,
.form input[type="time"].error,
.form input[type="number"].error{
    box-shadow: 0 0 0 1px var(--error);
}
.form input[type="text"]:disabled{
    border-color: #dfdfdf;
    color: #9f9f9f;
}

.form input[data-icon]{
    padding-left: 38px;
}
.form .input-icon{
    display: flex;
    position: relative;
    width: fit-content;
    /*height: fit-content;*/
    min-width: 250px;
    height: calc(100% - 1px);
}
.form .input-icon i{
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    color: #888;
}

.form label{
    display: block;
    padding: 4px 0 !important;
    font-weight: 400;
    font-family: var(--font-family);
    font-size: .8em;
    color: #666;
}
.form label.error{
    color: var(--error);
    font-weight: 500;
}

.form textarea{
    outline: none;
    display: block;
    padding: 12px;
    border: 1px solid #d1d1d1;
    border-radius: 4px;
    min-width: 100%;
    max-width: 100%;
    width: 100%;
    min-height: 40px;
    font-family: var(--font-family);
    font-size: 13px;
    box-sizing: border-box;
    transition: box-shadow 0.2s ease;
    resize: vertical;
    overflow-y: auto;
}
.form textarea:hover{
    box-shadow: 0 0 0 1px var(--secondary);
}
.form textarea:focus{
    box-shadow: 0 0 0 1px var(--secondary);
}
.form textarea.error,
.form textarea.error:hover{
    margin: 0 !important;
    box-shadow: 0 0 0 1px var(--error);
}
/*
.form .textarea[contenteditable]{
    min-height: 80px;
}
.form .textarea[contenteditable=true]:empty:not(:focus):before{
    content:attr(data-placeholder);
    color:grey;
    font-weight: 100;
}
.form .textarea[contenteditable]:focus{
    margin: 0 !important;
    outline: 0 solid #4b8cf8;
}*/
.form select{
    margin: 1px;
    display: block;
    padding: 11px 10px 10px;
    border: 1px solid #d1d1d1;
    border-radius: 4px;
    width: 100%;
    /*min-height: 40px;*/
    font-family: var(--font-family);
    font-size: 14px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    transition: box-shadow 0.2s ease;
}
.form select:hover{
    box-shadow: 0 0 0 1px var(--primary);
}
.form select:focus{
    box-shadow: 0 0 0 1px var(--primary);
}
.form select:disabled{
    background: #fafafa !important;
    /*border-color: #d1d1d1 !important;*/
    /*color: #7a7a7a !important;*/
}
.form select *
{
    font-family: var(--font-family);
    font-size: 14px;
}
.form select.error{
    box-shadow: 0 0 0 1px var(--error);
}
.form span.form-help{
    /*float: left;*/
    display: block;
    font-size: 11px;
    width: calc(100% - 60px);
    padding: 4px;
    font-family: var(--font-family);
    font-weight: 200;
    color: #888;
}
.form .form-length{
    float: right;
    font-size: 11px;
}
.form .form-footer{
    position: absolute;
    bottom: 0;
    left: 0;
    background: #f7f7f7;
    border-top: 1px solid #e3e3e3;
    display: block;
    width: calc(100% - 30px);
    height: 36px;
    padding: 12px 15px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}


.form .form-row {
    position: relative;
    display: block;
    clear: both;
    margin: 20px 0;
}
.form .form-row-small {
    margin: 10px 0;
}

.form .form-block{
    background: #f3f3f3;
    border-radius: var(--border-radius);
    padding: 20px;
}
.form .form-block .form-block-header{
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}
.form .form-block a{
    font-size: 12px;
    font-weight: 500;
}
.form .form-block a:hover{
    text-decoration: underline;
}


.form .form-radio input[type="radio"] {
    opacity: 0;
    position: absolute;
}
.form .form-radio label {
    position: relative;
    /*padding-left: 30px;*/
    cursor: pointer;
    font-size: 16px;
    user-select: none;
}
.form .form-radio label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 2px solid var(--primary);
    border-radius: 50%;
    background-color: transparent;
}
.form .form-radio input[type="radio"]:checked + label::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background-color: var(--primary);
    border-radius: 50%;
}
.form .form-radio label:hover::before {
    border-color: var(--primary);
}
.form .form-radio label{
    text-indent: 30px;
}






.numeric-input-container {
    border: 1px solid #e3e3e3;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    height: 40px;
}
.numeric-input-container button {
    background-color: #f0f0f0;
    border: none;
    width: 30px;
    height: 100%;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    font-family: var(--font-family);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s;
}
.numeric-input-container button:hover {
    background-color: #e0e0e0;
}
.numeric-input-container button:active {
    background-color: #d0d0d0;
}
.numeric-input {
    font-family: var(--font-family);
    font-weight: 500;
    border: none;
    text-align: center;
    width: 60px;
    outline: none;
    padding: 5px 0;
}
.numeric-input-container input[type=number]::-webkit-outer-spin-button,
.numeric-input-container input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.numeric-input-container input[type=number] {
    -moz-appearance: textfield;
}


/*#endregion*/




.accordion {
    list-style: none;
    padding: 0;
    margin: 0;
    user-select: none;
}
.accordion-item {
    margin-bottom: 5px;
    user-select: none;
}
.accordion-header {
    user-select: none;
    padding: 10px;
    cursor: pointer;
    border: none;
    text-align: left;
    width: 100%;
    outline: none;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    color: var(--secondary);
    box-sizing: border-box;
}
.accordion-header > i{
    font-size: 24px;
    color: var(--secondary);
}
.accordion-header::after{
    font-family: 'Material Symbols Outlined', serif !important;
    content: 'arrow_drop_down';
    font-size: 25px;
    display: block;
    margin-left: auto;
}
.accordion-header.open::after {
    content: 'arrow_drop_up';
}

.accordion-submenu {
    list-style: none;
    padding: 10px 15px;
    margin: 0;
    display: none;
}
.accordion-submenu > li {
    padding: 5px 0;
}
.accordion-divider{
    border-top: 1px solid #e3e3e3;
    display: block;
    height: 1px;
}
.accordion-item.shown .accordion-header::after{
    --after-content: 'arrow_drop_up';
}
.accordion-item.shown .accordion-submenu {
    display: block;
}

/***/
.nav-accordion{
    box-sizing: border-box;
    position: fixed;
    width: fit-content;
    min-width: 230px;
    max-width: 230px;
    top: 0;
    bottom: 0;
    box-shadow: var(--shadow);
    background: #f7f7f7;
    /*padding-top: 51px;*/
    padding-top: 0;
    z-index: 5000;
    /*overflow-y: auto;*/
    /*scrollbar-width: none;*/
}
.nav-accordion::-webkit-scrollbar {
    /*display: none;     */
}
.nav-accordion li:not(.accordion-item, .accordion-menu, .accordion-divider){
    display: block;
    width: 100%;
    margin: 0 0 5px;
    cursor: pointer;
    padding: 10px 15px;
    box-sizing: border-box;
}
.nav-accordion li:not(.accordion-item, .accordion-menu) i{
    font-size: 24px;
    margin-right: 10px;
    font-weight: 500;
}
.nav-accordion li:not(.accordion-item) span{
    font-weight: 500;
    font-size: 16px;
    /*line-height: 12px;*/
    vertical-align: top;
    color: var(--secondary);
    /*display: block;*/
}
.nav-accordion li:not(.accordion-item).active{
    /*background: #f9f9f9;*/
    /*box-shadow: inset 0 2px 4px rgba(0,0,0,0.10);*/
    background: var(--primary);
    /*color: #fff;*/
}
.nav-accordion li:not(.accordion-item).active i,
.nav-accordion li:not(.accordion-item).active span{
    /*color: var(--primary);*/
    color: #fff;
    font-weight: 500;
}
.nav-accordion li:not(.accordion-item, .accordion-divider):hover{
    background: var(--primary);
}
.nav-accordion li:not(.accordion-item):hover i,
.nav-accordion li:not(.accordion-item):hover span{
    color: #fff;
}
.nav-accordion .accordion-header {
    padding: 3px 10px;
    color: #555;
    font-size: 12px;
}
.nav-accordion .accordion-header:hover {
    color: var(--primary);
    /*font-weight: 700;*/
}
.nav-accordion .accordion-submenu{
    padding: 0;
}
/**** collapsed mode ****/
.nav-accordion.collapsed{
    min-width: 55px;
    max-width: 55px;
}

.nav-accordion.collapsed li :not(.accordion-header) span {
    display: none;
}
.nav-accordion.collapsed li .accordion-header{
    padding-right: 0;
}
.nav-accordion.collapsed li .accordion-header span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    /*flex-wrap: wrap;*/
}
.nav-accordion.collapsed li .accordion-header::after{
    content: '';
}


.nav-accordion li.accordion-menu{
    display: flex;
    align-items: center;
    background: #fff;
    height: 51px;
    border-bottom: 1px solid #e3e3e3;
    padding-left: 12px;
}
.nav-accordion li.accordion-menu:hover{
    background: #fff;

}
.nav-accordion li.accordion-menu:hover i{
    color: var(--primary);
}




.nav-mobile{}
.nav-mobile-overlay {
    position: fixed;
    top: 0;
    left: 0;
    height: 100% !important;
    width: 300px;
    background-color: #333;
    color: white;
    z-index: 2500;
    transition: transform 0.4s ease;
    transform: translateX(-100%);
    box-sizing: border-box;
}
.nav-mobile-overlay.active {
    transform: translateX(0);
}
.nav-mobile-lightbox {
    background: rgba(0,0,0,0.3);
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 999;
    transition: transform 0.1s ease;
    transform: translateX(+100%);
}
.nav-mobile-lightbox.active {
    transform: translateX(0);
}
.nav-mobile ul li a,
.nav-mobile ul li a i,
.nav-mobile ul li a span {
    color: #fff;
}
.nav-mobile .nav-accordion li.active{
    background: #777;
}
.nav-mobile ul li.active,
.nav-mobile ul li.active i,
.nav-mobile ul li.active span{
    color: #fff
}
.nav-mobile .nav-accordion li:not(.accordion-item) i{
    color: #fff
}
.nav-mobile .nav-accordion li:not(.accordion-item) span{
    color: #fff
}
.nav-mobile .nav-accordion .accordion-header {
    color: #999;
}

.nav-responsive{
    flex: 0 0 250px;
}
.nav-fixed{
    position: fixed;
    width: fit-content;
    min-width: 230px;
    max-width: 230px;
    /*height: max-content;*/
    top: 0;
    bottom: 0;
}
.nav-fixed ul li a{}
.nav-wrapper{
    padding-left: 250px !important;
}

.nav.nav-rounded{}
.nav.nav-rounded li.active{}
.nav.nav-rounded li:hover{
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
}
.nav.nav-dark{

}
.nav.nav-dark li a span{
    color: #fff;
}
.nav.nav-dark li a i{
    color: #fff;
}


/******/

.nav-bar{
    background: #fff;
    display: flex;
    flex: 0 0 auto;
    flex-direction: row;
    align-items: center;
    /*justify-content: center;*/
    /*box-shadow: var(--shadow-light);*/
    box-shadow: var(--shadow);
    height: 50px;
    border-radius: 8px;
    user-select: none;
}
.nav-bar .nav-bar-wrapper {
    flex: 1;
    overflow: hidden;
    position: relative;
}
.nav-bar .nav-bar-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(to left, transparent, #fff);
    /*opacity: 0;*/
    transition: opacity 0.2s;
}
.nav-bar .nav-bar-wrapper::after {
    content: "arrow_menu_open";
    font-family: 'Material Symbols Outlined', "Kanit", serif;
    font-size: 28px;
    color: var(--primary);
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 0;
    border-right: 2px solid #f7f7f7;
    pointer-events: none;
    background: linear-gradient(to right, transparent, #f7f7f7);
}
.nav-bar .nav-bar-wrapper.has-left::before {
    opacity: 1;
}
.nav-bar .nav-bar-wrapper.has-right::after {
    opacity: 1;
}
.nav-bar .nav-bar-wrapper::after,
.nav-bar .nav-bar-wrapper::before {
    opacity: 0;
}
.nav-bar ul.nav-bar-tabs{
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0 10px;
    transition: transform 0.3s ease;
    will-change: transform;
    /*justify-content: center;*/
    /*gap: 15px;*/
}
.nav-bar ul.nav-bar-tabs li{
    padding: 0 15px;
    border-bottom: 5px solid transparent;
    cursor: pointer;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
    vertical-align: center;
    font-weight: 400;
    font-family: var(--font-family);
    white-space: nowrap; /* avoid text cutting */
}
.nav-bar ul.nav-bar-tabs li:hover:not(.divider){
    background: #f7f7f7;
    border-bottom: 5px solid var(--primary);
}
.nav-bar ul.nav-bar-tabs li.active{
    border-bottom: 5px solid var(--primary);
}
.nav-bar ul.nav-bar-tabs li.divider{
    padding: 0 5px;
}
.nav-bar ul.nav-bar-tabs li i{
    color: var(--secondary);
    font-size: 22px;
    margin-right: 3px;
}
.nav-bar ul.nav-bar-tabs li span {
    display: inline-block;
}
.nav-bar ul.nav-bar-tools{
    display: flex;
    list-style: none;
    padding: 0 0 0 10px;
    margin-left: auto;
    margin-right: 15px;
    gap: 8px;
}
.nav-bar ul.nav-bar-tools li.active i{
    background: #19585f;
    color: #fff;
}
.nav-bar ul.nav-bar-tools li.divider{
    display: flex;
    width: 2px;
    height: 32px;
    background: #e3e3e3;
    content: "";
}



/*#region Tooltip*/

.tooltip{
    position: absolute;
    background: #333;
    color: #fff;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 13px;
    pointer-events: none;
    white-space: nowrap;
    display: none;
    z-index: 9999;
}

/*#endregion*/


/*#region -- Modal Drawer */

.drawer{
    --delay: 0.3s;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: white;
    z-index: 8888;
    display: flex;
    transition: transform var(--delay) ease-in-out;
    transform: translateX(100%);
    flex-direction: column;
}
.drawer.from-top{
    transform: translateY(-100%) translateX(0);
}
.drawer.from-bottom{
    transform: translateY(+100%) translateX(0);
}
.drawer.from-left{
    transform: translateX(-100%) translateY(0);
}
.drawer.show {
    transform: translateX(0);
}
.drawer.from-top.show,
.drawer.from-bottom.show {
    transform: translateY(0);
}

.drawer-container{
    position: relative;
    height: 100vh;
}
.drawer-footer-sticky{
    /*position: absolute;*/
    position: sticky;
    bottom: 0;
    display: flex;
    height: fit-content;
    padding: 10px 8px 16px;
    width: 100%;
    margin: auto auto;
    background: #fff;
    border-top: 1px solid #f1f1f1;
    box-sizing: border-box;
    z-index: 9999999999999;
}
.drawer-footer{
    display: flex;
    flex: 0 0 50px;
    align-items: flex-end;
    justify-content: space-between;
    height: fit-content;
    padding: 3px;
    background: #fff;
    border-top: 1px solid #f1f1f1;
    box-sizing: border-box;
}


/*#endregion*/


.card {
    display: flex;
    padding: 15px;
    box-shadow: var(--shadow);
    border-radius: var(--border-radius);
}



/*#region -- Progressbar */


.progress-loader{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background-color: #e3e3e3;
    margin: 0 !important;
    padding: 0 !important;
}
.progress-loader span.cursor {
    float: left;
    width: 60%;
    height: 5px;
    z-index: 2;
    background-color: #19585f;
    margin-top: 0px !important;
}
.progress-bar {
    position: relative;
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    height: 5px;
    border-radius: 15px;
    background-color: #e3e3e3;
    overflow: hidden;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
    margin: 0;
    padding: 0;
}
.progress-bar::-webkit-progress-bar {
    background-color: #e3e3e3;
    border-radius: 15px;
}

.progress-bar::-webkit-progress-value {
    background-color: #4caf50;
    border-radius: 15px;
}

.progress-bar::-moz-progress-bar {
    background-color: #4caf50;
    border-radius: 15px;
}
.progress-circle {
    --percentage: 0;
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: conic-gradient(#4caf50 0deg, #4caf50 calc(var(--percentage) * 3.6deg), #f3f3f3 calc(var(--percentage) * 3.6deg));
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.progress-circle::before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background-color: white;
}

.progress-value {
    position: absolute;
}

/*#endregion*/



.badge{
    flex: 0 0 auto;
    background: #0F626A1A;
    color: #0F626A;
    border-radius: 6px;
    padding: 2px 5px;
    font-weight: 500;
}
.badge.badge-success{
    background: #00A0003A;
}
.badge.badge-warning,
.badge.badge-orange{
    background: #9c8b2f1A;
}
.badge.badge-error{
    background: #c628283A;
}




/*#region -- Grid */

.grid-flex {
    --grid-flex: 150px;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(var(--grid-flex, 150px), 1fr));
    gap: 16px;
    box-sizing: border-box;
    /*height: 100%;*/
}
.grid-flex-item {}
.grid-flex > .grid-flex-item  {
    max-width: 350px;
}
.grid-flex > .grid-flex-item:nth-child(n+3) {
    max-width: none;
}
.grid-flex.grid-responsive {  grid-template-columns: 1fr; }

.grid-flex.grid-1 {  grid-template-columns: 1fr; }
.grid-flex.grid-2 {  grid-template-columns: repeat(2, 1fr); }
.grid-flex.grid-3 {  grid-template-columns: repeat(3, 1fr); }
.grid-flex.grid-4 {  grid-template-columns: repeat(4, 1fr); }
.grid-flex.grid-5 {  grid-template-columns: repeat(5, 1fr); }

.grid-flex.grid-1-3 { grid-template-columns: 1fr 2fr; }
.grid-flex.grid-1-4 { grid-template-columns: 1fr 3fr; }
.grid-flex.grid-1-5 { grid-template-columns: 1fr 4fr; }
.grid-flex.grid-1-6 { grid-template-columns: 1fr 5fr; }

.grid-flex.grid-2-3 { grid-template-columns: 2fr 1fr; }
.grid-flex.grid-3-4 { grid-template-columns: 3fr 1fr; }
.grid-flex.grid-4-5 { grid-template-columns: 4fr 1fr; }
.grid-flex.grid-5-6 { grid-template-columns: 5fr 1fr; }

/*#endregion*/



/*#region -- Breadcrumb */

.breadcrumb{
    font-family: "Lexend", sans-serif;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 10px;
}
.breadcrumb a{
    font-size: 14px;
}
.breadcrumb span{
    font-size: 14px;
}
.breadcrumb a:hover{
    text-decoration: underline;
}
.breadcrumb a:last-child{
    color: #999;
    text-decoration: none;
    cursor: default;
}

/*#endregion*/



/*#region -- Switcher */

.switcher {
    display: inline-block;
    position: relative;
    width: 50px;
    height: 26px;
}
.switch-input {
    opacity: 0;
    width: 0;
    height: 0;
}

.switch-label {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    border-radius: 26px;
    transition: background-color 0.3s;
}

.switch-label::before {
    content: "";
    position: absolute;
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    border-radius: 50%;
    transition: transform 0.3s;
}

.switch-input:checked + .switch-label {
    background-color: var(--primary);
}

.switch-input:checked + .switch-label::before {
    transform: translateX(24px);
}

/*#endregion*/



/*#region -- List */

ul.list{
    list-style: none;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
}
ul.list-inline{
    flex-direction: row;
}
ul.list-icon{
    gap: 12px;
    justify-content: center;
}
ul.list-icon > li{
}
ul.list-icon > li > a > i,
ul.list-icon > li > div > i{
    font-size: 24px !important;
    line-height: 32px!important;
    height: 32px!important;
    width: 32px!important;
    border: 1px solid var(--primary);
    color: var(--primary) !important;
}
ul.list.list-hover > li:hover {
    cursor: pointer;
    background: #f1f1f1;
    border-radius: var(--border-radius);
}

/*#endregion*/


/*#region Table */

.table {
    /*display: flex;*/
    /*flex-direction: column;*/
    width: 100%;
    border: 1px solid #e3e3e3;
    overflow: hidden;
    font-size: 0.95rem;
    background: #fff;
    border-collapse: collapse; /* pas d'espaces entre les cellules */
    table-layout: fixed;       /* force les cellules à se répartir */
}

.table-sticky > thead > tr > th{
    position: sticky !important;
}
.table-odd > tr:nth-child(even) {
    background: #f8f8f8;
}

.table > thead {
    /*display: flex;*/
    background: #f7f7f7;
    font-weight: 600;
    color: #444;
    border-bottom: 1px solid #e3e3e3;
}

.table tr td,
.table tr th {
    border: 1px solid #f5f5f5;
    padding: 8px 12px;
    text-align: left;
    width: auto;
}
.table > tr {
    width: 100%;
}


/*#endregion*/









[data-avatar]{
    cursor: pointer;
    position: relative !important;
    /*background-size: cover;*/
    /*background-position: center;*/
    /*border-radius: 50%;*/
    overflow: hidden;
    transition: filter 0.2s ease;
}
[data-avatar]:hover {
    filter: brightness(0.8);
}
[data-avatar]:hover::after {
    content: "edit";
    font-family: 'Material Symbols Outlined', serif !important;
    font-size: 24px;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: inherit;
    opacity: 1;
}
[data-avatar]::after {
    content: "";
    opacity: 0;
    transition: opacity 0.2s ease;
}
[data-avatar]:hover::after {
    opacity: 1;
}

/*#endregion*/








#notifications .notification {
    backdrop-filter: blur(10px);
    background: rgba(44,46,63,0.8);
    box-shadow: 0 8px 20px rgba(0,0,0,.2);
    color: #fff;
}

#notifications .notification.info {
    background: #2C2E3F;
}
[data-notify-event] { display: none; }







[data-tooltip] {
    position: relative;
    cursor: pointer;
}
[data-tooltip]::after {
    content: attr(data-tooltip);
    position: absolute;
    /*bottom: 125%;*/
    /*left: 50%;*/
    background: #2C2E3F;
    color: #fff;
    padding: 3px 6px !important;;
    border-radius: 6px;
    font-size: 11px !important;
    line-height: 18px !important;
    font-weight: 500;
    font-family: Lexend, sans-serif;
    /*white-space: nowrap;*/
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, transform .25s ease;
    /*transform: translateX(-50%) translateY(-5px);*/
    z-index: 9999;
}
[data-tooltip]:hover::after {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

[data-tooltip].tooltip-right::after {
    bottom: auto;
    top: 50%;
    left: 100%;
    white-space: nowrap;
    transform: translateY(-50%) translateX(8px);
}
[data-tooltip].tooltip-right:hover::after {
    transform: translateY(-50%) translateX(0);
}

[data-tooltip].tooltip-left::after {
    top: 50%;
    right: 100%;
    transform: translateY(-50%) translateX(-8px);
    white-space: nowrap;
}
[data-tooltip].tooltip-left:hover::after {
    transform: translateY(-50%) translateX(0);
}

[data-tooltip].tooltip-top::after {
    left: 50%;
    bottom: 100%;
    transform: translateX(-50%) translateY(-8px);
    white-space: nowrap;
}
[data-tooltip].tooltip-top:hover::after {
    transform: translateX(-50%) translateY(0);
}

[data-tooltip].tooltip-bottom::after {
    left: 50%;
    top: 100%;
    transform: translateX(-50%) translateY(8px);
    white-space: nowrap;
}
[data-tooltip].tooltip-bottom:hover::after {
    transform: translateX(-50%) translateY(0);
}
[data-tooltip].tfw-100::after { font-weight: 100; }
[data-tooltip].tfw-200::after { font-weight: 200; }
[data-tooltip].tfw-300::after { font-weight: 300; }
[data-tooltip].tfw-400::after { font-weight: 400; }
[data-tooltip].tfw-500::after { font-weight: 500; }
[data-tooltip].tfw-600::after { font-weight: 600; }
[data-tooltip].tfw-700::after { font-weight: 700; }
[data-tooltip].tfw-800::after { font-weight: 800; }
[data-tooltip].tfw-900::after { font-weight: 900; }






[data-layout]{}
/*[data-residence]{}*/
/*[data-resident]{}*/
[data-employee]{}
