*#panier, *#panier::before, *#panier::after {
    box-sizing: border-box;
}

#panier {
	/*height: 100vh;*/
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}


#content_panier {
	width: 1000px;
	margin: 0 auto;
	padding-top: 120px;
	flex-grow: 1;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-bottom: 1px solid #fff;
}

th, td {
	padding: 10px;
	text-align: center;
	border: solid 1px #ccc;
}

th {
	background-color: #CDCDCD;
	color: #000;
}

/* Liste déroulante quantité */

/*table td.quantity input {
	height: 20px;
	width: 20px;
	border: 1px solid #c3c3c3;
	background: #fff;
}*/


table td.quantity .liste_quantite {
	/*width: 7rem;*/
	padding: 0.4rem;
	background: #fff;
}



/*table td.quantity #quantite.liste_quantite::after {
	content: '\25BC';
}*/

/* Les "boîtes" et leurs éléments */

.container_header {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
	/* background: #99bfe5; */
	padding: 20px;
	/* height: 80px; */
}

.container_header h2 {
	color: #323b49;
	font-size: 20px;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

.container_header .sstitre {
	color: #742674;
	font-size: 16px
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

.container_pied1 {	
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	/* background: #F5F5F5; */
	/* line-height: 57px; */
	color: #323b49;
	font-weight: bold;
	padding: 10px;
	border-bottom: 1px solid #cdcdcd;
}

.container_pied1 .form_port .port {
	padding: 0.4rem;
	background: #fff;
	/*border: none;
	-moz-appearance: menulist;
	-webkit-appearance: menulist;*/
}

.container_pied1 .form_port .port::after {
	content: '\25BC';
}

/*.container_pied1 .port {
	margin-right: 200px;
	white-space: nowrap;
}

.container_pied1 .total {
	white-space: nowrap;
}*/

.container_pied2 {	
	display: flex;
	justify-content: center;
	background: #F7C5C5;
	padding: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.container_pied3 {
	display: flex;
	justify-content: space-between;
	/* background: #F5F5F5; */
	padding: 15px;
}

.container_pied3 a.continuer {
	font-size: 19px;
	font-style: italic;
	color: #323b49;
	text-shadow: 1px 2px 3px rgba(0,0,0, 0.5);
	text-decoration: none;
	display: block;
}

.container_pied3 .continuer:hover {
	background: transparent;
	color: #703C49;
}

.container_pied3 a.continuer::before {
	content: '\25C4';
	margin-right: 10px;
}

/* À voir...
.container_pied3 a.continuer.vide {
	position: relative;
  	right: -41%;
}
*/

.container_pied3 a.bouton {
	background: url("img/payer.png") no-repeat;
	background-position: 0 0;
	float: right;
	width: 177px;
	height: 47px;
	display: block;
	text-align: center;
	text-decoration: none;
	line-height: 47px;
	color: #000;
	margin-top: 15px;
}

.container_pied3 .proceed, .container_pied3 input[type=submit] {
	border: none;
	background: url("img/proceed3.png") no-repeat;
	background-position: 0 0;
	width: 177px;
	height: 47px;
	display: block;
	float: right;
	text-align: center;
	text-decoration: none;
	line-height: 47px;
	color: #fff;
	margin-top: 15px; 
}

.container_pied3 .bouton:hover, .container_pied3 .proceed:hover {
	background-position: 0 -49px; 
}

.container_pied4 {
	display: flex;
	justify-content: flex-end;
	padding: 15px;
}

.container_pied4 input.accept {
	margin-right: 10px;
}

.container_pied4 .cgv {

}



/* À voir... succes_panier et erreur_panier */


.succes_panier {	
    max-width: 600px;
    margin: 0 auto;
    color: white;
    background: #742674;
    padding: 20px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    behavior: url(FR/panier/js/pie/PIE.htc);
}

.succes_panier a {
	color: #db2121;	
}

.succes_panier a:hover {
	color: #fff;	
}

.erreur_panier {
    display: block;
    margin: 0 auto;
    margin-top: 50px;
    text-align: center;
    background: #F7C5C5;
    padding: 20px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    behavior: url(FR/panier/js/pie/PIE.htc);
}

/* ==========================================
   				Fenêtre modale
   ========================================== */


#fade { /*--Masque opaque noir de fond--*/
	display: none; /*--masqué par défaut--*/
	background: #000;
	position: fixed; left: 0; top: 0;
	width: 100%; height: 100%;
	opacity: .80;
	z-index: 9999;
}
.popup_block{
	display: none; /*--masqué par défaut--*/
	background: #fff;
	overflow: auto;
	padding: 20px;
	border: 20px solid #ddd;
	float: left;
	font-size: 1.2em;
	position: fixed;
	top: 50%; left: 50%;
	z-index: 99999;
	/*--Les différentes définitions de Box Shadow en CSS3--*/
	-webkit-box-shadow: 0px 0px 20px #000;
	-moz-box-shadow: 0px 0px 20px #000;
	box-shadow: 0px 0px 20px #000;
	/*--Coins arrondis en CSS3--*/
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
img.btn_close {
	float: right;
	margin-left: 498px;
	margin-top: -75px;
	position: fixed;
	opacity: 0.4;
	filter: alpha(opacity=40);
}

img.btn_close:hover {
	opacity: 1.0;
	filter: alpha(opacity=100);
}

/*--Gérer la position fixed pour IE6--*/
*html #fade {
	position: absolute;
}
*html .popup_block {
	position: absolute;
}

/* ==========================================
   				Règles responsive
   ========================================== */

@media all and (max-width: 1000px) {
	#content_panier {
		max-width: 100%;
	}
	.container_header {
		/* on centre en répartissant l'espace entre les items */
		justify-content: space-around;
	}
}

@media only screen and (max-width: 700px) {

	#panier {
		height: 135vh;
	}

	.container {
		flex-direction: column;
	}


	.table-responsive table, 
	.table-responsive thead, 
	.table-responsive tbody, 
	.table-responsive tr, 
	.table-responsive th, 
	.table-responsive td {
	    display: block;
	}

	.table-responsive thead {
	    display: none;
	}

	.table-responsive td {
	    padding-left: 150px;
	    position: relative;
	    margin-top: -1px;
	    /*background: #FFF;*/
	}

	/*.table-responsive td:nth-child(odd) {
	    background-color: #eee;
	}*/

	.table-responsive.panier td::before {
	    padding: 10px;
	    content: attr(data-label);
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 130px;
	    bottom: 0;
	    background-color: #000;
	    color: #FFF;
	    display: flex;
	    align-items: center;
	    font-weight: bold;
	}

	.table-responsive tr {
	    margin-bottom: 1rem;
	}

	.table-responsive th + td {
	    padding-left: 10px;
	}

	.table-responsive th + td::before {
	    display: none;
	}


}

@media only screen and (max-width: 415px) {
	.container_pied1 .affiche_port, .container_pied1 .total {
		padding-top: 2rem;
	}
}

@media only screen and (max-width: 380px) {

	.container_header h2 {
		font-size: 1.8rem;
	}	
	.container_header .sstitre  {
		font-size: 1.35rem;
	}
	.table-responsive td {
		text-align: center !important;
	}
	.container_pied3 a.continuer {
		font-size: 1.8rem;
	}

	.container_pied1 .port {
		margin-right: auto;	
	}
}

@media only screen and (max-width: 360px) {
	.container_pied1 {
	
	
	}
}
