/**
* ARTEPOLE Module marquage Version 1.0.0
*
*  @author    Artepole <christian.ponsoda@nordnet.fr>
*  @copyright Copyright (c) permanent, Artepole
*  @license   Addons PrestaShop license limitation
*
*  NOTICE OF LICENSE
*
*  Don't use this module on several shops. The license provided by PrestaShop Addons
*  for all its modules is valid only once for a single shop.
*/

span.label-tooltip {
    text-decoration: none;
    font-size: 13px;
    color: #3586ae;
    background-color: #edf7fb;
    border: none;
    border-bottom: solid 1px #d8edf7;
    padding: 0 5px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}
.bootstrap .tooltip {
    font-size: 12px;
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    white-space: normal;
}
.bootstrap .tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    visibility: visible;
    font-size: 11px;
    line-height: 1.4;
    opacity: 0;
    filter: alpha(opacity=0);
}
.bootstrap .tooltip.in {
    opacity: 1;
    filter: alpha(opacity=100);
}
.bootstrap .tooltip.top {
    margin-top: -3px;
    padding: 5px 0;
}
.bootstrap .tooltip.right {
    margin-left: 3px;
    padding: 0 5px;
}
.bootstrap .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0;
}
.bootstrap .tooltip.left {
    margin-left: -3px;
    padding: 0 5px;
}
.bootstrap .tooltip-inner {
    max-width: 250px;
    padding: 20px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #555;
    border-radius: 3px;
}
.bootstrap .tooltip-inner :last-child {
    margin-bottom: 0;
}
.bootstrap .tooltip-arrow {
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
}
.bootstrap .tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 5px 5px 0;
    border-top-color: #555;
}
.bootstrap .tooltip.top-left .tooltip-arrow {
    bottom: 0;
    left: 5px;
    border-width: 5px 5px 0;
    border-top-color: #555;
}
.bootstrap .tooltip.top-right .tooltip-arrow {
    bottom: 0;
    right: 5px;
    border-width: 5px 5px 0;
    border-top-color: #555;
}
.bootstrap .tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-width: 5px 5px 5px 0;
    border-right-color: #555;
}
.bootstrap .tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-width: 5px 0 5px 5px;
    border-left-color: #555;
}
.bootstrap .tooltip.bottom .tooltip-arrow {
    top: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #555;
}
.bootstrap .tooltip.bottom-left .tooltip-arrow {
    top: 0;
    left: 5px;
    border-width: 0 5px 5px;
    border-bottom-color: #555;
}
.bootstrap .tooltip.bottom-right .tooltip-arrow {
    top: 0;
    right: 5px;
    border-width: 0 5px 5px;
    border-bottom-color: #555;
}
.infosCusto {
    color: #000;
    font-size: 14px;
    margin: 5px 0 !important;
}
.explain {
    text-decoration: none;
    color: #3586ae;
    background-color: #edf7fb;
    border: none;
    border-bottom: solid 1px #d8edf7;
    padding: 0 5px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    font-size: 15px;
}
.ponit {
    cursor: pointer;
}
.nodisplay,
.ordInfos {
    display: none !important;
}
#infos {
    font-size: 15px;
    background: white;
}
.delImgInfo {
    color: #f00;
    cursor: pointer;
}
.delImgInfo i {
    font-size: 20px;
}
.uploader {
    width: 300px !important;
}
.hl {
    background-color: #f9ffef;
}
#blablaCart {
    margin-bottom: 20px;
    text-align: center;
    font-size: 15px;
    color: #555;
    background-color: #d8edf7;
}
#blablaCart p {
    padding: 10px;
    background-color: #3586ae;
    color: #fff;
}
.marg10 {
    margin: 10px 0;
}
#marq-button {
    text-transform: uppercase;
    padding: 0 1.25rem;
}
#marq-button a.btn {
    width: 100%;
    font-weight: bold;
}
#masterbloc2 {
    width: 100%;
}
.text-bold {
    font-weight: bold;
}
.keeped {
    padding: 5px;
    background: blue;
    color: white;
    border-radius: 5px;
}
.box p.keepedP {
    margin-bottom: 5px;
}
#errorMarq {
    text-align: center;
    font-size: 18px;
    color: red;
}
.helpBox.linkH {
    padding: 5px;
    background: #ff0101;
    color: white;
    border-radius: 5px;
}
.helpBox.linkH:hover {
    background: #6c6b6b;
    color: white;
}
.selChoiceType {
    color: #000;
}
.selChoiceType.distingue {
    border-color: red;
}
.distingueNeg {
    border: 2px solid red !important;
    position: relative;
}

.distingueErr {
    border: 2px solid red;
}
.distingue {
    border: 2px dashed rgb(19, 92, 219) !important;
    position: relative;
}
.qtymarqs {
    width: 60px;
    color: #000;
    /*margin: auto;*/
}

/* VO Masquer la modale par défaut */

.infoChange {
    position: absolute;
    right: 0%;
    bottom: 2%;
    color: blue;
    border: 1px dashed blue;
    border-radius: 30px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.infoNeg {
    color: red !important;
    border: 1px dashed red !important;
}
.modal-marq {
    display: none;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 300px;
    height: 250px;
    background-color: white;
    border: none !important;
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

.modal-content-marq {
    margin: 10px 0;
    padding: 5px;
}

.modal-close-marq {
    text-align: right;
    font-weight: bold;
    cursor: pointer;
}

/* Arrière-plan sombre */
.modal-overlay-marq {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
}

.delMarq {
    font-size: 20px;
    color: red;
}
.newMarq {
    font-size: 20px;
    color: green;
    margin-right: 10px;
}
/*
#containPlaceFor {
    margin: 15px 0;
}
*/
.btn[disabled] {
    background: #4cbb6c;
    color: white;
}
/*
.contBut {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap-reverse;
    gap: 10px;
}
*/
.delGM {
    flex: 77%;
}
.marqG {
    flex: 20%;
    margin-top: 10px;
}
.w-30 {
    width: 30%;
}
.w-40 {
    width: 40%;
}
.product-name {
    margin: 0px 0px;
}
.btn-video {
    color: #000;
    font-size: 16px;
    border-radius: 5px;
    background: #f5f5f5;
    display: inline-flex;
    align-items: center;
    padding: 0px 10px;
    width: 100%;
    margin-bottom: 5px;
}
.btn-video:hover {
    background: #b0b0b0;
}
.css-button-text {
    position: relative;
    padding: 10px 18px;
}
.css-button-icon {
    position: relative;
    border-right: 1px solid #ffffff29;
    box-shadow: inset rgb(0 0 0 / 14%) -1px 0 0;
    padding: 10px 9px;
}
.css-button-icon > i {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-size: 16px;
    left: 2px;
}
.mt-5 {
    margin-top: 5px;
}
/*VO*/
.btn {
    font-size: 13px;
    white-space: normal;
}
.box {
    box-shadow: 1px 1px 12px #555;
    background: #f5f5f5;
    border: #d6d4d4 solid 1px;
    padding: 14px 18px 13px;
    margin: 30px 10px 30px 10px;
    line-height: 23px;
    margin: 30px 20px;
}
#submitInfos {
    width: 100%;
    background-color: #d7fad8;
    border: #d7fad8 1px solid;
}
#submitInfos span {
    font-size: 1rem;
    font-weight: bold;
}
.hide {
    display: none;
}
.bibi,
.bibi td,
.bibi th {
    border: 1px solid #544a4a !important;
}
.cart_quantity {
    vertical-align: middle !important;
}
.table-border-bottom {
    border-bottom-color: rgb(166, 166, 172) !important;
}
.formAdress {
    display: flex;
    flex-wrap: wrap;
    border: 1px solid rgb(205, 209, 208);
    margin-bottom: 20px;
    justify-content: flex-end;
    background: white;
}
.partFormAdress {
    flex: 1 1 auto;
    align-content: center;
    align-self: center;
    padding: 0px 10px;
    line-height: 1.8;
}
.partFormAdressX {
    width: 130px;
    align-self: center;
    padding: 0px 10px;
    line-height: 1.8;
}

.partFormAdressXY {
    width: 130px;
    align-self: center;
    line-height: 1.8;
}
.labAdress {
    font-size: 12px;
    margin-bottom: 0px !important;
    text-align: left;
    text-wrap: nowrap;
}
.spanAdress {
    font-size: 14px;
}
.inptAdress {
    border: 1px solid;
}
.aAdress {
    display: block;
}
.modAdress {
    display: flex;
    justify-content: flex-end;
}
.vh4 {
    /*text-align: center;*/
    margin: 10px 10px;
    align-self: center;
    width: 260px;
}
.videoHelp {
    display: flex;
    flex-wrap: wrap;
    /*align-content: center;
    align-items: center;*/
    margin-top: 10px;
}
.btnVideoHelp {
    margin: 0px 15px 0px 0px;
}
.h4Selection {
    width: 300px;
    align-self: center;
}
.marqPerso {
    /* margin: 0px 15px 10px 0px; */
    padding-right: 15px;
}
.masterbloc2 {
    width: 100%;
}
.selectTypeMarquage {
    display: flex;
    flex-wrap: wrap;
}
.contSpec {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.shadowCont {
    display: flex;
    flex-wrap: wrap;
}

.tableDetailMarquage {
    border: 1px solid black;
    flex-basis: 85%;
}

.detailProd {
    margin: 5px;
    /*border: 1px solid grey;*/
    display: flex;
    flex: 1 1 31%;
}
.entete {
    /*border: 1px solid red;*/
    display: flex;
    padding: 5px;
}
.eachProd {
    display: flex;
    border: 1px solid rgb(210, 210, 214);
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 5px;
    padding-bottom: 5px;
    background: white;
    min-height: 100px;
    position: relative;
}
.noMarqued {
    display: flex;
    flex-direction: column;
    margin: 0px 10px 0px 0px;
}
.totQty {
    display: flex;
    flex-direction: column;
    margin: 0px 10px 0px 0px;
}
.blocInpt {
    padding: 0px 5px;
    align-content: center;
}
.emballProd {
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}
.noMtotQ {
    display: flex;
}
.trMarquings {
    display: flex;
    margin-bottom: 10px;
    /*border-bottom: 2px solid rgb(197, 201, 202);*/
    /*/ padding-bottom: 5px;*/
    justify-content: space-between;
    margin: 0px 5px;
}
.divMarq {
    display: flex;
    flex-direction: column;
    flex: 1 1 50%;
    /* min-width: 450px;*/
}
.contType {
    display: flex;
    flex-direction: column;
}
.contPlace {
    display: flex;
    flex-direction: column;
}
.nbActions {
    display: flex;
}

.adjustnbAction {
    margin: 0px 5px;
    display: flex;
    flex-direction: column;
}

.blocAttach {
    display: flex;
    flex-wrap: wrap;
}
.adjustlab {
    text-align: left;
    width: 100%;
}

.fileAttach {
    margin: 15px;
}

.customInptFile {
    width: 100%;
}

/*MYREQUEST*/
.containerMR {
    display: flex;
    /*flex-wrap: wrap;*/
    justify-content: space-between;
	border: 1px solid #578a57;
    padding: 5px;
    border-radius: 5px;
	margin-top: 10px;
}
.blocMR {
    display: flex;
    align-items: center;
    border: 1px solid #eeeeee;
    padding: 15px;
    border-radius: 5px;
    flex: 1 0 25%;
}
.sous1BlocMR {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.sous2BlocMR {
    display: flex;
    justify-content: center;
    flex: 1;
    /*margin-top: 5px;*/
}
.labMR {
    margin: 0px 10px 0px 0px;
    text-align: left;
}
.block-center {
    width: 98%;
    margin: auto;
}
.customNoTable {
    width: auto;
}
.aMR {
    text-wrap: wrap;
    font-weight: bold;
	border-radius: 25px;
}
.valid-bat {
    font-size: 0.8rem;
    color: #ffffff;
    text-transform: none;
}
.blocMR2 {
    display: flex;
    align-items: center;
    border: 1px solid #eeeeee;
    padding: 15px;
    border-radius: 5px;
    align-content: center;
    justify-content: center;
    flex: 1;
}
.contentBtnValidation {
    display: flex;
    flex-direction: row;
}
.thumbi {
    width: 100px;
}
.globalContent {
    display: flex;
    flex-wrap: wrap;
}

.blocF {
    flex-basis: 15%;
    display: flex;
    overflow: visible !important;
}

.blocFbig {
    height: 400px;
    top: 100px;
    position: sticky;
}
.customAffix-top {
    display: flex;
    flex-direction: column-reverse;
}
.masterbloc1 {
    display: flex;
}
.blocTypePlace {
    display: flex;
    gap: 20px;
    /*max-width: 450px;*/
    flex: 1 1 75%;
    justify-content: space-between;
}
.customqtymarqs {
    min-width: 50px;
}
.iconDelAdd {
    display: flex;
    align-items: center;
    height: 100%;
}
.customqtymarqs {
    margin: auto;
}

.addBorderOnTop {
    border-top: 1px solid rgb(197, 201, 202);
    margin-top: 10px;
    padding-top: 10px;
}
.marginAuto {
    margin: auto;
}
.containerQTY {
    flex: 1 1 68%;
    display: flex;
}
@media (max-width: 1360px) {
    .detailProd {
        flex: 1 1 100%;
        gap: 20px;
    }
    .containerQTY {
        flex: 1 1 100%;
    }
    .divMarq {
        flex: 1 1 75%;
    }
}

@media (max-width: 1139px) {
    .blocTypePlace {
        flex-direction: column;
        gap: 0px;
    }
    .blocTypePlace {
        max-width: 400px;
    }
    .qtymarqs {
        margin: auto;
    }
}

@media (max-width: 1227px) {
    .blocMR {
        flex: 1 0 32%;
    }
    .containerMR {
        flex-direction: column;
    }
}

@media (max-width: 999px) {
    .noMtotQ {
        flex: 1 1 25%;
    }
}

@media (max-width: 960px) {
    .masterbloc1 {
        flex-direction: column;
    }
    .customAffix-top {
        flex-direction: column;
    }
    .blocFbig {
        height: 100%;
        top: 0px;
        position: relative;
    }
}

@media (max-width: 950px) {
    /*.noMtotQ {
        justify-content: space-around;
        flex: 1 1 100%;
    }*/
    .blocMR {
        flex: 1 0 50%;
    }
    .vh4 {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .detailProd {
        max-width: 100%;
    }
    .blocTypePlace {
        max-width: 350px;
        flex: 1 1 75%;
    }
    .noMtotQ {
        flex: 1 1 25%;
    }
    .divMarq {
        /*/flex-direction: row;*/
        flex: 1 1 70%;
    }
    /*.noMtotQ {
        justify-content: space-around;
        flex: 1 1 100%;
    }*/
    /*.divMarq {
        flex: 1 1 100%;
        min-width: 200px;
    }*/
    .customBtn {
        white-space: normal;
    }
    .sous1BlocMR {
        flex-direction: column;
    }
    /*.trMarquings {
        flex-direction: column;
    }*/
}

@media (max-width: 580px) {
    .partFormAdress {
        align-self: auto;
    }
    .partFormAdressX {
        align-self: auto;
    }

    .noMtotQ {
        justify-content: center;
    }
    .containerQTY {
        flex-direction: column;
    }
    .formAdress {
        flex-direction: column;
    }
    .prodDelayGroup {
        display: flex;
        flex-direction: column;
    }
    .labDelay {
        text-align: left;
    }
}
