body{
    font-family: 'Source Sans Pro';
    background: rgb(255 255 255);
    overflow-x: hidden;
}
body main{
    overflow-x: hidden;
    margin-bottom: 70px;
    position: relative;
}
header{
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    flex-wrap: nowrap;
    justify-content: space-between;
}
#btn_esqueci_senha{
    float: right;
    text-decoration: underline;
    color: var(--bs-primary);
}

.logo{
    width: 100px;
    border-radius: 100%;
    height: 100px;
    object-fit: cover;
}
.div-empresa-status{
    margin-left: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 120px;
    color: var(--bs-cor-text-primary);
}
.empresa-nome{
    font-weight: 600;
}
.empresa-status{
    position: relative;
    padding-left: 20px;
}
.empresa-status::before{
    content: "";
    position: absolute;
    left: 0px;
    width: 14px;
    height: 14px;
    bottom: 0px;
    top: 0px;
    margin: auto;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -khtml-border-radius: 10px;
    border-radius: 10px; 
}
.aberto.empresa-status::before{
    background: #4caf50;
}
.fechado.empresa-status::before{
    background: #f00;
}
.box-img-header{
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}
.modal_custom .modal-btn-close{
    font-size: 26px;
    line-height: 12px;
}
.modal_custom .modal-header{
    display: grid;
    grid-template-columns: 47px 1fr auto;
    align-items: center;
    padding: 10px 1rem;
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    background-color: var(--bs-cor-bg-primaria-header-rgb);
    border-bottom: solid 1px rgba(0, 0, 0, 0.08);
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 19;
}
.modal_custom .modal-header .modal-title{
    -webkit-line-clamp: 1;
    display: -webkit-box;
    width: calc(100% - 47px);
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
    transform: translateX(-20px);
    color: var(--bs-cor-text-primary-categoria);
}

/* CONFIRME OS DADOS */ 
#modal_finalizar_pedido{
    z-index: 999999;
}
#modal_finalizar_pedido.modal_custom .modal-content{
    padding-bottom: 0px;
    background: #ccc;
}
.modal-body-comfirme-dados{
    padding: 20px 21px;
}
.modal-body-comfirme-dados p{
    font-weight: 600;
}
.btn_avancar{
    width: 100%;
}
#modal_finalizar_pedido .btn_avancar .btn_add_car-carregando{
    display: none;
}
#modal_finalizar_pedido .btn_avancar.carregando .btn_add_car-carregando{
    display:block;
}
#modal_item .btn_add_car_avancar.carregando .btn_add_car-carregando{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}
.modal_custom .modal-body{
    padding: 0px;
    background: var(--bs-cor-bg-modal-body-primaria);
    padding-top: 61px;
    padding-bottom: 50px;
    flex: auto;
    overflow-y: scroll;
}
/*
.modal_custom .modal-content{
    padding-bottom: 60px;
}
*/
.page-finalizar-pedido{
    opacity: 0;
    visibility: hidden;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    background-color: var(--bs-cor-bg-modal-body-primaria);
    transform: translate(100%, 0px);
    transition: transform 0.6s cubic-bezier(0.18, 0.89, 0.32, 1) 0.1s, opacity 0.3s ease, visibility 0.1s ease;
    position: absolute;
    top: 0;
}
.page-finalizar-pedido.active{
    opacity: 1;
    visibility: visible;
    transform: translate(0%, 0px);
    box-shadow: 0px 0px 20px 2px #00000059;
}
.resume-dados-cliente{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    background-color: var(--bs-cor-bg-resume-dados-cliente);
    padding: 20px;  
}
.user-details__info__name{
    font-size: 16px;
    font-weight: 700;
}
.header-accordion{
    padding: 20px;
    background-color: #efeeee;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.header-accordion .title-accordion{
    font-size: 15.4px;
    font-weight: 700;
}
.header-accordion .arrow-accordion{
    color: var(--bs-primary);
    font-size: 24px;
}
.body-accordion .list-group-item{
    display: grid;
    grid-template-columns: 1fr 120px;
    padding: 1rem 0px 1rem 1rem;
}
.body-accordion .list-group-item.disabled{
    pointer-events: auto;
}
.body-accordion .list-group-item > div:first-child{
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
}
.page-finalizar-pedido[data-page="dados-select-cartao"] .body-accordion .list-group-item > div:first-child {
    text-align: left;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: row;
}
.body-accordion .list-group-item > div:first-child > div{
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 10px;
}
.body-accordion .list-group-item > div:last-child{
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.body-accordion .list-group-item .form-check {
    text-align: center;
    font-size: 20px;
}
.bg-green{
    color: var(--bs-green);
}

.grid-buttons-ckeck{
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: stretch;
}
.grid-buttons-ckeck label{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    width: 48%;
    min-height: 150px;
    border: 1px solid var(--bs-cor-bg-border);
    background: var(--bs-cor-bg-primaria-header);
    box-shadow: rgb(0 0 0 / 19%) 0px 4px 3px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -khtml-border-radius: 20px;
    border-radius: 20px;
    position:relative;
}
.carregando .grid-buttons-ckeck label:before, .carregando .box-cupom-desconto:before, .carregando #btn_meus_enderecos:before{
    content: "";
    animation-duration: 1.8s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeHolderShimmer;
    animation-timing-function: linear;
    background: #ced4da;
    background: linear-gradient(to right, #e3e3e3 8%, #f5f1f1 38%,  #e3e3e3 54%);
    background-size: 1000px 640px;
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%;
    left: 0px;
    border-radius: 18px;
    border: 0px solid #ccc;
    z-index: 9;
}
.carregando .box-cupom-desconto, .carregando .grid-buttons-ckeck label, .carregando #btn_meus_enderecos{
    position: relative;
    border: 2px solid rgb(255,102,0,0) !important;
}

@keyframes placeHolderShimmer{
    0%{
        background-position: -468px 0
    }
    100%{
        background-position: 468px 0
    }
}


.grid-buttons-ckeck label.btn-active{
    border: 2px solid rgb(255,102,0);
}
.grid-buttons-ckeck .form-check .form-check-input{
    margin: 5px auto 12px;
}
.grid-buttons-ckeck label .text-endereco{
    font-size: 11px;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    text-transform: uppercase;
    margin: 0 5px;
}
.grid-buttons-ckeck label .text-title{
    font-size: 16px;
    font-weight: 800;
    margin-top: 12px;
}
.grid-buttons-ckeck label .text-title img.delivery-icon{
    width: 20px;
    height: auto;
    vertical-align: top;
    margin-right: 3px;
    margin-top: 3px;
}
.grid-buttons-ckeck label .form-check-input:checked{
    background-color: #d55500;
    border-color: #ffa96f;
    box-shadow: 0px 0px 17px 0px #0000006b;
}
.grid-buttons-ckeck label .form-check-input:checked ~ label{
    background-color: #000;
}
.grid-buttons-ckeck.grid-buttons-pagamento{
    display: grid;
    grid-template-areas:
        "dinheiro online"
        "cartao cartao";
    flex-direction: unset;
    justify-content: space-around;
    grid-template-columns: 50% 50%;
    gap: 7px;
    max-width: 100%;
    margin: 0px auto;
    padding: 10px;
}
.grid-buttons-ckeck.grid-buttons-no-pagamento-online{
    display: grid;
    grid-template-areas:
        "dinheiro online"
        "cartao cartao";
    width: calc(100% - 15px);
    flex-direction: unset;
    justify-content: center;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    max-width: 100%;
    margin: 0px auto 20px;
}
.grid-buttons-ckeck.grid-buttons-no-pagamento-online.nao_possui_pg_dinheiro, .grid-buttons-ckeck.grid-buttons-pagamento.nao_possui_pg_dinheiro{
    display: grid;
    grid-template-areas:
        "online online"
        "cartao cartao";
}
.grid-buttons-pagamento .form-check[data-tipo="dinheiro"], .grid-buttons-no-pagamento-online .form-check[data-tipo="dinheiro"]{
    grid-area: dinheiro / dinheiro / dinheiro / dinheiro;
}
.grid-buttons-pagamento .form-check[data-tipo="online"], .form-check[data-tipo="pix_online"], .form-check[data-tipo="pix_offline"]{
    grid-area: online / online / online / online;
}
.grid-buttons-pagamento .form-check[data-tipo="cartao"], .grid-buttons-no-pagamento-online .form-check[data-tipo="cartao"]{
    grid-area: cartao / cartao / cartao / cartao;
}
.grid-buttons-ckeck.grid-buttons-pagamento .form-check,  .grid-buttons-ckeck.grid-buttons-no-pagamento-online .form-check{
    width: 100%;
}
.payments-readonly-item__card-image{
    margin: 0 8px;
    max-width: 24px;
    height: auto;
}
.box-cupom-desconto{
    box-shadow: rgb(0 0 0 / 8%) 0px 4px 16px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -khtml-border-radius: 20px;
    border-radius: 20px;
    padding: 20px 19px 13px;
}
.box-cupom-desconto .cupom_aplicado{
    display: flex;
    flex-direction: column;
}
.box-cupom-desconto .cupom_aplicado > div{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.box-cupom-desconto .cupom_aplicado > div:first-child h3{
    font-size: 16px;
    font-weight: 800;
}
.map { 
  height: 100%; 
  z-index: 1;
}
.map-container{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
.page-finalizar-pedido[data-page="map"] .modal-body{
    padding-top: 0px;
    padding-bottom: 0px;
}
.leaflet-marker-icon{
    margin-left: auto;
    margin-right: auto;
    width: 2.5rem;
    filter: invert(39%) sepia(73%) saturate(1660%) hue-rotate(0deg) brightness(102%) contrast(106%);
}

#pin{
    position: absolute;
    z-index: 1;
    width: 40px;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    transform: translate(0px, -5px);
    display: none;
}
.shador-marker{
    display: block;
    position: absolute;
    width: 11px;
    height: 5px;
    border-radius: 100%;
    bottom: -44px;
    left: 0;
    z-index: 1;
    background-color: #3e3e3e;
    opacity: .3;
    top: 0;
    right: 0;
    margin: auto;
}
.modal-title-map{
    width: calc(100% - 47px);
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
    transform: translateX(-20px);
}
.modal-title-map span{
    -webkit-line-clamp: 1;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
}
.text-title-endereco{
    font-size: 14px;
    font-weight: 600;
}
.text-title-cidade{
    font-size: 12px;
}
#mapid .leaflet-popup{
    top: -110px;
}

#mapid.leaflet-container a.leaflet-popup-close-button{
    display: none;
}
#mapid .leaflet-bar{
    top: 60px;
}
.page-finalizar-pedido[data-page="dados-select-endereco"] .text-title, .page-finalizar-pedido[data-page="dados-confirmar-endereco"] .text-title, .page-finalizar-pedido[data-page="dados-meus-enderecos"] .text-title{
    font-size: 24px;
    margin: 20px 20px 40px;
    font-weight: 600;
}
.page-finalizar-pedido[data-page="dados-meus-enderecos"] .list-group-item{
    cursor: pointer;
}
#cadastrar_endereco .form-control-lg{
    font-size: 1rem;
    margin-bottom: 10px;
}
#cadastrar_endereco .preview-text{
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: space-around;
    border-bottom: 1px solid #00000029;
    position: absolute;
    background: #fff;
    top: 62px;
    left: 0px;
    width: 100%;
    height: 115px;
}
#cadastrar_endereco .preview-text > div{
    max-width: 78%;
    text-align: left;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
#cadastrar_endereco .preview-text > div > div{
    padding-right: 15px;
}
#cadastrar_endereco .preview-text div i{
    font-size: 40px;
}
.descricao-complementos{
    display: flex;
    flex-direction: column;
}
.list-complementos .itens-preco{
    margin: 10px 0px 0px;
    text-align: center;
}
.page-finalizar-pedido[data-page="dados-confirmar-endereco"] .text-title{
    line-height: 24px;
    margin-top: 33px;
}
.page-finalizar-pedido[data-page="dados-confirmar-endereco"] .text-title small{
    font-weight: 400;
    font-size: 16px;
}
.form-input-endereco{
    margin-top: 127px;
}
.valor-troco{
    text-align: left;
    margin-top: 20px;
}
.custom_alert .swal2-actions{
    margin-top: 0px;
}
.custom_alert .swal2-styled{
    width: 100%;
    margin: 0.3125em 28px;
}
.custom_alert .swal2-input-label{
    width: auto;
    text-align: left;
    margin: 10px 1.5em 5px 1.5em;
    justify-content: flex-start;
}
.custom_alert .swal2-input{
    margin: 0em 1.5em 10px 1.5em;
    max-width: 100%;
}
.custom_alert .swal2-styled.swal2-deny{
    border: 0;
    border-radius: 0.25em;
    background: initial;
    background-color: #6e7881;
    color: #fff;
    font-size: 1em;
}
.box_cartoes{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}
.box_cartoes img{
    margin: 0 8px;
    max-width: 24px;
    height: auto;
    object-fit: contain;
}
.box_cartoes > div{
    display: flex;
    vertical-align: middle;
    width: 43px;
}
.box_cartoes .active{
    border: 2px solid var(--bs-primary);
    border-radius: 10px;
}
#cupom_desconto{
    text-transform: uppercase;
    font-weight: 600;
    background-color: #fff;
    border-color: #ced4da;
    box-shadow: unset;
    border-right-color: var(--bs-primary);
}
#button-addon2.btn-outline-primary:focus{
    box-shadow: unset;
}

.ajust-block{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 8;
    display: none;
}
.blockAjustar .ajust-block{
    display: block;
}
.blockAjustar #mapid .leaflet-bar{
    display: none;
}
.btn_confirm_location{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    z-index: 1;
    width: 90%;
    margin: auto;
}
.blockAjustar .btn_confirm_location{
    display: none;
}
.box-buttons-footer-map{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    z-index: 9;
    width: 90%;
    margin: auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    gap: 5%;
    display: none;
}
.blockAjustar .box-buttons-footer-map{   
    display: flex; 
}
.box-buttons-footer-map button{
    width: 100%;
    height: 100px;
    border-radius: 10px;
    border: 1px solid #a5a5a5;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.box-buttons-footer-map button i{     
    font-size: 24px;   
    color: #1f1f1f;
}
.box-buttons-footer-map button span{
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 600;
    color: #1f1f1f;
}
.box-buttons-footer-map button:last-child{
    background: linear-gradient(0deg, rgba(255,102,0,1) 0%, rgb(197 87 15) 100%);
    border: 1px solid transparent;
}
.box-buttons-footer-map button.btn-secondary{
    color: #fff;
    background: #6c757d !important;
    border-color: #6c757d !important;
}
.box-buttons-footer-map button:last-child *{
    color: #fff;
}
/* Carrousel */
.carrousel-body{
    width: 100%;
    max-width: 100vw;
    overflow: scroll hidden;
    flex-wrap: inherit;
    display: flex;
    padding-left: 10px;
    padding-top: 9px;
    padding-bottom: 15px;
    position: relative;
    top: 0;
    background: #fff;
    left: 0px;
    z-index: 1;
}
.carrousel-categoria{
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    height: 115px;
    background: rgb(255,102,0);
    background: linear-gradient(0deg, rgba(255,102,0,1) 0%, rgb(197 87 15) 100%);
    border: 1px solid transparent;
    color: #fff;
    border-radius: 16px;
    padding: 0;
    line-height: 17px;
    margin-right: 10px;
    min-width: 206px;
    -webkit-line-clamp: 2;
    box-shadow: rgb(0 0 0 / 8%) 0px 4px 16px;
    text-align: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
    width: 100%;
}
.carrousel-categoria.categoria_sem_imagem{
    background: #512314 !important;
}
.carrousel-categoria.categoria_sem_imagem *{
    color: #fff;
}
.carrousel-categoria.active{
    color: #fff;
    background-color: #df5b04;
    border-color: #df5b04;
    box-shadow: 0 0 0 0.25rem #df5b048c;
}
.pf-body{
    z-index: 0;
    padding-top: 15px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 70px;
}
.button_comprar-item button.btn-pontos{
    background: #512314;
    border: 3px dashed #fff;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    margin-top: 10px;
}
.pf-body .itens .preco, .pf-body .itens .itens-preco{
    font-size: 15px;
}
.pf-body .a-partir{
    font-size: 11px;
}
.pontos_text span{
    font-size: 19px;
    font-weight: 600;
    display: block;
}
.pontos_text div{
    border-radius: 50px;
    font-size: 12px;
    margin-top: 7px;
}
.pontos_de{
    font-size: 12px;
    display: block;
    line-height: 12px;
    margin-bottom: -5px;
    margin-top: 3px;
    text-decoration: line-through;
    color: #e9ecef;
}
.text-preco_apagar{
    font-size: 25px;
    padding-top: 5px;
    display: block;
    color: #198754;
}
.a_partir{
    font-size: 12px;
    display: block;
    line-height: 12px;
    margin-bottom: -5px;
    margin-top: 3px;
    color: #e9ecef;
}
.modal_custom .modal_preco.modal_preco_valor_pontos{
    top: -38px;
    height: 73px;
}
.modal_preco_valor_pontos .itens-div-preco{
    flex-direction: column;
    justify-content: center;
}
.btn-pontos_valor_pontos span:first-child{
    white-space: pre-wrap;
}
.btn-pontos_valor_pontos span:last-child{
    white-space: nowrap;
}
#programa-fidelidade .categorias-info{
    z-index: 1;
    color: #fff;
    background: linear-gradient(359deg, rgb(2 2 2 / 50%) 20%, rgb(72 60 60 / 0) 100%);
    padding: 20px;
    width: 100%;
}
#programa-fidelidade .categorias-info-titulo{
    -webkit-line-clamp: 2;
    font-size: 25px;
}
h2.categorias-info-titulo_fidelidade{
    -webkit-line-clamp: 2;
    margin-bottom: 5px;
}
.pf-body.loading .itens{
    transition: background 0.25s ease;
    -webkit-transition: background 0.25s ease;
    -moz-transition: background 0.25s ease;
    -ms-transition: background 0.25s ease;
}
.pf-body.loading .itens  *{
    opacity: 0;
}
.pf-body.loading .itens:after{
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeholderAnimation;
    animation-timing-function: linear;
    background: linear-gradient(90deg, rgba(153, 153, 153, 0.1) 8%, rgba(153, 153, 153, 0.2) 18%, rgba(153, 153, 153, 0.1) 33%) 0% 0% / 1260px 170px;
    z-index: 1;
}
.saldo_pf{
    position: absolute;
    right: -8px;
    display: flex;
    flex-direction: column;
    text-align: center;
    top: -8px;
    line-height: 17px;
    background: #512314;
    color: #fff;
    padding: 5px 10px;
    border-radius: 10px;
}
.saldo_pf > span:first-child{
    font-size: 12px;
}
.saldo_pf > span:last-child{
    font-weight: 600;
}
.modal_custom .modal-header > div{
    position: relative;
}
#programa-fidelidade .modal-header .modal-title span{
    transform: translateX(-8px);
    display: block;
}
.btn_add_car-text span span{
    display: inline-block;
}
.categorias-info-pontos{
    background: #FF6600;
    padding: 3px 8px;
    border-radius: 6px;
    font-weight: 600;
    transform: translateX(-3px);
    position: relative;
    display: inline-block;
}
body.keyboard-open #modal_finalizar_pedido .modal-footer {
    position: relative;
    bottom: 97px;
    width: 100%;
    left: 0;
    height: auto;
}
#div_usersession{
    position: absolute;
    top: 0;
    right: 0;
}
@-webkit-keyframes placeholderAnimation { 
  0% { background-position: -468px 0px; }
  100% { background-position: 468px 0px; }
}
@keyframes placeholderAnimation { 
  0% { background-position: -468px 0px; }
  100% { background-position: 468px 0px; }
}
/* /Carrousel */
.loading .categoria_list-name{
    position:relative;
    width: 100%;
    height: 40px;
}
.loading .modal-header .modal-title > span{
    width: 100px;
    height: 23px;
    display: inline-block;
    position:relative;
}
.loading .categoria_list-name:after, .loading .modal-header .modal-title > span:after{
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeholderAnimation;
    animation-timing-function: linear;
    background: linear-gradient(90deg, rgba(153, 153, 153, 0.1) 8%, rgba(153, 153, 153, 0.2) 18%, rgba(153, 153, 153, 0.1) 33%) 0% 0% / 1260px 170px;
    z-index: 1;
    border-radius: 10px;
}
.cpf_cnpj_pedido{
    box-shadow: rgb(0 0 0 / 8%) 0px 4px 16px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -khtml-border-radius: 20px;
    border-radius: 20px;
    padding: 13px 13px 13px;
    background: #fff;
    margin: 12px 13px;
    border: 1px solid #dee2e6;
}
.cpf_cnpj_pedido .text_decreto{
    text-align: center;
    line-height: 14px;
    display: block;
    font-weight: 300;
    margin-top: 10px;
}
/* Container do cupom de desconto */
.discount-coupon {
    width: 130px;
    height: 56px;
    background: linear-gradient(135deg, #22bd75 0%, #198754 100%);
    position: relative;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    position: fixed;
    bottom: 90px;
    right: 0;
    font-size: 10px;
    border-radius: 10px 0px 0px 10px;
    left: auto;
    margin: auto;
    cursor: pointer;
    transform: scale(1) translateX(120%);
    will-change: transform;
    transition: transform cubic-bezier(0.68, -0.55, 0.27, 1.55) 400ms;
    z-index: 1;
    box-shadow: 0 5px 15px 0 rgb(0 0 0 / 34%);
}
.discount-coupon.active{
    transform: translateX(0%);
}
.discount-coupon::before{
    content: "";
    position:absolute;
    left: 3px;
    height: 48px;
    width: 130%;
    border: 1.35px dashed #fff;
    top: 3px;
    border-radius: 6px;
}
.discount-coupon::after{
    content: "CUPOM";
    position: absolute;
    transform: rotate(-90deg);
    height: 20px;
    background: #fff;
    width: 56px;
    text-align: center;
    right: -20px;
    bottom: 18px;
}
/* Animação de leve “pulso” (bounce) */
@keyframes pulse {
  0% {
    transform: scale(1);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  }
  50% {
    transform: scale(1.03);
    box-shadow: 0 6px 16px rgba(0,0,0,0.2);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  }
}

/* Conteúdo interno do cupom */
.discount-coupon .content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 0 12px 0px 0px;
}

/* Valor do desconto */
.discount-coupon .value {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: -1px;
  line-height: 19px;
}

/* Texto “DE DESCONTO” */
.discount-coupon .text {
  font-size: 0.6rem;
  letter-spacing: 0.5px;
  margin-bottom: 0;
  font-weight: 600;
}

/* Ação “Adicione Itens” */
.discount-coupon .regras {
  font-size: 7px;
}
