.purchase47-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin:0 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft,rgba(255,255,255,.025))}.purchase47-intro>div{display:grid;gap:3px}.purchase47-intro span{font-size:.82rem;color:var(--muted)}.purchase47-audit-badge{white-space:nowrap;padding:6px 9px;border:1px solid var(--line);border-radius:999px}
.purchase47-list{display:grid;gap:10px}.purchase47-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:10px 12px}.purchase47-card.draft{border-style:dashed}.purchase47-card-main{appearance:none;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:space-between;gap:18px;flex:1;text-align:left;cursor:pointer;min-width:0}.purchase47-card-title{display:grid;gap:3px;min-width:0}.purchase47-card-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purchase47-card-title small{color:var(--muted)}.purchase47-card-total{display:grid;justify-items:end;gap:5px;white-space:nowrap}.purchase47-card-actions{display:flex;gap:6px;flex-wrap:wrap}
.purchase47-dialog{width:min(1120px,calc(100vw - 28px))}.purchase47-form{width:100%;max-width:none}.purchase47-section{display:grid;gap:12px;padding:16px 0;border-top:1px solid var(--line)}.purchase47-section:first-of-type{border-top:0}.purchase47-section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.purchase47-section-title>div,.purchase47-section-title:not(.purchase47-items-head):not(.purchase47-funding-head){display:grid;gap:3px}.purchase47-section-title span{font-size:.82rem;color:var(--muted)}.purchase47-items-head,.purchase47-funding-head{align-items:center}
.purchase47-items{display:grid;gap:12px}.purchase47-item-row{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft,rgba(255,255,255,.02));display:grid;gap:10px}.purchase47-item-top{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(145px,.72fr) minmax(160px,.85fr) minmax(230px,1.35fr) 38px;gap:10px;align-items:end}.purchase47-code-state{min-height:42px;display:flex;align-items:center;padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:.8rem}.purchase47-code-state.ok{border-color:rgba(57,200,120,.55);color:#6ee7a4}.purchase47-code-state.warn{border-color:rgba(255,190,73,.55);color:#ffd27c}.purchase47-code-state.neutral{color:var(--muted)}
.purchase47-item-catalog{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(150px,.65fr) minmax(190px,.8fr);gap:9px}.purchase47-item-purchase{display:grid;grid-template-columns:.75fr .9fr 1fr 1fr 1fr;gap:9px;align-items:end}.purchase47-item-row label{display:grid;gap:5px}.purchase47-stock-entry,.purchase47-line-total{display:grid;gap:4px;align-self:stretch;align-content:center;padding:8px 10px;border:1px dashed var(--line);border-radius:9px}.purchase47-stock-entry span,.purchase47-line-total span{font-size:.72rem;color:var(--muted)}.purchase47-line-total{border-style:solid}.purchase47-line-total strong{font-size:1rem}
.purchase47-values-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px}.purchase47-values-grid label,.purchase47-value{display:grid;gap:5px}.purchase47-value{padding:10px 12px;border:1px solid var(--line);border-radius:10px}.purchase47-value span{font-size:.78rem;color:var(--muted)}.purchase47-value.total{border-color:var(--accent,#2f80ed)}.purchase47-check{padding:10px 12px;border-radius:10px;border:1px solid var(--line);font-weight:700}.purchase47-check.ok{border-color:rgba(57,200,120,.55);color:#6ee7a4;background:rgba(57,200,120,.08)}.purchase47-check.warn{border-color:rgba(255,190,73,.55);color:#ffd27c;background:rgba(255,190,73,.08)}.purchase47-check.neutral{color:var(--muted)}
.purchase47-funding-rows{display:grid;gap:8px}.purchase47-fund-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(140px,220px) 38px;gap:9px;align-items:end}.purchase47-fund-row label{display:grid;gap:5px}.purchase47-funding-pending .purchase47-funding-rows{opacity:.7}.purchase47-file{display:grid;gap:6px}.purchase47-actions{flex-wrap:wrap}
.purchase47-detail-modal{width:min(820px,calc(100vw - 28px))}.purchase47-detail-items{display:grid;gap:8px}.purchase47-detail-items>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.purchase47-detail-items span{display:grid;gap:2px}.purchase47-detail-items small{color:var(--muted)}.purchase47-detail-totals{display:grid;gap:7px;margin-top:14px;padding:13px;border:1px solid var(--line);border-radius:12px}.purchase47-detail-totals span{display:flex;justify-content:space-between;gap:20px}.purchase47-detail-totals .grand{padding-top:8px;border-top:1px solid var(--line);font-size:1.05rem}.purchase47-funding-detail{display:grid;gap:7px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.purchase47-funding-detail span{display:flex;justify-content:space-between;gap:14px}.purchase47-detail-audit{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;color:var(--muted);font-size:.86rem}.purchase47-detail-notes{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.03)}.purchase47-draft-note{padding:10px 12px;border-radius:10px;border:1px dashed var(--line);color:var(--muted);margin-bottom:12px}.purchase47-detail-actions{margin-top:12px}
.purchase47-receipt-modal{width:min(900px,calc(100vw - 28px))}.purchase47-receipt-stage{display:grid;place-items:center;max-height:70vh;overflow:auto;background:#080808;border-radius:12px;border:1px solid var(--line)}.purchase47-receipt-stage img{max-width:100%;height:auto;display:block}.purchase47-pay-modal{width:min(650px,calc(100vw - 28px))}.purchase47-pay-modal .purchase47-funding-head{margin-top:14px}
@media(max-width:980px){.purchase47-item-catalog{grid-template-columns:1fr 1fr}.purchase47-item-purchase{grid-template-columns:1fr 1fr}.purchase47-values-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.purchase47-intro,.purchase47-card,.purchase47-card-main,.purchase47-section-title{align-items:stretch;flex-direction:column}.purchase47-card-total{justify-items:start}.purchase47-card-actions{width:100%}.purchase47-dialog{width:calc(100vw - 16px)}.purchase47-item-top,.purchase47-item-catalog,.purchase47-item-purchase,.purchase47-values-grid,.purchase47-fund-row{grid-template-columns:1fr}.purchase47-item-top .purchase47-item-remove,.purchase47-fund-row .purchase47-fund-remove{justify-self:end}}

.purchase47-code-state.ok,.purchase47-code-state.warn{font-weight:800}.purchase47-item-name-field input{font-weight:700}

/* V47 — conferência da nota alinhada */
.purchase47-values-grid{align-items:start}
.purchase47-values-grid>label,.purchase47-value-field{display:grid;grid-template-rows:auto 48px;gap:5px;align-content:start}
.purchase47-field-label{font-weight:700;line-height:1.2}
.purchase47-values-grid>label>input{height:48px;min-height:48px;box-sizing:border-box;margin:0}
.purchase47-value-field>.purchase47-value{height:48px;min-height:48px;box-sizing:border-box;display:flex;align-items:center;padding:0 12px;margin:0}
.purchase47-value-field>.purchase47-value strong{line-height:1.2}

/* V47 — rascunho: fechamento neutro e exclusao explicita */
.purchase47-danger{border-color:rgba(239,68,68,.48)!important;color:#fca5a5!important}
.purchase47-danger:hover{background:rgba(239,68,68,.10)!important}
.purchase47-actions .purchase47-danger{margin-right:auto}

/* V47 — comprovante: somente o botao abre o seletor */
.purchase47-file{display:grid;gap:6px}
.purchase47-file-title{font-weight:700}
.purchase47-file-control{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.purchase47-file-control .field-help{margin:0}
.purchase47-file-input{display:none!important}

/* V47 — fluxo de confirmacao por item */
.purchase47-item-top{grid-template-columns:minmax(150px,.8fr) minmax(145px,.72fr) minmax(160px,.85fr) minmax(230px,1.35fr)}
.purchase47-item-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:2px}
.purchase47-item-row.is-confirmed{border-color:rgba(57,200,120,.42);background:rgba(57,200,120,.035)}
.purchase47-item-row.is-confirmed input:disabled,.purchase47-item-row.is-confirmed select:disabled{opacity:.78;cursor:default}
.purchase47-item-row.is-confirmed .purchase47-code-state{opacity:.85}
.purchase47-item-delete{border-color:rgba(239,68,68,.32)!important;color:#fca5a5!important}
.purchase47-item-delete:hover{background:rgba(239,68,68,.08)!important}
/* V47 — comprovante em caixa de largura total; somente o botao e clicavel */
.purchase47-file-control{min-height:48px;border:1px solid var(--line);border-radius:10px;padding:7px 10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--panel-soft,rgba(255,255,255,.02))}
.purchase47-file-control .field-help{margin:0;pointer-events:none}
.purchase47-file-input{display:none!important}
@media(max-width:680px){.purchase47-item-top{grid-template-columns:1fr}.purchase47-item-actions{justify-content:stretch}.purchase47-item-actions .btn{flex:1}}

/* V47 — erro persistente junto a Conferir e finalizar */
.purchase47-finalize-error{margin-top:14px;padding:11px 13px;border:1px solid rgba(239,68,68,.58);border-radius:10px;background:rgba(239,68,68,.10);color:#fca5a5;font-weight:800;line-height:1.35}
html[data-theme="light"] .purchase47-finalize-error{color:#991b1b;background:#fff1f2;border-color:#fecaca}

/* V47 — finalizacao sempre usa a validacao visivel do sistema */
.purchase47-actions #buy47Finalize{min-width:150px}
