/* =========================================================
   LOLLIPLANNER — woocommerce.css
   Loja, categoria, produto, carrinho, checkout, minha conta, busca
   ========================================================= */

/* ---------------- CABEÇALHO DA LOJA ---------------- */
.lolli-shop-header { text-align: center; margin-bottom: 40px; }
.lolli-shop-header h1 { display: inline-flex; align-items: center; gap: 10px; font-size: 2rem; }
.lolli-shop-header p { color: var(--lolli-texto-suave); }

.lolli-shop-layout { display: grid; grid-template-columns: 260px 1fr; gap: 40px; align-items: start; }
.lolli-shop-sidebar { position: sticky; top: 110px; }
.lolli-filter-box { background: #fff; border-radius: var(--lolli-radius); padding: 22px; margin-bottom: 20px; box-shadow: var(--lolli-shadow-soft); }
.lolli-filter-box h3 { display: flex; align-items: center; gap: 8px; font-size: .95rem; margin-bottom: 14px; }
.lolli-filter-box ul li { margin-bottom: 8px; }
.lolli-filter-box ul li a { font-size: .86rem; color: var(--lolli-texto-suave); }
.lolli-filter-box ul li a:hover { color: var(--lolli-rosa); }

.lolli-shop-toolbar { margin-bottom: 24px; }
.woocommerce-result-count, .woocommerce-ordering { font-size: .85rem; color: var(--lolli-texto-suave); }
.woocommerce-ordering select { border: 2px solid var(--lolli-rosa-claro); border-radius: 50px; padding: 8px 16px; font-family: inherit; }

/* Preço / avaliações padrão do Woo dentro do nosso grid */
.woocommerce ul.products { display: contents; }
.woocommerce ul.products li.product { list-style: none; }
.woocommerce span.onsale { display: none; } /* substituído pelo badge Lolli */

.woocommerce nav.woocommerce-pagination ul { display: flex; gap: 8px; justify-content: center; border: none; }
.woocommerce nav.woocommerce-pagination ul li { border: none; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; color: var(--lolli-roxo); font-weight: 700; box-shadow: var(--lolli-shadow-soft); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--lolli-rosa); color: #fff; }

/* ---------------- PÁGINA DE PRODUTO ÚNICO ---------------- */
.lolli-single-product { background: #fff; border-radius: var(--lolli-radius-lg); padding: 40px; box-shadow: var(--lolli-shadow-soft); margin-bottom: 40px; }
.lolli-product-single-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }

.woocommerce div.product div.images { margin: 0; }
.woocommerce div.product div.images img { border-radius: var(--lolli-radius); }
.woocommerce div.product div.images .flex-control-thumbs { display: flex; gap: 10px; margin-top: 12px; }
.woocommerce div.product div.images .flex-control-thumbs li { list-style: none; width: 76px; }
.woocommerce div.product div.images .flex-control-thumbs img { border-radius: 10px; opacity: .6; }
.woocommerce div.product div.images .flex-control-thumbs img.flex-active { opacity: 1; outline: 2px solid var(--lolli-rosa); }

.woocommerce div.product .product_title { font-size: 1.8rem; margin-bottom: 8px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { font-family: var(--lolli-font-titulo); color: var(--lolli-roxo); font-size: 1.5rem; font-weight: 700; }
.woocommerce div.product .woocommerce-product-rating { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--lolli-texto-suave); margin: 18px 0; }

.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 20px; }
.woocommerce div.product form.cart .quantity input { width: 70px; padding: 12px; border: 2px solid var(--lolli-rosa-claro); border-radius: var(--lolli-radius-sm); text-align: center; font-family: inherit; }
.woocommerce div.product form.cart button.single_add_to_cart_button { background: linear-gradient(135deg, var(--lolli-rosa), var(--lolli-lilas)); color: #fff; border: none; padding: 15px 34px; border-radius: 50px; font-weight: 700; font-family: var(--lolli-font-titulo); transition: var(--lolli-transition); }
.woocommerce div.product form.cart button.single_add_to_cart_button:hover { transform: translateY(-3px); box-shadow: var(--lolli-shadow-hover); }

.lolli-personalization-fields { width: 100%; background: var(--lolli-creme); border: 1px dashed var(--lolli-rosa-claro); border-radius: var(--lolli-radius); padding: 20px; margin: 10px 0 4px; }
.lolli-personalization-title { font-size: 1rem; margin-bottom: 14px; }
.lolli-field { margin-bottom: 14px; }
.lolli-field label { display: block; font-size: .82rem; font-weight: 700; color: var(--lolli-roxo); margin-bottom: 6px; }
.lolli-field input, .lolli-field textarea { width: 100%; padding: 11px 14px; border: 2px solid var(--lolli-rosa-claro); border-radius: var(--lolli-radius-sm); font-family: inherit; background: #fff; }

.lolli-product-tabs-section { background: #fff; border-radius: var(--lolli-radius-lg); padding: 40px; box-shadow: var(--lolli-shadow-soft); }
.woocommerce-tabs ul.tabs { display: flex; gap: 10px; border-bottom: 2px solid var(--lolli-rosa-claro); margin-bottom: 24px; padding: 0; }
.woocommerce-tabs ul.tabs li { list-style: none; }
.woocommerce-tabs ul.tabs li a { padding: 10px 20px; display: block; font-weight: 700; color: var(--lolli-texto-suave); }
.woocommerce-tabs ul.tabs li.active a { color: var(--lolli-rosa); border-bottom: 2px solid var(--lolli-rosa); }

.related.products { margin-top: 60px; }
.related.products > h2 { text-align: center; margin-bottom: 30px; font-size: 1.6rem; }
.related.products ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }

/* ---------------- CARRINHO ---------------- */
.woocommerce-cart table.shop_table, .woocommerce-checkout table.shop_table { border: none; border-radius: var(--lolli-radius); overflow: hidden; box-shadow: var(--lolli-shadow-soft); background: #fff; }
.woocommerce-cart table.shop_table th { background: var(--lolli-rosa-claro); color: var(--lolli-roxo); font-family: var(--lolli-font-titulo); padding: 16px; }
.woocommerce-cart table.shop_table td { padding: 16px; border-bottom: 1px solid #f2e9ec; }
.woocommerce-cart .product-remove a { color: var(--lolli-rosa) !important; }
.woocommerce-cart td.actions .button, .woocommerce-cart .coupon .button { background: var(--lolli-roxo); color: #fff; border-radius: 50px; padding: 12px 26px; }
.cart-collaterals .cart_totals { background: #fff; border-radius: var(--lolli-radius); padding: 26px; box-shadow: var(--lolli-shadow-soft); }
.cart-collaterals .cart_totals .checkout-button { background: linear-gradient(135deg, var(--lolli-rosa), var(--lolli-lilas)); color: #fff; border-radius: 50px; width: 100%; text-align: center; padding: 15px; font-weight: 700; }

/* ---------------- CHECKOUT ---------------- */
.woocommerce-checkout #customer_details, .woocommerce-checkout #order_review { background: #fff; border-radius: var(--lolli-radius); padding: 28px; box-shadow: var(--lolli-shadow-soft); margin-bottom: 24px; }
.woocommerce-checkout .form-row input, .woocommerce-checkout .form-row select, .woocommerce-checkout .form-row textarea { border: 2px solid var(--lolli-rosa-claro); border-radius: var(--lolli-radius-sm); padding: 12px 14px; font-family: inherit; }
.woocommerce-checkout #place_order { background: linear-gradient(135deg, var(--lolli-rosa), var(--lolli-lilas)); color: #fff; border: none; padding: 16px; border-radius: 50px; width: 100%; font-weight: 700; font-size: 1rem; }

/* ---------------- MINHA CONTA ---------------- */
.woocommerce-account .woocommerce-MyAccount-navigation { background: #fff; border-radius: var(--lolli-radius); padding: 10px; box-shadow: var(--lolli-shadow-soft); }
.woocommerce-account .woocommerce-MyAccount-navigation ul li { border-bottom: 1px solid #f2e9ec; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { padding: 12px 16px; display: block; font-weight: 600; color: var(--lolli-texto); }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { color: var(--lolli-rosa); }
.woocommerce-account .woocommerce-MyAccount-content { background: #fff; border-radius: var(--lolli-radius); padding: 28px; box-shadow: var(--lolli-shadow-soft); }
.woocommerce-account .woocommerce-Button, .woocommerce-account button.button { background: var(--lolli-rosa); color: #fff; border-radius: 50px; padding: 12px 26px; border: none; }

/* ---------------- MENSAGENS / NOTICES ---------------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--lolli-rosa) !important; background: #fff; border-radius: var(--lolli-radius-sm); box-shadow: var(--lolli-shadow-soft); padding: 16px 20px !important; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--lolli-rosa) !important; }

/* ---------------- EMPTY STATES ---------------- */
.lolli-empty-search { text-align: center; padding: 60px 20px; color: var(--lolli-texto-suave); }
.lolli-empty-search svg { color: var(--lolli-rosa); margin-bottom: 14px; }
.woocommerce-info.woocommerce-no-products-found { max-width: 480px; margin: 40px auto; text-align: center; }
