.dui-board {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--dui-board-gap);
    background-color: var(--dui-board-background-color);
    border-radius: var(--dui-board-border-radius);
    padding: var(--dui-board-padding);
}

.dui-board-header {
    margin: var(--dui-board-header-margin);
    padding-left: var(--dui-board-header-padding-left);
    padding-right: var(--dui-board-header-padding-right);
    min-height: var(--dui-board-header-min-height);
    order: var(--dui-order-10);
}

.dui-board-body {
    display: flex;
    width: 100%;
    min-height: var(--dui-board-body-min-height);
    order: var(--dui-order-20);
    gap: var(--dui-board-body-gap);
    overflow-x: scroll;
}

.dui-board-column {
    min-width: var(--dui-board-column-min-widht);
    box-shadow: none;
    background-color: var(--dui-board-column-background);
}

.dui-board-card-header,
.dui-board-column-header {
    border-width: var(--dui-board-group-header-border-width);
    border-bottom-color: var(--dui-context-color);
}

.dui-board-column-body {
    flex-grow: 1;
}

.dui-lists-board .dui-board-body {
    flex-direction: column;
    padding: var(--dui-list-board-body-padding);
}

.dui-board-list {
    min-height: var(--dui-board-list-min-height);
    box-shadow: none;
    background-color: var(--dui-board-list-background-color);
    flex-shrink: 0;
}

.dui-board-list-body {
    display: flex;
    flex-direction: column;
    gap: var(--dui-board-list-gap);
    flex-grow: 1;
}

.dui-board-list-header {
    border-width: var(--dui-board-list-header-border-width);
    border-bottom-color: var(--dui-board-list-header-border-color);
}

.dui-board-list-item {
    display: flex;
    background-color: var(--dui-board-list-item-background-color);
    border-radius: var(--dui-board-list-item-border-radius);
    box-shadow: var(--dui-board-list-item-box-shadow);
    border: var(--dui-spc-px) solid var(--dui-context-color);
}

.dui-board-list-item-body {
    width: 100%;
    padding: var(--dui-board-list-item-body-padding);
}.dui-colorpicker-hsv-container {
  --dui-thumb-border-size: calc(calc(var(--dui-color-picker-thumb-size) - var(--dui-color-picker-thumb-window-size)) / 2);

  position: relative;
  width: var(--dui-color-picker-hsv-width);
  height: var(--dui-color-picker-hsv-height);
  overflow: hidden;
  border: var(--dui-color-picker-hsv-border);
  border-radius: var(--dui-color-picker-hsv-border-radius);
}

.dui-colorpicker-constraint {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  padding: var(--dui-color-picker-gutter);
}

.dui-colorpicker-hsv-picker-overlay {
  border-radius: var(--dui-color-picker-hsv-border-radius);
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.dui-colorpicker-hsv-background {
}

.dui-colorpicker-hsv-saturation {
  background: linear-gradient(to right, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

.dui-colorpicker-hsv-value {
  background: linear-gradient(to bottom, transparent 0%, #000 100%);
}

.dui-colorpicker-hue-container {
  --dui-thumb-border-size: calc(calc(var(--dui-color-picker-thumb-size) - var(--dui-color-picker-thumb-window-size)) / 2);

  --component-height: var(--dui-color-picker-hue-height);
  --component-width: var(--dui-color-picker-hue-width);
  --gradient-direction: to right;

  --slider-background: linear-gradient(var(--gradient-direction),
  hsl(0, 100%, 50%), hsl(60, 100%, 50%),
  hsl(120, 100%, 50%), hsl(180, 100%, 50%),
  hsl(240, 100%, 50%), hsl(300, 100%, 50%),
  hsl(360, 100%, 50%));

  position: relative;
  width: var(--component-width);
  height: var(--component-height);
  overflow: hidden;
}

.dui-colorpicker-hue-container[data-orientation=VERTICAL] {
  --component-height: var(--dui-color-picker-hue-width);
  --component-width: var(--dui-color-picker-hue-height);
}


.dui-colorpicker-thumb:before {
  content: " ";
  position: absolute;
  top: calc(var(--dui-thumb-border-size) * -1);
  left: calc(var(--dui-thumb-border-size) * -1);
  border: var(--dui-color-picker-thumb-border);
  border-radius: 50%;
  height: var(--dui-color-picker-thumb-size);
  width: var(--dui-color-picker-thumb-size);
  box-sizing: border-box;
}

.dui-colorpicker-thumb {
  border: var(--dui-thumb-border-size) solid var(--dui-color-picker-thumb-color);
  box-sizing: border-box;
  display: inline-block;
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  z-index: 3;
  width: var(--dui-color-picker-thumb-size);
  height: var(--dui-color-picker-thumb-size);
  top: calc(50% - calc(var(--dui-color-picker-thumb-size) / 2));
  left: 0;
}

.dui-colorpicker-hue-container[data-orientation=VERTICAL] .dui-colorpicker-thumb {
  top: 0;
  left: calc(50% - calc(var(--dui-color-picker-thumb-size) / 2));
}

.dui-colorpicker-hue-sliderBackground:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;

  background-image: linear-gradient(45deg, rgba(0, 0, 0, .2) 25%, transparent 25%),
  linear-gradient(-45deg, rgba(0, 0, 0, .2) 25%, transparent 25%),
  linear-gradient(45deg, transparent 75%, rgba(0, 0, 0, .2) 75%),
  linear-gradient(-45deg, transparent 75%, rgba(0, 0, 0, .2) 70%);
  background-size: 10px 10px;
  background-position: 0 0, 0 5px, 5px -5px, -5px 0;
}

.dui-colorpicker-hue-sliderBackground:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;

  background: var(--slider-background);
}


.dui-colorpicker-hue-sliderBackground {
  position: relative;
  border-radius: 24px;
  height: var(--dui-color-picker-hue-track-size);
  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-sizing: border-box;

  top: calc(50% - calc(var(--dui-color-picker-hue-track-size) / 2));
  overflow: hidden;
}

.dui-colorpicker-hue-container[data-orientation=VERTICAL] .dui-colorpicker-hue-sliderBackground {
  height: 100%;
  width: var(--dui-color-picker-hue-track-size);

  left: calc(50% - calc(var(--dui-color-picker-hue-track-size) / 2));
  top: 0;
}


.dui-colorpicker-swatch-value:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(45deg, rgba(0, 0, 0, .2) 25%, transparent 25%),
  linear-gradient(-45deg, rgba(0, 0, 0, .2) 25%, transparent 25%),
  linear-gradient(45deg, transparent 75%, rgba(0, 0, 0, .2) 75%),
  linear-gradient(-45deg, transparent 75%, rgba(0, 0, 0, .2) 70%);
  background-size: 10px 10px;
  background-position: 0 0, 0 5px, 5px -5px, -5px 0;
}

.dui-colorpicker-swatch-value:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--swatch-color);
}

.dui-colorpicker-swatch-value {
  width: var(--dui-color-picker-swatch-size);
  height: var(--dui-color-picker-swatch-size);
  border-radius: 50%;
  border: var(--dui-color-picker-thumb-border);
  overflow: hidden;
  position: relative;

  --swatch-color: white;
}

.dui-colorpicker:focus {
  outline: none;
}


/* color picker button */
.dui-cpb {
  --swatch-color: #ffffff;
  --swatch-size: 20px;
}

.dui-cpb > .dui-btn-body:before {
  content: "";
  width: var(--swatch-size);
  height: var(--swatch-size);
  margin-right: 2px;
  background-color: var(--swatch-color);
  border: 1px solid black;
}

.dui-colorpicker-picker-field > .dui-field-label {
  font-size: 9pt;
}.dui-counter {
    --dui-counter-gradient:url(#duiCounterGradientColor);
    display: inline-block;
}

.dui-counter-main {
    width: var(--dui-counter-size);
    height: var(--dui-counter-size);
    position: relative;
}

.dui-counter-outer {
    height: var(--dui-counter-size);
    width: var(--dui-counter-size);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dui-counter-inner {
    height: calc(var(--dui-counter-size) - var(--dui-counter-section-width));
    width: calc(var(--dui-counter-size) - var(--dui-counter-section-width));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dui-counter-text {
    font-size: 32px;
    font-weight: 600;
}

.dui-counter-circle {
    position: absolute;
    width: var(--dui-counter-size);
    height: var(--dui-counter-size);
    transform: rotate(-90deg);
    transform-origin: center;
}

.dui-counter-circle circle{
    stroke-width: calc(var(--dui-counter-section-width) / 2);
    stroke: var(--dui-counter-gradient);
    stroke-dasharray: var(--dui-counter-end);
    stroke-dashoffset: calc(var(--dui-counter-end) - var(--dui-counter-value));
    stroke-linecap:round;
    fill: none;
    transition: stroke-dashoffset var(--dui-counter-animation-duration) ease-in-out;
}

.dui-date-counter {
    display: flex;
    gap: var(--dui-spc-4);
}

.dui-date-counter.dui-horizontal {
    flex-direction: row;
}

.dui-date-counter.dui-vertical {
    flex-direction: column;
}

.dui-date-counter-years {
    order: 10;
}

.dui-date-counter-months {
    order: 20;
}

.dui-date-counter-days {
    order: 30;
}

.dui-date-counter-hours {
    order: 40;
}

.dui-date-counter-minutes {
    order: 50;
}

.dui-date-counter-seconds {
    order: 60;
}.dui-live-grid tbody {
    display: block;
}.dui-menu-bar {
    display: flex;
    gap: var(--dui-menu-bar-gap);
    align-items: center;
    margin: var(--dui-menu-bar-margin);
    padding: var(--dui-menu-bar-padding);
    height: var(--dui-spc-8);
}

.dui-menu-bar-list {
    display: flex;
    gap: var(--dui-menu-bar-entries-gap);
    justify-content: start;
    align-items: center;
    list-style: none;
    margin: var(--dui-menu-bar-list-margin);
    padding: var(--dui-menu-bar-list-padding);
    flex-grow: 1;
    height: 100%;
}

.dui-menu-bar-prefix {
    display: flex;
    justify-content: start;
    align-items: center;
    order: var(--dui-order-first);
    gap: var(--dui-menu-bar-entries-gap);
}

.dui-menu-bar-postfix {
    display: flex;
    justify-content: end;
    align-items: center;
    order: var(--dui-order-last);
    gap: var(--dui-menu-bar-entries-gap);
}

.dui-menu-entry {
    cursor: pointer;
    /*height: var(--dui-menu-bar-menu-entry-height);*/
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dui[class*="dui-bg-"] .dui-menu-entry.dui-active,
.dui[class*="dui-bg-"] .dui-menu-entry:hover,
.dui[class*="dui-bg-"] .dui-menu-entry:focus {
    background-color: var(--dui-menu-entry-focus-bg, var(--dui-bg, var(--dui-accent-clr)));
}

.dui-menu-entry.dui-active,
.dui-menu-entry:hover,
.dui-menu-entry:focus {
    background-color: var(--dui-menu-entry-focus-bg, var(--dui-bg-d-2, var(--dui-accent-d-2)));
    color: var(--dui-accent-text-color, var(--dui-text-color, var(--dui-color)));
}
.dui-menu-entry-anchor {
    height: 100%;
    padding: var(--dui-menu-bar-menu-entry-padding);
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 2px solid transparent;
}

.dui-menu-entry-anchor:focus {
    outline: none;
    background-color: var(--dui-menu-entry-focus-bg, var(--dui-bg-d-1, var(--dui-accent-d-1)));
    color: var(--dui-accent-text-color, var(--dui-text-color, var(--dui-color)));
    border-bottom: 2px solid var(--dui-menu-entry-focus-bg, var(--dui-bg-d-4, var(--dui-accent-d-4)));

}

.dui-menu-entry.dui-active:focus-within .dui-menu-entry-anchor:focus {
    background-color: var(--dui-menu-entry-focus-bg, var(--dui-bg-d-3, var(--dui-accent-d-3)));
}.dui-range-slider {
    position: relative;
    height: 48px;
    width: 100%;
    margin: var(--dui-slider-margin);
}

.dui-range-slider-track {
    width: 100%;
    height: 5px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    border-radius: 5px;
}

.dui-range-slider .dui-slider {
    width: 100%;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    background-color: transparent;

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

    outline: none;
    pointer-events: none;
}
.dui-range-slider .dui-slider input[type="range"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    outline: none;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    background-color: transparent;
    pointer-events: none;
}

.dui-range-slider .dui-slider input[type="range"]::-webkit-slider-runnable-track {
    -webkit-appearance: none;
    height: 5px;
}
.dui-range-slider .dui-slider input[type="range"]::-moz-range-track {
    -moz-appearance: none;
    height: 5px;
}
.dui-range-slider .dui-slider input[type="range"]::-ms-track {
    appearance: none;
    height: 5px;
}
.dui-range-slider .dui-slider input[type="range"]::-webkit-slider-thumb {
    height: var(--dui-slider-thumb-height);
    width: var(--dui-slider-thumb-width);
    border-radius: var(--dui-slider-thumb-radius);
    background-color: var(--dui-slider-thumb-background, var(--dui-accent-l-1));
    cursor: var(--dui-slider-cursor);
    border: var(--dui-slider-thumb-border);
    margin: var(--dui-slider-thumb-margin);
    pointer-events: auto;
    -webkit-appearance: none;
}
.dui-range-slider .dui-slider input[type="range"]::-moz-range-thumb {
    box-shadow: var(--dui-slider-thumb-box-shadow);
    border: var(--dui-slider-thumb-border);
    height: var(--dui-slider-thumb-height);
    width: var(--dui-slider-thumb-width);
    border-radius: var(--dui-slider-thumb-radius);
    background-color: var(--dui-slider-thumb-background, var(--dui-accent-l-1));
    cursor: var(--dui-slider-cursor);
    pointer-events: auto;
    -webkit-appearance: none;
}
.dui-range-slider .dui-slider input[type="range"]::-ms-thumb {
    box-shadow: var(--dui-slider-thumb-box-shadow);
    border: var(--dui-slider-thumb-border);
    height: var(--dui-slider-thumb-height);
    width: var(--dui-slider-thumb-width);
    border-radius: var(--dui-slider-thumb-radius);
    background-color: var(--dui-slider-thumb-background, var(--dui-accent-l-1));
    cursor: var(--dui-slider-cursor);
    pointer-events: auto;
    -webkit-appearance: none;
}
.dui-range-slider .dui-slider input[type="range"]:active::-webkit-slider-thumb {
    background-color: #FFFFFF;
    border: 1px solid var(--dui-slider-thumb-background, var(--dui-accent-l-1));
}

.dui-range-slider .dui-slider-input::-webkit-slider-runnable-track {
    appearance: none;
    background-color: transparent;
}

.dui-range-slider .dui-slider-input:focus::-webkit-slider-runnable-track {
    appearance: none;
    background-color: transparent;
}

.dui-range-slider .dui-slider-input::-moz-range-track {
    appearance: none;
    background-color: transparent;
}

.dui-range-slider .dui-slider-input::-ms-track {
    appearance: none;
    background-color: transparent;
}.dui-theme-default {

  /* ================== Color Picker =================== */
  --dui-color-picker-gutter: var(--dui-spc-2);

  --dui-color-picker-thumb-size: var(--dui-spc-8);
  --dui-color-picker-thumb-window-size: var(--dui-spc-4);
  --dui-color-picker-thumb-color: var(--dui-accent);
  --dui-color-picker-thumb-border: 1px solid rgba(0, 0, 0, 0.1);

  --dui-color-picker-swatch-size: var(--dui-spc-16);

  --dui-color-picker-hsv-height: var(--dui-spc-52);
  --dui-color-picker-hsv-width: var(--dui-spc-52);
  --dui-color-picker-hsv-border: 1px solid rgba(0, 0, 0, 0.1);
  --dui-color-picker-hsv-border-radius: var(--dui-spc-1_5);

  --dui-color-picker-hue-height: var(--dui-spc-12);
  --dui-color-picker-hue-width: 100%;
  --dui-color-picker-hue-track-size: var(--dui-spc-3);

  /* ======================== Counter ======================== */

  --dui-counter-size:var(--dui-spc-40);
  --dui-counter-section-width:var(--dui-spc-5);
  --dui-counter-start-color:var(--dui-accent-d-4);
  --dui-counter-stop-color:var(--dui-accent);
  --dui-counter-animation-duration:500ms;

  /* =================== MenuBar ======================== */

  --dui-menu-bar-gap: var(--dui-spc-4);
  --dui-menu-bar-entries-gap: var(--dui-spc-2);
  --dui-menu-bar-padding: 0 var(--dui-spc-2);
  --dui-menu-bar-list-padding: 0 var(--dui-spc-2);
  --dui-menu-bar-margin: 0;
  --dui-menu-bar-list-margin: 0;
  --dui-menu-bar-menu-entry-padding: 0 var(--dui-spc-2);
  --dui-menu-bar-menu-entry-height: var(--dui-spc-8);

  /* ===================== Boards ==================================== */

  --dui-board-gap: var(--dui-spc-1);
  --dui-board-background-color: var(--dui-clr-dominant-d-2);
  --dui-board-border-radius: var(--dui-spc-1);
  --dui-board-padding: var(--dui-spc-2);
  --dui-board-header-min-height: var(--dui-spc-12);
  --dui-board-header-margin: 0;
  --dui-board-header-padding-left: 0;
  --dui-board-header-padding-right: 0;
  --dui-board-body-min-height: var(--dui-spc-8);
  --dui-board-body-gap: var(--dui-spc-4);
  --dui-board-column-min-widht: var(--dui-spc-48);
  --dui-board-column-background: var(--dui-clr-dominant-d-1);
  --dui-board-group-header-border-width: var(--dui-spc-px);
  --dui-list-board-body-padding: var(--dui-spc-4);
  --dui-board-list-min-height: var(--dui-spc-48);
  --dui-board-list-background-color: var(--dui-clr-dominant-d-1);
  --dui-board-list-gap: var(--dui-spc-2);
  --dui-board-list-header-border-width: var(--dui-spc-px);
  --dui-board-list-header-border-color: var(--dui-context-color);
  --dui-board-list-item-background-color: var(--dui-clr-dominant);
  --dui-board-list-item-border-radius: var(--dui-spc-1);
  --dui-board-list-item-box-shadow: var(--dui-box-shadow-2);
  --dui-board-list-item-border: var(--dui-board-list-header-border-width) solid var(--dui-context-color);
  --dui-board-list-item-body-padding: var(--dui-spc-1) 0;

}