.cat-preview{display:flex;gap:16px;align-items:center;border:1px solid #dac995;background:#fff8e5;color:#715e2c;border-radius:9px;padding:10px 14px;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:20px}.cat-preview span{font-size:12px;letter-spacing:0;font-weight:500}.cat-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px}.cat-toolbar h2{margin:0;font-size:24px}.cat-toolbar p{margin:5px 0 0}.cat-filters{padding:18px}.cat-search{display:flex;gap:12px;margin-bottom:16px}.cat-search input{flex:1;min-width:0}.cat-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.cat-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.cat-field>span{color:var(--mut,#66758a)}.cat-field input,.cat-field select,.cat-field textarea{width:100%;box-sizing:border-box;font-weight:400}.cat-more{margin-top:14px;font-size:12px}.cat-more summary{cursor:pointer;padding:4px 0}.cat-price-filters{display:flex;gap:12px;margin-top:12px}.cat-price-filters .cat-field{flex:1;max-width:220px}.cat-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;padding:4px 2px 13px}.cat-item{min-width:190px}.cat-item b,.cat-item-open,.cat-item small,.cat-results td>div>small{display:block}.cat-item small{margin-top:4px}.cat-results td{vertical-align:middle}.cat-dialog{padding:0;border:1px solid var(--line,#d7dfe8);border-radius:15px;width:min(920px,94vw);max-width:94vw;height:min(820px,90dvh);max-height:90dvh;min-width:min(480px,94vw);min-height:min(440px,90dvh);resize:both;container-type:inline-size;box-sizing:border-box;overflow:hidden;background:var(--card,#fff);color:var(--ink,#17243b)}.cat-dialog::backdrop{background:rgba(20,34,54,.5)}.cat-dialog form{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.cat-card-heading{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 26px 18px}.cat-card-heading h2{font-size:22px;margin:5px 0}.cat-card-heading p{font-size:12px;margin:0}.cat-tabs{display:flex;gap:6px;overflow:auto;flex-shrink:0;padding:0 26px;border-bottom:1px solid var(--line,#dce3ed)}.cat-tabs button{background:none;color:var(--mut,#68778b);border:0;border-radius:0;padding:12px 13px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent}.cat-tabs button[aria-selected=true]{color:var(--navy,#244574);border-bottom-color:var(--navy,#244574)}.cat-panel-host{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;padding:22px 26px}.cat-section{margin-bottom:25px}.cat-section h3,.cat-panel-host h3{font-size:15px;margin:0 0 16px}.cat-section>p{font-size:12px;margin:-7px 0 16px}.cat-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px}.cat-wide{grid-column:1/-1}.cat-field textarea{resize:vertical;font:inherit;line-height:1.5;padding:11px}.cat-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 26px;border-top:1px solid var(--line,#dce3ed);font-size:12px;flex-shrink:0}.cat-message{margin:14px 26px 0;background:#fff0da;color:#775423;border:1px solid #e8c389;border-radius:8px;padding:12px;font-size:13px;flex-shrink:0}.cat-message[hidden],.cat-panel-host [hidden]{display:none!important}.cat-price-summary{padding:14px 16px;background:var(--bg,#f5f7fa);border-radius:8px;font-size:13px}.cat-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.cat-photo-grid figure{margin:0;border:1px solid var(--line,#dce3ed);border-radius:10px;overflow:hidden}.cat-photo-grid img{width:100%;height:200px;object-fit:contain;background:var(--bg,#f4f6f8)}.cat-photo-grid figcaption{padding:12px;display:flex;flex-direction:column;gap:10px}.cat-history-heading{display:flex;justify-content:space-between;gap:10px;font-size:12px}.cat-history-entry{border:1px solid var(--line,#dce3ed);border-radius:10px;margin-bottom:14px;padding:14px}.cat-history-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px;font-size:12px}.cat-history-entry td{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.cat-history-entry p{font-size:12px}.cat-history-entry th{font-size:10px}
@media(max-width:1100px){.cat-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.cat-filter-grid,.cat-editor-grid,.cat-photo-grid{grid-template-columns:1fr 1fr}.cat-toolbar{align-items:flex-start}.cat-summary{align-items:flex-start;flex-direction:column;gap:5px}.cat-card-heading,.cat-panel-host{padding:18px}.cat-tabs{padding:0 8px}.cat-card-footer{padding:14px 18px}.cat-history-meta{flex-direction:column;gap:4px}.cat-preview{align-items:flex-start;flex-direction:column;gap:4px}.cat-dialog{width:96vw;max-width:96vw}}@media(max-width:420px){.cat-editor-grid,.cat-photo-grid{grid-template-columns:1fr}.cat-card-footer .row{gap:6px}}

.cat-history-photos{display:flex;flex-wrap:wrap;gap:8px}.cat-history-photos figure{margin:0;max-width:100px}.cat-history-photos img{width:80px;height:65px;object-fit:contain}.cat-history-photos figcaption{font-size:10px}
.cat-supplier-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.cat-supplier-heading h3{margin:0}.cat-suppliers>p{margin:0 0 14px;font-size:12px}.cat-supplier-scroll{max-width:100%;overflow:auto}.cat-supplier-table{width:100%;border-collapse:collapse;font-size:12px}.cat-supplier-table th{padding:9px 10px;color:var(--mut,#66758a);font-size:11px;font-weight:600;border-bottom:1px solid var(--line,#dce3ed);white-space:nowrap}.cat-supplier-table td{padding:12px 10px;border-bottom:1px solid var(--line,#dce3ed);vertical-align:top;overflow-wrap:anywhere}.cat-supplier-table th:first-child,.cat-supplier-table td:first-child{padding-left:0}.cat-supplier-table th:last-child,.cat-supplier-table td:last-child{padding-right:0}.cat-supplier-table small{display:block;margin-top:4px;font-size:10px}.cat-supplier-table .cat-supplier-number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cat-supplier-default{color:var(--navy,#244574);font-weight:600}.cat-supplier-date{white-space:nowrap;color:var(--mut,#66758a)}.cat-suppliers .cat-supplier-terms{margin:12px 0 0}.cat-supplier-error{padding:10px 0;font-size:12px;color:var(--warn,#775423)}
.cat-dialog input[type=file]{display:block;width:min(100%,440px);max-width:100%;min-height:38px;margin:0 0 16px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--mut,#66758a);font:inherit;font-size:13px;line-height:1.4;cursor:pointer}.cat-dialog input[type=file]::file-selector-button{margin:0 12px 0 0;padding:10px 15px;border:1px solid transparent;border-radius:5px;background:var(--sea,#346ea4);color:#fff;font:inherit;font-weight:600;cursor:pointer}.cat-dialog input[type=file]:not(:disabled)::file-selector-button:hover{filter:brightness(1.1)}.cat-dialog input[type=file]:focus-visible{outline:2px solid var(--sea,#346ea4);outline-offset:3px}.cat-dialog input[type=file]:disabled{opacity:.5;cursor:default}.cat-dialog input[type=file]:disabled::file-selector-button{cursor:default}

.cat-card-footer{padding-right:32px}.cat-resize-hint{display:block;font-size:10px;margin-top:4px;opacity:.75}
@container(max-width:560px){.cat-editor-grid,.cat-photo-grid{grid-template-columns:1fr}.cat-card-heading,.cat-panel-host{padding:18px}.cat-tabs{padding:0 8px}.cat-card-footer{padding:14px 28px 14px 18px}}
.cat-toolbar{flex-wrap:wrap}.cat-toolbar>div{flex:1 1 260px}
.cat-dialog[aria-label="Bulk catalogue update"][open]{display:flex;flex-direction:column}.cat-dialog[aria-label="Bulk catalogue update"] .cat-card-footer{flex-wrap:wrap}

/* Compact history ledger, preserving Field's green-in and orange-out signals. */
.cat-history-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.cat-history-head h3{margin:0;color:var(--ink);font-size:14px;font-weight:650}
.cat-history-head span{display:block;margin-top:2px;color:var(--mut);font-size:11px;line-height:1.35}
.cat-history-head button{padding:5px 10px;font-size:11px;min-height:28px;border-radius:4px;background:transparent}
.cat-history-coverage{font-size:10.5px;line-height:1.4;margin:0 0 12px}
.cat-history-list{display:grid;gap:0;border-top:1px solid var(--line,#d5e2e8)}
.cat-history-row{min-width:0;padding:8px 10px;border:0;border-bottom:1px solid var(--line,#d5e2e8);border-left:2px solid transparent;border-radius:0;background:transparent}
.cat-history-row.in{border-left-color:#327758}
.cat-history-row.out{border-left-color:#b57924}
.cat-history-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;line-height:1.3}
.cat-history-top>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;min-width:0}
.cat-history-top b{color:var(--ink);font-size:12px;font-weight:650}
.cat-history-top span{color:var(--mut);font-size:10.5px;font-weight:400;letter-spacing:0;text-transform:none}
.cat-history-top strong{flex:none;color:var(--ink);font-size:12px;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}
.cat-history-total{font-size:11px;color:var(--mut);white-space:nowrap;font-variant-numeric:tabular-nums}
.cat-history-ledger{width:100%;border-collapse:collapse;table-layout:fixed}
.cat-history-qty-col{width:86px}.cat-history-total-col{width:96px}
.cat-history-ledger th{padding:7px 10px;background:transparent;color:var(--mut);font-size:10.5px;font-weight:600;text-align:left;border-bottom:1px solid var(--line)}
.cat-history-ledger th:nth-child(n+2){text-align:right}
.cat-history-ledger .cat-history-row{padding:0;border:0;background:transparent}
.cat-history-ledger td{padding:8px 10px;background:transparent;vertical-align:top;border-bottom:1px solid var(--line);white-space:normal;overflow-wrap:anywhere}
.cat-history-ledger .cat-history-event{border-left:2px solid transparent}
.cat-history-ledger .cat-history-row.in .cat-history-event{border-left-color:#327758}
.cat-history-ledger .cat-history-row.out .cat-history-event{border-left-color:#b57924}
.cat-history-ledger .cat-history-number{text-align:right;padding-top:9px;white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums}
.cat-history-change-qty{font-weight:650}
.cat-history-row.in .cat-history-change-qty{color:var(--cat-history-in,#327758)}
.cat-history-row.out .cat-history-change-qty{color:var(--cat-history-out,#966018)}
.cat-history-row.in .cat-history-top strong{color:var(--cat-history-in,#327758)}
.cat-history-row.out .cat-history-top strong{color:var(--cat-history-out,#966018)}
html[data-theme=dark] .cat-history-list{--cat-history-in:#83bfa1;--cat-history-out:#dba15f}
.cat-history-row.revision .cat-history-top strong{color:var(--mut);font-size:11px;font-weight:500}
.cat-history-meta-line{display:flex;flex-wrap:wrap;column-gap:7px;row-gap:2px;margin-top:3px;color:var(--mut);font-size:10.5px;line-height:1.4;overflow-wrap:anywhere}
.cat-history-meta-line>*{min-width:0}
.cat-history-meta-line>*+*::before{content:'·';margin-right:7px}
.cat-history-item,.cat-history-note{display:block;margin-top:5px;color:var(--mut);font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.cat-history-item{color:var(--ink);font-weight:400}
.cat-history-limit,.cat-history-empty{padding:10px;text-align:center;color:var(--mut);font-size:11px}
.cat-history-details{margin-top:3px;font-size:10.5px;overflow-wrap:anywhere}
.cat-history-details summary{cursor:pointer;color:var(--mut);padding:1px 0;line-height:1.4}
.cat-history-details summary:hover{color:var(--ink)}
.cat-history-details[open]{padding-bottom:3px}
.cat-history-details p{line-height:1.5}
.cat-history-change{border-top:1px solid var(--line);padding:8px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.cat-history-change>b{display:block;margin-bottom:3px;font-weight:600}
.cat-history-error{display:grid;gap:8px;padding:10px;border:1px solid var(--warn,#b57924);border-radius:4px;font-size:12px}
.cat-history-error button{justify-self:start}
@container(max-width:560px){.cat-history-top{flex-wrap:wrap;gap:4px 12px}.cat-history-qty-col{width:70px}.cat-history-total-col{width:80px}.cat-history-ledger td,.cat-history-ledger th{padding-left:6px;padding-right:6px}}

.cat-supplier-table input{width:100%;min-width:82px;max-width:190px;box-sizing:border-box;padding:7px 8px;font:inherit}.cat-supplier-table .cat-supplier-number input{width:100px;text-align:right;font-variant-numeric:tabular-nums}.cat-supplier-table button{padding:7px 10px;font-size:11px;white-space:nowrap}

.cat-primary-grid,.cat-advanced-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cat-advanced-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cat-search{align-items:flex-end}
.cat-sort{width:220px;flex:none}
.cat-filters select{min-width:0;text-overflow:ellipsis}
.cat-filters select:disabled{opacity:.65;cursor:not-allowed}
.cat-more{border-top:1px solid var(--line,#dce3ed);padding-top:10px}
.cat-more summary{width:fit-content;font-weight:600;padding:6px 0}
.cat-advanced-grid{margin-top:14px}
.cat-active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.cat-active-filters[hidden],.cat-filter-error[hidden]{display:none!important}
.cat-filter-chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;border:1px solid var(--line,#dce3ed);border-radius:20px;padding:7px 12px;background:var(--bg,#f5f7fa);color:var(--ink,#17243b);font:inherit;font-size:12px;text-align:left;overflow-wrap:anywhere;cursor:pointer}
.cat-filter-chip span{font-size:17px;line-height:1}
.cat-filter-chip:hover{border-color:var(--ink,#17243b)}
.cat-filter-chip:focus-visible{outline:2px solid var(--ink,#17243b);outline-offset:2px}
.cat-filter-error{font-size:12px;color:var(--ink,#17243b);margin:12px 0 0}
.cat-filters input[aria-invalid=true]{border-color:#c4592b}
.cat-category{min-width:160px;max-width:260px;white-space:normal}
.cat-category small{margin-top:4px}
.cat-results{overflow:auto}
@media(max-width:1000px){.cat-primary-grid,.cat-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cat-search{flex-wrap:wrap}.cat-search>input{flex-basis:100%;width:100%}.cat-sort{flex:1;min-width:0}}
@media(max-width:520px){.cat-primary-grid,.cat-advanced-grid{grid-template-columns:1fr}.cat-price-filters{flex-wrap:wrap}.cat-price-filters .cat-field{flex-basis:100%;max-width:none}.cat-toolbar{flex-wrap:wrap}}

.cat-item-open{appearance:none;border:0;padding:0;background:none;color:inherit;font:inherit;font-weight:700;text-align:left;cursor:pointer}.cat-item-open:focus-visible{outline:2px solid var(--sea,#287888);outline-offset:3px;border-radius:3px}
.cat-field>label{color:var(--mut,#66758a)}.cat-filter-combo{position:relative;min-width:0}.cat-filter-combo:focus-within{z-index:25}.cat-filter-combo input{padding-right:28px}.cat-filter-combo input:disabled{opacity:.65;cursor:not-allowed}.cat-filter-chevron{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--mut,#66758a);pointer-events:none}.cat-filter-options{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow:auto;overscroll-behavior:contain;background:var(--card,#fff);color:var(--ink,#17243b);border:1px solid var(--line,#dce3ed);border-radius:8px;box-shadow:0 8px 24px #0003;padding:4px;font-size:13px;font-weight:400;z-index:30}.cat-filter-option{padding:11px 10px;border-radius:5px;cursor:pointer;overflow-wrap:anywhere;min-height:40px;box-sizing:border-box}.cat-filter-option:hover,.cat-filter-option[aria-selected=true]{background:var(--bg,#f1f5fa);outline:1px solid var(--line,#dce3ed)}.cat-filter-empty{padding:12px 10px;color:var(--mut,#66758a)}.cat-filter-select[hidden],.cat-filter-options[hidden]{display:none!important}
.cat-dialog [hidden]{display:none!important}
