/* Hide WooCommerce cart elements for coming-soon products */
form.cart,
.quantity,
form.cart .variations,
form.cart .variations_form,
form.cart .single_variation_wrap,
form.cart .single_add_to_cart_button,
form.cart button[type="submit"],
form.variations_form,
.variations_form .variations,
.variations_form .single_variation_wrap,
.woocommerce-variation-add-to-cart,
.elementor-add-to-cart form.cart,
.elementor-widget-woocommerce-product-add-to-cart form.cart,
.elementor-widget-woocommerce-product-add-to-cart .quantity,
.elementor-widget-woocommerce-product-add-to-cart button,
.elementor-widget-woocommerce-product-add-to-cart .variations,
.elementor-widget-woocommerce-product-add-to-cart .single_variation_wrap,
.single_add_to_cart_button,
table.variations,
.reset_variations {
    display: none !important;
}

/* Waitlist form wrapper */
.notify-me-wrapper {
    display: block !important;
    margin: 20px 0;
}

/* Form styling */
.notify-me-form {
    width: 100%;
}

/* Input and button container */
.notify-me-input-wrapper {
    display: flex;
    gap: 10px;
    align-items: stretch;
}

/* Email input field */
.notify-me-email {
    flex: 1;
    padding: 12px 16px;
    font-size: 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.notify-me-email:focus {
    outline: none;
    border-color: #7973EF;
    box-shadow: 0 0 0 1px #7973EF;
}

/* Notify Me button */
.notify-me-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    font-size: 16px;
    cursor: pointer;
    white-space: nowrap;
    border: none;
    transition: opacity 0.2s ease;
}

.notify-me-btn:hover {
    opacity: 0.9;
}

.notify-me-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.notify-me-btn svg {
    display: inline-block;
    flex-shrink: 0;
}

/* Message container */
.notify-me-message {
    margin-top: 10px;
    padding: 10px;
    border-radius: 4px;
    display: none;
}

/* Success message */
.notify-me-message.success {
    display: block;
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

/* Error message */
.notify-me-message.error {
    display: block;
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

/* Read more button visibility */
.read-more-btn {
    display: inline-block !important;
}

/* Responsive design */
@media (max-width: 768px) {
    .notify-me-input-wrapper {
        flex-direction: column;
    }
    
    .notify-me-btn {
        width: 100%;
    }
}
