/* Nil Soares — Encomendas por Molde. Herda a fonte do tema; cores seguem os botões rosa da loja. */
.ns-enc{margin:0 0 14px;font-family:inherit;color:#252129}
.ns-enc [hidden]{display:none!important}
.ns-enc-badge{margin:0 0 12px;padding:9px 12px;border-radius:8px;background:#fff0f6;color:#8f2150;font-size:13px;line-height:1.45}
.ns-enc-group{margin:0 0 14px}
.ns-enc-label{margin:0 0 7px;font-size:14px;font-weight:700;color:#252129}
.ns-enc-req{color:#d63b70}
.ns-enc-hint{margin:0;font-size:12px;color:#77717b}
.ns-enc-options{display:flex;flex-wrap:wrap;gap:8px}

/* botões de material e corpinho */
.ns-enc-btn{display:inline-flex;align-items:center;min-height:42px;padding:9px 14px;border:1px solid #e3d4dc;border-radius:8px;background:#fff;color:#38323a;font:inherit;font-size:14px;line-height:1.3;cursor:pointer;text-transform:none;box-shadow:none;touch-action:manipulation}
.ns-enc-btn:hover{border-color:#d63b70}
.ns-enc-btn.is-selected{border-color:#d63b70;background:#fff0f6;color:#bc2d61;font-weight:700}
.ns-enc-btn:disabled{opacity:.45;cursor:not-allowed}
.ns-enc-btn:focus-visible,.ns-enc-opt:focus-within{outline:3px solid #db3b7340;outline-offset:2px}

/* opções (cores, estilo, olhos) */
.ns-enc-opt{position:relative;display:inline-flex;margin:0;cursor:pointer}
.ns-enc-opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.ns-enc-opt:not(.ns-enc-swatch) span{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #e3d4dc;border-radius:8px;background:#fff;color:#38323a;font-size:14px;line-height:1.3}
.ns-enc-opt:not(.ns-enc-swatch):hover span{border-color:#d63b70}
.ns-enc-opt:not(.ns-enc-swatch) input:checked + span{border-color:#d63b70;background:#fff0f6;color:#bc2d61;font-weight:700}

/* cores: bolinha colorida com o nome escrito embaixo */
.ns-enc-swatches{gap:8px 6px}
.ns-enc-swatch{flex-direction:column;align-items:center;width:72px;text-align:center}
.ns-enc-dot{display:block;width:38px;height:38px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d9c9d1;transition:box-shadow .15s}
.ns-enc-name{margin-top:5px;font-size:12px;line-height:1.25;color:#4a444c}
.ns-enc-swatch:hover .ns-enc-dot{box-shadow:0 0 0 2px #d63b70}
.ns-enc-swatch input:checked + .ns-enc-dot{box-shadow:0 0 0 3px #d63b70}
.ns-enc-swatch input:checked ~ .ns-enc-name{color:#bc2d61;font-weight:700}
.ns-enc-swatch input:focus-visible + .ns-enc-dot{outline:3px solid #db3b7340;outline-offset:3px}

.ns-enc textarea{width:100%;min-height:74px;padding:10px 12px;border:1px solid #e3d4dc;border-radius:8px;font:inherit;font-size:14px;resize:vertical;box-sizing:border-box}

.ns-enc-summary{margin:0 0 12px;padding:12px 14px;border:1px solid #eadfe5;border-radius:10px;background:#fff;font-size:13px;line-height:1.5}
.ns-enc-summary-title{margin:0 0 5px;font-weight:800;color:#252129}
.ns-enc-summary ul{margin:0;padding:0;list-style:none}
.ns-enc-error{margin:0 0 12px;padding:9px 12px;border-radius:8px;background:#fdeaea;color:#a12626;font-size:13px}
.ns-enc-note{margin:0;font-size:11px;line-height:1.5;color:#77717b}

/* quadro comparativo dos materiais (discreto) */
.ns-enc-compare{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}
.ns-enc-card{padding:10px 12px;border:1px solid #eadfe5;border-radius:10px;background:#fff;font-size:12.5px;line-height:1.45;color:#4a444c;transition:border-color .25s,background .25s}
.ns-enc-card.is-active{border-color:#d63b70;background:#fff8fb}
.ns-enc-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:2px}
.ns-enc-card-title{font-size:13.5px;font-weight:800;color:#252129}
.ns-enc-card-price{font-size:11px;color:#8a8190;white-space:nowrap}
.ns-enc-card-tag{margin:0 0 5px;font-size:12px;font-weight:700;color:#bc2d61}
.ns-enc-card ul{margin:0;padding:0 0 0 15px}
.ns-enc-card li{margin:0 0 2px}
@media (max-width:560px){.ns-enc-compare{grid-template-columns:1fr}}

/* descrição que sobe para a coluna da galeria (só no computador) */
.ns-enc-about{margin-top:18px;max-width:100%}
.ns-enc-about > .elementor-widget{margin:0!important;min-height:0!important;height:auto!important}
.ns-enc-about > .elementor-widget-wd_title{margin:0 0 4px!important}
.ns-enc-about > .elementor-widget-wd_title .elementor-widget-container{padding:0!important}
.ns-enc-page .wd-single-content,.ns-enc-page .wd-single-content p,.ns-enc-page .wd-single-content li{font-size:13.5px;line-height:1.5}
.ns-enc-page .wd-single-content{margin-top:0}
.ns-enc-page .wd-single-content h2{margin:14px 0 6px;font-size:16.5px;line-height:1.3}
.ns-enc-page .wd-single-content h3{margin:10px 0 4px;font-size:14.5px;line-height:1.3}
.ns-enc-page .wd-single-content p{margin:0 0 8px}
.ns-enc-page .wd-single-content ul{margin:0 0 8px;padding-left:18px}
.ns-enc-page .wd-single-content li{margin:0 0 2px}
.ns-enc-page .wd-single-content ul.ns-cols{columns:2;column-gap:22px}
.ns-enc-page .wd-single-content ul.ns-cols li{break-inside:avoid}

/* esconde a tabela nativa de variações só quando os botões foram criados */
form.ns-enc-active table.variations,
form.ns-enc-active .reset_variations{display:none!important}

/* comparativo recolhível (no celular começa fechado) */
.ns-enc-diff{margin:0 0 14px}
.ns-enc-diff > summary{cursor:pointer;padding:9px 0;font-size:13px;font-weight:700;color:#bc2d61;list-style:none}
.ns-enc-diff > summary::-webkit-details-marker{display:none}
.ns-enc-diff > summary::after{content:" ▾";font-size:11px}
.ns-enc-diff[open] > summary::after{content:" ▴"}
.ns-enc-diff .ns-enc-compare{margin:4px 0 0}

/* barra fixa no celular: botão principal sempre ao alcance do polegar */
.ns-enc-bar{position:fixed;left:0;right:0;bottom:0;z-index:99;padding:8px 78px calc(8px + env(safe-area-inset-bottom)) 12px;background:#fff;box-shadow:0 -4px 16px rgba(37,33,41,.10)}
.ns-enc-bar[hidden]{display:none}
.ns-enc-bar-btn{display:block;width:100%;min-height:48px;border:2px solid #f15da1;border-radius:8px;background:#fff;color:#bc2d61;font:inherit;font-size:15px;font-weight:800;text-transform:none;cursor:pointer;touch-action:manipulation}
.ns-enc-bar-btn.is-ready{background:#f15da1;color:#fff}

@media (max-width:767px){
	.ns-enc-btn{min-height:46px;padding:10px 16px;font-size:14px}
	.ns-enc-opt:not(.ns-enc-swatch) span{min-height:44px;padding:9px 15px;font-size:14px}
	.ns-enc-swatch{width:76px}
	.ns-enc-dot{width:42px;height:42px}
	.ns-enc-name{font-size:12px}
	.ns-enc textarea{font-size:16px}
}

/* título "Sobre o produto" e descrição enxutos em qualquer largura */
.ns-enc-about-title{margin:0 0 4px!important;height:auto!important;min-height:0!important}
.ns-enc-about-title .elementor-widget-container{padding:0!important}
@media (max-width:1024px){
	.ns-enc-about-title .title{font-size:18px!important;line-height:1.3!important}
	.ns-enc-page .wd-single-content{padding-top:0!important}
	.ns-enc-page .wd-single-content h2{font-size:15.5px;margin:12px 0 5px}
	.ns-enc-page .wd-single-content ul.ns-cols{columns:1}
}
@media (min-width:480px) and (max-width:1024px){
	.ns-enc-page .wd-single-content ul.ns-cols{columns:2}
}

/* galeria da combinação: 1 foto grande com setas + mini carrossel embaixo (passar/tocar na miniatura muda a grande) */
.ns-enc-gal{margin:0 0 14px}
.ns-enc-gal[hidden]{display:none}
.ns-enc-gal-off{display:none!important}
.ns-enc-gal-big{position:relative}
/* moldura fixa 4:5 para todas as fotos (a tela não pula ao trocar); a foto preenche sem distorcer e o corte, se houver, é por baixo (o rosto fica no alto) */
.ns-enc-gal-fig img{display:block;width:100%;height:auto;aspect-ratio:4/5;max-height:80vh;object-fit:cover;object-position:50% 10%;border-radius:10px;background:#f3e9ee}
.ns-enc-gal-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:#bc2d61;font-size:18px;line-height:44px;text-align:center;cursor:pointer;box-shadow:0 1px 6px rgba(0,0,0,.25)}
.ns-enc-gal-arrow:hover{background:#fff}
.ns-enc-gal-arrow.ns-prev{left:10px}
.ns-enc-gal-arrow.ns-next{right:10px}
.ns-enc-gal-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.ns-enc-gal-thumbs button{flex:0 0 auto;width:64px;height:64px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#f3e9ee;cursor:pointer;opacity:.7}
.ns-enc-gal-thumbs button.is-on{border-color:#bc2d61;opacity:1}
.ns-enc-gal-thumbs img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
@media (max-width:560px){.ns-enc-gal-thumbs button{width:52px;height:52px}}

/* painel fixo de compra no celular: foto grande + preço + "Comprar agora" (aparece quando a galeria saiu da tela) */
.ns-enc-live{display:none}
.ns-enc-lb{position:fixed;inset:0;z-index:100000;background:rgba(20,16,22,.94);display:flex;align-items:center;justify-content:center;padding:16px}
.ns-enc-lb img{max-width:100%;max-height:100%;object-fit:contain;border-radius:10px}
.ns-enc-lb button{position:absolute;top:10px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:#38323a;font-size:26px;line-height:44px;padding:0;cursor:pointer}
@media (max-width:767px){
	body.ns-enc-live-on .ns-enc-bar{display:none!important}
	.ns-enc-dock.is-on.is-away{transform:translateY(112%);pointer-events:none}
	.ns-enc-dock.is-on{transition:transform .28s ease;display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;align-items:start;position:fixed;left:0;right:0;bottom:0;z-index:100;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 18px rgba(37,33,41,.18)}
	.ns-enc-dock-photo{display:block;width:116px;padding:0;border:2px solid #f15da1;border-radius:10px;overflow:hidden;background:#f3e9ee;cursor:pointer;line-height:0}
	.ns-enc-dock-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 10%}
	.ns-enc-dock-info{min-width:0;padding-right:62px}
	.ns-enc-dock-price .ns-product-price-card{margin:0;padding:0;border:0;background:none;color:#1e1c23;font-family:inherit}
	.ns-enc-dock-price .ns-product-de{font-size:13px;line-height:1.2;color:#48434a;margin:0 0 4px}
	.ns-enc-dock-price .ns-product-de del{text-decoration:line-through;text-decoration-color:#58535b;color:#58535b}
	.ns-enc-dock-price .ns-product-pix{display:flex;align-items:baseline;gap:3px 7px;flex-wrap:wrap;line-height:1.1;margin:0 0 6px}
	.ns-enc-dock-price .ns-product-pix strong{font-size:26px;letter-spacing:-.04em;color:#1e1c23;font-weight:800}
	.ns-enc-dock-price .ns-product-pix span{font-size:12.5px;color:#216747;font-weight:700}
	.ns-enc-dock-price .ns-product-card-price{font-size:12.5px;line-height:1.4;color:#504950;margin:0 0 3px}
	.ns-enc-dock-price .ns-product-card-price strong{color:#28232a;font-weight:700}
	.ns-enc-dock-price .ns-product-total{font-size:11.5px;line-height:1.35;color:#6d6870;margin:0}
	.ns-enc-dock-buy{display:block;width:100%;min-height:44px;margin-top:10px;border:0;border-radius:8px;background:#f15da1;color:#fff;font:inherit;font-size:15px;font-weight:800;text-transform:none;cursor:pointer;touch-action:manipulation}
	.ns-enc-dock-buy.is-off{background:#d9d0d5;color:#7c7279}
}

/* balão de fala (Fibra Beautex ou Mohair) */
.ns-enc-bubble{position:relative;margin:12px 0 4px;padding:12px 14px;border:1px solid #f0b6cf;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(188,45,97,.16);font-size:13px;line-height:1.4;animation:ns-bubble-in .18s ease-out}
.ns-enc-bubble::before{content:"";position:absolute;top:-9px;left:calc(var(--tail,40px) - 9px);width:16px;height:16px;background:#fff;border-left:1px solid #f0b6cf;border-top:1px solid #f0b6cf;transform:rotate(45deg)}
.ns-enc-bubble-x{position:absolute;top:6px;right:8px;width:30px;height:30px;padding:0;border:0;background:none;color:#8a7f87;font-size:22px;line-height:30px;cursor:pointer}
.ns-enc-bubble-title{margin:0 28px 8px 0;color:#bc2d61;font-weight:800;font-size:13.5px}
.ns-enc-bubble-grid{display:grid;gap:8px}
@media (min-width:480px){.ns-enc-bubble-grid{grid-template-columns:1fr 1fr}}
.ns-enc-bubble .ns-enc-card{margin:0;padding:9px 11px;box-shadow:none}
.ns-enc-bubble .ns-enc-card.is-you{border-color:#d63b70;background:#fff0f6}
.ns-enc-bubble .ns-enc-card ul{margin:4px 0 0;padding-left:16px}
@keyframes ns-bubble-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* aviso no meio da tela (Comprar agora sem terminar as escolhas) */
.ns-enc-alert{position:fixed;inset:0;z-index:100001;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(20,16,22,.55)}
.ns-enc-alert-box{width:min(340px,100%);padding:22px 20px 18px;border-radius:14px;background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.35);text-align:center}
.ns-enc-alert-box p{margin:0 0 16px;color:#c0262d;font-size:16px;font-weight:700;line-height:1.4}
.ns-enc-alert-box button{min-width:120px;min-height:46px;padding:0 24px;border:0;border-radius:8px;background:#f15da1;color:#fff;font:inherit;font-size:16px;font-weight:800;cursor:pointer}
/* cartões do balão são clicáveis */
.ns-enc-bubble .ns-enc-card{cursor:pointer}
.ns-enc-bubble .ns-enc-card:not(.is-you):hover{border-color:#d63b70}
