* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

html,
body {
   min-width: 1320px;
}

body {
   padding: 0;
   margin: 0;
   font-size: 16px;
   display: flex;
   min-height: 100%;
   background: #fff;
   color: #222;
   font-family: Tahoma, "Trebuchet MS", Verdana, sans-serif;
   width: auto;
}

h1 {
   font-size: 20px;
   text-align: left;
   margin: 0 0 20px;
}

.left {
   float: left;
}

.left-ver {
   float: left;
   width: 48%;
   margin-bottom: 20px;
   outline: 1px solid #CCCCCC;
}

.left-hor {
   float: left;
   width: 100%;
}


.bn_form input,
.bn_form select {
   float: right;
   border: none;
   background-color: #EEEEEE;
}

.hidden {
   display: none !important;
}

.halfhidden {
   opacity: 0.4;
}

#_widget_ {
   height: 480px;
}

.down_mode {
   display: flex;
   width: 100%;
   flex-direction: column;
   justify-content: flex-end;
}

.left.col {
   font-size: 12px;
   min-width: 520px;
   margin-right: 20px;
}

a.wtype, a.wtype:link,
a.wtype:visited,
a.wtype:active {
   font-size: 12px;
   height: 40px;
   text-decoration: none;
   color: #3C435A;
   display: flex;
   flex-flow: row nowrap;
   justify-content: center;
   align-items: center;
   padding: 0 5px;
   border-bottom: 2px solid #EDF0F4;
}

a.wtype:hover {
   color: #3599F4;
   border-bottom: 2px solid #3599F4;
}

a.wtype.active {
   color: #1e5bea;
   border-bottom: 2px solid #1e5bea;
}

.type-list {
   display: grid;
   grid-template-columns: repeat(5, auto);
   width: 100%;
   grid-gap: 0;
   border-radius: 5px;
}

.type-list a {
   display: table-cell;
}

.hrinvis {
   border: 1px solid #ffffff;
}

.chapter {
   background: #fff;
   margin: 0;
}

.ch_dops {
   outline: 1px solid #006600;
}

.ch_row {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   padding: 8px 4px 4px;

   margin-bottom: 4px;
}

.ch_row.error {
   color: #EB3333;
}

.ch_row.error textarea,
.ch_row.error input {
   border: 1px solid #EB3333;
}

.ch_row:not(:first-of-type) {
   border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.ch_row__block {
   display: flex;
   align-items: center;
   justify-content: center;
}

.chapter > div.ch_row:last-child {
   margin-bottom: 0;
}

.mr-a {
   margin-right: auto !important;
}

.mr-4 {
   margin-right: 4px !important;
}

.mr-8 {
   margin-right: 8px !important;
}

.ml-4 {
   margin-left: 4px !important;
}

.ml-8 {
   margin-left: 8px !important;
}

.ch_row span {
   white-space: normal;
   max-width: 180px;
}

.ch_row textarea::placeholder,
.ch_row input::placeholder {
   opacity: 0.7;
}

.ch_row textarea {
   font-size: 10px;
   width: 250px;
}

.ch_row select,
.ch_row input[type='text'] {
   width: 250px;
   max-width: 250px;
   height: 25px;
   padding: 0 6px;
   font-size: 12px;
}

input[type='number'] {
   width: 50px;
   max-width: 60px;
   height: 25px;
   padding: 0 0 0 4px;
}

input[type='range'] {
   margin-top: -3px;
}

.invisible {
   visibility: hidden;
   opacity: 0;
}

.preset_block {
   padding-left: 12px;
   color: rgba(0, 0, 0, 0.7);
}

.preset_block .ch_row:last-of-type {
   border-bottom: none;
}

.vt {
   vertical-align: top;
}

/*new configurator*/
.configurator {
   position: relative;
   display: grid;
   width: 100%;
   grid-template-columns: 520px auto;
   grid-gap: 8px;
   padding: 16px 16px 60px;
}

.code_block,
.view_block {
   display: flex;
   justify-content: center;
   margin-bottom: 20px;
   position: relative;
   border: 2px #979494 solid;
   border-radius: 30px;
   padding: 30px;
   background: #000;
   flex: 1;
   min-width: 100%;
   min-height: 580px;
}

.code_block__screen,
.view_block__screen {
   background: #f8f9fc;
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 10px;
   position: relative;
   transition: background-color .3s ease;
}

.view_block__screen {
   background: url(/img/hotel.jpg) center;
   padding: 30px 10px 10px;
   background-size: cover;
}

.code_block {
   min-width: 920px;
   height: 300px;
   min-height: 300px;
   margin-bottom: 0;
   padding: 5px;
   border-radius: 10px;
}

.code_block__screen {
   background: #f3f3f3;
   align-items: flex-start;
   justify-content: flex-start;
   border-radius: 10px;
   position: relative;
}

.code_block__errors {
   display: none;
}

.code_block__screen.disabled .code_block__errors {
   display: flex;
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   background: rgb(236 186 186 / 90%);
   border-radius: 10px;
   z-index: 100000;
   align-items: center;
   justify-content: center;
   color: #EB3333;
}

.code_block__screen pre {
   width: 100%;
   height: 100%;
   margin: 0;
   padding: 0;
   display: flex;
   border-radius: 3px;
}

.code_block__screen textarea {
   width: 100%;
   height: 100%;
   padding: 10px 0 10px 10px;
   background: #f3f3f3;
   border: none;
   font-size: 11px;
   font-family: monospace;
   border-radius: 3px;
   box-sizing: border-box;
}

.view_block__screen:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
   background: #FFFFFF;
   opacity: .6;
   transition: opacity .3s ease;
}

.view_block__screen.nighttime {
   background-color: #232F45;
}

.view_block__screen.nighttime:before {
   background: rgba(0, 0, 0, 0.60);
}

.submit-panel {
   position: fixed;
   padding: 6px 10px;
   bottom: 0;
   left: 16px;
   background-color: rgba(52, 66, 90, 0.6);
   float: none;
   width: 520px;
   box-sizing: border-box;
   text-align: center;
   border-bottom: 0;
   border: 2px solid rgba(52, 66, 90, 0.2);
   backdrop-filter: blur(3px);
}

.submit-panel .submit-btn {
   background-color: #1875F0;
   color: #fff;
   height: 40px;
   font-weight: 600;
   cursor: pointer;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   padding-right: 2.8125rem;
   padding-left: 2.8125rem;
   border-radius: 5px;
   float: none;
   font-size: 14px;
   border: none;
   outline: none;
}

.bnovo__header {
   color: red !important;
}

.copycode,
.daynightBtn {
   position: absolute;
   bottom: 8px;
   right: 8px;
   background: #232F45;
   color: #FFF;
   border-radius: 3px;
   border: none;
   padding: 8px 12px;
   font-weight: 500;
   min-width: 120px;
   text-align: center;
   z-index: 10000;
   cursor: pointer;
}

.down-mode .daynightBtn {
   top: 8px;
   bottom: auto;
}

.copycode {
   right: 18px;
}

.nighttime .daynightBtn {
   background: #FFF;
   color: #232F45;
}

.ch_row strong {
   font-size: 14px;
}

/* ColorPicker input*/
.ch_row .colorpicker-field input[type='text'] {
   width: 80px;
   border: none;
   text-transform: uppercase;
}

.colorpicker-field {
   display: flex;
   flex-flow: row nowrap;
   border: 1px solid #222;
}

.colorpicker-field__tpl {
   height: 25px;
   width: 25px;
   border-right: 1px solid #222;
   background: #ffffff;
}

/* untits field input*/
.units-field input[type='number'] {
   width: 60px;
}

.units-field {
   display: flex;
   flex-flow: row nowrap;
}

.units-field .units {
   height: 25px;
   width: 12px;
   display: flex;
   margin-left: 4px;
   align-items: center;
}

/*accordion */
.accordion {
   margin: 8px auto;
   max-width: 700px;
   position: relative;
   color: #222;
}

.toggle-acc {
   cursor: pointer;
   position: relative;
}

.toggle-acc span {
   width: 24px;
   line-height: 0;
   transition: all 0.3s ease;
}

.toggle-acc span img {
   width: 100%;
}

.accordion--current .toggle-acc {
   box-shadow: 0px 8px 18px -16px rgb(0 0 0 / 19%);
}

.accordion--current .toggle-acc span {
   transform: rotate(180deg);
   -ms-transform: rotate(180deg); /* IE 9 */
   -moz-transform: rotate(180deg); /* Firefox */
   -webkit-transform: rotate(180deg); /* Safari and Chrome */
   -o-transform: rotate(180deg); /* Opera */
   transition: all 0.3s ease;
}

ul {
   list-style: none;
   padding: 0;
}

.accordion .content {
   padding: 4px 4px 8px 8px;
   overflow: hidden;
   display: none;
   background: rgba(0, 0, 0, 0.02);
}


.accordion--current .content {
   display: block;
}

ul li {
   border: 2px solid #EDF0F4;
   width: 100%;
   font-weight: normal;
   color: #222;
   padding: 0;
   border-radius: 0 !important;
}

ul li:nth-of-type(even) {
   border-width: 0 2px;
}

ul li:last-of-type {
   border-width: 0 2px 2px 2px;
}

ul li .toggle-acc {
   width: 100%;
   background: transparent;
   color: #222;
   padding: 16px 8px;
   transition: background 0.3s ease;
   line-height: 1.5;
}

.chapter-title {
   display: flex;
   align-items: center;
   justify-content: space-between;
   font-size: 16px;
   font-weight: 600;
   padding: 0 2px 0;
   transition: color 0.3s ease;
}
a,
.accordion--current .chapter-title {
   color: #1e5bea;
}
a:hover,
.chapter-title:hover {
   color: #316AEF;
}

.accordion--current .ch_common .chapter-title,
.ch_common .chapter-title,
.ch_common .chapter-title:hover {
   color: #FF9C59;
}

.toggle-acc i {
   font-size: 16px;
}

.required_star {
   color: #EB3333;
}

.nowrap {
   white-space: nowrap !important;
}

.flex1 {
   flex: 1;
}
