.enroulements-container.part-container.motor-side-container label{
    display:flex;
    flex-direction: column;
    align-items: center;
}

.enroulements-container.part-container.motor-side-container em.text-detail {
    color: #030712;
    font-weight: 400;
    font-size: 12px;
    line-height: 25px;
    letter-spacing: .2px;
}
.infos-panier {
        display: none;
    }
    #simulation-form{
        position: relative;
    }
    .mdm-ajax-loader {
        background-color: white;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(249, 250, 251, 0.8);
        z-index: 10;
        display: flex;
        align-content: flex-start;
        animation: fadeBackground 1s alternate infinite ease-in-out;
        border-radius: 1rem;
        border: 1px solid #E5E7EB;
        padding-block: 15rem;
        padding-inline: 2rem;
        gap: 2rem;
        justify-content: flex-start;
        flex-direction: column;
        align-items: center;
    }
    .mdm-loader-label{
        text-align: center;
        font-weight: 800;
    }
    .mdm-loader-container{
        display: flex;
        justify-content: center;
        align-items: center;
        position: sticky;
    }

    @keyframes fadeBackground {
            0% {
                background: rgba(249, 250, 251, 0.5);
            }
            100% {
                background: rgba(249, 250, 251, 0.95);
            }
        }
    .mdm-loader {
        position: relative;
        border: 10px solid rgba(243, 243, 243, 0.05);
        border-top: 10px solid #23324C; /* Blue color for top part */
        border-right: 10px solid #23324C;
        border-radius: 50%;
        width: 70px;
        height: 70px;
        animation: spin-reversed 1s linear infinite;
    }

    .mdm-loader-2 {
        position: absolute;
        border: 10px dashed rgba(243, 243, 243, 0.05); /* Transparent gray border */
        border-top: 10px solid rgba(255, 158, 41, 1); /* Orange color for top part */
        border-left: 10px solid rgba(255, 158, 41, 1);
        border-radius: 50%;
        width: 50px;
        height: 50px;
        animation: spin 0.7s linear infinite;
    }

    @keyframes spin {
        0% {
            transform: rotate(0deg);
        }
        100% {
            transform: rotate(360deg);
        }
    }

    @keyframes spin-reversed {
        from {
            transform: rotate(0deg);
        }
        to {
            transform: rotate(-360deg); /* Negative value to spin counterclockwise */
        }
    }


    .axe-container-wrapper .section div.simulateur div.form-container .enroulements-container>label{
            margin-bottom: 6px;
    }
    .axe-container-wrapper .enroulements-container{
        min-height: auto!important;
    }
    .section div.simulateur div.form-container .part-container .form-input-options .form-option .sous-options{
        justify-content: center;
    }

    .toggle-button {
        background-color: #007bff; /* Modern blue shade */
        color: white;
        border: none;
        border-radius: 50%; /* Circular button */
        width: 1.5rem;
        height: 1.5rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: bold;
        cursor: pointer;
        transition: all 0.3s ease-in-out;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    }
    
    .toggle-button:hover {
        background-color: #0056b3; /* Darker blue on hover */
        transform: scale(1.1);
    }
    
    .toggle-button:active {
        transform: scale(0.9);
    }
    
    .toggle-button::after {
        content: "+"; /* Default state */
        font-size: 1rem;
        transition: transform 0.3s ease-in-out;
    }
    
    /* When expanded, change the content and rotate */
    .toggle-button.expanded::after {
        content: "−";
    }


    .modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
    background-color: white;
    margin: 10% auto;
    padding: 20px;
    width: 50%;
    border-radius: 8px;
    position: relative;

}

#detailedRecapModal .title{
    margin: unset;
}
#detailedRecapModal .actions{
    display: flex;
}
#detailedRecapModal .action{
    padding-inline: 0.5rem;
    border: solid 0.1px;
    border-radius: 0.4rem;
    border-color: rgba(0, 123, 255, 0.1);
    background-color: rgba(0, 123, 255, 0.1);
    margin-inline: 0.1rem;
}
#detailedRecapModal .close{
background-color: #ff000029;
}
#detailedRecapModal .close:hover {
    color: rgba(255, 0, 0, 0.78);
    background: rgba(255, 0, 0, 0.41);
}
#detailedRecapModal .header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-content: center;
    align-items: center;
    border-bottom: solid 0.2px;
    border-radius: 0.1rem;
    border-color: rgba(0, 123, 255, 0.1);
    margin-bottom: 0.5rem;
    padding-block: 0.3rem;
}

#detailedRecapModal .action {
    display: flex;
    align-items: center;
    font-size: 24px;
    cursor: pointer;
    transition: color 0.3s ease;
    transition: background-color 0.3s ease;
    transform: font-size 0.3s ease;
}
#detailedRecapModal .action .text{
    font-size: 1rem;
}
#detailedRecapModal .copy:hover {
    color: rgba(0, 123, 255, 1);
    background: rgba(0, 123, 255, 0.2);
}
#detailedRecapModal .action:active {
    font-size: 18px;
  }
.detailed-recap-btn{
     background-color: #007bff; /* Modern blue shade */
    color: white;
    border: none;
    border-radius: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}
.detailed-recap-secondary-btn{
    background: unset;
    border: unset;
    color: rgba(0, 123, 255, 1);
    box-shadow: unset;
    font-weight: bold;
}
.detailed-recap-btn:hover{
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
#modal-detail-content{
    overflow: auto;
    max-height: 46rem;
}
.detailed-recap-item .hidden{
    display: none;
}

.incompatibility-popup-container {
    z-index: 40001;
    position: fixed;
    top: 45%;
    left: 35%;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 18px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    max-width: 60rem;
    margin: 0 auto;
    padding: 3.5rem;
    text-align: center;
    height: 30rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.popup-header h2,.popup-header{
    display: flex;
    justify-content: center;
    color: #ff9800;
    font-size: 24px;
    margin-bottom: 10px;
}

.popup-body p {
    color: #333;
    font-size: 16px;
    margin-bottom: 20px;
}

.popup-footer {
    display: flex;
    gap: 2rem;
    justify-content: center;
}

.popup-footer .btn:hover {
    background-color: #e0e0e0;
}

.popup-footer .btn.select-option {
    background-color: #1e88e5;
    color: #fff;
}

.popup-footer .btn.select-option:hover {
    background-color: #1565c0;
}

.mdm-overlay{
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 40000;
}

.popup-footer .btn.select-option {
    background: linear-gradient(89.14deg, #23324C 0.58%, #070A0F 131.44%);
    border: none;
    border-radius: 8px;
    color: #fff;
    cursor: pointer;
    width: 100%;
    max-width: 276px;
    height: 44px;
    gap: 10px;
    transition: background-color 0.3s, transform 0.3s;
}

.popup-footer .btn.select-option:hover {
    background: linear-gradient(89.14deg, #1A2538 0.58%, #05070A 131.44%);
    transform: scale(1.02);
}

@media (max-width: 480px) {
    .popup-footer .btn.select-option {
        width: 100%;
        padding: 14px 18px;
        height: auto;
    }
}

.popup-footer .btn.review-choices {
    width: 194px;
    height: 44px;
    border-radius: 8px;
    gap: 10px;
    border-width: 1px;
    border: 1px solid;
    background: #fff; /* Ensure the button background is visible */
    color: #333; /* Text color */
    cursor: pointer;
    transition: background-color 0.3s;
}

.popup-footer .btn.review-choices:hover {
    background: #f5f5f5;
}

@media (max-width: 480px) {
    .popup-footer .btn.review-choices {
        width: 100%;
        padding: 14px 18px;
        height: auto;
    }
}

.icon-incompatibility-popup-container{
    margin-right: 1rem;
}

.icon-incompatibility-popup .popup-header{
    display: flex;
    justify-content: center;
}

.incompatibility-popup-container-interrogation{
    font-size: 15rem;
    position: absolute;
    font-weight: 600;
    right: 8rem;
    top: -10rem;
    transform: rotate(7deg);
}

.incompatibility-popup-container-interrogation{
  text-shadow:
        -0.5rem -0.5rem 0 white,
         0.5rem -0.5rem 0 white,
        -0.5rem  0.5rem 0 white,
         0.5rem  0.5rem 0 white;
}

.part-container,.part-container input,.part-container label,.part-container img,.part-container .form-option,.moto-window,.detail-recap,.recap-container .image-preview,.recap-container button {
    transition: all 0.5s ease;
}
.part-container:hover,.part-container input:hover,.part-container label:hover,.part-container img:hover,.part-container .form-option:hover,.moto-window:hover,.detail-recap:hover,.recap-container .image-preview:hover,.recap-container button:hover{
    transform: scale(1.02);
}
.part-container span{
    z-index: 1;
}

.motorisation-actions{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
}

.axe-central-options-complet .sens-enroulements-container{
    display: flex;
    flex-direction: column;
    justify-content: space-evenly!important;
    height: 21.5rem;
}
.axe-central-options-complet .accessoires-tablier{
    justify-content: space-evenly !important;
}
.axe-central-options-complet .parachute-container{
    width: 100%!important;
    height: 14rem;
}
.accessories-apron{
    min-height: 15.6rem!important;
}


.section div.simulateur div.form-container .part-container.motorisation-container.tubulaire .form-input-options .form-option .sous-options .moteur-part-tow{
    padding: unset;
    padding-left: 3rem;
}
.section div.simulateur div.form-container .part-container.motorisation-container .form-input-options .form-option .sous-options{
    padding-block: 1rem;
    padding-inline: 3rem;
}
.section div.simulateur div.form-container .part-container .form-input-options .form-option.micropperf-form-option label{
    text-align:center;
}

#success-popup-add-simulation {
    display: none;
    position: fixed;
    top: 190px;
    right: 20px;
    background-color: #4CAF50;
    color: white;
    padding: 15px 20px;
    border-radius: 5px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    z-index: 9999;
}
.configuration-container{
    height: 28rem;
}
 #module-themesconfiguration-axemotoriser .motorisation-container{
    min-height: 31.5rem!important;
}
  #module-themesconfiguration-rideauxcomplet .motorisation-container{
    min-height: 36.5rem!important;
}

  .dynamic-dimension{
    color: #707070;
  }
  .longeur-ressort-dynamique{
      align-self: self-end;
      transform: rotate(-3deg)translate(58px, -7px);
  }

  .diametre-spire-dynamique{
      align-self: self-end;
      transform: translate(-152px, -20px);
  }

 .longeur-dynamique {
     align-self: self-end;
     transform: rotate(-0deg) translate(58px, -45%);
 }

 .hauteur-dynamique {
     transform: rotate(-90deg) translate(9px, -10%);
 }

  .diametre-interieur-dynamique{
      transform: rotate(-90deg)translate(9px, -138px);
  }
.section div.simulateur div.form-container .part-container .form-input-options .form-option.micropperf-form-option label{
    text-align:center;
}
.configuration-container{
    height: 28rem;
}
 #module-themesconfiguration-axemotoriser .motorisation-container{
    min-height: 31.5rem!important;
}
  #module-themesconfiguration-rideauxcomplet .motorisation-actions{
      margin-bottom: 2rem;
  }
  #module-themesconfiguration-rideauxcomplet .motorisation-container{
    min-height: 32.5rem!important;
}
  .image-preview{
      border: 1px solid #F3F4F6;
      border-radius: 12px;
  }

  .motorisation-actions{
    margin-right: 0;
    font-size: 19px;
    color: #030712;
    font-weight: 500;
    line-height: 20px;
    display: flex;
  }

.section div.simulateur .recap-container .qty-div{
    padding: 0.1rem;
}

.timer-container {
    position: absolute;
    right: 10px;
    top: 36%;
    transform: translateY(-50%);
    /* width: 5rem; */
    /* height: 5rem; */
    pointer-events: none;
}

.circle-timer {
    transform: rotate(-90deg);
}
.simulateur .disabled {
    pointer-events: none; /* Prevents interactions */
    opacity: 0.5; /* Makes it look disabled */
    color: #a0a0a0; /* Dimmed text color */
    cursor: not-allowed; /* Show a "not allowed" cursor */
}
@media screen and (max-width:720px) {
    .detailed-recap li {
        text-align-last: center;
        font-weight: bold;
        display: flex;
        flex-direction: column;
    }
}

 /* Porte sectional */
@media (max-width: 576px) {

.ressort-porte-sectionnelle
{
   width: 100%;
}
}

.ressort-porte-sectionnelle  .content
{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2rem;
}



.ressort-porte-sectionnelle .form
{
    display: flex;
    justify-content: space-between;
}


.ressort-porte-sectionnelle .form .content-2 .img
{
     margin-top: 40px;
     width: 100%;
}

.ressort-porte-sectionnelle .form .content-2 .recap
{
    margin-top: 40px;
}

.ressort-porte-sectionnelle .form .content-2 .recap .title-recap
{
    display: flex;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
    color:#17243F ;
    margin-top: 40px;
}



.ressort-porte-sectionnelle .form .content-2 .recap .prix{
    flex-direction: column;
    display: flex;
    margin-top: 26px;
}
.ressort-porte-sectionnelle .form .content-2 .recap .counter {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #000;
    border-radius: 8px;
    overflow: hidden;
    width: 120px;
    height: 40px;
    background-color: #fff;
  }

  .ressort-porte-sectionnelle .form .content-2 .recap .counter-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 400;
    border: none;
    background: none;
    cursor: pointer;
    outline: none;
  }

  input[type="radio"] {
    appearance: none;
    border: none;
    background-color: #E7E7E7;
    width: 14px;
    height: 14px;
    cursor: pointer;
    /* position: relative; */
    border-radius: 50%;
    min-width: 14px;
    opacity: 1;
    margin-right: 10px;
}
input[type="radio"]::after {
    content: "";
    display: block;
    width: 11px;
    height: 11px;
    top: 1.5px;
    left: 1.5px;
    position: relative;
    opacity: 0;
    background-color: #FF9800;
    border-radius: 50%;
}
input[type="radio"]:checked::after {
    opacity: 1;
}
input:not(:disabled):checked + label::before {
    background: #FF9800;
}

  .ressort-porte-sectionnelle .form .content-2 .recap .add {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 26px;

  }

  .ressort-porte-sectionnelle .form .content-2 .recap .counter-value {
    flex: 1;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    border-left: 1px solid #000;
    border-left-width:100% ;
    border-right: 1px solid #000;
    border-right-width:100% ;
  }

  .ressort-porte-sectionnelle .form .content-2 .recap .btn {
   display: flex;
   flex-direction: column;
   margin-top:14px ;
  }
  .ressort-porte-sectionnelle .form .content-2 .recap .btn .btn-devis{
    border-radius: 8px;
    background: linear-gradient(90deg, #FF9800 0%, #FFBA2D 100%);
    color: #FFFFFF;
    height: 43px;
    border :none ;
    transition: box-shadow 0.3s ease;
   }
   .ressort-porte-sectionnelle .form .content-2 .recap .btn .btn-devis:hover {
    box-shadow: 0 5px 18px rgba(255, 152, 0, 0.3), 0 1px 2px rgba(255, 186, 45, 0.3);
}

   .ressort-porte-sectionnelle .form .content-2 .recap .btn .btn-commande{
    border-radius: 8px;
    background: linear-gradient(90deg, #23324C 0%, #070A0F 100%);
    color: #FFFFFF;
    height: 43px;
    border :none ;
    margin-top: 14px;
    transition: box-shadow 0.3s ease;
       }
       .ressort-porte-sectionnelle .form .content-2 .recap .btn .btn-commande:hover {
        box-shadow: 0 5px 18px rgba(35, 50, 76, 0.3), 0 1px 2px rgba(7, 10, 15, 0.3);
    }

.ressort-porte-sectionnelle .form .content-2 .recap .prix .prix-unitaire{
    display: flex;
    justify-content: center;
    font-weight: 500;
    font-size: 18px;
    line-height: 27px;
    margin-top:12px ;
}

.ressort-porte-sectionnelle .form .content-2 .recap .prix .total{
    display: flex;
    justify-content: center;
    font-weight: 700;
    font-size: 27px;
    line-height: 40.5px;
    color: #FF9800;
    margin-top:12px ;

}

.ressort-porte-sectionnelle .content .sens-enroulement{
    background-color: #F9FAFB;
    padding: 3rem;
    border-radius: 12px;
}


.ressort-porte-sectionnelle .content .sens-enroulement .title-enroulement{
   color:#17243F ;
   font-weight: 500;
   font-size: 16px;
   line-height: 24px;
   display: flex;
   justify-content: center;
   margin-bottom:24px ;

}


.ressort-porte-sectionnelle .content .sens-enroulement .enroulement-options{
    display: flex;
    justify-content: center;
    gap: 3rem;
 }

 .ressort-porte-sectionnelle .content .sens-enroulement .enroulement-options label{
    display: flex;
 }

.ressort-porte-sectionnelle .content .sens-enroulement .enroulement-options label .radio-enroulement{
    margin-right: 10px;
}


.ressort-porte-sectionnelle  .content  .finition{
    border-radius: 12px;
}

.ressort-porte-sectionnelle  .content  .finition .finition-options{
    display: flex;
    justify-content: space-between;
}



.ressort-porte-sectionnelle .content .finition .finition-options .option:hover {
    border-color: orange;
    border: 1px solid #FF9800 ;
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
}

.ressort-porte-sectionnelle .content .finition .finition-options .option .product-title {
    font-size: 14px;
    font-weight: 500;
    color: #333;
    text-align: center;
    line-height: 21px;
}
.ressort-porte-sectionnelle .content .finition .finition-options .option img {
    height: 60%;
    object-fit: contain;
}

.ressort-porte-sectionnelle  .content  .finition .finition-options .option{
    border-radius: 8px;
    justify-content: center;
    margin: unset;
    display: flex;
    flex-direction: column;
    border: 1px solid #E5E7EB;
    background-color:#FFFFFF ;
    width: 18%;
    cursor: pointer;
    padding: 1rem;
    max-height: 14rem;
    }


.ressort-porte-sectionnelle  .content  .finition   .title-finition{
    margin-bottom: 24px;
    display: flex;
    justify-content: center;
    font-weight: 500;
font-size: 16px;
line-height: 24px;
}

.ressort-porte-sectionnelle .header-title {
   display: flex;
}




.ressort-porte-sectionnelle .header-title .title{
    font: normal 600 30px/45px 'Poppins';
    margin-right: 24px;
}

.ressort-porte-sectionnelle .dimenssion{
    background-color: #F9FAFB;
    border-radius: 12px;
    display: flex;
    /* width: 70%; */
    justify-content: space-between;
    padding: 2rem;
}


.ressort-porte-sectionnelle .dimenssion .input-longeur{
    display: grid;
    padding: 17px;
}

.ressort-porte-sectionnelle .dimenssion .input-longeur label{
   font-size: 14px;
   font-weight: 500;
   line-height: 21px;
   padding-bottom: 6px;
}

.ressort-porte-sectionnelle .dimenssion .style-input{
   border-radius: 8px;
   border: 1px solid #E5E7EB ;
   height: 48px;
}


.ressort-porte-sectionnelle .header-title img{
margin-left: 8px;
 }

@media (max-width: 576px) {
    .ressort-porte-sectionnelle .header-title .title {
        font: normal 600 11px/45px 'Poppins' !important;
        }
}

@media (max-width: 576px) {

.ressort-porte-sectionnelle .form
{
    display: flow;
    width: 100%;
}
}



@media (max-width: 576px) {

.ressort-porte-sectionnelle  .content
{
    width: 100%;}
}


@media (max-width: 576px) {

.ressort-porte-sectionnelle .dimenssion{
    background-color: #F9FAFB;
    border-radius: 12px;
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-direction: column;
    margin: 0;
}
}

@media (max-width: 576px) {

.ressort-porte-sectionnelle .header-title {
    display: none;
 }
}

@media (max-width: 576px) {

.ressort-porte-sectionnelle .form .content-2 .img
{
     width: 100% !important;
}
}
@media (max-width: 576px) {

.section .container-wrapper {
    padding: 0;
}}
.section div.simulateur .recap-container .image-preview{
    aspect-ratio: unset;
    min-height: 13rem;
}
.prix-total-ht{
    text-align: center;
}
.section div.simulateur .recap-container .image-preview{
    background-size: 80% auto;
}
.disabled-icon{
    height: 3rem!important;
}

.width-l{
    width: 45%;
}
.width-m{
    width: 30%;
}
.width-s{
    width: 25%;
}
.style-input{
    padding: 1rem;
}
.option {
    padding: 10px;
    display: inline-block;
    cursor: pointer;
    transition: border-color 0.3s;
}

/* When radio is selected, highlight label */
input[type="radio"]:checked + label {
    border-color: orange;
}
.option-radio label:hover {
    cursor: pointer;
}
.ressort-porte-sectionnelle{
    width: inherit;
}
.detail-recap{
    padding-block: unset;
}
.section div.simulateur .recap-container .detail-recap{
    min-height: unset;
    margin-bottom: unset;
}
.container{
    border: 1px solid #E5E7EB;
}
 /* END Porte sectional */

 .column-w-1 {
     grid-row: span 2;
 }
 #popup-connection #from-signup{
     display: none;
 }

 #popup-connection .content {
     background: white;
     border-radius: 2rem;
     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
     padding: 2rem;
     padding-inline: 5rem;
     display: flex;

     gap: 1rem;
     flex-direction: column;
     align-items: center;
 }

 #popup-connection {
     position: fixed;
     background: rgb(51 51 51 / 56%);
     left: 0 !important;
     top: 0 !important;
     width: 100% !important;
     padding: 22px;
     opacity: 1;
     visibility: visible;
     transition: opacity 0.2sease-in-out;
     border-radius: 5px;
     border-radius: 5px;
     min-height: 250px;
     display: flex;
     align-items: center;
     justify-content: center;
     z-index: 100000000000;
     height: 100%;
 }

 #popup-connection form {
     width: 100%;
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 1rem;
 }

 #popup-connection a {
     color: orange;
     text-decoration: none;
     transition: colorease 0.3s;
 }

 #popup-connection .form-group.row .col-md-9 .form-control {
     display: block;
     border-radius: 1rem;
     padding: 10px;
     border: 1px solid #4e4e5038;
     color: #7a7a7a;
     background: #f6f6f6;
     text-align: left;
     margin:unset;
 }

 #popup-connection .titre {
     font-size: x-large;
     font-weight: 700;
 }

 #popup-connection .form-control-label {
     width: 28%;
 }

 #popup-connection .col-md-9 {
     width: fit-content;
     padding: unset;
 }

 #popup-connection .btn-container .btn {
     background: linear-gradient(105.57deg, #23324C 0%, #070A0F 100%);
     display: flex;
     width: 100%;
     height: 43px;
     align-items: center;
     justify-content: center;
     color: #fff;
     border: none;
     border-radius: 1rem;
     font-size: 16px;
     font-weight: 500;
     line-height: 22.4px;
     letter-spacing: .2px;
     padding-inline: 2rem;
 }

 #popup-connection .btn-container {
     width: auto;
     display: flex;
     justify-content: center;
 }

 #popup-connection .form-group {
     display: flex;
     align-items: center;
     justify-content: center;
     margin-bottom: unset !important;
 }

 #popup-connection .link-container {
     display: flex;
     justify-content: center;
     flex-direction: column;
     align-content: center;
     align-items: center;
 }

 #popup-connection .error {
     color: #cd0a0a;
 }

 #popup-connection .input-container {
     width: 100%;
     gap: 1rem;
     display: grid;
 }

 #popup-connection .content,
 #popup-connection input,
 #popup-connection button {
     transition: all 0.4s ease-in-out;
 }

 #popup-connection .content:hover,
 #popup-connection input:hover,
 #popup-connection button:hover {
     transform: scale(1.05);
     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
 }

 #popup-connection {
     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
 }

 .skeleton {
    position: relative;
    overflow: hidden;
    background-color: #F5F5F5; /* neutral base */
    border-radius: 4px;
    pointer-events: none;
    color: #bababa !important;
    user-select: none;
}
 .skeleton label{
    color: #bababa!important;
 }
.skeleton input:not(:disabled):checked+label::before,.skeleton input:not(:disabled):checked+label::before{
    background: #bababa !important;
}
.skeleton::after {
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    height: 100%;
    width: 150%;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.6) 50%,
        rgba(255, 255, 255, 0) 100%
    );
    animation: shimmer 1.2s infinite ease-in-out;
}

@keyframes shimmer {
    0% {
        left: -150%;
    }
    100% {
        left: 100%;
    }
}
 .notice-recap {
    padding: 12px 8px;
    background: rgba(255, 242, 197, 1);
    border-radius: 8px;
 }
.notice-recap .text span{
    font: normal 500 13px / 21px 'Poppins';
    color: #BB4C02;
 }
 .notice-recap a.link{
    font: normal 500 14px / 21px 'Poppins';
    color: #000000;
    text-decoration: underline;
 }


/* RAL */


.section div.simulateur div.form-container   .products-simulation-accessories .form-input-options  {
    gap: 0.5rem;
}
.ral-img,.galvanise-img{
    max-width: 1.9rem;
    max-height: 1.9rem;
}
#acier-galvanise{
    vertical-align: top;
}
.painting-label{
    width: fit-content!important;
    margin: 0!important;
}

.painting-container{
        display: flex !important;
    gap: 3rem;
    height: fit-content !important;
    flex-wrap: nowrap !important;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start !important;

}
.painting-container label,.painting-container input,.painting-container div,.painting-container .form-input-options{
    height: fit-content;
    width: max-content!important;
    margin: unset!important;
}
.painting-container .lame-finale-options-container,.painting-container .form-option  {
    width: unset!important;
}
.painting-container .lame-finale-options-container {
    gap: 1rem;
}
.ral-popup {
    z-index: 40001;
    position: fixed;
    top: 7%;
    margin-left: calc(100% / 6);
    margin-right: calc(100% / 6);
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 18px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 3.5rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow: auto;
    gap: 1.5rem;
    height: 90%;
}

#ral-popup {
  max-width: 800px;
  background: white;
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 0 20px rgba(0,0,0,0.05);
}

#ral-popup .header {
  text-align: center;
}

#ral-popup .logo {
  width: 60px;
  height: 60px;
}

#ral-popup h1 {
  font-size: 1.8rem;
  margin: 0.5rem 0;
}

#ral-popup .input-group {
    display: flex;
    flex-direction: row;
    margin-bottom: 1rem;
    align-content: center;
    align-items: center;
    gap: 1rem;
    width: auto;
    height: auto;
}

#ral-popup .input-group label {
  font-weight: 600;
  margin-bottom: 0.5rem;
}

#ral-popup .input-group input {
  padding: 0.75rem;
  border-radius: 8px;
  border: 1px solid #ccc;
  font-size: 1rem;
}

#ral-popup .instruction {
    font-size: 1rem;
    align-self: start;
    font-weight: 16px;
}

#ral-popup .alert {
    gap: 1rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    border: 1px solid #f44336;
    background-color: #ffe6e6;
    color: #000000;
    border-radius: 8px;
    padding: 1rem;
    font-size: 13px;
    font-weight: 600;
    text-align: start;
    line-height: 160%;
}

#ral-popup .color-grid {
    overflow-y: auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  gap: 1rem;
}
#ral-popup .color-grid::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

#ral-popup .color-grid::-webkit-scrollbar-thumb {
    background-color: #007bff ;
    border-radius: 10rem;
}

#ral-popup .color-grid::-webkit-scrollbar-track {
    background: #e8e8e8;
    border-radius: 10rem;
}

#ral-popup .color-box {
      border-radius: 8px;
    height: 64px;
    position: relative;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    flex-direction: column;
    align-content: flex-end;
    width: auto;
}

#ral-popup .color-info {
  background-color: rgba(255, 255, 255, 0.85);
  padding: 0.3rem;
  border-radius: 5px;
  text-align: center;
  font-size: 0.85rem;
}
.color-container {
    display: flex;
    padding: 10px;
    border: 2px solid transparent;
    transition: border-color 0.3s ease;
    flex-direction: column;
    justify-content: space-between;
    max-height: 15rem;
}
.color-container input{
    border: unset;
}
.color-container input:checked + .color-info + .color-box,
.ral-popup-complete input[type="radio"]:checked + label .item-container, .ral-popup-complete .item-container.selected
{
    border: 0.5rem solid #007bff;
}
.color-container input:checked + .color-info + .color-box::after {
    content: "✓ Sélectionné";
    position: absolute;
    top: 0;
    right: 0;
    background: #007bff;
    color: white;
    font-size: 0.75rem;
    font-weight: bold;
    padding: 0.2rem 0.4rem;
    border-bottom-left-radius: 10rem;
}
.color-container input + .color-info + .color-box{
    border: unset;
}
.painting-container .form-option {
    align-self: center;
}
.color-container,.color-container .ref{
    cursor: pointer;
}
.ral-trigger{
    cursor: pointer;
    gap: 0.8rem;
    display: flex
;
}
.value-display{
    font-weight: 300;
}
.color-container .color-box {
    border: 2px solid transparent; /* Default border */
}
#ral-popup .description{
    font-family: Poppins;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
}
#ral-popup .ref{
    font-family: Poppins;
    font-weight: 700;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
}
.ral-trigger .label{
    font-weight: 500;
}
@media screen and (max-width:720px) {
    .ral-popup{
    overflow: hidden;
    }
    #ral-popup .input-group{
        position: sticky;
        top: -20px;
        background: white;
        z-index: 1;
    }
    #ral-popup .color-grid{
        overflow: unset;
    }
}
.grid-12{
    width: 100%!important;
}
.one-line-flex{
    display: flex;
    align-content: center!important;
    flex-wrap: nowrap!important;
    align-items: flex-start;
}
.one-line-flex .form-input-options{
    width: fit-content!important;
}
.height-fit-content{
    height: fit-content!important;
}
.ral-popup .close{
    transition: all 0.5s ease-in-out;
    position: absolute;
    right: 3%;
    font-size: 4rem;
    top: 0;
    cursor:pointer;
}
.ral-popup .close:active,.color-box:active{
    transition: all 0.3s ease-in-out;
    transform: scale(0.8);
}

.painting-container .selected-circle {
    border: 0.2rem solid #ff9800;
    border-radius: 50%;
    padding: 1px;
}
.painting-container label::before{
    display: none!important;
}
.galvanise-label{
    gap: 1rem;
    display: flex;
}
.one-line-painting-container{
    display: flex!important;
    gap: 3rem;
    min-height: 1rem !important;
    height: fit-content!important;
    max-height: 10rem;
    align-items: center;
    width: 100%!important;
    flex-direction: row;
}
.one-line-painting-container .form-option{
    min-height: unset!important;
}
.ral-img{
    border-radius: 50%;
}
.ral-container {
  position: relative;
  width: 100px; /* adjust as needed */
  height: 100px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ral-inner-circle {
  position: absolute;
  width: 1.5rem!important; /* Subtract 2px border + 1px gap x2 */
  height: 1.5rem!important;
  border-radius: 50%;
  z-index: 1;
}
.disabled-input {
    pointer-events: none; /* Prevents interactions */
    color: #a0a0a0!important; /* Dimmed text color */
    cursor: not-allowed!important;; /* Show a "not allowed" cursor */
}

.category-buttons {
  display: flex;
  gap: 10px;
}

.category-btn {
  flex: 1;
  border: 1px solid #DDD;
  background: white;
  padding: 10px;
  border-radius: 10px;
  text-align: center;
  cursor: pointer;
}

.category-btn.active {
  border: 2px solid #FFA500; /* Example highlight color */
}

.ral-code-section {
  margin: 20px 0;
}

.ral-code-section input {
  padding: 10px;
  border: 1px solid #CCC;
  border-radius: 8px;
  width: 100%;
  max-width: 300px;
}

.color-options {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.color-swatch {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 14px;
}

.color-swatch .circle {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}
.minified-ral-popup{
    display: none;
}
.hidden{
    display: none;
}


input[type="radio"]:checked + label .item-container,.item-container.selected {
    border: 3px solid #FFA500; /* Yellow border when selected */
    border-radius: 50%;
}
#ral-popup .color-options{
    display: none;
}
#ral-popup .color-options.active{
    display: flex;
}

.minified-ral-popup {
    z-index: 40001;
    position: fixed;
    margin-top: 7rem;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 18px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 3.5rem;
    text-align: center;
    display: none;
    max-height: 30%;
    flex-direction: column;
    justify-content: space-between;
    overflow: auto;
}
.minified-ral-popup .color-grid{
    grid-template-columns: repeat(auto-fit, minmax(20px, 0fr)) !important;
    height: inherit;
}
.minified-ral-popup .color-box{
    height: 2rem!important;
    width: 2rem!important;
    border-radius: 50%!important;
    padding: 0!important;
}
.minified-ral-popup .color-container{
    padding: 0!important;
}
.colors-container{
    height: 14rem;
}
.minified-ral-popup .color-container input:checked + .color-info + .color-box {
    border: 0.2rem solid #007bff;
}
.minified-ral-popup .color-container input:checked + .color-info + .color-box::after {
    content: "✓";
    position: absolute;
    top: -10px;
    right: -3px;
    background: unset;
    color: #007bff;
    font-size: 2rem;
    font-weight: 800;
    padding: 0.1rem 0.1rem;
    border-bottom-left-radius: 10rem;
}
#ral-popup .thermolaquage{
    display: none;
}
#ral-popup .color-grid.active{
    display: grid;
}
#ral-popup .input-group.active{
    display: flex;
}
.ral-popup-complete .lame-finale-options-container {
    height: 55%;
}
.ral-popup-complete .color-grid{
    height: 85%;
}
.ral-popup-complete .color-swatch{
    justify-content: space-around;
}

.color-box {
    position: relative;
}

/* Base tag style */
.color-box .tag {
    display: none;
    background: rgba(0, 123, 255, 0.11);
    color: white;
    font-size: 0.75rem;
    font-weight: bold;
    padding: 0.2rem 0.4rem;
    border-bottom-left-radius: 10rem;
    border-top-right-radius: 3rem;
    z-index: 0;
}

/* Position stacking */
.for_thermolaquage_tablier .color-box .tag-tablier {
    display: block;
    top: 0;
}
.for_thermolaquage_coffre .color-box .tag-coffre {
    display: block;
    top: 1.2rem;
}
.for_thermolaquage_coulisse .color-box .tag-coulisse {
    display: block;
    top: 2.4rem;
}
.color-container{
    transition: all 0.8s linear;
}

.secondary-action-btn {
    color: #FF9800;
    border: 0.2rem solid #FF9800;
    background: linear-gradient(90deg, #fdfdfd 0%, #ffffff 100%);
}
.primary-action-btn {
    background: linear-gradient(90deg, #FF9800 0%, #FFBA2D 100%);
    color: #fff;
    border: none;
}
.action-btn{
    display: flex;
    width: 30rem;
    height: 43px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    line-height: 22.4px;
    letter-spacing: 0.2px;
    transition: all 0.5s ease-in-out;
}
.action-btn:hover{
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transform: scale(1.05);
}
.ral-popup-actions{
    padding-block: 1rem;
    height: fit-content;
    display: flex;
    justify-content: center;
    gap: 2rem;
}
.ral-popup-complete{
    max-height: 90%;
}
.ral-popup-complete #validate{
    display: none;
}

.coffre-container .form-option.face-form-option label {
    font: normal 500 14px / 20px "Poppins";
    margin-bottom: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    border-radius: 8px;
    padding-left: 0;
    margin: 0;
}
.coffre-container .form-option{
    width: calc((100% / 3) - 16px);
    min-height: 212px;
    margin-bottom: 0;
}
.coffre-container .form-option.face-form-option label::before {
    visibility: hidden;
}
@media (max-width: 768px) {
    .coffre-container .form-option {
        width: calc((100% / 3) - 5px);
    }
    .painting-container{
        flex-direction: column;
    }
    #ral-popup .input-group{
        flex-direction: column;
    }
    #ral-popup{
        top: 3%;
        margin-left: unset;
        margin-right: unset;
        width: 90%;
    }
}
@media screen and (max-width:576px) {
    .coffre-container .form-option {
        width: 100%;
        margin-bottom: 12px;
    }
}
.coffre-container .faces-coffre{
    padding: 0!important;
    border:unset!important;
    width: 100% !important;
    min-height: fit-content!important;
}
.coffre-container .face-form-option{
    width: calc(30% - 8px) !important;
    padding: 0!important;
}
.hidden {
    display: none;
}
.coffre-container .form-input-options,.coffre-container .form-option{
    margin: 0!important;
}
.coffre-container{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.disabled-form-input .option{
    border: 1px solid #F3F4F6!important;
}
.disabled-form-input{
    pointer-events: none;
    opacity: 0.7;
    cursor: not-allowed;
}
.blur-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(20px);
  background-color: rgba(255, 255, 255, 0.2); /* optional for frosted look */
  z-index: 999; /* adjust depending on your layout */
  pointer-events: none; /* so it doesn't block clicks */
}
.faces-coffre .d-block.mb-1{
    position: absolute;
    left: 5%;
    top: 30%;
}
.faces-coffre .input.flex.flex-column.flex-center{
    position: relative;
}
.faces-coffre input{
    padding: 12px 26px!important;
}
.coffre-container .faces-coffre{
    gap: 1rem;
}
#simulation-form .form-container{
    gap: 1rem;
    position: relative;
}
.hidden{
    display: none;
}

 .part-container-white {
     background: #FFF;
     padding: 16px 20px 16px 20px;
     border-radius: 12px;
     border: 1px solid #E5E7EB;
     height: 100%;
     width: 100%;
 }

 .simulator-text-input {
     border-radius: 8px;
     width: 100%;
     padding: 12px 16px;
     background: #fff;
     border: 1px solid #E5E7EB;
     box-shadow: 0 1px 2px 0 rgb(16 24 40 / 5%);
 }

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

 .flex {
     display: flex;
 }

 .flex-1 {
     flex: 1;
 }

 .simulator-input-label {
     color: #030712;
     font-weight: 500;
     font-size: 14px;
     line-height: 20px;
     margin-bottom: 6px;
     display: flex;
 }

 .flex-9 {
     flex: 9;
 }

 .part-container {
     height: 100%;
     width: 100%;
 }

 #simulation-form .mdm-flex-row {
     flex-direction: row;
 }

 #simulation-form .mdm-flex-row .form-input-options {
     justify-content: center;
 }

.hide-for-type, .hide-for-motor-type {
     display: none!important;
 }

 .hide-for-type, .hide-for-motor-type,  .hide-for-motor-type-dimension {
     display: none!important;
 }

 .flex-wrap{
    flex-wrap: wrap;
 }
 .flex-space-around{
    justify-content: space-around;
 }
 .flex-center{
     align-items: center;
 }

 #simulation-form .simulator-container-label{
    font-size: 19px;
    color: #17243F;
    font-weight: 500;
    line-height: 20px;
    width: fit-content;
    align-content: center;
}

 .moteur-part-tow {
     display: flex;
     justify-content: center;
 }

 #simulation-form .simulator-container-center-elements {
     margin-right: 0;
     font-size: 19px;
     color: #030712;
     font-weight: 500;
     line-height: 20px;
     display: flex;
     align-content: center;
     flex-wrap: wrap;
     align-items: center;
     flex-direction: column;
     gap: 1rem;
 }

 #simulation-form .flex-center-elements {
    justify-content: center !important;
    align-items: center;
}

 .simulator-label {
     color: #030712;
     font-weight: 500;
     font-size: 13px;
     line-height: 19.6px;
     letter-spacing: 0.2px;
     display: flex;
     align-items: center;
     cursor: pointer;
     position: relative;
 }

 .simulator-label > label::before {
     content: "";
     width: 14px;
     height: 14px;
     outline: 1px solid #E7E7E7;
     border: 2px solid #fff;
     margin-right: 12px;
     border-radius: 50%;
     display: inline-block;
     order: 0;
     position: absolute;
     left: 0;
     top: 3px;
 }

 .simulator-label > label::before {
     left: auto;
     right: 0;
     margin-right: 1rem;
     position: static;
     background: rgba(112, 112, 112, 0.21);
     border-color: rgb(249 250 251);
     outline-color: rgba(112, 112, 112, 0.21);
     border-width: 1px;
 }

 .simulator-label label {
     display: flex;
     align-content: center;
     align-items: center;
     cursor: pointer;
 }

 .simulator-label > input {
     opacity: 0;
     visibility: hidden;
     width: 0;
     height: 0;
     position: absolute;
 }

 .simulator-label input:checked + label::before {
     background: #FF9800;
 }

 .moteur-part-one {
     display: flex;
     justify-content: center;
 }

 .lame-finale-labels {
     display: flex;
     justify-content: center;
 }

 #simulation-form .flex-gap {
     gap: 1.5rem;
 }

 .moteur-part-one img {
     max-width: 10rem;
 }

 .flex-container {
     display: flex;
     flex-wrap: wrap;
 }

 .flex-parts {
     display: flex;
     flex-wrap: wrap;
    justify-content: center;
     align-items: center;
     padding: 2rem;
 }

 #simulation-form .w-100{
     width: 100%;
 }

 #simulation-form .container {
     display: flex;
     flex-direction: column;
     max-width: -webkit-fill-available;
 }
 .fill-space-flex-space-between-column{
    display: flex  ;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

 .item-img{
     max-width:100%;

 }

 #simulation-form .lame-finale-container .form-option, #simulation-form .motorisation-container .form-option {
     background: transparent;
     border: none;
     padding: 0;
     min-height: 1px;
     margin-bottom: 0;
 }

 .section div.simulateur div.form-container .part-container.sens-enroulements-container .form-option, #simulation-form .form-option-transparent {
    background: transparent;
    border: none;
    padding: 0;
    margin-bottom: 0;
    min-height: 1px;
}
.title_recap{
    text-align: center;
    color: #17243f;
    font: normal 800 21px/28px 'Poppins';
}
.content-new-product ul{list-style: disc;padding-inline-start: 20px;}
 @media screen and (max-width: 992px) {
     [class*="col-"] {
         width: 100%;
         max-width: 100%;
         min-width: 100%;
     }

     .col-6, .col-3 {
         -webkit-box-flex: 0;
         -ms-flex: 0 0 50%;
         flex: unset;
         max-width: unset;
     }

     .col {
         flex-basis: unset;
     }

     .motoriser-manuelle-option, #simulation-form .axe-options .lame-finale-options-container {

         flex-direction: row;
     }
     .motoriser-manuelle-option, #simulation-form .one-line-flex {
         flex-direction: column;
         width: 100% !important;
     }

     #simulation-form .container, #simulation-form .row {
         gap: 1rem;
     }

     .item-img {
         height: auto;
     }
     .simulateur div.form-container .part-container .form-input-options{

    justify-content: center;
     }
     #simulation-form .one-line-flex{
         align-items:center;
     }

    .part-container {
        width: 100% !important;
        min-height: auto;
        height: auto !important;
    }
 }

 .prix-total-ht {
     text-shadow: -0.7px -0.7px 0 #2e3d66 , 0.7px -0.7px 0 #2e3d66 , -0.7px 0.7px 0 #2e3d66 , 0.7px 0.7px 0 #2e3d66 ;
 }

 .un-padding-col > div {
     padding: 0 !important;
 }

 .un-padding-col {
     display: flex;
     gap: 1.5rem;
 }

 #simulation-form .container:has(> .un-padding-col) {
     gap: 1.5rem;
 }

 #simulation-form .galvanise-label,#simulation-form .painting-label {
     margin: unset !important;
 }

 #simulation-form .configuration-container .form-input-options {
     flex-direction: column;
 }

 #simulation-form .hidden-input-form{
     display: none;
 }
/**** Start -- Checkbox label selection **/

 /* Reset */
.simulation input + label {
  outline: 2.5px solid transparent;
  cursor: pointer;
    box-sizing: border-box;

}

/* Style when selected */
.selection-box-input:checked + span,
.selection-box-input:checked {
  outline: none;
}

.selection-box-input:checked::after {
  content: "";
}

.simulation input:checked + label {
  outline-color: orange;
}

/**** END -- Checkbox label selection **/

 .step-content .styled-option {
     border: 0px !important;
 }


 /*** Start -- Add to cart -- ***/
 .page-simulateur .add-to-cart {
     background: linear-gradient(105.57deg, #23324c 0, #070a0f 100%) !important;
     display: flex;
     height: 43px;
     align-items: center;
     justify-content: center;
     color: #fff;
     border: 0;
     border-radius: 8px;
     font-size: 16px;
     font-weight: 500;
     line-height: 22.4px;
     letter-spacing: .2px;
 }

 .page-simulateur .qty-input {
     display: none;
 }

 .page-simulateur .product-add-to-cart, .page-simulateur .add {
     width: 100% !important;
     margin: unset !important;
 }

 /*** END -- Add to cart -- ***/