/*https://github.com/beercss/beercss*/

/* using blue theme */
body.dark {
    --primary: #9ecaff;
    --on-primary: #003258;
    --primary-container: #00497d;
    --on-primary-container: #d1e4ff;
    --secondary: #bbc7db;
    --on-secondary: #253140;
    --secondary-container: #3b4858;
    --on-secondary-container: #d7e3f7;
    --tertiary: #d6bee4;
    --on-tertiary: #3b2948;
    --tertiary-container: #523f5f;
    --on-tertiary-container: #f2daff;
    --error: #ffb4ab;
    --on-error: #690005;
    --error-container: #93000a;
    --on-error-container: #ffb4ab;
    --background: #1a1c1e;
    --on-background: #e2e2e6;
    --surface: #121316;
    --on-surface: #e2e2e6;
    --surface-variant: #43474e;
    --on-surface-variant: #c3c7cf;
    --outline: #8d9199;
    --outline-variant: #43474e;
    --shadow: #000000;
    --scrim: #000000;
    --inverse-surface: #e2e2e6;
    --inverse-on-surface: #2f3033;
    --inverse-primary: #0061a4;
    --surface-dim: #121316;
    --surface-bright: #38393c;
    --surface-container-lowest: #0d0e11;
    --surface-container-low: #1a1c1e;
    --surface-container: #1e2022;
    --surface-container-high: #282a2d;
    --surface-container-highest: #333538;
}

html,
body {
    overflow: hidden;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

#canvas3D {
    width: 100%;
    height: 100%;
    touch-action: none;
}

#container {
    width: 100%;
    height: 100%;
}

.zindex20 {
    z-index: 20;
}

.zindex10 {
    z-index: 10;
}

.zindex5 {
    z-index: 5;
}

.no-circle {
    border-radius: 0;
}

.step-btn {
    flex-grow: 0;
}

#right-floating-btns {
    background-color: transparent;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 0;
    flex-shrink: 0;
}

.right-floating-btn {
    flex-grow: 0;
    border: none !important;
}

.step-line {
    flex-grow: 1;
    display: flex;
    direction: row;
    justify-content: center;
}

.vert {
    display: inline;
    height: auto;
    width: 1px;
    border: 1px inset;
    margin: 0px;
    color: var(--primary);
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

#wizard {
    display: flex;
    flex-direction: row;
}

.w-100 {
    width: 100%;
}

.h-100 {
    height: 100%;
}

.fixed-centered {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.absolute-centered {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

#stepper {
    background-color: transparent;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 0;
    flex-shrink: 0;
}

#settings {
    background-color: transparent;
    display: flex;
    flex-direction: column;
    flex-grow: 0;
    flex-shrink: 0;
}

#img-container {
    flex-grow: 1;
    flex-shrink: 1;
    margin-left: 0.5rem;
    display: flex;
    flex-direction: row;
}

#colors-palette-nav {
    flex-wrap: wrap;
    /* allow ~7 colors in the same line than wrap */
    max-width: calc(2.5rem*7);
}

.color-change {
    display: inline-block;
    min-width: 2rem;
    min-height: 1rem;
    border-style: solid;
    border-width: 1px;
}

.img-half {
    flex-grow: 0;
    flex-shrink: 1;
    width: 50%;
}

.img-preview {
    object-fit: contain;
    border: 0 !important;
}

.justify-start {
    justify-content: start;
}

.justify-end {
    justify-content: end;
}

.justify-center {
    justify-content: center;
}

.bg-black-opacity30 {
    background-color: #00000030 !important;
}

.tiny-blur {
    ---blur: .25rem;
}

.flex-wrap {
    flex-wrap: wrap;
}

[x-cloak] {
    display: none !important;
}

.mr-025 {
    margin-right: 0.25rem;
}