﻿body,
html {
    margin: 0;
    padding: 0;
    height: 100vh;
    font-family: ArtifaktElement;
    background: white;
}


.containerRend {
    display: grid;
    gap: 20px;
    height: 90vh;
    /* ! */
    grid-template-columns: 70% 30%;
}

.resizeElm {
    border-left-color: white;
    max-height: 88%;
    overflow: auto;
    overflow-x: hidden;
}

#header,
#viewer-3d,
#container #overlay {
    position: sticky;
    width: 100%;
}

#header {
    height: 3em;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
}

#viewer-3d,
#overlay {
    top: 3em;
    bottom: 0;
    border-right: double;
}

#overlay {
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 1em;
    display: none;
}

#overlay>.notification {
    margin: auto;
    padding: 1em;
    max-width: 50%;
    background: white;
}

#header>* {
    height: 2em;
    margin: 0 0.5em;
    font-size: 1em;
    font-family: ArtifaktElement;
}

#header .title {
    flex: 1 0 auto;
    height: auto;
}

#models {
    flex: 0 1 auto;
    min-width: 2em;
}

*,
*::before,
*::after {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit;
}

#app {
    width: 100%;
    height: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

.resizable-x,
.resizable-y {
    display: flex;
    overflow: hidden;
}

.resizable-x {
    height: 100%;
}

.resizable-y {
    flex-direction: column;
}

.resizer-x,
.resizer-y {
    position: relative;
    display: flex;
    justify-content: center;
    /*align-items: center;*/
    background: white;
    padding: 0px;
}

.resizer-x {
    z-index: 2;
    cursor: col-resize;
}

.resizer-x::before,
.resizer-x::after {
    content: "";
    width: 0.2px;
    height: 100%;
    margin: 1px;
    background: #919090;
}

.resizer-y {
    z-index: 1;
    cursor: row-resize;
    flex-direction: column;
}

.resizer-y::before,
.resizer-y::after {
    content: "";
    width: 0px;
    height: 1px;
    margin: 1px;
    background: black;
}


/*donwload button*/
.dnbtn {
    border: 2px solid #0ff;
    border-radius: 50px;
    position: absolute;
    color: #0ff;
    padding: 25px 0 0 0;
    width: 50px;
    height: 25px;
    text-decoration: none;
    transition: .3s;
}

.dnbtn:before {
    font-family: 'ionicons';
    content: '\f2dd';
    font-size: 26px;
    color: #0ff;
    position: absolute;
    transform: translate(-50%, -50%);
    transition: .3s;
}

.dnbtn:hover:before {
    display: none;
}

.dnbtn:hover:after {
    font-family: Prompt;
    content: 'DOWNLOAD';
    color: #0ff;
    font-size: 18px;
    position: absolute;
    transform: translate(-50%, -50%);
    transition: .3s;
    animation: fadein .3s;
}

.dnbtn:hover {
    width: 160px;
}

.vertical-button {
    background-color: #919090;
    color: white;
    border: 0px solid #595858;
    border-radius: 0%;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-weight: bold;
}

.z-index-max {
    z-index: 9999;
}



/*progress-bar*/
.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40%;
    background-color: #fff;
    padding: 20px;
    border-radius: 5px;
}


#customText {
    text-align: center;
    font-weight: bold;
    font-size: 24px;
}


.progress-bar {
    min-width: 40%;
    width: 86%;
    height: 20px;
    background-color: #f0f0f0;
    border-radius: 5px;
    overflow: hidden;
    margin: 0 auto;
    position: relative;
}

.progress {
    height: 100%;
    background-color: #4CAF50;
    width: 0;
}

#percent {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    font-weight: bold;
}

/*end progress-bar*/

/* i.jstree-icon.jstree-themeicon */

.custom-icon {
    background-image: url("/img/eye-open.png");
    /* Path to new icon */
    background-size: contain;
    width: 24px;
    height: 24px;
    float: right;
    margin-right: 50px;
    vertical-align: middle;
    z-index: 9999;
}

/* .jstree-hovered */
.custom-close-icon {
    background-image: url("/img/eye-close.png");
    background-size: contain;
    width: 24px;
    height: 24px;
    float: right;
    margin-right: 50px;
    vertical-align: middle;
    z-index: 9999;
}



ul {
    list-style: none;
    padding-left: 20px;
}



.closedNode:before {
    content: "";
    margin-right: 5px;
}

.openNode:before {
    content: "";
}

li:hover {
    background-color: #f0f0f0;
    cursor: pointer;
}

.tree-node {
    padding-right: 10px;
    position: relative;
}

.closedExpandNodes:before {
    content: "▶";
    margin-right: 5px;
}

.openExpandNodes:before {
    content: "▼";
}



.toggle-button {
    cursor: pointer;
    margin-left: 5px;
    color: blue;
    text-decoration: underline;
}

.collapsed {
    display: none;
}

.icon-open {
    margin-right: 5px;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 16px;
    background-size: contain;
    /* Path to new icon */
    background-image: url("/img/eye-open.png");
}

.icon-closed {
    margin-right: 5px;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 16px;
    background-size: contain;
    /* Path to new icon */
    background-image: url("/img/eye-close.png");
}

.color-picker {
    width: 19px;
    height: 12px;
    position: sticky;
    float: right;
    margin-right: 25px;
}

.button-container {
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 100%;
}

.setect-container {
    position: absolute;
    top: 0;
    z-index: 1;
    width: 100%;
}

/* 
.adn-model-structure-panel .docking-panel-scroll div:first-child {
    width: 370px;
    height: 530px;
    min-width: 370px;
    min-height: 530px;
  } */

/*Color picker*/


:root {
    --button_radius: "25px";
    --button_color: #e8e8e8;
    --button_outline_color: #000000;
}

.swatchy-color-button {
    cursor: pointer;
}

.swatchy-display {
    margin: 4px;
    height: 48px;
    max-width: 48px;
    border-radius: 8px;

}


.swatchy-button {
    float: right;
    margin-right: 25px;
    /* Variables */
    width: 13px;
    height: 13px;
    border-radius: 2%;
    padding: 0;
}

.swatchy-button-top {
    border-radius: var(--button_radius);
    background: var(--button_color);
    color: var(--button_outline_color);
    transform: translateY(-0.2em);
    transition: transform 0.1s ease;
    border-radius: 50%;
}

.swatchy-button:hover .swatchy-button-top {
    /* Pull the button upwards when hovered */
    transform: translateY(-0.33em);
}

.swatchy-button:active .swatchy-button-top {
    /* Push the button downwards when pressed */
    transform: translateY(0);
}

.modal-color-picker {
    display: none;
    position: absolute;
    border-radius: 10px;
    border: 1px solid #ccc;
    padding: 0.1px;
    resize: both;
    overflow: hidden;
    min-width: 325px;
    min-height: 402px;
    z-index: 99;
}

.modal-content-color-picker {
    background-color: #f9f9f9;
    border-radius: 10px;
    padding: 1px;
    position: relative;
}


.modal-header-color-picker {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    /* Добавить курсор "перемещения" для заголовка */
}


.modal-body-color-picker {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    grid-gap: 10px;
    padding: 10px;
}

.modal-body-color-picker .swatchy-color-button {
    width: 100%;
    padding-top: 100%;
    background-color: #ccc;
    border-radius: 50%;

}

.error-message-color-picker {
    color: red;
    z-index: 34;
}

.close-button-color-picker {
    position: absolute;
    top: 0.01px;
    right: 0.001px;
    cursor: pointer;
    border: 1px solid #ccc;
    background-color: #e80a0a42;
    border-top-left-radius: 2px;
    border-top-right-radius: 10px;
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}




.modal-footer-color-picker input {
    width: auto;
    min-width: 100px;
    flex-grow: 1;

}




.modal-footer-color-picker button {
    flex-shrink: 0;

}


.modal-footer-color-picker {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    text-align: right;
    border-top: 1px solid #ccc;
    display: flex;
    justify-content: space-between;
    background-color: #f0f0f0;
    flex-wrap: wrap;
    max-width: calc(100% - 20px);

    max-height: 100%;

    overflow: hidden;

}

.btn-bg-laigt-gray {
    background-color: #878484;
    border: #595858;
}

.btn-bg-laigt-gray:hover {
    background-color: #292929;
}



.modal-color-helper {
    display: none;
    position: absolute;
    box-shadow: 1px 1.5px 1px 1.5px rgb(210, 208, 208);
    border-radius: 5px;
}


.modal-content-color-helper {
    width: 60px;
    height: 208px;
    background-color: #fffbfb;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    align-items: center;

}


/* .close {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 20px;
    cursor: pointer;
} */


.vertical-panel {
    width: 51px;
    height: 204px;
    background-color: #f0f0f000;
    padding: 1px;
    display: flex;
    flex-direction: column;
    align-items: center;
}


.square-button {
    width: 40px;
    height: 50px;
    color: #fff;
    text-align: center;
    margin-bottom: 5px;
    cursor: pointer;
    border: 1px;
    border-radius: 5px;
    align-items: center;
}


.square-button:hover {

    outline: solid 1px rgb(59, 157, 227);
}


.dropdown-list {
    display: block;
    width: 50px;
    height: 50px;
    background-color: #007bff;
}


.dropdown-list.show {
    display: block;
    position: absolute;
    top: 0;
    left: 51px;
    background-color: #fff;
    padding: 1px;
}

.interactive-element {
    width: 40px;
    height: 50px;
    cursor: pointer;
    position: relative;
    background-color: rgb(255, 255, 255);
    background-size: 32px 32px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    margin-bottom: 5px;
    margin-top: 5px;
    border: transparent;
    border-radius: 5px;
}

.interactive-element:hover {
    outline: solid 1px rgb(59, 157, 227);
}

.interactive-element-inner {
    width: 0px;
    height: 40px;
    background-color: rgb(255, 255, 255);
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    transition: width ease;
    transition-duration: 0.9s;
    border-radius: 5px;
    padding-bottom: 5px;
    left: 60px;
    cursor: pointer;
    border: none;

}

.interactive-element.active .interactive-element-inner {
    width: 290px;
    /* outline: solid 1px  rgb(128, 131, 133); */
    border-radius: 0px 5px 5px 0px;
    box-shadow: 1px 1.5px 1px 1.5px rgb(210, 208, 208);


}

.modal-placeholder {
    display: none;
    position: fixed;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-color: rgba(97, 8, 176, 0.33);
    cursor: wait;
}


.modal-placeholder-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.test-button {
    display: block;
    position: absolute;
    top: 0;
    left: 51px;
    padding: 1px;
}

/* custom panel styles  */
.combo-button {
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("/img/level_off.png");
}

.combo-button-active {
    background-size: 26px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("/img/level_on.png");
}

.center-bottom-text {
    font-size: 12px;
    text-align: center;
    margin-left: 0rem;

}
.line-with-margin{
    padding-top: 1rem;
}
.item-level {
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center;

}

.adsk-control.adsk-button.inactive.item-level:hover {
    border: none;
    color: rgb(60, 132, 239);
}

.custom-ico-btn {
    background-size: 26px;
    background-repeat: no-repeat;
    background-position: center;
}

/* end combo button  */

.total-length-table {
    padding-right: 3.2rem;
    padding-top: 0.5rem;
    float: right;
    text-align: center;
    font-weight: bold;

}

.total-length-conteiner {
    background-color: #dfdcdc81;
    width: auto;
    border-radius: 0.1rem;
    height: 2.6rem;
}

.total-param-text {
    padding: 0.5rem 0rem 0rem 1rem;
    float: left;
    text-align: center;
    font-weight: bold;
}
