.catalogue-editor{--cat-ink:#18231d;--cat-line:#dce5d9;color:var(--cat-ink);max-width:1250px;margin:auto;padding-bottom:38px}.cat-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.cat-heading h1{font-size:28px;margin:6px 0}.cat-heading h2{font-size:21px;margin:0}.cat-heading small{font-size:11px;letter-spacing:2px;color:#657a5d}.cat-heading p{color:#637460;font-size:13px;margin:8px 0}.catalogue-editor button{border:1px solid var(--cat-line);border-radius:10px;padding:10px 15px;min-height:44px;background:var(--button-bg,#fff);color:var(--button-fg,var(--cat-ink));font-weight:600;cursor:pointer}.catalogue-editor button:disabled{opacity:.4;cursor:not-allowed}.catalogue-editor button.cat-primary{background:#72c052;border-color:#72c052}.cat-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.cat-tabs button.selected{background:#18251c;color:white;border-color:#18251c}.cat-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:18px 0}.cat-toolbar>.cat-field{flex:1;min-width:180px}.cat-field{display:flex;flex-direction:column;gap:8px;margin:0;font-size:13px;font-weight:500;min-width:0}.cat-field input,.cat-field select{font:inherit;display:block;box-sizing:border-box;border:1px solid #cbd7c6;background:#fff;border-radius:10px;padding:11px 12px;min-height:44px;width:100%;color:var(--cat-ink)}.cat-field input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:#72a951}.cat-field:has(input[type=checkbox]){flex-direction:row;align-items:center;justify-content:space-between;padding:12px 0;gap:16px;border-bottom:1px solid #e3e9df}.cat-form{background:#fff;border:1px solid var(--cat-line);border-radius:18px;padding:28px}.cat-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.cat-section{border:1px solid #e1e8dc;border-radius:14px;padding:22px;margin:24px 0;background:#fafcf8}.cat-section h2{font-size:18px;margin:0 0 8px}.cat-section p{font-size:13px;color:#697763;line-height:1.5}.cat-palette{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:20px 0 8px}.cat-palette button{width:38px;min-width:38px;height:38px;min-height:38px;padding:0;border-radius:4px;border:2px solid #ffffff;box-shadow:0 0 0 1px #d2dccd}.cat-palette button.chosen{box-shadow:0 0 0 3px #17251c}.cat-palette .cat-field{display:flex;flex-direction:row;align-items:center;gap:7px;margin-left:8px}.cat-custom-colour{width:38px!important;height:38px;min-height:38px!important;padding:2px!important;border-radius:4px!important}.cat-shapes{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.cat-shapes button{text-transform:capitalize}.cat-shapes button.chosen{background:#e8f4de;border:2px solid #72a951}.cat-photo-preview{display:block;width:180px;height:120px;object-fit:cover;border-radius:12px;margin:16px 0;border:1px solid #d6e0cf}.cat-list{display:grid;gap:12px}.cat-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid var(--cat-line);border-radius:14px;padding:20px;margin:0}.cat-row>div{flex:1;min-width:140px}.cat-row p{color:#677762;margin:7px 0 0;font-size:13px}.cat-representation,.item-representation{display:inline-block;width:42px;height:42px;flex:0 0 42px;border:1px solid #0000000a;border-radius:3px}.cat-representation.circle,.item-representation.circle{border-radius:50%}.cat-representation.rounded,.item-representation.rounded{border-radius:12px}.cat-representation.diamond,.item-representation.diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.cat-form-footer{display:flex;justify-content:space-between;gap:16px;padding:20px 0 0;margin-top:24px;border-top:1px solid #dce5d9;position:sticky;bottom:0;background:#fff;z-index:1}.cat-option-row{display:flex;align-items:end;gap:12px;padding:16px 0;margin:0;border:0;border-bottom:1px solid #dce5d9}.cat-option-row label{flex:1}.cat-overlay{position:fixed;inset:0;background:#101b14a8;z-index:150;display:flex;align-items:center;justify-content:center;padding:24px}.cat-modal{background:#fff;border-radius:18px;border:1px solid #d9e4d3;padding:24px;width:min(680px,100%);max-height:88dvh;display:flex;flex-direction:column;overflow:auto}.cat-modal-body{display:grid;gap:16px}.cat-modal-body>button{justify-self:start}.cat-assignment-list{max-height:38dvh;overflow:auto;display:grid;padding-right:8px;gap:8px}.cat-stock-badge{font-size:12px;padding:8px 12px;border-radius:20px;background:#edf3e7;color:#38582d}.cat-feedback:empty{display:none}.cat-feedback{background:#fff1df;border-radius:10px;padding:14px;color:#8d4521}.cat-hidden{display:none!important}.app-keyboard-open .cat-overlay{padding-bottom:calc(var(--app-keyboard-inset,260px) + 12px)}.app-keyboard-open .cat-modal{max-height:calc(95dvh - var(--app-keyboard-inset,260px))}
@media(max-width:850px){.cat-form{padding:20px}.cat-heading h1{font-size:24px}.cat-row{padding:16px}.cat-form-grid{gap:16px}.cat-section{padding:18px}.cat-row button{font-size:12px}.cat-overlay{padding:14px}.cat-modal{padding:20px}.cat-option-row{flex-wrap:wrap}.cat-form-footer{padding-bottom:12px}}
@media(max-width:560px){.cat-form-grid{grid-template-columns:1fr}.cat-palette{gap:7px}.cat-heading{align-items:start}.cat-palette button{width:30px;height:30px;min-width:30px;min-height:30px}.cat-modal{padding:16px}}

.catalogue-editor button.cat-primary{background:var(--button-bg,#367334);border-color:var(--button-bg,#367334);color:var(--button-fg,#fff)}.catalogue-editor button.cat-primary:active{background:#285a27}.cat-representation{border-radius:10px}.cat-unsaved-actions{display:flex;flex-wrap:wrap;gap:12px}.cat-unsaved-actions>button{flex:1;min-width:140px}.cat-options-list{display:grid;gap:12px;min-width:0;padding:8px 0 20px}.cat-option-row{display:grid;grid-template-columns:minmax(140px,2fr) minmax(120px,1fr) auto;gap:16px;padding:18px 0;min-width:0}.cat-option-row input{min-height:48px}.cat-modifier-form{padding-bottom:36px}.cat-modifier-form>.cat-form-footer{position:static}.app-keyboard-open .cat-option-row input{scroll-margin-bottom:32px}.cat-option-row button{white-space:normal}.cat-modifier-form>button{min-height:48px;margin:12px 0}.catalogue-editor input{scroll-margin:24px}@media(max-width:700px){.cat-option-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cat-option-row>button{grid-column:1/-1;justify-self:end}}

.cat-field:has(input[type=checkbox]){padding:14px 12px;min-height:52px;line-height:1.5;border-radius:10px;gap:18px}.cat-field input[type=checkbox]{flex:0 0 22px;margin:0}.cat-form-grid{align-items:start}.cat-section .cat-field{margin:10px 0}.cat-field{line-height:1.5}

.cat-field-error{display:block;color:#922020;font-size:12px}.cat-field input[aria-invalid=true]{border-color:#922020;outline:1px solid #922020}
