/* =====================================================================
   COMPONENTE swatches (AVT Core): seletores visuais de variação. Variáveis (padrão entre parênteses):
   --avt-sw-size            lado de cor/imagem             (40px; vem de AVT Core > Variações)
   --avt-sw-radius          arredondamento                 (4px; 50% se "redondo")
   --avt-sw-gap             espaço entre itens             (8px)
   --avt-sw-border          borda                          (#d1d5db)
   --avt-sw-border-hover    borda no hover                 (#9ca3af)
   --avt-sw-border-active   borda do escolhido             (#111827)
   --avt-sw-ring            anel externo do escolhido      (rgba(17,24,39,.15))
   --avt-sw-bg / --avt-sw-text                             fundo/texto do botão de texto (#fff / #111827)
   --avt-sw-bg-active / --avt-sw-text-active               fundo/texto do botão escolhido (#111827 / #fff)
   --avt-sw-font-size       texto dos botões               (14px)
   --avt-sw-pad             espaço interno do botão de texto (8px 14px)
   --avt-sw-tip-bg / --avt-sw-tip-color                    dica (#111827 / #fff)
   --avt-sw-cross           cor do risco (indisponível)    (rgba(17,24,39,.55))
   ===================================================================== */
/* O <select> do WooCommerce continua na página (formulário, teclado, leitor de tela), só some da vista. */
.avt-sw-wrap .avt-sw-select{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.avt-sw-wrap{position:relative}
.avt-sw{display:flex;flex-wrap:wrap;gap:var(--avt-sw-gap,8px);margin:0;padding:2px 0;list-style:none}
.avt-sw>li{margin:0;padding:0;list-style:none;position:relative}

.avt-sw__item{
  position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;
  margin:0;padding:0;cursor:pointer;font:inherit;font-size:var(--avt-sw-font-size,14px);line-height:1.2;
  border:1px solid var(--avt-sw-border,#d1d5db);border-radius:var(--avt-sw-radius,4px);background:var(--avt-sw-bg,#fff);color:var(--avt-sw-text,#111827);
  transition:border-color .15s,box-shadow .15s,background-color .15s,color .15s,transform .12s;-webkit-tap-highlight-color:transparent
}
.avt-sw__item:hover{border-color:var(--avt-sw-border-hover,#9ca3af)}
.avt-sw__item:active{transform:scale(.96)}
.avt-sw__item:focus-visible{outline:2px solid var(--avt-sw-border-active,#111827);outline-offset:2px}
.avt-sw__item.is-selected{border-color:var(--avt-sw-border-active,#111827);box-shadow:0 0 0 3px var(--avt-sw-ring,rgba(17,24,39,.15))}

/* cor */
.avt-sw__item--color{width:var(--avt-sw-size,40px);height:var(--avt-sw-size,40px);padding:3px}
.avt-sw__dot{display:block;width:100%;height:100%;border-radius:max(0px,calc(var(--avt-sw-radius,4px) - 2px));background:var(--avt-sw-color,#ccc);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
/* imagem */
.avt-sw__item--image{width:var(--avt-sw-size,40px);height:var(--avt-sw-size,40px);padding:2px;overflow:hidden}
.avt-sw__img{display:block;width:100%;height:100%;object-fit:cover;border-radius:max(0px,calc(var(--avt-sw-radius,4px) - 2px))}
/* texto */
.avt-sw__item--label{min-width:var(--avt-sw-size,40px);min-height:var(--avt-sw-size,40px);padding:var(--avt-sw-pad,8px 14px)}
.avt-sw__item--label.is-selected{background:var(--avt-sw-bg-active,#111827);color:var(--avt-sw-text-active,#fff)}
.avt-sw__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* valor escolhido ao lado do nome do atributo */
.avt-sw__current{display:block;min-height:1.3em;margin-top:4px;font-size:13px;line-height:1.3;opacity:.75}

/* combinação indisponível */
.avt-sw__item.is-disabled{cursor:not-allowed;opacity:.45}
.avt-sw__item.is-disabled::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(to top right,transparent calc(50% - 1px),var(--avt-sw-cross,rgba(17,24,39,.55)) 50%,transparent calc(50% + 1px))}
.avt-sw-disabled-blur .avt-sw__item.is-disabled::after{display:none}
.avt-sw-disabled-blur .avt-sw__item.is-disabled{opacity:.35;filter:grayscale(.6)}
.avt-sw-disabled-hide .avt-sw>li:has(.is-disabled){display:none}

/* dica com o nome (só com "Dica com o nome" ligada) */
.avt-sw-tip .avt-sw__item[data-tip]:hover::before,
.avt-sw-tip .avt-sw__item[data-tip]:focus-visible::before{
  content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);z-index:20;white-space:nowrap;pointer-events:none;
  padding:4px 8px;border-radius:4px;background:var(--avt-sw-tip-bg,#111827);color:var(--avt-sw-tip-color,#fff);font-size:12px;line-height:1.3
}
@media (hover:none){.avt-sw-tip .avt-sw__item[data-tip]:hover::before{display:none}}

/* WooCommerce: a tabela de variações usa a largura toda */
.woocommerce div.product form.cart .variations td.value{display:block;width:100%}
.woocommerce div.product form.cart .variations th.label{display:block;padding:0 0 6px}
.woocommerce div.product form.cart .variations tr{display:block;margin-bottom:12px}
.woocommerce div.product form.cart .variations td.value .reset_variations{display:inline-block;margin-top:6px;font-size:13px}

@media (prefers-reduced-motion:reduce){.avt-sw__item{transition:none}.avt-sw__item:active{transform:none}}
