/* Calculadora de Parâmetros CNC — Precisão Fresas
   Todo o CSS está preso ao contêiner #calc-cnc, não vaza para o resto da loja. */

#calc-cnc div, #calc-cnc p, #calc-cnc span, #calc-cnc b, #calc-cnc strong, #calc-cnc em, #calc-cnc i, #calc-cnc a, #calc-cnc button, #calc-cnc input, #calc-cnc select, #calc-cnc label, #calc-cnc details, #calc-cnc summary, #calc-cnc section, #calc-cnc header, #calc-cnc footer, #calc-cnc h1, #calc-cnc h2, #calc-cnc h3, #calc-cnc h4, #calc-cnc ul, #calc-cnc li, #calc-cnc img, #calc-cnc{box-sizing:border-box;margin:0;padding:0;border:0;float:none;box-shadow:none;text-shadow:none;text-transform:none;letter-spacing:normal;text-decoration:none;background:none;list-style:none;min-width:0;max-width:none;font-family:var(--corpo);font-weight:400;line-height:1.55;color:inherit;text-align:left;width:auto;height:auto;position:static;transform:none}
#calc-cnc svg{max-width:100%}
#calc-cnc img{max-width:100%;height:auto;display:block}

#calc-cnc{
  --grafite:#18181a; --painel:#242426; --aco:#2f2f2f; --aco2:#1f1f21;
  --borda:#3a3a3d; --linha:#4b4b4f;
  --texto:#f5f7fa; --suave:#a3a3a9; --fraco:#7b7b82;
  --ambar:#f96618; --ambar-esc:#b6440a;
  --turq:#3bb54a; --turq-esc:#2b8536;
  --alerta:#e8543f; --ok:#3bb54a;
  --r:10px;
  --disp:'Barlow Condensed',   'Arial Narrow', sans-serif;
  --corpo:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
#calc-cnc *{box-sizing:border-box;margin:0;padding:0}
#calc-cnc{
  container-type:inline-size;
  font-family:var(--corpo); background:var(--grafite); color:var(--texto);
  font-size:15px; line-height:1.55; padding:0; margin:0;
  background-image:radial-gradient(circle at 10% 0%, #26201d 0%, transparent 55%),
                   radial-gradient(circle at 90% 6%, #1d241e 0%, transparent 50%);
  background-attachment:fixed;
}
#calc-cnc *{font-family:inherit}
#calc-cnc .wrap{max-width:1220px;margin:0 auto;padding:0 0 22px}
#calc-cnc .topo{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;
      padding-bottom:16px;margin-bottom:22px;border-bottom:1px solid var(--borda)}
#calc-cnc .marca{display:flex;align-items:center}
#calc-cnc .marca h1{font-family:var(--disp);font-weight:700;font-size:29px;letter-spacing:.4px;line-height:1}
#calc-cnc .marca p{color:var(--suave);font-size:12.5px;margin-top:3px}
#calc-cnc .selo{font-family:var(--disp);font-size:13px;letter-spacing:1.2px;color:var(--ambar);
      border:1px solid var(--ambar-esc);border-radius:99px;padding:3px 12px;white-space:nowrap}
#calc-cnc .grade{display:grid;grid-template-columns:1fr 400px;gap:18px;align-items:start}
@media(max-width:960px){
#calc-cnc .grade{grid-template-columns:1fr}}
@container (max-width:900px){
#calc-cnc .grade{grid-template-columns:1fr}}
@container (min-width:901px){
#calc-cnc .grade{grid-template-columns:1fr 400px}}
#calc-cnc .bloco{background:var(--painel);border:1px solid var(--borda);border-radius:var(--r);
       padding:15px;margin-bottom:12px}
#calc-cnc .bloco > h2{font-family:var(--disp);font-size:20px;font-weight:600;letter-spacing:.3px;
            display:flex;align-items:center;gap:9px;margin-bottom:3px}
#calc-cnc .bloco > h2 .num{width:22px;height:22px;flex:none;border-radius:6px;background:var(--ambar);
     color:#fff;font-size:14px;font-weight:700;display:grid;place-items:center;font-family:var(--disp)}
#calc-cnc .bloco > .dica{color:var(--suave);font-size:12.5px;margin-bottom:14px}
#calc-cnc .mats{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}
#calc-cnc .mat{position:relative;border:1px solid var(--borda);background:var(--aco2);border-radius:8px;
     padding:8px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s;color:inherit}
#calc-cnc .mat:hover{border-color:var(--linha);background:var(--aco)}
#calc-cnc .mat.on{border-color:var(--ambar);background:#3a2418;box-shadow:inset 0 0 0 1px var(--ambar-esc)}
#calc-cnc .mat .amostra{width:100%;height:10px;border-radius:3px;margin-bottom:6px;border:1px solid rgba(255,255,255,.13)}
#calc-cnc .mat b{display:block;font-size:12.5px;font-weight:600;line-height:1.2}
#calc-cnc .mat span{display:block;color:var(--fraco);font-size:10.5px;margin-top:1px}
#calc-cnc .mat:focus-visible, #calc-cnc .esp button:focus-visible, #calc-cnc .seg button:focus-visible, #calc-cnc .tab:focus-visible, #calc-cnc input:focus-visible, #calc-cnc select:focus-visible, #calc-cnc button:focus-visible{outline:2px solid var(--ambar);outline-offset:2px}
#calc-cnc .esp{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
#calc-cnc .esp button{font-family:var(--disp);font-size:16px;font-weight:600;padding:6px 13px;border-radius:7px;
            border:1px solid var(--borda);background:var(--aco2);color:var(--suave);cursor:pointer}
#calc-cnc .esp button:hover{color:var(--texto);border-color:var(--linha)}
#calc-cnc .esp button.on{background:var(--ambar);border-color:var(--ambar);color:#fff}
#calc-cnc .campo{display:flex;flex-direction:column;gap:5px}
#calc-cnc .campo label{font-size:12px;color:var(--suave);font-weight:500}
#calc-cnc .campo input, #calc-cnc .campo select{background:var(--aco2);border:1px solid var(--borda);border-radius:8px;
   color:var(--texto);padding:9px 11px;font-size:15px;width:100%}
#calc-cnc .campo select:hover{border-color:var(--linha)}
#calc-cnc select option{background-color:#2f2f2f;color:#f5f7fa;padding:6px}
#calc-cnc select option:checked, #calc-cnc select option:hover, #calc-cnc select option:focus{
   background:var(--ambar);background-color:var(--ambar);color:#fff}
#calc-cnc select{accent-color:var(--ambar);color-scheme:dark}
#calc-cnc .campo input[type=number]{font-family:var(--disp);font-size:18px;font-weight:600;letter-spacing:.5px}
#calc-cnc .linha2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
#calc-cnc .linha3{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
@media(max-width:520px){
#calc-cnc .linha3{grid-template-columns:1fr 1fr}}
@container (max-width:560px){
#calc-cnc .linha3{grid-template-columns:1fr 1fr}}
@container (max-width:400px){
#calc-cnc .linha2, #calc-cnc .linha3{grid-template-columns:1fr}}
#calc-cnc .seg{display:flex;background:var(--aco2);border:1px solid var(--borda);border-radius:8px;padding:3px;gap:3px}
#calc-cnc .seg button{flex:1;border:0;background:transparent;color:var(--suave);padding:7px 4px;border-radius:6px;
            cursor:pointer;font-size:12.5px;font-weight:500}
#calc-cnc .seg button.on{background:var(--aco);color:var(--texto);box-shadow:inset 0 0 0 1px var(--linha)}
#calc-cnc details.avanc{border:1px solid var(--borda);border-radius:var(--r);background:var(--painel);margin-bottom:12px}
#calc-cnc details.avanc>summary{cursor:pointer;padding:14px 18px;font-family:var(--disp);font-size:19px;
   font-weight:600;letter-spacing:.3px;list-style:none;display:flex;align-items:center;gap:9px}
#calc-cnc details.avanc>summary::-webkit-details-marker{display:none}
#calc-cnc details.avanc>summary::after{content:'+';margin-left:auto;color:var(--ambar);font-size:20px}
#calc-cnc details.avanc[open]>summary::after{content:'–'}
#calc-cnc details.avanc .interno{padding:0 18px 18px}
#calc-cnc .fresa-auto{display:flex;gap:12px;align-items:flex-start;background:var(--aco2);border:1px solid var(--linha);
   border-radius:9px;padding:13px;margin-bottom:12px}
#calc-cnc .fresa-auto .txt b{display:block;font-size:15px;line-height:1.3}
#calc-cnc .fresa-auto .txt span{color:var(--suave);font-size:12.5px}
#calc-cnc .alts{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
#calc-cnc .alts button{border:1px solid var(--borda);background:transparent;color:var(--suave);border-radius:7px;
   padding:6px 10px;font-size:12px;cursor:pointer}
#calc-cnc .alts button:hover{color:var(--texto);border-color:var(--linha)}
#calc-cnc .alts button.on{border-color:var(--turq-esc);color:#8fdc9a;background:#1d2e1f}
#calc-cnc .saida{position:sticky;top:14px}
@media(max-width:960px){
#calc-cnc .saida{position:static}}
@container (max-width:900px){
#calc-cnc .saida{position:static}}
#calc-cnc .palco{background:linear-gradient(180deg,#141416 0%,#232325 100%);border:1px solid var(--borda);
   border-radius:var(--r) var(--r) 0 0;border-bottom:0;padding:0;overflow:hidden;position:relative}
#calc-cnc .palco svg{display:block;width:100%;height:auto}
#calc-cnc .palco .rotulo{position:absolute;left:14px;top:12px;font-family:var(--disp);font-size:15px;
   letter-spacing:.5px;color:var(--suave);max-width:70%;line-height:1.2}
#calc-cnc .palco .rotulo b{color:var(--texto);display:block;font-size:17px}
#calc-cnc .tabs{display:flex;gap:0;border:1px solid var(--borda);border-bottom:0;background:var(--aco2)}
#calc-cnc .tab{flex:1;border:0;background:transparent;color:var(--suave);padding:11px 8px;cursor:pointer;
     font-size:12.5px;font-weight:500;position:relative;border-bottom:2px solid transparent}
#calc-cnc .tab.on{color:var(--texto);border-bottom-color:var(--ambar);background:var(--painel)}
#calc-cnc .tab .mini{display:block;font-size:11px;color:var(--fraco)}
#calc-cnc .tab.on .mini{color:var(--suave)}
#calc-cnc .tab .badge{position:absolute;top:4px;right:6px;font-size:9px;letter-spacing:.6px;color:#fff;
   background:var(--turq);border-radius:3px;padding:1px 4px;font-weight:700}
#calc-cnc .resultado{background:var(--painel);border:1px solid var(--borda);border-radius:0 0 var(--r) var(--r);padding:16px}
#calc-cnc .grandes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
#calc-cnc .val{background:var(--aco2);border:1px solid var(--borda);border-radius:9px;padding:11px 12px}
#calc-cnc .val.destaque{border-color:var(--turq-esc);background:#1d2b1e}
#calc-cnc .val .k{font-size:11.5px;color:var(--suave);letter-spacing:.2px}
#calc-cnc .val .v{font-family:var(--disp);font-weight:700;font-size:31px;line-height:1.05;letter-spacing:.5px}
#calc-cnc .val .u{font-family:var(--corpo);font-size:12px;font-weight:500;color:var(--suave);margin-left:4px}
#calc-cnc .val.destaque .v{color:var(--turq)}
#calc-cnc .detalhes{border-top:1px solid var(--borda);margin-top:6px;padding-top:12px;
   display:grid;grid-template-columns:1fr 1fr;gap:9px 14px}
#calc-cnc .det{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;align-items:baseline}
#calc-cnc .det span{color:var(--suave)}
#calc-cnc .det b{font-family:var(--disp);font-size:16px;font-weight:600;letter-spacing:.3px;white-space:nowrap}
#calc-cnc .avisos{margin-top:14px;display:flex;flex-direction:column;gap:7px}
#calc-cnc .aviso{display:flex;gap:8px;font-size:12.5px;line-height:1.45;padding:9px 11px;border-radius:8px;
   border:1px solid var(--borda);background:var(--aco2);color:var(--suave)}
#calc-cnc .aviso.at{border-color:#7a3f14;background:#2a1c12;color:#f6c39a}
#calc-cnc .aviso.er{border-color:#6e2f26;background:#271614;color:#f6b3a7}
#calc-cnc .aviso.ok{border-color:#2b6b33;background:#16251a;color:#a7dfae}
#calc-cnc .aviso i{font-style:normal;flex:none}
#calc-cnc .acoes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}
#calc-cnc .btn{border:1px solid var(--borda);background:var(--aco);color:var(--texto);border-radius:8px;
   padding:11px 10px;font-size:13.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;
   justify-content:center;gap:7px;text-decoration:none}
#calc-cnc .btn:hover{border-color:var(--linha)}
#calc-cnc .btn.pri{background:var(--ambar);border-color:var(--ambar);color:#fff}
#calc-cnc .btn.pri:hover{background:#ff7d33}
#calc-cnc .btn.zap{background:var(--turq);border-color:var(--turq);color:#fff}
#calc-cnc .comprar{display:block;text-align:center;margin-top:10px;font-size:12.5px;color:var(--ambar);text-decoration:none}
#calc-cnc .comprar:hover{text-decoration:underline}
#calc-cnc .rodape{margin-top:18px;padding-top:14px;border-top:1px solid var(--borda);color:var(--fraco);font-size:12px;line-height:1.6}


@keyframes girarHelice{from{transform:translateY(0)}to{transform:translateY(-24px)}}
@keyframes girarHeliceInv{from{transform:translateY(0)}to{transform:translateY(24px)}}
@keyframes girarReto{from{transform:translateX(0)}to{transform:translateX(-16px)}}
@keyframes cavaco{0%{opacity:0;transform:translate(0,0) scale(.6) rotate(0)}
  15%{opacity:.95}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.1) rotate(160deg)}}
@keyframes descer{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--mergulho,6px))}}
#calc-cnc .helice-up{animation:girarHelice .32s linear infinite}
#calc-cnc .helice-dn{animation:girarHeliceInv .32s linear infinite}
#calc-cnc .reto-gira{animation:girarReto .26s linear infinite}
#calc-cnc .cv{animation:cavaco 1.05s ease-out infinite}
#calc-cnc .bit-mov{animation:descer 3.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){
#calc-cnc .helice-up, #calc-cnc .helice-dn, #calc-cnc .reto-gira, #calc-cnc .cv, #calc-cnc .bit-mov{animation:none!important}
}


/* correções de alinhamento e modo embutido na loja */
#calc-cnc .esp button, #calc-cnc .seg button, #calc-cnc .tab, #calc-cnc .btn, #calc-cnc .comprar{text-align:center}
#calc-cnc .alts button{text-align:left}
#calc-cnc.pf-embutido .topo{display:none}
#calc-cnc.pf-embutido{background:none;padding:0}
