/* Purchase Orders (app/purchasing/purchasing.js): uses the quotes module's styles (qb-*), plus these. */
.pu .qb-section-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.pu .qb-section-h h2{margin:0;font-size:15px}
.pu .qb-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.pu .tablewrap{overflow-x:auto;max-width:100%}
.pu-lines td:first-child{min-width:200px}
.pu section.panel,.pu .pu-sup,.pu form.pu-settings{padding:14px 16px}
.pu > .qb-banner{margin-bottom:12px}
.pu-meta{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px 18px}
.pu-meta label,.pu label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink2);font-weight:500}
.pu-meta2{display:flex;flex-direction:column;gap:10px}
.pu textarea,.pu-meta input{width:100%}
.pu-lines input{padding:5px 7px;font-family:var(--f-mono);font-size:13px}
.pu-qty{width:84px;text-align:right}
.pu-unit{width:104px;text-align:right}
.pu-code{width:140px}
.pu-add{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.pu-add input[type=search]{max-width:none}
.pu-add .qb-results:empty{display:none}
.qb-results{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;max-height:280px;overflow-y:auto}
.qb-results:empty{display:none}
.pu-pick{border:0;border-top:1px solid var(--line2);background:var(--panel);text-align:left;padding:8px 10px;cursor:pointer;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline;color:var(--ink);font-size:13px}
.pu-pick:first-child{border-top:0}
.pu-pick:hover,.pu-pick:focus-visible{background:var(--panel2)}
.pu-pick.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.pu-pick .hint{flex-basis:100%;font-size:12px}
.pu-custom{display:grid;grid-template-columns:minmax(0,1fr) 140px 80px 120px auto;gap:8px;margin-top:8px;align-items:center}
.pu-sup{display:flex;flex-direction:column;gap:3px;font-size:13px}
.pu-sup h3{margin:0 0 4px;font-size:13.5px}
.pu-rcpt{border-top:1px solid var(--line2);padding:10px 0;display:flex;flex-direction:column;gap:4px}
.pu-rcpt:first-of-type{border-top:0;padding-top:0}
.pu-rcpt-h{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.pu-costs{margin-top:6px;padding:10px 12px;border-radius:8px;background:var(--warn-soft)}
.pu-costs table{margin-top:6px}
.pu-costs td{background:transparent}
.pu-rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.qb-modal.pu-wide{max-width:860px}
.pu-rtable input{width:96px;text-align:right;padding:5px 7px}
.pu label.check,.qb-modal label.check{flex-direction:row;align-items:center;gap:6px;font-weight:400;color:var(--ink)}
.pu-sg .qb-section-h{align-items:center}
.pu-settings{display:flex;flex-direction:column;gap:12px;max-width:760px}
.pu-settings .hint{font-weight:400}
@media(max-width:760px){
  .pu-meta{grid-template-columns:1fr}
  .pu-custom{grid-template-columns:1fr 1fr}
  .pu-custom input[name=description]{grid-column:1/-1}
  .pu-code{width:100px}
}
.pu-ctable,.pu-cttable{margin:6px 0}
.pu-ctable select,.pu-ctable input,.pu-cttable select,.pu-cttable input[type=text]{width:100%;padding:5px 7px}
.pu-ctable td.num input{width:110px;text-align:right}
.pu-split{margin-top:2px}
.pu-landed{margin-top:4px}
.pu-landed table{max-width:520px}
