/* MarketExp Theme Engine V3 — component visual bindings. No layout ownership. */
/* Canonical Theme Engine layer stack — the only owner of host/layer geometry. */
.me-theme-host{position:relative;isolation:isolate;overflow:hidden;color:var(--me-text)}
.me-theme-host>.me-theme-layer{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;pointer-events:none;overflow:hidden}
.me-theme-host>.me-theme-texture{z-index:0;background-image:var(--me-texture-layer);background-size:var(--me-texture-size);background-position:var(--me-texture-position);background-repeat:var(--me-texture-repeat);opacity:var(--me-texture-opacity);mix-blend-mode:var(--me-texture-blend,normal)}
.me-theme-host>.me-theme-overlay{z-index:1;background-image:var(--me-overlay-layer);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.55}
.me-theme-host>.me-theme-ambient-layer{z-index:2}
.me-theme-host>.me-theme-content-layer,.me-theme-host>:not(.me-theme-layer):not(.me-theme-ambient-layer){position:relative;z-index:4}

/* Canonical Theme Engine layer stack — the only owner of host/layer geometry. */

.me-theme-host>.me-theme-layer{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;pointer-events:none;overflow:hidden}


.me-theme-host>.me-theme-content-layer,.me-theme-host>:not(.me-theme-layer):not(.me-theme-ambient-layer){position:relative;z-index:4}


body.me-theme-engine-v3 .wrap.marketexp-wrap,body.me-theme-engine-v3 .marketexp-admin-wrap{color:var(--me-admin-text,var(--me-text))}
/* Generic MarketExp visual hosts. New modules receive themes by using .me-ui-card or one of these established classes. */
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box){
  background:var(--me-admin-card-bg,var(--me-surface));color:var(--me-admin-text,var(--me-text));border-color:var(--me-border);border-radius:var(--me-radius);box-shadow:var(--me-soft-shadow)
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) :is(p,li,td,label,strong,small,em,b,summary,details){color:var(--me-admin-text,var(--me-text))}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card) :is(.description,p.description,.muted,small){color:var(--me-admin-muted,var(--me-muted))}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card) :is(h1,h2,h3,h4){color:var(--me-admin-heading,var(--me-accent-2));-webkit-text-fill-color:currentColor}
body.me-theme-engine-v3 .me-settings-card :is(input[type=text],input[type=number],input[type=email],input[type=date],input[type=url],input[type=password],select,textarea){background:var(--me-admin-input-bg);color:var(--me-admin-input-text);border-color:var(--me-admin-input-border);border-radius:calc(var(--me-radius)*.55)}
body.me-theme-engine-v3 .me-settings-card :is(input,textarea)::placeholder{color:var(--me-admin-input-placeholder)}
body.me-theme-engine-v3 .me-settings-card :is(input,select,textarea):focus{border-color:var(--me-accent);box-shadow:var(--me-admin-input-focus-shadow);outline:0}
body.me-theme-engine-v3 .me-settings-card :is(table,thead,tbody,tr,td,th){border-color:var(--me-border)}
body.me-theme-engine-v3 .me-settings-card thead,body.me-theme-engine-v3 .me-settings-card th{color:var(--me-table-head-text,var(--me-text));background:transparent}
body.me-theme-engine-v3 .me-settings-card tbody tr:hover{background:var(--me-table-row-hover)}
/* Buttons: one visual engine for admin, recovery, cart and campaigns. */
body.me-theme-engine-v3 :is(.button,.button-primary,.button-secondary,.me-sticky-btn,.me-recovery-modal__button,.me-cart-modal-cta,.me-ui-button){border-color:color-mix(in srgb,var(--me-accent) 55%,var(--me-border))!important;box-shadow:0 8px 22px color-mix(in srgb,var(--me-accent) 20%,transparent)!important}
body.me-theme-engine-v3 :is(.button,.button-primary,.button-secondary,.me-sticky-btn,.me-recovery-modal__button,.me-cart-modal-cta,.me-ui-button):hover{border-color:var(--me-accent-2)!important}
/* Theme catalog. */


body.me-theme-engine-v3 .me-theme-card__name{color:var(--me-text)}

/* Frontend themed surfaces. Wrapper stays transparent; only the actual card is painted. */
.me-recovery-modal.me-theme-engine-v3{background:transparent!important}
.me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__card,.me-cart-modal.me-theme-engine-v3 .me-cart-modal-inner,.me-cart-modal-inner.me-theme-engine-v3,.me-tt-popup.me-theme-engine-v3{
  background:var(--me-tooltip-surface,var(--me-surface))!important;color:var(--me-tooltip-text,var(--me-text))!important;border-color:var(--me-tooltip-border,var(--me-border))!important;border-radius:var(--me-radius-lg)!important;box-shadow:var(--me-tooltip-shadow,var(--me-shadow))!important
}
.me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__card{background:var(--me-surface)!important}
.me-recovery-modal.me-theme-engine-v3 :is(.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount),.me-cart-modal.me-theme-engine-v3 .me-cart-modal-title{background:var(--me-gradient-text)!important;background-size:220% 100%!important;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}

.me-tt-popup.me-theme-engine-v3 .me-tt-row:hover{background:color-mix(in srgb,var(--me-accent) 14%,transparent)!important;border-color:color-mix(in srgb,var(--me-accent) 38%,transparent)!important}
/* Real controls: full hit area, no pseudo click target. */
.me-recovery-modal.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later),.me-cart-modal.me-theme-engine-v3 :is(.me-cart-modal-close,.me-cart-modal-snooze){width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;background:var(--me-button-bg)!important;color:var(--me-button-text)!important;border:1px solid color-mix(in srgb,var(--me-accent) 55%,var(--me-border))!important}
/* Notices and sticky save. */
body.me-theme-engine-v3 .notice-success{background:var(--me-notice-success-bg)!important;color:var(--me-notice-success-text)!important;border-left-color:var(--me-notice-success-border)!important}
body.me-theme-engine-v3 .notice-warning{background:var(--me-notice-warning-bg)!important;color:var(--me-notice-warning-text)!important;border-left-color:var(--me-notice-warning-border)!important}
body.me-theme-engine-v3 .notice-error{background:var(--me-notice-error-bg)!important;color:var(--me-notice-error-text)!important;border-left-color:var(--me-notice-error-border)!important}
body.me-theme-engine-v3 .me-sticky-save-bar{background:var(--me-admin-sticky-bg)!important;color:var(--me-admin-sticky-text)!important;border-color:var(--me-border)!important}
/* Glass is a renderer mode, not a later patch. */
.me-theme-glass.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box),
.me-theme-glass.me-theme-engine-v3 .me-recovery-modal__card,
.me-theme-glass.me-theme-engine-v3 .me-cart-modal-inner,
.me-tt-popup.me-theme-glass.me-theme-engine-v3{
  background:color-mix(in srgb,var(--me-surface) 82%,transparent)!important;
  backdrop-filter:blur(18px) saturate(165%)!important;-webkit-backdrop-filter:blur(18px) saturate(165%)!important;
  border-color:color-mix(in srgb,var(--me-accent-2) 30%,rgba(255,255,255,.22))!important;
  box-shadow:var(--me-shadow),inset 0 1px 0 rgba(255,255,255,.22)!important
}
/* Strong frontend authority over legacy inline visual declarations. */
#me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__card{background:var(--me-surface)!important;color:var(--me-text)!important;border-color:var(--me-border)!important;border-radius:var(--me-radius-lg)!important;box-shadow:var(--me-shadow)!important}
#me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__item{background:var(--me-offer-bg)!important;border-color:var(--me-border)!important;color:var(--me-text)!important}
#me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__offer-box{background:var(--me-offer-bg)!important;border-color:color-mix(in srgb,var(--me-accent) 70%,var(--me-accent-2))!important}
#me-recovery-modal.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later){top:auto;right:auto;position:absolute!important}
#me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__close{top:14px!important;right:14px!important}
#me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__later{top:64px!important;right:14px!important}
/* Winter is defined by its manifest; these selectors only express behavior that tokens cannot. */
.me-theme-winter.me-theme-engine-v3 :is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup){color:#fff!important}
.me-theme-winter.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later,.me-cart-modal-close,.me-cart-modal-snooze){background:var(--me-button-bg)!important;color:var(--me-button-text)!important}
/* Contrast Resolver safety net. It activates only when computed contrast is poor. */

.me-theme-host.me-contrast-guard :is(p,li,td,label,small,span:not(.dashicons):not(.spinner)){color:var(--me-safe-text)!important}


body.me-theme-engine-v3 #wpcontent,
body.me-theme-engine-v3 #wpbody-content,
body.me-theme-engine-v3 .wrap.marketexp-admin,
body.me-theme-engine-v3 .marketexp-wrap{
  color:var(--me-admin-text,var(--me-text));
}
body.me-theme-engine-v3 #wpbody-content{background:var(--me-admin-page-bg,var(--me-background,#f6f7f7));}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box){
  background-color:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-accent,var(--me-text))!important;
  border-color:var(--me-border)!important;
  box-shadow:var(--me-soft-shadow)!important;
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) :is(p,li,td,label,small,span:not(.dashicons):not(.spinner)){

}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) :is(.description,p.description,.muted,small){
  color:var(--me-admin-muted,var(--me-muted))!important;
}
body.me-theme-engine-v3 .me-theme-catalog{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;gap:14px!important;align-items:stretch!important;
}
body.me-theme-engine-v3 .me-theme-card{overflow:hidden;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:190px!important;padding:10px!important;display:flex!important;flex-direction:column!important;gap:8px!important;text-align:left!important;background:var(--me-admin-card-bg,var(--me-surface))!important;color:var(--me-text)!important;border:1px solid var(--me-border)!important;border-radius:16px!important;}

body.me-theme-engine-v3 .me-theme-card__thumb{display:block!important;width:100%!important;aspect-ratio:16/9!important;min-height:0!important;overflow:hidden!important;border-radius:11px!important;background:color-mix(in srgb,var(--me-accent) 12%,var(--me-admin-card-bg,var(--me-surface)))!important;}
body.me-theme-engine-v3 .me-theme-card__thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
body.me-theme-engine-v3 .me-theme-card__meta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;}
body.me-theme-engine-v3 .me-theme-card__desc{color:var(--me-muted);font-size:12px!important;line-height:1.35!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}

body.me-theme-engine-v3 .me-theme-card.is-selected{border-color:var(--me-accent)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--me-accent) 42%,transparent),0 12px 32px color-mix(in srgb,var(--me-accent-2) 20%,transparent)!important;transform:translateY(-2px);animation:meActiveThemeCard 2.4s ease-in-out infinite!important;}

@keyframes meActiveThemeCard{0%,100%{box-shadow:0 0 0 2px color-mix(in srgb,var(--me-accent) 48%,transparent),0 10px 28px color-mix(in srgb,var(--me-accent-2) 16%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--me-accent-2) 58%,transparent),0 14px 38px color-mix(in srgb,var(--me-accent) 28%,transparent)}}
/* Every visible control owns its complete hit box.
   NOTE: previously required .me-recovery-modal.me-theme-engine-v3 (both
   classes on the SAME element) and .me-cart-modal-close/.me-cart-modal-snooze
   (class names that only exist in the Theme Studio's mock preview scene --
   the real cart modal uses #me-cart-modal-close, an ID). Neither matched real
   production markup for the cart modal, so its close button could end up
   under the ambient effects layer. Using a descendant combinator from
   body.me-theme-engine-v3 and including the real IDs fixes both. */
body.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later,#me-cart-modal-close,.me-cart-modal-close,.me-cart-modal-snooze,.me-cart-modal-dismiss){
  pointer-events:auto!important;cursor:pointer!important;z-index:2147483001!important;
}
body.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later,#me-cart-modal-close,.me-cart-modal-close,.me-cart-modal-snooze,.me-cart-modal-dismiss)::before,
body.me-theme-engine-v3 :is(.me-recovery-modal__close,.me-recovery-modal__later,#me-cart-modal-close,.me-cart-modal-close,.me-cart-modal-snooze,.me-cart-modal-dismiss)::after{pointer-events:none!important;}

/* Theme Engine V3.1 — form control authority + automatic contrast hooks. */
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box)
:is(input[type="text"],input[type="number"],input[type="email"],input[type="date"],input[type="datetime-local"],input[type="time"],input[type="url"],input[type="password"],input[type="search"],input[type="tel"],select,textarea){
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;
  background-color:var(--me-control-bg,var(--me-admin-input-bg))!important;
  color:var(--me-control-text,var(--me-admin-input-text))!important;
  -webkit-text-fill-color:var(--me-control-text,var(--me-admin-input-text))!important;
  border-color:var(--me-control-border,var(--me-admin-input-border))!important;
  caret-color:var(--me-control-caret,var(--me-accent))!important;
  box-shadow:none;
  color-scheme:var(--me-control-color-scheme,normal);
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box)
:is(input,textarea)::placeholder{
  color:var(--me-control-placeholder,var(--me-admin-input-placeholder))!important;
  -webkit-text-fill-color:var(--me-control-placeholder,var(--me-admin-input-placeholder))!important;
  opacity:1!important;
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box)
:is(input,select,textarea):focus{
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;
  color:var(--me-control-text,var(--me-admin-input-text))!important;
  -webkit-text-fill-color:var(--me-control-text,var(--me-admin-input-text))!important;
  border-color:var(--me-accent)!important;
  box-shadow:var(--me-admin-input-focus-shadow)!important;
}
body.me-theme-engine-v3 select option{
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;
  color:var(--me-control-text,var(--me-admin-input-text))!important;
}
body.me-theme-engine-v3 .me-auto-control-contrast{
  --me-admin-input-bg:var(--me-control-bg)!important;
  --me-admin-input-text:var(--me-control-text)!important;
  --me-admin-input-placeholder:var(--me-control-placeholder)!important;
  --me-admin-input-border:var(--me-control-border)!important;
}


.me-theme-host :is(p,li,td,th,label,small,span:not(.dashicons):not(.spinner),strong,em,b,code,pre,summary,details){color:inherit}
.me-theme-host.me-contrast-guard{color:var(--me-safe-text)!important;}

.me-theme-host.me-contrast-guard :is(p,li,td,th,label,small,span:not(.dashicons):not(.spinner),strong,em,b,code,pre,summary,details){color:var(--me-safe-text)!important;-webkit-text-fill-color:var(--me-safe-text)!important}
.me-theme-host.me-contrast-guard :is(.description,p.description,.muted,small){color:var(--me-safe-muted)!important;-webkit-text-fill-color:var(--me-safe-muted)!important;}

.me-theme-host :is(.me-ui-gradient-text,.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount,.me-cart-modal-title){-webkit-text-fill-color:transparent!important}


body.me-theme-engine-v3 :is(.me-sticky-bar,.me-sticky-save-bar,#me-sticky-bar){
  background:var(--me-sticky-safe-bg,var(--me-admin-sticky-bg,var(--me-admin-card-bg,var(--me-surface))))!important;
  color:var(--me-sticky-safe-text,var(--me-admin-sticky-text,var(--me-text)))!important;
  border-color:var(--me-sticky-safe-border,var(--me-border))!important;
}
body.me-theme-engine-v3 :is(.me-sticky-bar,.me-sticky-save-bar,#me-sticky-bar) :is(.me-sticky-label,.description,p,span,strong,small){
  color:var(--me-sticky-safe-text,var(--me-admin-sticky-text,var(--me-text)))!important;
  -webkit-text-fill-color:var(--me-sticky-safe-text,var(--me-admin-sticky-text,var(--me-text)))!important;
}


/* Theme Studio and live catalog */
.me-theme-studio-toolbar{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.me-studio-effects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.me-theme-studio label{display:grid;gap:6px}.me-theme-studio-preview .me-ui-card{padding:28px;min-height:210px}.me-theme-card.me-theme-host{background:var(--me-surface)!important;color:var(--me-text)!important;border-color:var(--me-border)!important}.me-theme-card.me-theme-host .me-theme-card__name{color:var(--me-text)!important}.me-theme-card.me-theme-host .me-theme-card__desc{color:var(--me-muted)!important}


.me-theme-studio.me-theme-host{background:var(--me-admin-page-bg,var(--me-background))!important;color:var(--me-text)!important;padding:22px!important;border-radius:var(--me-radius-lg)!important;min-height:calc(100vh - 80px)}
.me-theme-studio .me-settings-card{padding:20px;background:var(--me-admin-card-bg,var(--me-surface))!important;color:var(--me-text)!important;border:1px solid var(--me-border)!important;overflow:hidden!important;}

.me-theme-studio .me-settings-card :is(h1,h2,h3,h4,p,label,span,small,strong,dt,dd,code){color:inherit}
.me-theme-studio-debug dl{display:grid;grid-template-columns:130px 1fr;gap:8px 12px;margin:0}.me-theme-studio-debug dt{font-weight:700;color:var(--me-accent)!important}.me-theme-studio-debug dd{margin:0;overflow-wrap:anywhere}

body.me-theme-engine-v3 .me-theme-card.me-theme-host>.me-theme-texture{display:block!important;visibility:visible!important;opacity:var(--me-texture-opacity,.28)!important}
body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__thumb{background:color-mix(in srgb,var(--me-surface) 86%,var(--me-accent) 14%)!important;color:var(--me-text)!important;border:1px solid color-mix(in srgb,var(--me-accent) 35%,var(--me-border))!important}
body.me-theme-engine-v3 .me-theme-card.me-theme-host :is(.me-theme-card__name,.me-theme-card__desc){-webkit-text-fill-color:currentColor!important}


body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__meta,
body.me-theme-engine-v3 .me-theme-card.me-theme-host>.me-theme-card__name,
body.me-theme-engine-v3 .me-theme-card.me-theme-host>.me-theme-card__desc{position:relative!important;z-index:5!important;background:color-mix(in srgb,var(--me-surface) 90%,#000 10%)!important;padding-inline:10px!important}


.me-theme-studio-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(360px,430px)!important;align-items:start!important;}

.me-theme-studio-grid>.me-theme-studio-preview{grid-column:2!important;grid-row:1 / span 20!important;position:sticky!important;top:48px!important;max-height:calc(100vh - 70px)!important;overflow:auto!important;z-index:20!important}
.me-theme-studio-grid>.me-settings-card:not(.me-theme-studio-preview){grid-column:1!important}
.me-studio-preview-stack{display:grid;gap:14px}.me-studio-preview-stack>.me-ui-card{min-height:0!important;padding:18px!important;overflow:hidden!important}.me-studio-preview-modal .me-recovery-modal__discount{display:block;font-size:30px;font-weight:900;margin:16px 0}.me-studio-preview-tooltip .me-tt-row{display:flex;justify-content:space-between;padding:8px 10px;border-radius:9px}.me-studio-preview-tooltip .me-tt-row:hover{background:color-mix(in srgb,var(--me-accent) 14%,transparent)}
@media (max-width:1100px){.me-theme-studio-grid{grid-template-columns:1fr!important}.me-theme-studio-grid>.me-settings-card,.me-theme-studio-grid>.me-theme-studio-preview{grid-column:1!important;grid-row:auto!important}.me-theme-studio-grid>.me-theme-studio-preview{position:relative!important;top:auto!important;max-height:none!important}}


/* 26.7.184 — Admin visual coverage and nested surface normalization.
 * Legacy modules may still carry white backgrounds. Inside MarketExp admin,
 * visual containers inherit theme tokens while layout rules remain untouched. */
body.me-theme-engine-v3 :is(.marketexp-admin-wrap,.marketexp-wrap,.wrap.marketexp-admin) :is(
  .form-table,.widefat,.wp-list-table,
  .me-membership-tier-row,.me-tier-row,.me-membership-row,.me-recovery-offer-row,
  .me-badge-layout-preview,.me-badge-position-grid,.me-badge-settings-grid,
  .me-field-row,.me-option-row,.me-setting-row,.me-repeatable-row,.me-repeater-row,
  .me-subcard,.me-inner-card,.me-section-box,.me-preview-box,
  [class*="-panel"],[class*="-box"],[class*="-card"]
){
  --me-nested-surface:color-mix(in srgb,var(--me-admin-card-bg,var(--me-surface)) 88%,var(--me-background) 12%);
  border-color:var(--me-border)!important;
}
body.me-theme-engine-v3 :is(.marketexp-admin-wrap,.marketexp-wrap,.wrap.marketexp-admin) :is(
  .form-table>tbody>tr,.widefat>tbody>tr,.wp-list-table>tbody>tr,
  .me-membership-tier-row,.me-tier-row,.me-membership-row,.me-recovery-offer-row,
  .me-badge-layout-preview,.me-badge-position-grid,
  .me-field-row,.me-option-row,.me-setting-row,.me-repeatable-row,.me-repeater-row,
  .me-subcard,.me-inner-card,.me-section-box,.me-preview-box
){
  background-color:var(--me-nested-surface)!important;
  color:var(--me-safe-text,var(--me-admin-text,var(--me-text)))!important;
  -webkit-text-fill-color:currentColor;
}
body.me-theme-engine-v3 :is(.marketexp-admin-wrap,.marketexp-wrap,.wrap.marketexp-admin) :is(
  .form-table>tbody>tr,.widefat>tbody>tr,.wp-list-table>tbody>tr,
  .me-membership-tier-row,.me-tier-row,.me-membership-row,.me-recovery-offer-row,
  .me-field-row,.me-option-row,.me-setting-row,.me-repeatable-row,.me-repeater-row
) :is(td,th,label,p,span:not(.dashicons):not(.spinner),small,strong,em,b){

  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 :is(.marketexp-admin-wrap,.marketexp-wrap,.wrap.marketexp-admin) :is(.description,p.description,.muted,.help,.hint){
  color:var(--me-safe-muted,var(--me-admin-muted,var(--me-muted)))!important;
  -webkit-text-fill-color:var(--me-safe-text)!important;
}
/* Preserve usable form controls; their contrast is resolved by the engine. */
body.me-theme-engine-v3 :is(.marketexp-admin-wrap,.marketexp-wrap,.wrap.marketexp-admin) :is(input,select,textarea,option){

  border-color:var(--me-control-border,var(--me-admin-input-border))!important;
}
/* Dedicated modal theme contexts own their complete manifest on frontend. */
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime],
:is(.me-recovery-modal,.me-cart-modal)[data-me-theme-runtime] :is(.me-recovery-modal__card,.me-cart-modal-inner){
  color:var(--me-safe-text,var(--me-text));
}

/* 26.7.185 — Visual Core admin authority.
 * Admin components own layout; Theme Engine owns every visual value.
 * This block intentionally loads last and neutralizes legacy white surfaces. */
body.me-theme-engine-v3{background-color:var(--me-admin-page-bg);--me-admin-surface-0:var(--me-admin-page-bg,var(--me-background));--me-admin-surface-1:var(--me-admin-card-bg,var(--me-surface));--me-admin-surface-2:color-mix(in srgb,var(--me-admin-card-bg,var(--me-surface)) 91%,var(--me-background) 9%);--me-admin-surface-3:color-mix(in srgb,var(--me-admin-card-bg,var(--me-surface)) 84%,var(--me-accent) 16%);--me-admin-line:color-mix(in srgb,var(--me-border) 82%,var(--me-accent) 18%);}

body.me-theme-engine-v3 #wpbody-content,
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)){
  background-color:var(--me-admin-surface-0)!important;
  color:var(--me-safe-text,var(--me-admin-text,var(--me-text)))!important;
}
/* First-level MarketExp visual containers. */
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  .me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,
  .postbox,.stuffbox,.card,.notice,.me-section,.me-section-card,.me-section-box,.me-inner-card,.me-subcard
){
  background-color:var(--me-admin-surface-1)!important;
  border-color:var(--me-admin-line)!important;
}
/* Tables, grids, repeaters, option rows and previews. */
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  table,thead,tbody,tfoot,tr,td,th,
  .form-table,.widefat,.wp-list-table,
  fieldset,details,summary,
  .me-grid,.me-settings-grid,.me-form-grid,.me-admin-grid,.me-badge-settings-grid,.me-badge-position-grid,
  .me-row,.me-field-row,.me-option-row,.me-setting-row,.me-repeatable-row,.me-repeater-row,
  .me-membership-tier-row,.me-tier-row,.me-membership-row,.me-recovery-offer-row,
  .me-preview,.me-preview-box,.me-badge-layout-preview,.me-icon-preview,.me-control-group
){
  border-color:var(--me-admin-line)!important;
  border-radius: 0px!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  .form-table>tbody>tr,.widefat>tbody>tr,.wp-list-table>tbody>tr,
  .me-row,.me-field-row,.me-option-row,.me-setting-row,.me-repeatable-row,.me-repeater-row,
  .me-membership-tier-row,.me-tier-row,.me-membership-row,.me-recovery-offer-row,
  .me-preview,.me-preview-box,.me-badge-layout-preview,.me-icon-preview,.me-control-group
){
  background-color:var(--me-admin-surface)!important;

}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  thead,thead tr,thead th,.widefat thead td,.widefat thead th,.wp-list-table thead td,.wp-list-table thead th
){
  background-color:transparent!important;
  background-image:none!important;

  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) tbody tr:hover{
  background-color:var(--me-table-row-hover,color-mix(in srgb,var(--me-accent) 12%,var(--me-admin-surface-2)))!important;
}
/* Every admin control uses theme tokens, regardless of module-specific legacy CSS. */
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  input[type=text],input[type=number],input[type=email],input[type=date],input[type=datetime-local],input[type=time],
  input[type=url],input[type=password],input[type=search],input[type=tel],select,textarea
){
  background-color:var(--me-control-bg,var(--me-admin-input-bg))!important;
  background-image:none!important;
  color:var(--me-control-text,var(--me-admin-input-text))!important;
  -webkit-text-fill-color:var(--me-control-text,var(--me-admin-input-text))!important;
  caret-color:var(--me-control-caret,var(--me-accent))!important;
  border-color:var(--me-control-border,var(--me-admin-input-border))!important;
  color-scheme:var(--me-control-color-scheme,dark);
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(input,textarea)::placeholder{
  color:var(--me-control-placeholder,var(--me-admin-input-placeholder))!important;
  -webkit-text-fill-color:var(--me-control-placeholder,var(--me-admin-input-placeholder))!important;
  opacity:1!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) select option{
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;

}
/* Text contrast guard covers legacy classes without changing gradient text or icons. */
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(
  p,li,td,th,label,strong,small,em,b,code,pre,summary,details,a,
  .description,.help,.hint,.subsubsub,.tablenav-pages,.displaying-num,.me-admin-badge,.me-status,.me-tag
):not(.me-ui-gradient-text):not(.dashicons):not(.spinner){


}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(.description,p.description,.help,.hint,.muted,small){
  color:var(--me-safe-muted,var(--me-admin-muted,var(--me-muted)))!important;
  -webkit-text-fill-color:currentColor!important;
}
/* Catalog cards are isolated mini theme contexts. */
body.me-theme-engine-v3 .me-theme-card.me-theme-host{overflow:hidden!important;isolation:isolate!important;padding:0!important;display:flex!important;flex-direction:column!important;min-width:0!important;background:var(--me-surface)!important;border-color:var(--me-border)!important;color:var(--me-safe-text,var(--me-text))!important;}

body.me-theme-engine-v3 .me-theme-card.me-theme-host :is(.me-theme-card__meta,.me-theme-card__name,.me-theme-card__desc){
  background:color-mix(in srgb,var(--me-surface) 86%,transparent)!important;
  backdrop-filter:blur(5px) saturate(120%);
  -webkit-backdrop-filter:blur(5px) saturate(120%);
}
body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__name{font-family:var(--me-font-heading,var(--me-font-ui,inherit))!important;font-weight:800!important;color:var(--me-safe-text,var(--me-text))!important;-webkit-text-fill-color:currentColor!important;text-shadow:none!important;}

body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__desc{padding-bottom:10px!important;color:var(--me-safe-muted,var(--me-muted))!important;-webkit-text-fill-color:currentColor!important;}

/* Admin never runs ambient animations. Theme Studio preview is the sole admin exception. */
body.wp-admin.me-theme-engine-v3 .me-theme-host:not(.me-theme-studio-preview):not(.me-theme-studio-preview *) > :is(.me-theme-ambient-layer,.me-theme-shine){display:none!important}
body.wp-admin.me-theme-engine-v3 .me-theme-host:not(.me-theme-studio-preview):not(.me-theme-studio-preview *){animation:none!important}


/* ===================================================================
 * ADMIN TABLE & FORM-TABLE — Theme Engine V3
 * form-table th/td/tr ve tüm admin tabloları için CSS variable bağlaması.
 * Inline style'ların override'ı buradan yapılır, PHP'ye dokunmadan.
 * =================================================================== */

/* form-table WP standart tabloları */
body.me-theme-engine-v3 .form-table th {
  color: var(--me-admin-text, var(--me-text)) !important;
  background: transparent !important;
}
body.me-theme-engine-v3 .form-table td,
body.me-theme-engine-v3 .form-table tr {
  border-color: var(--me-border) !important;
  color: var(--me-admin-text, var(--me-text)) !important;
}
body.me-theme-engine-v3 .form-table .description {
  color: var(--me-admin-muted, var(--me-muted)) !important;
}

/* Tüm MarketExp admin kartlarındaki tablolar */
body.me-theme-engine-v3 :is(.me-settings-card, .me-module-card, .me-panel, .me-box) table {
  border-color: var(--me-border) !important;
}
body.me-theme-engine-v3 :is(.me-settings-card, .me-module-card, .me-panel, .me-box) th {
  color: var(--me-table-head-text, var(--me-admin-text, var(--me-text))) !important;
  background: var(--me-table-head-bg) !important;
  border-color: var(--me-border) !important;
  font-weight: 600;
}
body.me-theme-engine-v3 :is(.me-settings-card, .me-module-card, .me-panel, .me-box) td {
  color: var(--me-admin-text, var(--me-text)) !important;
  border-color: var(--me-border) !important;
}
body.me-theme-engine-v3 :is(.me-settings-card, .me-module-card, .me-panel, .me-box) tr:hover td {
  background: var(--me-table-row-hover) !important;
}

/* WooCommerce widefat tabloları MarketExp sayfasında */
body.me-theme-engine-v3 .marketexp-admin .widefat th,
body.me-theme-engine-v3 .marketexp-admin .widefat td {
  color: var(--me-admin-text, var(--me-text)) !important;
  border-color: var(--me-border) !important;
}
body.me-theme-engine-v3 .marketexp-admin .widefat thead th {
  background: var(--me-table-head-bg) !important;
  color: var(--me-table-head-text, var(--me-text)) !important;
}

/* Status badge ve inline-style renkleri CSS variable ile override */
body.me-theme-engine-v3 .me-settings-card [style*="color:#"] {
  color: inherit;
}
/* Tab9 license border-left renkli kartlar */
body.me-theme-engine-v3 .me-settings-card[style*="border-left"] {
  border-color: currentColor;
}

/* Inline progress / stats bar renk override */
body.me-theme-engine-v3 .me-settings-card [data-me-status="success"] {
  color: #22c55e !important;
}
body.me-theme-engine-v3 .me-settings-card [data-me-status="warning"] {
  color: #f59e0b !important;
}
body.me-theme-engine-v3 .me-settings-card [data-me-status="error"] {
  color: #ef4444 !important;
}

/* Wallet + report module: hardcoded inline card backgrounds → tema renklerine */
body.me-theme-engine-v3 [style*="background:#fefce8"],
body.me-theme-engine-v3 [style*="background: #fefce8"] {
  background: var(--me-notice-warning-bg, color-mix(in srgb, #f59e0b 12%, var(--me-admin-card-bg, var(--me-surface)))) !important;
  border-color: var(--me-notice-warning-border, #f59e0b) !important;
  color: var(--me-admin-text, var(--me-text)) !important;
}

/* ===================================================================
 * FRONTEND AMBIENT EFFECTS — ocean bubbles, petals, hearts, paw
 * Frontend'te me-motion-on + me-fx-* ile çalışır.
 * wp-admin'de yalnızca Theme Studio preview alanında çalışır.
 * =================================================================== */

/* Frontend'te body.me-motion-on olunca recovery modal içinde de animasyon */
body:not(.wp-admin) .me-recovery-modal.me-motion-on .me-recovery-modal__gradient-border {
  animation: meV3Gradient 4.8s linear infinite !important;
}
body:not(.wp-admin) .me-recovery-modal.me-motion-on .me-recovery-modal__hero-title,
body:not(.wp-admin) .me-recovery-modal.me-motion-on .me-recovery-modal h3 {
  animation: meV3Gradient 3.8s linear infinite !important;
}
body:not(.wp-admin) .me-recovery-modal.me-motion-on .me-recovery-modal__discount {
  animation: meV3Gradient 3.8s linear infinite, meV3Pulse 2.15s ease-in-out infinite !important;
}
body:not(.wp-admin) .me-recovery-modal.me-motion-on .me-recovery-modal__button {
  animation: meV3Gradient 5s linear infinite !important;
}
body:not(.wp-admin) .me-recovery-modal.me-campaign-motion-off * {
  animation: none !important;
  transition: none !important;
}


/* =====================================================================
 * v26.7.187 — MarketExp admin visual authority
 * Scope is deliberately limited to MarketExp screens. The sticky header
 * keeps its original neutral styling and is excluded from theme/contrast.
 * ===================================================================== */
body.marketexp-admin-screen.me-theme-engine-v3 #wpbody-content > .wrap > :not(.me-admin-sticky-header),
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content{
    color: var(--me-accent-2, var(--me-text));
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-admin-sticky-header,
body.marketexp-admin-screen.me-theme-engine-v3 .me-admin-sticky-header *{
  --me-text:initial;--me-muted:initial;--me-accent:initial;--me-accent-2:initial;
  animation:none!important;transition:initial!important;
}

/* Every established admin surface, including legacy inline-layout blocks. */
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(
  .me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,
  .me-admin-box,.me-autopilot-card,.me-badge-admin-box,.postbox,.inside,
  table.widefat,table.form-table,.wp-list-table,#me-tiers-table,
  [data-me-inline-90f118a34a],[data-me-inline-edfbb783f2],
  [data-me-inline-2ba22bb5e4] > label,[data-me-inline-716ecfd375]
){
  background-color:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-admin-text,var(--me-text))!important;
  border-color:var(--me-border)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(
  table.widefat,table.form-table,.wp-list-table,#me-tiers-table
) :is(thead,tbody,tfoot,tr,th,td){
  background-color:transparent!important;
  color:var(--me-admin-text,var(--me-text))!important;
  border-color:var(--me-border)!important;
  -webkit-text-fill-color:currentColor!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content table.widefat thead,
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content table.widefat tfoot,
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content #me-tiers-table thead{
  background:color-mix(in srgb,var(--me-accent) 12%,var(--me-admin-card-bg,var(--me-surface)))!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(table.widefat,#me-tiers-table) tbody tr:nth-child(even){
  background:color-mix(in srgb,var(--me-text) 3%,transparent)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(table.widefat,#me-tiers-table) tbody tr:hover{
  background:var(--me-table-row-hover)!important;
}

/* Membership areas explicitly identified from the rendered HTML. */
body.marketexp-admin-screen.me-theme-engine-v3 [data-me-inline-90f118a34a],
body.marketexp-admin-screen.me-theme-engine-v3 [data-me-inline-edfbb783f2],
body.marketexp-admin-screen.me-theme-engine-v3 #me-tiers-table .me-tier-style-panel,
body.marketexp-admin-screen.me-theme-engine-v3 #me-tiers-table .me-tier-style-row > td,
body.marketexp-admin-screen.me-theme-engine-v3 .me-membership-admin-table :is(th,td),
body.marketexp-admin-screen.me-theme-engine-v3 .me-badge-admin-box{
  background:color-mix(in srgb,var(--me-admin-card-bg,var(--me-surface)) 94%,var(--me-text) 6%)!important;
  color:var(--me-admin-text,var(--me-text))!important;
  border-color:var(--me-border)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 [data-me-inline-2ba22bb5e4]{
  background:transparent!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 #me-badge-pos-grid .me-pos-label{
  background:color-mix(in srgb,var(--me-admin-card-bg,var(--me-surface)) 88%,var(--me-text) 12%)!important;
  color: var(--me-admin-heading) !important;
  border-color:var(--me-border)!important;
  -webkit-text-fill-color:currentColor!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 #me-badge-pos-grid .me-pos-label:has(input:checked){
  background:var(--me-button-bg)!important;color:var(--me-safe-text)!important;
  border-color:var(--me-accent)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-membership-admin-user small{
  color:var(--me-admin-muted,var(--me-muted))!important;
  -webkit-text-fill-color:currentColor!important;
}

/* Controls: no remaining white-on-white legacy surface. */
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(
  input[type=text],input[type=number],input[type=email],input[type=date],input[type=datetime-local],
  input[type=time],input[type=url],input[type=password],input[type=search],input[type=tel],select,textarea
){
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;
  color:var(--me-control-text,var(--me-admin-input-text))!important;
  -webkit-text-fill-color:var(--me-control-text,var(--me-admin-input-text))!important;
  border-color:var(--me-control-border,var(--me-admin-input-border))!important;
  color-scheme:var(--me-control-color-scheme,normal);
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content :is(input,textarea)::placeholder{
  color:var(--me-control-placeholder,var(--me-admin-input-placeholder))!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-tab-content select option{
  background:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-admin-text,var(--me-text))!important;
}

/* Theme catalogue: each card renders its own manifest, never the page theme. */

body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host :is(.me-theme-card__meta,.me-theme-card__name){
  color:var(--me-card-preview-text,var(--me-text))!important;
  -webkit-text-fill-color:currentColor!important;
}


/* Layer order: texture -> overlay -> ambient -> content. */


.me-theme-host > .me-theme-texture{z-index:0!important;pointer-events:none!important}
.me-theme-host > .me-theme-overlay{z-index:1!important;pointer-events:none!important}
.me-theme-host > .me-theme-ambient-layer{z-index:2!important;pointer-events:none!important}
.me-theme-host > .me-theme-content-layer{z-index:4!important}

/* No ambient animation in normal admin pages. Theme Studio preview is the sole exception. */
body.wp-admin:not(.me-theme-studio-page) .me-theme-ambient-layer,
body.wp-admin:not(.me-theme-studio-page) .me-theme-shine,
body.wp-admin:not(.me-theme-studio-page) .me-theme-fx{
  display:none!important;animation:none!important;
}
/* Effects are created only inside the live preview by the engine; do not hide
 * nested preview-card layers merely because their direct parent is not the
 * preview aside itself. */
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-theme-ambient-layer,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-theme-shine,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-theme-fx{
  display:block!important;
  visibility:visible!important;
}

/* =====================================================================
 * v26.7.188 — neutral solid admin header + readable top actions
 * The MarketExp brand header is application chrome, not a themed surface.
 * ===================================================================== */

body.marketexp-admin-screen .me-admin-sticky-header :is(.me-brand,.me-tagline),
body[class*="me-theme-"] .me-admin-sticky-header :is(.me-brand,.me-tagline){
  color:#334155!important;
  -webkit-text-fill-color:#334155!important;
  background:transparent!important;
  text-shadow:none!important;
}


body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a{
  color:#334155!important;
  -webkit-text-fill-color:#334155!important;
}


body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__meta{
  background:color-mix(in srgb,var(--me-background,#0f172a) 86%,transparent)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
  border-top:1px solid color-mix(in srgb,var(--me-border) 75%,transparent)!important;
}


body.marketexp-admin-screen .me-admin-sticky-header .me-top-action:is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-admin-sticky-header .me-top-action:is(:hover,:focus,.is-active){background-image:none!important;border-color:#7c3aed!important;background:linear-gradient(90deg,var(--me-accent-2,#7c3aed),var(--me-accent,#2563eb))!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}


body.marketexp-admin-screen .me-admin-sticky-header,
body[class*="me-theme-"] .me-admin-sticky-header{box-shadow:0 2px 12px rgba(15,23,42,.08)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#ffffff!important;background-image:none!important;color:#1f2937!important;border-color:#dbe3ef!important;opacity:1!important;}

body.marketexp-admin-screen .me-admin-sticky-header .me-top-action,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-action{background-image:none!important;border:1px solid #dbe3ef!important;opacity:1!important;box-shadow:0 2px 8px color-mix(in srgb,var(--me-accent,#2563eb) 26%,transparent)!important;background:linear-gradient(90deg,var(--me-accent,#2563eb),var(--me-accent-2,#7c3aed))!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:color-mix(in srgb,var(--me-accent,#2563eb) 68%,#fff 32%)!important;}


body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a,
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a span,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a span{
  color:#1f2937!important;
  -webkit-text-fill-color:#1f2937!important;
  background:transparent!important;
  text-shadow:none!important;
}
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a:is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a:is(:hover,:focus,.is-active){
  background:#eef2ff!important;
  color:#4f46e5!important;
  -webkit-text-fill-color:#4f46e5!important;
}

/* Stable catalogue footer: white canvas, colored title, dark description. */
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host{border-color:var(--me-border)!important;background-color:var(--me-background,var(--me-surface))!important;background:#ffffff!important;background-image:none!important;border:1px solid #dbe3ef!important;color:#1f2937!important;}

body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__thumb{
  background:var(--me-surface,#0f172a)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__meta,
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__body{
  background:#ffffff!important;
  color:#1f2937!important;
  -webkit-text-fill-color:#1f2937!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__name{color:var(--me-card-accent,var(--me-accent,#2563eb))!important;-webkit-text-fill-color:var(--me-card-accent,var(--me-accent,#2563eb))!important;text-shadow:none!important;}

body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__desc{color:#334155!important;-webkit-text-fill-color:#334155!important;text-shadow:none!important;}


/* Theme Studio preview is the only admin area where FX must render. */
body.wp-admin.me-theme-studio-page .me-theme-studio-preview,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-ui-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview :is(.me-theme-ambient-layer,.me-theme-shine,.me-theme-fx,.me-theme-bubbles,.me-theme-hearts,.me-theme-petals,.me-theme-paw-walk,.me-theme-snow){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview :is(.me-theme-bubbles i,.me-theme-hearts i,.me-theme-petals i,.me-theme-paw-walk i,.me-theme-snow i,.me-theme-fx,.me-theme-shine:before){
  animation-play-state:running!important;
}

/* Tooltip texture must use exactly the same resolved texture as modal/card. */


/* v26.7.192 — requested card text/background authority, themed top menu and
 * deterministic Theme Studio live FX sandbox. */
body[class*="me-theme-"] :is(
  .me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,
  .me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box
) :is(p,li,td,label,small,span:not(.dashicons):not(.spinner)){
  color:var(--me-accent,var(--me-text))!important;
}


body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a,
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel button,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel button{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease!important;
  transform-origin:center!important;
}
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel a:is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel a:is(:hover,:focus,.is-active),
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel button:is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel button:is(:hover,:focus,.is-active){
  transform:scale(1.05)!important;
  z-index:3!important;
}

/* Live Preview owns its own FX layer and is not subject to the admin-wide
 * animation freeze. The layer sits above the texture but below controls. */
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:420px!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active>.me-theme-ambient-layer,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active .me-theme-host>.me-theme-ambient-layer{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:8!important;
  inset:0!important;
  overflow:hidden!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active :is(
  .me-theme-bubbles i,.me-theme-hearts i,.me-theme-petals i,.me-theme-paw-walk i,.me-theme-snow i
){
  display:block!important;
  visibility:visible!important;
  animation-play-state:running!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active .me-theme-bubbles i{
  animation:meAmbientRise var(--me-duration,7s) linear var(--me-delay,0s) infinite!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active .me-theme-hearts i,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active .me-theme-petals i{
  animation:meAmbientRise var(--me-duration,8s) linear var(--me-delay,0s) infinite!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active .me-theme-paw-walk i{
  /* sequential paw placement — no loop animation, JS controls timing */
}
/* paw appear/fade classes — used by JS walking engine */
.me-single-paw{
  position:absolute;
  left:var(--me-paw-x,50%);
  top:var(--me-paw-y,50%);
  transform:translate(-50%,-50%) rotate(var(--me-paw-rotate,0deg));
  width:var(--me-paw-size,20px);
  height:var(--me-paw-size,20px);
  opacity:0;
  pointer-events:none;
}
.me-single-paw.me-paw-appear{
  animation:mePawIn .25s ease-out forwards;
}
.me-single-paw.me-paw-fade{
  animation:mePawOut .55s ease-in forwards;
}
@keyframes mePawIn{
  0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--me-paw-rotate,0deg)) scale(.6);}
  60%{opacity:.92;}
  100%{opacity:.82;transform:translate(-50%,-50%) rotate(var(--me-paw-rotate,0deg)) scale(1);}
}
@keyframes mePawOut{
  0%{opacity:.82;}
  100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--me-paw-rotate,0deg)) scale(.8);}
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-preview-effects-active :is(.me-theme-fx,.me-theme-shine:before){
  display:block!important;
  visibility:visible!important;
  opacity:.72!important;
  animation-play-state:running!important;
}


/* =====================================================================
 * v26.7.193 — active theme marker, unified header controls and recovery
 * animation parity. This is the final authority for these components.
 * ===================================================================== */
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card{
  position:relative!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card.is-selected::after{
  content:"✓ Active";
  position:absolute;
  top:9px;
  right:9px;
  z-index:30;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 9px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--me-accent,#2563eb),var(--me-accent-2,#7c3aed));
  color:#fff;
  -webkit-text-fill-color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 5px 16px color-mix(in srgb,var(--me-accent,#2563eb) 34%,transparent);
  pointer-events:none;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card .me-theme-card__meta{
  background:color-mix(in srgb,var(--me-background,var(--me-surface,#0f172a)) 94%,transparent)!important;
  border-top:1px solid color-mix(in srgb,var(--me-border,#64748b) 72%,transparent)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card .me-theme-card__name{
  color:var(--me-card-preview-text,var(--me-accent,#2563eb))!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:0 1px 2px color-mix(in srgb,var(--me-background,#000) 65%,transparent)!important;
}
body.marketexp-admin-screen.me-theme-engine-v3 .me-theme-card .me-theme-card__desc{
  color:var(--me-card-preview-muted,var(--me-accent-2,#7c3aed))!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:0 1px 2px color-mix(in srgb,var(--me-background,#000) 72%,transparent)!important;
}

/* Header actions and expanded menu entries use the selected theme button. */

body.marketexp-admin-screen .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button):is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button):is(:hover,:focus,.is-active){
  background:linear-gradient(90deg,var(--me-accent-2,#7c3aed),var(--me-accent,#2563eb))!important;
  color:var(--me-button-hover-text,#fff)!important;
  -webkit-text-fill-color:var(--me-button-hover-text,#fff)!important;
  transform:scale(1.05)!important;
  z-index:3!important;
}
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel,
body[class*="me-theme-"] .me-admin-sticky-header .me-top-menu-panel{color:#1f2937!important;background:var(--me-background,#0f172a)!important;background-image:none!important;border-color:var(--me-border,#64748b)!important;box-shadow:0 16px 42px rgba(15,23,42,.22)!important;opacity:1!important;padding:9px!important;gap:6px!important;}


/* Membership Recovery uses the same reliable animation contract as Cart Recovery. */
@keyframes meRecoveryGradient193{0%{background-position:0% 50%}100%{background-position:300% 50%}}
@keyframes meRecoveryPulse193{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
#me-recovery-modal:not(.me-campaign-motion-off) .me-recovery-modal__gradient-border{
  background:var(--me-card-top-gradient,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:300% 100%!important;
  animation:meRecoveryGradient193 5.2s linear infinite!important;
}
#me-recovery-modal:not(.me-campaign-motion-off) :is(.me-recovery-modal__hero-title,.me-recovery-modal__message strong){
  background:var(--me-gradient-text,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:300% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  animation:meRecoveryGradient193 3.8s linear infinite!important;
}
#me-recovery-modal:not(.me-campaign-motion-off) .me-recovery-modal__discount{
  background:var(--me-gradient-text,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:300% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  animation:meRecoveryGradient193 3.8s linear infinite,meRecoveryPulse193 2.15s ease-in-out infinite!important;
}


:root{
  /* Legacy admin aliases resolve dynamically from the canonical V3 tokens. */
  --me-ink:var(--me-text);
  --me-paper:var(--me-surface);
  --me-card-bg:var(--me-admin-card-bg,var(--me-surface));
  --me-input-bg:var(--me-admin-input-bg,color-mix(in srgb,var(--me-surface) 88%,var(--me-text) 12%));
  --me-input-text:var(--me-admin-input-text,var(--me-text));
}

/* Auto must render the same surface contract in admin, modal, cart and tooltip. */
body.me-theme-auto.me-theme-engine-v3 :is(
  .me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,
  .me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,
  .me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card,.me-ui-surface
){
  background:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-text)!important;
  border-color:var(--me-border)!important;
}
body.me-theme-auto.me-theme-engine-v3 :is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup){
  background:var(--me-tooltip-surface,var(--me-surface))!important;
}

/* Header navigation always uses legible white labels on the selected-theme gradient. */
body.marketexp-admin-screen .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button),
body[class*="me-theme-"] .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button){background:linear-gradient(90deg,var(--me-accent,#2563eb),var(--me-accent-2,#7c3aed))!important;border:1px solid color-mix(in srgb,var(--me-accent,#2563eb) 68%,#fff 32%)!important;box-shadow:0 3px 10px color-mix(in srgb,var(--me-accent,#2563eb) 24%,transparent)!important;opacity:1!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.28)!important;}


/* JS marks actually transparent controls after reading computed styles. */
body.marketexp-admin-screen .me-transparent-button-guard,
body[class*="me-theme-"] .me-transparent-button-guard{
  background:transparent!important;
  background-image:none!important;
  color:var(--me-auto-button-ink,var(--me-accent,var(--me-text)))!important;
  -webkit-text-fill-color:var(--me-auto-button-ink,var(--me-accent,var(--me-text)))!important;
  border:1.5px solid var(--me-auto-button-border,var(--me-accent,var(--me-border)))!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
body.marketexp-admin-screen .me-transparent-button-guard:is(:hover,:focus,.is-active),
body[class*="me-theme-"] .me-transparent-button-guard:is(:hover,:focus,.is-active){
  background:color-mix(in srgb,var(--me-auto-button-border,var(--me-accent)) 14%,transparent)!important;
  color:var(--me-auto-button-ink,var(--me-accent,var(--me-text)))!important;
  -webkit-text-fill-color:var(--me-auto-button-ink,var(--me-accent,var(--me-text)))!important;
  border-color:var(--me-auto-button-border,var(--me-accent))!important;
}

/* Transparent legacy links styled as buttons receive the same guard. */
body.marketexp-admin-screen :is(a.button,.button-secondary,.me-top-action).me-transparent-button-guard,
body[class*="me-theme-"] :is(a.button,.button-secondary,.me-top-action).me-transparent-button-guard{
  text-decoration:none!important;
}


body.marketexp-admin-screen .me-admin-sticky-header,
body.marketexp-admin-screen[class*="me-theme-"] .me-admin-sticky-header{
  background:#ffffff!important;
  background-image:none!important;
  color:#0f172a!important;
  border-color:#dbe3ef!important;
  box-shadow:0 8px 24px rgba(15,23,42,.08)!important;
  opacity:1!important;
  backdrop-filter:none!important;
}
body.marketexp-admin-screen .me-admin-sticky-header :is(.me-brand,.me-tagline){
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  text-shadow:none!important;
}
body.marketexp-admin-screen .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button){
  background:#ffffff!important;
  background-image:none!important;
  color:#334155!important;
  -webkit-text-fill-color:#334155!important;
  border:1px solid #dbe3ef!important;
  box-shadow:0 1px 3px rgba(15,23,42,.08)!important;
  text-shadow:none!important;
  transform:none!important;
}
body.marketexp-admin-screen .me-admin-sticky-header :is(.me-top-action,.me-top-menu-panel a,.me-top-menu-panel button):is(:hover,:focus,.is-active){
  background:#f1f5f9!important;
  color:#5b21b6!important;
  -webkit-text-fill-color:#5b21b6!important;
  border-color:#c4b5fd!important;
  box-shadow:0 4px 12px rgba(91,33,182,.12)!important;
  transform:translateY(-1px)!important;
}
body.marketexp-admin-screen .me-admin-sticky-header .me-top-menu-panel{
  background:#ffffff!important;
  background-image:none!important;
  color:#334155!important;
  border-color:#dbe3ef!important;
  box-shadow:0 18px 45px rgba(15,23,42,.16)!important;
  opacity:1!important;
}

/* Catalogue cards intentionally use a lightweight static preview.
 * No texture DOM layers, ambient FX, per-card observers or animations. */
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite{
  position:relative!important;
  isolation:auto!important;
  overflow:hidden!important;
  background:var(--me-catalog-bg,#fff)!important;
  background-image:none!important;
  color:var(--me-catalog-text,#0f172a)!important;
  border:1px solid var(--me-catalog-border,#dbe3ef)!important;
  box-shadow:0 5px 16px rgba(15,23,42,.08)!important;
  animation:none!important;
  transform:none!important;
  contain:layout paint style!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite > :is(.me-theme-layer,.me-theme-ambient-layer,.me-theme-shine){display:none!important}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite .me-theme-card__thumb{
  background:linear-gradient(135deg,color-mix(in srgb,var(--me-catalog-accent,#2563eb) 20%,var(--me-catalog-bg,#fff)),color-mix(in srgb,var(--me-catalog-accent2,#7c3aed) 18%,var(--me-catalog-bg,#fff)))!important;
  border-bottom:1px solid var(--me-catalog-border,#dbe3ef)!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite :is(.me-theme-card__meta,.me-theme-card__name,.me-theme-card__desc){
  position:relative!important;
  z-index:2!important;
  background:color-mix(in srgb,var(--me-catalog-bg,#fff) 94%,transparent)!important;
  text-shadow:none!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite .me-theme-card__name{
  color:var(--me-catalog-accent,#2563eb)!important;
  -webkit-text-fill-color:var(--me-catalog-accent,#2563eb)!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite .me-theme-card__desc{
  color:var(--me-catalog-muted,#475569)!important;
  -webkit-text-fill-color:var(--me-catalog-muted,#475569)!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite:is(:hover,:focus-within){
  transform:translateY(-2px)!important;
  box-shadow:0 10px 22px rgba(15,23,42,.12)!important;
}
body.marketexp-admin-screen .me-theme-card.me-theme-card-lite.is-selected{
  border-color:var(--me-catalog-accent,#2563eb)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--me-catalog-accent,#2563eb) 28%,transparent),0 10px 24px rgba(15,23,42,.12)!important;
  animation:none!important;
}


body.me-theme-engine-v3 .marketexp-admin,
body.me-theme-engine-v3 .marketexp-wrap{
  --me-safe-text:var(--me-runtime-text,var(--me-admin-text,var(--me-text,#0f172a)));
  --me-safe-muted:var(--me-runtime-muted,var(--me-admin-muted,var(--me-muted,#475569)));
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box)
:is(p,li,td,th,label,small,strong,em,b,summary,details,code,pre,span:not(.dashicons):not(.spinner)){

}
body.me-theme-engine-v3 :is(.description,p.description,.muted,.me-muted){
  color:var(--me-safe-muted,var(--me-admin-muted,var(--me-muted,#475569)));
}
.me-cart-modal.me-theme-engine-v3 .me-cart-modal-close{
  width:48px!important;min-width:48px!important;height:44px!important;
}
.me-cart-modal.me-theme-engine-v3 :is(.me-cart-modal-snooze,.me-cart-modal-later,.me-cart-modal-maybe-later){
  width:auto!important;min-width:96px!important;height:44px!important;padding-inline:18px!important;
}


.me-tt-popup.me-theme-engine-v3 .me-tt-amt{color:var(--me-tooltip-value-text,var(--me-readable-accent-2,var(--me-accent-2,var(--me-safe-text))))!important;-webkit-text-fill-color:var(--me-tooltip-value-text,var(--me-readable-accent-2,var(--me-accent-2,var(--me-safe-text))))!important;}

.me-tt-popup.me-theme-engine-v3 :is(.me-tt-code,.me-tt-hval,.me-tt-row){
  color:var(--me-tooltip-row-text,var(--me-safe-text,var(--me-text)))!important;
  -webkit-text-fill-color:var(--me-tooltip-row-text,var(--me-safe-text,var(--me-text)))!important;
}
.me-tt-popup.me-theme-engine-v3 :is(.me-tt-col-head,.me-tt-hlabel){
  color:var(--me-tooltip-label-text,var(--me-readable-accent,var(--me-accent,var(--me-safe-text))))!important;
  -webkit-text-fill-color:var(--me-tooltip-label-text,var(--me-readable-accent,var(--me-accent,var(--me-safe-text))))!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview{
  --me-safe-text:var(--me-runtime-text,var(--me-text,#0f172a));
  --me-safe-muted:var(--me-runtime-muted,var(--me-muted,#475569));
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-theme-ambient-layer,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview .me-theme-layer{
  pointer-events:none!important;
}


body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite{
  font-family:var(--me-catalog-font-ui,system-ui,sans-serif)!important;
  color:var(--me-catalog-text,#0f172a)!important;
  border-color:var(--me-catalog-border,rgba(100,116,139,.28))!important;
  background-color:var(--me-catalog-bg,#fff)!important;
  background-image:var(--me-catalog-texture,none),var(--me-catalog-bg,#fff)!important;
  background-size:var(--me-catalog-texture-size,180px 180px),cover!important;
  background-repeat:var(--me-catalog-texture-repeat,repeat),no-repeat!important;
  background-position:var(--me-catalog-texture-position,center),center!important;
  animation:none!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite .me-theme-card__name{
  font-family:var(--me-catalog-font-heading,var(--me-catalog-font-ui,system-ui,sans-serif))!important;
  color:var(--me-catalog-accent,var(--me-catalog-text))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite .me-theme-card__desc{
  color:var(--me-catalog-accent2,var(--me-catalog-muted))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite:hover{transform:translateY(-2px)!important}
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite.is-selected{
  box-shadow:0 0 0 2px color-mix(in srgb,var(--me-catalog-accent) 45%,transparent),0 12px 28px rgba(15,23,42,.16)!important;
}
body.wp-admin.me-theme-studio-page .me-studio-effects label{
  display:flex!important;align-items:center!important;gap:8px!important;grid-template-columns:none!important;
  min-height:34px!important;margin:0!important;padding:6px 8px!important;
}
body.wp-admin.me-theme-studio-page .me-studio-effects input[type=checkbox]{margin:0!important;flex:0 0 auto!important}

/* Unified host layer order: surface -> texture -> overlay -> ambient -> content. */
:is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card).me-theme-host{position:relative!important;isolation:isolate!important;overflow:hidden!important}
:is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card).me-theme-host>.me-theme-texture{display:block!important;visibility:visible!important;z-index:1!important;pointer-events:none!important}
:is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card).me-theme-host>.me-theme-overlay{display:block!important;visibility:visible!important;z-index:2!important;pointer-events:none!important}
:is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card).me-theme-host>.me-theme-ambient-layer{display:block!important;visibility:visible!important;z-index:3!important;pointer-events:none!important}
:is(.me-recovery-modal__card,.me-cart-modal-inner,.me-tt-popup,.me-ui-card).me-theme-host>.me-theme-content-layer{position:relative!important;z-index:4!important}
.me-tt-popup.me-theme-host>.me-theme-texture{display:block!important;visibility:visible!important;z-index:2!important;mix-blend-mode:var(--me-texture-blend,overlay)!important;background-image:var(--me-tooltip-texture-layer,var(--me-texture-layer))!important;inset:0!important;width:100%!important;height:100%!important;opacity:var(--me-texture-opacity,.28)!important;background-size:var(--me-tooltip-texture-size,var(--me-texture-size,150px 150px))!important;background-repeat:var(--me-tooltip-texture-repeat,var(--me-texture-repeat,repeat))!important;background-position:var(--me-tooltip-texture-position,var(--me-texture-position,center))!important;}


/* One gradient animation authority for preview and frontend. */
@keyframes meUnifiedGradientFlow{0%{background-position:0% 50%}100%{background-position:200% 50%}}
/* gradient-text rules moved to marketexp-theme-effects.css */


/* Tooltip is a viewport popover. Generic theme-host positioning must never
   turn it into a relative in-flow element (which pushed it to page bottom). */


/* Theme catalog stays static/lightweight but uses each manifest's actual font
   and palette. Text shadow provides readability without running the expensive
   runtime contrast/particle engine for every card. */
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite .me-theme-card__name,
body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__name{
  color:var(--me-catalog-accent,var(--me-accent))!important;
  -webkit-text-fill-color:currentColor!important;
  font-family:var(--me-catalog-font-heading,var(--me-font-heading,var(--me-font-ui,system-ui)))!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45),0 0 10px color-mix(in srgb,var(--me-catalog-bg,#fff) 35%,transparent)!important;
}
body.me-theme-engine-v3 .me-theme-card.me-theme-card-lite .me-theme-card__desc,
body.me-theme-engine-v3 .me-theme-card.me-theme-host .me-theme-card__desc{
  color:var(--me-catalog-accent2,var(--me-accent-2))!important;
  -webkit-text-fill-color:currentColor!important;
  font-family:var(--me-catalog-font-ui,var(--me-font-ui,system-ui))!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55)!important;
}

/* Frontend uses the same gradient-text authority as Theme Studio, including
   membership containers that use the older campaign motion class. */
body:not(.wp-admin) :is(.me-motion-on,.me-campaign-motion-on) :is(
  .me-ui-gradient-text,
  .me-recovery-modal__hero-title,
  .me-recovery-modal__message strong,
  .me-recovery-modal__discount,
  .me-cart-modal-title
){
  background-image:var(--me-gradient-text,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:200% 100%!important;
  background-clip:text!important;-webkit-background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  animation:meUnifiedGradientFlow 5.4s linear infinite!important;
}


/* Inline left/top from the positioning script must remain effective. */
.me-tt-popup.me-theme-host,
body:not(.wp-admin) .me-tt-popup.me-theme-engine-v3{position:fixed!important;margin:0!important;max-width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important;overflow:auto!important;right:auto!important;bottom:auto!important;visibility:visible;}

.me-tt-popup[hidden]{display:none!important}

/* Catalog identity is card-local and can never inherit the active theme. */
.me-theme-card.me-theme-card-lite .me-theme-card__name{
  color:var(--me-catalog-accent,#2563eb)!important;
  -webkit-text-fill-color:currentColor!important;
}
.me-theme-card.me-theme-card-lite .me-theme-card__desc{
  color:var(--me-catalog-accent2,#475569)!important;
  -webkit-text-fill-color:currentColor!important;
}

/* Theme Studio itself follows the currently edited theme; FX remain preview-only. */

body.wp-admin.me-theme-studio-page #me-theme-studio-root :is(.me-settings-card,.me-theme-studio-toolbar){
  color:var(--me-runtime-text,var(--me-text))!important;
  background-color:var(--me-admin-card-bg,var(--me-surface))!important;
  border-color:var(--me-border)!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root :is(label,p,small,.description,dt,dd){

}


body:not(.wp-admin) .me-tt-popup.me-theme-engine-v3,
body:not(.wp-admin) .me-tt-popup.me-theme-host{
  position:fixed!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:999999!important;
}
body:not(.wp-admin) .me-tt-popup.me-theme-engine-v3:not([hidden]),
body:not(.wp-admin) .me-tt-popup.me-theme-host:not([hidden]){display:flex!important}

/* ===================================================================
 * THEME STUDIO — Admin sayfa entegrasyonu (v26.7.205+)
 * Studio sayfasının tüm alanı aktif temadan renk alsın.
 * =================================================================== */

/* Sayfa geneli arka plan */
body.me-theme-studio-page #wpbody,
body.me-theme-studio-page #wpbody-content,
body.me-theme-studio-page #wpcontent {
  background: var(--me-admin-page-bg, var(--me-background, #f6f7f7)) !important;
  color: var(--me-admin-text, var(--me-text)) !important;
  transition: background 0.3s, color 0.3s;
}

/* Studio root tam tema görünümü */
body.me-theme-studio-page .me-theme-studio.me-theme-host {
  background: transparent !important;
  min-height: calc(100vh - 86px);
}

/* h1 başlığı gradient alsın */
body.me-theme-studio-page .me-theme-studio.me-theme-host > h1 {
  background: var(--me-gradient-text, linear-gradient(90deg, var(--me-accent), var(--me-accent-2)));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-family: var(--me-font-heading) !important;
  font-size: 28px;
  margin-bottom: 18px;
}

/* Studio toolbar theme uyumu */
body.me-theme-studio-page .me-theme-studio-toolbar.me-settings-card {
  background: var(--me-admin-card-bg, var(--me-surface)) !important;
  color: var(--me-admin-text, var(--me-text)) !important;
  border-color: var(--me-border) !important;
  font-family: var(--me-font-ui) !important;
}
body.me-theme-studio-page .me-theme-studio-toolbar select,
body.me-theme-studio-page .me-theme-studio-toolbar label {
  color: var(--me-admin-text, var(--me-text)) !important;
}

/* Input / select temadan renk alsın */
body.me-theme-studio-page .me-theme-studio input[type="text"],
body.me-theme-studio-page .me-theme-studio input[type="number"],
body.me-theme-studio-page .me-theme-studio select,
body.me-theme-studio-page .me-theme-studio textarea {
  background: var(--me-admin-input-bg) !important;
  color: var(--me-admin-input-text, var(--me-text)) !important;
  border-color: var(--me-admin-input-border, var(--me-border)) !important;
  border-radius: calc(var(--me-radius) * 0.5) !important;
  box-shadow: none !important;
  font-family: var(--me-font-ui) !important;
}
body.me-theme-studio-page .me-theme-studio input:focus,
body.me-theme-studio-page .me-theme-studio select:focus,
body.me-theme-studio-page .me-theme-studio textarea:focus {
  border-color: var(--me-accent) !important;
  box-shadow: var(--me-admin-input-focus-shadow) !important;
  outline: none !important;
}

/* Checkboxlar accent renk */
body.me-theme-studio-page .me-studio-effects label {
  color: var(--me-admin-text, var(--me-text)) !important;
  font-family: var(--me-font-ui) !important;
  font-size: 13px;
  align-items: center;
  gap: 8px;
}

/* Studio butonlar */
body.me-theme-studio-page .me-theme-studio .button {
  font-family: var(--me-font-ui) !important;
}
body.me-theme-studio-page .me-theme-studio .me-ui-button {
  background: var(--me-button-bg) !important;
  color: var(--me-button-text, #fff) !important;
  border: none !important;
  border-radius: var(--me-radius) !important;
  font-family: var(--me-font-ui) !important;
  font-weight: 700 !important;
}
body.me-theme-studio-page .me-theme-studio .me-ui-button:hover {
  background: var(--me-button-hover-bg) !important;
}

/* Preview pane action buttons */
.me-theme-studio-preview-actions {
  display: flex;
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--me-border);
}

/* Debug section renkleri */
body.me-theme-studio-page .me-theme-studio-debug {
  font-family: var(--me-font-mono) !important;
  font-size: 12px;
}

/* Notice renkleri studio içinde */
body.me-theme-studio-page .me-theme-studio .notice-success {
  background: var(--me-notice-success-bg) !important;
  border-color: var(--me-notice-success-border) !important;
  color: var(--me-notice-success-text) !important;
}

/* Preview panelini scroll sırasında sticky tut */
body.me-theme-studio-page .me-theme-studio-preview {
  scrollbar-width: thin;
  scrollbar-color: var(--me-accent) transparent;
}


/* v26.7.207 — Theme Studio uses the exact General tab visual contract.
 * Only the two-column/sticky preview layout is Studio-specific. */
body.wp-admin.me-theme-studio-page #me-theme-studio-root{background:transparent!important;color:inherit!important;padding:0!important;border-radius:0!important;min-height:0!important;}

body.wp-admin.me-theme-studio-page #me-theme-studio-root>h1{
  color:var(--me-ink)!important;
  -webkit-text-fill-color:currentColor!important;
  background:none!important;
  font-family:"Syne",sans-serif!important;
  font-size:23px!important;
  margin:0 0 18px!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-settings-card,
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-toolbar{
  background:var(--me-card)!important;
  color:var(--me-ink)!important;
  border:1.5px solid var(--me-border)!important;
  border-radius:0 0 var(--me-radius) var(--me-radius)!important;
  padding:28px 32px!important;
  margin-bottom:20px!important;
  box-shadow:0 1px 3px rgba(0,0,0,.04)!important;
  font-family:"DM Sans",sans-serif!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-settings-card h2{
  font-family:"Syne",sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
  color:var(--me-ink)!important;
  -webkit-text-fill-color:currentColor!important;
  background:none!important;
  margin:0 0 20px!important;
  padding:0 0 16px!important;
  border-bottom:1px solid var(--me-border)!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-settings-card :is(p,label,small,.description,dt,dd,span,strong,code){
  color:var(--me-ink)!important;
  -webkit-text-fill-color:currentColor!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-settings-card :is(.description,small){color:var(--me-muted)!important}
body.wp-admin.me-theme-studio-page #me-theme-studio-root :is(input[type=text],input[type=number],input[type=email],input[type=date],select,textarea){
  font-family:"DM Sans",sans-serif!important;
  font-size:14px!important;
  border:1.5px solid var(--me-control-border,var(--me-border))!important;
  border-radius:10px!important;
  padding:8px 14px!important;
  color:var(--me-control-text,var(--me-ink))!important;
  -webkit-text-fill-color:currentColor!important;
  background:var(--me-control-bg,#fff)!important;
  box-shadow:none!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root :is(input,select,textarea):focus{
  border-color:var(--me-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--me-accent) 12%,transparent)!important;
}
/* Preview itself remains the selected theme sandbox and keeps live FX. */
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-preview{
  background:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-runtime-text,var(--me-text))!important;
  border-color:var(--me-border)!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-preview h2{
  background-image:var(--me-gradient-text)!important;
  background-size:200% 100%!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
}


body:not(.wp-admin) .me-recovery-modal__card.me-motion-on :is(.me-ui-gradient-text,.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount),
body:not(.wp-admin) .me-recovery-modal.me-campaign-motion-on :is(.me-ui-gradient-text,.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount){
  background-image:var(--me-gradient-text,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:220% 100%!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  animation:meUnifiedGradientFlow 5.4s linear infinite!important;
}


/* v26.7.212 — Membership Recovery top border: one authority only.
 * The real .me-recovery-modal__gradient-border span owns the animated bar.
 * Tooltip keeps its own ::before shine bar; recovery card pseudo-elements remain
 * available for texture/overlay and must not draw a second top stripe. */
#me-recovery-modal .me-recovery-modal__gradient-border{
  display:block!important;
  position:absolute!important;
  inset:0 0 auto 0!important;
  height:4px!important;
  z-index:40!important;
  pointer-events:none!important;
  background:var(--me-card-top-gradient,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:300% 100%!important;
  background-position:0% 50%;
  background-repeat:repeat-x!important;
}
#me-recovery-modal:not(.me-campaign-motion-off) .me-recovery-modal__gradient-border{
  animation:meRecoveryGradient193 5.2s linear infinite!important;
}
#me-recovery-modal.me-campaign-motion-off .me-recovery-modal__gradient-border{
  animation:none!important;
}

/* Theme Engine V4 — semantic contrast authority.
 * Theme personality remains in surface/accent/texture tokens; readable content uses
 * semantic foreground tokens with WCAG-oriented defaults. */
body.me-theme-engine-v3,
.me-theme-engine-v3{
  --me-safe-text:var(--me-text-primary,var(--me-text,#172033));
  --me-safe-muted:var(--me-text-secondary,var(--me-muted,#475569));
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(h1,h2,h3,h4,h5,h6,.title,.me-ui-title,.me-theme-card__name){
  color:var(--me-heading-text,var(--me-safe-text))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(p,li,td,th,label,strong,small,em,b,summary,details,dt,dd){
  color:var(--me-safe-text)!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(.description,p.description,.muted,.help,.hint,small.description){
  color:var(--me-safe-muted)!important;
  -webkit-text-fill-color:currentColor!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) a:not(.button):not(.me-ui-button){
  color:var(--me-link-text,var(--me-accent))!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(input[type=text],input[type=number],input[type=email],input[type=date],input[type=url],input[type=password],input[type=search],select,textarea){
  background:var(--me-control-bg,var(--me-admin-input-bg))!important;
  color:var(--me-control-text,var(--me-safe-text))!important;
  -webkit-text-fill-color:var(--me-control-text,var(--me-safe-text))!important;
  border-color:var(--me-control-border,var(--me-admin-input-border))!important;
}
body.me-theme-engine-v3 :is(.marketexp-wrap,.marketexp-admin-wrap,.wrap.marketexp-admin,.wrap:has(.me-settings-card)) :is(input,textarea)::placeholder{
  color:var(--me-control-placeholder,var(--me-text-subtle,var(--me-safe-muted)))!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
body.me-theme-engine-v3 :is(.button-primary,.me-ui-button,.me-sticky-save-bar .button-primary){
  color:var(--me-on-accent,var(--me-button-text,#fff))!important;
  -webkit-text-fill-color:currentColor!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime]{
  color:var(--me-text-primary,var(--me-text))!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime] :is(p,li,span:not(.dashicons),label,strong,small){
  color:var(--me-text-primary,var(--me-text))!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime] :is(.description,.muted,small){
  color:var(--me-text-secondary,var(--me-muted))!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime] :is(h1,h2,h3,h4,.me-recovery-modal__hero-title,.me-cart-modal-title){
  color:var(--me-heading-text,var(--me-text-primary,var(--me-text)))!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-tt-popup)[data-me-theme-runtime] :is(.me-offer,.me-recovery-modal__offer,.me-cart-modal-offer){
  color:var(--me-offer-text,var(--me-text-primary,var(--me-text)))!important;
}


/* v26.7.313 — all standalone MarketExp admin pages use the active theme tokens.
   The component mapping is explicit; no automatic contrast mutation is used. */
body.wp-admin.me-theme-engine-v3 :is(
  .marketexp-admin,.marketexp-wrap,.me-theme-studio,.me-regression-suite,.me-payment-monitor,
  .me-payment-rule-migration,.me-rule-builder,.me-rule-library,.me-provider-manager,.me-marketplace-page
){
  background:var(--me-admin-page-bg,var(--me-background))!important;
  color:var(--me-admin-text,var(--me-text-primary,var(--me-text)))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.wp-admin.me-theme-engine-v3 :is(
  .marketexp-admin,.marketexp-wrap,.me-theme-studio,.me-regression-suite,.me-payment-monitor,
  .me-payment-rule-migration,.me-rule-builder,.me-rule-library,.me-provider-manager,.me-marketplace-page
) :is(h1,h2,h3,h4,h5,h6,.title,.page-title){
  color:var(--me-admin-heading,var(--me-heading-text,var(--me-text-primary)))!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
body.wp-admin.me-theme-engine-v3 :is(
  .marketexp-admin,.marketexp-wrap,.me-theme-studio,.me-regression-suite,.me-payment-monitor,
  .me-payment-rule-migration,.me-rule-builder,.me-rule-library,.me-provider-manager,.me-marketplace-page
) :is(p,li,label,td,th,span:not(.dashicons),strong,small,code){
  color:var(--me-admin-text,var(--me-text-primary,var(--me-text)))!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
body.wp-admin.me-theme-engine-v3 :is(
  .marketexp-admin,.marketexp-wrap,.me-theme-studio,.me-regression-suite,.me-payment-monitor,
  .me-payment-rule-migration,.me-rule-builder,.me-rule-library,.me-provider-manager,.me-marketplace-page
) :is(.description,p.description,.muted,.subtle,small){
  color:var(--me-admin-muted,var(--me-text-secondary,var(--me-muted)))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.wp-admin.me-theme-engine-v3 :is(
  .marketexp-admin,.marketexp-wrap,.me-theme-studio,.me-regression-suite,.me-payment-monitor,
  .me-payment-rule-migration,.me-rule-builder,.me-rule-library,.me-provider-manager,.me-marketplace-page
) :is(.me-settings-card,.widefat,.wp-list-table,.me-ui-card,.postbox,.card){
  background:var(--me-admin-card-bg,var(--me-surface))!important;
  color:var(--me-admin-text,var(--me-text-primary,var(--me-text)))!important;
  border-color:var(--me-border)!important;
}
body.wp-admin.me-theme-engine-v3 :is(.widefat,.wp-list-table) thead th{
  background:var(--me-table-head-bg,var(--me-accent))!important;
  color:var(--me-table-head-text,var(--me-on-accent,#fff))!important;
  -webkit-text-fill-color:currentColor!important;
}
body.wp-admin.me-theme-engine-v3 :is(.widefat,.wp-list-table) tbody tr{
  background:var(--me-table-row-bg,var(--me-surface-elevated,var(--me-surface)))!important;
}
body.wp-admin.me-theme-engine-v3 :is(.widefat,.wp-list-table) tbody tr:hover{
  background:var(--me-table-row-hover,var(--me-surface-nested,var(--me-surface)))!important;
}
/* Theme Studio must always animate only inside its live preview pane. */
body.wp-admin.me-theme-studio-page .me-theme-studio-preview,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview *{
  animation-play-state:running!important;
}


/* v26.7.315 — Theme Studio deterministic live scene */
.me-theme-studio-preview{font-family:var(--me-font-ui,inherit)!important;color:var(--me-text)!important;background:var(--me-admin-page-bg,var(--me-background))!important;}
.me-theme-studio-preview h2,.me-theme-studio-preview h3,.me-theme-studio-preview .me-preview-h2,.me-theme-studio-preview .me-preview-h3{font-family:var(--me-font-heading,var(--me-font-ui,inherit))!important;color:var(--me-title,var(--me-text))!important;}
.me-theme-studio-preview .me-ui-gradient-text{background:var(--me-gradient-text)!important;background-size:300% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;}
.me-theme-studio-preview .me-ui-card,.me-theme-studio-preview .me-cart-modal-inner,.me-theme-studio-preview .me-recovery-modal__card,.me-theme-studio-preview .me-tt-popup{background:var(--me-surface,var(--me-admin-card-bg))!important;color:var(--me-text)!important;border-color:var(--me-border)!important;font-family:var(--me-font-ui,inherit)!important;}
.me-theme-studio-preview .me-preview-kicker{font-family:var(--me-font-accent,var(--me-font-ui,inherit));color:var(--me-accent);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:11px;}
.me-theme-studio-preview .me-preview-swatches{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.me-theme-studio-preview .me-preview-swatches span{padding:6px 9px;border-radius:999px;font-weight:800;font-size:11px;border:1px solid var(--me-border)}
.me-theme-studio-preview .me-preview-swatches .is-accent{background:var(--me-accent);color:var(--me-button-text,#fff)}.me-theme-studio-preview .me-preview-swatches .is-accent2{background:var(--me-accent-2);color:var(--me-button-text,#fff)}.me-theme-studio-preview .me-preview-swatches .is-native{background:var(--me-admin-page-bg,var(--me-background));color:var(--me-text)}
.me-theme-studio-preview .me-preview-buttons{display:flex;gap:8px;flex-wrap:wrap}.me-theme-studio-preview .me-ui-button-secondary{background:var(--me-button-hover-bg,var(--me-accent-2))!important;color:var(--me-button-text,#fff)!important;border-color:transparent!important;}
.me-theme-studio-preview .me-recovery-modal__gradient-border{display:block;height:4px;border-radius:999px;background:var(--me-card-top-gradient,var(--me-gradient-text));background-size:440% 100%;animation:meUnifiedGradientFlow 2.4s linear infinite!important;}
.me-theme-studio-preview.me-motion-on .me-ui-gradient-text,.me-theme-studio-preview.me-motion-on .me-tt-amt,.me-theme-studio-preview.me-motion-on .me-cart-modal-title{animation:meGradientMove 3.8s linear infinite!important;animation-play-state:running!important;}


/* v26.7.316 — Theme Studio is a genuine Theme Engine runtime, not a static mock. */
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-theme-host{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:720px;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-theme-host>.me-theme-texture,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-theme-host>.me-theme-overlay,
body.wp-admin.me-theme-studio-page .me-theme-studio-preview.me-theme-host>.me-theme-ambient-layer{
  display:block!important;
  visibility:visible!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview [data-me-preview-fx-ready]{
  animation-play-state:running!important;
}
body.wp-admin.me-theme-studio-page .me-theme-studio-preview [data-me-preview-fx-ready] :is(
  .me-theme-shine:before,.me-theme-snow i,.me-theme-bubbles i,.me-theme-hearts i,
  .me-theme-petals i,.me-theme-paw-walk i,.me-theme-fx,.me-ui-gradient-text,
  .me-tt-amt,.me-cart-modal-title,.me-recovery-modal__gradient-border
){animation-play-state:running!important;}


/* v26.7.317 — isolated real-runtime Theme Studio iframe */
body.me-theme-studio-page .me-theme-studio-live-frame{box-shadow:inset 0 0 0 1px var(--me-border),var(--me-soft-shadow);background:var(--me-admin-page-bg,var(--me-background));}
body.me-theme-studio-page .me-theme-studio-preview>.me-studio-preview-stack[style*="display: none"]{display:none!important;}
/* v26.7.318 — real Theme Playground: one browser scrollbar only. */
.me-theme-studio-preview{align-self:start;overflow:visible!important}
.me-theme-playground-frame{display:block;width:100%;min-height:720px;height:720px;border:0;border-radius:var(--me-radius-lg,18px);background:transparent;overflow:hidden}

/* Theme Studio v6: production-scene viewport. The iframe is intentionally
   deterministic; Theme Runtime changes only the shared renderer contract. */
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-grid{
  align-items:start!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-preview{
  position:sticky!important;
  top:24px!important;
  align-self:start!important;
  max-height:none!important;
  overflow:visible!important;
  z-index:20!important;
}
body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-playground-frame{
  display:block!important;
  width:100%!important;
  min-height:1440px!important;
  height:1440px!important;
  max-height:none!important;
  overflow:hidden!important;
}
@media(max-width:1100px){
  body.wp-admin.me-theme-studio-page #me-theme-studio-root .me-theme-studio-preview{
    position:relative!important;top:auto!important;
  }
}


/* Theme Engine V2 readability contract — semantic component palette. */
body.me-theme-engine-v3{
  --me-text-primary:var(--me-text-primary,var(--me-text,#0f172a));
  --me-text-secondary:var(--me-text-secondary,var(--me-muted,#475569));
  --me-text-subtle:var(--me-text-subtle,var(--me-muted,#64748b));
  --me-heading-text:var(--me-heading-text,var(--me-admin-heading,var(--me-text-primary)));
  --me-link-text:var(--me-link-text,var(--me-accent));
  --me-surface-elevated:var(--me-surface-elevated,var(--me-admin-card-bg,var(--me-surface)));
  --me-surface-nested:var(--me-surface-nested,color-mix(in srgb,var(--me-surface-elevated) 92%,var(--me-text-primary) 8%));
  --me-control-bg:var(--me-control-bg,var(--me-admin-input-bg,var(--me-surface-nested)));
  --me-control-text:var(--me-control-text,var(--me-admin-input-text,var(--me-text-primary)));
  --me-control-placeholder:var(--me-control-placeholder,var(--me-admin-input-placeholder,var(--me-text-secondary)));
  --me-control-border:var(--me-control-border,var(--me-admin-input-border,var(--me-border)));
  --me-on-accent:var(--me-on-accent,var(--me-button-text,#fff));
}
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,.me-regression-v5,.me-admin-v5){color:var(--me-text-primary)!important}
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,.me-regression-v5,.me-admin-v5) :is(h1,h2,h3,h4,h5,h6,.title,.me-ui-title){color:var(--me-heading-text)!important;-webkit-text-fill-color:currentColor}
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,.me-regression-v5,.me-admin-v5) :is(p,li,td,label,strong,b,em,summary,details,legend){color:var(--me-text-primary)}
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-module-card-section,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box,.me-regression-v5,.me-admin-v5) :is(.description,p.description,.muted,.me-muted,small){color:var(--me-text-secondary)!important}
body.me-theme-engine-v3 :is(.me-settings-card,.me-theme-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) a:not(.button){color:var(--me-link-text)}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) :is(input[type=text],input[type=number],input[type=email],input[type=date],input[type=url],input[type=password],input[type=search],select,textarea){background:var(--me-control-bg)!important;color:var(--me-control-text)!important;-webkit-text-fill-color:var(--me-control-text)!important;border-color:var(--me-control-border)!important}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) :is(input,textarea)::placeholder{color:var(--me-control-placeholder)!important;opacity:1}
body.me-theme-engine-v3 :is(.me-settings-card,.me-module-card,.me-panel,.me-box,.me-admin-box,.me-autopilot-card,.me-badge-admin-box) option{background:var(--me-control-bg);color:var(--me-control-text)}
body.me-theme-engine-v3 :is(.widefat,.wp-list-table,.me-settings-card table){background:var(--me-table-row-bg,var(--me-surface-elevated));color:var(--me-text-primary)}
body.me-theme-engine-v3 :is(.widefat,.wp-list-table,.me-settings-card table) :is(th,thead td){background:var(--me-table-head-bg,var(--me-surface-nested));color:var(--me-table-head-text,var(--me-heading-text))!important}
body.me-theme-engine-v3 :is(.widefat,.wp-list-table,.me-settings-card table) tbody tr{background:var(--me-table-row-bg,var(--me-surface-elevated));color:var(--me-text-primary)}
body.me-theme-engine-v3 :is(.widefat,.wp-list-table,.me-settings-card table) tbody tr:hover{background:var(--me-table-row-hover,var(--me-surface-nested))}
body.me-theme-engine-v3 :is(.me-sticky-save,.me-sticky-bar,.me-admin-sticky-actions,.me-sticky-save-bar){background:var(--me-admin-sticky-bg,var(--me-surface-elevated))!important;color:var(--me-admin-sticky-text,var(--me-text-primary))!important;border-color:var(--me-border)!important}
body.me-theme-engine-v3 :is(.me-sticky-save,.me-sticky-bar,.me-admin-sticky-actions,.me-sticky-save-bar) :is(span,p,strong,label){color:var(--me-admin-sticky-text,var(--me-text-primary))!important}
.me-recovery-modal.me-theme-engine-v3 .me-recovery-modal__card,.me-cart-modal.me-theme-engine-v3 .me-cart-modal-inner,.me-cart-modal-inner.me-theme-engine-v3,.me-tt-popup.me-theme-engine-v3{--me-local-text:var(--me-tooltip-text,var(--me-text-primary));--me-local-muted:var(--me-tooltip-muted,var(--me-text-secondary))}
.me-recovery-modal.me-theme-engine-v3 :is(p,li,label,strong,span):not(.me-ui-gradient-text),.me-cart-modal.me-theme-engine-v3 :is(p,li,label,strong,span):not(.me-ui-gradient-text),.me-tt-popup.me-theme-engine-v3 :is(p,li,label,strong,span,td,th):not(.me-ui-gradient-text){color:var(--me-local-text)!important}
.me-recovery-modal.me-theme-engine-v3 :is(.description,.muted,small),.me-cart-modal.me-theme-engine-v3 :is(.description,.muted,small),.me-tt-popup.me-theme-engine-v3 :is(.description,.muted,small){color:var(--me-local-muted)!important}
@media (prefers-reduced-motion:reduce){.me-ui-gradient-text,.me-recovery-modal h3,.me-cart-modal-title{animation:none!important;background-position:50% 50%!important}}

/* Theme Engine V2 unified compact action contract — Price Tooltip exports, modal close and snooze. */
body.me-theme-engine-v3 :is(.me-tt-action,.me-recovery-modal__close,.me-recovery-modal__later,#me-cart-modal-close,.me-cart-modal-close,.me-cart-modal-snooze,.me-cart-modal-dismiss){
  appearance:none!important;border:1px solid color-mix(in srgb,var(--me-accent,#ff8a00) 36%,transparent)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--me-accent,#ff8a00) 20%,transparent),color-mix(in srgb,var(--me-accent-2,#c026d3) 18%,transparent))!important;
  color:var(--me-tooltip-text,var(--me-text,#fff))!important;-webkit-text-fill-color:var(--me-tooltip-text,var(--me-text,#fff))!important;
  border-radius:999px!important;min-width:32px!important;height:24px!important;min-height:24px!important;padding:0 9px!important;
  font-size:10px!important;font-weight:800!important;line-height:22px!important;cursor:pointer!important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--me-accent,#ff8a00) 10%,transparent)!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
body.me-theme-engine-v3 :is(.me-tt-action,.me-recovery-modal__close,.me-recovery-modal__later,#me-cart-modal-close,.me-cart-modal-close,.me-cart-modal-snooze,.me-cart-modal-dismiss):hover{
  transform:translateY(-1px)!important;border-color:color-mix(in srgb,var(--me-accent-2,#c026d3) 70%,transparent)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--me-accent,#ff8a00) 34%,transparent),color-mix(in srgb,var(--me-accent-2,#c026d3) 30%,transparent))!important;
}
/* Membership primary action deliberately mirrors Cart Recovery's primary CTA. */
body.me-theme-engine-v3 .me-recovery-modal__button{
  background:var(--me-button-bg,linear-gradient(90deg,var(--me-accent,#2563eb),var(--me-accent-2,#7c3aed)))!important;
  background-size:180% 100%!important;border-radius:15px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:0!important;font-size:13px!important;font-weight:900!important;padding:9px 14px!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--me-accent-2,#7c3aed) 26%,transparent)!important;
}
body.me-theme-engine-v3 .me-recovery-modal__button:hover{
  background:var(--me-button-hover-bg,linear-gradient(90deg,var(--me-accent-2,#7c3aed),var(--me-accent,#2563eb)))!important;
  transform:translateY(-1px) scale(1.015)!important;filter:brightness(.96)!important;
}

/* v26.7.408 — sticky Save Changes is the single primary CTA authority.
   Frontend recovery CTAs carry .me-sticky-btn and use the exact same visual rule. */
body.me-theme-engine-v3 :is(.me-sticky-btn,.me-theme-primary-action){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:38px!important;
  height:auto!important;
  padding:8px 20px!important;
  border:0!important;
  border-radius:100px!important;
  background:linear-gradient(90deg,var(--me-accent,#4f46e5),var(--me-accent-2,#22c55e))!important;
  background-image:linear-gradient(90deg,var(--me-accent,#4f46e5),var(--me-accent-2,#22c55e))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--me-font-ui,"DM Sans",sans-serif)!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.4!important;
  text-align:center!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--me-accent-2,#22c55e) 22%,transparent)!important;
  filter:none!important;
  transform:none!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
body.me-theme-engine-v3 :is(.me-sticky-btn,.me-theme-primary-action):hover{
  background:linear-gradient(90deg,var(--me-accent-2,#22c55e),var(--me-accent,#4f46e5))!important;
  background-image:linear-gradient(90deg,var(--me-accent-2,#22c55e),var(--me-accent,#4f46e5))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transform:translateY(-1px)!important;
  filter:none!important;
  box-shadow:0 14px 32px color-mix(in srgb,var(--me-accent,#4f46e5) 26%,transparent)!important;
}
body.me-theme-engine-v3 :is(.me-recovery-modal__button,.me-cart-modal-cta){width:100%!important;}

/* The visual hosts carry a complete server-rendered contract. They never wait for
   Price Tooltip or the deferred JS decorator to obtain their first-paint surface. */
.me-recovery-modal__card[data-me-theme-runtime-server="1"],
.me-cart-modal-inner[data-me-theme-runtime-server="1"]{
  background:var(--me-surface,var(--me-background,#120b23))!important;
  color:var(--me-text-primary,var(--me-text,#fff))!important;
  border-color:var(--me-border,rgba(255,255,255,.18))!important;
}

/* Universal Modal Focus contract: Membership, Cart Recovery and future modal components. */
:is(.me-recovery-modal__backdrop,.me-cart-modal__backdrop,.me-ui-modal__backdrop){
  position:fixed!important;inset:0!important;pointer-events:none!important;
  background:rgba(2,6,23,var(--me-modal-backdrop-opacity,.35))!important;
  backdrop-filter:blur(var(--me-modal-backdrop-blur,3px))!important;
  -webkit-backdrop-filter:blur(var(--me-modal-backdrop-blur,3px))!important;
}
:is(.me-recovery-modal,.me-cart-modal,.me-ui-modal){isolation:isolate}
:is(.me-recovery-modal__backdrop,.me-cart-modal__backdrop,.me-ui-modal__backdrop){z-index:-1}

/* v26.7.415 — Static gradient fallback. Motion/gradient-flow toggles control animation only;
 * branded emphasis text remains visually identical to generated thumbnails. */
.me-theme-host :is(.me-fx-gradtext-off,.me-campaign-motion-off,.me-motion-off) :is(.me-ui-gradient-text,.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount,.me-cart-modal-title),
.me-theme-host.me-fx-gradtext-off :is(.me-ui-gradient-text,.me-recovery-modal__hero-title,.me-recovery-modal__message strong,.me-recovery-modal__discount,.me-cart-modal-title){
  animation:none!important;
  background-image:var(--me-gradient-text,linear-gradient(90deg,var(--me-accent),var(--me-accent-2),var(--me-accent)))!important;
  background-size:100% 100%!important;background-position:50% 50%!important;background-repeat:no-repeat!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
}
/* v26.7.439 — shared sticky grouped navigation */
body.marketexp-admin-screen .me-admin-sticky-header{position:sticky!important;top:32px!important;z-index:10020!important;width:auto!important;margin:0 0 18px!important}
body.marketexp-admin-screen.folded .me-admin-sticky-header{top:32px!important}
@media(max-width:782px){body.marketexp-admin-screen .me-admin-sticky-header{top:46px!important}}
.me-top-nav-group{position:relative;display:inline-flex}.me-top-nav-group__panel{position:absolute;top:calc(100% + 8px);right:0;z-index:10030;min-width:260px;max-height:65vh;overflow:auto;padding:8px;border-radius:14px;background:var(--me-background,#fff);border:1px solid var(--me-border,#dbe3ef);box-shadow:0 18px 45px rgba(15,23,42,.18)}
.me-top-nav-group__panel[hidden]{display:none!important}.me-top-nav-group__panel a{display:block!important;margin:3px 0!important}
#adminmenu .toplevel_page_marketexp .wp-submenu li a .me-nav-child{display:block;padding-left:14px}
#adminmenu .toplevel_page_marketexp .wp-submenu li a .me-nav-group{display:block;font-weight:800;letter-spacing:.01em}
#adminmenu .toplevel_page_marketexp .wp-submenu li.me-nav-group-row>a{cursor:pointer!important;color:#c4b5fd!important}
#adminmenu .toplevel_page_marketexp .wp-submenu li.me-nav-child-row.is-collapsed{display:none!important}
