/* Fuê — Página de produto (Figma: Produto (PDP) — Desktop · Tablet · Mobile) */

.fue-pdp__crumb { padding: 0 var(--fue-margin); }
@media (max-width: 767px) { .fue-pdp__crumb { display: none; } }
@media (min-width: 1024px) { .fue-pdp__crumb { padding: 24px var(--fue-margin); } }

.fue-pdp { display: flex; flex-direction: column; }
@media (min-width: 768px) { .fue-pdp { flex-direction: row; align-items: flex-start; } }
@media (min-width: 1024px) { .fue-pdp { gap: 48px; padding: 0 var(--fue-margin) var(--fue-section); } }

/* Galeria: swipe no mobile; empilhada (1 grande, 2 lado a lado) no tablet/desktop */
.fue-pdp__galeria { position: relative; display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.fue-pdp__galeria::-webkit-scrollbar { display: none; }
.fue-pdp__foto { flex: 0 0 100%; scroll-snap-align: start; aspect-ratio: 3 / 4; background: var(--fue-surface-secondary); position: relative; overflow: hidden; }
.fue-pdp__foto img, .fue-pdp__foto video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.fue-pdp__foto.is-video { aspect-ratio: 16 / 9; background: var(--fue-surface-dark); }
.fue-pdp__contador { position: absolute; left: 16px; bottom: 16px; padding: 6px 8px; background: #fff; pointer-events: none; }
@media (min-width: 768px) {
	.fue-pdp__galeria { flex: 1; flex-wrap: wrap; gap: 8px; overflow: visible; }
	.fue-pdp__foto.is-half { flex: 0 0 calc(50% - 4px); aspect-ratio: 402 / 510; }
	.fue-pdp__contador { display: none; }
}
@media (min-width: 1024px) { .fue-pdp__galeria { flex: 0 1 812px; } }

/* Painel de compra */
.fue-pdp__painel { display: flex; flex-direction: column; gap: 24px; padding: 32px var(--fue-margin); }
@media (min-width: 768px) { .fue-pdp__painel { width: 390px; flex-shrink: 0; padding: 40px 20px; position: sticky; top: calc(var(--fue-header-h) + 16px); } }
@media (min-width: 1024px) { .fue-pdp__painel { width: auto; flex: 0 1 500px; padding: 0; gap: 28px; } }

.fue-pdp__id { display: flex; flex-direction: column; gap: 14px; }
.fue-pdp__cat { display: flex; align-items: center; gap: 12px; color: var(--fue-text-tertiary); }
.fue-pdp__cat a:hover { color: #000; }
.fue-pdp__guia { margin-top: -12px; }
.fue-pdp__guia a { text-decoration: underline; text-underline-offset: 4px; }
.fue-pdp__modelo { color: var(--fue-text-tertiary); margin-top: -16px; }
.fue-pdp__meta { display: flex; gap: 20px; color: var(--fue-text-tertiary); }

/* Formulário do Woo reestilizado (variações + quantidade + botão) */
.fue-pdp__compra form.cart { display: flex; flex-direction: column; gap: 24px; }
.fue-pdp__compra table.variations { border-collapse: collapse; width: 100%; }
.fue-pdp__compra table.variations tr { display: flex; flex-direction: column; gap: 12px; margin-bottom: 24px; }
.fue-pdp__compra table.variations th, .fue-pdp__compra table.variations td { padding: 0; text-align: left; }
.fue-pdp__compra table.variations label { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.fue-var__select { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.fue-var { display: flex; flex-wrap: wrap; gap: 8px; }
.fue-var--cor { gap: 10px; }
.fue-var__chip { display: grid; place-items: center; min-width: 48px; height: 48px; padding: 0 12px; border: 1px solid var(--fue-border-default); background: #fff; position: relative; }
@media (min-width: 1024px) { .fue-var__chip { min-width: 56px; height: 56px; } }
.fue-var__chip:hover { border-color: #000; }
.fue-var__chip[aria-checked="true"] { background: #000; color: #fff; border: 2px solid #000; }
.fue-var__chip.is-off { color: var(--fue-text-disabled); border-color: var(--fue-border-subtle); }
.fue-var__chip.is-off::after { content: ""; position: absolute; left: 8px; right: 8px; top: 50%; height: 1px; background: var(--fue-border-default); transform: rotate(-35deg); }
.fue-var__cor { width: 30px; height: 30px; border-radius: 999px; background: var(--sw); box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); outline-offset: 3px; margin: 7px; }
.fue-var__cor[aria-checked="true"] { outline: 2px solid #000; }
.fue-var__cor.is-off { opacity: .35; }
.fue-pdp__compra .single_variation_wrap .woocommerce-variation-price { display: none; }
.fue-pdp__compra .woocommerce-variation-availability { font-size: 13px; color: var(--fue-text-tertiary); }
.fue-pdp__compra .woocommerce-variation-add-to-cart, .fue-pdp__compra form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; gap: 24px 8px; }
.fue-pdp__compra .single_add_to_cart_button { order: 1; flex: 1 1 100%; }
/* Melhor Envio — "Frete e prazo" do Figma, abaixo do botão */
.fue-pdp__compra .containerCalculator { order: 2; flex: 1 1 100%; padding: 24px 0; border-top: 1px solid var(--fue-border-subtle); border-bottom: 1px solid var(--fue-border-subtle); }
.fue-pdp__compra .containerCalculator p { margin: 0 0 12px; font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.fue-pdp__compra .containerCalculator .row, .fue-pdp__compra .containerCalculator .col-75 { width: 100%; }
.fue-pdp__compra #inputCep { width: 100%; height: 48px; padding: 0 16px; border: 1px solid var(--fue-border-default); border-radius: 0; font-size: 15px; }
.fue-pdp__compra #inputCep:focus { border-color: #000; outline: none; }
.fue-pdp__compra .resultado-frete table { width: 100%; margin-top: 12px; font-size: 13px; border-collapse: collapse; }
.fue-pdp__compra .resultado-frete td { padding: 8px 0; border-bottom: 1px solid var(--fue-border-subtle); }
.fue-pdp__compra #calcular-frete-loader { display: none; }
.fue-pdp__compra .quantity { display: none; }
.fue-pdp__compra .single_add_to_cart_button {
	flex: 1; min-height: 52px; background: #000; color: #fff; border: 0;
	font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase;
}
.fue-pdp__compra .single_add_to_cart_button.disabled { opacity: .5; }
.fue-pdp__compra .stock.out-of-stock { color: var(--fue-text-sale); font-size: 13px; }

/* Seu Ajuste */
.fue-ajuste { display: flex; flex-direction: column; gap: 16px; padding: 24px; background: var(--fue-surface-secondary); }
.fue-ajuste__topo { display: flex; align-items: center; gap: 10px; }
.fue-ajuste__lead { color: var(--fue-text-secondary); }
.fue-ajuste__form { display: flex; gap: 8px; }
.fue-ajuste__form input { flex: 1; min-width: 0; height: 48px; padding: 0 16px; border: 1px solid var(--fue-border-default); background: #fff; border-radius: 0; }
.fue-ajuste__form button { height: 48px; padding: 0 22px; background: #000; color: #fff; }
.fue-ajuste__nota { color: var(--fue-text-tertiary); }
.fue-ajuste__nota a { text-decoration: underline; text-underline-offset: 3px; }
.fue-ajuste.is-res { background: #000; color: #fff; }
.fue-ajuste.is-res .fue-ajuste__lead, .fue-ajuste.is-res .fue-ajuste__nota { color: rgba(255,255,255,.8); }
.fue-ajuste__res:empty { display: none; }
.fue-ajuste__res { display: flex; flex-direction: column; gap: 12px; }
.fue-ajuste__linha { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.fue-ajuste__escala { display: flex; gap: 6px; }
.fue-ajuste__escala span { flex: 1; display: flex; flex-direction: column; gap: 8px; font-size: 11px; letter-spacing: .12em; }
.fue-ajuste__escala span::before { content: ""; height: 6px; background: #fff; }
.fue-ajuste__escala span.is-on::before { background: var(--fue-accent-new); }

/* Accordions */
.fue-acc__item { border-top: 1px solid var(--fue-border-subtle); }
.fue-acc__item:last-child { border-bottom: 1px solid var(--fue-border-subtle); }
.fue-acc__item summary { display: flex; justify-content: space-between; align-items: center; min-height: 63px; list-style: none; cursor: pointer; }
.fue-acc__item summary::-webkit-details-marker { display: none; }
.fue-acc__item[open] summary svg { transform: rotate(45deg); }
.fue-acc__corpo { color: var(--fue-text-secondary); padding-bottom: 20px; }
.fue-acc__corpo p + p { margin-top: 12px; }

/* Regulador */
.fue-regulador { background: var(--fue-surface-secondary); padding: 64px 0; }
@media (min-width: 1024px) { .fue-regulador { padding: var(--fue-section) 0; } }
.fue-regulador__h { display: flex; flex-direction: column; gap: 16px; padding: 0 var(--fue-margin) 40px; max-width: 800px; }
.fue-regulador__h > p:first-of-type { color: var(--fue-text-tertiary); }
.fue-regulador__h .t-body-l { color: var(--fue-text-secondary); }
.fue-regulador__grade { display: grid; grid-auto-flow: column; grid-auto-columns: 85%; gap: var(--fue-gap); padding: 0 var(--fue-margin); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
@media (min-width: 768px) { .fue-regulador__grade { grid-auto-flow: row; grid-template-columns: repeat(3, 1fr); overflow: visible; } }
.fue-regulador__item { background: #fff; scroll-snap-align: start; }
.fue-regulador__item img { width: 100%; aspect-ratio: 479 / 620; object-fit: cover; }
.fue-regulador__item figcaption { display: flex; flex-direction: column; gap: 8px; padding: 16px 28px 32px; }
.fue-regulador__item p { color: var(--fue-text-secondary); }

/* Avaliações (comments_template do Woo) */
.fue-avaliacoes { padding: 64px var(--fue-margin); }
@media (min-width: 1024px) { .fue-avaliacoes { padding: var(--fue-section) var(--fue-margin); } }
.fue-avaliacoes .woocommerce-Reviews-title { font: 800 28px/1.14 var(--fue-font-marca); letter-spacing: -.02em; margin-bottom: 24px; }
.fue-avaliacoes .commentlist { display: flex; flex-direction: column; }
.fue-avaliacoes .commentlist li { padding: 28px 0; border-top: 1px solid var(--fue-border-subtle); }
.fue-avaliacoes .avatar { display: none; }
.fue-avaliacoes .star-rating { color: #000; font-size: 13px; }
.fue-avaliacoes input[type="text"], .fue-avaliacoes input[type="email"], .fue-avaliacoes textarea { width: 100%; border: 1px solid var(--fue-border-default); padding: 12px 16px; border-radius: 0; }
.fue-avaliacoes .submit { min-height: 52px; padding: 0 28px; background: #000; color: #fff; border: 0; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; }

/* Relacionados */
.fue-relacionados { padding-bottom: var(--fue-section); }

/* CTA fixo no mobile */
.fue-pdp__fixo {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 110; display: flex; align-items: center; gap: 14px;
	padding: 14px 16px; background: #fff; border-top: 1px solid var(--fue-border-subtle);
}
.fue-pdp__fixo .fue-price { gap: 2px; }
.fue-pdp__fixo .fue-pix { display: none; }
.fue-pdp__fixo .fue-btn { flex: 1; }
@media (min-width: 1024px) { .fue-pdp__fixo { display: none !important; } }

/* Estrelas do formulário de avaliação (o CSS do Woo foi removido de propósito).
   Estrela preta — sem amarelo, por decisão de marca. */
.fue-avaliacoes #rating { position: absolute; opacity: 0; pointer-events: none; }
.fue-avaliacoes p.stars { margin: 8px 0 16px; }
.fue-avaliacoes p.stars span { display: inline-flex; gap: 4px; }
.fue-avaliacoes p.stars a { position: relative; display: inline-block; width: 28px; height: 28px; overflow: hidden; text-indent: -999em; }
.fue-avaliacoes p.stars a::before { content: "\2606"; position: absolute; inset: 0; text-indent: 0; font-size: 24px; line-height: 28px; color: #000; }
.fue-avaliacoes p.stars:hover a::before,
.fue-avaliacoes p.stars.selected a.active::before,
.fue-avaliacoes p.stars.selected a:not(.active)::before { content: "\2605"; }
.fue-avaliacoes p.stars a:hover ~ a::before,
.fue-avaliacoes p.stars.selected a.active ~ a::before { content: "\2606"; }
.fue-avaliacoes .comment-form { display: grid; gap: 16px; max-width: 720px; }
.fue-avaliacoes .comment-form label { font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; display: block; margin-bottom: 6px; }
.fue-avaliacoes .comment-form-cookies-consent label { text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 400; display: inline; }
.fue-avaliacoes .woocommerce-noreviews, .fue-avaliacoes .comment-notes { color: var(--fue-text-secondary); font-size: 15px; }
