/* Card Quantity Layout Containers */
.ttf-archive-cart-container { 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    margin-top: 12px; 
    width: 100%; 
    gap: 6px; 
}

/* Hide the badge if data attribute equals zero */
.ttf-cart-info-message[data-qty="0"] { 
    display: none !important; 
}

.ttf-cart-info-message { 
    font-size: 12px; 
    color: #1e4620; 
    font-weight: 500; 
    background-color: #edf7ed; 
    padding: 4px 10px; 
    border-radius: 12px; 
    border: 1px solid #c3e6cb; 
    display: inline-block; 
}

.ttf-cart-info-message span { 
    font-weight: bold; 
    color: #1e4620; 
}

/* Align Quantity box and Icon button next to each other */
.ttf-archive-cart-form-wrapper { 
    display: flex; 
    align-items: center; 
    gap: 6px; 
    width: 100%; 
    justify-content: center; 
}

.ttf-archive-cart-form-wrapper .quantity { 
    display: inline-block; 
    margin: 0 !important; 
}

.ttf-archive-cart-form-wrapper .quantity .qty { 
    width: 60px; 
    height: 38px; 
    padding: 5px; 
    text-align: center; 
    border: 1px solid #ccc; 
    border-radius: 4px; 
    font-size: 16px !important;
}

/* Inline Cart Icon Only Button Styles */
.ttf-row-cart-btn {
    background-color: #000;
    color: #fff;
    border: none;
    width: 38px;
    height: 38px;
    border-radius: 4px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background-color 0.2s, transform 0.1s;
}

.ttf-row-cart-btn:hover {
    background-color: #222;
}

.ttf-row-cart-btn:active {
    transform: scale(0.95);
}

.ttf-row-cart-btn.loading {
    opacity: 0.5;
    cursor: not-allowed;
}

.ttf-row-cart-btn.added {
    background-color: #28a745;
}

/* Global Floating Action Submit Engine Layouts */
.ttf-global-cart-submit-container { 
    position: fixed; 
    bottom: 20px; 
    right: 20px; 
    z-index: 99999; 
}

.ttf-global-cart-btn { 
    background-color: #000; 
    color: #fff; 
    border: none; 
    padding: 14px 24px; 
    font-weight: bold; 
    border-radius: 50px; 
    cursor: pointer; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); 
    display: flex; 
    align-items: center; 
    gap: 8px; 
    font-size: 15px; 
    transition: background 0.2s, opacity 0.2s; 
}

.ttf-global-cart-btn:hover { 
    background-color: #222; 
    color: #fff;
}

.ttf-global-cart-btn.loading { 
    opacity: 0.6; 
    cursor: not-allowed; 
}

.ttf-global-cart-btn.added { 
    background-color: #28a745; 
}
