.fgsub-box {
  box-sizing: border-box;
  border: 1px solid #d6e3ea;
  border-radius: 3px;
  padding: 12px 14px;
  margin: 12px 0 16px;
  background: #fff;
  width: 100%;
  max-width: none;
  clear: both;
}
.fgsub-title {
  font-size: 1rem;
  font-weight: 600;
  margin: 0 0 2px;
}
.fgsub-info {
  color: #5d6770;
  font-size: .9rem;
  margin: 0 0 9px;
}
.fgsub-choice-row {
  display: flex;
  gap: 22px;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
}
.fgsub-choice {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  cursor: pointer;
  white-space: nowrap;
}
.fgsub-choice input { margin: 0; }
.fgsub-interval-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0 0;
  max-width: 620px;
}
.fgsub-interval-wrap label {
  margin: 0;
  font-weight: 600;
  white-space: nowrap;
}
.fgsub-interval-select {
  width: auto !important;
  min-width: 240px;
  max-width: 360px;
}
.fgsub-price-summary {
  display: none;
  margin-top: 8px;
  font-weight: 600;
}
.product-actions > .fgsub-box,
.product-actions form > .fgsub-box {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 767px) {
  .fgsub-choice-row { gap: 12px; }
  .fgsub-interval-wrap { align-items: stretch; flex-direction: column; gap: 5px; }
  .fgsub-interval-select { width: 100% !important; min-width: 0; max-width: none; }
}
