/* Tema Palco: musica e instrumentos - indigo de noite de show (cor do topo), ambar de holofote (cor da loja), teclas de
   piano, disco de vinil e equalizador. Carregado depois do CSS do Vitrine. As cores do lojista continuam valendo. */

.tema-palco { --pl-noite: var(--topo, #1d1b3a); --pl-tinta: var(--titulos, #1d1b3a); --pl-linha: #e3e1ec; }
body.vitrine.tema-palco h1, body.vitrine.tema-palco h2, body.vitrine.tema-palco h3 { font-family: var(--fonte-titulos), var(--fonte), sans-serif; font-weight: 700 !important; }
.pl-teclas { height: 26px; background: linear-gradient(90deg, transparent 13px, #15132b 13px 27px, transparent 27px 33px, #15132b 33px 47px, transparent 47px 73px, #15132b 73px 87px, transparent 87px 93px, #15132b 93px 107px, transparent 107px 113px, #15132b 113px 127px, transparent 127px) 0 0 / 140px 62% repeat-x, repeating-linear-gradient(90deg, #fbfaf7 0 19px, #c9c6d6 19px 20px); box-shadow: inset 0 3px 4px rgba(0, 0, 0, .25); }

/* titulos das secoes: um mini equalizador na cor da loja antes */
.tema-palco .vt-secao-cab { align-items: center; margin-bottom: 20px; }
.tema-palco .vt-secao-cab h2 { display: flex; align-items: center; gap: 12px; font-size: 27px; letter-spacing: .01em; color: var(--pl-tinta); }
.tema-palco .vt-secao-cab h2::before { content: ""; width: 22px; height: 22px; flex: none; border-radius: 0; background: linear-gradient(var(--loja), var(--loja)) 0 60% / 4px 40% no-repeat, linear-gradient(var(--loja), var(--loja)) 6px 20% / 4px 80% no-repeat, linear-gradient(var(--loja), var(--loja)) 12px 40% / 4px 60% no-repeat, linear-gradient(var(--loja), var(--loja)) 18px 70% / 4px 30% no-repeat; background-position-y: bottom; }
.tema-palco .vt-secao-cab a { font-weight: 700; color: var(--pl-tinta) !important; text-transform: uppercase; letter-spacing: .06em; font-size: 12.5px; border-bottom: 2px solid var(--loja); }

/* cartao: fundo claro, foto em cinza quente, botao indigo que vira ambar */
.tema-palco .vt-card { border: 1px solid var(--pl-linha); border-radius: 14px; background: #fff; }
.tema-palco .vt-card:hover { border-color: var(--loja); box-shadow: 0 14px 30px rgba(29, 27, 58, .14); }
.tema-palco .vt-card-img { background: #efeeec; border-radius: 12px; margin: 6px 6px 0; }
.tema-palco .vt-card-img img { object-fit: contain; padding: 10px; mix-blend-mode: multiply; }
.tema-palco .vt-card-nome { font-weight: 600; color: var(--pl-tinta); }
.tema-palco .vt-card-preco strong { font-family: var(--fonte-titulos), sans-serif; font-size: 21px; font-weight: 700; color: var(--pl-tinta); }
.tema-palco .vt-card-botao { border-radius: 10px; background: var(--pl-noite); color: #fff; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.tema-palco .vt-card:hover .vt-card-botao { background: var(--loja); color: var(--pl-noite); }
.tema-palco .vt-selo { border-radius: 999px; background: var(--loja); color: var(--pl-noite); font-weight: 800; }
.tema-palco .vt-selo.cinza { background: var(--pl-noite); color: #fff; }

/* vantagens; chamada para iniciantes (bloco HTML pl-comece) */
.tema-palco .vt-vantagens > * { border: 1px solid var(--pl-linha); border-radius: 14px; background: #fff; }
.tema-palco .vt-vantagens i { border-radius: 12px; background: var(--pl-noite); color: var(--loja); }
.pl-comece { display: flex; align-items: center; gap: 26px; padding: 26px 32px; border-radius: 18px; background: radial-gradient(500px 220px at 85% 0, rgba(255, 182, 39, .28), transparent 70%), var(--topo, #1d1b3a); color: #fff; }
.pl-comece > div:not(.pl-eq) { flex: 1; display: grid; gap: 2px; }
.pl-comece small { color: var(--loja); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pl-comece strong { font-family: var(--fonte-titulos), sans-serif; font-size: 26px; }
.pl-comece span { color: #c9c6e6; }
.pl-comece a { flex: none; padding: 14px 24px; border-radius: 10px; background: var(--loja); color: var(--topo, #1d1b3a) !important; font-weight: 800; text-transform: uppercase; text-decoration: none !important; }
.pl-comece a:hover { background: #fff; }
.pl-eq { display: flex; align-items: flex-end; gap: 5px; width: 56px; height: 54px; flex: none; }
.pl-eq i { flex: 1; height: 40%; border-radius: 3px; background: var(--loja); animation: pl-eq 1s ease-in-out infinite alternate; }
.pl-eq i:nth-child(2) { animation-delay: -.3s; } .pl-eq i:nth-child(3) { animation-delay: -.6s; } .pl-eq i:nth-child(4) { animation-delay: -.15s; } .pl-eq i:nth-child(5) { animation-delay: -.45s; }
@keyframes pl-eq { from { height: 20%; } to { height: 100%; } }
@media (prefers-reduced-motion: reduce) { .pl-eq i { animation: none; height: 70%; } }

/* banners com texto, imagem e texto, blog, avaliacoes, newsletter */
.tema-palco .hdl-hero h2 { font-family: var(--fonte-titulos), sans-serif; font-weight: 700; text-transform: uppercase; }
.tema-palco .hdl-hero .vt-botao { border-radius: 10px; background: var(--loja) !important; color: var(--pl-noite) !important; font-weight: 800; text-transform: uppercase; }
.tema-palco .hdl-it-img img { border-radius: 18px; }
.tema-palco .hdl-it-txt h2 { font-size: 36px; color: var(--pl-tinta); text-transform: uppercase; }
.tema-palco .vt-blog a { border: 1px solid var(--pl-linha); border-radius: 14px; }
.tema-palco .vt-blog strong { font-weight: 700; color: var(--pl-tinta); }
.tema-palco .hdl-depo figure { border: 0; border-radius: 14px; background: #fff; box-shadow: inset 4px 0 0 var(--loja); }
.tema-palco .hdl-depo-nota { color: var(--loja); }
body.vitrine.tema-palco .vt-news { background: var(--pl-noite); }
body.vitrine.tema-palco .vt-news h3 { text-transform: uppercase; }
body.vitrine.tema-palco .vt-news-ico { background: var(--loja); color: var(--pl-noite); }
body.vitrine.tema-palco .vt-news-campo, body.vitrine.tema-palco .vt-news-campo input, body.vitrine.tema-palco .vt-news-campo button { border-radius: 10px; }
body.vitrine.tema-palco .vt-news-campo button { background: var(--loja); color: var(--pl-noite); font-weight: 800; text-transform: uppercase; }

/* ---------- topo proprio (topo.php): indigo com holofote e teclas de piano ---------- */
.pl-topo .vt-aviso { font-weight: 700; }
.pl-topo .vt-barra { background: radial-gradient(600px 160px at 50% -40px, rgba(255, 182, 39, .22), transparent 70%), var(--topo, #1d1b3a); }
.pl-topo .vt-marca img { width: auto; height: var(--logo-altura, 40px); max-width: 240px; border: 0; border-radius: 0; background: none; object-fit: contain; }
body.vitrine .pl-topo .vt-barra .vt-acao, body.vitrine .pl-topo .vt-barra .vt-icone { color: var(--topo-texto, #fff) !important; }
body.vitrine .pl-topo .vt-barra .vt-acao small { color: rgba(255, 255, 255, .65) !important; }
body.vitrine .pl-topo .vt-barra .vt-acao:hover { background: rgba(255, 255, 255, .07); }
body.vitrine .pl-topo .vt-sacola .shop-bag i { color: var(--topo-texto, #fff) !important; }
.pl-topo .vt-acao > i { color: var(--loja); }
.pl-topo .vt-sacola .counter { color: var(--pl-noite); border-color: var(--topo, #1d1b3a); }
body.vitrine .pl-topo .vt-busca input { height: 46px; border: 0; border-radius: 10px; background: rgba(255, 255, 255, .1); color: #fff; }
body.vitrine .pl-topo .vt-busca input::placeholder { color: rgba(255, 255, 255, .55); }
body.vitrine .pl-topo .vt-busca input:focus { background: #fff; color: var(--pl-tinta); }
body.vitrine .pl-topo .vt-busca i { color: rgba(255, 255, 255, .6); }
body.vitrine .pl-topo .vt-busca button { border-radius: 8px; color: var(--pl-noite) !important; font-weight: 800; text-transform: uppercase; }
@media (min-width: 992px) {
	body.vitrine .pl-topo .vt-menu { background: var(--topo, #1d1b3a); border-top: 1px solid rgba(255, 255, 255, .08); }
	body.vitrine .pl-topo .vt-menu > .container > a, body.vitrine .pl-topo .vt-menu-cat > a, body.vitrine .pl-topo .vt-menu-dep-link { color: #e9e7f7 !important; font-weight: 600; font-size: 12.5px; letter-spacing: .02em; text-transform: uppercase; border-radius: 8px; white-space: nowrap; padding-left: 10px; padding-right: 10px; }
	body.vitrine .pl-topo .vt-menu > .container > a:hover, body.vitrine .pl-topo .vt-menu-cat:hover > a { color: var(--loja) !important; background: rgba(255, 255, 255, .06); }
	body.vitrine .pl-topo .vt-menu-dep-link { background: var(--loja) !important; color: var(--pl-noite) !important; }
	body.vitrine .pl-topo .vt-menu a.vt-ofertas { margin-left: auto; color: var(--loja) !important; }
	body.vitrine .pl-topo .vt-menu-cat > a > .lni-chevron-down { display: none; }
	body.vitrine .pl-topo .vt-mega-painel, body.vitrine .pl-topo .vt-menu-cat-lista, body.vitrine .pl-topo .vt-menu-dep-lista { border-radius: 14px; border-top: 3px solid var(--loja); }
	body.vitrine .pl-topo .vt-mega-painel a, body.vitrine .pl-topo .vt-menu-cat-lista a, body.vitrine .pl-topo .vt-menu-dep-lista a { color: var(--pl-tinta) !important; text-transform: none; letter-spacing: 0; background: transparent; }
}

/* ---------- rodape proprio (rodape.php): teclas, disco de vinil e faixas ---------- */
.pl-rodape { padding-top: 0; }
.pl-disco-faixa { display: flex; align-items: center; justify-content: center; gap: 46px; padding: 40px 15px 30px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.pl-disco { position: relative; display: grid; place-items: center; width: 190px; height: 190px; flex: none; border-radius: 50%; background: repeating-radial-gradient(circle, #0b0a16 0 2px, #1b1930 2px 4px); box-shadow: 0 10px 30px rgba(0, 0, 0, .45), inset 0 0 0 1px rgba(255, 255, 255, .06); text-decoration: none !important; animation: pl-gira 12s linear infinite; }
.pl-disco::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 30deg, transparent 0 20%, rgba(255, 255, 255, .08) 25%, transparent 30% 70%, rgba(255, 255, 255, .06) 75%, transparent 80%); }
.pl-disco span { position: relative; z-index: 1; display: grid; place-items: center; width: 84px; height: 84px; padding: 12px; border-radius: 50%; background: var(--loja); color: var(--topo, #1d1b3a); font-weight: 800; font-size: 11px; text-align: center; }
.pl-disco img { max-width: 100%; max-height: 40px; object-fit: contain; filter: brightness(0); opacity: .85; }
.pl-disco:hover { animation-play-state: paused; }
@keyframes pl-gira { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .pl-disco { animation: none; } }
.pl-faixas { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pl-faixas li { display: flex; align-items: center; gap: 14px; color: var(--rodape-texto); font-weight: 600; }
.pl-faixas b { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; border: 1px solid color-mix(in srgb, var(--loja) 60%, transparent); color: var(--loja); font-family: var(--fonte-titulos), sans-serif; font-size: 13px; }
.pl-rodape .vt-rodape-grade { padding-top: 30px; }
.pl-rodape .vt-rodape-loja .vt-marca { display: none; }
.pl-rodape h3 { font-family: var(--fonte-titulos), sans-serif !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .05em; color: var(--loja) !important; }
.pl-rodape-escuro .vt-marca img { filter: brightness(0) invert(1); }
.pl-rodape .vt-redes a { border-radius: 10px; }
.pl-rodape .vt-redes a:hover { background: var(--loja); color: var(--topo, #1d1b3a) !important; }
.pl-rodape .vt-pags span { border-radius: 8px; }

/* ---------- pagina do produto ---------- */
body.vitrine.tema-palco .rowtitle .title-icon { display: none; }
body.vitrine.tema-palco .single-produto { border-radius: 18px; }
body.vitrine.tema-palco .single-produto .galeria { border: 1px solid var(--pl-linha); border-radius: 16px !important; background: #efeeec; }
body.vitrine.tema-palco .produto-detalhes .pd-nome { display: block !important; margin-bottom: 6px; }
body.vitrine.tema-palco .pd-nome .nome span { font-family: var(--fonte-titulos), sans-serif; font-size: 32px; font-weight: 700; line-height: 1.12; color: var(--pl-tinta); }
body.vitrine.tema-palco .produto-detalhes .valor, body.vitrine.tema-palco .produto-detalhes .valor span { font-family: var(--fonte-titulos), sans-serif; font-size: 36px !important; font-weight: 700 !important; color: var(--pl-tinta) !important; }
body.vitrine.modo-loja.tema-palco .line-variacao .thelabel { font-weight: 800 !important; text-transform: uppercase; letter-spacing: .04em; }
body.vitrine.modo-loja.tema-palco .line-variacao .opcao { border-radius: 10px !important; border: 1.5px solid var(--pl-linha) !important; }
body.vitrine.modo-loja.tema-palco .line-variacao .opcao.active { background: var(--pl-noite) !important; border-color: var(--pl-noite) !important; box-shadow: inset 0 -3px 0 var(--loja) !important; }
body.vitrine.modo-loja.tema-palco .line-variacao .opcao.active .titulo, body.vitrine.modo-loja.tema-palco .line-variacao .opcao.active small { color: #fff !important; }
body.vitrine.tema-palco .subtotal-adicionar .col-md-6 { width: 100%; float: none; }
body.vitrine.tema-palco .sacola-adicionar { display: flex !important; align-items: center; justify-content: center; gap: 10px; float: none !important; width: 100%; height: 58px; margin-top: 12px; border-radius: 12px !important; color: var(--pl-noite) !important; font-family: var(--fonte-titulos), sans-serif; font-size: 18px; font-weight: 700 !important; text-transform: uppercase; }
body.vitrine.tema-palco .pa-abas { border-bottom: 2px solid var(--pl-linha); }
body.vitrine.tema-palco .pa-abas a, body.vitrine.tema-palco .pa-abas button { font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
body.vitrine.tema-palco .pa-abas .ativa { color: var(--pl-tinta) !important; box-shadow: inset 0 -3px 0 var(--loja); }

/* ---------- carrinho (carrinho.php) e finalizar compra ---------- */
body.vitrine.tema-palco .ck h1 { font-family: var(--fonte-titulos), sans-serif; font-size: 36px; text-transform: uppercase; color: var(--pl-tinta); }
body.vitrine.tema-palco .co-passos .atual { color: var(--pl-tinta); box-shadow: inset 0 -2px 0 var(--loja); }
body.vitrine.tema-palco .ck-item, body.vitrine.tema-palco .co-bloco { border: 1px solid var(--pl-linha); border-radius: 14px; }
body.vitrine.tema-palco .ck-foto img { background: #efeeec; border-radius: 10px; }
body.vitrine.tema-palco .co-bloco h2, body.vitrine.tema-palco .ck-resumo h2 { font-family: var(--fonte-titulos), sans-serif; text-transform: uppercase; color: var(--pl-tinta); }
body.vitrine.tema-palco .co-bloco h2 span { background: var(--loja); color: var(--pl-noite); }
body.vitrine.tema-palco .ck-resumo { border: 0; border-radius: 16px; background: #fff; box-shadow: 0 10px 28px rgba(29, 27, 58, .1); border-top: 4px solid var(--loja); }
body.vitrine.tema-palco .ck-valores .ck-tot { font-family: var(--fonte-titulos), sans-serif; font-weight: 700; color: var(--pl-tinta); }
body.vitrine.tema-palco .ck-finalizar { border-radius: 12px !important; color: var(--pl-noite) !important; text-transform: uppercase; }
body.vitrine.tema-palco .ck-qtd, body.vitrine.tema-palco .ck-linha-form input, body.vitrine.tema-palco .ck-linha-form button, body.vitrine.tema-palco .co-campos input, body.vitrine.tema-palco .co-opcao, body.vitrine.tema-palco .ck-frete { border-radius: 10px !important; }
.pl-frete { display: flex; align-items: center; gap: 20px; padding: 14px 20px; border-radius: 14px; background: var(--topo, #1d1b3a); color: #e9e7f7; }
.pl-frete p { margin: 0; font-weight: 600; }
.pl-frete p b { color: var(--loja); }
.pl-eq2 { display: flex; align-items: flex-end; gap: 3px; height: 40px; flex: none; }
.pl-eq2 i { width: 6px; height: var(--h); border-radius: 2px; background: rgba(255, 255, 255, .14); }
.pl-eq2 i.on { background: var(--loja); }
.pl-frete.cheio .pl-eq2 i { animation: pl-eq 0.8s ease-in-out infinite alternate; }
.pl-frete.cheio .pl-eq2 i:nth-child(odd) { animation-delay: -.4s; }

@media (max-width: 767px) {
	.tema-palco .vt-secao-cab h2 { font-size: 21px; }
	.pl-comece { flex-direction: column; align-items: flex-start; }
	.pl-disco-faixa { flex-direction: column; gap: 24px; }
	body.vitrine.tema-palco .pd-nome .nome span { font-size: 25px; }
}
