/**
 * Imposter Product System — product tabs UI (El póster / Detalles)
 * Scoped to .imposter-ps-tabs-v2 so rollback is a single body class / option.
 */

body.imposter-ps-tabs-v2 {
  --im-ps-ink: #04200f;
  --im-ps-muted: #576d80;
  --im-ps-line: rgba(4, 32, 15, 0.12);
  --im-ps-green: #18b26b;
  --im-ps-soft: rgba(24, 178, 107, 0.08);
  --im-ps-font: Inter, "Inter var", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* —— Hide legacy BeBuilder description + WC attributes table (kept in DB, not rendered as source) —— */
body.imposter-ps-tabs-v2 #tab-description > .mfn-builder-content,
body.imposter-ps-tabs-v2 #tab-description > .mfn-default-content-buider,
body.imposter-ps-tabs-v2 #tab-description .mfn-default-content-buider,
body.imposter-ps-tabs-v2 #tab-description > .the_content.no_content,
body.imposter-ps-tabs-v2 #tab-additional_information .shop_attributes,
body.imposter-ps-tabs-v2 #tab-additional_information > .section_wrapper > .woocommerce-product-attributes {
  display: none !important;
}

/* Empty reviews BeTheme module — no dead space */
body.imposter-ps-tabs-v2 .mcb-item-product_reviews-inner:empty {
  display: none !important;
}
body.imposter-ps-tabs-v2 .column_product_reviews:has(.mcb-item-product_reviews-inner:empty) {
  display: none !important;
}
body.imposter-ps-tabs-v2 .mfn-default-section:has(.mcb-item-product_reviews-inner:empty):not(:has(.mfn-related)) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

/* —— Tab navigation (beat BeTheme pill styles) —— */
body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav,
body.imposter-ps-tabs-v2 ul.tabs.wc-tabs {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0 28px;
  align-items: flex-end;
  justify-content: flex-start !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--im-ps-line) !important;
  background: transparent !important;
  list-style: none !important;
  font-family: var(--im-ps-font);
}

body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li,
body.imposter-ps-tabs-v2 ul.tabs.wc-tabs li {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  float: none !important;
}

body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li a,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li a,
body.imposter-ps-tabs-v2 ul.tabs.wc-tabs li a {
  display: inline-flex !important;
  align-items: center;
  margin: 0 !important;
  padding: 12px 2px 14px !important;
  border: 0 !important;
  border-style: solid !important;
  border-width: 0 0 2px 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--im-ps-muted) !important;
  font-family: var(--im-ps-font) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: none !important;
  transition: color 160ms ease, border-color 160ms ease;
}

body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li a:hover,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li a:hover,
body.imposter-ps-tabs-v2 ul.tabs.wc-tabs li a:hover {
  color: var(--im-ps-ink) !important;
  background: transparent !important;
}

body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li.active a,
body.imposter-ps-tabs-v2.theme-betheme .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li a.active,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li.active a,
body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li a.active,
body.imposter-ps-tabs-v2 ul.tabs.wc-tabs li.active a {
  color: var(--im-ps-ink) !important;
  border-color: transparent !important;
  border-bottom-color: var(--im-ps-green) !important;
  background: transparent !important;
  background-color: transparent !important;
  font-weight: 600 !important;
}

body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-content,
body.imposter-ps-tabs-v2 .woocommerce-Tabs-panel {
  padding: 8px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-family: var(--im-ps-font);
}

/* —— El póster —— */
.imposter-ps-poster {
  max-width: 920px;
  margin: 0 auto;
  color: var(--im-ps-ink, #04200f);
  font-family: var(--im-ps-font, Inter, system-ui, sans-serif);
}

.imposter-ps-poster__banner,
.imposter-ps-poster__media {
  margin: 0 0 28px;
  overflow: hidden;
}

.imposter-ps-poster__banner img,
.imposter-ps-poster__media img {
  display: block;
  width: 100%;
  height: auto;
}

.imposter-ps-poster__title {
  margin: 0 0 14px !important;
  font-size: clamp(28px, 4vw, 40px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  font-weight: 650 !important;
  color: var(--im-ps-ink) !important;
}

.imposter-ps-poster__subtitle {
  margin: 0 0 12px !important;
  font-size: clamp(20px, 2.4vw, 26px) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
  font-weight: 600 !important;
  color: var(--im-ps-ink) !important;
}

.imposter-ps-poster__lead,
.imposter-ps-poster__text {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: var(--im-ps-muted);
  max-width: 54ch;
}

.imposter-ps-poster__block {
  margin: 0 0 40px;
}

.imposter-ps-poster__split {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 28px 36px;
  align-items: center;
  margin: 0 0 44px;
}

.imposter-ps-poster__split--gift {
  grid-template-columns: 1fr 0.72fr;
}

.imposter-ps-poster__media--portrait {
  max-width: 320px;
  margin-left: auto;
  margin-right: 0;
}

/* —— Detalles —— */
.imposter-ps-details {
  max-width: 920px;
  color: var(--im-ps-ink, #04200f);
  font-family: var(--im-ps-font, Inter, system-ui, sans-serif);
}

.imposter-ps-details__facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px 40px;
  margin: 0 0 20px;
  padding: 0;
  border-top: 1px solid var(--im-ps-line);
}

.imposter-ps-details__fact {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: 20px 0 8px;
}

.imposter-ps-details__fact-label {
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--im-ps-muted);
}

.imposter-ps-details__fact-value {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.4;
  color: var(--im-ps-ink);
}

.imposter-ps-details__note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 36px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--im-ps-muted);
}

.imposter-ps-details__note-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  margin-top: 1px;
  border: 1px solid rgba(87, 109, 128, 0.45);
  border-radius: 50%;
  font-size: 9px;
  font-weight: 600;
  font-style: normal;
  line-height: 1;
  color: var(--im-ps-muted);
  text-transform: lowercase;
}

.imposter-ps-details__note-text {
  flex: 1 1 auto;
  min-width: 0;
}

.imposter-ps-details__make {
  padding-top: 8px;
  border-top: 1px solid var(--im-ps-line);
}

.imposter-ps-details__make-title {
  margin: 0 0 6px !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  color: var(--im-ps-ink) !important;
}

.imposter-ps-details__make-lead {
  margin: 0 0 18px;
  font-size: 13.5px;
  line-height: 1.45;
  color: var(--im-ps-muted);
}

.imposter-ps-details__make-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 48px;
}

.imposter-ps-details__make-item strong {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--im-ps-ink);
}

.imposter-ps-details__make-item p {
  margin: 0;
  max-width: 36ch;
  font-size: 14px;
  line-height: 1.5;
  color: var(--im-ps-muted);
}

.imposter-ps-details__specs-list {
  list-style: none;
  margin: 28px 0 0;
  padding: 0;
  border-top: 1px solid var(--im-ps-line);
}

.imposter-ps-details__specs-list li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--im-ps-line);
  font-size: 14px;
}

.imposter-ps-details__specs-list span {
  color: var(--im-ps-muted);
}

.imposter-ps-details__specs-list strong {
  font-weight: 600;
  color: var(--im-ps-ink);
  text-align: right;
}

/* —— Related spacing guard (don't collide) —— */
body.imposter-ps-tabs-v2 section.mfn-related {
  clear: both;
}

/* —— Mobile —— */
@media (max-width: 767px) {
  body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav,
  body.imposter-ps-tabs-v2 ul.tabs.wc-tabs {
    gap: 0 18px;
    margin-bottom: 22px !important;
  }

  body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav li a,
  body.imposter-ps-tabs-v2 ul.tabs.wc-tabs li a {
    font-size: 14px !important;
    padding: 10px 0 12px !important;
    white-space: nowrap;
  }

  .imposter-ps-poster__split,
  .imposter-ps-poster__split--gift {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 32px;
  }

  .imposter-ps-poster__media--portrait {
    max-width: 240px;
    margin-left: 0;
  }

  .imposter-ps-poster__title {
    font-size: 26px !important;
  }

  .imposter-ps-details__facts {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .imposter-ps-details__fact {
    padding: 14px 0;
    border-bottom: 1px solid var(--im-ps-line);
  }

  .imposter-ps-details__fact:last-child {
    border-bottom: 0;
  }

  .imposter-ps-details__fact-value {
    font-size: 15px;
  }

  .imposter-ps-details__note {
    margin-bottom: 28px;
  }

  .imposter-ps-details__make-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

@media (max-width: 380px) {
  body.imposter-ps-tabs-v2 .mfn-woocommerce-tabs-nav,
  body.imposter-ps-tabs-v2 ul.tabs.wc-tabs {
    gap: 0 14px;
  }
}
