:root {
  --flex-cols: 12;
}

div.box{
/*	-ms-flex: 1 1 auto;*/
/*    flex: 1 1 auto;*/
    min-height: 1px;
    padding: 10px;
	margin-bottom: 10px;
}

h1{
	font-size: 18px;
	font-weight: bold;
	height: 45px;
	line-height: 30px;
	vertical-align: top;
}

div.box h3{
	font-size: 16px;
	font-weight: bold;
	border-bottom: 1px solid #cccccc;
	height: 45px;
	line-height: 44px;
	vertical-align: middle;
	margin-bottom: 10px;
}

div.box h2{
	font-size: 13px;
	font-weight: bold;
	height: 25px;
	line-height: 25px;
	vertical-align: top;
}

div.row{
	display: flex;
	flex: 0 0 100%;
    max-width: 100%;
	align-items:flex-start;
	flex-wrap: wrap;
	padding-top: 10px;
	padding-bottom: 10px;
	row-gap: 10px;
}


div.row div.col img{
	margin-left: auto;
	margin-right: auto;
}

/*sobra*/
div.bs, span.bs{
	box-shadow: 3px 3px 6px gray;
}

div.br, span.br{
	border-radius: 5px;
}

div.b_a, span.b_a{
	border: 1px solid black;
}

div.p_a{
	padding: 5px;
}

div.row div.h_120{
	min-height: 120px;
}

div.row div.col{
	height: auto;
}

div.row div.colf{
	min-height: 35px;
	height: auto;
	flex: 0 0 100%;
    max-width: 100%;
	margin-right: 10px;
}

div.row div.lastcol{
	flex: 0 0 100%;
    max-width: 100%;
}

div.b_right, span.b_right{
	border-right: 1px solid #cccccc;
}

div.b_left, span.b_left{
	border-left: 1px solid #cccccc;
}

div.row span.data{
	display: block;
	font-size: 14px;
	margin-right: 10px;
	line-height: 38px;
	min-height: 49.6px;
	padding-left: 5px;
	padding-right: 5px;
	height: auto;
	margin-bottom: 2px;
	overflow-wrap: anywhere;
}

div.flex{
	display: flex;
	flex-direction:column;
}

span.bold{
	font-weight: bold;	
}

span.marg_left{
	margin-left: 5px;
}

span.overx_hidden{
	overflow: hidden;
}

div.row div.col span.data::before{
	content:attr(before-data);
}

.bg_gray{
	background-color: #eee;
	border:1px solid rgba(0, 0, 0, .125);	
}

div.row div.col span.header{
	display: block;
	font-size: 12px;
	width: 100%;
	min-width: 120px;
	height: 35px;
	line-height: 35px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.col-125 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-20 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-25 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-33 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-625 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-50 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-75 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.col-100 {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.col-3-cols{
	-ms-flex: 0 0 33.333333%;
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
}


.cols4{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.cols5{
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.cols6{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.cols3{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.cols2{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.cols1{
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.cols12{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.cols8{
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}



div.col-om,
div.col-om-1,
i.col-om-1,
div.col-om-2,
div.col-om-3,
div.col-om-4,
div.col-om-5,
div.col-om-6,
div.col-om-7,
div.col-om-8,
div.col-om-9,
div.col-om-10,
div.col-om-11,
div.col-om-12{
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

@media (min-width: 600px) and (max-width: 767px){
	div.col-om,
	div.col-om-1,
	i.col-om-1,
	div.col-om-2,
	div.col-om-3,
	div.col-om-4,
	div.col-om-5,
	div.col-om-6,
	div.col-om-7,
	div.col-om-8,
	div.col-om-9,
	div.col-om-10,
	div.col-om-11,
	div.col-om-12{
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
}

.over_hiden{
	overflow: hidden;
}

@media (min-width: 768px) {
	div.col-om{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * attr(col_size integer));
		flex: 0 0 calc(100% / var(--flex-cols) * attr(col_size integer));
		max-width: calc(100% / var(--flex-cols) * attr(col_size integer));
	}

	div.col-om-1{
		-ms-flex: 0 0 calc(100% / var(--flex-cols));
		flex: 0 0 calc(100% / var(--flex-cols));
		max-width: calc(100% / var(--flex-cols));
	}

	i.col-om-1{
		-ms-flex: 0 0 calc(100% / var(--flex-cols));
		flex: 0 0 calc(100% / var(--flex-cols));
		max-width: calc(100% / var(--flex-cols));
	}

	div.col-om-2{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 2);
		flex: 0 0 calc(100% / var(--flex-cols) * 2);
		max-width: calc(100% / var(--flex-cols) * 2);
	}

	div.col-om-3{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 3);
		flex: 0 0 calc(100% / var(--flex-cols) * 3);
		max-width: calc(100% / var(--flex-cols) * 3);
	}

	div.col-om-4{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 4);
		flex: 0 0 calc(100% / var(--flex-cols) * 4);
		max-width: calc(100% / var(--flex-cols) * 4);
	}

	div.col-om-5{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 5);
		flex: 0 0 calc(100% / var(--flex-cols) * 5);
		max-width: calc(100% / var(--flex-cols) * 5);
	}

	div.col-om-6{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 6);
		flex: 0 0 calc(100% / var(--flex-cols) * 6);
		max-width: calc(100% / var(--flex-cols) * 6);
	}

	div.col-om-7{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 7);
		flex: 0 0 calc(100% / var(--flex-cols) * 7);
		max-width: calc(100% / var(--flex-cols) * 7);
	}

	div.col-om-8{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 8);
		flex: 0 0 calc(100% / var(--flex-cols) * 8);
		max-width: calc(100% / var(--flex-cols) * 8);
	}

	div.col-om-9{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 9);
		flex: 0 0 calc(100% / var(--flex-cols) * 9);
		max-width: calc(100% / var(--flex-cols) * 9);
	}

	div.col-om-10{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 10);
		flex: 0 0 calc(100% / var(--flex-cols) * 10);
		max-width: calc(100% / var(--flex-cols) * 10);
	}

	div.col-om-11{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 11);
		flex: 0 0 calc(100% / var(--flex-cols) * 11);
		max-width: calc(100% / var(--flex-cols) * 11);
	}

	div.col-om-12{
		-ms-flex: 0 0 calc(100% / var(--flex-cols) * 12);
		flex: 0 0 calc(100% / var(--flex-cols) * 12);
		max-width: calc(100% / var(--flex-cols) * 12);
	}
}

.nowrap{
	white-space: nowrap;
}

div.total{
	width: 100%;
	font-size: 16px;
	text-align: right;
}

div.col_foto{
	flex: 2 1 0;
	max-width: auto;
	display: flex;
}

div.foto{
	display: flex;
	flex-direction:row;
	flex-wrap: wrap;
	flex: 0 0 10%;
	max-width: 150px;
	min-width: 150px;
	padding-top: 10px;
	padding-bottom: 10px;
	height: auto;
	row-gap: 5px;
}

div.observacoes{
	display: flex;
	flex-direction:row-reverse;
	height: auto;
	flex-wrap: wrap;
	row-gap: 20px;
}

div.observacoes div.item{
	display: flex;
	flex-direction: row;
	border: 1px solid #cccccc;
	border-radius: 5px;
	box-shadow: 3px 3px 6px gray;
	flex: 0 0 100%;
	flex-wrap: wrap;
}

div.observacoes div.item div.texto{
	flex: 0 0 100%;
	height:auto;
	padding: 10px;
	white-space: wrap;
	text-align: left;
	font-size: 14px;
	font-weight: bold;
}

div.observacoes div.item div.date{
	flex: 0 0 100%;
	height: 15px;
	padding: 10px;
	text-wrap: nowrap;
	font-size: 10px;
	text-align: left;
	margin-top: 0px;
}

div.observacoes div.item div.fname{
	flex: 0 0 calc((100% - 200px) / 2);
	height:45px;
	padding: 10px;
	white-space: wrap;
}

div.observacoes div.item div.desc{
	flex: 0 0 calc((100% - 200px) / 2);
	height:45px;
	padding: 10px;
	white-space: wrap;
}

.w100{
	width: calc(100% - 3px);
}

.w100a{
	width: calc(100% - 43px);
	display: block;
}

.form-control {
	display: block;
	min-height: 32px;
	padding: 2px 2px;
	font-size: 14px;
	font-weight: bold;
	line-height: 20px;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	border-radius: .25rem;
	margin-top: 5px;
	margin-bottom: 5px;
}
