.calc-spec{
	display: flex;
	width: 100%;
	gap: 25px;
	font-size: 0.8rem;
}



.calc-spec .input{
	display: grid;
	min-width: 400px;
	grid-template-columns: auto auto;
	align-content: start;
	align-items: start;
	gap: 20px;
}

.calc-spec .input > table:nth-child(1){
	grid-column: 1 / 3;
}
.calc-spec .input > table:nth-child(2){
	grid-column: 1 / 3;
}



.calc-spec h2{
	margin: 0;
	line-height: 1;
	font-weight: 300;
	font-size: 1.4rem;
}

.calc-spec h2:not(:first-child){
	margin-top: 10px;
}



.calc-spec .calc{
	display: flex;
	width: 100%;
	flex-direction: column;
	gap: 5px;
}



.calc-spec table{
	border-collapse: collapse;
}

.calc-spec table td{
	height: 17px;
	padding: 0 4px;
	white-space: nowrap;
}

.calc-spec table th{
	white-space: nowrap;
}

.calc-spec table .hidden{
	visibility: hidden;
}
.calc-spec table .hidden > td{
	height: 0.1px;
	padding: 0;
}

.calc-spec table .sep{
	height: 10px !important;
}


.calc-spec table .s0{
	font-size: 1.5rem;
}

.calc-spec table .s1{
	border-right: 1px solid #000;
	text-align: right;
}

.calc-spec table .s2{
	text-align: center;
}

.calc-spec table .s3{
	text-align: center;
	font-size: 1rem;
}

.calc-spec table .s4{
	background-color: var(--grey-20);
	text-align: center;
}

.calc-spec table .s5{
	background-color: #000;
	text-align: center;
	color: #fff;
}

.calc-spec table .s6{
	font-weight: 500;
	font-size: 1rem;
}

.calc-spec table .s7{
	text-align: center;
}

.calc-spec table .s8{
	border-right: 1px solid #000;
	text-align: center;
}

.calc-spec table .s9{
	background-color: #000;
	text-align: center;
	font-size: 0.9rem;
	color: #fff;
}

.calc-spec table .s10{
	background-color: var(--grey-30);
	text-align: center;
}

.calc-spec table .s11{
	background-color: var(--grey-10);
	text-align: center;
}

.calc-spec table .s12{
	border-top: 1px solid var(--grey-20);
	text-align: center;
}

.calc-spec table .s13{
	border-top: 1px solid var(--grey-20);
	text-align: left;
}

.calc-spec table .s14{
	text-align: center;
}

.calc-spec table .s15{
	border-top: 1px solid var(--grey-20);
	text-align: right;
}

.calc-spec table .s16{
	border-top: 1px solid var(--grey-20);
	text-align: right;
	font-weight: 700;
}

.calc-spec table .s17{
	border-top: 1px solid var(--grey-20);
	text-align: center;
	font-weight: 700;
}



.calc-spec table .left{
	text-align: left !important;	
}

.calc-spec table .right{
	text-align: right !important;
}

.calc-spec table .light{
	font-weight: 400 !important;
}

.calc-spec table .bold{
	font-weight: 700 !important;
}



/* Summary */
.calc-spec table.summary thead td{
	background-color: #000;
	text-align: center;
}
.calc-spec table.summary thead > .header > td{
	color: #fff;
}

.calc-spec table.summary td.label{
	border-right: 1px solid #000;
	text-align: right;
}

.calc-spec table.summary td.value{
	text-align: center;
}

.calc-spec table.summary td.units{
	border-left: 1px solid #000;
	font-style: italic;
	color: var(--grey-80);
}



/* Summary надбавки */
.calc-spec table.surcharge .selected > td{
	background-color: rgb(255,140,30);
}



/* Nomen */
.calc-spec table.nomen tbody td{
	border-top: 1px solid var(--grey-20);
	text-align: center;
}

.calc-spec table.nomen .header > td{
	background-color: #000;
	text-align: center;
	color: #fff;
}

.calc-spec table.nomen .units > td{
	background-color: var(--grey-20);
	text-align: center;
	font-style: italic;
}

.calc-spec table.nomen .sum > td{
	text-align: center;
	font-weight: 700;
}


/* Input fields */
.calc-spec [table-id = "42"] .quantity > input,
.calc-spec [table-id = "43"] .quantity-sum > input{
	width: 50px;
	font-size: 0.8rem;
}

.calc-spec [table-id = "58"] .caption > td{
	font-weight: 600;
}

.calc-spec [table-id = "58"] .item > td{
	font-style: italic;
	font-size: 0.75rem;
}
.calc-spec [table-id = "58"] .item.last > td{
	border-bottom: 2px solid var(--grey-30)
}



/* Blue */
.calc-spec table > thead > .header > .blue{ background-color: rgb(47,117,181); }
.calc-spec table > thead > .units > .blue{ background-color: rgb(155,194,230); }
.calc-spec table > tbody .blue{ background-color: rgb(221,235,247); }
.calc-spec table > tbody > .sum > .blue{ background-color: rgb(155,194,230); }

/* Yellow */
.calc-spec table > thead > .header > .yellow{ background-color: rgb(191,143,0); }
.calc-spec table > thead > .units > .yellow{ background-color: rgb(255,217,102); }
.calc-spec table > tbody .yellow{ background-color: rgb(255,242,204); }
.calc-spec table > tbody > .sum > .yellow{ background-color: rgb(255,217,102); }

/* Green */
.calc-spec table > thead > .header > .green{ background-color: rgb(84,130,53); }
.calc-spec table > thead > .units > .green{ background-color: rgb(169,208,142); }
.calc-spec table > tbody .green{ background-color: rgb(226,239,218); }
.calc-spec table > tbody > .sum > .green{ background-color: rgb(169,208,142); }

/* Red */
.calc-spec table > thead > .header > .red{ background-color: rgb(225,100,5); }
.calc-spec table > thead > .units > .red{ background-color: rgb(255,140,30); }
.calc-spec table > tbody .red{ background-color: rgb(255,204,153); }
.calc-spec table > tbody > .sum > .red{ background-color: rgb(255,140,30); }



.calc-spec .results{
	display: flex;
	/* margin-top: 15px; */
	justify-content: end;
	align-items: start;
	gap: 30px;
}