*{
    box-sizing:border-box;
}

.lgxb-wrapper{

    max-width:1200px;

    margin:40px auto;

    background:#0f0f0f;

    border-radius:18px;

    padding:40px;

    color:#ffffff;

    font-family:Arial,Helvetica,sans-serif;

    box-shadow:0 20px 60px rgba(0,0,0,.35);
}

.lgxb-header{

    text-align:center;

    margin-bottom:40px;
}

.lgxb-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:30px;

    align-items:start;
}

.lgxb-left,
.lgxb-right{

    min-width:0;

    width:100%;
}

.lgxb-field{

    margin-bottom:22px;
}

.lgxb-field label{

    display:block;

    margin-bottom:8px;

    font-size:15px;

    font-weight:600;

    color:#dcdcdc;
}

.lgxb-field input,
.lgxb-field select{

    width:100%;

    padding:15px;

    background:#1d1d1d;

    color:#fff;

    border:1px solid #3b3b3b;

    border-radius:10px;

    font-size:16px;

    transition:.25s;
}

.lgxb-field input:focus,
.lgxb-field select:focus{

    outline:none;

    border-color:#7ED321;

    box-shadow:0 0 12px rgba(126,211,33,.35);
}

.lgxb-quote{

    background:#181818;

    border:2px solid #7ED321;

    border-radius:15px;

    padding:30px;

    min-width:0;

    overflow:hidden;
}

.lgxb-quote-title{

    text-align:center;

    color:#7ED321;

    font-size:24px;

    font-weight:bold;

    margin-bottom:25px;
}

.lgxb-quote-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:12px 0;

    border-bottom:1px solid #303030;

    font-size:15px;
}

.lgxb-quote-row span:last-child{

    font-weight:600;

    color:#ffffff;

    text-align:right;

    min-width:0;
}

/* Hide discount percentage */
.lgxb-discount-row{
    display:none;
}

.lgxb-total{

    margin-top:30px;

    text-align:center;
}

.lgxb-total-label{

    font-size:14px;

    letter-spacing:3px;

    color:#888;

    margin-bottom:10px;
}

.lgxb-price{

    font-size:38px;

    line-height:1.1;

    width:100%;

    max-width:100%;

    overflow-wrap:anywhere;

    color:#7ED321;

    font-weight:700;

    margin-bottom:10px;
}

.lgxb-vat{

    color:#888;

    font-size:13px;
}

.lgxb-button{

    width:100%;

    margin-top:20px;

    background:#7ED321;

    color:#000;

    border:none;

    padding:8px;

    font-size:18px;

    font-weight:bold;

    border-radius:10px;

    cursor:pointer;

    transition:.25s;
}

.lgxb-button:disabled{

    opacity:.55;

    cursor:not-allowed;
}

.lgxb-info{

    margin-top:25px;

    color:#bcbcbc;

    line-height:2;

    font-size:15px;
}

#lgxb-material:disabled{

    opacity:1;
}

@media(max-width:900px){

    .lgxb-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:600px){

    .lgxb-wrapper{
        padding:25px;
    }

    .lgxb-price{
        font-size:32px;
    }

    .lgxb-quote-row{
        font-size:14px;
    }
}
/* Leaflet/Sticker master artwork upload UI */
.lgxb-upload-box{margin-top:10px;margin-bottom:25px;padding:22px;background:#181818;border:1px solid #353535;border-radius:12px}
.lgxb-upload-heading{margin-bottom:8px;color:#fff;font-size:17px;font-weight:700}
.lgxb-upload-instruction{margin-bottom:15px;color:#bcbcbc;font-size:13px;line-height:1.6}
.lgxb-upload-instruction strong{color:#7ED321}
.lgxb-upload-box input[type="file"]{display:block;width:100%;margin-bottom:12px;padding:12px;background:#111;color:#fff;border:1px solid #3b3b3b;border-radius:8px;font-size:13px}
.lgxb-upload-rules{margin-bottom:15px;color:#888;font-size:12px;line-height:1.6}
.lgxb-upload-button{width:100%;padding:12px 14px;background:#262626;color:#fff;border:1px solid #7ED321;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:.25s}
.lgxb-upload-button:hover{background:#7ED321;color:#000}
.lgxb-upload-button:disabled{opacity:.55;cursor:wait}
.lgxb-upload-progress{margin-top:12px;color:#bcbcbc;font-size:13px;text-align:center}
.lgxb-upload-message{margin-top:12px;font-size:13px;line-height:1.5}
.lgxb-upload-message.success{padding:10px 12px;background:rgba(126,211,33,.08);border:1px solid rgba(126,211,33,.4);border-radius:8px;color:#7ED321;overflow-wrap:anywhere}
.lgxb-upload-message.error{padding:10px 12px;background:rgba(255,70,70,.08);border:1px solid rgba(255,70,70,.4);border-radius:8px;color:#ff7777}
