.modular-builder{
margin-top:10px;
}

/* trigger input */

.builder-trigger{
width:100%;
padding:12px 14px;
border:1px solid #333;
background:#0f0f0f;
color:#fff;
border-radius:4px;
cursor:pointer;
}

/* popup overlay */

.builder-popup{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.75);
z-index:99999;
align-items:center;
justify-content:center;
}

/* popup box */

.builder-popup-inner{
background:#ffffff;
width:650px;
max-height:85vh;
padding:30px;
border-radius:8px;
position:relative;
display:flex;
flex-direction:column;
}

/* scrollable items */

.builder-items{
overflow-y:auto;
max-height:55vh;
padding-right:10px;
}

/* item row */

.builder-item{
display:flex;
align-items:center;
justify-content:space-between;
gap:15px;
margin-bottom:18px;
}

/* size text */

.builder-item span{
font-size:16px;
color:#333;
line-height:1.4;
}

/* quantity stepper */

.builder-stepper{
display:flex;
align-items:center;
gap:8px;
}

/* minus / plus buttons */

.builder-stepper button{
width:42px;
height:42px;
border:none;
background:#0F4C4C;
color:#fff;
font-size:18px;
cursor:pointer;
border-radius:4px;
}

.builder-stepper button:hover{
background:#146B6B;
}

/* quantity box */

.builder-stepper input{
width:60px;
height:42px;
text-align:center;
border:none;
background:#000;
color:#fff;
font-size:16px;
border-radius:4px;
}

/* remove number arrows */

.builder-stepper input::-webkit-outer-spin-button,
.builder-stepper input::-webkit-inner-spin-button{
-webkit-appearance:none;
margin:0;
}

/* apply button */

.apply-builder{
margin-top:20px;
padding:12px 24px;
background:#0F4C4C;
color:#fff;
border:none;
border-radius:4px;
cursor:pointer;
}

.apply-builder:hover{
background:#146B6B;
}

/* total */

.builder-total{
margin-top:25px;
font-size:22px;
color:#fff;
}

/* popup heading */

.modular-builder .builder-popup-inner h3{
color:#000 !important;
}
.builder-popup-inner h3{
font-size:18px;
font-weight:600;
margin-bottom:15px;
}
.builder-group h3{
    font-size: 22px !important;
    margin-bottom: 8px;
    letter-spacing: 2px !important;
}
/* close icon */

.popup-close{
position:absolute;
top:10px;
right:15px;
background:none;
border:none;
font-size:28px;
cursor:pointer;
color:#333;
}

/* quote popup */

.quote-popup{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.8);
z-index:99999;
}

.quote-popup-inner{
background:#fff;
max-width:500px;
margin:120px auto;
padding:30px;
border-radius:6px;
position:relative;
}

.quote-popup-inner textarea,
.quote-popup-inner input{
width:100%;
margin-bottom:10px;
padding:10px;
border:1px solid #ccc;
}

.quote-close{
position:absolute;
top:10px;
right:15px;
font-size:26px;
border:none;
background:none;
cursor:pointer;
}

/* MOBILE RESPONSIVE */

@media(max-width:768px){

.builder-popup-inner{
width:92%;
padding:20px;
}

/* item layout */

.builder-item{
flex-direction:column;
align-items:flex-start;
gap:8px;
}

/* quantity row */

.builder-stepper{
display:flex;
align-items:center;
gap:8px;
}

.builder-stepper button{
width:40px;
height:40px;
}

.builder-stepper input{
width:60px;
height:40px;
}

}