/* TASSEL Domain Manager — WooCommerce integration styles. */

/* Period selector + Add to Cart button row in search results. */
.tdm-result-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.tdm-period-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: #555;
}
.tdm-period-select {
  padding: 6px 10px;
  border: 1px solid #d0d0d8;
  border-radius: 5px;
  font-size: 13px;
  background: #fff;
  min-width: 160px;
  max-width: 220px;
}

/* v1.6.4 — dla pewności że karta wyniku nigdy nie ściska nazwy domeny
   na pojedyncze litery — wymuś sensowną minimalną szerokość kolumny nazwy.
   Domeny mogą być długie (do 67 znaków + TLD), ale flex powinien je
   złamać po słowach a nie po literach. */
.tdm-result-card {
  overflow: visible !important;
  flex-wrap: wrap;
}
.tdm-result-card .tdm-result-domain {
  min-width: 200px;
  flex: 1 1 240px;
}
.tdm-result-card .tdm-result-actions {
  flex-shrink: 0;
  min-width: max-content;
}
/* v1.6.7: full-width pod kartą — eliminuje sterczenie pionowo */
.tdm-result-card .tdm-result-error {
  flex-basis: 100% !important;
  width: 100% !important;
  order: 99 !important;
}
.tdm-cart-add-btn {
  white-space: nowrap;
}
.tdm-cart-add-btn.tdm-btn--success {
  background: #0a7a2f !important;
  border-color: #0a7a2f !important;
}
.tdm-cart-cta {
  margin: 12px 0;
  padding: 12px 16px;
  background: #f0f7ff;
  border: 1px solid #b8d6f0;
  border-radius: 6px;
}
.tdm-cart-cta__inner {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.tdm-result-error {
  margin-top: 8px;
  padding: 8px 12px;
  background: #fdebec;
  border-left: 3px solid #b02a37;
  color: #b02a37;
  font-size: 13px;
  border-radius: 4px;
}

/* Cart icon in cart line item */
.tdm-cart-domain-icon {
  display: inline-block;
  width: 48px;
  height: 48px;
  padding: 4px;
  background: #f8f8fa;
  border-radius: 4px;
}

/* Checkout — registrant blocks. */
.tdm-wc-registrants {
  margin: 24px 0;
  padding: 20px;
  background: #f8f9fb;
  border: 1px solid #e0e0e8;
  border-radius: 8px;
}
.tdm-wc-registrants__heading {
  margin: 0 0 8px;
  font-size: 18px;
  color: #1e3a5f;
}
.tdm-wc-registrants__intro {
  margin: 0 0 16px;
  font-size: 13px;
  color: #666;
}
.tdm-wc-registrant-block {
  margin: 0 0 16px;
  padding: 16px;
  background: #fff;
  border: 1px solid #e0e0e8;
  border-radius: 6px;
}
.tdm-wc-registrant-block__header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #f0f0f4;
}
.tdm-wc-registrant-block__domain {
  font-size: 16px;
  color: #1e3a5f;
}
.tdm-wc-registrant-block__meta {
  font-size: 13px;
  color: #888;
}
.tdm-wc-registrant-block__choices {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.tdm-wc-radio {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: 14px;
}
.tdm-wc-radio input[type="radio"] {
  margin: 0;
}
.tdm-wc-profile-select {
  padding: 4px 8px;
  border: 1px solid #d0d0d8;
  border-radius: 4px;
  font-size: 13px;
  margin-left: 4px;
}
.tdm-wc-profile-select:disabled {
  opacity: 0.5;
}
.tdm-wc-registrant-inline {
  margin-top: 12px;
  padding: 16px;
  background: #f8f9fb;
  border: 1px solid #e6e6ee;
  border-radius: 6px;
}
.tdm-wc-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
.tdm-wc-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 8px;
}
.tdm-wc-row--company {
  grid-template-columns: 2fr 1fr;
}
.tdm-wc-field {
  margin: 0 0 8px;
}
.tdm-wc-field label {
  display: block;
  font-size: 12px;
  color: #555;
  margin-bottom: 4px;
}
.tdm-wc-field input,
.tdm-wc-field select {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #d0d0d8;
  border-radius: 4px;
  font-size: 14px;
}
.tdm-wc-save-profile {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 12px 0 0;
  font-size: 13px;
  color: #555;
}
@media (max-width: 600px) {
  .tdm-wc-row,
  .tdm-wc-row--company {
    grid-template-columns: 1fr;
  }
}

/* Admin — domains metabox on order page. */
.tdm-wc-order-domains {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tdm-wc-order-domains li {
  padding: 8px 0;
  border-bottom: 1px solid #f0f0f4;
}
.tdm-wc-order-domains li:last-child {
  border-bottom: none;
}
