/* =========================================================
   HALOX — identidad visual
   ========================================================= */

:root {
    --halox-primary: #6d4aff;
    --halox-primary-hover: #5837e8;
    --halox-primary-soft: #f1edff;
    --halox-dark: #0b071c;
    --halox-text: #15131c;
    --halox-muted: #6b6874;
    --halox-border: #e8e7ec;
    --halox-surface: #f7f7fa;
    --halox-white: #ffffff;
    --halox-radius: 12px;
}

/* Enlaces */

a {
    transition: color 0.2s ease;
}

/* Botones principales */

.btn,
.button,
button,
input[type='submit'],
.wd-button,
.single_add_to_cart_button {
    border-radius: 8px;
}

.btn-color-primary,
.button.alt,
.wd-add-btn > a,
.single_add_to_cart_button {
    background-color: var(--halox-primary);
    color: var(--halox-white);
}

.btn-color-primary:hover,
.button.alt:hover,
.wd-add-btn > a:hover,
.single_add_to_cart_button:hover {
    background-color: var(--halox-primary-hover);
}

/* Barra superior */

.top-bar {
    background-color: var(--halox-dark);
    color: var(--halox-white);
}

/* Buscador */

.wd-search-form input[type='text'],
.searchform input[type='text'] {
    border-radius: 999px;
    border-color: var(--halox-border);
}

.wd-search-form input[type='text']:focus,
.searchform input[type='text']:focus {
    border-color: var(--halox-primary);
    box-shadow: 0 0 0 3px rgba(109, 74, 255, 0.12);
}

/* Navegación */

.wd-nav > li.current-menu-item > a,
.wd-nav > li > a:hover {
    color: var(--halox-primary);
}

/* Tarjetas de producto */

.product-grid-item,
.wd-product {
    border-radius: var(--halox-radius);
}

.product-grid-item .product-wrapper,
.wd-product .product-wrapper {
    border: 1px solid var(--halox-border);
    border-radius: var(--halox-radius);
    background-color: var(--halox-white);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.product-grid-item .product-wrapper:hover,
.wd-product .product-wrapper:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(20, 14, 45, 0.08);
}

/* Precios */

.price,
.amount {
    color: var(--halox-primary);
}

/* Badges de oferta */

.onsale,
.product-label.onsale {
    background-color: var(--halox-primary);
    color: var(--halox-white);
}

/* Fondos generales */

body {
    color: var(--halox-text);
    background-color: var(--halox-background);
}

.main-page-wrapper {
    background-color: var(--halox-surface);
}