/* Uses the already first-declared presentation layer; no PDP/banner selectors. */
@layer pj-card-layout {
 .pjkb-card__media,.pjkb-feat__media,.pjkb-mini__media,.pjkb-buy__media {aspect-ratio:1!important;}
 .pj-card-portrait :is(.pjkb-card__media,.pjkb-feat__media,.pjkb-mini__media,.pjkb-buy__media) {aspect-ratio:4/5!important;}
 .pj-care-shop-cta__media {aspect-ratio:1!important;height:auto!important;}
 .pj-card-portrait .pj-care-shop-cta__media {aspect-ratio:4/5!important;}
 .pj-care-shop-cta__media img {width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;}
 .pjkb :is(.pjkb-card__img,.pjkb-feat__img),body.pjkb-guide-page :is(.pjkb-mini__img,.pjkb-buy__img) {object-fit:contain!important;object-position:center!important;}
 html:not([lang^="en"]) :is(.pj-lean-product-card,.pj-zh-product,.pjkb-card,.pj-care-shop-cta) :is(.pj-latin-name,.pj-zh-product__latin,.pjkb-card__latin,.pj-care-shop-cta__latin) {display:none!important;}
 html:not([lang^="en"]) .products .pj-lean-product-card__body {min-height:0!important;gap:0!important;display:flex!important;flex-direction:column!important;}
 html:not([lang^="en"]) .products .pj-lean-product-card__specs {min-height:0!important;margin-bottom:0!important;flex:0 0 auto!important;}
 html:not([lang^="en"]) .products .pj-lean-product-card__buy {margin-top:0!important;padding-top:0!important;gap:6px!important;flex:1 1 auto!important;}
 html:not([lang^="en"]) .products .pj-lean-product-card .price {margin-top:0!important;margin-bottom:0!important;}
 html:not([lang^="en"]) .products .pj-lean-product-card .wd-add-btn {margin-top:auto!important;padding-top:6px!important;}
 html:not([lang^="en"]) .pj-zh-product__specs {min-height:0!important;margin-bottom:0!important;}
 html:not([lang^="en"]) .pj-zh-product__buy {margin-top:0!important;padding-top:0!important;}
 .pj-direct-language {display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:44px!important;min-height:44px!important;white-space:nowrap!important;}
 .pj-direct-language:focus-visible {outline:2px solid currentColor;outline-offset:2px;}
 .pj-direct-language-item {list-style:none;}
 .whb-header .wd-header-wishlist .wd-tools-text {display:none!important;}
 body.pj-contact-ready :is(.plantjai-visit-badge,.wa__btn_popup) {display:none!important;}
 #pj-contact-entry {z-index:80;}
 #pj-contact-entry.pj-contact-floating {position:fixed;left:16px;bottom:var(--pj-contact-bottom,20px);}
 #pj-contact-entry.pj-contact-inline {position:static;padding:16px;}
 .pj-contact-launcher {min-height:44px;padding:8px 12px;border:1px solid #18271d;background:#f1eee4;color:#18271d;font-size:12px;letter-spacing:0;box-shadow:none;}
 #pj-contact-panel:not([open]) {display:none!important;}
 #pj-contact-panel {box-sizing:border-box;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:24px;border:1px solid #18271d;background:#f1eee4;color:#18271d;}
 #pj-contact-panel::backdrop {background:rgba(11,13,12,.48);}
 #pj-contact-panel h2 {margin:8px 40px 20px 0;font-size:24px;color:#18271d;}
 #pj-contact-panel a {display:flex;align-items:center;min-height:44px;margin-top:8px;padding:8px;border:1px solid #c9c4b8!important;background:#f1eee4!important;color:#272b2d!important;text-decoration:underline;font-size:16px;}
 #pj-contact-panel a:visited {color:#272b2d!important;}
 #pj-contact-panel a:hover {background:#e5e0d3!important;color:#272b2d!important;}
 #pj-contact-panel .pj-contact-close {position:absolute;top:4px;right:4px;width:44px;height:44px;padding:0;background:transparent;color:#18271d;border:0;font-size:26px;}
 :is(#pj-contact-panel,.pj-contact-toolbar,#pj-contact-entry) :is(button,a):focus-visible {outline:2px solid #18271d;outline-offset:3px;}
 body.pj-contact-obscured #pj-contact-entry.pj-contact-floating {visibility:hidden;}
 body:is(.pj-contact-obscured,.pj-contact-keyboard) .pj-contact-toolbar {display:none!important;}
 body.pj-contact-keyboard #pj-contact-entry.pj-contact-floating {visibility:hidden;}
 .products.wd-products {column-gap:clamp(12px,1.25vw,20px)!important;}
 body.woocommerce-shop {--pj-shop-grid-gap:clamp(28px,3vw,44px) clamp(12px,1.25vw,20px)!important;}
 body.home .pj-zh-products-rail {column-gap:clamp(12px,1.25vw,20px)!important;}
 body.pj-journal-hub .pj-site-footer__main {width:100%!important;max-width:1220px!important;margin-inline:auto!important;}
 body:has(.pj-care-wrap) .pj-care-wrap a {color:#18271d!important;text-decoration:underline!important;text-underline-offset:3px!important;}
 body:has(.pj-care-wrap) .pj-care-wrap a:visited {color:#43523f!important;}
 body:has(.pj-care-wrap) .pj-care-wrap a:hover {color:#0b0d0c!important;text-decoration-thickness:2px!important;}
 body:has(.pj-care-wrap) .pj-care-wrap .pj-care-btn {color:#0b0d0c!important;background:#c9ff3d!important;border-color:#0b0d0c!important;text-decoration:none!important;}
 body:has(.pj-care-wrap) .pj-care-wrap .pj-care-btn:hover {color:#c9ff3d!important;background:#0b0d0c!important;}
 body:has(.pj-care-wrap) .pj-care-wrap :is(a,button):focus-visible {outline:2px solid #0b0d0c!important;outline-offset:3px!important;}
 body:has(.pj-care-wrap) .pj-care-wrap :is(button:disabled,[aria-disabled="true"]) {color:#51574c!important;background:#f1eee4!important;cursor:not-allowed!important;}
 @media(min-width:1025px) {
  body:has(.pj-care-wrap) .wd-single-post-header {max-width:none!important;width:100%!important;}
  body:has(.pj-care-wrap) .wd-single-post-header h1 {max-width:none!important;width:100%!important;font-size:clamp(32px,2.6vw,42px)!important;line-height:1.25!important;}
 }
 @media(max-width:1024px) {
  #pj-contact-entry.pj-contact-floating {display:none!important;}
  .wd-toolbar:has(.pj-contact-toolbar)>div {width:auto!important;flex:1 1 0!important;min-width:0!important;}
 }
 @media(max-width:1024px) and (max-height:500px) {
  #pj-guide-hub.pj-guide-hub--large .pj-large-catalogue .pj-large-fit {position:sticky!important;background:var(--lx-bone)!important;z-index:20!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__head {position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls {display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__panel {display:none!important;grid-column:1/-1!important;overflow-y:auto!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__form.is-open .pj-large-fit__panel {display:grid!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__toggle {display:inline-flex!important;align-items:center!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__field--select {display:flex!important;align-items:center!important;gap:8px!important;}
 }
 @media(max-width:767px), (max-width:1024px) and (max-height:500px) {
  #pj-contact-entry.pj-contact-floating {display:none!important;}
  .wd-toolbar:has(.pj-contact-toolbar)>div {width:auto!important;flex:1 1 0!important;min-width:0!important;}
  .pj-contact-toolbar button {display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;width:100%;padding:0;border:0;background:transparent;color:#18271d;font-size:10px;}
  .pj-contact-toolbar button::before {content:'ⓘ';font-size:18px;line-height:20px;}
  body:has(.pj-guide-hub--large) .pj-contact-toolbar {display:none!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-catalogue .pj-large-fit {top:var(--pj-ui-top,0px)!important;padding:4px 0!important;transition:none!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls {gap:4px 8px!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__status {margin:2px 0 0!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__head {margin:0!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__form>p:empty,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls>p:empty,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls>br {display:none!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls::before,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__controls::after {content:none!important;display:none!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__field--select {margin:0!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__toggle,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit select,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__reset,
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__choices span {min-height:44px!important;border-radius:0!important;font-size:12px!important;letter-spacing:.02em!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__toggle {padding:0 12px!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__choices {display:flex!important;flex-wrap:nowrap!important;gap:0 8px!important;overflow-x:auto!important;min-width:0!important;max-width:100%!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__choices label {flex:0 0 auto!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__choices span {padding:0 6px!important;white-space:nowrap!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__panel .pj-large-fit__label {flex-basis:76px!important;width:76px!important;padding-right:8px!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__panel .pj-large-fit__field {min-width:0!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-large-fit__panel {max-height:var(--pj-ui-panel-height,50dvh)!important;}
  #pj-guide-hub.pj-guide-hub--large .pj-guide-hub__sticky {bottom:calc(var(--pj-ui-visual-bottom,0px) + max(var(--pj-ui-toolbar,0px),env(safe-area-inset-bottom,0px)))!important;}
  #pj-guide-hub.pj-guide-hub--large.pj-ui-keyboard .pj-guide-hub__sticky {display:none!important;}
  #pj-guide-hub.pj-guide-hub--large #pj-guide-products {scroll-margin-top:var(--pj-ui-scroll-top,100px)!important;}
 }
}

/* Approved hero v3: shared frame prevents slide-to-slide layout jumps. */
@layer pj-card-layout {
 html body.home.pj-home-zh-lab .pj-home-hero__photo:is([data-hero-slide="home"],[data-hero-slide="specimen"]) img {object-fit:cover!important;object-position:100% 60%!important;}
 @media(min-width:1025px) {
  html[lang] body.home.pj-home-zh-lab :is(.pj-home-hero,.pj-home-hero__copy,.pj-home-hero__visual,.pj-home-hero__art) {height:max(570px,38.55vw)!important;min-height:max(570px,38.55vw)!important;max-height:none!important;}
 }
}
