/* Styles pour la réservation */

/********************
Titres, présentation par défaut
********************/
#reservationContener h1 {
    font-weight: bold;
    font-size: 1em;
    color: #51CBFF;
}
#reservationContener h2 {
    font-size: 1.2em;
    background-color: #009AD9;
    color: #ffffff;
    padding: 5px;
    margin-top: 15px;
}
#reservationContener h3 {
    font-size: 1em;
    background-color: #51CBFF;
    color: #FFFFFF;
    padding: 5px;
}
body#reservation #reservationContener h3 {
    color: #FFFFFF;
}
#reservationContener h4 {
    color: #009AD9;
    font-size: 0.8em;
    margin-top : 10px;
    padding-left: 5px;
    clear:both;
}

#reservationContener {
    width:900px;
    /*font-size: 0.8em;*/
}  

#reservationContener #reservationSaved{
    background-color:#FFFFFF;
    border: 1px solid #51CBFF;
    margin: 15px 50px;
    padding: 15px;
    color: #000000;
}
#reservationContener #reservationSaved h1 {
    color: #51CBFF;
    font-weight: bold;
    font-size: 1.5em;
}

#reservationContener .reservationTitle {
    display:none;
}


/*************************
Résumé de la proposition
*************************/
#reservationContener .proposal {
    margin : 15px 0px;
    padding: 10px;
    position:relative;
    clear:both;
    /*height:80px;*/
    background-color: #E3E3E3;
    border:1px solid #CCC;
}
#reservationContener .proposal img {
    width:80px;
    float: left;
    border:2px solid #FFF;
    margin-right:25px;
}
#reservationContener .proposal p {
    font-size: 0.8em;
    color: #000000;
    clear:none;
    margin:0;
}
#reservationContener .proposal p.proposalDates {
    font-weight: bold;
    font-size: 1em;
    color: #009AD9;
}
#reservationContener .proposal p.proposalEtab {
    font-weight: bold;
    color: #747474;
}
#reservationContener .proposal p.proposalLength {
    font-weight: bold;
}

#reservationContener .proposal .total, #reservationContener .contentBlock .total {
    float:right;
    width: 115px;
    height: 55px;
    border: 1px solid #2F687F;
    background-color: #009AD9;
    padding: 4px;
    text-align: center;
    font-size: 1.5em;
}
#reservationContener .contentBlock .total {
    margin: 10px;
}
#reservationContener .proposal .total div, #reservationContener .contentBlock .total div {
    color: #FFFFFF;
    font-weight: bold;
}
#reservationContener .proposal .total .label, #reservationContener .contentBlock .total .label {
    font-size: 0.8em;
}
#reservationContener .proposal table.prestations {
    margin-left:105px;
    margin-top: 5px;
    width:600px;
    background-color: #FFF; /*#E0EBEF;*/
    border-left:1px dotted #D1DBDF;
    border-top:1px dotted #D1DBDF;
    border-collapse: collapse;
}

#reservationContener table.prestations td {
    padding: 2px 0;
    color: #747474;
}
#reservationContener table.prestations td.productOption,
#reservationContener table.prestations td.optionDesc,
#reservationContener table.prestations td.occupant_product_option,
#reservationContener table.prestations td.occupant_product_base
{
    padding-left:10px;
}
#reservationContener table.prestations td.productBase,
#reservationContener table.prestations td.occupant_product_base
{
    font-weight: bold;
    color: #000;
}
#reservationContener table.prestations td.productBase {
    border-bottom: 1px dotted #D1DBDF;
}
#reservationContener table.prestations td.optionDiscount {
    color: #FF870F;
    padding-left:25px;
    font-style:italic;
}
#reservationContener table.prestations td.optionPrice,
#reservationContener table.prestations td.optionPriceDiscount {
    width: 100px;
    white-space: nowrap;
    text-align: right;
    padding-right:3px;
    border-right: 1px dotted #D1DBDF;
}
#reservationContener table.prestations td.optionPriceDiscount {
    color: #FF870F;
    font-style: italic;
}
#reservationContener table.prestations td.optionPrice em {
    font-size: 0.9em;
}
#reservationContener table.prestations td div {
    display:inline;
}
#reservationContener .proposal table.prestations tr.totalPrice td {
    font-weight: bold;
    padding: 2px 0;
    color: #000;
    border-top: 1px solid #D1DBDF;
}
#reservationContener .proposal table.prestations td.occupant {
    font-style: italic;
    font-weight: bold;
    padding-left: 4px;
    border-bottom: 1px dotted #D1DBDF;
    color:#000;
}

/* Produits hors dossier */
/* #reservationContener .productProposal .prestations */
#reservationContener .productProposal {
    margin: 0 10px 15px;
    background-color: #FFF;
    border: 1px solid #CCCCCC;
    clear: both;
    padding: 10px;
    position: relative;
}
#reservationContener .productProposal table.prestations {
    margin: 5px 0 10px 10px;
    width: 850px;
    background-color: #FFF;
}
#reservationContener .productProposal table.prestations .productLabel {
    width: 550px;
}

#reservationContener .productProposal .voucherBeneficiary {
    background-color: #EAEAEA;
}
#reservationContener .productProposal .voucherBeneficiary .beneficiaryCheckbox {
   display:block;
   float:right;
   font-size:0.8em;
   font-style: italic;
}
#reservationContener .productProposal .voucherBeneficiary .beneficiaryCheckbox input {
   width:30px;
}
#reservationContener td.voucherBeneficiary table td { padding: 1px 2px; color: #000; width:140px;}
#reservationContener td.voucherBeneficiary table td input { width: 150px; height: 12px;}
#reservationContener td.voucherBeneficiary table td.label { font-size: 0.8em; color: #747474; width:110px;}
#reservationContener td.voucherBeneficiary table td.dateField input { width: 70px; }

/*************************
 Un block
*************************/
#reservationContener .contentBlock .proposal {
    margin : 0 10px 15px 10px;
}
#reservationContener .contentBlock {
    margin: 20px 0px 0px 0px;
    padding: 0px;
    border: 1px solid #009AD9;
    background-color: #FFF;    
    clear: both;
}
#reservationContener .proposals {
    background-color: #E0EBEF;
}
#reservationContener .contentBlock h2 {
    height: 20px;
    padding: 5px;
    margin-top: 0;
}
#reservationContener .contentBlock .elementHeader {
    background-color: #CCC;
    height: 20px;
    margin: 15px 10px 0px 10px;
}
#reservationContener .contentBlock .elementHeader .elementHeaderLeft {
    float: left;
    width: 600px;
}
#reservationContener .contentBlock .elementHeader .actionContener {
    width: 200px;
    float: right;
    padding-right: 5px;
    text-align: right;
}
#reservationContener .contentBlock .elementHeader .actionContener a {
    background-position: right;
    background-repeat: no-repeat;
    display: block;
    height: 20px;
    width: 35px;
    float:right;
}
#reservationContener .contentBlock .elementHeader .actionContener a.delete {
    background-image: url(action_delete.gif);
}
#reservationContener .contentBlock .elementHeader .actionContener a.edit {
    background-image: url(action_edit.gif);
}
#reservationContener .contentBlock .elementHeader .actionContener a span {
    display:none;
}
#reservationContener .contentBlock .elementHeader .actionContener .control_select {
   float:right;
   text-align:right;
   background-color:#DDD;
   font-size:0.9em;
}
#reservationContener .contentBlock p {
    margin-left: 10px;
}



/*************************
 Un hébergement
*************************/
#reservationContener .aRoom, #reservationContener .cartContentBlock {
    margin: 20px 0px 0px 0px;
    padding: 0px;
    border: 1px solid #009AD9;
    background-color: #E0EBEF;    
    clear: both;
}
#reservationContener .aRoom .stayHeader, #reservationContener .cartContentBlock .stayHeader {
    height: 30px;
    padding: 0;
    margin-top: 0;
}
#reservationContener .aRoom .stayHeaderLeft {
    float: left;
    width: 700px;
    padding: 5px;
}
#reservationContener .aRoom .stayHeader .addAction {
    width: 28px;
    float: right;
}
#reservationContener .aRoom .stayHeader .addAction a {
    background-position: right;
    background-repeat: no-repeat;
    display: block;
    height: 28px;
    width: 28px;
    margin-top: 1px;
}
#reservationContener .aRoom .stayHeader a.addOccupantAction {
    background-image: url(action_add_occupant.gif);
}
#reservationContener .aRoom .stayHeader a.addBabyAction {
    background-image: url(action_add_baby.gif);
}
#reservationContener .aRoom .stayHeader .addAction span {
    display: none;
}
#reservationContener .aRoom .changeOccupantCount {
    font-size: 0.8em;
    color: #0E61AE;
    font-weight: normal;
    padding: 2px 5px;
    background-color: #43AFD9;
    border-bottom: 1px solid #009AD9;
}
#reservationContener .aRoom .changeOccupantCount  select {
    font-size: 8px;
    width: 35px;
    margin: 0 3px 0 20px;
    color:#0E61AE;
    background-color: #43AFD9;
}

#reservationContener .aRoom table {
    width: 100%;
    font-size: 0.8em;
}
#reservationContener .aRoom table td {
    padding: 2px 3px;
    color: #000000;
}
#reservationContener .aRoom table tr.productsNotSelectedYet td {
    color: #747474;
}
#reservationContener .aRoom table td.optionQuantity{
    width: 40px;
    text-align: right;
}
#reservationContener .aRoom table td.optionQuantity .control_checkbox {
    width: auto;
}
#reservationContener .aRoom table td.optionLabel .productBase {
    color: #000000;
    font-weight: bold;
}
#reservationContener .aRoom table td.optionLabel .productComplement, #reservationContener table span.productDescription {
    font-style: italic;
    font-weight: normal;
}
#reservationContener .productProposal .prestations .productComplement {
    font-weight: normal;
}
#reservationContener .aRoom table td.optionLabel img.productIcon {
    float:left;
    margin-right:5px;
}
#reservationContener .productProposal .prestations td.productIcon {
   width: 80px;
}
#reservationContener .aRoom table tr.productDiscounts td {
    color: #E07706;
}
#reservationContener .aRoom table td.price{
    color: #009AD9;
    text-align: right;
    font-weight: bold;
    width: 100px;
}
#reservationContener .aRoom table td.action{
    width: 40px;
    text-align: center;
}   
#reservationContener .aRoom table td.action a, #reservationContener .aRoom table td.optionQuantity a {
    display: block;
    width: 25px;
    height: 16px;
    background-position: top left;
    background-repeat: no-repeat;
    margin: 0px;
}
#reservationContener .aRoom table td.action a.deleteLink {
    background-image: url(action_delete.gif);
}
#reservationContener .aRoom table a.popupLink {
    background-image: url(action_popup.gif);
    padding: 5px 5px 5px 50px;
    background-position: top left;
    background-repeat: no-repeat;    
}
#reservationContener .aRoom table td.optionQuantity a.addLink {
    background-image: url(action_add.gif);
}
#reservationContener .aRoom table td.action a span, #reservationContener .aRoom table td.optionQuantity a span {
    display: none;
}

#reservationContener .aRoom .occupantHeader {
    height: 20px;
}
#reservationContener .aRoom .occupantHeaderLeft {
    float: left;
    width: 720px;
}
#reservationContener .aRoom .occupantHeader .deleteAction {
    width: 20px;
    float: right;
    padding-right: 5px;
}
#reservationContener .aRoom .occupantHeader .deleteAction a {
    background-image: url(action_delete_occupant.gif);
    background-position: right;
    background-repeat: no-repeat;
    display: block;
    height: 20px;
    width: 20px;
}
#reservationContener .aRoom .occupantHeader .deleteAction span {
    display: none;
}

.hiddenIfCheckbox 
{
    /* Mettre dans le CSS quand on utilise les checkbox */
    display: none;
}


#reservationContener .aRoom .roomFeature .roomFeatureCategory {
   font-weight: bold;
   color: #000;
}
#reservationContener .aRoom .roomFeature .optionLabel label,
#reservationContener .aRoom .roomFeature .optionLabel select {
   display: block;
   float:left;
   color: #747474;
}
#reservationContener .aRoom .roomFeature .optionLabel label {
   width:50%;
}
#reservationContener .aRoom .roomFeature .selected .optionLabel label,
#reservationContener .aRoom .roomFeature .selected .optionLabel select {
   color: #000;
}
/*************************
 Un occupant
*************************/
#reservationContener .anOccupant {
    margin: 10px 10px;
    padding: 0px;
    border: 1px solid #51CBFF;
    background-color: #FFF;
}
#reservationContener .aRoom .anOccupant h3 {
    padding: 5px 5px 5px 35px;
    background-image: url(occupant_adult.gif);
    background-position: top left;
    background-repeat: no-repeat;
}
#reservationContener .aRoom .anOccupant h3 span {
    font-weight: normal;
}

.occupantFields
{
    width: 880px;
    float: left;
}

#reservationContener .aRoom .anOccupant .occupantFields span {
    font-weight: bold;
    padding-left: 25px;
}

#reservationContener .aRoom .anOccupant p span.disabled{
    color:#CCC;
}
#reservationContener .aRoom .anOccupant table {
    margin-left: 0px;
}
#reservationContener tr.subTotal td {
    font-weight: bold;
    text-align: right;
    color: #747474;
    font-style: italic;
}
#reservationContener tr.subTotal td.price {
    background-color: #E0E0E0;
    color: #747474;
    border: 1px solid #CCCCCC;
}







#reservationContener #financialContener {
    padding: 0px;
}
#reservationContener .financialField,
#reservationContener #financialContener .total {
    white-space: nowrap;
    text-align: right;
    margin:10px 0px 5px 0px;
    padding: 5px 0px;
}

#reservationContener #financialContener .total {
    margin:10px 10px;
}

#reservationContener .financialField .label {
    display: inline;
    font-weight: bold;
}
#reservationContener .financialField .field {
    display: inline;
    padding: 5px 50px 5px 5px;
}
#reservationContener .contentBlock #financialContener .label {
    font-weight: bold;
}
#reservationContener .contentBlock #financialContener .field{
    padding: 5px 50px 5px 5px;
}
#reservationContener .contentBlock #financialContener .total {
    color: #51CBFF;
    font-weight: bold;
    font-size: 1.2em;
    background-color: #E0E0E0;
    border: 1px solid #CCCCCC;
}

#reservationContener #financialContener #client_due_type {
    text-align: right;
    padding: 2px;
}




/********************
Client
********************/
#newAccount, #address, #existingCustomerLayer {
    clear: both;
}
.aField {
    margin: 8px 5px 5px 50px;
    position:relative;
    display: block;
}
.aField .label {
    display: block;
    float: left;
    width: 180px;
    text-align: right;
    padding: 2px 5px 2px 2px;
}
.aField .field {
    display: block;
    float: left;
    width: 530px;
    padding:2px;
    color: #000000;
}
#reservation #authentication .aField .field, #reservation #option .aField .field {
    width:650px;
}
.aField textarea {
    width: 400px;
    height: 30px;
}
/* Bug IE http://www.webmasterworld.com/css/3253181.htm */
#reservationContener p {
    margin:5px 0px;
    clear:both
}

#existingCustomerLayer .loginLink {
    margin: 5px 5px 5px 105px;
    padding: 10px;
    width:650px;
}
#existingCustomerLayer .loginLink a {
    border: 1px solid #CCCCCC;
    padding: 3px 5px;
    margin: 2px;
    text-decoration: none;
    color: #000000;
    background-color: #E0E0E0;
}
#existingCustomerLayer .forgetLink {
    margin: 5px 5px 5px 105px;
    padding-left: 10px;
}

#reservationContener table {
    margin-left: 5px;
}
#reservationContener table td {
    padding: 1px 5px;
    vertical-align: top;
    font-weight: normal;
    color: #000000;
}
#reservationContener table td.label {
    text-align: right;
    width: 110px;
    color: #747474;
}
#reservationContener table td input {
    width: 250px;
    margin-bottom: 3px;
}
#reservationContener table td.dateField input {
    font-size:1em;
    width: 70px;
}
#reservationContener table td input.radioPayment {
    width: 15px;
}

#paiement #payment_layer_cc td.label {
    width: 130px;
}

#reservationContener #authentication, #reservationContener #option, #reservationContener #paiement{
    clear: both;
    margin-top: 15px;
}





/********************
Pied de page et navigation basse
********************/
#footerContener {
    float:left;
    width:880px;
    padding: 15px 20px;
}
#footerContener .footerNavigation {
    width: 280px;
    padding: 5px 0px;
    float: left;
    font-size: 1em;
    margin-left: 0px;
}
#footerContener {
    text-align: center;
}
#footerContener .gauche {
    text-align: left;
}
#footerContener .droite {
    text-align: right;
}
#footerContener .gauche a {
    background-image: url(action_back.gif);
    background-position: left;
    background-repeat: no-repeat;
}
#footerContener .droite a {
    background-image: url(action_next.gif);
    background-position: right;
    background-repeat: no-repeat;
}
#footerContener .droite a.otherActions {
    background-image: url(action_next_other.gif);
    color: #b5b5b5;
}

#footerContener .footerNavigation a {
    padding: 0px 40px;
    line-height: 18px;
}
#footerContener .droite a#printButton{
    background-image: url(action_print.gif);
}







/************
 * Page cart_content
 * **********/

#emptyCart { }

#cartContentTitle { }

#cartItems { }

.cartItem
{
    /*border: 1px solid #51CBFF;*/
    margin: 10px 5px 20px 5px;
    padding: 5px;
}

.cartItem img
{
    float: right;
    margin: 0px 0px 10px 10px;
    clear:right;
}

#reservationContener table.optionTable {
    width: 800px;
}
#reservationContener table.optionTable td {
    padding: 0px;
    color: #747474;
}
#reservationContener table.optionTable td.optionDesc {
}
#reservationContener table.optionTable td.optionPrice {
    width: 80px;
    white-space: nowrap;
    text-align: right;
    padding-right: 3px;
}
#reservationContener table.optionTable td.stayDescription {
    font-weight: bold ! important;
    border: none;
}

#reservationContener div.cartItemActions {
    padding: 5px;
    height: 15px;
}
#reservationContener td.cartItemActions {
    padding: 5px;
    height: 15px;
    width: 100px;
}

#reservationContener .cartItemActions a {
    float: left;
    background-position: left;
    background-repeat: no-repeat;
    padding-left: 30px;
}
#reservationContener a.removeCartItem {
    background-image: url(action_delete.gif);
}
#reservationContener table.outRes a.removeCartItem {
    width: auto;
}
#reservationContener a.editCartItem {
    background-image: url(action_edit.gif);
}


/***********
 * Code cadeau
 * *********/
#reservationContener .giftCode {
    margin: 15px 5px;
}
body#reservation #reservationContener .giftCode h3 {
    background-color: transparent;
    color:#009AD9;
}
#reservationContener .giftCode p {
    clear: none;
}
#reservationContener .giftCode .giftCodePresent {
    padding-top: 5px;
}
#reservationContener .giftCode .giftCodePresent p {
    margin:0;
    padding: 2px 0 0 45px;
    clear: none;
}
#reservationContener .giftCode .giftCodePresent .description {
    font-weight: bold;
}
#reservationContener .giftCode .giftCodePresent .reduction {
    font-style: italic;
}

#reservationContener .giftCode .giftCodePresent a.delete {
    background-image:url(action_delete.gif);
    background-position:right center;
    background-repeat:no-repeat;
    display:block;
    float:right;
    height:20px;
    width:25px;
    margin-left: 20px;
}
body #reservationContener .giftCode .giftCodePresent a.left {
    float:left;
}
#reservationContener .giftCode .giftCodePresent a.delete span {
    display:none;
}






a.okButton {
    text-decoration: none;
    background-color:#51CBFF;
    padding:2px 4px;
    border-top:1px solid #BFEDFF;
    border-left:1px solid #BFEDFF;
    border-bottom:1px solid #00729F;
    border-right:1px solid #00729F;
    color:#FFF;
    font-weight: bold;
    margin-left:4px;
}
a.okButton:hover {
    border-top:1px solid #00729F;
    border-left:1px solid #00729F;
    border-bottom:1px solid #BFEDFF;
    border-right:1px solid #BFEDFF;
    color:#00729F;
}


.trashButton
{
    background-image: url(action_delete.gif);
    background-position: top left;
    background-repeat: no-repeat;
    width:30px;
    height:16px;
    border:none;
}

#financialContener #giftCodes #giftCodesPresent
{
    white-space: nowrap;
    text-align: right;
    margin:10px 0px;
    padding: 5px 50px 5px 5px;
}

#financialContener #giftCodes #giftCodesPresent .giftCodeReduction
{
    padding: 0px 30px;
}

/** End of GiftCodes styles **/

#summary
{
    margin: 8px;
}

#summary #paymentdueType
{
    padding-bottom: 16px;
}

#summary #cartTotal
{
    padding-bottom: 16px;
}

#summary #cgv
{
    padding-bottom: 8px;
}

#reservationContener #cartTotal td.cartTotalRow
{
    font-weight: bold;
    border: none;
}


.footerBlock {
    margin: 10px;
    padding: 20px;
    background: #F0F0F0;
}

#authenticationCart .aField span.field {
    width: auto;
}

#option .aField {
    height: 20px;
}

#authenticationCart p {
    text-align: left;
}
#authenticationCart span {
    text-align: center;
}
#authenticationCart input {
    text-align: center;
    width: 200px;
}
#authenticationCart .loginInput {
    padding-top: 10px;
}
#authenticationCart .loginLink {
    padding-top: 10px;
    text-align: left;
}
#authenticationCart .forgetLink {
    padding-top: 10px;
    text-align: left;
}

#reservationSaved .paidAmount {
    font-weight: bold;
    color: red;
}

#reservationSaved .reservationID {
    font-weight: bold;
}

#cartItems .savedItemHeader {
    height: 20px;
}
#cartItems .savedItemHeader div {
    float: left;
}
#cartItems .savedItemHeader .reservationDocument a {
    background-image: url(action_print.gif);
    background-position: right;
    background-repeat: no-repeat;
    display: block;
    height: 16px;
    width: 25px;
    margin-left: 5px;
}
#cartItems .savedItemHeader .reservationDocument a span {
    display: none;
}





/********************
Liste de paiements
********************/
#reservationContener table.paymentList {
    margin:15px 10px;
    background-color:#51CBFF;
    border-spacing: 1px;
    width: 880px;
    font-size: 0.9em;
}
#reservationContener table.paymentList th {
    color: #FFF;
    text-align:center;
}
#reservationContener table.paymentList td {
    background-color: #FFF;
    padding: 3px;
    color: #747474;
}

#reservationContener table.paymentList td.amount {
    text-align:right;
    white-space:nowrap;
}
#reservationContener table.paymentList td.paymentDescription {
    text-align:right;
    font-style: italic;
}
#reservationContener table.paymentList td.paymentDueName {
    text-align:left;
    font-weight:bold;
}
#reservationContener table.paymentList td.paymentDueDescription {
    text-align:left;
}
#reservationContener table.paymentList td.reservationName {
    font-weight:bold;
    color:#000;
    font-style:italic;
}
#reservationContener table.paymentList td.partnerName {
    text-align:left;
    font-style: italic;
}
#reservationContener table.paymentList td.primaryOccupantName {
    text-align:left;
    font-style: italic;
}



/***************
Proposition alternative
***************/

.alternativeProposal {
    background-color: #FCDDB5;
    border-top-color: #FF9000;
    margin: 15px -10px -10px -10px;
    padding: 10px;
    clear: both;
}
.alternativeProposal .aProposal {
   clear: both;
   margin-bottom: 10px;
}
#reservationContener .proposal .alternativeProposal .explanation {
   color: #FF9000;
   font-size: 1.1em;
   margin-bottom: 10px;
}

#reservationContener .proposal .alternativeProposal .priceBlock {
    float:right;
    width: 115px;
    height: 65px;
    border: 1px solid #FF9000;
    background-color: #FCC174;
    padding: 4px;
    text-align: center;
    
    color: #000;
}
#reservationContener .proposal .alternativeProposal .priceBlock .label {
   font-size: 0.8em;
}
#reservationContener .proposal .alternativeProposal .priceBlock .field {
   font-size: 1.4em;
}
#reservationContener .proposal .alternativeProposal .priceBlock a {
   color: #FF9000;
   background-position: left;
   background-repeat: no-repeat;
   padding-left: 30px;
   background-image: url(action_switch.gif);
}






