/* ---------- TechMart PDP action buttons (template-3) ----------
   Navy: #2B3B82  |  Red: #C7372F
   One-row [qty | Cart | Buy Now], uppercase, sharp 4px radius.
   ---------------------------------------------------------------- */

.tm-pdp-actions { margin: 0; }

.tm-pdp-actions-primary {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

/* Quantity stepper */
.tm-pdp-qty {
    display: inline-flex;
    align-items: stretch;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
    flex-shrink: 0;
    min-height: 42px;
}

.tm-pdp-qty-btn {
    width: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #222;
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    transition: background 0.15s ease;
    user-select: none;
}

.tm-pdp-qty-btn:hover { background: #C7372F; color: #fff; }

.tm-pdp-qty-input {
    width: 52px;
    border: 0;
    outline: 0;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    background: #fff;
    color: #222;
    padding: 0 4px;
    -moz-appearance: textfield;
}

.tm-pdp-qty-input::-webkit-outer-spin-button,
.tm-pdp-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* Primary CTA buttons */
.tm-pdp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 700;
    padding: 11px 18px;
    border-radius: 4px;
    border: 1px solid transparent;
    text-decoration: none;
    cursor: pointer;
    min-height: 42px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease, box-shadow 0.2s ease;
    flex: 1 1 auto;
}

.tm-pdp-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); }
.tm-pdp-btn:active { transform: translateY(0); box-shadow: none; }

/* Add to Cart — navy */
.tm-pdp-btn-cart { background: #2B3B82; color: #fff; border-color: #2B3B82; }
.tm-pdp-btn-cart:hover { background: #1F2A6B; border-color: #1F2A6B; color: #fff; }

/* Buy Now — red */
.tm-pdp-btn-buynow { background: #C7372F; color: #fff; border-color: #C7372F; }
.tm-pdp-btn-buynow:hover { background: #a82a23; border-color: #a82a23; color: #fff; }

/* Alt channels row */
.tm-pdp-actions-alt {
    display: flex;
    gap: 8px;
    margin-top: 10px;
}

.tm-pdp-btn-call,
.tm-pdp-btn-whatsapp {
    flex: 1 1 50%;
    font-size: 12.5px;
    padding: 11px 16px;
    min-height: 44px;
}

/* Call — navy outline */
.tm-pdp-btn-call { background: #eef0f8; color: #2B3B82; border-color: #2B3B82; }
.tm-pdp-btn-call:hover { background: #2B3B82; color: #fff; border-color: #2B3B82; }

/* WhatsApp */
.tm-pdp-btn-whatsapp { background: #25D366; color: #fff; border-color: #25D366; }
.tm-pdp-btn-whatsapp:hover { background: #1DA855; border-color: #1DA855; color: #fff; }

/* Unavailable state */
.tm-pdp-btn-unavailable {
    background: #f3f4f6;
    color: #6b7280;
    border-color: #d1d5db;
    width: 100%;
    cursor: not-allowed;
    opacity: 0.85;
}

@media (max-width: 575.98px) {
    .tm-pdp-actions-primary { gap: 6px; }
    .tm-pdp-btn { font-size: 12px; padding: 9px 14px; }
    .tm-pdp-qty-btn { width: 34px; font-size: 16px; }
    .tm-pdp-qty-input { width: 44px; }
}
