@import "https://fonts.googleapis.com/css?family=Montserrat:300,400,700";

.responsive-table-input-matrix {
  position: relative;
  margin: 1em 0;
  width: 70%;
  margin: auto;
  height: initial;
  border-spacing: 0;
  margin-bottom: 30px;
}

@media (min-width: 720px) {
  .responsive-table-input-matrix .responsive-table-input-matrix {
    width: auto;
  }
}

.responsive-table-input-matrix tr td {
  text-align: left;
}

@media (min-width: 720px) {
  .responsive-table tr:first-child th:first-child {
    border-radius: 8px 0 0 0;
  }
  .responsive-table tr:first-child th:last-child {
    border-radius: 0 8px 0 0;
  }
  .responsive-table tr:last-child td:first-child {
    border-radius: 0 0 0 8px;
  }
  .responsive-table tr:last-child td:last-child {
    border-radius: 0 0 8px 0;
  }
  .responsive-table-input-matrix tr td {
    text-align: center;
  }
}
.responsive-table-input-matrix.leftalign tr td, .responsive-table-input-matrix.leftalign tr th {
  text-align: left;
}
.responsive-table-input-matrix tr td.rightalign, .responsive-table-input-matrix tr th.rightalign {
  text-align: right;
}

.responsive-table-input-matrix th {
  display: none;
}

.responsive-table-input-matrix td {
  display: block;
}

.responsive-table-input-matrix td:first-child {
  padding-top: .5em;
}

.responsive-table-input-matrix td:last-child {
  padding-bottom: .5em;
}

.responsive-table-input-matrix td:before {
  content: attr(data-th);
  font-weight: bold;
  width: 9em;
  display: inline-block;
}

@media (min-width: 720px) {
  .responsive-table-input-matrix td:before {
    display: none;
  }
}

.responsive-table-input-matrix th, .responsive-table-input-matrix td {
	text-align: center;
}

@media (min-width: 720px) {
  .responsive-table-input-matrix th, .responsive-table-input-matrix td {
    display: table-cell;
    padding: .25em .5em;
  }
  .responsive-table-input-matrix th:first-child, .responsive-table-input-matrix td:first-child {
    padding-left: 0;
  }
  .responsive-table-input-matrix th:last-child, .responsive-table-input-matrix td:last-child {
    padding-right: 0;
  }
}

.responsive-table, .responsive-table td, .responsive-table th, .responsive-table span {
	font-family: Montserrat, sans-serif;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	color: #444;
	font-size: 14px;
}

.responsive-table {
	margin-top: 2em;
	color: #000;
	border-radius: .4em;
	background: #eee;
}

.responsive-table.full-size.responsive-table-input-matrix {
	margin-top: auto;
	width: 100%;
}

.responsive-table tbody tr:hover , .responsive-table tr.active, .responsive-table tbody tr:hover td, .responsive-table tr.active td{
	background: #46627f;
	color: #eee;
	border-color: #eee;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.responsive-table th {
	background: #34495E;
}
.responsive-table tr {
	border-color: #46627f;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.responsive-table th, .responsive-table td {
	margin: .5em 1em;
}

@media (min-width: 720px) {
  .responsive-table th, .responsive-table td {
    padding: 1em !important;
  }
  
  .responsive-table tr td{
  	border-bottom: 1px solid #46627f;
  }
  
  .responsive-table tr:first-child th{
  	border-bottom: 1px solid #eee;
  }
  
  .responsive-table tr.active td, .responsive-table tr:hover td{
  	border-bottom: 1px solid #eee;
  }
  
  .responsive-table tr:last-child td, .responsive-table tr.active:last-child td{
  	border-bottom: none;
  }
  
}

@media (max-width: 719px) {
	
	.responsive-table tr:hover , .responsive-table tr.active, .responsive-table tr:hover td, .responsive-table tr.active td{
		border-color: #46627f;
		color: #fff;
	}

	.responsive-table td{
		background: #46627f;
		color: #fff;
	}
	
	.responsive-table tr{
		background: #46627f;
		position: relative;
	}
	
	.responsive-table-input-matrix td:before{
		display: visible;
		width: 100%;
	}
	
	.responsive-table tr {
	  -webkit-transition: none;
	  -moz-transition: none;
	  -ms-transition: none;
	  -o-transition: none;
	  transition: none;
	}
	
	.responsive-table tr td:last-child{
		border-bottom: 1px solid;
	  	padding-bottom: 20px;
	}
	
	.responsive-table tr:last-child td:last-child{
		border-bottom: none;
	}
}

.responsive-table th, .responsive-table td:before {
  color: #dd5;
}

@media all and (min-width:0\0) and (min-resolution: .001dpcm) {
	/* Juste pour IE9 */
	
	
	.responsive-table tr:first-child th:first-child {
		border-radius: 8px 0 0 0;
	}
	.responsive-table tr:first-child th:last-child {
		border-radius: 0 8px 0 0;
	}
	.responsive-table tr:last-child td:first-child {
		border-radius: 0 0 0 8px;
	}
	.responsive-table tr:last-child td:last-child {
		border-radius: 0 0 8px 0;
	}
	
	.responsive-table-input-matrix td:before {
		display: none;
	}
	
	.responsive-table-input-matrix th, .responsive-table-input-matrix td {
		display: table-cell;
		padding: .25em .5em;
	}
	.responsive-table-input-matrix th:first-child, .responsive-table-input-matrix td:first-child {
		padding-left: 0;
	}
	.responsive-table-input-matrix th:last-child, .responsive-table-input-matrix td:last-child {
	  	padding-right: 0;
	}
	
	.responsive-table th, .responsive-table td {
		padding: 1em !important;
	}
	
	.responsive-table tr:first-child th{
		border-bottom: 1px solid #eee;
	}
	
	.responsive-table tr.active td, .responsive-table tr:hover td{
		border-bottom: 1px solid #eee;
	}
	
	.responsive-table td{
		background: #eee;
		color: #444;
	}
	
	.responsive-table tr{
		background: #eee;
	}
	
	.responsive-table tr.active td, .responsive-table tr:hover td{
	  	border-bottom: 1px solid #eee;
	}
	
	.responsive-table {
		background: #eee;
	}	
	
	.responsive-table tr td{
		border-bottom: 1px solid;
	}
	
	.responsive-table tr:last-child td{
		border-bottom: none;
	}
}

.responsive-table .detail div {
	opacity: 0.7;
	font-size: smaller;
}

.masquerDetail + .detail, .masquerDetail + .detail td, .masquerDetail + .detail div {
	font-size: 0px !important;
	border-bottom: none;
}

.responsive-table tr.afficherDetail, .responsive-table tr.afficherDetail td {
	border-bottom: none !important;
}

.responsive-table .detail td {
	padding-top: 0px !important;
} 

.responsive-table .glyphicon {
	font-family: 'Glyphicons Halflings' !important;
	background-color: transparent;
}
