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

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

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

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

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

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

/* V53 — erro persistente junto a Conferir e finalizar */
.purchase51-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"] .purchase51-finalize-error{color:#991b1b;background:#fff1f2;border-color:#fecaca}

/* V53 — finalizacao sempre usa a validacao visivel do sistema */
.purchase51-actions #buy51Finalize{min-width:150px}

/* V53 — feedback durante a gravação da compra */
.purchase51-actions #buy51Finalize:disabled{opacity:.7;cursor:wait}

/* V53 — modal de detalhes responsivo e sem rolagem horizontal */
.purchase51-detail-dialog{
  width:min(860px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  overflow-x:hidden;
}
.purchase51-detail-modal{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:hidden;
}
.purchase51-detail-body,
#purchase51DetailBody{
  min-width:0;
  max-width:100%;
  overflow-x:hidden;
}
.purchase51-detail-items>div{
  min-width:0;
  align-items:flex-start;
}
.purchase51-detail-items>div>span{
  min-width:0;
  flex:1 1 auto;
}
.purchase51-detail-items strong,
.purchase51-detail-items small,
.purchase51-detail-audit,
.purchase51-funding-detail span{
  overflow-wrap:anywhere;
  word-break:break-word;
  white-space:normal;
}
.purchase51-detail-items>div>strong{
  flex:0 0 auto;
  white-space:nowrap;
}
@media(max-width:680px){
  .purchase51-detail-dialog{
    width:calc(100vw - 16px);
    max-width:calc(100vw - 16px);
  }
  .purchase51-detail-modal{padding:16px;}
  .purchase51-detail-items>div{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
  }
  .purchase51-detail-totals span,
  .purchase51-funding-detail span{
    gap:10px;
  }
}
