.pc-shell{display:grid;gap:16px;color:var(--txt)}.pc-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.pc-head h2{font-size:25px;margin:5px 0}.pc-head p,.pc-note{font-size:12px;color:var(--dim);line-height:1.7}.pc-head>div:last-child{display:flex;gap:8px}.pc-eyebrow{font-size:10px;letter-spacing:.17em;color:var(--acc);font-weight:800}.pc-head h2:before{content:'▦';color:var(--acc);margin-inline-end:12px}.pc-shell button{font:inherit;font-size:12px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:var(--panel);color:var(--txt);cursor:pointer;box-shadow:none}.pc-shell button:hover{border-color:var(--acc);color:var(--acc)}.pc-shell button:disabled{opacity:.5;cursor:wait}.pc-shell button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.pc-shell .pc-primary{background:var(--acc);border-color:var(--acc);color:#fff}.pc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pc-kpis article{padding:16px 20px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.pc-kpis span{display:block;font-size:12px;color:var(--dim)}.pc-kpis b{display:block;margin-top:8px;font-size:25px}.pc-layout{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:16px}.pc-layout nav{position:sticky;top:80px;padding:13px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.pc-layout nav summary{padding:8px 4px 12px;font-size:13px;font-weight:750;cursor:pointer}.pc-layout nav button{width:100%;display:flex;justify-content:space-between;text-align:start;margin-bottom:4px;border-color:transparent;padding:11px 12px}.pc-layout nav button[aria-current=page]{background:var(--active);color:var(--acc);font-weight:750}.pc-layout nav p{font-size:11px;line-height:1.8;color:var(--dim);border-top:1px solid var(--line);padding-top:12px}.pc-main{display:grid;gap:14px;min-width:0}.pc-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.pc-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px;border-bottom:1px solid var(--line)}.pc-card-head h3{font-size:15px;margin:0 0 4px}.pc-card-head small,.pc-table-wrap small{display:block;font-size:11px;color:var(--dim);margin-top:5px}.pc-table-wrap{overflow:auto}.pc-table-wrap table{width:100%;border-collapse:collapse;font-size:12px;min-width:650px}.pc-table-wrap th{font-size:11px;text-align:start;white-space:nowrap;padding:12px 18px;background:var(--surface0);color:var(--dim);font-weight:650}.pc-table-wrap td{padding:15px 18px;border-top:1px solid var(--line);vertical-align:middle}.pc-table-wrap td strong{display:block;margin-top:8px;white-space:nowrap}.pc-row-actions{display:flex;gap:6px;flex-wrap:wrap}.pc-status{display:inline-block;padding:5px 9px;font-size:11px;border-radius:7px;background:var(--surface0);color:var(--dim);white-space:nowrap}.pc-approved,.pc-received,.pc-confirmed{background:color-mix(in srgb,#149d80 12%,var(--panel));color:#149d80}.pc-pending,.pc-part_received{background:color-mix(in srgb,#bc8c22 12%,var(--panel));color:#bc8c22}.pc-empty{padding:55px 25px;text-align:center;color:var(--dim);font-size:13px;line-height:2}.pc-empty button{margin-inline-start:12px}.pc-alert,.pc-notice{padding:12px 16px;border:1px solid var(--line);border-radius:10px;line-height:1.7;font-size:12px}.pc-alert{color:#dc5265;background:color-mix(in srgb,#dc5265 7%,var(--panel))}.pc-alert button{margin-inline-start:12px}.pc-notice{color:#149d80;background:color-mix(in srgb,#149d80 7%,var(--panel))}.pc-preview{padding:14px 20px;font-size:12px;line-height:1.8}.pc-line-list>div{display:grid;grid-template-columns:minmax(150px,1fr) auto auto auto;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.pc-line-list small{display:block;color:var(--dim);font-size:10px;margin-top:4px}.pc-dialog{width:min(760px,calc(100vw - 40px));max-height:85vh;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--txt);box-shadow:0 25px 80px #0004}.pc-dialog::backdrop{background:#08193288;backdrop-filter:blur(3px)}.pc-dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.pc-dialog h3{margin:0;font-size:18px}.pc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.pc-form-grid label{display:grid;gap:7px;font-size:12px;font-weight:600}.pc-form-grid input,.pc-form-grid select,.pc-form-grid textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface1);color:var(--txt);font:inherit;font-size:13px;box-sizing:border-box}.pc-form-grid textarea{height:74px;resize:vertical}.pc-form-lines,.pc-form-grid>.pc-note{grid-column:1/-1}.pc-form-line{display:grid;grid-template-columns:minmax(160px,2fr) minmax(75px,1fr) minmax(85px,1fr) minmax(85px,1fr);gap:9px;margin-bottom:9px;align-items:center}.pc-form-line:not(:has([name=unit_price])){grid-template-columns:minmax(160px,2fr) minmax(90px,1fr)}.pc-form-line-label{font-size:11px;color:var(--dim)}.pc-form-line b{font-size:12px}.pc-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.pc-dialog [data-pc-form-error]{color:#dc5265;font-size:12px;line-height:1.7}@media(max-width:1000px){.pc-layout{grid-template-columns:150px minmax(0,1fr)}.pc-kpis{gap:8px}.pc-kpis article{padding:13px}.pc-head{align-items:flex-start;flex-wrap:wrap}}@media(max-width:700px){.pc-layout{grid-template-columns:1fr}.pc-layout nav{position:static}.pc-layout nav details>button{display:inline-flex;width:auto;margin-inline-end:4px}.pc-layout nav p{display:none}.pc-kpis{grid-template-columns:repeat(2,1fr)}.pc-form-grid{grid-template-columns:1fr}.pc-form-line{grid-template-columns:1fr 1fr}.pc-form-line:not(:has([name=unit_price])){grid-template-columns:minmax(100px,2fr) minmax(65px,1fr)}}
.pc-notice.pc-alert{color:#dc5265;background:color-mix(in srgb,#dc5265 7%,var(--panel))}
.pc-form-lines .pc-form-line:not(:has([name=unit_price])){grid-template-columns:minmax(160px,2fr) minmax(90px,1fr) 56px}
.pc-form-lines:has([name=unit_price]) .pc-form-line{grid-template-columns:minmax(160px,2fr) minmax(75px,1fr) minmax(85px,1fr) minmax(85px,1fr)}
@media(max-width:700px){.pc-form-lines .pc-form-line:not(:has([name=unit_price])){grid-template-columns:minmax(90px,2fr) minmax(65px,1fr) 50px}.pc-form-lines:has([name=unit_price]) .pc-form-line{grid-template-columns:1fr 1fr}}
.ph-shell{display:grid;gap:16px;color:var(--txt)}.ph-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.ph-head h2{font-size:24px;margin:0}.ph-head h2:before{content:'▦';color:var(--acc);margin-inline-end:12px}.ph-head p{font-size:12px;color:var(--dim);line-height:1.7;margin:0}.ph-eyebrow{font-size:10px;letter-spacing:.17em;color:var(--acc);font-weight:800}.ph-shell button{font:inherit;font-size:12px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:var(--panel);color:var(--txt);cursor:pointer}.ph-shell button:hover{border-color:var(--acc);color:var(--acc)}.ph-shell button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.ph-layout{display:grid;grid-template-columns:196px minmax(0,1fr);align-items:start;gap:16px}.ph-side{position:sticky;top:80px;align-self:start;max-height:calc(100vh - 96px);overflow-y:auto;scrollbar-width:thin}.ph-side .ra-nav{display:grid;gap:2px;padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.ph-shell .ph-side .ra-nav-group{display:grid;gap:1px;padding:6px 0 8px}.ph-shell .ph-side .ra-nav-group+.ra-nav-group{border-top:1px solid var(--line)}.ph-shell .ph-side .ra-nav-group>span{display:flex;align-items:center;gap:8px;padding:8px 10px 2px;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--dim)}.ph-shell .ph-side .ra-nav button{display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%;text-align:start;margin:0;border:0;border-radius:8px;background:transparent;box-shadow:none;padding:7px 10px;font-size:13px}.ph-shell .ph-side .ra-nav button[aria-current=page]{background:color-mix(in srgb,var(--acc) 14%,transparent);color:var(--txt);font-weight:650}.ph-side .ra-nav button b{min-width:18px;line-height:18px;padding:0 6px;border-radius:9px;background:var(--acc);color:#fff;font-size:11px;text-align:center}.ph-page-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.ph-page-title:empty{display:none}.ph-page-title h3{margin:0;font-size:18px}.ph-page-title p{margin:0;font-size:12px;color:var(--dim)}.ph-main{display:grid;gap:18px;min-width:0}.ph-main[data-ph-both=true] [data-ph-part]::before{content:attr(data-ph-label);display:block;margin:0 0 10px 4px;font-size:13px;font-weight:750;color:var(--dim)}
.pc-embedded,.tr-embedded{gap:14px}.pc-toolbar{display:flex;justify-content:flex-end;gap:8px}
@media(max-width:1000px){.ph-layout{grid-template-columns:170px minmax(0,1fr)}.ph-head{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:700px){.ph-layout{grid-template-columns:1fr}.ph-side{position:static;max-height:none}.ph-side .ra-nav{display:flex;flex-wrap:wrap;gap:4px}.ph-shell .ph-side .ra-nav-group{display:flex;flex-wrap:wrap;padding:2px 0}.ph-shell .ph-side .ra-nav-group+.ra-nav-group{border-top:0}.ph-shell .ph-side .ra-nav-group>span{display:none}.ph-shell .ph-side .ra-nav button{width:auto}}
.pc-filters{display:flex;gap:10px;padding:14px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.pc-filters input,.pc-filters select{padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface1);color:var(--txt);font:inherit;font-size:13px}.pc-filters input{flex:1;min-width:220px}.pc-chip{display:inline-block;margin:2px 6px 2px 0;padding:4px 9px;border-radius:7px;background:var(--surface0);font-size:11px;white-space:nowrap}.pc-dim{color:var(--dim)}.pc-wide{grid-column:1/-1}.pc-form-grid .pc-wide textarea{height:150px;font-family:ui-monospace,Consolas,monospace;font-size:12px;white-space:pre}.pc-dialog>div>.pc-card-head{padding:14px 0 8px;border-bottom:0}.pc-dialog>div>p{font-size:12px;line-height:1.8}.pc-superseded{opacity:.75}
.pc-form-grid input,.pc-form-grid select,.pc-form-grid textarea{font-weight:400}[data-pc-preview]>p{font-size:13px;line-height:1.7}
.ph-desk{display:grid;gap:14px}.ph-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.ph-shell .ph-kpis button{display:grid;gap:8px;text-align:start;padding:14px 16px;border-radius:14px;background:var(--panel);box-shadow:var(--shadow)}.ph-kpis span{font-size:12px;color:var(--dim)}.ph-kpis b{font-size:19px;white-space:nowrap}.ph-count{min-width:24px;padding:2px 8px;border-radius:12px;background:var(--active);color:var(--acc);text-align:center}.ph-desk-list{display:grid}.ph-shell .ph-desk-item{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 140px;gap:16px;align-items:center;text-align:start;border:0;border-top:1px solid var(--line);border-radius:0;padding:13px 20px;background:transparent}.ph-shell .ph-desk-item:first-child{border-top:0}.ph-desk-item small{display:block;margin-top:4px;font-size:12px;color:var(--dim)}.ph-desk-item strong{white-space:nowrap;font-size:13px;text-align:end}.ph-next{font-size:12px;color:var(--dim)}.ph-next b{color:var(--txt)}.ph-mine{box-shadow:inset 3px 0 0 var(--acc)}.ph-overdue small{color:#dc5265}@media(max-width:700px){.ph-shell .ph-desk-item{grid-template-columns:1fr;gap:6px}}
/* Document lists (both parts): search and party filter above, the selected document in a panel on the right. */
.dl-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.dl-bar input,.dl-bar select{padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface1);color:var(--txt);font:inherit;font-size:13px;min-width:0}.dl-bar input{flex:1 1 260px}.dl-bar select{flex:0 1 240px}
.dl-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:14px;align-items:start}.dl-split>.pc-main,.dl-split>.tr-main{display:grid;gap:14px;min-width:0}
tr.dl-row{cursor:pointer}tr.dl-row:hover td{background:var(--active)}tr.dl-row:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}tr.dl-on td{background:var(--active)}tr.dl-on td:first-child{box-shadow:inset 3px 0 0 var(--acc)}
.dl-panel{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;display:grid;gap:12px;align-content:start;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);font-size:12px}
.dl-panel header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.dl-panel header small{font-size:12px;color:var(--dim)}.dl-panel h3{font-size:16px;margin:4px 0 8px}.dl-panel h4{font-size:12px;margin:4px 0 0;color:var(--dim)}
.dl-panel .dl-close{padding:4px 10px}.dl-next{margin:0}.dl-next b{color:var(--acc)}.dl-actions{display:flex;flex-wrap:wrap;gap:6px}.dl-total{margin:0}
.dl-facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0}.dl-facts dt{color:var(--dim)}.dl-facts dd{margin:0;overflow-wrap:anywhere}
.dl-links{display:grid;gap:6px}.dl-panel .dl-links button{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:start;width:100%}
@media (max-width:1100px){.dl-split{grid-template-columns:minmax(0,1fr)}.dl-panel{position:static;max-height:none;order:-1}}
.dl-split .pc-table-wrap table,.dl-split .tr-table-wrap table{min-width:0}.dl-split table:has(tr.dl-row) tr>:last-child{display:none}.dl-split .tr-steps{flex-wrap:wrap}
/* Purchase classes: the top categories as a filter row, and as tags on each document. */
.pc-classes{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.pc-shell .pc-classes button{padding:5px 12px;border-radius:999px;font-size:12px}.pc-shell .pc-classes button[aria-pressed="true"]{border-color:var(--acc);color:var(--acc);box-shadow:0 0 10px -4px var(--acc)}
.pc-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.pc-chip-purpose{border-color:var(--acc);color:var(--acc)}
.pc-profile .pc-card-head{align-items:flex-start}.pc-profile h3{font-size:18px;margin:10px 0 2px}.pc-shell .pc-back{padding:5px 10px;font-size:11px}.pc-profile-kpis{padding:14px 20px 4px}.pc-profile-kpis article{box-shadow:none;padding:12px 16px}.pc-profile-kpis b{font-size:19px;margin-top:6px}.pc-profile-kpis small{display:block;margin-top:4px;font-size:11px;color:var(--dim)}.pc-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:10px 20px 14px}.pc-shell .pc-tabs button{border-color:transparent}.pc-shell .pc-tabs button[aria-selected=true]{background:var(--active);color:var(--acc);border-color:var(--acc);font-weight:750}.pc-facts{font-size:12px;line-height:1.7;max-width:720px}.pc-pad{padding:0 20px 12px;margin:0}.pc-candidate,.pc-suspended,.pc-expired{background:color-mix(in srgb,#bc8c22 12%,var(--panel));color:#bc8c22}.pc-inactive{background:var(--surface0);color:var(--dim)}tr[data-pc-item],tr[data-pc-supplier]{cursor:pointer}tr[data-pc-item]:hover,tr[data-pc-supplier]:hover{background:var(--active)}
@media(max-width:700px){.pc-profile-kpis{grid-template-columns:repeat(2,1fr);padding:12px}.pc-tabs{padding:8px 12px 12px}}
.pc-library{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start}.pc-tree{display:grid;gap:2px;padding:12px;border-inline-end:1px solid var(--line);max-height:70vh;overflow:auto}.pc-shell .pc-tree button{display:flex;justify-content:space-between;gap:8px;text-align:start;border-color:transparent;padding:7px 10px 7px calc(10px + var(--depth,0) * 14px)}.pc-tree b{font-weight:600;color:var(--dim);font-size:11px}.pc-shell .pc-tree button[aria-pressed=true]{background:var(--active);color:var(--acc);border-color:var(--acc)}.pc-library-list{min-width:0}.pc-found{margin:0;padding:8px 18px 0;font-size:12px;color:var(--dim)}.pc-found:empty{display:none}.pc-bulk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 20px;border-bottom:1px solid var(--line);font-size:12px;background:var(--active)}.pc-bulk select{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface1);color:var(--txt);font:inherit;font-size:12px}
@media(max-width:900px){.pc-library{grid-template-columns:1fr}.pc-tree{display:none}}
.pc-library{grid-template-columns:190px minmax(0,1fr)}.pc-shell .pc-tree button{background:none;box-shadow:none;border:1px solid transparent}.pc-library-list td:first-child:has(input){width:28px;padding-inline-end:0}.pc-library-list td button{white-space:nowrap}.pc-library-list td b{white-space:nowrap}
.pc-in{color:#149d80}.pc-out{color:#dc5265}
/* A file picker that reads as one of the row buttons (count sheet upload). */
.pc-file{display:inline-flex;align-items:center;gap:6px;cursor:pointer;border:1px solid var(--line,rgba(120,180,220,.35));border-radius:8px;padding:6px 10px}
.pc-file input[type="file"]{max-width:180px}
/* Approvals of both parts: a part with nothing waiting stays out of the way while the other has items. */
.ph-main[data-ph-both=true]:has([data-ph-part] .pc-card:not(.pc-empty),[data-ph-part] .tr-card:not(.tr-empty)) [data-ph-part]:has(.pc-empty,.tr-empty){display:none}
.pc-form-line span small{display:block;font-size:11px;color:var(--dim);margin-top:3px}
