/**
 * BikeStock B2B - Estilos WooCommerce Extras
 * Complementa o style.css com estilos específicos do WooCommerce
 *
 * @package BikeStock_B2B
 */

/* ===========================================
   ESTRELAS DE AVALIAÇÃO
   =========================================== */
.woocommerce .star-rating {
    color: var(--bs-laranja) !important;
}

.woocommerce .star-rating::before {
    color: var(--bs-cinza-200) !important;
}

.woocommerce p.stars a {
    color: var(--bs-laranja) !important;
}

/* ===========================================
   CUPOM NO CARRINHO
   =========================================== */
.woocommerce .cart .coupon input.input-text {
    width: 200px;
    height: 42px;
    padding: 8px 15px;
    border: 1px solid var(--bs-cinza-200);
    border-radius: var(--bs-radius-sm);
    font-size: 0.9rem;
}

.woocommerce .cart .coupon button {
    height: 42px;
}

/* ===========================================
   TABELA DE PEDIDOS (MINHA CONTA)
   =========================================== */
.woocommerce-account table.woocommerce-orders-table {
    border: 1px solid var(--bs-cinza-200);
    border-radius: var(--bs-radius);
    overflow: hidden;
}

.woocommerce-account table.woocommerce-orders-table thead th {
    background-color: var(--bs-azul);
    color: var(--bs-branco);
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    padding: 12px 15px;
    border: none;
}

.woocommerce-account table.woocommerce-orders-table td {
    padding: 15px;
    border-bottom: 1px solid var(--bs-cinza-100);
    font-size: 0.9rem;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a {
    margin: 2px;
    padding: 6px 14px !important;
    font-size: 0.75rem !important;
}

/* ===========================================
   ENDEREÇOS (MINHA CONTA)
   =========================================== */
.woocommerce-account .woocommerce-address-fields .form-row {
    margin-bottom: 15px;
}

.woocommerce-account .addresses .title h3 {
    font-size: 1rem;
    color: var(--bs-azul);
    text-transform: uppercase;
}

.woocommerce-account .addresses address {
    background: var(--bs-cinza-50);
    padding: 20px;
    border-radius: var(--bs-radius-sm);
    border: 1px solid var(--bs-cinza-200);
    font-style: normal;
    color: var(--bs-cinza-700);
    line-height: 1.7;
}

/* ===========================================
   PRODUTO SINGLE - VARIAÇÕES
   =========================================== */
.woocommerce div.product .variations {
    margin-bottom: 20px;
}

.woocommerce div.product .variations td {
    padding: 8px 0;
}

.woocommerce div.product .variations select {
    height: 45px;
    padding: 8px 15px;
    border: 1px solid var(--bs-cinza-200);
    border-radius: var(--bs-radius-sm);
    background-color: var(--bs-cinza-50);
    font-size: 0.9rem;
}

.woocommerce div.product .variations label {
    font-weight: 700;
    color: var(--bs-azul);
    font-size: 0.85rem;
    text-transform: uppercase;
}

/* ===========================================
   PRODUCT SHORT DESCRIPTION
   =========================================== */
.woocommerce div.product .woocommerce-product-details__short-description {
    color: var(--bs-cinza-700);
    font-size: 0.95rem;
    line-height: 1.7;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--bs-cinza-200);
}

/* ===========================================
   WIDGET FILTROS ATIVOS
   =========================================== */
.woocommerce .woocommerce-widget-layered-nav-list li {
    padding: 6px 0;
}

.woocommerce .woocommerce-widget-layered-nav-list li a {
    color: var(--bs-cinza-700);
    font-size: 0.88rem;
}

.woocommerce .woocommerce-widget-layered-nav-list li .count {
    background: var(--bs-cinza-100);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
    color: var(--bs-cinza-500);
    float: right;
}

/* ===========================================
   MINI CART WIDGET
   =========================================== */
.woocommerce .widget_shopping_cart .cart_list li {
    padding: 10px 0;
    border-bottom: 1px solid var(--bs-cinza-100);
}

.woocommerce .widget_shopping_cart .cart_list li a.remove {
    color: var(--bs-erro) !important;
    font-size: 1.2rem;
}

/* ===========================================
   LOADING STATES
   =========================================== */
.woocommerce .blockUI.blockOverlay::before {
    height: 20px !important;
    width: 20px !important;
    border: 3px solid var(--bs-cinza-200);
    border-top: 3px solid var(--bs-laranja);
    border-radius: 50%;
    animation: bs-spin 0.8s linear infinite;
}

@keyframes bs-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ===========================================
   PRODUCT CATEGORIES WIDGETS
   =========================================== */
.woocommerce .widget_product_categories ul li {
    position: relative;
}

.woocommerce .widget_product_categories ul li a {
    display: block;
    padding: 6px 0;
    color: var(--bs-cinza-700);
    font-size: 0.88rem;
}

.woocommerce .widget_product_categories ul li a:hover {
    color: var(--bs-laranja);
}

.woocommerce .widget_product_categories .children {
    padding-left: 15px;
}

.woocommerce .widget_product_categories .children li a {
    font-size: 0.82rem;
    color: var(--bs-cinza-500);
}

/* ===========================================
   CAMPO DE BUSCA NO SEARCH FORM
   =========================================== */
.woocommerce-product-search {
    display: flex;
}

.woocommerce-product-search input[type="search"] {
    flex: 1;
    border-radius: var(--bs-radius-sm) 0 0 var(--bs-radius-sm);
    border-right: none;
}

.woocommerce-product-search button {
    border-radius: 0 var(--bs-radius-sm) var(--bs-radius-sm) 0 !important;
    min-width: 45px;
}

/* ===========================================
   PEDIDO RECEBIDO - DETALHES EXTRAS
   =========================================== */
.woocommerce-order-received .woocommerce-customer-details {
    margin-top: 30px;
}

.woocommerce-order-received .woocommerce-columns--addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

@media (max-width: 768px) {
    .woocommerce-order-received .woocommerce-columns--addresses {
        grid-template-columns: 1fr;
    }
}

.woocommerce-order-received .woocommerce-column__title {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--bs-laranja);
    text-transform: uppercase;
    margin-bottom: 12px;
}

.woocommerce-order-received address {
    background: var(--bs-branco);
    border: 1px solid var(--bs-cinza-200);
    padding: 20px;
    border-radius: var(--bs-radius-sm);
    font-style: normal;
    color: var(--bs-cinza-700);
    line-height: 1.7;
}

/* ===========================================
   PRODUTO - TAGS E CATEGORIAS
   =========================================== */
.woocommerce div.product .tagged_as a,
.woocommerce div.product .posted_in a {
    color: var(--bs-azul);
    font-weight: 600;
}

.woocommerce div.product .tagged_as a:hover,
.woocommerce div.product .posted_in a:hover {
    color: var(--bs-laranja);
}

/* ===========================================
   CROSS-SELLS (CARRINHO)
   =========================================== */
.woocommerce .cross-sells {
    margin-top: 40px;
}

.woocommerce .cross-sells h2 {
    font-size: 1.2rem;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--bs-azul);
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--bs-laranja);
    display: inline-block;
}
