/* ==================================================================
   P1 VENDOR HUB, Centers tab (Wave 1 W1-A, 2026-10-07, portal v1.89).
   Light cards, hairline borders, plain colored status words, dark primary button, no red buttons, no side stripes,
   no emoji (rules/design.md). Every class starts with pzce-. Rows are flex, never a table, so 400px never scrolls sideways.
   ================================================================== */
.pzce{display:flex;flex-direction:column;gap:16px;margin-top:14px;color:var(--pz-ink-2);font-size:14px;line-height:20px}
.pzce-card{min-width:0}
.pzce .pzcard-h{justify-content:space-between;align-items:flex-start}
.pzce-ct{min-width:0}
.pzce-sub{margin-top:2px;font-size:13px;color:var(--pz-ink-3)}
.pzce-quiet{font-size:13px;color:var(--pz-ink-3);line-height:18px}
.pzce p{margin:0 0 10px}
.pzce p:last-child{margin-bottom:0}
.pzce-lead{color:var(--pz-ink)}
.pzce-warn{color:var(--pz-due);font-size:13.5px;font-weight:600}
.pzce-ok{color:var(--pz-good);font-size:13.5px;font-weight:600}
.pzce-k{font-size:12px;color:var(--pz-ink-3);font-weight:600}

/* summary numbers */
.pzce-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px 20px;margin-bottom:12px}
.pzce-stat{min-width:0}
.pzce-v{font-size:19px;line-height:26px;font-weight:600;color:var(--pz-ink);letter-spacing:-.01em;overflow-wrap:anywhere}

/* loading shapes: same height as the real thing */
.pzce-skw{display:flex;flex-direction:column;gap:10px}
.pzce-sk{height:18px;width:100%}
.pzce-skw .pzce-sk:nth-child(2){width:70%}
.pzce-skw .pzce-sk:nth-child(3){width:85%}

/* the file box */
.pzce-drop{border:1px dashed var(--pz-line-2);border-radius:var(--pz-radius);background:var(--pz-surface-2);padding:26px 16px;text-align:center;cursor:pointer;margin:6px 0 12px}
.pzce-drop b{color:var(--pz-ink);font-size:14px}
.pzce-drop:hover,.pzce-drop.on,.pzce-drop:focus-visible{background:var(--pz-hover);border-color:var(--pz-ink-4);outline:none}
.pzce-drop:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.pzce-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.pzce-tools{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}
.pzce-file-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.pzce-file-row b{color:var(--pz-ink);overflow-wrap:anywhere}
.pzce-cols{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.pzce-colw{display:inline-block;margin:2px 6px 2px 0;padding:1px 8px;border:1px solid var(--pz-line);border-radius:999px;font-size:12px;color:var(--pz-ink-2);background:#fff}
.pzce-colw.sec{color:var(--pz-ink-3);background:var(--pz-surface-2)}
.pzce-prog{margin:10px 0}
.pzce-prog-l{font-size:13px;color:var(--pz-ink-2);margin-bottom:6px}
.pzce-bar{height:8px;border-radius:999px;background:var(--pz-line);overflow:hidden}
.pzce-bar i{display:block;height:100%;background:var(--pz-ink);border-radius:999px;transition:width .2s}
.pzce-done{padding:10px 12px;border:1px solid var(--pz-line);border-radius:10px;background:var(--pz-surface-2);color:var(--pz-ink);margin-bottom:10px}
.pzce-undo{margin:8px 0 12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pzce-sum{margin:6px 0 10px}
.pzce-sumline{color:var(--pz-ink);margin-bottom:10px}
.pzce-confirm{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--pz-line-2);border-radius:10px;background:#fff;font-size:13.5px;color:var(--pz-ink)}
.pzce-confirm>span{flex:1 1 280px}
.pzce-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.pzce-more{margin-top:10px}

/* filter chips: interactive, so they keep their pill look */
.pzce-chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.pzce-chip{height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--pz-line-2);background:#fff;color:var(--pz-ink-2);font:600 12.5px/1 var(--pz-font);cursor:pointer}
.pzce-chip:hover{background:var(--pz-hover)}
.pzce-chip.on{background:var(--pz-ink);border-color:var(--pz-ink);color:#fff}
.pzce-chip:focus-visible{outline:2px solid #2563eb;outline-offset:2px}

/* rows */
.pzce-list{display:flex;flex-direction:column;border:1px solid var(--pz-line);border-radius:10px;overflow:hidden;background:#fff}
.pzce-row{display:grid;grid-template-columns:minmax(150px,1.1fr) 130px minmax(0,2.6fr) auto;gap:6px 16px;align-items:start;padding:10px 14px;border-bottom:1px solid var(--pz-line);text-align:left;background:#fff;color:inherit;font:inherit;width:100%;box-sizing:border-box}
.pzce-row:last-child{border-bottom:0}
.pzce-row.slim{grid-template-columns:minmax(150px,1.1fr) 110px minmax(0,2.6fr)}
.pzce-row.visit{grid-template-columns:minmax(150px,1.1fr) 130px minmax(0,2.2fr) 150px;align-items:center}
.pzce-row.pick{grid-template-columns:minmax(150px,1fr) minmax(0,2fr);border:0;border-bottom:1px solid var(--pz-line);cursor:pointer;align-items:center}
.pzce-row.pick:hover{background:var(--pz-hover)}
.pzce-row.pick:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}
.pzce-rc{min-width:0}
.pzce-rn{font-weight:700;color:var(--pz-ink);font-size:13.5px}
.pzce-rname{color:var(--pz-ink);overflow-wrap:anywhere}
.pzce-rs{min-width:0}
.pzce-rd{min-width:0;font-size:13px;color:var(--pz-ink-2);overflow-wrap:anywhere}
.pzce-rt{min-width:0}
.pzce-chg{margin-bottom:3px}
.pzce-chl{font-weight:700;color:var(--pz-ink)}
.pzce-from{color:var(--pz-ink-3);text-decoration:line-through}
.pzce-msg{margin-top:3px;font-size:12.5px;color:var(--pz-ink-3)}
.pzce-msg.warn{color:var(--pz-due);font-weight:600}
.pzce-msg.bad{color:var(--pz-late);font-weight:600}

/* inputs: 16px so phones do not zoom, 36px tall */
.pzce-in,.pzce-sel{width:100%;box-sizing:border-box;min-height:36px;padding:7px 10px;border:1px solid var(--pz-line-2);border-radius:var(--pz-radius-sm);background:#fff;color:var(--pz-ink);font:400 16px/22px var(--pz-font)}
textarea.pzce-in{min-height:64px;resize:vertical}
.pzce-in:focus,.pzce-sel:focus{outline:none;border-color:var(--pz-ink);box-shadow:0 0 0 3px rgba(15,23,42,.08)}
.pzce-sel{font-size:14px;min-height:34px;padding:5px 8px}
.pzce-sel[disabled]{opacity:.6}
.pzce-lab{display:block;font-size:12.5px;font-weight:600;color:var(--pz-ink-2);margin:0 0 4px}
.pzce-li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--pz-line);font-size:13.5px}
.pzce-li:last-child{border-bottom:0}
.pzce-li b{color:var(--pz-ink);font-weight:600}
.pzce-li b.due{color:var(--pz-due)}
.pzce-li b.late{color:var(--pz-late)}
.pzce-lis{display:flex;flex-direction:column;max-width:560px}

/* the center sheet */
body.pzce-open{overflow:hidden}
.pzce-sheetw{position:fixed;inset:0;z-index:200}
.pzce-scrim{position:absolute;inset:0;background:rgba(15,23,42,.35)}
.pzce-sheet{position:absolute;top:0;right:0;bottom:0;width:min(640px,100%);background:#fff;box-shadow:var(--pz-shadow-pop);display:flex;flex-direction:column}
.pzce-sh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;border-bottom:1px solid var(--pz-line)}
.pzce-sh h3{margin:2px 0 2px;font:700 18px/24px var(--pz-font);color:var(--pz-ink);overflow-wrap:anywhere}
.pzce-sb{padding:16px 20px 28px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.pzce-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.pzce-fld{min-width:0}
.pzce-fld.wide,.pzce-grp.wide{grid-column:1 / -1}
.pzce-grp{margin-top:6px;color:var(--pz-ink)}
.pzce-codes{margin-top:18px;padding-top:14px;border-top:1px solid var(--pz-line)}
.pzce-codes .pzce-grid{margin-top:10px}

@media (max-width:760px){
  .pzce{gap:12px}
  .pzce .pzcard-h{padding:14px 16px}
  .pzce .pzcard-b{padding:14px 16px}
  .pzce-stats{grid-template-columns:1fr 1fr;gap:12px}
  .pzce-row,.pzce-row.slim,.pzce-row.visit,.pzce-row.pick{grid-template-columns:minmax(0,1fr) auto}
  .pzce-row>.pzce-rd{grid-column:1 / -1}
  .pzce-row.visit>.pzce-rt{grid-column:1 / -1}
  .pzce-row.pick>.pzce-rd{grid-column:1 / -1}
  .pzce-row.slim>.pzce-rd{grid-column:1 / -1}
  .pzce-sheet{width:100%}
  .pzce-grid{grid-template-columns:1fr}
  .pzce-sel{font-size:16px;min-height:40px}
  .pzce-chip{height:34px}
  .pzce-tools{gap:14px}
}
