/* ============================================================
   Forstbetrieb Klapp Plugin CSS
   ============================================================ */

/* ── Product Badges ── */
.fkp-badges {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  z-index: 5;
}

.fkp-badge {
  display: inline-block;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}

.fkp-badge--sale {
  background: #C62828;
  color: #fff;
}

.fkp-badge--free {
  background: #2E7D32;
  color: #fff;
}

.fkp-badge--secure {
  background: #1F3A2E;
  color: #fff;
}

/* Single product badges */
.fkp-single-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0.75rem 0 1.25rem;
}

.fkp-single-badges .fkp-badge {
  font-size: 0.75rem;
  padding: 0.3rem 0.75rem;
}

/* ── Discount Badge in Price HTML ── */
.fkp-discount-badge {
  display: inline-block;
  background: #C62828;
  color: #fff;
  padding: 0.15rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.6875rem;
  font-weight: 700;
  margin-left: 0.25rem;
  vertical-align: middle;
}

/* ── Bank Notice at Checkout ── */
.fkp-bank-notice {
  background: linear-gradient(135deg, #f0f7f4, #e8f4ef);
  border: 2px solid #1F3A2E;
  border-radius: 12px;
  padding: 1.5rem;
  margin: 1.5rem 0;
}

.fkp-bank-notice h4 {
  color: #1F3A2E;
  font-size: 1.0625rem;
  margin-bottom: 1rem;
  font-family: inherit;
}

.fkp-bank-notice dl > div {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem 0;
  border-bottom: 1px dashed #c5ddd3;
  font-size: 0.9rem;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.fkp-bank-notice dl > div:last-child {
  border-bottom: none;
}

.fkp-bank-notice dt {
  font-weight: 700;
  color: #5C5C5C;
}

.fkp-bank-notice dd {
  font-family: 'Courier New', monospace;
  font-weight: 700;
  color: #1F3A2E;
}

.fkp-bank-notice__note {
  margin-top: 1rem;
  color: #1F3A2E;
  font-weight: 600;
  font-size: 0.9rem;
  background: #fff;
  border-left: 4px solid #A67C52;
  padding: 0.75rem 1rem;
  border-radius: 0 6px 6px 0;
}

/* ── Free Delivery Notice ── */
.fkp-notice {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1.25rem;
  border-radius: 8px;
  margin-bottom: 1.25rem;
  font-size: 0.9375rem;
}

.fkp-notice--success {
  background: rgba(46, 125, 50, 0.08);
  border: 1px solid rgba(46, 125, 50, 0.3);
  color: #1B5E20;
}

.fkp-notice svg {
  flex-shrink: 0;
}

/* ── Price styling on product pages ── */
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
  text-decoration: none !important;
  font-weight: 700;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
  opacity: 0.6;
  margin-right: 0.25rem;
}

/* ── WooCommerce Order info on thank-you page ── */
.fkp-order-confirmation {
  background: linear-gradient(135deg, #f0f7f4, #e8f4ef);
  border: 2px solid #1F3A2E;
  border-radius: 16px;
  padding: 2.5rem;
  text-align: center;
  margin-bottom: 2rem;
}

.fkp-order-confirmation__icon {
  width: 70px;
  height: 70px;
  background: #2E7D32;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.5rem;
  font-size: 2rem;
}

/* ── Mobile overlay for mobile nav ── */
.mobile-nav-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  z-index: 9990;
}

.mobile-nav-overlay.active {
  display: block;
}

/* ── Smooth scroll behavior ── */
html {
  scroll-behavior: smooth;
}

/* ── Cart quantity input ── */
.woocommerce .quantity .qty {
  border: 2px solid #D9D4C8 !important;
  border-radius: 8px !important;
  padding: 0.5rem !important;
  width: 70px !important;
  text-align: center !important;
}

/* ── Related products heading ── */
.woocommerce .related h2,
.woocommerce .upsells h2 {
  font-family: 'Playfair Display', serif;
  color: #1F3A2E;
  margin-bottom: 1.5rem;
}

/* ── Product gallery ── */
.woocommerce div.product div.images {
  border-radius: 12px;
  overflow: hidden;
}

/* ── Add to cart button ── */
.woocommerce div.product .cart .single_add_to_cart_button {
  background: #A67C52 !important;
  border-radius: 9999px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  padding: 0.9rem 2.5rem !important;
  letter-spacing: 0.02em;
}

.woocommerce div.product .cart .single_add_to_cart_button:hover {
  background: #8A6340 !important;
}

/* ── WC Mini cart ── */
.widget_shopping_cart_content .cart_list li a {
  color: #1F3A2E !important;
}

/* ── Responsive adjustments ── */
@media (max-width: 600px) {
  .fkp-bank-notice {
    padding: 1rem;
  }
  .fkp-bank-notice dl > div {
    flex-direction: column;
  }
  .fkp-single-badges {
    gap: 0.375rem;
  }
}
