/*
    ew-wrap
    ew-box

    ew-page-title
    ew-action-bar
    ew-icons-right

    ew-text
    ew-values, vertical, fixed
    ew-links
    ew-values
    ew-data

    ew-object-head
    ew-tabs, [with ew-icons-right]
    ew-tree
   *ew-side-menu

   *ew-notification

   *ew-table

   *ew-form
   *ew-input +
   *ew-filter (Speicher 64GB)
   *ew-search
   *ew-editor

   *ew-chart

    ew-media (map, iframe, video)
    *ew-gallery
    *ew-grid (Images in grid boxes, varied sizes)

    ew-dialog
    ew-alert
    ew-toast
    ew-floating-action-button

    ew-divider
    ew-refresher
    ew-paginator
    ew-progress-indicator
    ew-progress-bar

    h1-6, subtitle
    text, paragraph, quote, muted, primary, info, success, warning, danger
    image, rounded, circle raised

    button, input, checkbox, radio, select, textarea, toggle
    progress bar, slider, pagination
    badges, chips
    date picker

    nice strong red: #e63939
 */

h1 .number {
    background: hsla(var(--ew-hue), 100%, 83%, 0.22);
    border: 1px solid hsla(var(--ew-hue), 100%, 73%, 0.22);
    border-radius: 4px;
    padding: 0 6px;
    color: #000000c2;
    font-weight: normal;
}
h1 .nav, h1 .picker {
    display: inline-block;
    position: relative;
    top: -4px;
}
h1 .nav {
    padding: 0 10px;
}
h1 .nav a, h1 .picker > a {
    font-weight: 300;
}
.ew-page-title .ew-icons-right {
    padding-top: 0;
}
/*h1 .nav > .button, h1 .nav > button, h1 .picker > .button, h1 .picker > button, .ew-icons-right > .button, .ew-icons-right > button {*/
h1 .nav .button, h1 .nav button, h1 .picker .button, h1 .picker button, .ew-icons-right .button, .ew-icons-right button {
    font-size: 18px;
    line-height: 42px;
    padding: 4px 20px;
    text-align: center;
    margin-bottom: 0;
    height: 50px;
}
.ew-icons-right .button.merged {
    padding: 4px 12px;
}
h1 .nav .button, h1 .nav button, .ew-icons-right > .button, .ew-icons-right > button {
    transition: all 160ms ease-in-out;
    min-width: 50px;
}
/*
h1 .button.kebab-menu .label, h1 .nav button.kebab-menu .label {*/
h1 .nav .button .label, h1 .nav button .label, .ew-icons-right .button .label, .ew-icons-right button .label {
    margin: 0 5px !important;
    font-size: 17px;
}
.ew-icons-right .ew-kebab-menu {
    display: inline-block;
}
.ew-icons-right .ew-kebab-menu .button {
    text-align: left;
}
h1 .nav .ew-context-menu .button, h1 .nav .ew-context-menu button, h1 .picker .ew-context-menu .button, h1 .picker .ew-context-menu button, .ew-icons-right .ew-context-menu .button, .ew-icons-right .ew-context-menu button {
    font-size: 16px;
    line-height: 23px;
    padding: 8px 12px;
    text-align: left;
    margin-bottom: 0;
    height: 40px;
    color: #000000d4;
}
h1 .ew-context-menu .button .label, h1 .ew-context-menu button .label, .ew-icons-right .ew-context-menu .button .label, .ew-icons-right .ew-context-menu button .label {
    font-size: 16px !important;
}
h1 .ew-context-menu .button i, h1 .ew-context-menu button i, .ew-icons-right .ew-context-menu .button i, .ew-icons-right .ew-context-menu button i {
    margin-right: 0;
}
.ew-context-menu button.line-top, .ew-context-menu .button.line-top {
    border-top: 1px solid #00000014;
}
.ew-context-menu button.line-bottom, .ew-context-menu .button.line-bottom {
    border-bottom: 1px solid #00000014;
}
/*.ew-icons-right .ew-kebab-menu .button:hover {
    font-size: inherit;
    padding: 4px 12px;
}*/
.ew-icons-right .ew-kebab-menu > .button i.icon-only, .ew-icons-right .ew-kebab-menu > button i.icon-only {
    margin: 0 3px 0 6px;
}
h1 .nav a i, h1 .nav button i, h1 .picker > a i {
    width: 35px;
    font-size: 0.6em;
    line-height: 41px;
    margin: 0 !important;
    text-align: center;
}
.ew-wrap > h2 {
    font-size: 1.4em;
    font-weight: bold;
}
.ew-wrap > h2.special { /* todo: where used? */
    font-size: 1.2em;
    letter-spacing: 1px;
    font-weight: normal;
    /*color: #0000007a;*/
    margin-bottom: 10px;
}
.ew-wrap > h2 + section {
    margin-top: 15px;
}
.ew-wrap > h2 i, .ew-wrap > section > h2 i {
    margin-left: 5px;
    margin-right: 7px;
}
.ew-box h4.intro, .ew-links h4.intro {
    color: #00000063;
    border-bottom: 1px solid #00000012;
    margin: 2px 0;
    padding: 15px 5px 5px 5px;
    font-weight: normal;
    font-size: 0.8em;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.ew-box h3 i, .ew-box h4 i {
    margin-right: 7px;
}
.ew-box h3 + ul, .ew-box h3 + .flex-row ul, .ew-box h3 + .ew-box-wrap, .ew-box h3 + article {
    padding-top: 5px;
}

.ew-text, .ew-links, .ew-values, .ew-chart, .ew-data, .ew-form {
    padding: 0 25px;
}
.ew-chart {
    padding: 1px 25px;
}
.ew-action-bar, .ew-wrap > section.ew-action-bar {
    padding: 0 10px 0 24px;
    margin-bottom: 15px;
}
.floating-action-bar.active .ew-action-bar, .survey-box .ew-action-bar:last-child, .ew-box .ew-action-bar {
    margin-bottom: 0;
}
.ew-action-bar + section {
    margin-top: 15px !important;
}
.ew-action-bar.hover-float + section {
    margin-top: 0 !important;
}
.ew-box .ew-action-bar {
    padding: 25px 10px 15px 25px;
    background: #00000005;
}
.ew-box .ew-action-bar.hover-float {
    background: none;
}
.ew-box .ew-action-bar.bg-none {
    background: none;
}
.ew-box.ew-tile .ew-action-bar {
    padding: 25px 25px 15px 25px;
}
.ew-box.ew-tile .ew-action-bar.compact {
    padding: 15px 25px 5px 25px;
    background: none;
}
.ew-action-bar div.text {
    display: inline-block;
    padding: 0 10px;
    line-height: 44px;
}
.ew-action-bar div.text + button {
    margin-left: 10px;
}
.hover-float-box, .float-box {
    position: relative;
    min-height: 72px;
}
.ew-action-bar.hover-float {
    opacity: 0;
    position: absolute;
    top: 10px;
    right: 0;
    margin: 0;
    padding: 0 !important;
    transition: all 100ms ease-in-out;
}
.rel:hover .ew-action-bar.hover-float, .ew-action-bar.hover-float.always {
    opacity: 100;
}
.ew-action-bar.float {
    float: right;
    padding: 0 !important;
    background: none;
}
.ew-action-bar.float button, .ew-action-bar.float .button {
    z-index: 3000;
    margin-bottom: 5px;
}
.ew-action-bar.float-box {
    display: block !important;
    text-align: right !important;
    padding: 0 !important;
    height: 55px;
    min-height: 55px;
    background: none;
}
.ew-action-bar.float-box button, .ew-action-bar.float-box .button {
    margin-bottom: 5px !important;
}
.floating-action-bar.active {
    contain: none;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0 auto;
    z-index: 101;
}
.floating-action-bar.active .ew-wrap-contain > section {
    margin: 0 50px;
}
.ew-task-section {
    position: relative;
    border-bottom: 1px solid #00000012;
}
.ew-task-section.drag1 {
    background: white;
}
.ew-task-section:first-child {
    border-top: 1px solid #00000012;
}
.ew-board-section .ew-action-bar, .ew-task-section .ew-action-bar {
    padding: 0 7px 0 0;
    opacity: 0.4;
    transition: opacity .2s ease-in-out;
}
.ew-board-section:hover .ew-action-bar, .ew-task-section:hover .ew-action-bar {
    opacity: 1;
}
.ew-board-section .ew-action-bar button, .ew-board-section .ew-action-bar a, .ew-task-section .ew-action-bar button, .ew-task-section .ew-action-bar a {
    background: none;
    border: 0 !important;
    box-shadow: none;
    color: grey;
    font-size: 0.9em;
    margin: 0;
    padding: 12px 8px;
    width: 40px !important;
}
.ew-board-section .ew-action-bar button.lefty, .ew-board-section .ew-action-bar a.lefty, .ew-task-section .ew-action-bar button.lefty, .ew-task-section .ew-action-bar a.lefty {
    float: left;
    width: 180px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
    padding-left: 20px;
}
.ew-task-section .ew-action-bar button, .ew-task-section .ew-action-bar a {
    padding: 15px 8px;
}
.ew-board-section .ew-action-bar button:hover, .ew-board-section .ew-action-bar a:hover, .ew-task-section .ew-action-bar button:hover, .ew-task-section .ew-action-bar a:hover {
    background: hsla(var(--ew-hue), 100%, 83%, 0.22);
    color: black;
}
.ew-board-section .title {
    margin-bottom: 5px;
}
.ew-board-section .desc {
    text-overflow: ellipsis;
    word-wrap: break-word;
    max-height: 60px;
    overflow: hidden;
    font-size: 0.85em;
    line-height: 1.5em;
    color: rgba(0, 0, 0, 0.62)
}
.ew-task-section > article > .ew-checkbox {
    position: absolute !important;
    width: 50px;
    left: 0;
    top: 0;
}
.ew-task-section > article > .ew-checkbox label {
    display: inline-block;
    width: 50px;
    height: 55px;
    padding-right: 0;
}
.ew-task-section > article > .ew-action-bar {
    position: absolute;
    width: 100px;
    top: 0;
    right: 0;
    background: none;
}
.ew-task-section > article > .responsible-person {
    position: absolute;
    width: 35px;
    top: 5px;
    right: 95px;
    background: none;
}
.ew-task-section > article > .responsible-person .label {
    margin: 10px 0;
    display: inline-block;
}
.ew-task-section span.due {
    background: #ece80014;
    border: 1px solid #0000002e;
    border-radius: 4px;
    font-size: 0.8em;
    padding: 2px 5px;
    margin-right: 5px;
}

.ew-task-section .text {
    padding: 15px 90px 15px 52px;
}
.ew-task-section .desc, .ew-task-section .meta {
    font-size: 0.8em;
    color: #383838;
}
.ew-task-section .ew-checkmark {
    border-radius: 15px;
}
.ew-task-section .ew-checkbox input:checked ~ .ew-checkmark, .ew-task-section .ew-radio label input:checked ~ .ew-checkmark {
    background: #0000000a;
    border: 0;
}
.ew-task-section .ew-checkbox input:checked:hover ~ .ew-checkmark, .ew-task-section .ew-radio label input:checked:hover ~ .ew-checkmark {
    background: #00000012;
}
.ew-task-section .ew-checkbox:hover input:checked ~ .ew-checkmark::after, .ew-task-section .ew-radio:hover label input:checked ~ .ew-checkmark::after {
    display: block;
    border-color: lightgrey;
    /* todo: make this work, hover light checkbox check effect */
}
.ew-task-section .ew-checkbox input:checked ~ .ew-checkmark::after, .ew-task-section .ew-radio label input:checked ~ .ew-checkmark::after {
    border-color: cadetblue;
}

.ew-values article > div {
    display: inline-block;
    white-space: nowrap;
    margin-right: 30px;
    line-height: 1.8em;
}
.ew-values article > div > span:first-child {
    margin-right: 10px;
    color: #00000080;
}
.ew-values article.vertical > div {
    display: block;
    margin-right: 0;
    white-space: normal;
    line-height: 1.9em;
}
/*.ew-values article.fixed > div span:first-child {*/
.ew-values article.fixed div > span.label {
    display: inline-block;
    min-width: 150px;
}
.ew-values .value > div {
    display: inline-block;
}
.ew-values .value i {
    margin-right: 7px;
}
.ew-values .value i.after {
    margin-left: 7px;
    margin-right: 0;
}
.ew-values .value a:hover .label {
    text-decoration: double;
    border-bottom: 3px double;
}

.ew-text, .ew-custom {
    padding: 0 20px;
}
.ew-text h1, .ew-text h2, .ew-text h3, .ew-text h4, .ew-text h5, .ew-text h6 {
    margin-top: 20px;
}
.ew-text article, .ew-data article, .ew-form article, .ew-custom article {
    padding: 15px 0;
}
td .ew-text article, td .ew-data article, td .ew-form article, td .ew-custom article {
    padding: 10px 0;
}
.ew-form article {
    padding: 35px 20px;
}
.ew-form.less-padding-top article {
    padding-top: 15px;
}
.ew-text h3 + article {
    padding-top: 5px;
}
.ew-text-chat {
    position: relative;
    border-bottom: 1px solid #ccc;
}
.ew-text-chat aside {
    position: absolute;
    top: 20px;
    left: 45px;
    width: 30px;
    text-align: center;
    color: hsla(var(--ew-hue), 100%, 24%, 0.7);
}
.ew-text-chat article {
    padding: 15px 10px 15px 60px;
    max-width: 670px;
}
.ew-form article {
    max-width: 700px; /* todo flexible design */
}
.ew-chart > canvas {
    margin: 20px 5px;
}
.ew-chart > h3 + canvas {
    margin-top: 10px;
}
.ew-links ul, .ew-links > article, .ew-values article, .ew-text article {
    padding: 15px 5px;
}
.ew-card > article {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    border: 1px solid #0000000f;
    border-radius: 5px;
    margin: 10px;
    min-height: 150px;
    background: #f3f3f3;
    padding: 10px;
}
.ew-card.shadow > article {
    border: 1px solid #00000045;
    box-shadow: 2px 2px 10px #00000021;
}
.ew-card.premium > article {
    outline: 3px solid #f6f9a8;
}
.ew-card.premium-green > article {
    outline: 3px solid #abcbb7;
}
.ew-card > article > aside {
    width: 150px;
    min-height: 150px;
    flex-grow: 0;
}
.ew-card > article > .card-body {
    width: 150px;
    flex-grow: 1;
    padding: 10px 20px;
}
.ew-markdown > article {
    padding-bottom: 50px;
}
.ew-links ul ul, .ew-box h3 + .flex-row ul ul {
    padding: 0 0 5px 15px;
}
.ew-links li, .ew-links td {
    margin: 0;
    padding: 0;
}
.ew-links td > div {
    padding: 4px 10px 4px 10px;
}
.ew-links a {
    position: relative;
    display: block;
    text-decoration: none;
    padding: 4px 10px 4px 45px;
}
.ew-links.no-icons a {
    padding-left: 20px;
}
.ew-links a.active {
    background: hsla(var(--ew-hue), 100%, 95%, 0.82);
    border: 1px solid hsla(var(--ew-hue), 100%, 35%, 0.3);
    font-weight: bold;
    border-radius: 10px;
    padding: 3px 9px 3px 44px;
}
.ew-links.no-icons a.active {
    padding-left: 19px;
}
.ew-links a.active i {
    font-weight: bold;
}
.ew-links a:hover {
    text-decoration: underline;
}
.ew-links .a-wrap {
    position: relative;
}
.ew-links .a-wrap a.active {
    padding-right: 50px;
}
.ew-links a.reset-link {
    position: absolute;
    top: 0;
    right: 0;
    height: 32px;
    padding: 4px 10px 4px 10px;
    border-radius: 0 10px 10px 0;
    width: 40px;
}
.ew-links a.reset-link:hover {
    background: #0000000a;
}
.ew-links li a i, .ew-links td a i {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    text-align: center;
    width: 40px;
    line-height: 33px;
    color: #0000009c;
}
.ew-links li a.active i, .ew-links td a.active i {
    line-height: 31px;
}
.ew-cover {
    background-position: center center;
    background-size: cover;
    min-height: 150px;
    margin: 0 !important;
}
.ew-button-list h3, .ew-category-boxes h3, .ew-product-boxes h3 {
    text-align: center;
    font-size: 1.5em;
}
.h3-huge h3 {
    font-size: 1.5em;
}
.ew-button-list article {
    padding: 20px;
}
.ew-button-list article button, .ew-button-list article a.button {
    position: relative;
    display: block;
    width: 100%;
    text-align: left;
}
.ew-button-list article button::after, .ew-button-list article a.button::after {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    width: 60px;
    text-align: center;
    font-family: "Font Awesome 6";
    font-weight: 400;
    content: "\232a";
    height: 56px;
    line-height: 42px;
}
.ew-button-list div.or {
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center;
    padding: 5px;
    font-size: 0.9em;
    color: grey;
}
.panel-article {
    padding: 35px;
}
.ew-panel-buttons {
    position: relative;
}
.panel-button-wrap {
    position: relative;
    display: inline-block;
    padding: 10px;
    min-height: 100px;
}
.panel-button-wrap button, .panel-button {
    width: 100%;
    height: 100%;
    min-height: 100px;
    margin: 0;
}
.panel-button {
    border: 1px solid #00000047;
    background: white;
}
.ew-category-boxes article {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    padding: 20px 10px;
}
.ew-category-boxes article > a {
    display: inline-block;
    flex-grow: 1;
    width: 50%;
    padding: 10px;
    text-decoration: none;
}
.ew-category-boxes article a.featured {
    width: 100%;
}
.ew-category-boxes article > a.hover .label {
    text-decoration: underline;
}
.ew-category-boxes article .preview {
    height: 120px;
    transition: transform .2s ease-in-out;
}
.ew-category-boxes article a:hover .preview {
    transform: scale(1.03);
}
.ew-category-boxes article .label {
    padding: 5px 5px 5px 2px;
}
.ew-category-boxes article .label i {
    margin-left: 7px;
    color: grey;
}
.ew-product-boxes article > a {
    position: relative;
    display: block;
    padding: 15px 20px 15px 20px;
    margin: 15px;
    overflow: hidden;
    border-radius: 5px;
    text-decoration: none;
    background: #f0f0f05e;
}
.ew-product-boxes article a.button:hover {
    background: #f0f0f080;
}
.ew-product-boxes article a:hover .pos-add {
    background: #e3e3e3;
}
.ew-product-boxes article .pos-add {
    position: absolute;
    top: 0;
    right: 0;
    border: 1px solid #00000014;
    border-top: 0;
    border-right: 0;
    border-radius: 0 0 0 5px;
}
.ew-product-boxes article .pos-add .times, .ew-product-boxes article .pos-add i {
    display: inline-block;
    text-align: center;
    min-width: 30px;
    line-height: 23px;
    padding: 5px 5px;
}
.ew-product-boxes article .pos-add .times {
    font-weight: bold;
    background: hsla(var(--ew-hue), 100%, 85%, 0.82);
    border-radius: 0 5px 0 5px;
}
.ew-product-boxes article .pos-add .times.hidden, .ew-product-boxes article .pos-add i.hidden {
    display: none;
}
.ew-product-boxes article .pos-add i {
    margin: 0;
}
.ew-product-boxes article h4 {
    padding-right: 40px;
}
.ew-product-boxes article .description {
    font-size: 0.9em;
}
.ew-product-boxes article .price {
    font-size: 0.9em;
    color: hsla(var(--ew-hue), 100%, 25%, 0.82);
    margin-top: 5px;
}
.ew-correspondence-boxes .correspondence-box {
    margin: 20px;
    background: #f0f0f0c7;
    border: 1px solid #00000014;
    border-radius: 4px;
    box-shadow: 3px 3px 7px #0000000d;
}
.ew-correspondence-boxes .correspondence-box header {
    padding: 10px 20px;
    border-bottom: 2px solid #00000014;
}
.ew-correspondence-boxes .correspondence-box .state {
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #000000c7;
}
.ew-correspondence-boxes .correspondence-box .state i {
    margin-left: 10px;
}
.ew-correspondence-boxes .correspondence-box .pos {
    background: #ffffffc9;
}
.ew-correspondence-boxes .correspondence-box .pos > div {
    padding: 10px 20px;
    border-bottom: 1px solid #00000014;
}
.ew-correspondence-boxes .correspondence-box .pickup {
    padding: 20px 20px;
    border-top: 1px solid #00000014;
}
.ew-correspondence-boxes .correspondence-box .code {
    font-size: 1.6em;
    line-height: 1.3em;
}
.ew-checkout-mobile .cart-item {
    border-bottom: 1px solid #e8e8e8;
    padding-bottom: 15px;
    margin: 15px;
}
.ew-checkout-mobile .cart-sum {
    margin: 15px;
}
.ew-checkout-mobile .amount {
    flex-grow: 0;
    width: 150px;
    text-align: right;
}
.ew-checkout-mobile .amount button {
    padding: 10px;
    margin: 5px;
    line-height: 20px;
    font-size: 1.1em;
}
.ew-checkout-mobile .cart-item .amount .times {
    display: inline-block;
    padding: 5px;
    width: 30px;
    text-align: center;
}
.ew-checkout-mobile .note {
    font-size: 0.9em;
    margin-top: 3px;
}
.ew-checkout-mobile .note a {
    opacity: 0.7;
}
.ew-checkout-mobile .price {
    font-size: 0.9em;
    color: hsla(var(--ew-hue), 100%, 25%, 0.82);
}

.ew-object-head {
    padding: 15px 20px;
}
.ew-object-head > article {
    font-size: 1.2em;
    line-height: 46px;
}
.ew-object-head > article i:first-child {
    display: inline-block;
    width: 30px;
    text-align: center;
    margin-right: 7px;
    color: #000000cc;
}
.ew-object-head > article a i {
    font-size: 0.7em;
    margin-left: 10px;
    color: #00000040;
}
.ew-icons-right {
    text-align: right;
    font-size: 1.2em;
}
.ew-icons-right a {
    padding: 10px;
    line-height: 46px;
    color: #00000098;
    transition: color .5s ease-in-out;
}
.ew-icons-right a:hover {
    color: black;
}
.ew-legal {
    position: relative;
    border-bottom: 1px solid #00000014;
    background: #8080802e;
    font-family: mono,monospace;
    padding: 20px;
    box-shadow: 0 0 10px #00000026;
    max-height: 200px;
    overflow: auto;
}
.ew-legal article {
    font-size: 0.8em;
}
.ew-legal.full {
    max-height: none;
}
.ew-legal a.expander {
    position: absolute;
    right: 10px;
    bottom: 10px;
}
.ew-announcement {
    position: relative;
    border-bottom: 1px solid #00000014;
    background: #8080802e;
    padding: 20px;
    margin-bottom: 5px;
    box-shadow: 0 0 10px #00000026;
}
.ew-announcement article {
    padding: 10px 26px;
}

.ew-tabs {
    position: relative;
}
.ew-tabs ul {
    list-style-type: none;
    padding: 10px 15px 10px 15px;
}
.ew-tabs li {
    display: inline;
    padding: 0;
    margin: 0 5px;
}
.ew-tabs li.hide {
    display: none;
}
.ew-tabs li.active {
    display: inline !important;
}
.ew-tabs li.tab-link a {
    display: inline-block;
    text-decoration: none;
    padding: 3px 20px 0 20px;
    line-height: 40px;
    font-size: 1.1em;
    color: #000000d1;
    max-height: 43px;
}
.ew-tabs li.tab-link a.with-count {
    padding-right: 10px;
}
.ew-tabs li.tab-link a:hover .label {
    text-decoration: underline;
}
.ew-tabs li.tab-link a:hover span {
    text-decoration: none;
}
.ew-tabs li.tab-link a i {
    margin-right: 10px;
    opacity: 0.9;
    color: hsla(var(--ew-hue), 100%, 25%, 0.82);
    font-size: 1.1em;
}
/*ul.ew-tabs a:hover {
    border-bottom: 3px solid hsla(var(--ew-hue), 100%, 85%, 0.82);
}*/
.ew-tabs li.tab-link a.active {
    border-bottom: 3px solid hsla(var(--ew-hue), 100%, 45%, 0.82);
}
.ew-tabs ul ul {
    border: 1px solid red;
}
.ew-tabs .ew-count {
    position: relative;
    top: -12px;
    padding: 3px 7px;
    font-size: 0.7em;
    background: #0000000a;
    color: #0000008a;
    border-radius: 20px;
    font-weight: bold;
    letter-spacing: 1px;
    margin-left: 4px;
}
.ew-tabs .ew-bubble {
    position: relative;
    top: -2px;
    padding: 3px 5px;
    font-size: 0.6em;
    background: #ffd5d5b8;
    border: 1px solid #ba0000a6;
    color: #ba0000c2;
    border-radius: 20px;
    font-weight: bold;
    letter-spacing: 1px;
    margin-left: 8px;
    text-decoration: none;
}
.ew-tab-page {
    transition: opacity ease-in-out 500ms;
}
form.loading .ew-tab-page {
    opacity: 0.5;
}
.ew-tab-mobile {
    display: none;
}
.ew-tabs a.loading {
    animation-name: ew-opacity-loading;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    cursor: progress !important;
}
@keyframes ew-opacity-loading {
    0% {
        border-bottom: 3px solid hsla(var(--ew-hue), 100%, 45%, 0.42);
    }
    50% {
        border-bottom: 3px solid hsla(var(--ew-hue), 100%, 45%, 0.72);
    }
    100% {
        border-bottom: 3px solid hsla(var(--ew-hue), 100%, 45%, 0.42);
    }
}

.ew-media {
    position: relative;
    padding: 0;
    min-height: 150px;
    height: 100%;
}
.ew-media iframe {
    margin: 0;
    width: 100%;
    height: 100%;
}

.ew-tree {
    margin: 0;
    font-size: 0.89em;
    padding: 10px 0 5px 0;
}
.ew-tree, .ew-tree ul, .ew-side-menu {
    background: hsla(var(--ew-hue), 100%, 94%, 0.22);
    box-shadow: inset 0 0 15px #00000010;
    margin: 0;
}
.ew-tree li {
    position: relative;
    margin: 0;
    padding: 0 7px;
}
.ew-tree li:first-child {
    padding-top: 2px;
}
.ew-tree li:last-child {
    padding-bottom: 7px;
}
.ew-tree a {
    display: block;
    line-height: 2em;
    padding: 0 10px 0 20px;
    text-decoration: none;
}
.ew-tree i {
    display: inline-block;
    width: 35px;
    text-align: center;
}
.ew-tree .expand {
    position: absolute;
    top: 0;
    left: -10px;
    padding-right: 0;
}
.ew-tree .expand i {
    display: inline-block;
    padding: 5px 0;
    font-size: 0.7em;
    line-height: 0.8em;
    width: 15px;
    color: #00000087;
}
.ew-tree .opt {
    position: relative;
    padding-left: 50px;
}
.ew-tree .opt i {
    position: absolute;
    top: 7px;
    left: 15px;
}
/*.ew-tree a:hover {
    background: hsla(var(--ew-hue), 100%, 74%, 0.1);
    border-radius: 7px 0 0 7px;
}*/
.ew-tree .expand:hover {
    background: none;
}
.ew-tree .expand:hover i {
    color: black;
    font-weight: bold;
}
.ew-tree a:hover {
    text-decoration: underline;
}
.ew-tree li li a, .ew-side-menu li li a {
    margin-left: 18px
}
.ew-tree li li li a, .ew-side-menu li li li a {
    margin-left: 35px
}
.ew-tree li li li li a, .ew-side-menu li li li li a {
    margin-left: 52px
}
.ew-tree li li li li li a, .ew-side-menu li li li li li a {
    margin-left: 59px
}
.ew-tree li li li li li li a, .ew-side-menu li li li li li li a {
    margin-left: 66px
}

.ew-board-filter {

}

.ew-points {
    padding: 15px 0;
}
.ew-points i {
    margin-right: 7px;
}

.ew-notification {
    position: relative;
    padding: 15px 20px 15px 60px;
    line-height: 1.5em;
}
.ew-box.rounded > .ew-notification:first-child {
    border-radius: 15px 15px 0 0;
}
.ew-box.rounded > .ew-notification:only-child {
    border-radius: 15px;
}
.ew-dialog-body .ew-notification {
    margin: 5px 20px 5px 20px;
}
.ew-dialog-body .ew-notification:first-child {
    margin-top: 20px;
}
.ew-notification > i:first-child, .ew-notification article i:first-child {
    position: absolute;
    top: 15px;
    left: 20px;
    display: inline-block;
    width: 30px;
    text-align: center;
    margin-right: 10px;
    font-size: 1.2em;
    line-height: 1.3em;
    font-weight: bold;
}
.ew-notification.warning {
    /*background: #ffd0616c;*/
    background: #f6e2b3;
    /*background: linear-gradient(294deg, #ffd0619c 0%, #ffd0619c 76%, #ffd061c7 78%, #ffd061bf 100%);*/
    border: 1px solid #ffd061;
}
.ew-notification.warning > i, .ew-notification.warning article i {
    color: #b57e009c;
}
.ew-notification.error {
    /*background: #ff80615c;*/
    background: #f3c5ba;
    border: 1px solid #ff8061;
}
.ew-notification.error > i, .ew-notification.error article i {
    color: #b524009c;
}
.ew-notification.success {
    /*background: #01ff0030;*/
    background: #c2f2c2;
    border: 1px solid #5dde50;
}
.ew-notification.success > i, .ew-notification.success article i {
    color: #02b5009c;
}
.ew-notification.action, .ew-notification.wave {
    background: #fff;
    border: 1px solid #dbdbdb;
}
.ew-notification.action > i, .ew-notification.action article i {
    color: #000000bf;
}
.ew-notification.wave > i, .ew-notification.wave article i {
    color: rgba(0, 91, 181, 0.61);
    animation-name: wave-animation;
    animation-duration: 2.5s;
    /*animation-iteration-count: infinite;*/
    animation-iteration-count: 1;
    transform-origin: 70% 70%;
    display: inline-block;
}
@keyframes wave-animation {
    0% { transform: rotate(0.0deg); }
    10% { transform: rotate(14.0deg); }
    20% { transform: rotate(-8.0deg); }
    30% { transform: rotate(14.0deg); }
    40% { transform: rotate(-4.0deg); }
    50% { transform: rotate(10.0deg); }
    60% { transform: rotate(0.0deg); }
    100% { transform: rotate(0.0deg); }
}
.ew-notification.info {
    background: #e1e1e19c;
    border: 1px solid #d7d7d7;
}
.ew-notification.info > i, .ew-notification.info article i {
    color: #a0a0a09c;
}
.ew-notification .text i {
    margin: 0;
}
.text strong, .confirm-text strong {
    margin: 0 1px;
    padding: 0 2px;
    color: #000000;
    background: #fbfb0036;
    font-weight: bold;
    border: 1px solid #fbfb00d9;
    border-radius: 6px;
}
.text strong:empty, .confirm-text strong:empty {
    display: none;
}
.text i {
    display: inline-block;
    margin-right: 7px;
    width: 25px;
    text-align: center;
}
.text.icon i {
    margin-right: 0;
}
.text .icon-label {
    display: inline-block;
    margin-right: 7px;
}
.text .append i {
    margin-right: 0;
}
.text .sep, .sep {
    display: inline;
    margin: 0 2px;
    opacity: 0.8;
}
.text .sep-tight {
    display: inline;
    margin: 0 1px;
    opacity: 0.8;
}
.text .unit {
    margin-left: 5px;
    color: #00000070;
}
.ew-input .unit {
    margin-left: 10px;
    opacity: 0.7;
}

.ew-side-menu {
    /*background: #00000014;
    background: radial-gradient(circle, #00000024 0%, #00000018 26%, #00000012 100%);*/
    overflow: hidden;
}
.ew-tree h4.intro {
    margin: 2px 20px 20px 20px;
    padding-top: 30px;
}
.ew-side-menu h4.intro {
    margin: 2px 20px 20px 20px;
}
.ew-side-menu h3 {
    border: 0;
    font-size: 1.1em;
    padding: 20px 25px 10px 25px;
    text-transform: none;
}
.ew-side-menu > ul {
    margin: 0 0 15px 25px;
    padding: 0 0 10px 0 !important;
    background: #ffffffc4;
}
.ew-side-menu li {
    background: hsla(var(--ew-hue), 100%, 94%, 0.22);
    padding: 0;
    margin: 0;
}
.ew-side-menu li a {
    position: relative;
    display: block;
    padding: 7px 10px 7px 55px;
    text-decoration: none;
    transition: background-color 70ms ease-in-out;
}
.ew-side-menu li a:hover {
    background: hsla(var(--ew-hue), 100%, 74%, 0.4);
}
.ew-side-menu li a:hover .text {
    text-decoration: underline;
}
.ew-side-menu li a.active {
    background: white;
    border-left: 5px solid hsla(var(--ew-hue), 100%, 74%, 0.9);
    padding-left: 50px;
    box-shadow: 0 2px 5px #00000014;
}
.ew-side-menu li a i {
    display: inline-block;
    text-align: center;
    position: absolute;
    left: 15px;
    top: 7px;
    width: 30px;
    line-height: 1.5em;
}
.ew-side-menu li a.active i {
    left: 10px;
    font-weight: bold;
}

.ew-data article > div {
    padding: 7px 0;
}
.ew-data article > div:first-child {
    padding-top: 0;
}
.ew-data article > div:last-child {
    padding-bottom: 0;
}
.ew-data article .label {
    font-size: 0.8em;
    text-transform: uppercase;
    color: #00000094;
}
.ew-data article i {
    margin-right: 7px;
}
.ew-wrap .ew-table {
    position: relative;
    overflow-y: visible; /*against spec, build custom workaround*/
}
.sticky-table, .sticky-table table {
    position: relative;
}
.ew-wrap .ew-table.scroll, .sticky-table.scroll {
    overflow-x: scroll;
}
/*.ew-wrap.full-width .ew-table {
    overflow-x: scroll;
    overflow-y: visible;
}*/
.ew-table tbody tr:nth-child(2n+1) {
    background: #0000000a;
}
.ew-table tbody tr:nth-child(2n) {
    background: none;
}
.ew-table tbody tr {
    border-bottom: 1px solid #00000019;
}
.ew-table tbody tr:first-child {
    border-top: 1px solid #00000019;
}
.ew-table tbody tr.divided td {
    border-top: 2px solid #00000029;
}
.ew-table tr td {
    border-right: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
}
.ew-table tr td:last-child {
    border-right: 0;
}
.ew-table table, .sticky-table table {
    position: relative;
    border-collapse: separate;
    /*border-bottom: 1px solid #0000001b;
    padding-bottom: 15px;*/
}
.ew-table th {
    font-size: 0.8em;
    font-weight: normal;
    text-align: left;
    text-transform: uppercase;
    padding: 25px 15px 5px 15px;
    color: #000000a1;
    background: white;
    border-bottom: 2px solid #e3e3e3;
}
.ew-table thead, .sticky-table thead {
    position: relative;
    z-index: 5000;
}
.ew-table thead.fixed th {
    position: fixed;
    top: 0;
    left: auto;
    z-index: 5000;
    background: white;
}
.ew-table td section h2 {
    padding: 10px 20px 10px 20px;
}
.sticky-table.sticky thead tr > th {
    position: sticky;
    top: 0;
    z-index: 5000;
    background: white;
}
.sticky-table.sticky thead tr > th:first-child, .sticky-table.sticky thead tr > th.first {
    border-radius: 10px 0 0 0;
}
.sticky-table.sticky thead tr > th:last-child {
    border-radius: 0 10px 0 0;
}
.sticky-table.scroll thead tr > th {
    position: relative;
    z-index: 5000;
    background: white;
}
.ew-table th::before {
    border-bottom: 2px solid #e3e3e3;
}
.ew-table th a {
    display: block;
}
.ew-table td.text {
    padding: 10px 15px;
}
.ew-table td.text.less-padding, .ew-table td div.text.less-padding {
    padding: 7px 10px;
}
.ew-table td.highlight {
    /*background: #ffff0026;*/
    background: #aaaaaa24;
}
.ew-table td.text.placeholder, .ew-table td.text .placeholder {
    opacity: 0.5;
    font-style: italic;
    letter-spacing: 1px;
    font-family: monospace;
    text-align: center;
    padding: 15px 25px;
}
.ew-table td > a {
    position: relative;
}
.ew-table td > a, .ew-table td > .text, .ew-table td > .label {
    display: block;
    padding: 10px 15px;
}
.ew-table td.with-image {
    width: 45px !important;
    max-width: 45px !important;
}
.ew-table td.first.with-image {
    width: 70px !important;
    max-width: 70px !important;
    padding-left: 20px !important;
}
.ew-table td > a.with-image {
    padding-left: 60px;
}
.ew-table td:first-child > a.with-image {
    padding-left: 50px;
}
.ew-table tr td:first-child, .ew-table tr th:first-child, .ew-table tr td.first, .ew-table tr th.first {
    padding-left: 10px;
}
.ew-table tr td:last-child, .ew-table tr th:last-child {
    padding-right: 10px;
}
.ew-table tr td:first-child.text, .ew-table tr td.first.text, .ew-table tr th:first-child, .ew-table tr th.first {
    padding-left: 25px;
}
.ew-table tr td:last-child.text, .ew-table tr th:last-child {
    padding-right: 25px;
}
.ew-table td > a i {
    display: inline-block;
    width: 20px;
    text-align: center;
    margin-right: 7px;
}
.ew-table a:hover .label { /* , .ew-table a:hover .text */
    text-decoration: double;
    border-bottom: 3px double;
}

.ew-table td .text.number {
    letter-spacing: 1px;
}
.ew-table td .text.number.negative {
    color: #790000;
}
.ew-table td .append {
    font-size: 0.8em;
    color: rgba(0, 0, 0, 0.62);
    display: block;
    margin: -5px 15px 10px 15px;
}
.ew-table td.text .append {
    margin: 5px 0 2px 0;
}
.ew-table td .append:empty {
    display: none;
}
.ew-table td .append div {
    display: inline-block;
}
.ew-table td .append .div {
    display: block;
}
.ew-table td .append > span {
    margin-right: 12px;
}
.ew-table td .append > span:last-child {
    margin-right: 0;
}
.ew-table td .full-height {
    height: 100%;
}
.ew-table .row-primary {
    min-height: 10px;
}
.ew-table .object-frame {
    position: relative;
    display: inline-block;
    padding: 2px 7px;
    border: 1px solid #0000004f;
    border-radius: 5px;
    background: #0000000a;
    cursor: pointer;
}
.ew-table .object-frame:hover {
    border-radius: 5px 5px 0 5px;
}
.ew-table .object-frame i {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 0.6em;
    color: #0000005e;
    margin: 0;
    width: auto;
}
/*.ew-table .object-frame.with-image i {
    left: auto;
    right: 0;
}*/
.ew-table .object-frame-title {
    position: absolute;
    display: none;
    top: 100%;
    left: 10px;
    /*min-width: 100px;
    max-width: 200px;*/
    padding: 2px 5px;
    border: 1px solid #0000004f;
    border-radius: 0 5px 5px 5px;
    background: rgba(250, 250, 250, 0.79);
    font-size: 0.7em;
    line-height: 20px;
    z-index: 2000;
    cursor: default;
}
.ew-table .object-frame-title.wide {
    width: 200px;
}
.ew-table .object-frame:hover .object-frame-title {
    display: inline-block;
}
.ew-table .object-frame.draft { /*'draft','assigned','sickness','removed'*/
    border: 1px dashed #8484006b;
    outline: 4px solid #ffff0078 !important;
    color: #000000c3;
}
.ew-table .object-frame.sickness {
    border: 1px dashed #6c000078;
    outline: 4px solid #ff000078 !important;
    font-style: italic;
    text-decoration: line-through;
    color: #0006;
}
.ew-table .object-frame.with-image {
    padding-left: 35px;
    margin-left: 2px;
}
.ew-table .object-frame .ew-inline-profile-image {
    top: -4px;
    left: -7px;
}
.ew-table td .append span.pre {
    color: #00000091;
    margin-right: 7px;
}
.ew-table td .append span.post {
    color: #00000091;
    margin-left: 7px;
}
.ew-table a.sort-caret {
    text-decoration: none !important;
}
.ew-table a.sort-caret:hover {
    text-decoration: underline !important;
}
.ew-table .sort-caret i {
    display: inline-block;
    margin: 0;
    width: 20px;
}
a i.only, .ew-table td > a i.only {
    margin-right: 0;
}
a:hover i.only, .ew-table td > a:hover i.only {
    font-weight: bold;
}

.ew-board {
    padding: 20px;
}
.ew-board-header {
    margin-bottom: 10px;
}
.ew-board.board-grid > article {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
}

.ew-board > article .ew-board-section {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
}

.ew-board-section article {
    margin: 10px;
    background: #fff9c45c;
    border-radius: 5px;
    border: 1px solid #0000001f;
    box-shadow: 0 0 10px #00000008;
}
.ew-board-section > article > .text {
    padding: 20px 20px 2px 20px;
}
.ew-board-section .ew-action-bar {
    background: none !important;
}

.ew-calendar {
    overflow: auto;
}
.ew-calendar td, .ew-calendar th {
    /*width: 14.28%; todo remove */
    border-right: 1px solid #0000001f;
    border-bottom: 1px solid #0000001f;
}
.ew-calendar th .day {
    display: block;
    white-space: normal;
    word-break: break-word;
    overflow: hidden;
    text-overflow: clip;
    max-height: 46px;
}
.ew-calendar td.dbl, .ew-calendar th.dbl {
    border-right: 4px double #0000001f;
}
.ew-calendar td {
    position: relative;
    padding: 5px 10px;
    /*background: #00000003;*/
    min-height: 50px;
}
.ew-calendar td.timeline-wrap {
    padding: 0;
    /*border-right: 1px solid #00000054;*/
}
.ew-calendar .cal-day-wrap {
    padding: 7px 5px 5px 7px;
    border-right: 2px dashed #0000001f;
}
.ew-calendar .cal-day-wrap:last-child {
    border-right: 0;
}
.ew-calendar th {
    position: relative;
    padding: 10px;
    text-transform: uppercase;
    color: rgba(0, 0, 0, 0.6);
    font-size: 0.8em;
}

.ew-calendar tr:last-child td {
    /*width: calc(14.28% - 7px); todo remove */
    border-bottom: 0;
}
.ew-calendar td.kw, .ew-calendar th.kw, .ew-calendar td.time, .ew-calendar th.time {
    width: 45px !important;
    text-align: center;
    color: grey;
    font-size: 0.8em;
    min-width: 45px;
    max-width: 45px;
}
.ew-calendar tr td:last-child, .ew-calendar tr th:last-child {
    border-right: 0;
}
.ew-calendar header {
    text-align: center;
}
.ew-calendar header .day {
    display: inline-block;
    border-radius: 50%;
    font-size: 0.8em;
    width: 35px;
    height: 25px;
    line-height: 25px;
    letter-spacing: 1px;
}
.ew-calendar td.pale {
    background: #04040408;
}
.ew-calendar td.today header .day {
    background: #a14014;
    color: white;
    font-weight: bold;
    border-radius: 7px;
    padding: 0 5px;
    outline: 3px solid #00000017;
}
.ew-calendar th .nr {
    display: inline-block;
    margin-left: 3px;
    font-size: 1.2em;
}
.ew-calendar th .nr.today {
    text-decoration: double;
    background: #a14014;
    color: white;
    border-radius: 7px;
    padding: 0 5px;
    outline: 3px solid #00000017;
}
.ew-calendar .buttons {
    opacity: 0;
    position: absolute;
    top: 5px;
    right: 0;
    color: #0000006b;
    transition: all .1s ease-in-out;
}
.ew-calendar th .buttons a {
    display: inline-block;
    line-height: 29px;
}
.ew-calendar th:hover .buttons, .ew-calendar td:hover .buttons {
    opacity: 1;
}
.ew-calendar .buttons a {
    padding: 5px 10px;
}
.ew-calendar .buttons a:hover {
    color: black;
}
.ew-calendar .meetings {
    margin: 10px 0;
    min-height: 90px;
}
.ew-calendar .meeting {
    position: relative;
    margin-bottom: 5px;
}
.ew-calendar .meeting a .label, .ew-calendar .meeting .title > a {
    font-size: 0.8em;
    line-height: 1.2em;
}
.ew-calendar .meeting .time {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 35px;
    text-align: right;
    color: #000000a0;
}
.ew-calendar .meeting .title {
    display: inline-block;
    padding-left: 40px;
}
.ew-calendar .meeting .bubble {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    margin-right: 5px;
    border: 1px solid #00000017;
}

.ew-calendar .cal-day {
    position: relative;
    height: 100%;
    width: 100%;
}
.ew-calendar .avail {
    position: absolute;
    left: -5px;
    width: calc(100% + 10px);
    border-radius: 5px;
    padding-right: 2px;
    z-index: 100;
}
.ew-calendar .avail-block {
    height: 100%;
    padding: 10px;
    overflow: hidden;
    border-radius: 5px;
}
.ew-calendar .avail.available .avail-block {
    background: #66d26638;
    background-size: 40px 40px;
}
.ew-calendar .avail.reluctantly .avail-block {
    background: #d2a36638;
}
.ew-calendar .avail.absent .avail-block {
    background: rgba(255, 0, 0, 0.06) linear-gradient(135deg, #ff00000d 25%, #fff0 25%, #fff0 50%, #ff00000d 50%, #ff00000d 75%, #fff0 75%, #fff0 100%);
    background-size: 20px 20px;
}
.ew-calendar .capsule {
    position: absolute;
    border-radius: 5px;
    padding-right: 2px;
}
.ew-calendar .meetings .meeting-group {
    padding: 10px 5px 5px 5px;
}
.ew-calendar .meetings .meeting-group:first-child {
    padding-top: 0;
}
.ew-calendar .day-meeting {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 200;
}
.ew-calendar .day-meeting.ctx-menu-open {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 300;
}
.ew-calendar .day-meeting .day-meeting-inner {
    background: indianred;
    border: 2px solid #00000029;
    margin: 0 10px;
    border-radius: 5px;
    font-size: 0.8em;
    padding: 2px 10px;
    line-height: 17px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 25px;
}
.ew-calendar .meetings .capsule {
    position: relative;
    padding-right: 0;
}
.ew-calendar .capsule-block {
    position: relative;
    background: #61cde6;
    border: 2px solid #00000029;
    border-radius: 7px;
    height: 100%;
    overflow: hidden;
    z-index: 100;
}
/*.ew-calendar .capsule-block-wrap:hover .capsule-block {
    overflow: visible;
}*/
.ew-calendar .capsule-block .text {
    padding: 7px 10px;
}
.ew-calendar .capsule-compact .capsule-block .text {
    padding: 2px 10px;
}
.ew-calendar .avail-block .text, .ew-calendar .capsule-block .text {
    font-size: 0.8em;
    line-height: 1.2em;
    white-space: normal;
    word-break: break-word;
}
.ew-calendar .capsule-block.ctx-menu-open {
    z-index: 200;
}
.ew-calendar .capsule-block i.repeated {
    position: absolute;
    right: 0;
    bottom: 0;
    display: inline-block;
    width: 30px;
    height: 20px;
    text-align: center;
    font-size: 0.8em;
    color: #000000c7;
}
.ew-calendar .capsule.available .capsule-block {
    background: #66d266d6;
    background-size: 40px 40px;
}
.ew-calendar .capsule.reluctantly .capsule-block {
    background: #d2a366d6;
}
.ew-calendar .capsule.absent .capsule-block {
    background: rgba(255, 0, 0, 0.34) linear-gradient(135deg, #ff00000d 25%, #fff0 25%, #fff0 50%, #ff00000d 50%, #ff00000d 75%, #fff0 75%, #fff0 100%);
    background-size: 20px 20px;
}
.ew-calendar .capsule-block .m-time {
    font-size: 0.9em;
    margin-bottom: 2px;
}
.ew-calendar .capsule-block .m-title {
    font-weight: bold;
}
.ew-calendar .capsule-block .m-trainer {
    display: inline-block;
    margin-left: 5px;
    background: #0000000f;
    border: 1px solid #0000000f;
    border-radius: 5px;
    padding: 2px 5px;
}
.ew-calendar .capsule-block .m-location {
    margin-top: 2px;
}
.ew-calendar .capsule-block .m-location i {
    margin-right: 0;
}
.ew-calendar .capsule-block .m-participants {
    font-size: 0.9em;
    margin-top: 7px;
    margin-bottom: 3px;
    color: #000c;
}
.ew-calendar .capsule-block-wrap {
    position: relative;
    height: 100%;
}
.ew-calendar .capsule-block-wrap .capsule-days-overlay {
    display: none;
}
.ew-calendar .capsule-block-wrap:hover .capsule-days-overlay {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    transform: translate(5px, -17px);
    border: 1px solid #00000038;
    font-size: 0.7em;
    padding: 2px 6px;
    width: auto;
    background: rgba(255, 255, 255, 0.92);
    border-radius: 5px;
    white-space: nowrap;
    line-height: 15px;
    z-index: 101;
}
.ew-calendar .capsule-block-wrap .capsule-days-overlay .sep {
    margin: 0 1px;
}

.ew-calendar .hour-line, .ew-calendar .half-line, .ew-calendar .day-line, .ew-calendar .day-we-line, .ew-calendar .day-half-line, .ew-calendar .day-today-line {
    position: absolute;
    left: 0;
    right: 0;
    text-align: right;
    font-size: 1.2em;
    letter-spacing: 1px;
    padding: 3px 5px;
}
.ew-calendar .hour-line {
    border-top: 2px solid #00000017;
    font-weight: bold;
    color: #00000082;
}
.ew-calendar .hour-line.quarter {
    border-top: 2px solid rgba(0, 0, 0, 0.19);
    background: #00000008;
}
.ew-calendar td.time .hour-line.quarter {
    border-radius: 0 0 10px 10px;
}
.ew-calendar .half-line {
    border-top: 2px dotted #00000017;
    color: #00000065;
}
.ew-calendar .cal-day-lines {
    font-size: 0.8em;
}
.ew-calendar .cal-day-capsules {
    position: relative;
    margin-left: 30px;
}
.ew-calendar .cal-day-lines .day-line, .ew-calendar .cal-day-lines .day-we-line, .ew-calendar .cal-day-lines .day-half-line {
    text-align: left;
}
.ew-calendar .day-line {
    border-top: 2px solid #00000017;
    font-weight: bold;
    color: #00000082;
    font-size: 1em;
    padding: 0 5px;
}
.ew-calendar .day-we-line {
    background: #00000008;
    font-weight: bold;
    color: #00000082;
    font-size: 1em;
    padding: 0 5px;
}
.ew-calendar .day-half-line {
    border-top: 2px dotted #00000017;
    color: #00000065;
    font-size: 1em;
    padding: 0 5px;
}
.ew-calendar .day-today-line {
    border-left: 2px solid darkred;
    border-radius: 2px;
    left: -4px;
    height: 25px;
    width: 5px;
    z-index: 4000;
}
.ew-calendar .day-base {
    display: inline-block;
    width: 25px;
}
.ew-calendar .day-reveal {
    display: none;
    font-weight: bold;
    letter-spacing: 1px;
    margin-left: 7px;
    opacity: 0.8;
}
.ew-calendar .day-line:hover .day-reveal, .ew-calendar .day-we-line:hover .day-reveal, .ew-calendar .day-half-line:hover .day-reveal {
    display: inline-block;
    font-weight: bold;
    letter-spacing: 1px;
    margin-right: 5px;
}
.ew-calendar .meetings .capsule + .capsule {
    margin-top: 3px;
}
.ew-calendar .m-gap, .ew-calendar .m-overlap {
    border-left: 2px solid #0000000f;
    border-right: 2px solid #0000000f;
    font-size: 0.8em;
    text-align: center;
    padding: 5px;
    margin: 0 5px;
    letter-spacing: 1px;
    font-style: italic;
    color: #000000db;
}
.ew-calendar .m-gap {
    background: #a6eca69c;
}
.ew-calendar .m-gap.tiny {
    background: #cacaca9c;
    height: 3px;
    padding: 0;
}
.ew-calendar .m-overlap {
    background: rgba(255, 0, 0, 0.34) linear-gradient(135deg, #ff00000d 25%, #fff0 25%, #fff0 50%, #ff00000d 50%, #ff00000d 75%, #fff0 75%, #fff0 100%);
    background-size: 20px 20px;
}

.ew-calendar-mini {

}
.ew-calendar-mini td {
    text-align: center;
    width: 12.5%;
    font-size: 0.7em;
}
.ew-calendar-mini td.fade {
    color: #0000003d;
}
.ew-calendar-mini td.week {
    border-right: 1px solid #00000012;
    color: #0000003d;
}
.ew-calendar-mini td a {
    display: block;
    text-align: center;
}
.ew-calendar-mini td a.active {
    background: #feb;
}
.ew-calendar-mini td a.today {
    background: #d3979724;
    outline: 2px solid #ff3c003d;
    font-weight: bold;
    text-decoration: underline;
    font-size: 1.2em;
}
.ew-calendar-mini td a.active.today {
    background: #feb;
}
.ew-calendar-mini th {
    border-bottom: 1px solid #00000012;
    font-size: 0.8em;
    font-weight: normal;
}
.ew-calendar-mini th.nav a {
    display: inline-block;
    width: 50%;
    text-align: right;
    padding: 0 10px;
}
.ew-calendar-mini th.nav a:last-child {
    text-align: left;
}
.ew-calendar-mini .title {
    text-align: left;
    font-size: 0.85em;
    padding-left: 7px;
    line-height: 2em;
}

body.backdrop-active {
    overflow: hidden;
}
body.backdrop-active #ew-content {
    /*margin-right: 12px;*/
}
body.backdrop-active #ew-header, body.backdrop-active #ew-power-bar {
    /*padding-right: 12px;*/
}
#ew-backdrop {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #4f4f4f6e;
    /*background-image: linear-gradient(135deg, #9797975e 25%, #97979760 25%, #97979760 50%, #9797975e 50%, #9797975e 75%, #97979760 75%, #97979760 100%);
    background-size: 56px 56px;*/
    box-shadow: inset 0 0 50px 0 #0000000a;
    z-index: 6000;
}
body.iframe #ew-backdrop {
    display: none !important;
}
#ew-dialog-wrap-inline, #ew-dialog-wrap.inline {
    padding: 80px 30px;
}
#ew-dialog-wrap-inline.logo, #ew-dialog-wrap.inline.logo {
    padding-top: 0;
}
#ew-dialog-wrap.overlay {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 80px 40px 80px 30px;
    z-index: 6010;
    overflow: auto;
}
#ew-confirm-wrap {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 30px;
    z-index: 6020;
    overflow: auto;
}
#ew-dialog, #ew-confirm {
    display: none;
    margin: 0 auto;
    width: 700px;
    border-radius: 15px;
    background: #ffffffed;
    box-shadow: 2px 2px 5px -4px #00000038, 0 0 10px -3px #00000038;
}
#ew-dialog.inline, body.confirm #ew-confirm-wrap, body.confirm #ew-confirm {
    display: block;
}
body.confirm #ew-confirm-wrap.reset, body.confirm #ew-confirm-wrap.reset #ew-confirm {
    display: none;
}
#ew-dialog.inline.custom-package {
    background: none;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}
#ew-confirm {
    margin-top: 20vh;
    padding: 20px;
    width: 400px;
}
#ew-dialog .ew-dialog-head {
    background: #0000000f;
    border-radius: 15px 15px 0 0;
    box-shadow: inset 0 -10px 23px -20px #0000004a;
}
#ew-dialog .ew-dialog-title h4 {
    position: relative;
    padding: 15px 20px 15px 25px;
    border-radius: 15px 15px 0 0;
    font-size: 1.2em;
    line-height: 30px;
    color: #000000e0;
}
#ew-dialog .ew-dialog-title h4 i {
    position: absolute;
    width: 30px;
    text-align: center;
    top: 20px;
    left: 30px;
    margin-right: 10px;
}
#ew-dialog .ew-dialog-title h4 .text {
    display: inline-block;
    margin-left: 40px;
}
#ew-dialog .ew-dialog-close {
    width: 80px;
    max-width: 80px;
    text-align: right;
}
#ew-dialog.inline .ew-dialog-close {
    display: none;
}
#ew-dialog.inline .ew-dialog-close.display {
    display: block;
}
#ew-dialog .ew-dialog-close a {
    display: inline-block;
    width: 80px;
    height: 60px;
    font-size: 30px;
    line-height: 60px;
    text-align: right;
    padding-right: 20px;
    color: #0000006e;
    outline: 0;
}
#ew-dialog .ew-dialog-close a:hover {
    color: black;
    font-weight: bold;
}
#ew-dialog .ew-dialog-body {
    /*padding: 20px;*/
}
#ew-dialog .ew-dialog-body h4 {
    padding: 5px 2px;
    text-transform: uppercase;
    font-size: 0.9em;
    letter-spacing: 1px;
    color: #0000007a;
    margin-bottom: 5px;
    /*transform: rotate(-90deg);
    text-align: right;
    position: absolute;
    top: 0;
    left: 0;*/
}
#ew-dialog .ew-dialog-body .input-header h4 {
    margin-top: 5px;
    margin-bottom: 0;
}
#ew-confirm .confirm-circle {
    position: relative;
    top: -50px;
    left: 140px;
    left: calc(50% - 40px);
    background: white;
    background-size: 80px;
    border-radius: 40px;
    box-shadow: 2px 2px 5px -4px #000000bd, 0 0 15px 0 #ffffff7d;
    outline: 7px solid #ffffff61;
    height: 80px;
    width: 80px;
    font-size: 35px;
    line-height: 80px;
    text-align: center;
    color: white;
    overflow: hidden;
    /*animation-name: ew-blur-in;
    animation-duration: 500ms;*/
}
.ew-toast .confirm-circle {
    position: absolute;
    top: 12px;
    left: 18px;
    background: white;
    background-size: 80px;
    border-radius: 40px;
    box-shadow: 2px 2px 5px -4px #000000bd, 0 0 15px 0 #ffffff7d;
    outline: 7px solid #ffffff61;
    height: 40px;
    width: 40px;
    font-size: 18px;
    line-height: 40px;
    text-align: center;
    color: white;
    overflow: hidden;
}
#ew-confirm .confirm-circle.success, .ew-toast .confirm-circle.success {
    background: #71c341;
}
#ew-confirm .confirm-circle.failure, #ew-confirm .confirm-circle.error, .ew-toast .confirm-circle.error {
    background: #c34141;
}
#ew-confirm .confirm-circle.info, #ew-confirm .confirm-circle.question, #ew-confirm .confirm-circle.loading, .ew-toast .confirm-circle.question {
    font-size: 40px;
    /*background: #a6a6a6;*/
    background: #2d96b7;
}
#ew-confirm .confirm-circle.warning, .ew-toast .confirm-circle.warning {
    font-size: 40px;
    /*background: #c38a41;*/
    background: #c66600;
}
#ew-confirm .confirm-circle.full.success, .ew-toast .confirm-circle.full.success {
    background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, rgba(113,195,65,1) 50%, rgba(113,195,65,1) 100%);
    color: #71c341;
}
#ew-confirm .confirm-circle.full.failure, #ew-confirm .confirm-circle.full.error, .ew-toast .confirm-circle.full.failure {
    background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 48%, #c34141 50%, #c34141 100%);
    color: #c34141;
}
#ew-confirm .confirm-circle.full.info, #ew-confirm .confirm-circle.full.question, .ew-toast .confirm-circle.full.question {
    font-size: 40px;
    background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 58%, #a6a6a6 60%, #a6a6a6 100%);
    /*color: #a6a6a6;*/
    color: #2d96b7;
}
#ew-confirm .confirm-circle.full.warning, .ew-toast .confirm-circle.full.warning {
    font-size: 40px;
    background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 58%, #c38a41 60%, #c38a41 100%);
    /*color: #c38a41;*/
    color: #c66600;
}
#ew-confirm .confirm-circle i.full {
    font-size: 80px;
}
.ew-toast .confirm-circle i.full {
    font-size: 40px;
}
#ew-confirm .confirm-text {
    margin: -40px 0 20px 0;
    text-align: center;
    padding: 10px 20px;
}
#ew-confirm .confirm-spoiler {
    border: 2px solid #00000008;
    background: #0000000a;
    border-radius: 7px;
    margin: 20px 10px;
    padding: 10px 20px;
}
#ew-confirm .confirm-buttons {
    text-align: center;
    padding: 10px;
}
#ew-confirm .confirm-buttons button, #ew-confirm .confirm-buttons a.button {
    margin: 7px 10px;
}
#ew-confirm .confirm-buttons button:only-child, #ew-confirm .confirm-buttons a.button:only-child {
    min-width: 70%;
}
#ew-confirm .confirm-relate-buttons {
    text-align: left;
    padding: 10px;
}
#ew-confirm .confirm-relate-buttons button, #ew-confirm .confirm-relate-buttons a.button {
    background: none;
    color: #0009;
    box-shadow: none;
    display: block;
    width: 100%;
    text-align: left;
    margin: 0;
    border-radius: 0;
    border: 0;
    border-top: 1px solid #0000001a;
    font-weight: normal;
    transition: all 160ms ease-in-out;
}
#ew-confirm .confirm-relate-buttons button:hover, #ew-confirm .confirm-relate-buttons a.button:hover, #ew-confirm .confirm-relate-buttons button:active, #ew-confirm .confirm-relate-buttons a.button:active {
    background: hsla(var(--ew-hue), 100%, 95%, 0.82);
    padding-left: 25px;
}
#ew-confirm .confirm-relate-buttons button i, #ew-confirm .confirm-relate-buttons a.button i {
    width: 30px;
    text-align: center;
}


#ew-toast-wrap {
    position: fixed;
    left: 0;
    bottom: 0;
    padding: 10px;
    z-index: 5900;
}
.ew-toast {
    position: relative;
    margin: 10px 10px;
    width: 450px;
    border-radius: 5px;
    background: #ffffffed;
    box-shadow: 2px 2px 5px -4px #000000bd, 0 0 15px 0 #00000021;
}
.ew-toast .confirm-text {
    padding: 20px 70px 20px 70px;
}
.ew-toast a.toast-close {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 65px;
    font-size: 20px;
    line-height: 65px;
    text-align: right;
    padding-right: 20px;
    color: #0000006e;
    outline: 0;
}
.ew-toast a.toast-close:hover {
    color: black;
    font-weight: bold;
}

.ew-dropzone {
    padding: 20px;
    text-align: center;
}
.form-input .ew-dropzone {
    padding: 20px 0;
}
.dropzone {
    text-align: center;
    padding: 25px 10px;
    border: dashed 3px #00000030;
    background-color: #f0f0f040;
    cursor: pointer;
    border-radius: 20px;
}
.dropzone .dropzone-text, .dropzone .dropzone-state {
    color: #00000061;
}
.dropzone .dropzone-prep {
    font-weight: bold;
    display: none;
}
.dropzone2 {
    padding: 1px 5px 1px 5px;
    margin-top: 7px;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.dropzone.active {
    animation-name: ew-dropzone-active;
    animation-duration: 800ms;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-play-state: running;
}
.dropzone.highlight {
    animation-name: ew-dropzone-highlight;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-play-state: running;
}

.color-circle {
    position: relative;
    top: 2px;
    margin-right: 12px;
    display: inline-block;
    height: 18px;
    width: 18px;
    border-radius: 20px;
    box-shadow: 1px 1px 3px #0000005e;
}
.yellow-mark {
    color: #000;
    position: relative;
    background-image: linear-gradient(180deg,#fff06b,#fff06b);
    background-repeat: no-repeat;
    background-position: 4px bottom;
    background-size: 100% 10px;
}
.light-color-bg {
    background: hsla(var(--ew-hue), 100%, 74%, 0.4);
}
.light-red-bg {
    background: #ff000030;
}
.light-grey-bg {
    background: #00000005;
}

.ew-image {
    margin: 20px;
    padding: 0;
    box-shadow: 0 0 19px #00000030;
}
.ew-image.no-shadow {
    box-shadow: none;
}
.ew-image.small {
    max-width: 300px;
    max-height: 300px;
}
.ew-image.medium {
    max-width: 500px;
    max-height: 500px;
}
.ew-image.large {
    max-width: 900px;
    max-height: 900px;
}

.ew-countdown {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    gap: 5px;
    padding: 20px;
}
.ew-countdown .countdown-element {
    display: inline-block;
    flex-grow: 0;
    text-align: center;
    width: 80px;
}
.ew-countdown h1 {
    font-size: 2em;
    margin: 0;
    padding: 5px !important;
    line-height: 40px;
}
.ew-countdown aside {
    font-size: 0.8em;
    color: rgba(255, 255, 255, 0.65);
    margin-top: -10px;
}
.ew-countdown .sep {
    padding-bottom: 30px;
}

.ew-attendance-timer {
    position: relative;
    background: #00000008;
    margin-bottom: 15px;
}
.ew-attendance-timer > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    gap: 5px;
    padding: 0 5px 8px 5px;
    border: 1px solid rgba(0, 0, 0, 0);
    margin: 2px;
}
.ew-attendance-timer.break > div {
    padding: 0 5px 8px 5px;
    border: 1px solid rgba(114, 0, 0, 0.66);
    border-radius: 4px;
    margin: 2px;
}
.ew-attendance-timer .floating-pause {
    display: none;
}
.ew-attendance-timer.break .floating-pause {
    display: block;
    position: absolute;
    right: 12px;
    bottom: -10px;
    font-size: 1.7em;
    color: rgba(114, 0, 0, 0.66);
}
.ew-attendance-timer .attendance-timer-element {
    display: inline-block;
    flex-grow: 0;
    text-align: center;
    width: 50px;
}
.ew-attendance-timer h1 {
    font-size: 1.2em;
    margin: 0;
    padding: 5px !important;
    padding-top: 0 !important;
    line-height: 40px;
}
.ew-attendance-timer aside {
    font-size: 0.7em;
    color: rgba(0, 0, 0, 0.35);
    margin-top: -10px;
    line-height: 10px;
}
.ew-attendance-timer .sep {
    padding-bottom: 7px;
    color: rgba(0, 0, 0, 0.35);
}

pre {
    background: #0000000d;
    margin: 10px 20px;
    padding: 15px 20px;
    font-size: 0.8em;
    line-height: 1.7em;
    border: 1px solid #00000003;
    border-radius: 10px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* LANDINGPAGE */
.ew-lp {
    font-size: 18px;
    line-height: 1.7em;
}
.ew-lp.size20 {
    font-size: 20px;
    line-height: 1.7em;
}
.ew-lp .ew-wrap {
    padding-top: 30px;
    padding-bottom: 50px;
}
.ew-lp .ew-wrap:first-child {
    padding-top: 0;
}
.ew-lp .ew-wrap:last-child {
    padding-bottom: 0;
}
.ew-lp p, .ew-lp .p {
    padding: 8px 20px;
}
.ew-lp h1 {
    padding: 60px 5px 30px 20px;
}
.ew-lp h1.c {
    padding-right: 20px;
}
.ew-lp h2, .ew-lp h3, .ew-lp h4, .ew-lp h5, .ew-lp h6 {
    padding: 40px 20px 20px 20px;
}
.ew-lp .ew-box > h2:first-child, .ew-lp .ew-box > h3:first-child, .ew-lp .ew-box > h4:first-child, .ew-lp .ew-box > h5:first-child, .ew-lp .ew-box > :first-child {
    padding-top: 20px;
}
.ew-lp .ew-wrap > h2 {
    margin: 0;
}
.ew-lp .ew-image {
    box-shadow: none;
}
.ew-lp .ew-image.shade {
    box-shadow: 0 0 19px #00000030;
}
.ew-lp .rel-links {
    padding-top: 0;
    border-left: 3px solid #F39B0F85;
    margin: 20px;
    border-radius: 8px;
}
.ew-lp .rel-links a {
    display: block;
    text-transform: uppercase;
    font-size: 15px;
    letter-spacing: 1px;
    color: #1d1e3e;
    opacity: 0.6;
    transition: all 200ms ease;
    padding: 3px 0;
}
.ew-lp .rel-links a:hover {
    opacity: 1;
    letter-spacing: 0.7px;
    font-weight: bold;
}
.ew-lp .box-highlight {
    background: #F39B0F30;
    border-radius: 10px;
    padding: 13px 20px;
    margin: 5px 0;
    border: 1px solid #F39B0F30;
}

.ew-map {
    width: 100%;
    height: 100%;
    min-height: 400px;
}

/*.leaflet-bottom, .leaflet-right {
    display: none !important;
}*/
.leaflet-control-attribution {
    font-size: 0.7em;
}
.leaflet-control-attribution svg {
    display: none !important;
}
.fix-scroll-vh.fixed {
    position: fixed;
    overflow: auto;
    top: 0;
    bottom: 0;
    height: 100vh;
    z-index: 90;
}

.aside-filter {
    width: 300px;
    min-width: 300px;
    flex-grow: 0;
}
.video-iframe {
    width: 560px;
    height: 315px;
    max-width: 100%;
}
.typing-blocks span, .typing-blocks br {
    display: none;
}

.copy-code {
    position: relative;
    text-align: center;
}
.copy-code pre {
    font-size: 0.9em;
    cursor: pointer;
    transition: all ease-in-out 200ms;
}
.copy-code:hover pre {
    background: #0000000d;
    transform: scale(1.03);
}
.copy-code.licence-code pre {
    font-size: 1.4em;
    letter-spacing: 4px;
}
.copy-code .copied-text {
    display: none;
    position: absolute;
    left: 50%;
    top: 50%;
    width: auto;
    transform: translate(-50%, -50%);
    z-index: 3000;
}
.copy-code .copied-text span {
    display: inline-block;
    padding: 10px 20px;
    background: green;
    color: white;
    font-size: 18px;
    border-radius: 30px;
}
.copy-code .copied-text i {
    display: inline-block;
    margin-right: 7px;
}

.color-box {
    display: inline-block;
    border: 2px solid rgba(0, 0, 0, 0.15);
    border-radius: 7px;
    width: 30px;
    height: 12px;
}

#ew-feedback {
    display: inline-block;
    position: fixed;
    top: 142px;
    right: 0;
    background: red;
    border-radius: 20px 0 0 20px;
    background: hsla(var(--ew-hue), 100%, 83%, 0.82);
    width: 40px;
    overflow: hidden;
    z-index: 5020;
    transition: all ease-in-out 100ms;
    box-shadow: 0 0 5px #00000029;
    font-size: 0.9em;
}
#ew-feedback:hover {
    background: hsla(var(--ew-hue), 100%, 83%, 1);
    width: 60px;
    padding-left: 10px;
}
#ew-feedback a, #ew-feedback button, #ew-feedback a:hover, #ew-feedback button:hover, #ew-feedback a:active, #ew-feedback button:active {
    display: inline-block;
    font-size: 1em;
    /*transform: rotate(-90deg);*/
    writing-mode: vertical-rl;
    text-transform: uppercase;
    margin: 0;
    border: none;
    padding: 20px 5px 20px 7px;
    background: none;
    box-shadow: none;
    color: #000000c1;
    letter-spacing: 1px;
}

#ew-feedback a:hover, #ew-feedback button:hover {
    color: black;
}

#ew-feedback a i, #ew-feedback button i {
    margin-bottom: 7px;
}

button.icon-square, .button.icon-square {
    font-size: 25px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    padding: 0;
}
button.icon-square i, .button.icon-square i {
    font-size: 25px;
    line-height: 50px;
    margin: 0 !important;
}
button.icon-rect, .button.icon-rect {
    font-size: 28px;
    width: 80px;
    height: 52px;
    line-height: 50px;
    padding: 0;
}
button.icon-rect i, .button.icon-rect i {
    font-size: 28px;
    line-height: 50px;
    margin: 0 !important;
}

.ew-option-box {
    display: inline-block;
    width: 33%;
}
.ew-option-box {
    padding: 0 !important;
}
.ew-option-box .option-box-inner {
    margin: 10px;
    padding: 0;
    border: 1px solid #00000026;
    border-radius: 7px;
    overflow: hidden;
    box-shadow: 1px 1px 10px #00000015;
    transition: all 200ms ease-in-out;
}
.ew-option-box:hover .option-box-inner {
    box-shadow: 1px 1px 15px #00000030;
    transform: scale(1.02);
}
.ew-option-box .option-visual {
    padding: 10px;
    text-align: center;
}
.ew-option-box .option-visual.image {
    height: 120px;
}
.ew-option-box .option-visual.icon i {
    padding: 10px;
    font-size: 30px;
    color: #000000ba;
}
.ew-option-box:hover .option-visual.icon i {
    color: hsla(var(--ew-hue), 100%, 33%, 0.9);
}
.ew-option-box .option-text {
    padding: 10px;
    text-align: center;
    border-top: 1px solid #00000016;
    background: #00000005;
}
.ew-lane-link {
    padding: 5px 10px;
}
.ew-lane-link a {
    text-decoration: none;
}
.ew-lane-link:hover a .link-head .label {
    text-decoration: underline;
}
.ew-lane-link:first-child {
    padding-top: 10px;
}
.ew-lane-link:last-child {
    padding-bottom: 10px;
}
.ew-lane-link + .ew-lane-link {
    border-top: 1px dotted #0000001c;
}
.ew-lane-link .link-head {
    font-size: 1.1em;
}
.ew-lane-link .link-head i {
    display: inline-block;
    color: rgba(0, 0, 0, 0.74);
    margin-right: 7px;
}
.ew-lane-link .link-body {
    padding: 5px 10px 5px 0;
    font-size: 0.9em;
    color: rgba(0, 0, 0, 0.74);
}
.ew-lane-link .image {
    background: #f2f2f2;
    flex-grow: 0;
    width: 200px;
    height: 100px;
    margin: 5px;
    border: 1px solid #00000012;
    box-shadow: 0 0 10px #0000001c;
    border-radius: 7px;
    transition: transform .2s;
}
.ew-lane-link:hover .image {
    transform: scale(1.02);
}
.ew-lane-link .image.empty {
    padding: 20px;
    font-size: 50px;
    line-height: 50px;
    text-align: right;
    text-decoration: none !important;
    color: #00000012;
    letter-spacing: 2px;
}
.ew-lane-link .content {
    margin: 15px 10px;
}
.ew-lane-link .state {
    flex-grow: 0;
    width: 100px;
    text-align: center;
    padding: 20px 0;
}
.ew-lane-link .state i {
    font-size: 1.2em;
}
.ew-aside-link {

}
.ew-aside-link a {
    display: block;
    text-decoration: none;
}
.ew-aside-link:hover a .link-head .label {
    text-decoration: underline;
}
.ew-aside-link:first-child {
    padding-top: 10px;
}
.ew-aside-link:last-child {
    padding-bottom: 10px;
}
.ew-aside-link + .ew-aside-link {
    border-top: 1px dotted #0000001c;
}
.ew-aside-link .active {
    background: hsla(var(--ew-hue), 100%, 83%, 0.22);
}
.ew-aside-link .link-head {
    font-size: 0.9em;
}
.ew-aside-link .active .link-head {
    font-weight: bold;
}
.ew-aside-link .link-head i {
    display: inline-block;
    color: rgba(0, 0, 0, 0.74);
    margin-right: 7px;
}
.ew-aside-link .link-body {
    padding: 5px 10px 5px 0;
    font-size: 0.9em;
    color: rgba(0, 0, 0, 0.74);
}
.ew-aside-link .content {
    margin: 10px 25px;
}
.ew-aside-link .state {
    flex-grow: 0;
    width: 70px;
    text-align: center;
    padding: 12px 5px 0 0;
}
.ew-aside-link .state i {
    font-size: 1em;
}

.ew-rating-stars {
    display: inline-block;
    padding: 0 10px;
}
.ew-rating-stars .rating-star {
    display: inline-block;
    width: 22px;
    text-align: center;
}
.ew-rating-stars .rating-star i {
    transition: all 120ms ease-in-out;
    color: rgba(0, 0, 0, 0.56);
}
.ew-rating-stars .rating-star.active i {
    color: #3e3e3e;
    text-shadow: 0 0 0 #ccc;
}
.ew-rating-stars:hover .rating-star.active i {
    color: #7c7c7c;
    text-shadow: 0 0 0 #ccc;
}
.ew-rating-stars .rating-star.hover i, .ew-rating-stars:hover .rating-star.hover i {
    color: black;
    text-shadow: 0 0 0 #ccc;
    transform: scale(1.15);
}

.sortable-container .handle {
    cursor: move;
}
.sortable-container.sortable-disabled .handle {
    cursor: default;
}
.sortable-placeholder {
    /*background: seagreen !important;
    outline: 4px solid crimson;*/
}

.sortable-hover {
    /*outline: 1px solid hsla(var(--ew-hue), 100%, 83%, 1);*/
}

.ew-activity-calendar {
    --activity-cal-min-square-size: 10px;
    --activity-cal-max-square-size: 20px;
    --activity-cal-gap-size: clamp(1px, calc(0.4vw), 5px);
    --activity-cal-border-radius: 2px;

    padding: 30px;
}
.ew-activity-calendar > article {
    width: 100%;
    min-width: 375px;
}
.activity-cal-header {
    margin-bottom: 1rem;
    color: #24292f;
}
.activity-cal-date-range {
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}
.activity-cal-statistics {
    font-size: 0.875rem;
    color: #57606a;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
.activity-cal-scroll-container {
    overflow-x: auto;
    padding-bottom: 1rem;
    margin-bottom: -1rem;
}
.activity-cal-month-labels {
    position: relative;
    height: 20px;
    margin-bottom: 0.5rem;
    color: #57606a;
    font-size: 0.75rem;
}
.activity-cal-month-label {
    position: absolute;
    top: 0;
    /*transform: translateX(-50%);*/
}
.activity-cal-grid {
    display: grid;
    gap: var(--activity-cal-gap-size);
    grid-auto-rows: 1fr;
}
.activity-cal-grid > div {
    aspect-ratio: 1;
    min-width: var(--activity-cal-min-square-size);
    max-width: var(--activity-cal-max-square-size);
    width: 100%;
    background-color: #ebedf0;
    border-radius: var(--activity-cal-border-radius);
    transition: outline 0.1s ease-in-out;
    cursor: pointer;
}
.activity-cal-day-future {
    visibility: hidden;
}
.activity-cal-grid > div[data-level="0"] { background-color: #ebedf0; }
.activity-cal-grid > div[data-level="1"] { background-color: #9be9a8; }
.activity-cal-grid > div[data-level="2"] { background-color: #40c463; }
.activity-cal-grid > div[data-level="3"] { background-color: #30a14e; }
.activity-cal-grid > div[data-level="4"] { background-color: #216e39; }
.activity-cal-grid > div:hover {
    outline: 1px solid #959da5;
}
.activity-cal-legend {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    font-size: 0.75rem;
    color: #57606a;
    justify-content: flex-end;
    flex-wrap: wrap;
    padding: 0.5rem 0;
}
.activity-cal-legend-item {
    display: flex;
    align-items: center;
    cursor: help;
    padding: 0.125rem;
}
.activity-cal-legend-box {
    width: var(--activity-cal-min-square-size);
    height: var(--activity-cal-min-square-size);
    border-radius: var(--activity-cal-border-radius);
}
.activity-cal-legend-box[data-level="0"] { background-color: #ebedf0; }
.activity-cal-legend-box[data-level="1"] { background-color: #9be9a8; }
.activity-cal-legend-box[data-level="2"] { background-color: #40c463; }
.activity-cal-legend-box[data-level="3"] { background-color: #30a14e; }
.activity-cal-legend-box[data-level="4"] { background-color: #216e39; }

@media (max-width: 767px) {
    .ew-activity-calendar {
        padding: 0.5rem;
    }
    .activity-cal-month-labels {
        font-size: 0.7rem;
    }
}

@media (min-width: 768px) {
    .activity-cal-legend-box {
        width: calc(var(--activity-cal-min-square-size) * 1.2);
        height: calc(var(--activity-cal-min-square-size) * 1.2);
    }
}

.activity-stripes-grid {
    display: flex;
    width: 100%;
    height: 44px;
    border-radius: 4px;
    overflow: hidden;
    padding: 5px;
}
.activity-stripes-day {
    height: 100%;
    flex-grow: 1;
    transition: opacity 0.2s ease;
}
.activity-stripes-day:hover {
    opacity: 0.8;
}
.activity-stripes-grid > div[data-level="0"] { background-color: transparent; }
.activity-stripes-grid > div[data-level="1"] { background-color: #9be9a8; }
.activity-stripes-grid > div[data-level="2"] { background-color: #40c463; }
.activity-stripes-grid > div[data-level="3"] { background-color: #30a14e; }
.activity-stripes-grid > div[data-level="4"] { background-color: #216e39; }

@media only screen and (max-width: 768px) {
    .no-mobile, th.no-mobile, tr.no-mobile {
        display: none !important;
    }
    .ew-planner .header th.no-mobile {
        display: table-cell !important;
    }
    /*.ew-planner tr.no-mobile {
        display: table-row !important;
    }
    .ew-planner th.no-mobile {
        display: table-cell !important;
    }*/
    .ew-form {
        padding: 0 10px;
    }
    .ew-wrap > section, .ew-wrap > .ew-wrap-contain > section, .ew-wrap > form > section, .ew-wrap > h2 {
        margin: 25px 0;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    #ew-cover-business-logo {
        width: 300px;
        height: 75px;
        margin: 50px auto 25px auto;
    }
    #ew-dialog-wrap.overlay {
        padding: 40px 20px 60px 20px;
    }
    #ew-dialog, #ew-confirm {
        width: auto;
    }
    .form-label label:only-child {
        display: block;
        padding: 5px 3px 5px 3px;
        color: #000000d4;
    }
    .form-label label:last-child {
        padding-right: 20px;
    }
    .separator.line-top {
        margin: 25px 0 15px 0;
    }
    #ew-confirm .confirm-text {
        padding: 10px 5px;
    }
    .input, input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="number"].color, input[type="url"], input[type="tel"], input[type="color"], input[type="date"], input[type="time"], input[type="submit"], input[type="button"], .button, select, textarea, .ew-editor-wrap {
        padding: 15px 20px;
    }
    button, a.button {
        padding: 15px 20px;
    }
    #ew-dialog-wrap-inline, #ew-dialog-wrap.inline {
        padding: 80px 0;
    }
    .ew-text, .ew-custom {
        padding: 0 5px;
    }
    #ew-dialog .survey-box .ew-text, #ew-dialog .survey-box .ew-text article, #ew-dialog .survey-box .ew-text p {
        padding-left: 0;
        padding-right: 0;
    }
    #ew-header-profile {
        position: unset;
    }
    #ew-header-profile-menu, #ew-header-main-menu {
        top: 0;
        right: 0;
        left: 0;
        font-size: 18px;
    }
    #ew-header-profile-menu {
        width: 100%;
    }
    #ew-header-main-menu {
        right: 70px;
    }
    #ew-header-logo, #ew-header-logo-mobile {
        width: 60px;
        min-width: 60px;
    }
    #ew-header-logo {
        background: no-repeat center url('../img/easework-condense-logo2.svg');
        background-size: 60px;
    }
    #ew-header-logo.white {
        background: no-repeat center url('../img/easework-condense-logo-blanco2.svg');
    }
    #ew-header-logo.black {
        background: no-repeat center url('../img/easework-condense-logo-negro.svg');
    }
    #ew-header-logo-custom {
        display: none;
    }
    .ew-header-icons {
        display: none;
    }
    #ew-header-bar {
        margin-right: 0 !important; /* no space for scroll bar anymore: 10px */
        margin-left: 0 !important;
    }
    #ew-clock-timer {
        transition: all .3s ease-in;
    }

    #ew-feedback {
        display: none;
    }

    .form-input a {
        line-height: 50px;
    }
    .ew-switch > div {
        padding: 15px 5px;
    }
    .ew-multiples .object {
        padding: 15px 10px 15px 20px;
    }
    .ew-multiples a.remove {
        padding-top: 16px;
    }
    #ew-header-profile-menu a.settings, #ew-header-profile-menu a.close, #ew-header-main-menu > header > a.close {
        width: 80px;
    }
    #ew-power-bar section {
        margin: 0 20px;
    }
    #ew-power-bar section > ul > li > a > span.label {
        display: none;
    }
    #ew-power-bar section > ul > li > a > i, #ew-power-bar section > ul > li > a >i:first-child {
        padding: 0 5px;
        opacity: 0.8;
    }
    .ew-tab-mobile {
        display: block;
        padding: 0 20px;
    }
    .ew-tab-mobile a {
        display: block;
    }
    .ew-tab-mobile i {
        display: inline-block;
        width: 50px;
        line-height: 60px;
        font-size: 1.2em;
        text-align: center;
        color: #00000075;
    }
    .ew-tab-mobile span {
        display: inline-block;
        font-size: 1.1em;
        color: #000000d1;
        max-height: 60px;
    }
    .ew-tab-options {
        display: none;
        position: absolute;
        top: 10px;
        left: 10px;
        right: 10px;
        padding: 0;
        z-index: 5000;
        background: rgba(255, 255, 255, 0.97);
        box-shadow: 1px 1px 5px #00000036, 0 0 50px 20px #ffffff55;
    }
    .ew-tab-options.open {
        display: block;
    }
    .ew-tabs ul {
        padding: 0 0 10px 0;
    }
    .ew-tabs li, .ew-tabs a, .ew-tabs li.tab-link a {
        display: block;
    }
    .ew-tabs li.hide, .ew-tabs a.hide, .ew-tabs li.tab-link a.hide {
        display: none;
    }
    .ew-tabs li.tab-link a {
        line-height: 50px;
        max-height: none;
    }
    .ew-tabs li.active {
        display: block !important;
    }
    .ew-tabs li.tab-link a.active {
        border-bottom: 0;
        background: hsla(var(--ew-hue), 100%, 45%, 0.22);
    }
    .ew-tab-options .ew-kebab-menu .ew-context-menu {
        right: auto;
        left: 1px;
    }
    .ew-tab-options .ew-kebab-menu a.kebab-menu.icon-only {
        margin-left: 10px;
    }
    .ew-tabs li.tab-link a i {
        display: inline-block;
        width: 30px;
        text-align: center;
    }
    .ew-context-menu button, .ew-context-menu button:hover, .ew-context-menu button:active, .ew-context-menu a, .ew-context-menu a:hover, .ew-context-menu a:active {
        padding: 15px 12px;
    }
    .ew-context-menu.btn {
        top: 45px;
    }
    .ew-table .header {
        display: none;
    }
    .ew-table.ew-planner tr.header {
        display: table-row;
    }
    .ew-table td .info-wrap {
        display: inline-block;
        padding: 10px 7px;
    }
    /*.ew-table td .info-wrap:first-child {
        padding-left: 15px;
    }
    .ew-table td .info-wrap:last-child {
        padding-right: 15px;
    }*/
    .ew-table td .info-wrap div {
        display: inline-block;
    }
    .ew-table td .info-wrap div.div {
        display: block;
        line-height: 1.2em;
    }
    .ew-table td .info-wrap span.pre {
        color: #00000091;
        margin-right: 7px;
    }
    .ew-table td .info-wrap span.post {
        color: #00000091;
        margin-left: 7px;
    }
    .ew-table .row-primary {

    }
    .ew-table .row-secondary {
        font-size: 0.85em;
        line-height: 1em;
    }
    .ew-table .info-wrap.with-image {
        position: relative;
        width: 44px;
    }
    .ew-table .info-wrap.with-image .ew-inline-profile-image {
        position: absolute;
        top: -5px;
        left: 5px;
    }
    .ew-table .row-secondary .info-wrap {
        padding: 5px 7px;
    }
    .ew-table .row-secondary:last-child {
        margin-bottom: 10px;
    }
    .ew-table .row-secondary .text i {
        margin-right: 0px;
    }
    .ew-table .info-wrap a i {
        margin-right: 7px;
    }
    .ew-table td.only-mobile, .ew-table td.m {
        padding: 0 10px;
    }
    .ew-table td .append {
        display: none;
    }
    .ew-input .input-action a {
        line-height: 50px;
    }
    input.search, .input.search, input[type=search].search {
        padding-left: 60px;
    }
    .ew-button-list article button::after, .ew-button-list article a.button::after {
        height: 56px;
        line-height: 52px;
    }
    .ew-action-bar {
        display: flex;
        flex-wrap: wrap;
        padding-right: 9px;
    }
    .ew-board-section .ew-action-bar, .ew-task-section .ew-action-bar {
        display: block;
    }
    .ew-action-bar button, .ew-action-bar .button {
        width: calc(50% - 15px);
        white-space: nowrap;
        overflow: hidden;
        /*text-overflow: ellipsis;*/
        margin-right: 15px;
        padding-left: 5px;
        padding-right: 5px;
        text-align: center;
    }
    .ew-action-bar button:only-child, .ew-action-bar .button:only-child {
        padding-left: 20px;
        padding-right: 20px;
    }
    .ew-action-bar .ew-context-menu button, .ew-action-bar .ew-context-menu .button {
        padding-left: 12px;
        padding-right: 12px;
        margin-right: 0 !important;
        text-align: left;
    }
    .ew-action-bar button.full-width, .ew-action-bar .button.full-width {
        width: 100%;
    }
    .ew-action-bar button.col-m-4, .ew-action-bar .button.col-m-4 {
        width: calc(25% - 15px);
    }
    .ew-action-bar .ew-kebab-menu {
        width: calc(50% - 15px);
        margin-right: 15px;
    }
    .ew-action-bar button.m-full, .ew-action-bar .button.m-full, .ew-action-bar .ew-kebab-menu.m-full {
        width: calc(100% - 15px);
    }
    .ew-action-bar button.m-half, .ew-action-bar .button.m-half, .ew-action-bar .ew-kebab-menu.m-half {
        width: calc(50% - 15px);
    }
    .ew-action-bar button.m-quarter, .ew-action-bar .button.m-quarter, .ew-action-bar .ew-kebab-menu.m-quarter {
        width: calc(25% - 15px);
    }
    .ew-action-bar button.m-third, .ew-action-bar .button.m-third, .ew-action-bar .ew-kebab-menu.m-third {
        width: calc(33.3% - 15px);
    }
    .ew-action-bar button.m-eighth, .ew-action-bar .button.m-eighth, .ew-action-bar .ew-kebab-menu.m-eighth {
        width: calc(12.5% - 15px);
    }
    .ew-action-bar .ew-kebab-menu button, .ew-action-bar .ew-kebab-menu .button {
        width: 100%;
    }
    .ew-action-bar button:only-child, .ew-action-bar .button:only-child {
        width: auto;
    }
    .ew-action-bar button.full-width, .ew-action-bar .button.full-width {
        width: 100%;
        margin-right: 0;
    }
    .ew-box.card, .ew-box.card:first-child, .ew-box.card:last-child {
        margin-left: 20px;
        margin-right: 20px;
        width: auto;
    }
    .m-center {
        text-align: center;
    }
    .aside-filter {
        display: none;
    }
    .aside-filter.open {
        display: block;
    }
    .ew-map {
        min-height: 220px;
    }
    .ew-card > article {
        margin: 20px;
    }

    .ew-toast-wrap {
        right: 0;
    }

    .ew-toast {
        width: auto;
    }

    .video-iframe {
        position: relative;
        width: 100%;
        padding-bottom: 56.25%;
        height: 0;
        text-align: center;
    }
    .video-iframe iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .fix-scroll-vh.fixed {
        position: relative;
        overflow: auto;
        top: auto;
        bottom: auto;
        height: auto;
        z-index: 90;
    }
    .dropzone .dropzone-text {
        display: none;
    }

    .show-extended {
        margin-top: 10px;
    }

    .ew-lp .rel-links a {
        padding: 10px 0;
    }

    .dev-system-name {
        display: none;
    }

    .ew-rating-stars {
        padding: 0 10px;
    }
    .ew-rating-stars .rating-star {
        width: 30px;
        font-size: 20px;
        line-height: 30px;
    }

    .hover-float-box, .float-box {
        position: relative;
        min-height: 78px;
    }
    .ew-action-bar, .ew-wrap > section.ew-action-bar {
        padding: 0 0 0 14px;
    }
}

.slide-in, .ew-box {
    transform: translateY(50px);
}
.slide-in-right {
    transform: translateX(50px);
}
.slide-in-left {
    transform: translateX(-50px);
}
.slide-in:nth-child(odd) {
    animation-duration: 0.6s;
}
.slide-run {
    animation: ew-slide-in 0.8s ease forwards;
}
.slide-already-visible {
    transform: none;
    animation: none;
}

@keyframes ew-slide-in {
    to { transform: translateY(0); }
}

@keyframes ew-blur-in {
    0% {
        filter: blur(50px);
    }
    100% {
        filter: blur(0px);
    }
}

@keyframes ew-dropzone-highlight {
    0.00% { border-color: #b9b61c; }
    20.00% { border-color: #e1dd10; }
    100.00% { border-color: #b9b61c; }
}

@keyframes ew-dropzone-active {
    0.00% { border-color: #009d02; }
    20.00% { border-color: #0ca293; background: #f2f2f2a3; }
    100.00% { border-color: #009d02; }
}

.animate__300ms {
    --animate-duration: 300ms;
}
.animate__200ms {
    --animate-duration: 200ms;
}
.animate__100ms {
    --animate-duration: 100ms;
}

/* Define your softer pulse animation */
@keyframes pulse-soft {
    from {
        transform: scale3d(1, 1, 1);
    }

    50% {
        transform: scale3d(1.005, 1.005, 1.005);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.ew-pulse-intro {
    animation-name: pulse-soft !important;
    /* You can also make it pulse more slowly on mobile */
    animation-duration: 250ms !important;
}
