.produto-compra { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; }
.carrinho-pagamento > form { flex: 1 1 0 !important; min-width: 0; }
.pedido-resumo .carrinho-pagamento .btn { display:flex; align-items:center; justify-content:center; height:40px; padding:.65rem .75rem; font-size:.76rem; font-weight:600; }
.produto-compra .carrinho-quantidade > .form-control,
.produto-compra .carrinho-quantidade > .btn { border-color: var(--bs-border-color); }
.carrinho-quantidade { width:125px; flex-shrink:0; }
.carrinho-quantidade input { min-width:0; appearance:textfield; }
.carrinho-quantidade input::-webkit-inner-spin-button { appearance:none; }
.carrinho-item { display:flex; gap:1rem; padding:1rem 0; border-bottom:1px solid #edf0f4; }
.carrinho-item:last-of-type { border-bottom:0; }
.carrinho-foto { width:76px; height:76px; object-fit:contain; background:#fff; border:1px solid #edf0f4; border-radius:10px; }
.carrinho-item > div { min-width:0; }
.carrinho-lista { display:grid; gap:.9rem; min-width:0; container-type:inline-size; }
.carrinho-cupom-descricao { white-space:pre-line; overflow-wrap:anywhere; color:#198754; line-height:1.25; margin-top:.2rem; }
.carrinho-lista .carrinho-vazio { background:#fff; border-radius:16px; }
.carrinho-item-pagina { padding:.65rem .9rem; gap:1.25rem; align-items:center; background:#fff; border:0; border-radius:16px; }
.carrinho-item-pagina .carrinho-foto { width:84px; height:84px; border:0; border-radius:12px; background:#f1f3f6; }
.carrinho-item-pagina > a { flex-shrink:0; }
.carrinho-item-pagina .carrinho-info { display:grid; grid-template-columns:minmax(0,1fr) 130px 140px; gap:1rem; align-items:center; }
.carrinho-item-descricao { min-width:0; }
.carrinho-item-pagina .carrinho-titulo { font-size:.94rem; font-weight:700; color:#121b26; line-height:1.35; margin-bottom:.4rem; }
.carrinho-detalhes { font-size:.75rem; margin:0 0 .2rem; }
.carrinho-item-acoes { display:contents; }
.carrinho-unitario { font-size:.78rem; color:#75859e; }
.carrinho-item-pagina [data-cart-quantity] { grid-column:2; text-align:center; }
.carrinho-quantidade-label { display:block; font-size:.7rem; color:#5f7088; margin-bottom:.35rem; }
.carrinho-item-pagina .carrinho-quantidade { width:130px; border:1px solid #aebdd0; border-radius:9px; overflow:hidden; background:#f4f7fb; }
.carrinho-item-pagina .carrinho-quantidade > .form-control,
.carrinho-item-pagina .carrinho-quantidade > .btn { border:0; border-radius:0; margin-left:0; }
.carrinho-item-pagina .carrinho-quantidade .form-control { font-size:.78rem; padding:.45rem .2rem; border-left:1px solid #aebdd0; border-right:1px solid #aebdd0; }
.carrinho-item-pagina .carrinho-quantidade .btn { padding:.45rem .8rem; background:#f4f7fb; color:#18334f; font-weight:700; }
.carrinho-item-pagina .carrinho-quantidade .btn:disabled { opacity:1; color:#94a1b3; }
.carrinho-item-total { grid-column:3; text-align:right; border-left:1px solid #edf0f5; padding-left:1rem; }
.carrinho-subtotal-label { display:block; font-size:.7rem; color:#75859e; text-transform:uppercase; margin-bottom:.15rem; }
.carrinho-item-subtotal { display:block; font-size:.95rem; white-space:nowrap; color:#121b26; }
.carrinho-item-total .carrinho-remover { margin-top:.5rem; }
.carrinho-item-total .carrinho-remover .btn { font-size:.73rem; padding:.15rem 0; }
.carrinho-remover .btn { padding:.2rem .4rem; }
.carrinho-pagina .card-body { padding:1rem; }
.carrinho-pagina [data-cart-page-status]:empty { display:none; }
.carrinho-pagina [data-cart-page-status]:not(:empty) { margin-bottom:.5rem; font-size:.8rem; }
.pedido-resumo { padding:1.2rem; border-radius:14px; background:#343434; color:#fff; font-size:.84rem; }
.pedido-resumo h2 { font-size:1.1rem; font-weight:700; padding-bottom:.75rem; border-bottom:1px solid #555; margin-bottom:.8rem; }
.pedido-resumo-linha { display:flex; align-items:center; justify-content:space-between; gap:.6rem; }
.pedido-resumo-produtos { margin-bottom:1rem; }
.pedido-resumo-secao { padding:.8rem 0; border-bottom:1px solid #555; }
.pedido-resumo .form-label { font-size:.76rem; font-weight:600; margin-bottom:.4rem; }
.pedido-resumo .form-control { font-size:.75rem; min-width:0; padding:.65rem .7rem; }
.pedido-resumo .btn-primary { font-size:.76rem; font-weight:600; padding:.65rem .75rem; --bs-btn-bg:#00a1ed; --bs-btn-border-color:#00a1ed; --bs-btn-hover-bg:#008cd1; --bs-btn-hover-border-color:#008cd1; }
.pedido-resumo .input-group { border-radius:9px; overflow:hidden; }
.pedido-resumo .btn-link { color:#d5dde3; font-size:.7rem; }
.pedido-resumo .small { color:#c5cbd1; font-size:.7rem; }
.pedido-desconto { color:#74e6a5; }
.pedido-resumo-total { margin-top:.8rem; font-size:1rem; }
.pedido-resumo-total > strong:last-child { color:#28b7ff; }
.checkout-pagamento { border-radius:14px; overflow:hidden; }
.checkout-pagamento-icone { display:grid; place-items:center; flex-shrink:0; width:48px; height:48px; border-radius:12px; background:#eaf7ff; color:#008cd1; font-size:1.5rem; }
.checkout-pagamento .form-label { font-size:.84rem; font-weight:600; color:#233953; }
.checkout-pagamento .form-control,.checkout-pagamento .form-select { border-radius:9px; min-height:44px; }
.checkout-campo-seguro { height:46px; padding:10px 12px; }
.checkout-campo-seguro iframe { width:100%; height:24px; border:0; }
.checkout-campo-seguro:focus-within { border-color:#00a1ed; box-shadow:0 0 0 .2rem rgba(0,161,237,.15); }
.checkout-pix-info { border:1px solid #dceaf2; border-radius:12px; padding:1rem; background:#f4f9fc; color:#233953; }
.checkout-cartao-compacto .form-label { margin-bottom:.25rem; font-size:.78rem; }
.checkout-cartao-compacto .form-control,.checkout-cartao-compacto .form-select { min-height:40px; font-size:.85rem; }
.checkout-cartao-compacto .checkout-campo-seguro { height:40px; padding:7px 10px; }
.checkout-bandeira { display:flex; align-items:center; min-height:40px; font-size:.85rem; font-weight:600; color:#233953; }
#mpQr { background:white; padding:8px; border:1px solid #e5e9ef; border-radius:12px; }
.pedido-resumo-nota { color:#c5cbd1; font-size:.73rem; line-height:1.5; }
.pedido-resumo-erro:not(:empty) { margin-top:.65rem; padding:.6rem; border-radius:7px; background:#542c2c; color:#ffd0d0; font-size:.75rem; }
@media(min-width:992px) { .carrinho-pagina [data-cart-summary] { position:sticky; top:1rem; } }
@container(max-width:539.98px) {
    .carrinho-item-pagina .carrinho-foto { width:64px; height:64px; }
    .carrinho-item-pagina { align-items:flex-start; gap:.75rem; padding:.85rem; }
    .carrinho-item-pagina .carrinho-info { grid-template-columns:minmax(0,1fr) auto; gap:.7rem .5rem; }
    .carrinho-item-pagina .carrinho-item-descricao { grid-column:1 / -1; }
    .carrinho-item-pagina [data-cart-quantity] { grid-column:1; grid-row:2; text-align:left; }
    .carrinho-item-pagina .carrinho-item-total { grid-column:2; grid-row:2; padding-left:.5rem; }
    .carrinho-item-pagina .carrinho-quantidade { width:104px; }
    .carrinho-item-pagina .carrinho-quantidade .btn { padding:.4rem .55rem; }
    .carrinho-item-pagina .carrinho-titulo { font-size:.83rem; }
    .carrinho-item-subtotal { font-size:.85rem; }
}
@container(max-width:430px) {
    .carrinho-item-pagina { display:grid; grid-template-columns:64px minmax(0,1fr); gap:.75rem; }
    .carrinho-item-pagina .carrinho-info { display:contents; }
    .carrinho-item-pagina .carrinho-item-descricao { grid-column:2; }
    .carrinho-item-pagina .carrinho-item-acoes { display:flex; grid-column:1 / -1; align-items:center; justify-content:space-between; gap:.75rem; min-width:0; }
    .carrinho-item-pagina .carrinho-item-total { min-width:0; }
}
.carrinho-resumo-item { display:flex; align-items:center; gap:.35rem; font-size:.73rem; line-height:1.5; white-space:nowrap; min-width:0; max-width:100%; overflow-x:auto; }
.carrinho-titulo { display:block; font-weight:600; font-size:.9rem; text-decoration:none; color:#233953; overflow-wrap:anywhere; margin-bottom:.3rem; }
.offcanvas-carrinho { --bs-offcanvas-width:450px; max-width:100%; }
.offcanvas-carrinho .carrinho-titulo { font-size:.82rem; }
.offcanvas-carrinho .small { font-size:.75rem; }
.offcanvas-carrinho .carrinho-foto { width:62px; height:62px; }
.offcanvas-carrinho .carrinho-item { gap:.75rem; padding:.65rem 0; }
.offcanvas-carrinho .carrinho-item:first-child { padding-top:0; }
.offcanvas-carrinho .carrinho-item:last-child { padding-bottom:0; }
.offcanvas-carrinho .carrinho-item .btn { padding:.15rem .35rem; font-size:.75rem; }
.offcanvas-carrinho .offcanvas-header { padding:.55rem 1rem; flex-shrink:0; background:#f4f5f7; border-bottom:1px solid #e5e9ef; }
.offcanvas-carrinho .offcanvas-title { font-size:1rem; line-height:1.3; }
.offcanvas-carrinho .offcanvas-header .btn-close { padding:.35rem; margin:0 -.35rem 0 0; font-size:.8rem; }
.offcanvas-carrinho .offcanvas-body { overflow-y:auto; min-height:0; padding:.65rem 1rem 1rem; }
.offcanvas-carrinho [data-cart-panel-status]:empty { display:none; }
.offcanvas-carrinho [data-cart-content]:has(.carrinho-vazio) { flex:1; display:flex; align-items:center; justify-content:center; }
.offcanvas-carrinho .carrinho-vazio { width:100%; }
.offcanvas-carrinho .carrinho-rodape { flex-shrink:0; padding:.8rem 1rem max(.8rem, env(safe-area-inset-bottom)); border-top:1px solid #e5e9ef; background:#fff; }
.checkout-numero-cartao { position:relative; }
.checkout-numero-cartao #mpCardNumber { padding-right:66px; }
.checkout-bandeira-input { position:absolute; right:10px; top:50%; transform:translateY(-50%); width:44px; height:28px; object-fit:contain; pointer-events:none; }
.checkout-pagamento { position:relative; }
.checkout-processando { display:none; position:absolute; inset:0; z-index:2; align-items:center; justify-content:center; gap:.75rem; border-radius:inherit; background:rgba(255,255,255,.35); color:#233953; font-weight:600; }
.checkout-em-processamento > .card-body { filter:blur(4px); pointer-events:none; user-select:none; }
.checkout-em-processamento > .checkout-processando:not(.checkout-carregando) { display:flex; }
.checkout-em-carregamento > .card-body { filter:blur(4px); pointer-events:none; user-select:none; }
.checkout-em-carregamento > .checkout-carregando { display:flex; }
