/* Cinco linguagens visuais da referência aprovada; dados, marca e menus vêm do tenant. */
.checkout-dialog { box-sizing:border-box; position:fixed; width:min(600px,calc(100vw - 24px)); max-height:90dvh; padding:28px 22px; border:1px solid var(--linha); border-radius:var(--raio,17px); background:var(--card,#fff); color:var(--txt,#223027); overflow-y:auto; overflow-wrap:anywhere; }
.checkout-dialog::backdrop { background:#071d1870; backdrop-filter:blur(3px); }
.checkout-dialog h2 { padding-right:30px; margin:0 0 20px; }
.checkout-dialog button { cursor:pointer; min-height:44px; }
.checkout-dialog select,.checkout-dialog textarea { box-sizing:border-box; width:100%; min-height:44px; padding:12px; font:inherit; color:inherit; background:var(--card); border:1px solid var(--linha); border-radius:10px; }
.checkout-dialog fieldset { min-width:0; padding:14px; margin:16px 0; border:1px solid var(--linha); border-radius:12px; }
.checkout-dialog fieldset[hidden],.checkout-dialog [hidden] { display:none; }
.checkout-dialog p { line-height:1.6; font-size:14px; }
.checkout-dialog .cart-item { gap:14px; }
.checkout-historico { margin:14px 0; padding:14px; background:var(--soft); border:1px solid var(--linha); border-radius:12px; }
.checkout-historico summary { cursor:pointer; font-weight:650; min-height:40px; }
.checkout-dialog .cart-btn { background:var(--acc); color:var(--on-acc,#fff); }
body[data-tema] { --acc:#2e7d32; --acc2:#4caf50; --acc-text:#246728; --soft:#e8f5e9; --bg:#f5f7f5; --card:#fff; --txt:#223027; --muted:#526359; --linha:#e1e7e2; --on-acc:#fff; --raio:17px; --raio-menor:11px; --sombra:0 4px 18px #233f2910; background:var(--bg); color:var(--txt); }
body[data-tema="premium"] { --acc:#7a5c28; --acc2:#b18a48; --acc-text:#74521d; --soft:#f4ead5; --bg:#f5f1e9; --card:#fffdf8; --txt:#2d2922; --muted:#6b6254; --linha:#e4dccd; --raio:10px; --raio-menor:7px; }
body[data-tema="moderno"] { --acc:#1565c0; --acc2:#26a69a; --acc-text:#1259ab; --soft:#e3f2fd; --bg:#f4f7fb; --txt:#18222c; --muted:#536573; --linha:#dbe3ea; --raio:12px; --raio-menor:8px; }
body[data-tema="mercado"] { --acc:#ef6c00; --acc2:#f9a825; --acc-text:#a34600; --on-acc:#251700; --soft:#fff3df; --bg:#fff8ee; --txt:#33291f; --muted:#6e5c4b; --linha:#efddc8; --raio:14px; --raio-menor:9px; }
body[data-tema="glass"] { --acc:#167c78; --acc2:#5ac8c1; --acc-text:#126b67; --soft:#d8f3ed; --bg:#d8f1ee; --txt:#153d3a; --muted:#3f625f; --linha:#b8d9d4; --raio:24px; --raio-menor:14px; --sombra:0 8px 28px #12676118; background:radial-gradient(circle at 10% 5%,#fff 0,transparent 35%),radial-gradient(circle at 95% 25%,#a9d8f6 0,transparent 30%),radial-gradient(circle at 20% 85%,#aeefc2 0,transparent 35%),var(--bg); background-attachment:fixed; }
body.cores-marca { --soft:color-mix(in srgb,var(--acc) 10%,var(--card)); background:var(--bg); }
.loja-pronta .home { width:min(100%,760px); margin:0 auto; padding:18px 14px 235px; }
.loja-pronta .home,.loja-pronta .conteudo-app { display:block; min-width:0; }
.loja-pronta .topo { position:sticky; top:0; z-index:40; padding:12px max(14px,calc((100vw - 732px)/2)); gap:10px; background:var(--card); border-bottom:1px solid var(--linha); }
.identidade { display:flex; flex-direction:column; flex:1; min-width:0; }
.identidade .nome { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#loja-subtitulo { color:var(--muted); font-size:11px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
#loja-subtitulo:empty { display:none; }
.loja-pronta .logo { width:42px; height:42px; flex:0 0 42px; }
.loja-pronta .conta-abrir { margin:0; min-height:44px; font-size:12px; }
.loja-carrinho { position:relative; min-width:44px; height:44px; padding:10px; border:1px solid var(--linha); border-radius:var(--raio-menor); background:var(--card); color:var(--acc-text); }
.loja-carrinho svg { width:23px; height:23px; }
#loja-carrinho-n:not(:empty) { position:absolute; top:-4px; right:-4px; min-width:19px; height:19px; border-radius:50%; background:var(--acc); color:var(--on-acc); font-size:10px; display:grid; place-items:center; }
.loja-banner { position:relative; isolation:isolate; min-height:180px; padding:24px; overflow:hidden; border-radius:var(--raio); background:linear-gradient(120deg,var(--soft),var(--card)); border:1px solid var(--linha); box-shadow:var(--sombra); margin:0 0 19px; }
.loja-banner::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,var(--soft) 0%,color-mix(in srgb,var(--soft) 92%,transparent) 52%,transparent); }
.loja-banner-imagem { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
.loja-banner.so-imagem { aspect-ratio:2.6; padding:0; }
.loja-banner.so-imagem::after { display:none; }
.loja-banner-texto { max-width:75%; }
.loja-banner h1 { font-size:27px; line-height:1.15; letter-spacing:-.035em; margin:0 0 10px; color:var(--acc-text); overflow-wrap:anywhere; }
.loja-banner p { font-size:13px; margin:0 0 16px; white-space:pre-line; }
.loja-banner button { min-height:44px; padding:10px 16px; border:0; border-radius:var(--raio-menor); background:var(--acc); color:var(--on-acc); font-weight:700; }
.loja-banner button span { margin-left:12px; }
.loja-busca { display:flex; align-items:center; gap:10px; padding:0 14px; border:1px solid var(--linha); background:var(--card); border-radius:var(--raio-menor); min-height:48px; box-shadow:var(--sombra); }
.loja-busca svg { width:21px; height:21px; flex-shrink:0; color:var(--muted); }
.loja-busca input { border:0; padding:13px 0; background:transparent; color:var(--txt); width:100%; font:inherit; font-size:16px; min-width:0; }
.loja-busca:focus-within { outline:2px solid var(--acc); outline-offset:2px; }
.loja-busca input:focus { outline:0; }
.loja-categorias { display:flex; gap:10px; overflow-x:auto; padding:18px 1px 8px; scrollbar-width:thin; }
.loja-categorias button { width:78px; min-width:78px; min-height:84px; display:flex; flex-direction:column; align-items:center; gap:7px; justify-content:center; border:1px solid var(--linha); border-radius:var(--raio-menor); background:var(--card); color:var(--muted); font-size:11px; padding:10px 5px; overflow-wrap:anywhere; }
.loja-categorias button svg { width:25px; height:25px; }
.loja-categorias button[aria-pressed="true"] { background:var(--acc); color:var(--on-acc); border-color:var(--acc); font-weight:700; }
.loja-titulo { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:22px 0 12px; }
.loja-titulo h2 { margin:0; font-size:18px; letter-spacing:-.02em; }
.loja-titulo>span { font-size:11px; color:var(--muted); flex-shrink:0; }
#loja-produtos { scroll-margin-top:95px; }
.loja-pronta .lj-grade { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.loja-pronta .lj-item { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid var(--linha); border-radius:var(--raio); background:var(--card); box-shadow:var(--sombra); padding:0; }
.lj-detalhe { border:0; padding:0; background:transparent; text-align:left; color:inherit; flex:1; width:100%; display:flex; flex-direction:column; font:inherit; }
.loja-pronta .lj-foto { display:flex; align-items:center; justify-content:center; width:100%; height:auto; aspect-ratio:1 / 1; object-fit:contain; border-radius:0; background:var(--soft); }
.loja-pronta .lj-sem { color:var(--muted); font-size:12px; }
.loja-pronta .lj-txt { padding:12px 12px 6px; width:100%; display:flex; flex-direction:column; gap:6px; flex:1; }
.lj-nome { font-size:14px; font-weight:700; line-height:1.3; overflow-wrap:anywhere; }
.loja-pronta .lj-desc { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:0; color:var(--muted); font-size:11px; line-height:1.5; }
.loja-pronta .lj-preco { display:block; margin-top:auto; color:var(--acc-text); font-size:19px; font-weight:800; letter-spacing:-.02em; }
.loja-pronta .lj-preco small { font-size:10px; font-weight:400; color:var(--muted); white-space:nowrap; }
.loja-pronta .lj-selo { align-self:flex-start; font-size:10px; padding:3px 6px; margin:0; }
.loja-pronta .lj-add { width:calc(100% - 24px); margin:6px 12px 12px; min-height:44px; padding:9px 6px; font-size:12px; border-radius:var(--raio-menor); background:var(--acc); color:var(--on-acc); border:0; font-weight:700; }
.loja-pronta .lj-add:disabled { background:var(--soft); color:var(--muted); cursor:default; }
.loja-vazia { grid-column:1/-1; padding:30px 15px; text-align:center; color:var(--muted); border:1px dashed var(--linha); border-radius:var(--raio); }
.loja-vazia button { min-height:44px; padding:10px; }
.loja-rodape { position:fixed; bottom:0; left:0; right:0; z-index:42; min-height:73px; padding:7px max(4px,calc((100vw - 760px)/2)) calc(7px + env(safe-area-inset-bottom,0px)); display:flex; justify-content:center; background:var(--card); border-top:1px solid var(--linha); box-shadow:0 -4px 18px #233f290a; }
.loja-rodape>* { flex:1; min-width:0; max-width:152px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; min-height:51px; border:0; border-radius:var(--raio-menor); color:var(--acc-text); background:transparent; text-decoration:none; font-size:10px; padding:4px; overflow-wrap:anywhere; line-height:1.2; text-align:center; }
.loja-rodape svg { width:23px; height:23px; flex:none; }
/* Posição e dimensões da referência AQUELE, com rodapé/safe area. */
.loja-suporte { position:fixed; bottom:calc(24px + env(safe-area-inset-bottom,0px)); right:24px; z-index:43; display:flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:50%; background:#25d366; color:#fff; border:0; box-shadow:0 4px 16px #25d36666; text-decoration:none; }
.loja-suporte[hidden] { display:none; }
.loja-suporte img { width:60%; height:60%; object-fit:contain; border-radius:8px; }
.tem-menu-loja .loja-suporte { bottom:calc(92px + env(safe-area-inset-bottom,0px)); }
.loja-suporte:focus-visible { outline:3px solid var(--txt); outline-offset:4px; }
.suporte-ativo .ins-chamada { right:96px; max-width:calc(100vw - 112px); }
.loja-pronta.suporte-ativo .cart-barra { bottom:calc(164px + env(safe-area-inset-bottom,0px)); }
@media(max-width:600px) { .loja-suporte { bottom:calc(16px + env(safe-area-inset-bottom,0px)); right:16px; width:50px; height:50px; } .suporte-ativo .ins-chamada { right:80px; max-width:calc(100vw - 96px); } }
.loja-pronta .cart-barra { bottom:calc(144px + env(safe-area-inset-bottom,0px)); max-width:calc(100vw - 28px); white-space:nowrap; font-size:13px; }
.loja-pronta .ins-chamada { bottom:calc(87px + env(safe-area-inset-bottom,0px)); }
.loja-pronta :focus-visible { outline:3px solid var(--acc); outline-offset:3px; }
.loja-pronta .lj-detalhe:focus-visible { outline-offset:-3px; }
.produto-dialog,.cart-vazio { padding:24px; border:1px solid var(--linha); border-radius:var(--raio); background:var(--card); color:var(--txt); width:min(620px,calc(100% - 24px)); max-height:90dvh; overscroll-behavior:contain; box-shadow:0 15px 80px #0003; }
.produto-dialog::backdrop,.cart-vazio::backdrop { background:#09221b88; }
.produto-dialog { padding:22px; }
#produto-fechar { position:sticky; top:0; float:right; margin-bottom:-44px; z-index:2; width:44px; height:44px; border:1px solid var(--linha); border-radius:50%; color:var(--txt); background:var(--card); font-size:26px; }
/* A trilha não pode crescer pelo mínimo intrínseco da IMG e ser cortada pela moldura. */
.produto-foto { width:100%; height:230px; background:var(--soft); border-radius:var(--raio-menor); display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); place-items:center; overflow:hidden; }
.produto-foto img { width:100%; height:100%; min-width:0; min-height:0; object-fit:contain; }
.produto-miniaturas { display:flex; gap:8px; overflow:auto; padding:12px 2px; }
.produto-miniaturas button { flex:0 0 56px; height:56px; padding:3px; border:2px solid transparent; border-radius:9px; background:var(--soft); }
.produto-miniaturas button[aria-pressed="true"] { border-color:var(--acc); }
.produto-miniaturas img { width:100%; height:100%; object-fit:contain; border-radius:5px; }
#produto-titulo { clear:both; font-size:23px; line-height:1.25; margin:17px 0 8px; overflow-wrap:anywhere; }
.produto-preco { color:var(--acc-text); font-size:25px; font-weight:800; margin:12px 0; }
.produto-preco small { font-size:13px; font-weight:400; color:var(--muted); }
.produto-descricao { font-size:14px; white-space:pre-wrap; line-height:1.7; }
.produto-disponibilidade { font-size:12px; color:var(--muted); }
.produto-dialog .lj-add { width:100%; margin:16px 0 0; }
body.produto-aberto { overflow:hidden; }
.loja-aviso { position:fixed; z-index:55; left:50%; bottom:calc(203px + env(safe-area-inset-bottom,0px)); transform:translateX(-50%); width:max-content; max-width:calc(100% - 28px); margin:0; background:var(--txt); color:var(--card); padding:12px 18px; border-radius:var(--raio-menor); box-shadow:var(--sombra); font-size:12px; pointer-events:none; opacity:0; transition:opacity .15s; }
.loja-aviso.visivel { opacity:1; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
@supports (backdrop-filter:blur(12px)) { body[data-tema="glass"]:not(.cores-marca) .lj-item,body[data-tema="glass"]:not(.cores-marca) .topo,body[data-tema="glass"]:not(.cores-marca) .loja-rodape { background:#ffffffd9; backdrop-filter:blur(12px); } }
@media(max-width:699px) { .loja-pronta .lj-grade { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; } .loja-banner { padding:20px; } .loja-banner h1 { font-size:25px; } .loja-banner-texto { max-width:83%; } .loja-pronta .lj-preco { font-size:18px; } }
@media(max-width:360px) { .loja-pronta .home { padding-left:12px; padding-right:12px; } .loja-banner h1 { font-size:23px; } .loja-pronta .lj-preco { font-size:16px; } .loja-pronta .lj-txt { padding:10px 10px 4px; } .lj-nome { font-size:13px; } .loja-pronta .lj-add { margin:6px 9px 9px; width:calc(100% - 18px); } .loja-titulo>span { font-size:10px; } .loja-pronta .nome { font-size:15px; } }
@media(prefers-reduced-motion:reduce) { .loja-aviso { transition:none; } }

/* T021 · Coleção Ateliê. Opt-in por tenant; a coleção clássica acima não muda.
   Paleta/forma vêm da referência. Fotos, textos e ações vêm das APIs reais.
   Nenhuma moldura de aparelho, promoção, avaliação ou promessa fictícia. */
body[data-colecao="atelie"] {
  --acc:#315c25; --acc2:#608743; --acc-text:#24491d; --on-acc:#fff;
  --bg:#faf9f4; --card:#fffefa; --soft:#edf0df; --txt:#19391e;
  --muted:#606a59; --linha:#e2e5d6; --raio:16px; --raio-menor:12px;
  --sombra:0 3px 12px #252f1410; --at-head:Georgia,'Times New Roman',serif;
  --at-preco:var(--acc-text); --at-topo:var(--bg); --at-topo-txt:var(--txt);
  font-family:'Segoe UI',Arial,sans-serif; background:var(--bg); color:var(--txt);
}
body[data-colecao="atelie"][data-tema="premium"] {
  --acc:#173f2d; --acc2:#8c7136; --acc-text:#173f2d; --bg:#f6f2e8;
  --card:#fbf8f0; --soft:#eee7d6; --txt:#182c21; --muted:#686355;
  --linha:#ded8c8; --raio:10px; --raio-menor:8px; --sombra:none;
}
body[data-colecao="atelie"][data-tema="mercado"] {
  --acc:#00842c; --acc2:#ffe42e; --acc-text:#006724; --bg:#fff; --card:#fff;
  --soft:#edf5e7; --txt:#102c20; --muted:#58665e; --linha:#e5e9e5;
  --raio:12px; --raio-menor:10px; --at-head:'Trebuchet MS','Segoe UI',sans-serif;
  --at-preco:#cf3c00; --at-topo:#005b29; --at-topo-txt:#fff; --sombra:none;
}
body[data-colecao="atelie"][data-tema="moderno"] {
  --acc:#007455; --acc2:#23a878; --acc-text:#00684b; --bg:#f7fcf9; --card:#fff;
  --soft:#e8f5ed; --txt:#102e25; --muted:#586e63; --linha:#e0ece5;
  --raio:17px; --raio-menor:12px; --at-head:'Segoe UI',Arial,sans-serif;
  --sombra:0 3px 10px #1d58480a; --at-topo:linear-gradient(120deg,#f5fffa,#e1f3e9);
}
body[data-colecao="atelie"][data-tema="glass"] {
  --acc:#216d27; --acc2:#89d440; --acc-text:#185521; --bg:#f5f9ed;
  --card:#fffffff0; --soft:#e7efda; --txt:#183b23; --muted:#4b614e;
  --linha:#ffffffdf; --raio:26px; --raio-menor:22px;
  --at-head:'Segoe UI',Arial,sans-serif; --at-topo:#f7faedeb;
  --sombra:0 8px 25px #456b2512;
  background:radial-gradient(circle 56px at 92% 22%,#ffffff38 90%,#ffffffc9 95%,transparent 100%),radial-gradient(circle 34px at 8% 59%,#ffffff30 90%,#ffffffb3 95%,transparent 100%),radial-gradient(circle 70px at 85% 86%,#ffffff20 90%,#ffffffb3 95%,transparent 100%),radial-gradient(ellipse at 12% 8%,#d8ebc5 0,transparent 40%),radial-gradient(ellipse at 92% 36%,#c7e7e2 0,transparent 35%),radial-gradient(ellipse at 18% 78%,#ffe0ce 0,transparent 38%),radial-gradient(ellipse at 84% 92%,#e4efbb 0,transparent 42%),var(--bg);
  background-attachment:fixed;
}
body[data-colecao="atelie"].cores-marca {
  --soft:color-mix(in srgb,var(--acc) 10%,var(--card)); --at-preco:var(--acc-text);
  --at-topo:var(--bg); --at-topo-txt:var(--txt); background:var(--bg);
}
body[data-colecao="atelie"] .home { width:min(100%,900px); padding:16px 20px 235px; }
body[data-colecao="atelie"] .topo {
  gap:10px; padding:18px max(20px,calc((100vw - 860px)/2));
  background:var(--at-topo); color:var(--at-topo-txt); border-bottom:0;
  display:grid; grid-template-columns:42px minmax(0,1fr) auto;
}
body[data-colecao="atelie"] .topo>.logo { grid-column:1; grid-row:1; }
body[data-colecao="atelie"] .topo>.identidade,
body[data-colecao="atelie"] .topo:has(#abrir-conteudos:not(.hidden))>.identidade { grid-column:2; grid-row:1; min-width:0; }
body[data-colecao="atelie"] #loja-carrinho { grid-column:3; grid-row:1; justify-self:end; }
body[data-colecao="atelie"] #abrir-conteudos { grid-column:2; grid-row:2; justify-self:start; }
body[data-colecao="atelie"] #abrir-conta { grid-column:3; grid-row:2; justify-self:end; }
body[data-colecao="atelie"] .identidade .nome { font:700 clamp(22px,5.5vw,30px)/1.12 var(--at-head); letter-spacing:-.7px; white-space:normal; overflow-wrap:anywhere; }
body[data-colecao="atelie"] .identidade { min-width:120px; }
body[data-colecao="atelie"] .nome { color:inherit; }
body[data-colecao="atelie"] #loja-subtitulo { font-size:12px; line-height:1.5; margin-top:4px; color:inherit; opacity:.85; white-space:normal; }
body[data-colecao="atelie"] .conta-abrir { padding:7px 10px; border-radius:99px; border-color:currentColor; color:inherit; background:transparent; }
body[data-colecao="atelie"] .loja-carrinho { border:0; border-radius:50%; background:transparent; color:inherit; }
body[data-colecao="atelie"] .loja-busca { min-height:46px; border-radius:99px; box-shadow:0 3px 10px #23351909; }
body[data-colecao="atelie"] .loja-busca input { font-size:16px; padding:11px 0; }
body[data-colecao="atelie"] .loja-categorias { padding:18px 0 12px; gap:8px; justify-content:space-between; }
body[data-colecao="atelie"] .loja-categorias button { flex:1 0 58px; width:auto; min-width:58px; max-width:110px; min-height:82px; padding:0 2px; gap:7px; border:0; border-radius:0; color:var(--txt); background:transparent; font-size:11px; font-weight:500; }
body[data-colecao="atelie"] .categoria-arte { display:grid; place-items:center; flex-shrink:0; width:50px; height:50px; border-radius:50%; background:var(--soft); border:1px solid var(--linha); color:var(--acc-text); }
body[data-colecao="atelie"] .categoria-arte svg { width:26px; height:26px; }
body[data-colecao="atelie"] .loja-categorias button[aria-pressed="true"] .categoria-arte { background:var(--acc); color:var(--on-acc); border-color:var(--acc); }
/* O banner de início é o mesmo nó/motor: ordem visual, sem clonagem/novas métricas.
   Topo sobreposto e Premium conservam o banner antes da busca. */
body[data-colecao="atelie"] .conteudo-app { display:flex; flex-direction:column; align-items:stretch; }
body[data-colecao="atelie"] #loja:not(.hidden) { display:contents; }
body[data-colecao="atelie"] .loja-busca { order:1; }
body[data-colecao="atelie"] .loja-categorias { order:2; }
body[data-colecao="atelie"] #publicidade-inicio { order:3; }
body[data-colecao="atelie"] #loja-destaques { order:4; }
body[data-colecao="atelie"] #publicidade-catalogo { order:5; }
body[data-colecao="atelie"] #loja-produtos { order:6; }
body[data-colecao="atelie"] #portal-publico { order:7; }
body[data-colecao="atelie"][data-tema="premium"] #publicidade-inicio,
body[data-colecao="atelie"].bn-topo-sobre #publicidade-inicio { order:0; }
body[data-colecao="atelie"].bn-topo-sobre>.topo { background:linear-gradient(#000b,#0003); color:#fff; }
body[data-colecao="atelie"] .bn-titulo { font-family:var(--at-head); }
body[data-colecao="atelie"] .loja-titulo { margin:20px 0 12px; gap:10px; }
body[data-colecao="atelie"] .loja-titulo h2 { font:700 clamp(19px,4.4vw,24px)/1.2 var(--at-head); letter-spacing:-.45px; }
body[data-colecao="atelie"] .loja-titulo>span { font-size:11px; text-align:right; }
body[data-colecao="atelie"] .lj-grade { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
body[data-colecao="atelie"] .lj-item { position:relative; border-radius:var(--raio); padding:4px; box-shadow:var(--sombra); }
body[data-colecao="atelie"] .lj-foto { width:100%; height:auto; aspect-ratio:1.08; border-radius:calc(var(--raio) - 4px); object-fit:contain; background:var(--soft); }
body[data-colecao="atelie"] .lj-txt { padding:9px 6px 3px; gap:6px; }
body[data-colecao="atelie"] .lj-nome { font-size:13px; line-height:1.35; font-weight:650; }
body[data-colecao="atelie"] .lj-desc { font-size:11px; line-height:1.45; }
body[data-colecao="atelie"] .lj-preco { font-size:16px; color:var(--at-preco); line-height:1.3; letter-spacing:-.4px; }
body[data-colecao="atelie"] .lj-preco small { display:block; font-size:10px; letter-spacing:0; white-space:normal; }
body[data-colecao="atelie"] .lj-selo { font-size:10px; padding:3px 5px; }
body[data-colecao="atelie"] .lj-item>.lj-add { align-self:flex-end; width:44px; height:44px; padding:6px; margin:0 2px 2px; min-height:44px; border-radius:50%; background:transparent; color:var(--on-acc); font-size:24px; }
body[data-colecao="atelie"] .lj-item>.lj-add>span,body[data-colecao="atelie"] .lj-item>.lj-add>svg { display:grid; place-items:center; width:32px; height:32px; background:var(--acc); border-radius:50%; }
body[data-colecao="atelie"] .lj-item>.lj-add:disabled { opacity:.4; }
body[data-colecao="atelie"] .loja-rodape { background:var(--bg); box-shadow:none; border-color:var(--linha); }
body[data-colecao="atelie"] .loja-rodape>* { color:var(--acc-text); }
body[data-colecao="atelie"] .loja-rodape [data-acao="inicio"] { font-weight:750; }
body[data-colecao="atelie"] .produto-dialog { padding:0; background:var(--bg); overflow:auto; width:min(540px,calc(100% - 20px)); border-radius:24px; }
body[data-colecao="atelie"] #produto-fechar { top:10px; margin:10px 10px -54px 0; background:var(--card); }
body[data-colecao="atelie"] .produto-foto { height:clamp(230px,65vw,360px); border-radius:0; background:var(--soft); }
body[data-colecao="atelie"] .produto-foto img { object-fit:contain; }
body[data-colecao="atelie"] .produto-info { padding:20px; }
body[data-colecao="atelie"] .produto-miniaturas { padding:12px 20px 0; }
body[data-colecao="atelie"] #produto-titulo { font:700 clamp(26px,6.8vw,34px)/1.15 var(--at-head); letter-spacing:-.8px; margin:0 0 10px; }
body[data-colecao="atelie"] .produto-preco { font-size:28px; color:var(--at-preco); margin:0 0 14px; }
body[data-colecao="atelie"] .produto-preco small { font-size:13px; margin-left:6px; }
body[data-colecao="atelie"] .produto-descricao { color:var(--muted); font-size:15px; line-height:1.65; }
body[data-colecao="atelie"] .produto-disponibilidade { width:fit-content; border-radius:99px; background:var(--soft); color:var(--acc-text); padding:6px 10px; }
body[data-colecao="atelie"] .produto-compra { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:24px 0 8px; font-size:14px; font-weight:650; }
body[data-colecao="atelie"] .produto-quantidade { display:flex; align-items:center; border:1px solid var(--linha); background:var(--card); border-radius:99px; overflow:hidden; }
body[data-colecao="atelie"] .produto-quantidade button { min-width:44px; min-height:44px; border:0; color:var(--txt); background:transparent; font:inherit; font-size:22px; line-height:1; cursor:pointer; }
body[data-colecao="atelie"] .produto-quantidade button:disabled { opacity:.35; cursor:default; }
body[data-colecao="atelie"] .produto-quantidade output { min-width:38px; text-align:center; font-variant-numeric:tabular-nums; }
body[data-colecao="atelie"] .produto-dialog .lj-add,body[data-colecao="atelie"] .cart-btn { border-radius:99px; min-height:50px; font-size:15px; font-weight:650; background:var(--acc); color:var(--on-acc); }
body[data-colecao="atelie"] .checkout-dialog,body[data-colecao="atelie"] .conta-dialog { background:var(--bg); border-color:var(--linha); border-radius:24px; }
body[data-colecao="atelie"] .checkout-dialog h2,body[data-colecao="atelie"] .conta-dialog h2 { font:700 27px/1.2 var(--at-head); letter-spacing:-.6px; }
body[data-colecao="atelie"] .carrinho-resumo .cart-item { display:grid; grid-template-columns:76px minmax(0,1fr); gap:8px 14px; padding:12px; margin:12px 0; background:var(--card); border:1px solid var(--linha); border-radius:var(--raio); box-shadow:var(--sombra); }
body[data-colecao="atelie"] .cart-foto { grid-row:span 2; width:76px; height:90px; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); place-items:center; border-radius:12px; overflow:hidden; background:var(--soft); font-size:11px; text-align:center; color:var(--muted); }
body[data-colecao="atelie"] .cart-foto img { width:100%; height:100%; min-width:0; min-height:0; object-fit:contain; }
body[data-colecao="atelie"] .cart-item-txt { min-width:0; align-self:center; }
body[data-colecao="atelie"] .cart-item-txt strong { font-weight:650; overflow-wrap:anywhere; }
body[data-colecao="atelie"] .cart-item-txt small { color:var(--at-preco); font-size:14px; }
body[data-colecao="atelie"] .cart-qtd { grid-column:2; justify-self:start; border:1px solid var(--linha); border-radius:99px; gap:0; overflow:hidden; }
body[data-colecao="atelie"] .cart-qtd button { width:44px; border:0; border-radius:0; background:transparent; color:var(--acc-text); }
body[data-colecao="atelie"] .cart-qtd span { min-width:36px; text-align:center; }
body[data-colecao="atelie"] .cart-total { border:0; background:var(--soft); border-radius:var(--raio-menor); padding:16px; margin:16px 0 8px; gap:16px; }
body[data-colecao="atelie"] .cart-total b { color:var(--acc-text); }
body[data-colecao="atelie"][data-tema="premium"] .lj-item { background:transparent; box-shadow:none; border-color:#dfd8c7; }
body[data-colecao="atelie"][data-tema="premium"] .lj-item>.lj-add>svg { border-radius:8px; padding:7px; }
body[data-colecao="atelie"][data-tema="premium"] .loja-titulo h2 { font-weight:500; }
body[data-colecao="atelie"][data-tema="premium"] .carrinho-resumo .cart-item { border-width:0 0 1px; border-radius:0; background:transparent; padding:14px 0; }
body[data-colecao="atelie"][data-tema="premium"] .produto-foto { border-radius:0 0 22px 22px; }
body[data-colecao="atelie"][data-tema="premium"] .loja-rodape { border-top-color:var(--acc2); }
body[data-colecao="atelie"][data-tema="mercado"] .identidade .nome { font-weight:900; }
body[data-colecao="atelie"][data-tema="mercado"] .loja-titulo h2 { font-weight:800; }
body[data-colecao="atelie"][data-tema="mercado"] .produto-dialog .lj-add { background:linear-gradient(110deg,#ff7500,#e94000); color:#fff; border-radius:18px; }
body[data-colecao="atelie"][data-tema="mercado"] .cart-btn { border-radius:14px; }
body[data-colecao="atelie"][data-tema="mercado"] .cart-qtd button:last-child { background:var(--acc); color:var(--on-acc); }
body[data-colecao="atelie"][data-tema="moderno"] .produto-foto { border-radius:0 0 48% 10% / 0 0 12% 4%; }
body[data-colecao="atelie"][data-tema="moderno"] .produto-dialog .lj-add { border-radius:18px; }
body[data-colecao="atelie"][data-tema="moderno"] .categoria-arte { background:var(--card); border:0; box-shadow:var(--sombra); }
body[data-colecao="atelie"][data-tema="glass"] .lj-item { box-shadow:inset 0 1px 1px #fff,var(--sombra); }
body[data-colecao="atelie"][data-tema="glass"] .categoria-arte { border-radius:20px; background:var(--card); }
body[data-colecao="atelie"][data-tema="glass"] .produto-dialog,body[data-colecao="atelie"][data-tema="glass"] .checkout-dialog { background:linear-gradient(135deg,#f7faee,#f5ede1 60%,#edf5e0); }
body[data-colecao="atelie"][data-tema="glass"] .produto-info { border-radius:28px 28px 0 0; position:relative; background:var(--card); }
body[data-colecao="atelie"][data-tema="glass"] .produto-dialog .lj-add,body[data-colecao="atelie"][data-tema="glass"] .cart-btn { background:radial-gradient(ellipse at 12% 0%,#9de24e,transparent 45%),linear-gradient(#2a8525,#12441e); border:1px solid #e7fcd1; box-shadow:inset 0 2px 4px #fff9,0 3px 10px #4b8e2730; }
/* As cores da marca têm precedência explícita inclusive sobre acabamentos. */
body[data-colecao="atelie"].cores-marca .produto-dialog,body[data-colecao="atelie"].cores-marca .checkout-dialog { background:var(--bg); }
body[data-colecao="atelie"].cores-marca .produto-dialog .lj-add,body[data-colecao="atelie"].cores-marca .cart-btn { background:var(--acc); color:var(--on-acc); }
@supports (backdrop-filter:blur(8px)) {
  body[data-colecao="atelie"][data-tema="glass"]:not(.cores-marca) .lj-item,
  body[data-colecao="atelie"][data-tema="glass"]:not(.cores-marca) .topo,
  body[data-colecao="atelie"][data-tema="glass"]:not(.cores-marca) .loja-rodape { background:#fff9; backdrop-filter:blur(8px); }
}
@media(min-width:700px) {
  body[data-colecao="atelie"] .topo { grid-template-columns:42px minmax(0,1fr) auto auto auto; }
  body[data-colecao="atelie"] #abrir-conteudos { grid-column:3; grid-row:1; }
  body[data-colecao="atelie"] #abrir-conta { grid-column:4; grid-row:1; }
  body[data-colecao="atelie"] #loja-carrinho { grid-column:5; grid-row:1; }
  body[data-colecao="atelie"] .lj-grade { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
  body[data-colecao="atelie"] .lj-nome { font-size:16px; }
  body[data-colecao="atelie"] .lj-preco { font-size:20px; }
  body[data-colecao="atelie"] .lj-desc { font-size:13px; }
}
@media(min-width:360px) and (max-width:699px) {
  body[data-colecao="atelie"][data-tema="mercado"] .lj-grade,
  body[data-colecao="atelie"][data-tema="moderno"] .lj-grade { grid-template-columns:repeat(6,minmax(0,1fr)); }
  body[data-colecao="atelie"][data-tema="mercado"] .lj-item,
  body[data-colecao="atelie"][data-tema="moderno"] .lj-item { grid-column:span 2; }
  body[data-colecao="atelie"][data-tema="mercado"] .lj-item:nth-child(3n + 1):nth-last-child(2),
  body[data-colecao="atelie"][data-tema="mercado"] .lj-item:nth-child(3n + 2):last-child,
  body[data-colecao="atelie"][data-tema="moderno"] .lj-item:nth-child(3n + 1):nth-last-child(2),
  body[data-colecao="atelie"][data-tema="moderno"] .lj-item:nth-child(3n + 2):last-child { grid-column:span 3; }
}
@media(max-width:359px) {
  body[data-colecao="atelie"] .lj-grade { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-colecao="atelie"] .topo { padding:14px 16px; }
  body[data-colecao="atelie"] .home { padding-inline:16px; }
  body[data-colecao="atelie"] .carrinho-resumo .cart-item { grid-template-columns:60px minmax(0,1fr); padding:8px; gap:8px; }
  body[data-colecao="atelie"] .cart-foto { width:60px; }
}
