/* ============================================================
   Tema Neon 3D — páginas internas no escuro (produto, categoria,
   busca, carrinho, pagamento, PIX, finalizar, login, cadastro,
   minha conta e demais).
   SÓ CSS: o markup dessas páginas não muda, para não mexer em
   formulários, JS e fluxos de compra. Tudo escopado em .t3d-interna
   (o <main> das páginas internas). Larguras e grids continuam os
   do Bootstrap 3 e das próprias páginas; aqui é cor, fonte, borda,
   raio e brilho. O style.css antigo pinta fundos de #FFF/#E4E7ED e
   textos de #2B2D42 — por isso a cobertura larga abaixo.
   ============================================================ */

body.tema-neon3d .t3d-interna {
  min-height: 52vh;
  padding: 30px 0 40px;
  color: var(--t3d-txt);
  font-family: var(--t3d-fonte);
  font-size: 14.5px;
  line-height: 1.55;
}
@media (min-width: 768px) {
  body.tema-neon3d .t3d-interna .container { width: var(--t3d-largura); }
}

/* ---------- Tipografia e links ---------- */
body.tema-neon3d .t3d-interna :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--t3d-fonte-titulo);
  font-weight: 600;
  letter-spacing: -.02em;
  color: var(--t3d-txt);
}
body.tema-neon3d .t3d-interna :is(p, li, td, th, span, label, small, strong, b, dd, dt) { color: inherit; }
body.tema-neon3d .t3d-interna a { color: var(--t3d-txt); transition: color .2s ease; }
body.tema-neon3d .t3d-interna a:hover,
body.tema-neon3d .t3d-interna a:focus { color: var(--t3d-n1); text-decoration: none; }
body.tema-neon3d .t3d-interna :is(.text-muted, .help-block, small.text-muted) { color: var(--t3d-muted) !important; }
body.tema-neon3d .t3d-interna :is(.text-danger, .text-primary) { color: var(--t3d-n1) !important; }
body.tema-neon3d .t3d-interna .text-success { color: #4ade80 !important; }
body.tema-neon3d .t3d-interna .text-warning { color: var(--t3d-n3) !important; }
body.tema-neon3d .t3d-interna hr { border-color: var(--t3d-line); }
/* o template antigo pinta todo ícone/<i> com a cor principal */
body.tema-neon3d .t3d-interna .fa { color: inherit; }

body.tema-neon3d .t3d-interna .section { padding-top: 22px; padding-bottom: 22px; }
body.tema-neon3d .t3d-interna .section-title { margin: 6px 0 26px; }
body.tema-neon3d .t3d-interna .section-title .text-danger { color: var(--t3d-n1) !important; }
body.tema-neon3d .t3d-interna .section-title .title {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
  font: 600 clamp(28px, 3.2vw, 44px)/1.05 var(--t3d-fonte-titulo);
  letter-spacing: -.035em;
  text-transform: none;
  color: var(--t3d-txt);
}
body.tema-neon3d .t3d-interna .section-title .title::after { display: none; }
body.tema-neon3d .t3d-interna #breadcrumb { background: transparent; border: 0; }
body.tema-neon3d .t3d-interna .breadcrumb-tree li,
body.tema-neon3d .t3d-interna .breadcrumb-tree li a { color: var(--t3d-muted); }

/* ---------- Botões ---------- */
body.tema-neon3d .t3d-interna :is(.primary-btn, .order-submit, .add-to-cart-btn, .btn-primary, .btn-success, .btn-pagamento, .btn-ir-pagamento, .btn-frete, .btn-info) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 24px;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--t3d-grad) !important;
  background-size: 180% 100% !important;
  color: var(--t3d-on-neon) !important;
  font: 600 14px/1 var(--t3d-fonte);
  letter-spacing: .01em;
  text-transform: none;
  box-shadow: 0 0 0 1px rgb(var(--t3d-n1-rgb) / .3), 0 12px 30px -12px rgb(var(--t3d-n2-rgb) / .8);
  transition: transform .25s var(--t3d-mola), box-shadow .3s ease, background-position .6s ease;
}
body.tema-neon3d .t3d-interna :is(.primary-btn, .order-submit, .add-to-cart-btn, .btn-primary, .btn-success, .btn-pagamento, .btn-ir-pagamento, .btn-frete, .btn-info):hover {
  transform: translateY(-2px);
  background-position: 100% 0 !important;
  box-shadow: 0 0 0 1px rgb(var(--t3d-n1-rgb) / .5), 0 16px 40px -10px rgb(var(--t3d-n2-rgb) / .95);
}
body.tema-neon3d .t3d-interna :is(.primary-btn, .order-submit, .add-to-cart-btn, .btn-primary, .btn-success, .btn-pagamento, .btn-ir-pagamento, .btn-frete, .btn-info) :is(.fa, i) { color: inherit !important; }
body.tema-neon3d .t3d-interna .btn-sm { min-height: 34px; padding: 0 14px; font-size: 12.5px; }
body.tema-neon3d .t3d-interna :is(.btn-default, .btn-secondary, .btn-light, .btn-continuar-comprando, .btn-outline-primary, .btn-outline-secondary) {
  border: 1px solid var(--t3d-line-2) !important;
  border-radius: 999px;
  background: rgb(var(--t3d-txt-rgb) / .04) !important;
  color: var(--t3d-txt) !important;
}
body.tema-neon3d .t3d-interna :is(.btn-default, .btn-secondary, .btn-light, .btn-continuar-comprando, .btn-outline-primary, .btn-outline-secondary):hover { border-color: var(--t3d-n1) !important; }
body.tema-neon3d .t3d-interna :is(.btn-danger, .btn-delete) { border-radius: 999px; }
/* o template antigo desenha um "+" animado no hover do botão de carrinho */
body.tema-neon3d .t3d-interna .add-to-cart-btn::before,
body.tema-neon3d .t3d-interna .add-to-cart-btn > i { position: static; opacity: 1; transform: none; width: auto; height: auto; background: none; }
body.tema-neon3d .t3d-interna .add-to-cart-btn:hover { padding: 0 24px; }

/* ---------- Campos ---------- */
body.tema-neon3d .t3d-interna :is(.input, .form-control, .input-select, select, textarea, input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="search"], input[type="date"]) {
  min-height: 46px;
  border: 1px solid var(--t3d-line-2);
  border-radius: 12px;
  background: rgb(var(--t3d-surf-rgb) / .85);
  color: var(--t3d-txt);
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body.tema-neon3d .t3d-interna select option { background: var(--t3d-surf); color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna textarea { min-height: 96px; }
body.tema-neon3d .t3d-interna :is(.input, .form-control, select, textarea, input)::placeholder { color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna :is(.input, .form-control, select, textarea, input):focus {
  border-color: var(--t3d-n1);
  box-shadow: 0 0 0 3px rgb(var(--t3d-n1-rgb) / .2);
  outline: none;
}
body.tema-neon3d .t3d-interna :is(.form-control[disabled], .form-control[readonly], input[disabled]) { background: var(--t3d-surf-2); color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna label { color: rgb(var(--t3d-txt-rgb) / .72); font-weight: 500; font-size: 12.5px; }
body.tema-neon3d .t3d-interna .input-checkbox span,
body.tema-neon3d .t3d-interna .input-radio span { border-color: var(--t3d-line-2) !important; background: var(--t3d-surf) !important; }
body.tema-neon3d .t3d-interna .input-checkbox input:checked + label span,
body.tema-neon3d .t3d-interna .input-radio input:checked + label span { background: var(--t3d-n1) !important; border-color: var(--t3d-n1) !important; }
body.tema-neon3d .t3d-interna .input-radio input[type="radio"] + label span:after { background: var(--t3d-on-neon); }
body.tema-neon3d .t3d-interna .input-group-addon { border-color: var(--t3d-line-2); background: var(--t3d-surf-2); color: var(--t3d-muted); }

/* quantidade (+/-) */
body.tema-neon3d .t3d-interna .input-number input { border-radius: 12px; }
body.tema-neon3d .t3d-interna :is(.qty-up, .qty-down) { border-color: var(--t3d-line-2) !important; background: var(--t3d-surf-2) !important; color: var(--t3d-txt) !important; }
body.tema-neon3d .t3d-interna :is(.qty-up, .qty-down):hover { background: rgb(var(--t3d-n1-rgb) / .15) !important; }

/* Select2 (cidade, estado...) */
body.tema-neon3d .select2-container--default .select2-selection--single,
body.tema-neon3d .select2-container--default .select2-selection--multiple {
  min-height: 46px;
  border: 1px solid var(--t3d-line-2);
  border-radius: 12px;
  background: rgb(var(--t3d-surf-rgb) / .85);
}
body.tema-neon3d .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 44px; color: var(--t3d-txt); }
body.tema-neon3d .select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }
body.tema-neon3d .select2-dropdown { border-color: var(--t3d-line-2); background: var(--t3d-surf); color: var(--t3d-txt); }
body.tema-neon3d .select2-search--dropdown .select2-search__field { border-color: var(--t3d-line-2); background: var(--t3d-surf-2); color: var(--t3d-txt); }
body.tema-neon3d .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--t3d-n1); color: var(--t3d-on-neon); }
body.tema-neon3d .select2-container--default .select2-results__option[aria-selected="true"] { background: var(--t3d-surf-3); }

/* ---------- Caixas (formulários, resumo, cards, painéis) ---------- */
body.tema-neon3d .t3d-interna :is(.billing-details, .order-summary, .card, .cart-item, .panel, .well, .shiping-details, .order-details, .box, .caixa) {
  padding: 26px;
  border: 1px solid var(--t3d-line);
  border-radius: var(--t3d-r-lg);
  background: rgb(var(--t3d-surf-rgb) / .78);
  color: var(--t3d-txt);
  box-shadow: 0 20px 50px -30px rgb(0 0 0 / .9);
}
body.tema-neon3d .t3d-interna :is(.card-header, .card-footer, .panel-heading, .panel-footer) { border-color: var(--t3d-line); background: transparent; color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .card-body { background: transparent; }
body.tema-neon3d .t3d-interna .cart-item { padding: 16px 20px; margin-bottom: 12px; }
body.tema-neon3d .t3d-interna :is(.order-total, .sub_total) { color: var(--t3d-txt) !important; font-family: var(--t3d-fonte-titulo); }
body.tema-neon3d .t3d-interna .order-summary .order-col { border-color: var(--t3d-line); }
body.tema-neon3d .t3d-interna [style*="background: #fff"],
body.tema-neon3d .t3d-interna [style*="background:#fff"],
body.tema-neon3d .t3d-interna [style*="background-color: #fff"],
body.tema-neon3d .t3d-interna [style*="background-color:#fff"],
body.tema-neon3d .t3d-interna [style*="background: white"],
body.tema-neon3d .t3d-interna [style*="background:#FFF"],
body.tema-neon3d .t3d-interna [style*="background: #FFF"] { background: rgb(var(--t3d-surf-rgb) / .78) !important; color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna [style*="color: #333"],
body.tema-neon3d .t3d-interna [style*="color:#333"],
body.tema-neon3d .t3d-interna [style*="color: #000"],
body.tema-neon3d .t3d-interna [style*="color:#000"] { color: var(--t3d-txt) !important; }

/* tabelas */
body.tema-neon3d .t3d-interna .table,
body.tema-neon3d .t3d-interna table { color: var(--t3d-txt); background: transparent; }
body.tema-neon3d .t3d-interna .table > :is(thead, tbody, tfoot) > tr > :is(th, td) { border-color: var(--t3d-line); background: transparent; vertical-align: middle; }
body.tema-neon3d .t3d-interna .table > thead > tr > th { color: var(--t3d-muted); font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; border-bottom-width: 1px; }
body.tema-neon3d .t3d-interna .table-striped > tbody > tr:nth-of-type(odd) { background: rgb(var(--t3d-txt-rgb) / .025); }
body.tema-neon3d .t3d-interna .table-hover > tbody > tr:hover { background: rgb(var(--t3d-n1-rgb) / .05); }
body.tema-neon3d .t3d-interna .table-bordered,
body.tema-neon3d .t3d-interna .table-bordered > * > tr > * { border-color: var(--t3d-line) !important; }

/* alertas */
body.tema-neon3d .t3d-interna .alert { border-radius: 14px; border: 1px solid var(--t3d-line-2); background: rgb(var(--t3d-surf-rgb) / .8); color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .alert-success { border-color: rgb(74 222 128 / .4); background: rgb(74 222 128 / .08); }
body.tema-neon3d .t3d-interna .alert-danger { border-color: rgb(248 113 113 / .45); background: rgb(248 113 113 / .08); }
body.tema-neon3d .t3d-interna .alert-warning { border-color: rgb(var(--t3d-n3-rgb) / .45); background: rgb(var(--t3d-n3-rgb) / .08); }
body.tema-neon3d .t3d-interna .alert-info { border-color: rgb(var(--t3d-n1-rgb) / .45); background: rgb(var(--t3d-n1-rgb) / .08); }
body.tema-neon3d .t3d-interna .badge,
body.tema-neon3d .t3d-interna .label { border-radius: 999px; }
body.tema-neon3d .t3d-interna .list-group-item { border-color: var(--t3d-line); background: transparent; color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .list-group-item.active { background: rgb(var(--t3d-n1-rgb) / .14); border-color: rgb(var(--t3d-n1-rgb) / .4); color: var(--t3d-txt); }

/* ---------- Grade de produtos (categoria, busca) ---------- */
body.tema-neon3d .t3d-interna .product {
  overflow: hidden;
  margin-bottom: 26px;
  border: 1px solid var(--t3d-line);
  border-radius: 22px;
  background: linear-gradient(170deg, var(--t3d-surf-2), var(--t3d-surf) 60%);
  box-shadow: none;
  text-align: left;
  transition: transform .5s var(--t3d-mola), box-shadow .4s ease, border-color .3s ease;
}
body.tema-neon3d .t3d-interna .product:hover {
  transform: translateY(-6px);
  border-color: rgb(var(--t3d-n1-rgb) / .35);
  box-shadow: 0 30px 60px -30px rgb(0 0 0 / .95), 0 0 40px -18px rgb(var(--t3d-n2-rgb) / .6);
}
body.tema-neon3d .t3d-interna .product .product-img {
  position: relative;
  margin: 10px 10px 0;
  border-radius: 15px;
  overflow: hidden;
  background: radial-gradient(circle at 50% 38%, var(--t3d-surf-3), var(--t3d-surf-2) 72%);
}
body.tema-neon3d .t3d-interna .product .product-img img { transition: transform .9s var(--t3d-mola); }
body.tema-neon3d .t3d-interna .product:hover .product-img img { transform: scale(1.06); }
body.tema-neon3d.t3d-fotos-estudio .t3d-interna .product .product-img { background: radial-gradient(circle at 50% 40%, #fafafa, #e3e5ea 75%); }
body.tema-neon3d.t3d-fotos-estudio .t3d-interna .product .product-img img { object-fit: contain !important; mix-blend-mode: multiply; }
body.tema-neon3d .t3d-interna .product .product-body { padding: 16px 18px 20px; background: transparent; text-align: left; }
body.tema-neon3d .t3d-interna .product .product-category {
  margin: 0 0 6px;
  color: var(--t3d-muted);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
}
body.tema-neon3d .t3d-interna .product .product-name,
body.tema-neon3d .t3d-interna .product .product-name > a {
  font: 600 16px/1.25 var(--t3d-fonte-titulo) !important;
  color: var(--t3d-txt) !important;
  text-transform: none !important;
}
body.tema-neon3d .t3d-interna .product .product-price { color: var(--t3d-txt) !important; font: 700 16px/1.3 var(--t3d-fonte); }
body.tema-neon3d .t3d-interna .product-old-price { color: var(--t3d-muted) !important; font-weight: 500; }
body.tema-neon3d .t3d-interna .product-label > span {
  padding: 6px 10px;
  border: 1px solid var(--t3d-vidro-borda) !important;
  border-radius: 999px !important;
  background: rgb(var(--t3d-bg-rgb) / .65) !important;
  color: var(--t3d-txt) !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
}
body.tema-neon3d .t3d-interna .product-label > span.sale { border-color: transparent !important; background: linear-gradient(100deg, var(--t3d-n3), var(--t3d-n2)) !important; color: #fff !important; }
body.tema-neon3d .t3d-interna .product .add-to-cart { background: transparent; }
body.tema-neon3d .t3d-interna .products-tabs .btn-success { width: 100%; }

/* faixas de produtos (Layout / Banners) com o card do tema dentro de colunas/slick */
body.tema-neon3d .t3d-interna .faixa-produtos .t3d-card { margin-bottom: 18px; }
body.tema-neon3d .faixa-produtos-slick .slick-prev,
body.tema-neon3d .faixa-produtos-slick .slick-next { background: var(--t3d-surf-2) !important; border: 1px solid var(--t3d-line-2); box-shadow: none !important; }
body.tema-neon3d .faixa-produtos-slick :is(.slick-prev, .slick-next)::before { color: var(--t3d-txt) !important; }
body.tema-neon3d .slick-dots li button::before { color: var(--t3d-muted); }
body.tema-neon3d .slick-dots li.slick-active button::before { color: var(--t3d-n1); }

/* filtros laterais da categoria */
body.tema-neon3d .t3d-interna :is(.aside, #aside) .aside-title { color: var(--t3d-txt); font-family: var(--t3d-fonte-titulo); }
body.tema-neon3d .t3d-interna .noUi-target { border-color: var(--t3d-line-2); background: var(--t3d-surf-2); box-shadow: none; }
body.tema-neon3d .t3d-interna .noUi-connect { background: var(--t3d-grad); }
body.tema-neon3d .t3d-interna .noUi-handle { border-color: var(--t3d-n1); background: var(--t3d-surf); box-shadow: 0 0 12px rgb(var(--t3d-n1-rgb) / .6); }

/* ---------- Página do produto ---------- */
body.tema-neon3d .t3d-interna .product-details .product-name {
  font: 600 clamp(28px, 2.8vw, 42px)/1.06 var(--t3d-fonte-titulo);
  letter-spacing: -.035em;
  text-transform: none;
  color: var(--t3d-txt);
}
body.tema-neon3d .t3d-interna .product-details > div > p,
body.tema-neon3d .t3d-interna .product-details > p { font-size: 15px; line-height: 1.65; color: rgb(var(--t3d-txt-rgb) / .72); }
body.tema-neon3d .t3d-interna .product-details .product-price {
  color: var(--t3d-txt) !important;
  font: 700 30px/1.2 var(--t3d-fonte-titulo);
}
body.tema-neon3d .t3d-interna .product-details .produto-sku { color: var(--t3d-n1); }
body.tema-neon3d .t3d-interna .product-details .product-available { color: #4ade80; }
body.tema-neon3d .t3d-interna .product-details :is(.product-options, .add-to-cart, .product-links) { border-color: var(--t3d-line); }
body.tema-neon3d .t3d-interna .product-links li a { color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna .product-links li a:hover { color: var(--t3d-n1); }

/* imagem principal e miniaturas: quadradas, com moldura de vidro */
body.tema-neon3d .t3d-interna .product-preview {
  overflow: hidden;
  border: 1px solid var(--t3d-line);
  border-radius: var(--t3d-r-lg);
  background: radial-gradient(circle at 50% 40%, var(--t3d-surf-3), var(--t3d-surf) 75%);
}
body.tema-neon3d.t3d-fotos-estudio .t3d-interna .product-preview { background: radial-gradient(circle at 50% 40%, #fafafa, #e3e5ea 75%); }
body.tema-neon3d.t3d-fotos-estudio .t3d-interna .product-preview img:not(.zoomImg) { mix-blend-mode: multiply; }
body.tema-neon3d .t3d-interna #product-main-img .product-preview {
  aspect-ratio: 1 / 1;
  display: flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: 0 40px 80px -40px rgb(0 0 0 / .95), 0 0 60px -30px rgb(var(--t3d-n2-rgb) / .5);
}
body.tema-neon3d .t3d-interna #product-main-img .product-preview > img:not(.zoomImg) { width: 100%; height: 100%; object-fit: contain; }
body.tema-neon3d .t3d-interna #product-main-img .zoomImg { background: var(--t3d-surf); }
body.tema-neon3d .t3d-interna #product-imgs .product-preview {
  aspect-ratio: 1 / 1;
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  border-radius: var(--t3d-r-md);
  opacity: .7;
  transition: opacity .2s ease, border-color .2s ease;
}
body.tema-neon3d .t3d-interna #product-imgs .product-preview > img { width: 100%; height: 100%; object-fit: contain; }
body.tema-neon3d .t3d-interna #product-imgs .product-preview.slick-current,
body.tema-neon3d .t3d-interna #product-imgs .product-preview:hover { opacity: 1; border-color: var(--t3d-n1); box-shadow: 0 0 18px -6px rgb(var(--t3d-n1-rgb) / .8); }
body.tema-neon3d .t3d-interna #product-imgs :is(.slick-prev, .slick-next) { background: var(--t3d-surf-2); border: 1px solid var(--t3d-line-2); }
body.tema-neon3d .t3d-interna #product-imgs :is(.slick-prev, .slick-next)::before { color: var(--t3d-txt); }

/* visualizador 3D (.glb) da página do produto: em destaque, no vidro do tema */
body.tema-neon3d .t3d-interna #es7-model3d-caixa {
  height: auto !important;
  aspect-ratio: 1 / 1;
  border: 1px solid rgb(var(--t3d-n1-rgb) / .3);
  border-radius: var(--t3d-r-lg);
  background: radial-gradient(circle at 50% 40%, var(--t3d-surf-3), var(--t3d-surf) 75%);
  box-shadow: 0 0 60px -24px rgb(var(--t3d-n1-rgb) / .6);
  overflow: hidden;
}
body.tema-neon3d .t3d-interna .es7-view-btn {
  min-height: 36px;
  border-radius: 999px !important;
  font-weight: 600;
}
body.tema-neon3d .t3d-interna .es7-view-btn.active { background: var(--t3d-grad) !important; border: 0 !important; color: var(--t3d-on-neon) !important; box-shadow: 0 0 22px -6px rgb(var(--t3d-n1-rgb) / .8); }
body.tema-neon3d .t3d-interna .es7-view-btn:not(.active) {
  background: rgb(var(--t3d-txt-rgb) / .04) !important;
  color: var(--t3d-txt) !important;
  border: 1px solid var(--t3d-line-2) !important;
}
body.tema-neon3d .t3d-interna .es7-3d-expand { border-radius: 999px; background: rgb(var(--t3d-bg-rgb) / .6); color: var(--t3d-txt); border: 1px solid var(--t3d-line-2); }
body.tema-neon3d .es7-3d-modal { background: rgb(0 0 0 / .78); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
body.tema-neon3d .es7-3d-card { border: 1px solid rgb(var(--t3d-n1-rgb) / .3); border-radius: var(--t3d-r-xl); background: var(--t3d-surf); box-shadow: 0 0 80px -20px rgb(var(--t3d-n2-rgb) / .6); }
body.tema-neon3d :is(.es7-lightbox-close, .es7-lightbox-nav, .es7-3d-close) { background: var(--t3d-surf-2); color: var(--t3d-txt); border: 1px solid var(--t3d-line-2); }
body.tema-neon3d .es7-lightbox { background: rgb(0 0 0 / .9); }

/* descrição longa (vem do editor): a família é a do tema; tamanho do editor vale */
body.tema-neon3d .t3d-interna #product-tab { margin-top: 40px; }
body.tema-neon3d .t3d-interna #product-tab .tab-nav { border-color: var(--t3d-line); }
body.tema-neon3d .t3d-interna #product-tab .tab-nav::after { background: var(--t3d-line); }
body.tema-neon3d .t3d-interna #product-tab .tab-nav li { background: transparent; }
body.tema-neon3d .t3d-interna #product-tab .tab-nav li a { color: var(--t3d-muted); font-weight: 600; }
body.tema-neon3d .t3d-interna #product-tab .tab-nav li.active a { color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna #product-tab .tab-nav li.active a::after { background: var(--t3d-grad); }
body.tema-neon3d .t3d-interna #product-tab .tab-content { font-size: 15px; line-height: 1.75; color: rgb(var(--t3d-txt-rgb) / .82); }
body.tema-neon3d .t3d-interna #product-tab .tab-content :is(p, li, span, div, td, pre, sub, sup) { font-family: var(--t3d-fonte) !important; }
body.tema-neon3d .t3d-interna #product-tab .tab-content [style*="color"] { color: inherit !important; }
body.tema-neon3d .t3d-interna #product-tab .tab-content [style*="background"] { background: transparent !important; }
body.tema-neon3d .t3d-interna #product-tab .tab-content pre {
  white-space: pre-wrap; word-break: normal; overflow-wrap: anywhere; overflow: visible;
  padding: 0; background: none; border: 0; border-radius: 0; color: inherit;
}
body.tema-neon3d .t3d-interna #product-tab .tab-content :is(h1, h2, h3, h4) { font-family: var(--t3d-fonte-titulo) !important; color: var(--t3d-txt); }

/* ---------- Abas, modais e paginação ---------- */
body.tema-neon3d .t3d-interna .nav-tabs { border-color: var(--t3d-line); }
body.tema-neon3d .t3d-interna .nav-tabs > li > a { border: 0; border-radius: 999px; color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna .nav-tabs > li > a:hover { background: rgb(var(--t3d-txt-rgb) / .05); color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .nav-tabs > li.active > a,
body.tema-neon3d .t3d-interna .nav-tabs > li.active > a:hover,
body.tema-neon3d .t3d-interna .nav-tabs > li.active > a:focus { border: 0; background: rgb(var(--t3d-n1-rgb) / .12); color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .nav-pills > li > a { border-radius: 999px; color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna .nav-pills > li.active > a { background: var(--t3d-grad); color: var(--t3d-on-neon); }

body.tema-neon3d .modal-content { border: 1px solid var(--t3d-vidro-borda); border-radius: var(--t3d-r-lg); background: var(--t3d-surf); color: var(--t3d-txt); box-shadow: 0 40px 100px -30px rgb(0 0 0 / .95); }
body.tema-neon3d .modal-header,
body.tema-neon3d .modal-footer { border-color: var(--t3d-line); }
body.tema-neon3d .modal-title { color: var(--t3d-txt); font-family: var(--t3d-fonte-titulo); }
body.tema-neon3d .modal .close { color: var(--t3d-txt); opacity: .7; text-shadow: none; }
body.tema-neon3d .modal-backdrop.in { opacity: .7; }
body.tema-neon3d .modal :is(.form-control, input, select, textarea) { border-color: var(--t3d-line-2); background: var(--t3d-surf-2); color: var(--t3d-txt); }

body.tema-neon3d .t3d-interna .es7-paginacao :is(a, span) { border-radius: 999px; border-color: var(--t3d-line-2); background: transparent; color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .es7-paginacao a:hover,
body.tema-neon3d .t3d-interna .es7-paginacao .ativo { background: var(--t3d-grad); border-color: transparent; color: var(--t3d-on-neon); }
body.tema-neon3d .t3d-interna .es7-paginacao .desativado { background: var(--t3d-surf-2); color: var(--t3d-muted); }
body.tema-neon3d .t3d-interna :is(.pagination, .store-pagination) > li > :is(a, span),
body.tema-neon3d .t3d-interna .store-pagination li { border-color: var(--t3d-line-2); background: transparent; color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna :is(.pagination, .store-pagination) > .active > :is(a, span),
body.tema-neon3d .t3d-interna .store-pagination li.active { background: var(--t3d-grad); border-color: transparent; color: var(--t3d-on-neon); }
body.tema-neon3d .t3d-interna .store-grid li { background: var(--t3d-surf-2); border-color: var(--t3d-line-2); color: var(--t3d-txt); }

/* ---------- Carrinho, pagamento e conta: textos com cor fixa do template ---------- */
/* "total de itens" vem com color:#D10024 inline */
body.tema-neon3d .t3d-interna strong[style*="D10024"],
body.tema-neon3d .t3d-interna [style*="color: #D10024"],
body.tema-neon3d .t3d-interna [style*="color:#D10024"] { color: var(--t3d-n1) !important; }
body.tema-neon3d .t3d-interna .order-summary .order-products .order-col div,
body.tema-neon3d .t3d-interna .order-summary .order-col strong { color: var(--t3d-txt); }
body.tema-neon3d .t3d-interna .payment-method .input-radio .caption { background: transparent; color: rgb(var(--t3d-txt-rgb) / .78); }
body.tema-neon3d .t3d-interna .nav-tabs-custom,
body.tema-neon3d .t3d-interna .tab-content { background: transparent; }
body.tema-neon3d .t3d-interna code { border-radius: 6px; background: var(--t3d-surf-3); color: var(--t3d-n1); }

/* banners e faixas de Layout (home opcional e categorias): só o título */
body.tema-neon3d .t3d-blocos-loja .section-title .title { font-family: var(--t3d-fonte-titulo); }

/* ---------- Ajustes de estilos fixos das views padrão ---------- */
/* moldura branca do slick da foto principal (produto) */
body.tema-neon3d .t3d-interna #product-main-img { background: transparent !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; }
/* caixa do 3D nasce com background:#f5f5f5 inline */
body.tema-neon3d .t3d-interna #es7-model3d-caixa[style] { background: radial-gradient(circle at 50% 40%, var(--t3d-surf-3), var(--t3d-surf) 75%) !important; }
body.tema-neon3d .es7-lightbox-stage { background: var(--t3d-surf) !important; border: 1px solid var(--t3d-line-2); border-radius: var(--t3d-r-lg) !important; }
body.tema-neon3d .t3d-interna .es7-3d-expand:hover { background: var(--t3d-surf-3); }
body.tema-neon3d .es7-3d-close:hover { color: var(--t3d-n3); }

/* variações em pílula (cor, tamanho...) */
body.tema-neon3d .t3d-interna .es7-variacao-label { color: rgb(var(--t3d-txt-rgb) / .72); font-size: 12px; letter-spacing: .12em; }
body.tema-neon3d .t3d-interna .es7-variacao-pill { border-color: var(--t3d-line-2); background: rgb(var(--t3d-txt-rgb) / .04); color: var(--t3d-txt); border-radius: 12px; }
body.tema-neon3d .t3d-interna .es7-variacao-pill:hover { border-color: var(--t3d-n1); color: var(--t3d-txt); box-shadow: 0 0 16px -6px rgb(var(--t3d-n1-rgb) / .8); }
body.tema-neon3d .t3d-interna .es7-variacao-pill.active { border-color: transparent; background: var(--t3d-grad); color: var(--t3d-on-neon); box-shadow: 0 0 22px -6px rgb(var(--t3d-n2-rgb) / .9); }
body.tema-neon3d .t3d-interna .es7-variacao-pill.disabled:hover { border-color: var(--t3d-line-2); color: var(--t3d-txt); box-shadow: none; }

/* grade da categoria e da busca: fundo branco fixo atrás da foto */
body.tema-neon3d .t3d-interna .products-grid .product .product-img { background: radial-gradient(circle at 50% 38%, var(--t3d-surf-3), var(--t3d-surf-2) 72%); }
body.tema-neon3d.t3d-fotos-estudio .t3d-interna .products-grid .product .product-img { background: radial-gradient(circle at 50% 40%, #fafafa, #e3e5ea 75%); }
/* login: "quero me cadastrar" vem com color:red inline */
body.tema-neon3d .t3d-interna a[style*="color: red"],
body.tema-neon3d .t3d-interna a[style*="color:red"] { color: var(--t3d-n1) !important; font-weight: 600; }
/* botões do template em caixa-alta: no tema, frase normal */
body.tema-neon3d .t3d-interna :is(.primary-btn, .order-submit, .btn) { text-transform: none; letter-spacing: .01em; }
/* seções e grades das views padrão com fundo claro fixo (ex.: cadastro usa #fafafa na .section) */
body.tema-neon3d .t3d-interna :is(.section, .container, .container-fluid, .row, #breadcrumb, .products-tabs, .tab-pane) { background-color: transparent !important; }
/* caixas um pouco mais sólidas: o vidro não pode depender do que está atrás para ter contraste */
body.tema-neon3d .t3d-interna :is(.billing-details, .order-summary, .card, .cart-item, .panel, .well) { background: rgb(var(--t3d-surf-rgb) / .9); }
body.tema-neon3d .t3d-interna .billing-details .billing-details { border: 0; background: transparent; box-shadow: none; padding: 0; }
/* pagamento: abas PIX / Boleto / Cartão (a escolhida vinha sublinhada em vermelho) */
body.tema-neon3d .t3d-interna .select-pay { cursor: pointer; padding-top: 10px; padding-bottom: 10px; border-radius: 12px; color: var(--t3d-muted); font-weight: 600; letter-spacing: .06em; text-align: center; transition: color .2s ease, background .2s ease; }
body.tema-neon3d .t3d-interna .select-pay:hover { color: var(--t3d-txt); background: rgb(var(--t3d-txt-rgb) / .04); }
body.tema-neon3d .t3d-interna .select-pay.select { border-bottom: 0 !important; color: var(--t3d-txt); background: rgb(var(--t3d-n1-rgb) / .1); box-shadow: inset 0 -2px 0 var(--t3d-n1); }
