.ghcm-measure-box {
  flex: 0 0 100%;
  width: 100%;
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(0, 0, 0, .12);
  border-radius: .35rem;
  background: rgba(0, 0, 0, .025);
}

.ghcm-fields {
  display: grid;
  grid-template-columns: minmax(0, 260px);
  gap: .85rem 1rem;
}

.ghcm-fields-area {
  grid-template-columns: repeat(2, minmax(0, 260px));
}

.ghcm-field {
  min-width: 0;
}

.ghcm-measure-label {
  display: block;
  margin-bottom: .45rem;
  font-weight: 700;
}

.ghcm-measure-control {
  display: flex;
  align-items: stretch;
  width: 100%;
}

.ghcm-measure-input {
  min-width: 0;
}

.ghcm-unit {
  display: inline-flex;
  align-items: center;
  padding: 0 .8rem;
  border: 1px solid rgba(0, 0, 0, .18);
  border-left: 0;
  border-radius: 0 .25rem .25rem 0;
  background: rgba(0, 0, 0, .04);
  font-weight: 600;
}

.ghcm-help {
  margin-top: .65rem;
  font-size: .875rem;
  line-height: 1.45;
}

.ghcm-area-preview {
  margin-top: .35rem;
  font-weight: 600;
}

.ghcm-error {
  margin-top: .45rem;
  font-size: .875rem;
  color: #b00020;
  font-weight: 600;
}

@media (max-width: 575.98px) {
  .ghcm-fields-area {
    grid-template-columns: 1fr;
  }
}

.ghcm-price-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .75rem 1rem;
  margin-top: .85rem;
}

.ghcm-update-price {
  font-weight: 700;
}

.ghcm-update-price.is-loading {
  opacity: .7;
  cursor: progress;
}

.ghcm-price-result {
  min-height: 1.4em;
  line-height: 1.4;
}

.ghcm-price-result strong {
  font-weight: 700;
}

.ghcm-price-loading,
.ghcm-price-pending {
  font-size: .9rem;
}

@media (max-width: 575.98px) {
  .ghcm-price-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .ghcm-update-price {
    width: 100%;
  }
}

/* v1.2.0: el botón debe seguir siendo visible aunque el tema redefina botones secundarios. */
.ghcm-price-actions .ghcm-update-price {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  visibility: visible !important;
  opacity: 1;
  min-height: 42px;
  padding: .65rem 1rem;
  cursor: pointer;
}

.ghcm-price-actions .ghcm-update-price[disabled] {
  opacity: .7;
}


/* v1.2.6: identificación inequívoca de combinación + medidas en carrito. */
.ghcm-cart-extra-product-info {
  margin-top: .3rem;
  font-size: .875rem;
  line-height: 1.35;
  font-weight: 600;
}

.ghcm-cart-extra-product-info,
.ghcm-cart-modal-content {
  margin-top: .35rem;
  font-size: .9rem;
  line-height: 1.35;
}
.ghcm-cart-modal-content {
  margin-bottom: .5rem;
}
