/* Cursor pointer para elementos clicáveis */
.remove-cart-item,
.tf-mini-cart-remove,
.remove-from-wishlist,
.btn-hide-popup,
[data-bs-toggle],
[data-bs-dismiss],
[onclick],
button:not(:disabled),
.clickable,
.pointer {
    cursor: pointer !important;
}

/* Toast customizado - compacto e discreto */
.swal2-toast {
    padding: 0.5rem 1rem !important;
    font-size: 0.875rem !important;
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15) !important;
}

.swal2-toast .swal2-icon {
    width: 2rem !important;
    height: 2rem !important;
    margin: 0 0.75rem 0 0 !important;
}

.swal2-toast .swal2-icon .swal2-icon-content {
    font-size: 1.5rem !important;
}

.swal2-toast .swal2-title {
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

.swal2-toast .swal2-timer-progress-bar {
    background: rgba(0,0,0,0.2) !important;
}

label {
    font-weight: 600;
    margin-left: 10px;
}

/* Fix: Barra de frete do mini-cart cortada no mobile */
.modal-shopping-cart .tf-mini-cart-threshold {
    overflow: visible;
}

.modal-shopping-cart .tf-mini-cart-threshold .tf-progress-bar {
    overflow: visible;
    margin-bottom: 16px;
}

.modal-shopping-cart .tf-mini-cart-threshold #cart-progress-bar {
    display: block;
    overflow: visible !important;
    min-width: 36px;
}

.modal-shopping-cart .tf-mini-cart-threshold #cart-progress-bar .progress-car {
    overflow: visible;
}

@media (max-width: 768px) {
    .modal-shopping-cart .tf-mini-cart-threshold {
        padding: 14px 0 12px;
        overflow: visible;
    }
    .modal-shopping-cart .tf-mini-cart-threshold .tf-progress-bar {
        margin-top: 10px;
        margin-bottom: 18px;
        overflow: visible;
    }
    .modal-shopping-cart .tf-mini-cart-threshold #cart-progress-bar {
        min-width: 36px;
    }
    .modal-shopping-cart .tf-mini-cart-threshold .tf-progress-msg {
        font-size: 13px;
        line-height: 1.5;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
}

/* ===== Side Cards: Botões dinâmicos ===== */
/* Reset Bootstrap btn-outline-dark para os side cards (usa a versão do tema) */
.collection-item-v2 .tf-btn.btn-outline-dark {
    --bs-btn-color: var(--main);
    --bs-btn-border-color: var(--main);
    --bs-btn-hover-color: var(--primary);
    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-border-color: var(--primary);
    --bs-btn-active-color: var(--primary);
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: var(--primary);
    background-color: transparent;
    border: 1px solid var(--main);
    color: var(--main);
}
.collection-item-v2 .tf-btn.btn-outline-dark:hover {
    color: var(--primary);
    border-color: var(--primary);
}

/* Reset Bootstrap btn-outline-light para os side cards */
.collection-item-v2 .tf-btn.btn-outline-light {
    --bs-btn-color: var(--white);
    --bs-btn-border-color: var(--white);
    --bs-btn-hover-color: var(--primary);
    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-border-color: var(--primary);
    --bs-btn-active-color: var(--primary);
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: var(--primary);
    background-color: transparent;
    border: 1px solid var(--white);
    color: var(--white);
}
.collection-item-v2 .tf-btn.btn-outline-light:hover {
    color: var(--primary);
    border-color: var(--primary);
}

/* btn-fill nos side cards */
.collection-item-v2 .tf-btn.btn-fill {
    background-color: var(--main);
    border: 1px solid var(--main);
    color: var(--white);
}
.collection-item-v2 .tf-btn.btn-fill:hover {
    background-color: var(--primary);
    border-color: var(--primary);
}

/* Estilos compartilhados para botões box (não-line) nos side cards */
.collection-item-v2 .tf-btn.btn-outline-dark,
.collection-item-v2 .tf-btn.btn-outline-light,
.collection-item-v2 .tf-btn.btn-fill {
    padding: 10px 22px;
    font-size: 14px;
    line-height: 16px;
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: auto;
}
.collection-item-v2 .tf-btn.btn-outline-dark i,
.collection-item-v2 .tf-btn.btn-outline-light i,
.collection-item-v2 .tf-btn.btn-fill i {
    font-size: 10px;
    margin-inline-start: 4px;
}
