.variants-box { grid-column: 1 / -1; }
.variants-scroll { overflow-x: auto; }
.variants-table { width: 100%; min-width: 900px; border-collapse: collapse; font-size: 13px; }
.variants-table th, .variants-table td { padding: 10px 8px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.variants-table th { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.variant-note td { padding-top: 3px; color: #7b4c2d; background: #faf5ed; }
.variant-editor { display: grid; grid-template-columns: repeat(5, minmax(120px, 1fr)); gap: 8px; margin: 10px 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #faf8f4; }
.variant-editor input, .variant-editor select { width: 100%; min-width: 0; }
.variant-notes { grid-column: span 4; }
.variant-editor .remove { justify-self: end; }
.product-gallery { display: grid; gap: 10px; }
.gallery-thumbs { display: flex; gap: 8px; overflow-x: auto; padding: 2px 1px 5px; }
.gallery-thumb { flex: 0 0 74px; height: 62px; padding: 2px; border: 2px solid transparent; border-radius: 9px; background: #eee8df; cursor: pointer; }
.gallery-thumb.active { border-color: var(--accent); }
.gallery-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 6px; }
.share-composer { display: grid; gap: 15px; margin-top: 20px; }
.share-composer label { color: var(--muted); font-size: 13px; }
.share-composer select, .share-composer textarea { display: block; width: 100%; margin-top: 6px; }
.share-composer textarea { min-height: 230px; padding: 12px; resize: vertical; }
.fabric-swatch { width: 54px; height: 54px; object-fit: cover; border-radius: 8px; border: 1px solid var(--line); }
.fabric-photo-field { display: flex; align-items: center; gap: 8px; grid-column: span 2; }
.fabric-photo-field img { width: 54px; height: 54px; object-fit: cover; border-radius: 8px; border: 1px solid var(--line); }
.fabric-photo-field label { flex: 1; color: var(--muted); font-size: 12px; }
.fabric-photo-field input[type="file"] { min-height: 0; padding: 6px; font-size: 12px; }
.match-info { display: inline-block; margin: 1px 0 7px; padding: 4px 7px; border-radius: 7px; background: #eee9e2; color: var(--ink); font-size: 12px; font-weight: 600; }
.order-badge { margin-left: 6px; background: #f5ebca; color: #766019; }
.info-disclosure { grid-column: 1 / -1; border: 1px solid var(--line); border-radius: 14px; background: #fffdf9; overflow: hidden; }
.info-disclosure summary { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 15px 17px; cursor: pointer; font: 18px Georgia, serif; }
.info-disclosure summary span { font: 11px Inter, sans-serif; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }
.info-disclosure[open] summary { border-bottom: 1px solid var(--line); }
.order-disclosure { background: #fffaf0; border-color: #eadcae; }
.spec-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; padding: 8px 17px 14px; }
.spec-grid div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--line); }
.spec-grid span { color: var(--muted); }
.compact-grid { margin-top: 10px; }
.check-label { display: flex !important; align-items: center; gap: 9px; color: var(--ink) !important; font-weight: 600; }
.check-label input { width: auto !important; margin: 0 !important; min-height: 18px; }
.field-help { display: block; margin-top: 6px; color: var(--muted); font-size: 12px; }
.catalog-action { padding: 4px 17px 17px; }
.catalog-action a { display: inline-block; text-decoration: none; }
.supplier-list { margin-top: 14px; }
.order-options-editor { margin-top: 16px; padding-top: 14px; border-top: 1px dashed #d7c9ac; }
.order-options-editor h4, .order-prices h4 { margin: 0 0 5px; font: 17px Georgia, serif; }
.order-option-editor { display: grid; grid-template-columns: 1fr 1fr 1fr 1.5fr auto; gap: 8px; margin: 9px 0; }
.order-option-editor input { width: 100%; min-width: 0; }
.order-prices { padding: 4px 17px 12px; }
.order-table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 13px; }
.order-table th, .order-table td { padding: 9px 8px; border-bottom: 1px solid var(--line); text-align: left; }
.order-table th { color: var(--muted); font-size: 11px; text-transform: uppercase; }
.fabric-price-note { margin: 11px 0 0; padding: 10px 12px; border-radius: 9px; background: #f8efd5; color: #6e5a1d; font-size: 12px; }
@media (max-width: 800px) {
  .variant-editor { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .variant-notes { grid-column: 1 / -1; }
  .variant-editor .remove { grid-column: 2; }
  .variants-box { padding: 12px; }
  .spec-grid { grid-template-columns: 1fr; }
  .order-option-editor { grid-template-columns: 1fr 1fr; padding: 10px; border: 1px solid var(--line); border-radius: 10px; }
  .order-option-editor .button { grid-column: 2; justify-self: end; }
}
