.shipping-addr { margin-bottom: 8px; font-size: 14px; color: #555; }
.shipping-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px,1fr));
    gap: 12px;
}
.ship-radio { position: absolute; opacity: 0; width: 0; height: 0; }
.ship-card {
    display: grid;
    grid-template-columns: 36px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 2px solid #e9defc;
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s;
}
.ship-card:hover { border-color: #cdb5ff; }
.ship-icon i { font-size: 20px; color: #0cc3ce; }
.ship-text strong { color: #3a2e85; }
.ship-text small { color: #666; display:block; }
.ship-price { font-weight: 700; color: #3a2e85; }

.ship-radio:checked + .ship-card {
    border-color: #0cc3ce;
    box-shadow: 0 0 0 3px rgba(111,66,150,.12);
}
.ship-card:focus, .ship-radio:focus + .ship-card {
    outline: none;
    box-shadow: 0 0 0 3px rgba(111,66,150,.25);
}

.ship-icon {
    width: 32px; height: 32px;
    display: grid; place-items: center;
}
.ship-icon img {
    display: block;
    width: 28px; height: 28px;
    object-fit: contain;
    border-radius: 4px; /* opcional */
}
.ship-icon i { font-size: 20px; color: #6f4296; }

/* garanta que nada corte o tooltip */
.order_review,
.pay-grid,
.pay-card { overflow: visible; }

/* crie contexto previsível pro card e suba quando ativo */
.pay-card { position: relative; z-index: 0; }
.pay-card:hover,
.pay-card:focus-within { z-index: 10000; } /* sobe acima dos outros cards */

/* suba o tooltip ainda mais dentro do card ativo */
.pay-tooltip { z-index: 10001; } /* acima do card ativo */

.pay-card.is-top { z-index: 10000; }

/* ====== Thumb bonitinho no carrinho ====== */
td.image.product-thumbnail{ width: 96px; }              /* largura da coluna */
.product-thumbnail .product-thumb{
    --size: 76px;                                         /* troque o tamanho aqui: 64/72/80/96 */
    width: var(--size);
    aspect-ratio: 1/1;
    border-radius: 12px;
    overflow: hidden;
    background: #f8f5ff;
    border: 1.5px solid #e9defc;
    box-shadow: 0 2px 10px rgba(111,66,150,.10);
    display: grid;
    place-items: center;
    transition: box-shadow .18s, transform .06s;
}
.product-thumbnail .product-thumb img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .18s;
    image-rendering: -webkit-optimize-contrast;
}
.product-thumbnail .product-thumb:hover{
    box-shadow: 0 4px 18px rgba(111,66,150,.16);
    transform: translateY(-1px);
}
.product-thumbnail .product-thumb:hover img{ transform: scale(1.05); }
.product-thumbnail .product-thumb img.is-fallback{
    object-fit: contain;
    padding: 8px;
    filter: grayscale(.08);
}

/* Dark mode opcional */
@media (prefers-color-scheme: dark){
    .product-thumbnail .product-thumb{
        background:#17151e;
        border-color:#3a2e85;
        box-shadow:0 2px 10px rgba(0,0,0,.35);
    }
}

/* ====== Pequenos mimos nos controles do carrinho (opcional) ====== */
.cart_list_item_ .action .fa-trash-alt{
    transition: transform .12s, color .12s, opacity .12s;
}
.cart_list_item_ .action .fa-trash-alt:hover{
    transform: scale(1.08);
    color:#c0392b;
    opacity:.9;
}
.detail-qty{
    border-color:#e9defc !important;
    border-radius:10px !important;
}
.detail-qty .qty-up, .detail-qty .qty-down{
    color:#6f4296;
    transition: transform .1s, color .12s;
}
.detail-qty .qty-up:hover, .detail-qty .qty-down:hover{
    transform: translateY(-1px);
    color:#3a2e85;
}
