/* HitPro TopUp - WooCommerce Override Styles */

.woocommerce { font-family: var(--hp-font-primary); }

.hp-woocommerce-content { max-width: 100%; }

/* Products */
.woocommerce ul.products li.product {
    border-radius: var(--hp-radius-lg); overflow: hidden;
    border: 1px solid var(--hp-gray-100); transition: all 0.25s ease;
}
.woocommerce ul.products li.product:hover {
    box-shadow: var(--hp-shadow-lg); transform: translateY(-4px);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--hp-font-primary); font-weight: 600; color: var(--hp-primary);
    padding: 0 16px;
}
.woocommerce ul.products li.product .price {
    color: var(--hp-violet); font-weight: 700; padding: 0 16px;
}
.woocommerce ul.products li.product .button {
    background: var(--hp-violet); border-radius: var(--hp-radius-full);
    font-family: var(--hp-font-primary); font-weight: 600;
    margin: 16px; display: block; text-align: center;
}
.woocommerce ul.products li.product .button:hover {
    background: var(--hp-violet-dark);
}

/* Cart */
.woocommerce-cart .woocommerce table.shop_table { border-radius: var(--hp-radius-lg); overflow: hidden; }
.woocommerce-cart .woocommerce table.shop_table th {
    background: var(--hp-gray-50); font-family: var(--hp-font-primary);
}

/* Checkout */
.hp-checkout-header {
    text-align: center; margin-bottom: 32px;
    padding: 20px; background: rgba(16, 185, 129, 0.05);
    border: 1px solid rgba(16, 185, 129, 0.15);
    border-radius: var(--hp-radius-lg);
}
.hp-checkout-header h2 { display: flex; align-items: center; justify-content: center; gap: 8px; color: var(--hp-emerald-dark); font-size: 1.2rem; margin: 0 0 4px; }
.hp-checkout-header p { color: var(--hp-gray-500); font-size: 0.9rem; margin: 0; }

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select {
    padding: 12px 16px; border: 2px solid var(--hp-gray-200);
    border-radius: var(--hp-radius-md); font-family: var(--hp-font-primary);
    transition: border-color 0.25s ease;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus {
    border-color: var(--hp-violet); box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.1);
}
.woocommerce form .form-row label {
    font-family: var(--hp-font-primary); font-weight: 600; color: var(--hp-gray-700);
}

.woocommerce #payment { border-radius: var(--hp-radius-lg); }
.woocommerce #payment #place_order {
    background: var(--hp-emerald); border-radius: var(--hp-radius-full);
    font-family: var(--hp-font-primary); font-weight: 700; font-size: 1rem;
    padding: 16px 32px; border: none; transition: all 0.25s ease;
}
.woocommerce #payment #place_order:hover {
    background: var(--hp-emerald-dark); transform: translateY(-2px);
    box-shadow: var(--hp-shadow-emerald);
}

/* Buttons global override */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
    font-family: var(--hp-font-primary); font-weight: 600;
    border-radius: var(--hp-radius-full); transition: all 0.25s ease;
}

/* Notices */
.woocommerce-message { border-top-color: var(--hp-emerald); border-radius: var(--hp-radius-md); }
.woocommerce-error { border-top-color: var(--hp-error); border-radius: var(--hp-radius-md); }
.woocommerce-info { border-top-color: var(--hp-info); border-radius: var(--hp-radius-md); }
