.audit-tabs{display:inline-flex;gap:4px;padding:4px;margin:8px 0 24px;max-width:100%;border:1px solid var(--hairline-2);border-radius:10px;background:var(--track)}
.audit-tab{border:1px solid transparent;border-radius:7px;padding:10px 18px;background:transparent;color:var(--muted);font:600 13px var(--font);cursor:pointer}
.audit-tab:hover{color:var(--cream)}.audit-tab[aria-selected=true]{color:var(--gold);background:var(--card);border-color:var(--gold-line)}
.audit-tab:focus-visible,.audit [role=tabpanel]:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.audit [role=tabpanel][hidden],.audit .estate-head [hidden]{display:none!important}
.view:has(.audit-customer-mapping:not([hidden])){padding:0 10px 10px}
.audit:has(.audit-customer-mapping:not([hidden])){height:calc(100dvh - var(--topbar-h) - 10px);min-height:560px;display:flex;flex-direction:column;padding-bottom:0}
.audit:has(.audit-customer-mapping:not([hidden])) > .estate-head{display:none}
.audit:has(.audit-customer-mapping:not([hidden])) > .audit-tabs{align-self:flex-start;flex-shrink:0;margin:6px 0}
.audit-customer-mapping{display:flex;flex:1;min-height:0;min-width:0}
.cm-panel{display:flex;flex-direction:column;flex:1;border:1px solid var(--hairline-2);border-radius:8px;background:var(--card);padding:10px;margin:0;min-height:0;min-width:0;color:var(--cream)}
.cm-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:0}
.cm-head h2{font-family:var(--serif);font-size:20px;margin:0}
.cm-caption{color:var(--muted);font-size:12px;line-height:1.65;margin:8px 0;overflow-wrap:anywhere}
.cm-state{border:1px solid var(--gold-line);background:var(--gold-wash);color:var(--gold);font-size:11px;padding:7px 10px;border-radius:20px;max-width:100%}
.cm-stats{display:flex;gap:8px 20px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--hairline-2)}
.cm-stat{display:flex;align-items:baseline;gap:5px}.cm-stat strong{font-size:16px;font-family:var(--serif)}.cm-stat span{font-size:11px;color:var(--muted)}
.cm-controls{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.cm-search{flex:1;min-width:180px}.cm-select{max-width:240px;min-width:130px}
.cm-search,.cm-select,.cm-button{border:1px solid var(--control-line);border-radius:6px;background:var(--card);color:var(--cream);font:12px var(--font);padding:10px}
.cm-button{cursor:pointer}.cm-button:disabled{opacity:.5;cursor:default}.cm-panel :is(input,select,button,summary,.cm-scroll):focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.cm-empty{padding:22px 0;font-size:13px;color:var(--muted);line-height:1.7}
.cm-body{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}
.cm-scroll{flex:1;min-height:0;overflow:auto;border:1px solid var(--hairline-2);border-radius:5px;scrollbar-width:thin;max-width:100%;overflow-anchor:none}
.cm-table{min-width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;text-align:left;font-size:12px;line-height:1.5}
.cm-table th{position:sticky;top:0;z-index:1;height:40px;box-sizing:border-box;padding:4px 8px;background:var(--card);color:var(--muted);font-size:11px;font-weight:600;border-bottom:1px solid var(--hairline-2);cursor:grab}
.cm-table td{padding:0;vertical-align:top;overflow:hidden}
.cm-table th{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
.cm-cell{height:var(--cm-row-height);box-sizing:border-box;padding:6px 8px;border-bottom:1px solid var(--hairline-2);overflow:hidden;overflow-wrap:anywhere}
.cm-cell-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}
.cm-table td[data-column=customer]{font-weight:600}.cm-table td:is([data-column=itemCode],[data-column=itemId]){font-family:var(--mono)}
.cm-table .cm-spacer td{padding:0;border:0;font-size:0;line-height:0}
.cm-sort{display:inline;max-width:calc(100% - 18px);border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:4px;cursor:pointer}
.cm-table th[aria-sort=ascending],.cm-table th[aria-sort=descending]{color:var(--gold)}
.cm-grip{color:var(--muted);padding-right:2px}.cm-dragging{opacity:.45}.cm-table th.cm-drop{box-shadow:inset 3px 0 var(--gold)}
.cm-details-button{border:0;background:transparent;color:var(--gold);padding:0;font:600 12px var(--font);text-decoration:underline;cursor:pointer}
.cm-cell .cm-caption{display:block;margin:0;font-size:11px;line-height:1.3}.cm-cell .cm-issue{margin:0;line-height:1.3}
.cm-placeholder{color:var(--muted)}
.cm-provenance summary{cursor:pointer;color:var(--gold);font-size:12px}.cm-provenance ul{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.7;margin-top:8px}
.cm-footnotes{flex-shrink:0;max-height:25vh;overflow:auto}.cm-footnotes:not(:empty){margin-top:4px;padding-top:4px;border-top:1px solid var(--hairline-2)}.cm-footnotes > .cm-caption{margin:0 0 2px;font-size:11px}
.cm-issue{display:block;color:var(--gold);font-size:11px;margin-top:8px}.cm-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;flex-shrink:0;margin-top:2px}.cm-footer > .cm-caption{margin:2px 0;font-size:11px}.cm-footer [hidden]{display:none}
.cm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.cm-dialog{width:min(720px,calc(100vw - 32px));max-height:80vh;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:24px;background:var(--card);color:var(--cream);border:1px solid var(--hairline-2);border-radius:12px}
.cm-dialog::backdrop{background:rgba(0,0,0,.5)}.cm-dialog h3{font:24px var(--serif);margin:0}.cm-dialog h4{margin:20px 0 8px}
.cm-detail-fields{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;font-size:13px;line-height:1.7}.cm-detail-fields dt{color:var(--muted)}.cm-detail-fields dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.audit-report-heading{font-family:var(--serif);font-size:22px;margin:0 0 14px}
@media(max-width:620px){.audit-tabs{display:flex}.audit-tab{flex:1;padding:10px 8px;font-size:12px}.cm-panel{padding:8px}.cm-head h2{font-size:18px}.cm-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.cm-search,.cm-select{width:100%;max-width:none;min-width:0}.cm-search,.cm-controls .cm-button{grid-column:1 / -1}.cm-stats{gap:4px 12px}.cm-stat strong{font-size:15px}}

@media(max-width:620px){.cm-detail-fields{grid-template-columns:minmax(0,1fr);gap:6px}.cm-detail-fields dd{margin-bottom:10px}.cm-dialog{padding:18px}}
