/* Product mockup structure, using the current QSPD design tokens. */
.pv2{color:var(--ink);min-width:0}.pv2 *{box-sizing:border-box}.pv2 h1{font-size:clamp(22px,2vw,30px);margin:4px 0}.pv2 h2{font-size:18px;margin:0 0 14px}.pv2 h3{font-size:15px;margin:0 0 10px}.pv2 p{margin:6px 0}.pv2 small,.pv2 .muted{color:var(--muted)}
.pv2-nav,.pv2-actions,.pv2-tabs{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pv2-nav{margin-bottom:18px}.pv2 button,.pv2 input,.pv2 select,.pv2 textarea{font:inherit}.pv2 button{min-height:40px}.pv2 button:disabled{cursor:not-allowed;opacity:.6}.pv2 button.primary,.pv2 button[aria-selected=true]{background:var(--gold);color:var(--ink);border-color:var(--gold-dark)}.pv2 input,.pv2 select,.pv2 textarea{max-width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--card);color:var(--ink)}.pv2 input[type=checkbox]{min-height:auto}.pv2 .pv2-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.pv2 .pv2-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.pv2 .pv2-grid{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(260px,1fr);gap:16px}.pv2 .pv2-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pv2 .pv2-stack{display:grid;gap:16px;align-content:start}.pv2 .pv2-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.pv2 .pv2-summary b{display:block;font-size:24px;margin-top:6px}.pv2 .pv2-taxonomy{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pv2 .pv2-taxonomy>div+div{border-left:1px solid var(--line);padding-left:16px}.pv2 .pv2-hero{display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px}.pv2 .pv2-photo{width:210px;height:210px;object-fit:contain;border:1px solid var(--line);border-radius:12px;background:var(--card)}.pv2 .pv2-no-photo{display:grid;place-items:center;color:var(--muted);font-size:14px}.pv2 .pv2-tabs{border-bottom:1px solid var(--line);margin:16px 0;padding-bottom:8px}.pv2 .pv2-table{overflow:auto;max-width:100%}.pv2 table{border-collapse:collapse;width:100%;font-size:13px}.pv2 th{background:var(--paper);color:var(--ink);text-align:left;white-space:nowrap}.pv2 th,.pv2 td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}.pv2 td{min-width:84px}.pv2 td .pv2-actions{flex-wrap:nowrap}.pv2 .pv2-badge{display:inline-block;border-radius:20px;padding:3px 9px;background:var(--paper);border:1px solid var(--line);font-size:12px;white-space:nowrap}.pv2 .pv2-badge.ok{color:var(--ok)}.pv2 .pv2-badge.bad{color:var(--bad)}.pv2 .pv2-notice{border:1px solid var(--line);border-left:4px solid var(--gold);padding:12px;background:var(--paper);border-radius:8px;margin:12px 0}.pv2 .pv2-error{border-left-color:var(--bad);color:var(--bad)}.pv2 .pv2-empty{padding:32px;text-align:center;color:var(--muted)}.pv2 dl{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);font-size:13px;margin:0}.pv2 dt,.pv2 dd{margin:0;padding:8px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.pv2 dd{padding-left:12px}.pv2 details>summary{cursor:pointer;padding:8px 0}.pv2 .pv2-kit-grid{display:grid;grid-template-columns:250px minmax(0,1fr) 285px;gap:16px}.pv2 .pv2-grow{flex:1;min-width:140px}.pv2 .pv2-results{margin-top:16px}.pv2 .pv2-link{border:0;background:none;color:var(--gold-dark);padding:0;text-align:left;text-decoration:underline}.pv2 dialog{width:min(780px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--card);color:var(--ink)}.pv2 dialog::backdrop{background:#0008}.pv2 dialog label{display:grid;gap:5px;font-size:13px}.pv2 dialog form{display:grid;gap:14px}.pv2 dialog .pv2-actions{justify-content:flex-end}.pv2 .pv2-evidence{overflow-wrap:anywhere}.pv2 .pv2-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}
@media(max-width:1100px){.pv2 .pv2-kit-grid{grid-template-columns:220px minmax(0,1fr)}.pv2 .pv2-kit-grid>.pv2-simulator{grid-column:1/-1}.pv2 .pv2-grid{grid-template-columns:minmax(0,1fr)}.pv2 .pv2-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.pv2 .pv2-heading,.pv2 .pv2-hero{display:flex;flex-direction:column}.pv2 .pv2-photo{width:120px;height:120px}.pv2 .pv2-kit-grid,.pv2 .pv2-two{grid-template-columns:1fr}.pv2 .pv2-taxonomy{grid-template-columns:1fr 1fr}.pv2 .pv2-taxonomy>div+div{border:0;padding:0}.pv2 .pv2-card{padding:12px}.pv2 .pv2-actions{width:100%}.pv2 .pv2-actions>button{flex:1;min-height:44px}.pv2 .pv2-tabs{flex-wrap:nowrap;overflow:auto}.pv2 .pv2-tabs button{flex-shrink:0}.pv2 th,.pv2 td{padding:9px 8px}.pv2 .pv2-heading>.pv2-actions{align-self:stretch}.pv2 dialog .pv2-two{grid-template-columns:1fr}}
.pv2 .pv2-photo-clickable{cursor:zoom-in}.pv2 .pv2-photo-clickable:focus-visible{outline:3px solid var(--gold-dark);outline-offset:3px}.pv2 .pv2-photo-dialog{width:min(1100px,calc(100vw - 24px));padding:0;overflow:hidden}.pv2 .pv2-photo-dialog .pv2-modal-head{padding:12px 14px;border-bottom:1px solid var(--line)}.pv2 .pv2-photo-lightbox{display:grid;gap:10px;margin:0;padding:14px;background:#14120f;color:#fff}.pv2 .pv2-photo-lightbox img{display:block;width:100%;max-height:calc(100dvh - 150px);object-fit:contain;border-radius:8px;background:#211e19}.pv2 .pv2-photo-lightbox figcaption{font-size:13px;color:#eee6d7}
.pv2 .pv2-photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.pv2 .pv2-photo-card{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--card);display:grid;gap:8px}.pv2 .pv2-photo-card.primary{border-color:var(--gold-dark);box-shadow:0 0 0 1px var(--gold-dark) inset}.pv2 .pv2-photo-frame{padding:0;border:0;background:var(--paper);border-radius:8px;overflow:hidden;aspect-ratio:4/3;min-height:0;cursor:zoom-in}.pv2 .pv2-photo-frame img{width:100%;height:100%;display:block;object-fit:cover}.pv2 .pv2-photo-meta{display:flex;gap:8px;align-items:center;justify-content:space-between;min-width:0}.pv2 .pv2-photo-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv2 .pv2-product-photos .pv2-section-head{align-items:center}

/* Mapping clarity only. */
.pv2 .pv2-mapping-units{margin:0;padding:10px;border:1px solid var(--line);border-radius:8px;display:grid;gap:6px}.pv2 .pv2-mapping-conversion{padding:8px;background:var(--paper);font-weight:600}.pv2 .pv2-review-section{margin:8px 0}.pv2 .pv2-review-section h3{margin:0 0 6px}.pv2 .pv2-supplier-table-card td{vertical-align:top}.pv2 dialog{max-width:760px}.pv2 .pv2-review-dialog{max-width:720px}@media(max-width:640px){.pv2 dialog{padding:12px;width:calc(100vw - 16px)}.pv2 dialog .pv2-two{grid-template-columns:1fr}.pv2 .pv2-review-dialog dl{grid-template-columns:1fr}.pv2 .pv2-review-dialog dd{margin:0 0 6px}.pv2 .pv2-supplier-table-card .pv2-table{overflow:auto}}

.pv2 dialog form,.pv2 dialog label,.pv2 dialog .pv2-two,.pv2 dialog fieldset{min-width:0}.pv2 dialog input,.pv2 dialog select,.pv2 dialog textarea{width:100%;min-width:0}.pv2 dialog .pv2-actions button{width:auto}.pv2 .pv2-mapping-units small{line-height:1.5}
@media(max-width:640px){.pv2 .pv2-mapping-table table{min-width:0!important;width:100%;table-layout:auto}.pv2 .pv2-mapping-table thead{display:none}.pv2 .pv2-mapping-table tbody{display:block}.pv2 .pv2-mapping-table tr:not(.pv2-expanded){display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:4px;padding:8px 0;border-bottom:1px solid var(--line)}.pv2 .pv2-mapping-table td{padding:3px;min-width:0;border:0;overflow-wrap:anywhere}.pv2 .pv2-mapping-table td:nth-child(1){grid-column:1;grid-row:1}.pv2 .pv2-mapping-table td:nth-child(2){grid-column:2;grid-row:1}.pv2 .pv2-mapping-table td:nth-child(3),.pv2 .pv2-mapping-table td:nth-child(4){grid-column:2/4}.pv2 .pv2-mapping-table td:nth-child(5){grid-column:3;grid-row:1}.pv2 .pv2-mapping-table td:nth-child(6){grid-column:3}.pv2 .pv2-mapping-table tr.pv2-expanded{display:block}.pv2 .pv2-mapping-table tr.pv2-expanded td{display:block}.pv2 .pv2-mapping-table button{white-space:normal}}

/* Supplier mapping review: compact table toolbar and queue controls. */
.pv2-supplier-intro{margin:8px 4px;color:var(--muted)}
.pv2-supplier-help{padding:12px 16px;margin:12px 0}.pv2-supplier-help summary{cursor:pointer;font-weight:600}.pv2-supplier-help p{margin:8px 0}
.pv2-queue-filter{display:flex;align-items:center;gap:8px;margin:0 0 12px;max-width:340px}.pv2-queue-filter select{flex:1;min-width:0}
.pv2-supplier-table-card>.pv2-section-head{flex-wrap:wrap;gap:10px}.pv2-supplier-table-card>.pv2-section-head>.pv2-actions{flex:1;justify-content:flex-end;flex-wrap:wrap}.pv2-supplier-table-card input[data-table-filter]{min-width:200px;flex:1;max-width:440px}
@media(max-width:600px){.pv2-supplier-table-card>.pv2-section-head>.pv2-actions{width:100%}.pv2-supplier-table-card input[data-table-filter]{width:100%;max-width:none;flex-basis:100%}.pv2 .pv2-mapping-table{overflow-x:auto}.pv2 .pv2-mapping-table table{min-width:800px}.pv2 [data-duplicate] p{margin:8px 0}}

/* Compact receipt capture; diagnostic tools remain outside employee forms. */
.pv2 dialog.pv2-intake-capture-dialog{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:20px}.pv2-intake-capture-dialog form{display:grid;gap:10px}.pv2-intake-capture-dialog h2{margin:0 0 4px}.pv2-intake-capture-dialog label{display:grid;gap:5px}.pv2-intake-capture-dialog small{color:var(--muted)}.pv2-intake-capture-dialog details summary{padding:4px 0}.pv2-intake-capture-dialog [data-form-error]:empty,.pv2-intake-capture-dialog [data-capture-result]:empty{display:none}.pv2-intake-capture-dialog form>.pv2-actions{justify-content:flex-end;margin-top:4px}.pv2-intake-capture-dialog [data-capture-result] p{margin:4px 0 10px}@media(max-width:600px){.pv2 dialog.pv2-intake-capture-dialog{padding:16px}.pv2-intake-capture-dialog form{gap:9px}}
