/* Tela Produtos e estoque (.pd) e seus modais (.pd-ov). Usa os tokens de tema.css; modais reutilizam .tl-* de telas.css. */
.pd svg.ic.sm,.pd-ov svg.ic.sm{width:15px;height:15px}
.pd svg.ic.lg{width:34px;height:34px;stroke-width:1.5}
.pd .mono{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}
.pd .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pd .tag.t-warn{background:var(--ambar2);color:var(--ambar)} .pd .tag.t-info{background:var(--azul4);color:var(--azul)}
.pd .tag.t-ok{background:var(--verde2);color:var(--verde)} .pd .tag.t-bad{background:var(--verm2);color:var(--verm)}
.pd .tag.t-neutral{background:var(--app);color:var(--tinta2)}
.pd .cab{margin-bottom:12px}
.pd .btn:disabled,.pd-ov .btn:disabled{opacity:.5;cursor:not-allowed}
.pd .btn.sm,.pd-ov .btn.sm{min-height:44px;padding:8px 14px;font-size:12.5px}
.pd .btn.borda,.pd-ov .btn.borda{box-shadow:inset 0 0 0 1px var(--linha)}
.pd .btn.fantasma{background:none}
.pd .btn.azul,.pd-ov .btn.azul{box-shadow:none}
.pd-ov .btn{box-shadow:inset 0 0 0 1px var(--linha)}
.pd-ov .btn.azul{box-shadow:none}

/* abas */
.pd-abas{display:flex;gap:4px;padding:4px;background:#e9ebef;border-radius:999px;width:max-content;max-width:100%;margin-bottom:14px;overflow-x:auto;scrollbar-width:none}
.pd-abas button{flex:none;min-height:44px;padding:9px 22px;border:0;border-radius:999px;background:none;color:var(--tinta2);font:700 13.5px var(--fonte);cursor:pointer}
.pd-abas button:hover{background:#dfe2e8}
.pd-abas button.on{background:var(--preto);color:#fff}
.pd-abas button:focus-visible{outline-offset:-2px}

/* barra de busca e ações */
.pd-barra{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}
.pd .busca{position:relative;flex:1 1 280px;max-width:480px}
.pd .busca svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--suave);pointer-events:none}
.pd input[type=search],.pd input[type=text],.pd input[type=date],.pd select{width:100%;min-height:44px;border:0;border-radius:999px;background:#fff;padding:10px 16px;font:600 13.5px var(--fonte);color:var(--tinta)}
.pd .busca input{padding-left:42px}
.pd-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}
.pd-sel{display:flex;flex-direction:column;gap:5px;flex:1 1 280px;max-width:480px}
.pd-sel label{font-size:12px;font-weight:700;color:var(--tinta2);padding-left:6px}
.pd .filtros{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.pd .filtros button{min-height:44px;padding:9px 16px;border:0;border-radius:999px;background:#e9ebef;color:var(--tinta2);font:700 13px var(--fonte);display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.pd .filtros button:hover{background:#dfe2e8}
.pd .filtros button.on{background:var(--preto);color:#fff}
.pd .filtros .cnt{font-size:11.5px;min-width:22px;padding:1px 7px;border-radius:999px;background:#fff;color:var(--tinta2);text-align:center}
.pd .filtros .cnt.warn{background:var(--ambar2);color:var(--ambar)}
.pd .filtros .cnt.bad{background:var(--verm2);color:var(--verm)}
.pd .filtros button.on .cnt{background:#2b2d33;color:#fff}

/* cartões e tabelas */
.pd-card{background:var(--card);border-radius:var(--r);min-width:0;overflow:hidden;margin-bottom:14px}
.pd-card-topo{display:flex;align-items:flex-end;gap:12px 18px;flex-wrap:wrap;padding:18px 20px 12px}
.pd-card-topo h3{margin:0;font-size:16px}
.pd-card-topo p{margin:2px 0 0;color:var(--suave);font-size:12.5px;max-width:62ch}
.pd-card-topo>div:first-child{flex:1 1 280px}
.pd-tabela{overflow-x:auto}
.pd table{width:100%;border-collapse:separate;border-spacing:0}
.pd th{font-size:11px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 12px;background:var(--app);white-space:nowrap}
.pd td{padding:12px;border-bottom:1px solid var(--linha);vertical-align:middle;font-size:13px;overflow-wrap:anywhere}
.pd th:first-child,.pd td:first-child{padding-left:20px}
.pd th:last-child,.pd td:last-child{padding-right:20px}
.pd tbody tr:last-child td{border-bottom:0}
.pd tbody tr:hover{background:#fafbfc}
.pd .r{text-align:right}
.pd td small{display:block;font-size:11.5px;color:var(--suave)}
.pd .valor{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.pd td.r{font-variant-numeric:tabular-nums}
.pd td.r>span:not(.tag){white-space:nowrap}
.pd td.c-desc b,.pd td.c-prodm b{font-weight:700;display:block}
.pd tr.inativo td.c-desc b,.pd tr.inativo td.c-cod{color:var(--suave)}
.pd .pd-avisos{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-top:6px}
.pd .pd-nota{font-size:12px;color:var(--suave)}
.pd .pd-ncm{display:inline-flex;align-items:flex-start;gap:6px;background:var(--ambar2);color:#7c3a06;border-radius:14px;padding:6px 11px;font-size:12px;font-weight:700;line-height:1.35;max-width:62ch}
.pd .pd-ncm svg{color:var(--ambar);margin-top:1px;flex:none}
.pd .pd-neg{color:var(--verm);font-weight:800}
.pd .pd-pos{color:var(--verde);font-weight:800}
.pd .pd-baixo{color:var(--ambar);font-weight:700}
.pd .pd-mudo{color:var(--suave)}
.pd .pd-ac{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.pd td.c-data{white-space:nowrap}
.pd .pd-chave{white-space:nowrap;color:var(--azul);font-size:12px;font-weight:600}
.pd .pd-vazio,.pd .pd-falha{padding:46px 20px;text-align:center;color:var(--suave);display:flex;flex-direction:column;align-items:center;gap:6px}
.pd .pd-vazio b,.pd .pd-falha b{color:var(--tinta);font-size:15px}
.pd .pd-falha .btn{margin-top:8px}
.pd .pd-rodape-nota{margin:0;padding:12px 20px;font-size:12px;color:var(--suave);border-top:1px solid var(--linha)}

/* importação */
.pd-imp.c{margin-bottom:14px;padding:16px 20px}
.pd-imp.c.erro{background:var(--verm2)}
.pd-imp-topo{display:flex;align-items:center;gap:10px;justify-content:space-between}
.pd-imp-topo h3{font-size:15px}
.pd-imp-msg{margin:6px 0 0;color:var(--verm);font-weight:700}
.pd-imp-num{display:flex;gap:10px 28px;flex-wrap:wrap;margin-top:8px}
.pd-imp-num b{display:block;font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.pd-imp-num span{font-size:12px;color:var(--suave)}
.pd-imp-num .ruim b{color:var(--verm)}
.pd-imp-erros{list-style:none;margin:12px 0 0;padding:0;max-height:240px;overflow:auto;font-size:12.5px;border-top:1px solid var(--linha)}
.pd-imp-erros li{padding:8px 0;border-bottom:1px solid var(--linha);overflow-wrap:anywhere}
.pd-spin{display:inline-block;width:16px;height:16px;border:2px solid #dfe2e8;border-top-color:var(--azul);border-radius:50%;animation:pd-gira .8s linear infinite;vertical-align:-3px;margin-right:8px}
@keyframes pd-gira{to{transform:rotate(360deg)}}

/* balanço */
.pd input.pd-cont{width:120px;min-height:44px;border-radius:14px;background:var(--app);text-align:right;padding:8px 12px}
.pd input.pd-cont[aria-invalid=true]{box-shadow:inset 0 0 0 2px var(--verm);background:var(--verm2)}
.pd .pd-dif{font-weight:700;white-space:nowrap}
.pd .pd-dif.mudo{color:var(--suave);font-weight:500}
.pd .pd-dif.igual{color:var(--tinta2);font-weight:600}
.pd .pd-dif.ruim{color:var(--verm)}
.pd .pd-dif.bom{color:var(--verde)}
.pd-bal-rodape{padding:16px 20px 18px;border-top:1px solid var(--linha);display:grid;gap:12px}
.pd-bal-res{font-size:13px;color:var(--tinta2)}
.pd-bal-res b{font-variant-numeric:tabular-nums}
.pd-bal-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.pd-bal-form .campo{flex:1 1 280px;max-width:520px}
.pd-bal-form label{display:block;font-size:12px;font-weight:700;color:var(--tinta2);margin:0 0 5px 6px}
.pd-bal-form input{background:var(--app)!important}
.pd .msg-erro{color:var(--verm);font-size:12.5px;font-weight:700}
.pd .msg-erro:empty{display:none}
.pd-pos-ctl{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.pd-pos-ctl .pd-sel{flex:0 0 auto}
.pd-pos-ctl input[type=date]{background:var(--app);min-width:170px}
.pd-totais{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 14px}
.pd-total{background:var(--app);border-radius:var(--r2);padding:12px 16px;min-width:0}
.pd-total small{display:block;font-size:11px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.06em}
.pd-total b{font-size:clamp(18px,1.8vw,24px);font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}

/* modais */
.pd-ov .tl-modal.pd-modal{width:min(1040px,94vw)}
.pd-ov .tl-modal select,.pd-ov .tl-modal input[type=text]{width:100%;min-height:44px;border:0;border-radius:18px;background:var(--app);padding:10px 14px;font:600 13.5px var(--fonte);color:var(--tinta)}
.pd-ov input[readonly]{color:var(--suave)}
.pd-ov input:disabled{opacity:.5}
.pd-ov .tl-modal .rot{display:block;font-size:12.5px;font-weight:700;margin-bottom:6px}
.pd-ov .ajuda{font-size:12px;color:var(--suave);margin-top:6px}
.pd-ov fieldset{border:0;margin:6px 0 0;padding:14px 16px;background:var(--app);border-radius:var(--r2);min-width:0}
.pd-ov fieldset .dois{margin-top:12px}
.pd-ov fieldset .campo{margin-bottom:0}
.pd-ov .tl-modal fieldset input[type=text]{background:#fff;box-shadow:inset 0 0 0 1px #dfe2e8}
.pd-ov legend{font-size:12.5px;font-weight:800;padding:0 6px;margin-left:-6px}
.pd-ov .opcoes{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
.pd-ov .opcao{display:flex;gap:10px;align-items:flex-start;background:#fff;border-radius:16px;padding:10px 12px;min-height:44px;cursor:pointer;font-weight:700;font-size:13px;margin:0}
.pd-ov .opcao small{display:block;font-weight:500;color:var(--suave);font-size:12px}
.pd-ov .opcao:has(input:checked){background:var(--azul4);box-shadow:inset 0 0 0 2px var(--azul)}
.pd-ov .opcao input{width:20px;height:20px;accent-color:var(--azul);margin:1px 0 0;flex:none}
.pd-ov .pd-prev{margin-top:12px;background:#fff;border-radius:16px;padding:12px 14px;font-size:12.5px;color:var(--suave);display:flex;flex-direction:column;gap:2px;min-height:48px;justify-content:center}
.pd-ov .pd-prev b{color:var(--tinta);font-size:16px;letter-spacing:-.01em}
.pd-ov .pd-estoque-ro{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap;background:var(--azul4);border-radius:var(--r2);padding:12px 16px;margin-bottom:14px}
.pd-ov .pd-estoque-ro[hidden]{display:none}
.pd-ov .pd-estoque-ro small{display:block;font-size:11px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.06em}
.pd-ov .pd-estoque-ro b{font-size:20px;letter-spacing:-.01em}
.pd-ov .pd-estoque-ro .pd-neg{color:var(--verm)}
.pd-ov .pd-estoque-ro p{margin:0;flex:1 1 200px;color:var(--tinta2);font-size:12.5px}
.pd-ov .tl-modal .pd-estoque-ro p{margin:0}
.pd-ov .tl-modal .msg-erro{margin-top:6px}
.pd-ov .tl-modal #pd-pErro,.pd-ov .tl-modal #pd-ajErro,.pd-ov .tl-modal #pd-cErro{margin-top:10px}

@media (max-width:640px){
  .pd-ov .opcoes{grid-template-columns:minmax(0,1fr)}
  .pd-totais{grid-template-columns:minmax(0,1fr)}
  .pd .pd-acoes{margin-left:0;width:100%}
  .pd .pd-acoes .btn{flex:1 1 auto;justify-content:center}
  .pd-abas{width:100%}
  .pd-abas button{flex:1 1 auto;padding:9px 12px}
  .pd .busca,.pd-sel{max-width:none;flex-basis:100%}
  .pd-card-topo{padding:16px 14px 10px}
  .pd-bal-rodape{padding:14px}
  .pd-totais{padding:0 14px 12px}
  .pd-pos-ctl{width:100%}
  .pd-pos-ctl .pd-sel{flex:1 1 100%}
  .pd-pos-ctl .btn{width:100%;justify-content:center;min-height:44px}
  .pd input.pd-cont{width:100%}
  .pd-imp.c{padding:14px}
  .pd-ov .tl-modal{padding:18px}
}
@media (max-width:1099px){
  .pd .pd-tabela{overflow-x:visible}
}

@media (max-width:1099px){
  .pd .pd-tabela:not(.larga) table,.pd .pd-tabela:not(.larga) tbody,.pd .pd-tabela:not(.larga) tr,.pd .pd-tabela:not(.larga) td{display:block}
  .pd .pd-tabela:not(.larga) thead{display:none}
  .pd .pd-tabela:not(.larga) tbody tr{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px 14px;padding:14px 16px;border-bottom:1px solid var(--linha)}
  .pd .pd-tabela:not(.larga) tbody tr:last-child{border-bottom:0}
  .pd .pd-tabela:not(.larga) td{padding:0!important;border:0;min-width:0;text-align:left!important}
  .pd .pd-tabela:not(.larga) td[data-l]::before{content:attr(data-l);display:block;font-size:11px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1px}
  .pd .pd-tabela:not(.larga) td.c-full{grid-column:1/-1}
  .pd .pd-tabela:not(.larga) td.c-first{order:-1}
  .pd .pd-tabela:not(.larga) td.c-acoes{margin-top:2px}
  .pd .pd-tabela:not(.larga) td.c-cont input{max-width:none}
  .pd .pd-tabela:not(.larga) .pd-ac{justify-content:flex-start}
  .pd .pd-tabela:not(.larga) .pd-ac .btn{flex:1 1 auto;min-height:44px}
}

@media (max-width:1299px){
  .pd .pd-tabela.larga table,.pd .pd-tabela.larga tbody,.pd .pd-tabela.larga tr,.pd .pd-tabela.larga td{display:block}
  .pd .pd-tabela.larga thead{display:none}
  .pd .pd-tabela.larga tbody tr{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px 14px;padding:14px 16px;border-bottom:1px solid var(--linha)}
  .pd .pd-tabela.larga tbody tr:last-child{border-bottom:0}
  .pd .pd-tabela.larga td{padding:0!important;border:0;min-width:0;text-align:left!important}
  .pd .pd-tabela.larga td[data-l]::before{content:attr(data-l);display:block;font-size:11px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1px}
  .pd .pd-tabela.larga td.c-full{grid-column:1/-1}
  .pd .pd-tabela.larga td.c-first{order:-1}
  .pd .pd-tabela.larga td.c-acoes{margin-top:2px}
  .pd .pd-tabela.larga td.c-cont input{max-width:none}
  .pd .pd-tabela.larga .pd-ac{justify-content:flex-start}
  .pd .pd-tabela.larga .pd-ac .btn{flex:1 1 auto;min-height:44px}
}

/* ocultar de verdade mesmo com display definido por classes */
.pd [hidden],.pd-ov [hidden]{display:none!important}

/* erro de campo: vence o fundo cinza/branco dos campos */
.pd-ov .tl-modal .campo.erro input[type=text],.pd-ov .tl-modal .campo.erro select,.pd-ov .tl-modal fieldset .campo.erro input[type=text]{box-shadow:inset 0 0 0 2px var(--verm);background:var(--verm2)}

/* códigos nunca quebram em duas linhas; a descrição leva a largura flexível */
.pd td.c-cod{white-space:nowrap;overflow-wrap:normal;word-break:normal}
.pd td.c-cod .mono{white-space:nowrap}
@media (min-width:1100px){.pd td.c-desc{min-width:180px}}
@media (min-width:1300px){.pd td.c-desc{width:42%}}

/* controles segmentados (Ativo/Inativo e modo do preço) */
.pd-ov .tl-modal .pd-seg{display:flex;gap:4px;padding:4px;background:var(--app);border-radius:999px;max-width:100%}
.pd-ov .tl-modal fieldset .pd-seg{background:#fff;box-shadow:inset 0 0 0 1px #dfe2e8;margin-bottom:12px}
.pd-ov .tl-modal .pd-seg label.seg{flex:1 1 0;position:relative;display:flex;margin:0;font-size:13px;font-weight:700;cursor:pointer;min-width:0}
.pd-ov .tl-modal .pd-seg label.seg input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.pd-ov .tl-modal .pd-seg .seg-in{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 14px;border-radius:999px;color:var(--tinta2);text-align:center;line-height:1.2}
.pd-ov .tl-modal .pd-seg label.seg:hover .seg-in{background:rgba(15,16,19,.06)}
.pd-ov .tl-modal .pd-seg label.seg:has(input:focus-visible) .seg-in{outline:3px solid var(--azul);outline-offset:2px}
.pd-ov .tl-modal .pd-seg label.seg:has(input:checked) .seg-in{background:var(--preto);color:#fff}
.pd-ov .tl-modal .pd-seg label.s-ativo:has(input:checked) .seg-in{background:var(--verde);color:#fff}
.pd-ov .tl-modal .pd-seg label.s-inativo:has(input:checked) .seg-in{background:#4b5060;color:#fff}
.pd-ov .tl-modal .pd-seg label.seg:has(input:checked) .seg-in:hover{background:inherit}

/* bloco de preço */
.pd-ov .pd-padrao-linha{margin-top:12px;background:#fff;border-radius:16px;padding:12px 14px;font-size:13px;color:var(--tinta2);font-weight:600}
.pd-ov #pd-campoPct{margin-top:12px}
.pd-ov #pd-pFixo .campo{margin-top:0}
.pd-ov .pd-prev.grande b{font-size:22px;letter-spacing:-.02em}
.pd-ov .pd-prev.grande{min-height:64px}
.pd-ov .tl-modal fieldset .opcoes+.msg-erro{margin-bottom:0}

/* confirmação de balanço e de regra de preço */
.pd-ov .pd-maiores-t{display:block;margin-top:12px;font-weight:700;color:var(--tinta);font-size:12.5px}
.pd-ov .pd-maiores{margin:6px 0 0;padding-left:20px;font-size:12.5px;color:var(--tinta2)}
.pd-ov .pd-maiores li{padding:4px 0;overflow-wrap:anywhere}
.pd-ov .pd-maiores li b{display:block;color:var(--tinta)}
.pd-ov .pd-maiores .pd-neg{color:var(--verm)} .pd-ov .pd-maiores .pd-pos{color:var(--verde)}
.pd-ov .pd-mini{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:4px}
.pd-ov .pd-mini th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--suave);padding:6px 8px;background:var(--app)}
.pd-ov .pd-mini td{padding:8px;border-bottom:1px solid var(--linha);overflow-wrap:anywhere}
.pd-ov .pd-mini-nota{margin:8px 0 0;font-size:12.5px;color:var(--suave)}
.pd-ov .pd-prog{margin-top:10px;font-weight:700;font-size:13px}
.pd-ov .tl-modal p b{color:var(--tinta)}

/* ações da linha lado a lado */
@media (min-width:1100px){
  .pd .pd-ac{flex-wrap:nowrap}
  .pd .pd-ac .btn{width:auto;padding:6px 12px;min-height:36px;justify-content:center;white-space:nowrap}
  .pd .pd-ac .btn .tx{display:inline}
  .pd td.c-acoes{white-space:nowrap}
}
@media (max-width:640px){
  .pd-ov .tl-modal .pd-seg .seg-in{padding:0 8px;font-size:12.5px}
}

/* fornecedores vinculados ao produto */
.pd-ov .tl-modal fieldset.pd-forn{margin-top:14px}
.pd-ov .tl-modal .pd-forn select{background:#fff;box-shadow:inset 0 0 0 1px #dfe2e8}
.pd-ov .tl-modal .pd-forn #pd-fn-forn{margin-top:8px}
.pd-ov .pd-forn-vazio{margin:0 0 10px;font-size:13px;color:var(--suave)}
.pd-ov .tl-modal p.pd-forn-vazio{margin:0 0 10px}
.pd-ov .pd-forn-lista{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.pd-ov .pd-forn-it{display:flex;gap:10px;align-items:center;justify-content:space-between;background:#fff;border-radius:16px;padding:10px 10px 10px 14px;box-shadow:inset 0 0 0 1px #dfe2e8}
.pd-ov .pd-forn-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;font-size:12.5px;color:var(--tinta2);overflow-wrap:anywhere}
.pd-ov .pd-forn-txt b{color:var(--tinta);font-size:13px}
.pd-ov .pd-forn-txt .pd-forn-doc{color:var(--suave);font-weight:600}
.pd-ov .pd-forn-txt .pd-forn-desc{color:var(--suave);font-size:12px}
.pd-ov .tl-modal .btn.pd-forn-rm{width:44px;height:44px;min-height:44px;padding:0;justify-content:center;flex:none}
.pd-ov .pd-forn-rm .ic{width:18px;height:18px}
.pd-ov .pd-forn-conf{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;font-size:12.5px;font-weight:700}
.pd-ov .pd-forn-form{background:#fff;border-radius:16px;padding:14px;box-shadow:inset 0 0 0 1px #dfe2e8}
.pd-ov .pd-forn-form .pe{margin-top:6px}
.pd-ov .pd-forn-form .dois{margin-top:0}
.pd-ov .tl-modal .pd-forn-form input[type=text],.pd-ov .tl-modal .pd-forn-form select{background:var(--app);box-shadow:none}
@media (max-width:640px){
  .pd-ov .pd-forn-it{flex-wrap:wrap}
  .pd-ov .pd-forn-conf{justify-content:flex-start}
}

/* excluir produtos */
.pd .pd-perigo,.pd-ov .pd-perigo{color:var(--verm)}
.pd .pd-perigo:hover,.pd-ov .pd-perigo:hover{background:var(--verm2)}
.pd-ov .btn.pd-perigo-cheio{background:var(--verm);color:#fff;box-shadow:none}
.pd-ov .btn.pd-perigo-cheio:hover{background:#991b1b}
.pd-ov .pd-pe .pd-pExc{margin-right:auto}
.pd-ov .pd-excbox[hidden]{display:none}
.pd-ov .pd-excbox{margin-top:14px;padding:14px 16px;border-radius:var(--r2);background:var(--verm2)}
.pd-ov .pd-excbox p{margin:0;font-size:13px;color:var(--tinta);overflow-wrap:anywhere}
.pd-ov .pd-excbox .pe{margin-top:12px}
.pd .c-sel{width:1%;white-space:nowrap}
.pd .pd-chk{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;margin:-10px 0;cursor:pointer;font-size:12.5px;font-weight:700;color:var(--tinta2)}
.pd .pd-chk input{width:18px;height:18px;margin:0;cursor:pointer;accent-color:var(--azul)}
.pd .pd-chk-t{display:none}
@media (max-width:1099px){
  .pd td.c-sel{order:-2;grid-column:1/-1}
  .pd .pd-chk{justify-content:flex-start;margin:-10px 0 -10px -4px}
  .pd .pd-chk-t{display:inline}
}

/* NCM: conferência e busca na tabela oficial */
.pd-ov .tl-modal .pd-ncmLinha{display:flex;gap:8px;align-items:center}
.pd-ov .tl-modal .pd-ncmLinha input{flex:1;min-width:0}
.pd-ov .tl-modal .pd-ncmInfo{font-size:12px;line-height:1.35;margin-top:4px;overflow-wrap:anywhere}
.pd-ov .tl-modal .pd-ncmInfo.ok{color:var(--verde)}
.pd-ov .tl-modal .pd-ncmInfo.ruim{color:var(--verm);font-weight:700}
.pd-ov .tl-modal .pd-ncmBusca{border:1px solid var(--linha);border-radius:18px;padding:14px;margin:4px 0 14px;display:grid;gap:10px;min-width:0}
.pd-ov .tl-modal .pd-ncmBusca label{display:block;font-weight:700;font-size:13px}
.pd-ov .tl-modal .pd-ncmRes{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto;overflow-x:hidden;padding:2px 4px 2px 0}
.pd-ov .tl-modal .pd-ncmItem{flex:none;box-sizing:border-box;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:2px 10px;width:100%;height:auto;min-height:44px;text-align:left;white-space:normal;border:1px solid var(--linha);background:var(--card);border-radius:14px;padding:9px 12px;cursor:pointer;font:500 13px var(--fonte);color:var(--tinta);line-height:1.35}
.pd-ov .tl-modal .pd-ncmItem:hover,.pd-ov .tl-modal .pd-ncmItem:focus-visible{border-color:var(--azul);background:var(--azul4)}
.pd-ov .tl-modal .pd-ncmItem b{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.pd-ov .tl-modal .pd-ncmItem span{font-weight:600;overflow-wrap:anywhere}
.pd-ov .tl-modal .pd-ncmItem small{grid-column:1/-1;display:block;color:var(--suave);font-size:11.5px;font-weight:500;line-height:1.35;max-height:2.7em;overflow:hidden}
.pd-ov .tl-modal .pd-ncmItem.velho{opacity:.6}
.pd-ov .tl-modal .pd-ncmVazio{font-size:13px;color:#5b6170;margin:0}
.pd-ov .tl-modal .pd-ncmTab{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;font-size:12px;color:#5b6170}

/* aba Tabela NCM */
.pd .pd-nCorpo{padding:4px 20px 20px;min-width:0}
.pd .pd-nBusca input{width:100%;box-sizing:border-box;min-height:44px;border:1px solid var(--linha);border-radius:14px;padding:10px 14px;font:inherit;background:#fff}
.pd .pd-nAtalhos{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.pd .pd-chip{border:1px solid var(--linha);background:#fff;border-radius:999px;padding:8px 14px;min-height:36px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.pd .pd-chip:hover,.pd .pd-chip:focus-visible{border-color:var(--azul);background:var(--azul4)}
.pd .pd-nTit{font-size:13px;color:#5b6170;margin:4px 0 8px}
.pd .pd-nAlerta{color:var(--verm)}
.pd .pd-nLista{display:grid;gap:6px}
.pd .pd-nItem{display:grid;grid-template-columns:130px 1fr auto;gap:12px;align-items:center;border:1px solid var(--linha);border-radius:14px;padding:10px 14px;background:#fff}
.pd .pd-nItem.ruim{border-color:var(--verm);background:var(--verm2)}
.pd .pd-nCod b{font-variant-numeric:tabular-nums;font-size:15px}
.pd .pd-nSit{display:block;color:var(--verm);font-size:12px;font-weight:700}
.pd .pd-nDesc{min-width:0}
.pd .pd-nDesc span{display:block;font-weight:600;overflow-wrap:anywhere}
.pd .pd-nDesc small{display:block;color:#5b6170;font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.pd .pd-nZero{font-size:12px;color:#8a8f9c;white-space:nowrap}
@media (max-width:640px){.pd .pd-nCorpo{padding:4px 14px 16px}.pd .pd-nItem{grid-template-columns:1fr;gap:6px}.pd .pd-nUso{justify-self:start}.pd .pd-chip{font-size:12px;padding:7px 12px}}

/* janela do produto: duas colunas (dados | preço e fornecedores) e densidade compacta */
.pd-ov .tl-modal.pd-modal{width:min(1180px,94vw)}
.pd-ov .tl-modal select,.pd-ov .tl-modal input[type=text]{min-height:40px;border-radius:14px;padding:8px 12px}
.pd-ov .pd-colunas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;align-items:start}
.pd-ov .pd-col{min-width:0}
.pd-ov .pd-col>fieldset:first-child{margin-top:0}
@media (max-width:900px){.pd-ov .pd-colunas{grid-template-columns:minmax(0,1fr)}}

/* as abas desta tela ficam abaixo do cabeçalho */
.pd .pd-abas{display:flex}

/* Janela de produtos repetidos na importação da planilha */
.pd-rep-modal h2{font-size:18px;margin:0 0 4px}
.pd-rep-sub{font-size:12.5px;color:var(--tinta2);margin:0 0 12px;line-height:1.5}
.pd-rep-todos{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px;font-size:12.5px;font-weight:700;color:var(--suave)}
.pd-rep-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:calc(100dvh / var(--z, 1) - 320px);overflow:auto}
.pd-rep{display:flex;gap:12px;align-items:center;justify-content:space-between;background:var(--app);border-radius:16px;padding:10px 12px;flex-wrap:wrap}
.pd-rep-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 320px}
.pd-rep-txt b{font-size:13px;overflow-wrap:anywhere}
.pd-rep-txt small{font-size:12px;color:var(--suave)}
.pd-rep-txt .pd-rep-ja{color:var(--ambar);font-weight:700}
.pd-rep-seg{display:flex;gap:4px;padding:4px;background:#e9ebef;border-radius:999px;flex:none}
.pd-rep-seg button{min-height:36px;padding:6px 14px;border:0;border-radius:999px;background:none;color:var(--tinta2);font:700 12.5px var(--fonte);cursor:pointer;white-space:nowrap}
.pd-rep-seg button.on{background:var(--preto);color:#fff}
#pd-f-descricao{text-transform:uppercase}
