.catalog-media-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; margin:20px 0; }
.catalog-image-waiting { color:#65758a; font-size:11px; background:#f3f6fa; }
.catalog-media-tile { position:relative; padding:9px; border:1px solid #cbd5e1; border-radius:6px; background:white; }
.catalog-media-tile img { width:100%; height:160px; object-fit:contain; }
.catalog-media-number { position:absolute; left:12px; top:12px; background:white; border:1px solid #cbd5e1; border-radius:20px; padding:3px 8px; font-size:12px; }
.catalog-media-actions { display:flex; gap:4px; flex-wrap:wrap; margin-top:8px; }
.catalog-media-actions button { padding:5px 7px; font-size:12px; border:1px solid #cbd5e1; border-radius:4px; color:#345; background:#f7f9fb; cursor:pointer; }
.catalog-media-tile[draggable] { cursor:grab; }
.catalog-media-tile.dragging { opacity:.45; }
.catalog-media-channel, .catalog-relation-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.catalog-media-channel label { flex:1; }
.catalog-media-channel select, .catalog-relation-actions select, .catalog-relation-actions input:not([type="hidden"]) { border:1px solid #cbd5e1; border-radius:4px; padding:9px 12px; background:#fff; color:#24374a; font:inherit; max-width:100%; }
.catalog-media-channel select { min-width:220px; margin-left:8px; }
.catalog-media-upload { display:block; border:1px dashed #9aaaba; border-radius:8px; padding:22px; }
.catalog-media-upload input { display:block; margin-top:12px; }
.catalog-editor textarea { width:100%; box-sizing:border-box; }
.catalog-editor-actions { display:flex; gap:12px; justify-content:flex-end; padding:18px; background:white; position:sticky; bottom:0; border-top:1px solid #cbd5e1; z-index:2; }
.catalog-relation-result { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; padding:14px 0; border-bottom:1px solid #dce3eb; }
.catalog-relation-result small { display:block; color:#748190; margin-top:5px; }
.catalog-tabs { display:flex; gap:0; overflow-x:auto; background:#fff; border-bottom:1px solid #cdd6e1; margin-top:14px; }
.catalog-tabs a { display:inline-flex; align-items:center; gap:8px; flex-shrink:0; padding:15px 22px; border-bottom:2px solid transparent; color:#56616f; text-decoration:none; font-size:13px; }
.catalog-tabs a:hover { background:#f7f9fb; color:#0877cf; }
.catalog-tabs a[aria-current="page"] { color:#0877cf; border-color:#0877cf; }
.catalog-tabs small { padding:3px 7px; background:#edf0f4; border-radius:3px; color:#4c5864; }
.catalog-tabs a:focus-visible, .catalog-edit-link:focus-visible { outline:2px solid #0877cf; outline-offset:-3px; }
[data-product-panel][hidden] { display:none !important; }
.catalog-detail .product-detail-header { grid-template-columns:84px minmax(0,1fr) 205px; min-height:120px; gap:18px; padding:16px; }
.catalog-detail .product-main-image { width:84px; height:84px; }
.catalog-detail .product-title-block h1 { font-size:19px; line-height:1.4; }
.catalog-detail .product-key-values { gap:14px; flex-wrap:wrap; }
.catalog-edit-link { display:inline-flex; margin-top:12px; font-size:12px; padding:8px 15px; }
.catalog-detail .product-detail-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
.catalog-detail .product-section { padding:20px 24px; }
.catalog-detail .product-section h2 { margin-bottom:16px; }
.catalog-detail .product-variant-card { grid-template-columns:60px minmax(150px,2fr) repeat(5,minmax(90px,1fr)); }
.catalog-detail .product-variant-list { overflow-x:auto; }
.catalog-editor { max-width:1240px; margin:auto; }
.catalog-editor-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.catalog-editor-heading h1 { font-size:21px; }
.catalog-editor-heading>span { flex-shrink:0; color:#6b7785; font-size:12px; }
.catalog-editor-form { background:#fff; border:1px solid #d9e1e8; border-top:0; border-radius:0 0 7px 7px; }
.catalog-form-section { padding:24px 32px; }
.catalog-form-section h2 { margin:5px 0 23px; font-size:15px; color:#21364a; }
.catalog-form-section h2:not(:first-child) { border-top:1px solid #d9e1e8; padding-top:22px; margin-top:25px; }
.catalog-field { display:grid; grid-template-columns:210px minmax(0,1fr); align-items:start; gap:22px; margin:0 0 15px; font-size:13px; }
.catalog-field>span:first-child { color:#626d7b; text-align:right; padding-top:11px; }
.catalog-field input:not([type="checkbox"]), .catalog-field textarea { width:100%; min-width:0; border:1px solid #cbd5e1; border-radius:4px; padding:10px 12px; background:#fff; color:#24374a; font:inherit; }
.catalog-field textarea { line-height:1.6; resize:vertical; }
.catalog-field input:focus, .catalog-field textarea:focus { outline:2px solid #c0e0fc; border-color:#1685db; }
.catalog-field input[readonly] { background:#f3f5f7; color:#657180; }
.catalog-field small { display:block; margin-top:6px; color:#75818b; line-height:1.5; }
.catalog-inline-check { display:flex; align-items:center; gap:9px; min-height:38px; }
.catalog-inline-check input { width:17px; height:17px; }
.catalog-explanation { color:#667688; font-size:12px; line-height:1.6; margin:0 0 20px; padding:10px 14px; background:#f6f9fc; border-left:2px solid #1685db; }
.catalog-editor-footer { display:flex; align-items:center; justify-content:flex-end; gap:12px; padding:16px 24px; border-top:1px solid #d9e1e8; background:#fff; position:sticky; bottom:0; z-index:2; }
.catalog-editor-footer>span { margin-right:auto; color:#7b6414; font-size:12px; }
.catalog-editor-footer button { border-radius:22px; padding:11px 22px; background:#087bd6; }
.catalog-heading-actions { display:flex; align-items:center; gap:10px; }
@media(max-width:850px) {
  .catalog-detail .product-detail-header { grid-template-columns:70px minmax(0,1fr); }
  .catalog-detail .product-summary { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:20px; }
  .catalog-field { grid-template-columns:160px minmax(0,1fr); gap:15px; }
  .catalog-form-section { padding:22px 18px; }
  .catalog-detail .product-variant-card { min-width:800px; }
}
@media(max-width:560px) {
  .catalog-field { grid-template-columns:minmax(0,1fr); gap:6px; }
  .catalog-field>span:first-child { text-align:left; padding-top:0; }
  .catalog-editor-heading { align-items:flex-start; flex-direction:column; gap:5px; }
  .catalog-editor-footer { flex-wrap:wrap; padding:12px; }
  .catalog-editor-footer>span { width:100%; }
  .catalog-tabs a { padding:13px 15px; }
  .catalog-heading-actions { flex-wrap:wrap; }
}

.variant-form-grid select {
  width:100%; min-height:39px; padding:8px 10px; border:1px solid #cbd7df;
  border-radius:5px; background:white; color:#243746; font:inherit; box-sizing:border-box;
}
.variant-form-grid select:focus { border-color:#0877cf; outline:2px solid rgba(8,119,207,.12); }
.variant-form-grid input:disabled { background:#f6f8fa; color:#526674; }
.variant-form-grid label:has(>input[type=checkbox]), #parameters fieldset label:has(>input[type=checkbox]) {
  display:flex; align-items:center; justify-content:flex-start; gap:8px; padding:5px 0;
}
.variant-form-grid input[type=checkbox], #parameters input[type=checkbox] {
  width:17px; height:17px; min-height:0; flex:0 0 17px; margin:0; padding:0;
}
.variant-form-grid fieldset { border:1px solid #d5dee6; border-radius:5px; padding:12px 16px; }
.variant-form-grid textarea { font:inherit; border:1px solid #cbd7df; border-radius:5px; padding:10px; box-sizing:border-box; }
#parameters select[multiple] { height:auto; min-height:100px; }
.parameter-add-bar { display:flex; flex-wrap:wrap; align-items:end; gap:10px; }
.parameter-add-bar label { flex:1; min-width:180px; display:grid; gap:6px; }
.parameter-add-bar select { width:100%; min-height:38px; border:1px solid #cbd7df; border-radius:4px; padding:8px; font:inherit; background:white; box-sizing:border-box; }
[data-parameter-editor] { display:grid; grid-template-columns:1fr; gap:12px; }
[data-parameter-editor] > .primary-button { justify-self:start; }
[data-parameter-editor] > p { margin:0; }
.parameter-value-row { padding:12px; border:1px solid #d5dee6; border-radius:6px; }
.parameter-value-row[hidden] { display:none; }
.parameter-value-row fieldset { border:0; padding:0; margin:0 0 10px; min-width:0; }
.parameter-value-row label { display:grid; gap:6px; }
.extra-fields-editor { display:grid; gap:16px; }
.extra-fields-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.extra-field { display:grid; gap:6px; align-content:start; min-width:0; }
.extra-field-wide { grid-column:1/-1; }
.extra-field > label { display:block; font-size:13px; color:#42566a; }
.extra-field input:not([type=radio]),.extra-field select,.extra-field textarea { box-sizing:border-box; width:100%; border:1px solid #cbd7df; border-radius:4px; padding:9px; min-height:38px; font:inherit; background:white; }
.extra-field fieldset { border:0; margin:0; padding:0; min-width:0; }
.extra-field legend { font-size:13px; color:#42566a; margin-bottom:6px; }
.extra-field-radio { display:flex; flex-wrap:wrap; gap:9px; }
.extra-field-radio label { display:inline-flex; align-items:center; gap:4px; }
.extra-field-radio input { width:16px; height:16px; margin:0; }
.extra-field .extra-checkbox { display:flex; align-items:center; gap:8px; min-height:38px; }
.extra-field .extra-checkbox input[type=checkbox] { width:16px; height:16px; min-height:0; padding:0; }
.extra-fields-editor > button { justify-self:start; }
.parameter-config-page { max-width:1060px; margin:0 auto; }
.parameter-config-form { display:grid; grid-template-columns:1fr; gap:16px; max-width:1000px; }
.parameter-config-form label { display:grid; gap:6px; }
.parameter-config-form input:not([type=checkbox]):not([type=hidden]),.parameter-config-form select,.parameter-config-form textarea { box-sizing:border-box; width:100%; min-height:38px; font:inherit; border:1px solid #cbd7df; padding:9px; border-radius:4px; }
.parameter-config-form .checkbox-label { display:flex; align-items:center; gap:8px; }
.parameter-config-form input[type=checkbox] { width:16px; height:16px; min-height:0; margin:0; }
.parameter-config-form > button { justify-self:start; }
.extra-filter-heading { grid-column:1/-1; border-top:1px solid #d5dee6; padding-top:14px; }
.product-filters .advanced-filter-grid { position:static; inset:auto; z-index:auto; width:auto; box-shadow:none; border-radius:0; align-items:start; box-sizing:border-box; }
.product-filters .advanced-filter-grid .extra-filter-heading { grid-column:1/-1; }
.extra-filter-heading h3 { font-size:14px; margin:0 0 10px; }
.extra-filter-heading label { max-width:340px; }
.extra-filter-heading p { font-size:12px; color:#617182; }
.advanced-filter-grid .extra-filter-radio { border:1px solid #cbd7df; border-radius:4px; padding:8px; display:flex; flex-wrap:wrap; gap:8px; align-content:start; }
.advanced-filter-grid .extra-filter-radio label { display:inline-flex; align-items:center; gap:3px; }
.advanced-filter-grid .extra-filter-radio input { width:15px; min-height:0; height:15px; padding:0; margin:0; }
@media(max-width:1000px) { .extra-fields-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .extra-fields-grid { grid-template-columns:1fr; } }
.parameter-value-row input,.parameter-value-row select { width:100%; min-height:38px; box-sizing:border-box; border:1px solid #cbd7df; border-radius:4px; padding:8px; font:inherit; }

/* Catalog composition and confirmed bulk workflows: do not inherit generic card input sizing. */
.catalog-workflow-page label:has(input[type="checkbox"]) { display:flex; flex-direction:row; align-items:center; gap:8px; margin:8px 0; }
.catalog-workflow-page input[type="checkbox"] { width:16px; height:16px; min-height:16px; padding:0; flex:0 0 16px; margin:0; }
.catalog-workflow-page .form-row { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; margin:14px 0; }
.catalog-workflow-page .form-row label { flex:0 1 420px; }
.catalog-workflow-page .form-row button { flex:0 0 auto; }
.catalog-workflow-page td input[type="number"] { width:90px; max-width:100%; }
.catalog-workflow-page td form { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.catalog-workflow-page td { vertical-align:middle; }
.catalog-workflow-page .card > p { margin:8px 0 12px; line-height:1.5; }
.barcode-owner-list{display:grid;gap:8px;margin:14px 0}.barcode-owner-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;border:1px solid #d9e3eb;border-radius:8px;background:#f8fbfd}.barcode-owner-row span{display:grid;gap:2px}.barcode-owner-row small{color:#587185}.barcode-owner-row form{margin:0}.barcode-alias-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.4fr) auto;gap:12px;align-items:end}.barcode-alias-form label{display:grid;gap:5px}.barcode-alias-form input,.barcode-alias-form select{min-height:42px}@media(max-width:800px){.barcode-alias-form{grid-template-columns:1fr}.barcode-alias-form .primary-button{width:100%;min-height:50px}}
