/**
* 2007-2020 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author    PrestaShop SA <contact@prestashop.com>
*  @copyright 2007-2020 PrestaShop SA
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*
* Don't forget to prefix your containers with your own identifier
* to avoid any conflicts with others containers.
*/

body {
    font-family: Arial;
}
/* .customizableProd .dispDesktop .cos_list.col_show_after{
    display: none !important;
} */
.pers_qty_input .bootstrap-touchspin-down, .pers_qty_input .bootstrap-touchspin-up{
    background: white !important;
    border:1px solid #ddd !important;
    border-radius: unset !important;
    padding: 5px 9px;
    font-weight: 900;
}
span.fontVis {
    display: block;
    overflow: hidden;
    height: 0px;
}
.col_show_after{
    display: none;
}
.dispMobile.loading .actionsCustomContainer,.dispMobile.loading .cart_info_avai,.dispMobile.loading .customCartContainer,.dispMobile.loading .cos_list,.dispMobile.loading .mobileCanvas{
    opacity: 0 !important;
}
.dispMobile.loading .perso-mobile-topbar {
    opacity: 1 !important;
}
.dispMobile.loading .perso-mobile-topbar .cos_select_colors {
    opacity: 1 !important;
}
.cos_btn{
    margin: 20px auto;
    display: table;
}
.cos_category_link.current_cat {
    border: 2px solid #DDD;
    background: #ddd;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 40px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: 40px !important;
}
.select2-container .select2-selection--single{
    height:40px !important;
}
/* Notification */
.customizableProd .product-detail-secondary{
    display: none;
}
.notification-message {
    -webkit-background-size: 40px 40px;
    -moz-background-size: 40px 40px;
    background-size: 40px 40px;
    background-image: -webkit-gradient(linear, left top, right bottom, color-stop(.25, rgba(255, 255, 255, .05)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255, 255, 255, .05)), color-stop(.75, rgba(255, 255, 255, .05)), color-stop(.75, transparent), to(transparent));
    background-image: -webkit-linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .05) 50%, rgba(255, 255, 255, .05) 75%, transparent 75%, transparent);
    background-image: -moz-linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .05) 50%, rgba(255, 255, 255, .05) 75%, transparent 75%, transparent);
    background-image: -ms-linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .05) 50%, rgba(255, 255, 255, .05) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .05) 50%, rgba(255, 255, 255, .05) 75%, transparent 75%, transparent);
    background-image: linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .05) 50%, rgba(255, 255, 255, .05) 75%, transparent 75%, transparent);
    -moz-box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .4);
    -webkit-box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .4);
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .4);
    width: 100%;
    top: -80px;
    border: 1px solid;
    color: #fff;
    padding: 15px;
    position: fixed;
    _position: absolute;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .5);
    -webkit-animation: animate-bg 5s linear infinite;
    -moz-animation: animate-bg 5s linear infinite;
    z-index: 1051;
}

.notification-info {
    background-color: #4ea5cd;
    border-color: #3b8eb5;
}

.notification-error {
    background-color: #de4343;
    border-color: #c43d3d;
}

.notification-warning {
    background-color: #eaaf51;
    border-color: #d99a36;
}

.notification-success {
    background-color: #61b832;
    border-color: #55a12c;
}

.notification-message h3 {
    margin: 0 0 5px 0;
}

.notification-message p {
    margin: 0;
}


/* End of Notification */


/* Style the tab */

.tab {
    overflow: hidden;
    border: 1px solid #ccc;
    background-color: #f1f1f1;
}


/* Style the buttons inside the tab */

.tab button {
    background-color: inherit;
    float: left;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 14px 16px;
    transition: 0.3s;
    font-size: 17px;
}


/* Change background color of buttons on hover */

.tab button:hover {
    background-color: #ddd;
}


/* Create an active/current tablink class */

.tab button.active {
    background-color: #ccc;
}


/* Style the tab content */

.tabcontent {
    display: none;
    padding: 6px 12px;
    border: 1px solid #ccc;
    border-top: none;
}

.btn_delete {
    background: transparent;
    border: 0px;
}

.flex-r {
    display: flex;
    flex-direction: row;
}

.flex-c {
    display: flex;
    flex-direction: column;
}

.cos_perso_product {
    padding-bottom: 30px;
}

.m-10 {
    margin: 10px;
}

.p-10 {
    padding: 10px;
}

.m-r-0 {
    margin-right: 0px;
}

.m-t-10 {
    margin-top: 10px;
}

.p-t-10 {
    padding-top: 10px;
}

.m-l-10 {
    margin-left: 10px;
}

.m-x-10 {
    margin: 0px 10px;
}

.m-b-10 {
    margin-bottom: 10px;
}

.border {
    border: 2px solid #ddd !important;
    border-radius: 2px;
}

.i-a-center {
    align-items: center;
}

.border-t {
    border-top: 2px solid #ddd;
}

.float-r {
    float: right;
}

.float-l {
    float: left;
}

.cos_def_button {
    border-radius: 2px;
    padding: 0px;
    border: 2px #ddd solid;
    font-size: 15px;
    font-weight: 200;
}

.cos_def_align_button {
    border-radius: 2px;
    padding: 5px 10px;
    border: 0px;
    font-size: 15px;
    font-weight: 200;
}

.alignbuttons {
    border: 2px #ddd solid;
}

.selected {
    background-color: #acdcea;
}

.cos_def_button:hover {
    background-color: #acdcea;
    cursor: pointer;
}

.cos_list {
    display: flex;
    flex-wrap: wrap;
    height: 750px;
    align-content: space-between;
}

.cos_section {
    margin: 10px;
    padding: 10px;
}

.cos_single_image {
    width: 70px;
    margin: 7px;
    cursor: pointer;
    position: relative;
}

.cos_single_image img {
    width: 100%;
}

.cos_cover_canvas {
    width: 630px;
    height: 630px;
}

.cos_cover{
    padding-top: 40px;
}

.cos_select_color {
    margin: 0 auto;
    padding: 20px;
    text-align: center;
}

.cos_colorselect_option {
    height: 50px;
    width: 50px;
    padding: 10px;
}

.cos_colorselect,
.cos_colorselect option {
    height: 50px;
    width: 50px;
}

.cos_colorselect:hover {
    background-color: inherit;
}

.cos_input_section {
    display: flex;
    flex-direction: column;
    padding-top: 30px;
}

.cos_image_upload {
    display: flex;
    padding: 0;
    box-sizing: border-box;
}

.cos_image_upload > .cos_image_import,
.cos_image_upload > .cos_image_add {
    flex: 1 1 50%;
    min-width: 0;
    max-width: 50%;
    box-sizing: border-box;
    padding: 10px 12px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

.cos_image_upload div {
    text-align: center;
}

.cos_image_upload div:hover {
    background-color: #acdcea;
    cursor: pointer;
}

/* SVG : zone icône à hauteur fixe (aligne photo.svg et image-bibli.svg). */
.cos_image_upload div img {
    display: block;
    flex: 0 0 40px;
    width: auto;
    height: 40px;
    max-width: 48px;
    max-height: 40px;
    margin: 0 auto;
    padding: 0;
    object-fit: contain;
    object-position: center center;
}

.cos_image_upload div p {
    flex: 0 0 auto;
    margin: 8px 0 0;
    padding: 0 6px;
    line-height: 1.25;
}

.cos_image_import {
    border-right: 2px solid #ddd;
}

.cos_text_area textarea {
    width: 100%;
    resize: none;
}

.cos_font_area {
    margin-top: 10px;
}

.cos_font_location_area .cos_def_align_button svg {
    width: 23px;
}

.cos_text_icon svg {
    width: 33px;
    height: 33px;
}

.cos_font_area select,
.cos_font_area button,
.cos_product_order_item select,
.cos_product_order_item input,
.cos_interligne_count button,
.cos_interligne_count input {
    flex: 1 auto;
    height: 40px;
}

.cos_interligne_count button,
.cos_interligne_count input {
    width: 50px;
    text-align: center;
}

.cos_interligne h4 {
    flex: auto;
}

.cos_product_order_item label {
    font-size: 18px;
}

.cos_ajouter_text:hover {
    background-color: #acdcea;
    cursor: pointer;
}

.cos_ajouter_text {
    position: relative;
}

.cos_price_tag {
    float: right;
}

.cos_product_order {
    margin-top: 50px;
}

.cos_price_tag {
    background-color: #0075ff;
    /* padding: 3px; */
    color: white;
    font-family: monospace;
    padding: 5px
}

.cos_cart_button {
    text-align: center;
}

.cos_retour {
    justify-content: space-between;
}

.cos_retour span {
    font-size: 16px;
    font-weight: bold;
}

.cos_retour span:hover {
    cursor: pointer;
}


/*  Accordion */

.cos_accordion {
    /* background-color: #eee; */
    color: #444;
    padding: 8px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.4s;
    justify-content: space-between;
    display: inline-block;
}
.cos_accordion svg{
    cursor: pointer;
}
.cos_accordion_panel {
    overflow: hidden;
}

.cos_rotate {
    transform: rotate(0deg) !important;
    transition: transform .2s linear;
}

.capa_1{
    transform: rotate(-180deg);
    transition: transform .2s linear;
}

.cos_single_image:not(.current_face):hover {
    border: 1px solid black;
}

.cos_single_image.current_face {
    cursor: default !important;
}

.cos_section {
    background: white;
}

.imgoverlay {
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
    position: absolute;
}

.cos_def_align_button,
.cos_def_button {
    background: white;
    cursor: pointer;
}

.cos_def_align_button.selected path {
    fill: #1e788c;
}

.cos_text_area textarea,
.cos_input_section select,
.cos_input_section input,
.sp-replacer {
    border: 2px #ddd solid !important;
}

.sp-replacer:hover,
.sp-replacer.sp-active {
    border-color: #1e788c5c !important;
}

.cos_input_section .sp-dd {
    line-height: 25px !important;
}

.cos_input_section .sp-preview {
    width: 25px;
    height: 28px !important;
    border: 0px !important;
}

.cos_input_section .sp-preview-inner {
    border-radius: 3px;
}

.cos_input_section .sp-replacer {
    margin-left: 5px;
}

.cos_input_section *:not(input):not(textarea) {
    user-select: none;
}
.select2.select2-container{
    width: 200px !important;
}
.requiredError input {
    border: 1px solid red !important;
}
.requiredError span {
    color: red;
}
.cos_fonts_select {
    width: 50%;
}

.additional_text {
    position: absolute;
    right: 10px;
    font-family: monospace;
}

.cos_single_modal_image:hover img {
    border: 2px solid #aaa;
}

.dz-image {
    width: 120px;
    height: 120px;
    max-height: 120px;
    /* overflow: hidden; */
    /* max-block-size: -webkit-fill-available; */
}

.dz-image img {
    width: 100%;
}

.cos_text_area.pre_input {
    padding: 10px 0;
}

.customization_info {
    background: #eee;
    padding: 0 10px 0px 10px;
    font-family: Montserrat;
    margin-top: 5px;
    max-width: 630px;
}
span.custom_face_tag {
    /* display: inline-block; */
    display: block;
    font-weight: 600;
    font-size: 13px;
    word-break: break-word;
}
.custom_face_tag img,.ui-tooltip img{
    height: 630px;
    width: 630px;
}
.all_face_min {
    display: inline-block;
    width: 100%;
    /* padding: 0px 5px; */
    text-align: center;
    cursor: pointer;
}
.face_miniature {
    display: flex;
}
.face_miniature img{
    width: 100%;
    height: 100%;
}
span.custom_face_price_tag {
    /* float: right; */
    font-weight: 600;
    font-size: 11px;
}

span.custom_total_qty {
    display: block;
    font-weight: 600;
    font-size: 12px;
    line-height: 32px;
}

span.qtynmbr {
    float: right;
    font-weight: 600;
    font-size: 12px;
}

span.custom_total_price_tag {
    display: block;
    font-weight: 600;
    font-size: 12px;
    padding-bottom: 5px;
}

span.custom_pricetg {
    float: right;
    font-weight: 600;
    font-size: 15px;
    color: #2fb5d2;
}
.headerPerso{
    display: block;
    background: #333;
    color: #fff;
    padding: 5px;
    margin: 0px -9px 4px -9px;
}
.removetextBtn{
    width: 19px;
    height: 19px;
}
.removetextBtn:not(.active) path{
    fill: #ddd ;
}
.removetextBtn:not(.active){
    cursor: pointer;
}

.lds-ring {
    position: relative;
    width: 63px;
    height: 63px;
    margin: 0 auto;
  }
.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 53px;
    height: 53px;
    margin: 8px;
    border: 8px solid #ddd;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #ddd transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}
@keyframes lds-ring {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
}
.ui-tooltip{
    display: table !important;
}
#add-to-cart-or-refresh-custom .product-quantity{
    width: 100%;
    display: table;
}
#add-to-cart-or-refresh-custom .product-quantity .add{
    display: block;
    float: unset !important;
}
#add-to-cart-or-refresh-custom .product-quantity .qty{
    float: unset !important;
}
#add-to-cart-or-refresh-custom .product-quantity .add .add-to-cart-custom{
    display: block;
    margin: 0 auto;
}
#add-to-cart-or-refresh-custom .product-quantity .quantity_wanted{
    box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2);
}
.product-variants_custom>.product-variants-item {
    margin: 1.25rem 0;
}
.product-variants_custom>.product-variants-item select {
    background-color: #fff;
    width: auto;
    /* padding-right: 1.875rem; */
    box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2);
}
#add-to-cart-or-refresh-custom #product-availability {
    display: block !important;
    text-align: center;
}
.sp-palette .sp-thumb-el{
    width: 24px !important;
    height: 24px !important;
}
.product-quantity .quantity_wanted {
    height: 38px;
    width: 50px;
    background-color: #fff !important;
    box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2) !important;
}
.dispDesktop .add-to-cart-or-refresh-custom .add{
    text-align: center;
}
.dispDesktop .add-to-cart-or-refresh-custom label,.dispDesktop .add-to-cart-or-refresh-custom span,.dispDesktop .add-to-cart-or-refresh-custom select,
.dispDesktop .add-to-cart-or-refresh-custom input,.dispDesktop .add-to-cart-or-refresh-custom .product-quantity{
    display: inline-block;
}
.dispDesktop .add-to-cart-or-refresh-custom .product-quantity .qty{
    float: unset !important;
}
.dispDesktop .product-variants_custom select{
    max-width: 170px !important;
}
/* ---- Layout responsive : mobile ≤1086px, desktop ≥1087px ---- */
.customizableProd .dispMobile {
    display: none !important;
}
.customizableProd .dispDesktop {
    display: block !important;
}
@media (max-width: 1086px) {
	.customizableProd .hidden-md-down {
		display: none !important;
	}
	.customizableProd .hidden-sm-down {
		display: none !important;
	}
    /* Masquer toute l’interface desktop (panneau droit, colonnes, etc.) */
    .customizableProd .dispDesktop {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .customizableProd .dispMobile {
        border: 0;
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        pointer-events: auto !important;
    }
	
	
    .dispMobile .cos_list{
        height: auto;
    }
    .dispMobile .cos_cover_canvas {
        margin-left: auto;
        margin-right: auto;
        overflow: hidden;
        box-sizing: border-box;
    }
    .customizableProd .dispMobile .cos_cover_canvas {
        box-sizing: border-box;
    }
    .customizableProd .dispMobile .mobileCanvas {
        min-height: 0;
        height: auto !important;
        max-height: none !important;
        flex: 0 0 auto;
        margin-top: auto;
        margin-bottom: auto;
        display: block;
        text-align: center;
        line-height: 0;
    }
    .customizableProd .dispMobile .canvas-container {
        min-height: 0;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
        box-sizing: border-box;
        overflow: hidden;
    }
    .customizableProd .dispMobile .canvas-container canvas {
        box-sizing: border-box;
    }
    .dispMobile .cos_images_list{
        margin: 0 auto;
    }
    .dispMobile .cos_single_image{
       display: inline-block;
    }
    .dispMobile .cos_select_colors {
        border-top: 2px #ddd solid;
        border-bottom: 2px #ddd solid;
    }
    .dispMobile .perso-mobile-topbar .cos_select_colors {
        border-top: none;
        border-bottom: none;
    }
    .dispMobile span.cos_color {
        font-weight: 600;
    }
    .dispMobile.cos_perso_product{
        padding-bottom: unset;
    }
    .customizableProd .dispMobile .mobileCanvas .cos_cover_canvas,
    .customizableProd .dispMobile .cos_cover_canvas.border {
        border: none !important;
        position: relative;
        flex-shrink: 0;
        line-height: 0;
    }
    .mobileCanvas{
        background-color: white;
        width: 100%;
        min-height: 0;
        height: auto;
        flex: 0 0 auto;
        margin-top: auto;
        margin-bottom: auto;
        display: block;
        text-align: center;
        line-height: 0;
        margin-left: auto;
        margin-right: auto;
        padding-bottom: 0;
    }
    .actionsCustomContainer{
        display: flex;
        text-align: center;
        border-top: 2px #ddd solid;
        padding: 11px;
    }
    .cos_act_btns {
        max-width: 32%;
        margin: 0 auto;
        margin-top: 11px;
        border-right: 0px;
        min-width: 0;
        box-sizing: border-box;
        padding: 0 6px;
    }
    .cos_act_btns img {
        display: block;
        width: 30px;
        height: auto;
        max-width: 30px;
        margin: 0 auto;
        object-fit: contain;
    }
    .cos_act_btns p {
        margin: 6px 0 0;
        padding: 0 4px;
        line-height: 1.2;
    }
    .customCartContainer {
        border-top: 2px #ddd solid;
        background-color: #4c7ebd;
        text-align: center;
    }
    .customCartContainer .product-variants_custom{
        width: 20%;
        display: inline-block;
        float: left;
        height: 100%;
        border-right: 2px solid white;
        padding: 10px 5px;
    }
    .customCartContainer .product-variants_custom>.product-variants-item{
        margin:0;
    }
    .customCartContainer span{
        color:white;
        display: block;
    }
    .customCartContainer select{
        margin: 0 auto;
    }
    .customCartContainer .product-add-to-cart-custom{
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 74%;
        height: 100%;
    }
    .customCartContainer .add{
        float: right;
        vertical-align: middle;
        align-items: center;
        display: flex;
        /* margin-top: 12px; */
        width: 44%;
        padding: 17px 5px;
        border-left: 2px solid white;
        height: 100%;
    }
    .customCartContainer .product-quantity {
        width: 29% !important;
        padding: 10px 9px;
        height: 100%;
        /* padding: 10px; */
        border-right: 2px solid white;
        display: inline-block !important;
    }
    .customCartContainer .product-quantity .qty{
        float: unset !important;
    }
    .customCartContainer .product-quantity .quantity_wanted{
        height: 38px;
        width: 50px;
        background-color: #fff !important;
        box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2) !important;
    }
    .customCartContainer .mob_price_tag{
        display: inline-block;
        width: 25%;
        padding: 10px 5px;
        height: 100%;
    }
    .customCartContainer .cos_price_tag {
        background-color: unset;
        color: white;
        font-family: monospace;
        padding: unset;
        float:unset;
    }
    .customCartContainer select{
        max-width: 100%;
    }
    .customCartContainer label,.customCartContainer span{
        word-break: break-all;
    }
    .customCartContainer form{
        display: table;
    }
    .customCartContainer .addtocart-container{
        height: 100px;
        padding:unset !important;
    }
    .customCartContainer .add-to-cart-custom{
        width: 100%;
        word-break: break-word;
        /* white-space: normal; */
    }
    .mobile_pre_inputs{
        padding: 27px;
    }
    .mob_add_pretxts{
        margin: 10px auto;
        display: block;
    }
    .textCustomContainer{
        /* display: table; */
        background: white;
        border-top: 2px #ddd solid;
        /* height: 100%; */
        width: 100%;
        position: fixed;
        bottom: 140px;
        height: 200px;
        overflow: scroll;
        display: block;
    }
    .mob_preinputs {
        /* width: 60%; */
        width: 100%;
        padding: 11px;
        /* display: table-cell; */
        display: block;
        clear: both;
        /* float: left; */
    }
    .cos_mob_font {
        /* width: 40%; */
        /* display: table-caption; */
        /* float: left; */
        /* height: 100%;
        padding: 11px; */
        /* margin-bottom: 10px; */
        /* display: table-cell;
        text-align: center;
        vertical-align: middle; */
        /* margin: auto; */
        /* position: absolute; */
        /* top: 50%; */
        /* left: 50%; */
        width: 100%;
        /* display: table-caption; */
        /* float: left; */
        height: 100%;
        padding: 11px;
        /* margin-bottom: 10px; */
        display: block;
        text-align: center;
        vertical-align: middle;
        /* margin: auto; */
        /* position: absolute; */
        /* top: 50%; */
        /* left: 50%; */
    }
    .cos_mob_font .cos_fonts_select{
        width: 100%;
        display: block;
        margin-bottom: 10px;
    }
    .cos_mob_text_area{
        padding: 19px;
        margin-top: 24px;
        width: 100%;
    }
    .cos_mob_text_area button{
        margin: 17px auto;
        display: block;
    }
    .textCustomActions{
        display: flex;
        width: 100%;
        text-align: center;
        background: #14898e;
        color: white;
    }
    .textCustomActions .cos_act_btns{
        border-right: 2px solid white;
        padding-top: 10px;
        margin-top:0px !important;
        width: 25%;
    
    }
    .textCustomActions .cos_act_btns:last-child{
        border-right: 0px !important;
    }
    .textCustomActions *{
        color:white;
    }
    .textCustomActions img{
        min-width: 39px;
        max-width: 43px;
    }
    .textCustomActions p{
        margin: 10px auto;
    }
    /* .valid_edit_txt{
        width: 37px; 
        height: 37px; 
        margin-left: 10px;
    } */
    .cos_mob_textarea_edit{
        width: 100% !important;
        margin-bottom: 16px;
    }
    .edit_txt_label_mob{
        cursor: pointer;
        color: #2fb5d2
    }
    .allactionscont{
        padding: 15px;
    }
    .fontListMob{
        background: white;
        color: black;
        border: 2px solid #ddd;
        border-radius: 5px;
        padding: 4px;
        display: inline-block;
        margin: 2px;
        /* margin-bottom: 10px; */
        min-height: 30px;
    }
    .cos_font_text_area{
        padding: 5px;
    }
    .fontListMob.selectedFont {
        background-color: #4c7ebd;
        color: white;
    }
    .colorListMob {
        width: 25px;
        height: 25px;
        display: inline-block;
        vertical-align: middle;
        margin-bottom: 8px;
        text-align: center;
        font-size: 20px;
    }
    .needsWhiteMob{
        color: white;
    }
    #imageUploadModalMobile .cos_drop_zone {
        width: 100%;
        display: table-cell;
    }
    #dropLocationMobile .dz-preview{
        width: 30%;
        float: left;
        /* display: inline-block; */
    }
    #dropLocationMobile .dz-image{
        width: 100%;
        height: 100%;
    }
    #imageUploadModalMobile .modal-content{
        display: table;
    }
    #imageSelectionModalMobile .cos_categories_list {
        height: auto !important;
        /* overflow: auto; */
    }
    #imageSelectionModalMobile .cos_modal_categories,#imageSelectionModalMobile .cos_mob_img_cnt,#imageUploadModalMobile .cos_modal_categories{
        width: 100% !important;
    }
    select.imgcatListMobile {
        height: 39px;
        display: block;
        width: 100%;
        text-align: center;
    }
    .mob_alli_edit .cos_def_align_button svg{
        width: 26px;
    }
    .addtoCartMob #product-availability{
        display:none;
    }
    .addtoCartMob button{
        margin-top: -10px !important;
    }
    body.customizableProd{
        position: relative;
        width: 100%;
        min-height: 100vh;
        min-height: 100dvh;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    body.customizableProd #header,
    body.customizableProd .header-top,
    body.customizableProd #_mobile_header,
    body.customizableProd #_desktop_header {
        display: none !important;
    }
    body.customizableProd #wrapper,
    body.customizableProd #page {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    .customizableProd .dispMobile.cos_perso_product {
        padding-top: 0;
        padding-bottom: 0 !important;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        min-height: 100vh;
        min-height: 100dvh;
    }
    .customizableProd .dispMobile .mobileCanvas {
        padding-bottom: 0;
        flex: 0 0 auto;
        margin-top: auto;
        margin-bottom: auto;
        min-height: 0;
    }
    .customizableProd .dispMobile #cos_uploaded_images_container:empty {
        display: none;
        height: 0;
        margin: 0;
        padding: 0;
    }
    .customizableProd .dispMobile .perso-mobile-topbar {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        width: 100%;
        min-height: auto;
        padding: max(2px, env(safe-area-inset-top, 0px)) 8px 0;
        box-sizing: border-box;
        background: #fff;
        border-bottom: 1px solid #ddd;
        position: sticky;
        top: 0;
        z-index: 60;
        flex-shrink: 0;
    }
    .customizableProd .dispMobile .perso-mobile-topbar-row {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 36px;
    }
    .customizableProd .dispMobile .perso-mobile-topbar .infotoggle {
        position: relative;
        display: block;
        height: auto;
        min-height: 0;
        pointer-events: none;
        flex: 0 0 auto;
    }
    .customizableProd .dispMobile .perso-mobile-topbar .infotoggle svg {
        width: 31px;
        height: 31px;
        cursor: pointer;
        pointer-events: auto;
        display: block;
    }
    .customizableProd .dispMobile .perso-mobile-topbar .cos_retour {
        display: flex !important;
        flex: 1 1 auto;
        justify-content: flex-end;
        align-items: center;
        margin: 0;
        padding: 0;
        opacity: 1 !important;
        visibility: visible !important;
    }
    .customizableProd .dispMobile .perso-mobile-topbar #cos_retour_produit {
        font-size: 14px;
        font-weight: 700;
        color: #0a4eaf;
        cursor: pointer;
        white-space: nowrap;
    }
	.customizableProd .header-nav,
	.customizableProd .header-top,
	.customizableProd .product-detail-secondary,
	.customizableProd #footer-container,
	.customizableProd .category-products{
		display:none;
	}
	.customizableProd #page{
		padding-top:0px;
	}
	.customizableProd .infotoggle > svg{
		width: 23px !important;
		top: 5px !important;
		left: 5px !important;
	}
	.customizableProd .infotoggle{
		height: auto !important;
		min-height: 0 !important;
	}
	.customizableProd .dispMobile .cos_retour.flex-r{
		position: relative !important;
		top: auto !important;
		right: auto !important;
		float: none !important;
	}
	.customizableProd .loadingDec{
		background:transparent !important;
	}
	.customizableProd .modal-content{
		max-height: calc( 100vh - 20px );
	}
	.customizableProd .cos_single_modal_image {
		width: calc( 25% - 12px );
		height: auto;
		margin: 6px;
	}
	.customizableProd .cos_images_container{
		max-height: calc( 100vh - 200px );
	}
	.customizableProd .dispMobile .cos_select_colors {
		border-top: 0;
		border-bottom: 0;
		position: relative;
		top: auto;
		width: 100%;
		z-index: 5;
		background: transparent;
		margin: 0;
		padding: 0 0 2px;
	}
	.customizableProd .dispMobile .perso-mobile-topbar .cos_select_colors {
		border-top: 0;
		border-bottom: 0;
	}
	.customizableProd .dispMobile .cos_select_color {
		margin: 0 auto;
		padding: 0 0 2px;
		text-align: center;
		line-height: 1.2;
	}
	.customizableProd .dispMobile .perso-mobile-topbar .cos_select_color .sp-replacer {
		vertical-align: middle;
	}
	.customizableProd .dispMobile {
		display: block;
		border: 0px #ddd solid;
	}
    .customizableProd .dispMobile .cos_cover_canvas {
        box-sizing: border-box;
    }
	.customizableProd .dispMobile .canvas-container{
		position: relative !important;
		top: auto !important;
		right: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		min-height: 0;
		overflow: hidden;
	}
	.customizableProd .customCartContainer {
		border-top: 0px #ddd solid;
		position:fixed;
		bottom: max(4px, env(safe-area-inset-bottom, 0px));
		height: 62px;
		width:100%;
		z-index:120;
		box-sizing: border-box;
	}
	.customizableProd .customCartContainer .product-variants_custom {
		width: 26%;
		display: inline-block;
		float: left;
		height: 100%;
		border-right: 1px solid white;
        padding: 2px 5px;
        float: left;
	}
	.customizableProd .customCartContainer .product-quantity {
		width: 29% !important;
		padding: 2px 9px;
		height: 100%;
		border-right: 1px solid white;
		display: inline-block !important;
	}
	.customizableProd .customCartContainer .mob_price_tag {
		display: inline-block;
		width: 25%;
		padding: 2px 5px;
		height: 100%;
	}
	.customizableProd .actionsCustomContainer p{
		font-size: 11px;
	}
	.customizableProd .customCartContainer .add {
		float: right;
		vertical-align: middle;
		align-items: center;
		display: flex;
		width: 46%;
		padding: 6px 5px;
		border-left: 1px solid white;
		height: 66px;
		margin-top: -33px;
	}
	.customizableProd .customCartContainer .add-to-cart-custom {
		width: 100%;
		word-break: break-word;
		/* white-space: normal; */
		text-align: center;
		margin: auto;
        margin-top: -3px !important;
        height: 100%;
	}
	.customizableProd .container{
		width:100%;
		max-width:100%;
	}
	.customizableProd .customCartContainer .product-quantity .quantity_wanted {
		height: 30px;
		width: 50px;
		background-color: #fff !important;
		box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2) !important;
		margin: 5px auto;
		text-align: center;
	}
	.customizableProd .customCartContainer .product-quantity .quantity_wanted.quantity_wanted_info {
        width: 40px !important;
        display:inline-block !important;
	}
	.customizableProd .product-variants_custom>.product-variants-item select {
		background-color: #fff;
		padding: 2px 8px;
		margin: 5px auto;
		width: auto;
        height: 30px;
        /* float: left; */
		box-shadow: 2px 2px 4px 0 rgba(0,0,0,.2);
	}
	.customizableProd .mr-3 {
		margin-top: -3px !important;
		margin-right: 0rem !important;
		margin-bottom: 3px;
		display: block;
		font-size: 20px;
	}
	.customizableProd .customCartContainer form {
		display: block;
	}
	.customizableProd .customCartContainer form {
		display: block;
	}
	.customizableProd .actionsCustomContainer {
		position: fixed;
		display: flex;
		text-align: center;
		border-top: 1px #ddd solid;
		padding: 6px 0;
		bottom: calc(62px + env(safe-area-inset-bottom, 0px));
		left: 0;
		right: 0;
		background: #fff;
		z-index: 119;
		width: auto;
		box-sizing: border-box;
		margin: 0;
	}
	.customizableProd .actionsCustomContainer .cos_act_btns {
		flex: 1 1 0;
		min-width: 0;
		max-width: none;
		margin-top: 5px;
		padding: 0 8px;
		box-sizing: border-box;
	}
	.customizableProd .actionsCustomContainer .cos_act_btns img {
		display: block;
		width: 30px;
		height: auto;
		max-width: 30px;
		margin: 0 auto;
		object-fit: contain;
	}
	.customizableProd .actionsCustomContainer .cos_act_btns p {
		margin: 6px 0 0;
		padding: 0 4px;
		line-height: 1.15;
	}
	.customizableProd .cos_act_btns {
		margin-top: 5px;
	}
	.customizableProd .cos_mobile_modify_alli p, 
	.customizableProd .cos_mobile_modify_color p,
	.customizableProd .cos_mobile_modify_text img,
	.customizableProd .cos_mobile_modify_font img{
		display:none !important;
	}
	.customizableProd .textCustomActions {
		position: fixed;
		bottom: calc(142px + env(safe-area-inset-bottom, 0px));
		left: 0;
		right: 0;
		z-index: 118;
		padding: 9px 0px;
		width: auto;
		box-sizing: border-box;
	}
	.customizableProd .textCustomActions .cos_act_btns {
		border-right: 1px solid white;
		padding-top: 10px;
		margin-top: 0px !important;
		width: 25%;
		font-size: 10px;
		letter-spacing: 1px;
		font-weight: lighter;
	}
	.customizableProd .mob_edit_color,
	.customizableProd .mob_edit_font,
	.customizableProd .mob_alli_edit{
		position: fixed;
		z-index: 20;
		left: 0;
		right: 0;
		bottom: calc(142px + env(safe-area-inset-bottom, 0px));
		background:#fff;
		box-sizing: border-box;
	}
	.customizableProd .dispMobile .cos_images_list{
		position: relative;
		top: auto;
		z-index: 5;
		background: #fff;
		width: 100%;
		border-top: 1px #ddd solid;
		border-bottom: 1px #ddd solid;
	}
	.customizableProd #product-availability{
		position: fixed;
        z-index: 19;
        bottom: 66px;
		/* bottom: 4px; */
		background: #fff;
		width: 100%;
        left: 0;
        border-top: 2px solid #ddd;
	}
	.customizableProd .border{
		border: 0px solid #ddd !important;
	}
	body.customizableProd {
		height: auto;
		min-height: 100vh;
		overflow-x: hidden;
		overflow-y: auto;
	}
	.customizableProd .cos_single_image{
		width: 40px;
		margin:2px;
	}

	.customizableProd .product-variants_custom>.product-variants-item select {
		max-width: 76px;
	}
	/* Mobile : pleine largeur viewport (évite la bande blanche à droite) */
	body.customizableProd #main,
	body.customizableProd #main.container,
	body.customizableProd main#page,
	body.customizableProd main.page-main,
	body.customizableProd #content-wrapper,
	body.customizableProd #content,
	body.customizableProd #wrapper,
	body.customizableProd #page,
	body.customizableProd .perso-main-active {
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box;
	}
	.customizableProd .dispMobile.cos_perso_product,
	.customizableProd .dispMobile.cos_perso_product.row {
		position: relative;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		--bs-gutter-x: 0;
		box-sizing: border-box;
		float: none !important;
	}
	.customizableProd .dispMobile.cos_perso_product > [class*="col-"] {
		padding-left: 0 !important;
		padding-right: 0 !important;
		max-width: 100% !important;
	}
	.customizableProd .dispMobile .perso-mobile-topbar {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}
	.customizableProd .dispMobile .actionsCustomContainer {
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		max-width: none !important;
	}
	.customizableProd .customCartContainer {
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		max-width: none !important;
	}
	.customizableProd .textCustomActions,
	.customizableProd #product-availability {
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		max-width: none !important;
		box-sizing: border-box;
	}
}

@media (min-width: 1087px) and (max-width: 1100px) {
    .customizableProd .dispDesktop .cos_list.col_show_after.side_imgs{
        height: auto !important;
    }
    .customizableProd .dispDesktop .cos_list.col_show_after.side_imgs .cos_images_list{
        display:flex;
    }
}
@media (max-width: 1100px) {
	.customizableProd .cos_interligne_count.flex-r{
		display: block;
	}
	.customizableProd .cos_def_align_button{
		padding: 5px 7px;
	}
	.customizableProd .cos_interligne h4 {
		flex: unset;
		width: 100%;
	}
}
/* Desktop : bloc configurateur centré, 15px max entre canvas et panneau droite */
@media (min-width: 1087px) {
    body.customizableProd #main,
    body.customizableProd #main.container,
    body.customizableProd #main.container-fluid,
    body.customizableProd main#page,
    body.customizableProd main#page.container,
    body.customizableProd main.page-main,
    body.customizableProd main.page-main.container {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    body.customizableProd #wrapper,
    body.customizableProd #page,
    body.customizableProd #content-wrapper {
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    body.customizableProd #main > .container,
    body.customizableProd #main > .container-fluid,
    body.customizableProd #content-wrapper > .container,
    body.customizableProd #content-wrapper > .container-fluid {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* Bloc compact centré (miniatures + canvas + panneau), pas étalé sur toute la page */
    .customizableProd .dispDesktop.cos_perso_product {
        position: relative;
        display: flex !important;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: center;
        width: fit-content !important;
        max-width: 100% !important;
        box-sizing: border-box;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        gap: 15px;
        float: none !important;
        --bs-gutter-x: 0;
    }
    body.customizableProd .dispDesktop.cos_perso_product > [class*="col-"] {
        float: none !important;
        flex: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    body.customizableProd .dispDesktop.cos_perso_product > .col_show_after {
        float: none !important;
    }
    body.customizableProd .dispDesktop .side_imgs {
        flex: none !important;
        width: auto !important;
        max-width: none !important;
    }
    body.customizableProd .dispDesktop .col-md-6.col-xl-7.col-lg-8 {
        width: fit-content !important;
        max-width: none !important;
        min-width: 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    body.customizableProd .dispDesktop .col-md-6.col-xl-7.col-lg-8 .cos_cover {
        width: fit-content;
        max-width: 100%;
    }
    body.customizableProd .dispDesktop .col-md-5.col-xl-4.col-lg-3 {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: min(420px, 36vw) !important;
        min-width: 280px;
        margin-left: 0 !important;
    }
    .customizableProd .dispDesktop > .loading_col {
        position: absolute;
        z-index: 40;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        min-height: 0 !important;
        pointer-events: none;
    }
    .customizableProd .dispDesktop .cos_cover {
        position: relative;
    }
    .customizableProd .dispDesktop .cos_cover_canvas {
        position: relative !important;
        width: 630px !important;
        height: 630px !important;
        min-width: 630px;
        max-width: 630px;
        min-height: 630px;
        max-height: 630px;
        flex-shrink: 0;
        margin-left: 0;
        margin-right: 0;
        overflow: hidden;
        box-sizing: border-box;
    }
    .customizableProd .dispDesktop .cos_cover_canvas .canvas-container {
        position: relative !important;
        width: 626px !important;
        height: 626px !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin: 0 !important;
        transform: none !important;
    }
}

.customizableProd .cos_text_icon svg {
    width: 33px;
    height: 33px;
    margin-right: 10px;
}
.customizableProd .category-products{
	display:none;
}

/* Personnalisation active : masquer footer et newsletter du thème */
body.customizableProd #footer,
body.customizableProd footer#footer,
body.customizableProd footer.site-footer,
body.customizableProd footer.page-footer,
body.customizableProd .site-footer,
body.customizableProd .page-footer,
body.customizableProd #footer-container,
body.customizableProd .footer-container,
body.customizableProd .js-footer,
body.customizableProd #blockEmailSubscription,
body.customizableProd .block_newsletter,
body.customizableProd .block-newsletter,
body.customizableProd .email-subscription,
body.customizableProd .ps-emailsubscription-block,
body.customizableProd #block-newsletter,
body.customizableProd .elementor-location-footer,
body.customizableProd #wrapper > footer,
body.customizableProd #page > footer,
body.customizableProd main + footer {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}
body.customizableProd #cookiesplus,
body.customizableProd .cookiesplus,
body.customizableProd #lgcookieslaw,
body.customizableProd .lgcookieslaw,
body.customizableProd .cc-banner,
body.customizableProd .cookie-banner {
    display: none !important;
    visibility: hidden !important;
}

body.customizableProd #main,
body.customizableProd main#page,
body.customizableProd main.page-main,
body.customizableProd #content-wrapper,
body.customizableProd #content {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
}

body.customizableProd .dispDesktop.cos_perso_product {
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important;
    float: none !important;
    overflow: visible;
}

body.customizableProd .dispDesktop.cos_perso_product::after {
    content: "";
    display: table;
    clear: both;
}

/* Panier : pas d’image produit par défaut si des blocs perso (aperçus dans les personnalisations) */
body#cart .perso-line--has-perso .product-line__image,
body#cart .cart__item.perso-line--has-perso .product-line__image {
	display: none !important;
}
body#cart .product-line-grid.perso-line--has-perso .product-line-grid-left {
	display: none !important;
}

/* Prix sous les attributs (ligne perso), pas sur la même ligne que la colonne qté */
body#cart .perso-line--has-perso .product-line__content-left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
body#cart .perso-line--has-perso .product-line__content-left .product-line__item--prices {
	display: block;
	width: 100%;
	max-width: 100%;
	margin-top: 0.25rem;
	margin-bottom: 0.35rem;
}
body#cart .perso-line--multi .perso-unit-price-label {
	font-weight: 600;
	margin-right: 0.15rem;
}
body#cart .perso-line--has-perso .product-line__item--prices .product-line__item-price {
	font-size: 1.05rem;
}

/* Panier : personnalisation (Hummingbird / alignement PS 1.7) */
body#cart .perso-cart-blocks--single .perso-block-qty-row {
	display: none !important;
}
body#cart .perso-hide-line-remove {
	display: none !important;
}
body#cart .perso-global-qty-readonly {
	opacity: 0.85;
}
body#cart .perso-qty-btn-muted {
	pointer-events: none;
	opacity: 0.45;
}

/* Plusieurs persos : quantité globale = somme — masquer totalement +/- (Hummingbird + Classic) */
body#cart .perso-line--multi .quantity-button__group > button.btn,
body#cart .perso-line--multi .quantity-button__group > button.btn-square-icon {
	display: none !important;
}
body#cart .perso-line--multi .input-group-btn-vertical,
body#cart .perso-line--multi .input-group-btn,
body#cart .perso-line--multi .bootstrap-touchspin-up,
body#cart .perso-line--multi .bootstrap-touchspin-down,
body#cart .perso-line--multi .btn-touchspin {
	display: none !important;
}
body#cart .perso-line--multi .js-quantity-button .input-group-btn,
body#cart .perso-line--multi .quantity-button .input-group-btn {
	display: none !important;
}

body#cart .perso-cart-line-mount {
	width: 100%;
	max-width: 100%;
}
body#cart .perso-cart-line-mount .customization_info {
	background: transparent;
	max-width: 100%;
	margin-top: 0.5rem;
	padding: 0;
	font-family: inherit;
}
body#cart .perso-cart-line-mount .custom_complete_perso {
	background: #f6f6f6;
	border: 1px solid #ddd;
	border-radius: 6px;
	padding: 0;
	margin-bottom: 1rem;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
body#cart .perso-cart-line-mount .custom_complete_perso:last-child {
	margin-bottom: 0;
}
body#cart .perso-cart-line-mount .headerPerso {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin: 0 !important;
	padding: 0.55rem 0.75rem !important;
	background: #3a3d44 !important;
	color: #fff !important;
	font-weight: 600;
	font-size: 0.95rem;
	border-radius: 0;
}
body#cart .perso-cart-line-mount .headerPerso .material-icons {
	color: #e74c3c;
}
body#cart .perso-cart-line-mount .headerPerso .deletePerso {
	opacity: 1;
}
body#cart .perso-cart-line-mount .headerPerso .deletePerso:hover {
	opacity: 0.85;
}
body#cart .perso-cart-line-mount .customization_info_faces {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 0.85rem 1rem 0.5rem;
}
body#cart .perso-cart-line-mount .perso-block-qty-row {
	padding: 0 1rem 1rem;
	margin-top: 0 !important;
}
body#cart .perso-cart-line-mount .perso-block-qty-row .custom_total_qty {
	font-weight: 600;
	margin-right: 0.5rem;
}
body#cart .perso-cart-line-mount .perso-js-qty-input {
	vertical-align: middle;
}
body#cart .perso-cart-line-mount .custom_total_price_tag {
	padding: 0 1rem 0.85rem;
}
body#cart .perso-thumb-stack__img {
	object-fit: contain;
}

/* Panier : miniatures perso (contre les règles globales 630px / 100%) */
body#cart .perso-cart-line-mount .all_face_min {
	width: auto;
	max-width: 100%;
	text-align: left;
	vertical-align: top;
}
body#cart .perso-cart-line-mount .face_miniature {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 200px;
	max-height: 200px;
	width: 200px;
	height: 200px;
	overflow: hidden;
	margin: 0;
	background: #fff !important;
	border: 1px solid #e8e8e8;
	border-radius: 4px;
}
body#cart .perso-cart-line-mount .face_miniature img {
	width: auto !important;
	height: auto !important;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
body#cart .perso-cart-line-mount .custom_face_tag img,
body#cart .perso-cart-line-mount .imgprev img {
	width: auto !important;
	height: auto !important;
	max-width: 200px !important;
	max-height: 200px !important;
	object-fit: contain;
}
body#cart .perso-cart-line-mount .custom_face_tag {
	display: block;
	margin-top: 0.35rem;
	font-size: 0.875rem;
}
body#cart .perso-cart-line-mount .custom_face_price_tag {
	display: inline-block;
	margin-left: 0.35rem;
	font-size: 0.875rem;
}

/* Modal « Ajout au panier » : aperçu perso compact (proche produit non personnalisé) */
body#product #blockcart-modal.perso-blockcart-modal--compact .modal-dialog,
body#product .modal.show#blockcart-modal.perso-blockcart-modal--compact .modal-dialog {
	max-width: min(480px, 94vw) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
body#product #blockcart-modal.perso-blockcart-modal--compact .modal-content,
body#product .modal.show#blockcart-modal.perso-blockcart-modal--compact .modal-content {
	height: auto !important;
	min-height: 0 !important;
}
body#product #blockcart-modal.perso-blockcart-modal--compact .modal-body,
body#product .modal.show#blockcart-modal.perso-blockcart-modal--compact .modal-body {
	padding: 1rem 1.25rem !important;
}
body#product #blockcart-modal.perso-blockcart-modal--compact .blockcart-modal__product,
body#product .modal.show#blockcart-modal.perso-blockcart-modal--compact .blockcart-modal__product,
body#product #blockcart-modal.perso-blockcart-modal--compact .cart-content,
body#product #blockcart-modal.perso-blockcart-modal--compact .row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	gap: 0.75rem 1rem !important;
	justify-content: flex-start !important;
}
body#product #blockcart-modal img.perso-cart-modal-preview-img,
body#product #blockcart-modal.perso-blockcart-modal--compact img.blockcart-modal__image,
body#product #blockcart-modal.perso-blockcart-modal--compact .blockcart-modal__product img,
body#product #blockcart-modal.perso-blockcart-modal--compact img.product-image {
	max-width: 110px !important;
	max-height: 110px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
}
body#product #blockcart-modal.perso-blockcart-modal--compact .product-details,
body#product #blockcart-modal.perso-blockcart-modal--compact .blockcart-modal__summary {
	flex: 1 1 140px !important;
	min-width: 0 !important;
	max-width: 100% !important;
}