.zcs-product-palette,.zcs-dialog,.zcs-search-entry,.zcs-search-summary{--zcs-accent:#1677c7;--zcs-muted:#667085;--zcs-line:#e2e6ec;color:#263142;font-family:inherit;box-sizing:border-box}
.zcs-product-palette{width:100%;margin:12px 0;min-width:0}
.zcs-palette-label{margin:0 0 7px!important;font-size:15px;font-weight:600;line-height:1.5;color:inherit}
.zcs-coverage,.zcs-hint{font-size:12px;line-height:1.6;color:var(--zcs-muted,#667085);margin:0 0 10px;display:block}
.zcs-palette-swatches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.zcs-palette-color{display:flex;flex-direction:column;align-items:stretch;gap:3px;min-width:0;width:100%;padding:4px;border:1px solid transparent;border-radius:6px;background:transparent;color:inherit;cursor:pointer;font-family:inherit;text-align:center;line-height:1.4;box-shadow:none}
.zcs-palette-color i{display:block;height:34px;min-width:0;width:34px;align-self:center;background:var(--zcs-color);border-radius:50%;box-shadow:inset 0 0 0 1px rgba(20,30,40,.13)}
.zcs-palette-color span{font-family:Arial,sans-serif;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.zcs-palette-color small{font-family:Arial,sans-serif;font-size:9px;line-height:1.4;color:var(--zcs-muted);overflow-wrap:anywhere}
.zcs-palette-color:hover,.zcs-palette-color[aria-pressed=true]{border-color:var(--zcs-accent);background:#f4f8fc;color:inherit}
.zcs-palette-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.zcs-palette-tools button{min-height:30px;height:auto;padding:5px 8px;border:1px solid var(--zcs-line);border-radius:5px;color:inherit;background:#fff;font:inherit;font-size:12px;line-height:1.4;cursor:pointer}
.zcs-palette-status{margin-top:7px;min-height:19px;overflow-wrap:anywhere}
.zcs-selection-count{margin:8px 0 0}
.zcs-palette-tools button:disabled{opacity:.45;cursor:not-allowed}
.zcs-local-color{position:relative;min-width:0;padding-top:12px}
.zcs-local-color-remove{position:absolute;right:0;top:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;padding:0;border:1px solid #d9e1ea;border-radius:50%;background:#fff;color:#475467;font:inherit;font-size:18px;line-height:1;cursor:pointer;z-index:1}
.zcs-local-color-remove:hover{background:#fef3f2;border-color:#d92d20;color:#b42318}
.zcs-picker-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0}
.zcs-picker-row .zcs-hint{margin:0;flex:1;min-width:180px}
.zcs-pick-color{border:1px solid #1677c7;border-radius:6px;background:#fff;color:#1677c7;font:inherit;font-size:13px;line-height:1.5;padding:6px 12px;cursor:pointer}
.zcs-pick-color[aria-pressed=true]{background:#1677c7;color:#fff}
.zcs-pick-color:disabled{opacity:.45;cursor:not-allowed}
.zcs-reference-preview.is-picking{outline:2px solid #1677c7;outline-offset:2px}
.zcs-action{display:inline-flex;justify-content:center;align-items:center;min-height:36px;padding:8px 14px;border:1px solid var(--zcs-accent,#1677c7);border-radius:6px;background:var(--zcs-accent,#1677c7);color:#fff!important;text-decoration:none!important;font:inherit;font-size:13px;line-height:1.5;cursor:pointer;text-align:center}
.zcs-action:hover{filter:brightness(.94)}
.zcs-action:disabled{opacity:.45;cursor:not-allowed;filter:none}
.zcs-action-secondary{background:#fff;color:var(--zcs-accent,#1677c7)!important}
.zcs-palette-all{width:100%;margin:4px 0 7px}
.zcs-palette-search-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:6px;margin:4px 0 7px}
.zcs-palette-search-actions .zcs-action{box-sizing:border-box;width:100%;min-width:0;min-height:34px;margin:0;padding:6px 5px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.zcs-eyedropper-icon{display:block;width:16px;height:16px;flex:0 0 16px;pointer-events:none}
[data-zcs-product-pick],.zcs-pick-color{display:inline-flex;align-items:center;justify-content:center;gap:5px}
.zcs-image-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:38px;height:38px;min-width:38px;padding:7px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;line-height:1;box-shadow:none}
.zcs-image-button:hover{color:#1677c7;background:#eef6fc}
.zcs-image-button svg{display:block;width:22px;height:22px;flex-shrink:0}
.zcs-image-button:focus-visible,.zcs-product-palette button:focus-visible,.zcs-dialog button:focus-visible,.zcs-search-summary a:focus-visible{outline:2px solid #1677c7;outline-offset:3px}
.zcs-search-summary{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:9px 0;font-size:12px;line-height:1.5;min-width:0}
.zcs-condition{display:inline-flex;gap:5px;align-items:center;border:1px solid #e2e6ec;padding:3px 7px;border-radius:5px;background:#fff}
.zcs-condition i{display:inline-block;width:15px;height:15px;flex-shrink:0;background:var(--zcs-color);border:1px solid rgba(0,0,0,.12);border-radius:3px}
.zcs-clear-condition{color:#1677c7;text-decoration:underline}
.zcs-search-summary small{width:100%;color:#667085;font-size:12px}
.zcs-search-entry{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.zcs-search-entry .zcs-hint{margin:0}
.zcs-dialog{width:min(680px,calc(100vw - 28px));max-height:calc(100dvh - 40px);padding:22px;border:1px solid #d9e1ea;border-radius:12px;background:#fff;box-shadow:0 20px 80px rgba(13,28,47,.25);overflow:auto;overscroll-behavior:contain}
.zcs-dialog:not([open]){display:none}
.zcs-dialog::backdrop{background:rgba(17,29,43,.55)}
.zcs-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.zcs-dialog-head h2{margin:0;font-size:20px;line-height:1.5;color:inherit}
.zcs-dialog-close{border:1px solid #d9e1ea;border-radius:5px;padding:5px 10px;background:#fff;color:inherit;cursor:pointer;font:inherit;font-size:13px}
.zcs-drop{width:100%;min-height:96px;padding:20px 14px;border:1px dashed #aab7c5;border-radius:8px;background:#f7f9fc;color:#344357;font:inherit;font-size:15px;line-height:1.5;cursor:pointer;margin:0 0 8px}
.zcs-drop:hover,.zcs-drop.is-dragover{border-color:#1677c7;background:#edf6ff;color:#1677c7}
.zcs-dialog-status{font-size:13px;line-height:1.6;min-height:21px;margin:10px 0;color:#344357}
.zcs-dialog .is-error,.zcs-palette-status.is-error{color:#b42318}
.zcs-reference-preview{display:block;max-width:100%;width:auto;height:auto;max-height:240px;margin:12px auto;border:1px solid #e2e6ec;border-radius:6px;object-fit:contain;background:#fff}
.zcs-reference-palette{margin:12px 0}
.zcs-reference-palette .zcs-palette-swatches{grid-template-columns:repeat(5,minmax(0,1fr))}
.zcs-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 9px}
.zcs-dialog-actions .zcs-action{flex:1;min-width:150px}
.zcs-dialog [hidden],.zcs-product-palette[hidden]{display:none!important}
@media(max-width:520px){.zcs-dialog{padding:16px;max-height:calc(100dvh - 24px)}.zcs-reference-palette .zcs-palette-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.zcs-dialog-head h2{font-size:18px}.zcs-dialog-actions .zcs-action{min-width:120px}.zcs-search-summary{gap:5px}}

/* The existing product palette is the only floating panel; the local camera keeps its modal. */
.zcs-floating-palette{position:fixed;left:24px;bottom:24px;right:auto;top:auto;z-index:1000000;width:300px!important;max-width:calc(100vw - 24px);max-height:min(68dvh,600px);display:flex;flex-direction:column;margin:0!important;padding:0!important;border:1px solid #d9e1ea;border-radius:10px;background:#fff;box-shadow:0 8px 30px rgba(13,28,47,.18);overflow:hidden;box-sizing:border-box}
.zcs-float-head{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:10px;border-bottom:1px solid #e2e6ec;background:#f8fafc;cursor:move;touch-action:none;user-select:none}
.zcs-float-head .zcs-palette-label{flex:1;min-width:0;margin:0!important;font-size:14px;line-height:1.5}
.zcs-float-head button{flex:0 0 auto;min-height:30px;padding:4px 7px;border:1px solid #d9e1ea;border-radius:5px;background:#fff;color:#344357;font:inherit;font-size:12px;line-height:1.5;white-space:nowrap;cursor:pointer;touch-action:manipulation}
.zcs-float-head [data-zcs-product-pick][aria-pressed=true]{background:#1677c7;border-color:#1677c7;color:#fff}
.zcs-float-picking-status{font-size:10px;line-height:1.4;color:#1677c7;white-space:nowrap}
.zcs-float-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px}
.zcs-floating-palette .zcs-palette-swatches{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.zcs-floating-palette .zcs-palette-tools{gap:5px}
.zcs-floating-palette .zcs-palette-tools button{font-size:11px;padding:5px 7px}
.zcs-floating-palette .zcs-selection-count{font-size:11px}
.zcs-floating-palette .zcs-palette-status{font-size:11px;margin-bottom:5px}
.zcs-floating-palette .zcs-coverage{font-size:11px;margin-bottom:6px}
.zcs-floating-palette .zcs-palette-search-actions .zcs-action{font-size:12px;min-height:34px;padding:6px 5px;margin:0}
.zcs-floating-palette.is-minimized .zcs-float-head{border-bottom:0}
.zcs-floating-palette [hidden]{display:none!important}
.zcs-added-color{position:relative;min-width:0;padding-top:12px}
.zcs-floating-palette:focus-within{box-shadow:0 8px 30px rgba(13,28,47,.22)}
.zcs-reference-preview.is-picking,html.zcs-page-picking,html.zcs-page-picking body *{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22M4%2028l1-5L20%208l4%204L9%2027ZM19%209l5-5a3.5%203.5%200%200%201%205%205l-5%205ZM18%207l8%208%22%20fill%3D%22white%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M4%2028l1-5L20%208l4%204L9%2027ZM19%209l5-5a3.5%203.5%200%200%201%205%205l-5%205ZM18%207l8%208%22%20fill%3D%22white%22%20stroke%3D%22%23111827%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") 3 21,crosshair!important}
html.zcs-page-picking [data-zcs-palette],html.zcs-page-picking [data-zcs-palette] *{cursor:default!important}
html.zcs-page-picking [data-zcs-palette] button,html.zcs-page-picking [data-zcs-palette] button *,html.zcs-page-picking [data-zcs-palette] a,html.zcs-page-picking [data-zcs-palette] a *{cursor:pointer!important}
@media(max-width:520px){.zcs-floating-palette{left:12px;bottom:12px;width:280px!important;max-height:60dvh}.zcs-float-head{padding:8px}.zcs-float-body{padding:8px}.zcs-float-head .zcs-palette-label{font-size:13px}}
