/* ==========================================================================
   PART 1: FEATURED AUTHOR & PORTFOLIO EQUAL HEIGHT CARDS FIX
   ========================================================================== */

.mk-portfolio .four-columns,
.mk-port-featured .four-columns {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

.mk-portfolio .four-columns .column,
.mk-port-featured .four-columns .column {
  display: flex !important;
  flex-direction: column !important;
  float: none !important;
  box-sizing: border-box !important;
  width: 50% !important;
  max-width: 50% !important;
  flex: 0 0 50% !important;
}

@media (min-width: 768px) {
  .mk-portfolio .four-columns .column,
  .mk-port-featured .four-columns .column {
    width: 25% !important;
    max-width: 25% !important;
    flex: 0 0 25% !important;
  }
}

.mk-portfolio .four-columns .column .edd_download_inner,
.mk-port-featured .four-columns .column .edd_download_inner {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 1 auto !important;
}

.edd_download_inner .folio-text .edd_download_title {
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.edd_download_inner .folio-text .edd_download_title a {
  text-align: center !important;
  width: 100% !important;
}

/* Remove bottom colored border and set 0px border-radius for all cards (Featured, Portfolio, Tabs, Archive, Author) */
.mk-portfolio .folio-text,
.edd_downloads_list .folio-text,
.mk-port-featured .folio-text,
.edd_download_inner .folio-text,
.mk-portfolio .edd_download_inner,
.mk-port-featured .edd_download_inner,
.tab__content .edd_download_inner,
.tab__content .folio-text,
.column .edd_download_inner,
.column .folio-text,
.edd_download,
.edd_download_inner,
.mk-portfolio .column,
.mk-port-featured .column,
.tab__content .column,
.mk-portfolio .mk-folio,
.mk-port-featured .mk-folio,
.tab__content .mk-folio,
.mk-folio,
.mk-folio img,
.edd_download_image,
.edd_download_image img {
  border-bottom: none !important;
  border-bottom-width: 0 !important;
  border-bottom-color: transparent !important;
  border-radius: 0px !important;
}


/* ==========================================================================
   PART 2: SINGLE DOWNLOAD DETAILS PAGE - SIDEBAR PURCHASE BOX FIX
   ========================================================================== */

/* Purchase form container in sidebar */
.mk-sidebar .edd_download_purchase_form {
  padding: 20px 0 0 !important;
  margin: 0 !important;
  border-top: 1px solid #eaeff2 !important;
  width: 100% !important;
  text-align: left !important;
}

/* Price options list wrapper */
.mk-sidebar .edd_price_options,
ul.mk-specs .edd_download_purchase_form .edd_price_options {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.mk-sidebar .edd_price_options ul,
ul.mk-specs .edd_download_purchase_form .edd_price_options ul {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* Individual pricing option card */
.mk-sidebar .edd_price_options ul li,
ul.mk-specs .edd_download_purchase_form .edd_price_options li {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 14px 12px 44px !important;
  margin: 0 0 10px 0 !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  width: 100% !important;
  float: none !important;
  height: auto !important;
  min-height: 52px !important;
  cursor: pointer !important;
  opacity: 0.55 !important; /* Unselected has slightly reduced opacity */
  transition: opacity 0.25s ease, border-color 0.25s ease, background-color 0.25s ease !important;
}

.mk-sidebar .edd_price_options ul li:hover,
ul.mk-specs .edd_download_purchase_form .edd_price_options li:hover {
  opacity: 0.85 !important;
  border-color: #2ae9e9 !important;
  background: #fbfdfd !important;
}

/* Selected option has FULL opacity (1) and active border */
.mk-sidebar .edd_price_options ul li:has(input:checked),
.mk-sidebar .edd_price_options ul li:has(.check.selected),
.mk-sidebar .edd_price_options ul li:has(label.highlight),
.mk-sidebar .edd_price_options ul li.is-selected,
ul.mk-specs .edd_download_purchase_form .edd_price_options li:has(input:checked),
ul.mk-specs .edd_download_purchase_form .edd_price_options li:has(.check.selected),
ul.mk-specs .edd_download_purchase_form .edd_price_options li:has(label.highlight),
ul.mk-specs .edd_download_purchase_form .edd_price_options li.is-selected {
  opacity: 1 !important; /* Selected has full opacity */
  border-color: #2ae9e9 !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(42, 233, 233, 0.12) !important;
}

/* Radio circle indicator */
.mk-sidebar .edd_price_options ul li .check,
ul.mk-specs .edd_download_purchase_form .edd_price_options li .check {
  display: block !important;
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  width: 20px !important;
  height: 20px !important;
  border: 2px solid #cbd5e1 !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
  z-index: 2 !important;
  transition: all 0.2s ease !important;
}

.mk-sidebar .edd_price_options ul li .check.selected,
ul.mk-specs .edd_download_purchase_form .edd_price_options li .check.selected {
  border: 2px solid #2ae9e9 !important;
}

.mk-sidebar .edd_price_options ul li .check.selected::before,
ul.mk-specs .edd_download_purchase_form .edd_price_options li .check.selected::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 10px !important;
  height: 10px !important;
  background: #2ae9e9 !important;
  border-radius: 50% !important;
}

/* Option label */
.mk-sidebar .edd_price_options ul li label,
ul.mk-specs .edd_download_purchase_form .edd_price_options li label {
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  line-height: 1.4 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1e293b !important;
  cursor: pointer !important;
  position: static !important;
  z-index: 1 !important;
}

/* Hide native inputs since .check displays the radio */
.mk-sidebar .edd_price_options ul li label input[type="checkbox"],
.mk-sidebar .edd_price_options ul li label input[type="radio"] {
  display: none !important;
}

.mk-sidebar .edd_price_options ul li label .edd_price_option_name {
  font-weight: 600 !important;
  color: #0f172a !important;
  font-size: 14px !important;
}

.mk-sidebar .edd_price_options ul li label .edd_price_option_sep {
  color: #94a3b8 !important;
  margin: 0 4px !important;
}

.mk-sidebar .edd_price_options ul li label .edd_price_option_price {
  font-weight: 700 !important;
  color: #0f766e !important;
  font-size: 15px !important;
}

/* Quantity input wrapper with + and - stepper */
.mk-sidebar .edd_price_options ul li .edd_download_quantity_wrapper {
  display: inline-flex !important;
  align-items: center !important;
  background: #f1f5f9 !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 2px !important;
  margin: 0 0 0 10px !important;
  float: none !important;
  flex-shrink: 0 !important;
  z-index: 5 !important;
  box-sizing: border-box !important;
  height: 34px !important;
}

.mk-sidebar .edd_price_options ul li .edd_download_quantity_wrapper .edd_price_option_sep {
  display: none !important;
}

/* Plus and Minus Buttons */
.mk-sidebar .wakonte-qty-btn {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  color: #1e293b !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  user-select: none !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: all 0.15s ease !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.mk-sidebar .wakonte-qty-btn:hover {
  background: #2ae9e9 !important;
  color: #0d141b !important;
  border-color: #2ae9e9 !important;
}

.mk-sidebar .wakonte-qty-btn:active {
  transform: scale(0.92) !important;
}

/* Number input inside stepper */
.mk-sidebar .edd_price_options ul li .edd_download_quantity_wrapper input.edd-item-quantity,
.mk-sidebar input.edd-item-quantity:not([type="submit"]) {
  width: 32px !important;
  height: 28px !important;
  line-height: 28px !important;
  padding: 0 !important;
  margin: 0 2px !important;
  float: none !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.mk-sidebar .edd_price_options ul li .edd_download_quantity_wrapper input.edd-item-quantity:focus {
  background: transparent !important;
  border: none !important;
  outline: none !important;
}

/* Submit Wrapper */
.mk-sidebar .edd_purchase_submit_wrapper {
  margin: 14px 0 0 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Hide fallback no-JS duplicate submit button - ensures ONLY 1 button shows */
.mk-sidebar .edd_purchase_submit_wrapper input.edd-no-js,
.mk-sidebar .edd_purchase_submit_wrapper input[type="submit"].edd-no-js,
.mk-sidebar .edd_purchase_submit_wrapper input[type="submit"] {
  display: none !important;
}

/* Hide Read Excerpt button so only 1 Purchase button is displayed */
.mk-sidebar .mk-demo-btn {
  display: none !important;
}

/* The single Purchase Button */
.mk-sidebar .edd_purchase_submit_wrapper button.edd-add-to-cart,
.mk-sidebar .edd_purchase_submit_wrapper button.edd-submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 46px !important;
  padding: 0 20px !important;
  background: #2ae9e9 !important;
  color: #0d141b !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border: none !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  margin: 0 !important;
  line-height: 46px !important;
}

.mk-sidebar .edd_purchase_submit_wrapper button.edd-add-to-cart:hover,
.mk-sidebar .edd_purchase_submit_wrapper button.edd-submit:hover {
  background: #22d3d3 !important;
  color: #000000 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(42, 233, 233, 0.35) !important;
}

/* Hide Purchase button when hidden or when item is added to cart */
.mk-sidebar .edd_purchase_submit_wrapper button.edd-add-to-cart.wakonte-hidden,
.mk-sidebar .edd_purchase_submit_wrapper button.edd-add-to-cart[style*="display: none"],
.mk-sidebar .edd_purchase_submit_wrapper button.edd-add-to-cart[style*="display:none"],
.mk-sidebar .edd_purchase_submit_wrapper.has-checkout button.edd-add-to-cart {
  display: none !important;
}

/* Checkout Button when item is in cart */
.mk-sidebar .edd_purchase_submit_wrapper a.edd_go_to_checkout {
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 46px !important;
  padding: 0 20px !important;
  background: #2ae9e9 !important;
  color: #0d141b !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border: none !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  margin: 0 !important;
  line-height: 46px !important;
  text-align: center !important;
}

/* Show Checkout button once item is added to cart */
.mk-sidebar .edd_purchase_submit_wrapper a.edd_go_to_checkout.wakonte-visible,
.mk-sidebar .edd_purchase_submit_wrapper a.edd_go_to_checkout.is-visible,
.mk-sidebar .edd_purchase_submit_wrapper.has-checkout a.edd_go_to_checkout {
  display: flex !important;
}

.mk-sidebar .edd_purchase_submit_wrapper a.edd_go_to_checkout:hover {
  background: #22d3d3 !important;
  color: #000000 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(42, 233, 233, 0.35) !important;
}

/* ==========================================================================
   PART 3: SINGLE DOWNLOAD PAGE - COLUMN WIDTH ADJUSTMENT
   (Decrease Left Section, Increase Right Sidebar)
   ========================================================================== */

@media (min-width: 768px) {
  .single-download .mk-posts {
    width: 66% !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
  }
  .single-download .mk-sidebar {
    width: 34% !important;
    padding-left: 36px !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 1024px) {
  .single-download .mk-posts {
    width: 65% !important;
    padding-right: 50px !important;
  }
  .single-download .mk-sidebar {
    width: 35% !important;
    padding-left: 45px !important;
  }
}

/* ==========================================================================
   PART 4: DOWNLOADS ARCHIVE PAGE - FULL WIDTH (100% CONTAINER WIDTH)
   ========================================================================== */

.post-type-archive-download .mk-posts,
.tax-download_category .mk-posts,
.tax-download_tag .mk-posts {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 40px 0 60px !important;
  box-sizing: border-box !important;
}

.post-type-archive-download .mk-posts:after,
.tax-download_category .mk-posts:after,
.tax-download_tag .mk-posts:after {
  right: -9999px !important;
  left: -9999px !important;
}

.post-type-archive-download .mk-sidebar,
.tax-download_category .mk-sidebar,
.tax-download_tag .mk-sidebar {
  display: none !important;
  width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Spacing above cards grid (below search and sort bar) */
.post-type-archive-download .mk-sort,
.tax-download_category .mk-sort,
.tax-download_tag .mk-sort,
.author .mk-sort {
  margin-bottom: 32px !important;
}

/* Three-columns layout with space between cards and at bottom */
.post-type-archive-download .mk-portfolio .three-columns,
.tax-download_category .mk-portfolio .three-columns,
.tax-download_tag .mk-portfolio .three-columns,
.author .mk-portfolio .three-columns {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  width: 100% !important;
  row-gap: 36px !important;
  column-gap: 26px !important;
  margin-bottom: 40px !important;
}

.post-type-archive-download .mk-portfolio .three-columns .column,
.tax-download_category .mk-portfolio .three-columns .column,
.tax-download_tag .mk-portfolio .three-columns .column,
.author .mk-portfolio .three-columns .column {
  display: flex !important;
  flex-direction: column !important;
  float: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

@media (min-width: 640px) {
  .post-type-archive-download .mk-portfolio .three-columns .column,
  .tax-download_category .mk-portfolio .three-columns .column,
  .tax-download_tag .mk-portfolio .three-columns .column,
  .author .mk-portfolio .three-columns .column {
    width: calc((100% - 26px) / 2) !important;
    max-width: calc((100% - 26px) / 2) !important;
    flex: 0 0 calc((100% - 26px) / 2) !important;
  }
}

@media (min-width: 1024px) {
  .post-type-archive-download .mk-portfolio .three-columns .column,
  .tax-download_category .mk-portfolio .three-columns .column,
  .tax-download_tag .mk-portfolio .three-columns .column,
  .author .mk-portfolio .three-columns .column {
    width: calc((100% - (26px * 2)) / 3) !important;
    max-width: calc((100% - (26px * 2)) / 3) !important;
    flex: 0 0 calc((100% - (26px * 2)) / 3) !important;
  }
}

.post-type-archive-download .mk-portfolio .three-columns .column .edd_download_inner,
.tax-download_category .mk-portfolio .three-columns .column .edd_download_inner,
.tax-download_tag .mk-portfolio .three-columns .column .edd_download_inner,
.author .mk-portfolio .three-columns .column .edd_download_inner {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 1 auto !important;
  background: #ffffff !important;
  border-radius: 0px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.07) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.post-type-archive-download .mk-portfolio .three-columns .column .edd_download_inner:hover,
.tax-download_category .mk-portfolio .three-columns .column .edd_download_inner:hover,
.tax-download_tag .mk-portfolio .three-columns .column .edd_download_inner:hover,
.author .mk-portfolio .three-columns .column .edd_download_inner:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12) !important;
}

.post-type-archive-download .mk-portfolio .three-columns .column .mk-folio,
.tax-download_category .mk-portfolio .three-columns .column .mk-folio,
.tax-download_tag .mk-portfolio .three-columns .column .mk-folio,
.author .mk-portfolio .three-columns .column .mk-folio {
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.post-type-archive-download .mk-portfolio .three-columns .column .mk-folio img,
.tax-download_category .mk-portfolio .three-columns .column .mk-folio img,
.tax-download_tag .mk-portfolio .three-columns .column .mk-folio img,
.author .mk-portfolio .three-columns .column .mk-folio img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover !important;
}

.post-type-archive-download .mk-portfolio .three-columns .column .folio-text,
.tax-download_category .mk-portfolio .three-columns .column .folio-text,
.tax-download_tag .mk-portfolio .three-columns .column .folio-text,
.author .mk-portfolio .three-columns .column .folio-text {
  padding: 16px 14px 22px !important;
  background: #ffffff !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  border-bottom: none !important;
}

/* ==========================================================================
   PART 5: OTHER RETAILERS / STORE LINKS (BELOW PURCHASE BUTTON)
   ========================================================================== */

.wakonte-retailers-wrapper {
  margin-top: 22px !important;
  padding-top: 18px !important;
  border-top: 1px solid #e2e8f0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  clear: both !important;
}

.wakonte-retailers-title {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 12px !important;
  text-align: center !important;
}

.wakonte-retailers-title span {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  color: #64748b !important;
  position: relative !important;
  padding: 0 10px !important;
  background: transparent !important;
}

.wakonte-retailers-list,
.wakonte-retailers-wrapper .wakonte-retailers-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  height: auto !important;
}

.wakonte-retailer-item,
.wakonte-retailers-wrapper .wakonte-retailer-item,
.wakonte-retailers-list li.wakonte-retailer-item {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  list-style: none !important;
  float: none !important;
  display: block !important;
}

.wakonte-retailer-link {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 10px 14px !important;
  background: #f8fafc !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

.wakonte-retailer-link:hover {
  background: #ffffff !important;
  border-color: #2ae9e9 !important;
  box-shadow: 0 3px 12px rgba(42, 233, 233, 0.22) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

.wakonte-retailer-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  margin-right: 12px !important;
  flex-shrink: 0 !important;
  color: #0f172a !important;
}

.wakonte-retailer-icon svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
}

.wakonte-retailer-text {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  flex: 1 1 auto !important;
  text-align: left !important;
  line-height: 1.3 !important;
  letter-spacing: 0.2px !important;
}

.wakonte-retailer-link:hover .wakonte-retailer-text {
  color: #0f172a !important;
}

.wakonte-retailer-arrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #94a3b8 !important;
  flex-shrink: 0 !important;
  margin-left: 8px !important;
  transition: transform 0.2s ease, color 0.2s ease !important;
}

.wakonte-retailer-link:hover .wakonte-retailer-arrow {
  color: #0f766e !important;
  transform: translate(2px, -2px) !important;
}

