/*
Theme Name: Fabricasul
Theme URI: https://fabricavestuario.com.br
Author: Usmark / Fabio
Description: Tema WooCommerce B2B da Fabricasul — atacado de uniformes e workwear. Design system Stitch: navy #001920 + acento vermelho, tipografia Metropolis/Inter, compra por grade fechada.
Version: 2.6.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: fabricasul
*/

/* ===== Design tokens (Stitch DESIGN.md) ===== */
:root{
  --background:#f9f9fa;
  --surface-lowest:#ffffff; --surface-low:#f4f3f4; --surface:#eeeeee;
  --surface-high:#e8e8e9; --surface-variant:#e2e2e3; --surface-dim:#dadadb;
  --on-surface:#1a1c1d; --on-surface-variant:#41484a;
  --primary:#001920; --primary-container:#002f3a; --on-primary:#ffffff; --on-primary-container:#7197a5;
  --primary-fixed-dim:#a5cddb; --primary-fixed:#c1e9f7;
  --secondary:#bb0013; --secondary-container:#e71520; --on-secondary:#ffffff; --on-secondary-container:#fffbff;
  --secondary-fixed-dim:#ffb4ab;
  --outline:#71787b; --outline-variant:#c1c8cb;
  --error:#ba1a1a;
  --radius:0.25rem; --radius-lg:0.5rem; --radius-full:9999px;
  --sp-base:4px; --sp-xs:8px; --sp-sm:16px; --sp-md:24px; --sp-lg:40px; --sp-xl:64px; --gutter:20px;
  --max:1280px;
  --font-sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --font-display:"Metropolis","Inter",sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--background);color:var(--on-surface);font-family:var(--font-sans);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--primary);margin:0 0 .4em;letter-spacing:-.01em;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.fs-container{max-width:var(--max);margin:0 auto;padding:0 var(--sp-md);}
.fs-wrap{min-height:100vh;display:flex;flex-direction:column;}
.fs-main{flex:1;}

/* Type scale */
.fs-headline{font-family:var(--font-display);font-size:40px;line-height:48px;letter-spacing:-.02em;font-weight:700;}
.fs-headline-lg{font-family:var(--font-display);font-size:24px;line-height:32px;font-weight:600;}
@media(max-width:640px){.fs-headline{font-size:30px;line-height:36px;}}

/* ===== Buttons ===== */
.fs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-display);font-weight:700;
  font-size:14px;padding:.8rem 2rem;border:none;cursor:pointer;border-radius:var(--radius);transition:all .18s ease;}
.fs-btn:active{transform:scale(.96);}
.fs-btn-primary{background:var(--primary-container);color:var(--on-primary);}
.fs-btn-primary:hover{opacity:.9;}
.fs-btn-secondary{background:var(--secondary);color:var(--on-secondary);}
.fs-btn-secondary:hover{background:var(--secondary-container);}
.fs-btn-outline{background:transparent;color:var(--primary);border:1px solid var(--primary);}
.fs-btn-outline:hover{background:var(--primary);color:var(--on-primary);}
.fs-btn-ghost-light{background:transparent;color:var(--on-primary);border:1px solid var(--on-primary);}
.fs-btn-ghost-light:hover{background:var(--on-primary);color:var(--primary);}

/* ===== Header (navy) ===== */
.fs-header{position:sticky;top:0;z-index:50;background:var(--primary);border-bottom:1px solid var(--primary-container);}
.fs-header .fs-container{height:64px;display:flex;align-items:center;justify-content:space-between;}
.fs-header-left{display:flex;align-items:center;gap:var(--sp-lg);}
.fs-logo-word{font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:-.02em;color:var(--on-primary);}
.fs-nav{display:flex;align-items:center;gap:var(--sp-md);}
.fs-nav a{font-size:12px;font-weight:500;color:var(--primary-fixed-dim);transition:color .15s;padding-bottom:2px;}
.fs-nav a:hover{color:var(--on-primary);}
.fs-nav a.active,.fs-nav .current-menu-item>a{color:var(--on-primary);font-weight:700;border-bottom:2px solid var(--secondary-container);}
.fs-header-actions{display:flex;align-items:center;gap:var(--sp-sm);}
.fs-search{position:relative;}
.fs-search input{background:var(--surface-low);color:var(--on-surface);font-size:12px;border:none;border-radius:var(--radius-lg);padding:.5rem 2.2rem .5rem 1rem;width:230px;}
.fs-search .material-symbols-outlined{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--on-surface-variant);font-size:18px;}
.fs-icon-btn{color:var(--on-primary);background:transparent;border:none;cursor:pointer;padding:6px;border-radius:var(--radius-full);display:inline-flex;transition:background .15s;}
.fs-icon-btn:hover{background:var(--primary-container);}
@media(max-width:860px){.fs-nav,.fs-search{display:none;}}

/* ===== Footer (navy) ===== */
.fs-footer{background:var(--primary);border-top:1px solid var(--primary-container);color:var(--on-primary);margin-top:var(--sp-xl);}
.fs-footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-lg);padding:var(--sp-lg) var(--sp-md);}
.fs-footer .brand{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--on-primary);margin-bottom:.5rem;}
.fs-footer .desc{color:var(--primary-fixed-dim);font-size:12px;max-width:22rem;line-height:1.6;}
.fs-footer-cols{display:flex;gap:var(--sp-xl);flex-wrap:wrap;}
.fs-footer h4{color:var(--on-primary);font-family:var(--font-sans);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;margin-bottom:.6rem;}
.fs-footer a{display:block;color:var(--primary-fixed-dim);font-size:12px;margin:.3rem 0;text-decoration:underline;text-underline-offset:2px;}
.fs-footer a:hover{color:var(--on-primary);}
.fs-copy{border-top:1px solid var(--primary-container);padding:var(--sp-sm) var(--sp-md);color:var(--primary-fixed-dim);font-size:12px;opacity:.7;max-width:var(--max);margin:0 auto;}

/* ===== Eyebrow / badge ===== */
.fs-eyebrow{color:var(--secondary);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:12px;}
.fs-badge{background:var(--secondary-container);color:var(--on-secondary);padding:.35rem 1rem;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;width:fit-content;border-radius:var(--radius-lg);}

/* ===== Hero ===== */
.fs-hero{position:relative;overflow:hidden;background:var(--primary);min-height:600px;display:flex;align-items:center;}
.fs-hero-bg{position:absolute;inset:0;z-index:0;opacity:.4;}
.fs-hero-bg img{width:100%;height:100%;object-fit:cover;}
.fs-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,var(--primary),rgba(0,25,32,.7) 55%,transparent);}
.fs-hero-inner{position:relative;z-index:10;display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-lg);padding:var(--sp-xl) 0;width:100%;}
.fs-hero-content{color:var(--on-primary);display:flex;flex-direction:column;justify-content:center;gap:var(--sp-md);}
.fs-hero-content h1{color:var(--on-primary);font-size:clamp(2.2rem,5vw,56px);line-height:1.05;font-weight:700;}
.fs-hero-content p{max-width:32rem;color:var(--primary-fixed-dim);font-size:14px;}
.fs-hero-actions{display:flex;gap:var(--sp-sm);padding-top:.5rem;flex-wrap:wrap;}
@media(max-width:860px){.fs-hero-inner{grid-template-columns:1fr;}}

/* ===== Sections ===== */
.fs-section{padding:var(--sp-xl) 0;}
.fs-section-alt{background:var(--surface);}
.fs-section-head{text-align:center;max-width:42rem;margin:0 auto var(--sp-lg);}
.fs-section-head p{color:var(--on-surface-variant);margin-top:.6rem;}

/* ===== Bento ===== */
.fs-bento{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-md);}
.fs-bento .card{border:1px solid var(--outline-variant);background:var(--surface-lowest);padding:var(--sp-lg);}
.fs-bento .span2{grid-column:span 2;}
.fs-bento .navy{background:var(--primary);color:var(--on-primary);border-color:var(--primary-container);}
.fs-bento .navy h3{color:var(--on-primary);}
.fs-bento .navy p{color:var(--primary-fixed-dim);}
.fs-bento .high{background:var(--surface-high);}
.fs-bento h3{font-family:var(--font-display);font-size:24px;margin:.3rem 0 .6rem;}
.fs-bento p{color:var(--on-surface-variant);font-size:14px;}
.fs-icon-amber{color:var(--secondary);font-size:48px;}
.fs-feature-row{display:flex;flex-wrap:wrap;gap:var(--sp-md);margin-top:var(--sp-lg);}
.fs-feature{display:flex;align-items:center;gap:.4rem;color:var(--primary);font-weight:500;font-size:12px;}
.fs-feature .material-symbols-outlined{color:var(--secondary);}
.fs-bento .split{display:grid;grid-template-columns:1fr 1fr;padding:0;overflow:hidden;}
.fs-bento .split .txt{padding:var(--sp-lg);display:flex;flex-direction:column;justify-content:center;}
.fs-bento .split img{width:100%;height:100%;min-height:250px;object-fit:cover;}
@media(max-width:860px){.fs-bento{grid-template-columns:1fr;}.fs-bento .span2{grid-column:span 1;}.fs-bento .split{grid-template-columns:1fr;}}

/* ===== Grade explainer ===== */
.fs-grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-lg);align-items:center;}
.fs-grade-card{background:var(--surface-lowest);border:1px solid var(--outline-variant);padding:var(--sp-md);}
.fs-grade-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--outline-variant);padding-bottom:.75rem;margin-bottom:1rem;}
.fs-grade-title{font-family:var(--font-display);font-weight:700;font-size:14px;}
.fs-grade-ref{color:var(--secondary);font-size:12px;}
.fs-grade-price{font-size:18px;font-weight:700;color:var(--primary);font-family:var(--font-sans);}
.fs-grade-price small{font-size:.72rem;font-weight:400;color:var(--on-surface-variant);}
.fs-th{display:grid;grid-template-columns:repeat(4,1fr);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant);padding:.4rem;}
.fs-tr{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;padding:.6rem .4rem;border-bottom:1px solid var(--outline-variant);font-size:12px;}
.fs-tr .r{text-align:right;font-weight:700;}
.fs-tr.total{background:var(--primary);color:var(--on-primary);border:none;}
.fs-steps{display:flex;flex-direction:column;gap:var(--sp-lg);}
.fs-step{display:flex;gap:var(--sp-md);}
.fs-step-ic{flex:none;width:48px;height:48px;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);}
.fs-step h4{font-family:var(--font-display);font-size:14px;margin:0 0 .25rem;}
.fs-step p{color:var(--on-surface-variant);font-size:14px;margin:0;}
@media(max-width:860px){.fs-grid2{grid-template-columns:1fr;}}

/* ===== Collection ===== */
.fs-coll-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-md);margin-bottom:var(--sp-lg);flex-wrap:wrap;}
.fs-coll-head p{color:var(--on-surface-variant);margin-top:.5rem;}
.fs-link-amber{color:var(--secondary);font-weight:700;display:inline-flex;align-items:center;gap:.3rem;}
.fs-link-amber:hover{text-decoration:underline;}
.fs-prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter);}
@media(max-width:1024px){.fs-prod-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.fs-prod-grid{grid-template-columns:1fr;}}
.fs-pcard .thumb{aspect-ratio:3/4;overflow:hidden;margin-bottom:.75rem;background:var(--surface-low);}
.fs-pcard .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.fs-pcard:hover .thumb img{transform:scale(1.05);}
.fs-tag{font-size:10px;color:var(--secondary);font-weight:700;text-transform:uppercase;letter-spacing:.14em;}
.fs-pcard h4{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--primary);margin:.15rem 0;text-transform:uppercase;}
.fs-pprice{font-size:18px;font-weight:700;color:var(--primary);}
.fs-pprice small{font-size:.72rem;font-weight:400;color:var(--on-surface-variant);}

/* ===== CTA ===== */
.fs-cta{background:var(--primary);padding:var(--sp-xl) 0;text-align:center;border-top:1px solid var(--primary-container);}
.fs-cta h2{color:var(--on-primary);max-width:42rem;margin:0 auto .6rem;}
.fs-cta p{color:var(--primary-fixed-dim);max-width:32rem;margin:0 auto var(--sp-lg);}

.material-symbols-outlined{font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;vertical-align:middle;font-size:20px;}

/* ===== WooCommerce ===== */
.woocommerce .fs-shop-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-md);margin:var(--sp-lg) 0;flex-wrap:wrap;}
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(4,1fr);gap:var(--gutter);margin:0;padding:0;list-style:none;}
@media(max-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr;}}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;background:var(--surface-lowest);border:1px solid var(--outline-variant);padding:var(--sp-sm);transition:border-color .18s;text-align:center;display:flex;flex-direction:column;border-radius:var(--radius);}
.woocommerce ul.products li.product:hover{border-color:var(--primary);}
.woocommerce ul.products li.product a img{aspect-ratio:3/4;object-fit:cover;margin-bottom:.75rem;background:#fff;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--font-display);font-size:14px;font-weight:700;text-transform:uppercase;color:var(--primary);line-height:1.25;min-height:2.5em;padding:0;}
.woocommerce ul.products li.product .fs-sku{font-size:10px;color:var(--outline);}
.woocommerce ul.products li.product .price{color:var(--primary) !important;font-size:18px;font-weight:700;font-family:var(--font-sans);}
.woocommerce ul.products li.product .fs-grade-tag{font-size:12px;color:var(--secondary);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:.25rem 0;}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.woocommerce ul.products li.product .price del{color:var(--on-surface-variant);font-size:.9rem;}
/* buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce .single_add_to_cart_button,.woocommerce a.button.alt,.woocommerce button.button.alt{
  background:var(--primary-container) !important;color:var(--on-primary) !important;border-radius:var(--radius) !important;font-family:var(--font-display);font-weight:700 !important;text-transform:uppercase;letter-spacing:.02em;padding:.7rem 1.5rem !important;transition:opacity .18s;}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .single_add_to_cart_button:hover,.woocommerce button.button.alt:hover{opacity:.9;}
.woocommerce ul.products li.product .button{margin-top:auto;width:100%;}
.woocommerce .products .star-rating{margin:0 auto .3rem;}
/* category label red */
.woocommerce ul.products li.product .fs-cat{font-size:12px;color:var(--secondary);font-weight:700;text-transform:uppercase;letter-spacing:.02em;}
/* single product */
.woocommerce div.product .product_title{font-family:var(--font-display);font-size:24px;color:var(--primary);}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--primary);font-family:var(--font-sans);font-size:18px;font-weight:700;}
.woocommerce div.product p.price small{font-size:.72rem;color:var(--on-surface-variant);}
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--on-surface-variant);margin-bottom:var(--sp-md);}
.woocommerce .woocommerce-breadcrumb a{color:var(--on-surface-variant);}
.fs-grade-box{border:1px solid var(--outline-variant);background:var(--surface-lowest);padding:1rem;margin:1rem 0;border-radius:var(--radius);}
.fs-grade-box .fs-eyebrow{display:block;margin-bottom:.5rem;}
.fs-grade-comp{display:flex;gap:.5rem;flex-wrap:wrap;}
.fs-grade-chip{border:1px solid var(--outline-variant);padding:.35rem .75rem;font-size:12px;font-weight:600;border-radius:2px;}
.fs-grade-chip b{color:var(--secondary);}
.fs-grade-note{font-size:.72rem;color:var(--on-surface-variant);font-style:italic;margin-top:.6rem;}
.woocommerce span.onsale{background:var(--secondary);color:var(--on-secondary);border-radius:2px;}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--secondary);}
/* variation swatches / forms */
.woocommerce div.product form.cart .button{background:var(--primary-container) !important;}
.woocommerce table.shop_table,.woocommerce .cart-collaterals .cart_totals table{border-radius:var(--radius);}

/* ===== Header logo/nav safety ===== */
.fs-header .custom-logo-link,.fs-header .custom-logo{display:none !important;}
.fs-logo-word img{max-height:36px;width:auto;display:block;}
.fs-header .fs-container{gap:var(--sp-md);}
.fs-nav{flex-wrap:nowrap;}
.fs-nav a{white-space:nowrap;}
.fs-search input{width:200px;}
@media(max-width:1024px){.fs-search input{width:150px;}}

/* ===== Preço do produto em vermelho (override ShopEngine) ===== */
.single-product .price,
.single-product .price .amount,
.single-product .woocommerce-Price-amount,
.woocommerce div.product .price,
.woocommerce div.product .price .amount,
.single-product [class*="shopengine"] .price,
.single-product [class*="shopengine"] .amount,
.single-product [class*="ekit"] .price,
.single-product [class*="price"] .woocommerce-Price-amount{
  color:var(--secondary) !important;
}
.single-product .price small,
.woocommerce div.product .price small{ color:var(--on-surface-variant) !important; }

/* ===== Catálogo: card com grade ===== */
.woocommerce ul.products li.product{ text-align:left; padding:16px; display:flex; flex-direction:column; }
.fs-card-thumb{ display:block; aspect-ratio:3/4; background:#fff; overflow:hidden; margin-bottom:12px; }
.fs-card-thumb img{ width:100%; height:100%; object-fit:contain; }
.fs-card-head{ text-align:center; margin-bottom:12px; }
.fs-card-title{ font-family:var(--font-display); font-size:14px; font-weight:700; text-transform:uppercase; color:var(--primary); line-height:1.25; margin:0 0 4px; min-height:2.5em; }
.fs-card-sku{ font-size:10px; color:var(--outline); margin-bottom:4px; }
.fs-card-cat{ font-size:12px; color:var(--secondary); font-weight:700; text-transform:uppercase; letter-spacing:.02em; margin-bottom:4px; }
.fs-card-price{ font-size:18px; font-weight:700; color:var(--primary); font-family:var(--font-sans); }
.fs-card-price .amount,.fs-card-price bdi{ color:var(--primary); }
.fs-card-price small{ font-size:11px; color:var(--on-surface-variant); font-weight:400; }
/* grade table */
.fs-grade-form{ border-top:1px solid var(--outline-variant); padding-top:12px; margin-top:auto; }
.fs-gt-head{ display:grid; grid-template-columns:1fr 56px 96px; gap:8px; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:var(--outline); border-bottom:1px solid var(--outline-variant); padding-bottom:6px; margin-bottom:2px; }
.fs-gt-head .c{ text-align:center; } .fs-gt-head .r{ text-align:right; }
.fs-gt-row{ display:grid; grid-template-columns:1fr 56px 96px; gap:8px; align-items:center; padding:7px 0; border-bottom:1px solid var(--outline-variant); }
.fs-gt-color{ display:flex; align-items:center; gap:8px; font-size:12px; color:var(--on-surface); }
.fs-swatch{ width:14px; height:14px; border-radius:3px; border:1px solid var(--outline-variant); flex:none; }
.fs-gt-stock{ font-size:12px; color:var(--outline); text-align:center; }
.fs-gt-qty{ display:flex; align-items:center; justify-content:flex-end; }
.fs-gt-qty .fs-stp{ width:24px; height:26px; background:#fff; color:var(--primary); cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:15px; line-height:1; border:1px solid var(--outline-variant); }
.fs-gt-qty .fs-stp:hover{ background:var(--surface-variant); }
.fs-gt-qty input{ width:34px; height:26px; text-align:center; border-top:1px solid var(--outline-variant); border-bottom:1px solid var(--outline-variant); border-left:none; border-right:none; font-size:12px; padding:0; -moz-appearance:textfield; background:#fff; }
.fs-gt-qty input::-webkit-outer-spin-button,.fs-gt-qty input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.fs-add{ margin-top:16px; width:100%; display:flex; align-items:center; justify-content:center; gap:8px; background:var(--primary-container); color:var(--on-primary); border:none; cursor:pointer; font-family:var(--font-display); font-weight:700; text-transform:uppercase; letter-spacing:.03em; font-size:13px; padding:12px; border-radius:var(--radius-full); transition:opacity .18s; text-decoration:none; }
.fs-add:hover{ opacity:.9; color:var(--on-primary); }
.fs-add .material-symbols-outlined{ font-size:18px; }
/* shop head */
.fs-shop-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin:8px 0 24px; flex-wrap:wrap; }
.fs-shop-title{ font-family:var(--font-display); font-size:24px; color:var(--primary); margin:0 0 4px; }
.fs-shop-sub{ color:var(--secondary); font-size:14px; margin:0; }
.fs-shop-tools{ display:flex; gap:8px; }
.fs-tool{ display:inline-flex; align-items:center; gap:6px; border:1px solid var(--outline); background:#fff; color:var(--primary); font-size:12px; font-weight:500; padding:8px 14px; border-radius:var(--radius); cursor:pointer; }
.fs-tool:hover{ background:var(--surface-container); }
.fs-tool .material-symbols-outlined{ font-size:18px; }
/* esconder título/contagem padrão do Woo; ordenação revelada via botão */
.woocommerce-products-header{ display:none; }
.woocommerce .woocommerce-result-count{ display:none; }
.woocommerce .woocommerce-ordering{ display:none; margin:0 0 16px; }
body.fs-order-open .woocommerce .woocommerce-ordering{ display:block; }

/* ===== Painel de filtros ===== */
.fs-filter-panel{ background:var(--surface-lowest); border:1px solid var(--outline-variant); border-radius:var(--radius); padding:16px; margin:0 0 24px; }
.fs-filter-panel[hidden]{ display:none; }
.fs-filter-group{ display:flex; align-items:flex-start; gap:12px; padding:8px 0; flex-wrap:wrap; }
.fs-filter-group + .fs-filter-group{ border-top:1px solid var(--outline-variant); }
.fs-filter-label{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--outline); min-width:80px; padding-top:6px; }
.fs-chips{ display:flex; flex-wrap:wrap; gap:8px; flex:1; }
.fs-chip{ display:inline-flex; align-items:center; gap:6px; border:1px solid var(--outline-variant); background:#fff; color:var(--primary); font-size:12px; padding:6px 12px; border-radius:var(--radius-full); cursor:pointer; transition:all .15s; }
.fs-chip:hover{ border-color:var(--primary); }
.fs-chip.on{ background:var(--primary); color:var(--on-primary); border-color:var(--primary); }
.fs-chip .fs-swatch{ width:12px; height:12px; }
.fs-filter-clear{ display:inline-block; margin-top:8px; font-size:12px; color:var(--secondary); font-weight:600; text-decoration:underline; }

/* ===== Correção topo: wordmark branco + nav bar grounded ===== */
.fs-header{ background:var(--primary-container) !important; }
.fs-header a.fs-logo-word,.fs-header .fs-logo-word{ color:#ffffff !important; }
.fs-header .fs-nav a{ color:var(--primary-fixed-dim); }
.fs-header .fs-nav a:hover,.fs-header .fs-nav a.active,.fs-header .fs-nav .current-menu-item>a{ color:#ffffff; }

/* ===== Correção de cor de texto dos botões (override de link global) ===== */
a.fs-btn-primary,.fs-btn-primary{ color:var(--on-primary) !important; }
a.fs-btn-secondary,.fs-btn-secondary{ color:var(--on-secondary) !important; }
a.fs-btn-outline,.fs-btn-outline{ color:var(--primary) !important; }
a.fs-btn-ghost-light,.fs-btn-ghost-light{ color:#ffffff !important; border-color:#ffffff !important; }
a.fs-btn-ghost-light:hover,.fs-btn-ghost-light:hover{ color:var(--primary) !important; background:#ffffff !important; }
.fs-btn-outline:hover{ color:var(--on-primary) !important; }

/* ===== 4 colunas por fileira (força sobre customizer/plugins) ===== */
.woocommerce ul.products{ grid-template-columns:repeat(4,1fr) !important; }
@media(max-width:1024px){ .woocommerce ul.products{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:560px){ .woocommerce ul.products{ grid-template-columns:1fr !important; } }
/* ===== Menu Ordenar ===== */
.fs-order-wrap{ position:relative; }
.fs-order-menu{ position:absolute; right:0; top:calc(100% + 6px); background:#fff; border:1px solid var(--outline-variant); border-radius:var(--radius); box-shadow:0 8px 24px rgba(0,0,0,.10); min-width:180px; z-index:40; padding:6px; }
.fs-order-menu[hidden]{ display:none; }
.fs-order-menu a{ display:block; padding:8px 12px; font-size:13px; color:var(--primary); border-radius:4px; }
.fs-order-menu a:hover{ background:var(--surface-container); }
.fs-order-menu a.on{ background:var(--primary); color:#fff; }

/* ===== Remover clearfix ::before/::after que ocupava a 1ª célula do grid ===== */
.woocommerce ul.products::before,.woocommerce ul.products::after{ content:"" !important; display:none !important; }

/* ===== Carrinho no topo (visível + badge) ===== */
.fs-header .fs-icon-btn,.fs-header a.fs-icon-btn{ color:#ffffff !important; position:relative; }
.fs-header .fs-icon-btn .material-symbols-outlined{ color:#ffffff !important; font-size:24px; }
.fs-cart-count{ position:absolute; top:-2px; right:-4px; background:var(--secondary-container); color:#fff; font-size:10px; font-weight:700; min-width:16px; height:16px; padding:0 4px; border-radius:999px; display:flex; align-items:center; justify-content:center; line-height:1; }
