/* CLENA Storefront Pro • 2026-10-19
   Camada compartilhada da vitrine, produto e checkout.
   Preserva appearance_settings, IDs, classes funcionais e regras de pagamento.
*/
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]){
  --clp-stroke:color-mix(in srgb,var(--text,#182235) 12%,var(--card,#fff));
  --clp-stroke-strong:color-mix(in srgb,var(--text,#182235) 20%,var(--card,#fff));
  --clp-wash:color-mix(in srgb,var(--bg,#f7f9fc) 76%,var(--card,#fff));
  --clp-chip:color-mix(in srgb,var(--primary,#2563eb) 9%,var(--card,#fff));
  --clp-soft-shadow:0 4px 20px rgba(12,25,48,.055);
  --clp-card-shadow:0 8px 28px rgba(12,25,48,.075);
  color:var(--text,#182235);background:var(--bg,#f7f9fc);
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *,
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *::before,
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *::after{box-sizing:border-box}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(button,a,input,select,textarea):focus-visible{
  outline:2px solid var(--primary,#2563eb)!important;outline-offset:3px;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(button,a,[role=button]){touch-action:manipulation}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(button,input,select,textarea){max-width:100%}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) button:disabled{cursor:not-allowed;opacity:.58}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(.site-header,.store-header){
  min-width:0;isolation:isolate;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .header-inner{
  min-width:0;gap:clamp(9px,2vw,18px);
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand{
  min-width:0;max-width:100%;gap:10px;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-copy{min-width:0}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-copy strong{
  display:block;max-width:clamp(140px,27vw,370px);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.28;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-copy small{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-logo img{
  max-width:100%;object-fit:var(--logo-fit,contain);
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(.icon-btn,.share-btn){
  display:grid;place-items:center;min-width:40px;min-height:40px;
  color:var(--text,#182235);background:var(--card,#fff);
  border:1px solid var(--clp-stroke);
  box-shadow:none;
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(.icon-btn,.share-btn,.back-link):hover{
  border-color:var(--clp-stroke-strong);
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(.site-header,.store-header,.panel,.media-panel,.info-panel){
  color:var(--text,#182235);
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(input,textarea,select){
  color:var(--text,#182235);accent-color:var(--primary,#2563eb);
}
:is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(input,textarea)::placeholder{
  color:var(--muted,#69758a);opacity:.86;
}
@media(hover:hover) and (pointer:fine){
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(button,a){transition-duration:.18s}
}

/* VITRINE - carrega o layout configurado no editor, sem grade fixa em seis colunas. */
body[data-clena-storefront] .shell{
  min-width:0;
  max-width:1360px!important;
  width:min(1360px,calc(100% - clamp(24px,4.6vw,88px)))!important;
  margin-inline:auto;
}
body[data-clena-storefront] .header-inner{
  height:clamp(58px,5vw,72px);gap:14px;
}
body[data-clena-storefront] .header-actions{flex:0 0 auto;gap:8px;min-width:0}
body[data-clena-storefront] .icon-btn{
  width:clamp(40px,3.3vw,44px);height:clamp(40px,3.3vw,44px);border-radius:12px;
}
body[data-clena-storefront] .brand-copy strong{
  font-size:clamp(13px,1.1vw,16px)!important;
}
body[data-clena-storefront] .hero:not([data-ignore-layout]){
  /* A altura salva no editor é a fonte da verdade. */
  height:var(--hero-height,320px)!important;max-height:none!important;
  min-height:0!important;
}
body[data-clena-storefront][data-cover-ratio]:not([data-cover-ratio="auto"]) .hero{
  width:100%;height:auto!important;aspect-ratio:var(--hero-ratio,16/9)!important;
  min-height:0!important;max-height:none!important;
}
body[data-clena-storefront][data-cover-width="contained"] .hero{
  width:min(1360px,calc(100% - clamp(24px,4.6vw,88px)))!important;
  max-width:1360px!important;margin-inline:auto!important;
}
body[data-clena-storefront] .hero-inner{
  min-height:100%!important;height:100%!important;
  padding:clamp(24px,3.5vw,54px) 0!important;
  align-items:flex-end;
}
body[data-clena-storefront] .hero-copy{max-width:min(650px,88vw);min-width:0}
body[data-clena-storefront] .hero-title{
  font-size:clamp(29px,3.6vw,61px)!important;
  line-height:1.03!important;letter-spacing:-.04em;overflow-wrap:anywhere;
}
body[data-clena-storefront] .hero-subtitle{
  margin-top:9px!important;max-width:600px;
  font-size:clamp(12px,.95vw,15px)!important;line-height:1.5!important;
}
body[data-clena-storefront] .hero-kicker{
  font-size:clamp(10px,.75vw,12px)!important;margin-bottom:8px!important;
}
body[data-clena-storefront] .hero-actions{margin-top:15px!important}
body[data-clena-storefront] .primary-action{
  min-height:43px;padding:9px 17px;border-radius:var(--button-radius,11px);
  font-size:12px!important;
}
body[data-clena-storefront] .hero-media :is(img,video){
  width:100%;height:100%;object-fit:var(--cover-fit,cover);object-position:var(--cover-position,center);
}
body[data-clena-storefront] :is(.catalog,.featured-section,.store-info-strip){
  min-width:0;max-width:1360px!important;
}
body[data-clena-storefront] :is(.featured-section,.catalog){margin-block:0!important}
body[data-clena-storefront] .store-info-strip{
  gap:10px!important;margin-top:clamp(14px,2.2vw,26px)!important;
  margin-bottom:clamp(14px,2.2vw,25px)!important;
}
body[data-clena-storefront] .store-info-item{
  min-width:0;gap:9px;padding:11px 13px;
  background:var(--card,#fff);
  border:1px solid var(--clp-stroke);border-radius:14px;
}
body[data-clena-storefront] .store-info-item :is(strong,small){overflow-wrap:anywhere}
body[data-clena-storefront] .store-info-item small{color:var(--muted)}
body[data-clena-storefront] .catalog-heading,
body[data-clena-storefront] .featured-head{margin-bottom:14px!important;min-width:0;gap:12px}
body[data-clena-storefront] :is(.catalog-heading,.featured-head) h2{
  margin:0;font-size:clamp(20px,2vw,29px)!important;
  line-height:1.18!important;letter-spacing:-.035em;
}
body[data-clena-storefront] :is(.catalog-heading,.featured-head) p{color:var(--muted);font-size:12px!important}
body[data-clena-storefront] .catalog-tools{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,235px)!important;
  align-items:center;gap:10px!important;min-width:0;
  margin-bottom:8px!important;
}
body[data-clena-storefront][data-show-search="0"] .catalog-tools{
  grid-template-columns:minmax(150px,235px)!important;justify-content:end!important;
}
body[data-clena-storefront] :is(.search-control,.sort-control){min-width:0;max-width:100%;height:43px!important}
body[data-clena-storefront] :is(.search-control input,.sort-control select){
  width:100%;height:100%;min-width:0;color:var(--text);font-size:13px!important;
}
body[data-clena-storefront] .categories-wrap{min-width:0;padding-top:10px!important}
body[data-clena-storefront] .categories{gap:7px!important;padding-bottom:13px!important;scroll-padding-inline:8px}
body[data-clena-storefront] .category-btn{
  min-height:37px!important;font-size:11px!important;
  padding:7px 13px!important;
  border-color:var(--clp-stroke);
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid){
  display:grid!important;grid-template-columns:repeat(var(--product-columns,3),minmax(0,1fr))!important;
  align-items:stretch!important;gap:clamp(10px,1.25vw,17px)!important;
  min-width:0;
}
body[data-clena-storefront] #featuredGrid{grid-template-columns:repeat(var(--featured-columns,3),minmax(0,1fr))!important}
body[data-clena-storefront][data-product-layout="list"] #productGrid{grid-template-columns:minmax(0,1fr)!important}
body[data-clena-storefront] :is(#productGrid,#featuredGrid)>.clena-share-card{
  min-width:0;min-height:0;
  display:flex;flex-direction:column;position:relative;
  overflow:hidden;border:1px solid var(--clp-stroke)!important;
  border-radius:var(--card-radius,13px)!important;
  background:var(--card,#fff)!important;
  box-shadow:var(--clp-soft-shadow);
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid)>.clena-share-card>.product-card{
  display:flex!important;flex:1 0 auto;flex-direction:column;min-height:0;max-width:100%;
  background:transparent;border:0!important;border-radius:0!important;box-shadow:none!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-image{
  width:100%;flex:0 0 auto;aspect-ratio:var(--product-ratio,1/1);
  overflow:hidden;border:0;background:var(--clp-wash);
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-image img{
  width:100%;height:100%;object-fit:cover;display:block;transform:translateZ(0);
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-copy{
  flex:1;display:flex;flex-direction:column;min-width:0;
  padding:clamp(9px,1vw,15px)!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-card h3{
  color:var(--text);font-size:clamp(12px,.9vw,15px)!important;
  line-height:1.38!important;font-weight:750;min-height:2.76em;
  text-align:start!important;text-align-last:auto!important;
  letter-spacing:-.015em;hyphens:auto;
}
body[data-clena-storefront][data-product-align="center"] :is(#productGrid,#featuredGrid) .product-card h3{text-align:center!important}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-desc{
  font-size:11px!important;line-height:1.42!important;color:var(--muted);
  margin:3px 0 9px!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-bottom{
  margin-top:auto;gap:8px;align-items:end;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-price strong{
  color:var(--text);font-size:clamp(12px,1.04vw,17px)!important;line-height:1.25;
  white-space:normal;overflow-wrap:anywhere;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-price small{font-size:11px!important}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-open{
  width:30px;height:30px;flex:0 0 30px;font-size:15px;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-variation{
  min-width:0;padding:0 clamp(8px,1vw,14px) 7px!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-size-options{gap:5px!important}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-size-option{
  display:inline-flex;min-width:36px!important;min-height:35px!important;
  padding:6px 9px!important;border-radius:9px!important;
  background:var(--card,#fff)!important;color:var(--text,#17243b)!important;
  border:1px solid var(--clp-stroke-strong)!important;font-size:11px!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-size-option.is-selected{
  background:var(--primary,#2563eb)!important;color:#fff!important;border-color:var(--primary,#2563eb)!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-purchase{
  min-width:0;flex:0 0 auto;display:flex;align-items:center;flex-wrap:nowrap!important;
  gap:7px!important;padding:8px clamp(8px,1vw,14px) 12px!important;margin:0!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity{
  height:39px!important;min-width:0;
  border:1px solid var(--clp-stroke-strong)!important;
  border-radius:10px!important;background:var(--card,#fff)!important;color:var(--text,#18243d)!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity button{
  min-height:38px!important;width:28px!important;min-width:26px!important;
  color:var(--text,#18243d)!important;background:transparent!important;
}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity span{min-width:18px!important;font-size:12px!important}
body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-add{
  flex:1 1 auto!important;min-width:0!important;height:39px!important;
  padding:6px 7px!important;font-size:11px!important;font-weight:800;
  background:var(--primary,#2563eb);color:#fff;
  border-radius:var(--button-radius,10px);
}
body[data-clena-storefront] .clena-share-card-btn{
  top:10px;right:10px;display:grid;place-items:center;
  width:34px;height:34px;border-radius:11px;
  background:color-mix(in srgb,var(--card,#fff) 94%,transparent)!important;
  color:var(--text,#18243d)!important;
  border:1px solid var(--clp-stroke)!important;
}
body[data-clena-storefront][data-product-layout="list"] #productGrid>.clena-share-card>.product-card{
  display:grid!important;grid-template-columns:clamp(120px,19vw,205px) minmax(0,1fr)!important;
  align-items:stretch;
}
body[data-clena-storefront][data-product-layout="list"] #productGrid .product-image{height:100%;aspect-ratio:1/1}
body[data-clena-storefront][data-product-layout="list"] #productGrid .product-copy{padding:clamp(12px,1.5vw,20px)!important}
body[data-clena-storefront] :is(.featured-section,.gallery-section){min-width:0}
body[data-clena-storefront] .gallery-item{min-width:0;overflow:hidden;border-radius:var(--card-radius,13px)}
body[data-clena-storefront] .gallery-media img,
body[data-clena-storefront] .gallery-media video{max-width:100%;width:100%;height:100%;object-fit:var(--gallery-fit,cover)}
body[data-clena-storefront] .slot:has(.banner-stage) .slot-inner.shell{
  width:min(1360px,calc(100% - clamp(24px,4.6vw,88px)))!important;
  max-width:1360px!important;
  padding:clamp(10px,1.6vw,21px) 0 0!important;
}
body[data-clena-storefront] .banner-stage.mode-carousel{overflow:hidden!important;padding:9px 0 13px!important}
body[data-clena-storefront] .banner-stage.mode-carousel .banner-item{
  height:auto!important;min-height:0!important;
  aspect-ratio:var(--clp-banner-ratio,16/7)!important;
  max-height:none!important;
  background:var(--card,#fff);
}
body[data-clena-storefront] .banner-stage.mode-carousel .banner-item :is(img,video){
  width:100%!important;height:100%!important;
  object-fit:var(--banner-fit,contain)!important;
  object-position:var(--banner-position,center)!important;
}
body[data-clena-storefront] .banner-copy{min-width:0;max-width:100%;overflow-wrap:anywhere}
body[data-clena-storefront] .banner-copy h2{font-size:clamp(16px,2vw,26px)!important;line-height:1.25}
body[data-clena-storefront] .banner-copy p{font-size:clamp(11px,1vw,14px)!important;line-height:1.5}
body[data-clena-storefront] .product-viewer-card{
  width:min(1120px,calc(100vw - 36px))!important;
  max-width:1120px!important;max-height:min(90dvh,900px)!important;
  border:1px solid var(--clp-stroke);
  border-radius:19px!important;background:var(--card,#fff);
}
body[data-clena-storefront] .product-viewer-body{min-width:0;overscroll-behavior:contain}
body[data-clena-storefront] .product-viewer-stage{
  background:var(--clp-wash);border-radius:13px;overflow:hidden;
}
body[data-clena-storefront] .product-viewer-stage :is(img,video){object-fit:contain!important}
body[data-clena-storefront] .product-viewer-info{min-width:0}
body[data-clena-storefront] .product-viewer-info h2{font-size:clamp(21px,2vw,29px)!important;line-height:1.2!important;overflow-wrap:anywhere}
body[data-clena-storefront] .product-viewer-body .clena-size-option{
  background:var(--card,#fff)!important;color:var(--text,#18243d)!important;
  border:1px solid var(--clp-stroke-strong)!important;
}
body[data-clena-storefront] .product-viewer-body .clena-size-option.is-selected{
  background:var(--primary,#2563eb)!important;color:#fff!important;border-color:var(--primary,#2563eb)!important;
}
body[data-clena-storefront] .clena-reviews{min-width:0}
body[data-clena-storefront] .clena-review-card{min-width:0;overflow-wrap:anywhere}
body[data-clena-storefront] :is(.floating-action,.back-top){max-width:calc(100vw - 24px)}

/* DETALHE DO PRODUTO - mesma tipografia, cores e linguagem dos temas. */
body[data-clena-product] .shell,
body[data-clena-cart] .shell{
  width:min(1240px,calc(100% - clamp(24px,4.5vw,80px)))!important;
  max-width:1240px!important;margin-inline:auto;
}
body[data-clena-product] .header-inner,
body[data-clena-cart] .header-inner{height:clamp(60px,5vw,72px);gap:13px}
body[data-clena-product] .page,
body[data-clena-cart] .page{padding-top:clamp(14px,2.4vw,29px)!important;padding-bottom:48px}
body[data-clena-product] .back-row{margin-bottom:14px!important}
body[data-clena-product] .back-link,
body[data-clena-cart] .back-link{
  min-height:41px;padding:9px 13px;font-size:12px!important;
  background:var(--card,#fff);color:var(--text);
  border:1px solid var(--clp-stroke);border-radius:11px;
}
body[data-clena-product] .product-layout{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr)!important;
  gap:clamp(15px,2.4vw,30px)!important;align-items:start;min-width:0;
}
body[data-clena-product] .media-panel,
body[data-clena-product] .info-panel{
  min-width:0;max-width:100%;border-radius:var(--radius,14px);
  border:1px solid var(--clp-stroke);background:var(--card,#fff);
  box-shadow:var(--clp-soft-shadow);
}
body[data-clena-product] .media-panel{top:20px!important;padding:clamp(9px,1.15vw,15px)!important}
body[data-clena-product] .main-media{
  width:100%;aspect-ratio:var(--clp-product-ratio,1/1);
  border-radius:calc(var(--radius,12px) - 2px);
  background:var(--clp-wash);
}
body[data-clena-product] .main-media :is(img,video){
  width:100%;height:100%;object-fit:contain;max-height:100%;
}
body[data-clena-product] .thumbs{gap:7px;margin-top:9px;grid-template-columns:repeat(5,minmax(0,1fr))}
body[data-clena-product] .thumb{border-radius:10px;border-color:var(--clp-stroke)}
body[data-clena-product] .thumb.active{border-color:var(--primary)}
body[data-clena-product] .info-panel{padding:clamp(16px,2.3vw,30px)!important}
body[data-clena-product] #productName{
  margin:8px 0 12px;font-size:clamp(22px,2.55vw,36px)!important;
  line-height:1.18!important;letter-spacing:-.035em;overflow-wrap:anywhere;
}
body[data-clena-product] .description{font-size:13px!important;line-height:1.65!important;color:var(--muted)}
body[data-clena-product] .price strong{color:var(--text);font-size:clamp(22px,2.6vw,34px)!important}
body[data-clena-product] .meta-strip{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px;
}
body[data-clena-product] .meta-card{
  min-width:0;padding:10px!important;border-radius:11px!important;
  background:var(--clp-wash)!important;border:1px solid var(--clp-stroke)!important;
}
body[data-clena-product] .meta-card strong{overflow-wrap:anywhere;font-size:12px!important;color:var(--text)}
body[data-clena-product] .meta-card small{font-size:10px;color:var(--muted)}
body[data-clena-product] .section-title{font-size:12px!important;margin:14px 0 8px!important}
body[data-clena-product] .options{gap:7px}
body[data-clena-product] .option{min-height:40px;border-radius:10px;background:var(--card);color:var(--text)}
body[data-clena-product] .note{
  min-height:65px!important;padding:11px 12px;font-size:13px!important;
  border-radius:12px;border:1px solid var(--clp-stroke-strong);
  background:var(--card);color:var(--text);
}
body[data-clena-product] .buy-box{display:flex;align-items:stretch;gap:9px;min-width:0;margin-top:14px}
body[data-clena-product] .qty{
  min-height:47px;border:1px solid var(--clp-stroke-strong);
  background:var(--card);color:var(--text);border-radius:11px;
}
body[data-clena-product] .qty button{min-height:44px;min-width:40px;color:var(--text);background:transparent}
body[data-clena-product] .qty strong{min-width:24px}
body[data-clena-product] .add-btn{
  min-height:47px!important;flex:1;min-width:0;padding:9px 13px!important;
  font-size:13px!important;border-radius:var(--button-radius,11px);
}
body[data-clena-product] .recommend{margin-top:26px;padding-top:18px;border-color:var(--clp-stroke)}
body[data-clena-product] .recommend-head h2{font-size:clamp(18px,1.7vw,23px)!important}
body[data-clena-product] .recommend-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
body[data-clena-product] .rec{min-width:0;background:var(--card);border:1px solid var(--clp-stroke);border-radius:var(--radius,12px)}
body[data-clena-product] .rec :is(img,video){max-width:100%}
body[data-clena-product] .media-lightbox-stage{max-width:100%;overflow:hidden}

/* CARRINHO - layout enxuto, passos separados, preço e PIX sem sobreposição. */
body[data-clena-cart] .page-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:13px;margin-bottom:16px!important;min-width:0;
}
body[data-clena-cart] .page-head>div{min-width:0}
body[data-clena-cart] .page-head h1{
  font-size:clamp(22px,2.5vw,31px)!important;
  letter-spacing:-.04em;line-height:1.18;
}
body[data-clena-cart] .page-head p{font-size:12px!important;line-height:1.5;color:var(--muted)}
body[data-clena-cart] .layout{
  display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(345px,.88fr)!important;
  align-items:start;gap:clamp(13px,2vw,25px)!important;min-width:0;
}
body[data-clena-cart] .layout>.panel{min-width:0}
body[data-clena-cart] .panel{
  border:1px solid var(--clp-stroke);border-radius:var(--radius,16px);
  background:var(--card);box-shadow:var(--clp-soft-shadow);
  overflow:hidden;
}
body[data-clena-cart] .panel-head{
  padding:15px clamp(13px,1.6vw,20px)!important;
  border-bottom:1px solid var(--clp-stroke)!important;
}
body[data-clena-cart] .panel-head h2{font-size:clamp(14px,1.1vw,17px)!important;line-height:1.25}
body[data-clena-cart] .panel-head p{font-size:11px!important;line-height:1.45!important;color:var(--muted)}
body[data-clena-cart] .items{padding:0 clamp(12px,1.6vw,20px)!important}
body[data-clena-cart] .item{
  min-width:0;padding:14px 0!important;gap:12px!important;
  border-bottom:1px solid var(--clp-stroke)!important;
}
body[data-clena-cart] .item-media{
  width:clamp(68px,7vw,92px)!important;height:clamp(76px,8vw,105px)!important;
  border-radius:11px!important;flex:0 0 auto;
  background:var(--clp-wash);
}
body[data-clena-cart] .item-media img{width:100%;height:100%;object-fit:cover}
body[data-clena-cart] .item-main{min-width:0}
body[data-clena-cart] .item-main h3{font-size:clamp(13px,1vw,15px)!important;line-height:1.35!important;overflow-wrap:anywhere}
body[data-clena-cart] .item-main :is(p,small){color:var(--muted)}
body[data-clena-cart] .item-bottom{gap:9px!important;flex-wrap:wrap}
body[data-clena-cart] .resume-strip{
  margin:0 clamp(12px,1.6vw,20px) clamp(12px,1.6vw,20px)!important;
  border:1px solid var(--clp-stroke);border-radius:12px;
  background:var(--clp-wash)!important;padding:12px 13px!important;
}
body[data-clena-cart] .checkout{
  min-width:0;position:sticky;top:14px;
  max-height:calc(100dvh - 28px);overflow-y:auto;overscroll-behavior:contain;
}
body[data-clena-cart] .checkout-body{padding:clamp(13px,1.6vw,20px)!important}
body[data-clena-cart] .step{padding-bottom:16px!important;margin-bottom:16px!important;border-color:var(--clp-stroke)}
body[data-clena-cart] .step-head{margin-bottom:12px!important;gap:9px}
body[data-clena-cart] .step-number{
  width:30px!important;height:30px!important;min-width:30px;border-radius:9px;
  background:var(--clp-chip)!important;color:var(--primary)!important;
}
body[data-clena-cart] .step-head strong{font-size:13px!important;line-height:1.3;color:var(--text)}
body[data-clena-cart] .step-head small{font-size:11px!important;color:var(--muted)}
body[data-clena-cart] .fields{gap:10px!important}
body[data-clena-cart] .field{min-width:0}
body[data-clena-cart] .field>span{font-size:11px!important;letter-spacing:.025em;color:var(--muted)}
body[data-clena-cart] .field input,
body[data-clena-cart] .field textarea,
body[data-clena-cart] .field select{
  min-height:42px!important;width:100%;border-radius:10px;
  border:1px solid var(--clp-stroke-strong)!important;
  background:var(--card)!important;color:var(--text)!important;
}
body[data-clena-cart] .field textarea{min-height:76px!important}
body[data-clena-cart] .totals{margin-top:13px!important}
body[data-clena-cart] .total-row{gap:8px}
body[data-clena-cart] .total-row.total{
  border-top:1px solid var(--clp-stroke);padding-top:12px!important;
}
body[data-clena-cart] .total-row.total strong{font-size:clamp(19px,1.5vw,24px)!important}
body[data-clena-cart] .finish{
  min-height:51px!important;gap:12px;padding:11px 13px!important;
  border-radius:var(--button-radius,12px);font-size:12px!important;
}
body[data-clena-cart] #customerAccount{
  border:1px solid var(--clp-stroke)!important;
  background:var(--clp-wash)!important;border-radius:12px!important;
  padding:12px!important;
}
body[data-clena-cart] #customerAuthForm :is(input,button){min-width:0}
body[data-clena-cart] .delivery-card{min-width:0;border-color:var(--clp-stroke)}
body[data-clena-cart] .delivery-card-grid{gap:8px}
body[data-clena-cart] .mp-checkout-card{
  width:min(540px,calc(100vw - 20px));max-height:min(90dvh,850px);
  border-radius:17px;background:var(--card);color:var(--text);
}
body[data-clena-cart] .mp-checkout-body{overscroll-behavior:contain}
body[data-clena-cart] .mp-qr-frame{max-width:100%;overflow:hidden}
body[data-clena-cart] .mp-qr-frame img{display:block;max-width:100%;height:auto}

/* Os temas do editor mudam tokens; não substituir cores manualmente.
   Apenas ajustes de contraste onde a identidade do tema exige. */
body[data-theme="dark"]:is([data-clena-storefront],[data-clena-product],[data-clena-cart]){
  --clp-soft-shadow:0 6px 24px rgba(0,0,0,.22);
  --clp-card-shadow:0 12px 32px rgba(0,0,0,.28);
}
body[data-theme="boutique"]:is([data-clena-storefront],[data-clena-product],[data-clena-cart]) .brand-copy strong{letter-spacing:-.025em}
body[data-theme="poster"]:is([data-clena-storefront],[data-clena-product],[data-clena-cart]) :is(.product-card h3,.page-head h1){letter-spacing:0}
body[data-theme="vibrant"]:is([data-clena-storefront],[data-clena-product],[data-clena-cart]) :is(.panel,.media-panel,.info-panel){box-shadow:var(--clp-card-shadow)}
body[data-theme="organic"]:is([data-clena-storefront],[data-clena-product],[data-clena-cart]) :is(.panel,.media-panel,.info-panel){border-color:var(--clp-stroke)}

/* Tablet */
@media(min-width:761px) and (max-width:1179px){
 body[data-clena-storefront] :is(#productGrid,#featuredGrid){
   grid-template-columns:repeat(var(--clp-tablet-columns,3),minmax(0,1fr))!important;
 }
 body[data-clena-storefront] #featuredGrid{grid-template-columns:repeat(var(--clp-tablet-columns,3),minmax(0,1fr))!important}
 body[data-clena-storefront] .hero-title{font-size:clamp(29px,4vw,46px)!important}
 body[data-clena-storefront] .banner-stage.mode-carousel .banner-item{--clp-banner-ratio:16/8}
 body[data-clena-product] .product-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important}
 body[data-clena-product] .info-panel{padding:16px!important}
 body[data-clena-product] .recommend-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 body[data-clena-cart] .layout{grid-template-columns:minmax(0,1fr)!important}
 body[data-clena-cart] .checkout{position:static;max-height:none;overflow:visible}
}
@media(min-width:1180px) and (max-width:1320px){
 body[data-clena-storefront] :is(#productGrid,#featuredGrid){
   grid-template-columns:repeat(var(--clp-mid-columns,4),minmax(0,1fr))!important;
 }
}
@media(max-width:760px){
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .header-inner{
   height:auto!important;min-height:60px!important;gap:8px!important;
 }
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-logo{
   width:var(--logo-size-mobile,38px)!important;height:var(--logo-size-mobile,38px)!important;
   flex:0 0 var(--logo-size-mobile,38px)!important;
 }
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) .brand-copy strong{
   font-size:13px!important;max-width:clamp(115px,42vw,250px);
 }
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) :is(.icon-btn,.share-btn){
   min-width:41px;min-height:41px;
 }
 body[data-clena-storefront] .shell,
 body[data-clena-product] .shell,
 body[data-clena-cart] .shell{
   width:calc(100% - 24px)!important;max-width:100%!important;
 }
 body[data-clena-storefront][data-header-style="floating"] .store-header{
   width:calc(100% - 16px)!important;margin-inline:auto!important;
 }
 body[data-clena-storefront] .header-inner{min-height:62px!important}
 body[data-clena-storefront] .header-actions{gap:5px!important}
 body[data-clena-storefront] .hero:not([data-ignore-layout]){
   height:var(--hero-height-mobile,280px)!important;
   min-height:0!important;max-height:none!important;
 }
 body[data-clena-storefront][data-cover-ratio]:not([data-cover-ratio="auto"]) .hero{
   height:auto!important;aspect-ratio:var(--hero-ratio,16/9)!important;
 }
 body[data-clena-storefront][data-cover-width="contained"] .hero{
   width:calc(100% - 24px)!important;max-width:100%!important;
 }
 body[data-clena-storefront] .hero-inner{
   min-height:100%!important;height:100%!important;
   padding:20px 0 22px!important;
 }
 body[data-clena-storefront] .hero-title{
   font-size:clamp(25px,6vw,40px)!important;line-height:1.05!important;
 }
 body[data-clena-storefront] .hero-subtitle{font-size:12px!important;line-height:1.43!important}
 body[data-clena-storefront] .primary-action{min-height:42px;font-size:12px!important}
 body[data-clena-storefront] .hero-media :is(img,video){
   object-fit:var(--cover-fit-mobile,var(--cover-fit,cover))!important;
   object-position:var(--cover-position-mobile,var(--cover-position,center))!important;
 }
 body[data-clena-storefront] .store-info-strip{
   display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;
   margin-top:12px!important;margin-bottom:14px!important;
 }
 body[data-clena-storefront] .store-info-item{
   min-width:0;flex-direction:column;align-items:center;justify-content:center;
   text-align:center;padding:9px 4px;gap:4px!important;border-radius:11px;
 }
 body[data-clena-storefront] .store-info-item i{font-size:18px}
 body[data-clena-storefront] .store-info-item :is(small,strong){
   font-size:clamp(9px,2.3vw,11px)!important;line-height:1.25!important;
 }
 body[data-clena-storefront] :is(.featured-section,.catalog){margin-top:12px!important}
 body[data-clena-storefront] .catalog-heading h2,
 body[data-clena-storefront] .featured-head h2{font-size:20px!important}
 body[data-clena-storefront] .catalog-tools{
   grid-template-columns:minmax(0,1fr) 45px!important;gap:7px!important;
 }
 body[data-clena-storefront][data-show-search="0"] .catalog-tools{
   grid-template-columns:45px!important;
 }
 body[data-clena-storefront] :is(.search-control,.sort-control){height:41px!important;min-width:0}
 body[data-clena-storefront] .sort-control select{
   width:100%;height:100%;padding-right:4px;white-space:nowrap;
   font-size:0!important;color:transparent!important;
 }
 body[data-clena-storefront] .sort-control select option{font-size:14px!important;color:var(--text)!important}
 body[data-clena-storefront] .categories{gap:6px!important;padding-bottom:11px!important}
 body[data-clena-storefront] .category-btn{min-height:36px!important;padding:6px 10px!important;font-size:11px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid){
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:10px!important;
 }
 body[data-clena-storefront][data-product-layout="list"] #productGrid{
   grid-template-columns:minmax(0,1fr)!important;
 }
 body[data-clena-storefront] #featuredGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-copy{padding:9px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-card h3{
   font-size:12px!important;line-height:1.34!important;margin:5px 0 7px!important;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-price strong{font-size:13px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .product-desc{font-size:10px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-variation{padding:0 7px 7px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-size-options{gap:4px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-size-option{
   min-height:33px!important;min-width:33px!important;padding:6px 7px!important;font-size:10px!important;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-purchase{
   gap:5px!important;padding:7px!important;flex-wrap:wrap!important;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity{
   height:36px!important;flex:0 0 auto;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity button{
   width:26px!important;min-height:35px!important;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity span{min-width:17px!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-add{
   height:36px!important;font-size:10px!important;line-height:1.2;
 }
 body[data-clena-storefront] .banner-stage.mode-carousel .banner-item{--clp-banner-ratio:16/10}
 body[data-clena-storefront] .slot:has(.banner-stage) .slot-inner.shell{
   width:calc(100% - 24px)!important;max-width:100%!important;padding:10px 0 0!important;
 }
 body[data-clena-storefront] .banner-stage.mode-carousel .banner-item{flex:0 0 82%!important;max-width:82%!important}
 body[data-clena-storefront] .banner-copy h2{font-size:clamp(14px,4vw,19px)!important}
 body[data-clena-storefront] .product-viewer-card{
   width:100%!important;max-width:100%!important;
   max-height:calc(100dvh - env(safe-area-inset-top))!important;
   border-radius:18px 18px 0 0!important;
 }
 body[data-clena-storefront] .product-viewer-body{
   max-width:100%;padding:12px 12px calc(16px + env(safe-area-inset-bottom))!important;
   overflow-x:hidden!important;overscroll-behavior:contain;
 }
 body[data-clena-storefront] .product-viewer-stage{
   aspect-ratio:4/3!important;min-height:145px!important;max-height:34dvh!important;
 }
 body[data-clena-storefront] .product-viewer-body .clena-viewer-purchase{
   display:flex!important;gap:7px!important;flex-wrap:wrap!important;
 }
 body[data-clena-storefront] .clena-reviews{max-width:100%}
 body[data-clena-product] .product-layout{grid-template-columns:minmax(0,1fr)!important;gap:11px!important}
 body[data-clena-product] .media-panel{position:static!important;top:auto!important;padding:9px!important}
 body[data-clena-product] .main-media{aspect-ratio:4/4.5;max-height:min(62dvh,540px)}
 body[data-clena-product] .thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px!important}
 body[data-clena-product] .info-panel{padding:14px!important}
 body[data-clena-product] #productName{font-size:clamp(20px,5.2vw,27px)!important}
 body[data-clena-product] .meta-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}
 body[data-clena-product] .meta-card{padding:8px 6px!important}
 body[data-clena-product] .meta-card :is(strong,small){font-size:10px!important}
 body[data-clena-product] .buy-box{gap:7px}
 body[data-clena-product] .qty button{min-width:35px}
 body[data-clena-product] .add-btn{font-size:11px!important;gap:5px}
 body[data-clena-product] .add-btn strong{font-size:11px!important}
 body[data-clena-product] .recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 body[data-clena-cart] .layout{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 body[data-clena-cart] .page-head{gap:10px!important;align-items:flex-start!important}
 body[data-clena-cart] .page-head h1{font-size:23px!important}
 body[data-clena-cart] .checkout{position:static!important;max-height:none!important;overflow:visible!important}
 body[data-clena-cart] .panel-head{padding:13px!important}
 body[data-clena-cart] .items{padding:0 11px!important}
 body[data-clena-cart] .item{padding:12px 0!important;gap:10px!important}
 body[data-clena-cart] .item-media{width:72px!important;height:83px!important}
 body[data-clena-cart] .item-main h3{font-size:13px!important}
 body[data-clena-cart] .checkout-body{padding:13px!important}
 body[data-clena-cart] .step{padding-bottom:14px!important;margin-bottom:14px!important}
 body[data-clena-cart] .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
 body[data-clena-cart] .field.full{grid-column:1/-1}
 body[data-clena-cart] .field :is(input,select,textarea){font-size:16px!important}
 body[data-clena-cart] .resume-strip{margin:0 11px 12px!important;padding:10px 12px!important}
 body[data-clena-cart] .mp-checkout-card{width:calc(100vw - 12px);max-height:calc(100dvh - 14px);border-radius:17px}
}
@media(max-width:399px){
 body[data-clena-storefront] .store-info-item i{display:none}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-purchase{flex-wrap:wrap!important}
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-add{
  flex:1 1 100%!important;min-height:37px!important;
 }
 body[data-clena-storefront] :is(#productGrid,#featuredGrid) .clena-card-quantity{
  width:100%;justify-content:space-between;
 }
 body[data-clena-product] .buy-box{flex-wrap:wrap}
 body[data-clena-product] .qty{flex:1}
 body[data-clena-product] .add-btn{flex:1 1 100%}
 body[data-clena-cart] .page-head{flex-direction:column!important}
 body[data-clena-cart] .fields{grid-template-columns:minmax(0,1fr)}
 body[data-clena-cart] .field.full{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *,
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *::before,
 :is(body[data-clena-storefront],body[data-clena-product],body[data-clena-cart]) *::after{
   animation-duration:.01ms!important;animation-iteration-count:1!important;
   transition-duration:.01ms!important;scroll-behavior:auto!important;
 }
}


/* A opção LISTA escolhida no editor é prioritária em todas as larguras. */
body[data-clena-storefront][data-product-layout="list"] #productGrid{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
}
body[data-clena-storefront][data-product-layout="list"] #productGrid>.clena-share-card{
  display:flex;flex-direction:column;
}
body[data-clena-storefront][data-product-layout="list"] #productGrid .product-copy{
  min-width:0;
}
@media(max-width:760px){
 body[data-clena-storefront][data-product-layout="list"] #productGrid>.clena-share-card>.product-card{
  display:grid!important;grid-template-columns:minmax(98px,34%) minmax(0,1fr)!important;
 }
 body[data-clena-storefront][data-product-layout="list"] #productGrid .product-image{
  height:100%;min-height:132px;aspect-ratio:auto;
 }
 body[data-clena-storefront][data-product-layout="list"] #productGrid .product-copy{
  padding:12px!important;
 }
 body[data-clena-storefront][data-product-layout="list"] #productGrid .product-price strong{
  font-size:14px!important;
 }
}
/* Navegação por teclado, leitores de tela e integração entre temas claros/escuros. */
body[data-clena-storefront] :is(.search-control,.sort-control) {
 background:var(--card,#fff)!important;color:var(--text,#16233c)!important;
 border-color:var(--clp-stroke)!important;
}
body[data-clena-storefront] .sort-control select{
 color:var(--text)!important;
}
@media(max-width:760px){
 body[data-clena-storefront] .sort-control select{
  opacity:1!important;font-size:14px!important;color:transparent!important;
 }
 body[data-clena-storefront] .sort-control>i{
  pointer-events:none;position:relative;z-index:1;
 }
 body[data-clena-cart] .checkout{
  scroll-margin-top:10px;
 }
}
