:root {
	--panel: rgba(249,244,235,255);
    --panelactive: rgba(242,233,215,255);
    --selected:rgba(153,0,0,255);
    --borders: rgba(153,153,153,255);
    --fontC:#A29B86;
}
#AppContainer{
    display: flex;
    flex-direction: column;
}
/* --------------------------------------------------------------------------------------------------------------------------- */
#configurationWrapper{
    display: flex;
    flex: 80%;
    position: relative;
    justify-content: center;
    align-items: center;
}
#ServexMain{
    margin: auto;
    width: 74%;
}
div img{
    width: 100%;
    height: 100%;
}
div img.mask{
    width: inherit;
    height: inherit;
    position: absolute;
}
div#toolbox{
    position: absolute;
    bottom: 1%;
    right: 12.92%;
    display: flex;
    flex-direction: column;
}
#pdfContainer{
    position: relative;
    left: 70%;
    margin-top: 1vh;
    width: 7vw;
    height: 5vh;
    overflow: hidden;
    border-right: 2px solid var(--borders);
}
#PDF-button{
    position: relative;
    top: 6%;
    left: 55%;
    cursor: pointer;
    width: 8.3vh;
    height: 4vh;
    display: grid;
    text-align: center;
    align-items: center;
    background-color: var(--panel);
    border-radius: 0.8em;
    box-shadow: -1px 1px 3px #000000;
}
#PDF-button i{
    position: relative;
    font-size: 2.7vh;
    right: 10%;
}
#PDF-button:hover {
    background-color: var(--panelactive);
}
#toolbox div.info{
    display: grid;
    position: absolute;
    border-radius: 10px;
    background-color: #f6f2e4b8;
    padding: 2px;
    width: 6vw;
    height: 5vh;
    bottom: 2%;
    left: 55%;
    font-size: 80%;
    text-align: center;
    align-items: center;
    box-shadow: 1px 1px 3px black;
}
@keyframes WCslideIn{
	from {transform: translate(101%);}
	to {transform: translate(0%);}
}
@keyframes WCslideOut{
	from {transform: translate(0%);}
	to {transform: translate(101%);}
}
.WCin{
    animation-name: WCslideIn;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
}
.WCout{
    animation-name: WCslideOut;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
}
div#Walls-Menu{
    position: relative;
    left: 0%;
    cursor: pointer;
    width: 23.5vw;
    height: 7.5vh;
    overflow-x: hidden;
    overflow-x: clip;
    border-right: 2px solid var(--borders)
}
div#Walls-Menu div.Walls-inner{
    width: 29%;
    height: 85%;
    position: relative;
    top: 6%;
    left: 78%;
    display: grid;
    text-align: center;
    align-items: center;
    padding: 10px;
    background-color: var(--panel);
    border-radius: 1em;
    box-shadow: -1px 1px 3px #000000;
    color: var(--fontC);
    font-size: 1.4vh;
}
div.Walls-inner div.title{
    width: 80%;
    position: relative;
    right: 7%;
    background-color: transparent;
}
div.Walls-inner:hover {
    background-color: var(--panelactive);
}
div#Walls-options{
    position: relative;
    right: -8%;
    bottom: 90%;
    width: 23vw;
    height: 8vh;
    display: flex;
    align-items: center;
    border-radius: 1em;
    background-color: var(--panel);
    box-shadow: -1px 1px 3px #000000;
}
div#Walls-options div.options{
    display: flex;
    flex-direction: row;
    width: 90%;
    height: 80%;
    align-items: center;
}
div#Walls-options div.Wall-color{
    width: 20%;
    display: flex;
    flex-direction: column;
    margin: 0px 1px;
    padding: 3px;
    text-align: center;
    align-items: center;
    border-radius: 1em;
}
div.Wall-color div.swatch{
    width: 60%;
}
div.Wall-color div.swatch img{
    border-radius: 4px;
    box-shadow: 1px 1px 3px #000000;
}
div.Wall-color.selected div.swatch img{
    outline: 2px solid var(--selected);
}
div.Wall-color div.label{
    font-size: 50%;
    width: 4vw;
}
div.Wall-color:hover{
    background-color: var(--panelactive);
}
/* ---------------------- */
div#Walls-Button{
    position: relative;
    top: 3px;
    left: 72.3%;
    cursor: pointer;
    width: 6.5vw;
    height: 7.5vh;
    overflow-x: hidden;
    overflow-y: clip;
    border-right: 2px solid var(--borders);
}
div#Walls-Button div.Walls{
    height: 85%;
    position: relative;
    top: 6%;
    left: 10%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1px;
    background-color: var(--panel);
    border-radius: 1em;
    box-shadow: -1px 1px 3px #000000;
    color: var(--fontC);
    font-size: 60%;
}
div.Walls div.title, div.color-carrousel, div.current-color{
    position: relative;
    right: 6%;
    
}
div.Walls div.title{
    font-size: 99%;
}
div.current-color{
    position: relative;
    bottom: 36%;
}
input[type=radio] {
    display: none;
}
div.color-carrousel div.container {
    width: 4.2vw;
    max-width: 800px;
    max-height: 600px;
    height: 5.2vh;
    transform-style: preserve-3d;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
div.color-carrousel div.cards {
    position: relative;
    width: 100%;
    height: 100%;
    margin-bottom: 20px;
}
div.color-carrousel label.card {
    position: absolute;
    width: 60%;
    height: 100%;
    left: 0;
    right: 0;
    margin: auto;
    transition: transform .4s ease;
    background-color: transparent;
    box-shadow: 1px 1px 0px black;
    border-radius: 10px;
    border: none;
    cursor: pointer;
} 
div.color-carrousel label.card img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    object-fit: cover;
}
#item-1:checked ~ .cards #swatch3, #item-2:checked ~ .cards #swatch1, #item-3:checked ~ .cards #swatch2 {
    transform: translatex(-45%) scale(.8);
    opacity: .7;
    z-index: 0;
}
#item-1:checked ~ .cards #swatch2, #item-2:checked ~ .cards #swatch3, #item-3:checked ~ .cards #swatch1 {
    transform: translatex(45%) scale(.8);
    opacity: .7;
    z-index: 0;
}
#item-1:checked ~ .cards #swatch1, #item-2:checked ~ .cards #swatch2, #item-3:checked ~ .cards #swatch3 {
    transform: translatex(0) scale(1);
    opacity: 1;
    z-index: 1;
}
/* --------------------------------------------------------------------------------------------------------------------------- */
#UIwrapper{
    flex: 20%;
    display: flex;
    position: relative;
}
#featuresContainer{
    margin: 1.2% 13%;
    width: 74%;
    height: 14vh;
    display: flex;
    overflow-x: hidden;
    background-color: var(--panel);
    flex-direction: row;
    border-radius: 1.3em;
    box-shadow: 1px 2px 5px #000000;
}
div div.group{
    cursor: pointer;
    position: relative;
    flex: auto;
    height: 14vh;
    display: flex;
    flex-direction: column;
    border-radius: 1.3em;
    background-color: var(--panel);
    margin: 0px 2px;
    padding: 0px 10px;
    text-align: end;
    box-shadow: 5px 0px 0px #e5dfca;
}
div div.group:hover{
    background-color: var(--panelactive);
}
div div.group.disabled{
    background-color: rgb(227 225 221);
    box-shadow: 5px 0px 0px #c5c3bb;
}
div.group div.tag{
    /* font-family:Cambria, Cochin, Georgia, Times, 'Times New Roman', serif ; */
    font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
    font-size: 2.7vh;
    font-weight: 400;
    position: relative;
}
div.group div.title{
    width: 8vw;
    height: 6vh;
    position: relative;
    top: -12%;
    left: 5%;
    display: grid;
    text-align: center;
    align-items: center;
    color: var(--fontC);
    font-weight: 400;
    font-size: 1.6vh;
}
div.group div.tag sub{
    position: relative;
    font-size: 16px;
}
div.group div.preview{
    width: 75%;
    height: 38%;
    position: absolute;
    display: flex;
    flex-direction: row;
    right: 8%;
    bottom: 4%;
    text-align: center;
    align-items: center;
}
div.group div.preview div.option-selection{
    padding-right: 5%;
    font-size: 1vh;
    display: flex;
    flex: auto;
    flex-direction: column;
    align-items: flex-end;
}
div.group div.preview div.color-selection{
    display: flex;
    flex: auto;
    text-align: center;
    align-items: center;
}
div.group div.preview div.subgroup-selection{
    font-weight: bold;
}
div.group div.preview div.img-preview{
    width: 30%;
    height: 85%;
    display: flex;
    text-align: center;
    align-items: center;

}
div.group div.preview img{
    width: 100%;
    height: 100%;
    border-radius: 4px;
    box-shadow: 1px 1px 3px #000000;
}
/* --------------------------------------------------- */
@keyframes slideIn{
	from {transform: translate(-57%);}
	to {transform: translate(0%);}
}
#optionsContainer{   
    display: flex;
    flex-direction: row;
    position: absolute;
    margin: 1.2% 13%;
    width: 74%;
    height: inherit;
    border-radius: 1.3em;
    background-color: var(--panel);
}
#optionsContainer div.group.selection{
    width: 14%;
    flex: initial;
}
#optionsContainer div.options{
    height: 14vh;
    width: 83.5%;
    display: flex;
    padding-left: 10px;
    flex-direction: column;
    flex-wrap: wrap;
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: center;
    align-content: flex-start;
    border-right: 4px solid var(--panelactive);
}
#optionsContainer div.options.double-opts{
    flex-direction: row;
    justify-content: flex-start;
    align-content: center;
    background-color: var(--panel);
    border-radius: 20px;
    margin-left: 5px;
}
#optionsContainer div.options::-webkit-scrollbar{
    display: none;
}
#optionsContainer div.options div.option{
    position: relative;
    top: -3%;
    width: 10%;
    height: 70%;
    margin-left: 8px;
    padding-top: 10px;
    border-radius: 16px;
    text-align: center;
    /* animation-name: slideIn;
	animation-duration: 1s;
	animation-fill-mode: forwards; */
}
#optionsContainer div.options.double-opts div.option{
    height: 42%;
    width: 10%;
    top: 0%;
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    margin-left: 24px;
    padding: 0px;
    border-radius: 8px;
}
#optionsContainer div.options div.option:hover{
    background-color: var(--panelactive);
}
div.options div.group.selection div.title{
    left: -2%;
    top: -6%;
}
#optionsContainer div.options div.option img.swatch{
    width: 71%;
    height: 75%;
    border-radius: 4px;
    outline: 1px solid black;
}
#optionsContainer div.options.double-opts div.option img.swatch{
    width: 52%;
}
#optionsContainer div.options div.option div.opt-title{
    font-size: 12px;
}
#optionsContainer div.options.double-opts div.option div.opt-title {
    width: 48%;
    margin-left: 4px;
    padding: 4px;
}
#optionsContainer div.options div.option.selected img.swatch{
    outline: 2px solid var(--selected);
}
button.btn-close{
    position: absolute;
    right: 0.4%;
    top: 3%;
}
.color-info{
    position: absolute;
    font-size: 75%;
    left: 30%;
    top: 82.5%;
}
.color-info.double-opts{
    top: 83.5%;
    left: 32%;
}
.color-info.sub{
    left: 28%;
}
/* -------------------------------------------------------------------- */
@keyframes popIn{
	0% {opacity: 0;}
	25% {opacity: 1;}
    50% {opacity: 1;}
    75% {opacity: 1;}
    100% {opacity: 0;}
}
.appear{
    animation-name: popIn;
	animation-duration: 3s;
	animation-fill-mode: forwards;
}
.appear:hover{
    animation-play-state: paused;
}
div#popupMenu{
    position: absolute;
    width: 30%;
    top: 10%;
    left: 35%;
    background-color: #ffffffe8;
    border-radius: 1.3em;
    padding: 15px;
    box-shadow: 1px 1px 6px #000000;
}
div#popupMenu div.Memo{
    padding: 15px;
}
div#popupMenu div.Memo div.title{
    font-weight: bold;
}
div#popupMenu div.ilustration img{
    border-radius: 1.3em;
}
button.btn-close.memo{
    top: 2%;
    right: 2%;
}
#subgroup-info{
    position: absolute;
    width: 23%;
    top: 30%;
    left: 40%;
    height: auto;
    font-size: 1.4vh;
    border-radius: 6px;
    padding-bottom: 8px;
    border-bottom: 2px solid #e5dfca;
}
/* -------------------------------------------PDF styles-------------------------------------------- */
#AppContainer.print{
    position: relative;
    top: 3vh;
}
#AppContainer.print #Logo, #AppContainer.print #configurationWrapper, #AppContainer.print #UIwrapper{
    position: relative;
    bottom: 15px;
}
#AppContainer.print #UIwrapper, #AppContainer.print #PDF-Format{
    right: 12px;
}
#AppContainer.print #Logo, #AppContainer.print #configurationWrapper{
    margin-bottom: 12px;
}
#AppContainer.print #ServexMain{
    width: 85%;
}
#featuresContainer.print{
    margin: 0px 2%;
    margin-top: 1.5%;
    width: 800px;
    height: 75px;
    position: relative;
    padding: 0px 5px;
    left: 2%;
    /* top: 10px; */
    background-color: white;
    box-shadow: none;
}
div.print div.group{
    width: 15%;
    height: 75px;
    background-color: transparent;
    box-shadow: none;
    text-align: left;
    border: 1px solid black;
    border-radius: 11px;
}
div.print div.group.disabled{
    display: none;
}
div.print div.group div.tag{
    display: none;
}
div.print div.group div.title{
    width: 100%;
    height: 25px;
    text-align: center;
    align-items: baseline;
    color: black;
    top: 5%;
    left: 0%;
    font-size: 0.8vh;
    font-weight: bold;
}
div.print div.group div.preview{
    width: 85%;
    /* height: 38%; */
    left: 6%;
    bottom: 15%;
    flex-direction: row-reverse;
}
div.print div.group div.preview div.option-selection{
    padding-left: 5%;
    padding-right: 0%;
    align-items: flex-start;
    font-size: 0.8vh;
}
div.print div.group div.preview div.subgroup-selection{
    position: relative;
    text-align: start;
    width: 120%;
}
div.print div.group div.preview div.color-selection {
    text-align: start;
    width: 120%;
}
div.print div.group div.preview div.img-preview{
    width: 40%;
    height: 135%;
}
div.print div.group div.preview div.img-preview img{
    border: 1px outset gray;
}
#PDF-Format{
    position: relative;
    bottom: 30px;
    width: 760px;
    height: 18px;
    display: flex;
    flex-direction: row;
    margin-top: 38px;
    margin-left: 36px;
}
#PDF-Format div{
    width: 100%;
    height: 26px;
    display: flex;
    flex: 0.25;
    border: 1px solid black;
    margin-right: 3px;
    border-radius: 3px;
    font-size: 0.85vh;
    padding: 0px 8px;
    padding-top: 2px;
    text-align: left;
    align-items: center;
}
#PDF-Format div span{
    color: #c5bfbf;
    margin-left: 3px;
}
#pdf-form {
    width: 20%;
    height: 40%;
    position: absolute;
    left: 40%;
    top: 25%;
    background-color: #f1f0f0;
    border-radius: 5px;
    padding: 30px;
    box-shadow: 1px 1px 4px black;
}
#pdf-form div.form{
    display: flex;
    flex-direction: column;
}
#pdf-form div.form div{
    display: flex;
    flex-direction: row;
    margin: 5px 0px;
}
#pdf-form div.form div div.label{
    width: 40%;
}
#pdf-form div.buttons{
    position: relative;
    top: 6%;
    left: 80%;
    text-align: center;
    display: flex;
    flex-direction: row;
}
#pdf-form div.buttons div{
    cursor: pointer;
    margin-right: 4px;
    padding: 5px;
    border: 1px solid gray;
    border-radius: 5px;
    background-color: var(--panel);
    box-shadow: 1px 1px 2px black;
}
#Walls-pdf{
    width: 20%;
    height: 4%;
    position: absolute;
    left: 77.5%;
    bottom: 24%;
    display: flex;
    flex-direction: row;
    border: 1px solid black;
    border-radius: 5px;
    z-index: 3;
}
#Walls-pdf div.text{
    display: flex;
    font-size: 0.8vh;
    justify-content: center;
    width: 75%;
    align-items: center;
}
#Walls-pdf div.img-preview{
    display: flex;
    width: 25%;
    align-items: center;
    text-align: center;
}
#Walls-pdf div.img-preview img{
    width: 85%;
    height: 85%;
    border-radius: 5px;
    border: 1px solid gray;
}
/* ------------------------------------------------------Responsivness----------------------------------------------------------------- */
@media (orientation: portrait) {
    div#Walls-Menu div.Walls-inner {
        width: 45%;
        height: 38%;
        top: 69%;
        left: 69%;
        border-radius: 0.7em;
        font-size: 0.5vh;
    }
    div#Walls-options {
        height: 3vh;
        bottom: -31%;
    }
    div#Walls-Button {
        width: 10.5vw;
        height: 3.5vh;
        left: 0%;
    }
    div.Walls div.title, div.color-carrousel, div.current-color{
        top: 12%;
    }
    div.current-color {
        top: -15px;
        font-size: 20px;
    }
    div.Walls div.title{
        font-size: 155%;
    }
    div.color-carrousel div.container {
        width: 7.2vw;
        height: 2vh;
    }
    #pdfContainer {
        width: 10vw;
        height: 2.5vh;
        left: 57%;
    }
    #PDF-button {
        left: 34%;
        width: 6.3vh;
        height: 2vh;
        border-radius: 5.8em;
    }
    #PDF-button i {
        font-size: 1.4vh;
        right: 23%;
    }
    /* --------------------------------------- */
    #featuresContainer{
        height: 9vh;
    }
    div div.group {
        height: 9vh;
    }
    div.group div.tag {
        font-size: 1.7vh;
    }
    div.group div.tag sub {
        font-size: 26px;
    }
    div.group div.title {
        font-size: 0.6vh;
        top: -18%;
    }
    div.group div.preview {
        width: 88%;
        bottom: 2%;
    }
    div.group div.preview div.option-selection {
        font-size: 0.43vh;
    }
    div.group div.preview div.img-preview {
        width: 61%;
        height: 63%;
    }
    /* ------------------------------------------ */
    #optionsContainer{
        height: 9vh;
    }
    #optionsContainer div.options {
        height: 9vh;
    }
    #optionsContainer div.options div.option {
        top: 11%;
    }
    #optionsContainer div.options.double-opts div.option {
        flex-direction: column;
    }
    #optionsContainer div.options div.option img.swatch {
        height: 28%;
        border-radius: 15px;
    }
    #optionsContainer div.options.double-opts div.option img.swatch {
        width: 77%;
        height: 48%;
    }
    #optionsContainer div.options div.option div.opt-title {
        font-size: 22px;
    }
    #optionsContainer div.options.double-opts div.option div.opt-title {
        width: 85%;
    }
    #subgroup-info {
        font-size: 0.6vh;
    }
    .color-info {
        font-size: 140%;
        width: 65%;
        top: 76.5%;
    }
}@media(max-width:1200px) and (orientation: landscape) {
    div#toolbox {
        bottom: 2%;
    }
    div#Walls-Menu div.Walls-inner{
        padding: 5px;   
    }
    div#Walls-Button {
        width: 9.5vw;
        height: 11.5vh;
        left: -0.5%;
    }
    div.Walls div.title {
        font-size: 140%;
    }
    div.color-carrousel div.container {
        width: 6.2vw;
        height: 7.5vh;
    }
    div.current-color {
        font-size: 17px;
        top: -23px;
    }
    #PDF-button {
        height: 5vh;
    }
    #PDF-button i {
        font-size: 3.7vh;
    }
    #pdfContainer {
        left: 71%;
        height: 6vh;
    }
    /* ------------------------------ */
    div.group div.title {
        top: -15%;
    }
    div.group div.preview {
        width: 85%;
        height: 40%;
        right: 13%;
        bottom: 5%;
    }
    div.group div.preview div.option-selection {
        font-size: 1.26vh;
    }    
}