.price-box.has-promo{
            background:transparent;
            border-color:transparent;
            box-shadow:none;
        }
        .price-old{
            display:block;
            margin-top:4px;
            font-size:.7rem;
            line-height:1.1;
            text-decoration:line-through;
            color:#94a3b8;
            font-weight:700;
        }
        .price-save{
            display:inline-flex;
            margin-top:5px;
            padding:4px 8px;
            border-radius:999px;
            background:rgba(22,163,74,.12);
            color:#166534;
            font-size:.63rem;
            font-weight:800;
            line-height:1;
            width:max-content;
            max-width:100%;
        }
        .status-badge.badge-save{
            background:rgba(22,163,74,.12);
            border-color:rgba(34,197,94,.24);
            color:#166534;
        }
        .status-badge.badge-closed{
            background:rgba(100,116,139,.12);
            border-color:rgba(100,116,139,.22);
            color:#334155;
        }
        .status-badge.badge-off{
            background:rgba(239,68,68,.12);
            border-color:rgba(239,68,68,.2);
            color:#b91c1c;
        }
        .product-card.is-out-of-stock{
            border-color:rgba(239,68,68,.18);
            background:linear-gradient(180deg,#fff8f8,#ffffff);
            box-shadow:0 16px 28px rgba(239,68,68,.06);
        }
        .product-card.is-out-of-stock .product-thumb,
        .product-card.is-out-of-stock .product-placeholder{
            box-shadow:0 0 0 1px rgba(239,68,68,.12) inset;
        }
        .ghost-action.is-stockout{
            min-width:auto;
            height:auto;
            padding:8px 10px;
            border-radius:12px;
            background:#fff1f2;
            border:1px solid rgba(239,68,68,.18);
            color:#b91c1c;
        }
        @media (max-width: 768px){
            #checkoutModal.checkout-sheet .modal-dialog{
                inset:auto 0 0 0;
                width:100%;
                max-width:100vw;
                height:auto;
                align-items:flex-end;
                transform:translateY(100%) ;
            }
            #checkoutModal.checkout-sheet.show .modal-dialog{
                transform:translateY(0) ;
            }
            #checkoutModal.checkout-sheet .modal-content{
                height:min(90dvh,820px);
                min-height:72dvh;
                border-radius:22px 22px 0 0;
                box-shadow:0 -20px 44px rgba(15,23,42,.18);
            }
            #checkoutModal.checkout-sheet .modal-header{
                padding-top:16px;
            }
            #checkoutModal.checkout-sheet .modal-header::before{
                content:'';
                position:absolute;
                top:8px;
                left:50%;
                transform:translateX(-50%);
                width:44px;
                height:4px;
                border-radius:999px;
                background:#cbd5e1;
            }
            .quick-options-panel{
                padding:9px;
                border-radius:14px;
            }
            .quick-options-toggle{
                padding:7px 9px;
                font-size:.68rem;
            }
            .price-old{
                font-size:.66rem;
            }
            .price-save{
                font-size:.6rem;
            }
        }
        /* Checkout compacto 2026: melhor leitura, menos altura e navegação mais clara */
        #checkoutModal .modal-content{border-radius:22px;overflow:hidden;background:#f8fafc}
        #checkoutModal .modal-header{background:#fff;position:sticky;top:0;z-index:5}
        #checkoutModal .modal-body{background:#f8fafc;padding:12px 14px 10px;max-height:min(72vh,720px)}
        #checkoutModal .modal-footer.checkout-footer{background:#fff;border-top:1px solid #e5edf6;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
        .checkout-live-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e5edf6;background:linear-gradient(180deg,#f8fafc,#fff);border-radius:16px;padding:9px 11px;min-width:190px}
        .checkout-live-total span{font-size:.72rem;color:#64748b;font-weight:800}
        .checkout-live-total strong{font-size:1rem;color:#0f172a;font-weight:950;white-space:nowrap}
        .checkout-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
        .checkout-footer-actions .btn{min-width:118px}
        .checkout-steps{position:sticky;top:0;z-index:4;background:#f8fafc;padding-bottom:6px;margin-bottom:6px}
        .step-pill{cursor:default;user-select:none;position:relative;overflow:hidden}
        .step-pill.active{box-shadow:0 8px 20px rgba(var(--brand-rgb),.08)}
        .step-pill:not(.active){cursor:pointer}
        .checkout-pane.active{animation:checkoutFade .16s ease-out}
        @keyframes checkoutFade{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
        #checkoutItems.cart-list{max-height:min(36vh,360px);overflow:auto;padding-right:2px;scrollbar-width:thin}
        .checkout-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:8px}
        .checkout-choice-grid .form-check.delivery-option,
        .checkout-choice-grid .form-check.payment-option{height:100%;margin:0;padding:11px 12px 11px 38px;background:#fff;border-color:#e5edf6;transition:.16s ease}
        .checkout-choice-grid .form-check-input:checked ~ span.fw-bold{color:var(--brand)}
        .checkout-choice-grid .form-check:has(.form-check-input:checked){border-color:rgba(var(--brand-rgb),.35);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.09);background:#fff}
        .checkout-address-grid{align-items:end}
        .checkout-address-grid .form-label{margin-bottom:3px}
        .checkout-address-grid .form-control,.checkout-address-grid .form-select{min-height:40px}
        .checkout-client-card .fidelity-card{margin-top:8px}
        .address-history-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:132px}
        .address-chip{min-height:58px}
        .delivery-address-form.show{background:#fff;border:1px solid #e5edf6;border-radius:16px;padding:12px;margin-top:10px}
        .summary-list{gap:4px}
        .summary-row{padding:6px 0}
        .summary-row.total strong{font-size:1rem;color:#16a34a}
        .checkout-final-total{position:sticky;top:8px;background:#fff;border-color:#e5edf6}

        .order-review-clean .review-items-panel{max-width:820px;margin:0 auto}
        .order-review-clean .review-total-list{background:#fff;border:1px solid #e5edf6;border-radius:16px;padding:10px}
        #checkoutModal textarea.form-control{min-height:84px;resize:vertical}
        #trocoWrap{margin-top:10px}
        #checkoutModal .status-note{font-size:.72rem;line-height:1.35}
        @media(min-width:992px){
            #checkoutModal .modal-dialog{max-width:min(860px,calc(100vw - 40px));margin:1rem auto}
            #checkoutModal .modal-header{padding:11px 14px}
            #checkoutModal .modal-body{padding:10px 12px 8px;max-height:min(68vh,620px)}
            #checkoutModal .modal-footer.checkout-footer{padding:9px 12px}
            #checkoutModal .form-card{padding:12px;border-radius:16px}
            #checkoutModal .checkout-steps{gap:6px;margin-bottom:5px;padding-bottom:5px}
            #checkoutModal .step-pill{padding:7px 9px;border-radius:13px;font-size:.7rem}
            #checkoutModal .progress-compact{height:6px;margin-bottom:10px}
            #checkoutItems.cart-list{max-height:min(30vh,300px)}
            .checkout-grid-final{grid-template-columns:minmax(0,1fr) minmax(270px,.78fr);gap:10px}
            .checkout-choice-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px}
            .checkout-choice-grid .form-check.delivery-option,
            .checkout-choice-grid .form-check.payment-option{padding:9px 10px 9px 34px;border-radius:14px}
            #checkoutModal .form-control,#checkoutModal .form-select{min-height:38px;padding:.6rem .75rem;font-size:.82rem}
            #checkoutModal textarea.form-control{min-height:68px}
            .checkout-live-total{min-width:172px;padding:8px 10px;border-radius:14px}
            .checkout-live-total strong{font-size:.94rem}
            .checkout-footer-actions .btn{min-width:108px;padding-top:.48rem;padding-bottom:.48rem}
        }
        @media (max-width:768px){
            #checkoutModal .modal-dialog{align-items:flex-end;min-height:100%;margin:0 auto;max-width:100%}
            #checkoutModal.checkout-sheet .modal-content{border-radius:22px 22px 0 0;max-height:94vh}
            #checkoutModal .modal-body{max-height:calc(94vh - 144px);padding:10px}
            #checkoutModal .modal-footer.checkout-footer{grid-template-columns:1fr;padding:9px 10px calc(9px + env(safe-area-inset-bottom))}
            .checkout-footer-actions{display:grid;grid-template-columns:1fr 1.25fr;width:100%}
            .checkout-footer-actions .btn{min-width:0;width:100%;padding-left:8px;padding-right:8px}
            .checkout-live-total{width:100%;min-width:0}
            .checkout-steps{grid-template-columns:repeat(4,1fr);gap:5px;position:static;padding-bottom:4px}
            .step-pill{font-size:.58rem;padding:6px 3px;border-radius:11px;gap:2px;flex-direction:column}
            .step-pill i{font-size:.82rem}
            #checkoutItems.cart-list{max-height:30vh}
            .checkout-choice-grid{grid-template-columns:1fr;gap:7px}
            .address-history-list{grid-template-columns:1fr;max-height:120px}
            .checkout-final-total{position:static}
        }

        /* Ajustes compactos - cardápio */
        body{font-size:12.5px;line-height:1.35;letter-spacing:-.005em}
        .search-wrap input,.form-control,.form-select,.btn{font-size:.78rem}
        .section-title{font-size:.9rem}
        .section-sub{font-size:.68rem}
        .status-badge{font-size:.58rem;padding:3px 7px}
        .cat-chip{min-height:34px;padding:7px 11px;font-size:.72rem}
        .product-card{padding:9px 10px;border-radius:18px;gap:10px;grid-template-columns:72px minmax(0,1fr) 96px}
        .product-thumb,.product-placeholder{width:70px;height:70px;border-radius:16px}
        .product-name{font-size:.84rem;line-height:1.22;margin-bottom:3px}
        .product-desc{font-size:.68rem;line-height:1.34;-webkit-line-clamp:2}
        .product-topline{gap:4px;margin-bottom:3px}
        .product-side{min-width:96px;width:96px;gap:6px}
        .price-label{font-size:.52rem}
        .price-value{font-size:.86rem;margin-top:2px}
        .price-old{font-size:.62rem}
        .price-save{font-size:.55rem;padding:3px 6px}
        .card-add-btn{width:34px;height:34px;border-radius:12px;font-size:.9rem}
        .side-state{min-height:28px;padding:6px 8px;font-size:.6rem}
        .sidebar-title{font-size:.78rem}
        .desktop-chip{font-size:.68rem;padding:6px 9px}
        .desktop-card-item{padding:9px;border-radius:14px}
        .desktop-card-item strong{font-size:.72rem}
        .desktop-card-item span{font-size:.69rem}
        .desktop-stat{padding:9px;border-radius:14px}
        .desktop-stat-label{font-size:.62rem}
        .desktop-stat-value{font-size:.86rem}
        .desktop-side-card{padding:12px;border-radius:18px}
        .store-mini-cover{min-height:88px;border-radius:16px;margin-bottom:10px;padding:12px}
        .desktop-side-actions .btn{padding:.62rem .8rem;border-radius:13px;font-size:.75rem}
        @media (min-width:981px){
            .app-shell{max-width:1220px;padding:12px 16px 28px}
            .hero-card{min-height:142px;padding:16px 18px;border-radius:24px}
            .hero-inner{gap:16px}
            .brand-logo{width:70px;height:70px;flex-basis:70px;border-radius:20px}
            .brand-title{font-size:1.22rem}
            .brand-sub{font-size:.78rem;line-height:1.34;margin-top:5px}
            .brand-pills{gap:6px;margin-top:8px}
            .brand-pill{font-size:.66rem;padding:6px 9px}
            .hero-btn,.track-link{width:38px;height:38px;border-radius:13px}
            .hero-info-grid{gap:8px;margin-top:12px}
            .hero-info-card{padding:9px 10px;border-radius:15px;gap:8px}
            .hero-info-card i{width:28px;height:28px;border-radius:10px;font-size:.86rem}
            .hero-info-card span{font-size:.57rem}
            .hero-info-card strong{font-size:.7rem}
            .content-grid{grid-template-columns:minmax(0,1fr) 290px;gap:14px;margin-top:12px}
            .search-card{padding:10px;border-radius:18px}
            .search-wrap{padding:9px 12px;border-radius:14px}
            .sticky-tools{margin-top:9px;padding:7px 0 11px;top:6px}
            .cat-strip{padding:8px 12px 7px;border-radius:18px}
            .menu-section{margin-top:14px;scroll-margin-top:92px}
            .section-head{margin-bottom:7px}
            .prod-grid{gap:9px}
        }
        @media (max-width:768px){
            body{font-size:12px}
            .mobile-store-title{font-size:.98rem}
            .mobile-store-sub,.mobile-store-meta{font-size:.74rem}
            .search-card{padding:9px;border-radius:16px}
            .search-wrap{padding:9px 11px;border-radius:14px}
            .product-card{grid-template-columns:68px minmax(0,1fr) 78px;padding:9px;border-radius:16px;gap:8px}
            .product-thumb,.product-placeholder{width:68px;height:68px;border-radius:15px}
            .product-side{min-width:78px;width:78px}
            .product-name{font-size:.78rem}
            .product-desc{font-size:.64rem;line-height:1.28}
            .price-value{font-size:.78rem}
            .price-label{font-size:.48rem}
            .card-add-btn{width:32px;height:32px;border-radius:11px}
        }



        /* Checkout ultra compacto - pedidos */
        #checkoutModal .modal-header{padding:8px 12px}
        #checkoutModal .modal-title{font-size:.82rem;letter-spacing:-.01em}
        #checkoutModal .modal-body{padding:8px 10px;max-height:min(74vh,680px);font-size:.76rem}
        #checkoutModal .modal-footer.checkout-footer{padding:7px 9px;gap:8px}
        .checkout-live-total{border-radius:12px;padding:6px 9px;min-width:166px}
        .checkout-live-total span{font-size:.62rem}.checkout-live-total strong{font-size:.88rem}
        .checkout-footer-actions{gap:6px}.checkout-footer-actions .btn{min-width:102px;padding:.5rem .72rem;font-size:.72rem;border-radius:11px}
        .checkout-steps{gap:5px;margin-bottom:4px;padding-bottom:4px}
        .step-pill{min-height:30px;padding:5px 7px;border-radius:10px;font-size:.6rem;font-weight:850;gap:4px}
        .step-pill i{font-size:.78rem}.progress-compact{height:3px;margin:0 0 7px}
        .checkout-pane.active{animation:checkoutFade .12s ease-out}
        #checkoutModal .form-card{padding:9px;border-radius:14px}
        #checkoutModal .sidebar-title{font-size:.68rem;margin-bottom:6px;letter-spacing:.02em}
        .checkout-client-grid,.checkout-grid-final{gap:8px}
        #checkoutModal .form-label{font-size:.66rem;margin-bottom:3px;font-weight:750;color:#526273}
        #checkoutModal .form-control,#checkoutModal .form-select{min-height:34px;border-radius:10px;font-size:.73rem;padding:.42rem .62rem}
        #checkoutModal textarea.form-control{min-height:62px}
        #checkoutItems.cart-list{max-height:min(31vh,300px);gap:6px}
        #checkoutModal .cart-item-card{padding:7px;border-radius:12px;gap:6px}
        #checkoutModal .cart-item-top{gap:6px}
        #checkoutModal .cart-item-name{font-size:.72rem;line-height:1.18}
        #checkoutModal .cart-item-unit,#checkoutModal .cart-tag{font-size:.62rem;line-height:1.18}
        #checkoutModal .cart-qty-stepper{gap:4px}
        #checkoutModal .cart-qty-btn,#checkoutModal .cart-remove-btn{width:24px;height:24px;border-radius:8px;font-size:.68rem}
        #checkoutModal .cart-line-price{font-size:.78rem}
        #checkoutModal .summary-list{gap:2px}
        #checkoutModal .summary-row{padding:4px 0;font-size:.72rem}
        #checkoutModal .summary-row.total strong{font-size:.9rem}
        .checkout-choice-grid{gap:6px;grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}
        .checkout-choice-grid .form-check.delivery-option,
        .checkout-choice-grid .form-check.payment-option{padding:8px 9px 8px 32px;border-radius:12px;font-size:.72rem}
        .delivery-address-form.show{padding:9px;border-radius:13px;margin-top:8px}
        .address-history-list{gap:6px;max-height:105px}.address-chip{min-height:46px;padding:7px 8px;border-radius:12px;font-size:.68rem}
        #checkoutModal .status-note{font-size:.66rem;padding:7px 8px;border-radius:11px}
        #trocoWrap,.checkout-pane .mt-3{margin-top:.55rem}
        @media (max-width:768px){
            #checkoutModal.checkout-sheet .modal-content{height:min(88dvh,760px);min-height:66dvh}
            #checkoutModal .modal-body{padding:7px 8px;max-height:calc(88vh - 120px)}
            #checkoutModal .modal-footer.checkout-footer{padding:7px 8px calc(7px + env(safe-area-inset-bottom))}
            .checkout-steps{grid-template-columns:repeat(4,1fr);gap:4px}
            .step-pill{font-size:.54rem;padding:5px 2px;border-radius:9px;min-height:30px}
            #checkoutItems.cart-list{max-height:28vh}
            .checkout-footer-actions{grid-template-columns:1fr 1.15fr}
        }

/* --- bloco extraído de loja.php --- */

/* Melhorias loja.php - experiência app, carrinho lateral e checkout mais claro */
        .badge-best{background:#fff7ed;color:#c2410c;border-color:#fed7aa}
        .badge-new{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
        .desktop-side-cart{display:none}
        .desktop-cart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
        .desktop-cart-sub{display:block;font-size:.7rem;color:#64748b;font-weight:700}
        .desktop-cart-badge{min-width:28px;height:28px;border-radius:999px;background:rgba(var(--brand-rgb),.12);color:var(--brand);display:grid;place-items:center;font-size:.76rem;font-weight:900;padding:0 8px}
        .desktop-cart-list{max-height:310px;overflow:auto;padding-right:0;scrollbar-width:none;-ms-overflow-style:none}
        .desktop-cart-list::-webkit-scrollbar{width:0;height:0;display:none}
        .right-col::-webkit-scrollbar{width:0;height:0;display:none}
        .desktop-cart-summary{margin-top:10px;padding-top:6px;border-top:1px solid #e5edf6}
        .min-order-box{margin-top:8px;padding:10px;border-radius:16px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
        .min-order-box.ok{background:#f0fdf4;border-color:#bbf7d0;color:#166534}
        .min-order-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.72rem;font-weight:900;margin-bottom:7px}
        .min-order-bar{height:7px;border-radius:999px;background:rgba(154,52,18,.12);overflow:hidden}
        .min-order-box.ok .min-order-bar{background:rgba(22,101,52,.12)}
        .min-order-bar span{display:block;height:100%;width:0%;border-radius:999px;background:currentColor;transition:width .2s ease}
        .coupon-box{margin:8px 0 4px;padding:10px;border-radius:16px;background:#fff;border:1px dashed #cbd5e1}
        .coupon-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
        .coupon-row .form-control{min-height:40px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}
        .coupon-note{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:.7rem;color:#64748b;font-weight:700;line-height:1.35}
        .coupon-applied{color:#15803d}.coupon-warning{color:#b45309}.coupon-error{color:#b91c1c}
        .app-checkout-hint{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:9px 10px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.72rem;font-weight:700;line-height:1.35}
        .product-card .product-media::after{content:'';position:absolute;inset:auto 8px 8px 8px;height:26%;border-radius:0 0 14px 14px;background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.16));pointer-events:none;opacity:.75}
        .product-card.is-out-of-stock .product-media::after{display:none}
        @media (min-width:981px){
            body{padding-bottom:24px}
            .content-grid{grid-template-columns:minmax(0,1fr) 330px;align-items:start}
            .right-col{display:flex;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;padding-right:0;scrollbar-width:none;-ms-overflow-style:none}
            .desktop-side-cart{display:block}
            .floating-cart{display:none}
            .prod-grid{gap:11px}
        }
        @media (max-width:980px){
            .desktop-side-cart{display:none}
            .coupon-row{grid-template-columns:1fr}
            .coupon-row .btn{width:100%}
        }

/* --- bloco extraído de loja.php --- */

/* Correção anti-zoom touch/mobile */
        html,
        body{
            touch-action:manipulation;
            -webkit-text-size-adjust:100%;
            text-size-adjust:100%;
            overscroll-behavior-x:none;
        }
        button,
        [role="button"],
        a,
        label,
        .btn,
        .product-card,
        .category-chip,
        .cat-btn,
        .mobile-circle-btn,
        .floating-cart,
        .cart-action-btn,
        .qty-step button,
        .cart-qty-btn,
        .cart-remove-btn,
        .address-chip,
        .delivery-option,
        .payment-option,
        .step-pill{
            touch-action:manipulation;
            -webkit-tap-highlight-color:transparent;
        }
        input,
        select,
        textarea{
            font-size:16px;
            -webkit-text-size-adjust:100%;
        }
        @media (max-width:768px){
            input,
            select,
            textarea{
                font-size:16px;
            }
        }
    
        /* Melhorias 2026-05: checkout maior, tela cheia mobile e resumo final moderno */
        @media (min-width: 992px){
            #checkoutModal .modal-dialog{max-width:min(1120px,calc(100vw - 48px))}
            #checkoutModal .modal-content{min-height:min(82vh,820px)}
            #checkoutModal .modal-body{max-height:calc(min(82vh,820px) - 128px);padding:16px 18px}
            #checkoutModal .checkout-grid-final{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)}
            #orderReviewModal .modal-dialog{max-width:min(1060px,calc(100vw - 48px))}
        }
        @media (max-width: 768px){
            #checkoutModal.checkout-sheet .modal-dialog{width:100vw;max-width:100vw;height:100dvh;margin:0;align-items:stretch}
            #checkoutModal.checkout-sheet .modal-content{height:100dvh;min-height:100dvh;max-height:100dvh;border-radius:0}
            #checkoutModal .modal-header{padding:12px 14px}
            #checkoutModal .modal-body{height:calc(100dvh - 138px);max-height:calc(100dvh - 138px);overflow:auto;padding:10px}
            #checkoutModal .modal-footer.checkout-footer{padding:9px 10px calc(9px + env(safe-area-inset-bottom))}
            #checkoutItems.cart-list{max-height:none}
            #orderReviewModal .modal-dialog{width:100vw;max-width:100vw;height:100dvh;margin:0}
            #orderReviewModal .modal-content{height:100dvh;border-radius:0}
            #orderReviewModal .modal-body{overflow:auto;padding:10px}
            #orderReviewModal .modal-footer{display:grid;grid-template-columns:1fr;gap:8px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
            #orderReviewModal .modal-footer .btn{width:100%;min-height:46px;border-radius:14px}
        }
        .order-review-shell{display:grid;gap:12px}
        .order-review-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:linear-gradient(135deg,rgba(var(--brand-rgb),.12),#fff);border:1px solid rgba(var(--brand-rgb),.15);border-radius:20px;padding:12px}
        .order-review-hero div{background:#fff;border:1px solid #e5edf6;border-radius:16px;padding:10px 12px}
        .order-review-hero span{display:block;font-size:.66rem;text-transform:uppercase;font-weight:900;color:#64748b;letter-spacing:.04em}
        .order-review-hero strong{display:block;margin-top:2px;font-size:1rem;color:#0f172a}
        .order-review-grid{gap:12px}
        .review-items-list{display:grid;gap:8px;max-height:min(48vh,520px);overflow:auto;padding-right:2px}
        .review-item-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;background:#fff;border:1px solid #e5edf6;border-radius:16px;padding:10px}
        .review-item-index{width:34px;height:34px;border-radius:12px;background:rgba(var(--brand-rgb),.1);color:var(--brand);display:flex;align-items:center;justify-content:center;font-weight:950}
        .review-item-title{font-weight:950;color:#0f172a;line-height:1.2}
        .review-item-sub,.review-item-obs{font-size:.72rem;color:#64748b;margin-top:3px}
        .review-item-price{white-space:nowrap;color:#16a34a}
        .review-item-adds{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
        .review-item-adds span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:800;color:#475569}
        .review-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
        .review-info-card{display:flex;gap:9px;align-items:flex-start;background:#f8fafc;border:1px solid #e5edf6;border-radius:15px;padding:10px;min-width:0}
        .review-info-card.wide{grid-column:1/-1}
        .review-info-card i{color:var(--brand);font-size:1rem;margin-top:1px}
        .review-info-card span{display:block;font-size:.64rem;text-transform:uppercase;font-weight:900;color:#64748b;letter-spacing:.035em}
        .review-info-card strong{display:block;font-size:.78rem;color:#0f172a;line-height:1.28;word-break:break-word}
        .review-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:15px;padding:10px;margin-top:10px;display:grid;gap:4px}
        .review-note strong{font-size:.72rem;color:#9a3412;text-transform:uppercase;letter-spacing:.035em}.review-note span{font-size:.78rem;color:#7c2d12}
        .review-total-list{background:#fff;border:1px solid #e5edf6;border-radius:16px;padding:8px 10px}
        .summary-row.discount strong{color:#dc2626}
        .review-action-main{min-height:44px;border-radius:14px}
        @media (max-width: 640px){.order-review-hero{grid-template-columns:1fr}.review-info-grid{grid-template-columns:1fr}.review-items-list{max-height:none}.review-item-card{grid-template-columns:30px minmax(0,1fr)}.result-actions{display:grid;grid-template-columns:1fr}}

/* --- bloco extraído de loja.php --- */

/* Ajustes mobile solicitados: carrinho, cards e busca compacta */
    .card-add-label{display:block;margin-top:4px;color:var(--brand);font-size:.66rem;font-weight:900;line-height:1;text-align:center;letter-spacing:-.01em}
    body.modal-open #floatingCart,
    body.cart-panel-open #floatingCart,
    body.checkout-open #floatingCart,
    body.product-modal-open #floatingCart{display:none;opacity:0;pointer-events:none}

    @media (max-width: 768px){
        body{padding-bottom:92px}
        body.modal-open,
        body.checkout-open,
        body.product-modal-open,
        body.cart-panel-open{padding-bottom:0}

        .mobile-cover{height:112px}
        .mobile-store-card{margin-top:-34px;padding:12px;border-radius:22px}
        .mobile-store-main{grid-template-columns:68px minmax(0,1fr) 40px;gap:10px}
        .mobile-store-logo{width:68px;height:68px;border-radius:19px}
        .mobile-store-title{font-size:1rem}
        .mobile-store-sub{font-size:.78rem;line-height:1.32}
        .mobile-store-meta{gap:8px;margin-top:8px;font-size:.76rem}
        .mobile-store-share{width:40px;height:40px}

        .search-card{
            position:sticky;
            top:0;
            z-index:96;
            margin-top:10px;
            padding:7px 9px 9px;
            border-radius:0 0 20px 20px;
            background:rgba(255,255,255,.96);
            border-color:rgba(226,232,240,.88);
            box-shadow:0 14px 30px rgba(15,23,42,.08);
            backdrop-filter:blur(14px);
        }
        .search-toolbar{grid-template-columns:1fr;gap:0}
        .search-wrap{min-height:38px;padding:8px 11px;border-radius:14px;gap:8px}
        .search-wrap input{font-size:.82rem;height:22px;line-height:22px}
        .search-wrap i{font-size:.9rem}
        .search-suggest{left:9px;right:9px;top:calc(100% - 4px);border-radius:15px}

        .sticky-tools{top:58px;z-index:90;margin-top:8px;padding:6px 0 9px;background:linear-gradient(180deg, rgba(var(--bg-rgb),.96), rgba(var(--bg-rgb),.86) 72%, rgba(var(--bg-rgb),0))}
        .menu-section{scroll-margin-top:126px}
        .cat-strip{padding:7px 9px 6px;border-radius:18px;justify-content:flex-start;width:100%}
        .cat-chip{min-height:36px;padding:8px 11px;font-size:.72rem}

        .product-card{
            grid-template-columns:74px minmax(0,1fr);
            grid-template-areas:'media copy' 'media side';
            align-items:start;
            gap:9px 10px;
            padding:10px;
            border-radius:18px;
            overflow:hidden;
        }
        .product-media{grid-area:media;align-self:start}
        .product-copy{grid-area:copy;display:block;padding-top:0;min-width:0}
        .product-side{
            grid-area:side;
            width:100%;
            min-width:0;
            margin:0;
            display:grid;
            grid-template-columns:minmax(0,1fr) auto;
            grid-template-areas:'price action' 'price label';
            align-items:center;
            justify-content:stretch;
            gap:2px 9px;
            padding-top:1px;
        }
        .product-thumb,.product-placeholder{width:74px;height:74px;border-radius:16px}
        .product-name{font-size:.84rem;line-height:1.22;margin-bottom:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
        .product-desc{font-size:.71rem;line-height:1.34;-webkit-line-clamp:2;max-height:2.75em;margin:0;word-break:normal;overflow-wrap:anywhere}
        .product-topline{gap:4px;margin-bottom:4px}
        .status-badge{font-size:.58rem;padding:3px 6px;max-width:100%;white-space:nowrap}
        .price-box{grid-area:price;align-items:flex-start;text-align:left;margin:0;padding:0;width:100%;min-width:0}
        .price-label{font-size:.52rem}
        .price-value{font-size:.86rem;margin-top:2px;white-space:nowrap}
        .price-old,.price-save{font-size:.62rem;white-space:nowrap}
        .card-add-btn{grid-area:action;width:38px;height:38px;border-radius:13px;justify-self:end;margin:0;z-index:2}
        .card-add-label{grid-area:label;justify-self:end;margin-top:2px;font-size:.58rem;color:#475569}
        .side-state{grid-column:1/-1;justify-self:start;min-height:30px;padding:6px 9px;font-size:.62rem}

        .floating-cart{
            left:10px;right:10px;bottom:8px;transform:none;width:auto;z-index:1038;padding:0 0 calc(8px + env(safe-area-inset-bottom));
        }
        .floating-cart-inner{background:transparent;box-shadow:none;padding:0;max-width:100%}
        .floating-cart-btn{
            min-height:52px;padding:8px 12px;border-radius:17px;box-shadow:0 14px 28px rgba(22,163,74,.24);border:1px solid rgba(255,255,255,.18);
        }
        .cart-count{min-width:28px;height:28px;font-size:.72rem}
        .cart-labels span:first-child{font-size:.78rem;line-height:1.1}
        .cart-sub{font-size:.66rem;line-height:1.1}
        #cartTotal{font-size:.82rem;white-space:nowrap}

        .whatsapp-float{right:12px;bottom:76px;width:46px;height:46px;font-size:1.18rem;z-index:1037}
        .scroll-top-btn{left:12px;bottom:76px;width:44px;height:44px;font-size:1rem;z-index:1037}

        #cartCanvas.offcanvas-end{width:100vw;max-width:100vw;border-radius:22px 22px 0 0;top:auto;height:min(82dvh,720px)}
        #cartCanvas .offcanvas-header{padding:12px 14px}
        #cartCanvas .offcanvas-body{padding:12px 14px calc(14px + env(safe-area-inset-bottom))}
    }

    @media (max-width: 390px){
        .product-card{grid-template-columns:68px minmax(0,1fr);gap:8px;padding:9px}
        .product-thumb,.product-placeholder{width:68px;height:68px;border-radius:14px}
        .product-name{font-size:.8rem}
        .product-desc{font-size:.68rem;-webkit-line-clamp:2}
        .price-value{font-size:.8rem}
        .card-add-btn{width:34px;height:34px;border-radius:12px}
        .card-add-label{font-size:.55rem}
        .sticky-tools{top:54px}
        .menu-section{scroll-margin-top:120px}
    }

/* Melhorias Pix/checkout 2026-05-27 */
.checkout-choice-grid .form-check.delivery-option,
.checkout-choice-grid .form-check.payment-option{
    cursor:pointer;
    position:relative;
    overflow:hidden;
}
.checkout-choice-grid .form-check.delivery-option:hover,
.checkout-choice-grid .form-check.payment-option:hover{
    transform:translateY(-1px);
    border-color:rgba(var(--brand-rgb),.26);
    box-shadow:0 10px 22px rgba(15,23,42,.06);
}
.checkout-choice-grid .form-check.is-selected{
    border-color:rgba(var(--brand-rgb),.42);
    background:linear-gradient(180deg,rgba(var(--brand-rgb),.08),#fff 70%);
    box-shadow:0 0 0 3px rgba(var(--brand-rgb),.10),0 12px 26px rgba(15,23,42,.07);
}
.checkout-choice-title{display:flex;align-items:center;gap:4px;line-height:1.25}
.checkout-choice-title i{font-size:.95rem;color:var(--brand)}

#pixArea .pix-box{border:1px solid #dbe7f3;box-shadow:0 16px 36px rgba(15,23,42,.07)}
#pixArea .pix-box.is-manual{background:linear-gradient(180deg,#fff7ed,#ffffff 58%);border-color:#fed7aa}
#pixArea .pix-box.is-automatic{background:linear-gradient(180deg,#eff6ff,#ffffff 58%);border-color:#bfdbfe}
#pixArea .pix-copy-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:#475569;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.035em}
#pixArea .pix-copy-heading small{padding:4px 8px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;font-size:.62rem;font-weight:900;letter-spacing:0}
#pixArea .pix-copy-box{position:relative;border:1px dashed #94a3b8;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
#pixArea .pix-copy-box:focus{outline:none;border-color:rgba(var(--brand-rgb),.42);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.10)}
#pixArea .pix-copy-btn.is-copied{background:#16a34a;border-color:#16a34a;color:#fff}
#pixArea .pix-copy-feedback{display:none;align-items:flex-start;gap:8px;margin-top:10px;padding:10px 11px;border-radius:14px;background:rgba(22,163,74,.12);border:1px solid rgba(22,163,74,.20);color:#166534;font-size:.74rem;font-weight:800;line-height:1.35}
#pixArea .pix-copy-feedback.show{display:flex;animation:pixFeedbackIn .18s ease-out}
#pixArea .pix-copy-feedback i{font-size:.9rem;margin-top:1px}
#pixArea .pix-manual-hint{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding:10px 11px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.72rem;font-weight:800;line-height:1.35}
#pixArea .pix-empty-qr{display:grid;gap:8px;place-items:center;align-content:center}
#pixArea .pix-empty-qr i{font-size:1.7rem;color:var(--brand)}
#pixArea .pix-empty-qr span{display:block;max-width:180px}
@keyframes pixFeedbackIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:768px){
    #pixArea .pix-actions{display:grid;grid-template-columns:1fr;gap:8px}
    #pixArea .pix-copy-btn{width:100%}
}

/* Checkout 2026 — navegação clara, acessível e resiliente */
#checkoutModal .checkout-modal-header{align-items:flex-start;gap:14px;background:linear-gradient(180deg,#fff,#fbfdff);border-bottom:1px solid #e7edf5}
#checkoutModal .checkout-modal-header .modal-title{font-size:1rem;font-weight:950;color:#0f172a;letter-spacing:-.02em}
#checkoutModal .checkout-step-caption{margin-top:2px;color:#64748b;font-size:.73rem;font-weight:650}
#checkoutModal .checkout-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
#checkoutModal .step-pill{appearance:none;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;min-height:48px;padding:8px 9px;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:.72rem;font-weight:850;cursor:default;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}
#checkoutModal .step-pill i{font-size:.94rem}
#checkoutModal .step-pill.active{background:linear-gradient(135deg,var(--brand),var(--brand-2,var(--brand)));border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(var(--brand-rgb),.24);transform:translateY(-1px)}
#checkoutModal .step-pill.completed{background:rgba(var(--brand-rgb),.08);border-color:rgba(var(--brand-rgb),.2);color:var(--brand);cursor:pointer}
#checkoutModal .step-pill:focus-visible{outline:3px solid rgba(var(--brand-rgb),.22);outline-offset:2px}
#checkoutModal .step-pill:disabled{opacity:.7}
#checkoutModal .progress-compact{height:5px;margin:0 2px 14px;background:#edf2f7;border-radius:999px;overflow:hidden}
#checkoutModal .progress-compact span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand-2,var(--brand)));transition:width .28s ease}
#checkoutModal .checkout-pane{animation:checkoutPaneIn .22s ease}
@keyframes checkoutPaneIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
#checkoutModal .form-control.is-checkout-invalid,#checkoutModal .form-select.is-checkout-invalid{border-color:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.1);animation:checkoutShake .24s ease}
@keyframes checkoutShake{25%{transform:translateX(-3px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}}
#checkoutModal .checkout-footer{gap:14px;justify-content:space-between;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid #e5edf6}
#checkoutModal .checkout-footer-copy{display:grid;gap:3px;min-width:0}
#checkoutModal .checkout-live-total{display:flex;align-items:baseline;gap:8px}
#checkoutModal .checkout-live-total span{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;font-weight:900;color:#64748b}
#checkoutModal .checkout-live-total strong{font-size:1.08rem;color:#0f172a}
#checkoutModal .checkout-trust-note{display:flex;align-items:center;gap:5px;color:#64748b;font-size:.66rem;line-height:1.25}
#checkoutModal .checkout-trust-note i{color:#16a34a;font-size:.8rem}
#checkoutModal .checkout-footer-actions{display:flex;align-items:center;gap:8px}
#checkoutModal .checkout-footer-actions .btn{min-height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:7px}
#checkoutModal .modal-content.is-submitting{cursor:progress}
#checkoutModal .modal-content.is-submitting .modal-body{opacity:.72;pointer-events:none;transition:opacity .2s ease}
@media (max-width:640px){
  #checkoutModal .checkout-steps{gap:5px}
  #checkoutModal .step-pill{min-height:44px;padding:7px 5px;font-size:.61rem;gap:4px;border-radius:12px}
  #checkoutModal .step-pill i{font-size:.84rem}
  #checkoutModal .checkout-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
  #checkoutModal .checkout-trust-note{display:none}
  #checkoutModal .checkout-footer-actions .btn{min-width:44px;padding-left:12px;padding-right:12px}
  #checkoutModal #checkoutBackBtn span{display:none}
}
@media (prefers-reduced-motion:reduce){#checkoutModal .checkout-pane,#checkoutModal .form-control.is-checkout-invalid,#checkoutModal .form-select.is-checkout-invalid{animation:none}#checkoutModal .step-pill,#checkoutModal .progress-compact span{transition:none}}

/* Mercado Pago — desafio 3-D Secure no resultado do checkout */
.mp-3ds-wrap {
  margin: 14px 0;
  overflow: hidden;
  border: 1px solid #d8dee8;
  border-radius: 10px;
  background: #fff;
}
.mp-3ds-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid #e5e7eb;
  background: #f8fafc;
}
.mp-3ds-head > div {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #eef2ff;
  color: #3730a3;
}
.mp-3ds-head span { display: grid; gap: 2px; min-width: 0; }
.mp-3ds-head strong { color: #111827; font-size: .84rem; line-height: 1.25; }
.mp-3ds-head small { color: #64748b; font-size: .73rem; line-height: 1.35; }
.mp-3ds-frame {
  display: block;
  width: 100%;
  min-height: 420px;
  border: 0;
  background: #fff;
}
.mp-3ds-help {
  margin: 0;
  padding: 9px 12px;
  display: flex;
  align-items: flex-start;
  gap: 7px;
  border-top: 1px solid #e5e7eb;
  background: #f8fafc;
  color: #64748b;
  font-size: .72rem;
  line-height: 1.4;
}
.mp-3ds-wrap.is-complete { border-color: #86efac; }
.mp-3ds-wrap.is-complete .mp-3ds-head { background: #f0fdf4; }
.mp-3ds-wrap.is-complete .mp-3ds-head > div { background: #dcfce7; color: #166534; }
.mp-3ds-wrap.is-complete .mp-3ds-frame { display: none; }
.mp-3ds-wrap.is-failed { border-color: #fecaca; }
.mp-3ds-wrap.is-failed .mp-3ds-head { background: #fef2f2; }
.mp-3ds-wrap.is-failed .mp-3ds-head > div { background: #fee2e2; color: #991b1b; }
@media (max-width: 575px) {
  .mp-3ds-frame { min-height: 480px; }
}
