/* V24 parts workflow: compact, responsive and readable on desktop and tablets. */
body:has(#partsShell) .top{height:72px;overflow:hidden;position:relative;z-index:3}
body:has(#partsShell) .top-title{display:inline-flex;align-items:center;max-width:150px}
body:has(#partsShell) .top-actions{flex-shrink:0}
body:has(#partsShell) .v22-parts-shell{max-width:1420px;padding:25px clamp(18px,3.25vw,44px) 60px;margin:auto}
body:has(#partsShell) .v22-heading{margin:0 0 15px;align-items:flex-end}
body:has(#partsShell) .v22-heading .eyebrow{font-size:10px;letter-spacing:1.2px;color:#187ba4;margin:0 0 4px;font-weight:850}
body:has(#partsShell) .v22-heading h1{font-size:clamp(26px,2.8vw,32px);letter-spacing:-.9px;margin:0 0 5px}
body:has(#partsShell) .v22-heading p:not(.eyebrow){font-size:12px;line-height:1.5;color:#647b8a}
body:has(#partsShell) .v22-outline{padding:10px 15px;min-height:41px;white-space:nowrap}
#partsPrivate .v22-parts-stats{gap:9px;margin:0 0 14px;grid-template-columns:repeat(4,minmax(0,1fr))}
#partsPrivate .v24-stat-button{border:1px solid #dfe9ee;border-radius:10px;background:#fff;padding:11px 15px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;text-align:left;gap:8px;min-height:67px;cursor:pointer}
#partsPrivate .v24-stat-button strong{font-size:25px;line-height:1;color:#183b51;order:1}
#partsPrivate .v24-stat-button span{font-size:11px;line-height:1.4;font-weight:750;color:#567185}
#partsPrivate .v24-stat-button:hover,#partsPrivate .v24-stat-button:focus-visible{border-color:#80bad4;background:#f4fafe;outline-offset:2px}
#partsPrivate .v24-stat-button[aria-pressed=true]{border-color:#167fa6;box-shadow:0 0 0 1px #167fa6}
#partsPrivate .v24-setup-grid{display:grid;grid-template-columns:minmax(295px,.9fr) minmax(470px,1.45fr);gap:13px;align-items:stretch;margin:0 0 13px}
#partsPrivate .v23-job-start,#partsPrivate .v22-suppliers{min-width:0;margin:0;padding:18px 19px;background:#fff;border:1px solid #dfe7ec;border-radius:11px}
#partsPrivate .v22-section-title{margin:0 0 12px}
#partsPrivate .v22-section-title h2{font-size:17px;letter-spacing:-.3px;margin:0 0 4px}
#partsPrivate .v22-section-title p:not(.panel-kicker){font-size:11px;line-height:1.45;color:#6a8090}
#partsPrivate .panel-kicker{font-size:10px;font-weight:850;color:#187ba4;letter-spacing:1px;margin:0 0 6px}
#partsPrivate .v23-job-picker{display:flex;flex-direction:column;gap:9px;align-items:stretch}
#partsPrivate .v23-job-picker label{font-size:11px;line-height:1.35;gap:6px}
#partsPrivate #partsJob{width:100%;font-size:12px;min-height:43px;padding:9px 12px}
#partsPrivate #partsOpenJob{width:fit-content;min-height:35px;padding:8px 11px}
#partsPrivate .v23-job-context{font-size:11px;line-height:1.45;margin:9px 0 0;color:#6c8291}
#partsPrivate .v23-supplier-search{margin:0 0 10px;padding:0;background:none;gap:8px;grid-template-columns:minmax(0,1fr) auto}
#partsPrivate .v23-supplier-search label{font-size:11px;gap:6px}
#partsPrivate .v23-supplier-search input{min-height:43px;padding:9px 12px;font-size:12px}
#partsPrivate .v23-supplier-search button{min-height:43px;padding:9px 12px;font-size:11px;white-space:nowrap}
#partsPrivate .v23-supplier-instructions{font-size:10px;margin:0 0 9px;line-height:1.4}
#partsPrivate .v22-supplier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
#partsPrivate .v22-supplier-card{min-width:0;padding:10px 7px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:start;gap:5px;border-radius:8px;background:#f9fbfc;cursor:pointer}
#partsPrivate .v22-supplier-icon{width:32px;height:32px;min-height:32px;font-size:11px;border-radius:8px;display:grid;place-items:center}
#partsPrivate .v22-supplier-card strong{font-size:11px;line-height:1.3;align-self:center}
#partsPrivate .v22-supplier-card small{display:none}
#partsPrivate .v22-supplier-card b{font-size:10px;font-weight:750;line-height:1.3;margin-top:auto}
#partsPrivate .v22-parts-columns{grid-template-columns:minmax(320px,1fr) minmax(370px,1.08fr);gap:13px}
#partsPrivate .v22-part-form-card,#partsPrivate .v22-queue-card{padding:19px;border-radius:11px;min-width:0;scroll-margin-top:20px}
#partsPrivate .v22-parts-form{gap:10px}
#partsPrivate .v22-parts-form input,#partsPrivate .v22-parts-form select,#partsPrivate .v22-parts-form textarea{min-height:40px}
#partsPrivate .v22-form-two{gap:9px}
#partsPrivate .v23-common-parts{padding:9px}
#partsPrivate .v23-common-part-buttons button{padding:7px 9px}
#partsPrivate .v22-parts-list{max-height:none}
#partsPrivate .v24-privacy-note{font-size:11px;color:#698092;line-height:1.5;margin:16px 0 0;padding:10px 0;border-top:1px solid #dfe8ee}
#partsPrivate .v22-pair strong{font-size:12px}
#partsPrivate .v22-local-caution{font-size:10px;line-height:1.55}
#partsError{line-height:1.5;overflow-wrap:anywhere}
#partsError[hidden],#partsPrivate[hidden],#partsOpenJob[hidden]{display:none!important}
@media(max-width:1190px){
 #partsPrivate .v24-setup-grid{grid-template-columns:1fr}
 #partsPrivate .v22-parts-columns{grid-template-columns:1fr}
 #partsPrivate .v22-supplier-card small{display:block}
}
@media(max-width:760px){
 body:has(#partsShell) .v22-parts-shell{padding:18px 15px 110px}
 body:has(#partsShell) .v22-heading{align-items:flex-start}
 #partsPrivate .v22-parts-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 #partsPrivate .v24-stat-button{min-height:62px}
 #partsPrivate .v22-supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #partsPrivate .v23-job-start,#partsPrivate .v22-suppliers,#partsPrivate .v22-part-form-card,#partsPrivate .v22-queue-card{padding:15px}
 #partsPrivate .v23-supplier-search{grid-template-columns:1fr}
 #partsPrivate .v23-supplier-search button{width:100%}
}
@media(max-width:420px){
 #partsPrivate .v22-parts-stats{gap:7px}
 #partsPrivate .v24-stat-button{padding:10px}
 #partsPrivate .v22-form-two,#partsPrivate .v22-queue-controls{grid-template-columns:1fr}
}
