/* ========================================================================
   TwilightRun 2.0.82 User / UC Targeted Page Corrections
   File: /templates/twilightrun/css/custom-user.css
   Purpose: dedicated visual authority for Joomla com_users and UnifiedCommerce
   screens only. Restores TRU folio panels, dark controls, gold keys, readable
   contrast, compact password toggles, product cards, and right account menu
   containment without changing UTP/plugin files or module assignments.
   ======================================================================== */
:root {
  --tru-user-folio: #f7f8fb;
  --tru-user-folio-edge: #ffe76a;
  --tru-user-folio-border: rgba(255, 255, 255, .86);
  --tru-user-ink: #101720;
  --tru-user-panel: #111923;
  --tru-user-panel-2: #172232;
  --tru-user-panel-3: #0a1018;
  --tru-user-text: #edf4f8;
  --tru-user-muted: #c8d4de;
  --tru-user-gold: #ffe76a;
  --tru-user-gold-2: #caa23b;
  --tru-user-cyan: #5feaff;
  --tru-user-line: rgba(255, 231, 106, .30);
  --tru-user-font-head: Orbitron, Montserrat, Arial, sans-serif;
  --tru-user-font-body: Montserrat, Arial, sans-serif;
  --tru-user-shadow: 0 18px 44px rgba(0, 0, 0, .42);
  --tru-user-card-shadow: 0 16px 36px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.045);
}

/* ------------------------------------------------------------------------
   A. Workflow scope and main row containment
   ------------------------------------------------------------------------ */
html body.com_users #un-main,
html body.option-com_users #un-main,
html body.com_unifiedcommerce #un-main,
html body.option-com_unifiedcommerce #un-main,
html body[class*="com_unifiedcommerce"] #un-main,
html body[class*="option-com_unifiedcommerce"] #un-main {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

html body.com_users #un-main .unx-content-grid,
html body.option-com_users #un-main .unx-content-grid,
html body.com_unifiedcommerce #un-main .unx-content-grid,
html body.option-com_unifiedcommerce #un-main .unx-content-grid,
html body[class*="com_unifiedcommerce"] #un-main .unx-content-grid,
html body[class*="option-com_unifiedcommerce"] #un-main .unx-content-grid {
  min-width: 0 !important;
  max-width: 100% !important;
  align-items: start !important;
}

@supports selector(#un-main:has(#un-right)) {
  @media (min-width: 981px) {
    html body.com_users #un-main .unx-content-grid:has(> #un-right),
    html body.option-com_users #un-main .unx-content-grid:has(> #un-right),
    html body.com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right),
    html body.option-com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right),
    html body[class*="com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right),
    html body[class*="option-com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right) {
      display: grid !important;
      grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
      column-gap: clamp(18px, 2vw, 30px) !important;
      row-gap: clamp(18px, 2vw, 30px) !important;
      align-items: start !important;
      width: 100% !important;
      min-width: 0 !important;
      box-sizing: border-box !important;
    }

    html body.com_users #un-main .unx-content-grid:has(> #un-right) > #un-component,
    html body.option-com_users #un-main .unx-content-grid:has(> #un-right) > #un-component,
    html body.com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right) > #un-component,
    html body.option-com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right) > #un-component,
    html body[class*="com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right) > #un-component,
    html body[class*="option-com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right) > #un-component {
      grid-column: span 8 !important;
      width: auto !important;
      max-width: 100% !important;
      min-width: 0 !important;
      align-self: start !important;
    }

    html body.com_users #un-main .unx-content-grid:has(> #un-right) > #un-right,
    html body.option-com_users #un-main .unx-content-grid:has(> #un-right) > #un-right,
    html body.com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right) > #un-right,
    html body.option-com_unifiedcommerce #un-main .unx-content-grid:has(> #un-right) > #un-right,
    html body[class*="com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right) > #un-right,
    html body[class*="option-com_unifiedcommerce"] #un-main .unx-content-grid:has(> #un-right) > #un-right {
      grid-column: span 4 !important;
      width: auto !important;
      max-width: 100% !important;
      min-width: 0 !important;
      align-self: start !important;
      float: none !important;
      clear: none !important;
    }
  }
}

@media (max-width: 980px) {
  html body.com_users #un-main .unx-content-grid,
  html body.option-com_users #un-main .unx-content-grid,
  html body.com_unifiedcommerce #un-main .unx-content-grid,
  html body.option-com_unifiedcommerce #un-main .unx-content-grid,
  html body[class*="com_unifiedcommerce"] #un-main .unx-content-grid,
  html body[class*="option-com_unifiedcommerce"] #un-main .unx-content-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  html body.com_users #un-main #un-component,
  html body.option-com_users #un-main #un-component,
  html body.com_users #un-main #un-right,
  html body.option-com_users #un-main #un-right,
  html body.com_unifiedcommerce #un-main #un-component,
  html body.option-com_unifiedcommerce #un-main #un-component,
  html body.com_unifiedcommerce #un-main #un-right,
  html body.option-com_unifiedcommerce #un-main #un-right,
  html body[class*="com_unifiedcommerce"] #un-main #un-component,
  html body[class*="com_unifiedcommerce"] #un-main #un-right {
    grid-column: 1 / -1 !important;
    width: auto !important;
    max-width: 100% !important;
  }
}

/* ------------------------------------------------------------------------
   B. Main folio shell
   ------------------------------------------------------------------------ */
html body.com_users #un-main #un-component,
html body.option-com_users #un-main #un-component,
html body.com_unifiedcommerce #un-main #un-component,
html body.option-com_unifiedcommerce #un-main #un-component,
html body[class*="com_unifiedcommerce"] #un-main #un-component,
html body[class*="option-com_unifiedcommerce"] #un-main #un-component {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: clamp(1.4rem, 3vw, 3rem) !important;
  color: var(--tru-user-ink) !important;
  font-family: var(--tru-user-font-body) !important;
  background: linear-gradient(90deg, var(--tru-user-folio-edge) 0 8px, var(--tru-user-folio) 8px 100%) !important;
  border: 1px solid var(--tru-user-folio-border) !important;
  border-radius: 10px !important;
  box-shadow: var(--tru-user-shadow) !important;
  overflow: visible !important;
}

html body.com_users #un-main #un-component *,
html body.option-com_users #un-main #un-component *,
html body.com_unifiedcommerce #un-main #un-component *,
html body.option-com_unifiedcommerce #un-main #un-component *,
html body[class*="com_unifiedcommerce"] #un-main #un-component * {
  box-sizing: border-box !important;
}

html body.com_users #un-component > *,
html body.option-com_users #un-component > *,
html body.com_unifiedcommerce #un-component > *,
html body.option-com_unifiedcommerce #un-component > *,
html body[class*="com_unifiedcommerce"] #un-component > * {
  max-width: 100% !important;
  min-width: 0 !important;
}

/* ------------------------------------------------------------------------
   C. Light title cards: readable ink, no generated commerce copy
   ------------------------------------------------------------------------ */
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]),
html body.view-catalog #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]),
html body.view-account #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header),
html body.view-profile #un-component :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) {
  display: block !important;
  margin: 0 0 clamp(1.15rem, 2vw, 1.7rem) 0 !important;
  padding: clamp(1rem, 2vw, 1.6rem) !important;
  color: var(--tru-user-ink) !important;
  background: linear-gradient(180deg, #ffffff, #f1f4f8) !important;
  border: 1px solid rgba(16, 23, 32, .13) !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.13) !important;
}

html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body.view-catalog #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body.view-account #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading) {
  margin: 0 !important;
  padding: 0 0 .75rem 0 !important;
  color: var(--tru-user-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(16,23,32,.16) !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: clamp(1.15rem, 2vw, 1.75rem) !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  line-height: 1.28 !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}

html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede) {
  display: none !important;
}

/* Page-specific visible title relabels. */
html body.view-catalog #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child,
html body[class*="com_unifiedcommerce"].view-catalog #un-component :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child {
  font-size: 0 !important;
  line-height: 1 !important;
}
html body.view-catalog #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child::after,
html body[class*="com_unifiedcommerce"].view-catalog #un-component :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child::after {
  content: "SHOP" !important;
  color: var(--tru-user-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: clamp(1.15rem, 2vw, 1.75rem) !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1.28 !important;
  text-transform: uppercase !important;
}

html body.view-account #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child {
  font-size: 0 !important;
  line-height: 1 !important;
}
html body.view-account #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,.page-title,.uc-title,.uc-heading):first-child::after {
  content: "MY ACCOUNT" !important;
  color: var(--tru-user-ink) !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: clamp(1.15rem, 2vw, 1.75rem) !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1.28 !important;
}

/* ------------------------------------------------------------------------
   D. Shared dark cards and section titles
   ------------------------------------------------------------------------ */
html body.com_users #un-component :is(.com-users-login,.login,.com-users-registration,.registration,.com-users-reset,.reset,.com-users-remind,.remind,.com-users-profile,.profile,#member-profile,#user-registration,form,fieldset),
html body.option-com_users #un-component :is(.com-users-login,.login,.com-users-registration,.registration,.com-users-reset,.reset,.com-users-remind,.remind,.com-users-profile,.profile,#member-profile,#user-registration,form,fieldset),
html body.com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-membership-plan,.uc-membership-item-wrapper),
html body.option-com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-membership-plan,.uc-membership-item-wrapper),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-membership-plan,.uc-membership-item-wrapper) {
  display: block !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 clamp(1rem, 2vw, 1.55rem) 0 !important;
  padding: clamp(1.2rem, 2.3vw, 2rem) !important;
  color: var(--tru-user-text) !important;
  background: linear-gradient(180deg, var(--tru-user-panel-2), var(--tru-user-panel-3)) !important;
  border: 1px solid var(--tru-user-line) !important;
  border-radius: 10px !important;
  box-shadow: var(--tru-user-card-shadow) !important;
  overflow: visible !important;
}

html body.view-login #un-component :is(.com-users-login,.login,form),
html body.view-registration #un-component :is(.com-users-registration,.registration,#user-registration,form),
html body.view-reset #un-component :is(.com-users-reset,.reset,form),
html body.view-remind #un-component :is(.com-users-remind,.remind,form) {
  max-width: min(760px, 100%) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body.com_users #un-component .com-users-profile form,
html body.option-com_users #un-component .com-users-profile form,
html body.com_users #un-component .profile form,
html body.option-com_users #un-component .profile form {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

html body.com_users #un-component fieldset > legend,
html body.option-com_users #un-component fieldset > legend,
html body.com_unifiedcommerce #un-component fieldset > legend,
html body.option-com_unifiedcommerce #un-component fieldset > legend,
html body[class*="com_unifiedcommerce"] #un-component fieldset > legend,
html body.com_users #un-component :is(h1,h2,h3,.componentheading,.page-title),
html body.option-com_users #un-component :is(h1,h2,h3,.componentheading,.page-title),
html body.com_unifiedcommerce #un-component :is(.uc-panel-title,.uc-section-title,.uc-card-title),
html body.option-com_unifiedcommerce #un-component :is(.uc-panel-title,.uc-section-title,.uc-card-title) {
  display: block !important;
  position: relative !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 1rem 0 !important;
  padding: 0 0 .75rem 0 !important;
  color: var(--tru-user-gold) !important;
  -webkit-text-fill-color: currentColor !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--tru-user-line) !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: clamp(1.02rem, 1.5vw, 1.36rem) !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  letter-spacing: .18em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 8px rgba(255,231,106,.26) !important;
  transform: none !important;
}

html body.com_users #un-component fieldset > legend + *,
html body.option-com_users #un-component fieldset > legend + *,
html body.com_unifiedcommerce #un-component fieldset > legend + *,
html body.option-com_unifiedcommerce #un-component fieldset > legend + * {
  clear: both !important;
}

/* ------------------------------------------------------------------------
   E. Text contrast: dark panels use light text; light boxes use dark text
   ------------------------------------------------------------------------ */
html body.com_users #un-component :is(label,.control-label,.form-label,.form-check-label,.checkbox label,.radio label,dt,dd,p,li,small,.small,.muted,.form-text,.help-block,.help-inline,.field-label,.field-value,.controls),
html body.option-com_users #un-component :is(label,.control-label,.form-label,.form-check-label,.checkbox label,.radio label,dt,dd,p,li,small,.small,.muted,.form-text,.help-block,.help-inline,.field-label,.field-value,.controls),
html body.com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-account-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-profile-panel) :is(label,.field-label,.field-title,.field-value,p,li,small,.small,.muted,.form-text,.help-block,.help-inline,span),
html body.option-com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-account-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-profile-panel) :is(label,.field-label,.field-title,.field-value,p,li,small,.small,.muted,.form-text,.help-block,.help-inline,span),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-account-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-profile-panel) :is(label,.field-label,.field-title,.field-value,p,li,small,.small,.muted,.form-text,.help-block,.help-inline,span) {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

html body.com_users #un-component :is(.muted,.text-muted,.form-text,.help-block,.help-inline,small,.small),
html body.option-com_users #un-component :is(.muted,.text-muted,.form-text,.help-block,.help-inline,small,.small),
html body[class*="com_unifiedcommerce"] #un-component :is(.muted,.text-muted,.form-text,.help-block,.help-inline,small,.small) {
  color: var(--tru-user-muted) !important;
}

html body.com_users #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]),
html body.option-com_users #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]) {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: linear-gradient(180deg, #172232, #0f1721) !important;
  border: 1px solid rgba(95,234,255,.36) !important;
  border-radius: 9px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
  text-shadow: none !important;
}
html body.com_users #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]) *,
html body.option-com_users #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]) *,
html body[class*="com_unifiedcommerce"] #un-component :is(.alert,.alert-message,.well,.empty-state,.uc-empty,.uc-empty-state,[class*="empty"]) * {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
}

/* ------------------------------------------------------------------------
   F. Forms and buttons
   ------------------------------------------------------------------------ */
html body.com_users #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],input[type="search"],select,textarea),
html body.option-com_users #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],input[type="search"],select,textarea),
html body.com_unifiedcommerce #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],input[type="search"],select,textarea),
html body.option-com_unifiedcommerce #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],input[type="search"],select,textarea),
html body[class*="com_unifiedcommerce"] #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],input[type="search"],select,textarea) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px !important;
  margin: .25rem 0 .75rem 0 !important;
  padding: .65rem .85rem !important;
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: #0d141d !important;
  border: 1px solid rgba(255,231,106,.34) !important;
  border-radius: 6px !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.48) !important;
  font-family: var(--tru-user-font-body) !important;
  font-size: .95rem !important;
  line-height: 1.4 !important;
  outline: none !important;
}

html body.com_users #un-component :is(input,select,textarea):focus,
html body.option-com_users #un-component :is(input,select,textarea):focus,
html body[class*="com_unifiedcommerce"] #un-component :is(input,select,textarea):focus {
  border-color: var(--tru-user-gold) !important;
  box-shadow: 0 0 0 2px rgba(255,231,106,.18), inset 0 1px 2px rgba(0,0,0,.48) !important;
}

html body.com_users #un-component input::placeholder,
html body.option-com_users #un-component input::placeholder,
html body.com_users #un-component textarea::placeholder,
html body.option-com_users #un-component textarea::placeholder,
html body[class*="com_unifiedcommerce"] #un-component input::placeholder,
html body[class*="com_unifiedcommerce"] #un-component textarea::placeholder {
  color: rgba(237,244,248,.66) !important;
  -webkit-text-fill-color: rgba(237,244,248,.66) !important;
  opacity: 1 !important;
}

html body.com_users #un-component input:-webkit-autofill,
html body.option-com_users #un-component input:-webkit-autofill,
html body[class*="com_unifiedcommerce"] #un-component input:-webkit-autofill {
  -webkit-text-fill-color: var(--tru-user-text) !important;
  box-shadow: 0 0 0 1000px #0d141d inset !important;
  caret-color: var(--tru-user-text) !important;
}

html body.com_users #un-component :is(input[type="checkbox"],input[type="radio"]),
html body.option-com_users #un-component :is(input[type="checkbox"],input[type="radio"]),
html body[class*="com_unifiedcommerce"] #un-component :is(input[type="checkbox"],input[type="radio"]) {
  display: inline-block !important;
  width: auto !important;
  min-height: 0 !important;
  margin: 0 .45rem .15rem 0 !important;
  accent-color: var(--tru-user-gold) !important;
}

html body.com_users #un-component .input-group,
html body.option-com_users #un-component .input-group,
html body[class*="com_unifiedcommerce"] #un-component .input-group {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: .5rem !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
}
html body.com_users #un-component .input-group > input,
html body.option-com_users #un-component .input-group > input,
html body[class*="com_unifiedcommerce"] #un-component .input-group > input {
  min-width: 0 !important;
  margin: .25rem 0 .75rem 0 !important;
}

html body.com_users #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button),
html body.option-com_users #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button),
html body.com_unifiedcommerce #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn,.uc-cart-action,.uc-checkout-action,.uc-account-action),
html body.option-com_unifiedcommerce #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn,.uc-cart-action,.uc-checkout-action,.uc-account-action),
html body[class*="com_unifiedcommerce"] #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn,.uc-cart-action,.uc-checkout-action,.uc-account-action) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: .72rem 1.15rem !important;
  color: #061018 !important;
  -webkit-text-fill-color: currentColor !important;
  background: linear-gradient(180deg, #fff58a 0%, var(--tru-user-gold) 48%, var(--tru-user-gold-2) 100%) !important;
  border: 1px solid rgba(255,231,106,.68) !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.52) !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: .78rem !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: .08em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: normal !important;
  cursor: pointer !important;
}
html body.com_users #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button) *,
html body.option-com_users #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button) *,
html body[class*="com_unifiedcommerce"] #un-component :is(.btn,button,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn) * {
  color: inherit !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  -webkit-text-fill-color: currentColor !important;
}

/* Password reveal buttons: embedded SVG, no Font Awesome dependency and no text block. */
html body.com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body.option-com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body[class*="com_unifiedcommerce"] #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]) {
  position: relative !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 !important;
  margin: .25rem 0 .75rem 0 !important;
  overflow: hidden !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  letter-spacing: 0 !important;
  text-indent: -9999px !important;
  white-space: nowrap !important;
  background-color: var(--tru-user-gold) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23061018' stroke-width='2.35' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12s3.5-6 9.5-6 9.5 6 9.5 6-3.5 6-9.5 6-9.5-6-9.5-6z'/%3E%3Ccircle cx='12' cy='12' r='2.6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 19px 19px !important;
  border: 1px solid rgba(255,231,106,.78) !important;
  border-radius: 9px !important;
  box-shadow: 0 0 16px rgba(255,231,106,.24), inset 0 1px 0 rgba(255,255,255,.35) !important;
}
html body.com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]) *,
html body.option-com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]) *,
html body[class*="com_unifiedcommerce"] #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]) * {
  display: none !important;
}
html body.com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::before,
html body.com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::after,
html body.option-com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::before,
html body.option-com_users #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::after {
  content: none !important;
}

/* Passkey buttons: text-only gold key, no large artwork. */
html body.com_users #un-component :is([class*="passkey"],[class*="webauthn"],[id*="passkey"],[id*="webauthn"]) img,
html body.option-com_users #un-component :is([class*="passkey"],[class*="webauthn"],[id*="passkey"],[id*="webauthn"]) img,
html body.com_users #un-component :is([class*="passkey"],[class*="webauthn"],[id*="passkey"],[id*="webauthn"]) svg,
html body.option-com_users #un-component :is([class*="passkey"],[class*="webauthn"],[id*="passkey"],[id*="webauthn"]) svg {
  display: none !important;
}
html body.com_users #un-component :is(.plg_system_webauthn_login_button,[class*="webauthn"] button,[class*="passkey"] button,button[class*="webauthn"],button[class*="passkey"]),
html body.option-com_users #un-component :is(.plg_system_webauthn_login_button,[class*="webauthn"] button,[class*="passkey"] button,button[class*="webauthn"],button[class*="passkey"]) {
  width: 100% !important;
  min-height: 44px !important;
  margin: .75rem 0 !important;
}

/* ------------------------------------------------------------------------
   G. Page-by-page: catalog/shop/product cards
   ------------------------------------------------------------------------ */
html body.view-catalog #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap: clamp(1.1rem, 2.2vw, 1.8rem) !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
}

html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) {
  display: flex !important;
  flex-direction: column !important;
  gap: .85rem !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: clamp(.85rem, 1.4vw, 1.08rem) !important;
  color: var(--tru-user-text) !important;
  background: linear-gradient(180deg, #131d29 0%, #090f16 100%) !important;
  border: 1px solid rgba(255,231,106,.32) !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.04) !important;
  overflow: hidden !important;
}

html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: clamp(230px, 25vw, 340px) !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #020407 !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

@supports selector(div:has(img)) {
  html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img),
  html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #020407 !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    padding: 0 !important;
  }
}

html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: clamp(230px, 25vw, 340px) !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #020407 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}

html body.view-catalog #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title,h2,h3,h4),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title) {
  margin: .1rem 0 .25rem !important;
  padding: 0 !important;
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: var(--tru-user-font-head) !important;
  font-size: clamp(.96rem, 1.18vw, 1.16rem) !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}

html body.view-catalog #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price) {
  color: var(--tru-user-gold) !important;
  -webkit-text-fill-color: currentColor !important;
  background: transparent !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
}

html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(p,span,small,li,div),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(p,span,small,li,div) {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
}

/* ------------------------------------------------------------------------
   H. Account sidebar/menu module
   ------------------------------------------------------------------------ */
html body.com_users #un-right,
html body.option-com_users #un-right,
html body.com_unifiedcommerce #un-right,
html body.option-com_unifiedcommerce #un-right,
html body[class*="com_unifiedcommerce"] #un-right {
  color: var(--tru-user-text) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  align-self: start !important;
}

html body.com_users #un-right :is(.un-module,.un-module-content,.mod-custom,.member-menu,.sp-module,nav),
html body.option-com_users #un-right :is(.un-module,.un-module-content,.mod-custom,.member-menu,.sp-module,nav),
html body.com_unifiedcommerce #un-right :is(.un-module,.un-module-content,.mod-custom,.member-menu,.sp-module,nav),
html body.option-com_unifiedcommerce #un-right :is(.un-module,.un-module-content,.mod-custom,.member-menu,.sp-module,nav),
html body[class*="com_unifiedcommerce"] #un-right :is(.un-module,.un-module-content,.mod-custom,.member-menu,.sp-module,nav) {
  color: var(--tru-user-text) !important;
  background: linear-gradient(180deg, #102034, #0a141f) !important;
  border: 1px solid rgba(95,234,255,.70) !important;
  border-radius: 10px !important;
  box-shadow: 0 0 24px rgba(95,234,255,.20) !important;
  padding: clamp(1rem, 1.8vw, 1.4rem) !important;
}

html body.com_users #un-right :is(h1,h2,h3,.un-module-title),
html body.option-com_users #un-right :is(h1,h2,h3,.un-module-title),
html body.com_unifiedcommerce #un-right :is(h1,h2,h3,.un-module-title),
html body.option-com_unifiedcommerce #un-right :is(h1,h2,h3,.un-module-title) {
  color: var(--tru-user-gold) !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: var(--tru-user-font-head) !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
}

html body.com_users #un-right :is(ul,.mod-menu,.menu),
html body.option-com_users #un-right :is(ul,.mod-menu,.menu),
html body.com_unifiedcommerce #un-right :is(ul,.mod-menu,.menu),
html body.option-com_unifiedcommerce #un-right :is(ul,.mod-menu,.menu) {
  margin: 0 !important;
  padding-left: 1.15rem !important;
}

html body.com_users #un-right a,
html body.option-com_users #un-right a,
html body.com_unifiedcommerce #un-right a,
html body.option-com_unifiedcommerce #un-right a,
html body[class*="com_unifiedcommerce"] #un-right a {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}
html body.com_users #un-right :is(.active,current) > a,
html body.option-com_users #un-right :is(.active,current) > a,
html body.com_unifiedcommerce #un-right :is(.active,current) > a,
html body.option-com_unifiedcommerce #un-right :is(.active,current) > a,
html body.com_users #un-right a:hover,
html body.option-com_users #un-right a:hover,
html body.com_unifiedcommerce #un-right a:hover,
html body.option-com_unifiedcommerce #un-right a:hover {
  color: var(--tru-user-gold) !important;
  -webkit-text-fill-color: currentColor !important;
}

/* ------------------------------------------------------------------------
   I. System messages and final responsive tuning
   ------------------------------------------------------------------------ */
html body.com_users #system-message-container .alert,
html body.option-com_users #system-message-container .alert,
html body.com_unifiedcommerce #system-message-container .alert,
html body.option-com_unifiedcommerce #system-message-container .alert,
html body[class*="com_unifiedcommerce"] #system-message-container .alert,
html body.com_users joomla-alert,
html body.option-com_users joomla-alert,
html body.com_unifiedcommerce joomla-alert,
html body.option-com_unifiedcommerce joomla-alert {
  color: var(--tru-user-text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: #101720 !important;
  border: 1px solid rgba(95,234,255,.45) !important;
  border-radius: 9px !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.32) !important;
}

@media (max-width: 640px) {
  html body.com_users #un-main #un-component,
  html body.option-com_users #un-main #un-component,
  html body.com_unifiedcommerce #un-main #un-component,
  html body.option-com_unifiedcommerce #un-main #un-component,
  html body[class*="com_unifiedcommerce"] #un-main #un-component {
    padding: 1rem !important;
  }
  html body.com_users #un-component :is(form,fieldset,.com-users-login,.login,.com-users-registration,.registration,.com-users-reset,.reset,.com-users-remind,.remind,.com-users-profile,.profile),
  html body.option-com_users #un-component :is(form,fieldset,.com-users-login,.login,.com-users-registration,.registration,.com-users-reset,.reset,.com-users-remind,.remind,.com-users-profile,.profile),
  html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-product-card,.tru-uc-product-card,.uc914-product-card,.product-card,.catalog-card) {
    padding: 1rem !important;
  }
}


/* ========================================================================
   TwilightRun 2.0.82 User/UC page-specific correction pass
   Scope: final-cascade fixes for reported registration, catalog, and profile
   contrast/layout issues. CSS-only; no UTP row/module authority changes.
   ======================================================================== */
:root{
  --tru-user-082-dark:#0d141d;
  --tru-user-082-panel:#121c29;
  --tru-user-082-panel-2:#071019;
  --tru-user-082-text:#f1f7fb;
  --tru-user-082-muted:#d3dee8;
  --tru-user-082-gold:#ffe76a;
  --tru-user-082-ink:#101720;
}

/* 2.0.82: remove public-facing Commerce/UnifiedCommerce explainer copy and
   replace the UC registration sentence with TRU language. */
html body.view-catalog #un-component > :first-child :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body.view-account #un-component > :first-child :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body.view-profile #un-component > :first-child :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(p,.lead,.lede,.intro,.subtitle,.description,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede){
  display:none!important;
}

html body.com_unifiedcommerce.view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p,
html body.option-com_unifiedcommerce.view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p,
html body[class*="com_unifiedcommerce"].view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p,
html body.com_unifiedcommerce #un-component :is(.uc-register-intro,.uc-registration-intro,.uc-auth-intro),
html body.option-com_unifiedcommerce #un-component :is(.uc-register-intro,.uc-registration-intro,.uc-auth-intro){
  display:block!important;
  font-size:0!important;
  line-height:0!important;
  margin:.2rem 0 1.35rem!important;
  padding:0!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:transparent!important;
  border:0!important;
  text-shadow:none!important;
}
html body.com_unifiedcommerce.view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p::after,
html body.option-com_unifiedcommerce.view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p::after,
html body[class*="com_unifiedcommerce"].view-registration #un-component :is(h1,h2,.uc-title,.uc-heading,.page-title) + p::after,
html body.com_unifiedcommerce #un-component :is(.uc-register-intro,.uc-registration-intro,.uc-auth-intro)::after,
html body.option-com_unifiedcommerce #un-component :is(.uc-register-intro,.uc-registration-intro,.uc-auth-intro)::after{
  content:"Register for a TRU account."!important;
  display:block!important;
  color:var(--tru-user-082-text)!important;
  -webkit-text-fill-color:currentColor!important;
  font:500 1rem/1.6 var(--tru-user-font-body,Montserrat,Arial,sans-serif)!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  text-shadow:none!important;
}

/* 2.0.82: light folio title cards use ink; dark panels use light text. */
html body.view-catalog #un-component > :first-child,
html body.view-account #un-component > :first-child,
html body.view-profile #un-component > :first-child,
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]){
  color:var(--tru-user-082-ink)!important;
  -webkit-text-fill-color:currentColor!important;
  background:linear-gradient(180deg,#fff,#f3f5f8)!important;
}
html body.view-catalog #un-component > :first-child :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body.view-account #un-component > :first-child :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body.view-profile #un-component > :first-child :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,[class*="catalog-header"],[class*="store-header"],[class*="shop-header"]) :is(h1,h2,h3,.title,.page-title,.uc-title,.uc-heading){
  color:var(--tru-user-082-ink)!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:none!important;
}

/* 2.0.82: profile/customer/billing/delivery panels - no dark text on dark backgrounds. */
html body.view-profile #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]),
html body.view-account #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]){
  color:var(--tru-user-082-text)!important;
  -webkit-text-fill-color:currentColor!important;
  background:linear-gradient(180deg,var(--tru-user-082-panel),var(--tru-user-082-panel-2))!important;
}
html body.view-profile #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,p,span,small,.small,.muted,.text-muted,.form-text,.help-block,.help-inline,li,dt,dd),
html body.view-account #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,p,span,small,.small,.muted,.text-muted,.form-text,.help-block,.help-inline,li,dt,dd),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,p,span,small,.small,.muted,.text-muted,.form-text,.help-block,.help-inline,li,dt,dd){
  color:var(--tru-user-082-text)!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body.view-profile #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(h1,h2,h3,h4,legend,.section-title,.uc-section-title,.uc-panel-title,.uc-card-title),
html body.view-account #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,.profile,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(h1,h2,h3,h4,legend,.section-title,.uc-section-title,.uc-panel-title,.uc-card-title),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-form-section,.uc-profile-panel,.uc-account-panel,fieldset,[class*="customer"],[class*="billing"],[class*="delivery"],[class*="address"]) :is(h1,h2,h3,h4,legend,.section-title,.uc-section-title,.uc-panel-title,.uc-card-title){
  color:var(--tru-user-082-gold)!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:0 0 8px rgba(255,231,106,.22)!important;
}

/* 2.0.82: input controls on every User/UC workflow route, including autofill. */
html body.view-login #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body.view-registration #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body.view-reset #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body.view-remind #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body.view-profile #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body.view-account #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea),
html body[class*="com_unifiedcommerce"] #un-component :is(input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="number"],select,textarea){
  color:var(--tru-user-082-text)!important;
  -webkit-text-fill-color:currentColor!important;
  background:#0b121b!important;
  border:1px solid rgba(255,231,106,.42)!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.55)!important;
}
html body.view-login #un-component input:-webkit-autofill,
html body.view-registration #un-component input:-webkit-autofill,
html body.view-reset #un-component input:-webkit-autofill,
html body.view-remind #un-component input:-webkit-autofill,
html body.view-profile #un-component input:-webkit-autofill,
html body.view-account #un-component input:-webkit-autofill,
html body[class*="com_unifiedcommerce"] #un-component input:-webkit-autofill{
  -webkit-box-shadow:0 0 0 1000px #0b121b inset!important;
  -webkit-text-fill-color:var(--tru-user-082-text)!important;
  caret-color:var(--tru-user-082-text)!important;
}
html body.view-login #un-component :is(input,textarea)::placeholder,
html body.view-registration #un-component :is(input,textarea)::placeholder,
html body.view-reset #un-component :is(input,textarea)::placeholder,
html body.view-remind #un-component :is(input,textarea)::placeholder,
html body.view-profile #un-component :is(input,textarea)::placeholder,
html body.view-account #un-component :is(input,textarea)::placeholder,
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder{
  color:rgba(241,247,251,.68)!important;
  -webkit-text-fill-color:rgba(241,247,251,.68)!important;
}

/* 2.0.82: password reveal buttons use an embedded SVG, never missing FA glyphs. */
html body.view-login #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body.view-registration #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body.view-reset #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body.view-remind #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]),
html body[class*="com_unifiedcommerce"] #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"]){
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:.25rem 0 .75rem .45rem!important;
  overflow:hidden!important;
  text-indent:-999px!important;
  white-space:nowrap!important;
  background-color:var(--tru-user-082-gold)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath fill=%27%230b121b%27 d=%27M12 5C6.8 5 2.7 9.1 1.2 12c1.5 2.9 5.6 7 10.8 7s9.3-4.1 10.8-7C21.3 9.1 17.2 5 12 5Zm0 11.2A4.2 4.2 0 1 1 12 7.8a4.2 4.2 0 0 1 0 8.4Zm0-1.8A2.4 2.4 0 1 0 12 9.6a2.4 2.4 0 0 0 0 4.8Z%27/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:19px 19px!important;
  border:1px solid rgba(255,231,106,.55)!important;
  border-radius:8px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32),0 0 14px rgba(255,231,106,.30)!important;
}
html body.view-login #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::before,
html body.view-login #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::after,
html body.view-registration #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::before,
html body.view-registration #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::after,
html body[class*="com_unifiedcommerce"] #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::before,
html body[class*="com_unifiedcommerce"] #un-component :is(button.input-password-toggle,button[aria-label*="password" i],button[title*="password" i],button[class*="password"][type="button"],.btn[class*="password"])::after{
  content:none!important;
  display:none!important;
}

/* 2.0.82: product cards are compact dark cards; full product image visible;
   no oversized empty title/description boxes. */
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]){
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:.75rem!important;
  height:auto!important;
  min-height:0!important;
  padding:clamp(.9rem,1.6vw,1.15rem)!important;
  background:linear-gradient(180deg,#121c29,#080f17)!important;
  border:1px solid rgba(255,231,106,.30)!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:.8rem!important;
  background:#020407!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:8px!important;
  overflow:visible!important;
}
@supports selector(div:has(img)){
  html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img),
  html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    padding:.8rem!important;
    background:#020407!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:8px!important;
    overflow:visible!important;
  }
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  padding:0!important;
  background:#020407!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
html body.view-catalog #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content){
  display:block!important;
  min-height:0!important;
  height:auto!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title,h2,h3,h4),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title){
  display:block!important;
  min-height:0!important;
  height:auto!important;
  margin:.1rem 0 .2rem!important;
  padding:0!important;
  color:var(--tru-user-082-text)!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-size:clamp(.92rem,1.05vw,1.05rem)!important;
  line-height:1.35!important;
  letter-spacing:.045em!important;
  text-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary){
  min-height:0!important;
  height:auto!important;
  margin:.2rem 0!important;
  padding:0!important;
  color:var(--tru-user-082-muted)!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary):empty,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary):empty{
  display:none!important;
}
html body.view-catalog #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price){
  color:var(--tru-user-082-gold)!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  text-shadow:none!important;
}

/* ========================================================================
   TwilightRun 2.0.83 — User/UC Single-Panel Flattening
   Purpose: remove redundant dark/bordered wrapper shells on single-form
   user screens while preserving the TRU folio, one dark control panel,
   readable fields, gold actions, and UTP template structure.
   ======================================================================== */

/* Single-form pages use ONE dark card: the view wrapper. */
html body.view-login #un-component > .login,
html body.view-login #un-component > .com-users-login,
html body.view-registration #un-component > .registration,
html body.view-registration #un-component > .com-users-registration,
html body.view-reset #un-component > .reset,
html body.view-reset #un-component > .com-users-reset,
html body.view-remind #un-component > .remind,
html body.view-remind #un-component > .com-users-remind,
html body.option-com_users.view-login #un-component > .login,
html body.option-com_users.view-login #un-component > .com-users-login,
html body.option-com_users.view-registration #un-component > .registration,
html body.option-com_users.view-registration #un-component > .com-users-registration,
html body.option-com_users.view-reset #un-component > .reset,
html body.option-com_users.view-reset #un-component > .com-users-reset,
html body.option-com_users.view-remind #un-component > .remind,
html body.option-com_users.view-remind #un-component > .com-users-remind,
html body.com_users.view-login #un-component > .login,
html body.com_users.view-login #un-component > .com-users-login,
html body.com_users.view-registration #un-component > .registration,
html body.com_users.view-registration #un-component > .com-users-registration,
html body.com_users.view-reset #un-component > .reset,
html body.com_users.view-reset #un-component > .com-users-reset,
html body.com_users.view-remind #un-component > .remind,
html body.com_users.view-remind #un-component > .com-users-remind {
  display:block!important;
  width:100%!important;
  max-width:min(860px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:clamp(1.55rem,3vw,2.35rem)!important;
  color:var(--tru-user-text,#edf4f8)!important;
  background:linear-gradient(180deg,#151f2d,#071018)!important;
  border:1px solid rgba(255,231,106,.28)!important;
  border-radius:10px!important;
  box-shadow:0 20px 46px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:visible!important;
}

/* If Joomla outputs the form directly without a wrapper, make that form the one card. */
html body.view-login #un-component > form,
html body.view-registration #un-component > form,
html body.view-reset #un-component > form,
html body.view-remind #un-component > form,
html body.option-com_users.view-login #un-component > form,
html body.option-com_users.view-registration #un-component > form,
html body.option-com_users.view-reset #un-component > form,
html body.option-com_users.view-remind #un-component > form,
html body.com_users.view-login #un-component > form,
html body.com_users.view-registration #un-component > form,
html body.com_users.view-reset #un-component > form,
html body.com_users.view-remind #un-component > form {
  display:block!important;
  width:100%!important;
  max-width:min(860px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:clamp(1.55rem,3vw,2.35rem)!important;
  color:var(--tru-user-text,#edf4f8)!important;
  background:linear-gradient(180deg,#151f2d,#071018)!important;
  border:1px solid rgba(255,231,106,.28)!important;
  border-radius:10px!important;
  box-shadow:0 20px 46px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:visible!important;
}

/* Flatten nested forms/fieldsets inside those single-form pages. */
html body.view-login #un-component .login form,
html body.view-login #un-component .com-users-login form,
html body.view-registration #un-component .registration form,
html body.view-registration #un-component .com-users-registration form,
html body.view-reset #un-component .reset form,
html body.view-reset #un-component .com-users-reset form,
html body.view-remind #un-component .remind form,
html body.view-remind #un-component .com-users-remind form,
html body.option-com_users.view-login #un-component .login form,
html body.option-com_users.view-login #un-component .com-users-login form,
html body.option-com_users.view-registration #un-component .registration form,
html body.option-com_users.view-registration #un-component .com-users-registration form,
html body.option-com_users.view-reset #un-component .reset form,
html body.option-com_users.view-reset #un-component .com-users-reset form,
html body.option-com_users.view-remind #un-component .remind form,
html body.option-com_users.view-remind #un-component .com-users-remind form,
html body.com_users.view-login #un-component .login form,
html body.com_users.view-login #un-component .com-users-login form,
html body.com_users.view-registration #un-component .registration form,
html body.com_users.view-registration #un-component .com-users-registration form,
html body.com_users.view-reset #un-component .reset form,
html body.com_users.view-reset #un-component .com-users-reset form,
html body.com_users.view-remind #un-component .remind form,
html body.com_users.view-remind #un-component .com-users-remind form,
html body.view-login #un-component form fieldset,
html body.view-registration #un-component form fieldset,
html body.view-reset #un-component form fieldset,
html body.view-remind #un-component form fieldset,
html body.option-com_users.view-login #un-component form fieldset,
html body.option-com_users.view-registration #un-component form fieldset,
html body.option-com_users.view-reset #un-component form fieldset,
html body.option-com_users.view-remind #un-component form fieldset,
html body.com_users.view-login #un-component form fieldset,
html body.com_users.view-registration #un-component form fieldset,
html body.com_users.view-reset #un-component form fieldset,
html body.com_users.view-remind #un-component form fieldset {
  display:block!important;
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  overflow:visible!important;
}

/* Any remaining form-only helper shells become spacing wrappers, not visual boxes. */
html body.view-login #un-component .login :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.view-registration #un-component .registration :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.view-reset #un-component .reset :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.view-remind #un-component .remind :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.option-com_users.view-login #un-component :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.option-com_users.view-registration #un-component :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.option-com_users.view-reset #un-component :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label),
html body.option-com_users.view-remind #un-component :where(.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.control-label) {
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}

/* Put the auxiliary login links outside the form flow, but inside the single dark card. */
html body.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group),
html body.option-com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group),
html body.com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.6rem!important;
  margin:1rem 0 0!important;
  padding:0!important;
  list-style:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) li,
html body.option-com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) li,
html body.com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) li {
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
html body.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) a,
html body.option-com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) a,
html body.com_users.view-login #un-component :is(.login,.com-users-login) :is(ul,ol,.login-links,.list-group) a {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:.6rem .9rem!important;
  color:var(--tru-user-gold,#ffe76a)!important;
  -webkit-text-fill-color:currentColor!important;
  background:linear-gradient(180deg,#111b28,#071018)!important;
  border:1px solid rgba(95,234,255,.35)!important;
  border-radius:7px!important;
  box-shadow:0 8px 20px rgba(0,0,0,.32)!important;
  font-family:var(--tru-user-font-head,Orbitron,Montserrat,Arial,sans-serif)!important;
  font-size:.72rem!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  text-shadow:none!important;
}

/* Remove stale generated/empty legends on single-form pages only. */
html body.view-login #un-component form fieldset > legend:empty,
html body.view-registration #un-component form fieldset > legend:empty,
html body.view-reset #un-component form fieldset > legend:empty,
html body.view-remind #un-component form fieldset > legend:empty,
html body.view-login #un-component form fieldset > legend.visually-hidden,
html body.view-registration #un-component form fieldset > legend.visually-hidden,
html body.view-reset #un-component form fieldset > legend.visually-hidden,
html body.view-remind #un-component form fieldset > legend.visually-hidden {
  display:none!important;
  margin:0!important;
  padding:0!important;
}

/* Tighten the bottom of one-card forms so no empty footer cavity remains. */
html body.view-login #un-component :is(.login,.com-users-login,form) > :last-child,
html body.view-registration #un-component :is(.registration,.com-users-registration,form) > :last-child,
html body.view-reset #un-component :is(.reset,.com-users-reset,form) > :last-child,
html body.view-remind #un-component :is(.remind,.com-users-remind,form) > :last-child {
  margin-bottom:0!important;
}


/* ========================================================================
   TwilightRun 2.0.84 — Hard Flatten Login/User Form Shells
   Purpose: the live /component/users/login route does not reliably expose
   body.view-login, so the earlier flatten rules missed Joomla's raw .login
   markup. This final-cascade block targets the actual com_users login/remind/
   reset/registration wrappers without touching UTP rows, columns, modules,
   header controls, or template placement.
   ======================================================================== */

/* Make the route wrapper itself the only dark TRU card for raw Joomla user forms. */
html body.com_users #un-component .login,
html body.option-com_users #un-component .login,
html body.com_users #un-component .com-users-login,
html body.option-com_users #un-component .com-users-login,
html body.com_users #un-component .registration,
html body.option-com_users #un-component .registration,
html body.com_users #un-component .com-users-registration,
html body.option-com_users #un-component .com-users-registration,
html body.com_users #un-component .reset,
html body.option-com_users #un-component .reset,
html body.com_users #un-component .com-users-reset,
html body.option-com_users #un-component .com-users-reset,
html body.com_users #un-component .remind,
html body.option-com_users #un-component .remind,
html body.com_users #un-component .com-users-remind,
html body.option-com_users #un-component .com-users-remind {
  display:block!important;
  width:100%!important;
  max-width:min(860px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:clamp(1.45rem,2.8vw,2.15rem)!important;
  color:var(--tru-user-text,#edf4f8)!important;
  background:linear-gradient(180deg,#151f2d,#071018)!important;
  border:1px solid rgba(255,231,106,.28)!important;
  border-radius:10px!important;
  box-shadow:0 20px 46px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:visible!important;
}

/* If Joomla outputs login as a bare form, style only known login form IDs/actions as the card. */
html body.com_users #un-component > form#login-form,
html body.option-com_users #un-component > form#login-form,
html body.com_users #un-component > form[action*="com_users"][action*="login"],
html body.option-com_users #un-component > form[action*="com_users"][action*="login"] {
  display:block!important;
  width:100%!important;
  max-width:min(860px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:clamp(1.45rem,2.8vw,2.15rem)!important;
  color:var(--tru-user-text,#edf4f8)!important;
  background:linear-gradient(180deg,#151f2d,#071018)!important;
  border:1px solid rgba(255,231,106,.28)!important;
  border-radius:10px!important;
  box-shadow:0 20px 46px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:visible!important;
}

/* Hard-flatten every visual wrapper inside the one card. These are spacing/semantic
   shells only; fields and buttons keep their own styling below. */
html body.com_users #un-component .login form,
html body.option-com_users #un-component .login form,
html body.com_users #un-component .com-users-login form,
html body.option-com_users #un-component .com-users-login form,
html body.com_users #un-component .registration form,
html body.option-com_users #un-component .registration form,
html body.com_users #un-component .com-users-registration form,
html body.option-com_users #un-component .com-users-registration form,
html body.com_users #un-component .reset form,
html body.option-com_users #un-component .reset form,
html body.com_users #un-component .com-users-reset form,
html body.option-com_users #un-component .com-users-reset form,
html body.com_users #un-component .remind form,
html body.option-com_users #un-component .remind form,
html body.com_users #un-component .com-users-remind form,
html body.option-com_users #un-component .com-users-remind form,
html body.com_users #un-component .login fieldset,
html body.option-com_users #un-component .login fieldset,
html body.com_users #un-component .com-users-login fieldset,
html body.option-com_users #un-component .com-users-login fieldset,
html body.com_users #un-component .registration fieldset,
html body.option-com_users #un-component .registration fieldset,
html body.com_users #un-component .com-users-registration fieldset,
html body.option-com_users #un-component .com-users-registration fieldset,
html body.com_users #un-component .reset fieldset,
html body.option-com_users #un-component .reset fieldset,
html body.com_users #un-component .com-users-reset fieldset,
html body.option-com_users #un-component .com-users-reset fieldset,
html body.com_users #un-component .remind fieldset,
html body.option-com_users #un-component .remind fieldset,
html body.com_users #un-component .com-users-remind fieldset,
html body.option-com_users #un-component .com-users-remind fieldset,
html body.com_users #un-component .login .well,
html body.option-com_users #un-component .login .well,
html body.com_users #un-component .com-users-login .well,
html body.option-com_users #un-component .com-users-login .well,
html body.com_users #un-component .registration .well,
html body.option-com_users #un-component .registration .well,
html body.com_users #un-component .com-users-registration .well,
html body.option-com_users #un-component .com-users-registration .well,
html body.com_users #un-component .reset .well,
html body.option-com_users #un-component .reset .well,
html body.com_users #un-component .remind .well,
html body.option-com_users #un-component .remind .well {
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  overflow:visible!important;
}

/* Flatten common Bootstrap/Joomla layout wrappers that produced the visible nested boxes. */
html body.com_users #un-component .login :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.option-com_users #un-component .login :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.com_users #un-component .com-users-login :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.option-com_users #un-component .com-users-login :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.com_users #un-component .registration :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.option-com_users #un-component .registration :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.com_users #un-component .reset :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.option-com_users #un-component .reset :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.com_users #un-component .remind :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend),
html body.option-com_users #un-component .remind :is(.form-horizontal,.control-group,.controls,.form-group,.mb-3,.input-group,.password-group,.input-password-wrapper,.input-append,.input-prepend) {
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  color:inherit!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
}

html body.com_users #un-component .login :is(.control-group,.form-group,.mb-3),
html body.option-com_users #un-component .login :is(.control-group,.form-group,.mb-3),
html body.com_users #un-component .com-users-login :is(.control-group,.form-group,.mb-3),
html body.option-com_users #un-component .com-users-login :is(.control-group,.form-group,.mb-3),
html body.com_users #un-component .registration :is(.control-group,.form-group,.mb-3),
html body.option-com_users #un-component .registration :is(.control-group,.form-group,.mb-3),
html body.com_users #un-component .reset :is(.control-group,.form-group,.mb-3),
html body.option-com_users #un-component .reset :is(.control-group,.form-group,.mb-3),
html body.com_users #un-component .remind :is(.control-group,.form-group,.mb-3),
html body.option-com_users #un-component .remind :is(.control-group,.form-group,.mb-3) {
  margin:0 0 .85rem!important;
  padding:0!important;
}

/* Hide empty legends and keep real legends as a normal in-card heading. */
html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend:empty,
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend:empty,
html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend.visually-hidden,
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend.visually-hidden {
  display:none!important;
}

html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend:not(:empty):not(.visually-hidden),
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) fieldset > legend:not(:empty):not(.visually-hidden) {
  display:block!important;
  float:none!important;
  width:100%!important;
  margin:0 0 1rem!important;
  padding:0 0 .75rem!important;
  color:var(--tru-user-gold,#ffe76a)!important;
  border:0!important;
  border-bottom:1px solid rgba(255,231,106,.26)!important;
  background:transparent!important;
  font-family:var(--tru-user-font-head,Orbitron,Montserrat,Arial,sans-serif)!important;
  font-size:clamp(1rem,1.5vw,1.35rem)!important;
  font-weight:900!important;
  line-height:1.3!important;
  letter-spacing:.18em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-shadow:0 0 8px rgba(255,231,106,.28)!important;
}

/* Restore field readability after wrapper flattening. */
html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) :is(label,.control-label,.form-label,.form-check-label,.form-text,.help-block,.help-inline,.small,small,p,span,li),
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) :is(label,.control-label,.form-label,.form-check-label,.form-text,.help-block,.help-inline,.small,small,p,span,li) {
  color:var(--tru-user-text,#edf4f8)!important;
  text-shadow:none!important;
}

html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) :is(input[type="text"],input[type="email"],input[type="password"],input[type="search"],select,textarea),
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) :is(input[type="text"],input[type="email"],input[type="password"],input[type="search"],select,textarea) {
  width:100%!important;
  max-width:100%!important;
  min-height:42px!important;
  color:var(--tru-user-text,#edf4f8)!important;
  background:#070d14!important;
  border:1px solid rgba(255,231,106,.48)!important;
  border-radius:6px!important;
  box-shadow:none!important;
}

/* Keep password controls compact inside the flattened form. */
html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration) :is(button.input-password-toggle,button[aria-label*="password"],button[title*="password"],.btn-password-toggle,.password-toggle),
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration) :is(button.input-password-toggle,button[aria-label*="password"],button[title*="password"],.btn-password-toggle,.password-toggle) {
  flex:0 0 40px!important;
  width:40px!important;
  max-width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin-left:.55rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#061018!important;
  background:linear-gradient(180deg,#fff48a,#d3ad35)!important;
  border:0!important;
  border-radius:7px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.34),0 0 14px rgba(255,231,106,.26)!important;
  font-size:0!important;
  line-height:1!important;
  overflow:hidden!important;
}

/* Reduce the single-form panel height now that nested shells are flat. */
html body.com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) > :last-child,
html body.option-com_users #un-component :is(.login,.com-users-login,.registration,.com-users-registration,.reset,.com-users-reset,.remind,.com-users-remind) > :last-child {
  margin-bottom:0!important;
}


/* ========================================================================
   TwilightRun 2.0.85 — Actual Login Route Flatten + Field Contrast Lock
   Scope: raw Joomla /component/users/login and sibling com_users single-form
   routes that may not expose body.view-* classes consistently. Uses :has()
   only inside #un-component to avoid UTP row/module/position authority.
   ======================================================================== */

/* The live raw Joomla login route is identified by username + password fields,
   not by unreliable body.view-login classes. Keep one dark card only. */
html body #un-component:has(input[name="username"]):has(input[type="password"]) > :is(.login,.com-users-login,.users-login,.login-form,form#login-form,form[name="login"],form[action*="user.login"],form[action*="task=user.login"]),
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) > :is(.registration,.com-users-registration,.users-registration,form#member-registration),
html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) > :is(.reset,.remind,.com-users-reset,.com-users-remind,form) {
  display:block!important;
  width:100%!important;
  max-width:min(760px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:clamp(1.35rem,2.4vw,1.9rem)!important;
  color:#edf4f8!important;
  background:linear-gradient(180deg,#151f2d 0%,#081018 100%)!important;
  border:1px solid rgba(255,231,106,.28)!important;
  border-radius:10px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.045)!important;
  outline:0!important;
  overflow:visible!important;
}

/* Flatten the containers that created the multiple visible empty boxes. These
   are semantic Joomla/Bootstrap wrappers, not UTP/module-position wrappers. */
html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(form,fieldset,.well,.form-horizontal,.form-vertical,.userdata,.login-fields,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group,.field-spacer),
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(form,fieldset,.well,.form-horizontal,.form-vertical,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group,.field-spacer),
html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) :is(form,fieldset,.well,.form-horizontal,.form-vertical,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group,.field-spacer) {
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  filter:none!important;
  overflow:visible!important;
}

/* Restore normal vertical rhythm after flattening wrapper shells. */
html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(.control-group,.form-group,.mb-3,.userdata,.login-fields) + :is(.control-group,.form-group,.mb-3),
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(.control-group,.form-group,.mb-3) + :is(.control-group,.form-group,.mb-3),
html body #un-component:has(input[name="jform[email]"]) :is(.control-group,.form-group,.mb-3) + :is(.control-group,.form-group,.mb-3) {
  margin-top:.85rem!important;
}

html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(label,.control-label,.form-label,.form-check-label),
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(label,.control-label,.form-label,.form-check-label),
html body #un-component:has(input[name="jform[email]"]) :is(label,.control-label,.form-label,.form-check-label) {
  display:block!important;
  margin:0 0 .35rem!important;
  padding:0!important;
  color:#edf4f8!important;
  -webkit-text-fill-color:#edf4f8!important;
  opacity:1!important;
  text-shadow:none!important;
  font-family:var(--tru-user-font-body,Montserrat,Arial,sans-serif)!important;
  font-weight:600!important;
  letter-spacing:.015em!important;
}

/* Hard lock field contrast, including browser autofill. */
html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],select,textarea),
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],select,textarea),
html body #un-component:has(input[name="jform[email]"]) :is(input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],select,textarea) {
  width:100%!important;
  max-width:100%!important;
  min-height:42px!important;
  height:auto!important;
  padding:.58rem .72rem!important;
  color:#edf4f8!important;
  -webkit-text-fill-color:#edf4f8!important;
  caret-color:#ffe76a!important;
  background:#070d14!important;
  background-image:none!important;
  border:1px solid rgba(255,231,106,.46)!important;
  border-radius:6px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)!important;
  outline:0!important;
  text-shadow:none!important;
  font-family:var(--tru-user-font-body,Montserrat,Arial,sans-serif)!important;
}

html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(input,textarea)::placeholder,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(input,textarea)::placeholder,
html body #un-component:has(input[name="jform[email]"]) :is(input,textarea)::placeholder {
  color:rgba(237,244,248,.66)!important;
  -webkit-text-fill-color:rgba(237,244,248,.66)!important;
  opacity:1!important;
}

html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(input,textarea)::selection,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(input,textarea)::selection,
html body #un-component:has(input[name="jform[email]"]) :is(input,textarea)::selection {
  color:#061018!important;
  background:#ffe76a!important;
  -webkit-text-fill-color:#061018!important;
  text-shadow:none!important;
}

html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(input,textarea)::-moz-selection,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) :is(input,textarea)::-moz-selection,
html body #un-component:has(input[name="jform[email]"]) :is(input,textarea)::-moz-selection {
  color:#061018!important;
  background:#ffe76a!important;
  text-shadow:none!important;
}

html body #un-component:has(input[name="username"]):has(input[type="password"]) input:-webkit-autofill,
html body #un-component:has(input[name="username"]):has(input[type="password"]) input:-webkit-autofill:hover,
html body #un-component:has(input[name="username"]):has(input[type="password"]) input:-webkit-autofill:focus,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) input:-webkit-autofill,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) input:-webkit-autofill:hover,
html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) input:-webkit-autofill:focus,
html body #un-component:has(input[name="jform[email]"]) input:-webkit-autofill,
html body #un-component:has(input[name="jform[email]"]) input:-webkit-autofill:hover,
html body #un-component:has(input[name="jform[email]"]) input:-webkit-autofill:focus {
  -webkit-text-fill-color:#edf4f8!important;
  caret-color:#ffe76a!important;
  -webkit-box-shadow:0 0 0 1000px #070d14 inset!important;
  box-shadow:0 0 0 1000px #070d14 inset!important;
  border:1px solid rgba(255,231,106,.56)!important;
  transition:background-color 9999s ease-out 0s!important;
}

/* Password reveal: compact gold icon button, no FA dependency. */
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle) {
  flex:0 0 38px!important;
  width:38px!important;
  max-width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  margin-left:.55rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#061018!important;
  -webkit-text-fill-color:#061018!important;
  font-size:0!important;
  line-height:1!important;
  text-indent:-9999px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  background-color:#f0cf53!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23061018' d='M12 5C6.7 5 2.6 9.05 1.1 12c1.5 2.95 5.6 7 10.9 7s9.4-4.05 10.9-7C21.4 9.05 17.3 5 12 5Zm0 11.4A4.4 4.4 0 1 1 12 7.6a4.4 4.4 0 0 1 0 8.8Zm0-1.8A2.6 2.6 0 1 0 12 9.4a2.6 2.6 0 0 0 0 5.2Z'/%3E%3C/svg%3E"),linear-gradient(180deg,#fff48a,#d2ad35)!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:center,center!important;
  background-size:18px 18px,100% 100%!important;
  border:0!important;
  border-radius:7px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32),0 0 14px rgba(255,231,106,.30)!important;
}
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle) > * {
  display:none!important;
}
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle)::before,
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle)::after {
  content:none!important;
  display:none!important;
}

/* Password field rows should align without creating an extra visible container. */
html body #un-component:has(input[type="password"]) :is(.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group) {
  display:flex!important;
  align-items:center!important;
  gap:0!important;
}
html body #un-component:has(input[type="password"]) :is(.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group) input[type="password"] {
  flex:1 1 auto!important;
  min-width:0!important;
}

/* Keep helper links inside the single card as a clean secondary control row. */
html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(ul.nav,ul.list-unstyled,.login-links,.com-users-login__options) {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.6rem!important;
  margin:1.05rem 0 0!important;
  padding:0!important;
  list-style:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body #un-component:has(input[name="username"]):has(input[type="password"]) :is(ul.nav,ul.list-unstyled,.login-links,.com-users-login__options) li {
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

/* ========================================================================
   TwilightRun 2.0.86 — UC/User Edit-Profile Aesthetic Unification
   Purpose: make UC/account/profile/shop/login surfaces follow the preferred
   edit-profile aesthetic: light folio shell, dark navy control panels, gold
   headings/buttons, dark readable fields, compact controls, and no visible
   Commerce explainer copy. CSS-only; no UTP row/module/position authority.
   ======================================================================== */
:root{
  --tru-086-folio:#f7f8fb;
  --tru-086-edge:#ffe76a;
  --tru-086-panel:#151f2d;
  --tru-086-panel-2:#0b121b;
  --tru-086-field:#070d14;
  --tru-086-text:#edf4f8;
  --tru-086-muted:#c8d4de;
  --tru-086-dim:#9fb0c2;
  --tru-086-ink:#101720;
  --tru-086-gold:#ffe76a;
  --tru-086-gold-2:#caa23b;
  --tru-086-cyan:#5feaff;
  --tru-086-line:rgba(255,231,106,.34);
  --tru-086-blue-line:rgba(95,234,255,.24);
  --tru-086-head:Orbitron,Montserrat,Arial,sans-serif;
  --tru-086-body:Montserrat,Arial,sans-serif;
  --tru-086-shadow:0 18px 44px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.045);
}

/* ---------- A. General workflow contrast: UC/User dark-panel language ---------- */
html body.com_users #un-component :is(.login,.registration,.reset,.remind,.com-users-login,.com-users-registration,.com-users-reset,.com-users-remind,.com-users-profile,.profile,.profile-edit),
html body.option-com_users #un-component :is(.login,.registration,.reset,.remind,.com-users-login,.com-users-registration,.com-users-reset,.com-users-remind,.com-users-profile,.profile,.profile-edit),
html body.com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-account-panel,.uc-profile-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-membership-plan,.uc-membership-item-wrapper,.profile,.profile-edit),
html body.option-com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-account-panel,.uc-profile-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-membership-plan,.uc-membership-item-wrapper,.profile,.profile-edit),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-form-section,.uc-account-panel,.uc-profile-panel,.uc-dashboard-panel,.uc-cart-panel,.uc-checkout-panel,.uc-membership-plan,.uc-membership-item-wrapper,.profile,.profile-edit){
  color:var(--tru-086-text)!important;
  background:linear-gradient(180deg,var(--tru-086-panel),var(--tru-086-panel-2))!important;
  border:1px solid var(--tru-086-line)!important;
  border-radius:10px!important;
  box-shadow:var(--tru-086-shadow)!important;
}

html body.com_users #un-component :is(label,.control-label,.form-label,.form-check-label,dt,dd,.field-label,.field-value,.help-block,.form-text,.small,small,p,li,span),
html body.option-com_users #un-component :is(label,.control-label,.form-label,.form-check-label,dt,dd,.field-label,.field-value,.help-block,.form-text,.small,small,p,li,span),
html body.com_unifiedcommerce #un-component :is(label,.control-label,.form-label,.form-check-label,dt,dd,.field-label,.field-value,.help-block,.form-text,.small,small,p,li,span),
html body.option-com_unifiedcommerce #un-component :is(label,.control-label,.form-label,.form-check-label,dt,dd,.field-label,.field-value,.help-block,.form-text,.small,small,p,li,span),
html body[class*="com_unifiedcommerce"] #un-component :is(label,.control-label,.form-label,.form-check-label,dt,dd,.field-label,.field-value,.help-block,.form-text,.small,small,p,li,span){
  color:var(--tru-086-text)!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
  text-shadow:none!important;
}

html body.com_users #un-component :is(.text-muted,.muted,.help-block,.form-text,.small,small,.description,.desc,.hint),
html body.option-com_users #un-component :is(.text-muted,.muted,.help-block,.form-text,.small,small,.description,.desc,.hint),
html body.com_unifiedcommerce #un-component :is(.text-muted,.muted,.help-block,.form-text,.small,small,.description,.desc,.hint),
html body.option-com_unifiedcommerce #un-component :is(.text-muted,.muted,.help-block,.form-text,.small,small,.description,.desc,.hint),
html body[class*="com_unifiedcommerce"] #un-component :is(.text-muted,.muted,.help-block,.form-text,.small,small,.description,.desc,.hint){
  color:var(--tru-086-muted)!important;
  -webkit-text-fill-color:currentColor!important;
}

/* Section headings inside dark panels use the preferred image-1 gold treatment. */
html body.com_users #un-component :is(fieldset>legend,.legend,.uc-section-title,.uc-panel-title,.uc-card-title,.uc-heading,.form-title,h1,h2,h3,h4),
html body.option-com_users #un-component :is(fieldset>legend,.legend,.uc-section-title,.uc-panel-title,.uc-card-title,.uc-heading,.form-title,h1,h2,h3,h4),
html body.com_unifiedcommerce #un-component :is(fieldset>legend,.legend,.uc-section-title,.uc-panel-title,.uc-card-title,.uc-heading,.form-title,h1,h2,h3,h4),
html body.option-com_unifiedcommerce #un-component :is(fieldset>legend,.legend,.uc-section-title,.uc-panel-title,.uc-card-title,.uc-heading,.form-title,h1,h2,h3,h4),
html body[class*="com_unifiedcommerce"] #un-component :is(fieldset>legend,.legend,.uc-section-title,.uc-panel-title,.uc-card-title,.uc-heading,.form-title,h1,h2,h3,h4){
  color:var(--tru-086-gold)!important;
  -webkit-text-fill-color:currentColor!important;
  font-family:var(--tru-086-head)!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 10px rgba(255,231,106,.36)!important;
  opacity:1!important;
}

/* Light folio/title cards are converted to the same dark-control language. */
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header){
  display:block!important;
  margin:0 0 clamp(1rem,2vw,1.45rem)!important;
  padding:clamp(1.15rem,2vw,1.6rem)!important;
  color:var(--tru-086-text)!important;
  background:linear-gradient(180deg,var(--tru-086-panel),var(--tru-086-panel-2))!important;
  border:1px solid var(--tru-086-line)!important;
  border-radius:10px!important;
  box-shadow:var(--tru-086-shadow)!important;
}
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,.uc-title,.uc-page-title),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,.uc-title,.uc-page-title),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,.uc-title,.uc-page-title){
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:var(--tru-086-gold)!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  text-align:left!important;
  text-shadow:0 0 10px rgba(255,231,106,.36)!important;
}

/* Remove public Commerce/UC explainer copy. */
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(p,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(p,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(p,.uc-intro,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is(textarea[readonly],[class*="delivery"] textarea[readonly],[class*="profile"] textarea[readonly]){
  display:none!important;
}

/* Registration copy replacement for the UC route. */
html body[class*="com_unifiedcommerce"] #un-component:has(input[name*="username" i]):has(input[name*="email" i]) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) p{
  display:block!important;
  font-size:0!important;
  line-height:0!important;
  margin:.65rem 0 0!important;
  padding:0!important;
}
html body[class*="com_unifiedcommerce"] #un-component:has(input[name*="username" i]):has(input[name*="email" i]) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) p::after{
  content:"Register for a TRU account."!important;
  display:block!important;
  color:var(--tru-086-text)!important;
  -webkit-text-fill-color:var(--tru-086-text)!important;
  font:500 1rem/1.6 var(--tru-086-body)!important;
  letter-spacing:.01em!important;
}

/* ---------- B. Fields: every UC/User form uses dark readable controls ---------- */
html body.com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea),
html body.option-com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea),
html body.com_unifiedcommerce #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea),
html body.option-com_unifiedcommerce #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea),
html body[class*="com_unifiedcommerce"] #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea){
  width:100%!important;
  max-width:100%!important;
  min-height:42px!important;
  padding:.58rem .72rem!important;
  color:var(--tru-086-text)!important;
  -webkit-text-fill-color:var(--tru-086-text)!important;
  caret-color:var(--tru-086-gold)!important;
  background:var(--tru-086-field)!important;
  background-image:none!important;
  border:1px solid rgba(255,231,106,.46)!important;
  border-radius:6px!important;
  box-shadow:inset 0 0 0 999px var(--tru-086-field), inset 0 0 0 1px rgba(255,255,255,.02)!important;
  font-family:var(--tru-086-body)!important;
  text-shadow:none!important;
  opacity:1!important;
  outline:0!important;
}
html body.com_users #un-component :is(input,textarea)::placeholder,
html body.option-com_users #un-component :is(input,textarea)::placeholder,
html body.com_unifiedcommerce #un-component :is(input,textarea)::placeholder,
html body.option-com_unifiedcommerce #un-component :is(input,textarea)::placeholder,
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder{
  color:rgba(237,244,248,.66)!important;
  -webkit-text-fill-color:rgba(237,244,248,.66)!important;
  opacity:1!important;
}
html body.com_users #un-component :is(input,textarea)::selection,
html body.option-com_users #un-component :is(input,textarea)::selection,
html body.com_unifiedcommerce #un-component :is(input,textarea)::selection,
html body.option-com_unifiedcommerce #un-component :is(input,textarea)::selection,
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::selection{
  color:#061018!important;
  -webkit-text-fill-color:#061018!important;
  background:var(--tru-086-gold)!important;
  text-shadow:none!important;
}
html body.com_users #un-component input:-webkit-autofill,
html body.option-com_users #un-component input:-webkit-autofill,
html body.com_unifiedcommerce #un-component input:-webkit-autofill,
html body.option-com_unifiedcommerce #un-component input:-webkit-autofill,
html body[class*="com_unifiedcommerce"] #un-component input:-webkit-autofill{
  -webkit-text-fill-color:var(--tru-086-text)!important;
  caret-color:var(--tru-086-gold)!important;
  -webkit-box-shadow:0 0 0 1000px var(--tru-086-field) inset!important;
  box-shadow:0 0 0 1000px var(--tru-086-field) inset!important;
  border-color:rgba(255,231,106,.56)!important;
  transition:background-color 9999s ease-out 0s!important;
}
html body.com_users #un-component select option,
html body.option-com_users #un-component select option,
html body.com_unifiedcommerce #un-component select option,
html body.option-com_unifiedcommerce #un-component select option,
html body[class*="com_unifiedcommerce"] #un-component select option{
  color:var(--tru-086-text)!important;
  background:var(--tru-086-field)!important;
}

/* ---------- C. Single-form login/register/reset/remind: one visible dark panel ---------- */
@supports selector(#un-component:has(input[name="username"])){
  html body #un-component:has(input[name="username"]):has(input[type="password"]) > :is(.login,.com-users-login,.users-login),
  html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) > :is(.registration,.com-users-registration,.users-registration),
  html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) > :is(.reset,.remind,.com-users-reset,.com-users-remind){
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:0!important;
    margin:0 auto!important;
    max-width:min(760px,100%)!important;
  }
  html body #un-component:has(input[name="username"]):has(input[type="password"]) > :is(.login,.com-users-login,.users-login) > form,
  html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) > :is(.registration,.com-users-registration,.users-registration) > form,
  html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) > :is(.reset,.remind,.com-users-reset,.com-users-remind) > form{
    display:block!important;
    width:100%!important;
    margin:0 auto!important;
    padding:clamp(1.45rem,2.6vw,2.1rem)!important;
    color:var(--tru-086-text)!important;
    background:linear-gradient(180deg,var(--tru-086-panel),var(--tru-086-panel-2))!important;
    border:1px solid var(--tru-086-line)!important;
    border-radius:10px!important;
    box-shadow:var(--tru-086-shadow)!important;
  }
  html body #un-component:has(input[name="username"]):has(input[type="password"]) > :is(.login,.com-users-login,.users-login) > form :is(fieldset,.well,.form-horizontal,.form-vertical,.userdata,.login-fields,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group),
  html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) > :is(.registration,.com-users-registration,.users-registration) > form :is(fieldset,.well,.form-horizontal,.form-vertical,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group),
  html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) > :is(.reset,.remind,.com-users-reset,.com-users-remind) > form :is(fieldset,.well,.form-horizontal,.form-vertical,.control-group,.controls,.control-label,.form-group,.mb-3,.mb-4,.input-group,.input-append,.input-prepend,.input-password-wrapper,.password-group){
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
  }
  html body #un-component:has(input[name="username"]):has(input[type="password"]) > :is(.login,.com-users-login,.users-login) > form :is(fieldset),
  html body #un-component:has(input[name="jform[name]"]):has(input[name="jform[username]"]) > :is(.registration,.com-users-registration,.users-registration) > form :is(fieldset),
  html body #un-component:has(input[name="jform[email]"]):has(:is(.reset,.remind,form)) > :is(.reset,.remind,.com-users-reset,.com-users-remind) > form :is(fieldset){
    display:block!important;
  }
}

/* Password reveal: compact embedded SVG icon, independent of Font Awesome. */
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle){
  flex:0 0 38px!important;
  width:38px!important;
  max-width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  margin-left:.55rem!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#061018!important;
  -webkit-text-fill-color:#061018!important;
  font-size:0!important;
  line-height:1!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  background-color:#f0cf53!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23061018' d='M12 5C6.7 5 2.6 9.05 1.1 12c1.5 2.95 5.6 7 10.9 7s9.4-4.05 10.9-7C21.4 9.05 17.3 5 12 5Zm0 11.4A4.4 4.4 0 1 1 12 7.6a4.4 4.4 0 0 1 0 8.8Zm0-1.8A2.6 2.6 0 1 0 12 9.4a2.6 2.6 0 0 0 0 5.2Z'/%3E%3C/svg%3E"),linear-gradient(180deg,#fff48a,#d2ad35)!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:center,center!important;
  background-size:18px 18px,100% 100%!important;
  border:0!important;
  border-radius:7px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32),0 0 14px rgba(255,231,106,.30)!important;
}
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle) > *,
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle)::before,
html body #un-component:has(input[type="password"]) :is(button.input-password-toggle,button[aria-label*="show" i],button[aria-label*="password" i],button[title*="show" i],button[title*="password" i],button[class*="password" i][type="button"],.btn[class*="password" i],.password-toggle,.btn-password-toggle)::after{
  content:none!important;
  display:none!important;
}

/* ---------- D. Catalog/product cards: compact, non-cropped, image-1 dark-panel family ---------- */
html body.view-catalog #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]){
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(1rem,2vw,1.5rem)!important;
  align-items:start!important;
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]){
  display:flex!important;
  flex-direction:column!important;
  gap:.75rem!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:clamp(.95rem,1.55vw,1.2rem)!important;
  color:var(--tru-086-text)!important;
  background:linear-gradient(180deg,var(--tru-086-panel),var(--tru-086-panel-2))!important;
  border:1px solid var(--tru-086-line)!important;
  border-radius:10px!important;
  box-shadow:var(--tru-086-shadow)!important;
  overflow:hidden!important;
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) :is(.uc-product-image,.product-image,.image-wrap,.image,.media,.thumb,.thumbnail,.uc914-product-image,figure,picture){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:.7rem!important;
  background:#020407!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:8px!important;
  overflow:visible!important;
}
@supports selector(div:has(img)){
  html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img),
  html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) > :is(a,div,figure,picture):has(img){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:.7rem!important;
    background:#020407!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:8px!important;
    overflow:visible!important;
  }
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]) img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:380px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  padding:0!important;
  background:#020407!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
html body.view-catalog #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content){
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title,h2,h3,h4),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title){
  display:block!important;
  min-height:0!important;
  height:auto!important;
  margin:.35rem 0 .15rem!important;
  padding:0!important;
  color:var(--tru-086-text)!important;
  -webkit-text-fill-color:currentColor!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-family:var(--tru-086-head)!important;
  font-size:clamp(.98rem,1.2vw,1.18rem)!important;
  line-height:1.35!important;
  letter-spacing:.08em!important;
  text-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary){
  display:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-price,.uc-product-price,.product-price,.price,.uc914-price){
  display:block!important;
  margin:.1rem 0 .35rem!important;
  color:var(--tru-086-gold)!important;
  -webkit-text-fill-color:currentColor!important;
  font-weight:800!important;
  background:transparent!important;
  text-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-actions,.product-actions,.actions,.button-group,.btn-toolbar),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-actions,.product-actions,.actions,.button-group,.btn-toolbar){
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.55rem!important;
  margin-top:auto!important;
  padding-top:.25rem!important;
}
@media(max-width:767.98px){
  html body.view-catalog #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]),
  html body[class*="com_unifiedcommerce"] #un-component :is(.uc-products,.uc-product-grid,.uc-catalog-grid,.products,.product-grid,.catalog-grid,[class*="product-list"],[class*="catalog-list"]){
    grid-template-columns:1fr!important;
  }
}

/* ---------- E. Buttons: gold primary; dark secondary links remain readable ---------- */
html body.com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,.button,.uk-button),
html body.option-com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,.button,.uk-button),
html body.com_unifiedcommerce #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,.button,.uk-button),
html body.option-com_unifiedcommerce #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,.button,.uk-button),
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,.button,.uk-button){
  color:#061018!important;
  -webkit-text-fill-color:#061018!important;
  background:linear-gradient(180deg,#fff48a,#d3ad35)!important;
  border:0!important;
  border-radius:7px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32),0 0 14px rgba(255,231,106,.26)!important;
  font-family:var(--tru-086-head)!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
html body.com_users #un-component :is(.login-links a,.com-users-login__options a,ul.nav a,ul.list-unstyled a),
html body.option-com_users #un-component :is(.login-links a,.com-users-login__options a,ul.nav a,ul.list-unstyled a){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:.55rem .9rem!important;
  color:var(--tru-086-gold)!important;
  -webkit-text-fill-color:var(--tru-086-gold)!important;
  background:#0b121b!important;
  border:1px solid var(--tru-086-blue-line)!important;
  border-radius:6px!important;
  box-shadow:0 8px 18px rgba(0,0,0,.22)!important;
  font-family:var(--tru-086-head)!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}

/* ========================================================================
   TwilightRun 2.0.87 UC Font Contrast Authority
   File: /templates/twilightrun/css/custom-user.css
   Purpose: final-cascade UnifiedCommerce typography/contrast repair.
   Scope: #un-component only on UnifiedCommerce routes. No UTP structure edits.
   ======================================================================== */

:root{
  --tru-087-panel:#111923;
  --tru-087-panel-deep:#081019;
  --tru-087-panel-soft:#182334;
  --tru-087-text:#edf4f8;
  --tru-087-muted:#cdd8e3;
  --tru-087-gold:#ffe76a;
  --tru-087-gold-deep:#caa23b;
  --tru-087-cyan:#5feaff;
  --tru-087-ink:#061018;
  --tru-087-line:rgba(255,231,106,.30);
  --tru-087-blue-line:rgba(95,234,255,.28);
  --tru-087-head:Orbitron,Montserrat,Arial,sans-serif;
  --tru-087-body:Montserrat,Arial,sans-serif;
}

/* UC page/title cards now follow the dark edit-profile aesthetic. */
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header){
  background:linear-gradient(180deg,var(--tru-087-panel-soft),var(--tru-087-panel-deep))!important;
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:currentColor!important;
  border:1px solid var(--tru-087-line)!important;
  border-radius:9px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045)!important;
  text-shadow:none!important;
}
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,h3,.uc-title,.uc-heading,.uc-page-title),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,h3,.uc-title,.uc-heading,.uc-page-title),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) :is(h1,h2,h3,.uc-title,.uc-heading,.uc-page-title){
  color:var(--tru-087-gold)!important;
  -webkit-text-fill-color:var(--tru-087-gold)!important;
  background:transparent!important;
  border-color:var(--tru-087-line)!important;
  font-family:var(--tru-087-head)!important;
  font-weight:900!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 8px rgba(255,231,106,.26)!important;
}

/* Remove generated Commerce/UnifiedCommerce explainer copy from UC headers. */
html body.com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) > :is(p,.lead,.subtitle,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body.option-com_unifiedcommerce #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) > :is(p,.lead,.subtitle,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is(.page-header,.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header) > :is(p,.lead,.subtitle,.uc-subtitle,.uc-description,.uc-copy,.uc-lede){
  display:none!important;
}

/* UC registration intro relabel. */
html body[class*="com_unifiedcommerce"].view-registration #un-component :is(.uc-registration,.registration,.uc-register,.uc-card,.uc-panel,form) > p:first-of-type,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-registration,.uc-register,.uc-registration-form) > p:first-of-type{
  display:block!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  margin:.25rem 0 1.15rem!important;
  text-align:center!important;
}
html body[class*="com_unifiedcommerce"].view-registration #un-component :is(.uc-registration,.registration,.uc-register,.uc-card,.uc-panel,form) > p:first-of-type::after,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-registration,.uc-register,.uc-registration-form) > p:first-of-type::after{
  content:"Register for a TRU account."!important;
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  font-family:var(--tru-087-body)!important;
  font-size:1rem!important;
  line-height:1.55!important;
}

/* Universal readable type inside UC dark surfaces. */
html body.com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-form-section,.profile,.profile-edit,form,fieldset,[class*="cart"],[class*="checkout"],[class*="summary"],[class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"],[class*="registration"]) :is(p,li,dt,dd,label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,span,small,.small,.text-muted,.muted,.form-text,.help-block,.help-inline,.description,.desc,.hint),
html body.option-com_unifiedcommerce #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-form-section,.profile,.profile-edit,form,fieldset,[class*="cart"],[class*="checkout"],[class*="summary"],[class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"],[class*="registration"]) :is(p,li,dt,dd,label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,span,small,.small,.text-muted,.muted,.form-text,.help-block,.help-inline,.description,.desc,.hint),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-cart-panel,.uc-checkout-panel,.uc-account-panel,.uc-dashboard-panel,.uc-profile-panel,.uc-form-section,.profile,.profile-edit,form,fieldset,[class*="cart"],[class*="checkout"],[class*="summary"],[class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"],[class*="registration"]) :is(p,li,dt,dd,label,.control-label,.form-label,.form-check-label,.field-label,.field-title,.field-value,span,small,.small,.text-muted,.muted,.form-text,.help-block,.help-inline,.description,.desc,.hint){
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.text-muted,.muted,.form-text,.help-block,.help-inline,small,.small,.description,.desc,.hint){
  color:var(--tru-087-muted)!important;
  -webkit-text-fill-color:var(--tru-087-muted)!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title,.section-title,.card-title){
  color:var(--tru-087-gold)!important;
  -webkit-text-fill-color:var(--tru-087-gold)!important;
  font-family:var(--tru-087-head)!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 8px rgba(255,231,106,.22)!important;
}

/* Darken UC utility boxes, column choosers, cart summaries, payment panels, and tables. */
html body.com_unifiedcommerce #un-component :is(details,.details,.collapse,.accordion-item,.list-group,.list-group-item,.card,.card-body,.well,.alert,.uc-table-wrap,.table-responsive,.uc-columns,.columns,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.uc-summary-box,.summary-box,.cart-summary-box,.checkout-summary-box,.payment-method,.payment-option,[class*="column"],[class*="summary-table"],[class*="cart-table"],[class*="checkout-table"]),
html body.option-com_unifiedcommerce #un-component :is(details,.details,.collapse,.accordion-item,.list-group,.list-group-item,.card,.card-body,.well,.alert,.uc-table-wrap,.table-responsive,.uc-columns,.columns,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.uc-summary-box,.summary-box,.cart-summary-box,.checkout-summary-box,.payment-method,.payment-option,[class*="column"],[class*="summary-table"],[class*="cart-table"],[class*="checkout-table"]),
html body[class*="com_unifiedcommerce"] #un-component :is(details,.details,.collapse,.accordion-item,.list-group,.list-group-item,.card,.card-body,.well,.alert,.uc-table-wrap,.table-responsive,.uc-columns,.columns,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.uc-summary-box,.summary-box,.cart-summary-box,.checkout-summary-box,.payment-method,.payment-option,[class*="column"],[class*="summary-table"],[class*="cart-table"],[class*="checkout-table"]){
  background:linear-gradient(180deg,var(--tru-087-panel),var(--tru-087-panel-deep))!important;
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:currentColor!important;
  border:1px solid var(--tru-087-line)!important;
  border-radius:9px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(details,.details,.collapse,.accordion-item,.list-group,.list-group-item,.card,.card-body,.well,.alert,.uc-table-wrap,.table-responsive,.uc-columns,.columns,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.uc-summary-box,.summary-box,.cart-summary-box,.checkout-summary-box,.payment-method,.payment-option,[class*="summary-table"],[class*="cart-table"],[class*="checkout-table"]) *,
html body[class*="com_unifiedcommerce"] #un-component :is(table,.table,thead,tbody,tfoot,tr,th,td,caption){
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(table,.table){
  width:100%!important;
  background:var(--tru-087-panel-deep)!important;
  border:1px solid var(--tru-087-line)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(th,td){
  background:rgba(8,16,25,.94)!important;
  border-color:rgba(255,231,106,.18)!important;
  padding:.72rem .85rem!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(thead th,.table thead th){
  color:var(--tru-087-gold)!important;
  -webkit-text-fill-color:var(--tru-087-gold)!important;
  background:rgba(17,25,35,.98)!important;
  font-weight:800!important;
}

/* UC form controls: prevent pale browser/autofill fields on dark panels. */
html body.com_unifiedcommerce #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select),
html body.option-com_unifiedcommerce #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select),
html body[class*="com_unifiedcommerce"] #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select){
  background:#081019!important;
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  border:1px solid rgba(255,231,106,.32)!important;
  border-radius:7px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder{
  color:rgba(237,244,248,.70)!important;
  -webkit-text-fill-color:rgba(237,244,248,.70)!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill){
  -webkit-box-shadow:0 0 0 1000px #081019 inset!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  caret-color:var(--tru-087-text)!important;
  transition:background-color 9999s ease-in-out 0s!important;
}
html body[class*="com_unifiedcommerce"] #un-component ::selection{
  background:var(--tru-087-gold)!important;
  color:var(--tru-087-ink)!important;
  -webkit-text-fill-color:var(--tru-087-ink)!important;
}

/* Keep buttons readable after broad text rules. */
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn) :is(span,i,svg,path),
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn){
  color:var(--tru-087-ink)!important;
  -webkit-text-fill-color:var(--tru-087-ink)!important;
  text-shadow:none!important;
}

/* Product cards: compact dark cards with full image visibility and no oversized title/description wells. */
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,.card[class*="product"],[class*="product-card"],[class*="catalog-card"]){
  display:grid!important;
  grid-template-rows:auto auto auto auto!important;
  gap:.72rem!important;
  min-height:0!important;
  height:auto!important;
  padding:1rem!important;
  background:linear-gradient(180deg,var(--tru-087-panel),var(--tru-087-panel-deep))!important;
  border:1px solid var(--tru-087-blue-line)!important;
  border-radius:9px!important;
  box-shadow:0 14px 32px rgba(0,0,0,.34)!important;
  overflow:visible!important;
}
html body.view-catalog #un-component :is(.uc-product-image,.product-image,.uc914-product-image,.card-img-top,figure,.image,.img-wrap,.media,.uc-product-media,.product-media),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-image,.product-image,.uc914-product-image,.card-img-top,figure,.image,.img-wrap,.media,.uc-product-media,.product-media){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:.75rem!important;
  background:#020407!important;
  border:1px solid rgba(95,234,255,.18)!important;
  border-radius:7px!important;
  overflow:visible!important;
  aspect-ratio:auto!important;
}
html body.view-catalog #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,[class*="product-card"],[class*="catalog-card"]) img,
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-card,.tru-uc-product-card,.uc914-product-card,.uc914-card,.uc-product,.product-card,.catalog-card,.catalog-item,.store-product,[class*="product-card"],[class*="catalog-card"]) img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:320px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
html body.view-catalog #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-body,.product-body,.card-body,.uc-product-info,.product-info,.uc914-product-body,.uc-product-content,.product-content){
  display:block!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title,h2,h3,h4),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-title,.product-title,.uc914-product-title,.card-title){
  min-height:0!important;
  height:auto!important;
  margin:.15rem 0 .15rem!important;
  padding:0!important;
  color:var(--tru-087-text)!important;
  -webkit-text-fill-color:var(--tru-087-text)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-size:clamp(.95rem,1.05vw,1.12rem)!important;
  line-height:1.32!important;
  letter-spacing:.08em!important;
  text-shadow:none!important;
}
html body.view-catalog #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary),
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-product-description,.product-description,.description,.uc-summary,.product-summary,.uc-product-summary){
  display:none!important;
  min-height:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* ========================================================================
   TwilightRun 2.0.88 — UC inner-surface font and utility-panel repair
   Scope: final contrast pass for UC profile/checkout/cart/payment surfaces.
   Purpose: align remaining UC surfaces with the dark edit-profile aesthetic,
   remove pale-on-pale utility text, and suppress generated commerce copy.
   Boundary: CSS-only; no UTP row/column/module structure changes.
   ======================================================================== */

:root{
  --tru-088-ink:#071018;
  --tru-088-panel:#141e2b;
  --tru-088-panel-deep:#071019;
  --tru-088-panel-soft:#182435;
  --tru-088-text:#f1f7fb;
  --tru-088-muted:#cbd6df;
  --tru-088-gold:#ffe76a;
  --tru-088-cyan:#5feaff;
  --tru-088-line:rgba(255,231,106,.30);
  --tru-088-blue-line:rgba(95,234,255,.28);
  --tru-088-head:Orbitron,Montserrat,Arial,sans-serif;
  --tru-088-body:Montserrat,Arial,sans-serif;
}

/* UC public copy still appearing in profile/delivery/payment helpers. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(p,.lead,.subtitle,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is([class*="delivery"],[class*="shipping"],[class*="profile"]):not(form):not(fieldset) textarea[readonly],
html body[class*="com_unifiedcommerce"] #un-component :is([class*="delivery"],[class*="shipping"],[class*="profile"]) :is(.uc-description,.description,.desc,.help-block,.help-inline,.form-text,.text-muted,.muted) {
  display:none!important;
}

/* Darken remaining white utility boxes inside UC dark cards, except explicit payment-provider tiles. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-checkout-panel,.uc-cart-panel,.uc-account-panel,.uc-profile-panel,.uc-form-section,[class*="checkout"],[class*="cart"],[class*="summary"],[class*="payment"],[class*="customer"],[class*="billing"],[class*="delivery"]) :is(.alert,.message,.notice,.note,.uc-note,.uc-message,.uc-alert,.checkout-note,.payment-note,.summary-note,.well,.card,.card-body,.list-group,.list-group-item,details,.accordion-item,.table-responsive,.columns,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls):not(.payment-method):not(.payment-option):not(.uc-payment-method):not(.uc-payment-option):not([class*="paypal"]):not([class*="PayPal"]){
  background:linear-gradient(180deg,var(--tru-088-panel),var(--tru-088-panel-deep))!important;
  color:var(--tru-088-text)!important;
  -webkit-text-fill-color:currentColor!important;
  border:1px solid var(--tru-088-line)!important;
  border-radius:9px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* Make every nested UC utility line readable on dark surfaces. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-checkout-panel,.uc-cart-panel,.uc-account-panel,.uc-profile-panel,.uc-form-section,[class*="checkout"],[class*="cart"],[class*="summary"],[class*="payment"],[class*="customer"],[class*="billing"],[class*="delivery"]) :is(p,span,div,li,dt,dd,label,legend,summary,small,.small,.text-muted,.muted,.form-text,.help-block,.help-inline,.description,.desc,.hint,.field-label,.field-title,.field-value,.control-label,.form-label,.form-check-label,.caption,.table-caption):not(button):not(.btn):not(.uc-btn):not(.uc-button){
  color:var(--tru-088-text)!important;
  -webkit-text-fill-color:var(--tru-088-text)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.text-muted,.muted,.form-text,.help-block,.help-inline,small,.small,.description,.desc,.hint,.caption){
  color:var(--tru-088-muted)!important;
  -webkit-text-fill-color:var(--tru-088-muted)!important;
  opacity:1!important;
}

/* UC headings should match the preferred edit-profile dark-card aesthetic. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-card,.uc-panel,.uc-section,.uc-box,.uc-checkout-panel,.uc-cart-panel,.uc-account-panel,.uc-profile-panel,.uc-form-section,[class*="checkout"],[class*="cart"],[class*="summary"],[class*="payment"],[class*="customer"],[class*="billing"],[class*="delivery"]) :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title,.section-title,.card-title){
  color:var(--tru-088-gold)!important;
  -webkit-text-fill-color:var(--tru-088-gold)!important;
  font-family:var(--tru-088-head)!important;
  font-weight:900!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 8px rgba(255,231,106,.24)!important;
}

/* Profile/customer/billing/delivery fields: dark values only; no pale autofill boxes. */
html body[class*="com_unifiedcommerce"] #un-component :is([class*="profile"],[class*="customer"],[class*="billing"],[class*="delivery"],[class*="checkout"],[class*="payment"],[class*="cart"],[class*="summary"],form,fieldset) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select){
  background:#081019!important;
  color:var(--tru-088-text)!important;
  -webkit-text-fill-color:var(--tru-088-text)!important;
  border:1px solid rgba(255,231,106,.34)!important;
  border-radius:7px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder{
  color:rgba(241,247,251,.72)!important;
  -webkit-text-fill-color:rgba(241,247,251,.72)!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill){
  -webkit-box-shadow:0 0 0 1000px #081019 inset!important;
  -webkit-text-fill-color:var(--tru-088-text)!important;
  caret-color:var(--tru-088-text)!important;
  transition:background-color 9999s ease-in-out 0s!important;
}

/* Readable selection everywhere in UC. */
html body[class*="com_unifiedcommerce"] #un-component ::selection{
  background:var(--tru-088-gold)!important;
  color:var(--tru-088-ink)!important;
  -webkit-text-fill-color:var(--tru-088-ink)!important;
}

/* Cart / checkout tables and column chooser: no white table bodies or ghost text. */
html body[class*="com_unifiedcommerce"] #un-component :is(table,.table,[role="table"],[class*="cart-table"],[class*="checkout-table"],[class*="summary-table"]){
  width:100%!important;
  background:var(--tru-088-panel-deep)!important;
  color:var(--tru-088-text)!important;
  -webkit-text-fill-color:var(--tru-088-text)!important;
  border:1px solid var(--tru-088-blue-line)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(thead,tbody,tfoot,tr,th,td,caption),
html body[class*="com_unifiedcommerce"] #un-component :is(table,.table,[role="table"]) :is(a,span,small,strong,em,div){
  background:transparent!important;
  color:var(--tru-088-text)!important;
  -webkit-text-fill-color:var(--tru-088-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(th,td){
  background:rgba(8,16,25,.94)!important;
  border-color:rgba(255,231,106,.18)!important;
  padding:.72rem .85rem!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(thead th,.table thead th,[role="columnheader"]){
  color:var(--tru-088-gold)!important;
  -webkit-text-fill-color:var(--tru-088-gold)!important;
  background:rgba(17,25,35,.98)!important;
  font-weight:800!important;
}

/* Payment provider tiles can remain light for brand/logo visibility, but text must be dark and readable. */
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]){
  color:#101720!important;
  -webkit-text-fill-color:#101720!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge){
  color:#101720!important;
  -webkit-text-fill-color:#101720!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"]) :is(.selected,.badge,.pill,[class*="selected"]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:1.55em!important;
  padding:.2rem .55rem!important;
  border-radius:999px!important;
  background:#dff8dd!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  font-weight:800!important;
}

/* Buttons remain TRU gold after inner text hardening. */
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn){
  background:linear-gradient(180deg,#fff38a 0%,#e1c64c 58%,#b99120 100%)!important;
  color:var(--tru-088-ink)!important;
  -webkit-text-fill-color:var(--tru-088-ink)!important;
  border:1px solid rgba(255,231,106,.55)!important;
  border-radius:7px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.26),0 0 14px rgba(255,231,106,.22)!important;
  font-family:var(--tru-088-head)!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn) :is(span,i,svg,path){
  color:var(--tru-088-ink)!important;
  -webkit-text-fill-color:var(--tru-088-ink)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}

/* ========================================================================
   TwilightRun 2.0.89 — UC/User page-by-page hard font cleanup
   Scope: final contrast authority for the visible UC workflow pages:
   profile, checkout, payment, cart summary, account, catalog/product cards,
   login, registration, reset/remind, and member profile/edit profile.
   Boundary: CSS only. Does not alter UN/UTP row, column, module, or position
   authority. No full-viewport hacks.
   ======================================================================== */
:root{
  --tru-089-page:#f7f8fb;
  --tru-089-edge:#ffe76a;
  --tru-089-panel:#141e2b;
  --tru-089-panel-2:#0d151f;
  --tru-089-field:#081019;
  --tru-089-text:#f3f8fc;
  --tru-089-muted:#d7e1e8;
  --tru-089-gold:#ffe76a;
  --tru-089-cyan:#5feaff;
  --tru-089-ink:#071018;
  --tru-089-line:rgba(255,231,106,.32);
  --tru-089-blue:rgba(95,234,255,.30);
  --tru-089-head:Orbitron,Montserrat,Arial,sans-serif;
  --tru-089-body:Montserrat,Arial,sans-serif;
}

/* Browser/user-selected text in UC/User screens must stay readable. */
html body #un-component :is(.uc-front,.uc-storefront,.uc-catalog,.uc-product,.uc-cart,.uc-checkout,.uc-account,.uc-profile,.uc-panel,.uc-card,.login,.registration,.reset,.remind,.profile) ::selection,
html body[class*="com_unifiedcommerce"] #un-component ::selection,
html body.com_users #un-component ::selection,
html body.option-com_users #un-component ::selection{
  background:#09283a!important;
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
  text-shadow:none!important;
}
html body #un-component :is(input,textarea,select)::selection{
  background:#0b3146!important;
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
}
html body #un-component :is(mark,.highlight,.search-highlight,.finder-highlight,.js-highlight){
  background:#09283a!important;
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

/* A. UC profile / checkout customer / billing / delivery panels. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-profile,.uc-profile-panel,.uc-form-section,.uc-checkout,.uc-checkout-panel,.uc-customer,.uc-billing,.uc-delivery,[class*="profile"],[class*="checkout"],[class*="customer"],[class*="billing"],[class*="delivery"]),
html body #un-component :is(.uc-profile,.uc-profile-panel,.uc-form-section,.uc-checkout,.uc-checkout-panel,.uc-customer,.uc-billing,.uc-delivery,[class*="uc-profile"],[class*="uc-checkout"],[class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"]){
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:currentColor!important;
  font-family:var(--tru-089-body)!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-profile,.uc-checkout,.uc-customer,.uc-billing,.uc-delivery,[class*="profile"],[class*="checkout"],[class*="customer"],[class*="billing"],[class*="delivery"]) :is(label,.form-label,.control-label,.field-label,.field-title,dt,dd,span,small,p,li,div):not(button):not(.btn):not(.uc-btn):not(.uc-button):not([class*="payment"]):not([class*="paypal"]),
html body #un-component :is([class*="uc-profile"],[class*="uc-checkout"],[class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"]) :is(label,.form-label,.control-label,.field-label,.field-title,dt,dd,span,small,p,li,div):not(button):not(.btn):not(.uc-btn):not(.uc-button):not([class*="payment"]):not([class*="paypal"]){
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  opacity:1!important;
  background:transparent!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-profile,.uc-checkout,.uc-customer,.uc-billing,.uc-delivery,[class*="profile"],[class*="checkout"],[class*="customer"],[class*="billing"],[class*="delivery"]) :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title,.section-title,.card-title),
html body #un-component :is([class*="uc-profile"],[class*="uc-checkout"],[class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"]) :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title,.section-title,.card-title){
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
  font-family:var(--tru-089-head)!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 8px rgba(255,231,106,.22)!important;
  background:transparent!important;
}

/* B. All UC/User fields stay dark, including autofill, readonly, selects, and disabled states. */
html body[class*="com_unifiedcommerce"] #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select),
html body.com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select),
html body.option-com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select){
  background:var(--tru-089-field)!important;
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  border:1px solid rgba(255,231,106,.34)!important;
  border-radius:7px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  text-shadow:none!important;
  opacity:1!important;
  caret-color:var(--tru-089-text)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder,
html body.com_users #un-component :is(input,textarea)::placeholder,
html body.option-com_users #un-component :is(input,textarea)::placeholder{
  color:rgba(243,248,252,.72)!important;
  -webkit-text-fill-color:rgba(243,248,252,.72)!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill),
html body.com_users #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill),
html body.option-com_users #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill){
  -webkit-box-shadow:0 0 0 1000px var(--tru-089-field) inset!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  caret-color:var(--tru-089-text)!important;
  transition:background-color 9999s ease-in-out 0s!important;
}

/* C. Generated UC explanatory copy: hide helper copy boxes that caused pale text. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(p,.lead,.subtitle,.uc-subtitle,.uc-description,.uc-copy,.uc-lede),
html body[class*="com_unifiedcommerce"] #un-component :is([class*="delivery"],[class*="shipping"],[class*="profile"],[class*="checkout"],[class*="payment"]) :is(textarea[readonly],input[readonly].form-control,.uc-note,.uc-help,.uc-hint,.uc-copy,.uc-lede,.uc-description,.description,.desc,.help-block,.help-inline,.form-text,.text-muted,.muted,.small,small),
html body #un-component :is([class*="uc-delivery"],[class*="uc-shipping"],[class*="uc-profile"],[class*="uc-checkout"],[class*="uc-payment"]) :is(textarea[readonly],input[readonly].form-control,.uc-note,.uc-help,.uc-hint,.uc-copy,.uc-lede,.uc-description,.description,.desc,.help-block,.help-inline,.form-text,.text-muted,.muted,.small,small){
  display:none!important;
}

/* D. Remaining note/alert/utility boxes on checkout/cart/payment become dark, never white-on-white. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-checkout,.uc-cart,.uc-account,.uc-profile,.uc-panel,.uc-card,.uc-section,[class*="checkout"],[class*="cart"],[class*="summary"],[class*="payment"],[class*="profile"],[class*="delivery"]) :is(.alert,.message,.notice,.note,.well,.card,.card-body,.list-group,.list-group-item,details,.accordion,.accordion-item,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.table-responsive):not(.payment-method):not(.payment-option):not(.uc-payment-method):not(.uc-payment-option):not([class*="paypal"]):not([class*="PayPal"]):not([class*="payment-provider"]),
html body #un-component :is([class*="uc-checkout"],[class*="uc-cart"],[class*="uc-summary"],[class*="uc-payment"],[class*="uc-profile"],[class*="uc-delivery"]) :is(.alert,.message,.notice,.note,.well,.card,.card-body,.list-group,.list-group-item,details,.accordion,.accordion-item,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.table-responsive):not(.payment-method):not(.payment-option):not(.uc-payment-method):not(.uc-payment-option):not([class*="paypal"]):not([class*="PayPal"]):not([class*="payment-provider"]){
  background:linear-gradient(180deg,var(--tru-089-panel),var(--tru-089-panel-2))!important;
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  border:1px solid var(--tru-089-line)!important;
  border-radius:9px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-checkout,.uc-cart,.uc-account,.uc-profile,.uc-panel,.uc-card,.uc-section,[class*="checkout"],[class*="cart"],[class*="summary"],[class*="payment"],[class*="profile"],[class*="delivery"]) :is(.alert,.message,.notice,.note,.well,.card,.card-body,.list-group,.list-group-item,details,.accordion,.accordion-item,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.table-responsive):not([class*="paypal"]):not([class*="payment-provider"]) :is(p,span,div,li,label,small,strong,em,summary),
html body #un-component :is([class*="uc-checkout"],[class*="uc-cart"],[class*="uc-summary"],[class*="uc-payment"],[class*="uc-profile"],[class*="uc-delivery"]) :is(.alert,.message,.notice,.note,.well,.card,.card-body,.list-group,.list-group-item,details,.accordion,.accordion-item,.column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,.table-responsive):not([class*="paypal"]):not([class*="payment-provider"]) :is(p,span,div,li,label,small,strong,em,summary){
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  background:transparent!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* E. Cart summary tables: dark header/body, readable product rows, no pale table cells. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-cart,.uc-checkout,[class*="cart"],[class*="checkout"],[class*="summary"]) :is(table,.table,[role="table"],[class*="table"]),
html body #un-component :is([class*="uc-cart"],[class*="uc-checkout"],[class*="uc-summary"]) :is(table,.table,[role="table"],[class*="table"]){
  width:100%!important;
  background:var(--tru-089-panel-2)!important;
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  border:1px solid var(--tru-089-blue)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-cart,.uc-checkout,[class*="cart"],[class*="checkout"],[class*="summary"]) :is(table,.table,[role="table"],[class*="table"]) :is(thead,tbody,tfoot,tr,th,td,caption,a,span,small,strong,em,div),
html body #un-component :is([class*="uc-cart"],[class*="uc-checkout"],[class*="uc-summary"]) :is(table,.table,[role="table"],[class*="table"]) :is(thead,tbody,tfoot,tr,th,td,caption,a,span,small,strong,em,div){
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(th,td),
html body #un-component :is([class*="uc-cart"],[class*="uc-checkout"],[class*="uc-summary"]) :is(th,td){
  background:#0b141e!important;
  border-color:rgba(255,231,106,.18)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(thead th,.table thead th,[role="columnheader"]),
html body #un-component :is([class*="uc-cart"],[class*="uc-checkout"],[class*="uc-summary"]) :is(thead th,.table thead th,[role="columnheader"]){
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
  background:#121d2b!important;
  font-weight:900!important;
}

/* F. Payment provider tiles: keep brand white tile, but all text inside must be dark and readable. */
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]),
html body #un-component :is([class*="uc-payment"] [class*="provider"],[class*="uc-payment"] [class*="option"],[class*="paypal"],[class*="PayPal"]){
  background:#f7f8fb!important;
  color:var(--tru-089-ink)!important;
  -webkit-text-fill-color:var(--tru-089-ink)!important;
  border:1px solid rgba(95,125,255,.55)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge),
html body #un-component :is([class*="uc-payment"] [class*="provider"],[class*="uc-payment"] [class*="option"],[class*="paypal"],[class*="PayPal"]) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge){
  color:var(--tru-089-ink)!important;
  -webkit-text-fill-color:var(--tru-089-ink)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* G. Buttons: always gold TRU keys with dark readable text. */
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn),
html body.com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button),
html body.option-com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button){
  background:linear-gradient(180deg,#fff38a 0%,#e2c94f 58%,#b99120 100%)!important;
  color:var(--tru-089-ink)!important;
  -webkit-text-fill-color:var(--tru-089-ink)!important;
  border:1px solid rgba(255,231,106,.58)!important;
  border-radius:7px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.26),0 0 14px rgba(255,231,106,.22)!important;
  font-family:var(--tru-089-head)!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn) :is(span,i,svg,path),
html body.com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button) :is(span,i,svg,path),
html body.option-com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button) :is(span,i,svg,path){
  color:var(--tru-089-ink)!important;
  -webkit-text-fill-color:var(--tru-089-ink)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}

/* H. Page-title wording and title cards: no public Commerce copy. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(h1,h2,.uc-title,.uc-heading,.uc-page-title){
  color:var(--tru-089-gold)!important;
  -webkit-text-fill-color:var(--tru-089-gold)!important;
  background:transparent!important;
  text-shadow:0 0 8px rgba(255,231,106,.20)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-profile,.uc-account,.uc-checkout) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(h1,h2,.uc-title,.uc-heading,.uc-page-title){
  font-size:0!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-profile,[class*="profile"]) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(h1,h2,.uc-title,.uc-heading,.uc-page-title)::after{content:"PROFILE";font-size:clamp(1.3rem,2vw,1.9rem)!important;}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-account,[class*="account"]) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(h1,h2,.uc-title,.uc-heading,.uc-page-title)::after{content:"MY ACCOUNT";font-size:clamp(1.3rem,2vw,1.9rem)!important;}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-checkout,[class*="checkout"]) :is(.uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header) :is(h1,h2,.uc-title,.uc-heading,.uc-page-title)::after{content:"CHECKOUT";font-size:clamp(1.3rem,2vw,1.9rem)!important;}

/* I. Registration copy visual replacement. */
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-registration,.registration,[class*="registration"]) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type,
html body.com_users #un-component :is(.registration,.com-users-registration) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type,
html body.option-com_users #un-component :is(.registration,.com-users-registration) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type{
  font-size:0!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.uc-registration,.registration,[class*="registration"]) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type::after,
html body.com_users #un-component :is(.registration,.com-users-registration) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type::after,
html body.option-com_users #un-component :is(.registration,.com-users-registration) :is(.uc-subtitle,.subtitle,.lead,p):first-of-type::after{
  content:"Register for a TRU account."!important;
  color:var(--tru-089-text)!important;
  -webkit-text-fill-color:var(--tru-089-text)!important;
  font:600 1rem/1.5 var(--tru-089-body)!important;
}

/* ========================================================================
   TwilightRun 2.0.91 — UC rollback + precise light-surface contrast repair
   Base: 2.0.89. The failed 2.0.90 escaped-helper block is intentionally
   not included. This block targets the remaining UC white-on-white failures
   by either removing the white helper background or forcing dark readable text
   on brand-light payment/provider cards.
   Scope: com_unifiedcommerce / UC workflow only. CSS-only.
   ======================================================================== */
:root{
  --tru-091-panel:#141e2b;
  --tru-091-panel-2:#0b121b;
  --tru-091-field:#081019;
  --tru-091-text:#f3f8fc;
  --tru-091-muted:#dce7ee;
  --tru-091-gold:#ffe76a;
  --tru-091-cyan:#5feaff;
  --tru-091-ink:#071018;
  --tru-091-line:rgba(255,231,106,.34);
  --tru-091-blue:rgba(95,234,255,.34);
  --tru-091-head:Orbitron,Montserrat,Arial,sans-serif;
  --tru-091-body:Montserrat,Arial,sans-serif;
}

/* A. Dark TRU panels own their text. No pale text may survive on these panels. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-panel,.uc-card,.uc-section,.uc-box,.uc-form-section,
  .uc-checkout,.uc-cart,.uc-account,.uc-profile,
  .uc-checkout-panel,.uc-cart-panel,.uc-account-panel,.uc-profile-panel,
  [class*="uc-checkout"],[class*="uc-cart"],[class*="uc-account"],[class*="uc-profile"],
  [class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"],[class*="uc-payment"],
  [class*="checkout"],[class*="cart"],[class*="account"],[class*="profile"],
  [class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"]
){
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-panel,.uc-card,.uc-section,.uc-box,.uc-form-section,
  .uc-checkout,.uc-cart,.uc-account,.uc-profile,
  .uc-checkout-panel,.uc-cart-panel,.uc-account-panel,.uc-profile-panel,
  [class*="uc-checkout"],[class*="uc-cart"],[class*="uc-account"],[class*="uc-profile"],
  [class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"],[class*="uc-payment"],
  [class*="checkout"],[class*="cart"],[class*="account"],[class*="profile"],
  [class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"]
) :is(label,.form-label,.control-label,.field-label,.field-title,dt,dd,p,span,small,strong,em,b,i,li,caption,th,td,div):not(button):not(.btn):not(.uc-btn):not(.uc-button):not([class*="paypal"]):not([class*="PayPal"]):not([class*="payment-provider"]):not([class*="payment-option"]):not([class*="payment-method"]){
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* B. The recurring failure: white helper/notice/readonly boxes inside dark UC panels.
   Convert those surfaces to dark/transparent instead of leaving pale text on white. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-panel,.uc-card,.uc-section,.uc-box,.uc-form-section,
  .uc-checkout,.uc-cart,.uc-account,.uc-profile,
  [class*="uc-checkout"],[class*="uc-cart"],[class*="uc-account"],[class*="uc-profile"],
  [class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"],[class*="uc-payment"],
  [class*="checkout"],[class*="cart"],[class*="account"],[class*="profile"],
  [class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"]
) :is(
  .alert,.alert-light,.alert-info,.message,.notice,.note,.well,.card,.card-body,
  .list-group,.list-group-item,.form-text,.help-block,.help-inline,.text-muted,.muted,
  .empty,.empty-state,.description,.desc,.instructions,.instruction,.hint,.helper,
  .column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,
  .table-responsive,.readonly,.read-only,.disabled,.form-control-plaintext,
  details,summary,
  [class*="alert"],[class*="message"],[class*="notice"],[class*="note"],
  [class*="hint"],[class*="help"],[class*="helper"],[class*="instruction"],
  [class*="description"],[class*="desc"],[class*="copy"],[class*="lede"],
  [class*="columns"],[class*="summary-box"],[class*="summary-card"],
  [class*="readonly"],[class*="read-only"]
):not(.payment-method):not(.payment-option):not(.uc-payment-method):not(.uc-payment-option):not(.payment-provider):not(.uc-payment-provider):not([class*="paypal"]):not([class*="PayPal"]){
  background:linear-gradient(180deg,var(--tru-091-panel),var(--tru-091-panel-2))!important;
  background-color:var(--tru-091-panel)!important;
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  border:1px solid var(--tru-091-line)!important;
  border-radius:8px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-panel,.uc-card,.uc-section,.uc-box,.uc-form-section,
  .uc-checkout,.uc-cart,.uc-account,.uc-profile,
  [class*="uc-checkout"],[class*="uc-cart"],[class*="uc-account"],[class*="uc-profile"],
  [class*="uc-customer"],[class*="uc-billing"],[class*="uc-delivery"],[class*="uc-payment"],
  [class*="checkout"],[class*="cart"],[class*="account"],[class*="profile"],
  [class*="customer"],[class*="billing"],[class*="delivery"],[class*="payment"]
) :is(
  .alert,.alert-light,.alert-info,.message,.notice,.note,.well,.card,.card-body,
  .list-group,.list-group-item,.form-text,.help-block,.help-inline,.text-muted,.muted,
  .empty,.empty-state,.description,.desc,.instructions,.instruction,.hint,.helper,
  .column-chooser,.uc-column-chooser,.uc-table-options,.uc-table-controls,
  .table-responsive,.readonly,.read-only,.disabled,.form-control-plaintext,
  details,summary,
  [class*="alert"],[class*="message"],[class*="notice"],[class*="note"],
  [class*="hint"],[class*="help"],[class*="helper"],[class*="instruction"],
  [class*="description"],[class*="desc"],[class*="copy"],[class*="lede"],
  [class*="columns"],[class*="summary-box"],[class*="summary-card"],
  [class*="readonly"],[class*="read-only"]
):not(.payment-method):not(.payment-option):not(.uc-payment-method):not(.uc-payment-option):not(.payment-provider):not(.uc-payment-provider):not([class*="paypal"]):not([class*="PayPal"]) :is(p,span,div,li,label,small,strong,em,b,i,summary,dt,dd,a){
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  background:transparent!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* C. Classless UC helper boxes: many leaked boxes are plain p/div blocks inside panels.
   Only target text-only blocks; do not touch layout wrappers, tables, media, buttons, or fields. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-checkout,.uc-profile,.uc-delivery,.uc-payment,.uc-cart,
  [class*="uc-checkout"],[class*="uc-profile"],[class*="uc-delivery"],[class*="uc-payment"],[class*="uc-cart"],
  [class*="checkout"],[class*="profile"],[class*="delivery"],[class*="payment"],[class*="cart"]
) > :is(p,small,div,section):not(:has(input,select,textarea,button,.btn,a.btn,table,img,svg,canvas,iframe,[class*="paypal"],[class*="PayPal"],[class*="provider"],[class*="option"])){
  background:transparent!important;
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  border-color:transparent!important;
  box-shadow:none!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-checkout,.uc-profile,.uc-delivery,.uc-payment,.uc-cart,
  [class*="uc-checkout"],[class*="uc-profile"],[class*="uc-delivery"],[class*="uc-payment"],[class*="uc-cart"],
  [class*="checkout"],[class*="profile"],[class*="delivery"],[class*="payment"],[class*="cart"]
) > :is(p,small,div,section):not(:has(input,select,textarea,button,.btn,a.btn,table,img,svg,canvas,iframe,[class*="paypal"],[class*="PayPal"],[class*="provider"],[class*="option"])) *{
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* D. Fields must be dark unless they are payment-brand provider cards. This fixes pale
   readonly/disabled/autofilled boxes that created white-on-white text. */
html body[class*="com_unifiedcommerce"] #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select,.inputbox),
html body.com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select,.inputbox),
html body.option-com_users #un-component :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),select,textarea,.form-control,.form-select,.inputbox){
  background:var(--tru-091-field)!important;
  background-color:var(--tru-091-field)!important;
  color:var(--tru-091-text)!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  border:1px solid var(--tru-091-line)!important;
  border-radius:7px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  opacity:1!important;
  text-shadow:none!important;
  caret-color:var(--tru-091-text)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill),
html body.com_users #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill),
html body.option-com_users #un-component :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill){
  -webkit-box-shadow:0 0 0 1000px var(--tru-091-field) inset!important;
  -webkit-text-fill-color:var(--tru-091-text)!important;
  caret-color:var(--tru-091-text)!important;
  transition:background-color 9999s ease-in-out 0s!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder,
html body.com_users #un-component :is(input,textarea)::placeholder,
html body.option-com_users #un-component :is(input,textarea)::placeholder{
  color:rgba(243,248,252,.72)!important;
  -webkit-text-fill-color:rgba(243,248,252,.72)!important;
  opacity:1!important;
}

/* E. Hide known generated UC explainer surfaces. These are not user data fields. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-page-header,.uc-view-header,.uc-title-card,.uc-page-title-card,.uc-header,.page-header,
  [class*="uc-delivery"],[class*="uc-shipping"],[class*="uc-profile"],[class*="uc-checkout"],[class*="uc-payment"],
  [class*="delivery"],[class*="shipping"],[class*="profile"],[class*="checkout"],[class*="payment"]
) :is(.uc-copy,.uc-lede,.uc-description,.uc-subtitle,.uc-intro,.uc-help,.uc-hint,.uc-note,.form-text,.help-block,.help-inline,.text-muted,.muted,small[class],textarea[readonly],textarea[disabled],input[readonly].form-control,input[disabled].form-control){
  display:none!important;
}

/* F. PayPal/payment-provider cards are the exception: keep them light, but force dark text. */
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]),
html body #un-component :is([class*="uc-payment"] [class*="provider"],[class*="uc-payment"] [class*="option"],[class*="paypal"],[class*="PayPal"]){
  background:#f7f8fb!important;
  color:var(--tru-091-ink)!important;
  -webkit-text-fill-color:var(--tru-091-ink)!important;
  border:1px solid rgba(95,125,255,.55)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.payment-method,.payment-option,.uc-payment-method,.uc-payment-option,.payment-provider,.uc-payment-provider,[class*="payment-provider"],[class*="payment-option"],[class*="paypal"],[class*="PayPal"]) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge),
html body #un-component :is([class*="uc-payment"] [class*="provider"],[class*="uc-payment"] [class*="option"],[class*="paypal"],[class*="PayPal"]) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge){
  color:var(--tru-091-ink)!important;
  -webkit-text-fill-color:var(--tru-091-ink)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* G. Text selection/highlight must be readable without turning labels into yellow patches. */
html body[class*="com_unifiedcommerce"] #un-component ::selection,
html body.com_users #un-component ::selection,
html body.option-com_users #un-component ::selection{
  background:#0b3146!important;
  color:var(--tru-091-gold)!important;
  -webkit-text-fill-color:var(--tru-091-gold)!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(mark,.highlight,.search-highlight,.finder-highlight,.js-highlight),
html body.com_users #un-component :is(mark,.highlight,.search-highlight,.finder-highlight,.js-highlight),
html body.option-com_users #un-component :is(mark,.highlight,.search-highlight,.finder-highlight,.js-highlight){
  background:#0b3146!important;
  color:var(--tru-091-gold)!important;
  -webkit-text-fill-color:var(--tru-091-gold)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

/* H. Gold action keys win after text/background normalization. */
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn,.uc914-btn),
html body.com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button),
html body.option-com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button){
  background:linear-gradient(180deg,#fff38a 0%,#e2c94f 58%,#b99120 100%)!important;
  color:var(--tru-091-ink)!important;
  -webkit-text-fill-color:var(--tru-091-ink)!important;
  border:1px solid rgba(255,231,106,.58)!important;
  border-radius:7px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.26),0 0 14px rgba(255,231,106,.22)!important;
  font-family:var(--tru-091-head)!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}

/* ========================================================================
   TwilightRun 2.0.92 UC/User Contrast Enforcement
   Purpose: eliminate white-on-white and pale-on-light text on UC/User pages.
   Scope: User/UC workflow surfaces only. No UTP structure, row, column, span,
   or module-position authority is changed here.
   ======================================================================== */

:root{
  --tru-092-dark:#0b1119;
  --tru-092-panel:#111a26;
  --tru-092-panel-2:#172232;
  --tru-092-line:rgba(255,231,106,.28);
  --tru-092-text:#f1f6fb;
  --tru-092-muted:#d7e0ea;
  --tru-092-ink:#071018;
  --tru-092-gold:#ffe76a;
  --tru-092-gold-2:#c79d25;
}

/* 1) UC/User dark panels: all ordinary text inside dark cards must be light. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-panel,.uc-section,.uc-card,.uc-box,.uc-cart,.uc-checkout,.uc-account,.uc-profile,
  .uc-form,.uc-form-section,.uc-summary,.uc-cart-summary,.uc-payment,.uc-payment-section,
  .uc-profile-panel,.uc-account-panel,.uc-dashboard-panel,.uc-checkout-panel,
  .checkout,.cart,.account,.profile,.payment,.billing,.delivery,
  fieldset,form
) :is(
  label,legend,p,span,div,small,strong,em,b,i,li,dt,dd,td,th,caption,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  .control-label,.form-label,.field-label,.value,.field-value,.description,.desc,
  [class*="label"],[class*="text"],[class*="help"],[class*="hint"],[class*="note"],
  [class*="message"],[class*="description"],[class*="summary"],[class*="copy"]
),
html body.com_users #un-component :is(
  .login,.registration,.reset,.remind,.profile,.profile-edit,.com-users-login,
  .com-users-registration,.com-users-reset,.com-users-remind,.com-users-profile,
  fieldset,form
) :is(
  label,legend,p,span,div,small,strong,em,b,i,li,dt,dd,td,th,caption,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  .control-label,.form-label,.field-label,.value,.field-value,.description,.desc,
  [class*="label"],[class*="text"],[class*="help"],[class*="hint"],[class*="note"],
  [class*="message"],[class*="description"],[class*="summary"],[class*="copy"]
),
html body.option-com_users #un-component :is(
  .login,.registration,.reset,.remind,.profile,.profile-edit,.com-users-login,
  .com-users-registration,.com-users-reset,.com-users-remind,.com-users-profile,
  fieldset,form
) :is(
  label,legend,p,span,div,small,strong,em,b,i,li,dt,dd,td,th,caption,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  .control-label,.form-label,.field-label,.value,.field-value,.description,.desc,
  [class*="label"],[class*="text"],[class*="help"],[class*="hint"],[class*="note"],
  [class*="message"],[class*="description"],[class*="summary"],[class*="copy"]
){
  color:var(--tru-092-text)!important;
  -webkit-text-fill-color:var(--tru-092-text)!important;
  text-shadow:none!important;
}

/* 2) Known light/white UC helper surfaces inside dark panels are made dark,
      not left as white boxes with pale text. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .alert,.alert-info,.alert-message,.system-message,.message,.notice,.note,.hint,.help,
  .well,.card,.card-body,.list-group,.list-group-item,.table-responsive,table,thead,tbody,tfoot,tr,td,th,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  .columns,.column-chooser,.column-selector,.field-selector,.summary-box,.summary-row,
  .cart-summary,.checkout-summary,.order-summary,.payment-summary,
  [class*="notice"],[class*="message"],[class*="note"],[class*="hint"],[class*="helper"],
  [class*="summary"],[class*="columns"],[class*="column"],[class*="instruction"],
  [class*="description"],[class*="empty"],[class*="readonly"],[class*="muted"]
),
html body.com_users #un-component :is(
  .alert,.alert-info,.alert-message,.system-message,.message,.notice,.note,.hint,.help,
  .well,.card,.card-body,.list-group,.list-group-item,.table-responsive,table,thead,tbody,tfoot,tr,td,th,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  [class*="notice"],[class*="message"],[class*="note"],[class*="hint"],[class*="helper"],
  [class*="summary"],[class*="instruction"],[class*="description"],[class*="empty"],
  [class*="readonly"],[class*="muted"]
),
html body.option-com_users #un-component :is(
  .alert,.alert-info,.alert-message,.system-message,.message,.notice,.note,.hint,.help,
  .well,.card,.card-body,.list-group,.list-group-item,.table-responsive,table,thead,tbody,tfoot,tr,td,th,
  .form-text,.help-block,.help-inline,.text-muted,.muted,.small,.caption,
  [class*="notice"],[class*="message"],[class*="note"],[class*="hint"],[class*="helper"],
  [class*="summary"],[class*="instruction"],[class*="description"],[class*="empty"],
  [class*="readonly"],[class*="muted"]
){
  background:linear-gradient(180deg,var(--tru-092-panel-2),var(--tru-092-dark))!important;
  background-color:var(--tru-092-panel)!important;
  color:var(--tru-092-text)!important;
  -webkit-text-fill-color:var(--tru-092-text)!important;
  border-color:var(--tru-092-line)!important;
  text-shadow:none!important;
}

/* 3) Form fields are never allowed to be white with pale text. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.inputbox,.form-select,.form-control-plaintext
),
html body.com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.inputbox,.form-select,.form-control-plaintext
),
html body.option-com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.inputbox,.form-select,.form-control-plaintext
){
  background:var(--tru-092-dark)!important;
  background-color:var(--tru-092-dark)!important;
  color:var(--tru-092-text)!important;
  -webkit-text-fill-color:var(--tru-092-text)!important;
  border:1px solid rgba(255,231,106,.42)!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)!important;
  caret-color:var(--tru-092-gold)!important;
  text-shadow:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder,
html body.com_users #un-component :is(input,textarea)::placeholder,
html body.option-com_users #un-component :is(input,textarea)::placeholder{
  color:rgba(241,246,251,.68)!important;
  -webkit-text-fill-color:rgba(241,246,251,.68)!important;
  opacity:1!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea,select):-webkit-autofill,
html body.com_users #un-component :is(input,textarea,select):-webkit-autofill,
html body.option-com_users #un-component :is(input,textarea,select):-webkit-autofill{
  -webkit-box-shadow:0 0 0 1000px var(--tru-092-dark) inset!important;
  -webkit-text-fill-color:var(--tru-092-text)!important;
  caret-color:var(--tru-092-gold)!important;
}

/* 4) Text selection must remain readable on both dark and light UC surfaces. */
html body[class*="com_unifiedcommerce"] #un-component ::selection,
html body.com_users #un-component ::selection,
html body.option-com_users #un-component ::selection{
  background:var(--tru-092-gold)!important;
  color:var(--tru-092-ink)!important;
  -webkit-text-fill-color:var(--tru-092-ink)!important;
  text-shadow:none!important;
}

/* 5) Light brand/provider/payment cards are the only intentional light islands.
      If a surface remains light for branding, its text is forced dark. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="provider-card"],[class*="payment-provider"],
  [class*="gateway"],[class*="payment-option"],.paypal,.PayPal
),
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="provider-card"],[class*="payment-provider"],
  [class*="gateway"],[class*="payment-option"],.paypal,.PayPal
) *{
  background-color:#f7f9fc!important;
  color:var(--tru-092-ink)!important;
  -webkit-text-fill-color:var(--tru-092-ink)!important;
  text-shadow:none!important;
}

/* 6) Generated UC explainer copy that should not be public-facing is hidden on
      profile, delivery, cart, checkout, and payment helper areas. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  textarea[readonly],
  .uc-intro,.uc-description,.uc-subtitle,.uc-copy,.uc-lede,
  [class*="delivery"] [class*="description"],
  [class*="delivery"] [class*="helper"],
  [class*="profile"] [class*="description"],
  [class*="commerce"] [class*="description"],
  [class*="checkout"] [class*="helper"],
  [class*="payment"] [class*="instruction"]
){
  display:none!important;
}

/* 7) Reassert readable gold action keys after contrast normalization. */
html body[class*="com_unifiedcommerce"] #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button,.uc-button,.uc-btn),
html body.com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button),
html body.option-com_users #un-component :is(button,.btn,input[type="submit"],input[type="button"],a.btn,a.button){
  background:linear-gradient(180deg,#fff38a 0%,#e2c94f 58%,#b99120 100%)!important;
  color:var(--tru-092-ink)!important;
  -webkit-text-fill-color:var(--tru-092-ink)!important;
  border:1px solid rgba(255,231,106,.58)!important;
  text-shadow:none!important;
}

/* 8) User/UC dark panel headings must remain bright and readable. */
html body[class*="com_unifiedcommerce"] #un-component :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title),
html body.com_users #un-component :is(h1,h2,h3,h4,h5,h6,legend),
html body.option-com_users #un-component :is(h1,h2,h3,h4,h5,h6,legend){
  color:var(--tru-092-gold)!important;
  -webkit-text-fill-color:var(--tru-092-gold)!important;
  text-shadow:0 0 10px rgba(255,231,106,.24)!important;
}

/* ========================================================================
   TwilightRun 2.0.93 UC Billing Width + PayPal Image Preservation
   Scope: UC checkout/profile only. Keeps UTP/template structure intact.
   Purpose: stop Billing Address inputs/selects from rendering as truncated
   narrow controls and preserve the visual PayPal provider image/card.
   ======================================================================== */

:root{
  --tru-093-dark:#0b1119;
  --tru-093-panel:#111a26;
  --tru-093-text:#f1f6fb;
  --tru-093-muted:#d9e3ee;
  --tru-093-line:rgba(255,231,106,.34);
  --tru-093-gold:#ffe76a;
  --tru-093-ink:#071018;
}

/* A. Billing/address/contact field containers should fill their card column.
      This corrects the short/truncated boxes on the Billing Address side
      without changing UTP rows, columns, module positions, or spans. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-checkout,.uc-profile,.uc-form,.uc-panel,.uc-card,.checkout,.profile,form,fieldset,
  [class*="checkout"],[class*="profile"],[class*="billing"],[class*="address"],[class*="customer"]
) :is(
  .control-group,.controls,.control,.form-group,.field,.field-group,.input-group,
  .form-row,.form-field,.uc-field,.uc-form-field,.uc-control,.uc-input,
  [class*="field"],[class*="control"],[class*="input"]
){
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* B. Text-entry controls in UC checkout/profile/billing panels should be
      full-width controls within their own field container. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],[class*="customer"],[class*="checkout"],[class*="profile"],
  .billing,.address,.customer,.checkout,.profile,.uc-checkout,.uc-profile
) :is(
  input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="search"],
  input[type="url"],input[type="password"],select,textarea,.form-control,.form-select,.inputbox
){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* C. If the plugin emits a nested Bootstrap/control column inside the right
      billing card, let the content column occupy the available card width. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],.billing,.address
) :is(
  [class*="col-"],[class*="span"],.controls,.input-group,.form-group,.form-row,.field
){
  max-width:100%!important;
  min-width:0!important;
}

/* D. Keep Billing Address labels readable on the preferred dark edit-profile
      aesthetic. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],.billing,.address
) :is(label,.form-label,.control-label,.field-label,legend,h2,h3,h4,h5,span,p,small){
  color:var(--tru-093-text)!important;
  -webkit-text-fill-color:var(--tru-093-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],.billing,.address
) :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title){
  color:var(--tru-093-gold)!important;
  -webkit-text-fill-color:var(--tru-093-gold)!important;
  text-shadow:0 0 10px rgba(255,231,106,.22)!important;
}

/* E. Preserve the PayPal/provider image card. Previous broad contrast passes
      could flatten provider contents into text-only blocks. The provider card
      may remain a branded light island, but the actual logo/image must render. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
){
  overflow:visible!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  max-height:96px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:none!important;
}

/* F. Provider card copy remains readable, but do not paint every child as a
      white box. This keeps the PayPal image/card look instead of washing it out. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment-provider"],[class*="provider-card"],[class*="payment-option"],
  [class*="gateway"],.payment-provider,.payment-option
) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge):not(:has(img,svg,picture)){
  color:var(--tru-093-ink)!important;
  -webkit-text-fill-color:var(--tru-093-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment-provider"],[class*="provider-card"],[class*="payment-option"],
  [class*="gateway"],.payment-provider,.payment-option
) :is(.selected,.badge,[class*="selected"]){
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  padding:.25rem .5rem!important;
  border-radius:999px!important;
  background:#dffbe7!important;
  color:#0b3a1e!important;
  -webkit-text-fill-color:#0b3a1e!important;
}

/* G. Text selection inside fields and provider cards remains readable. */
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea,select)::selection{
  background:var(--tru-093-gold)!important;
  color:var(--tru-093-ink)!important;
  -webkit-text-fill-color:var(--tru-093-ink)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment-provider"],[class*="provider-card"],[class*="payment-option"],.payment-provider,.payment-option
) ::selection{
  background:#2346ff!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* ========================================================================
   TwilightRun 2.0.94 UC Checkout Field + Contrast Hard Clamp
   Scope: UnifiedCommerce/User workflow only. No UTP row/module reset.
   Purpose: correct the remaining cases where UC checkout/profile fields stayed
   narrow/truncated and where helper/provider surfaces could still show
   white-on-white or pale-on-light text.
   ======================================================================== */

:root{
  --tru-094-bg:#0a1018;
  --tru-094-panel:#121c29;
  --tru-094-panel-2:#172232;
  --tru-094-text:#f4f8ff;
  --tru-094-muted:#d7e1ee;
  --tru-094-gold:#ffe76a;
  --tru-094-line:rgba(255,231,106,.34);
  --tru-094-ink:#071018;
}

/* A. The Billing/Address side was still inheriting narrow field wrappers.
   Force every field wrapper inside UC checkout/profile/address cards to fill
   the available card width. This is deliberately scoped inside #un-component. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-checkout,.uc-profile,.uc-account,.uc-form,.uc-card,.uc-panel,
  .checkout,.profile,.account,form,fieldset,
  [class*="checkout"],[class*="profile"],[class*="billing"],[class*="address"],[class*="customer"],[class*="delivery"]
) :is(
  .control-group,.controls,.control,.form-group,.field,.field-group,.form-row,.form-field,
  .uc-field,.uc-form-field,.uc-control,.input-group,.input-prepend,.input-append,
  [class*="control"],[class*="field"],[class*="input"],[class*="form-group"],[style*="width"]
){
  float:none!important;
  clear:both!important;
  display:block!important;
  flex:1 1 100%!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* B. Controls themselves must fill the field wrapper. Use both width and
   inline-size to beat plugin/Bootstrap width leftovers. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],[class*="customer"],[class*="checkout"],[class*="profile"],[class*="delivery"],
  .billing,.address,.customer,.checkout,.profile,.delivery,.uc-checkout,.uc-profile
) :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.form-select,.inputbox,.form-control-plaintext
){
  display:block!important;
  inline-size:100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* C. Dark TRU input controls. This fixes the remaining light-field / light-font
   combinations by choosing the dark surface and readable light text. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.form-select,.inputbox,.form-control-plaintext
),
html body.com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.form-select,.inputbox,.form-control-plaintext
),
html body.option-com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.form-select,.inputbox,.form-control-plaintext
){
  background:#0a1018!important;
  background-color:#0a1018!important;
  color:var(--tru-094-text)!important;
  -webkit-text-fill-color:var(--tru-094-text)!important;
  border:1px solid var(--tru-094-line)!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.28)!important;
  text-shadow:none!important;
  caret-color:var(--tru-094-gold)!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea)::placeholder,
html body.com_users #un-component :is(input,textarea)::placeholder,
html body.option-com_users #un-component :is(input,textarea)::placeholder{
  color:rgba(244,248,255,.68)!important;
  -webkit-text-fill-color:rgba(244,248,255,.68)!important;
  opacity:1!important;
}

/* D. Browser/autofill repair. */
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea,select):-webkit-autofill,
html body.com_users #un-component :is(input,textarea,select):-webkit-autofill,
html body.option-com_users #un-component :is(input,textarea,select):-webkit-autofill{
  -webkit-box-shadow:0 0 0 1000px #0a1018 inset!important;
  -webkit-text-fill-color:var(--tru-094-text)!important;
  caret-color:var(--tru-094-gold)!important;
}

/* E. Generic UC helper/notice/note blocks inside dark panels should be dark,
   not white boxes carrying inherited white/pale text. This is the targeted
   answer to the white-background/white-font issue. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .alert,.alert-info,.alert-message,.notice,.message,.msg,.note,.hint,.help,.help-block,.form-text,.small,
  .readonly,.read-only,.description,.desc,.instructions,.instruction,.helper,.helper-text,.summary,.summary-box,
  .columns,.column-chooser,.chooser,.cart-summary,.order-summary,.checkout-summary,.table-responsive,.table-wrapper,
  .well,.list-group-item,.card-body,.uc-note,.uc-help,.uc-message,.uc-summary,.uc-columns,.uc-table,.uc-box,
  [class*="notice"],[class*="message"],[class*="helper"],[class*="hint"],[class*="instruction"],[class*="summary"],[class*="column"]
):not([class*="paypal"]):not([class*="PayPal"]):not([class*="provider"]):not([class*="gateway"]):not([class*="payment-option"]){
  background:#172232!important;
  background-color:#172232!important;
  color:var(--tru-094-text)!important;
  -webkit-text-fill-color:var(--tru-094-text)!important;
  border-color:rgba(255,231,106,.22)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .alert,.notice,.message,.msg,.note,.hint,.help,.help-block,.form-text,.readonly,.read-only,.description,.desc,
  .instructions,.instruction,.helper,.helper-text,.summary,.summary-box,.columns,.column-chooser,.chooser,
  .cart-summary,.order-summary,.checkout-summary,.table-responsive,.table-wrapper,.well,.list-group-item,.card-body,
  .uc-note,.uc-help,.uc-message,.uc-summary,.uc-columns,.uc-table,.uc-box,
  [class*="notice"],[class*="message"],[class*="helper"],[class*="hint"],[class*="instruction"],[class*="summary"],[class*="column"]
):not([class*="paypal"]):not([class*="PayPal"]):not([class*="provider"]):not([class*="gateway"]):not([class*="payment-option"]) *{
  color:var(--tru-094-text)!important;
  -webkit-text-fill-color:var(--tru-094-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* F. UC tables/cart rows must stay dark and readable. */
html body[class*="com_unifiedcommerce"] #un-component :is(table,.table,thead,tbody,tfoot,tr,th,td){
  background:#121c29!important;
  background-color:#121c29!important;
  color:var(--tru-094-text)!important;
  -webkit-text-fill-color:var(--tru-094-text)!important;
  border-color:rgba(244,248,255,.18)!important;
  text-shadow:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(th,thead td){
  color:var(--tru-094-gold)!important;
  -webkit-text-fill-color:var(--tru-094-gold)!important;
}

/* G. Payment provider / PayPal is the only intentional light island. Preserve
   the card/image while forcing provider text to dark. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
){
  background:#f4f9ff!important;
  background-color:#f4f9ff!important;
  color:#071018!important;
  -webkit-text-fill-color:#071018!important;
  border:1px solid rgba(69,96,255,.45)!important;
  text-shadow:none!important;
  overflow:visible!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
) :is(p,span,div,strong,small,label,.title,.name,.description,.desc,.selected,.badge):not(:has(img,svg,picture)){
  background:transparent!important;
  color:#071018!important;
  -webkit-text-fill-color:#071018!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:220px!important;
  max-height:120px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:none!important;
}

/* H. Normal UC text on dark cards stays readable; headings stay gold. */
html body[class*="com_unifiedcommerce"] #un-component :is(label,.control-label,.form-label,p,span,div,li,dd,dt,small,strong,em):not([class*="paypal"]):not([class*="PayPal"]):not([class*="provider"]):not([class*="gateway"]):not([class*="payment-option"]){
  color:var(--tru-094-text);
  -webkit-text-fill-color:currentColor;
  text-shadow:none;
}
html body[class*="com_unifiedcommerce"] #un-component :is(h1,h2,h3,h4,h5,h6,legend,.uc-title,.uc-heading,.uc-section-title){
  color:var(--tru-094-gold)!important;
  -webkit-text-fill-color:var(--tru-094-gold)!important;
  text-shadow:0 0 10px rgba(255,231,106,.23)!important;
}

/* I. Selection contrast on UC/User pages. */
html body[class*="com_unifiedcommerce"] #un-component ::selection,
html body.com_users #un-component ::selection,
html body.option-com_users #un-component ::selection{
  background:var(--tru-094-gold)!important;
  color:#071018!important;
  -webkit-text-fill-color:#071018!important;
  text-shadow:none!important;
}


/* ========================================================================
   TwilightRun 2.0.95 - selector-level UC contrast repair
   Reason: prior passes applied broad UC text rules before payment/provider
   and helper-surface exceptions. The later broad rules could still turn text
   pale inside light/brand islands, or leave unclassed helper text on light
   boxes. This layer is deliberately last and resolves contrast by surface:
   - generic UC helper/copy/note/table surfaces become dark with light text;
   - payment provider/PayPal islands remain light with dark text;
   - fields remain dark with light text;
   - generated explainer copy is hidden where it is not user-entered data.
   Boundary: CSS only. No UTP row/module/position changes.
   ======================================================================== */

:root{
  --tru-095-dark:#0a1018;
  --tru-095-panel:#121c29;
  --tru-095-panel-soft:#172232;
  --tru-095-text:#f4f8ff;
  --tru-095-muted:#dce6f2;
  --tru-095-gold:#ffe76a;
  --tru-095-ink:#071018;
  --tru-095-line:rgba(255,231,106,.34);
}

/* 1) UC generated helper/copy blocks: remove light boxes, then use light text.
   This catches the delivery/profile/payment helper copy that previously escaped
   by rendering as plain p/small/div or Bootstrap utility surfaces rather than
   known UC class names. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-checkout,.uc-profile,.uc-account,.uc-cart,.uc-payment,.uc-panel,.uc-card,.uc-section,
  [class*="checkout"],[class*="profile"],[class*="account"],[class*="cart"],[class*="summary"],
  [class*="payment"],[class*="delivery"],[class*="shipping"],[class*="billing"],[class*="address"],[class*="customer"]
) :is(
  p,small,.small,.text-muted,.muted,.form-text,.help-block,.help-inline,.description,.desc,
  .instructions,.instruction,.helper,.helper-text,.hint,.note,.notice,.message,.msg,
  .alert,.alert-info,.alert-light,.well,.callout,.bg-light,.text-bg-light,
  .form-control-plaintext,.readonly,.read-only,.input-group-text
){
  background:transparent!important;
  background-color:transparent!important;
  color:var(--tru-095-text)!important;
  -webkit-text-fill-color:var(--tru-095-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* 2) If the helper/copy block itself is a visible container, make the container
   dark instead of leaving a white/light island. This is the direct answer to
   white-background/white-font failures. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-note,.uc-help,.uc-message,.uc-alert,.uc-notice,.uc-summary,.uc-box,.uc-columns,.uc-table,
  .alert,.alert-info,.alert-light,.notice,.message,.msg,.note,.hint,.helper,.helper-text,
  .summary,.summary-box,.cart-summary,.order-summary,.checkout-summary,
  .columns,.column-chooser,.chooser,.table-responsive,.table-wrapper,.well,.callout,.list-group-item,
  .card:not([class*="provider"]):not([class*="paypal"]):not([class*="PayPal"]),
  .card-body:not([class*="provider"]):not([class*="paypal"]):not([class*="PayPal"]),
  [class*="notice"],[class*="message"],[class*="helper"],[class*="hint"],[class*="instruction"],
  [class*="summary"],[class*="column-chooser"],[class*="table-control"]
){
  background:var(--tru-095-panel-soft)!important;
  background-color:var(--tru-095-panel-soft)!important;
  color:var(--tru-095-text)!important;
  -webkit-text-fill-color:var(--tru-095-text)!important;
  border-color:rgba(255,231,106,.24)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-note,.uc-help,.uc-message,.uc-alert,.uc-notice,.uc-summary,.uc-box,.uc-columns,.uc-table,
  .alert,.alert-info,.alert-light,.notice,.message,.msg,.note,.hint,.helper,.helper-text,
  .summary,.summary-box,.cart-summary,.order-summary,.checkout-summary,
  .columns,.column-chooser,.chooser,.table-responsive,.table-wrapper,.well,.callout,.list-group-item,
  .card:not([class*="provider"]):not([class*="paypal"]):not([class*="PayPal"]),
  .card-body:not([class*="provider"]):not([class*="paypal"]):not([class*="PayPal"]),
  [class*="notice"],[class*="message"],[class*="helper"],[class*="hint"],[class*="instruction"],
  [class*="summary"],[class*="column-chooser"],[class*="table-control"]
) :is(p,span,div,strong,em,small,label,li,dt,dd,th,td){
  color:var(--tru-095-text)!important;
  -webkit-text-fill-color:var(--tru-095-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* 3) Do not show generated implementation-language explainers that the public
   workflow should not display. Field labels and user-entered values are not
   hidden. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="delivery"],[class*="shipping"],[class*="profile"],[class*="checkout"],[class*="payment"],
  .uc-delivery,.uc-shipping,.uc-profile,.uc-checkout,.uc-payment
) :is(
  textarea[readonly],textarea[disabled],.readonly textarea,.read-only textarea,
  .uc-description,.uc-copy,.uc-lede,.uc-subtitle,.uc-intro,.uc-explainer,
  [class*="description"],[class*="explainer"],[class*="intro-copy"]
){
  display:none!important;
}

/* 4) Fields: final authority. If a field is not a checkbox/radio/button, it is
   a dark TRU field with readable text. This also handles autofill. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
  select,textarea,.form-control,.form-select,.inputbox
),
html body.com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
  select,textarea,.form-control,.form-select,.inputbox
),
html body.option-com_users #un-component :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
  select,textarea,.form-control,.form-select,.inputbox
){
  background:var(--tru-095-dark)!important;
  background-color:var(--tru-095-dark)!important;
  color:var(--tru-095-text)!important;
  -webkit-text-fill-color:var(--tru-095-text)!important;
  border:1px solid var(--tru-095-line)!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.35)!important;
  text-shadow:none!important;
  caret-color:var(--tru-095-gold)!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(input,textarea,select):-webkit-autofill,
html body.com_users #un-component :is(input,textarea,select):-webkit-autofill,
html body.option-com_users #un-component :is(input,textarea,select):-webkit-autofill{
  -webkit-box-shadow:0 0 0 1000px var(--tru-095-dark) inset!important;
  -webkit-text-fill-color:var(--tru-095-text)!important;
  caret-color:var(--tru-095-gold)!important;
}

/* 5) Billing/address field width authority, scoped only to UC field panels. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],[class*="customer"],[class*="checkout"],[class*="profile"],
  .billing,.address,.customer,.checkout,.profile,.uc-checkout,.uc-profile
) :is(
  .control-group,.controls,.control,.form-group,.field,.field-group,.form-row,.form-field,
  .uc-field,.uc-form-field,.uc-control,.input-group,.input-prepend,.input-append,
  [class*="field"],[class*="control"],[class*="input"]
){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="billing"],[class*="address"],[class*="customer"],[class*="checkout"],[class*="profile"],
  .billing,.address,.customer,.checkout,.profile,.uc-checkout,.uc-profile
) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select,textarea,.form-control,.form-select,.inputbox){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

/* 6) Payment provider/PayPal is the exception to the dark helper rule. It is a
   light brand card; therefore every nested text node is forced dark AFTER the
   generic UC text rules above. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
){
  background:#f4f9ff!important;
  background-color:#f4f9ff!important;
  color:var(--tru-095-ink)!important;
  -webkit-text-fill-color:var(--tru-095-ink)!important;
  border:1px solid rgba(69,96,255,.45)!important;
  text-shadow:none!important;
  overflow:visible!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
) *{
  color:var(--tru-095-ink)!important;
  -webkit-text-fill-color:var(--tru-095-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="paypal"],[class*="PayPal"],[class*="payment-provider"],[class*="provider-card"],
  [class*="payment-option"],[class*="gateway"],.paypal,.PayPal,.payment-provider,.payment-option
) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:220px!important;
  max-height:120px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:none!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment-provider"],[class*="provider-card"],[class*="payment-option"],.payment-provider,.payment-option
) :is(.selected,.badge,[class*="selected"]){
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  padding:.24rem .52rem!important;
  border-radius:999px!important;
  background:#dff8dd!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  font-weight:800!important;
}

/* 7) Text selection must never become unreadable. */
html body[class*="com_unifiedcommerce"] #un-component ::selection,
html body.com_users #un-component ::selection,
html body.option-com_users #un-component ::selection{
  background:var(--tru-095-gold)!important;
  color:var(--tru-095-ink)!important;
  -webkit-text-fill-color:var(--tru-095-ink)!important;
  text-shadow:none!important;
}

/* ========================================================================
   TwilightRun 2.0.96 - selector-locked checkout field + PayPal repair
   Purpose: fix the two remaining visible UC checkout failures without broad
   recasting: (1) billing/address controls rendered as short/truncated fields;
   (2) PayPal/payment-provider card text remained unreadable on a light brand
   surface. This layer is last, uses actual surface detection, and does not
   change UTP rows/modules/header structure.
   ======================================================================== */
:root{
  --tru-096-dark:#0a1018;
  --tru-096-panel:#121c29;
  --tru-096-text:#f5f8ff;
  --tru-096-muted:#dbe5f0;
  --tru-096-gold:#ffe76a;
  --tru-096-ink:#071018;
  --tru-096-line:rgba(255,231,106,.36);
  --tru-096-provider:#f4fbff;
}

/* 1) Address/Billing field groups: target the field group that owns an
   address/city/state/region/postal/country control, not the UTP column. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .control-group,.form-group,.field,.field-group,.form-field,.uc-field,.uc-form-field,
  .controls,.control,.input-group,.input-prepend,.input-append,
  [class*="field"],[class*="control"],[class*="form-group"],[class*="input-group"]
):has(:is(
  input[name*="address" i],input[id*="address" i],input[placeholder*="address" i],
  input[name*="city" i],input[id*="city" i],input[placeholder*="city" i],
  input[name*="region" i],input[id*="region" i],select[name*="region" i],select[id*="region" i],
  input[name*="state" i],input[id*="state" i],select[name*="state" i],select[id*="state" i],
  input[name*="postal" i],input[id*="postal" i],input[placeholder*="postal" i],
  input[name*="zip" i],input[id*="zip" i],input[placeholder*="zip" i],
  select[name*="country" i],select[id*="country" i],input[name*="country" i],input[id*="country" i]
)){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:1 1 100%!important;
  box-sizing:border-box!important;
  float:none!important;
  clear:both!important;
}

/* Some Bootstrap/UC field columns carry the width instead of the field group.
   Match only internal field columns that own a field control and do not own a
   section heading/card title, so Customer/Billing cards themselves are not
   converted into one-column layout. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class~="col"],[class*="col-"],[class*="span"]
):has(:is(
  input[name*="address" i],input[id*="address" i],input[placeholder*="address" i],
  input[name*="city" i],input[id*="city" i],input[placeholder*="city" i],
  input[name*="region" i],input[id*="region" i],select[name*="region" i],select[id*="region" i],
  input[name*="state" i],input[id*="state" i],select[name*="state" i],select[id*="state" i],
  input[name*="postal" i],input[id*="postal" i],input[placeholder*="postal" i],
  input[name*="zip" i],input[id*="zip" i],input[placeholder*="zip" i],
  select[name*="country" i],select[id*="country" i],input[name*="country" i],input[id*="country" i]
)):not(:has(> :is(h1,h2,h3,h4,legend,.uc-title,.uc-heading,.uc-section-title,.uc-panel-title,.uc-card-title,[class*="title"]))){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:1 1 100%!important;
  box-sizing:border-box!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  input[name*="address" i],input[id*="address" i],input[placeholder*="address" i],
  input[name*="city" i],input[id*="city" i],input[placeholder*="city" i],
  input[name*="region" i],input[id*="region" i],select[name*="region" i],select[id*="region" i],
  input[name*="state" i],input[id*="state" i],select[name*="state" i],select[id*="state" i],
  input[name*="postal" i],input[id*="postal" i],input[placeholder*="postal" i],
  input[name*="zip" i],input[id*="zip" i],input[placeholder*="zip" i],
  select[name*="country" i],select[id*="country" i],input[name*="country" i],input[id*="country" i]
){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  background:var(--tru-096-dark)!important;
  color:var(--tru-096-text)!important;
  -webkit-text-fill-color:var(--tru-096-text)!important;
  border:1px solid var(--tru-096-line)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* 2) Payment provider cards: detect the actual provider/radio/card surface
   inside the payment area. These are light brand cards, so text must be dark.
   This deliberately comes after every generic UC dark-panel rule. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.uc-checkout,.checkout,.payment
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .card,.card-body,.list-group-item,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
):not(:has(:is(input:not([type="radio"]),select,textarea))){
  background:var(--tru-096-provider)!important;
  background-color:var(--tru-096-provider)!important;
  color:var(--tru-096-ink)!important;
  -webkit-text-fill-color:var(--tru-096-ink)!important;
  border:1px solid rgba(74,96,255,.44)!important;
  border-radius:14px!important;
  text-shadow:none!important;
  opacity:1!important;
  overflow:visible!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.uc-checkout,.checkout,.payment
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .card,.card-body,.list-group-item,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
):not(:has(:is(input:not([type="radio"]),select,textarea))) :is(p,span,div,strong,small,label,em,b,i,a,.title,.name,.description,.desc,.selected,.badge,[class*="selected" i]){
  background:transparent!important;
  color:var(--tru-096-ink)!important;
  -webkit-text-fill-color:var(--tru-096-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.uc-checkout,.checkout,.payment
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
):not(:has(:is(input:not([type="radio"]),select,textarea))) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:min(220px,100%)!important;
  height:auto!important;
  max-height:115px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.uc-checkout,.checkout,.payment
) :is(.selected,.badge,[class*="selected" i]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:max-content!important;
  min-height:1.55em!important;
  padding:.22rem .52rem!important;
  background:#dff8dd!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  border:1px solid rgba(28,120,48,.18)!important;
  border-radius:999px!important;
  font-weight:800!important;
  text-shadow:none!important;
}

/* Selected/highlighted text inside provider cards must be readable too. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.uc-checkout,.checkout,.payment
) :is(label:has(input[type="radio"]),div:has(> input[type="radio"]),li:has(input[type="radio"]),[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]) ::selection{
  background:#2346ff!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}

/* ========================================================================
   TwilightRun 2.0.97 - checkout uniform fields + PayPal image lock
   Purpose: solve the live checkout issues shown on 5/18/2026:
   1) billing/address fields remain short while the left-side fields are long;
   2) PayPal provider surface shows text only in the green area instead of a
      visible PayPal image/logo treatment.
   Scope: UnifiedCommerce checkout/payment/profile field interiors only.
   No UTP row/module/header/layout authority changes.
   ======================================================================== */
:root{
  --tru-097-field-h:46px;
  --tru-097-field-bg:#081018;
  --tru-097-field-text:#f4f8ff;
  --tru-097-field-border:rgba(255,231,106,.38);
  --tru-097-provider-bg:#e8fff0;
  --tru-097-provider-ink:#061018;
}

/* A. Normalize checkout field lengths inside the actual UC form cards. This
   intentionally targets form/control wrappers, not .un-* template structure. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  form,
  .checkout,.uc-checkout,[class*="checkout" i],
  .billing,.address,.customer,.profile,.delivery,
  [class*="billing" i],[class*="address" i],[class*="customer" i],[class*="profile" i],[class*="delivery" i]
) :is(
  .control-group,.form-group,.field,.field-group,.form-field,.uc-field,.uc-form-field,
  .controls,.control,.input-group,.input-prepend,.input-append,.mb-3,.mb-4,
  .field-wrapper,.form-control-wrapper,.input-wrapper,
  [class*="field" i],[class*="control" i],[class*="input" i],[class*="form-group" i]
){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:1 1 100%!important;
  box-sizing:border-box!important;
  float:none!important;
  clear:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  form,
  .checkout,.uc-checkout,[class*="checkout" i],
  .billing,.address,.customer,.profile,.delivery,
  [class*="billing" i],[class*="address" i],[class*="customer" i],[class*="profile" i],[class*="delivery" i]
) :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
  select,textarea,.form-control,.form-select,.inputbox
){
  display:block!important;
  inline-size:100%!important;
  width:100%!important;
  max-inline-size:100%!important;
  max-width:100%!important;
  min-inline-size:100%!important;
  min-width:100%!important;
  height:var(--tru-097-field-h)!important;
  min-height:var(--tru-097-field-h)!important;
  box-sizing:border-box!important;
  background:var(--tru-097-field-bg)!important;
  color:var(--tru-097-field-text)!important;
  -webkit-text-fill-color:var(--tru-097-field-text)!important;
  border:1px solid var(--tru-097-field-border)!important;
  border-radius:8px!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.32)!important;
  opacity:1!important;
  text-shadow:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  form,
  .checkout,.uc-checkout,[class*="checkout" i],
  .billing,.address,.customer,.profile,.delivery,
  [class*="billing" i],[class*="address" i],[class*="customer" i],[class*="profile" i],[class*="delivery" i]
) textarea{
  height:auto!important;
  min-height:calc(var(--tru-097-field-h) * 1.7)!important;
}

/* B. UC layouts sometimes put max-width on bootstrap column/span wrappers
   around individual fields. Lift that only for internal field columns. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .checkout,.uc-checkout,[class*="checkout" i],
  .billing,.address,.customer,.profile,.delivery,
  [class*="billing" i],[class*="address" i],[class*="customer" i],[class*="profile" i],[class*="delivery" i]
) :is([class~="col"],[class*="col-"],[class*="span"]):has(:is(input,select,textarea)){
  width:100%!important;
  max-width:100%!important;
  flex:1 1 100%!important;
  box-sizing:border-box!important;
}

/* C. Payment provider: preserve/restore a visible PayPal logo treatment inside
   the green brand area. Use actual images when present; otherwise add an inline
   SVG fallback so the card never collapses to text-only. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.checkout,.uc-checkout
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
){
  background:var(--tru-097-provider-bg)!important;
  background-color:var(--tru-097-provider-bg)!important;
  color:var(--tru-097-provider-ink)!important;
  -webkit-text-fill-color:var(--tru-097-provider-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
  border:2px solid rgba(74,96,255,.55)!important;
  border-radius:34px!important;
  min-width:300px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:104px!important;
  padding:14px 22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.checkout,.uc-checkout
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:178px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
  mix-blend-mode:normal!important;
  flex:0 0 auto!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.checkout,.uc-checkout
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
):not(:has(:is(img,svg,picture)))::before{
  content:""!important;
  display:block!important;
  width:174px!important;
  height:52px!important;
  flex:0 0 174px!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-image:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20320%2090%22%3E%3Crect%20width%3D%22320%22%20height%3D%2290%22%20rx%3D%2212%22%20fill%3D%22%23ffffff%22%20fill-opacity%3D%220%22/%3E%3Ctext%20x%3D%2220%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%23003687%22%3EPay%3C/text%3E%3Ctext%20x%3D%22108%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%230099c8%22%3EPal%3C/text%3E%3C/svg%3E')!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.checkout,.uc-checkout
) :is(
  label:has(input[type="radio"]),
  div:has(> input[type="radio"]),
  li:has(input[type="radio"]),
  .form-check,.form-check-label,.custom-radio,.radio,
  .method,.payment-method,.payment-option,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],[class*="payment-option" i],[class*="paypal" i]
) :is(span,p,small,strong,b,em,i,div,label,.selected,.badge,[class*="selected" i]){
  color:var(--tru-097-provider-ink)!important;
  -webkit-text-fill-color:var(--tru-097-provider-ink)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="payment" i],[id*="payment" i],.uc-payment,.checkout,.uc-checkout
) :is(.selected,.badge,[class*="selected" i]){
  background:#d7f7d8!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  border:1px solid rgba(18,54,25,.22)!important;
  border-radius:999px!important;
  padding:.22rem .56rem!important;
  font-weight:800!important;
}

/* ========================================================================
   TwilightRun 2.0.98 - Direct checkout control repair
   Scope: Twilightrun User/UC stylesheet only. This layer is intentionally
   appended after prior UC/User rules because the live checkout fields and
   PayPal provider surface did not respond to class-based provider/address
   selectors. It targets the actual form-control patterns instead:
   - any UC form wrapper containing a visible text/select/textarea control;
   - any UC checkout/payment wrapper containing a radio provider surface.
   No UTP row/module/header/layout authority changes.
   ======================================================================== */
:root{
  --tru-098-panel:#111b28;
  --tru-098-field:#071018;
  --tru-098-text:#f4f8ff;
  --tru-098-muted:#dce7f3;
  --tru-098-gold:#ffe76a;
  --tru-098-line:rgba(255,231,106,.38);
  --tru-098-provider:#e9fff1;
  --tru-098-provider-ink:#061018;
}

/* A. Uniform field length in Twilightrun UC checkout/profile cards.
   These selectors do not depend on Billing/Address class names. They locate
   field wrappers by the controls they contain, then stretch both wrapper and
   control to the available dark-card width. */
html body[class*="com_unifiedcommerce"] #un-component :is(form,fieldset,.uc-checkout,.checkout,.uc-profile,.profile,[class*="checkout" i],[class*="profile" i],[class*="customer" i],[class*="billing" i],[class*="address" i],[class*="delivery" i]) :is(
  div,p,li,section,article,.control-group,.form-group,.controls,.control,.field,.field-group,.form-field,.uc-field,.input-group,.input-wrapper,.mb-3,.mb-4,[class*="field" i],[class*="control" i],[class*="group" i],[class*="input" i]
):has(:is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select,.inputbox)){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  inline-size:100%!important;
  max-inline-size:100%!important;
  min-inline-size:0!important;
  flex:1 1 100%!important;
  box-sizing:border-box!important;
  float:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,fieldset,.uc-checkout,.checkout,.uc-profile,.profile,[class*="checkout" i],[class*="profile" i],[class*="customer" i],[class*="billing" i],[class*="address" i],[class*="delivery" i]) :is(
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  select,textarea,.form-control,.form-select,.inputbox
){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:100%!important;
  inline-size:100%!important;
  max-inline-size:100%!important;
  min-inline-size:100%!important;
  box-sizing:border-box!important;
  background:var(--tru-098-field)!important;
  color:var(--tru-098-text)!important;
  -webkit-text-fill-color:var(--tru-098-text)!important;
  border:1px solid var(--tru-098-line)!important;
  border-radius:8px!important;
  min-height:46px!important;
  opacity:1!important;
  text-shadow:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,fieldset,.uc-checkout,.checkout,.uc-profile,.profile) textarea{
  min-height:84px!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,fieldset,.uc-checkout,.checkout,.uc-profile,.profile) :is(label,.control-label,.form-label,legend,.field-label,[class*="label" i]){
  color:var(--tru-098-text)!important;
  -webkit-text-fill-color:var(--tru-098-text)!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* B. Stop pale helper/notice text without turning the entire page light.
   Helper boxes inside UC dark cards become dark TRU callouts with light text. */
html body[class*="com_unifiedcommerce"] #un-component :is(.help,.hint,.note,.notice,.message,.alert,.well,.uc-help,.uc-note,.uc-hint,[class*="help" i],[class*="hint" i],[class*="note" i],[class*="notice" i],[class*="message" i]):not(:has(input[type="radio"])){
  background:rgba(17,27,40,.96)!important;
  color:var(--tru-098-text)!important;
  -webkit-text-fill-color:var(--tru-098-text)!important;
  border-left:3px solid rgba(255,231,106,.40)!important;
  border-radius:8px!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(.help,.hint,.note,.notice,.message,.alert,.well,.uc-help,.uc-note,.uc-hint,[class*="help" i],[class*="hint" i],[class*="note" i],[class*="notice" i],[class*="message" i]):not(:has(input[type="radio"])) *{
  color:var(--tru-098-text)!important;
  -webkit-text-fill-color:var(--tru-098-text)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* C. PayPal/provider surface: use generic radio-surface detection. The live
   provider card did not expose stable provider classes, so this targets radio
   provider containers inside the UC checkout/payment form. */
html body[class*="com_unifiedcommerce"] #un-component :is(form,.uc-checkout,.checkout,[class*="checkout" i],[class*="payment" i],[id*="payment" i]) :is(label,div,li,section,article,.card,.card-body,.list-group-item,.form-check,.radio,.custom-radio):has(input[type="radio"]){
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  min-width:300px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:102px!important;
  padding:16px 24px!important;
  box-sizing:border-box!important;
  background:var(--tru-098-provider)!important;
  background-color:var(--tru-098-provider)!important;
  color:var(--tru-098-provider-ink)!important;
  -webkit-text-fill-color:var(--tru-098-provider-ink)!important;
  border:2px solid rgba(74,96,255,.58)!important;
  border-radius:36px!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.55) inset,0 10px 24px rgba(0,0,0,.35)!important;
  text-shadow:none!important;
  overflow:visible!important;
  opacity:1!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,.uc-checkout,.checkout,[class*="checkout" i],[class*="payment" i],[id*="payment" i]) :is(label,div,li,section,article,.card,.card-body,.list-group-item,.form-check,.radio,.custom-radio):has(input[type="radio"])::before{
  content:""!important;
  display:block!important;
  flex:0 0 172px!important;
  width:172px!important;
  height:54px!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-image:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20320%2090%22%3E%3Ctext%20x%3D%2218%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%23003687%22%3EPay%3C/text%3E%3Ctext%20x%3D%22108%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%230099c8%22%3EPal%3C/text%3E%3C/svg%3E')!important;
}

/* Keep real PayPal images visible if the component emits one; the fallback
   above remains harmless decoration when an actual logo also exists. */
html body[class*="com_unifiedcommerce"] #un-component :is(form,.uc-checkout,.checkout,[class*="checkout" i],[class*="payment" i],[id*="payment" i]) :is(label,div,li,section,article,.card,.card-body,.list-group-item,.form-check,.radio,.custom-radio):has(input[type="radio"]) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:180px!important;
  height:auto!important;
  max-height:60px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,.uc-checkout,.checkout,[class*="checkout" i],[class*="payment" i],[id*="payment" i]) :is(label,div,li,section,article,.card,.card-body,.list-group-item,.form-check,.radio,.custom-radio):has(input[type="radio"]) :is(span,p,small,strong,b,em,i,div,label,.selected,.badge,[class*="selected" i]){
  color:var(--tru-098-provider-ink)!important;
  -webkit-text-fill-color:var(--tru-098-provider-ink)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(form,.uc-checkout,.checkout,[class*="checkout" i],[class*="payment" i],[id*="payment" i]) :is(.selected,.badge,[class*="selected" i]){
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  background:#d7f7d8!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  border-radius:999px!important;
  padding:.2rem .55rem!important;
  font-weight:800!important;
}


/* ========================================================================
   TwilightRun 2.0.99 - Payment Provider Panel Normalization
   Purpose: reverse the over-broad 2.0.98 provider rule that turned the whole
   payment section into a giant mint PayPal surface. Keep the TRU dark payment
   panel, then render only the actual radio/provider choice as a compact light
   PayPal card with a visible PayPal mark.
   Scope: UnifiedCommerce checkout/payment surfaces inside #un-component only.
   ======================================================================== */
:root{
  --tru-099-panel:#111b28;
  --tru-099-panel-2:#0a121c;
  --tru-099-field:#071018;
  --tru-099-line:rgba(255,231,106,.34);
  --tru-099-text:#f4f8ff;
  --tru-099-muted:#dbe6f3;
  --tru-099-gold:#ffe76a;
  --tru-099-paypal-bg:#eafff1;
  --tru-099-paypal-ink:#071018;
}

/* 1) Payment area stays TRU dark. This deliberately catches the parent that
      2.0.98 painted mint/green because it merely contained a radio button. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,
  [id*="payment" i],[class*="payment" i],
  [class*="checkout" i]
) :is(section,article,div,.card,.card-body,.list-group,.list-group-item,.well,.panel):has(input[type="radio"]){
  background:transparent!important;
  background-color:transparent!important;
  color:var(--tru-099-text)!important;
  -webkit-text-fill-color:var(--tru-099-text)!important;
  border-color:rgba(255,231,106,.22)!important;
  box-shadow:none!important;
  text-shadow:none!important;
  opacity:1!important;
  min-height:0!important;
  width:auto!important;
  max-width:100%!important;
}

/* 2) The payment section/card itself is the dark control panel. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
){
  background:linear-gradient(180deg,rgba(19,31,46,.98),rgba(8,14,22,.98))!important;
  background-color:var(--tru-099-panel)!important;
  color:var(--tru-099-text)!important;
  -webkit-text-fill-color:var(--tru-099-text)!important;
  border:1px solid rgba(255,231,106,.20)!important;
  border-radius:10px!important;
  box-shadow:0 18px 34px rgba(0,0,0,.34)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(h1,h2,h3,h4,h5,h6,legend,.title,.heading,[class*="title" i],[class*="heading" i]){
  color:var(--tru-099-gold)!important;
  -webkit-text-fill-color:var(--tru-099-gold)!important;
  text-shadow:0 0 10px rgba(255,231,106,.28)!important;
}
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(p,span,small,div,label,li,td,th):not(:has(input[type="radio"])){
  color:var(--tru-099-text)!important;
  -webkit-text-fill-color:var(--tru-099-text)!important;
  text-shadow:none!important;
}

/* 3) Helper note inside payment panel: dark callout, not a white/pale box. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(.help,.hint,.note,.notice,.message,.alert,.well,[class*="help" i],[class*="hint" i],[class*="note" i],[class*="notice" i],[class*="message" i]):not(:has(input[type="radio"])){
  display:block!important;
  max-width:520px!important;
  background:rgba(17,27,40,.96)!important;
  background-color:rgba(17,27,40,.96)!important;
  color:var(--tru-099-text)!important;
  -webkit-text-fill-color:var(--tru-099-text)!important;
  border:0!important;
  border-left:3px solid rgba(255,231,106,.45)!important;
  border-radius:8px!important;
  padding:12px 16px!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

/* 4) Only the actual provider control is the compact PayPal brand card. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]){
  position:relative!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:14px!important;
  width:min(430px,100%)!important;
  max-width:430px!important;
  min-width:0!important;
  min-height:86px!important;
  margin:12px 0!important;
  padding:14px 18px!important;
  box-sizing:border-box!important;
  background:var(--tru-099-paypal-bg)!important;
  background-color:var(--tru-099-paypal-bg)!important;
  color:var(--tru-099-paypal-ink)!important;
  -webkit-text-fill-color:var(--tru-099-paypal-ink)!important;
  border:2px solid rgba(74,96,255,.62)!important;
  border-radius:24px!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.7) inset,0 12px 22px rgba(0,0,0,.34)!important;
  overflow:hidden!important;
  text-shadow:none!important;
  opacity:1!important;
}

/* Keep non-provider ancestor containers from becoming visible PayPal cards. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(section,article,.card,.card-body,.list-group,div):has(> :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"])){
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* PayPal mark placed inside the green card. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"])::before{
  content:""!important;
  display:block!important;
  width:148px!important;
  height:48px!important;
  grid-column:1!important;
  grid-row:1 / span 2!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-image:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20320%2090%22%3E%3Ctext%20x%3D%2218%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%23003687%22%3EPay%3C/text%3E%3Ctext%20x%3D%22108%22%20y%3D%2258%22%20font-family%3D%22Arial%2CHelvetica%2Csans-serif%22%20font-size%3D%2248%22%20font-weight%3D%22700%22%20fill%3D%22%230099c8%22%3EPal%3C/text%3E%3C/svg%3E')!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]) :is(img,svg,picture){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:150px!important;
  height:auto!important;
  max-height:48px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]) :is(span,p,small,strong,b,em,i,div,label,.selected,.badge,[class*="selected" i]){
  color:var(--tru-099-paypal-ink)!important;
  -webkit-text-fill-color:var(--tru-099-paypal-ink)!important;
  background:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]) :is(input[type="radio"]){
  justify-self:end!important;
  grid-column:3!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:#123619!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,.uc-checkout,.checkout,[id*="payment" i],[class*="payment" i],[class*="checkout" i]
) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]) :is(.selected,.badge,[class*="selected" i]){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:max-content!important;
  background:#d7f7d8!important;
  color:#123619!important;
  -webkit-text-fill-color:#123619!important;
  border:1px solid rgba(18,54,25,.24)!important;
  border-radius:999px!important;
  padding:.22rem .58rem!important;
  font-weight:800!important;
}

/* 5) Keep checkout/address controls uniform after payment override. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  [class*="checkout" i],[class*="billing" i],[class*="address" i],[class*="customer" i],[class*="delivery" i],.uc-checkout,.checkout
) :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.form-select,.inputbox){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  inline-size:100%!important;
  max-inline-size:100%!important;
  background:var(--tru-099-field)!important;
  color:var(--tru-099-text)!important;
  -webkit-text-fill-color:var(--tru-099-text)!important;
  border:1px solid var(--tru-099-line)!important;
  border-radius:8px!important;
  box-sizing:border-box!important;
}

/* =========================================================
   TwilightRun 2.1.00 - Payment Provider Flatten + TRU Match
   Purpose: remove the oversized mint PayPal widget/layers created by prior
   provider fallback rules. Keep payment as one dark TRU panel and render the
   PayPal option as one compact, readable, non-layered selector surface.
   Scope: UnifiedCommerce checkout/payment surfaces inside #un-component only.
   ========================================================= */

/* A. Kill every prior mint/green PayPal/provider treatment on radio ancestors.
   These selectors intentionally mirror the previous provider/radio surface
   selectors and then neutralize their background, border, shadow, sizing, and
   pseudo-generated PayPal marks. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  form,.uc-checkout,.checkout,.uc-payment,
  [class*="checkout" i],[class*="payment" i],[id*="payment" i]
) :is(
  section,article,div,label,li,.card,.card-body,.list-group,.list-group-item,
  .form-check,.form-check-label,.radio,.custom-radio,.payment-option,
  .payment-method,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],
  [class*="payment-option" i],[class*="paypal" i]
):has(input[type="radio"]){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  min-height:0!important;
  height:auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#eef4ff!important;
  -webkit-text-fill-color:#eef4ff!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  form,.uc-checkout,.checkout,.uc-payment,
  [class*="checkout" i],[class*="payment" i],[id*="payment" i]
) :is(
  section,article,div,label,li,.card,.card-body,.list-group,.list-group-item,
  .form-check,.form-check-label,.radio,.custom-radio,.payment-option,
  .payment-method,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],
  [class*="payment-option" i],[class*="paypal" i]
):has(input[type="radio"])::before,
html body[class*="com_unifiedcommerce"] #un-component :is(
  form,.uc-checkout,.checkout,.uc-payment,
  [class*="checkout" i],[class*="payment" i],[id*="payment" i]
) :is(
  section,article,div,label,li,.card,.card-body,.list-group,.list-group-item,
  .form-check,.form-check-label,.radio,.custom-radio,.payment-option,
  .payment-method,.provider,.provider-card,.gateway,.gateway-card,
  [class*="method" i],[class*="provider" i],[class*="gateway" i],
  [class*="payment-option" i],[class*="paypal" i]
):has(input[type="radio"])::after{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* B. The actual payment section must remain a single dark TRU control panel,
   not a brand-colored widget. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
){
  background:linear-gradient(180deg,#151e2b 0%,#0a1018 100%)!important;
  border:1px solid rgba(255,214,92,.20)!important;
  border-radius:8px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.42)!important;
  padding:28px!important;
  color:#eef4ff!important;
  -webkit-text-fill-color:#eef4ff!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(h1,h2,h3,h4,h5,h6,legend,.title,.heading,[class*="title" i],[class*="heading" i]){
  color:#ffe86a!important;
  -webkit-text-fill-color:#ffe86a!important;
  text-shadow:0 0 8px rgba(255,214,92,.25)!important;
}

/* C. Payment instruction/help text becomes a small dark callout, not a white or
   mint box and not another visible panel layer. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(.help,.hint,.note,.notice,.message,.alert,.well,[class*="help" i],[class*="hint" i],[class*="note" i],[class*="notice" i],[class*="message" i]):not(:has(input[type="radio"])),
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) > :is(p,small,span,div):not(:has(input[type="radio"])):not(:has(button)):not(:has(input)):not(:has(select)):not(:has(textarea)){
  display:inline-block!important;
  background:rgba(18,27,41,.78)!important;
  background-color:rgba(18,27,41,.78)!important;
  border:0!important;
  border-left:2px solid rgba(255,214,92,.45)!important;
  border-radius:6px!important;
  box-shadow:none!important;
  padding:10px 14px!important;
  margin:8px 0 18px!important;
  max-width:620px!important;
  color:#eef4ff!important;
  -webkit-text-fill-color:#eef4ff!important;
}

/* D. Rebuild one compact provider option. This is the only provider surface
   that should look like a control. It is TRU dark with a contained PayPal mark,
   not mint and not nested. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]){
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:78px!important;
  width:min(100%,420px)!important;
  max-width:420px!important;
  padding:16px 18px 16px 126px!important;
  margin:12px 0 0!important;
  background:linear-gradient(180deg,#111a27 0%,#060a10 100%)!important;
  background-color:#0b111a!important;
  border:1px solid rgba(255,214,92,.42)!important;
  border-radius:10px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.34)!important;
  color:#eef4ff!important;
  -webkit-text-fill-color:#eef4ff!important;
  overflow:hidden!important;
}

/* Single PayPal mark. Use text/SVG-like styling without depending on FA or an
   external image. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"])::before{
  content:"PayPal"!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:92px!important;
  height:42px!important;
  border-radius:8px!important;
  background:#f6fbff!important;
  border:1px solid rgba(137,166,255,.38)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.28)!important;
  color:#073a87!important;
  -webkit-text-fill-color:#073a87!important;
  font:800 19px/1 Arial,Helvetica,sans-serif!important;
  letter-spacing:-.04em!important;
  text-transform:none!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]) :is(img,svg,picture){
  display:block!important;
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2!important;
  width:92px!important;
  max-width:92px!important;
  height:42px!important;
  max-height:42px!important;
  object-fit:contain!important;
  padding:6px!important;
  border-radius:8px!important;
  background:#f6fbff!important;
  filter:none!important;
  opacity:1!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]) :is(span,p,small,strong,b,em,i,div,label,.selected,.badge,[class*="selected" i]){
  position:relative!important;
  z-index:1!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  color:#eef4ff!important;
  -webkit-text-fill-color:#eef4ff!important;
  font-family:"Montserrat",Arial,sans-serif!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]) :is(.selected,.badge,[class*="selected" i]){
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:3px 9px!important;
  margin-left:8px!important;
  border-radius:999px!important;
  background:rgba(255,214,92,.16)!important;
  border:1px solid rgba(255,214,92,.38)!important;
  color:#ffe86a!important;
  -webkit-text-fill-color:#ffe86a!important;
  font:800 10px/1 "Orbitron",Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]) input[type="radio"]{
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:16px!important;
  height:16px!important;
  accent-color:#ffe86a!important;
  z-index:3!important;
}

/* E. Kill empty nested boxes inside provider cards. */
html body[class*="com_unifiedcommerce"] #un-component :is(
  .uc-payment,[id*="payment" i],[class*="payment" i]
) :is(
  label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,
  .provider,.provider-card,.gateway,.gateway-card,.list-group-item
):has(input[type="radio"]) :is(.card,.card-body,.well,.panel,.list-group,.list-group-item,section,article,div):empty{
  display:none!important;
}

@media(max-width:760px){
  html body[class*="com_unifiedcommerce"] #un-component :is(
    .uc-payment,[id*="payment" i],[class*="payment" i]
  ) :is(label,.form-check,.radio,.custom-radio,.payment-option,.payment-method,.provider,.provider-card,.gateway,.gateway-card,.list-group-item):has(input[type="radio"]){
    width:100%!important;
    max-width:100%!important;
    padding-left:118px!important;
  }
}
