/*
[ Standard Element ]
*/

html {
    height: 100%;
    font-size: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
body {
    color: var(--wje-color-contrast-8);
    font-family: var(--wje-font-family);
    font-size: var(--wje-font-size);
    font-weight: normal;
    letter-spacing: 0.01em;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-font-feature-settings: 'kern' 1;
    -moz-font-feature-settings: 'kern' 1;
    margin: 0;
    padding: 0 !important;
}
/* Headings
------------------------------------
*/
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0.625rem 0;
    font-family: var(--wje-font-family);
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-weight: 500;
    color: inherit;
    display: inline-block;
}
h1 {
    font-size: var(--wje-font-size-2x-large);
    line-height: 44px;
    letter-spacing: -0.0141279em;
}
h2 {
    font-size: var(--wje-font-size-x-large);
    line-height: 34px;
    letter-spacing: -0.021em;
}
h3 {
    font-size: var(--wje-font-size-large);
    line-height: 28px;
    letter-spacing: -0.0114923em;
}
h4 {
    font-size: var(--wje-font-size-large);
    line-height: 26px;
    letter-spacing: -0.00865734em;
}
h5 {
    font-size: var(--wje-font-size-medium);
    line-height: 24px;
    letter-spacing: -0.00630069em;
}
h3 small,
h4 small,
h5 small {
    font-weight: 300;
}
h1.block,
h2.block,
h3.block,
h4.block,
h5.block,
h6.block {
    padding-bottom: 0.625rem;
}
/* Lins and Others
------------------------------------
*/
a {
    text-shadow: none !important;
    color: var(--wje-color-primary-11);
    transition:
        color 0.1s linear 0s,
        background-color 0.1s linear 0s,
        opacity 0.2s linear 0s !important;
    font-weight: 500;
}
a:focus,
a:hover,
a:active {
    color: var(--wje-color-primary);
}

a,
a:focus,
a:hover,
a:active {
    outline: 0 !important;
    text-decoration: none;
}

a.no-style {
    color: inherit;
    font-weight: normal;
}

br {
    line-height: normal;
    clear: both;
}

p {
    display: block;
    color: inherit;
    font-size: var(--wje-font-size);
    font-weight: normal;
    letter-spacing: 0.00177646em;
    line-height: 21px;
    margin: 0 0 0.625rem 0;
    font-style: normal;
    white-space: normal;
}

small,
.small {
    line-height: 18px;
    font-size: 85.714%;
}

label {
    &.inline {
        display: inline-block;
        position: relative;
        top: 0;
        font-size: 13px;
    }
}

ul,
ol {
    margin-bottom: 0.625rem;
    & > li {
        padding-left: 3px;
        line-height: 24px;
    }
    &.lg-icon {
        & > li {
            font-size: 21px;
            & span {
                font-size: 14px;
            }
        }
    }
    &.no-style {
        list-style: none;
        padding-left: 5px;
    }
}

address {
    margin-bottom: 0;
    a {
        color: var(--wje-color-contrast-8);
    }
}

blockquote {
    padding: 4px 0 0 18px;
    border-left: 0;
    &:before {
        content: '\e95d';
        font-size: 20px;
        margin-right: 6px;
        float: left;
        position: relative;
        top: -12px;
    }
    p {
        font-size: 16px;
        margin-bottom: 4px;
    }
    small {
        line-height: 29px;
        color: var(--wje-color-contrast-8);
        &:before {
            content: '—';
            margin-right: 6px;
        }
    }
    &.pull-right {
        border-right: 0;
        &:before {
            float: right;
            content: '';
            margin-left: 6px;
            margin-right: 0;
        }
        small {
            padding-right: 30px;
            &:after {
                content: '';
            }
        }
    }
}
hr {
    border-color: var(--wje-border-color);
    &.double {
        border-width: 2px;
    }
    &.dotted {
        border-style: dotted none none;
    }
}

.ff-sup {
    font-feature-settings:
        'kern' 1,
        'sups' 1;
    -webkit-font-feature-settings:
        'kern' 1,
        'sups' 1;
    -moz-font-feature-settings:
        'kern' 1,
        'sups' 1;
}

.ff-sub {
    font-feature-settings:
        'kern' 1,
        'subs' 1;
    -webkit-font-feature-settings:
        'kern' 1,
        'subs' 1;
    -moz-font-feature-settings:
        'kern' 1,
        'subs' 1;
}

/* Standard HTML Typography tags
------------------------------------
*/

code {
    color: var(--wje-color-contrast-6);
    background-color: var(--wje-color);
    font-size: 97%;
    position: relative;
    line-height: inherit;
    border-radius: 3px;
    padding: 5px 7px;
    margin: 0;
    &:hover {
        color: var(--wje-color-complete);
    }
    &.code-sm {
        padding: 3px 6px;
    }
}

figcaption {
    font-size: 13px;
    margin-top: 0.625rem;
    font-weight: 400;
    display: block;
    letter-spacing: 0.008em;
    text-align: center;
    color: var(--wje-color-contrast-6);
    line-height: 1.46;
}

em {
    font-style: italic !important;
    font-family: inherit;
    font-weight: inherit;
}

ins {
    font-family: var(--wje-font-family);
    border-bottom: 1px solid #d0d0d0;
    text-decoration: none;
    color: var(--wje-color-contrast-8);
    font-weight: normal;
    font-size: 94%;
}

cite {
    font-family: var(--wje-font-family);
    font-weight: 300;
    color: var(--wje-color-contrast-6);
    text-decoration: none;
    font-style: normal;
    hanging-punctuation: first;
}

sup {
    top: -0.28em;
    font-size: 70%;
}

sub {
    bottom: 0.03em;
}

var {
    font-family: var(--wje-font-family);
    font-feature-settings:
        'calt' 1,
        'tnum' 1,
        'frac' 1,
        'case' 1,
        'ss01' 1,
        'cv11' 1;
}

abbr {
    text-decoration: none;
    letter-spacing: 0.01em;
    background-color: transparent;
    border-bottom: 2px solid #ffba5a;
    transition-property: color, background, border;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    color: var(--wje-color-contrast-8);
}

q {
    font-family: var(--wje-font-family);
    font-weight: 500;
    font-size: 20px;
    hanging-punctuation: first;

    &:before {
        content: '\201C';
        color: rgba(0, 0, 0, 0.44);
        font-size: 35px;
    }

    &:after {
        content: '\201D';
        font-size: 35px;
        color: rgba(0, 0, 0, 0.44);
    }
}
audio {
    margin-top: 42px;
}
hr {
    clear: both;
    margin-bottom: 42px;
    margin-top: 42px;
    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.13);
}
address {
    font-family: var(--wje-font-family);
    font-style: normal;
    margin: 0 0 1.75em;
    font-size: 14px;
    line-height: 24px;
    margin-top: 24px;
}
abbr {
    text-decoration: none;
    letter-spacing: 0.01em;
    background-color: transparent;
    border-bottom: 2px solid #ffba5a;
    transition-property: color, background, border;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    color: var(--wje-color-contrast-8);
}

acronym {
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    background-color: transparent;
    border-bottom: 2px solid #ffba5a;
    transition-property: color, background, border;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    color: var(--wje-color-contrast-8);
}

pre {
    tab-size: 4;
    font-size: 85.714%;
    overflow-x: auto;
    font-family: monospace, monospace;
    line-height: 1.7;
    counter-reset: line;
    background-color: var(--wje-color-contrast-3) er;
    color: var(--wje-color-contrast-8);
    margin-inline: 0;
    padding: 1rem 1.25rem;
    border-radius: 3px;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

dt {
    font-weight: 700;
    margin-bottom: 5px;
}

dd {
    margin: 0 0 1.75em;
}

kbd {
    font-size: 85.714%;
    font-family: var(--wje-font-family);
    position: relative;
    line-height: 34px;
    top: -3px;
    letter-spacing: 0.01em;
    padding: 5px 7px;
    margin: 0;
    color: rgba(0, 0, 0, 0.53);
    background-color: #fff;
    border-radius: 3px;
    box-shadow:
        0 2px 0 1px #c7c7c7,
        0 1px 0 1px rgba(0, 0, 0, 0.15),
        0 0 0 1px #ececec;
}

/* Types
------------------------------------
*/

.overline {
    text-transform: uppercase;
    display: inline-block;
    letter-spacing: 0.06em;
    font-size: 11px;
}

/* Font Sizes
------------------------------------
*/

.small-text {
    font-size: 12px !important;
    letter-spacing: 0.00849077em;
    line-height: 18px;
    a {
        text-decoration: underline;
    }
}
.normal-text {
    font-size: 13px !important;
}
.large-text {
    font-size: 15px !important;
}

/* Font Weights
------------------------------------
 */

.normal {
    font-weight: normal !important;
}
.semi-bold {
    font-weight: 500 !important;
}
.bold {
    font-weight: 600 !important;
}
.light {
    font-weight: 300 !important;
}

/* Misc
------------------------------------
*/

.all-caps {
    text-transform: uppercase;
    letter-spacing: 0.07em !important;
}
.text-uppercase {
    text-transform: uppercase !important;
    letter-spacing: 0.07em !important;
}
.muted {
    color: var(--wje-color-contrast-6);
}
.hint-text {
    opacity: 0.76 !important;
}
.no-decoration {
    text-decoration: none !important;
}

.text-ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Gradients
------------------------------------
*/
.gradient-grey {
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 75%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 75%);
}
.gradient-black {
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 75%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 75%);
}

/* Other Colors
------------------------------------
*/
.bg-black {
    background-color: var(--wje-color-black) !important;
    color: var(--wje-color-contrast-0);
}
.bg-white {
    background-color: var(--wje-color-contrast-0) !important;
    color: var(--wje-color-contrast-8);
}
.bg-transparent {
    background-color: transparent !important;
}

/* Text Colors */
.link {
    opacity: 0.7;
    &:hover {
        opacity: 1;
    }
}

/* Text Aligngments
------------------------------------
*/

.text-right {
    text-align: right !important;
}
.text-left {
    text-align: left !important;
}
.text-center {
    text-align: center !important;
}

/* Strokes
------------------------------------
*/

.stroke-primary {
    stroke: var(--wje-color-primary) !important;
}
.stroke-complete {
    stroke: var(--wje-color-complete) !important;
}
.stroke-success {
    stroke: var(--wje-color-success) !important;
}
.stroke-info {
    stroke: var(--wje-color-info) !important;
}
.stroke-warning {
    stroke: var(--wje-color-warning) !important;
}
.stroke-danger {
    stroke: var(--wje-color-danger) !important;
}

/* Font Sizes
------------------------------------
tracking =a+b×e(c × z)

a, b and c are constants
a = -0.0223
b = 0.185
c = -0.1745
z = font size

*/
.fs-x-small {
    font-size: var(--wje-font-size-x-small) !important;
    letter-spacing: 0.0180093em;
    line-height: 15px;
}
.fs-small {
    font-size: var(--wje-font-size-small) !important;
    letter-spacing: 0.00849077em;
    line-height: 18px;
}
.fs {
    font-size: var(--wje-font-size) !important;
    letter-spacing: 0.00177646em;
    line-height: 22px;
}

.fs-medium {
    font-size: var(--wje-font-size-medium) !important;
    letter-spacing: -0.00295978em;
    line-height: 24px;
}

.fs-large {
    font-size: var(--wje-font-size-large) !important;
    letter-spacing: normal;
    line-height: normal;
}

.fs-x-large {
    font-size: var(--wje-font-size-x-large) !important;
    letter-spacing: normal;
    line-height: normal;
}

.fs-2x-large {
    font-size: var(--wje-font-size-2x-large) !important;
    letter-spacing: normal;
    line-height: normal;
}

.fs-3x-large {
    font-size: var(--wje-font-size-3x-large) !important;
    letter-spacing: normal;
    line-height: normal;
}

.fs-4x-large {
    font-size: var(--wje-font-size-4x-large) !important;
    letter-spacing: normal;
    line-height: normal;
}

/* Line-heights
------------------------------------
*/
.lh-normal {
    line-height: normal;
}
.lh-10 {
    line-height: 10px;
}
.lh-11 {
    line-height: 11px;
}
.lh-12 {
    line-height: 12px;
}
.lh-13 {
    line-height: 13px;
}
.lh-14 {
    line-height: 14px;
}
.lh-15 {
    line-height: 15px;
}
.lh-16 {
    line-height: 16px;
}

/* Font Faces
------------------------------------
*/

.font-arial {
    font-family: Arial, sans-serif !important;
}
.font-montserrat {
    font-family: var(--wje-font-family-secondary) !important;
}
.font-heading {
    font-family: var(--wje-font-family-secondary);
}
.font-secondary {
    font-family: var(--wje-font-family-secondary);
}

/* Wells
------------------------------------
*/
.well {
    background-color: var(--wje-color-contrast-3);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
    border: none;
    background-image: none;
    &.well-large {
        padding: 24px;
        width: auto;
    }
    &.well-small {
        padding: 13px;
        width: auto;
    }
    &.green {
        background-color: var(--wje-color-complete);
        color: var(--wje-color-contrast-0);
        border: none;
    }
}
.overflow-ellipsis {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

/* Responsive Handlers : Typo
------------------------------------
*/

@media (max-width: 1024px) {
    body,
    p {
        font-size: var(--wje-font-size-small);
        line-height: 20px;
    }

    h1 {
        font-size: var(--wje-font-size-2x-large);
        line-height: 44px;
        letter-spacing: -0.08px;
    }
    h2 {
        font-size: var(--wje-font-size-x-large);
        line-height: 40px;
    }
    h3 {
        font-size: var(--wje-font-size-large);
        line-height: 35.88px;
    }
    h4 {
        font-size: var(--wje-font-size-large);
        line-height: 33.88px;
    }
    h5 {
        font-size: var(--wje-font-size-medium);
        line-height: 25.88px;
    }
    small,
    .small {
        font-size: 89%;
        line-height: 17px;
    }
}

.alert {
    & > p,
    & > ul {
        margin-bottom: 0;
    }
}
.table {
    & > tbody {
        & > tr {
            & > td,
            & > th {
                line-height: 1.42857143;
            }
        }
    }
    & > tfoot {
        & > tr {
            & > td,
            & > th {
                line-height: 1.42857143;
            }
        }
    }
    & > thead {
        & > tr {
            & > td,
            & > th {
                line-height: 1.42857143;
            }
        }
    }
}

/* For Windows : Fixes
------------------------------------
*/

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-5 {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.text-separator {
    display: block;
    text-align: center;
    margin: 1.5rem 0;
    width: 100%;
    background: linear-gradient(
        to top,
        transparent 0%,
        transparent calc(50% - 1px),
        var(--wje-border-color) calc(50% - 1px),
        var(--wje-border-color) calc(50% + 1px),
        transparent calc(50% + 1px),
        transparent 100%
    );
}

.text-separator::before {
    background: #fff;
    content: attr(data-text);
    padding: 0 1rem;
    text-transform: uppercase;
}

.wje-toast-stack {
    position: fixed;
    top: 0;
    right: 0;
    margin: 0.5rem;
    width: min(var(--wje-toast-stack-width, 300px), calc(100vw - 1rem));
    max-width: calc(100vw - 1rem);
    max-height: calc(100vh - 1rem);
    overflow: auto;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--wje-spacing-medium);
}

.wje-toast-stack[data-position='top-start'] {
    left: 0;
    right: auto;
}

.wje-toast-stack[data-position='top-center'] {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
}

.wje-toast-stack[data-position='bottom-start'],
.wje-toast-stack[data-position='bottom-center'],
.wje-toast-stack[data-position='bottom-end'] {
    top: auto;
    bottom: 0;
}

.wje-toast-stack[data-position='bottom-start'] {
    left: 0;
    right: auto;
}

.wje-toast-stack[data-position='bottom-center'] {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
}

.wje-toast-stack[data-stacked='true'] {
    overflow: visible;
    padding-block: 1rem;
}

.wje-toast-stack[data-stacked='true'] > wje-toast {
    margin: 0;
}

.wje-toast-stack[data-stacked='true'][data-expanded='true'] {
    overflow: auto;
}

.wje-toast-stack[data-stacked='true'][data-expanded='true'] > wje-toast {
    --wje-toast-stack-scale: 1 !important;
    --wje-toast-stack-shift: 0px !important;
    --wje-toast-stack-opacity: 1 !important;
}
/*
[ Light Mode ]
*/

:root,
:host,
.wje-theme-light,
.light,
[data-theme=light] {
    * {
        box-sizing: border-box !important;
    }
    color-scheme: light;

    --wje-font-family:
        -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji',
        'Segoe UI Emoji';
    --wje-font-family-secondary:
        'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell',
        'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
    --wje-force-mac-font-family:
        -apple-system, BlinkMacSystemFont, 'Inter UI', 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell',
        'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;

    /* Line Heights */
    --wje-line-height-denser: 1.2;
    --wje-line-height-dense: 1.4;
    --wje-line-height-normal: 1.5;
    --wje-line-height-loose: 1.6;
    --wje-line-height-looser: 1.8;

    /* Font Sizes (rem) */
    --wje-font-size-2x-small: 0.5rem; /* 8px */
    --wje-font-size-x-small: 0.625rem; /* 10px */
    --wje-font-size-small: 0.75rem; /* 12px */
    --wje-font-size: 0.875rem; /* 14px */
    --wje-font-size-medium: 1rem; /* 16px */
    --wje-font-size-large: 1.25rem; /* 20px */
    --wje-font-size-x-large: 1.5rem; /* 24px */
    --wje-font-size-2x-large: 2.25rem; /* 36px */
    --wje-font-size-3x-large: 3rem; /* 48px */
    --wje-font-size-4x-large: 4.5rem; /* 72px */

    /* Spacing (Padding/Margin) */
    --wje-spacing-4x-small: 0.125rem; /* 2px */
    --wje-spacing-3x-small: 0.25rem; /* 4px */
    --wje-spacing-2x-small: 0.375rem; /* 6px */
    --wje-spacing-x-small: 0.5rem; /* 8px */
    --wje-spacing-small: 0.75rem; /* 12px */
    --wje-spacing-medium: 1rem; /* 16px */
    --wje-spacing-large: 1.5rem; /* 24px */
    --wje-spacing-x-large: 2rem; /* 32px */
    --wje-spacing-2x-large: 2.5rem; /* 40px */
    --wje-spacing-3x-large: 3rem; /* 48px */
    --wje-spacing-4x-large: 4.5rem; /* 72px */

    /* Font Weights */
    --wje-font-weight-light: 300;
    --wje-font-weight-normal: 400;
    --wje-font-weight-medium: 500;
    --wje-font-weight-semibold: 600;
    --wje-font-weight-bold: 700;

    /* Border Radius */
    --wje-border-radius-small: 0.125rem; /* 2px */
    --wje-border-radius-medium: 0.25rem; /* 4px */
    --wje-border-radius-large: 0.5rem; /* 8px */
    --wje-border-radius-x-large: 0.75rem; /* 12px */
    --wje-border-radius-2x-large: 1rem; /* 16px */
    --wje-border-radius-circle: 50%; /* Circle */
    --wje-border-radius-pill: 50rem; /* Pill */

    /* Shadows */
    --wje-shadow-small: 0 1px 2px rgba(0, 0, 0, 0.05);
    --wje-shadow-medium: 2px 2px 11px 0px hsla(0, 0%, 0%, 0.08);
    --wje-shadow-large: 0 4px 8px rgba(0, 0, 0, 0.1);
    --wje-shadow-x-large: 0 8px 16px rgba(0, 0, 0, 0.1);
    --wje-shadow-2x-large: 0 16px 32px rgba(0, 0, 0, 0.1);

    /* Letter Spacing */
    --wje-letter-spacing-tightest: -0.05em;
    --wje-letter-spacing-tighter: -0.025em;
    --wje-letter-spacing-normal: 0em;
    --wje-letter-spacing-wider: 0.025em;
    --wje-letter-spacing-widest: 0.05em;

    /* Transitions */
    --wje-transition-fast: 0.2s ease-in-out;
    --wje-transition-medium: 0.4s ease-in-out;
    --wje-transition-slow: 0.6s ease-in-out;

    /* Size */
    --wje-size-4x-small: 0.125rem; /* 2px */
    --wje-size-3x-small: 0.25rem; /* 4px */
    --wje-size-2x-small: 0.5rem; /* 8px */
    --wje-size-x-small: 0.625rem; /* 10px */
    --wje-size-small: 0.75rem; /* 12px */
    --wje-size-medium: 0.875rem; /* 14px */
    --wje-size: 1rem; /* 16px */
    --wje-size-large: 1.25rem; /* 20px */
    --wje-size-x-large: 1.5rem; /* 24px */
    --wje-size-2x-large: 2.25rem; /* 36px */
    --wje-size-3x-large: 3rem; /* 48px */
    --wje-size-4x-large: 4.5rem; /* 72px */
    --wje-size-5x-large: 9rem; /* 144px */

    --wje-border-width: 1px;
    --wje-border-style: solid;

    --wje-backdrop: rgb(0, 0, 0);
    --wje-backdrop-opacity: 0.3;

    /* Colors */
    --wje-color: hsl(0, 0%, 29%);
    --wje-color-dark: hsl(0, 0%, 29%);
    --wje-color-light: hsl(0 0% 95%);
    --wje-background: var(--wje-color-contrast-0);
    --wje-border-color: var(--wje-color-contrast-3);

    --wje-color-menu: hsl(220, 15%, 15%);
    --wje-color-contrast: hsl(0, 0%, 95%);

    --wje-color-white: #fff;
    --wje-color-black: #000;

    /* Color - Basic*/
    --wje-color-primary: var(--wje-color-primary-11);
    --wje-color-complete: var(--wje-color-complete-11);
    --wje-color-success: var(--wje-color-success-11);
    --wje-color-warning: var(--wje-color-warning-11);
    --wje-color-danger: var(--wje-color-danger-11);
    --wje-color-info: var(--wje-color-info-11);

    /* Primary */
    --wje-color-primary-1: hsla(261, 70%, 96%, 1);
    --wje-color-primary-2: hsla(260, 66%, 92%, 1);
    --wje-color-primary-3: hsla(260, 64%, 88%, 1);
    --wje-color-primary-4: hsla(260, 61%, 84%, 1);
    --wje-color-primary-5: hsla(260, 63%, 80%, 1);
    --wje-color-primary-6: hsla(259, 61%, 76%, 1);
    --wje-color-primary-7: hsla(258, 61%, 72%, 1);
    --wje-color-primary-8: hsla(257, 61%, 68%, 1);
    --wje-color-primary-9: hsla(254, 67%, 62%, 1);
    --wje-color-primary-10: hsla(254, 59%, 45%, 1);
    --wje-color-primary-11: hsla(254, 59%, 35%, 1);

    /* Complete */
    --wje-color-complete-1: hsla(233, 90%, 96%, 1);
    --wje-color-complete-2: hsla(229, 89%, 93%, 1);
    --wje-color-complete-3: hsla(229, 86%, 89%, 1);
    --wje-color-complete-4: hsla(229, 86%, 86%, 1);
    --wje-color-complete-5: hsla(228, 85%, 82%, 1);
    --wje-color-complete-6: hsla(226, 82%, 78%, 1);
    --wje-color-complete-7: hsla(225, 83%, 74%, 1);
    --wje-color-complete-8: hsla(223, 83%, 70%, 1);
    --wje-color-complete-9: hsla(211, 100%, 60%, 1);
    --wje-color-complete-10: hsla(211, 100%, 45%, 1);
    --wje-color-complete-11: hsla(211, 100%, 28%, 1);

    /* Success */
    --wje-color-success-1: hsla(147, 44%, 95%, 1);
    --wje-color-success-2: hsla(149, 41%, 90%, 1);
    --wje-color-success-3: hsla(149, 40%, 85%, 1);
    --wje-color-success-4: hsla(150, 41%, 80%, 1);
    --wje-color-success-5: hsla(149, 42%, 75%, 1);
    --wje-color-success-6: hsla(150, 41%, 70%, 1);
    --wje-color-success-7: hsla(151, 42%, 65%, 1);
    --wje-color-success-8: hsla(152, 42%, 59%, 1);
    --wje-color-success-9: hsla(158, 67%, 45%, 1);
    --wje-color-success-10: hsla(158, 74%, 30%, 1);
    --wje-color-success-11: hsla(158, 93%, 23%, 1);

    /* Warning */
    --wje-color-warning-1: hsla(45, 100%, 96%, 1);
    --wje-color-warning-2: hsla(47, 100%, 93%, 1);
    --wje-color-warning-3: hsla(46, 100%, 90%, 1);
    --wje-color-warning-4: hsla(46, 100%, 87%, 1);
    --wje-color-warning-5: hsla(46, 100%, 84%, 1);
    --wje-color-warning-6: hsla(46, 100%, 81%, 1);
    --wje-color-warning-7: hsla(46, 100%, 77%, 1);
    --wje-color-warning-8: hsla(47, 100%, 74%, 1);
    --wje-color-warning-9: hsla(47, 100%, 67%, 1);
    --wje-color-warning-10: hsla(47, 100%, 53%, 1);
    --wje-color-warning-11: hsla(47, 75%, 38%, 1);

    /* Danger */
    --wje-color-danger-1: hsla(9, 100%, 96%, 1);
    --wje-color-danger-2: hsla(12, 100%, 91%, 1);
    --wje-color-danger-3: hsla(11, 94%, 87%, 1);
    --wje-color-danger-4: hsla(10, 91%, 83%, 1);
    --wje-color-danger-5: hsla(9, 87%, 79%, 1);
    --wje-color-danger-6: hsla(10, 82%, 74%, 1);
    --wje-color-danger-7: hsla(8, 80%, 70%, 1);
    --wje-color-danger-8: hsla(8, 77%, 65%, 1);
    --wje-color-danger-9: hsla(3, 78%, 59%, 1);
    --wje-color-danger-10: hsla(3, 68%, 41%, 1);
    --wje-color-danger-11: hsla(3, 81%, 31%, 1);

    /* Info */
    --wje-color-info-1: hsla(210, 5%, 92%, 1);
    --wje-color-info-2: hsla(204, 6%, 85%, 1);
    --wje-color-info-3: hsla(210, 7%, 78%, 1);
    --wje-color-info-4: hsla(203, 5%, 71%, 1);
    --wje-color-info-5: hsla(213, 6%, 65%, 1);
    --wje-color-info-6: hsla(203, 6%, 58%, 1);
    --wje-color-info-7: hsla(208, 6%, 52%, 1);
    --wje-color-info-8: hsla(210, 7%, 45%, 1);
    --wje-color-info-9: hsla(207, 20%, 35%, 1);
    --wje-color-info-10: hsla(207, 16%, 27%, 1);
    --wje-color-info-11: hsla(207, 36%, 16%, 1);

    /* Contrast */
    --wje-color-contrast-0: hsla(0, 0%, 100%, 1);
    --wje-color-contrast-1: hsla(0, 0%, 98%, 1);
    --wje-color-contrast-2: hsla(240, 5%, 96%, 1);
    --wje-color-contrast-3: hsla(240, 6%, 90%, 1);
    --wje-color-contrast-4: hsla(240, 5%, 84%, 1);
    --wje-color-contrast-5: hsla(240, 5%, 65%, 1);
    --wje-color-contrast-6: hsla(240, 4%, 46%, 1);
    --wje-color-contrast-7: hsla(240, 5%, 34%, 1);
    --wje-color-contrast-8: hsla(240, 5%, 26%, 1);
    --wje-color-contrast-9: hsla(240, 4%, 16%, 1);
    --wje-color-contrast-10: hsla(240, 6%, 10%, 1);
    --wje-color-contrast-11: hsla(240, 7%, 8%, 1);

    /*
    [ Skeleton ]
    */
    --wje-skeleton-bg: var(--wje-color-contrast-3);
    --wje-skeleton-bg-strong: var(--wje-color-contrast-5);
    --wje-skeleton-highlight: rgba(255, 255, 255, 0.45);
    --wje-skeleton-radius: var(--wje-border-radius-pill);
    --wje-skeleton-height: var(--wje-size-small);
    --wje-skeleton-head-height: var(--wje-size-x-large);
    --wje-skeleton-gap: var(--wje-spacing-x-small);
    --wje-skeleton-duration: 1.3s;

    /*
    [ Elements ]
    */
    /* Aside */
    --wje-aside-width: 100px;
    --wje-aside-top: 0;
    --wje-aside-border-color: var(--wje-border-color);
    --wje-aside-border-width: 0 1px 0 0;
    --wje-aside-border-style: solid;

    /* Avatar */
    --wje-avatar-size: var(--wje-size-x-large);
    --wje-avatar-font-size: var(--wje-font-size-x-small);
    --wje-avatar-font-weight: var(--wje-font-weight-normal);
    --wje-avatar-color: var(--wje-color-contrast-11);
    --wje-avatar-background-color: var(--wje-color-contrast-3);
    --wje-avatar-border-radius: var(--wje-border-radius-circle);
    --wje-avatar-border-color: transparent;
    --wje-avatar-border-width: 1px;
    --wje-avatar-border-style: solid;

    /* Badge */
    --wje-badge-height: 18px;
    --wje-badge-line-height: 1;
    --wje-badge-padding-block: 0;
    --wje-badge-padding-inline: var(--wje-spacing-2x-small);
    --wje-badge-border-radius: var(--wje-border-radius-pill);
    --wje-badge-border-width: 0px;
    --wje-badge-border-style: solid;
    --wje-badge-border-color: transparent;

    /* Breadcrumb */
    --wje-breadcrumb-font-size: var(--wje-font-size);
    --wje-breadcrumb-active-font-weight: var(--wje-font-weight-bold);
    --wje-breadcrumb-active-font-size: var(--wje-font-size);
    --wje-breadcrumb-a: var(--wje-color-contrast-8);
    --wje-breadcrumb-a-hover: var(--wje-color-contrast-6);

    /* Button */
    --wje-button-border-radius: var(--wje-border-radius-medium);
    --wje-button-border-width: 1px;
    --wje-button-border-style: solid;
    --wje-button-border-color: var(--wje-color-contrast-1);
    --wje-button-margin-inline: 0;
    --wje-button-outline-width: 0.5rem;

    /* Button - Group */
    --wje-button-group-border-radius: var(--wje-border-radius-medium);
    --wje-button-group-border-width: 1px;
    --wje-button-group-border-style: solid;
    --wje-button-group-border-color: var(--wje-color-contrast-3);

    /* Card */
    --wje-card-background: var(--wje-color-contrast-0);
    --wje-card-color: var(--wje-color-black);
    --wje-card-border-color: transparent;
    --wje-card-border-style: var(--wje-border-style);
    --wje-card-border-width: var(--wje-border-width);
    --wje-card-border-radius: var(--wje-border-radius-large);
    --wje-card-shadow: var(--wje-shadow-x-large);

    /* Card - Header */
    --wje-card-header-padding: 1rem 1rem 0.5rem;

    /* Card - Controls */
    --wje-card-controls-font-size: var(--wje-font-size-small);
    --wje-card-controls-font-family: var(--wje-font-family-secondary);

    /* Card - Subtitle */
    --wje-card-subtitle-font-size: var(--wje-font-size-small);
    --wje-card-subtitle-font-family: var(--wje-font-family-secondary);
    --wje-card-subtitle-padding: 0;

    /* Card - Content */
    --wje-card-content-padding: 0 1rem 1rem;

    /* Card - Title*/
    --wje-card-title-font-size: var(--wje-font-size-x-large);
    --wje-card-title-font-weight: var(--wje-font-weight-medium);
    --wje-card-title-margin: 0;
    --wje-card-title-padding: 0;
    --wje-card-title-line-height: 1.2;

    /* Carousel */
    --wje-scroll-hint: 0px;
    --wje-carousel-width: 100%;
    --wje-carousel-height: auto;
    --wje-carousel-size: 100%;

    /* Carousel - Item */
    --wje-carousel-item-aspect-ratio: inherit;

    /* Container */
    --wje-container-indent: 0;

    /* Color Picker */
    --wje-color-picker-value: #ff0000;
    --wje-color-picker-area: transparent;
    --wje-color-picker-swatch: transparent;
    --wje-color-picker-size: 1rem;
    --wje-color-picker-radius: var(--wje-border-radius-large);

    /* Checkbox */
    --wje-checkbox-interminate: url('data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgd2lkdGg9IjI0IiAgaGVpZ2h0PSIyNCIgIHZpZXdCb3g9IjAgMCAyNCAyNCIgIGZpbGw9Im5vbmUiICBzdHJva2U9ImN1cnJlbnRDb2xvciIgIHN0cm9rZS13aWR0aD0iMiIgIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgIHN0cm9rZS1saW5lam9pbj0icm91bmQiICBjbGFzcz0iaWNvbiBpY29uLXRhYmxlciBpY29ucy10YWJsZXItb3V0bGluZSBpY29uLXRhYmxlci1taW51cyI+PHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTUgMTJsMTQgMCIgLz48L3N2Zz4=');
    --wje-checkbox-checkmark: url('data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgd2lkdGg9IjI0IiAgaGVpZ2h0PSIyNCIgIHZpZXdCb3g9IjAgMCAyNCAyNCIgIGZpbGw9Im5vbmUiICBzdHJva2U9ImN1cnJlbnRDb2xvciIgIHN0cm9rZS13aWR0aD0iMiIgIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgIHN0cm9rZS1saW5lam9pbj0icm91bmQiICBjbGFzcz0iaWNvbiBpY29uLXRhYmxlciBpY29ucy10YWJsZXItb3V0bGluZSBpY29uLXRhYmxlci1jaGVjayI+PHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTUgMTJsNSA1bDEwIC0xMCIgLz48L3N2Zz4=');
    --wje-checkbox-margin-top: 0;
    --wje-checkbox-margin-bottom: var(--wje-spacing-x-small);
    --wje-checkbox-margin-inline: 0;
    --wje-checkbox-size: var(--wje-font-size-medium);
    --wje-checkbox-border-radius: var(--wje-border-radius-medium);

    /* Chip */
    --wje-chip-background: var(--wje-color-contrast-3);
    --wje-chip-color: var(--wje-color-contrast-11);
    --wje-chip-background-hover: var(--wje-color-contrast-4);
    --wje-chip-color-hover: var(--wje-color-contrast-11);
    --wje-chip-border-radius: 100px;
    --wje-chip-round-border-radius: var(--wje-border-radius-large);
    --wje-chip-margin-block: 0;
    --wje-chip-margin-inline: 0;
    --wje-chip-padding-block: var(--wje-spacing-small);
    --wje-chip-padding-inline: var(--wje-spacing-small);

    /* Dialog */
    --wje-dialog-background: var(--wje-color-contrast-1);
    --wje-dialog-width: 600px;
    --wje-dialog-height: 600px;
    --wje-dialog-border-radius: var(--wje-border-radius-medium);
    --wje-dialog-border-width: var(--wje-border-width);
    --wje-dialog-border-style: var(--wje-border-style);
    --wje-dialog-border-color: var(--wje-border-color);
    --wje-dialog-margin-top: auto;
    --wje-dialog-margin-start: auto;
    --wje-dialog-margin-end: auto;
    --wje-dialog-margin-bottom: auto;

    --wje-dialog-padding: var(--wje-spacing-medium);
    --wje-dialog-padding-inline: var(--wje-spacing-medium);
    --wje-dialog-padding-top: var(--wje-spacing-medium);
    --wje-dialog-padding-bottom: var(--wje-spacing-medium);

    --wje-dialog-header-padding-inline: var(--wje-dialog-padding);
    --wje-dialog-header-padding-block: var(--wje-dialog-padding) 0;

    --wje-dialog-content-padding-inline: var(--wje-dialog-padding);
    --wje-dialog-content-padding-block: var(--wje-dialog-padding);

    --wje-dialog-footer-padding-inline: var(--wje-dialog-padding);
    --wje-dialog-footer-padding-block: 0 var(--wje-dialog-padding);

    --wje-dialog-headline-font-size: 0.656rem;
    --wje-dialog-headline-letter-spacing: 0.06em;
    --wje-dialog-headline-font-weight: 500;
    --wje-dialog-headline-text-transform: uppercase;

    /* Divider */
    --wje-divider-border-width: var(--wje-border-width, 1px);
    --wje-divider-border-style: var(--wje-border-style);
    --wje-divider-border-color: var(--wje-border-color);
    --wje-divider-spacing: 0;

    /* File Upload - Item */
    --wje-file-upload-item-border-width: 1px;
    --wje-file-upload-item-border-style: solid;
    --wje-file-upload-item-border-color: var(--wje-border-color);

    /* Header */
    --wje-header-background: var(--wje-background);
    --wje-header-border-color: var(--wje-border-color);
    --wje-header-border-width: 0 0 1px 0;
    --wje-header-border-style: solid;
    --wje-header-top: 0;
    --wje-header-height: 60px;

    /* Icon */
    --wje-icon-stroke: 2;
    --wje-icon-size: var(--wje-size);
    --wje-icon-color: currentColor;

    /* Icon Picker */
    --wje-icon-picker-shadow: var(--wje-shadow-x-large);
    --wje-icon-picker-background: var(--wje-color-contrast-0);
    --wje-icon-picker-radius: var(--wje-border-radius-large);
    --wje-icon-picker-icon-size: 1.5rem;
    --wje-icon-picker-border-width: 1px;
    --wje-icon-picker-border-style: solid;
    --wje-icon-picker-border-color: var(--wje-border-color);
    --wje-icon-picker-padding: 0.25rem;

    /* Img - Comparer */
    --wje-img-compare-divider-area: 12px;
    --wje-img-compare-divider-background: white;
    --wje-img-compare-divider-size: 2px;
    --wje-img-compare-divider-left: 50%;
    --wje-img-compare-position: 50%;
    --wje-img-compare-clip-path: inset(0 calc(100% - var(--wje-img-compare-position)) 0 0);

    /* Infinite Scroll */
    --wje-infinite-scroll-width: 100%;
    --wje-infinite-scroll-height: 300px;
    --wje-infinite-scroll-loading-background: var(--wje-color-contrast-0);

    /* Input */
    --wje-input-font-family: var(--wje-font-family);
    --wje-input-background-color: var(--wje-color-contrast-0);
    --wje-input-color: var(--wje-color);
    --wje-input-color-invalid: var(--wje-color-danger-9);
    --wje-input-error-background-color: var(--wje-tooltip-background);
    --wje-input-error-color: var(--wje-tooltip-color);
    --wje-input-border-color: var(--wje-border-color);
    --wje-input-border-color-focus: var(--wje-color-primary);
    --wje-input-border-width: 1px;
    --wje-input-border-style: solid;
    --wje-input-border-radius: 4px;
    --wje-input-margin-bottom: 0.5rem;
    --wje-input-line-height: 20px;
    --wje-input-slot-padding-inline: 0.5rem;
    --wje-input-label-display: block;
    --wje-input-label-margin: 0 0 var(--wje-spacing-x-small);
    --wje-input-label-padding: 0;
    --wje-input-label-line-height: var(--wje-line-height-normal);
    --wje-input-label-font-size: var(--wje-font-size);
    --wje-input-required-symbol: '*';

    /* Item */
    --wje-item-color: var(--wje-color);
    --wje-item-border-width: 0 0 1px 0;
    --wje-item-border-style: solid;
    --wje-item-border-color: var(--wje-border-color);
    --wje-item-border-radius: 0;
    --wje-item-background: transparent;
    --wje-item-background-hover: var(--wje-color-primary-3);
    --wje-item-padding-top: 0px;
    --wje-item-padding-bottom: 0px;
    --wje-item-padding-end: 0px;
    --wje-item-padding-start: 0px;
    --wje-item-inner-border-width: 0 0 1px 0;
    --wje-item-inner-padding-top: 0px;
    --wje-item-inner-padding-bottom: 0px;
    --wje-item-inner-padding-start: 0px;
    --wje-item-inner-padding-end: 0px;
    --wje-item-inner-shadow: none;
    --wje-item-min-height: 40px;
    --wje-item-transition: var(--wje-transition-fast);

    /* Level - Indicator */
    --wje-level-indicator-color: var(--wje-color-contrast-3);
    --wje-level-indicator-color-active: var(--wje-color-contrast-9);
    --wje-level-indicator-opacity: 0.5;
    --wje-level-indicator-gap: var(--wje-size-4x-small);
    --wje-level-indicator-width: var(--wje-size-medium);
    --wje-level-indicator-height: var(--wje-size-4x-small);
    --wje-level-indicator-border-radius: var(--wje-border-radius-large);
    --wje-level-indicator-color-high: var(--wje-color-success-9);
    --wje-level-indicator-color-medium: var(--wje-color-warning-9);
    --wje-level-indicator-color-low: var(--wje-color-danger-9);

    /* List */
    --wje-list-inset-padding: 1rem;
    --wje-list-border-radius: var(--wje-border-radius-medium);
    --wje-list-background: var(--wje-background);

    /* Menu */
    --wje-menu-background: var(--wje-background);
    --wje-menu-border-width: 1px;
    --wje-menu-border-style: solid;
    --wje-menu-border-color: var(--wje-border-color);
    --wje-menu-border-radius: var(--wje-border-radius-medium);
    --wje-menu-padding-top: var(--wje-spacing-x-small);
    --wje-menu-padding-bottom: var(--wje-spacing-x-small);
    --wje-menu-padding-inline: 0;
    --wje-menu-margin-top: 9;
    --wje-menu-margin-bottom: 0;
    --wje-menu-margin-inline: 0;
    --wje-menu-collapse-width: 65px;
    --wje-menu-z-index: 8;
    --wje-menu-shadow: var(--wje-shadow-medium);

    /* Menu - Item */
    --wje-menu-item-font-size: var(--wje-font-size);
    --wje-menu-item-color: var(--wje-color);
    --wje-menu-item-background: transparent;
    --wje-menu-item-color-hover: var(--wje-color-contrast-8);
    --wje-menu-item-background-hover: var(--wje-border-color);
    --wje-menu-item-color-focus: var(--wje-color-contrast-8);
    --wje-menu-item-background-focus: var(--wje-border-color);
    --wje-menu-item-color-active: var(--wje-color-contrast-8);
    --wje-menu-item-background-active: var(--wje-border-color);
    --wje-menu-item-padding-top: var(--wje-spacing-x-small);
    --wje-menu-item-padding-bottom: var(--wje-spacing-x-small);
    --wje-menu-item-line-height: 1.8rem;
    --wje-menu-submenu-offset: 0;
    --wje-menu-item-icon-visibility: hidden;
    --wje-menu-item-check-icon-display: flex;
    --wje-menu-item-check-icon-width: 1.5rem;

    /* Menu - Label  */
    --wje-menu-label-font-size: var(--wje-font-size-small);
    --wje-menu-label-weight: var(--wje-font-weight-semibold);

    /* Option */
    --wje-option-padding-top: var(--wje-spacing-x-small);
    --wje-option-padding-bottom: var(--wje-spacing-x-small);
    --wje-option-highlighted: var(--wje-color-contrast-3);

    /* Orgchart */
    --wje-orgchart-height-line: 10px;
    --wje-orgchart-border-radius: var(--wje-border-radius-large);

    /* Orgchart - Item */
    --wje-orgchart-item-width: 75px;
    --wje-orgchart-item-border-radius: var(--wje-border-radius-large);
    --wje-orgchart-item-height-line: 10px;
    --wje-orgchart-item-background: var(--wje-color-contrast-0);

    --wje-orgchart-item-highlight-background: var(--wje-color-complete-2);
    --wje-orgchart-item-boss-background: var(--wje-color-complete-2);
    --wje-orgchart-item-hover-background: var(--wje-color-contrast-3);

    --wje-orgchart-item-highlight-border: 1px solid var(--wje-color-complete-3);
    --wje-orgchart-item-boss-border: 1px solid var(--wje-border-color);
    --wje-orgchart-item-hover-border: 1px solid var(--wje-color-danger-3);

    --wje-orgchart-item-expander-size: 0.75rem;

    /* Orgchart - Group */
    --wje-orgchart-group-width: auto;
    --wje-orgchart-group-border-radius: var(--wje-border-radius-large);
    --wje-orgchart-group-height-line: 10px;
    --wje-orgchart-group-padding: 0.25rem 0;

    /* Popup */
    --wje-popup-overlay-background: var(--wje-color-contrast-0);

    /* Radio */
    --wje-radio-margin-top: 0;
    --wje-radio-margin-bottom: 0.5rem;
    --wje-radio-margin-inline: 0;

    /* Rate */
    --wje-rate-gap: 0.25rem;
    --wje-rate-color: var(--wje-color-contrast-11);
    --wje-rate-selected-color: var(--wje-color-danger-9);

    /* Select */
    --wje-select-height: 32px;
    --wje-select-background: var(--wje-color-contrast-0);
    --wje-select-border-width: 1px;
    --wje-select-border-style: solid;
    --wje-select-border-color: var(--wje-border-color);
    --wje-select-border-radius: var(--wje-border-radius-medium) var(--wje-border-radius-medium);
    --wje-select-options-background-color: var(--wje-color-contrast-0);
    --wje-select-options-border-width: 1px;
    --wje-select-options-border-style: var(--wje-border-style);
    --wje-select-options-border-color: var(--wje-border-color);
    --wje-select-options-border-radius: var(--wje-border-radius-medium);
    --wje-select-error-background-color: var(--wje-tooltip-background);
    --wje-select-error-color: var(--wje-tooltip-color);
    --wje-select-line-height: 20px;
    --wje-select-color: var(--wje-color);
    --wje-select-margin-bottom: var(--wje-spacing-x-small);
    --wje-select-find-margin-inline: var(--wje-spacing-x-small);
    --wje-select-find-margin-block: var(--wje-spacing-x-small);
    --wje-select-find-width: calc(100% - var(--wje-select-find-margin-inline) * 2);

    --wje-select-label-margin:  0 0 var(--wje-spacing-x-small);
    --wje-select-label-padding: 0;
    --wje-select-label-display: block;
    --wje-select-label-line-height: var(--wje-line-height-normal);
    --wje-select-label-font-size: var(--wje-font-size);

    /* Sliding - Container */
    --wje-sliding-container-background: transparent;
    --wje-sliding-container-shadow: none;
    --wje-sliding-container-border-radius: var(--wje-border-radius-large);

    /* Status */
    --wje-status-size: var(--wje-size-small);

    /* Stepper */
    --wje-stepper-margin: 1.25rem;
    --wje-stepper-justify: start;
    --wje-stepper-grow: initial;

    /* Tab */
    --wje-tab-font-family: var(--wje-font-family-secondary);
    --wje-tab-font-size: var(--wje-font-size-x-small);
    --wje-tab-line-height: var(--wje-line-height-looser);
    --wje-tab-text-transfrom: uppercase;
    --wje-tab-font-weight: var(--wje-font-weight-medium);
    --wje-tab-letter-spacing: var(--wje-letter-spacing-widest);
    --wje-tab-padding-inline: var(--wje-spacing-medium);
    --wje-tab-padding-top: var(--wje-spacing-small);
    --wje-tab-padding-bottom: var(--wje-spacing-small);
    --wje-tab-color-active: var(--wje-color-primary-9);
    --wje-tab-color-hover: var(--wje-color-primary-1);
    --wje-tab-border-radius: 0;

    /* Tab - Group */
    --wje-tab-group-nav-border: 1px solid var(--wje-border-color);

    /* Textarea */
    --wje-textarea-font-family: var(--wje-font-family);
    --wje-textarea-background-color: var(--wje-background);
    --wje-textarea-color: var(--wje-color);
    --wje-textarea-color-invalid: var(--wje-color-danger-9);
    --wje-textarea-error-background-color: var(--wje-tooltip-background);
    --wje-textarea-error-color: var(--wje-tooltip-color);
    --wje-textarea-border-width: 1px;
    --wje-textarea-border-style: solid;
    --wje-textarea-border-color: var(--wje-border-color);
    --wje-textarea-border-color-focus: var(--wje-color-primary);
    --wje-textarea-border-radius: var(--wje-border-radius-medium);
    --wje-textarea-margin-bottom: var(--wje-spacing-x-small);
    --wje-textarea-line-height: 20px;
    --wje-textarea-padding: var(--wje-spacing-x-small);
    --wje-textarea-label-margin: 0 0 var(--wje-spacing-x-small);
    --wje-textarea-label-padding: var(--wje-spacing-x-small) var(--wje-spacing-x-small) 0;
    --wje-textarea-label-display: block;
    --wje-textarea-label-line-height: var(--wje-line-height-denser);
    --wje-textarea-label-font-size: var(--wje-font-size);

    /* Toast */
    --wje-toast-stack-width: 300px;

    /* Thumbnail */
    --wje-thumbnail-width: 48px;
    --wje-thumbnail-height: 48px;
    --wje-thumbnail-border-radius: var(--wje-border-radius-medium);

    /* Toolbar */
    --wje-toolbar-background: var(--wje-background);
    --wje-toolbar-height: auto;
    --wje-toolbar-min-height: 70px;
    --wje-toolbar-padding-inline: 1.5rem;
    --wje-toolbar-padding-block: 1rem;
    --wje-toolbar-border-color: var(--wje-border-color);
    --wje-toolbar-top: 0;
    --wje-toolbar-shadow: var(--wje-shadow-medium);

    /* Toolbar - Action */
    --wje-toolbar-action-gap: var(--wje-spacing-3x-small);

    /* Tooltip */
    --wje-tooltip-arrow-color: var(--wje-color-contrast-11);
    --wje-tooltip-background: var(--wje-color-contrast-11);
    --wje-tooltip-color: var(--wje-color-contrast-1);
    --wje-tooltip-font-size: var(--wje-font-size-small);
    --wje-tooltip-font-weight: var(--wje-font-weight-normal);
    --wje-tooltip-line-height: var(--wje-line-height-normal);
    --wje-tooltip-shadow: var(--wje-shadow-medium);
    --wje-tooltip-spacing: var(--wje-spacing-x-small);
    --wje-tooltip-border-radius: var(--wje-border-radius-medium);

    /* Tree - Item */
    --wje-tree-item-font-size: var(--wje-font-size-medium);
    --wje-tree-item-padding-inline: var(--wje-spacing-3x-small);
    --wje-tree-item-padding-block: var(--wje-spacing-3x-small);
    --wje-tree-item-indent: var(--wje-spacing-large);
    --wje-tree-item-indent-guid-width: 0px;
    --wje-tree-item-border-radius: var(--wje-border-radius-medium);
    --wje-tree-item-background: transparent;
    --wje-tree-item-color: var(--wje-color);
    --wje-tree-item-background-hover: var(--wje-color-contrast-1);
    --wje-tree-item-color-hover: var(--wje-color-contrast-8);
    --wje-tree-item-background-selected: var(--wje-color-primary-9);
    --wje-tree-item-color-selected: var(--wje-color-contrast-0);
}
/*
[ Dark Mode ]
*/

:host,
.wje-theme-dark,
.dark,
[data-theme=dark] {
    color-scheme: dark;

    --wje-font-family:
        -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans',
        'Droid Sans', 'Helvetica Neue', sans-serif;
    --wje-font-family-secondary:
        'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell',
        'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
    --wje-force-mac-font-family:
        -apple-system, BlinkMacSystemFont, 'Inter UI', 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell',
        'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;

    --wje-border-size: 0px;
    --wje-border-style: solid;

    --wje-backdrop: rgb(0, 0, 0);
    --wje-backdrop-opacity: 0.3;

    /*COLORS*/
    --wje-color: var(--wje-color-contrast-11);
    --wje-color-dark: hsl(0, 0%, 29%);
    --wje-color-light: hsl(0 0% 95%);
    --wje-background: var(--wje-color-contrast-2);
    --wje-border-color: var(--wje-color-contrast-4);

    --wje-color-primary: var(--wje-color-primary-1);
    --wje-color-complete: var(--wje-color-complete-1);
    --wje-color-success: var(--wje-color-success-1);
    --wje-color-warning: var(--wje-color-warning-1);
    --wje-color-danger: var(--wje-color-danger-1);
    --wje-color-info: var(--wje-color-info-1);
    --wje-color-menu: hsl(220, 15%, 15%);
    --wje-color-contrast: hsl(210, 11%, 15%);

    --wje-color-white: #fff;
    --wje-color-black: #000;

    /* Primary */
    --wje-color-primary-1: hsla(254, 50%, 21%, 1);
    --wje-color-primary-2: hsla(254, 52%, 24%, 1);
    --wje-color-primary-3: hsla(254, 52%, 35%, 1);
    --wje-color-primary-4: hsla(254, 54%, 39%, 1);
    --wje-color-primary-5: hsla(254, 54%, 47%, 1);
    --wje-color-primary-6: hsla(254, 54%, 53%, 1);
    --wje-color-primary-7: hsla(254, 54%, 57%, 1);
    --wje-color-primary-8: hsla(254, 68%, 66%, 1);
    --wje-color-primary-9: hsla(254, 88%, 78%, 1);
    --wje-color-primary-10: hsla(254, 70%, 81%, 1);
    --wje-color-primary-11: hsla(254, 69%, 88%, 1);

    /* Complete */
    --wje-color-complete-1: hsla(211, 91%, 16%, 1);
    --wje-color-complete-2: hsla(211, 91%, 23%, 1);
    --wje-color-complete-3: hsla(211, 91%, 31%, 1);
    --wje-color-complete-4: hsla(211, 93%, 35%, 1);
    --wje-color-complete-5: hsla(211, 93%, 39%, 1);
    --wje-color-complete-6: hsla(211, 93%, 44%, 1);
    --wje-color-complete-7: hsla(211, 93%, 49%, 1);
    --wje-color-complete-8: hsla(211, 93%, 55%, 1);
    --wje-color-complete-9: hsla(211, 100%, 75%, 1);
    --wje-color-complete-10: hsla(211, 100%, 81%, 1);
    --wje-color-complete-11: hsla(211, 93%, 85%, 1);

    /* Success */
    --wje-color-success-1: hsla(158, 93%, 13%, 1);
    --wje-color-success-2: hsla(158, 94%, 16%, 1);
    --wje-color-success-3: hsla(158, 95%, 19%, 1);
    --wje-color-success-4: hsla(158, 96%, 22%, 1);
    --wje-color-success-5: hsla(158, 96%, 24%, 1);
    --wje-color-success-6: hsla(158, 95%, 27%, 1);
    --wje-color-success-7: hsla(158, 96%, 31%, 1);
    --wje-color-success-8: hsla(158, 96%, 35%, 1);
    --wje-color-success-9: hsla(158, 86%, 48%, 1);
    --wje-color-success-10: hsla(158, 78%, 62%, 1);
    --wje-color-success-11: hsla(158, 80%, 75%, 1);

    /* Warning */
    --wje-color-warning-1: hsla(47, 75%, 19%, 1);
    --wje-color-warning-2: hsla(47, 75%, 23%, 1);
    --wje-color-warning-3: hsla(47, 75%, 27%, 1);
    --wje-color-warning-4: hsla(47, 74%, 31%, 1);
    --wje-color-warning-5: hsla(47, 78%, 37%, 1);
    --wje-color-warning-6: hsla(47, 78%, 41%, 1);
    --wje-color-warning-7: hsla(47, 78%, 45%, 1);
    --wje-color-warning-8: hsla(47, 80%, 52%, 1);
    --wje-color-warning-9: hsla(47, 80%, 67%, 1);
    --wje-color-warning-10: hsla(47, 90%, 74%, 1);
    --wje-color-warning-11: hsla(47, 90%, 80%, 1);

    /* Danger */
    --wje-color-danger-1: hsla(3, 82%, 17%, 1);
    --wje-color-danger-2: hsla(3, 82%, 19%, 1);
    --wje-color-danger-3: hsla(3, 83%, 28%, 1);
    --wje-color-danger-4: hsla(3, 83%, 32%, 1);
    --wje-color-danger-5: hsla(3, 83%, 36%, 1);
    --wje-color-danger-6: hsla(3, 83%, 40%, 1);
    --wje-color-danger-7: hsla(3, 82%, 44%, 1);
    --wje-color-danger-8: hsla(3, 72%, 58%, 1);
    --wje-color-danger-9: hsla(3, 80%, 70%, 1);
    --wje-color-danger-10: hsla(3, 80%, 76%, 1);
    --wje-color-danger-11: hsla(4, 80%, 82%, 1);

    /* Info */
    --wje-color-info-1: hsla(207, 36%, 16%, 1);
    --wje-color-info-2: hsla(207, 16%, 27%, 1);
    --wje-color-info-3: hsla(207, 20%, 35%, 1);
    --wje-color-info-4: hsla(210, 7%, 45%, 1);
    --wje-color-info-5: hsla(208, 6%, 55%, 1);
    --wje-color-info-6: hsla(203, 6%, 62%, 1);
    --wje-color-info-7: hsla(213, 6%, 69%, 1);
    --wje-color-info-8: hsla(203, 5%, 71%, 1);
    --wje-color-info-9: hsla(210, 7%, 78%, 1);
    --wje-color-info-10: hsla(204, 6%, 85%, 1);
    --wje-color-info-11: hsla(210, 5%, 92%, 1);

    /* Contrast */
    --wje-color-contrast-0: hsla(240, 3%, 13%, 1);
    --wje-color-contrast-1: hsla(240, 6%, 10%, 1);
    --wje-color-contrast-2: hsla(0, 0%, 0%, 1);
    --wje-color-contrast-3: hsla(240, 5%, 30%, 1);
    --wje-color-contrast-4: hsla(240, 5%, 41%, 1);
    --wje-color-contrast-5: hsla(240, 4%, 58%, 1);
    --wje-color-contrast-6: hsla(240, 5%, 75%, 1);
    --wje-color-contrast-7: hsla(240, 5%, 84%, 1);
    --wje-color-contrast-8: hsla(240, 6%, 90%, 1);
    --wje-color-contrast-9: hsla(240, 5%, 96%, 1);
    --wje-color-contrast-10: hsla(0, 0%, 98%, 1);
    --wje-color-contrast-11: hsla(0, 0%, 100%, 1);

    /*
    [ Skeleton ]
    */
    --wje-skeleton-bg: var(--wje-color-contrast-3);
    --wje-skeleton-bg-strong: var(--wje-color-contrast-5);
    --wje-skeleton-highlight: rgba(255, 255, 255, 0.45);

    /*
   [ Elements ]
   */

    /* Aside */
    --wje-aside-border-color: var(--wje-border-color);

    /* Avatar */
    --wje-avatar-color: var(--wje-color-contrast-11);
    --wje-avatar-background-color: var(--wje-color-contrast-3);

    /* Breadcrumb */
    --wje-breadcrumb-a: var(--wje-color-contrast-8);
    --wje-breadcrumb-a-hover: var(--wje-color-contrast-6);

    /* Button */
    --wje-button-border-color: var(--wje-color-contrast-1);

    /* Card */
    --wje-card-background: var(--wje-color-contrast-0);
    --wje-card-color: var(--wje-color-white);
    --wje-card-border-color: transparent;

    /* Dialog */
    --wje-dialog-background: var(--wje-color-contrast-1);

    /* Divider */
    --wje-divider-border-color: var(--wje-border-color);

    /* File Upload - Item */
    --wje-file-upload-item-border-width: 1px;
    --wje-file-upload-item-border-style: solid;
    --wje-file-upload-item-border-color: var(--wje-border-color);

    /* Header */
    --wje-header-background: var(--wje-background);
    --wje-header-border-color: var(--wje-border-color);

    /* Icon Picker */
    --wje-icon-picker-background: var(--wje-color-contrast-0);
    --wje-icon-picker-border-color: var(--wje-border-color);

    /* Infinite Scroll */
    --wje-infinite-scroll-loading-background: var(--wje-color-contrast-0);

    /* Input */
    --wje-input-background-color: var(--wje-color-contrast-0);
    --wje-input-color: var(--wje-color);
    --wje-input-color-invalid: var(--wje-color-danger-9);
    --wje-input-error-background-color: var(--wje-tooltip-background);
    --wje-input-error-color: var(--wje-tooltip-color);
    --wje-input-border-color: var(--wje-border-color);
    --wje-input-border-color-focus: var(--wje-color-primary);

    /* Item */
    --wje-item-color: var(--wje-color);
    --wje-item-border-color: var(--wje-border-color);
    --wje-item-background: transparent;
    --wje-item-background-hover: var(--wje-color-contrast-3);

    /* Level - Indicator */
    --wje-level-indicator-color: var(--wje-color-contrast-4);
    --wje-level-indicator-color-active: var(--wje-color-contrast-6);

    /* List */
    --wje-list-background: var(--wje-background);

    /* Menu */
    --wje-menu-background: var(--wje-background);
    --wje-menu-border-color: var(--wje-border-color);

    /* Menu - Item */
    --wje-menu-item-color: var(--wje-color);
    --wje-menu-item-background: transparent;
    --wje-menu-item-color-hover: var(--wje-color-contrast-8);
    --wje-menu-item-background-hover: var(--wje-border-color);
    --wje-menu-item-color-focus: var(--wje-color-contrast-8);
    --wje-menu-item-background-focus: var(--wje-border-color);
    --wje-menu-item-color-active: var(--wje-color-contrast-8);
    --wje-menu-item-background-active: var(--wje-border-color);

    /* Option */
    --wje-option-highlighted: var(--wje-color-contrast-3);

    /* Orgchart - Item */
    --wje-orgchart-item-background: var(--wje-color-contrast-0);

    --wje-orgchart-item-highlight-background: var(--wje-color-complete-2);
    --wje-orgchart-item-boss-background: var(--wje-color-complete-2);
    --wje-orgchart-item-hover-background: var(--wje-color-contrast-3);

    --wje-orgchart-item-highlight-border: 1px solid var(--wje-color-complete-3);
    --wje-orgchart-item-boss-border: 1px solid var(--wje-border-color);
    --wje-orgchart-item-hover-border: 1px solid var(--wje-color-danger-3);

    /* Popup */
    --wje-popup-overlay-background: var(--wje-color-contrast-0);

    /* Rate */
    --wje-rate-color: var(--wje-color-contrast-11);
    --wje-rate-selected-color: var(--wje-color-danger-6);

    /* Select */
    --wje-select-border-color: var(--wje-border-color);
    --wje-select-background: var(--wje-color-contrast-0);
    --wje-select-options-background-color: var(--wje-color-contrast-0);
    --wje-select-options-border-color: var(--wje-border-color);
    --wje-select-error-background-color: var(--wje-tooltip-background);
    --wje-select-error-color: var(--wje-tooltip-color);
    --wje-select-color: var(--wje-color);

    /* Sliding - Container */
    --wje-sliding-container-background: transparent;
    --wje-sliding-container-box-shadow: none;

    /* Tab */
    --wje-tab-color-active: var(--wje-color-primary-11);
    --wje-tab-color-hover: var(--wje-color-primary-1);

    /* Textarea */
    --wje-textarea-background-color: var(--wje-background);
    --wje-textarea-color: var(--wje-color);
    --wje-textarea-color-invalid: var(--wje-color-danger-1);
    --wje-textarea-error-background-color: var(--wje-tooltip-background);
    --wje-textarea-error-color: var(--wje-tooltip-color);
    --wje-textarea-border-color: var(--wje-border-color);
    --wje-textarea-border-color-focus: var(--wje-color-primary-1);

    /* Toast */
    --wje-toast-stack-width: 300px;

    /* Toolbar */
    --wje-toolbar-background: var(--wje-background);
    --wje-toolbar-border-color: var(--wje-border-color);
    --wje-toolbar-shadow: var(--wje-shadow-medium);

    /* Tooltip */
    --wje-tooltip-arrow-color: var(--wje-color-contrast-4);
    --wje-tooltip-background: var(--wje-color-contrast-4);
    --wje-tooltip-color: var(--wje-color-contrast-11);
}
/*
[ Skeleton ]
*/

@keyframes wje-skeleton-shimmer {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(100%);
  }
}

.wje-skeleton {
  cursor: progress;
  user-select: none;
}

.wje-skeleton-overlay {
  display: grid;
}

.wje-skeleton-overlay-content,
.wje-skeleton-overlay-skeleton {
  grid-area: 1 / 1;
}

.wje-skeleton-overlay-skeleton {
  display: none;            /* shown in loading state */
  pointer-events: none;     /* skeleton should not be interactive */
  align-self: stretch;
  justify-self: stretch;
}

.wje-skeleton-overlay-skeleton > .wje-skeleton {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

/* Base "shape" primitives */
.wje-skeleton-head,
.wje-skeleton-circle,
.wje-skeleton-line,
.wje-skeleton-square {
  position: relative;
  overflow: hidden;
  background-color: var(--wje-skeleton-bg);
}

.wje-skeleton-flex-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--wje-skeleton-gap);
}

.wje-skeleton-flex-column {
  display: flex;
  flex-direction: column;
  gap: var(--wje-skeleton-gap);
}

.wje-skeleton-line + .wje-skeleton-line,
.wje-skeleton-line + .wje-skeleton-head,
.wje-skeleton-head + .wje-skeleton-line,
.wje-skeleton-head + .wje-skeleton-head,
.wje-skeleton-circle + .wje-skeleton-line,
.wje-skeleton-line + .wje-skeleton-circle {
  /*margin-top: var(--wje-skeleton-gap);*/
}

.wje-skeleton-head {
  display: block;
  height: var(--wje-skeleton-head-height);
  border-radius: var(--wje-skeleton-radius);
  width: 100%;
}

.wje-skeleton-circle {
  display: block;
  /*flex: 1 1 0;*/
  max-width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
}

.wje-skeleton-line {
  display: block;
  height: var(--wje-skeleton-height);
  border-radius: var(--wje-skeleton-radius);
  width: 100%;
}

.wje-skeleton-square {
  display: block;
  width: 100%;
  height: 150px;
  border-radius: var(--wje-skeleton-radius);
}

/* Shimmer layer */
.wje-skeleton-line::after,
.wje-skeleton-head::after,
.wje-skeleton-circle::after,
.wje-skeleton-square::after {
  content: '';
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  animation: wje-skeleton-shimmer var(--wje-skeleton-duration) infinite;
  background: linear-gradient(90deg, transparent, var(--wje-skeleton-highlight), transparent);
}

/* "Stronger" variant */
.wje-skeleton-strong.wje-skeleton-line,
.wje-skeleton-strong.wje-skeleton-head,
.wje-skeleton-strong.wje-skeleton-circle,
.wje-skeleton-strong.wje-skeleton-square {
  background-color: var(--wje-skeleton-bg-strong);
}

/* Simple layout helpers (opt-in) */
.wje-skeleton .flex { display: flex; }
.wje-skeleton .inline-flex { display: inline-flex; }
.wje-skeleton .align-center { align-items: center; }
.wje-skeleton .align-start { align-items: flex-start; }
.wje-skeleton .align-end { align-items: flex-end; }
.wje-skeleton .justify-start { justify-content: flex-start; }
.wje-skeleton .justify-end { justify-content: flex-end; }
.wje-skeleton .justify-between { justify-content: space-between; }
.wje-skeleton .justify-center { justify-content: center; }
.wje-skeleton .justify-around { justify-content: space-around; }

.wje-skeleton .gap { gap: var(--wje-skeleton-gap); }

.wje-skeleton .w-5 { width: 5%; }
.wje-skeleton .w-10 { width: 10%; }
.wje-skeleton .w-15 { width: 15%; }
.wje-skeleton .w-20 { width: 20%; }
.wje-skeleton .w-25 { width: 25%; }
.wje-skeleton .w-30 { width: 30%; }
.wje-skeleton .w-35 { width: 35%; }
.wje-skeleton .w-40 { width: 40%; }
.wje-skeleton .w-45 { width: 45%; }
.wje-skeleton .w-50 { width: 50%; }
.wje-skeleton .w-55 { width: 55%; }
.wje-skeleton .w-60 { width: 60%; }
.wje-skeleton .w-65 { width: 65%; }
.wje-skeleton .w-70 { width: 70%; }
.wje-skeleton .w-75 { width: 75%; }
.wje-skeleton .w-80 { width: 80%; }
.wje-skeleton .w-85 { width: 85%; }
.wje-skeleton .w-90 { width: 90%; }
.wje-skeleton .w-95 { width: 95%; }
.wje-skeleton .w-100 { width: 100%; }

.wje-skeleton .mb { margin-bottom: var(--wje-spacing-medium); }
.wje-skeleton .mt { margin-top: var(--wje-spacing-medium); }
.wje-skeleton .mr { margin-right: var(--wje-spacing-medium); }
.wje-skeleton .ml { margin-left: var(--wje-spacing-medium); }

.wje-skeleton .mbs { margin-bottom: var(--wje-spacing-x-small); }
.wje-skeleton .mts { margin-top: var(--wje-spacing-x-small); }
.wje-skeleton .mrs { margin-right: var(--wje-spacing-x-small); }
.wje-skeleton .mls { margin-left: var(--wje-spacing-x-small); }

.wje-skeleton .pb { padding-bottom: var(--wje-spacing-medium); }
.wje-skeleton .pt { padding-top: var(--wje-spacing-medium); }
.wje-skeleton .pr { padding-right: var(--wje-spacing-medium); }
.wje-skeleton .pl { padding-left: var(--wje-spacing-medium); }

.wje-skeleton .pbs { padding-bottom: var(--wje-spacing-x-small); }
.wje-skeleton .pts { padding-top: var(--wje-spacing-x-small); }
.wje-skeleton .prs { padding-right: var(--wje-spacing-x-small); }
.wje-skeleton .pls { padding-left: var(--wje-spacing-x-small); }

/* Optional state helpers */
.wje-skeleton-loading .wje-skeleton-overlay-content {
  visibility: hidden;
  pointer-events: none;
}

.wje-skeleton-loading .wje-skeleton-overlay-skeleton {
  display: block;
}

@media (prefers-reduced-motion: reduce) {
  .wje-skeleton-line::after,
  .wje-skeleton-head::after,
  .wje-skeleton-circle::after,
  .wje-skeleton-square::after {
    animation: none;
    transform: none;
    opacity: 0.35;
  }
}:root,
:host,
.wje-theme-light,
.light {
    --wja-background-base: var(--wje-color-contrast-2);

    --wja-background:
      radial-gradient(
        var(--root-user-gradient-width) var(--root-user-gradient-height) at var(--root-user-gradient-x) var(--root-user-gradient-y),
        var(--root-user-gradient-active-strong) 0%,
        var(--root-user-gradient-active-soft) var(--root-user-gradient-mid-stop),
        transparent 100%
      ),
      var(--wja-background-base);

    --wje-background: var(--wja-background);

    --wje-color: var(--wje-color-contrast-11);

    --wje-border-color: var(--wje-color-contrast-3);

    /* Aside */
    --wje-aside-width: auto;

    /* Button */
    --wje-button-border-radius: var(--wje-border-radius-large);
    --wje-button-outline-width: .188rem;

    /* Toolbar */
    --wje-toolbar-border-color: transparent;
    --wje-toolbar-shadow: none;
    --wje-toolbar-padding-inline: 0;
    --wje-toolbar-padding-block: 0;

    /* Breadcrumb */
    --wje-breadcrumb-active-font-size: var(--wje-font-size-2x-large);

    /* Card */
    --wje-card-shadow: none;
    --wje-card-border-width: 0;

    /* Dialog */
    --wje-dialog-headline-font-size: var(--wje-font-size-medium);
    --wje-dialog-headline-letter-spacing: normal;
    --wje-dialog-headline-font-weight: var(--wje-font-weight-bold);
    --wje-dialog-headline-text-transform: none;

    --wje-dialog-background: var(--wje-color-contrast-0);
    --wje-dialog-border-color: var(--wje-border-color);

    /* Divider */
    --wje-divider-spacing: .5rem;

    /* Header */
    --wje-header-background: var(--wje-background);
    --wje-header-border-width: 0;

    /* Input */
    --wje-input-label-font-size: var(--wje-font-size-small);

    /* Menu */
    --wje-menu-border-radius: var(--wje-border-radius-large) !important;
    --wje-menu-box-shadow: var(--wje-shadow-medium) !important;
    --wje-menu-check-icon-width: 1rem;

    --wje-menu-background: var(--wje-color-contrast-0);

    /* Root */
    --root-breadcrumb-font-size: var(--wje-font-size-2x-large);
    --root-breadcrumb-font-weight: var(--wje-font-weight-bold);
    --root-user-gradient-h: 266;
    --root-user-gradient-strong: hsla(266, 66%, 70%, 0.32);
    --root-user-gradient-soft: hsla(266, 74%, 86%, 0.18);
    --root-user-gradient-strong-dark: hsla(266, 82%, 68%, 0.24);
    --root-user-gradient-soft-dark: hsla(266, 78%, 58%, 0.14);
    --root-user-gradient-active-strong: var(--root-user-gradient-strong);
    --root-user-gradient-active-soft: var(--root-user-gradient-soft);
    --root-user-gradient-width: 36rem;
    --root-user-gradient-height: 13rem;
    --root-user-gradient-x: calc(100% + 7rem);
    --root-user-gradient-y: -3rem;
    --root-user-gradient-mid-stop: 48%;

    /* Tab */
    --wje-tab-text-transfrom: none;
    --wje-tab-font-size: var(--wje-font-size-x-small);
    --wje-tab-border-radius: var(--wje-border-radius-medium);

    /* Textarea */
    --wje-textarea-label-padding: 0;
    --wje-textarea-label-font-size: var(--wje-font-size-small);

    --wje-textarea-background-color: var(--wje-color-contrast-0);

    /* Tooltip */
    --wje-tooltip-border-radius: var(--wje-border-radius-large);
    --wje-tooltip-shadow: none !important;
    --wje-tooltip-spacing: var(--wje-spacing-3x-small) var(--wje-spacing-x-small) !important;

    --wje-tooltip-background: var(--wje-color-primary-11);
    --wje-tooltip-arrow-color: transparent !important;

    font-synthesis: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    --backdrop-visibility: hidden;

    /* Select */
    --wje-select-input-padding: var(--wje-spacing-small) var(--wje-spacing-small) var(--wje-spacing-3x-small) var(--wje-spacing-small);
    --wje-select-input-border-width: 1px;
    --wje-select-input-border-radius:  var(--wje-border-radius-large);
    --wje-select-label-font-size: var(--wje-font-size-small);

    /* Sidebar */
    --sidebar-width: 70px;
    --sidebar-users-width: 0px;
    --sidebar-users-display: none;

    /* Parcels */

    --wjp-settings-background: var(--wje-color-contrast-0);

    --wjp-data-view-table-border-width: 0;
    --wjp-data-view-table-border-style: solid;
    --wjp-data-view-table-border-color: var(--wje-border-color);
    --wjp-data-view-table-border-radius: var(--wje-border-radius-x-large);
}

:host,
.wje-theme-dark,
.dark {
    --wja-background-base: var(--wje-color-contrast-2);
    --wje-background: var(--wja-background);

    --wje-border-color: var(--wje-color-contrast-3);

    /* Dialog */
    --wje-dialog-border-color: var(--wje-border-color);

    /* Menu */
    --wje-menu-background: var(--wje-color-contrast-0);

    /* Tooltip */
    --wje-tooltip-background: var(--wje-color-contrast-4);
    --wje-tooltip-arrow-color: transparent !important;
    --root-user-gradient-active-strong: var(--root-user-gradient-strong-dark);
    --root-user-gradient-active-soft: var(--root-user-gradient-soft-dark);
    --root-user-gradient-width: 38rem;
    --root-user-gradient-height: 14rem;
    --root-user-gradient-x: calc(100% + 5rem);
    --root-user-gradient-y: -2rem;
    --root-user-gradient-mid-stop: 56%;
}

:not(:defined) {
  visibility: hidden;
}

html {
    height: 100%;
}

body {
  background: var(--wje-background);
  background-repeat: no-repeat;
  color: var(--wje-color);
  margin: 0;
  height: 100%;
    background-size: 100% 100%;
    background-position: center top;
    background-attachment: fixed;

  &.edit-mode {
    --wje-background: var(--wje-color-primary-1);
  }
}

.sidebar-users {
  --sidebar-users-width: 0;
  --sidebar-users-display: block;
}

wje-card::part(native) {
  :hover {
    background-color: var(--wje-color-contrast-1);
  }
}

wje-header {
  z-index: 999;
  background: var(--wje-background);
  background-size: 100% 100%;
  background-position: center top;
  background-attachment: fixed;

}

wje-aside {
  --wje-aside-border-width: 0;
  --wje-aside-top: 0;

  z-index: 9999;
  overflow: visible;
  display: block !important;
  &#sidebar-users {
    display: var(--sidebar-users-display);
    z-index: 998;
    overflow: visible;
  }
}

wje-main {
  padding: 0 0 1rem 0 !important;
  margin-inline: var(--sidebar-width) var(--sidebar-users-width);
  transition: margin .25s ease-in-out;
  max-width: calc(100vw - var(--sidebar-width) - var(--sidebar-users-width));
}

/* MY STYLES */

wje-header {
  --wje-header-height: 68px;

  display: flex;
  align-items: center;

  &.active {
    --wja-background-base: var(--wje-color-contrast-0);
    background: var(--wje-background);
    transition: background .3s ease-in-out;
  }

  wja-header {
	margin-bottom: var(--wje-spacing-small);
  }
}

#login {
  display: flex; justify-content: center; align-items: center; height: 100vh;
}

wje-dialog[size="2x-large"] {
    --wje-dialog-width: 1400px;
}

wje-header::part(native) {
  width: 100%;
  padding-inline: .9rem 1.4rem;
}

#single-spa-application\:\@wja\/header {
  width: 100%;
}

#single-spa-application\:\@wja\/sidebar {
  height: 100%;
}

#confetti {
	canvas {
		z-index: 1;
	}
}

#spotlight {
	background-color: rgba(23, 23, 23, 0.95)!important;

	.spl-fullscreen {
		display: none;
	}
}

wje-select {
  --wje-select-background: var(--wje-color-contrast-0) !important;
  &::part(find) {
    --wje-input-background-color: transparent;
    --wje-input-border-width: 1px;
    --wje-input-border-radius: 8px;
  }
}

wje-dialog {
  &::part(headline) {
    font-size: var(--wje-font-size-medium);
  }
}

wje-button:hover {
    --wje-button-outline: var(--wje-color-primary-2) solid .5rem;
}

#administration-wrapper {
	display: flex;

	div:nth-child(2) {
        flex: 1 1 auto;
        min-width: 0;
	}

    /*single-spa-application:@wja/company-settings {*/
    /*    overflow: hidden;*/
    /*}*/

	wja-custom-fields {
		margin-left: -3rem;
	}

	wja-settings-detail {
		display: flex;
		margin-left: -2rem;
	}
}

#directory-wrapper {
  display: flex;

  div:nth-child(2) {
    flex-grow: 1;
  }

  wja-address-book {
        margin-left: -3rem;
    }
}

.overflow-hidden {
    overflow: hidden;
}

@media (max-width: 768px) {
    wje-header{
      background-color: var(--wje-color-contrast-0);

      &::part(native) {
        padding-inline: var(--wje-spacing-medium);
      }
    }
  wje-main {
    margin-inline: 0;
    padding: 0 !important;
  }
  wje-aside {
    display: block !important;
  }
}
